[package] name = "nix-compat" version = "0.1.0" edition = "2021" [features] # async NAR writer. Also needs the `wire` feature. async = ["tokio"] # code emitting low-level packets used in the daemon protocol. wire = ["tokio", "pin-project-lite", "bytes"] # nix-daemon protocol handling daemon = ["tokio", "nix-compat-derive", "futures"] test = [] # Enable all features by default. default = ["async", "daemon", "wire", "nix-compat-derive"] [dependencies] bitflags = { workspace = true } bstr = { workspace = true, features = ["alloc", "unicode", "serde"] } data-encoding = { workspace = true } ed25519 = { workspace = true } ed25519-dalek = { workspace = true } enum-primitive-derive = { workspace = true } futures = { workspace = true, optional = true } glob = { workspace = true } mimalloc = { workspace = true } nom = { workspace = true } num-traits = { workspace = true } serde = { workspace = true, features = ["derive"] } serde_json = { workspace = true } sha2 = { workspace = true } thiserror = { workspace = true } tracing = { workspace = true } bytes = { workspace = true, optional = true } tokio = { workspace = true, features = ["io-util", "macros", "sync"], optional = true } pin-project-lite = { workspace = true, optional = true } num_enum = "0.7.3" [dependencies.nix-compat-derive] path = "../nix-compat-derive" optional = true [dev-dependencies] criterion = { workspace = true, features = ["html_reports"] } futures = { workspace = true } hex-literal = { workspace = true } mimalloc = { workspace = true } mockall = "0.13.1" pretty_assertions = { workspace = true } proptest = { workspace = true, features = ["std", "alloc", "tempfile"] } rstest = { workspace = true } serde_json = { workspace = true } smol_str = { workspace = true } tokio-test = { workspace = true } zstd = { workspace = true } [[bench]] name = "derivation_parse_aterm" harness = false [[bench]] name = "narinfo_parse" harness = false