-
Notifications
You must be signed in to change notification settings - Fork 47
/
Cargo.toml
95 lines (79 loc) · 2.47 KB
/
Cargo.toml
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
[workspace]
members = ["crates/*", "examples/*", "tests"]
resolver = "2"
[workspace.package]
version = "0.5.1"
edition = "2021"
authors = ["Riccardo Mazzarini <me@noib3.dev>"]
rust-version = "1.62"
description = "Rust bindings to all things Neovim"
documentation = "https://docs.rs/nvim-oxi"
readme = "./README.md"
repository = "https://github.com/noib3/nvim-oxi"
license = "MIT"
keywords = ["bindings", "neovim", "nvim"]
[workspace.dependencies]
api = { path = "./crates/api", package = "nvim-oxi-api" }
libuv = { path = "./crates/libuv", package = "nvim-oxi-libuv" }
luajit = { path = "./crates/luajit", package = "nvim-oxi-luajit" }
macros = { path = "./crates/macros", package = "nvim-oxi-macros" }
types = { path = "./crates/types", package = "nvim-oxi-types" }
thiserror = "2.0"
[workspace.lints.clippy]
mixed_attributes_style = "allow"
[package]
name = "nvim-oxi"
description.workspace = true
version.workspace = true
edition.workspace = true
repository.workspace = true
documentation.workspace = true
license.workspace = true
keywords.workspace = true
readme.workspace = true
[package.metadata.docs.rs]
features = ["neovim-nightly", "libuv", "mlua", "test", "__vendored_luajit"]
rustdoc-args = ["--cfg", "docsrs"]
[features]
neovim-0-9 = ["api/neovim-0-9"]
neovim-0-10 = ["neovim-0-9", "api/neovim-0-10"]
neovim-nightly = ["neovim-0-10", "api/neovim-nightly"]
libuv = ["dep:libuv"]
mlua = ["dep:mlua"]
test = ["macros/test", "dep:cargo_metadata"]
test-terminator = ["test", "libuv", "macros/test-terminator"]
__vendored_luajit = ["mlua/vendored"]
[dependencies]
api = { workspace = true }
luajit = { workspace = true }
macros = { workspace = true, features = ["plugin"] }
types = { workspace = true, features = ["serde"] }
libuv = { workspace = true, optional = true }
thiserror = { workspace = true }
cargo_metadata = { version = "0.19", optional = true }
mlua = { version = "0.10", features = ["luajit"], optional = true }
[dev-dependencies]
serde = { version = "1.0", features = ["derive"] }
tokio = { version = "1.0", features = ["full"] }
[[example]]
name = "api"
path = "./examples/api.rs"
crate-type = ["cdylib"]
[[example]]
name = "calc"
path = "./examples/calc.rs"
crate-type = ["cdylib"]
[[example]]
name = "libuv"
path = "./examples/libuv.rs"
crate-type = ["cdylib"]
required-features = ["libuv"]
[[example]]
name = "mechanic"
path = "./examples/mechanic.rs"
crate-type = ["cdylib"]
[[example]]
name = "mlua"
path = "./examples/mlua.rs"
crate-type = ["cdylib"]
required-features = ["mlua"]