[package] name = "neon" version = "1.1.0-alpha.1" authors = ["Dave Herman "] 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/**/*"] edition = "2021" [dev-dependencies] itertools = "0.10.5" semver = "1.0.20" psd = "0.3.4" # used for a doc example anyhow = "1.0.75" # used for a doc example widestring = "1.0.2" # used for a doc example linkify = "0.10.0" # used for a doc example easy-cast = "0.5.2" # used for a doc example [target.'cfg(not(target = "windows"))'.dev-dependencies] # Avoid `clang` as a dependency on windows nodejs-sys = "0.15.0" [dependencies] either = "1.13.0" getrandom = { version = "0.2.11", optional = true } libloading = "0.8.1" linkme = "0.3.25" semver = "1.0.20" smallvec = "1.11.2" once_cell = "1.18.0" neon-macros = { version = "=1.1.0-alpha.1", path = "../neon-macros" } aquamarine = { version = "0.3.2", optional = true } easy-cast = { version = "0.5.2", optional = true } doc-comment = { version = "0.3.3", optional = true } send_wrapper = "0.6.0" serde = { version = "1.0.197", optional = true } serde_json = { version = "1.0.114", optional = true } [dependencies.tokio] version = "1.34.0" default-features = false features = ["sync"] optional = true [features] default = ["napi-8"] # Enable extracting values by serializing to JSON serde = ["dep:serde", "dep:serde_json"] # Enable the creation of external binary buffers. This is disabled by default # since these APIs fail at runtime in environments that enable the V8 memory # cage (such as Electron: https://www.electronjs.org/blog/v8-memory-cage). external-buffers = [] # Experimental Rust Futures API # https://github.com/neon-bindings/rfcs/pull/46 futures = ["dep:tokio"] # Enable low-level system APIs. The `sys` API allows augmenting the Neon API # from external crates. sys = [] # Enable async runtime tokio = ["tokio-rt-multi-thread"] # Shorter alias tokio-rt = ["futures", "tokio/rt"] tokio-rt-multi-thread = ["tokio-rt", "tokio/rt-multi-thread"] # Default N-API version. Prefer to select a minimum required version. # DEPRECATED: This is an alias that should be removed napi-runtime = ["napi-8"] # 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 = [] napi-2 = ["napi-1"] napi-3 = ["napi-2"] napi-4 = ["napi-3"] napi-5 = ["napi-4"] napi-6 = ["napi-5"] napi-7 = ["napi-6"] napi-8 = ["napi-7", "getrandom"] napi-latest = ["napi-8"] napi-experimental = ["napi-8"] # Enables the optional dependencies that are only used for generating the API docs. doc-dependencies = ["doc-comment", "aquamarine", "easy-cast"] [package.metadata.docs.rs] rustdoc-args = ["--cfg", "docsrs"] features = [ "external-buffers", "futures", "napi-experimental", "doc-dependencies", "sys", ]