-
Notifications
You must be signed in to change notification settings - Fork 287
/
Cargo.toml
109 lines (91 loc) · 3.08 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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
[package]
name = "neon"
version = "0.9.1"
authors = ["Dave Herman <david.herman@gmail.com>"]
description = "A safe abstraction layer for Node.js."
readme = "README.md"
homepage = "https://www.neon-bindings.com"
repository = "https://github.com/neon-bindings/neon"
license = "MIT/Apache-2.0"
exclude = ["neon.jpg", "doc/**/*"]
build = "build.rs"
edition = "2018"
[build-dependencies]
neon-build = { version = "=0.9.1", path = "crates/neon-build" }
[dev-dependencies]
lazy_static = "1.4.0"
rustversion = "0.1.4"
semver = "0.9"
psd = "0.1.9" # used for a doc example
failure = "0.1.5" # used for a doc example
[dependencies]
semver = "0.9.0"
smallvec = "1.4.2"
neon-runtime = { version = "=0.9.1", path = "crates/neon-runtime" }
neon-macros = { version = "=0.9.1", path = "crates/neon-macros", optional = true }
[features]
default = ["legacy-runtime"]
# Enable static tests. These can be fragile because of variations in Rust compiler
# error message formatting from version to version, so they're disabled by default.
enable-static-tests = []
# Enable the EventHandler API of RFC 25.
event-handler-api = []
# Enable the default panic hook. Useful for debugging neon itself.
default-panic-hook = []
# Feature flag to enable the legacy V8/NAN runtime. For now, this feature is
# enabled by default.
legacy-runtime = ["neon-runtime/neon-sys", "neon-build/neon-sys"]
# Default N-API version. Prefer to select a minimum required version.
napi-runtime = ["napi-6"]
# Select the N-API version
# Feature flags to enable the experimental N-API runtime. For now, this feature
# is disabled by default.
# The Node N-API documentation specifies N-API and Node version requirements
# https://nodejs.org/api/n-api.html
napi-1 = ["proc-macros", "neon-macros/napi", "neon-runtime/napi"]
napi-2 = ["napi-1", "neon-runtime/napi-2"]
napi-3 = ["napi-2", "neon-runtime/napi-3"]
napi-4 = ["napi-3", "neon-runtime/napi-4"]
napi-5 = ["napi-4", "neon-runtime/napi-5"]
napi-6 = ["napi-5", "neon-runtime/napi-6"]
napi-latest = ["napi-6"]
napi-experimental = ["napi-6", "neon-runtime/napi-experimental"]
# Feature flag to disable external dependencies on docs build
docs-only = ["neon-runtime/docs-only"]
# Feature flag to enable the try_catch API of RFC 29.
try-catch-api = []
# Feature flag to enable the `EventQueue` API of RFC 33.
# https://github.com/neon-bindings/rfcs/pull/32
channel-api = []
# Deprecated name for `channel-api`
event-queue-api = ["channel-api"]
# Feature flag to include procedural macros
proc-macros = ["neon-macros"]
# Enable `JsPromise` and `Deferred`
# https://github.com/neon-bindings/rfcs/pull/35
promise-api = []
# Enable `TaskBuilder`
# https://github.com/neon-bindings/rfcs/pull/35
task-api = []
[package.metadata.docs.rs]
no-default-features = true
rustdoc-args = ["--cfg", "docsrs"]
features = [
"channel-api",
"napi-experimental",
"proc-macros",
"try-catch-api",
"promise-api",
"task-api",
]
[workspace]
members = [
"crates/neon-build",
"crates/neon-macros",
"crates/neon-runtime",
"crates/neon-sys",
"test/static",
"test/electron",
"test/dynamic/native",
"test/napi"
]