summaryrefslogtreecommitdiff
path: root/Cargo.toml
blob: 059e1c9b6b40813f276832217bfbb7f481e5bac4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
[package]
name = "mlua"
version = "0.4.2"
authors = ["Aleksandr Orlenko <zxteam@pm.me>", "kyren <catherine@chucklefish.org>"]
edition = "2018"
repository = "https://github.com/khvzak/mlua"
documentation = "https://docs.rs/mlua"
readme = "README.md"
keywords = ["lua", "luajit", "async", "futures"]
categories = ["api-bindings", "asynchronous"]
license = "MIT"
links = "lua"
build = "build/main.rs"
description = """
High level bindings to Lua 5.4/5.3/5.2/5.1 (including LuaJIT)
with async/await features and support of writing native lua modules in Rust.
"""

[badges]
# github-actions = { repository = "khvzak/mlua", workflow = "CI" }
maintenance = { status = "actively-developed" }

[package.metadata.docs.rs]
features = ["async", "send", "lua53"]

[workspace]
members = [
    "mlua_derive",
    "examples/module",
    "tests/module",
]

[features]
lua54 = []
lua53 = []
lua52 = []
lua51 = []
luajit = []
vendored = ["lua-src", "luajit-src"]
module = []
async = ["futures-core", "futures-task", "futures-util"]
send = []

[dependencies]
bstr = { version = "0.2", features = ["std"], default_features = false }
lazy_static = { version = "1.4" }
num-traits = { version = "0.2.11" }
futures-core = { version = "0.3.5", optional = true }
futures-task = { version = "0.3.5", optional = true }
futures-util = { version = "0.3.5", optional = true }

[build-dependencies]
cc = { version = "1.0" }
pkg-config = { version = "0.3.17" }
lua-src = { version = "540.0.0", optional = true }
luajit-src = { version = "210.1.0", optional = true }

[dev-dependencies]
rustyline = "6.0"
criterion = "0.3"
trybuild = "1.0"
futures = "0.3.5"
hyper = "0.13"
tokio = { version = "0.2", features = ["full"] }
futures-timer = "3.0"

[[bench]]
name = "benchmark"
harness = false

[[example]]
name = "async_http_client"
required-features = ["async"]

[[example]]
name = "async_http_server"
required-features = ["async", "send"]

[[example]]
name = "async_tcp_server"
required-features = ["async"]