tvl-depot/users/picnoir/tvix-daemon/Cargo.nix
Vova Kryachko fa9c067dc9 feat(nix-daemon): Implement more nix daemon operations.
In particular QueryPathFromHashPart, QueryValidPaths, QueryValidDerivers

Change-Id: Ie6ad83cec5ce9580044b85e201e4e23394f87075
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12762
Tested-by: BuildkiteCI
Reviewed-by: edef <edef@edef.eu>
Reviewed-by: flokli <flokli@flokli.de>
2024-11-13 21:21:57 +00:00

5723 lines
190 KiB
Nix

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