# This file was @generated by crate2nix 0.14.1 with the command: # "generate" "--all-features" # See https://github.com/kolloch/crate2nix for more info. { nixpkgs ? <nixpkgs> , pkgs ? import nixpkgs { config = { }; } , lib ? pkgs.lib , stdenv ? pkgs.stdenv , buildRustCrateForPkgs ? pkgs: pkgs.buildRustCrate # This is used as the `crateOverrides` argument for `buildRustCrate`. , defaultCrateOverrides ? pkgs.defaultCrateOverrides # The features to enable for the root_crate or the workspace_members. , rootFeatures ? [ "default" ] # If true, throw errors instead of issueing deprecation warnings. , strictDeprecation ? false # Elements to add to the `-C target-feature=` argument passed to `rustc` # (separated by `,`, prefixed with `+`). # Used for conditional compilation based on CPU feature detection. , targetFeatures ? [ ] # Whether to perform release builds: longer compile times, faster binaries. , release ? true # Additional crate2nix configuration if it exists. , crateConfig ? if builtins.pathExists ./crate-config.nix then pkgs.callPackage ./crate-config.nix { } else { } }: rec { # # "public" attributes that we attempt to keep stable with new versions of crate2nix. # rootCrate = rec { packageId = "tvix-daemon"; # Use this attribute to refer to the derivation building your root crate package. # You can override the features with rootCrate.build.override { features = [ "default" "feature1" ... ]; }. build = internal.buildRustCrateWithFeatures { inherit packageId; }; # Debug support which might change between releases. # File a bug if you depend on any for non-debug work! debug = internal.debugCrate { inherit packageId; }; }; # Refer your crate build derivation by name here. # You can override the features with # workspaceMembers."${crateName}".build.override { features = [ "default" "feature1" ... ]; }. workspaceMembers = { "tvix-daemon" = rec { packageId = "tvix-daemon"; build = internal.buildRustCrateWithFeatures { packageId = "tvix-daemon"; }; # Debug support which might change between releases. # File a bug if you depend on any for non-debug work! debug = internal.debugCrate { inherit packageId; }; }; }; # A derivation that joins the outputs of all workspace members together. allWorkspaceMembers = pkgs.symlinkJoin { name = "all-workspace-members"; paths = let members = builtins.attrValues workspaceMembers; in builtins.map (m: m.build) members; }; # # "internal" ("private") attributes that may change in every new version of crate2nix. # internal = rec { # Build and dependency information for crates. # Many of the fields are passed one-to-one to buildRustCrate. # # Noteworthy: # * `dependencies`/`buildDependencies`: similar to the corresponding fields for buildRustCrate. # but with additional information which is used during dependency/feature resolution. # * `resolvedDependencies`: the selected default features reported by cargo - only included for debugging. # * `devDependencies` as of now not used by `buildRustCrate` but used to # inject test dependencies into the build crates = { "addr2line" = rec { crateName = "addr2line"; version = "0.24.2"; edition = "2018"; crateBin = [ ]; sha256 = "1hd1i57zxgz08j6h5qrhsnm2fi0bcqvsh389fw400xm3arz2ggnz"; dependencies = [ { name = "gimli"; packageId = "gimli"; usesDefaultFeatures = false; features = [ "read" ]; } ]; features = { "all" = [ "bin" ]; "alloc" = [ "dep:alloc" ]; "bin" = [ "loader" "rustc-demangle" "cpp_demangle" "fallible-iterator" "smallvec" "dep:clap" ]; "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "cpp_demangle" = [ "dep:cpp_demangle" ]; "default" = [ "rustc-demangle" "cpp_demangle" "loader" "fallible-iterator" "smallvec" ]; "fallible-iterator" = [ "dep:fallible-iterator" ]; "loader" = [ "std" "dep:object" "dep:memmap2" "dep:typed-arena" ]; "rustc-demangle" = [ "dep:rustc-demangle" ]; "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "gimli/rustc-dep-of-std" ]; "smallvec" = [ "dep:smallvec" ]; "std" = [ "gimli/std" ]; }; }; "adler2" = rec { crateName = "adler2"; version = "2.0.0"; edition = "2021"; sha256 = "09r6drylvgy8vv8k20lnbvwq8gp09h7smfn6h1rxsy15pgh629si"; authors = [ "Jonas Schievink <jonasschievink@gmail.com>" "oyvindln <oyvindln@users.noreply.github.com>" ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; }; }; "anstream" = rec { crateName = "anstream"; version = "0.6.15"; edition = "2021"; sha256 = "09nm4qj34kiwgzczdvj14x7hgsb235g4sqsay3xsz7zqn4d5rqb4"; dependencies = [ { name = "anstyle"; packageId = "anstyle"; } { name = "anstyle-parse"; packageId = "anstyle-parse"; } { name = "anstyle-query"; packageId = "anstyle-query"; optional = true; } { name = "anstyle-wincon"; packageId = "anstyle-wincon"; optional = true; target = { target, features }: (target."windows" or false); } { name = "colorchoice"; packageId = "colorchoice"; } { name = "is_terminal_polyfill"; packageId = "is_terminal_polyfill"; } { name = "utf8parse"; packageId = "utf8parse"; } ]; features = { "auto" = [ "dep:anstyle-query" ]; "default" = [ "auto" "wincon" ]; "wincon" = [ "dep:anstyle-wincon" ]; }; resolvedDefaultFeatures = [ "auto" "default" "wincon" ]; }; "anstyle" = rec { crateName = "anstyle"; version = "1.0.8"; edition = "2021"; sha256 = "1cfmkza63xpn1kkz844mgjwm9miaiz4jkyczmwxzivcsypk1vv0v"; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "anstyle-parse" = rec { crateName = "anstyle-parse"; version = "0.2.5"; edition = "2021"; sha256 = "1jy12rvgbldflnb2x7mcww9dcffw1mx22nyv6p3n7d62h0gdwizb"; libName = "anstyle_parse"; dependencies = [ { name = "utf8parse"; packageId = "utf8parse"; optional = true; } ]; features = { "core" = [ "dep:arrayvec" ]; "default" = [ "utf8" ]; "utf8" = [ "dep:utf8parse" ]; }; resolvedDefaultFeatures = [ "default" "utf8" ]; }; "anstyle-query" = rec { crateName = "anstyle-query"; version = "1.1.1"; edition = "2021"; sha256 = "0aj22iy4pzk6mz745sfrm1ym14r0y892jhcrbs8nkj7nqx9gqdkd"; libName = "anstyle_query"; dependencies = [ { name = "windows-sys"; packageId = "windows-sys"; target = { target, features }: (target."windows" or false); features = [ "Win32_System_Console" "Win32_Foundation" ]; } ]; }; "anstyle-wincon" = rec { crateName = "anstyle-wincon"; version = "3.0.4"; edition = "2021"; sha256 = "1y2pkvsrdxbcwircahb4wimans2pzmwwxad7ikdhj5lpdqdlxxsv"; libName = "anstyle_wincon"; dependencies = [ { name = "anstyle"; packageId = "anstyle"; } { name = "windows-sys"; packageId = "windows-sys"; target = { target, features }: (target."windows" or false); features = [ "Win32_System_Console" "Win32_Foundation" ]; } ]; }; "async-stream" = rec { crateName = "async-stream"; version = "0.3.6"; edition = "2021"; sha256 = "0xl4zqncrdmw2g6241wgr11dxdg4h7byy6bz3l6si03qyfk72nhb"; libName = "async_stream"; authors = [ "Carl Lerche <me@carllerche.com>" ]; dependencies = [ { name = "async-stream-impl"; packageId = "async-stream-impl"; } { name = "futures-core"; packageId = "futures-core"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } ]; }; "async-stream-impl" = rec { crateName = "async-stream-impl"; version = "0.3.6"; edition = "2021"; sha256 = "0kaplfb5axsvf1gfs2gk6c4zx6zcsns0yf3ssk7iwni7bphlvhn7"; procMacro = true; libName = "async_stream_impl"; authors = [ "Carl Lerche <me@carllerche.com>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "full" "visit-mut" ]; } ]; }; "async-trait" = rec { crateName = "async-trait"; version = "0.1.83"; edition = "2021"; sha256 = "1p8q8gm4fv2fdka8hwy2w3f8df7p5inixqi7rlmbnky3wmysw73j"; procMacro = true; libName = "async_trait"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; usesDefaultFeatures = false; features = [ "full" "parsing" "printing" "proc-macro" "visit-mut" ]; } ]; }; "autocfg" = rec { crateName = "autocfg"; version = "1.4.0"; edition = "2015"; sha256 = "09lz3by90d2hphbq56znag9v87gfpd9gb8nr82hll8z6x2nhprdc"; authors = [ "Josh Stone <cuviper@gmail.com>" ]; }; "axum" = rec { crateName = "axum"; version = "0.7.7"; edition = "2021"; sha256 = "1bkhgnj7rk1aih1c1ylqkmn72mjbgi8lql1paim35j3s613kjkjh"; dependencies = [ { name = "async-trait"; packageId = "async-trait"; } { name = "axum-core"; packageId = "axum-core"; } { name = "bytes"; packageId = "bytes"; } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; features = [ "alloc" ]; } { name = "http"; packageId = "http"; } { name = "http-body"; packageId = "http-body"; } { name = "http-body-util"; packageId = "http-body-util"; } { name = "hyper"; packageId = "hyper"; optional = true; } { name = "hyper-util"; packageId = "hyper-util"; optional = true; features = [ "tokio" "server" "service" ]; } { name = "itoa"; packageId = "itoa"; } { name = "matchit"; packageId = "matchit"; } { name = "memchr"; packageId = "memchr"; } { name = "mime"; packageId = "mime"; } { name = "percent-encoding"; packageId = "percent-encoding"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "rustversion"; packageId = "rustversion"; } { name = "serde"; packageId = "serde"; } { name = "serde_json"; packageId = "serde_json"; optional = true; features = [ "raw_value" ]; } { name = "serde_path_to_error"; packageId = "serde_path_to_error"; optional = true; } { name = "serde_urlencoded"; packageId = "serde_urlencoded"; optional = true; } { name = "sync_wrapper"; packageId = "sync_wrapper 1.0.1"; } { name = "tokio"; packageId = "tokio"; rename = "tokio"; optional = true; features = [ "time" ]; } { name = "tower"; packageId = "tower"; usesDefaultFeatures = false; features = [ "util" ]; } { name = "tower-layer"; packageId = "tower-layer"; } { name = "tower-service"; packageId = "tower-service"; } { name = "tracing"; packageId = "tracing"; optional = true; usesDefaultFeatures = false; } ]; devDependencies = [ { name = "serde"; packageId = "serde"; features = [ "derive" ]; } { name = "serde_json"; packageId = "serde_json"; } { name = "tokio"; packageId = "tokio"; rename = "tokio"; features = [ "macros" "rt" "rt-multi-thread" "net" "test-util" ]; } { name = "tower"; packageId = "tower"; rename = "tower"; features = [ "util" "timeout" "limit" "load-shed" "steer" "filter" ]; } { name = "tracing"; packageId = "tracing"; } ]; features = { "__private_docs" = [ "tower/full" "dep:tower-http" ]; "default" = [ "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; "form" = [ "dep:serde_urlencoded" ]; "http1" = [ "dep:hyper" "hyper?/http1" "hyper-util?/http1" ]; "http2" = [ "dep:hyper" "hyper?/http2" "hyper-util?/http2" ]; "json" = [ "dep:serde_json" "dep:serde_path_to_error" ]; "macros" = [ "dep:axum-macros" ]; "multipart" = [ "dep:multer" ]; "query" = [ "dep:serde_urlencoded" ]; "tokio" = [ "dep:hyper-util" "dep:tokio" "tokio/net" "tokio/rt" "tower/make" "tokio/macros" ]; "tower-log" = [ "tower/log" ]; "tracing" = [ "dep:tracing" "axum-core/tracing" ]; "ws" = [ "dep:hyper" "tokio" "dep:tokio-tungstenite" "dep:sha1" "dep:base64" ]; }; resolvedDefaultFeatures = [ "default" "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; }; "axum-core" = rec { crateName = "axum-core"; version = "0.4.5"; edition = "2021"; sha256 = "16b1496c4gm387q20hkv5ic3k5bd6xmnvk50kwsy6ymr8rhvvwh9"; libName = "axum_core"; dependencies = [ { name = "async-trait"; packageId = "async-trait"; } { name = "bytes"; packageId = "bytes"; } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; features = [ "alloc" ]; } { name = "http"; packageId = "http"; } { name = "http-body"; packageId = "http-body"; } { name = "http-body-util"; packageId = "http-body-util"; } { name = "mime"; packageId = "mime"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "rustversion"; packageId = "rustversion"; } { name = "sync_wrapper"; packageId = "sync_wrapper 1.0.1"; } { name = "tower-layer"; packageId = "tower-layer"; } { name = "tower-service"; packageId = "tower-service"; } { name = "tracing"; packageId = "tracing"; optional = true; usesDefaultFeatures = false; } ]; devDependencies = [ { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; features = [ "alloc" ]; } ]; features = { "__private_docs" = [ "dep:tower-http" ]; "tracing" = [ "dep:tracing" ]; }; resolvedDefaultFeatures = [ "tracing" ]; }; "backtrace" = rec { crateName = "backtrace"; version = "0.3.74"; edition = "2021"; sha256 = "06pfif7nwx66qf2zaanc2fcq7m64i91ki9imw9xd3bnz5hrwp0ld"; authors = [ "The Rust Project Developers" ]; dependencies = [ { name = "addr2line"; packageId = "addr2line"; usesDefaultFeatures = false; target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); } { name = "cfg-if"; packageId = "cfg-if"; } { name = "libc"; packageId = "libc"; usesDefaultFeatures = false; target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); } { name = "miniz_oxide"; packageId = "miniz_oxide"; usesDefaultFeatures = false; target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); } { name = "object"; packageId = "object"; usesDefaultFeatures = false; target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); features = [ "read_core" "elf" "macho" "pe" "xcoff" "unaligned" "archive" ]; } { name = "rustc-demangle"; packageId = "rustc-demangle"; } { name = "windows-targets"; packageId = "windows-targets"; target = { target, features }: (target."windows" or false); } ]; features = { "cpp_demangle" = [ "dep:cpp_demangle" ]; "default" = [ "std" ]; "serde" = [ "dep:serde" ]; "serialize-serde" = [ "serde" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "base64ct" = rec { crateName = "base64ct"; version = "1.6.0"; edition = "2021"; sha256 = "0nvdba4jb8aikv60az40x2w1y96sjdq8z3yp09rwzmkhiwv1lg4c"; authors = [ "RustCrypto Developers" ]; features = { "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" ]; }; "bitflags 1.3.2" = rec { crateName = "bitflags"; version = "1.3.2"; edition = "2018"; sha256 = "12ki6w8gn1ldq7yz9y680llwk5gmrhrzszaa17g1sbrw2r2qvwxy"; authors = [ "The Rust Project Developers" ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "bitflags 2.6.0" = rec { crateName = "bitflags"; version = "2.6.0"; edition = "2021"; sha256 = "1pkidwzn3hnxlsl8zizh0bncgbjnw7c41cx7bby26ncbzmiznj5h"; authors = [ "The Rust Project Developers" ]; features = { "arbitrary" = [ "dep:arbitrary" ]; "bytemuck" = [ "dep:bytemuck" ]; "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; "serde" = [ "dep:serde" ]; }; }; "block-buffer" = rec { crateName = "block-buffer"; version = "0.10.4"; edition = "2018"; sha256 = "0w9sa2ypmrsqqvc20nhwr75wbb5cjr4kkyhpjm1z1lv2kdicfy1h"; libName = "block_buffer"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "generic-array"; packageId = "generic-array"; } ]; }; "bstr" = rec { crateName = "bstr"; version = "1.10.0"; edition = "2021"; sha256 = "036wwrchd5gq3q4k6w1j2bfl2bk2ff8c0dsa9y7w7aw7nf7knwj0"; authors = [ "Andrew Gallant <jamslam@gmail.com>" ]; dependencies = [ { name = "memchr"; packageId = "memchr"; usesDefaultFeatures = false; } { name = "regex-automata"; packageId = "regex-automata"; optional = true; usesDefaultFeatures = false; features = [ "dfa-search" ]; } { name = "serde"; packageId = "serde"; optional = true; usesDefaultFeatures = false; } ]; features = { "alloc" = [ "memchr/alloc" "serde?/alloc" ]; "default" = [ "std" "unicode" ]; "serde" = [ "dep:serde" ]; "std" = [ "alloc" "memchr/std" "serde?/std" ]; "unicode" = [ "dep:regex-automata" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "serde" "std" "unicode" ]; }; "bytes" = rec { crateName = "bytes"; version = "1.7.2"; edition = "2018"; sha256 = "1wzs7l57iwqmrszdpr2mmqf1b1hgvpxafc30imxhnry0zfl9m3a2"; authors = [ "Carl Lerche <me@carllerche.com>" "Sean McArthur <sean@seanmonstar.com>" ]; features = { "default" = [ "std" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "cc" = rec { crateName = "cc"; version = "1.1.29"; edition = "2018"; sha256 = "1ldw40qx2lwk9021f64cdf6d286c5zbb2gk456qqp94l66n09s2q"; authors = [ "Alex Crichton <alex@alexcrichton.com>" ]; dependencies = [ { name = "shlex"; packageId = "shlex"; } ]; features = { "parallel" = [ "dep:libc" "dep:jobserver" ]; }; }; "cfg-if" = rec { crateName = "cfg-if"; version = "1.0.0"; edition = "2018"; sha256 = "1za0vb97n4brpzpv8lsbnzmq5r8f2b0cpqqr0sy8h5bn751xxwds"; libName = "cfg_if"; authors = [ "Alex Crichton <alex@alexcrichton.com>" ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; }; }; "clap" = rec { crateName = "clap"; version = "4.5.20"; edition = "2021"; crateBin = [ ]; sha256 = "1s37v23gcxkjy4800qgnkxkpliz68vslpr5sgn1xar56hmnkfzxr"; dependencies = [ { name = "clap_builder"; packageId = "clap_builder"; usesDefaultFeatures = false; } { name = "clap_derive"; packageId = "clap_derive"; optional = true; } ]; features = { "cargo" = [ "clap_builder/cargo" ]; "color" = [ "clap_builder/color" ]; "debug" = [ "clap_builder/debug" "clap_derive?/debug" ]; "default" = [ "std" "color" "help" "usage" "error-context" "suggestions" ]; "deprecated" = [ "clap_builder/deprecated" "clap_derive?/deprecated" ]; "derive" = [ "dep:clap_derive" ]; "env" = [ "clap_builder/env" ]; "error-context" = [ "clap_builder/error-context" ]; "help" = [ "clap_builder/help" ]; "std" = [ "clap_builder/std" ]; "string" = [ "clap_builder/string" ]; "suggestions" = [ "clap_builder/suggestions" ]; "unicode" = [ "clap_builder/unicode" ]; "unstable-doc" = [ "clap_builder/unstable-doc" "derive" ]; "unstable-ext" = [ "clap_builder/unstable-ext" ]; "unstable-styles" = [ "clap_builder/unstable-styles" ]; "unstable-v5" = [ "clap_builder/unstable-v5" "clap_derive?/unstable-v5" "deprecated" ]; "usage" = [ "clap_builder/usage" ]; "wrap_help" = [ "clap_builder/wrap_help" ]; }; resolvedDefaultFeatures = [ "color" "default" "derive" "env" "error-context" "help" "std" "suggestions" "usage" ]; }; "clap_builder" = rec { crateName = "clap_builder"; version = "4.5.20"; edition = "2021"; sha256 = "0m6w10l2f65h3ch0d53lql6p26xxrh20ffipra9ysjsfsjmq1g0r"; dependencies = [ { name = "anstream"; packageId = "anstream"; optional = true; } { name = "anstyle"; packageId = "anstyle"; } { name = "clap_lex"; packageId = "clap_lex"; } { name = "strsim"; packageId = "strsim"; optional = true; } ]; features = { "color" = [ "dep:anstream" ]; "debug" = [ "dep:backtrace" ]; "default" = [ "std" "color" "help" "usage" "error-context" "suggestions" ]; "std" = [ "anstyle/std" ]; "suggestions" = [ "dep:strsim" "error-context" ]; "unicode" = [ "dep:unicode-width" "dep:unicase" ]; "unstable-doc" = [ "cargo" "wrap_help" "env" "unicode" "string" "unstable-ext" ]; "unstable-styles" = [ "color" ]; "unstable-v5" = [ "deprecated" ]; "wrap_help" = [ "help" "dep:terminal_size" ]; }; resolvedDefaultFeatures = [ "color" "env" "error-context" "help" "std" "suggestions" "usage" ]; }; "clap_derive" = rec { crateName = "clap_derive"; version = "4.5.18"; edition = "2021"; sha256 = "1ardb26bvcpg72q9myr7yir3a8c83gx7vxk1cccabsd9n73s1ija"; procMacro = true; dependencies = [ { name = "heck"; packageId = "heck"; } { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "full" ]; } ]; features = { "raw-deprecated" = [ "deprecated" ]; "unstable-v5" = [ "deprecated" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "clap_lex" = rec { crateName = "clap_lex"; version = "0.7.2"; edition = "2021"; sha256 = "15zcrc2fa6ycdzaihxghf48180bnvzsivhf0fmah24bnnaf76qhl"; }; "colorchoice" = rec { crateName = "colorchoice"; version = "1.0.2"; edition = "2021"; sha256 = "1h18ph538y8yjmbpaf8li98l0ifms2xmh3rax9666c5qfjfi3zfk"; }; "const-oid" = rec { crateName = "const-oid"; version = "0.9.6"; edition = "2021"; sha256 = "1y0jnqaq7p2wvspnx7qj76m7hjcqpz73qzvr9l2p9n2s51vr6if2"; libName = "const_oid"; authors = [ "RustCrypto Developers" ]; features = { "arbitrary" = [ "dep:arbitrary" ]; }; }; "cpufeatures" = rec { crateName = "cpufeatures"; version = "0.2.14"; edition = "2018"; sha256 = "1q3qd9qkw94vs7n5i0y3zz2cqgzcxvdgyb54ryngwmjhfbgrg1k0"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "libc"; packageId = "libc"; target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "aarch64-linux-android"); } { name = "libc"; packageId = "libc"; target = { target, features }: (("aarch64" == target."arch" or null) && ("linux" == target."os" or null)); } { name = "libc"; packageId = "libc"; target = { target, features }: (("aarch64" == target."arch" or null) && ("apple" == target."vendor" or null)); } { name = "libc"; packageId = "libc"; target = { target, features }: (("loongarch64" == target."arch" or null) && ("linux" == target."os" or null)); } ]; }; "crypto-common" = rec { crateName = "crypto-common"; version = "0.1.6"; edition = "2018"; sha256 = "1cvby95a6xg7kxdz5ln3rl9xh66nz66w46mm3g56ri1z5x815yqv"; libName = "crypto_common"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "generic-array"; packageId = "generic-array"; features = [ "more_lengths" ]; } { name = "typenum"; packageId = "typenum"; } ]; features = { "getrandom" = [ "rand_core/getrandom" ]; "rand_core" = [ "dep:rand_core" ]; }; resolvedDefaultFeatures = [ "std" ]; }; "curve25519-dalek" = rec { crateName = "curve25519-dalek"; version = "4.1.3"; edition = "2021"; sha256 = "1gmjb9dsknrr8lypmhkyjd67p1arb8mbfamlwxm7vph38my8pywp"; libName = "curve25519_dalek"; authors = [ "Isis Lovecruft <isis@patternsinthevoid.net>" "Henry de Valence <hdevalence@hdevalence.ca>" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "cpufeatures"; packageId = "cpufeatures"; target = { target, features }: ("x86_64" == target."arch" or null); } { name = "curve25519-dalek-derive"; packageId = "curve25519-dalek-derive"; target = { target, features }: ((!("fiat" == target."curve25519_dalek_backend" or null)) && (!("serial" == target."curve25519_dalek_backend" or null)) && ("x86_64" == target."arch" or null)); } { name = "digest"; packageId = "digest"; optional = true; usesDefaultFeatures = false; } { name = "fiat-crypto"; packageId = "fiat-crypto"; usesDefaultFeatures = false; target = { target, features }: ("fiat" == target."curve25519_dalek_backend" or null); } { name = "subtle"; packageId = "subtle"; usesDefaultFeatures = false; } { name = "zeroize"; packageId = "zeroize"; optional = true; usesDefaultFeatures = false; } ]; buildDependencies = [ { name = "rustc_version"; packageId = "rustc_version"; } ]; features = { "alloc" = [ "zeroize?/alloc" ]; "default" = [ "alloc" "precomputed-tables" "zeroize" ]; "digest" = [ "dep:digest" ]; "ff" = [ "dep:ff" ]; "group" = [ "dep:group" "rand_core" ]; "group-bits" = [ "group" "ff/bits" ]; "rand_core" = [ "dep:rand_core" ]; "serde" = [ "dep:serde" ]; "zeroize" = [ "dep:zeroize" ]; }; resolvedDefaultFeatures = [ "alloc" "digest" "precomputed-tables" "zeroize" ]; }; "curve25519-dalek-derive" = rec { crateName = "curve25519-dalek-derive"; version = "0.1.1"; edition = "2021"; sha256 = "1cry71xxrr0mcy5my3fb502cwfxy6822k4pm19cwrilrg7hq4s7l"; procMacro = true; libName = "curve25519_dalek_derive"; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "full" ]; } ]; }; "data-encoding" = rec { crateName = "data-encoding"; version = "2.6.0"; edition = "2018"; sha256 = "1qnn68n4vragxaxlkqcb1r28d3hhj43wch67lm4rpxlw89wnjmp8"; libName = "data_encoding"; authors = [ "Julien Cretin <git@ia0.eu>" ]; features = { "default" = [ "std" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "der" = rec { crateName = "der"; version = "0.7.9"; edition = "2021"; sha256 = "1h4vzjfa1lczxdf8avfj9qlwh1qianqlxdy1g5rn762qnvkzhnzm"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "const-oid"; packageId = "const-oid"; optional = true; } { name = "zeroize"; packageId = "zeroize"; optional = true; usesDefaultFeatures = false; } ]; features = { "alloc" = [ "zeroize?/alloc" ]; "arbitrary" = [ "dep:arbitrary" "const-oid?/arbitrary" "std" ]; "bytes" = [ "dep:bytes" "alloc" ]; "derive" = [ "dep:der_derive" ]; "flagset" = [ "dep:flagset" ]; "oid" = [ "dep:const-oid" ]; "pem" = [ "dep:pem-rfc7468" "alloc" "zeroize" ]; "std" = [ "alloc" ]; "time" = [ "dep:time" ]; "zeroize" = [ "dep:zeroize" ]; }; resolvedDefaultFeatures = [ "alloc" "oid" "std" "zeroize" ]; }; "digest" = rec { crateName = "digest"; version = "0.10.7"; edition = "2018"; sha256 = "14p2n6ih29x81akj097lvz7wi9b6b9hvls0lwrv7b6xwyy0s5ncy"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "block-buffer"; packageId = "block-buffer"; optional = true; } { name = "crypto-common"; packageId = "crypto-common"; } ]; features = { "blobby" = [ "dep:blobby" ]; "block-buffer" = [ "dep:block-buffer" ]; "const-oid" = [ "dep:const-oid" ]; "core-api" = [ "block-buffer" ]; "default" = [ "core-api" ]; "dev" = [ "blobby" ]; "mac" = [ "subtle" ]; "oid" = [ "const-oid" ]; "rand_core" = [ "crypto-common/rand_core" ]; "std" = [ "alloc" "crypto-common/std" ]; "subtle" = [ "dep:subtle" ]; }; resolvedDefaultFeatures = [ "alloc" "block-buffer" "core-api" "default" "std" ]; }; "document-features" = rec { crateName = "document-features"; version = "0.2.10"; edition = "2018"; sha256 = "182h528pjyv4ppil2pd2nir46qrb393x5kvm4y51yhnjmgm6jsfb"; procMacro = true; libName = "document_features"; libPath = "lib.rs"; authors = [ "Slint Developers <info@slint.dev>" ]; dependencies = [ { name = "litrs"; packageId = "litrs"; usesDefaultFeatures = false; } ]; features = { }; resolvedDefaultFeatures = [ "default" ]; }; "ed25519" = rec { crateName = "ed25519"; version = "2.2.3"; edition = "2021"; sha256 = "0lydzdf26zbn82g7xfczcac9d7mzm3qgx934ijjrd5hjpjx32m8i"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "pkcs8"; packageId = "pkcs8"; optional = true; } { name = "signature"; packageId = "signature"; usesDefaultFeatures = false; } ]; features = { "alloc" = [ "pkcs8?/alloc" ]; "default" = [ "std" ]; "pem" = [ "alloc" "pkcs8/pem" ]; "pkcs8" = [ "dep:pkcs8" ]; "serde" = [ "dep:serde" ]; "serde_bytes" = [ "serde" "dep:serde_bytes" ]; "std" = [ "pkcs8?/std" "signature/std" ]; "zeroize" = [ "dep:zeroize" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "ed25519-dalek" = rec { crateName = "ed25519-dalek"; version = "2.1.1"; edition = "2021"; sha256 = "0w88cafwglg9hjizldbmlza0ns3hls81zk1bcih3m5m3h67algaa"; libName = "ed25519_dalek"; authors = [ "isis lovecruft <isis@patternsinthevoid.net>" "Tony Arcieri <bascule@gmail.com>" "Michael Rosenberg <michael@mrosenberg.pub>" ]; dependencies = [ { name = "curve25519-dalek"; packageId = "curve25519-dalek"; usesDefaultFeatures = false; features = [ "digest" ]; } { name = "ed25519"; packageId = "ed25519"; usesDefaultFeatures = false; } { name = "serde"; packageId = "serde"; optional = true; usesDefaultFeatures = false; } { name = "sha2"; packageId = "sha2"; usesDefaultFeatures = false; } { name = "subtle"; packageId = "subtle"; usesDefaultFeatures = false; } { name = "zeroize"; packageId = "zeroize"; optional = true; usesDefaultFeatures = false; } ]; devDependencies = [ { name = "curve25519-dalek"; packageId = "curve25519-dalek"; usesDefaultFeatures = false; features = [ "digest" "rand_core" ]; } { name = "serde"; packageId = "serde"; features = [ "derive" ]; } ]; features = { "alloc" = [ "curve25519-dalek/alloc" "ed25519/alloc" "serde?/alloc" "zeroize/alloc" ]; "asm" = [ "sha2/asm" ]; "batch" = [ "alloc" "merlin" "rand_core" ]; "default" = [ "fast" "std" "zeroize" ]; "digest" = [ "signature/digest" ]; "fast" = [ "curve25519-dalek/precomputed-tables" ]; "legacy_compatibility" = [ "curve25519-dalek/legacy_compatibility" ]; "merlin" = [ "dep:merlin" ]; "pem" = [ "alloc" "ed25519/pem" "pkcs8" ]; "pkcs8" = [ "ed25519/pkcs8" ]; "rand_core" = [ "dep:rand_core" ]; "serde" = [ "dep:serde" "ed25519/serde" ]; "signature" = [ "dep:signature" ]; "std" = [ "alloc" "ed25519/std" "serde?/std" "sha2/std" ]; "zeroize" = [ "dep:zeroize" "curve25519-dalek/zeroize" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "fast" "std" "zeroize" ]; }; "enum-primitive-derive" = rec { crateName = "enum-primitive-derive"; version = "0.3.0"; edition = "2018"; sha256 = "0k6wcf58h5kh64yq5nfq71va53kaya0kzxwsjwbgwm2n2zd9axxs"; procMacro = true; libName = "enum_primitive_derive"; authors = [ "Doug Goldstein <cardoe@cardoe.com>" ]; dependencies = [ { name = "num-traits"; packageId = "num-traits"; usesDefaultFeatures = false; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; } ]; }; "fiat-crypto" = rec { crateName = "fiat-crypto"; version = "0.2.9"; edition = "2018"; sha256 = "07c1vknddv3ak7w89n85ik0g34nzzpms6yb845vrjnv9m4csbpi8"; libName = "fiat_crypto"; authors = [ "Fiat Crypto library authors <jgross@mit.edu>" ]; features = { "default" = [ "std" ]; }; }; "fnv" = rec { crateName = "fnv"; version = "1.0.7"; edition = "2015"; sha256 = "1hc2mcqha06aibcaza94vbi81j6pr9a1bbxrxjfhc91zin8yr7iz"; libPath = "lib.rs"; authors = [ "Alex Crichton <alex@alexcrichton.com>" ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "form_urlencoded" = rec { crateName = "form_urlencoded"; version = "1.2.1"; edition = "2018"; sha256 = "0milh8x7nl4f450s3ddhg57a3flcv6yq8hlkyk6fyr3mcb128dp1"; authors = [ "The rust-url developers" ]; dependencies = [ { name = "percent-encoding"; packageId = "percent-encoding"; usesDefaultFeatures = false; } ]; features = { "alloc" = [ "percent-encoding/alloc" ]; "default" = [ "std" ]; "std" = [ "alloc" "percent-encoding/std" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "futures-channel" = rec { crateName = "futures-channel"; version = "0.3.31"; edition = "2018"; sha256 = "040vpqpqlbk099razq8lyn74m0f161zd0rp36hciqrwcg2zibzrd"; libName = "futures_channel"; dependencies = [ { name = "futures-core"; packageId = "futures-core"; usesDefaultFeatures = false; } ]; features = { "alloc" = [ "futures-core/alloc" ]; "default" = [ "std" ]; "futures-sink" = [ "dep:futures-sink" ]; "sink" = [ "futures-sink" ]; "std" = [ "alloc" "futures-core/std" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "futures-core" = rec { crateName = "futures-core"; version = "0.3.31"; edition = "2018"; sha256 = "0gk6yrxgi5ihfanm2y431jadrll00n5ifhnpx090c2f2q1cr1wh5"; libName = "futures_core"; features = { "default" = [ "std" ]; "portable-atomic" = [ "dep:portable-atomic" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "futures-macro" = rec { crateName = "futures-macro"; version = "0.3.31"; edition = "2018"; sha256 = "0l1n7kqzwwmgiznn0ywdc5i24z72zvh9q1dwps54mimppi7f6bhn"; procMacro = true; libName = "futures_macro"; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "full" ]; } ]; }; "futures-sink" = rec { crateName = "futures-sink"; version = "0.3.31"; edition = "2018"; sha256 = "1xyly6naq6aqm52d5rh236snm08kw8zadydwqz8bip70s6vzlxg5"; libName = "futures_sink"; features = { "default" = [ "std" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "futures-task" = rec { crateName = "futures-task"; version = "0.3.31"; edition = "2018"; sha256 = "124rv4n90f5xwfsm9qw6y99755y021cmi5dhzh253s920z77s3zr"; libName = "futures_task"; features = { "default" = [ "std" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; "futures-util" = rec { crateName = "futures-util"; version = "0.3.31"; edition = "2018"; sha256 = "10aa1ar8bgkgbr4wzxlidkqkcxf77gffyj8j7768h831pcaq784z"; libName = "futures_util"; dependencies = [ { name = "futures-core"; packageId = "futures-core"; usesDefaultFeatures = false; } { name = "futures-macro"; packageId = "futures-macro"; optional = true; usesDefaultFeatures = false; } { name = "futures-task"; packageId = "futures-task"; usesDefaultFeatures = false; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "pin-utils"; packageId = "pin-utils"; } { name = "slab"; packageId = "slab"; optional = true; } ]; features = { "alloc" = [ "futures-core/alloc" "futures-task/alloc" ]; "async-await-macro" = [ "async-await" "futures-macro" ]; "channel" = [ "std" "futures-channel" ]; "compat" = [ "std" "futures_01" ]; "default" = [ "std" "async-await" "async-await-macro" ]; "futures-channel" = [ "dep:futures-channel" ]; "futures-io" = [ "dep:futures-io" ]; "futures-macro" = [ "dep:futures-macro" ]; "futures-sink" = [ "dep:futures-sink" ]; "futures_01" = [ "dep:futures_01" ]; "io" = [ "std" "futures-io" "memchr" ]; "io-compat" = [ "io" "compat" "tokio-io" ]; "memchr" = [ "dep:memchr" ]; "portable-atomic" = [ "futures-core/portable-atomic" ]; "sink" = [ "futures-sink" ]; "slab" = [ "dep:slab" ]; "std" = [ "alloc" "futures-core/std" "futures-task/std" "slab" ]; "tokio-io" = [ "dep:tokio-io" ]; "unstable" = [ "futures-core/unstable" "futures-task/unstable" ]; "write-all-vectored" = [ "io" ]; }; resolvedDefaultFeatures = [ "alloc" "async-await" "async-await-macro" "default" "futures-macro" "slab" "std" ]; }; "generic-array" = rec { crateName = "generic-array"; version = "0.14.7"; edition = "2015"; sha256 = "16lyyrzrljfq424c3n8kfwkqihlimmsg5nhshbbp48np3yjrqr45"; libName = "generic_array"; authors = [ "Bartลomiej Kamiลski <fizyk20@gmail.com>" "Aaron Trent <novacrazy@gmail.com>" ]; dependencies = [ { name = "typenum"; packageId = "typenum"; } ]; buildDependencies = [ { name = "version_check"; packageId = "version_check"; } ]; features = { "serde" = [ "dep:serde" ]; "zeroize" = [ "dep:zeroize" ]; }; resolvedDefaultFeatures = [ "more_lengths" ]; }; "getrandom" = rec { crateName = "getrandom"; version = "0.2.15"; edition = "2018"; sha256 = "1mzlnrb3dgyd1fb84gvw10pyr8wdqdl4ry4sr64i1s8an66pqmn4"; authors = [ "The Rand Project Developers" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "libc"; packageId = "libc"; usesDefaultFeatures = false; target = { target, features }: (target."unix" or false); } { name = "wasi"; packageId = "wasi"; usesDefaultFeatures = false; target = { target, features }: ("wasi" == target."os" or null); } ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "js" = [ "wasm-bindgen" "js-sys" ]; "js-sys" = [ "dep:js-sys" ]; "rustc-dep-of-std" = [ "compiler_builtins" "core" "libc/rustc-dep-of-std" "wasi/rustc-dep-of-std" ]; "wasm-bindgen" = [ "dep:wasm-bindgen" ]; }; resolvedDefaultFeatures = [ "std" ]; }; "gimli" = rec { crateName = "gimli"; version = "0.31.1"; edition = "2018"; sha256 = "0gvqc0ramx8szv76jhfd4dms0zyamvlg4whhiz11j34hh3dqxqh7"; features = { "default" = [ "read-all" "write" ]; "endian-reader" = [ "read" "dep:stable_deref_trait" ]; "fallible-iterator" = [ "dep:fallible-iterator" ]; "read" = [ "read-core" ]; "read-all" = [ "read" "std" "fallible-iterator" "endian-reader" ]; "rustc-dep-of-std" = [ "dep:core" "dep:alloc" "dep:compiler_builtins" ]; "std" = [ "fallible-iterator?/std" "stable_deref_trait?/std" ]; "write" = [ "dep:indexmap" ]; }; resolvedDefaultFeatures = [ "read" "read-core" ]; }; "glob" = rec { crateName = "glob"; version = "0.3.1"; edition = "2015"; sha256 = "16zca52nglanv23q5qrwd5jinw3d3as5ylya6y1pbx47vkxvrynj"; authors = [ "The Rust Project Developers" ]; }; "heck" = rec { crateName = "heck"; version = "0.5.0"; edition = "2021"; sha256 = "1sjmpsdl8czyh9ywl3qcsfsq9a307dg4ni2vnlwgnzzqhc4y0113"; }; "hermit-abi" = rec { crateName = "hermit-abi"; version = "0.3.9"; edition = "2021"; sha256 = "092hxjbjnq5fmz66grd9plxd0sh6ssg5fhgwwwqbrzgzkjwdycfj"; libName = "hermit_abi"; authors = [ "Stefan Lankes" ]; features = { "alloc" = [ "dep:alloc" ]; "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins/rustc-dep-of-std" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "http" = rec { crateName = "http"; version = "1.1.0"; edition = "2018"; sha256 = "0n426lmcxas6h75c2cp25m933pswlrfjz10v91vc62vib2sdvf91"; authors = [ "Alex Crichton <alex@alexcrichton.com>" "Carl Lerche <me@carllerche.com>" "Sean McArthur <sean@seanmonstar.com>" ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "fnv"; packageId = "fnv"; } { name = "itoa"; packageId = "itoa"; } ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "http-body" = rec { crateName = "http-body"; version = "1.0.1"; edition = "2018"; sha256 = "111ir5k2b9ihz5nr9cz7cwm7fnydca7dx4hc7vr16scfzghxrzhy"; libName = "http_body"; authors = [ "Carl Lerche <me@carllerche.com>" "Lucio Franco <luciofranco14@gmail.com>" "Sean McArthur <sean@seanmonstar.com>" ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "http"; packageId = "http"; } ]; }; "http-body-util" = rec { crateName = "http-body-util"; version = "0.1.2"; edition = "2018"; sha256 = "0kslwazg4400qnc2azkrgqqci0fppv12waicnsy5d8hncvbjjd3r"; libName = "http_body_util"; authors = [ "Carl Lerche <me@carllerche.com>" "Lucio Franco <luciofranco14@gmail.com>" "Sean McArthur <sean@seanmonstar.com>" ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; } { name = "http"; packageId = "http"; } { name = "http-body"; packageId = "http-body"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } ]; }; "httparse" = rec { crateName = "httparse"; version = "1.9.5"; edition = "2018"; sha256 = "0ip9v8m9lvgvq1lznl31wvn0ch1v254na7lhid9p29yx9rbx6wbx"; authors = [ "Sean McArthur <sean@seanmonstar.com>" ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "httpdate" = rec { crateName = "httpdate"; version = "1.0.3"; edition = "2021"; sha256 = "1aa9rd2sac0zhjqh24c9xvir96g188zldkx0hr6dnnlx5904cfyz"; authors = [ "Pyfisch <pyfisch@posteo.org>" ]; }; "hyper" = rec { crateName = "hyper"; version = "1.4.1"; edition = "2021"; sha256 = "01ds8i3q6hw5kw56mavy544m11gkr87zi999siigdl3n1qpd5psh"; authors = [ "Sean McArthur <sean@seanmonstar.com>" ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "futures-channel"; packageId = "futures-channel"; optional = true; } { name = "futures-util"; packageId = "futures-util"; optional = true; usesDefaultFeatures = false; } { name = "http"; packageId = "http"; } { name = "http-body"; packageId = "http-body"; } { name = "httparse"; packageId = "httparse"; optional = true; } { name = "httpdate"; packageId = "httpdate"; optional = true; } { name = "itoa"; packageId = "itoa"; optional = true; } { name = "pin-project-lite"; packageId = "pin-project-lite"; optional = true; } { name = "smallvec"; packageId = "smallvec"; optional = true; features = [ "const_generics" "const_new" ]; } { name = "tokio"; packageId = "tokio"; features = [ "sync" ]; } ]; devDependencies = [ { name = "futures-channel"; packageId = "futures-channel"; features = [ "sink" ]; } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; features = [ "alloc" "sink" ]; } { name = "tokio"; packageId = "tokio"; features = [ "fs" "macros" "net" "io-std" "io-util" "rt" "rt-multi-thread" "sync" "time" "test-util" ]; } ]; features = { "client" = [ "dep:want" "dep:pin-project-lite" "dep:smallvec" ]; "ffi" = [ "dep:libc" "dep:http-body-util" "futures-util?/alloc" ]; "full" = [ "client" "http1" "http2" "server" ]; "http1" = [ "dep:futures-channel" "dep:futures-util" "dep:httparse" "dep:itoa" ]; "http2" = [ "dep:futures-channel" "dep:futures-util" "dep:h2" ]; "server" = [ "dep:httpdate" "dep:pin-project-lite" "dep:smallvec" ]; "tracing" = [ "dep:tracing" ]; }; resolvedDefaultFeatures = [ "default" "http1" "server" ]; }; "hyper-util" = rec { crateName = "hyper-util"; version = "0.1.9"; edition = "2021"; sha256 = "12yhradh0bpwa9jjyyq6shrrcx9fxbdkrq06xj7ccfhqkyq6waa1"; libName = "hyper_util"; authors = [ "Sean McArthur <sean@seanmonstar.com>" ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; } { name = "http"; packageId = "http"; } { name = "http-body"; packageId = "http-body"; } { name = "hyper"; packageId = "hyper"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "tokio"; packageId = "tokio"; optional = true; usesDefaultFeatures = false; } { name = "tower-service"; packageId = "tower-service"; optional = true; } ]; devDependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "hyper"; packageId = "hyper"; features = [ "full" ]; } { name = "tokio"; packageId = "tokio"; features = [ "macros" "test-util" "signal" ]; } ]; features = { "client" = [ "hyper/client" "dep:tracing" "dep:futures-channel" "dep:tower-service" ]; "client-legacy" = [ "client" "dep:socket2" "tokio/sync" ]; "full" = [ "client" "client-legacy" "server" "server-auto" "server-graceful" "service" "http1" "http2" "tokio" ]; "http1" = [ "hyper/http1" ]; "http2" = [ "hyper/http2" ]; "server" = [ "hyper/server" ]; "server-auto" = [ "server" "http1" "http2" ]; "server-graceful" = [ "server" "tokio/sync" "futures-util/alloc" ]; "service" = [ "dep:tower-service" ]; "tokio" = [ "dep:tokio" "tokio/net" "tokio/rt" "tokio/time" ]; }; resolvedDefaultFeatures = [ "default" "http1" "server" "service" "tokio" ]; }; "is_terminal_polyfill" = rec { crateName = "is_terminal_polyfill"; version = "1.70.1"; edition = "2021"; sha256 = "1kwfgglh91z33kl0w5i338mfpa3zs0hidq5j4ny4rmjwrikchhvr"; features = { }; resolvedDefaultFeatures = [ "default" ]; }; "itoa" = rec { crateName = "itoa"; version = "1.0.11"; edition = "2018"; sha256 = "0nv9cqjwzr3q58qz84dcz63ggc54yhf1yqar1m858m1kfd4g3wa9"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; features = { "no-panic" = [ "dep:no-panic" ]; }; }; "lazy_static" = rec { crateName = "lazy_static"; version = "1.5.0"; edition = "2015"; sha256 = "1zk6dqqni0193xg6iijh7i3i44sryglwgvx20spdvwk3r6sbrlmv"; authors = [ "Marvin Lรถbel <loebel.marvin@gmail.com>" ]; features = { "spin" = [ "dep:spin" ]; "spin_no_std" = [ "spin" ]; }; }; "libc" = rec { crateName = "libc"; version = "0.2.159"; edition = "2015"; sha256 = "1i9xpia0hn1y8dws7all8rqng6h3lc8ymlgslnljcvm376jrf7an"; authors = [ "The Rust Project Developers" ]; features = { "default" = [ "std" ]; "rustc-dep-of-std" = [ "align" "rustc-std-workspace-core" ]; "rustc-std-workspace-core" = [ "dep:rustc-std-workspace-core" ]; "use_std" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "extra_traits" "std" ]; }; "libmimalloc-sys" = rec { crateName = "libmimalloc-sys"; version = "0.1.39"; edition = "2018"; links = "mimalloc"; sha256 = "0i3b0dzz7cp0ik7ys66q92r16va78gwlbrnxhj5fnkdxsc8niai3"; libName = "libmimalloc_sys"; authors = [ "Octavian Oncescu <octavonce@gmail.com>" ]; dependencies = [ { name = "libc"; packageId = "libc"; } ]; buildDependencies = [ { name = "cc"; packageId = "cc"; } ]; features = { "cty" = [ "dep:cty" ]; "extended" = [ "cty" ]; }; }; "litrs" = rec { crateName = "litrs"; version = "0.4.1"; edition = "2018"; sha256 = "19cssch9gc0x2snd9089nvwzz79zx6nzsi3icffpx25p4hck1kml"; authors = [ "Lukas Kalbertodt <lukas.kalbertodt@gmail.com>" ]; features = { "check_suffix" = [ "unicode-xid" ]; "default" = [ "proc-macro2" ]; "proc-macro2" = [ "dep:proc-macro2" ]; "unicode-xid" = [ "dep:unicode-xid" ]; }; }; "lock_api" = rec { crateName = "lock_api"; version = "0.4.12"; edition = "2021"; sha256 = "05qvxa6g27yyva25a5ghsg85apdxkvr77yhkyhapj6r8vnf8pbq7"; authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ]; dependencies = [ { name = "scopeguard"; packageId = "scopeguard"; usesDefaultFeatures = false; } ]; buildDependencies = [ { name = "autocfg"; packageId = "autocfg"; } ]; features = { "default" = [ "atomic_usize" ]; "owning_ref" = [ "dep:owning_ref" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "atomic_usize" "default" ]; }; "log" = rec { crateName = "log"; version = "0.4.22"; edition = "2021"; sha256 = "093vs0wkm1rgyykk7fjbqp2lwizbixac1w52gv109p5r4jh0p9x7"; authors = [ "The Rust Project Developers" ]; features = { "kv_serde" = [ "kv_std" "value-bag/serde" "serde" ]; "kv_std" = [ "std" "kv" "value-bag/error" ]; "kv_sval" = [ "kv" "value-bag/sval" "sval" "sval_ref" ]; "kv_unstable" = [ "kv" "value-bag" ]; "kv_unstable_serde" = [ "kv_serde" "kv_unstable_std" ]; "kv_unstable_std" = [ "kv_std" "kv_unstable" ]; "kv_unstable_sval" = [ "kv_sval" "kv_unstable" ]; "serde" = [ "dep:serde" ]; "sval" = [ "dep:sval" ]; "sval_ref" = [ "dep:sval_ref" ]; "value-bag" = [ "dep:value-bag" ]; }; resolvedDefaultFeatures = [ "std" ]; }; "matchit" = rec { crateName = "matchit"; version = "0.7.3"; edition = "2021"; sha256 = "156bgdmmlv4crib31qhgg49nsjk88dxkdqp80ha2pk2rk6n6ax0f"; authors = [ "Ibraheem Ahmed <ibraheem@ibraheem.ca>" ]; features = { }; resolvedDefaultFeatures = [ "default" ]; }; "memchr" = rec { crateName = "memchr"; version = "2.7.4"; edition = "2021"; sha256 = "18z32bhxrax0fnjikv475z7ii718hq457qwmaryixfxsl2qrmjkq"; authors = [ "Andrew Gallant <jamslam@gmail.com>" "bluss" ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" ]; "logging" = [ "dep:log" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; "std" = [ "alloc" ]; "use_std" = [ "std" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "mimalloc" = rec { crateName = "mimalloc"; version = "0.1.43"; edition = "2018"; sha256 = "0csnyrxc16i592gm5ffham07jyj2w98qsh9jyy1rv59lmr8474b8"; authors = [ "Octavian Oncescu <octavonce@gmail.com>" "Vincent Rouillรฉ <vincent@speedy37.fr>" "Thom Chiovoloni <chiovolonit@gmail.com>" ]; dependencies = [ { name = "libmimalloc-sys"; packageId = "libmimalloc-sys"; usesDefaultFeatures = false; } ]; features = { "debug" = [ "libmimalloc-sys/debug" ]; "debug_in_debug" = [ "libmimalloc-sys/debug_in_debug" ]; "extended" = [ "libmimalloc-sys/extended" ]; "local_dynamic_tls" = [ "libmimalloc-sys/local_dynamic_tls" ]; "no_thp" = [ "libmimalloc-sys/no_thp" ]; "override" = [ "libmimalloc-sys/override" ]; "secure" = [ "libmimalloc-sys/secure" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "mime" = rec { crateName = "mime"; version = "0.3.17"; edition = "2015"; sha256 = "16hkibgvb9klh0w0jk5crr5xv90l3wlf77ggymzjmvl1818vnxv8"; authors = [ "Sean McArthur <sean@seanmonstar.com>" ]; }; "minimal-lexical" = rec { crateName = "minimal-lexical"; version = "0.2.1"; edition = "2018"; sha256 = "16ppc5g84aijpri4jzv14rvcnslvlpphbszc7zzp6vfkddf4qdb8"; libName = "minimal_lexical"; authors = [ "Alex Huszagh <ahuszagh@gmail.com>" ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "std" ]; }; "miniz_oxide" = rec { crateName = "miniz_oxide"; version = "0.8.0"; edition = "2021"; sha256 = "1wadxkg6a6z4lr7kskapj5d8pxlx7cp1ifw4daqnkzqjxych5n72"; authors = [ "Frommi <daniil.liferenko@gmail.com>" "oyvindln <oyvindln@users.noreply.github.com>" ]; dependencies = [ { name = "adler2"; packageId = "adler2"; usesDefaultFeatures = false; } ]; features = { "alloc" = [ "dep:alloc" ]; "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "with-alloc" ]; "rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "adler2/rustc-dep-of-std" ]; "simd" = [ "simd-adler32" ]; "simd-adler32" = [ "dep:simd-adler32" ]; }; }; "mio" = rec { crateName = "mio"; version = "1.0.2"; edition = "2021"; sha256 = "1v1cnnn44awxbcfm4zlavwgkvbyg7gp5zzjm8mqf1apkrwflvq40"; authors = [ "Carl Lerche <me@carllerche.com>" "Thomas de Zeeuw <thomasdezeeuw@gmail.com>" "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "hermit-abi"; packageId = "hermit-abi"; rename = "libc"; target = { target, features }: ("hermit" == target."os" or null); } { name = "libc"; packageId = "libc"; target = { target, features }: ("wasi" == target."os" or null); } { name = "libc"; packageId = "libc"; target = { target, features }: (target."unix" or false); } { name = "wasi"; packageId = "wasi"; target = { target, features }: ("wasi" == target."os" or null); } { name = "windows-sys"; packageId = "windows-sys"; target = { target, features }: (target."windows" or false); features = [ "Wdk_Foundation" "Wdk_Storage_FileSystem" "Wdk_System_IO" "Win32_Foundation" "Win32_Networking_WinSock" "Win32_Storage_FileSystem" "Win32_System_IO" "Win32_System_WindowsProgramming" ]; } ]; features = { "default" = [ "log" ]; "log" = [ "dep:log" ]; "os-ext" = [ "os-poll" "windows-sys/Win32_System_Pipes" "windows-sys/Win32_Security" ]; }; resolvedDefaultFeatures = [ "net" "os-ext" "os-poll" ]; }; "nix" = rec { crateName = "nix"; version = "0.26.4"; edition = "2018"; sha256 = "06xgl4ybb8pvjrbmc3xggbgk3kbs1j0c4c0nzdfrmpbgrkrym2sr"; authors = [ "The nix-rust Project Developers" ]; dependencies = [ { name = "bitflags"; packageId = "bitflags 1.3.2"; } { name = "cfg-if"; packageId = "cfg-if"; } { name = "libc"; packageId = "libc"; features = [ "extra_traits" ]; } ]; features = { "aio" = [ "pin-utils" ]; "default" = [ "acct" "aio" "dir" "env" "event" "feature" "fs" "hostname" "inotify" "ioctl" "kmod" "mman" "mount" "mqueue" "net" "personality" "poll" "process" "pthread" "ptrace" "quota" "reboot" "resource" "sched" "signal" "socket" "term" "time" "ucontext" "uio" "user" "zerocopy" ]; "dir" = [ "fs" ]; "memoffset" = [ "dep:memoffset" ]; "mount" = [ "uio" ]; "mqueue" = [ "fs" ]; "net" = [ "socket" ]; "pin-utils" = [ "dep:pin-utils" ]; "ptrace" = [ "process" ]; "sched" = [ "process" ]; "signal" = [ "process" ]; "socket" = [ "memoffset" ]; "ucontext" = [ "signal" ]; "user" = [ "feature" ]; "zerocopy" = [ "fs" "uio" ]; }; resolvedDefaultFeatures = [ "feature" "fs" "user" ]; }; "nix-compat" = rec { crateName = "nix-compat"; version = "0.1.0"; edition = "2021"; crateBin = [ ]; src = lib.cleanSourceWith { filter = sourceFilter; src = ../../../tvix/nix-compat; }; libName = "nix_compat"; dependencies = [ { name = "bitflags"; packageId = "bitflags 2.6.0"; } { name = "bstr"; packageId = "bstr"; features = [ "alloc" "unicode" "serde" ]; } { name = "bytes"; packageId = "bytes"; optional = true; } { name = "data-encoding"; packageId = "data-encoding"; } { name = "ed25519"; packageId = "ed25519"; } { name = "ed25519-dalek"; packageId = "ed25519-dalek"; } { name = "enum-primitive-derive"; packageId = "enum-primitive-derive"; } { name = "glob"; packageId = "glob"; } { name = "mimalloc"; packageId = "mimalloc"; } { name = "nix-compat-derive"; packageId = "nix-compat-derive"; optional = true; } { name = "nom"; packageId = "nom"; } { name = "num-traits"; packageId = "num-traits"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; optional = true; } { name = "serde"; packageId = "serde"; features = [ "derive" ]; } { name = "serde_json"; packageId = "serde_json"; } { name = "sha2"; packageId = "sha2"; } { name = "thiserror"; packageId = "thiserror"; } { name = "tokio"; packageId = "tokio"; optional = true; features = [ "io-util" "macros" ]; } { name = "tracing"; packageId = "tracing"; } ]; devDependencies = [ { name = "mimalloc"; packageId = "mimalloc"; } { name = "serde_json"; packageId = "serde_json"; } ]; features = { "async" = [ "tokio" ]; "bytes" = [ "dep:bytes" ]; "default" = [ "async" "wire" "nix-compat-derive" ]; "nix-compat-derive" = [ "dep:nix-compat-derive" ]; "pin-project-lite" = [ "dep:pin-project-lite" ]; "tokio" = [ "dep:tokio" ]; "wire" = [ "tokio" "pin-project-lite" "bytes" ]; }; resolvedDefaultFeatures = [ "async" "bytes" "default" "nix-compat-derive" "pin-project-lite" "tokio" "wire" ]; }; "nix-compat-derive" = rec { crateName = "nix-compat-derive"; version = "0.1.0"; edition = "2021"; src = lib.cleanSourceWith { filter = sourceFilter; src = ../../../tvix/nix-compat-derive; }; procMacro = true; libName = "nix_compat_derive"; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; features = [ "proc-macro" ]; } { name = "quote"; packageId = "quote"; features = [ "proc-macro" ]; } { name = "syn"; packageId = "syn"; features = [ "full" "extra-traits" ]; } ]; }; "nom" = rec { crateName = "nom"; version = "7.1.3"; edition = "2018"; sha256 = "0jha9901wxam390jcf5pfa0qqfrgh8li787jx2ip0yk5b8y9hwyj"; authors = [ "contact@geoffroycouprie.com" ]; dependencies = [ { name = "memchr"; packageId = "memchr"; usesDefaultFeatures = false; } { name = "minimal-lexical"; packageId = "minimal-lexical"; usesDefaultFeatures = false; } ]; features = { "default" = [ "std" ]; "std" = [ "alloc" "memchr/std" "minimal-lexical/std" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "nu-ansi-term" = rec { crateName = "nu-ansi-term"; version = "0.46.0"; edition = "2018"; sha256 = "115sywxh53p190lyw97alm14nc004qj5jm5lvdj608z84rbida3p"; libName = "nu_ansi_term"; authors = [ "ogham@bsago.me" "Ryan Scheel (Havvy) <ryan.havvy@gmail.com>" "Josh Triplett <josh@joshtriplett.org>" "The Nushell Project Developers" ]; dependencies = [ { name = "overload"; packageId = "overload"; } { name = "winapi"; packageId = "winapi"; target = { target, features }: ("windows" == target."os" or null); features = [ "consoleapi" "errhandlingapi" "fileapi" "handleapi" "processenv" ]; } ]; features = { "derive_serde_style" = [ "serde" ]; "serde" = [ "dep:serde" ]; }; }; "num-traits" = rec { crateName = "num-traits"; version = "0.2.19"; edition = "2021"; sha256 = "0h984rhdkkqd4ny9cif7y2azl3xdfb7768hb9irhpsch4q3gq787"; libName = "num_traits"; authors = [ "The Rust Project Developers" ]; buildDependencies = [ { name = "autocfg"; packageId = "autocfg"; } ]; features = { "default" = [ "std" ]; "libm" = [ "dep:libm" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "object" = rec { crateName = "object"; version = "0.36.5"; edition = "2018"; sha256 = "0gk8lhbs229c68lapq6w6qmnm4jkj48hrcw5ilfyswy514nhmpxf"; dependencies = [ { name = "memchr"; packageId = "memchr"; usesDefaultFeatures = false; } ]; features = { "all" = [ "read" "write" "build" "std" "compression" "wasm" ]; "alloc" = [ "dep:alloc" ]; "build" = [ "build_core" "write_std" "elf" ]; "build_core" = [ "read_core" "write_core" ]; "compiler_builtins" = [ "dep:compiler_builtins" ]; "compression" = [ "dep:flate2" "dep:ruzstd" "std" ]; "core" = [ "dep:core" ]; "default" = [ "read" "compression" ]; "doc" = [ "read_core" "write_std" "build_core" "std" "compression" "archive" "coff" "elf" "macho" "pe" "wasm" "xcoff" ]; "pe" = [ "coff" ]; "read" = [ "read_core" "archive" "coff" "elf" "macho" "pe" "xcoff" "unaligned" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" "alloc" "memchr/rustc-dep-of-std" ]; "std" = [ "memchr/std" ]; "unstable-all" = [ "all" "unstable" ]; "wasm" = [ "dep:wasmparser" ]; "write" = [ "write_std" "coff" "elf" "macho" "pe" "xcoff" ]; "write_core" = [ "dep:crc32fast" "dep:indexmap" "dep:hashbrown" ]; "write_std" = [ "write_core" "std" "indexmap?/std" "crc32fast?/std" ]; }; resolvedDefaultFeatures = [ "archive" "coff" "elf" "macho" "pe" "read_core" "unaligned" "xcoff" ]; }; "once_cell" = rec { crateName = "once_cell"; version = "1.20.2"; edition = "2021"; sha256 = "0xb7rw1aqr7pa4z3b00y7786gyf8awx2gca3md73afy76dzgwq8j"; authors = [ "Aleksey Kladov <aleksey.kladov@gmail.com>" ]; features = { "alloc" = [ "race" ]; "atomic-polyfill" = [ "critical-section" ]; "critical-section" = [ "dep:critical-section" "portable-atomic" ]; "default" = [ "std" ]; "parking_lot" = [ "dep:parking_lot_core" ]; "portable-atomic" = [ "dep:portable-atomic" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "race" "std" ]; }; "overload" = rec { crateName = "overload"; version = "0.1.1"; edition = "2018"; sha256 = "0fdgbaqwknillagy1xq7xfgv60qdbk010diwl7s1p0qx7hb16n5i"; authors = [ "Daniel Salvadori <danaugrs@gmail.com>" ]; }; "parking_lot" = rec { crateName = "parking_lot"; version = "0.12.3"; edition = "2021"; sha256 = "09ws9g6245iiq8z975h8ycf818a66q3c6zv4b5h8skpm7hc1igzi"; authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ]; dependencies = [ { name = "lock_api"; packageId = "lock_api"; } { name = "parking_lot_core"; packageId = "parking_lot_core"; } ]; features = { "arc_lock" = [ "lock_api/arc_lock" ]; "deadlock_detection" = [ "parking_lot_core/deadlock_detection" ]; "nightly" = [ "parking_lot_core/nightly" "lock_api/nightly" ]; "owning_ref" = [ "lock_api/owning_ref" ]; "serde" = [ "lock_api/serde" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "parking_lot_core" = rec { crateName = "parking_lot_core"; version = "0.9.10"; edition = "2021"; sha256 = "1y3cf9ld9ijf7i4igwzffcn0xl16dxyn4c5bwgjck1dkgabiyh0y"; authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "libc"; packageId = "libc"; target = { target, features }: (target."unix" or false); } { name = "redox_syscall"; packageId = "redox_syscall"; target = { target, features }: ("redox" == target."os" or null); } { name = "smallvec"; packageId = "smallvec"; } { name = "windows-targets"; packageId = "windows-targets"; target = { target, features }: (target."windows" or false); } ]; features = { "backtrace" = [ "dep:backtrace" ]; "deadlock_detection" = [ "petgraph" "thread-id" "backtrace" ]; "petgraph" = [ "dep:petgraph" ]; "thread-id" = [ "dep:thread-id" ]; }; }; "percent-encoding" = rec { crateName = "percent-encoding"; version = "2.3.1"; edition = "2018"; sha256 = "0gi8wgx0dcy8rnv1kywdv98lwcx67hz0a0zwpib5v2i08r88y573"; libName = "percent_encoding"; authors = [ "The rust-url developers" ]; features = { "default" = [ "std" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "pin-project" = rec { crateName = "pin-project"; version = "1.1.6"; edition = "2021"; sha256 = "1v4924b870bss0x5ahww9a164d4dbny90vzkmljfbqfxc6hj7wds"; libName = "pin_project"; dependencies = [ { name = "pin-project-internal"; packageId = "pin-project-internal"; } ]; }; "pin-project-internal" = rec { crateName = "pin-project-internal"; version = "1.1.6"; edition = "2021"; sha256 = "1y2pjavbcq40njylbnw3929i8nnrcdzrhgalzgqk57ya2n2jsl54"; procMacro = true; libName = "pin_project_internal"; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; usesDefaultFeatures = false; features = [ "parsing" "printing" "clone-impls" "proc-macro" "full" "visit-mut" ]; } ]; }; "pin-project-lite" = rec { crateName = "pin-project-lite"; version = "0.2.14"; edition = "2018"; sha256 = "00nx3f04agwjlsmd3mc5rx5haibj2v8q9b52b0kwn63wcv4nz9mx"; libName = "pin_project_lite"; }; "pin-utils" = rec { crateName = "pin-utils"; version = "0.1.0"; edition = "2018"; sha256 = "117ir7vslsl2z1a7qzhws4pd01cg2d3338c47swjyvqv2n60v1wb"; libName = "pin_utils"; authors = [ "Josef Brandl <mail@josefbrandl.de>" ]; }; "pkcs8" = rec { crateName = "pkcs8"; version = "0.10.2"; edition = "2021"; sha256 = "1dx7w21gvn07azszgqd3ryjhyphsrjrmq5mmz1fbxkj5g0vv4l7r"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "der"; packageId = "der"; features = [ "oid" ]; } { name = "spki"; packageId = "spki"; } ]; features = { "3des" = [ "encryption" "pkcs5/3des" ]; "alloc" = [ "der/alloc" "der/zeroize" "spki/alloc" ]; "des-insecure" = [ "encryption" "pkcs5/des-insecure" ]; "encryption" = [ "alloc" "pkcs5/alloc" "pkcs5/pbes2" "rand_core" ]; "getrandom" = [ "rand_core/getrandom" ]; "pem" = [ "alloc" "der/pem" "spki/pem" ]; "pkcs5" = [ "dep:pkcs5" ]; "rand_core" = [ "dep:rand_core" ]; "sha1-insecure" = [ "encryption" "pkcs5/sha1-insecure" ]; "std" = [ "alloc" "der/std" "spki/std" ]; "subtle" = [ "dep:subtle" ]; }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; "proc-macro2" = rec { crateName = "proc-macro2"; version = "1.0.87"; edition = "2021"; sha256 = "16mifsq1nqzk81qm82aszib44jsd23gpqic5z4kbmzpnvjhdmr5k"; libName = "proc_macro2"; authors = [ "David Tolnay <dtolnay@gmail.com>" "Alex Crichton <alex@alexcrichton.com>" ]; dependencies = [ { name = "unicode-ident"; packageId = "unicode-ident"; } ]; features = { "default" = [ "proc-macro" ]; }; resolvedDefaultFeatures = [ "default" "proc-macro" ]; }; "quote" = rec { crateName = "quote"; version = "1.0.37"; edition = "2018"; sha256 = "1brklraw2g34bxy9y4q1nbrccn7bv36ylihv12c9vlcii55x7fdm"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; usesDefaultFeatures = false; } ]; features = { "default" = [ "proc-macro" ]; "proc-macro" = [ "proc-macro2/proc-macro" ]; }; resolvedDefaultFeatures = [ "default" "proc-macro" ]; }; "rand_core" = rec { crateName = "rand_core"; version = "0.6.4"; edition = "2018"; sha256 = "0b4j2v4cb5krak1pv6kakv4sz6xcwbrmy2zckc32hsigbrwy82zc"; authors = [ "The Rand Project Developers" "The Rust Project Developers" ]; dependencies = [ { name = "getrandom"; packageId = "getrandom"; optional = true; } ]; features = { "getrandom" = [ "dep:getrandom" ]; "serde" = [ "dep:serde" ]; "serde1" = [ "serde" ]; "std" = [ "alloc" "getrandom" "getrandom/std" ]; }; resolvedDefaultFeatures = [ "alloc" "getrandom" "std" ]; }; "redox_syscall" = rec { crateName = "redox_syscall"; version = "0.5.7"; edition = "2021"; sha256 = "07vpgfr6a04k0x19zqr1xdlqm6fncik3zydbdi3f5g3l5k7zwvcv"; libName = "syscall"; authors = [ "Jeremy Soller <jackpot51@gmail.com>" ]; dependencies = [ { name = "bitflags"; packageId = "bitflags 2.6.0"; } ]; features = { "core" = [ "dep:core" ]; "default" = [ "userspace" ]; "rustc-dep-of-std" = [ "core" "bitflags/rustc-dep-of-std" ]; }; resolvedDefaultFeatures = [ "default" "userspace" ]; }; "regex-automata" = rec { crateName = "regex-automata"; version = "0.4.8"; edition = "2021"; sha256 = "18wd530ndrmygi6xnz3sp345qi0hy2kdbsa89182nwbl6br5i1rn"; libName = "regex_automata"; authors = [ "The Rust Project Developers" "Andrew Gallant <jamslam@gmail.com>" ]; features = { "default" = [ "std" "syntax" "perf" "unicode" "meta" "nfa" "dfa" "hybrid" ]; "dfa" = [ "dfa-build" "dfa-search" "dfa-onepass" ]; "dfa-build" = [ "nfa-thompson" "dfa-search" ]; "dfa-onepass" = [ "nfa-thompson" ]; "hybrid" = [ "alloc" "nfa-thompson" ]; "internal-instrument" = [ "internal-instrument-pikevm" ]; "internal-instrument-pikevm" = [ "logging" "std" ]; "logging" = [ "dep:log" "aho-corasick?/logging" "memchr?/logging" ]; "meta" = [ "syntax" "nfa-pikevm" ]; "nfa" = [ "nfa-thompson" "nfa-pikevm" "nfa-backtrack" ]; "nfa-backtrack" = [ "nfa-thompson" ]; "nfa-pikevm" = [ "nfa-thompson" ]; "nfa-thompson" = [ "alloc" ]; "perf" = [ "perf-inline" "perf-literal" ]; "perf-literal" = [ "perf-literal-substring" "perf-literal-multisubstring" ]; "perf-literal-multisubstring" = [ "std" "dep:aho-corasick" ]; "perf-literal-substring" = [ "aho-corasick?/perf-literal" "dep:memchr" ]; "std" = [ "regex-syntax?/std" "memchr?/std" "aho-corasick?/std" "alloc" ]; "syntax" = [ "dep:regex-syntax" "alloc" ]; "unicode" = [ "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" "unicode-word-boundary" "regex-syntax?/unicode" ]; "unicode-age" = [ "regex-syntax?/unicode-age" ]; "unicode-bool" = [ "regex-syntax?/unicode-bool" ]; "unicode-case" = [ "regex-syntax?/unicode-case" ]; "unicode-gencat" = [ "regex-syntax?/unicode-gencat" ]; "unicode-perl" = [ "regex-syntax?/unicode-perl" ]; "unicode-script" = [ "regex-syntax?/unicode-script" ]; "unicode-segment" = [ "regex-syntax?/unicode-segment" ]; }; resolvedDefaultFeatures = [ "dfa-search" ]; }; "rustc-demangle" = rec { crateName = "rustc-demangle"; version = "0.1.24"; edition = "2015"; sha256 = "07zysaafgrkzy2rjgwqdj2a8qdpsm6zv6f5pgpk9x0lm40z9b6vi"; libName = "rustc_demangle"; authors = [ "Alex Crichton <alex@alexcrichton.com>" ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; }; }; "rustc_version" = rec { crateName = "rustc_version"; version = "0.4.1"; edition = "2018"; sha256 = "14lvdsmr5si5qbqzrajgb6vfn69k0sfygrvfvr2mps26xwi3mjyg"; dependencies = [ { name = "semver"; packageId = "semver"; } ]; }; "rustversion" = rec { crateName = "rustversion"; version = "1.0.17"; edition = "2018"; sha256 = "1mm3fckyvb0l2209in1n2k05sws5d9mpkszbnwhq3pkq8apjhpcm"; procMacro = true; build = "build/build.rs"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; }; "ryu" = rec { crateName = "ryu"; version = "1.0.18"; edition = "2018"; sha256 = "17xx2s8j1lln7iackzd9p0sv546vjq71i779gphjq923vjh5pjzk"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; features = { "no-panic" = [ "dep:no-panic" ]; }; }; "scopeguard" = rec { crateName = "scopeguard"; version = "1.2.0"; edition = "2015"; sha256 = "0jcz9sd47zlsgcnm1hdw0664krxwb5gczlif4qngj2aif8vky54l"; authors = [ "bluss" ]; features = { "default" = [ "use_std" ]; }; }; "semver" = rec { crateName = "semver"; version = "1.0.23"; edition = "2018"; sha256 = "12wqpxfflclbq4dv8sa6gchdh92ahhwn4ci1ls22wlby3h57wsb1"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; features = { "default" = [ "std" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "serde" = rec { crateName = "serde"; version = "1.0.210"; edition = "2018"; sha256 = "0flc0z8wgax1k4j5bf2zyq48bgzyv425jkd5w0i6wbh7f8j5kqy8"; authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "serde_derive"; packageId = "serde_derive"; optional = true; } { name = "serde_derive"; packageId = "serde_derive"; target = { target, features }: false; } ]; devDependencies = [ { name = "serde_derive"; packageId = "serde_derive"; } ]; features = { "default" = [ "std" ]; "derive" = [ "serde_derive" ]; "serde_derive" = [ "dep:serde_derive" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "derive" "serde_derive" "std" ]; }; "serde_derive" = rec { crateName = "serde_derive"; version = "1.0.210"; edition = "2015"; sha256 = "07yzy4wafk79ps0hmbqmsqh5xjna4pm4q57wc847bb8gl3nh4f94"; procMacro = true; authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; usesDefaultFeatures = false; features = [ "proc-macro" ]; } { name = "quote"; packageId = "quote"; usesDefaultFeatures = false; features = [ "proc-macro" ]; } { name = "syn"; packageId = "syn"; usesDefaultFeatures = false; features = [ "clone-impls" "derive" "parsing" "printing" "proc-macro" ]; } ]; features = { }; resolvedDefaultFeatures = [ "default" ]; }; "serde_json" = rec { crateName = "serde_json"; version = "1.0.128"; edition = "2021"; sha256 = "1n43nia50ybpcfmh3gcw4lcc627qsg9nyakzwgkk9pm10xklbxbg"; authors = [ "Erick Tryzelaar <erick.tryzelaar@gmail.com>" "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "itoa"; packageId = "itoa"; } { name = "memchr"; packageId = "memchr"; usesDefaultFeatures = false; } { name = "ryu"; packageId = "ryu"; } { name = "serde"; packageId = "serde"; usesDefaultFeatures = false; } ]; devDependencies = [ { name = "serde"; packageId = "serde"; features = [ "derive" ]; } ]; features = { "alloc" = [ "serde/alloc" ]; "default" = [ "std" ]; "indexmap" = [ "dep:indexmap" ]; "preserve_order" = [ "indexmap" "std" ]; "std" = [ "memchr/std" "serde/std" ]; }; resolvedDefaultFeatures = [ "default" "raw_value" "std" ]; }; "serde_path_to_error" = rec { crateName = "serde_path_to_error"; version = "0.1.16"; edition = "2021"; sha256 = "19hlz2359l37ifirskpcds7sxg0gzpqvfilibs7whdys0128i6dg"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "itoa"; packageId = "itoa"; } { name = "serde"; packageId = "serde"; } ]; }; "serde_urlencoded" = rec { crateName = "serde_urlencoded"; version = "0.7.1"; edition = "2018"; sha256 = "1zgklbdaysj3230xivihs30qi5vkhigg323a9m62k8jwf4a1qjfk"; authors = [ "Anthony Ramine <n.oxyde@gmail.com>" ]; dependencies = [ { name = "form_urlencoded"; packageId = "form_urlencoded"; } { name = "itoa"; packageId = "itoa"; } { name = "ryu"; packageId = "ryu"; } { name = "serde"; packageId = "serde"; } ]; }; "sha2" = rec { crateName = "sha2"; version = "0.10.8"; edition = "2018"; sha256 = "1j1x78zk9il95w9iv46dh9wm73r6xrgj32y6lzzw7bxws9dbfgbr"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "cpufeatures"; packageId = "cpufeatures"; target = { target, features }: (("aarch64" == target."arch" or null) || ("x86_64" == target."arch" or null) || ("x86" == target."arch" or null)); } { name = "digest"; packageId = "digest"; } ]; devDependencies = [ { name = "digest"; packageId = "digest"; features = [ "dev" ]; } ]; features = { "asm" = [ "sha2-asm" ]; "asm-aarch64" = [ "asm" ]; "default" = [ "std" ]; "oid" = [ "digest/oid" ]; "sha2-asm" = [ "dep:sha2-asm" ]; "std" = [ "digest/std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "sharded-slab" = rec { crateName = "sharded-slab"; version = "0.1.7"; edition = "2018"; sha256 = "1xipjr4nqsgw34k7a2cgj9zaasl2ds6jwn89886kww93d32a637l"; libName = "sharded_slab"; authors = [ "Eliza Weisman <eliza@buoyant.io>" ]; dependencies = [ { name = "lazy_static"; packageId = "lazy_static"; } ]; features = { "loom" = [ "dep:loom" ]; }; }; "shlex" = rec { crateName = "shlex"; version = "1.3.0"; edition = "2015"; sha256 = "0r1y6bv26c1scpxvhg2cabimrmwgbp4p3wy6syj9n0c4s3q2znhg"; authors = [ "comex <comexk@gmail.com>" "Fenhl <fenhl@fenhl.net>" "Adrian Taylor <adetaylor@chromium.org>" "Alex Touchet <alextouchet@outlook.com>" "Daniel Parks <dp+git@oxidized.org>" "Garrett Berg <googberg@gmail.com>" ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "signal-hook-registry" = rec { crateName = "signal-hook-registry"; version = "1.4.2"; edition = "2015"; sha256 = "1cb5akgq8ajnd5spyn587srvs4n26ryq0p78nswffwhv46sf1sd9"; libName = "signal_hook_registry"; authors = [ "Michal 'vorner' Vaner <vorner@vorner.cz>" "Masaki Hara <ackie.h.gmai@gmail.com>" ]; dependencies = [ { name = "libc"; packageId = "libc"; } ]; }; "signature" = rec { crateName = "signature"; version = "2.2.0"; edition = "2021"; sha256 = "1pi9hd5vqfr3q3k49k37z06p7gs5si0in32qia4mmr1dancr6m3p"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "rand_core"; packageId = "rand_core"; optional = true; usesDefaultFeatures = false; } ]; features = { "derive" = [ "dep:derive" ]; "digest" = [ "dep:digest" ]; "rand_core" = [ "dep:rand_core" ]; "std" = [ "alloc" "rand_core?/std" ]; }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; "slab" = rec { crateName = "slab"; version = "0.4.9"; edition = "2018"; sha256 = "0rxvsgir0qw5lkycrqgb1cxsvxzjv9bmx73bk5y42svnzfba94lg"; authors = [ "Carl Lerche <me@carllerche.com>" ]; buildDependencies = [ { name = "autocfg"; packageId = "autocfg"; } ]; features = { "default" = [ "std" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "smallvec" = rec { crateName = "smallvec"; version = "1.13.2"; edition = "2018"; sha256 = "0rsw5samawl3wsw6glrsb127rx6sh89a8wyikicw6dkdcjd1lpiw"; authors = [ "The Servo Project Developers" ]; features = { "arbitrary" = [ "dep:arbitrary" ]; "const_new" = [ "const_generics" ]; "drain_keep_rest" = [ "drain_filter" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "const_generics" "const_new" ]; }; "socket2" = rec { crateName = "socket2"; version = "0.5.7"; edition = "2021"; sha256 = "070r941wbq76xpy039an4pyiy3rfj7mp7pvibf1rcri9njq5wc6f"; authors = [ "Alex Crichton <alex@alexcrichton.com>" "Thomas de Zeeuw <thomasdezeeuw@gmail.com>" ]; dependencies = [ { name = "libc"; packageId = "libc"; target = { target, features }: (target."unix" or false); } { name = "windows-sys"; packageId = "windows-sys"; target = { target, features }: (target."windows" or false); features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_System_IO" "Win32_System_Threading" "Win32_System_WindowsProgramming" ]; } ]; features = { }; resolvedDefaultFeatures = [ "all" ]; }; "spki" = rec { crateName = "spki"; version = "0.7.3"; edition = "2021"; sha256 = "17fj8k5fmx4w9mp27l970clrh5qa7r5sjdvbsln987xhb34dc7nr"; authors = [ "RustCrypto Developers" ]; dependencies = [ { name = "base64ct"; packageId = "base64ct"; optional = true; usesDefaultFeatures = false; } { name = "der"; packageId = "der"; features = [ "oid" ]; } ]; features = { "alloc" = [ "base64ct?/alloc" "der/alloc" ]; "arbitrary" = [ "std" "dep:arbitrary" "der/arbitrary" ]; "base64" = [ "dep:base64ct" ]; "fingerprint" = [ "sha2" ]; "pem" = [ "alloc" "der/pem" ]; "sha2" = [ "dep:sha2" ]; "std" = [ "der/std" "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; "strsim" = rec { crateName = "strsim"; version = "0.11.1"; edition = "2015"; sha256 = "0kzvqlw8hxqb7y598w1s0hxlnmi84sg5vsipp3yg5na5d1rvba3x"; authors = [ "Danny Guo <danny@dannyguo.com>" "maxbachmann <oss@maxbachmann.de>" ]; }; "subtle" = rec { crateName = "subtle"; version = "2.6.1"; edition = "2018"; sha256 = "14ijxaymghbl1p0wql9cib5zlwiina7kall6w7g89csprkgbvhhk"; authors = [ "Isis Lovecruft <isis@patternsinthevoid.net>" "Henry de Valence <hdevalence@hdevalence.ca>" ]; features = { "default" = [ "std" "i128" ]; }; }; "syn" = rec { crateName = "syn"; version = "2.0.79"; edition = "2021"; sha256 = "147mk4sgigmvsb9l8qzj199ygf0fgb0bphwdsghn8205pz82q4w9"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; usesDefaultFeatures = false; } { name = "quote"; packageId = "quote"; optional = true; usesDefaultFeatures = false; } { name = "unicode-ident"; packageId = "unicode-ident"; } ]; features = { "default" = [ "derive" "parsing" "printing" "clone-impls" "proc-macro" ]; "printing" = [ "dep:quote" ]; "proc-macro" = [ "proc-macro2/proc-macro" "quote?/proc-macro" ]; "test" = [ "syn-test-suite/all-features" ]; }; resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "full" "parsing" "printing" "proc-macro" "visit-mut" ]; }; "sync_wrapper 0.1.2" = rec { crateName = "sync_wrapper"; version = "0.1.2"; edition = "2018"; sha256 = "0q01lyj0gr9a93n10nxsn8lwbzq97jqd6b768x17c8f7v7gccir0"; authors = [ "Actyx AG <developer@actyx.io>" ]; features = { "futures" = [ "futures-core" ]; "futures-core" = [ "dep:futures-core" ]; }; }; "sync_wrapper 1.0.1" = rec { crateName = "sync_wrapper"; version = "1.0.1"; edition = "2018"; sha256 = "150k6lwvr4nl237ngsz8fj5j78k712m4bggrfyjsidllraz5l1m7"; authors = [ "Actyx AG <developer@actyx.io>" ]; features = { "futures" = [ "futures-core" ]; "futures-core" = [ "dep:futures-core" ]; }; }; "thiserror" = rec { crateName = "thiserror"; version = "1.0.64"; edition = "2021"; sha256 = "114s8lmssxl0c2480s671am88vzlasbaikxbvfv8pyqrq6mzh2nm"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "thiserror-impl"; packageId = "thiserror-impl"; } ]; }; "thiserror-impl" = rec { crateName = "thiserror-impl"; version = "1.0.64"; edition = "2021"; sha256 = "1hvzmjx9iamln854l74qyhs0jl2pg3hhqzpqm9p8gszmf9v4x408"; procMacro = true; libName = "thiserror_impl"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; } ]; }; "thread_local" = rec { crateName = "thread_local"; version = "1.1.8"; edition = "2021"; sha256 = "173i5lyjh011gsimk21np9jn8al18rxsrkjli20a7b8ks2xgk7lb"; authors = [ "Amanieu d'Antras <amanieu@gmail.com>" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "once_cell"; packageId = "once_cell"; } ]; features = { }; }; "tokio" = rec { crateName = "tokio"; version = "1.40.0"; edition = "2021"; sha256 = "166rllhfkyqp0fs7sxn6crv74iizi4wzd3cvxkcpmlk52qip1c72"; authors = [ "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "backtrace"; packageId = "backtrace"; target = { target, features }: (target."tokio_taskdump" or false); } { name = "bytes"; packageId = "bytes"; optional = true; } { name = "libc"; packageId = "libc"; optional = true; target = { target, features }: (target."unix" or false); } { name = "mio"; packageId = "mio"; optional = true; usesDefaultFeatures = false; } { name = "parking_lot"; packageId = "parking_lot"; optional = true; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "signal-hook-registry"; packageId = "signal-hook-registry"; optional = true; target = { target, features }: (target."unix" or false); } { name = "socket2"; packageId = "socket2"; optional = true; target = { target, features }: (!(builtins.elem "wasm" target."family")); features = [ "all" ]; } { name = "tokio-macros"; packageId = "tokio-macros"; optional = true; } { name = "windows-sys"; packageId = "windows-sys"; optional = true; target = { target, features }: (target."windows" or false); } ]; devDependencies = [ { name = "libc"; packageId = "libc"; target = { target, features }: (target."unix" or false); } { name = "socket2"; packageId = "socket2"; target = { target, features }: (!(builtins.elem "wasm" target."family")); } { name = "windows-sys"; packageId = "windows-sys"; target = { target, features }: (target."windows" or false); features = [ "Win32_Foundation" "Win32_Security_Authorization" ]; } ]; features = { "bytes" = [ "dep:bytes" ]; "full" = [ "fs" "io-util" "io-std" "macros" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "sync" "time" ]; "io-util" = [ "bytes" ]; "libc" = [ "dep:libc" ]; "macros" = [ "tokio-macros" ]; "mio" = [ "dep:mio" ]; "net" = [ "libc" "mio/os-poll" "mio/os-ext" "mio/net" "socket2" "windows-sys/Win32_Foundation" "windows-sys/Win32_Security" "windows-sys/Win32_Storage_FileSystem" "windows-sys/Win32_System_Pipes" "windows-sys/Win32_System_SystemServices" ]; "parking_lot" = [ "dep:parking_lot" ]; "process" = [ "bytes" "libc" "mio/os-poll" "mio/os-ext" "mio/net" "signal-hook-registry" "windows-sys/Win32_Foundation" "windows-sys/Win32_System_Threading" "windows-sys/Win32_System_WindowsProgramming" ]; "rt-multi-thread" = [ "rt" ]; "signal" = [ "libc" "mio/os-poll" "mio/net" "mio/os-ext" "signal-hook-registry" "windows-sys/Win32_Foundation" "windows-sys/Win32_System_Console" ]; "signal-hook-registry" = [ "dep:signal-hook-registry" ]; "socket2" = [ "dep:socket2" ]; "test-util" = [ "rt" "sync" "time" ]; "tokio-macros" = [ "dep:tokio-macros" ]; "tracing" = [ "dep:tracing" ]; "windows-sys" = [ "dep:windows-sys" ]; }; resolvedDefaultFeatures = [ "bytes" "default" "fs" "full" "io-std" "io-util" "libc" "macros" "mio" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "signal-hook-registry" "socket2" "sync" "test-util" "time" "tokio-macros" "windows-sys" ]; }; "tokio-listener" = rec { crateName = "tokio-listener"; version = "0.3.2"; edition = "2021"; sha256 = "00vkr1cywd2agn8jbkzwwf7y4ps3cfjm8l9ab697px2cgc97wdln"; libName = "tokio_listener"; dependencies = [ { name = "axum"; packageId = "axum"; rename = "axum07"; } { name = "document-features"; packageId = "document-features"; } { name = "futures-core"; packageId = "futures-core"; } { name = "futures-util"; packageId = "futures-util"; optional = true; } { name = "nix"; packageId = "nix"; optional = true; usesDefaultFeatures = false; target = { target, features }: (target."unix" or false); features = [ "user" "fs" ]; } { name = "pin-project"; packageId = "pin-project"; } { name = "socket2"; packageId = "socket2"; optional = true; features = [ "all" ]; } { name = "tokio"; packageId = "tokio"; features = [ "net" "io-std" "time" "sync" ]; } { name = "tokio-util"; packageId = "tokio-util"; optional = true; features = [ "net" "codec" ]; } { name = "tracing"; packageId = "tracing"; } ]; devDependencies = [ { name = "tokio"; packageId = "tokio"; features = [ "macros" "rt" "io-util" ]; } ]; features = { "axum07" = [ "dep:hyper1" "dep:hyper-util" "dep:futures-util" "dep:tower-service" "dep:tower" ]; "clap" = [ "dep:clap" ]; "default" = [ "user_facing_default" "tokio-util" ]; "hyper014" = [ "dep:hyper014" ]; "inetd" = [ "dep:futures-util" ]; "nix" = [ "dep:nix" ]; "serde" = [ "dep:serde" "serde_with" ]; "serde_with" = [ "dep:serde_with" ]; "socket2" = [ "dep:socket2" ]; "socket_options" = [ "socket2" ]; "tokio-util" = [ "dep:tokio-util" ]; "tonic010" = [ "dep:tonic_010" ]; "tonic011" = [ "dep:tonic" ]; "unix_path_tools" = [ "nix" ]; "user_facing_default" = [ "inetd" "unix" "unix_path_tools" "sd_listen" "socket_options" ]; }; resolvedDefaultFeatures = [ "default" "inetd" "nix" "sd_listen" "socket2" "socket_options" "tokio-util" "unix" "unix_path_tools" "user_facing_default" ]; }; "tokio-macros" = rec { crateName = "tokio-macros"; version = "2.4.0"; edition = "2021"; sha256 = "0lnpg14h1v3fh2jvnc8cz7cjf0m7z1xgkwfpcyy632g829imjgb9"; procMacro = true; libName = "tokio_macros"; authors = [ "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "full" ]; } ]; }; "tokio-stream" = rec { crateName = "tokio-stream"; version = "0.1.16"; edition = "2021"; sha256 = "1wc65gprcsyzqlr0k091glswy96kph90i32gffi4ksyh03hnqkjg"; libName = "tokio_stream"; authors = [ "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "futures-core"; packageId = "futures-core"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "tokio"; packageId = "tokio"; features = [ "sync" ]; } ]; devDependencies = [ { name = "tokio"; packageId = "tokio"; features = [ "full" "test-util" ]; } ]; features = { "default" = [ "time" ]; "fs" = [ "tokio/fs" ]; "full" = [ "time" "net" "io-util" "fs" "sync" "signal" ]; "io-util" = [ "tokio/io-util" ]; "net" = [ "tokio/net" ]; "signal" = [ "tokio/signal" ]; "sync" = [ "tokio/sync" "tokio-util" ]; "time" = [ "tokio/time" ]; "tokio-util" = [ "dep:tokio-util" ]; }; resolvedDefaultFeatures = [ "default" "time" ]; }; "tokio-test" = rec { crateName = "tokio-test"; version = "0.4.4"; edition = "2021"; sha256 = "1xzri2m3dg8nzdyznm77nymvil9cyh1gfdfrbnska51iqfmvls14"; libName = "tokio_test"; authors = [ "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "async-stream"; packageId = "async-stream"; } { name = "bytes"; packageId = "bytes"; } { name = "futures-core"; packageId = "futures-core"; } { name = "tokio"; packageId = "tokio"; features = [ "rt" "sync" "time" "test-util" ]; } { name = "tokio-stream"; packageId = "tokio-stream"; } ]; devDependencies = [ { name = "tokio"; packageId = "tokio"; features = [ "full" ]; } ]; }; "tokio-util" = rec { crateName = "tokio-util"; version = "0.7.12"; edition = "2021"; sha256 = "0spc0g4irbnf2flgag22gfii87avqzibwfm0si0d1g0k9ijw7rv1"; libName = "tokio_util"; authors = [ "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "futures-core"; packageId = "futures-core"; } { name = "futures-sink"; packageId = "futures-sink"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "tokio"; packageId = "tokio"; features = [ "sync" ]; } ]; devDependencies = [ { name = "tokio"; packageId = "tokio"; features = [ "full" ]; } ]; features = { "__docs_rs" = [ "futures-util" ]; "compat" = [ "futures-io" ]; "full" = [ "codec" "compat" "io-util" "time" "net" "rt" ]; "futures-io" = [ "dep:futures-io" ]; "futures-util" = [ "dep:futures-util" ]; "hashbrown" = [ "dep:hashbrown" ]; "io-util" = [ "io" "tokio/rt" "tokio/io-util" ]; "net" = [ "tokio/net" ]; "rt" = [ "tokio/rt" "tokio/sync" "futures-util" "hashbrown" ]; "slab" = [ "dep:slab" ]; "time" = [ "tokio/time" "slab" ]; "tracing" = [ "dep:tracing" ]; }; resolvedDefaultFeatures = [ "codec" "default" "net" ]; }; "tower" = rec { crateName = "tower"; version = "0.5.1"; edition = "2018"; sha256 = "0kvbp97bhb4sk24vhihcz74ngn0i4ygxqikmxndgng3w926r6wr8"; authors = [ "Tower Maintainers <team@tower-rs.com>" ]; dependencies = [ { name = "futures-core"; packageId = "futures-core"; optional = true; } { name = "futures-util"; packageId = "futures-util"; optional = true; usesDefaultFeatures = false; features = [ "alloc" ]; } { name = "pin-project-lite"; packageId = "pin-project-lite"; optional = true; } { name = "sync_wrapper"; packageId = "sync_wrapper 0.1.2"; optional = true; } { name = "tokio"; packageId = "tokio"; optional = true; features = [ "sync" ]; } { name = "tower-layer"; packageId = "tower-layer"; } { name = "tower-service"; packageId = "tower-service"; } { name = "tracing"; packageId = "tracing"; optional = true; usesDefaultFeatures = false; features = [ "std" ]; } ]; devDependencies = [ { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "tokio"; packageId = "tokio"; features = [ "macros" "sync" "test-util" "rt-multi-thread" ]; } { name = "tracing"; packageId = "tracing"; usesDefaultFeatures = false; features = [ "std" ]; } ]; features = { "__common" = [ "futures-core" "pin-project-lite" ]; "balance" = [ "discover" "load" "ready-cache" "make" "slab" "util" ]; "buffer" = [ "__common" "tokio/sync" "tokio/rt" "tokio-util" "tracing" ]; "discover" = [ "__common" ]; "filter" = [ "__common" "futures-util" ]; "full" = [ "balance" "buffer" "discover" "filter" "hedge" "limit" "load" "load-shed" "make" "ready-cache" "reconnect" "retry" "spawn-ready" "steer" "timeout" "util" ]; "futures-core" = [ "dep:futures-core" ]; "futures-util" = [ "dep:futures-util" ]; "hdrhistogram" = [ "dep:hdrhistogram" ]; "hedge" = [ "util" "filter" "futures-util" "hdrhistogram" "tokio/time" "tracing" ]; "indexmap" = [ "dep:indexmap" ]; "limit" = [ "__common" "tokio/time" "tokio/sync" "tokio-util" "tracing" ]; "load" = [ "__common" "tokio/time" "tracing" ]; "load-shed" = [ "__common" ]; "log" = [ "tracing/log" ]; "make" = [ "futures-util" "pin-project-lite" "tokio/io-std" ]; "pin-project-lite" = [ "dep:pin-project-lite" ]; "ready-cache" = [ "futures-core" "futures-util" "indexmap" "tokio/sync" "tracing" "pin-project-lite" ]; "reconnect" = [ "make" "tokio/io-std" "tracing" ]; "retry" = [ "__common" "tokio/time" "util" ]; "slab" = [ "dep:slab" ]; "spawn-ready" = [ "__common" "futures-util" "tokio/sync" "tokio/rt" "util" "tracing" ]; "sync_wrapper" = [ "dep:sync_wrapper" ]; "timeout" = [ "pin-project-lite" "tokio/time" ]; "tokio" = [ "dep:tokio" ]; "tokio-stream" = [ "dep:tokio-stream" ]; "tokio-util" = [ "dep:tokio-util" ]; "tracing" = [ "dep:tracing" ]; "util" = [ "__common" "futures-util" "pin-project-lite" "sync_wrapper" ]; }; resolvedDefaultFeatures = [ "__common" "futures-core" "futures-util" "log" "make" "pin-project-lite" "sync_wrapper" "tokio" "tracing" "util" ]; }; "tower-layer" = rec { crateName = "tower-layer"; version = "0.3.3"; edition = "2018"; sha256 = "03kq92fdzxin51w8iqix06dcfgydyvx7yr6izjq0p626v9n2l70j"; libName = "tower_layer"; authors = [ "Tower Maintainers <team@tower-rs.com>" ]; }; "tower-service" = rec { crateName = "tower-service"; version = "0.3.3"; edition = "2018"; sha256 = "1hzfkvkci33ra94xjx64vv3pp0sq346w06fpkcdwjcid7zhvdycd"; libName = "tower_service"; authors = [ "Tower Maintainers <team@tower-rs.com>" ]; }; "tracing" = rec { crateName = "tracing"; version = "0.1.40"; edition = "2018"; sha256 = "1vv48dac9zgj9650pg2b4d0j3w6f3x9gbggf43scq5hrlysklln3"; authors = [ "Eliza Weisman <eliza@buoyant.io>" "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "log"; packageId = "log"; optional = true; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "tracing-attributes"; packageId = "tracing-attributes"; optional = true; } { name = "tracing-core"; packageId = "tracing-core"; usesDefaultFeatures = false; } ]; devDependencies = [ { name = "log"; packageId = "log"; } ]; features = { "attributes" = [ "tracing-attributes" ]; "default" = [ "std" "attributes" ]; "log" = [ "dep:log" ]; "log-always" = [ "log" ]; "std" = [ "tracing-core/std" ]; "tracing-attributes" = [ "dep:tracing-attributes" ]; "valuable" = [ "tracing-core/valuable" ]; }; resolvedDefaultFeatures = [ "attributes" "default" "log" "std" "tracing-attributes" ]; }; "tracing-attributes" = rec { crateName = "tracing-attributes"; version = "0.1.27"; edition = "2018"; sha256 = "1rvb5dn9z6d0xdj14r403z0af0bbaqhg02hq4jc97g5wds6lqw1l"; procMacro = true; libName = "tracing_attributes"; authors = [ "Tokio Contributors <team@tokio.rs>" "Eliza Weisman <eliza@buoyant.io>" "David Barsky <dbarsky@amazon.com>" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; usesDefaultFeatures = false; features = [ "full" "parsing" "printing" "visit-mut" "clone-impls" "extra-traits" "proc-macro" ]; } ]; features = { }; }; "tracing-core" = rec { crateName = "tracing-core"; version = "0.1.32"; edition = "2018"; sha256 = "0m5aglin3cdwxpvbg6kz0r9r0k31j48n0kcfwsp6l49z26k3svf0"; libName = "tracing_core"; authors = [ "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "once_cell"; packageId = "once_cell"; optional = true; } { name = "valuable"; packageId = "valuable"; optional = true; usesDefaultFeatures = false; target = { target, features }: (target."tracing_unstable" or false); } ]; features = { "default" = [ "std" "valuable/std" ]; "once_cell" = [ "dep:once_cell" ]; "std" = [ "once_cell" ]; "valuable" = [ "dep:valuable" ]; }; resolvedDefaultFeatures = [ "default" "once_cell" "std" "valuable" ]; }; "tracing-log" = rec { crateName = "tracing-log"; version = "0.2.0"; edition = "2018"; sha256 = "1hs77z026k730ij1a9dhahzrl0s073gfa2hm5p0fbl0b80gmz1gf"; libName = "tracing_log"; authors = [ "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "log"; packageId = "log"; } { name = "once_cell"; packageId = "once_cell"; } { name = "tracing-core"; packageId = "tracing-core"; } ]; features = { "ahash" = [ "dep:ahash" ]; "default" = [ "log-tracer" "std" ]; "interest-cache" = [ "lru" "ahash" ]; "lru" = [ "dep:lru" ]; "std" = [ "log/std" ]; }; resolvedDefaultFeatures = [ "log-tracer" "std" ]; }; "tracing-subscriber" = rec { crateName = "tracing-subscriber"; version = "0.3.18"; edition = "2018"; sha256 = "12vs1bwk4kig1l2qqjbbn2nm5amwiqmkcmnznylzmnfvjy6083xd"; libName = "tracing_subscriber"; authors = [ "Eliza Weisman <eliza@buoyant.io>" "David Barsky <me@davidbarsky.com>" "Tokio Contributors <team@tokio.rs>" ]; dependencies = [ { name = "nu-ansi-term"; packageId = "nu-ansi-term"; optional = true; } { name = "sharded-slab"; packageId = "sharded-slab"; optional = true; } { name = "smallvec"; packageId = "smallvec"; optional = true; } { name = "thread_local"; packageId = "thread_local"; optional = true; } { name = "tracing-core"; packageId = "tracing-core"; usesDefaultFeatures = false; } { name = "tracing-log"; packageId = "tracing-log"; optional = true; usesDefaultFeatures = false; features = [ "log-tracer" "std" ]; } ]; devDependencies = [ { name = "tracing-log"; packageId = "tracing-log"; } ]; features = { "ansi" = [ "fmt" "nu-ansi-term" ]; "chrono" = [ "dep:chrono" ]; "default" = [ "smallvec" "fmt" "ansi" "tracing-log" "std" ]; "env-filter" = [ "matchers" "regex" "once_cell" "tracing" "std" "thread_local" ]; "fmt" = [ "registry" "std" ]; "json" = [ "tracing-serde" "serde" "serde_json" ]; "local-time" = [ "time/local-offset" ]; "matchers" = [ "dep:matchers" ]; "nu-ansi-term" = [ "dep:nu-ansi-term" ]; "once_cell" = [ "dep:once_cell" ]; "parking_lot" = [ "dep:parking_lot" ]; "regex" = [ "dep:regex" ]; "registry" = [ "sharded-slab" "thread_local" "std" ]; "serde" = [ "dep:serde" ]; "serde_json" = [ "dep:serde_json" ]; "sharded-slab" = [ "dep:sharded-slab" ]; "smallvec" = [ "dep:smallvec" ]; "std" = [ "alloc" "tracing-core/std" ]; "thread_local" = [ "dep:thread_local" ]; "time" = [ "dep:time" ]; "tracing" = [ "dep:tracing" ]; "tracing-log" = [ "dep:tracing-log" ]; "tracing-serde" = [ "dep:tracing-serde" ]; "valuable" = [ "tracing-core/valuable" "valuable_crate" "valuable-serde" "tracing-serde/valuable" ]; "valuable-serde" = [ "dep:valuable-serde" ]; "valuable_crate" = [ "dep:valuable_crate" ]; }; resolvedDefaultFeatures = [ "alloc" "ansi" "default" "fmt" "nu-ansi-term" "registry" "sharded-slab" "smallvec" "std" "thread_local" "tracing-log" ]; }; "tvix-daemon" = rec { crateName = "tvix-daemon"; version = "0.1.0"; edition = "2021"; crateBin = [ { name = "tvix-daemon"; path = "src/main.rs"; requiredFeatures = [ ]; } ]; src = lib.cleanSourceWith { filter = sourceFilter; src = ./.; }; dependencies = [ { name = "clap"; packageId = "clap"; features = [ "derive" "env" ]; } { name = "nix-compat"; packageId = "nix-compat"; features = [ "wire" ]; } { name = "tokio"; packageId = "tokio"; features = [ "full" ]; } { name = "tokio-listener"; packageId = "tokio-listener"; } { name = "tracing"; packageId = "tracing"; } { name = "tracing-subscriber"; packageId = "tracing-subscriber"; } ]; devDependencies = [ { name = "tokio-test"; packageId = "tokio-test"; } ]; }; "typenum" = rec { crateName = "typenum"; version = "1.17.0"; edition = "2018"; sha256 = "09dqxv69m9lj9zvv6xw5vxaqx15ps0vxyy5myg33i0kbqvq0pzs2"; build = "build/main.rs"; authors = [ "Paho Lurie-Gregg <paho@paholg.com>" "Andre Bogus <bogusandre@gmail.com>" ]; features = { "scale-info" = [ "dep:scale-info" ]; "scale_info" = [ "scale-info/derive" ]; }; }; "unicode-ident" = rec { crateName = "unicode-ident"; version = "1.0.13"; edition = "2018"; sha256 = "1zm1xylzsdfvm2a5ib9li3g5pp7qnkv4amhspydvgbmd9k6mc6z9"; libName = "unicode_ident"; authors = [ "David Tolnay <dtolnay@gmail.com>" ]; }; "utf8parse" = rec { crateName = "utf8parse"; version = "0.2.2"; edition = "2018"; sha256 = "088807qwjq46azicqwbhlmzwrbkz7l4hpw43sdkdyyk524vdxaq6"; authors = [ "Joe Wilm <joe@jwilm.com>" "Christian Duerr <contact@christianduerr.com>" ]; features = { }; resolvedDefaultFeatures = [ "default" ]; }; "valuable" = rec { crateName = "valuable"; version = "0.1.0"; edition = "2018"; sha256 = "0v9gp3nkjbl30z0fd56d8mx7w1csk86wwjhfjhr400wh9mfpw2w3"; features = { "default" = [ "std" ]; "derive" = [ "valuable-derive" ]; "std" = [ "alloc" ]; "valuable-derive" = [ "dep:valuable-derive" ]; }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; "version_check" = rec { crateName = "version_check"; version = "0.9.5"; edition = "2015"; sha256 = "0nhhi4i5x89gm911azqbn7avs9mdacw2i3vcz3cnmz3mv4rqz4hb"; authors = [ "Sergio Benitez <sb@sergio.bz>" ]; }; "wasi" = rec { crateName = "wasi"; version = "0.11.0+wasi-snapshot-preview1"; edition = "2018"; sha256 = "08z4hxwkpdpalxjps1ai9y7ihin26y9f476i53dv98v45gkqg3cw"; authors = [ "The Cranelift Project Developers" ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" ]; "rustc-dep-of-std" = [ "compiler_builtins" "core" "rustc-std-workspace-alloc" ]; "rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "winapi" = rec { crateName = "winapi"; version = "0.3.9"; edition = "2015"; sha256 = "06gl025x418lchw1wxj64ycr7gha83m44cjr5sarhynd9xkrm0sw"; authors = [ "Peter Atashian <retep998@gmail.com>" ]; dependencies = [ { name = "winapi-i686-pc-windows-gnu"; packageId = "winapi-i686-pc-windows-gnu"; target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "i686-pc-windows-gnu"); } { name = "winapi-x86_64-pc-windows-gnu"; packageId = "winapi-x86_64-pc-windows-gnu"; target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "x86_64-pc-windows-gnu"); } ]; features = { "debug" = [ "impl-debug" ]; }; resolvedDefaultFeatures = [ "consoleapi" "errhandlingapi" "fileapi" "handleapi" "processenv" ]; }; "winapi-i686-pc-windows-gnu" = rec { crateName = "winapi-i686-pc-windows-gnu"; version = "0.4.0"; edition = "2015"; sha256 = "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"; libName = "winapi_i686_pc_windows_gnu"; authors = [ "Peter Atashian <retep998@gmail.com>" ]; }; "winapi-x86_64-pc-windows-gnu" = rec { crateName = "winapi-x86_64-pc-windows-gnu"; version = "0.4.0"; edition = "2015"; sha256 = "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"; libName = "winapi_x86_64_pc_windows_gnu"; authors = [ "Peter Atashian <retep998@gmail.com>" ]; }; "windows-sys" = rec { crateName = "windows-sys"; version = "0.52.0"; edition = "2021"; sha256 = "0gd3v4ji88490zgb6b5mq5zgbvwv7zx1ibn8v3x83rwcdbryaar8"; libName = "windows_sys"; authors = [ "Microsoft" ]; dependencies = [ { name = "windows-targets"; packageId = "windows-targets"; } ]; features = { "Wdk_Foundation" = [ "Wdk" ]; "Wdk_Graphics" = [ "Wdk" ]; "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; "Wdk_Storage" = [ "Wdk" ]; "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; "Wdk_System" = [ "Wdk" ]; "Wdk_System_IO" = [ "Wdk_System" ]; "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; "Wdk_System_Registry" = [ "Wdk_System" ]; "Wdk_System_SystemInformation" = [ "Wdk_System" ]; "Wdk_System_SystemServices" = [ "Wdk_System" ]; "Wdk_System_Threading" = [ "Wdk_System" ]; "Win32_Data" = [ "Win32" ]; "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; "Win32_Data_RightsManagement" = [ "Win32_Data" ]; "Win32_Devices" = [ "Win32" ]; "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; "Win32_Devices_Communication" = [ "Win32_Devices" ]; "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; "Win32_Devices_Display" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; "Win32_Devices_Fax" = [ "Win32_Devices" ]; "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; "Win32_Devices_Properties" = [ "Win32_Devices" ]; "Win32_Devices_Pwm" = [ "Win32_Devices" ]; "Win32_Devices_Sensors" = [ "Win32_Devices" ]; "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; "Win32_Devices_Tapi" = [ "Win32_Devices" ]; "Win32_Devices_Usb" = [ "Win32_Devices" ]; "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; "Win32_Foundation" = [ "Win32" ]; "Win32_Gaming" = [ "Win32" ]; "Win32_Globalization" = [ "Win32" ]; "Win32_Graphics" = [ "Win32" ]; "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; "Win32_Management" = [ "Win32" ]; "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; "Win32_Media" = [ "Win32" ]; "Win32_Media_Audio" = [ "Win32_Media" ]; "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; "Win32_Media_Multimedia" = [ "Win32_Media" ]; "Win32_Media_Streaming" = [ "Win32_Media" ]; "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; "Win32_NetworkManagement" = [ "Win32" ]; "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; "Win32_Networking" = [ "Win32" ]; "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; "Win32_Networking_Clustering" = [ "Win32_Networking" ]; "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; "Win32_Networking_Ldap" = [ "Win32_Networking" ]; "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; "Win32_Networking_WinInet" = [ "Win32_Networking" ]; "Win32_Networking_WinSock" = [ "Win32_Networking" ]; "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; "Win32_Security" = [ "Win32" ]; "Win32_Security_AppLocker" = [ "Win32_Security" ]; "Win32_Security_Authentication" = [ "Win32_Security" ]; "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; "Win32_Security_Authorization" = [ "Win32_Security" ]; "Win32_Security_Credentials" = [ "Win32_Security" ]; "Win32_Security_Cryptography" = [ "Win32_Security" ]; "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; "Win32_Security_Isolation" = [ "Win32_Security" ]; "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; "Win32_Security_WinTrust" = [ "Win32_Security" ]; "Win32_Security_WinWlx" = [ "Win32_Security" ]; "Win32_Storage" = [ "Win32" ]; "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; "Win32_Storage_Compression" = [ "Win32_Storage" ]; "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; "Win32_Storage_Imapi" = [ "Win32_Storage" ]; "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; "Win32_Storage_Jet" = [ "Win32_Storage" ]; "Win32_Storage_Nvme" = [ "Win32_Storage" ]; "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; "Win32_Storage_Packaging" = [ "Win32_Storage" ]; "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; "Win32_Storage_Vhd" = [ "Win32_Storage" ]; "Win32_Storage_Xps" = [ "Win32_Storage" ]; "Win32_System" = [ "Win32" ]; "Win32_System_AddressBook" = [ "Win32_System" ]; "Win32_System_Antimalware" = [ "Win32_System" ]; "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; "Win32_System_ClrHosting" = [ "Win32_System" ]; "Win32_System_Com" = [ "Win32_System" ]; "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; "Win32_System_ComponentServices" = [ "Win32_System" ]; "Win32_System_Console" = [ "Win32_System" ]; "Win32_System_CorrelationVector" = [ "Win32_System" ]; "Win32_System_DataExchange" = [ "Win32_System" ]; "Win32_System_DeploymentServices" = [ "Win32_System" ]; "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; "Win32_System_Diagnostics" = [ "Win32_System" ]; "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; "Win32_System_Environment" = [ "Win32_System" ]; "Win32_System_ErrorReporting" = [ "Win32_System" ]; "Win32_System_EventCollector" = [ "Win32_System" ]; "Win32_System_EventLog" = [ "Win32_System" ]; "Win32_System_EventNotificationService" = [ "Win32_System" ]; "Win32_System_GroupPolicy" = [ "Win32_System" ]; "Win32_System_HostCompute" = [ "Win32_System" ]; "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; "Win32_System_HostComputeSystem" = [ "Win32_System" ]; "Win32_System_Hypervisor" = [ "Win32_System" ]; "Win32_System_IO" = [ "Win32_System" ]; "Win32_System_Iis" = [ "Win32_System" ]; "Win32_System_Ioctl" = [ "Win32_System" ]; "Win32_System_JobObjects" = [ "Win32_System" ]; "Win32_System_Js" = [ "Win32_System" ]; "Win32_System_Kernel" = [ "Win32_System" ]; "Win32_System_LibraryLoader" = [ "Win32_System" ]; "Win32_System_Mailslots" = [ "Win32_System" ]; "Win32_System_Mapi" = [ "Win32_System" ]; "Win32_System_Memory" = [ "Win32_System" ]; "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; "Win32_System_MessageQueuing" = [ "Win32_System" ]; "Win32_System_MixedReality" = [ "Win32_System" ]; "Win32_System_Ole" = [ "Win32_System" ]; "Win32_System_PasswordManagement" = [ "Win32_System" ]; "Win32_System_Performance" = [ "Win32_System" ]; "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; "Win32_System_Pipes" = [ "Win32_System" ]; "Win32_System_Power" = [ "Win32_System" ]; "Win32_System_ProcessStatus" = [ "Win32_System" ]; "Win32_System_Recovery" = [ "Win32_System" ]; "Win32_System_Registry" = [ "Win32_System" ]; "Win32_System_RemoteDesktop" = [ "Win32_System" ]; "Win32_System_RemoteManagement" = [ "Win32_System" ]; "Win32_System_RestartManager" = [ "Win32_System" ]; "Win32_System_Restore" = [ "Win32_System" ]; "Win32_System_Rpc" = [ "Win32_System" ]; "Win32_System_Search" = [ "Win32_System" ]; "Win32_System_Search_Common" = [ "Win32_System_Search" ]; "Win32_System_SecurityCenter" = [ "Win32_System" ]; "Win32_System_Services" = [ "Win32_System" ]; "Win32_System_SetupAndMigration" = [ "Win32_System" ]; "Win32_System_Shutdown" = [ "Win32_System" ]; "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; "Win32_System_SystemInformation" = [ "Win32_System" ]; "Win32_System_SystemServices" = [ "Win32_System" ]; "Win32_System_Threading" = [ "Win32_System" ]; "Win32_System_Time" = [ "Win32_System" ]; "Win32_System_TpmBaseServices" = [ "Win32_System" ]; "Win32_System_UserAccessLogging" = [ "Win32_System" ]; "Win32_System_Variant" = [ "Win32_System" ]; "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; "Win32_System_WindowsProgramming" = [ "Win32_System" ]; "Win32_System_Wmi" = [ "Win32_System" ]; "Win32_UI" = [ "Win32" ]; "Win32_UI_Accessibility" = [ "Win32_UI" ]; "Win32_UI_ColorSystem" = [ "Win32_UI" ]; "Win32_UI_Controls" = [ "Win32_UI" ]; "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; "Win32_UI_HiDpi" = [ "Win32_UI" ]; "Win32_UI_Input" = [ "Win32_UI" ]; "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; "Win32_UI_InteractionContext" = [ "Win32_UI" ]; "Win32_UI_Magnification" = [ "Win32_UI" ]; "Win32_UI_Shell" = [ "Win32_UI" ]; "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; "Win32_UI_TabletPC" = [ "Win32_UI" ]; "Win32_UI_TextServices" = [ "Win32_UI" ]; "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; "Win32_Web" = [ "Win32" ]; "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; }; resolvedDefaultFeatures = [ "Wdk" "Wdk_Foundation" "Wdk_Storage" "Wdk_Storage_FileSystem" "Wdk_System" "Wdk_System_IO" "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_IO" "Win32_System_Pipes" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_WindowsProgramming" "default" ]; }; "windows-targets" = rec { crateName = "windows-targets"; version = "0.52.6"; edition = "2021"; sha256 = "0wwrx625nwlfp7k93r2rra568gad1mwd888h1jwnl0vfg5r4ywlv"; libName = "windows_targets"; authors = [ "Microsoft" ]; dependencies = [ { name = "windows_aarch64_gnullvm"; packageId = "windows_aarch64_gnullvm"; target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "aarch64-pc-windows-gnullvm"); } { name = "windows_aarch64_msvc"; packageId = "windows_aarch64_msvc"; target = { target, features }: (("aarch64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); } { name = "windows_i686_gnu"; packageId = "windows_i686_gnu"; target = { target, features }: (("x86" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); } { name = "windows_i686_gnullvm"; packageId = "windows_i686_gnullvm"; target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "i686-pc-windows-gnullvm"); } { name = "windows_i686_msvc"; packageId = "windows_i686_msvc"; target = { target, features }: (("x86" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); } { name = "windows_x86_64_gnu"; packageId = "windows_x86_64_gnu"; target = { target, features }: (("x86_64" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); } { name = "windows_x86_64_gnullvm"; packageId = "windows_x86_64_gnullvm"; target = { target, features }: (stdenv.hostPlatform.rust.rustcTarget == "x86_64-pc-windows-gnullvm"); } { name = "windows_x86_64_msvc"; packageId = "windows_x86_64_msvc"; target = { target, features }: ((("x86_64" == target."arch" or null) || ("arm64ec" == target."arch" or null)) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); } ]; }; "windows_aarch64_gnullvm" = rec { crateName = "windows_aarch64_gnullvm"; version = "0.52.6"; edition = "2021"; sha256 = "1lrcq38cr2arvmz19v32qaggvj8bh1640mdm9c2fr877h0hn591j"; authors = [ "Microsoft" ]; }; "windows_aarch64_msvc" = rec { crateName = "windows_aarch64_msvc"; version = "0.52.6"; edition = "2021"; sha256 = "0sfl0nysnz32yyfh773hpi49b1q700ah6y7sacmjbqjjn5xjmv09"; authors = [ "Microsoft" ]; }; "windows_i686_gnu" = rec { crateName = "windows_i686_gnu"; version = "0.52.6"; edition = "2021"; sha256 = "02zspglbykh1jh9pi7gn8g1f97jh1rrccni9ivmrfbl0mgamm6wf"; authors = [ "Microsoft" ]; }; "windows_i686_gnullvm" = rec { crateName = "windows_i686_gnullvm"; version = "0.52.6"; edition = "2021"; sha256 = "0rpdx1537mw6slcpqa0rm3qixmsb79nbhqy5fsm3q2q9ik9m5vhf"; authors = [ "Microsoft" ]; }; "windows_i686_msvc" = rec { crateName = "windows_i686_msvc"; version = "0.52.6"; edition = "2021"; sha256 = "0rkcqmp4zzmfvrrrx01260q3xkpzi6fzi2x2pgdcdry50ny4h294"; authors = [ "Microsoft" ]; }; "windows_x86_64_gnu" = rec { crateName = "windows_x86_64_gnu"; version = "0.52.6"; edition = "2021"; sha256 = "0y0sifqcb56a56mvn7xjgs8g43p33mfqkd8wj1yhrgxzma05qyhl"; authors = [ "Microsoft" ]; }; "windows_x86_64_gnullvm" = rec { crateName = "windows_x86_64_gnullvm"; version = "0.52.6"; edition = "2021"; sha256 = "03gda7zjx1qh8k9nnlgb7m3w3s1xkysg55hkd1wjch8pqhyv5m94"; authors = [ "Microsoft" ]; }; "windows_x86_64_msvc" = rec { crateName = "windows_x86_64_msvc"; version = "0.52.6"; edition = "2021"; sha256 = "1v7rb5cibyzx8vak29pdrk8nx9hycsjs4w0jgms08qk49jl6v7sq"; authors = [ "Microsoft" ]; }; "zeroize" = rec { crateName = "zeroize"; version = "1.8.1"; edition = "2021"; sha256 = "1pjdrmjwmszpxfd7r860jx54cyk94qk59x13sc307cvr5256glyf"; authors = [ "The RustCrypto Project Developers" ]; features = { "default" = [ "alloc" ]; "derive" = [ "zeroize_derive" ]; "serde" = [ "dep:serde" ]; "std" = [ "alloc" ]; "zeroize_derive" = [ "dep:zeroize_derive" ]; }; resolvedDefaultFeatures = [ "alloc" ]; }; }; # # crate2nix/default.nix (excerpt start) # /* Target (platform) data for conditional dependencies. This corresponds roughly to what buildRustCrate is setting. */ makeDefaultTarget = platform: { unix = platform.isUnix; windows = platform.isWindows; fuchsia = true; test = false; inherit (platform.rust.platform) arch os vendor; family = platform.rust.platform.target-family; env = "gnu"; endian = if platform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"; pointer_width = toString platform.parsed.cpu.bits; debug_assertions = false; }; /* Filters common temp files and build files. */ # TODO(pkolloch): Substitute with gitignore filter sourceFilter = name: type: let baseName = builtins.baseNameOf (builtins.toString name); in ! ( # Filter out git baseName == ".gitignore" || (type == "directory" && baseName == ".git") # Filter out build results || ( type == "directory" && ( baseName == "target" || baseName == "_site" || baseName == ".sass-cache" || baseName == ".jekyll-metadata" || baseName == "build-artifacts" ) ) # Filter out nix-build result symlinks || ( type == "symlink" && lib.hasPrefix "result" baseName ) # Filter out IDE config || ( type == "directory" && ( baseName == ".idea" || baseName == ".vscode" ) ) || lib.hasSuffix ".iml" baseName # Filter out nix build files || baseName == "Cargo.nix" # Filter out editor backup / swap files. || lib.hasSuffix "~" baseName || builtins.match "^\\.sw[a-z]$$" baseName != null || builtins.match "^\\..*\\.sw[a-z]$$" baseName != null || lib.hasSuffix ".tmp" baseName || lib.hasSuffix ".bak" baseName || baseName == "tests.nix" ); /* Returns a crate which depends on successful test execution of crate given as the second argument. testCrateFlags: list of flags to pass to the test exectuable testInputs: list of packages that should be available during test execution */ crateWithTest = { crate, testCrate, testCrateFlags, testInputs, testPreRun, testPostRun }: assert builtins.typeOf testCrateFlags == "list"; assert builtins.typeOf testInputs == "list"; assert builtins.typeOf testPreRun == "string"; assert builtins.typeOf testPostRun == "string"; let # override the `crate` so that it will build and execute tests instead of # building the actual lib and bin targets We just have to pass `--test` # to rustc and it will do the right thing. We execute the tests and copy # their log and the test executables to $out for later inspection. test = let drv = testCrate.override ( _: { buildTests = true; release = false; } ); # If the user hasn't set any pre/post commands, we don't want to # insert empty lines. This means that any existing users of crate2nix # don't get a spurious rebuild unless they set these explicitly. testCommand = pkgs.lib.concatStringsSep "\n" (pkgs.lib.filter (s: s != "") [ testPreRun "$f $testCrateFlags 2>&1 | tee -a $out" testPostRun ]); in pkgs.stdenvNoCC.mkDerivation { name = "run-tests-${testCrate.name}"; inherit (crate) src; inherit testCrateFlags; buildInputs = testInputs; buildPhase = '' set -e export RUST_BACKTRACE=1 # build outputs testRoot=target/debug mkdir -p $testRoot # executables of the crate # we copy to prevent std::env::current_exe() to resolve to a store location for i in ${crate}/bin/*; do cp "$i" "$testRoot" done chmod +w -R . # test harness executables are suffixed with a hash, like cargo does # this allows to prevent name collision with the main # executables of the crate hash=$(basename $out) for file in ${drv}/tests/*; do f=$testRoot/$(basename $file)-$hash cp $file $f ${testCommand} done ''; }; in pkgs.runCommand "${crate.name}-linked" { inherit (crate) outputs crateName; passthru = (crate.passthru or { }) // { inherit test; }; } (lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' echo tested by ${test} '' + '' ${lib.concatMapStringsSep "\n" (output: "ln -s ${crate.${output}} ${"$"}${output}") crate.outputs} ''); /* A restricted overridable version of builtRustCratesWithFeatures. */ buildRustCrateWithFeatures = { packageId , features ? rootFeatures , crateOverrides ? defaultCrateOverrides , buildRustCrateForPkgsFunc ? null , runTests ? false , testCrateFlags ? [ ] , testInputs ? [ ] # Any command to run immediatelly before a test is executed. , testPreRun ? "" # Any command run immediatelly after a test is executed. , testPostRun ? "" }: lib.makeOverridable ( { features , crateOverrides , runTests , testCrateFlags , testInputs , testPreRun , testPostRun }: let buildRustCrateForPkgsFuncOverriden = if buildRustCrateForPkgsFunc != null then buildRustCrateForPkgsFunc else ( if crateOverrides == pkgs.defaultCrateOverrides then buildRustCrateForPkgs else pkgs: (buildRustCrateForPkgs pkgs).override { defaultCrateOverrides = crateOverrides; } ); builtRustCrates = builtRustCratesWithFeatures { inherit packageId features; buildRustCrateForPkgsFunc = buildRustCrateForPkgsFuncOverriden; runTests = false; }; builtTestRustCrates = builtRustCratesWithFeatures { inherit packageId features; buildRustCrateForPkgsFunc = buildRustCrateForPkgsFuncOverriden; runTests = true; }; drv = builtRustCrates.crates.${packageId}; testDrv = builtTestRustCrates.crates.${packageId}; derivation = if runTests then crateWithTest { crate = drv; testCrate = testDrv; inherit testCrateFlags testInputs testPreRun testPostRun; } else drv; in derivation ) { inherit features crateOverrides runTests testCrateFlags testInputs testPreRun testPostRun; }; /* Returns an attr set with packageId mapped to the result of buildRustCrateForPkgsFunc for the corresponding crate. */ builtRustCratesWithFeatures = { packageId , features , crateConfigs ? crates , buildRustCrateForPkgsFunc , runTests , makeTarget ? makeDefaultTarget } @ args: assert (builtins.isAttrs crateConfigs); assert (builtins.isString packageId); assert (builtins.isList features); assert (builtins.isAttrs (makeTarget stdenv.hostPlatform)); assert (builtins.isBool runTests); let rootPackageId = packageId; mergedFeatures = mergePackageFeatures ( args // { inherit rootPackageId; target = makeTarget stdenv.hostPlatform // { test = runTests; }; } ); # Memoize built packages so that reappearing packages are only built once. builtByPackageIdByPkgs = mkBuiltByPackageIdByPkgs pkgs; mkBuiltByPackageIdByPkgs = pkgs: let self = { crates = lib.mapAttrs (packageId: value: buildByPackageIdForPkgsImpl self pkgs packageId) crateConfigs; target = makeTarget stdenv.hostPlatform; build = mkBuiltByPackageIdByPkgs pkgs.buildPackages; }; in self; buildByPackageIdForPkgsImpl = self: pkgs: packageId: let features = mergedFeatures."${packageId}" or [ ]; crateConfig' = crateConfigs."${packageId}"; crateConfig = builtins.removeAttrs crateConfig' [ "resolvedDefaultFeatures" "devDependencies" ]; devDependencies = lib.optionals (runTests && packageId == rootPackageId) (crateConfig'.devDependencies or [ ]); dependencies = dependencyDerivations { inherit features; inherit (self) target; buildByPackageId = depPackageId: # proc_macro crates must be compiled for the build architecture if crateConfigs.${depPackageId}.procMacro or false then self.build.crates.${depPackageId} else self.crates.${depPackageId}; dependencies = (crateConfig.dependencies or [ ]) ++ devDependencies; }; buildDependencies = dependencyDerivations { inherit features; inherit (self.build) target; buildByPackageId = depPackageId: self.build.crates.${depPackageId}; dependencies = crateConfig.buildDependencies or [ ]; }; dependenciesWithRenames = let buildDeps = filterEnabledDependencies { inherit features; inherit (self) target; dependencies = crateConfig.dependencies or [ ] ++ devDependencies; }; hostDeps = filterEnabledDependencies { inherit features; inherit (self.build) target; dependencies = crateConfig.buildDependencies or [ ]; }; in lib.filter (d: d ? "rename") (hostDeps ++ buildDeps); # Crate renames have the form: # # { # crate_name = [ # { version = "1.2.3"; rename = "crate_name01"; } # ]; # # ... # } crateRenames = let grouped = lib.groupBy (dependency: dependency.name) dependenciesWithRenames; versionAndRename = dep: let package = crateConfigs."${dep.packageId}"; in { inherit (dep) rename; inherit (package) version; }; in lib.mapAttrs (name: builtins.map versionAndRename) grouped; in buildRustCrateForPkgsFunc pkgs ( crateConfig // { src = crateConfig.src or ( pkgs.fetchurl rec { name = "${crateConfig.crateName}-${crateConfig.version}.tar.gz"; # https://www.pietroalbini.org/blog/downloading-crates-io/ # Not rate-limited, CDN URL. url = "https://static.crates.io/crates/${crateConfig.crateName}/${crateConfig.crateName}-${crateConfig.version}.crate"; sha256 = assert (lib.assertMsg (crateConfig ? sha256) "Missing sha256 for ${name}"); crateConfig.sha256; } ); extraRustcOpts = lib.lists.optional (targetFeatures != [ ]) "-C target-feature=${lib.concatMapStringsSep "," (x: "+${x}") targetFeatures}"; inherit features dependencies buildDependencies crateRenames release; } ); in builtByPackageIdByPkgs; /* Returns the actual derivations for the given dependencies. */ dependencyDerivations = { buildByPackageId , features , dependencies , target }: assert (builtins.isList features); assert (builtins.isList dependencies); assert (builtins.isAttrs target); let enabledDependencies = filterEnabledDependencies { inherit dependencies features target; }; depDerivation = dependency: buildByPackageId dependency.packageId; in map depDerivation enabledDependencies; /* Returns a sanitized version of val with all values substituted that cannot be serialized as JSON. */ sanitizeForJson = val: if builtins.isAttrs val then lib.mapAttrs (n: sanitizeForJson) val else if builtins.isList val then builtins.map sanitizeForJson val else if builtins.isFunction val then "function" else val; /* Returns various tools to debug a crate. */ debugCrate = { packageId, target ? makeDefaultTarget stdenv.hostPlatform }: assert (builtins.isString packageId); let debug = rec { # The built tree as passed to buildRustCrate. buildTree = buildRustCrateWithFeatures { buildRustCrateForPkgsFunc = _: lib.id; inherit packageId; }; sanitizedBuildTree = sanitizeForJson buildTree; dependencyTree = sanitizeForJson ( buildRustCrateWithFeatures { buildRustCrateForPkgsFunc = _: crate: { "01_crateName" = crate.crateName or false; "02_features" = crate.features or [ ]; "03_dependencies" = crate.dependencies or [ ]; }; inherit packageId; } ); mergedPackageFeatures = mergePackageFeatures { features = rootFeatures; inherit packageId target; }; diffedDefaultPackageFeatures = diffDefaultPackageFeatures { inherit packageId target; }; }; in { internal = debug; }; /* Returns differences between cargo default features and crate2nix default features. This is useful for verifying the feature resolution in crate2nix. */ diffDefaultPackageFeatures = { crateConfigs ? crates , packageId , target }: assert (builtins.isAttrs crateConfigs); let prefixValues = prefix: lib.mapAttrs (n: v: { "${prefix}" = v; }); mergedFeatures = prefixValues "crate2nix" (mergePackageFeatures { inherit crateConfigs packageId target; features = [ "default" ]; }); configs = prefixValues "cargo" crateConfigs; combined = lib.foldAttrs (a: b: a // b) { } [ mergedFeatures configs ]; onlyInCargo = builtins.attrNames (lib.filterAttrs (n: v: !(v ? "crate2nix") && (v ? "cargo")) combined); onlyInCrate2Nix = builtins.attrNames (lib.filterAttrs (n: v: (v ? "crate2nix") && !(v ? "cargo")) combined); differentFeatures = lib.filterAttrs ( n: v: (v ? "crate2nix") && (v ? "cargo") && (v.crate2nix.features or [ ]) != (v."cargo".resolved_default_features or [ ]) ) combined; in builtins.toJSON { inherit onlyInCargo onlyInCrate2Nix differentFeatures; }; /* Returns an attrset mapping packageId to the list of enabled features. If multiple paths to a dependency enable different features, the corresponding feature sets are merged. Features in rust are additive. */ mergePackageFeatures = { crateConfigs ? crates , packageId , rootPackageId ? packageId , features ? rootFeatures , dependencyPath ? [ crates.${packageId}.crateName ] , featuresByPackageId ? { } , target # Adds devDependencies to the crate with rootPackageId. , runTests ? false , ... } @ args: assert (builtins.isAttrs crateConfigs); assert (builtins.isString packageId); assert (builtins.isString rootPackageId); assert (builtins.isList features); assert (builtins.isList dependencyPath); assert (builtins.isAttrs featuresByPackageId); assert (builtins.isAttrs target); assert (builtins.isBool runTests); let crateConfig = crateConfigs."${packageId}" or (builtins.throw "Package not found: ${packageId}"); expandedFeatures = expandFeatures (crateConfig.features or { }) features; enabledFeatures = enableFeatures (crateConfig.dependencies or [ ]) expandedFeatures; depWithResolvedFeatures = dependency: let inherit (dependency) packageId; features = dependencyFeatures enabledFeatures dependency; in { inherit packageId features; }; resolveDependencies = cache: path: dependencies: assert (builtins.isAttrs cache); assert (builtins.isList dependencies); let enabledDependencies = filterEnabledDependencies { inherit dependencies target; features = enabledFeatures; }; directDependencies = map depWithResolvedFeatures enabledDependencies; foldOverCache = op: lib.foldl op cache directDependencies; in foldOverCache ( cache: { packageId, features }: let cacheFeatures = cache.${packageId} or [ ]; combinedFeatures = sortedUnique (cacheFeatures ++ features); in if cache ? ${packageId} && cache.${packageId} == combinedFeatures then cache else mergePackageFeatures { features = combinedFeatures; featuresByPackageId = cache; inherit crateConfigs packageId target runTests rootPackageId; } ); cacheWithSelf = let cacheFeatures = featuresByPackageId.${packageId} or [ ]; combinedFeatures = sortedUnique (cacheFeatures ++ enabledFeatures); in featuresByPackageId // { "${packageId}" = combinedFeatures; }; cacheWithDependencies = resolveDependencies cacheWithSelf "dep" ( crateConfig.dependencies or [ ] ++ lib.optionals (runTests && packageId == rootPackageId) (crateConfig.devDependencies or [ ]) ); cacheWithAll = resolveDependencies cacheWithDependencies "build" (crateConfig.buildDependencies or [ ]); in cacheWithAll; /* Returns the enabled dependencies given the enabled features. */ filterEnabledDependencies = { dependencies, features, target }: assert (builtins.isList dependencies); assert (builtins.isList features); assert (builtins.isAttrs target); lib.filter ( dep: let targetFunc = dep.target or (features: true); in targetFunc { inherit features target; } && ( !(dep.optional or false) || builtins.any (doesFeatureEnableDependency dep) features ) ) dependencies; /* Returns whether the given feature should enable the given dependency. */ doesFeatureEnableDependency = dependency: feature: let name = dependency.rename or dependency.name; prefix = "${name}/"; len = builtins.stringLength prefix; startsWithPrefix = builtins.substring 0 len feature == prefix; in feature == name || feature == "dep:" + name || startsWithPrefix; /* Returns the expanded features for the given inputFeatures by applying the rules in featureMap. featureMap is an attribute set which maps feature names to lists of further feature names to enable in case this feature is selected. */ expandFeatures = featureMap: inputFeatures: assert (builtins.isAttrs featureMap); assert (builtins.isList inputFeatures); let expandFeaturesNoCycle = oldSeen: inputFeatures: if inputFeatures != [ ] then let # The feature we're currently expanding. feature = builtins.head inputFeatures; # All the features we've seen/expanded so far, including the one # we're currently processing. seen = oldSeen // { ${feature} = 1; }; # Expand the feature but be careful to not re-introduce a feature # that we've already seen: this can easily cause a cycle, see issue # #209. enables = builtins.filter (f: !(seen ? "${f}")) (featureMap."${feature}" or [ ]); in [ feature ] ++ (expandFeaturesNoCycle seen (builtins.tail inputFeatures ++ enables)) # No more features left, nothing to expand to. else [ ]; outFeatures = expandFeaturesNoCycle { } inputFeatures; in sortedUnique outFeatures; /* This function adds optional dependencies as features if they are enabled indirectly by dependency features. This function mimics Cargo's behavior described in a note at: https://doc.rust-lang.org/nightly/cargo/reference/features.html#dependency-features */ enableFeatures = dependencies: features: assert (builtins.isList features); assert (builtins.isList dependencies); let additionalFeatures = lib.concatMap ( dependency: assert (builtins.isAttrs dependency); let enabled = builtins.any (doesFeatureEnableDependency dependency) features; in if (dependency.optional or false) && enabled then [ (dependency.rename or dependency.name) ] else [ ] ) dependencies; in sortedUnique (features ++ additionalFeatures); /* Returns the actual features for the given dependency. features: The features of the crate that refers this dependency. */ dependencyFeatures = features: dependency: assert (builtins.isList features); assert (builtins.isAttrs dependency); let defaultOrNil = if dependency.usesDefaultFeatures or true then [ "default" ] else [ ]; explicitFeatures = dependency.features or [ ]; additionalDependencyFeatures = let name = dependency.rename or dependency.name; stripPrefixMatch = prefix: s: if lib.hasPrefix prefix s then lib.removePrefix prefix s else null; extractFeature = feature: lib.findFirst (f: f != null) null (map (prefix: stripPrefixMatch prefix feature) [ (name + "/") (name + "?/") ]); dependencyFeatures = lib.filter (f: f != null) (map extractFeature features); in dependencyFeatures; in defaultOrNil ++ explicitFeatures ++ additionalDependencyFeatures; /* Sorts and removes duplicates from a list of strings. */ sortedUnique = features: assert (builtins.isList features); assert (builtins.all builtins.isString features); let outFeaturesSet = lib.foldl (set: feature: set // { "${feature}" = 1; }) { } features; outFeaturesUnique = builtins.attrNames outFeaturesSet; in builtins.sort (a: b: a < b) outFeaturesUnique; deprecationWarning = message: value: if strictDeprecation then builtins.throw "strictDeprecation enabled, aborting: ${message}" else builtins.trace message value; # # crate2nix/default.nix (excerpt end) # }; }