# This file was @generated by crate2nix 0.10.0 with the command: # "generate" # See https://github.com/kolloch/crate2nix for more info. { nixpkgs ? , pkgs ? import nixpkgs { config = {}; } , lib ? pkgs.lib , stdenv ? pkgs.stdenv , buildRustCrateForPkgs ? if buildRustCrate != null then lib.warn "crate2nix: Passing `buildRustCrate` as argument to Cargo.nix is deprecated. If you don't customize `buildRustCrate`, replace `callPackage ./Cargo.nix {}` by `import ./Cargo.nix { inherit pkgs; }`, and if you need to customize `buildRustCrate`, use `buildRustCrateForPkgs` instead." (_: buildRustCrate) else pkgs: pkgs.buildRustCrate # Deprecated , buildRustCrate ? null # 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 # 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 = "fstn"; # 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 = { "fstn" = rec { packageId = "fstn"; build = internal.buildRustCrateWithFeatures { packageId = "fstn"; }; # 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 = { "atty" = rec { crateName = "atty"; version = "0.2.14"; edition = "2015"; sha256 = "1s7yslcs6a28c5vz7jwj63lkfgyx8mx99fdirlhi9lbhhzhrpcyr"; authors = [ "softprops " ]; dependencies = [ { name = "hermit-abi"; packageId = "hermit-abi"; target = { target, features }: (target."os" == "hermit"); } { name = "libc"; packageId = "libc"; usesDefaultFeatures = false; target = { target, features }: (target."unix" or false); } { name = "winapi"; packageId = "winapi"; target = { target, features }: (target."windows" or false); features = [ "consoleapi" "processenv" "minwinbase" "minwindef" "winbase" ]; } ]; }; "autocfg" = rec { crateName = "autocfg"; version = "1.1.0"; edition = "2015"; sha256 = "1ylp3cb47ylzabimazvbz9ms6ap784zhb6syaz6c1jqpmcmq0s6l"; authors = [ "Josh Stone " ]; }; "base64" = rec { crateName = "base64"; version = "0.13.0"; edition = "2018"; sha256 = "1z82g23mbzjgijkpcrilc7nljpxpvpf7zxf6iyiapkgka2ngwkch"; authors = [ "Alice Maz " "Marshall Pierce " ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "bitflags" = 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" ]; }; "bumpalo" = rec { crateName = "bumpalo"; version = "3.11.0"; edition = "2021"; sha256 = "0pcfy89hpmixns4qqd4swbhsnvn3mkah0w229wijq3fj30hq5bf1"; authors = [ "Nick Fitzgerald " ]; features = { }; resolvedDefaultFeatures = [ "default" ]; }; "bytes" = rec { crateName = "bytes"; version = "1.2.1"; edition = "2018"; sha256 = "1nsni0jbx1048inbrarn3hz6zxd000pp0rac2mr07s7xf1m7p2pc"; authors = [ "Carl Lerche " "Sean McArthur " ]; features = { "default" = [ "std" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "cc" = rec { crateName = "cc"; version = "1.0.73"; edition = "2018"; crateBin = []; sha256 = "04ccylrjq94jssh8f7d7hxv64gs9f1m1jrsxb7wqgfxk4xljmzrg"; authors = [ "Alex Crichton " ]; features = { "jobserver" = [ "dep:jobserver" ]; "parallel" = [ "jobserver" ]; }; }; "cfg-if" = rec { crateName = "cfg-if"; version = "1.0.0"; edition = "2018"; sha256 = "1za0vb97n4brpzpv8lsbnzmq5r8f2b0cpqqr0sy8h5bn751xxwds"; authors = [ "Alex Crichton " ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; }; }; "clap" = rec { crateName = "clap"; version = "3.2.22"; edition = "2021"; crateBin = []; sha256 = "0l17622rmpi0lmhibkcc7d9dqwfrs3ipz78cg5d37yy70kcpli46"; dependencies = [ { name = "atty"; packageId = "atty"; optional = true; } { name = "bitflags"; packageId = "bitflags"; } { name = "clap_derive"; packageId = "clap_derive"; optional = true; } { name = "clap_lex"; packageId = "clap_lex"; } { name = "indexmap"; packageId = "indexmap"; } { name = "once_cell"; packageId = "once_cell"; optional = true; } { name = "strsim"; packageId = "strsim"; optional = true; } { name = "termcolor"; packageId = "termcolor"; optional = true; } { name = "textwrap"; packageId = "textwrap"; usesDefaultFeatures = false; } ]; features = { "atty" = [ "dep:atty" ]; "backtrace" = [ "dep:backtrace" ]; "cargo" = [ "once_cell" ]; "clap_derive" = [ "dep:clap_derive" ]; "color" = [ "atty" "termcolor" ]; "debug" = [ "clap_derive/debug" "backtrace" ]; "default" = [ "std" "color" "suggestions" ]; "deprecated" = [ "clap_derive/deprecated" ]; "derive" = [ "clap_derive" "once_cell" ]; "once_cell" = [ "dep:once_cell" ]; "regex" = [ "dep:regex" ]; "std" = [ "indexmap/std" ]; "strsim" = [ "dep:strsim" ]; "suggestions" = [ "strsim" ]; "termcolor" = [ "dep:termcolor" ]; "terminal_size" = [ "dep:terminal_size" ]; "unicase" = [ "dep:unicase" ]; "unicode" = [ "textwrap/unicode-width" "unicase" ]; "unstable-doc" = [ "derive" "cargo" "wrap_help" "yaml" "env" "unicode" "regex" "unstable-replace" "unstable-grouped" ]; "unstable-v4" = [ "clap_derive/unstable-v4" "deprecated" ]; "wrap_help" = [ "terminal_size" "textwrap/terminal_size" ]; "yaml" = [ "yaml-rust" ]; "yaml-rust" = [ "dep:yaml-rust" ]; }; resolvedDefaultFeatures = [ "atty" "clap_derive" "color" "default" "derive" "once_cell" "std" "strsim" "suggestions" "termcolor" ]; }; "clap_derive" = rec { crateName = "clap_derive"; version = "3.2.18"; edition = "2021"; sha256 = "0r9az0cl33xx0i9g18l56l3vd5ayjvcflvza2gdf8jwcab78n37a"; procMacro = true; dependencies = [ { name = "heck"; packageId = "heck"; } { name = "proc-macro-error"; packageId = "proc-macro-error"; } { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "full" ]; } ]; features = { "raw-deprecated" = [ "deprecated" ]; "unstable-v4" = [ "deprecated" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "clap_lex" = rec { crateName = "clap_lex"; version = "0.2.4"; edition = "2021"; sha256 = "1ib1a9v55ybnaws11l63az0jgz5xiy24jkdgsmyl7grcm3sz4l18"; dependencies = [ { name = "os_str_bytes"; packageId = "os_str_bytes"; usesDefaultFeatures = false; features = [ "raw_os_str" ]; } ]; }; "dirs" = rec { crateName = "dirs"; version = "4.0.0"; edition = "2015"; sha256 = "0n8020zl4f0frfnzvgb9agvk4a14i1kjz4daqnxkgslndwmaffna"; authors = [ "Simon Ochsenreither " ]; dependencies = [ { name = "dirs-sys"; packageId = "dirs-sys"; } ]; }; "dirs-sys" = rec { crateName = "dirs-sys"; version = "0.3.7"; edition = "2015"; sha256 = "19md1cnkazham8a6kh22v12d8hh3raqahfk6yb043vrjr68is78v"; authors = [ "Simon Ochsenreither " ]; dependencies = [ { name = "libc"; packageId = "libc"; target = { target, features }: (target."unix" or false); } { name = "redox_users"; packageId = "redox_users"; usesDefaultFeatures = false; target = { target, features }: (target."os" == "redox"); } { name = "winapi"; packageId = "winapi"; target = { target, features }: (target."windows" or false); features = [ "knownfolders" "objbase" "shlobj" "winbase" "winerror" ]; } ]; }; "encoding_rs" = rec { crateName = "encoding_rs"; version = "0.8.31"; edition = "2018"; sha256 = "0azc6rblf75vd862ymjahdfch27j1sshb7zynshrx7ywi5an6llq"; authors = [ "Henri Sivonen " ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } ]; features = { "default" = [ "alloc" ]; "fast-legacy-encode" = [ "fast-hangul-encode" "fast-hanja-encode" "fast-kanji-encode" "fast-gb-hanzi-encode" "fast-big5-hanzi-encode" ]; "packed_simd" = [ "dep:packed_simd" ]; "serde" = [ "dep:serde" ]; "simd-accel" = [ "packed_simd" "packed_simd/into_bits" ]; }; resolvedDefaultFeatures = [ "alloc" "default" ]; }; "fnv" = rec { crateName = "fnv"; version = "1.0.7"; edition = "2015"; sha256 = "1hc2mcqha06aibcaza94vbi81j6pr9a1bbxrxjfhc91zin8yr7iz"; libPath = "lib.rs"; authors = [ "Alex Crichton " ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "form_urlencoded" = rec { crateName = "form_urlencoded"; version = "1.1.0"; edition = "2018"; sha256 = "1y3bwavygjzv7b0yqsjqk33yi6wz25b7q2aaq9h54vqmc7qq9hx9"; authors = [ "The rust-url developers" ]; dependencies = [ { name = "percent-encoding"; packageId = "percent-encoding"; } ]; }; "fstn" = rec { crateName = "fstn"; version = "0.4.0"; edition = "2021"; crateBin = [ { name = "fstn"; path = "src/main.rs"; } ]; src = lib.cleanSourceWith { filter = sourceFilter; src = ./.; }; dependencies = [ { name = "clap"; packageId = "clap"; features = [ "derive" ]; } { name = "dirs"; packageId = "dirs"; } { name = "reqwest"; packageId = "reqwest"; usesDefaultFeatures = false; features = [ "blocking" "json" "multipart" "stream" "rustls-tls" ]; } { name = "serde"; packageId = "serde"; } { name = "serde_derive"; packageId = "serde_derive"; } { name = "termcolor"; packageId = "termcolor"; } { name = "toml"; packageId = "toml"; } ]; }; "futures-channel" = rec { crateName = "futures-channel"; version = "0.3.24"; edition = "2018"; sha256 = "0l5hkcwv5bsjz3vswpzlp945cjqdrggjqwfn1xfm1pgs506d5g9h"; 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.24"; edition = "2018"; sha256 = "1gsnrvmzddzfvywx9jnc75vxwp78jri1wlz6inw3yb1n0pga6njf"; features = { "default" = [ "std" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "futures-io" = rec { crateName = "futures-io"; version = "0.3.24"; edition = "2018"; sha256 = "0s7bhmfnbs8pywlhp83bixxi5fn7w73if2vwcdw4bz88lfkx5x5v"; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "std" ]; }; "futures-sink" = rec { crateName = "futures-sink"; version = "0.3.24"; edition = "2018"; sha256 = "0mmsyw3ipg3gddm0nh95ly9sr51xc834g0vj1sipnwifm6jhpci1"; features = { "default" = [ "std" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "std" ]; }; "futures-task" = rec { crateName = "futures-task"; version = "0.3.24"; edition = "2018"; sha256 = "1wcln9clj15n7c7igm5wp9yj4kfgj526siwhyf9i51bkgi38ql56"; features = { "default" = [ "std" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; "futures-util" = rec { crateName = "futures-util"; version = "0.3.24"; edition = "2018"; sha256 = "144wn33xk4az27xd7cgxrx0v4qygmxm52qmj8cp1vk31psqnrys4"; dependencies = [ { name = "futures-core"; packageId = "futures-core"; usesDefaultFeatures = false; } { name = "futures-io"; packageId = "futures-io"; optional = true; usesDefaultFeatures = false; features = [ "std" ]; } { name = "futures-task"; packageId = "futures-task"; usesDefaultFeatures = false; } { name = "memchr"; packageId = "memchr"; optional = true; } { 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" ]; "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" "futures-io" "io" "memchr" "slab" "std" ]; }; "getrandom" = rec { crateName = "getrandom"; version = "0.2.7"; edition = "2018"; sha256 = "1ilfnp4yfgb2vjfqwip8l6xfwlbs7dcmmhgnxn8rcqh1lmjaicaf"; 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"; target = { target, features }: (target."os" == "wasi"); } ]; 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" ]; }; "h2" = rec { crateName = "h2"; version = "0.3.14"; edition = "2018"; sha256 = "1gihmz4bwrh9xmr6222dqhi90gcvdizxhp42n757rb11ry92b8sw"; authors = [ "Carl Lerche " "Sean McArthur " ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "fnv"; packageId = "fnv"; } { name = "futures-core"; packageId = "futures-core"; usesDefaultFeatures = false; } { name = "futures-sink"; packageId = "futures-sink"; usesDefaultFeatures = false; } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; } { name = "http"; packageId = "http"; } { name = "indexmap"; packageId = "indexmap"; features = [ "std" ]; } { name = "slab"; packageId = "slab"; } { name = "tokio"; packageId = "tokio"; features = [ "io-util" ]; } { name = "tokio-util"; packageId = "tokio-util"; features = [ "codec" ]; } { name = "tracing"; packageId = "tracing"; usesDefaultFeatures = false; features = [ "std" ]; } ]; devDependencies = [ { name = "tokio"; packageId = "tokio"; features = [ "rt-multi-thread" "macros" "sync" "net" ]; } ]; features = { }; }; "hashbrown" = rec { crateName = "hashbrown"; version = "0.12.3"; edition = "2021"; sha256 = "1268ka4750pyg2pbgsr43f0289l5zah4arir2k4igx5a8c6fg7la"; authors = [ "Amanieu d'Antras " ]; features = { "ahash" = [ "dep:ahash" ]; "ahash-compile-time-rng" = [ "ahash/compile-time-rng" ]; "alloc" = [ "dep:alloc" ]; "bumpalo" = [ "dep:bumpalo" ]; "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "ahash" "inline-more" ]; "rayon" = [ "dep:rayon" ]; "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "raw" ]; }; "heck" = rec { crateName = "heck"; version = "0.4.0"; edition = "2018"; sha256 = "1ygphsnfwl2xpa211vbqkz1db6ri1kvkg8p8sqybi37wclg7fh15"; authors = [ "Without Boats " ]; features = { "unicode" = [ "unicode-segmentation" ]; "unicode-segmentation" = [ "dep:unicode-segmentation" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "hermit-abi" = rec { crateName = "hermit-abi"; version = "0.1.19"; edition = "2018"; sha256 = "0cxcm8093nf5fyn114w8vxbrbcyvv91d4015rdnlgfll7cs6gd32"; authors = [ "Stefan Lankes" ]; dependencies = [ { name = "libc"; packageId = "libc"; usesDefaultFeatures = false; } ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins/rustc-dep-of-std" "libc/rustc-dep-of-std" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "http" = rec { crateName = "http"; version = "0.2.8"; edition = "2018"; sha256 = "1693pkg43czk26fima0l0l5h2h9rvm8n84pff5zc35b9w90kvx3m"; authors = [ "Alex Crichton " "Carl Lerche " "Sean McArthur " ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "fnv"; packageId = "fnv"; } { name = "itoa"; packageId = "itoa"; } ]; }; "http-body" = rec { crateName = "http-body"; version = "0.4.5"; edition = "2018"; sha256 = "1l967qwwlvhp198xdrnc0p5d7jwfcp6q2lm510j6zqw4s4b8zwym"; authors = [ "Carl Lerche " "Lucio Franco " "Sean McArthur " ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "http"; packageId = "http"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } ]; }; "httparse" = rec { crateName = "httparse"; version = "1.8.0"; edition = "2018"; sha256 = "010rrfahm1jss3p022fqf3j3jmm72vhn4iqhykahb9ynpaag75yq"; authors = [ "Sean McArthur " ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "httpdate" = rec { crateName = "httpdate"; version = "1.0.2"; edition = "2018"; sha256 = "08bln7b1ibdw26gl8h4dr6rlybvlkyhlha309xbh9ghxh9nf78f4"; authors = [ "Pyfisch " ]; }; "hyper" = rec { crateName = "hyper"; version = "0.14.20"; edition = "2018"; sha256 = "1b7vm9dzs3hg5a6dk401n4hhg1hqh5r94lj07jh3bqrrbkf2kj82"; authors = [ "Sean McArthur " ]; dependencies = [ { name = "bytes"; packageId = "bytes"; } { name = "futures-channel"; packageId = "futures-channel"; } { name = "futures-core"; packageId = "futures-core"; usesDefaultFeatures = false; } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; } { name = "h2"; packageId = "h2"; optional = true; } { name = "http"; packageId = "http"; } { name = "http-body"; packageId = "http-body"; } { name = "httparse"; packageId = "httparse"; } { name = "httpdate"; packageId = "httpdate"; } { name = "itoa"; packageId = "itoa"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "socket2"; packageId = "socket2"; optional = true; } { name = "tokio"; packageId = "tokio"; features = [ "sync" ]; } { name = "tower-service"; packageId = "tower-service"; } { name = "tracing"; packageId = "tracing"; usesDefaultFeatures = false; features = [ "std" ]; } { name = "want"; packageId = "want"; } ]; devDependencies = [ { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; features = [ "alloc" ]; } { name = "tokio"; packageId = "tokio"; features = [ "fs" "macros" "io-std" "io-util" "rt" "rt-multi-thread" "sync" "time" "test-util" ]; } ]; features = { "ffi" = [ "libc" ]; "full" = [ "client" "http1" "http2" "server" "stream" "runtime" ]; "h2" = [ "dep:h2" ]; "http2" = [ "h2" ]; "libc" = [ "dep:libc" ]; "runtime" = [ "tcp" "tokio/rt" "tokio/time" ]; "socket2" = [ "dep:socket2" ]; "tcp" = [ "socket2" "tokio/net" "tokio/rt" "tokio/time" ]; }; resolvedDefaultFeatures = [ "client" "h2" "http1" "http2" "runtime" "socket2" "tcp" ]; }; "hyper-rustls" = rec { crateName = "hyper-rustls"; version = "0.23.0"; edition = "2018"; sha256 = "1b2wi75qrmwfpw3pqwcg1xjndl4z0aris15296wf7i8d5v04hz6q"; authors = [ "Joseph Birr-Pixton " ]; dependencies = [ { name = "http"; packageId = "http"; } { name = "hyper"; packageId = "hyper"; usesDefaultFeatures = false; features = [ "client" ]; } { name = "rustls"; packageId = "rustls"; usesDefaultFeatures = false; } { name = "tokio"; packageId = "tokio"; } { name = "tokio-rustls"; packageId = "tokio-rustls"; usesDefaultFeatures = false; } ]; devDependencies = [ { name = "hyper"; packageId = "hyper"; features = [ "full" ]; } { name = "rustls"; packageId = "rustls"; usesDefaultFeatures = false; features = [ "tls12" ]; } { name = "tokio"; packageId = "tokio"; features = [ "io-std" "macros" "net" "rt-multi-thread" ]; } ]; features = { "default" = [ "native-tokio" "http1" "tls12" "logging" ]; "http1" = [ "hyper/http1" ]; "http2" = [ "hyper/http2" ]; "log" = [ "dep:log" ]; "logging" = [ "log" "tokio-rustls/logging" "rustls/logging" ]; "native-tokio" = [ "tokio-runtime" "rustls-native-certs" ]; "rustls-native-certs" = [ "dep:rustls-native-certs" ]; "tls12" = [ "tokio-rustls/tls12" "rustls/tls12" ]; "tokio-runtime" = [ "hyper/runtime" ]; "webpki-roots" = [ "dep:webpki-roots" ]; "webpki-tokio" = [ "tokio-runtime" "webpki-roots" ]; }; }; "idna" = rec { crateName = "idna"; version = "0.3.0"; edition = "2018"; sha256 = "1rh9f9jls0jy3g8rh2bfpjhvvhh4q80348jc4jr2s844133xykg1"; authors = [ "The rust-url developers" ]; dependencies = [ { name = "unicode-bidi"; packageId = "unicode-bidi"; } { name = "unicode-normalization"; packageId = "unicode-normalization"; } ]; }; "indexmap" = rec { crateName = "indexmap"; version = "1.9.1"; edition = "2021"; sha256 = "07nli1wcz7m81svvig8l5j6vjycjnv9va46lwblgy803ffbmm8qh"; dependencies = [ { name = "hashbrown"; packageId = "hashbrown"; usesDefaultFeatures = false; features = [ "raw" ]; } ]; buildDependencies = [ { name = "autocfg"; packageId = "autocfg"; } ]; features = { "rayon" = [ "dep:rayon" ]; "rustc-rayon" = [ "dep:rustc-rayon" ]; "serde" = [ "dep:serde" ]; "serde-1" = [ "serde" ]; }; resolvedDefaultFeatures = [ "std" ]; }; "ipnet" = rec { crateName = "ipnet"; version = "2.5.0"; edition = "2018"; sha256 = "0asr5bwhbfxgxwappmvs0rvb0ncc5adnhfi9yiz4axlc9j1m97c7"; authors = [ "Kris Price " ]; features = { "json" = [ "serde" "schemars" ]; "schemars" = [ "dep:schemars" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "itoa" = rec { crateName = "itoa"; version = "1.0.3"; edition = "2018"; sha256 = "0m7773c6lb61c20gp81a0pac8sh8w473m4rck0x247zyfi3gi2kc"; authors = [ "David Tolnay " ]; }; "js-sys" = rec { crateName = "js-sys"; version = "0.3.60"; edition = "2018"; sha256 = "0isslargvb1cd5xfk73xrxqni3p2ksharkp22swmc25zwgrrsh29"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { name = "wasm-bindgen"; packageId = "wasm-bindgen"; } ]; }; "libc" = rec { crateName = "libc"; version = "0.2.133"; edition = "2015"; sha256 = "0rj92r2gd59bn36pynnlmgddspjxv6958z3cb78l6gksfijhvy60"; 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" "std" ]; }; "log" = rec { crateName = "log"; version = "0.4.17"; edition = "2015"; sha256 = "0biqlaaw1lsr8bpnmbcc0fvgjj34yy79ghqzyi0ali7vgil2xcdb"; authors = [ "The Rust Project Developers" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } ]; features = { "kv_unstable" = [ "value-bag" ]; "kv_unstable_serde" = [ "kv_unstable_std" "value-bag/serde" "serde" ]; "kv_unstable_std" = [ "std" "kv_unstable" "value-bag/error" ]; "kv_unstable_sval" = [ "kv_unstable" "value-bag/sval" "sval" ]; "serde" = [ "dep:serde" ]; "sval" = [ "dep:sval" ]; "value-bag" = [ "dep:value-bag" ]; }; }; "memchr" = rec { crateName = "memchr"; version = "2.5.0"; edition = "2018"; sha256 = "0vanfk5mzs1g1syqnj03q8n0syggnhn55dq535h2wxr7rwpfbzrd"; authors = [ "Andrew Gallant " "bluss" ]; features = { "compiler_builtins" = [ "dep:compiler_builtins" ]; "core" = [ "dep:core" ]; "default" = [ "std" ]; "libc" = [ "dep:libc" ]; "rustc-dep-of-std" = [ "core" "compiler_builtins" ]; "use_std" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "mime" = rec { crateName = "mime"; version = "0.3.16"; edition = "2015"; sha256 = "13dcm9lh01hdwfjcg74ppljyjfj1c6w3a3cwkhxf0w8wa37cfq1a"; authors = [ "Sean McArthur " ]; }; "mime_guess" = rec { crateName = "mime_guess"; version = "2.0.4"; edition = "2015"; sha256 = "1vs28rxnbfwil6f48hh58lfcx90klcvg68gxdc60spwa4cy2d4j1"; authors = [ "Austin Bonander " ]; dependencies = [ { name = "mime"; packageId = "mime"; } { name = "unicase"; packageId = "unicase"; } ]; buildDependencies = [ { name = "unicase"; packageId = "unicase"; } ]; features = { "default" = [ "rev-mappings" ]; }; }; "mio" = rec { crateName = "mio"; version = "0.8.4"; edition = "2018"; sha256 = "1byahxxpnm42djgip44b545i2pr5d7fgyff3a290qfy6qwiirvjp"; authors = [ "Carl Lerche " "Thomas de Zeeuw " "Tokio Contributors " ]; dependencies = [ { name = "libc"; packageId = "libc"; target = { target, features }: (target."os" == "wasi"); } { name = "libc"; packageId = "libc"; target = { target, features }: (target."unix" or false); } { name = "log"; packageId = "log"; } { name = "wasi"; packageId = "wasi"; target = { target, features }: (target."os" == "wasi"); } { name = "windows-sys"; packageId = "windows-sys"; target = { target, features }: (target."windows" or false); features = [ "Win32_Storage_FileSystem" "Win32_Foundation" "Win32_Networking_WinSock" "Win32_System_IO" "Win32_System_WindowsProgramming" ]; } ]; features = { "os-ext" = [ "os-poll" "windows-sys/Win32_System_Pipes" "windows-sys/Win32_Security" ]; }; resolvedDefaultFeatures = [ "default" "net" "os-ext" "os-poll" ]; }; "num_cpus" = rec { crateName = "num_cpus"; version = "1.13.1"; edition = "2015"; sha256 = "18apx62z4j4lajj2fi6r1i8slr9rs2d0xrbj2ls85qfyxck4brhr"; authors = [ "Sean McArthur " ]; dependencies = [ { name = "hermit-abi"; packageId = "hermit-abi"; target = { target, features }: (((target."arch" == "x86_64") || (target."arch" == "aarch64")) && (target."os" == "hermit")); } { name = "libc"; packageId = "libc"; target = { target, features }: (!(target."windows" or false)); } ]; }; "once_cell" = rec { crateName = "once_cell"; version = "1.15.0"; edition = "2021"; sha256 = "1q9r8c0ls1qgjp89p4rd36sjv4671pz6710c106ajwcv2c2asbg8"; authors = [ "Aleksey Kladov " ]; features = { "alloc" = [ "race" ]; "atomic-polyfill" = [ "dep:atomic-polyfill" ]; "default" = [ "std" ]; "parking_lot" = [ "parking_lot_core" ]; "parking_lot_core" = [ "dep:parking_lot_core" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "race" "std" ]; }; "os_str_bytes" = rec { crateName = "os_str_bytes"; version = "6.3.0"; edition = "2021"; sha256 = "1zqfx1ajwmv3g9kp95v18zwpjm2fkq6rxpsib0ig3zz3k9g43xwz"; authors = [ "dylni" ]; features = { "default" = [ "memchr" "raw_os_str" ]; "memchr" = [ "dep:memchr" ]; "print_bytes" = [ "dep:print_bytes" ]; "uniquote" = [ "dep:uniquote" ]; }; resolvedDefaultFeatures = [ "raw_os_str" ]; }; "percent-encoding" = rec { crateName = "percent-encoding"; version = "2.2.0"; edition = "2018"; sha256 = "13nrpp6r1f4k14viksga3094krcrxgv4b42kqbriy63k7ln5g327"; authors = [ "The rust-url developers" ]; features = { "default" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" ]; }; "pin-project-lite" = rec { crateName = "pin-project-lite"; version = "0.2.9"; edition = "2018"; sha256 = "05n1z851l356hpgqadw4ar64mjanaxq1qlwqsf2k05ziq8xax9z0"; }; "pin-utils" = rec { crateName = "pin-utils"; version = "0.1.0"; edition = "2018"; sha256 = "117ir7vslsl2z1a7qzhws4pd01cg2d3338c47swjyvqv2n60v1wb"; authors = [ "Josef Brandl " ]; }; "proc-macro-error" = rec { crateName = "proc-macro-error"; version = "1.0.4"; edition = "2018"; sha256 = "1373bhxaf0pagd8zkyd03kkx6bchzf6g0dkwrwzsnal9z47lj9fs"; authors = [ "CreepySkeleton " ]; dependencies = [ { name = "proc-macro-error-attr"; packageId = "proc-macro-error-attr"; } { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; optional = true; usesDefaultFeatures = false; } ]; buildDependencies = [ { name = "version_check"; packageId = "version_check"; } ]; features = { "default" = [ "syn-error" ]; "syn" = [ "dep:syn" ]; "syn-error" = [ "syn" ]; }; resolvedDefaultFeatures = [ "default" "syn" "syn-error" ]; }; "proc-macro-error-attr" = rec { crateName = "proc-macro-error-attr"; version = "1.0.4"; edition = "2018"; sha256 = "0sgq6m5jfmasmwwy8x4mjygx5l7kp8s4j60bv25ckv2j1qc41gm1"; procMacro = true; authors = [ "CreepySkeleton " ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } ]; buildDependencies = [ { name = "version_check"; packageId = "version_check"; } ]; }; "proc-macro2" = rec { crateName = "proc-macro2"; version = "1.0.44"; edition = "2018"; sha256 = "0n3wxpfagpm6kw7rmirgra27jdbk1il7icl29aic9di2h5m3bmvv"; authors = [ "David Tolnay " "Alex Crichton " ]; dependencies = [ { name = "unicode-ident"; packageId = "unicode-ident"; } ]; features = { "default" = [ "proc-macro" ]; }; resolvedDefaultFeatures = [ "default" "proc-macro" ]; }; "quote" = rec { crateName = "quote"; version = "1.0.21"; edition = "2018"; sha256 = "0yai5cyd9h95n7hkwjcx8ig3yv0hindmz5gm60g9dmm7fzrlir5v"; authors = [ "David Tolnay " ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; usesDefaultFeatures = false; } ]; features = { "default" = [ "proc-macro" ]; "proc-macro" = [ "proc-macro2/proc-macro" ]; }; resolvedDefaultFeatures = [ "default" "proc-macro" ]; }; "redox_syscall" = rec { crateName = "redox_syscall"; version = "0.2.16"; edition = "2018"; sha256 = "16jicm96kjyzm802cxdd1k9jmcph0db1a4lhslcnhjsvhp0mhnpv"; libName = "syscall"; authors = [ "Jeremy Soller " ]; dependencies = [ { name = "bitflags"; packageId = "bitflags"; } ]; }; "redox_users" = rec { crateName = "redox_users"; version = "0.4.3"; edition = "2018"; sha256 = "0asw3s4iy69knafkhvlbchy230qawc297vddjdwjs5nglwvxhcxh"; authors = [ "Jose Narvaez " "Wesley Hershberger " ]; dependencies = [ { name = "getrandom"; packageId = "getrandom"; features = [ "std" ]; } { name = "redox_syscall"; packageId = "redox_syscall"; } { name = "thiserror"; packageId = "thiserror"; } ]; features = { "auth" = [ "rust-argon2" "zeroize" ]; "default" = [ "auth" ]; "rust-argon2" = [ "dep:rust-argon2" ]; "zeroize" = [ "dep:zeroize" ]; }; }; "reqwest" = rec { crateName = "reqwest"; version = "0.11.12"; edition = "2018"; sha256 = "1z29a4p9zcpsrivrakyxraswsblx3mnsbjjwc03sxqplhk1lj6a3"; authors = [ "Sean McArthur " ]; dependencies = [ { name = "base64"; packageId = "base64"; } { name = "bytes"; packageId = "bytes"; } { name = "encoding_rs"; packageId = "encoding_rs"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "futures-core"; packageId = "futures-core"; usesDefaultFeatures = false; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "futures-util"; packageId = "futures-util"; usesDefaultFeatures = false; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "h2"; packageId = "h2"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "http"; packageId = "http"; } { name = "http-body"; packageId = "http-body"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "hyper"; packageId = "hyper"; usesDefaultFeatures = false; target = { target, features }: (!(target."arch" == "wasm32")); features = [ "tcp" "http1" "http2" "client" "runtime" ]; } { name = "hyper-rustls"; packageId = "hyper-rustls"; optional = true; usesDefaultFeatures = false; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "ipnet"; packageId = "ipnet"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "js-sys"; packageId = "js-sys"; target = { target, features }: (target."arch" == "wasm32"); } { name = "log"; packageId = "log"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "mime"; packageId = "mime"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "mime_guess"; packageId = "mime_guess"; optional = true; usesDefaultFeatures = false; } { name = "once_cell"; packageId = "once_cell"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "percent-encoding"; packageId = "percent-encoding"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "pin-project-lite"; packageId = "pin-project-lite"; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "rustls"; packageId = "rustls"; optional = true; target = { target, features }: (!(target."arch" == "wasm32")); features = [ "dangerous_configuration" ]; } { name = "rustls-pemfile"; packageId = "rustls-pemfile"; optional = true; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "serde"; packageId = "serde"; } { name = "serde_json"; packageId = "serde_json"; optional = true; } { name = "serde_json"; packageId = "serde_json"; target = { target, features }: (target."arch" == "wasm32"); } { name = "serde_urlencoded"; packageId = "serde_urlencoded"; } { name = "tokio"; packageId = "tokio"; usesDefaultFeatures = false; target = { target, features }: (!(target."arch" == "wasm32")); features = [ "net" "time" ]; } { name = "tokio-rustls"; packageId = "tokio-rustls"; optional = true; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "tokio-util"; packageId = "tokio-util"; optional = true; usesDefaultFeatures = false; target = { target, features }: (!(target."arch" == "wasm32")); features = [ "codec" "io" ]; } { name = "tower-service"; packageId = "tower-service"; } { name = "url"; packageId = "url"; } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; target = { target, features }: (target."arch" == "wasm32"); } { name = "wasm-bindgen-futures"; packageId = "wasm-bindgen-futures"; target = { target, features }: (target."arch" == "wasm32"); } { name = "web-sys"; packageId = "web-sys"; target = { target, features }: (target."arch" == "wasm32"); features = [ "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" "File" ]; } { name = "webpki-roots"; packageId = "webpki-roots"; optional = true; target = { target, features }: (!(target."arch" == "wasm32")); } { name = "winreg"; packageId = "winreg"; target = { target, features }: (target."windows" or false); } ]; devDependencies = [ { name = "hyper"; packageId = "hyper"; usesDefaultFeatures = false; target = {target, features}: (!(target."arch" == "wasm32")); features = [ "tcp" "stream" "http1" "http2" "client" "server" "runtime" ]; } { name = "serde"; packageId = "serde"; target = {target, features}: (!(target."arch" == "wasm32")); features = [ "derive" ]; } { name = "tokio"; packageId = "tokio"; usesDefaultFeatures = false; target = {target, features}: (!(target."arch" == "wasm32")); features = [ "macros" "rt-multi-thread" ]; } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; target = {target, features}: (target."arch" == "wasm32"); features = [ "serde-serialize" ]; } ]; features = { "__rustls" = [ "hyper-rustls" "tokio-rustls" "rustls" "__tls" "rustls-pemfile" ]; "async-compression" = [ "dep:async-compression" ]; "blocking" = [ "futures-util/io" "tokio/rt-multi-thread" "tokio/sync" ]; "brotli" = [ "async-compression" "async-compression/brotli" "tokio-util" ]; "cookie_crate" = [ "dep:cookie_crate" ]; "cookie_store" = [ "dep:cookie_store" ]; "cookies" = [ "cookie_crate" "cookie_store" "proc-macro-hack" ]; "default" = [ "default-tls" ]; "default-tls" = [ "hyper-tls" "native-tls-crate" "__tls" "tokio-native-tls" ]; "deflate" = [ "async-compression" "async-compression/zlib" "tokio-util" ]; "gzip" = [ "async-compression" "async-compression/gzip" "tokio-util" ]; "hyper-rustls" = [ "dep:hyper-rustls" ]; "hyper-tls" = [ "dep:hyper-tls" ]; "json" = [ "serde_json" ]; "mime_guess" = [ "dep:mime_guess" ]; "multipart" = [ "mime_guess" ]; "native-tls" = [ "default-tls" ]; "native-tls-alpn" = [ "native-tls" "native-tls-crate/alpn" ]; "native-tls-crate" = [ "dep:native-tls-crate" ]; "native-tls-vendored" = [ "native-tls" "native-tls-crate/vendored" ]; "proc-macro-hack" = [ "dep:proc-macro-hack" ]; "rustls" = [ "dep:rustls" ]; "rustls-native-certs" = [ "dep:rustls-native-certs" ]; "rustls-pemfile" = [ "dep:rustls-pemfile" ]; "rustls-tls" = [ "rustls-tls-webpki-roots" ]; "rustls-tls-manual-roots" = [ "__rustls" ]; "rustls-tls-native-roots" = [ "rustls-native-certs" "__rustls" ]; "rustls-tls-webpki-roots" = [ "webpki-roots" "__rustls" ]; "serde_json" = [ "dep:serde_json" ]; "socks" = [ "tokio-socks" ]; "stream" = [ "tokio/fs" "tokio-util" ]; "tokio-native-tls" = [ "dep:tokio-native-tls" ]; "tokio-rustls" = [ "dep:tokio-rustls" ]; "tokio-socks" = [ "dep:tokio-socks" ]; "tokio-util" = [ "dep:tokio-util" ]; "trust-dns" = [ "trust-dns-resolver" ]; "trust-dns-resolver" = [ "dep:trust-dns-resolver" ]; "webpki-roots" = [ "dep:webpki-roots" ]; }; resolvedDefaultFeatures = [ "__rustls" "__tls" "blocking" "hyper-rustls" "json" "mime_guess" "multipart" "rustls" "rustls-pemfile" "rustls-tls" "rustls-tls-webpki-roots" "serde_json" "stream" "tokio-rustls" "tokio-util" "webpki-roots" ]; }; "ring" = rec { crateName = "ring"; version = "0.16.20"; edition = "2018"; sha256 = "1z682xp7v38ayq9g9nkbhhfpj6ygralmlx7wdmsfv8rnw99cylrh"; authors = [ "Brian Smith " ]; dependencies = [ { name = "libc"; packageId = "libc"; usesDefaultFeatures = false; target = { target, features }: ((target."os" == "android") || (target."os" == "linux")); } { name = "once_cell"; packageId = "once_cell"; optional = true; usesDefaultFeatures = false; target = { target, features }: ((target."os" == "android") || (target."os" == "linux")); features = [ "std" ]; } { name = "once_cell"; packageId = "once_cell"; usesDefaultFeatures = false; target = { target, features }: ((target."os" == "dragonfly") || (target."os" == "freebsd") || (target."os" == "illumos") || (target."os" == "netbsd") || (target."os" == "openbsd") || (target."os" == "solaris")); features = [ "std" ]; } { name = "spin"; packageId = "spin"; usesDefaultFeatures = false; target = { target, features }: ((target."arch" == "x86") || (target."arch" == "x86_64") || (((target."arch" == "aarch64") || (target."arch" == "arm")) && ((target."os" == "android") || (target."os" == "fuchsia") || (target."os" == "linux")))); } { name = "untrusted"; packageId = "untrusted"; } { name = "web-sys"; packageId = "web-sys"; usesDefaultFeatures = false; target = { target, features }: ((target."arch" == "wasm32") && (target."vendor" == "unknown") && (target."os" == "unknown") && (target."env" == "")); features = [ "Crypto" "Window" ]; } { name = "winapi"; packageId = "winapi"; usesDefaultFeatures = false; target = { target, features }: (target."os" == "windows"); features = [ "ntsecapi" "wtypesbase" ]; } ]; buildDependencies = [ { name = "cc"; packageId = "cc"; usesDefaultFeatures = false; } ]; devDependencies = [ { name = "libc"; packageId = "libc"; usesDefaultFeatures = false; target = {target, features}: ((target."unix" or false) || (target."windows" or false)); } ]; features = { "default" = [ "alloc" "dev_urandom_fallback" ]; "dev_urandom_fallback" = [ "once_cell" ]; "once_cell" = [ "dep:once_cell" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "dev_urandom_fallback" "once_cell" ]; }; "rustls" = rec { crateName = "rustls"; version = "0.20.6"; edition = "2018"; sha256 = "0cz0kh7ywl6vf4sqpwfm9ddc1l0q4jk8gha3gw2xczh9qzk8xass"; dependencies = [ { name = "log"; packageId = "log"; optional = true; } { name = "ring"; packageId = "ring"; } { name = "sct"; packageId = "sct"; } { name = "webpki"; packageId = "webpki"; features = [ "alloc" "std" ]; } ]; devDependencies = [ { name = "log"; packageId = "log"; } ]; features = { "default" = [ "logging" "tls12" ]; "log" = [ "dep:log" ]; "logging" = [ "log" ]; "read_buf" = [ "rustversion" ]; "rustversion" = [ "dep:rustversion" ]; }; resolvedDefaultFeatures = [ "dangerous_configuration" "default" "log" "logging" "tls12" ]; }; "rustls-pemfile" = rec { crateName = "rustls-pemfile"; version = "1.0.1"; edition = "2018"; sha256 = "0mdxhxp73vxh5pqk5nx2xdxg1z1xkn1yzrc6inh5mh7qagzswr08"; dependencies = [ { name = "base64"; packageId = "base64"; } ]; }; "ryu" = rec { crateName = "ryu"; version = "1.0.11"; edition = "2018"; sha256 = "02czvxrxhi2gmamw25drdvkfkkk9xd9758bpnk0s30mfyggsn0a5"; authors = [ "David Tolnay " ]; features = { "no-panic" = [ "dep:no-panic" ]; }; }; "sct" = rec { crateName = "sct"; version = "0.7.0"; edition = "2018"; sha256 = "193w3dg2pcn7138ab4c586pl76nkryn4h6wqlwvqj5gqr6vwsgfm"; authors = [ "Joseph Birr-Pixton " ]; dependencies = [ { name = "ring"; packageId = "ring"; } { name = "untrusted"; packageId = "untrusted"; } ]; }; "serde" = rec { crateName = "serde"; version = "1.0.145"; edition = "2015"; sha256 = "12snfm7vwzmj377aifjs570wr49glz2zzpv06scwpg1h2hsvd3kj"; authors = [ "Erick Tryzelaar " "David Tolnay " ]; features = { "default" = [ "std" ]; "derive" = [ "serde_derive" ]; "serde_derive" = [ "dep:serde_derive" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "serde_derive" = rec { crateName = "serde_derive"; version = "1.0.145"; edition = "2015"; sha256 = "0k1baapz2qbd9i6x08saryngdc7m47z0syi79kcarg6isf21byl1"; procMacro = true; authors = [ "Erick Tryzelaar " "David Tolnay " ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; } ]; features = { }; resolvedDefaultFeatures = [ "default" ]; }; "serde_json" = rec { crateName = "serde_json"; version = "1.0.85"; edition = "2018"; sha256 = "0i2akpn5js5jv0nm5vwrwk3xsm40pbdi82kda3h5r7ggmbijhnp5"; authors = [ "Erick Tryzelaar " "David Tolnay " ]; dependencies = [ { name = "itoa"; packageId = "itoa"; } { 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" = [ "serde/std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "serde_urlencoded" = rec { crateName = "serde_urlencoded"; version = "0.7.1"; edition = "2018"; sha256 = "1zgklbdaysj3230xivihs30qi5vkhigg323a9m62k8jwf4a1qjfk"; authors = [ "Anthony Ramine " ]; dependencies = [ { name = "form_urlencoded"; packageId = "form_urlencoded"; } { name = "itoa"; packageId = "itoa"; } { name = "ryu"; packageId = "ryu"; } { name = "serde"; packageId = "serde"; } ]; }; "slab" = rec { crateName = "slab"; version = "0.4.7"; edition = "2018"; sha256 = "1vyw3rkdfdfkzfa1mh83s237sll8v5kazfwxma60bq4b59msf526"; authors = [ "Carl Lerche " ]; buildDependencies = [ { name = "autocfg"; packageId = "autocfg"; } ]; features = { "default" = [ "std" ]; "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "socket2" = rec { crateName = "socket2"; version = "0.4.7"; edition = "2018"; sha256 = "1gaf57dc16s1lfyv388w9vdl9qay15xds78jcwakml9kj3dx5qh2"; authors = [ "Alex Crichton " "Thomas de Zeeuw " ]; dependencies = [ { name = "libc"; packageId = "libc"; target = { target, features }: (target."unix" or false); } { name = "winapi"; packageId = "winapi"; target = { target, features }: (target."windows" or false); features = [ "handleapi" "ws2ipdef" "ws2tcpip" ]; } ]; features = { }; resolvedDefaultFeatures = [ "all" ]; }; "spin" = rec { crateName = "spin"; version = "0.5.2"; edition = "2015"; sha256 = "0b84m6dbzrwf2kxylnw82d3dr8w06av7rfkr8s85fb5f43rwyqvf"; authors = [ "Mathijs van de Nes " "John Ericson " ]; }; "strsim" = rec { crateName = "strsim"; version = "0.10.0"; edition = "2015"; sha256 = "08s69r4rcrahwnickvi0kq49z524ci50capybln83mg6b473qivk"; authors = [ "Danny Guo " ]; }; "syn" = rec { crateName = "syn"; version = "1.0.100"; edition = "2018"; sha256 = "0vj2d2b8a6y9c9a6s34kh9r2c0p9iaqw70hiwyj69w5hn4imc82j"; authors = [ "David Tolnay " ]; 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" = [ "quote" ]; "proc-macro" = [ "proc-macro2/proc-macro" "quote/proc-macro" ]; "quote" = [ "dep:quote" ]; "test" = [ "syn-test-suite/all-features" ]; }; resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "full" "parsing" "printing" "proc-macro" "quote" "visit" ]; }; "termcolor" = rec { crateName = "termcolor"; version = "1.1.3"; edition = "2018"; sha256 = "0mbpflskhnz3jf312k50vn0hqbql8ga2rk0k79pkgchip4q4vcms"; authors = [ "Andrew Gallant " ]; dependencies = [ { name = "winapi-util"; packageId = "winapi-util"; target = { target, features }: (target."windows" or false); } ]; }; "textwrap" = rec { crateName = "textwrap"; version = "0.15.1"; edition = "2021"; sha256 = "05jvh74g11f90s5fwaj74c6sxqs8nj5f01rf5s0yxx0vrz01g5cl"; authors = [ "Martin Geisler " ]; features = { "default" = [ "unicode-linebreak" "unicode-width" "smawk" ]; "hyphenation" = [ "dep:hyphenation" ]; "smawk" = [ "dep:smawk" ]; "terminal_size" = [ "dep:terminal_size" ]; "unicode-linebreak" = [ "dep:unicode-linebreak" ]; "unicode-width" = [ "dep:unicode-width" ]; }; }; "thiserror" = rec { crateName = "thiserror"; version = "1.0.36"; edition = "2018"; sha256 = "08mi1cbar01x82pchwsf3iblvh4drhbvdlvwj3kz13ls9f6cp68a"; authors = [ "David Tolnay " ]; dependencies = [ { name = "thiserror-impl"; packageId = "thiserror-impl"; } ]; }; "thiserror-impl" = rec { crateName = "thiserror-impl"; version = "1.0.36"; edition = "2018"; sha256 = "0hzblzqr8jlhgd037a5avds2624hbxvb7pbkivn6zmn8sdh1i29s"; procMacro = true; authors = [ "David Tolnay " ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; } ]; }; "tinyvec" = rec { crateName = "tinyvec"; version = "1.6.0"; edition = "2018"; sha256 = "0l6bl2h62a5m44jdnpn7lmj14rd44via8180i7121fvm73mmrk47"; authors = [ "Lokathor " ]; dependencies = [ { name = "tinyvec_macros"; packageId = "tinyvec_macros"; optional = true; } ]; features = { "alloc" = [ "tinyvec_macros" ]; "arbitrary" = [ "dep:arbitrary" ]; "real_blackbox" = [ "criterion/real_blackbox" ]; "rustc_1_55" = [ "rustc_1_40" ]; "rustc_1_57" = [ "rustc_1_55" ]; "serde" = [ "dep:serde" ]; "std" = [ "alloc" ]; "tinyvec_macros" = [ "dep:tinyvec_macros" ]; }; resolvedDefaultFeatures = [ "alloc" "default" "tinyvec_macros" ]; }; "tinyvec_macros" = rec { crateName = "tinyvec_macros"; version = "0.1.0"; edition = "2018"; sha256 = "0p5zvgbas5nh403fbxica819mf3g83n8g2hzpfazfr56w6klv9yd"; authors = [ "Soveu " ]; }; "tokio" = rec { crateName = "tokio"; version = "1.21.1"; edition = "2018"; sha256 = "15cwvh9zhfzw77schz7bsk2q4a4l9f7jk468vivndnbs01swh800"; authors = [ "Tokio Contributors " ]; dependencies = [ { name = "bytes"; packageId = "bytes"; optional = true; } { name = "libc"; packageId = "libc"; optional = true; target = { target, features }: (target."unix" or false); } { name = "memchr"; packageId = "memchr"; optional = true; } { name = "mio"; packageId = "mio"; optional = true; } { name = "num_cpus"; packageId = "num_cpus"; optional = true; } { name = "once_cell"; packageId = "once_cell"; optional = true; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "socket2"; packageId = "socket2"; optional = true; target = { target, features }: (!((target."arch" == "wasm32") || (target."arch" == "wasm64"))); features = [ "all" ]; } { name = "winapi"; packageId = "winapi"; optional = true; usesDefaultFeatures = false; target = { target, features }: (target."windows" or false); features = [ "std" ]; } ]; buildDependencies = [ { name = "autocfg"; packageId = "autocfg"; } ]; devDependencies = [ { name = "libc"; packageId = "libc"; target = {target, features}: (target."unix" or false); } { name = "socket2"; packageId = "socket2"; target = {target, features}: (!((target."arch" == "wasm32") || (target."arch" == "wasm64"))); } ]; features = { "bytes" = [ "dep:bytes" ]; "full" = [ "fs" "io-util" "io-std" "macros" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "sync" "time" ]; "io-util" = [ "memchr" "bytes" ]; "libc" = [ "dep:libc" ]; "macros" = [ "tokio-macros" ]; "memchr" = [ "dep:memchr" ]; "mio" = [ "dep:mio" ]; "net" = [ "libc" "mio/os-poll" "mio/os-ext" "mio/net" "socket2" "winapi/fileapi" "winapi/handleapi" "winapi/namedpipeapi" "winapi/winbase" "winapi/winnt" "winapi/minwindef" "winapi/accctrl" "winapi/aclapi" ]; "num_cpus" = [ "dep:num_cpus" ]; "once_cell" = [ "dep:once_cell" ]; "parking_lot" = [ "dep:parking_lot" ]; "process" = [ "bytes" "once_cell" "libc" "mio/os-poll" "mio/os-ext" "mio/net" "signal-hook-registry" "winapi/handleapi" "winapi/minwindef" "winapi/processthreadsapi" "winapi/threadpoollegacyapiset" "winapi/winbase" "winapi/winnt" ]; "rt" = [ "once_cell" ]; "rt-multi-thread" = [ "num_cpus" "rt" ]; "signal" = [ "once_cell" "libc" "mio/os-poll" "mio/net" "mio/os-ext" "signal-hook-registry" "winapi/consoleapi" "winapi/wincon" "winapi/minwindef" ]; "signal-hook-registry" = [ "dep:signal-hook-registry" ]; "socket2" = [ "dep:socket2" ]; "test-util" = [ "rt" "sync" "time" ]; "tokio-macros" = [ "dep:tokio-macros" ]; "tracing" = [ "dep:tracing" ]; "winapi" = [ "dep:winapi" ]; }; resolvedDefaultFeatures = [ "bytes" "default" "fs" "io-util" "libc" "memchr" "mio" "net" "num_cpus" "once_cell" "rt" "rt-multi-thread" "socket2" "sync" "time" "winapi" ]; }; "tokio-rustls" = rec { crateName = "tokio-rustls"; version = "0.23.4"; edition = "2018"; sha256 = "0nfsmmi8l1lgpbfy6079d5i13984djzcxrdr9jc06ghi0cwyhgn4"; authors = [ "quininer kel " ]; dependencies = [ { name = "rustls"; packageId = "rustls"; usesDefaultFeatures = false; } { name = "tokio"; packageId = "tokio"; } { name = "webpki"; packageId = "webpki"; } ]; devDependencies = [ { name = "tokio"; packageId = "tokio"; features = [ "full" ]; } ]; features = { "dangerous_configuration" = [ "rustls/dangerous_configuration" ]; "default" = [ "logging" "tls12" ]; "logging" = [ "rustls/logging" ]; "tls12" = [ "rustls/tls12" ]; }; resolvedDefaultFeatures = [ "default" "logging" "tls12" ]; }; "tokio-util" = rec { crateName = "tokio-util"; version = "0.7.4"; edition = "2018"; sha256 = "0h67jb56bsxy4pi1a41pda8d52569ci5clvqv3c6cg9vy1sy1chb"; authors = [ "Tokio Contributors " ]; 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" ]; } { name = "tracing"; packageId = "tracing"; optional = true; usesDefaultFeatures = false; features = [ "std" ]; } ]; devDependencies = [ { name = "tokio"; packageId = "tokio"; features = [ "full" ]; } ]; features = { "__docs_rs" = [ "futures-util" ]; "codec" = [ "tracing" ]; "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" "io" "tracing" ]; }; "toml" = rec { crateName = "toml"; version = "0.5.9"; edition = "2018"; sha256 = "1mr40c0x3ma0dbzh4v43bfn4sj3k9ihpgq6fz1js88l6fnky30ld"; authors = [ "Alex Crichton " ]; dependencies = [ { name = "serde"; packageId = "serde"; } ]; features = { "indexmap" = [ "dep:indexmap" ]; "preserve_order" = [ "indexmap" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "tower-service" = rec { crateName = "tower-service"; version = "0.3.2"; edition = "2018"; sha256 = "0lmfzmmvid2yp2l36mbavhmqgsvzqf7r2wiwz73ml4xmwaf1rg5n"; authors = [ "Tower Maintainers " ]; }; "tracing" = rec { crateName = "tracing"; version = "0.1.36"; edition = "2018"; sha256 = "01s3qsm1jfz4h4l401lhy8j2yfds45kpb234l447v9k0pmkrbkig"; authors = [ "Eliza Weisman " "Tokio Contributors " ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "pin-project-lite"; packageId = "pin-project-lite"; } { name = "tracing-core"; packageId = "tracing-core"; usesDefaultFeatures = false; } ]; 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 = [ "std" ]; }; "tracing-core" = rec { crateName = "tracing-core"; version = "0.1.29"; edition = "2018"; sha256 = "1xr2dqar64fj4y43vy0xvaxs6n3xssd3z0jbf408lmbn60qa9vjs"; authors = [ "Tokio Contributors " ]; dependencies = [ { name = "once_cell"; packageId = "once_cell"; optional = true; } ]; features = { "default" = [ "std" "valuable/std" ]; "once_cell" = [ "dep:once_cell" ]; "std" = [ "once_cell" ]; "valuable" = [ "dep:valuable" ]; }; resolvedDefaultFeatures = [ "once_cell" "std" ]; }; "try-lock" = rec { crateName = "try-lock"; version = "0.2.3"; edition = "2015"; sha256 = "0hkn1ksmg5hdqgqdw1ahy5qk69f4crh2psf0v61qphyrf777nm2r"; authors = [ "Sean McArthur " ]; }; "unicase" = rec { crateName = "unicase"; version = "2.6.0"; edition = "2015"; sha256 = "1xmlbink4ycgxrkjspp0mf7pghcx4m7vxq7fpfm04ikr2zk7pwsh"; authors = [ "Sean McArthur " ]; buildDependencies = [ { name = "version_check"; packageId = "version_check"; } ]; features = { }; }; "unicode-bidi" = rec { crateName = "unicode-bidi"; version = "0.3.8"; edition = "2018"; sha256 = "14p95n9kw9p7psp0vsp0j9yfkfg6sn1rlnymvmwmya0x60l736q9"; libName = "unicode_bidi"; authors = [ "The Servo Project Developers" ]; features = { "default" = [ "std" "hardcoded-data" ]; "flame" = [ "dep:flame" ]; "flame_it" = [ "flame" "flamer" ]; "flamer" = [ "dep:flamer" ]; "serde" = [ "dep:serde" ]; "with_serde" = [ "serde" ]; }; resolvedDefaultFeatures = [ "default" "hardcoded-data" "std" ]; }; "unicode-ident" = rec { crateName = "unicode-ident"; version = "1.0.4"; edition = "2018"; sha256 = "1pf59d521libxsf73cd9px9vc345qirphc0i9zw65b3683f13j6w"; authors = [ "David Tolnay " ]; }; "unicode-normalization" = rec { crateName = "unicode-normalization"; version = "0.1.22"; edition = "2018"; sha256 = "08d95g7b1irc578b2iyhzv4xhsa4pfvwsqxcl9lbcpabzkq16msw"; authors = [ "kwantam " "Manish Goregaokar " ]; dependencies = [ { name = "tinyvec"; packageId = "tinyvec"; features = [ "alloc" ]; } ]; features = { "default" = [ "std" ]; }; resolvedDefaultFeatures = [ "default" "std" ]; }; "untrusted" = rec { crateName = "untrusted"; version = "0.7.1"; edition = "2018"; sha256 = "0jkbqaj9d3v5a91pp3wp9mffvng1nhycx6sh4qkdd9qyr62ccmm1"; libPath = "src/untrusted.rs"; authors = [ "Brian Smith " ]; }; "url" = rec { crateName = "url"; version = "2.3.1"; edition = "2018"; sha256 = "0hs67jw257y0a7mj2p9wi0n61x8fc2vgwxg37y62nxkmmscwfs0d"; authors = [ "The rust-url developers" ]; dependencies = [ { name = "form_urlencoded"; packageId = "form_urlencoded"; } { name = "idna"; packageId = "idna"; } { name = "percent-encoding"; packageId = "percent-encoding"; } ]; features = { "serde" = [ "dep:serde" ]; }; resolvedDefaultFeatures = [ "default" ]; }; "version_check" = rec { crateName = "version_check"; version = "0.9.4"; edition = "2015"; sha256 = "0gs8grwdlgh0xq660d7wr80x14vxbizmd8dbp29p2pdncx8lp1s9"; authors = [ "Sergio Benitez " ]; }; "want" = rec { crateName = "want"; version = "0.3.0"; edition = "2018"; sha256 = "181b2zmwfq389x9n2g1n37cvcvvdand832zz6v8i1l8wrdlaks0w"; authors = [ "Sean McArthur " ]; dependencies = [ { name = "log"; packageId = "log"; } { name = "try-lock"; packageId = "try-lock"; } ]; }; "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" ]; }; "wasm-bindgen" = rec { crateName = "wasm-bindgen"; version = "0.2.83"; edition = "2018"; sha256 = "0s3ji0k8p261glnsxi5rkd34v2pv67h96blb29yf32zcxsngbyga"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "wasm-bindgen-macro"; packageId = "wasm-bindgen-macro"; } ]; features = { "default" = [ "spans" "std" ]; "enable-interning" = [ "std" ]; "serde" = [ "dep:serde" ]; "serde-serialize" = [ "serde" "serde_json" "std" ]; "serde_json" = [ "dep:serde_json" ]; "spans" = [ "wasm-bindgen-macro/spans" ]; "strict-macro" = [ "wasm-bindgen-macro/strict-macro" ]; "xxx_debug_only_print_generated_code" = [ "wasm-bindgen-macro/xxx_debug_only_print_generated_code" ]; }; resolvedDefaultFeatures = [ "default" "spans" "std" ]; }; "wasm-bindgen-backend" = rec { crateName = "wasm-bindgen-backend"; version = "0.2.83"; edition = "2018"; sha256 = "0hhigjqrb31axh7jgmb5y8akdpxqx8gvjs6ja9xmbc3r4lrzp3sc"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { name = "bumpalo"; packageId = "bumpalo"; } { name = "log"; packageId = "log"; } { name = "once_cell"; packageId = "once_cell"; } { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "full" ]; } { name = "wasm-bindgen-shared"; packageId = "wasm-bindgen-shared"; } ]; features = { "extra-traits" = [ "syn/extra-traits" ]; }; resolvedDefaultFeatures = [ "spans" ]; }; "wasm-bindgen-futures" = rec { crateName = "wasm-bindgen-futures"; version = "0.4.33"; edition = "2018"; sha256 = "0zdxgrpdmdw7516amyv0jlqq1bipnyb8h7dfhvgab9aw2r398qr3"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { name = "cfg-if"; packageId = "cfg-if"; } { name = "js-sys"; packageId = "js-sys"; } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; } { name = "web-sys"; packageId = "web-sys"; target = { target, features }: (builtins.elem "atomics" targetFeatures); features = [ "MessageEvent" "Worker" ]; } ]; features = { "futures-core" = [ "dep:futures-core" ]; "futures-core-03-stream" = [ "futures-core" ]; }; }; "wasm-bindgen-macro" = rec { crateName = "wasm-bindgen-macro"; version = "0.2.83"; edition = "2018"; sha256 = "0468wshk7bp78mnglcpmrb6m4q7x2fp9pz6ybk3wpri683wy0aq5"; procMacro = true; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { name = "quote"; packageId = "quote"; } { name = "wasm-bindgen-macro-support"; packageId = "wasm-bindgen-macro-support"; } ]; features = { "spans" = [ "wasm-bindgen-macro-support/spans" ]; "strict-macro" = [ "wasm-bindgen-macro-support/strict-macro" ]; }; resolvedDefaultFeatures = [ "spans" ]; }; "wasm-bindgen-macro-support" = rec { crateName = "wasm-bindgen-macro-support"; version = "0.2.83"; edition = "2018"; sha256 = "0g0rmawgkhfyfgjj2mvch7gvz1nzfnfmya0kgcq3xwn53l2hrg07"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { name = "proc-macro2"; packageId = "proc-macro2"; } { name = "quote"; packageId = "quote"; } { name = "syn"; packageId = "syn"; features = [ "visit" "full" ]; } { name = "wasm-bindgen-backend"; packageId = "wasm-bindgen-backend"; } { name = "wasm-bindgen-shared"; packageId = "wasm-bindgen-shared"; } ]; features = { "extra-traits" = [ "syn/extra-traits" ]; "spans" = [ "wasm-bindgen-backend/spans" ]; }; resolvedDefaultFeatures = [ "spans" ]; }; "wasm-bindgen-shared" = rec { crateName = "wasm-bindgen-shared"; version = "0.2.83"; edition = "2018"; sha256 = "0zzz9xfi3fp2n5ihhlq8ws7674a2ir2frvsd1d7yr4sxad2w0f0w"; authors = [ "The wasm-bindgen Developers" ]; }; "web-sys" = rec { crateName = "web-sys"; version = "0.3.60"; edition = "2018"; sha256 = "03sic7x58vi5qz8qrcka21748kmdmwlvgiddsn7p4vp1idnr1nmw"; authors = [ "The wasm-bindgen Developers" ]; dependencies = [ { name = "js-sys"; packageId = "js-sys"; } { name = "wasm-bindgen"; packageId = "wasm-bindgen"; } ]; features = { "AbortSignal" = [ "EventTarget" ]; "AnalyserNode" = [ "AudioNode" "EventTarget" ]; "Animation" = [ "EventTarget" ]; "AnimationEvent" = [ "Event" ]; "AnimationPlaybackEvent" = [ "Event" ]; "Attr" = [ "EventTarget" "Node" ]; "AudioBufferSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ]; "AudioContext" = [ "BaseAudioContext" "EventTarget" ]; "AudioDestinationNode" = [ "AudioNode" "EventTarget" ]; "AudioNode" = [ "EventTarget" ]; "AudioProcessingEvent" = [ "Event" ]; "AudioScheduledSourceNode" = [ "AudioNode" "EventTarget" ]; "AudioStreamTrack" = [ "EventTarget" "MediaStreamTrack" ]; "AudioTrackList" = [ "EventTarget" ]; "AudioWorklet" = [ "Worklet" ]; "AudioWorkletGlobalScope" = [ "WorkletGlobalScope" ]; "AudioWorkletNode" = [ "AudioNode" "EventTarget" ]; "AuthenticatorAssertionResponse" = [ "AuthenticatorResponse" ]; "AuthenticatorAttestationResponse" = [ "AuthenticatorResponse" ]; "BaseAudioContext" = [ "EventTarget" ]; "BatteryManager" = [ "EventTarget" ]; "BeforeUnloadEvent" = [ "Event" ]; "BiquadFilterNode" = [ "AudioNode" "EventTarget" ]; "BlobEvent" = [ "Event" ]; "Bluetooth" = [ "EventTarget" ]; "BluetoothAdvertisingEvent" = [ "Event" ]; "BluetoothDevice" = [ "EventTarget" ]; "BluetoothPermissionResult" = [ "EventTarget" "PermissionStatus" ]; "BluetoothRemoteGattCharacteristic" = [ "EventTarget" ]; "BluetoothRemoteGattService" = [ "EventTarget" ]; "BroadcastChannel" = [ "EventTarget" ]; "CanvasCaptureMediaStream" = [ "EventTarget" "MediaStream" ]; "CdataSection" = [ "CharacterData" "EventTarget" "Node" "Text" ]; "ChannelMergerNode" = [ "AudioNode" "EventTarget" ]; "ChannelSplitterNode" = [ "AudioNode" "EventTarget" ]; "CharacterData" = [ "EventTarget" "Node" ]; "ChromeWorker" = [ "EventTarget" "Worker" ]; "Clipboard" = [ "EventTarget" ]; "ClipboardEvent" = [ "Event" ]; "CloseEvent" = [ "Event" ]; "Comment" = [ "CharacterData" "EventTarget" "Node" ]; "CompositionEvent" = [ "Event" "UiEvent" ]; "ConstantSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ]; "ConvolverNode" = [ "AudioNode" "EventTarget" ]; "CssAnimation" = [ "Animation" "EventTarget" ]; "CssConditionRule" = [ "CssGroupingRule" "CssRule" ]; "CssCounterStyleRule" = [ "CssRule" ]; "CssFontFaceRule" = [ "CssRule" ]; "CssFontFeatureValuesRule" = [ "CssRule" ]; "CssGroupingRule" = [ "CssRule" ]; "CssImportRule" = [ "CssRule" ]; "CssKeyframeRule" = [ "CssRule" ]; "CssKeyframesRule" = [ "CssRule" ]; "CssMediaRule" = [ "CssConditionRule" "CssGroupingRule" "CssRule" ]; "CssNamespaceRule" = [ "CssRule" ]; "CssPageRule" = [ "CssRule" ]; "CssStyleRule" = [ "CssRule" ]; "CssStyleSheet" = [ "StyleSheet" ]; "CssSupportsRule" = [ "CssConditionRule" "CssGroupingRule" "CssRule" ]; "CssTransition" = [ "Animation" "EventTarget" ]; "CustomEvent" = [ "Event" ]; "DedicatedWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ]; "DelayNode" = [ "AudioNode" "EventTarget" ]; "DeviceLightEvent" = [ "Event" ]; "DeviceMotionEvent" = [ "Event" ]; "DeviceOrientationEvent" = [ "Event" ]; "DeviceProximityEvent" = [ "Event" ]; "Document" = [ "EventTarget" "Node" ]; "DocumentFragment" = [ "EventTarget" "Node" ]; "DocumentTimeline" = [ "AnimationTimeline" ]; "DocumentType" = [ "EventTarget" "Node" ]; "DomMatrix" = [ "DomMatrixReadOnly" ]; "DomPoint" = [ "DomPointReadOnly" ]; "DomRect" = [ "DomRectReadOnly" ]; "DomRequest" = [ "EventTarget" ]; "DragEvent" = [ "Event" "MouseEvent" "UiEvent" ]; "DynamicsCompressorNode" = [ "AudioNode" "EventTarget" ]; "Element" = [ "EventTarget" "Node" ]; "ErrorEvent" = [ "Event" ]; "EventSource" = [ "EventTarget" ]; "ExtendableEvent" = [ "Event" ]; "ExtendableMessageEvent" = [ "Event" "ExtendableEvent" ]; "FetchEvent" = [ "Event" "ExtendableEvent" ]; "FetchObserver" = [ "EventTarget" ]; "File" = [ "Blob" ]; "FileReader" = [ "EventTarget" ]; "FileSystemDirectoryEntry" = [ "FileSystemEntry" ]; "FileSystemFileEntry" = [ "FileSystemEntry" ]; "FocusEvent" = [ "Event" "UiEvent" ]; "FontFaceSet" = [ "EventTarget" ]; "FontFaceSetLoadEvent" = [ "Event" ]; "GainNode" = [ "AudioNode" "EventTarget" ]; "GamepadAxisMoveEvent" = [ "Event" "GamepadEvent" ]; "GamepadButtonEvent" = [ "Event" "GamepadEvent" ]; "GamepadEvent" = [ "Event" ]; "GpuDevice" = [ "EventTarget" ]; "GpuOutOfMemoryError" = [ "GpuError" ]; "GpuUncapturedErrorEvent" = [ "Event" ]; "GpuValidationError" = [ "GpuError" ]; "HashChangeEvent" = [ "Event" ]; "Hid" = [ "EventTarget" ]; "HidConnectionEvent" = [ "Event" ]; "HidDevice" = [ "EventTarget" ]; "HidInputReportEvent" = [ "Event" ]; "HtmlAnchorElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlAreaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlAudioElement" = [ "Element" "EventTarget" "HtmlElement" "HtmlMediaElement" "Node" ]; "HtmlBaseElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlBodyElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlBrElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlButtonElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlCanvasElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDataElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDataListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDetailsElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDialogElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDirectoryElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDivElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlDocument" = [ "Document" "EventTarget" "Node" ]; "HtmlElement" = [ "Element" "EventTarget" "Node" ]; "HtmlEmbedElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlFieldSetElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlFontElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlFormControlsCollection" = [ "HtmlCollection" ]; "HtmlFormElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlFrameElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlFrameSetElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlHeadElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlHeadingElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlHrElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlHtmlElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlIFrameElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlImageElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlInputElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlLabelElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlLegendElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlLiElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlLinkElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlMapElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlMediaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlMenuElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlMenuItemElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlMetaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlMeterElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlModElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlOListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlObjectElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlOptGroupElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlOptionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlOptionsCollection" = [ "HtmlCollection" ]; "HtmlOutputElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlParagraphElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlParamElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlPictureElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlPreElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlProgressElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlQuoteElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlScriptElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlSelectElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlSlotElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlSourceElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlSpanElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlStyleElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTableCaptionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTableCellElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTableColElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTableElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTableRowElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTableSectionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTemplateElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTextAreaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTimeElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTitleElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlTrackElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlUListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlUnknownElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ]; "HtmlVideoElement" = [ "Element" "EventTarget" "HtmlElement" "HtmlMediaElement" "Node" ]; "IdbCursorWithValue" = [ "IdbCursor" ]; "IdbDatabase" = [ "EventTarget" ]; "IdbFileHandle" = [ "EventTarget" ]; "IdbFileRequest" = [ "DomRequest" "EventTarget" ]; "IdbLocaleAwareKeyRange" = [ "IdbKeyRange" ]; "IdbMutableFile" = [ "EventTarget" ]; "IdbOpenDbRequest" = [ "EventTarget" "IdbRequest" ]; "IdbRequest" = [ "EventTarget" ]; "IdbTransaction" = [ "EventTarget" ]; "IdbVersionChangeEvent" = [ "Event" ]; "IirFilterNode" = [ "AudioNode" "EventTarget" ]; "ImageCaptureErrorEvent" = [ "Event" ]; "ImageTrack" = [ "EventTarget" ]; "InputEvent" = [ "Event" "UiEvent" ]; "KeyboardEvent" = [ "Event" "UiEvent" ]; "KeyframeEffect" = [ "AnimationEffect" ]; "LocalMediaStream" = [ "EventTarget" "MediaStream" ]; "MediaDevices" = [ "EventTarget" ]; "MediaElementAudioSourceNode" = [ "AudioNode" "EventTarget" ]; "MediaEncryptedEvent" = [ "Event" ]; "MediaKeyError" = [ "Event" ]; "MediaKeyMessageEvent" = [ "Event" ]; "MediaKeySession" = [ "EventTarget" ]; "MediaQueryList" = [ "EventTarget" ]; "MediaQueryListEvent" = [ "Event" ]; "MediaRecorder" = [ "EventTarget" ]; "MediaRecorderErrorEvent" = [ "Event" ]; "MediaSource" = [ "EventTarget" ]; "MediaStream" = [ "EventTarget" ]; "MediaStreamAudioDestinationNode" = [ "AudioNode" "EventTarget" ]; "MediaStreamAudioSourceNode" = [ "AudioNode" "EventTarget" ]; "MediaStreamEvent" = [ "Event" ]; "MediaStreamTrack" = [ "EventTarget" ]; "MediaStreamTrackEvent" = [ "Event" ]; "MediaStreamTrackGenerator" = [ "EventTarget" "MediaStreamTrack" ]; "MessageEvent" = [ "Event" ]; "MessagePort" = [ "EventTarget" ]; "MidiAccess" = [ "EventTarget" ]; "MidiConnectionEvent" = [ "Event" ]; "MidiInput" = [ "EventTarget" "MidiPort" ]; "MidiMessageEvent" = [ "Event" ]; "MidiOutput" = [ "EventTarget" "MidiPort" ]; "MidiPort" = [ "EventTarget" ]; "MouseEvent" = [ "Event" "UiEvent" ]; "MouseScrollEvent" = [ "Event" "MouseEvent" "UiEvent" ]; "MutationEvent" = [ "Event" ]; "NetworkInformation" = [ "EventTarget" ]; "Node" = [ "EventTarget" ]; "Notification" = [ "EventTarget" ]; "NotificationEvent" = [ "Event" "ExtendableEvent" ]; "OfflineAudioCompletionEvent" = [ "Event" ]; "OfflineAudioContext" = [ "BaseAudioContext" "EventTarget" ]; "OfflineResourceList" = [ "EventTarget" ]; "OffscreenCanvas" = [ "EventTarget" ]; "OscillatorNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ]; "PageTransitionEvent" = [ "Event" ]; "PaintWorkletGlobalScope" = [ "WorkletGlobalScope" ]; "PannerNode" = [ "AudioNode" "EventTarget" ]; "PaymentMethodChangeEvent" = [ "Event" "PaymentRequestUpdateEvent" ]; "PaymentRequestUpdateEvent" = [ "Event" ]; "Performance" = [ "EventTarget" ]; "PerformanceMark" = [ "PerformanceEntry" ]; "PerformanceMeasure" = [ "PerformanceEntry" ]; "PerformanceNavigationTiming" = [ "PerformanceEntry" "PerformanceResourceTiming" ]; "PerformanceResourceTiming" = [ "PerformanceEntry" ]; "PermissionStatus" = [ "EventTarget" ]; "PointerEvent" = [ "Event" "MouseEvent" "UiEvent" ]; "PopStateEvent" = [ "Event" ]; "PopupBlockedEvent" = [ "Event" ]; "PresentationAvailability" = [ "EventTarget" ]; "PresentationConnection" = [ "EventTarget" ]; "PresentationConnectionAvailableEvent" = [ "Event" ]; "PresentationConnectionCloseEvent" = [ "Event" ]; "PresentationConnectionList" = [ "EventTarget" ]; "PresentationRequest" = [ "EventTarget" ]; "ProcessingInstruction" = [ "CharacterData" "EventTarget" "Node" ]; "ProgressEvent" = [ "Event" ]; "PromiseRejectionEvent" = [ "Event" ]; "PublicKeyCredential" = [ "Credential" ]; "PushEvent" = [ "Event" "ExtendableEvent" ]; "RadioNodeList" = [ "NodeList" ]; "RtcDataChannel" = [ "EventTarget" ]; "RtcDataChannelEvent" = [ "Event" ]; "RtcPeerConnection" = [ "EventTarget" ]; "RtcPeerConnectionIceEvent" = [ "Event" ]; "RtcTrackEvent" = [ "Event" ]; "RtcdtmfSender" = [ "EventTarget" ]; "RtcdtmfToneChangeEvent" = [ "Event" ]; "Screen" = [ "EventTarget" ]; "ScreenOrientation" = [ "EventTarget" ]; "ScriptProcessorNode" = [ "AudioNode" "EventTarget" ]; "ScrollAreaEvent" = [ "Event" "UiEvent" ]; "SecurityPolicyViolationEvent" = [ "Event" ]; "ServiceWorker" = [ "EventTarget" ]; "ServiceWorkerContainer" = [ "EventTarget" ]; "ServiceWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ]; "ServiceWorkerRegistration" = [ "EventTarget" ]; "ShadowRoot" = [ "DocumentFragment" "EventTarget" "Node" ]; "SharedWorker" = [ "EventTarget" ]; "SharedWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ]; "SourceBuffer" = [ "EventTarget" ]; "SourceBufferList" = [ "EventTarget" ]; "SpeechRecognition" = [ "EventTarget" ]; "SpeechRecognitionError" = [ "Event" ]; "SpeechRecognitionEvent" = [ "Event" ]; "SpeechSynthesis" = [ "EventTarget" ]; "SpeechSynthesisErrorEvent" = [ "Event" "SpeechSynthesisEvent" ]; "SpeechSynthesisEvent" = [ "Event" ]; "SpeechSynthesisUtterance" = [ "EventTarget" ]; "StereoPannerNode" = [ "AudioNode" "EventTarget" ]; "StorageEvent" = [ "Event" ]; "SubmitEvent" = [ "Event" ]; "SvgAnimateElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ]; "SvgAnimateMotionElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ]; "SvgAnimateTransformElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ]; "SvgAnimationElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgCircleElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ]; "SvgClipPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgComponentTransferFunctionElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgDefsElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgDescElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgElement" = [ "Element" "EventTarget" "Node" ]; "SvgEllipseElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ]; "SvgFilterElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgForeignObjectElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgGeometryElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgGraphicsElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgImageElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgLineElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ]; "SvgLinearGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGradientElement" ]; "SvgMarkerElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgMaskElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgMetadataElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ]; "SvgPathSegArcAbs" = [ "SvgPathSeg" ]; "SvgPathSegArcRel" = [ "SvgPathSeg" ]; "SvgPathSegClosePath" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoCubicAbs" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoCubicRel" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoCubicSmoothAbs" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoCubicSmoothRel" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoQuadraticAbs" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoQuadraticRel" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoQuadraticSmoothAbs" = [ "SvgPathSeg" ]; "SvgPathSegCurvetoQuadraticSmoothRel" = [ "SvgPathSeg" ]; "SvgPathSegLinetoAbs" = [ "SvgPathSeg" ]; "SvgPathSegLinetoHorizontalAbs" = [ "SvgPathSeg" ]; "SvgPathSegLinetoHorizontalRel" = [ "SvgPathSeg" ]; "SvgPathSegLinetoRel" = [ "SvgPathSeg" ]; "SvgPathSegLinetoVerticalAbs" = [ "SvgPathSeg" ]; "SvgPathSegLinetoVerticalRel" = [ "SvgPathSeg" ]; "SvgPathSegMovetoAbs" = [ "SvgPathSeg" ]; "SvgPathSegMovetoRel" = [ "SvgPathSeg" ]; "SvgPatternElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgPolygonElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ]; "SvgPolylineElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ]; "SvgRadialGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGradientElement" ]; "SvgRectElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ]; "SvgScriptElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgSetElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ]; "SvgStopElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgStyleElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgSwitchElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgSymbolElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgTextContentElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgTextElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" "SvgTextPositioningElement" ]; "SvgTextPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" ]; "SvgTextPositioningElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" ]; "SvgTitleElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgUseElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgViewElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgaElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgfeBlendElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeColorMatrixElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeComponentTransferElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeCompositeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeConvolveMatrixElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeDiffuseLightingElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeDisplacementMapElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeDistantLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeDropShadowElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeFloodElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeFuncAElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ]; "SvgfeFuncBElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ]; "SvgfeFuncGElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ]; "SvgfeFuncRElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ]; "SvgfeGaussianBlurElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeImageElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeMergeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeMergeNodeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeMorphologyElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeOffsetElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfePointLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeSpecularLightingElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeSpotLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeTileElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgfeTurbulenceElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvggElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgmPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" ]; "SvgsvgElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ]; "SvgtSpanElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" "SvgTextPositioningElement" ]; "TcpServerSocket" = [ "EventTarget" ]; "TcpServerSocketEvent" = [ "Event" ]; "TcpSocket" = [ "EventTarget" ]; "TcpSocketErrorEvent" = [ "Event" ]; "TcpSocketEvent" = [ "Event" ]; "Text" = [ "CharacterData" "EventTarget" "Node" ]; "TextTrack" = [ "EventTarget" ]; "TextTrackCue" = [ "EventTarget" ]; "TextTrackList" = [ "EventTarget" ]; "TimeEvent" = [ "Event" ]; "TouchEvent" = [ "Event" "UiEvent" ]; "TrackEvent" = [ "Event" ]; "TransitionEvent" = [ "Event" ]; "UiEvent" = [ "Event" ]; "Usb" = [ "EventTarget" ]; "UsbConnectionEvent" = [ "Event" ]; "UsbPermissionResult" = [ "EventTarget" "PermissionStatus" ]; "UserProximityEvent" = [ "Event" ]; "ValueEvent" = [ "Event" ]; "VideoStreamTrack" = [ "EventTarget" "MediaStreamTrack" ]; "VideoTrackList" = [ "EventTarget" ]; "VrDisplay" = [ "EventTarget" ]; "VttCue" = [ "EventTarget" "TextTrackCue" ]; "WakeLockSentinel" = [ "EventTarget" ]; "WaveShaperNode" = [ "AudioNode" "EventTarget" ]; "WebGlContextEvent" = [ "Event" ]; "WebKitCssMatrix" = [ "DomMatrix" "DomMatrixReadOnly" ]; "WebSocket" = [ "EventTarget" ]; "WheelEvent" = [ "Event" "MouseEvent" "UiEvent" ]; "Window" = [ "EventTarget" ]; "WindowClient" = [ "Client" ]; "Worker" = [ "EventTarget" ]; "WorkerDebuggerGlobalScope" = [ "EventTarget" ]; "WorkerGlobalScope" = [ "EventTarget" ]; "XmlDocument" = [ "Document" "EventTarget" "Node" ]; "XmlHttpRequest" = [ "EventTarget" "XmlHttpRequestEventTarget" ]; "XmlHttpRequestEventTarget" = [ "EventTarget" ]; "XmlHttpRequestUpload" = [ "EventTarget" "XmlHttpRequestEventTarget" ]; "XrBoundedReferenceSpace" = [ "EventTarget" "XrReferenceSpace" "XrSpace" ]; "XrInputSourceEvent" = [ "Event" ]; "XrInputSourcesChangeEvent" = [ "Event" ]; "XrLayer" = [ "EventTarget" ]; "XrPermissionStatus" = [ "EventTarget" "PermissionStatus" ]; "XrReferenceSpace" = [ "EventTarget" "XrSpace" ]; "XrReferenceSpaceEvent" = [ "Event" ]; "XrSession" = [ "EventTarget" ]; "XrSessionEvent" = [ "Event" ]; "XrSpace" = [ "EventTarget" ]; "XrSystem" = [ "EventTarget" ]; "XrViewerPose" = [ "XrPose" ]; "XrWebGlLayer" = [ "EventTarget" "XrLayer" ]; }; resolvedDefaultFeatures = [ "Blob" "BlobPropertyBag" "Crypto" "Event" "EventTarget" "File" "FormData" "Headers" "MessageEvent" "Request" "RequestCredentials" "RequestInit" "RequestMode" "Response" "ServiceWorkerGlobalScope" "Window" "Worker" "WorkerGlobalScope" ]; }; "webpki" = rec { crateName = "webpki"; version = "0.22.0"; edition = "2018"; sha256 = "1gd1gxip5kgdwmrvhj5gjxij2mgg2mavq1ych4q1h272ja0xg5gh"; authors = [ "Brian Smith " ]; dependencies = [ { name = "ring"; packageId = "ring"; usesDefaultFeatures = false; } { name = "untrusted"; packageId = "untrusted"; } ]; features = { "alloc" = [ "ring/alloc" ]; "std" = [ "alloc" ]; }; resolvedDefaultFeatures = [ "alloc" "std" ]; }; "webpki-roots" = rec { crateName = "webpki-roots"; version = "0.22.5"; edition = "2018"; crateBin = []; sha256 = "1gkmk4baan9knbf3dggwyvh8bqmdvi8x6mmpicih3yv9g5jzx2rn"; authors = [ "Joseph Birr-Pixton " ]; dependencies = [ { name = "webpki"; packageId = "webpki"; } ]; }; "winapi" = rec { crateName = "winapi"; version = "0.3.9"; edition = "2015"; sha256 = "06gl025x418lchw1wxj64ycr7gha83m44cjr5sarhynd9xkrm0sw"; authors = [ "Peter Atashian " ]; dependencies = [ { name = "winapi-i686-pc-windows-gnu"; packageId = "winapi-i686-pc-windows-gnu"; target = { target, features }: (stdenv.hostPlatform.config == "i686-pc-windows-gnu"); } { name = "winapi-x86_64-pc-windows-gnu"; packageId = "winapi-x86_64-pc-windows-gnu"; target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-gnu"); } ]; features = { "debug" = [ "impl-debug" ]; }; resolvedDefaultFeatures = [ "accctrl" "aclapi" "consoleapi" "errhandlingapi" "fileapi" "handleapi" "impl-debug" "impl-default" "knownfolders" "minwinbase" "minwindef" "namedpipeapi" "ntsecapi" "objbase" "processenv" "shlobj" "std" "timezoneapi" "winbase" "wincon" "winerror" "winnt" "winreg" "ws2ipdef" "ws2tcpip" "wtypesbase" ]; }; "winapi-i686-pc-windows-gnu" = rec { crateName = "winapi-i686-pc-windows-gnu"; version = "0.4.0"; edition = "2015"; sha256 = "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"; authors = [ "Peter Atashian " ]; }; "winapi-util" = rec { crateName = "winapi-util"; version = "0.1.5"; edition = "2018"; sha256 = "0y71bp7f6d536czj40dhqk0d55wfbbwqfp2ymqf1an5ibgl6rv3h"; authors = [ "Andrew Gallant " ]; dependencies = [ { name = "winapi"; packageId = "winapi"; target = { target, features }: (target."windows" or false); features = [ "std" "consoleapi" "errhandlingapi" "fileapi" "minwindef" "processenv" "winbase" "wincon" "winerror" "winnt" ]; } ]; }; "winapi-x86_64-pc-windows-gnu" = rec { crateName = "winapi-x86_64-pc-windows-gnu"; version = "0.4.0"; edition = "2015"; sha256 = "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"; authors = [ "Peter Atashian " ]; }; "windows-sys" = rec { crateName = "windows-sys"; version = "0.36.1"; edition = "2018"; sha256 = "1lmqangv0zg1l46xiq7rfnqwsx8f8m52mqbgg2mrx7x52rd1a17a"; authors = [ "Microsoft" ]; dependencies = [ { name = "windows_aarch64_msvc"; packageId = "windows_aarch64_msvc"; target = { target, features }: (stdenv.hostPlatform.config == "aarch64-pc-windows-msvc"); } { name = "windows_aarch64_msvc"; packageId = "windows_aarch64_msvc"; target = { target, features }: (stdenv.hostPlatform.config == "aarch64-uwp-windows-msvc"); } { name = "windows_i686_gnu"; packageId = "windows_i686_gnu"; target = { target, features }: (stdenv.hostPlatform.config == "i686-pc-windows-gnu"); } { name = "windows_i686_gnu"; packageId = "windows_i686_gnu"; target = { target, features }: (stdenv.hostPlatform.config == "i686-uwp-windows-gnu"); } { name = "windows_i686_msvc"; packageId = "windows_i686_msvc"; target = { target, features }: (stdenv.hostPlatform.config == "i686-pc-windows-msvc"); } { name = "windows_i686_msvc"; packageId = "windows_i686_msvc"; target = { target, features }: (stdenv.hostPlatform.config == "i686-uwp-windows-msvc"); } { name = "windows_x86_64_gnu"; packageId = "windows_x86_64_gnu"; target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-gnu"); } { name = "windows_x86_64_gnu"; packageId = "windows_x86_64_gnu"; target = { target, features }: (stdenv.hostPlatform.config == "x86_64-uwp-windows-gnu"); } { name = "windows_x86_64_msvc"; packageId = "windows_x86_64_msvc"; target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-msvc"); } { name = "windows_x86_64_msvc"; packageId = "windows_x86_64_msvc"; target = { target, features }: (stdenv.hostPlatform.config == "x86_64-uwp-windows-msvc"); } ]; features = { "AI_MachineLearning" = [ "AI" ]; "AI_MachineLearning_Preview" = [ "AI_MachineLearning" ]; "ApplicationModel_Activation" = [ "ApplicationModel" ]; "ApplicationModel_AppExtensions" = [ "ApplicationModel" ]; "ApplicationModel_AppService" = [ "ApplicationModel" ]; "ApplicationModel_Appointments" = [ "ApplicationModel" ]; "ApplicationModel_Appointments_AppointmentsProvider" = [ "ApplicationModel_Appointments" ]; "ApplicationModel_Appointments_DataProvider" = [ "ApplicationModel_Appointments" ]; "ApplicationModel_Background" = [ "ApplicationModel" ]; "ApplicationModel_Calls" = [ "ApplicationModel" ]; "ApplicationModel_Calls_Background" = [ "ApplicationModel_Calls" ]; "ApplicationModel_Calls_Provider" = [ "ApplicationModel_Calls" ]; "ApplicationModel_Chat" = [ "ApplicationModel" ]; "ApplicationModel_CommunicationBlocking" = [ "ApplicationModel" ]; "ApplicationModel_Contacts" = [ "ApplicationModel" ]; "ApplicationModel_Contacts_DataProvider" = [ "ApplicationModel_Contacts" ]; "ApplicationModel_Contacts_Provider" = [ "ApplicationModel_Contacts" ]; "ApplicationModel_ConversationalAgent" = [ "ApplicationModel" ]; "ApplicationModel_Core" = [ "ApplicationModel" ]; "ApplicationModel_DataTransfer" = [ "ApplicationModel" ]; "ApplicationModel_DataTransfer_DragDrop" = [ "ApplicationModel_DataTransfer" ]; "ApplicationModel_DataTransfer_DragDrop_Core" = [ "ApplicationModel_DataTransfer_DragDrop" ]; "ApplicationModel_DataTransfer_ShareTarget" = [ "ApplicationModel_DataTransfer" ]; "ApplicationModel_Email" = [ "ApplicationModel" ]; "ApplicationModel_Email_DataProvider" = [ "ApplicationModel_Email" ]; "ApplicationModel_ExtendedExecution" = [ "ApplicationModel" ]; "ApplicationModel_ExtendedExecution_Foreground" = [ "ApplicationModel_ExtendedExecution" ]; "ApplicationModel_Holographic" = [ "ApplicationModel" ]; "ApplicationModel_LockScreen" = [ "ApplicationModel" ]; "ApplicationModel_Payments" = [ "ApplicationModel" ]; "ApplicationModel_Payments_Provider" = [ "ApplicationModel_Payments" ]; "ApplicationModel_Preview" = [ "ApplicationModel" ]; "ApplicationModel_Preview_Holographic" = [ "ApplicationModel_Preview" ]; "ApplicationModel_Preview_InkWorkspace" = [ "ApplicationModel_Preview" ]; "ApplicationModel_Preview_Notes" = [ "ApplicationModel_Preview" ]; "ApplicationModel_Resources" = [ "ApplicationModel" ]; "ApplicationModel_Resources_Core" = [ "ApplicationModel_Resources" ]; "ApplicationModel_Resources_Management" = [ "ApplicationModel_Resources" ]; "ApplicationModel_Search" = [ "ApplicationModel" ]; "ApplicationModel_Search_Core" = [ "ApplicationModel_Search" ]; "ApplicationModel_SocialInfo" = [ "ApplicationModel" ]; "ApplicationModel_SocialInfo_Provider" = [ "ApplicationModel_SocialInfo" ]; "ApplicationModel_Store" = [ "ApplicationModel" ]; "ApplicationModel_Store_LicenseManagement" = [ "ApplicationModel_Store" ]; "ApplicationModel_Store_Preview" = [ "ApplicationModel_Store" ]; "ApplicationModel_Store_Preview_InstallControl" = [ "ApplicationModel_Store_Preview" ]; "ApplicationModel_UserActivities" = [ "ApplicationModel" ]; "ApplicationModel_UserActivities_Core" = [ "ApplicationModel_UserActivities" ]; "ApplicationModel_UserDataAccounts" = [ "ApplicationModel" ]; "ApplicationModel_UserDataAccounts_Provider" = [ "ApplicationModel_UserDataAccounts" ]; "ApplicationModel_UserDataAccounts_SystemAccess" = [ "ApplicationModel_UserDataAccounts" ]; "ApplicationModel_UserDataTasks" = [ "ApplicationModel" ]; "ApplicationModel_UserDataTasks_DataProvider" = [ "ApplicationModel_UserDataTasks" ]; "ApplicationModel_VoiceCommands" = [ "ApplicationModel" ]; "ApplicationModel_Wallet" = [ "ApplicationModel" ]; "ApplicationModel_Wallet_System" = [ "ApplicationModel_Wallet" ]; "Data_Html" = [ "Data" ]; "Data_Json" = [ "Data" ]; "Data_Pdf" = [ "Data" ]; "Data_Text" = [ "Data" ]; "Data_Xml" = [ "Data" ]; "Data_Xml_Dom" = [ "Data_Xml" ]; "Data_Xml_Xsl" = [ "Data_Xml" ]; "Devices_Adc" = [ "Devices" ]; "Devices_Adc_Provider" = [ "Devices_Adc" ]; "Devices_AllJoyn" = [ "Devices" ]; "Devices_Background" = [ "Devices" ]; "Devices_Bluetooth" = [ "Devices" ]; "Devices_Bluetooth_Advertisement" = [ "Devices_Bluetooth" ]; "Devices_Bluetooth_Background" = [ "Devices_Bluetooth" ]; "Devices_Bluetooth_GenericAttributeProfile" = [ "Devices_Bluetooth" ]; "Devices_Bluetooth_Rfcomm" = [ "Devices_Bluetooth" ]; "Devices_Custom" = [ "Devices" ]; "Devices_Display" = [ "Devices" ]; "Devices_Display_Core" = [ "Devices_Display" ]; "Devices_Enumeration" = [ "Devices" ]; "Devices_Enumeration_Pnp" = [ "Devices_Enumeration" ]; "Devices_Geolocation" = [ "Devices" ]; "Devices_Geolocation_Geofencing" = [ "Devices_Geolocation" ]; "Devices_Gpio" = [ "Devices" ]; "Devices_Gpio_Provider" = [ "Devices_Gpio" ]; "Devices_Haptics" = [ "Devices" ]; "Devices_HumanInterfaceDevice" = [ "Devices" ]; "Devices_I2c" = [ "Devices" ]; "Devices_I2c_Provider" = [ "Devices_I2c" ]; "Devices_Input" = [ "Devices" ]; "Devices_Input_Preview" = [ "Devices_Input" ]; "Devices_Lights" = [ "Devices" ]; "Devices_Lights_Effects" = [ "Devices_Lights" ]; "Devices_Midi" = [ "Devices" ]; "Devices_Perception" = [ "Devices" ]; "Devices_Perception_Provider" = [ "Devices_Perception" ]; "Devices_PointOfService" = [ "Devices" ]; "Devices_PointOfService_Provider" = [ "Devices_PointOfService" ]; "Devices_Portable" = [ "Devices" ]; "Devices_Power" = [ "Devices" ]; "Devices_Printers" = [ "Devices" ]; "Devices_Printers_Extensions" = [ "Devices_Printers" ]; "Devices_Pwm" = [ "Devices" ]; "Devices_Pwm_Provider" = [ "Devices_Pwm" ]; "Devices_Radios" = [ "Devices" ]; "Devices_Scanners" = [ "Devices" ]; "Devices_Sensors" = [ "Devices" ]; "Devices_Sensors_Custom" = [ "Devices_Sensors" ]; "Devices_SerialCommunication" = [ "Devices" ]; "Devices_SmartCards" = [ "Devices" ]; "Devices_Sms" = [ "Devices" ]; "Devices_Spi" = [ "Devices" ]; "Devices_Spi_Provider" = [ "Devices_Spi" ]; "Devices_Usb" = [ "Devices" ]; "Devices_WiFi" = [ "Devices" ]; "Devices_WiFiDirect" = [ "Devices" ]; "Devices_WiFiDirect_Services" = [ "Devices_WiFiDirect" ]; "Embedded_DeviceLockdown" = [ "Embedded" ]; "Foundation_Collections" = [ "Foundation" ]; "Foundation_Diagnostics" = [ "Foundation" ]; "Foundation_Metadata" = [ "Foundation" ]; "Foundation_Numerics" = [ "Foundation" ]; "Gaming_Input" = [ "Gaming" ]; "Gaming_Input_Custom" = [ "Gaming_Input" ]; "Gaming_Input_ForceFeedback" = [ "Gaming_Input" ]; "Gaming_Input_Preview" = [ "Gaming_Input" ]; "Gaming_Preview" = [ "Gaming" ]; "Gaming_Preview_GamesEnumeration" = [ "Gaming_Preview" ]; "Gaming_UI" = [ "Gaming" ]; "Gaming_XboxLive" = [ "Gaming" ]; "Gaming_XboxLive_Storage" = [ "Gaming_XboxLive" ]; "Globalization_Collation" = [ "Globalization" ]; "Globalization_DateTimeFormatting" = [ "Globalization" ]; "Globalization_Fonts" = [ "Globalization" ]; "Globalization_NumberFormatting" = [ "Globalization" ]; "Globalization_PhoneNumberFormatting" = [ "Globalization" ]; "Graphics_Capture" = [ "Graphics" ]; "Graphics_DirectX" = [ "Graphics" ]; "Graphics_DirectX_Direct3D11" = [ "Graphics_DirectX" ]; "Graphics_Display" = [ "Graphics" ]; "Graphics_Display_Core" = [ "Graphics_Display" ]; "Graphics_Effects" = [ "Graphics" ]; "Graphics_Holographic" = [ "Graphics" ]; "Graphics_Imaging" = [ "Graphics" ]; "Graphics_Printing" = [ "Graphics" ]; "Graphics_Printing3D" = [ "Graphics" ]; "Graphics_Printing_OptionDetails" = [ "Graphics_Printing" ]; "Graphics_Printing_PrintSupport" = [ "Graphics_Printing" ]; "Graphics_Printing_PrintTicket" = [ "Graphics_Printing" ]; "Graphics_Printing_Workflow" = [ "Graphics_Printing" ]; "Management_Core" = [ "Management" ]; "Management_Deployment" = [ "Management" ]; "Management_Deployment_Preview" = [ "Management_Deployment" ]; "Management_Policies" = [ "Management" ]; "Management_Update" = [ "Management" ]; "Management_Workplace" = [ "Management" ]; "Media_AppBroadcasting" = [ "Media" ]; "Media_AppRecording" = [ "Media" ]; "Media_Audio" = [ "Media" ]; "Media_Capture" = [ "Media" ]; "Media_Capture_Core" = [ "Media_Capture" ]; "Media_Capture_Frames" = [ "Media_Capture" ]; "Media_Casting" = [ "Media" ]; "Media_ClosedCaptioning" = [ "Media" ]; "Media_ContentRestrictions" = [ "Media" ]; "Media_Control" = [ "Media" ]; "Media_Core" = [ "Media" ]; "Media_Core_Preview" = [ "Media_Core" ]; "Media_Devices" = [ "Media" ]; "Media_Devices_Core" = [ "Media_Devices" ]; "Media_DialProtocol" = [ "Media" ]; "Media_Editing" = [ "Media" ]; "Media_Effects" = [ "Media" ]; "Media_FaceAnalysis" = [ "Media" ]; "Media_Import" = [ "Media" ]; "Media_MediaProperties" = [ "Media" ]; "Media_Miracast" = [ "Media" ]; "Media_Ocr" = [ "Media" ]; "Media_PlayTo" = [ "Media" ]; "Media_Playback" = [ "Media" ]; "Media_Playlists" = [ "Media" ]; "Media_Protection" = [ "Media" ]; "Media_Protection_PlayReady" = [ "Media_Protection" ]; "Media_Render" = [ "Media" ]; "Media_SpeechRecognition" = [ "Media" ]; "Media_SpeechSynthesis" = [ "Media" ]; "Media_Streaming" = [ "Media" ]; "Media_Streaming_Adaptive" = [ "Media_Streaming" ]; "Media_Transcoding" = [ "Media" ]; "Networking_BackgroundTransfer" = [ "Networking" ]; "Networking_Connectivity" = [ "Networking" ]; "Networking_NetworkOperators" = [ "Networking" ]; "Networking_Proximity" = [ "Networking" ]; "Networking_PushNotifications" = [ "Networking" ]; "Networking_ServiceDiscovery" = [ "Networking" ]; "Networking_ServiceDiscovery_Dnssd" = [ "Networking_ServiceDiscovery" ]; "Networking_Sockets" = [ "Networking" ]; "Networking_Vpn" = [ "Networking" ]; "Networking_XboxLive" = [ "Networking" ]; "Perception_Automation" = [ "Perception" ]; "Perception_Automation_Core" = [ "Perception_Automation" ]; "Perception_People" = [ "Perception" ]; "Perception_Spatial" = [ "Perception" ]; "Perception_Spatial_Preview" = [ "Perception_Spatial" ]; "Perception_Spatial_Surfaces" = [ "Perception_Spatial" ]; "Phone_ApplicationModel" = [ "Phone" ]; "Phone_Devices" = [ "Phone" ]; "Phone_Devices_Notification" = [ "Phone_Devices" ]; "Phone_Devices_Power" = [ "Phone_Devices" ]; "Phone_Management" = [ "Phone" ]; "Phone_Management_Deployment" = [ "Phone_Management" ]; "Phone_Media" = [ "Phone" ]; "Phone_Media_Devices" = [ "Phone_Media" ]; "Phone_Notification" = [ "Phone" ]; "Phone_Notification_Management" = [ "Phone_Notification" ]; "Phone_PersonalInformation" = [ "Phone" ]; "Phone_PersonalInformation_Provisioning" = [ "Phone_PersonalInformation" ]; "Phone_Speech" = [ "Phone" ]; "Phone_Speech_Recognition" = [ "Phone_Speech" ]; "Phone_StartScreen" = [ "Phone" ]; "Phone_System" = [ "Phone" ]; "Phone_System_Power" = [ "Phone_System" ]; "Phone_System_Profile" = [ "Phone_System" ]; "Phone_System_UserProfile" = [ "Phone_System" ]; "Phone_System_UserProfile_GameServices" = [ "Phone_System_UserProfile" ]; "Phone_System_UserProfile_GameServices_Core" = [ "Phone_System_UserProfile_GameServices" ]; "Phone_UI" = [ "Phone" ]; "Phone_UI_Input" = [ "Phone_UI" ]; "Security_Authentication" = [ "Security" ]; "Security_Authentication_Identity" = [ "Security_Authentication" ]; "Security_Authentication_Identity_Core" = [ "Security_Authentication_Identity" ]; "Security_Authentication_Identity_Provider" = [ "Security_Authentication_Identity" ]; "Security_Authentication_OnlineId" = [ "Security_Authentication" ]; "Security_Authentication_Web" = [ "Security_Authentication" ]; "Security_Authentication_Web_Core" = [ "Security_Authentication_Web" ]; "Security_Authentication_Web_Provider" = [ "Security_Authentication_Web" ]; "Security_Authorization" = [ "Security" ]; "Security_Authorization_AppCapabilityAccess" = [ "Security_Authorization" ]; "Security_Credentials" = [ "Security" ]; "Security_Credentials_UI" = [ "Security_Credentials" ]; "Security_Cryptography" = [ "Security" ]; "Security_Cryptography_Certificates" = [ "Security_Cryptography" ]; "Security_Cryptography_Core" = [ "Security_Cryptography" ]; "Security_Cryptography_DataProtection" = [ "Security_Cryptography" ]; "Security_DataProtection" = [ "Security" ]; "Security_EnterpriseData" = [ "Security" ]; "Security_ExchangeActiveSyncProvisioning" = [ "Security" ]; "Security_Isolation" = [ "Security" ]; "Services_Cortana" = [ "Services" ]; "Services_Maps" = [ "Services" ]; "Services_Maps_Guidance" = [ "Services_Maps" ]; "Services_Maps_LocalSearch" = [ "Services_Maps" ]; "Services_Maps_OfflineMaps" = [ "Services_Maps" ]; "Services_Store" = [ "Services" ]; "Services_TargetedContent" = [ "Services" ]; "Storage_AccessCache" = [ "Storage" ]; "Storage_BulkAccess" = [ "Storage" ]; "Storage_Compression" = [ "Storage" ]; "Storage_FileProperties" = [ "Storage" ]; "Storage_Pickers" = [ "Storage" ]; "Storage_Pickers_Provider" = [ "Storage_Pickers" ]; "Storage_Provider" = [ "Storage" ]; "Storage_Search" = [ "Storage" ]; "Storage_Streams" = [ "Storage" ]; "System_Diagnostics" = [ "System" ]; "System_Diagnostics_DevicePortal" = [ "System_Diagnostics" ]; "System_Diagnostics_Telemetry" = [ "System_Diagnostics" ]; "System_Diagnostics_TraceReporting" = [ "System_Diagnostics" ]; "System_Display" = [ "System" ]; "System_Implementation" = [ "System" ]; "System_Implementation_FileExplorer" = [ "System_Implementation" ]; "System_Inventory" = [ "System" ]; "System_Power" = [ "System" ]; "System_Power_Diagnostics" = [ "System_Power" ]; "System_Preview" = [ "System" ]; "System_Profile" = [ "System" ]; "System_Profile_SystemManufacturers" = [ "System_Profile" ]; "System_RemoteDesktop" = [ "System" ]; "System_RemoteDesktop_Input" = [ "System_RemoteDesktop" ]; "System_RemoteSystems" = [ "System" ]; "System_Threading" = [ "System" ]; "System_Threading_Core" = [ "System_Threading" ]; "System_Update" = [ "System" ]; "System_UserProfile" = [ "System" ]; "UI_Accessibility" = [ "UI" ]; "UI_ApplicationSettings" = [ "UI" ]; "UI_Composition" = [ "UI" ]; "UI_Composition_Core" = [ "UI_Composition" ]; "UI_Composition_Desktop" = [ "UI_Composition" ]; "UI_Composition_Diagnostics" = [ "UI_Composition" ]; "UI_Composition_Effects" = [ "UI_Composition" ]; "UI_Composition_Interactions" = [ "UI_Composition" ]; "UI_Composition_Scenes" = [ "UI_Composition" ]; "UI_Core" = [ "UI" ]; "UI_Core_AnimationMetrics" = [ "UI_Core" ]; "UI_Core_Preview" = [ "UI_Core" ]; "UI_Input" = [ "UI" ]; "UI_Input_Core" = [ "UI_Input" ]; "UI_Input_Inking" = [ "UI_Input" ]; "UI_Input_Inking_Analysis" = [ "UI_Input_Inking" ]; "UI_Input_Inking_Core" = [ "UI_Input_Inking" ]; "UI_Input_Inking_Preview" = [ "UI_Input_Inking" ]; "UI_Input_Preview" = [ "UI_Input" ]; "UI_Input_Preview_Injection" = [ "UI_Input_Preview" ]; "UI_Input_Spatial" = [ "UI_Input" ]; "UI_Notifications" = [ "UI" ]; "UI_Notifications_Management" = [ "UI_Notifications" ]; "UI_Popups" = [ "UI" ]; "UI_Shell" = [ "UI" ]; "UI_StartScreen" = [ "UI" ]; "UI_Text" = [ "UI" ]; "UI_Text_Core" = [ "UI_Text" ]; "UI_UIAutomation" = [ "UI" ]; "UI_UIAutomation_Core" = [ "UI_UIAutomation" ]; "UI_ViewManagement" = [ "UI" ]; "UI_ViewManagement_Core" = [ "UI_ViewManagement" ]; "UI_WebUI" = [ "UI" ]; "UI_WebUI_Core" = [ "UI_WebUI" ]; "UI_WindowManagement" = [ "UI" ]; "UI_WindowManagement_Preview" = [ "UI_WindowManagement" ]; "UI_Xaml" = [ "UI" ]; "UI_Xaml_Automation" = [ "UI_Xaml" ]; "UI_Xaml_Automation_Peers" = [ "UI_Xaml_Automation" ]; "UI_Xaml_Automation_Provider" = [ "UI_Xaml_Automation" ]; "UI_Xaml_Automation_Text" = [ "UI_Xaml_Automation" ]; "UI_Xaml_Controls" = [ "UI_Xaml" ]; "UI_Xaml_Controls_Maps" = [ "UI_Xaml_Controls" ]; "UI_Xaml_Controls_Primitives" = [ "UI_Xaml_Controls" ]; "UI_Xaml_Core" = [ "UI_Xaml" ]; "UI_Xaml_Core_Direct" = [ "UI_Xaml_Core" ]; "UI_Xaml_Data" = [ "UI_Xaml" ]; "UI_Xaml_Documents" = [ "UI_Xaml" ]; "UI_Xaml_Hosting" = [ "UI_Xaml" ]; "UI_Xaml_Input" = [ "UI_Xaml" ]; "UI_Xaml_Interop" = [ "UI_Xaml" ]; "UI_Xaml_Markup" = [ "UI_Xaml" ]; "UI_Xaml_Media" = [ "UI_Xaml" ]; "UI_Xaml_Media_Animation" = [ "UI_Xaml_Media" ]; "UI_Xaml_Media_Imaging" = [ "UI_Xaml_Media" ]; "UI_Xaml_Media_Media3D" = [ "UI_Xaml_Media" ]; "UI_Xaml_Navigation" = [ "UI_Xaml" ]; "UI_Xaml_Printing" = [ "UI_Xaml" ]; "UI_Xaml_Resources" = [ "UI_Xaml" ]; "UI_Xaml_Shapes" = [ "UI_Xaml" ]; "Web_AtomPub" = [ "Web" ]; "Web_Http" = [ "Web" ]; "Web_Http_Diagnostics" = [ "Web_Http" ]; "Web_Http_Filters" = [ "Web_Http" ]; "Web_Http_Headers" = [ "Web_Http" ]; "Web_Syndication" = [ "Web" ]; "Web_UI" = [ "Web" ]; "Web_UI_Interop" = [ "Web_UI" ]; "Win32_AI" = [ "Win32" ]; "Win32_AI_MachineLearning" = [ "Win32_AI" ]; "Win32_AI_MachineLearning_DirectML" = [ "Win32_AI_MachineLearning" ]; "Win32_AI_MachineLearning_WinML" = [ "Win32_AI_MachineLearning" ]; "Win32_Data" = [ "Win32" ]; "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; "Win32_Data_RightsManagement" = [ "Win32_Data" ]; "Win32_Data_Xml" = [ "Win32_Data" ]; "Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ]; "Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ]; "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_DeviceAccess" = [ "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_FunctionDiscovery" = [ "Win32_Devices" ]; "Win32_Devices_Geolocation" = [ "Win32_Devices" ]; "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; "Win32_Devices_ImageAcquisition" = [ "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_CompositionSwapchain" = [ "Win32_Graphics" ]; "Win32_Graphics_DXCore" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct2D" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct2D_Common" = [ "Win32_Graphics_Direct2D" ]; "Win32_Graphics_Direct3D" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct3D10" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct3D11" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct3D11on12" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct3D12" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct3D9" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct3D9on12" = [ "Win32_Graphics" ]; "Win32_Graphics_Direct3D_Dxc" = [ "Win32_Graphics_Direct3D" ]; "Win32_Graphics_Direct3D_Fxc" = [ "Win32_Graphics_Direct3D" ]; "Win32_Graphics_DirectComposition" = [ "Win32_Graphics" ]; "Win32_Graphics_DirectDraw" = [ "Win32_Graphics" ]; "Win32_Graphics_DirectManipulation" = [ "Win32_Graphics" ]; "Win32_Graphics_DirectWrite" = [ "Win32_Graphics" ]; "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; "Win32_Graphics_Dxgi" = [ "Win32_Graphics" ]; "Win32_Graphics_Dxgi_Common" = [ "Win32_Graphics_Dxgi" ]; "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; "Win32_Graphics_Imaging" = [ "Win32_Graphics" ]; "Win32_Graphics_Imaging_D2D" = [ "Win32_Graphics_Imaging" ]; "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_Audio_Apo" = [ "Win32_Media_Audio" ]; "Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ]; "Win32_Media_Audio_DirectSound" = [ "Win32_Media_Audio" ]; "Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ]; "Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ]; "Win32_Media_DeviceManager" = [ "Win32_Media" ]; "Win32_Media_DirectShow" = [ "Win32_Media" ]; "Win32_Media_DirectShow_Xml" = [ "Win32_Media_DirectShow" ]; "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; "Win32_Media_LibrarySharingServices" = [ "Win32_Media" ]; "Win32_Media_MediaFoundation" = [ "Win32_Media" ]; "Win32_Media_MediaPlayer" = [ "Win32_Media" ]; "Win32_Media_Multimedia" = [ "Win32_Media" ]; "Win32_Media_PictureAcquisition" = [ "Win32_Media" ]; "Win32_Media_Speech" = [ "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_MobileBroadband" = [ "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_NetworkPolicyServer" = [ "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_WindowsConnectNow" = [ "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_BackgroundIntelligentTransferService" = [ "Win32_Networking" ]; "Win32_Networking_Clustering" = [ "Win32_Networking" ]; "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; "Win32_Networking_Ldap" = [ "Win32_Networking" ]; "Win32_Networking_NetworkListManager" = [ "Win32_Networking" ]; "Win32_Networking_RemoteDifferentialCompression" = [ "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_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ]; "Win32_Security_Authorization" = [ "Win32_Security" ]; "Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ]; "Win32_Security_ConfigurationSnapin" = [ "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_Tpm" = [ "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_DataDeduplication" = [ "Win32_Storage" ]; "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; "Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ]; "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; "Win32_Storage_FileServerResourceManager" = [ "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_OfflineFiles" = [ "Win32_Storage" ]; "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; "Win32_Storage_Packaging" = [ "Win32_Storage" ]; "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; "Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ]; "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; "Win32_Storage_Vhd" = [ "Win32_Storage" ]; "Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ]; "Win32_Storage_Vss" = [ "Win32_Storage" ]; "Win32_Storage_Xps" = [ "Win32_Storage" ]; "Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ]; "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_AssessmentTool" = [ "Win32_System" ]; "Win32_System_Com" = [ "Win32_System" ]; "Win32_System_Com_CallObj" = [ "Win32_System_Com" ]; "Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ]; "Win32_System_Com_Events" = [ "Win32_System_Com" ]; "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; "Win32_System_Com_UI" = [ "Win32_System_Com" ]; "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; "Win32_System_ComponentServices" = [ "Win32_System" ]; "Win32_System_Console" = [ "Win32_System" ]; "Win32_System_Contacts" = [ "Win32_System" ]; "Win32_System_CorrelationVector" = [ "Win32_System" ]; "Win32_System_DataExchange" = [ "Win32_System" ]; "Win32_System_DeploymentServices" = [ "Win32_System" ]; "Win32_System_DesktopSharing" = [ "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_WebApp" = [ "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_Mmc" = [ "Win32_System" ]; "Win32_System_Ole" = [ "Win32_System" ]; "Win32_System_ParentalControls" = [ "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_RealTimeCommunications" = [ "Win32_System" ]; "Win32_System_Recovery" = [ "Win32_System" ]; "Win32_System_Registry" = [ "Win32_System" ]; "Win32_System_RemoteAssistance" = [ "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_ServerBackup" = [ "Win32_System" ]; "Win32_System_Services" = [ "Win32_System" ]; "Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ]; "Win32_System_SetupAndMigration" = [ "Win32_System" ]; "Win32_System_Shutdown" = [ "Win32_System" ]; "Win32_System_SideShow" = [ "Win32_System" ]; "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; "Win32_System_SystemInformation" = [ "Win32_System" ]; "Win32_System_SystemServices" = [ "Win32_System" ]; "Win32_System_TaskScheduler" = [ "Win32_System" ]; "Win32_System_Threading" = [ "Win32_System" ]; "Win32_System_Time" = [ "Win32_System" ]; "Win32_System_TpmBaseServices" = [ "Win32_System" ]; "Win32_System_TransactionServer" = [ "Win32_System" ]; "Win32_System_UpdateAgent" = [ "Win32_System" ]; "Win32_System_UpdateAssessment" = [ "Win32_System" ]; "Win32_System_UserAccessLogging" = [ "Win32_System" ]; "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; "Win32_System_WinRT" = [ "Win32_System" ]; "Win32_System_WinRT_AllJoyn" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Composition" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_CoreInputView" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Direct3D11" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Display" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Graphics" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Graphics_Capture" = [ "Win32_System_WinRT_Graphics" ]; "Win32_System_WinRT_Graphics_Direct2D" = [ "Win32_System_WinRT_Graphics" ]; "Win32_System_WinRT_Graphics_Imaging" = [ "Win32_System_WinRT_Graphics" ]; "Win32_System_WinRT_Holographic" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Isolation" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_ML" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Media" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Pdf" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Printing" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Shell" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Storage" = [ "Win32_System_WinRT" ]; "Win32_System_WinRT_Xaml" = [ "Win32_System_WinRT" ]; "Win32_System_WindowsProgramming" = [ "Win32_System" ]; "Win32_System_WindowsSync" = [ "Win32_System" ]; "Win32_System_Wmi" = [ "Win32_System" ]; "Win32_UI" = [ "Win32" ]; "Win32_UI_Accessibility" = [ "Win32_UI" ]; "Win32_UI_Animation" = [ "Win32_UI" ]; "Win32_UI_ColorSystem" = [ "Win32_UI" ]; "Win32_UI_Controls" = [ "Win32_UI" ]; "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; "Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ]; "Win32_UI_HiDpi" = [ "Win32_UI" ]; "Win32_UI_Input" = [ "Win32_UI" ]; "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Ink" = [ "Win32_UI_Input" ]; "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Radial" = [ "Win32_UI_Input" ]; "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; "Win32_UI_InteractionContext" = [ "Win32_UI" ]; "Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ]; "Win32_UI_Magnification" = [ "Win32_UI" ]; "Win32_UI_Notifications" = [ "Win32_UI" ]; "Win32_UI_Ribbon" = [ "Win32_UI" ]; "Win32_UI_Shell" = [ "Win32_UI" ]; "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; "Win32_UI_TabletPC" = [ "Win32_UI" ]; "Win32_UI_TextServices" = [ "Win32_UI" ]; "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; "Win32_UI_Wpf" = [ "Win32_UI" ]; "Win32_UI_Xaml" = [ "Win32_UI" ]; "Win32_UI_Xaml_Diagnostics" = [ "Win32_UI_Xaml" ]; "Win32_Web" = [ "Win32" ]; "Win32_Web_MsHtml" = [ "Win32_Web" ]; }; resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_IO" "Win32_System_Pipes" "Win32_System_WindowsProgramming" "default" ]; }; "windows_aarch64_msvc" = rec { crateName = "windows_aarch64_msvc"; version = "0.36.1"; edition = "2018"; sha256 = "0ixaxs2c37ll2smprzh0xq5p238zn8ylzb3lk1zddqmd77yw7f4v"; authors = [ "Microsoft" ]; }; "windows_i686_gnu" = rec { crateName = "windows_i686_gnu"; version = "0.36.1"; edition = "2018"; sha256 = "1dm3svxfzamrv6kklyda9c3qylgwn5nwdps6p0kc9x6s077nq3hq"; authors = [ "Microsoft" ]; }; "windows_i686_msvc" = rec { crateName = "windows_i686_msvc"; version = "0.36.1"; edition = "2018"; sha256 = "097h2a7wig04wbmpi3rz1akdy4s8gslj5szsx8g2v0dj91qr3rz2"; authors = [ "Microsoft" ]; }; "windows_x86_64_gnu" = rec { crateName = "windows_x86_64_gnu"; version = "0.36.1"; edition = "2018"; sha256 = "1qfrck3jnihymfrd01s8260d4snql8ks2p8yaabipi3nhwdigkad"; authors = [ "Microsoft" ]; }; "windows_x86_64_msvc" = rec { crateName = "windows_x86_64_msvc"; version = "0.36.1"; edition = "2018"; sha256 = "103n3xijm5vr7qxr1dps202ckfnv7njjnnfqmchg8gl5ii5cl4f8"; authors = [ "Microsoft" ]; }; "winreg" = rec { crateName = "winreg"; version = "0.10.1"; edition = "2015"; sha256 = "17c6h02z88ijjba02bnxi5k94q5cz490nf3njh9yypf8fbig9l40"; authors = [ "Igor Shaula " ]; dependencies = [ { name = "winapi"; packageId = "winapi"; features = [ "impl-default" "impl-debug" "minwindef" "minwinbase" "timezoneapi" "winerror" "winnt" "winreg" "handleapi" ]; } ]; features = { "chrono" = [ "dep:chrono" ]; "serde" = [ "dep:serde" ]; "serialization-serde" = [ "transactions" "serde" ]; "transactions" = [ "winapi/ktmw32" ]; }; }; }; # # crate2nix/default.nix (excerpt start) # /* Target (platform) data for conditional dependencies. This corresponds roughly to what buildRustCrate is setting. */ defaultTarget = { unix = true; windows = false; fuchsia = true; test = false; # This doesn't appear to be officially documented anywhere yet. # See https://github.com/rust-lang-nursery/rust-forge/issues/101. os = if stdenv.hostPlatform.isDarwin then "macos" else stdenv.hostPlatform.parsed.kernel.name; arch = stdenv.hostPlatform.parsed.cpu.name; family = "unix"; env = "gnu"; endian = if stdenv.hostPlatform.parsed.cpu.significantByte.name == "littleEndian" then "little" else "big"; pointer_width = toString stdenv.hostPlatform.parsed.cpu.bits; vendor = stdenv.hostPlatform.parsed.vendor.name; 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; } ); # 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.runCommand "run-tests-${testCrate.name}" { inherit testCrateFlags; buildInputs = testInputs; } '' set -ex export RUST_BACKTRACE=1 # recreate a file hierarchy as when running tests with cargo # the source for test data ${pkgs.xorg.lndir}/bin/lndir ${crate.src} # 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; }; } '' 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 , target ? defaultTarget } @ args: assert (builtins.isAttrs crateConfigs); assert (builtins.isString packageId); assert (builtins.isList features); assert (builtins.isAttrs target); assert (builtins.isBool runTests); let rootPackageId = packageId; mergedFeatures = mergePackageFeatures ( args // { inherit rootPackageId; target = target // { 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; 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 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 target; buildByPackageId = depPackageId: self.build.crates.${depPackageId}; dependencies = crateConfig.buildDependencies or [ ]; }; filterEnabledDependenciesForThis = dependencies: filterEnabledDependencies { inherit dependencies features target; }; dependenciesWithRenames = lib.filter (d: d ? "rename") ( filterEnabledDependenciesForThis ( (crateConfig.buildDependencies or [ ]) ++ (crateConfig.dependencies or [ ]) ++ devDependencies ) ); # 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; version = package.version; }; in lib.mapAttrs (name: choices: builtins.map versionAndRename choices) 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: v: sanitizeForJson v) 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 ? defaultTarget }: 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 packageId = 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 = { name, rename ? null, ... }: feature: let prefix = "${name}/"; len = builtins.stringLength prefix; startsWithPrefix = builtins.substring 0 len feature == prefix; in (rename == null && feature == name) || (rename != null && rename == feature) || 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 expandFeature = feature: assert (builtins.isString feature); [ feature ] ++ (expandFeatures featureMap (featureMap."${feature}" or [ ])); outFeatures = lib.concatMap expandFeature 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.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 dependencyPrefix = (dependency.rename or dependency.name) + "/"; dependencyFeatures = builtins.filter (f: lib.hasPrefix dependencyPrefix f) features; in builtins.map (lib.removePrefix dependencyPrefix) 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) # }; }