# 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 = "tvixbolt";
# 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 = {
"tvixbolt" = rec {
packageId = "tvixbolt";
build = internal.buildRustCrateWithFeatures {
packageId = "tvixbolt";
};
# 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.22.0";
edition = "2018";
sha256 = "0y66f1sa27i9kvmlh76ynk60rxfrmkba9ja8x527h32wdb206ibf";
dependencies = [
{
name = "gimli";
packageId = "gimli";
usesDefaultFeatures = false;
features = [ "read" ];
}
];
features = {
"alloc" = [ "dep:alloc" ];
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"cpp_demangle" = [ "dep:cpp_demangle" ];
"default" = [ "rustc-demangle" "cpp_demangle" "std-object" "fallible-iterator" "smallvec" "memmap2" ];
"fallible-iterator" = [ "dep:fallible-iterator" ];
"memmap2" = [ "dep:memmap2" ];
"object" = [ "dep:object" ];
"rustc-demangle" = [ "dep:rustc-demangle" ];
"rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "gimli/rustc-dep-of-std" ];
"smallvec" = [ "dep:smallvec" ];
"std" = [ "gimli/std" ];
"std-object" = [ "std" "object" "object/std" "object/compression" "gimli/endian-reader" ];
};
};
"adler" = rec {
crateName = "adler";
version = "1.0.2";
edition = "2015";
sha256 = "1zim79cvzd5yrkzl3nyfx0avijwgk9fqv3yrscdy1cc79ih02qpj";
authors = [
"Jonas Schievink <jonasschievink@gmail.com>"
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "std" ];
"rustc-dep-of-std" = [ "core" "compiler_builtins" ];
};
};
"aho-corasick" = rec {
crateName = "aho-corasick";
version = "1.1.2";
edition = "2021";
sha256 = "1w510wnixvlgimkx1zjbvlxh6xps2vjgfqgwf5a6adlbjp5rv5mj";
libName = "aho_corasick";
authors = [
"Andrew Gallant <jamslam@gmail.com>"
];
dependencies = [
{
name = "memchr";
packageId = "memchr";
optional = true;
usesDefaultFeatures = false;
}
];
features = {
"default" = [ "std" "perf-literal" ];
"logging" = [ "dep:log" ];
"perf-literal" = [ "dep:memchr" ];
"std" = [ "memchr?/std" ];
};
resolvedDefaultFeatures = [ "perf-literal" "std" ];
};
"anymap2" = rec {
crateName = "anymap2";
version = "0.13.0";
edition = "2018";
sha256 = "031kw3bp0zh2pn9fcayaw0w0gydgpgfhm08pg4yz5cml9jwv60fk";
authors = [
"Chris Morgan <me@chrismorgan.info>"
"Azriel Hoh <azriel91@gmail.com>"
];
};
"autocfg" = rec {
crateName = "autocfg";
version = "1.3.0";
edition = "2015";
sha256 = "1c3njkfzpil03k92q0mij5y1pkhhfr4j3bf0h53bgl2vs85lsjqc";
authors = [
"Josh Stone <cuviper@gmail.com>"
];
};
"backtrace" = rec {
crateName = "backtrace";
version = "0.3.73";
edition = "2021";
sha256 = "02iffg2pkg5nc36pgml8il7f77s138hhjw9f9l56v5zqlilk5hjw";
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";
}
];
buildDependencies = [
{
name = "cc";
packageId = "cc";
}
];
features = {
"cpp_demangle" = [ "dep:cpp_demangle" ];
"default" = [ "std" ];
"serde" = [ "dep:serde" ];
"serialize-serde" = [ "serde" ];
"verify-winapi" = [ "winapi/dbghelp" "winapi/handleapi" "winapi/libloaderapi" "winapi/memoryapi" "winapi/minwindef" "winapi/processthreadsapi" "winapi/synchapi" "winapi/tlhelp32" "winapi/winbase" "winapi/winnt" "winapi/winnls" "winapi/stringapiset" ];
"winapi" = [ "dep:winapi" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"bincode" = rec {
crateName = "bincode";
version = "1.3.3";
edition = "2015";
sha256 = "1bfw3mnwzx5g1465kiqllp5n4r10qrqy88kdlp3jfwnq2ya5xx5i";
authors = [
"Ty Overby <ty@pre-alpha.com>"
"Francesco Mazzoli <f@mazzo.li>"
"David Tolnay <dtolnay@gmail.com>"
"Zoey Riordan <zoey@dos.cafe>"
];
dependencies = [
{
name = "serde";
packageId = "serde";
}
];
features = { };
};
"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.4.1" = rec {
crateName = "bitflags";
version = "2.4.1";
edition = "2021";
sha256 = "01ryy3kd671b0ll4bhdvhsz67vwz1lz53fz504injrd7wpv64xrj";
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";
}
];
};
"boolinator" = rec {
crateName = "boolinator";
version = "2.4.0";
edition = "2015";
sha256 = "1nccxzb1dfkjfrgzqaw1a90p26zlvv6nah5ckcpj6bn9a4zqga6g";
authors = [
"Daniel Keep <daniel.keep@gmail.com>"
];
};
"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" ];
};
"bumpalo" = rec {
crateName = "bumpalo";
version = "3.16.0";
edition = "2021";
sha256 = "0b015qb4knwanbdlp1x48pkb4pm57b8gidbhhhxr900q2wb6fabr";
authors = [
"Nick Fitzgerald <fitzgen@gmail.com>"
];
features = {
"allocator-api2" = [ "dep:allocator-api2" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"bytes" = rec {
crateName = "bytes";
version = "1.7.1";
edition = "2018";
sha256 = "0l5sf69avjxcw41cznyzxsnymwmkpmk08q0sm7fgicvvn0ysa643";
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.7";
edition = "2018";
sha256 = "1g2w088mkhlyji5cpsw34mzppn5jcb9h2d9sga4y677sggyw7996";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
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" ];
};
};
"codemap" = rec {
crateName = "codemap";
version = "0.1.3";
edition = "2015";
sha256 = "091azkslwkcijj3lp9ymb084y9a0wm4fkil7m613ja68r2snkrxr";
authors = [
"Kevin Mehall <km@kevinmehall.net>"
];
};
"codemap-diagnostic" = rec {
crateName = "codemap-diagnostic";
version = "0.1.2";
edition = "2015";
sha256 = "08l1b84bn8r8a72rbvyi2v8a5i0j0kk0a5gr7fb6lmjvw05pf86c";
libName = "codemap_diagnostic";
authors = [
"Kevin Mehall <km@kevinmehall.net>"
"The Rust Project Developers"
];
dependencies = [
{
name = "codemap";
packageId = "codemap";
}
{
name = "termcolor";
packageId = "termcolor";
}
];
};
"console_error_panic_hook" = rec {
crateName = "console_error_panic_hook";
version = "0.1.7";
edition = "2015";
sha256 = "1g5v8s0ndycc10mdn6igy914k645pgpcl8vjpz6nvxkhyirynsm0";
authors = [
"Nick Fitzgerald <fitzgen@gmail.com>"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
};
"countme" = rec {
crateName = "countme";
version = "3.0.1";
edition = "2018";
sha256 = "0dn62hhvgmwyxslh14r4nlbvz8h50cp5mnn1qhqsw63vs7yva13p";
authors = [
"Aleksey Kladov <aleksey.kladov@gmail.com>"
];
features = {
"dashmap" = [ "dep:dashmap" ];
"enable" = [ "dashmap" "once_cell" "rustc-hash" ];
"once_cell" = [ "dep:once_cell" ];
"print_at_exit" = [ "enable" ];
"rustc-hash" = [ "dep:rustc-hash" ];
};
};
"cpufeatures" = rec {
crateName = "cpufeatures";
version = "0.2.12";
edition = "2018";
sha256 = "012m7rrak4girqlii3jnqwrr73gv1i980q4wra5yyyhvzwk5xzjk";
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" ];
};
"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" ];
};
"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" ];
};
"dirs" = rec {
crateName = "dirs";
version = "4.0.0";
edition = "2015";
sha256 = "0n8020zl4f0frfnzvgb9agvk4a14i1kjz4daqnxkgslndwmaffna";
authors = [
"Simon Ochsenreither <simon@ochsenreither.de>"
];
dependencies = [
{
name = "dirs-sys";
packageId = "dirs-sys";
}
];
};
"dirs-sys" = rec {
crateName = "dirs-sys";
version = "0.3.7";
edition = "2015";
sha256 = "19md1cnkazham8a6kh22v12d8hh3raqahfk6yb043vrjr68is78v";
libName = "dirs_sys";
authors = [
"Simon Ochsenreither <simon@ochsenreither.de>"
];
dependencies = [
{
name = "libc";
packageId = "libc";
target = { target, features }: (target."unix" or false);
}
{
name = "redox_users";
packageId = "redox_users";
usesDefaultFeatures = false;
target = { target, features }: ("redox" == target."os" or null);
}
{
name = "winapi";
packageId = "winapi";
target = { target, features }: (target."windows" or false);
features = [ "knownfolders" "objbase" "shlobj" "winbase" "winerror" ];
}
];
};
"either" = rec {
crateName = "either";
version = "1.9.0";
edition = "2018";
sha256 = "01qy3anr7jal5lpc20791vxrw0nl6vksb5j7x56q2fycgcyy8sm2";
authors = [
"bluss"
];
features = {
"default" = [ "use_std" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "use_std" ];
};
"equivalent" = rec {
crateName = "equivalent";
version = "1.0.1";
edition = "2015";
sha256 = "1malmx5f4lkfvqasz319lq6gb3ddg19yzf9s8cykfsgzdmyq0hsl";
};
"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.30";
edition = "2018";
sha256 = "1c04g14bccmprwsvx2j9m2blhwrynq7vhl151lsvcv4gi0b6jp34";
dependencies = [
{
name = "futures-channel";
packageId = "futures-channel";
usesDefaultFeatures = false;
features = [ "sink" ];
}
{
name = "futures-core";
packageId = "futures-core";
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" "std" ];
};
"futures-channel" = rec {
crateName = "futures-channel";
version = "0.3.30";
edition = "2018";
sha256 = "0y6b7xxqdjm9hlcjpakcg41qfl7lihf6gavk8fyqijsxhvbzgj7a";
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.30";
edition = "2018";
sha256 = "07aslayrn3lbggj54kci0ishmd1pr367fp7iks7adia1p05miinz";
libName = "futures_core";
features = {
"default" = [ "std" ];
"portable-atomic" = [ "dep:portable-atomic" ];
"std" = [ "alloc" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "std" ];
};
"futures-io" = rec {
crateName = "futures-io";
version = "0.3.30";
edition = "2018";
sha256 = "1hgh25isvsr4ybibywhr4dpys8mjnscw4wfxxwca70cn1gi26im4";
libName = "futures_io";
features = {
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "std" ];
};
"futures-macro" = rec {
crateName = "futures-macro";
version = "0.3.30";
edition = "2018";
sha256 = "1b49qh9d402y8nka4q6wvvj0c88qq91wbr192mdn5h54nzs0qxc7";
procMacro = true;
libName = "futures_macro";
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "full" ];
}
];
};
"futures-sink" = rec {
crateName = "futures-sink";
version = "0.3.30";
edition = "2018";
sha256 = "1dag8xyyaya8n8mh8smx7x6w2dpmafg2din145v973a3hw7f1f4z";
libName = "futures_sink";
features = {
"default" = [ "std" ];
"std" = [ "alloc" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "std" ];
};
"futures-task" = rec {
crateName = "futures-task";
version = "0.3.30";
edition = "2018";
sha256 = "013h1724454hj8qczp8vvs10qfiqrxr937qsrv6rhii68ahlzn1q";
libName = "futures_task";
features = {
"default" = [ "std" ];
"std" = [ "alloc" ];
};
resolvedDefaultFeatures = [ "alloc" "std" ];
};
"futures-util" = rec {
crateName = "futures-util";
version = "0.3.30";
edition = "2018";
sha256 = "0j0xqhcir1zf2dcbpd421kgw6wvsk0rpxflylcysn1rlp3g02r1x";
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" "futures-channel" "futures-io" "futures-macro" "futures-sink" "io" "memchr" "sink" "slab" "std" ];
};
"genawaiter" = rec {
crateName = "genawaiter";
version = "0.99.1";
edition = "2018";
sha256 = "1861a6vy9lc9a8lbw496m9j9jcjcn9nf7rkm6jqkkpnb3cvd0sy8";
authors = [
"John Simon <john@whatisaph.one>"
];
dependencies = [
{
name = "genawaiter-macro";
packageId = "genawaiter-macro";
}
];
features = {
"default" = [ "proc_macro" ];
"futures-core" = [ "dep:futures-core" ];
"futures03" = [ "futures-core" ];
"genawaiter-proc-macro" = [ "dep:genawaiter-proc-macro" ];
"proc-macro-hack" = [ "dep:proc-macro-hack" ];
"proc_macro" = [ "genawaiter-proc-macro" "proc-macro-hack" "genawaiter-macro/proc_macro" ];
};
};
"genawaiter-macro" = rec {
crateName = "genawaiter-macro";
version = "0.99.1";
edition = "2018";
sha256 = "1g6zmr88fk48f1ksz9ik1i2mwjsiam9s4p9aybhvs2zwzphxychb";
libName = "genawaiter_macro";
authors = [
"Devin R <devin.ragotzy@gmail.com>"
];
features = { };
};
"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 = "js-sys";
packageId = "js-sys";
optional = true;
target = { target, features }: ((("wasm32" == target."arch" or null) || ("wasm64" == target."arch" or null)) && ("unknown" == target."os" or null));
}
{
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);
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
optional = true;
usesDefaultFeatures = false;
target = { target, features }: ((("wasm32" == target."arch" or null) || ("wasm64" == target."arch" or null)) && ("unknown" == 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 = [ "js" "js-sys" "std" "wasm-bindgen" ];
};
"gimli" = rec {
crateName = "gimli";
version = "0.29.0";
edition = "2018";
sha256 = "1zgzprnjaawmg6zyic4f2q2hc39kdhn116qnkqpgvsasgc3x9v20";
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" ];
};
"gloo 0.10.0" = rec {
crateName = "gloo";
version = "0.10.0";
edition = "2021";
sha256 = "0j82hwfn6ibqla1q849vhsmxnxw6wmnjkmmffzdw2mfc51n54dfd";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-console";
packageId = "gloo-console 0.3.0";
optional = true;
}
{
name = "gloo-dialogs";
packageId = "gloo-dialogs 0.2.0";
optional = true;
}
{
name = "gloo-events";
packageId = "gloo-events 0.2.0";
optional = true;
}
{
name = "gloo-file";
packageId = "gloo-file 0.3.0";
optional = true;
}
{
name = "gloo-history";
packageId = "gloo-history 0.2.2";
optional = true;
}
{
name = "gloo-net";
packageId = "gloo-net 0.4.0";
optional = true;
}
{
name = "gloo-render";
packageId = "gloo-render 0.2.0";
optional = true;
}
{
name = "gloo-storage";
packageId = "gloo-storage 0.3.0";
optional = true;
}
{
name = "gloo-timers";
packageId = "gloo-timers 0.3.0";
optional = true;
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.2.0";
optional = true;
}
{
name = "gloo-worker";
packageId = "gloo-worker 0.4.0";
optional = true;
}
];
features = {
"console" = [ "gloo-console" ];
"default" = [ "timers" "events" "file" "dialogs" "storage" "render" "console" "utils" "history" "worker" "net" ];
"dialogs" = [ "gloo-dialogs" ];
"events" = [ "gloo-events" ];
"file" = [ "gloo-file" ];
"futures" = [ "timers" "file" "worker" "gloo-timers/futures" "gloo-file/futures" "gloo-worker/futures" ];
"gloo-console" = [ "dep:gloo-console" ];
"gloo-dialogs" = [ "dep:gloo-dialogs" ];
"gloo-events" = [ "dep:gloo-events" ];
"gloo-file" = [ "dep:gloo-file" ];
"gloo-history" = [ "dep:gloo-history" ];
"gloo-net" = [ "dep:gloo-net" ];
"gloo-render" = [ "dep:gloo-render" ];
"gloo-storage" = [ "dep:gloo-storage" ];
"gloo-timers" = [ "dep:gloo-timers" ];
"gloo-utils" = [ "dep:gloo-utils" ];
"gloo-worker" = [ "dep:gloo-worker" ];
"history" = [ "gloo-history" ];
"net" = [ "gloo-net" ];
"render" = [ "gloo-render" ];
"storage" = [ "gloo-storage" ];
"timers" = [ "gloo-timers" ];
"utils" = [ "gloo-utils" ];
"worker" = [ "gloo-worker" ];
};
resolvedDefaultFeatures = [ "console" "default" "dialogs" "events" "file" "futures" "gloo-console" "gloo-dialogs" "gloo-events" "gloo-file" "gloo-history" "gloo-net" "gloo-render" "gloo-storage" "gloo-timers" "gloo-utils" "gloo-worker" "history" "net" "render" "storage" "timers" "utils" "worker" ];
};
"gloo 0.8.1" = rec {
crateName = "gloo";
version = "0.8.1";
edition = "2018";
sha256 = "0kdr8ahxl77fby89fvfwq13kqqyyw63pnjpv6gynz4gnbvd9r698";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-console";
packageId = "gloo-console 0.2.3";
optional = true;
}
{
name = "gloo-dialogs";
packageId = "gloo-dialogs 0.1.1";
optional = true;
}
{
name = "gloo-events";
packageId = "gloo-events 0.1.2";
optional = true;
}
{
name = "gloo-file";
packageId = "gloo-file 0.2.3";
optional = true;
}
{
name = "gloo-history";
packageId = "gloo-history 0.1.5";
optional = true;
}
{
name = "gloo-net";
packageId = "gloo-net 0.3.1";
optional = true;
}
{
name = "gloo-render";
packageId = "gloo-render 0.1.1";
optional = true;
}
{
name = "gloo-storage";
packageId = "gloo-storage 0.2.2";
optional = true;
}
{
name = "gloo-timers";
packageId = "gloo-timers 0.2.6";
optional = true;
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.1.7";
optional = true;
}
{
name = "gloo-worker";
packageId = "gloo-worker 0.2.1";
optional = true;
}
];
features = {
"console" = [ "gloo-console" ];
"default" = [ "timers" "events" "file" "dialogs" "storage" "render" "console" "utils" "history" "worker" "net" ];
"dialogs" = [ "gloo-dialogs" ];
"events" = [ "gloo-events" ];
"file" = [ "gloo-file" ];
"futures" = [ "timers" "file" "worker" "gloo-timers/futures" "gloo-file/futures" "gloo-worker/futures" ];
"gloo-console" = [ "dep:gloo-console" ];
"gloo-dialogs" = [ "dep:gloo-dialogs" ];
"gloo-events" = [ "dep:gloo-events" ];
"gloo-file" = [ "dep:gloo-file" ];
"gloo-history" = [ "dep:gloo-history" ];
"gloo-net" = [ "dep:gloo-net" ];
"gloo-render" = [ "dep:gloo-render" ];
"gloo-storage" = [ "dep:gloo-storage" ];
"gloo-timers" = [ "dep:gloo-timers" ];
"gloo-utils" = [ "dep:gloo-utils" ];
"gloo-worker" = [ "dep:gloo-worker" ];
"history" = [ "gloo-history" ];
"net" = [ "gloo-net" ];
"render" = [ "gloo-render" ];
"storage" = [ "gloo-storage" ];
"timers" = [ "gloo-timers" ];
"utils" = [ "gloo-utils" ];
"worker" = [ "gloo-worker" ];
};
resolvedDefaultFeatures = [ "console" "default" "dialogs" "events" "file" "gloo-console" "gloo-dialogs" "gloo-events" "gloo-file" "gloo-history" "gloo-net" "gloo-render" "gloo-storage" "gloo-timers" "gloo-utils" "gloo-worker" "history" "net" "render" "storage" "timers" "utils" "worker" ];
};
"gloo-console 0.2.3" = rec {
crateName = "gloo-console";
version = "0.2.3";
edition = "2018";
sha256 = "0gqd35vn0i5y6hzfrsb2i032p1j832c08sar6dr19gny0lycxdw2";
libName = "gloo_console";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-utils";
packageId = "gloo-utils 0.1.7";
features = [ "serde" ];
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "console" "Document" ];
}
];
};
"gloo-console 0.3.0" = rec {
crateName = "gloo-console";
version = "0.3.0";
edition = "2021";
sha256 = "0qg24wbvql0bsr980hbrm0pi11c3jmlwpj0pgdklz8mlas7qc5ra";
libName = "gloo_console";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-utils";
packageId = "gloo-utils 0.2.0";
features = [ "serde" ];
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "console" "Document" ];
}
];
};
"gloo-dialogs 0.1.1" = rec {
crateName = "gloo-dialogs";
version = "0.1.1";
edition = "2018";
sha256 = "1rh2j0l8rbj8pbypxqy99qi2x3hq52sclijs8h47zlkjmij261k7";
libName = "gloo_dialogs";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Window" ];
}
];
};
"gloo-dialogs 0.2.0" = rec {
crateName = "gloo-dialogs";
version = "0.2.0";
edition = "2021";
sha256 = "1pqmg2z3x4c3id25jd0p8rjwy5qjbc4k1x8gflsi9c1207hlhixz";
libName = "gloo_dialogs";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Window" ];
}
];
};
"gloo-events 0.1.2" = rec {
crateName = "gloo-events";
version = "0.1.2";
edition = "2018";
sha256 = "1z4j14r2lim77s0jm1dpk306jyycmx2kirid33j0b0gdmgw0gcb8";
libName = "gloo_events";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Event" "EventTarget" "AddEventListenerOptions" ];
}
];
devDependencies = [
{
name = "web-sys";
packageId = "web-sys";
features = [ "HtmlElement" "Window" "Document" "Element" "MouseEvent" "ProgressEvent" ];
}
];
};
"gloo-events 0.2.0" = rec {
crateName = "gloo-events";
version = "0.2.0";
edition = "2021";
sha256 = "0h8yr4n1pvwp4rr87835w14kjdkycyn8gypmh2lmnf3wbys6zhi7";
libName = "gloo_events";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Event" "EventTarget" "AddEventListenerOptions" ];
}
];
devDependencies = [
{
name = "web-sys";
packageId = "web-sys";
features = [ "HtmlElement" "Window" "Document" "Element" "MouseEvent" "ProgressEvent" ];
}
];
};
"gloo-file 0.2.3" = rec {
crateName = "gloo-file";
version = "0.2.3";
edition = "2018";
sha256 = "1mxnd7l8gglv5yqhah6ny329hc0c98vn7h5xg0yv8f0aax75dmd8";
libName = "gloo_file";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-events";
packageId = "gloo-events 0.1.2";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Blob" "File" "FileList" "FileReader" "HtmlInputElement" "BlobPropertyBag" "FilePropertyBag" "DomException" "Url" ];
}
];
devDependencies = [
{
name = "web-sys";
packageId = "web-sys";
features = [ "Window" "Response" ];
}
];
features = {
"futures" = [ "futures-channel" ];
"futures-channel" = [ "dep:futures-channel" ];
"mime" = [ "dep:mime" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"gloo-file 0.3.0" = rec {
crateName = "gloo-file";
version = "0.3.0";
edition = "2021";
sha256 = "07xxainnnrg6l3ccw2bvqiz4m76ih557aklp5r5q5cizhrqksmlp";
libName = "gloo_file";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "futures-channel";
packageId = "futures-channel";
optional = true;
}
{
name = "gloo-events";
packageId = "gloo-events 0.2.0";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Blob" "File" "FileList" "FileReader" "HtmlInputElement" "BlobPropertyBag" "FilePropertyBag" "DomException" "Url" ];
}
];
devDependencies = [
{
name = "web-sys";
packageId = "web-sys";
features = [ "Window" "Response" ];
}
];
features = {
"futures" = [ "futures-channel" ];
"futures-channel" = [ "dep:futures-channel" ];
"mime" = [ "dep:mime" ];
};
resolvedDefaultFeatures = [ "default" "futures" "futures-channel" ];
};
"gloo-history 0.1.5" = rec {
crateName = "gloo-history";
version = "0.1.5";
edition = "2018";
sha256 = "0zsy3m5bgah8hyd95sc9b68afn1nhs7g43lkndip1m0fpy85swl5";
libName = "gloo_history";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-events";
packageId = "gloo-events 0.1.2";
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.1.7";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "serde-wasm-bindgen";
packageId = "serde-wasm-bindgen 0.5.0";
}
{
name = "serde_urlencoded";
packageId = "serde_urlencoded";
optional = true;
}
{
name = "thiserror";
packageId = "thiserror";
optional = true;
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "History" "Window" "Location" "Url" ];
}
];
features = {
"default" = [ "query" ];
"query" = [ "thiserror" "serde_urlencoded" ];
"serde_urlencoded" = [ "dep:serde_urlencoded" ];
"thiserror" = [ "dep:thiserror" ];
};
resolvedDefaultFeatures = [ "default" "query" "serde_urlencoded" "thiserror" ];
};
"gloo-history 0.2.2" = rec {
crateName = "gloo-history";
version = "0.2.2";
edition = "2021";
sha256 = "1mhphqywgbqj4agpi4zyc4hah12nys7085jymiz44d5swlml6gwh";
libName = "gloo_history";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "getrandom";
packageId = "getrandom";
target = { target, features }: ("wasm32" == target."arch" or null);
features = [ "js" ];
}
{
name = "gloo-events";
packageId = "gloo-events 0.2.0";
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.2.0";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "serde-wasm-bindgen";
packageId = "serde-wasm-bindgen 0.6.5";
}
{
name = "serde_urlencoded";
packageId = "serde_urlencoded";
optional = true;
}
{
name = "thiserror";
packageId = "thiserror";
optional = true;
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "History" "Window" "Location" "Url" ];
}
];
features = {
"default" = [ "query" ];
"query" = [ "thiserror" "serde_urlencoded" ];
"serde_urlencoded" = [ "dep:serde_urlencoded" ];
"thiserror" = [ "dep:thiserror" ];
};
resolvedDefaultFeatures = [ "default" "query" "serde_urlencoded" "thiserror" ];
};
"gloo-net 0.3.1" = rec {
crateName = "gloo-net";
version = "0.3.1";
edition = "2018";
sha256 = "0866ih3bff7dwxdfc813pk5nwz2ayyqwi5vbzlax7n4ygly4wsx6";
libName = "gloo_net";
authors = [
"Rust and WebAssembly Working Group"
"Muhammad Hamza <muhammadhamza1311@gmail.com>"
];
dependencies = [
{
name = "futures-channel";
packageId = "futures-channel";
optional = true;
}
{
name = "futures-core";
packageId = "futures-core";
optional = true;
}
{
name = "futures-sink";
packageId = "futures-sink";
optional = true;
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.1.7";
usesDefaultFeatures = false;
}
{
name = "http";
packageId = "http";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "pin-project";
packageId = "pin-project";
optional = true;
}
{
name = "serde";
packageId = "serde";
optional = true;
}
{
name = "serde_json";
packageId = "serde_json";
optional = true;
}
{
name = "thiserror";
packageId = "thiserror";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "wasm-bindgen-futures";
packageId = "wasm-bindgen-futures";
}
{
name = "web-sys";
packageId = "web-sys";
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
features = {
"default" = [ "json" "websocket" "http" "eventsource" ];
"eventsource" = [ "futures-channel" "futures-core" "pin-project" "web-sys/Event" "web-sys/EventTarget" "web-sys/EventSource" "web-sys/MessageEvent" ];
"futures-channel" = [ "dep:futures-channel" ];
"futures-core" = [ "dep:futures-core" ];
"futures-sink" = [ "dep:futures-sink" ];
"http" = [ "web-sys/Headers" "web-sys/UrlSearchParams" "web-sys/Url" "web-sys/Request" "web-sys/RequestInit" "web-sys/RequestMode" "web-sys/Response" "web-sys/ResponseInit" "web-sys/ResponseType" "web-sys/Window" "web-sys/RequestCache" "web-sys/RequestCredentials" "web-sys/ObserverCallback" "web-sys/RequestRedirect" "web-sys/ReferrerPolicy" "web-sys/AbortSignal" "web-sys/ReadableStream" "web-sys/Blob" "web-sys/FormData" "web-sys/WorkerGlobalScope" ];
"json" = [ "serde" "serde_json" "gloo-utils/serde" ];
"pin-project" = [ "dep:pin-project" ];
"serde" = [ "dep:serde" ];
"serde_json" = [ "dep:serde_json" ];
"websocket" = [ "web-sys/WebSocket" "web-sys/AddEventListenerOptions" "web-sys/ErrorEvent" "web-sys/FileReader" "web-sys/MessageEvent" "web-sys/ProgressEvent" "web-sys/CloseEvent" "web-sys/CloseEventInit" "web-sys/BinaryType" "web-sys/Blob" "futures-channel" "futures-core" "futures-sink" "pin-project" ];
};
resolvedDefaultFeatures = [ "default" "eventsource" "futures-channel" "futures-core" "futures-sink" "http" "json" "pin-project" "serde" "serde_json" "websocket" ];
};
"gloo-net 0.4.0" = rec {
crateName = "gloo-net";
version = "0.4.0";
edition = "2021";
sha256 = "1i3x5fvp07valrxjsa25ycq1b2p3pxqaqmw6kzx35ip2i8lfijca";
libName = "gloo_net";
authors = [
"Rust and WebAssembly Working Group"
"Muhammad Hamza <muhammadhamza1311@gmail.com>"
];
dependencies = [
{
name = "futures-channel";
packageId = "futures-channel";
optional = true;
}
{
name = "futures-core";
packageId = "futures-core";
optional = true;
}
{
name = "futures-sink";
packageId = "futures-sink";
optional = true;
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.2.0";
usesDefaultFeatures = false;
}
{
name = "http";
packageId = "http";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "pin-project";
packageId = "pin-project";
optional = true;
}
{
name = "serde";
packageId = "serde";
optional = true;
}
{
name = "serde_json";
packageId = "serde_json";
optional = true;
}
{
name = "thiserror";
packageId = "thiserror";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "wasm-bindgen-futures";
packageId = "wasm-bindgen-futures";
}
{
name = "web-sys";
packageId = "web-sys";
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
features = {
"default" = [ "json" "websocket" "http" "eventsource" ];
"eventsource" = [ "futures-channel" "futures-core" "pin-project" "web-sys/Event" "web-sys/EventTarget" "web-sys/EventSource" "web-sys/MessageEvent" ];
"futures-channel" = [ "dep:futures-channel" ];
"futures-core" = [ "dep:futures-core" ];
"futures-sink" = [ "dep:futures-sink" ];
"http" = [ "web-sys/Headers" "web-sys/UrlSearchParams" "web-sys/Url" "web-sys/Request" "web-sys/RequestInit" "web-sys/RequestMode" "web-sys/Response" "web-sys/ResponseInit" "web-sys/ResponseType" "web-sys/Window" "web-sys/RequestCache" "web-sys/RequestCredentials" "web-sys/ObserverCallback" "web-sys/RequestRedirect" "web-sys/ReferrerPolicy" "web-sys/AbortSignal" "web-sys/ReadableStream" "web-sys/Blob" "web-sys/FormData" "web-sys/WorkerGlobalScope" ];
"json" = [ "serde" "serde_json" "gloo-utils/serde" ];
"pin-project" = [ "dep:pin-project" ];
"serde" = [ "dep:serde" ];
"serde_json" = [ "dep:serde_json" ];
"websocket" = [ "web-sys/WebSocket" "web-sys/AddEventListenerOptions" "web-sys/ErrorEvent" "web-sys/FileReader" "web-sys/MessageEvent" "web-sys/ProgressEvent" "web-sys/CloseEvent" "web-sys/CloseEventInit" "web-sys/BinaryType" "web-sys/Blob" "futures-channel" "futures-core" "futures-sink" "pin-project" ];
};
resolvedDefaultFeatures = [ "default" "eventsource" "futures-channel" "futures-core" "futures-sink" "http" "json" "pin-project" "serde" "serde_json" "websocket" ];
};
"gloo-render 0.1.1" = rec {
crateName = "gloo-render";
version = "0.1.1";
edition = "2018";
sha256 = "0r3pxj22l489ldakj6521a0f0n1r9v8xrai3k12d9kv7xxm31n9g";
libName = "gloo_render";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Window" ];
}
];
};
"gloo-render 0.2.0" = rec {
crateName = "gloo-render";
version = "0.2.0";
edition = "2021";
sha256 = "0cwqcka7l5p29idq174c6mi5cgal0rywngdck26qwfki8ikqn02n";
libName = "gloo_render";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Window" ];
}
];
};
"gloo-storage 0.2.2" = rec {
crateName = "gloo-storage";
version = "0.2.2";
edition = "2018";
sha256 = "1074j754a6c21sbmqws5qwaha0a13fikv17ps476zzfvyl5vcsjx";
libName = "gloo_storage";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-utils";
packageId = "gloo-utils 0.1.7";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
}
{
name = "serde_json";
packageId = "serde_json";
}
{
name = "thiserror";
packageId = "thiserror";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Storage" "Window" ];
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
};
"gloo-storage 0.3.0" = rec {
crateName = "gloo-storage";
version = "0.3.0";
edition = "2021";
sha256 = "0yi7740iza6nyg6n8sxzzhy6yg6xpbxhig7r2bwqlxcjihg07j7v";
libName = "gloo_storage";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "gloo-utils";
packageId = "gloo-utils 0.2.0";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
}
{
name = "serde_json";
packageId = "serde_json";
}
{
name = "thiserror";
packageId = "thiserror";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Storage" "Window" ];
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
};
"gloo-timers 0.2.6" = rec {
crateName = "gloo-timers";
version = "0.2.6";
edition = "2018";
sha256 = "0p2yqcxw0q9kclhwpgshq1r4ijns07nmmagll3lvrgl7pdk5m6cv";
libName = "gloo_timers";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
features = {
"futures" = [ "futures-core" "futures-channel" ];
"futures-channel" = [ "dep:futures-channel" ];
"futures-core" = [ "dep:futures-core" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"gloo-timers 0.3.0" = rec {
crateName = "gloo-timers";
version = "0.3.0";
edition = "2021";
sha256 = "1519157n7xppkk6pdw5w52vy1llzn5iljkqd7q1h5609jv7l7cdv";
libName = "gloo_timers";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "futures-channel";
packageId = "futures-channel";
optional = true;
}
{
name = "futures-core";
packageId = "futures-core";
optional = true;
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
features = {
"futures" = [ "futures-core" "futures-channel" ];
"futures-channel" = [ "dep:futures-channel" ];
"futures-core" = [ "dep:futures-core" ];
};
resolvedDefaultFeatures = [ "default" "futures" "futures-channel" "futures-core" ];
};
"gloo-utils 0.1.7" = rec {
crateName = "gloo-utils";
version = "0.1.7";
edition = "2018";
sha256 = "13m59g36spynspvhx0xsaahbkdshn1v03gcjf87s7cvc443wnzq3";
libName = "gloo_utils";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
optional = true;
}
{
name = "serde_json";
packageId = "serde_json";
optional = true;
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Document" "History" "HtmlElement" "Location" "Window" "HtmlHeadElement" "Element" ];
}
];
features = {
"default" = [ "serde" ];
"serde" = [ "dep:serde" "dep:serde_json" ];
};
resolvedDefaultFeatures = [ "default" "serde" ];
};
"gloo-utils 0.2.0" = rec {
crateName = "gloo-utils";
version = "0.2.0";
edition = "2021";
sha256 = "1am31cd6889shb7158bg9zzsjcpvyzxrhfhxgia8rc8k84smam8b";
libName = "gloo_utils";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
optional = true;
}
{
name = "serde_json";
packageId = "serde_json";
optional = true;
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Document" "History" "HtmlElement" "Location" "Window" "HtmlHeadElement" "Element" ];
}
];
features = {
"default" = [ "serde" ];
"serde" = [ "dep:serde" "dep:serde_json" ];
};
resolvedDefaultFeatures = [ "default" "serde" ];
};
"gloo-worker 0.2.1" = rec {
crateName = "gloo-worker";
version = "0.2.1";
edition = "2018";
sha256 = "0sjiw13069i7bpiyb03w3kyddn3q07fmj4vd60l1l1kqva21aiqk";
libName = "gloo_worker";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "anymap2";
packageId = "anymap2";
}
{
name = "bincode";
packageId = "bincode";
}
{
name = "gloo-console";
packageId = "gloo-console 0.2.3";
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.1.7";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "wasm-bindgen-futures";
packageId = "wasm-bindgen-futures";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Blob" "BlobPropertyBag" "DedicatedWorkerGlobalScope" "MessageEvent" "Url" "Worker" "WorkerOptions" ];
}
];
features = { };
resolvedDefaultFeatures = [ "default" ];
};
"gloo-worker 0.4.0" = rec {
crateName = "gloo-worker";
version = "0.4.0";
edition = "2021";
sha256 = "00744js1jcwdndzf22c8gzml7aqql4ymjfpsd2i1vrbxv0ymsjbn";
libName = "gloo_worker";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "bincode";
packageId = "bincode";
}
{
name = "futures";
packageId = "futures";
usesDefaultFeatures = false;
features = [ "std" ];
}
{
name = "gloo-utils";
packageId = "gloo-utils 0.2.0";
}
{
name = "gloo-worker-macros";
packageId = "gloo-worker-macros";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "pinned";
packageId = "pinned";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "thiserror";
packageId = "thiserror";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "wasm-bindgen-futures";
packageId = "wasm-bindgen-futures";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Blob" "BlobPropertyBag" "DedicatedWorkerGlobalScope" "MessageEvent" "Url" "Worker" "WorkerOptions" ];
}
];
features = { };
resolvedDefaultFeatures = [ "default" "futures" ];
};
"gloo-worker-macros" = rec {
crateName = "gloo-worker-macros";
version = "0.1.0";
edition = "2021";
sha256 = "1rs0f6b34mkhlmpmhqi747c34000sd5mxma92yacjyw5sicalv4m";
procMacro = true;
libName = "gloo_worker_macros";
authors = [
"Rust and WebAssembly Working Group"
];
dependencies = [
{
name = "proc-macro-crate";
packageId = "proc-macro-crate";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "full" ];
}
];
};
"hashbrown 0.12.3" = rec {
crateName = "hashbrown";
version = "0.12.3";
edition = "2021";
sha256 = "1268ka4750pyg2pbgsr43f0289l5zah4arir2k4igx5a8c6fg7la";
authors = [
"Amanieu d'Antras <amanieu@gmail.com>"
];
features = {
"ahash" = [ "dep:ahash" ];
"ahash-compile-time-rng" = [ "ahash/compile-time-rng" ];
"alloc" = [ "dep:alloc" ];
"bumpalo" = [ "dep:bumpalo" ];
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "ahash" "inline-more" ];
"rayon" = [ "dep:rayon" ];
"rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "raw" ];
};
"hashbrown 0.14.5" = rec {
crateName = "hashbrown";
version = "0.14.5";
edition = "2021";
sha256 = "1wa1vy1xs3mp11bn3z9dv0jricgr6a2j0zkf1g19yz3vw4il89z5";
authors = [
"Amanieu d'Antras <amanieu@gmail.com>"
];
features = {
"ahash" = [ "dep:ahash" ];
"alloc" = [ "dep:alloc" ];
"allocator-api2" = [ "dep:allocator-api2" ];
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "ahash" "inline-more" "allocator-api2" ];
"equivalent" = [ "dep:equivalent" ];
"nightly" = [ "allocator-api2?/nightly" "bumpalo/allocator_api" ];
"rayon" = [ "dep:rayon" ];
"rkyv" = [ "dep:rkyv" ];
"rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "inline-more" "raw" ];
};
"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 = "0.2.12";
edition = "2018";
sha256 = "1w81s4bcbmcj9bjp7mllm8jlz6b31wzvirz8bgpzbqkpwmbvn730";
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";
}
];
};
"implicit-clone" = rec {
crateName = "implicit-clone";
version = "0.4.9";
edition = "2021";
sha256 = "113agd9bqk7c0s2rqgarzkfp3wgbzl3q59mp6sv72nkv3iwsmagq";
libName = "implicit_clone";
authors = [
"Cecile Tonglet <cecile.tonglet@cecton.com>"
];
dependencies = [
{
name = "implicit-clone-derive";
packageId = "implicit-clone-derive";
optional = true;
}
{
name = "indexmap";
packageId = "indexmap 2.2.6";
optional = true;
}
];
features = {
"default" = [ "derive" ];
"derive" = [ "implicit-clone-derive" ];
"implicit-clone-derive" = [ "dep:implicit-clone-derive" ];
"indexmap" = [ "dep:indexmap" ];
"map" = [ "indexmap" ];
"serde" = [ "dep:serde" "indexmap/serde" ];
};
resolvedDefaultFeatures = [ "default" "derive" "implicit-clone-derive" "indexmap" "map" ];
};
"implicit-clone-derive" = rec {
crateName = "implicit-clone-derive";
version = "0.1.1";
edition = "2021";
sha256 = "0fsfj6n56mg92f3899gcdck1dqlsmgyd52k0n2xhhj53p5g6h4ck";
procMacro = true;
libName = "implicit_clone_derive";
authors = [
"Cecile Tonglet <cecile.tonglet@cecton.com>"
];
dependencies = [
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "full" ];
}
];
};
"indexmap 1.9.3" = rec {
crateName = "indexmap";
version = "1.9.3";
edition = "2021";
sha256 = "16dxmy7yvk51wvnih3a3im6fp5lmx0wx76i03n06wyak6cwhw1xx";
dependencies = [
{
name = "hashbrown";
packageId = "hashbrown 0.12.3";
usesDefaultFeatures = false;
features = [ "raw" ];
}
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"arbitrary" = [ "dep:arbitrary" ];
"quickcheck" = [ "dep:quickcheck" ];
"rayon" = [ "dep:rayon" ];
"rustc-rayon" = [ "dep:rustc-rayon" ];
"serde" = [ "dep:serde" ];
"serde-1" = [ "serde" ];
};
};
"indexmap 2.2.6" = rec {
crateName = "indexmap";
version = "2.2.6";
edition = "2021";
sha256 = "09hgwi2ig0wyj5rjziia76zmhgfj95k0jb4ic3iiawm4vlavg3qn";
dependencies = [
{
name = "equivalent";
packageId = "equivalent";
usesDefaultFeatures = false;
}
{
name = "hashbrown";
packageId = "hashbrown 0.14.5";
usesDefaultFeatures = false;
features = [ "raw" ];
}
];
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" ];
};
"itertools" = rec {
crateName = "itertools";
version = "0.12.1";
edition = "2018";
sha256 = "0s95jbb3ndj1lvfxyq5wanc0fm0r6hg6q4ngb92qlfdxvci10ads";
authors = [
"bluss"
];
dependencies = [
{
name = "either";
packageId = "either";
usesDefaultFeatures = false;
}
];
features = {
"default" = [ "use_std" ];
"use_std" = [ "use_alloc" "either/use_std" ];
};
resolvedDefaultFeatures = [ "default" "use_alloc" "use_std" ];
};
"itoa" = rec {
crateName = "itoa";
version = "1.0.11";
edition = "2018";
sha256 = "0nv9cqjwzr3q58qz84dcz63ggc54yhf1yqar1m858m1kfd4g3wa9";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
features = {
"no-panic" = [ "dep:no-panic" ];
};
};
"js-sys" = rec {
crateName = "js-sys";
version = "0.3.69";
edition = "2018";
sha256 = "0v99rz97asnzapb0jsc3jjhvxpfxr7h7qd97yqyrf9i7viimbh99";
libName = "js_sys";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
};
"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" ];
};
};
"lexical-core" = rec {
crateName = "lexical-core";
version = "0.8.5";
edition = "2018";
sha256 = "0ihf0x3vrk25fq3bv9q35m0xax0wmvwkh0j0pjm2yk4ddvh5vpic";
libName = "lexical_core";
authors = [
"Alex Huszagh <ahuszagh@gmail.com>"
];
dependencies = [
{
name = "lexical-parse-float";
packageId = "lexical-parse-float";
optional = true;
usesDefaultFeatures = false;
}
{
name = "lexical-parse-integer";
packageId = "lexical-parse-integer";
optional = true;
usesDefaultFeatures = false;
}
{
name = "lexical-util";
packageId = "lexical-util";
usesDefaultFeatures = false;
}
{
name = "lexical-write-float";
packageId = "lexical-write-float";
optional = true;
usesDefaultFeatures = false;
}
{
name = "lexical-write-integer";
packageId = "lexical-write-integer";
optional = true;
usesDefaultFeatures = false;
}
];
features = {
"compact" = [ "lexical-write-integer/compact" "lexical-write-float/compact" "lexical-parse-integer/compact" "lexical-parse-float/compact" ];
"default" = [ "std" "write-integers" "write-floats" "parse-integers" "parse-floats" ];
"f128" = [ "lexical-util/f128" "lexical-parse-float/f128" "lexical-write-float/f128" ];
"f16" = [ "lexical-util/f16" "lexical-parse-float/f16" "lexical-write-float/f16" ];
"format" = [ "lexical-util/format" "lexical-parse-integer/format" "lexical-parse-float/format" "lexical-write-integer/format" "lexical-write-float/format" ];
"lexical-parse-float" = [ "dep:lexical-parse-float" ];
"lexical-parse-integer" = [ "dep:lexical-parse-integer" ];
"lexical-write-float" = [ "dep:lexical-write-float" ];
"lexical-write-integer" = [ "dep:lexical-write-integer" ];
"lint" = [ "lexical-util/lint" "lexical-write-integer/lint" "lexical-write-float/lint" "lexical-parse-integer/lint" "lexical-parse-float/lint" ];
"nightly" = [ "lexical-write-integer/nightly" "lexical-write-float/nightly" "lexical-parse-integer/nightly" "lexical-parse-float/nightly" ];
"parse-floats" = [ "lexical-parse-float" "parse" "floats" ];
"parse-integers" = [ "lexical-parse-integer" "parse" "integers" ];
"power-of-two" = [ "lexical-util/power-of-two" "lexical-write-integer/power-of-two" "lexical-write-float/power-of-two" "lexical-parse-integer/power-of-two" "lexical-parse-float/power-of-two" ];
"radix" = [ "lexical-util/radix" "lexical-write-integer/radix" "lexical-write-float/radix" "lexical-parse-integer/radix" "lexical-parse-float/radix" ];
"safe" = [ "lexical-write-integer/safe" "lexical-write-float/safe" "lexical-parse-integer/safe" "lexical-parse-float/safe" ];
"std" = [ "lexical-util/std" "lexical-write-integer/std" "lexical-write-float/std" "lexical-parse-integer/std" "lexical-parse-float/std" ];
"write-floats" = [ "lexical-write-float" "write" "floats" ];
"write-integers" = [ "lexical-write-integer" "write" "integers" ];
};
resolvedDefaultFeatures = [ "default" "floats" "format" "integers" "lexical-parse-float" "lexical-parse-integer" "lexical-write-float" "lexical-write-integer" "parse" "parse-floats" "parse-integers" "std" "write" "write-floats" "write-integers" ];
};
"lexical-parse-float" = rec {
crateName = "lexical-parse-float";
version = "0.8.5";
edition = "2018";
sha256 = "0py0gp8hlzcrlvjqmqlpl2v1as65iiqxq2xsabxvhc01pmg3lfv8";
libName = "lexical_parse_float";
authors = [
"Alex Huszagh <ahuszagh@gmail.com>"
];
dependencies = [
{
name = "lexical-parse-integer";
packageId = "lexical-parse-integer";
usesDefaultFeatures = false;
}
{
name = "lexical-util";
packageId = "lexical-util";
usesDefaultFeatures = false;
features = [ "parse-floats" ];
}
{
name = "static_assertions";
packageId = "static_assertions";
}
];
features = {
"compact" = [ "lexical-util/compact" "lexical-parse-integer/compact" ];
"default" = [ "std" ];
"f128" = [ "lexical-util/f128" ];
"f16" = [ "lexical-util/f16" ];
"format" = [ "lexical-util/format" "lexical-parse-integer/format" ];
"lint" = [ "lexical-util/lint" "lexical-parse-integer/lint" ];
"nightly" = [ "lexical-parse-integer/nightly" ];
"power-of-two" = [ "lexical-util/power-of-two" "lexical-parse-integer/power-of-two" ];
"radix" = [ "lexical-util/radix" "lexical-parse-integer/radix" "power-of-two" ];
"safe" = [ "lexical-parse-integer/safe" ];
"std" = [ "lexical-util/std" "lexical-parse-integer/std" ];
};
resolvedDefaultFeatures = [ "format" "std" ];
};
"lexical-parse-integer" = rec {
crateName = "lexical-parse-integer";
version = "0.8.6";
edition = "2018";
sha256 = "1sayji3mpvb2xsjq56qcq3whfz8px9a6fxk5v7v15hyhbr4982bd";
libName = "lexical_parse_integer";
authors = [
"Alex Huszagh <ahuszagh@gmail.com>"
];
dependencies = [
{
name = "lexical-util";
packageId = "lexical-util";
usesDefaultFeatures = false;
features = [ "parse-integers" ];
}
{
name = "static_assertions";
packageId = "static_assertions";
}
];
features = {
"compact" = [ "lexical-util/compact" ];
"default" = [ "std" ];
"format" = [ "lexical-util/format" ];
"lint" = [ "lexical-util/lint" ];
"power-of-two" = [ "lexical-util/power-of-two" ];
"radix" = [ "lexical-util/radix" "power-of-two" ];
"std" = [ "lexical-util/std" ];
};
resolvedDefaultFeatures = [ "format" "std" ];
};
"lexical-util" = rec {
crateName = "lexical-util";
version = "0.8.5";
edition = "2018";
sha256 = "1z73qkv7yxhsbc4aiginn1dqmsj8jarkrdlyxc88g2gz2vzvjmaj";
libName = "lexical_util";
authors = [
"Alex Huszagh <ahuszagh@gmail.com>"
];
dependencies = [
{
name = "static_assertions";
packageId = "static_assertions";
}
];
features = {
"default" = [ "std" ];
"f128" = [ "floats" ];
"f16" = [ "floats" ];
"parse-floats" = [ "parse" "floats" ];
"parse-integers" = [ "parse" "integers" ];
"radix" = [ "power-of-two" ];
"write-floats" = [ "write" "floats" ];
"write-integers" = [ "write" "integers" ];
};
resolvedDefaultFeatures = [ "floats" "format" "integers" "parse" "parse-floats" "parse-integers" "std" "write" "write-floats" "write-integers" ];
};
"lexical-write-float" = rec {
crateName = "lexical-write-float";
version = "0.8.5";
edition = "2018";
sha256 = "0qk825l0csvnksh9sywb51996cjc2bylq6rxjaiha7sqqjhvmjmc";
libName = "lexical_write_float";
authors = [
"Alex Huszagh <ahuszagh@gmail.com>"
];
dependencies = [
{
name = "lexical-util";
packageId = "lexical-util";
usesDefaultFeatures = false;
features = [ "write-floats" ];
}
{
name = "lexical-write-integer";
packageId = "lexical-write-integer";
usesDefaultFeatures = false;
}
{
name = "static_assertions";
packageId = "static_assertions";
}
];
features = {
"compact" = [ "lexical-util/compact" "lexical-write-integer/compact" ];
"default" = [ "std" ];
"f128" = [ "lexical-util/f128" ];
"f16" = [ "lexical-util/f16" ];
"format" = [ "lexical-util/format" ];
"lint" = [ "lexical-util/lint" "lexical-write-integer/lint" ];
"nightly" = [ "lexical-write-integer/nightly" ];
"power-of-two" = [ "lexical-util/power-of-two" "lexical-write-integer/power-of-two" ];
"radix" = [ "lexical-util/radix" "lexical-write-integer/radix" "power-of-two" ];
"safe" = [ "lexical-write-integer/safe" ];
"std" = [ "lexical-util/std" "lexical-write-integer/std" ];
};
resolvedDefaultFeatures = [ "format" "std" ];
};
"lexical-write-integer" = rec {
crateName = "lexical-write-integer";
version = "0.8.5";
edition = "2018";
sha256 = "0ii4hmvqrg6pd4j9y1pkhkp0nw2wpivjzmljh6v6ca22yk8z7dp1";
libName = "lexical_write_integer";
authors = [
"Alex Huszagh <ahuszagh@gmail.com>"
];
dependencies = [
{
name = "lexical-util";
packageId = "lexical-util";
usesDefaultFeatures = false;
features = [ "write-integers" ];
}
{
name = "static_assertions";
packageId = "static_assertions";
}
];
features = {
"compact" = [ "lexical-util/compact" ];
"default" = [ "std" ];
"format" = [ "lexical-util/format" ];
"lint" = [ "lexical-util/lint" ];
"power-of-two" = [ "lexical-util/power-of-two" ];
"radix" = [ "lexical-util/radix" "power-of-two" ];
"std" = [ "lexical-util/std" ];
};
resolvedDefaultFeatures = [ "format" "std" ];
};
"libc" = rec {
crateName = "libc";
version = "0.2.155";
edition = "2015";
sha256 = "0z44c53z54znna8n322k5iwg80arxxpdzjj5260pxxzc9a58icwp";
authors = [
"The Rust Project Developers"
];
features = {
"default" = [ "std" ];
"rustc-dep-of-std" = [ "align" "rustc-std-workspace-core" ];
"rustc-std-workspace-core" = [ "dep:rustc-std-workspace-core" ];
"use_std" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"libredox" = rec {
crateName = "libredox";
version = "0.0.1";
edition = "2021";
sha256 = "1s2fh4ikpp9xl0lsl01pi0n8pw1q9s3ld452vd8qh1v63v537j45";
authors = [
"4lDO2 <4lDO2@protonmail.com>"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags 2.4.1";
}
{
name = "libc";
packageId = "libc";
}
{
name = "redox_syscall";
packageId = "redox_syscall";
}
];
features = {
"default" = [ "scheme" "call" ];
"scheme" = [ "call" ];
};
resolvedDefaultFeatures = [ "call" ];
};
"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" ];
};
};
"md-5" = rec {
crateName = "md-5";
version = "0.10.6";
edition = "2018";
sha256 = "1kvq5rnpm4fzwmyv5nmnxygdhhb2369888a06gdc9pxyrzh7x7nq";
libName = "md5";
authors = [
"RustCrypto Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "digest";
packageId = "digest";
}
];
devDependencies = [
{
name = "digest";
packageId = "digest";
features = [ "dev" ];
}
];
features = {
"asm" = [ "md5-asm" ];
"default" = [ "std" ];
"md5-asm" = [ "dep:md5-asm" ];
"oid" = [ "digest/oid" ];
"std" = [ "digest/std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"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" ];
};
"memoffset" = rec {
crateName = "memoffset";
version = "0.9.0";
edition = "2015";
sha256 = "0v20ihhdzkfw1jx00a7zjpk2dcp5qjq6lz302nyqamd9c4f4nqss";
authors = [
"Gilad Naaman <gilad.naaman@gmail.com>"
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = { };
resolvedDefaultFeatures = [ "default" ];
};
"miniz_oxide" = rec {
crateName = "miniz_oxide";
version = "0.7.4";
edition = "2018";
sha256 = "024wv14aa75cvik7005s5y2nfc8zfidddbd7g55g7sjgnzfl18mq";
authors = [
"Frommi <daniil.liferenko@gmail.com>"
"oyvindln <oyvindln@users.noreply.github.com>"
];
dependencies = [
{
name = "adler";
packageId = "adler";
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" "adler/rustc-dep-of-std" ];
"simd" = [ "simd-adler32" ];
"simd-adler32" = [ "dep:simd-adler32" ];
};
};
"nohash-hasher" = rec {
crateName = "nohash-hasher";
version = "0.2.0";
edition = "2018";
sha256 = "0lf4p6k01w4wm7zn4grnihzj8s7zd5qczjmzng7wviwxawih5x9b";
libName = "nohash_hasher";
authors = [
"Parity Technologies <admin@parity.io>"
];
features = {
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"nom8" = rec {
crateName = "nom8";
version = "0.2.0";
edition = "2018";
sha256 = "1y6jzabxyrl05vxnh63r66ac2fh0symg5fnynxm4ii3zkif580df";
dependencies = [
{
name = "memchr";
packageId = "memchr";
usesDefaultFeatures = false;
}
];
features = {
"default" = [ "std" ];
"std" = [ "alloc" "memchr/std" ];
"unstable-doc" = [ "alloc" "std" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "std" ];
};
"num_cpus" = rec {
crateName = "num_cpus";
version = "1.16.0";
edition = "2015";
sha256 = "0hra6ihpnh06dvfvz9ipscys0xfqa9ca9hzp384d5m02ssvgqqa1";
authors = [
"Sean McArthur <sean@seanmonstar.com>"
];
dependencies = [
{
name = "hermit-abi";
packageId = "hermit-abi";
target = { target, features }: ("hermit" == target."os" or null);
}
{
name = "libc";
packageId = "libc";
target = { target, features }: (!(target."windows" or false));
}
];
};
"object" = rec {
crateName = "object";
version = "0.36.2";
edition = "2018";
sha256 = "03hpcgwcsm5cfpvcmk8x0hbkvxlpw3c2pq8afrgiifx7val3y81z";
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.19.0";
edition = "2021";
sha256 = "14kvw7px5z96dk4dwdm1r9cqhhy2cyj1l5n5b29mynbb8yr15nrz";
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" ];
};
"os_str_bytes" = rec {
crateName = "os_str_bytes";
version = "6.6.1";
edition = "2021";
sha256 = "1885z1x4sm86v5p41ggrl49m58rbzzhd1kj72x46yy53p62msdg2";
authors = [
"dylni"
];
dependencies = [
{
name = "memchr";
packageId = "memchr";
optional = true;
}
];
features = {
"checked_conversions" = [ "conversions" ];
"default" = [ "memchr" "raw_os_str" ];
"memchr" = [ "dep:memchr" ];
"print_bytes" = [ "dep:print_bytes" ];
"uniquote" = [ "dep:uniquote" ];
};
resolvedDefaultFeatures = [ "conversions" "default" "memchr" "raw_os_str" ];
};
"path-clean" = rec {
crateName = "path-clean";
version = "0.1.0";
edition = "2015";
sha256 = "1pcgqxw0mgg3ha5hi5xkjhyjf488bw5rw1g3qlr9awbq4szh3fpc";
libName = "path_clean";
authors = [
"Dan Reeves <hey@danreev.es>"
];
};
"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" "std" ];
};
"pin-project" = rec {
crateName = "pin-project";
version = "1.1.5";
edition = "2021";
sha256 = "1cxl146x0q7lawp0m1826wsgj8mmmfs6ja8q7m6f7ff5j6vl7gxn";
libName = "pin_project";
dependencies = [
{
name = "pin-project-internal";
packageId = "pin-project-internal";
}
];
};
"pin-project-internal" = rec {
crateName = "pin-project-internal";
version = "1.1.5";
edition = "2021";
sha256 = "0r9r4ivwiyqf45sv6b30l1dx282lxaax2f6gl84jwa3q590s8f1g";
procMacro = true;
libName = "pin_project_internal";
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "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>"
];
};
"pinned" = rec {
crateName = "pinned";
version = "0.1.0";
edition = "2021";
sha256 = "0nsrxs49dhjjz1gvg0pvac2rcidnwwd8l99y7vhwym2yv5xh4ad8";
authors = [
"Kaede Hoshiakwa <futursolo@icloud.com>"
];
dependencies = [
{
name = "futures";
packageId = "futures";
usesDefaultFeatures = false;
features = [ "std" "async-await" ];
}
{
name = "rustversion";
packageId = "rustversion";
}
{
name = "thiserror";
packageId = "thiserror";
}
];
};
"prettyplease" = rec {
crateName = "prettyplease";
version = "0.2.20";
edition = "2021";
links = "prettyplease02";
sha256 = "0pk4vm9fir1p0bl11p9fkgl9r1x9vi4avv8l7flb1wx2i1a364jz";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
usesDefaultFeatures = false;
}
{
name = "syn";
packageId = "syn 2.0.68";
usesDefaultFeatures = false;
features = [ "full" ];
}
];
devDependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
usesDefaultFeatures = false;
}
{
name = "syn";
packageId = "syn 2.0.68";
usesDefaultFeatures = false;
features = [ "parsing" ];
}
];
features = {
"verbatim" = [ "syn/parsing" ];
};
};
"proc-macro-crate" = rec {
crateName = "proc-macro-crate";
version = "1.3.1";
edition = "2021";
sha256 = "069r1k56bvgk0f58dm5swlssfcp79im230affwk6d9ck20g04k3z";
libName = "proc_macro_crate";
authors = [
"Bastian Köcher <git@kchr.de>"
];
dependencies = [
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "toml_edit";
packageId = "toml_edit 0.19.15";
}
];
};
"proc-macro-error" = rec {
crateName = "proc-macro-error";
version = "1.0.4";
edition = "2018";
sha256 = "1373bhxaf0pagd8zkyd03kkx6bchzf6g0dkwrwzsnal9z47lj9fs";
libName = "proc_macro_error";
authors = [
"CreepySkeleton <creepy-skeleton@yandex.ru>"
];
dependencies = [
{
name = "proc-macro-error-attr";
packageId = "proc-macro-error-attr";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
optional = true;
usesDefaultFeatures = false;
}
];
buildDependencies = [
{
name = "version_check";
packageId = "version_check";
}
];
features = {
"default" = [ "syn-error" ];
"syn" = [ "dep:syn" ];
"syn-error" = [ "syn" ];
};
resolvedDefaultFeatures = [ "default" "syn" "syn-error" ];
};
"proc-macro-error-attr" = rec {
crateName = "proc-macro-error-attr";
version = "1.0.4";
edition = "2018";
sha256 = "0sgq6m5jfmasmwwy8x4mjygx5l7kp8s4j60bv25ckv2j1qc41gm1";
procMacro = true;
libName = "proc_macro_error_attr";
authors = [
"CreepySkeleton <creepy-skeleton@yandex.ru>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
];
buildDependencies = [
{
name = "version_check";
packageId = "version_check";
}
];
};
"proc-macro2" = rec {
crateName = "proc-macro2";
version = "1.0.86";
edition = "2021";
sha256 = "0xrv22p8lqlfdf1w0pj4si8n2ws4aw0kilmziwf0vpv5ys6rwway";
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" ];
};
"prokio" = rec {
crateName = "prokio";
version = "0.1.0";
edition = "2021";
sha256 = "127l9k5076xwlaf0b64hw3l14wqjss2krldb2ddgm4apdq85xd83";
authors = [
"Kaede Hoshikawa <futursolo@icloud.com>"
];
dependencies = [
{
name = "futures";
packageId = "futures";
usesDefaultFeatures = false;
features = [ "std" "async-await" ];
}
{
name = "gloo";
packageId = "gloo 0.8.1";
target = { target, features }: ("wasm32" == target."arch" or null);
}
{
name = "num_cpus";
packageId = "num_cpus";
target = { target, features }: (!("wasm32" == target."arch" or null));
}
{
name = "once_cell";
packageId = "once_cell";
target = { target, features }: (!("wasm32" == target."arch" or null));
}
{
name = "pin-project";
packageId = "pin-project";
}
{
name = "pinned";
packageId = "pinned";
}
{
name = "tokio";
packageId = "tokio";
target = { target, features }: (!("wasm32" == target."arch" or null));
features = [ "rt" "time" ];
}
{
name = "tokio-stream";
packageId = "tokio-stream";
target = { target, features }: (!("wasm32" == target."arch" or null));
features = [ "time" ];
}
{
name = "wasm-bindgen-futures";
packageId = "wasm-bindgen-futures";
target = { target, features }: ("wasm32" == target."arch" or null);
}
];
devDependencies = [
{
name = "tokio";
packageId = "tokio";
target = { target, features }: (!("wasm32" == target."arch" or null));
features = [ "full" ];
}
];
features = { };
resolvedDefaultFeatures = [ "default" ];
};
"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" ];
};
"redox_syscall" = rec {
crateName = "redox_syscall";
version = "0.4.1";
edition = "2018";
sha256 = "1aiifyz5dnybfvkk4cdab9p2kmphag1yad6iknc7aszlxxldf8j7";
libName = "syscall";
authors = [
"Jeremy Soller <jackpot51@gmail.com>"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags 1.3.2";
}
];
features = {
"core" = [ "dep:core" ];
"rustc-dep-of-std" = [ "core" "bitflags/rustc-dep-of-std" ];
};
};
"redox_users" = rec {
crateName = "redox_users";
version = "0.4.4";
edition = "2021";
sha256 = "1d1c7dhbb62sh8jrq9dhvqcyxqsh3wg8qknsi94iwq3r0wh7k151";
authors = [
"Jose Narvaez <goyox86@gmail.com>"
"Wesley Hershberger <mggmugginsmc@gmail.com>"
];
dependencies = [
{
name = "getrandom";
packageId = "getrandom";
features = [ "std" ];
}
{
name = "libredox";
packageId = "libredox";
usesDefaultFeatures = false;
features = [ "call" ];
}
{
name = "thiserror";
packageId = "thiserror";
}
];
features = {
"auth" = [ "rust-argon2" "zeroize" ];
"default" = [ "auth" ];
"rust-argon2" = [ "dep:rust-argon2" ];
"zeroize" = [ "dep:zeroize" ];
};
};
"regex" = rec {
crateName = "regex";
version = "1.10.6";
edition = "2021";
sha256 = "06cnlxwzyqfbw1za1i7ks89ns4i2kr0lpg5ykx56b8v7dd6df6a2";
authors = [
"The Rust Project Developers"
"Andrew Gallant <jamslam@gmail.com>"
];
dependencies = [
{
name = "aho-corasick";
packageId = "aho-corasick";
optional = true;
usesDefaultFeatures = false;
}
{
name = "memchr";
packageId = "memchr";
optional = true;
usesDefaultFeatures = false;
}
{
name = "regex-automata";
packageId = "regex-automata";
usesDefaultFeatures = false;
features = [ "alloc" "syntax" "meta" "nfa-pikevm" ];
}
{
name = "regex-syntax";
packageId = "regex-syntax";
usesDefaultFeatures = false;
}
];
features = {
"default" = [ "std" "perf" "unicode" "regex-syntax/default" ];
"logging" = [ "aho-corasick?/logging" "memchr?/logging" "regex-automata/logging" ];
"perf" = [ "perf-cache" "perf-dfa" "perf-onepass" "perf-backtrack" "perf-inline" "perf-literal" ];
"perf-backtrack" = [ "regex-automata/nfa-backtrack" ];
"perf-dfa" = [ "regex-automata/hybrid" ];
"perf-dfa-full" = [ "regex-automata/dfa-build" "regex-automata/dfa-search" ];
"perf-inline" = [ "regex-automata/perf-inline" ];
"perf-literal" = [ "dep:aho-corasick" "dep:memchr" "regex-automata/perf-literal" ];
"perf-onepass" = [ "regex-automata/dfa-onepass" ];
"std" = [ "aho-corasick?/std" "memchr?/std" "regex-automata/std" "regex-syntax/std" ];
"unicode" = [ "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" "regex-automata/unicode" "regex-syntax/unicode" ];
"unicode-age" = [ "regex-automata/unicode-age" "regex-syntax/unicode-age" ];
"unicode-bool" = [ "regex-automata/unicode-bool" "regex-syntax/unicode-bool" ];
"unicode-case" = [ "regex-automata/unicode-case" "regex-syntax/unicode-case" ];
"unicode-gencat" = [ "regex-automata/unicode-gencat" "regex-syntax/unicode-gencat" ];
"unicode-perl" = [ "regex-automata/unicode-perl" "regex-automata/unicode-word-boundary" "regex-syntax/unicode-perl" ];
"unicode-script" = [ "regex-automata/unicode-script" "regex-syntax/unicode-script" ];
"unicode-segment" = [ "regex-automata/unicode-segment" "regex-syntax/unicode-segment" ];
"unstable" = [ "pattern" ];
"use_std" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "perf" "perf-backtrack" "perf-cache" "perf-dfa" "perf-inline" "perf-literal" "perf-onepass" "std" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ];
};
"regex-automata" = rec {
crateName = "regex-automata";
version = "0.4.7";
edition = "2021";
sha256 = "1pwjdi4jckpbaivpl6x4v5g4crb37zr2wac93wlfsbzgqn6gbjiq";
libName = "regex_automata";
authors = [
"The Rust Project Developers"
"Andrew Gallant <jamslam@gmail.com>"
];
dependencies = [
{
name = "aho-corasick";
packageId = "aho-corasick";
optional = true;
usesDefaultFeatures = false;
}
{
name = "memchr";
packageId = "memchr";
optional = true;
usesDefaultFeatures = false;
}
{
name = "regex-syntax";
packageId = "regex-syntax";
optional = true;
usesDefaultFeatures = false;
}
];
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 = [ "alloc" "dfa-onepass" "dfa-search" "hybrid" "meta" "nfa-backtrack" "nfa-pikevm" "nfa-thompson" "perf-inline" "perf-literal" "perf-literal-multisubstring" "perf-literal-substring" "std" "syntax" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" "unicode-word-boundary" ];
};
"regex-syntax" = rec {
crateName = "regex-syntax";
version = "0.8.2";
edition = "2021";
sha256 = "17rd2s8xbiyf6lb4aj2nfi44zqlj98g2ays8zzj2vfs743k79360";
libName = "regex_syntax";
authors = [
"The Rust Project Developers"
"Andrew Gallant <jamslam@gmail.com>"
];
features = {
"arbitrary" = [ "dep:arbitrary" ];
"default" = [ "std" "unicode" ];
"unicode" = [ "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ];
};
resolvedDefaultFeatures = [ "default" "std" "unicode" "unicode-age" "unicode-bool" "unicode-case" "unicode-gencat" "unicode-perl" "unicode-script" "unicode-segment" ];
};
"rnix" = rec {
crateName = "rnix";
version = "0.11.0";
edition = "2021";
sha256 = "0pybq9gp4b7lp0066236jpqi9lgb1bzvqc9axymwrq3hxgdwwddv";
authors = [
"jD91mZM2 <me@krake.one>"
];
dependencies = [
{
name = "rowan";
packageId = "rowan";
}
];
};
"route-recognizer" = rec {
crateName = "route-recognizer";
version = "0.3.1";
edition = "2018";
sha256 = "0ikp3blbina00jdbifxw1c9whg6mljli24lq5pv82iar53xr9axg";
libName = "route_recognizer";
authors = [
"wycats"
"rustasync"
];
};
"rowan" = rec {
crateName = "rowan";
version = "0.15.15";
edition = "2021";
sha256 = "0j9b340gsyf2h7v1q9xb4mqyqp4qbyzlbk1r9zn2mzyclyl8z99j";
authors = [
"Aleksey Kladov <aleksey.kladov@gmail.com>"
];
dependencies = [
{
name = "countme";
packageId = "countme";
}
{
name = "hashbrown";
packageId = "hashbrown 0.14.5";
usesDefaultFeatures = false;
features = [ "inline-more" ];
}
{
name = "memoffset";
packageId = "memoffset";
}
{
name = "rustc-hash";
packageId = "rustc-hash 1.1.0";
}
{
name = "text-size";
packageId = "text-size";
}
];
features = {
"serde" = [ "dep:serde" ];
"serde1" = [ "serde" "text-size/serde" ];
};
};
"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-hash 1.1.0" = rec {
crateName = "rustc-hash";
version = "1.1.0";
edition = "2015";
sha256 = "1qkc5khrmv5pqi5l5ca9p5nl5hs742cagrndhbrlk3dhlrx3zm08";
libName = "rustc_hash";
authors = [
"The Rust Project Developers"
];
features = {
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"rustc-hash 2.0.0" = rec {
crateName = "rustc-hash";
version = "2.0.0";
edition = "2021";
sha256 = "0lni0lf846bzrf3jvci6jaf4142n1mdqxvcpczk5ch9pfgyk8c2q";
libName = "rustc_hash";
authors = [
"The Rust Project Developers"
];
features = {
"default" = [ "std" ];
"rand" = [ "dep:rand" "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"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" ];
};
};
"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" "rc" "serde_derive" "std" ];
};
"serde-wasm-bindgen 0.5.0" = rec {
crateName = "serde-wasm-bindgen";
version = "0.5.0";
edition = "2018";
sha256 = "03m01y4l2kqz63pb1bip52j8bqilzlhhsa7asfdanmrwhgi47cgk";
libName = "serde_wasm_bindgen";
authors = [
"Ingvar Stepanyan <me@rreverser.com>"
];
dependencies = [
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
};
"serde-wasm-bindgen 0.6.5" = rec {
crateName = "serde-wasm-bindgen";
version = "0.6.5";
edition = "2018";
sha256 = "0sz1l4v8059hiizf5z7r2spm6ws6sqcrs4qgqwww3p7dy1ly20l3";
libName = "serde_wasm_bindgen";
authors = [
"Ingvar Stepanyan <me@rreverser.com>"
];
dependencies = [
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
};
"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 2.0.68";
usesDefaultFeatures = false;
features = [ "clone-impls" "derive" "parsing" "printing" "proc-macro" ];
}
];
features = { };
resolvedDefaultFeatures = [ "default" ];
};
"serde_json" = rec {
crateName = "serde_json";
version = "1.0.120";
edition = "2021";
sha256 = "1idpv3zxcvl76z2z47jgg1f1wjqdnhfc204asmd27qfam34j23af";
authors = [
"Erick Tryzelaar <erick.tryzelaar@gmail.com>"
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "itoa";
packageId = "itoa";
}
{
name = "ryu";
packageId = "ryu";
}
{
name = "serde";
packageId = "serde";
usesDefaultFeatures = false;
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
features = {
"alloc" = [ "serde/alloc" ];
"default" = [ "std" ];
"indexmap" = [ "dep:indexmap" ];
"preserve_order" = [ "indexmap" "std" ];
"std" = [ "serde/std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"serde_spanned" = rec {
crateName = "serde_spanned";
version = "0.6.5";
edition = "2021";
sha256 = "1hgh6s3jjwyzhfk3xwb6pnnr1misq9nflwq0f026jafi37s24dpb";
dependencies = [
{
name = "serde";
packageId = "serde";
optional = true;
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
}
];
features = {
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "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";
}
];
};
"sha1" = rec {
crateName = "sha1";
version = "0.10.6";
edition = "2018";
sha256 = "1fnnxlfg08xhkmwf2ahv634as30l1i3xhlhkvxflmasi5nd85gz3";
authors = [
"RustCrypto Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "cpufeatures";
packageId = "cpufeatures";
target = { target, features }: (("aarch64" == target."arch" or null) || ("x86" == target."arch" or null) || ("x86_64" == target."arch" or null));
}
{
name = "digest";
packageId = "digest";
}
];
devDependencies = [
{
name = "digest";
packageId = "digest";
features = [ "dev" ];
}
];
features = {
"asm" = [ "sha1-asm" ];
"default" = [ "std" ];
"oid" = [ "digest/oid" ];
"sha1-asm" = [ "dep:sha1-asm" ];
"std" = [ "digest/std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"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" ];
};
"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" ];
};
"smol_str" = rec {
crateName = "smol_str";
version = "0.2.2";
edition = "2018";
sha256 = "1bfylqf2vnqaglw58930vpxm2rfzji5gjp15a2c0kh8aj6v8ylyx";
authors = [
"Aleksey Kladov <aleksey.kladov@gmail.com>"
];
dependencies = [
{
name = "serde";
packageId = "serde";
optional = true;
usesDefaultFeatures = false;
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
features = {
"arbitrary" = [ "dep:arbitrary" ];
"default" = [ "std" ];
"serde" = [ "dep:serde" ];
"std" = [ "serde?/std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"static_assertions" = rec {
crateName = "static_assertions";
version = "1.1.0";
edition = "2015";
sha256 = "0gsl6xmw10gvn3zs1rv99laj5ig7ylffnh71f9l34js4nr4r7sx2";
authors = [
"Nikolai Vazquez"
];
features = { };
};
"syn 1.0.109" = rec {
crateName = "syn";
version = "1.0.109";
edition = "2018";
sha256 = "0ds2if4600bd59wsv7jjgfkayfzy3hnazs394kz6zdkmna8l3dkj";
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" = [ "quote" ];
"proc-macro" = [ "proc-macro2/proc-macro" "quote/proc-macro" ];
"quote" = [ "dep:quote" ];
"test" = [ "syn-test-suite/all-features" ];
};
resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "full" "parsing" "printing" "proc-macro" "quote" "visit" "visit-mut" ];
};
"syn 2.0.68" = rec {
crateName = "syn";
version = "2.0.68";
edition = "2021";
sha256 = "1sf1y2hajhjav38ipg63c934xrgkz4v42fz24a0ckmmri06sf7wh";
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" "visit-mut" ];
};
"tabwriter" = rec {
crateName = "tabwriter";
version = "1.4.0";
edition = "2021";
sha256 = "1xp5j7v8jsk92zcmiyh4ya9akhrchjvc595vwcvxrxk49wn2h9x3";
authors = [
"Andrew Gallant <jamslam@gmail.com>"
];
dependencies = [
{
name = "unicode-width";
packageId = "unicode-width";
}
];
features = { };
resolvedDefaultFeatures = [ "default" ];
};
"termcolor" = rec {
crateName = "termcolor";
version = "1.4.1";
edition = "2018";
sha256 = "0mappjh3fj3p2nmrg4y7qv94rchwi9mzmgmfflr8p2awdj7lyy86";
authors = [
"Andrew Gallant <jamslam@gmail.com>"
];
dependencies = [
{
name = "winapi-util";
packageId = "winapi-util";
target = { target, features }: (target."windows" or false);
}
];
};
"text-size" = rec {
crateName = "text-size";
version = "1.1.1";
edition = "2018";
sha256 = "0cwjbkl7w3xc8mnkhg1nwij6p5y2qkcfldgss8ddnawvhf3s32pi";
libName = "text_size";
authors = [
"Aleksey Kladov <aleksey.kladov@gmail.com>"
"Christopher Durham (CAD97) <cad97@cad97.com>"
];
features = {
"serde" = [ "dep:serde" ];
};
};
"thiserror" = rec {
crateName = "thiserror";
version = "1.0.61";
edition = "2021";
sha256 = "028prh962l16cmjivwb1g9xalbpqip0305zhq006mg74dc6whin5";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "thiserror-impl";
packageId = "thiserror-impl";
}
];
};
"thiserror-impl" = rec {
crateName = "thiserror-impl";
version = "1.0.61";
edition = "2021";
sha256 = "0cvm37hp0kbcyk1xac1z0chpbd9pbn2g456iyid6sah0a113ihs6";
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 2.0.68";
}
];
};
"tokio" = rec {
crateName = "tokio";
version = "1.39.2";
edition = "2021";
sha256 = "1cb7yhba7nnf00cylcywk7rai5kkdb8b4jzwrc26zgbqqwdzp96s";
authors = [
"Tokio Contributors <team@tokio.rs>"
];
dependencies = [
{
name = "backtrace";
packageId = "backtrace";
target = { target, features }: (target."tokio_taskdump" or false);
}
{
name = "pin-project-lite";
packageId = "pin-project-lite";
}
];
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 = [ "default" "rt" "sync" "time" ];
};
"tokio-stream" = rec {
crateName = "tokio-stream";
version = "0.1.15";
edition = "2021";
sha256 = "1brpbsqyg8yfmfc4y0j9zxvc8xsxjc31d48kb0g6jvpc1fgchyi6";
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" ];
};
"toml" = rec {
crateName = "toml";
version = "0.6.0";
edition = "2021";
sha256 = "05zjz69wjymp9yrgccg5vhvxpf855rgn23vl1yvri4nwwj8difag";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
dependencies = [
{
name = "serde";
packageId = "serde";
}
{
name = "serde_spanned";
packageId = "serde_spanned";
features = [ "serde" ];
}
{
name = "toml_datetime";
packageId = "toml_datetime 0.5.1";
features = [ "serde" ];
}
{
name = "toml_edit";
packageId = "toml_edit 0.18.1";
optional = true;
features = [ "serde" ];
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
];
features = {
"default" = [ "parse" "display" ];
"display" = [ "dep:toml_edit" ];
"indexmap" = [ "dep:indexmap" ];
"parse" = [ "dep:toml_edit" ];
"preserve_order" = [ "indexmap" ];
};
resolvedDefaultFeatures = [ "default" "display" "parse" ];
};
"toml_datetime 0.5.1" = rec {
crateName = "toml_datetime";
version = "0.5.1";
edition = "2021";
sha256 = "1xcw3kyklh3s2gxp65ma26rgkl7505la4xx1r55kfgcfmikz8ls5";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
dependencies = [
{
name = "serde";
packageId = "serde";
optional = true;
}
];
features = {
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "serde" ];
};
"toml_datetime 0.6.7" = rec {
crateName = "toml_datetime";
version = "0.6.7";
edition = "2021";
sha256 = "1nx11ng5fxp8f8bw4y0wiw9351qpv92ca2ll3l7q8hj865j9zyzq";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
features = {
"serde" = [ "dep:serde" ];
};
};
"toml_edit 0.18.1" = rec {
crateName = "toml_edit";
version = "0.18.1";
edition = "2021";
sha256 = "0ax1bwzd4xclpids3b69nd1nxqi3x3qa4ymz51jbrp6hsy6rvian";
authors = [
"Andronik Ordian <write@reusable.software>"
"Ed Page <eopage@gmail.com>"
];
dependencies = [
{
name = "indexmap";
packageId = "indexmap 1.9.3";
}
{
name = "nom8";
packageId = "nom8";
}
{
name = "serde";
packageId = "serde";
optional = true;
}
{
name = "serde_spanned";
packageId = "serde_spanned";
optional = true;
features = [ "serde" ];
}
{
name = "toml_datetime";
packageId = "toml_datetime 0.5.1";
}
];
features = {
"easy" = [ "serde" ];
"perf" = [ "dep:kstring" ];
"serde" = [ "dep:serde" "toml_datetime/serde" "dep:serde_spanned" ];
};
resolvedDefaultFeatures = [ "default" "serde" ];
};
"toml_edit 0.19.15" = rec {
crateName = "toml_edit";
version = "0.19.15";
edition = "2021";
sha256 = "08bl7rp5g6jwmfpad9s8jpw8wjrciadpnbaswgywpr9hv9qbfnqv";
authors = [
"Andronik Ordian <write@reusable.software>"
"Ed Page <eopage@gmail.com>"
];
dependencies = [
{
name = "indexmap";
packageId = "indexmap 2.2.6";
features = [ "std" ];
}
{
name = "toml_datetime";
packageId = "toml_datetime 0.6.7";
}
{
name = "winnow";
packageId = "winnow";
}
];
features = {
"perf" = [ "dep:kstring" ];
"serde" = [ "dep:serde" "toml_datetime/serde" "dep:serde_spanned" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"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 = "pin-project-lite";
packageId = "pin-project-lite";
}
{
name = "tracing-attributes";
packageId = "tracing-attributes";
optional = true;
}
{
name = "tracing-core";
packageId = "tracing-core";
usesDefaultFeatures = false;
}
];
features = {
"attributes" = [ "tracing-attributes" ];
"default" = [ "std" "attributes" ];
"log" = [ "dep:log" ];
"log-always" = [ "log" ];
"std" = [ "tracing-core/std" ];
"tracing-attributes" = [ "dep:tracing-attributes" ];
"valuable" = [ "tracing-core/valuable" ];
};
resolvedDefaultFeatures = [ "attributes" "default" "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 2.0.68";
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;
}
];
features = {
"default" = [ "std" "valuable/std" ];
"once_cell" = [ "dep:once_cell" ];
"std" = [ "once_cell" ];
"valuable" = [ "dep:valuable" ];
};
resolvedDefaultFeatures = [ "once_cell" "std" ];
};
"tvix-eval" = rec {
crateName = "tvix-eval";
version = "0.1.0";
edition = "2021";
src = lib.cleanSourceWith { filter = sourceFilter; src = ../../tvix/eval; };
libName = "tvix_eval";
dependencies = [
{
name = "bstr";
packageId = "bstr";
features = [ "serde" ];
}
{
name = "bytes";
packageId = "bytes";
}
{
name = "codemap";
packageId = "codemap";
}
{
name = "codemap-diagnostic";
packageId = "codemap-diagnostic";
}
{
name = "data-encoding";
packageId = "data-encoding";
}
{
name = "dirs";
packageId = "dirs";
}
{
name = "genawaiter";
packageId = "genawaiter";
usesDefaultFeatures = false;
}
{
name = "itertools";
packageId = "itertools";
}
{
name = "lazy_static";
packageId = "lazy_static";
}
{
name = "lexical-core";
packageId = "lexical-core";
features = [ "format" "parse-floats" ];
}
{
name = "md-5";
packageId = "md-5";
}
{
name = "nohash-hasher";
packageId = "nohash-hasher";
}
{
name = "os_str_bytes";
packageId = "os_str_bytes";
features = [ "conversions" ];
}
{
name = "path-clean";
packageId = "path-clean";
}
{
name = "regex";
packageId = "regex";
}
{
name = "rnix";
packageId = "rnix";
}
{
name = "rowan";
packageId = "rowan";
}
{
name = "rustc-hash";
packageId = "rustc-hash 2.0.0";
}
{
name = "serde";
packageId = "serde";
features = [ "rc" "derive" ];
}
{
name = "serde_json";
packageId = "serde_json";
}
{
name = "sha1";
packageId = "sha1";
}
{
name = "sha2";
packageId = "sha2";
}
{
name = "smol_str";
packageId = "smol_str";
}
{
name = "tabwriter";
packageId = "tabwriter";
}
{
name = "toml";
packageId = "toml";
}
{
name = "tvix-eval-builtin-macros";
packageId = "tvix-eval-builtin-macros";
rename = "builtin-macros";
}
{
name = "vu128";
packageId = "vu128";
}
];
devDependencies = [
{
name = "itertools";
packageId = "itertools";
}
];
features = {
"arbitrary" = [ "proptest" "test-strategy" ];
"default" = [ "impure" "arbitrary" "nix_tests" ];
"proptest" = [ "dep:proptest" ];
"test-strategy" = [ "dep:test-strategy" ];
};
};
"tvix-eval-builtin-macros" = rec {
crateName = "tvix-eval-builtin-macros";
version = "0.0.1";
edition = "2021";
src = lib.cleanSourceWith { filter = sourceFilter; src = ../../tvix/eval/builtin-macros; };
procMacro = true;
libName = "tvix_eval_builtin_macros";
authors = [
"Griffin Smith <root@gws.fyi>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
features = [ "full" "parsing" "printing" "visit" "visit-mut" "extra-traits" ];
}
];
};
"tvixbolt" = rec {
crateName = "tvixbolt";
version = "0.1.0";
edition = "2021";
src = lib.cleanSourceWith { filter = sourceFilter; src = ./.; };
type = [ "cdylib" ];
dependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "tvix-eval";
packageId = "tvix-eval";
usesDefaultFeatures = false;
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "HtmlDetailsElement" ];
}
{
name = "yew";
packageId = "yew";
features = [ "csr" ];
}
{
name = "yew-router";
packageId = "yew-router";
}
];
};
"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.12";
edition = "2018";
sha256 = "0jzf1znfpb2gx8nr8mvmyqs1crnv79l57nxnbiszc7xf7ynbjm1k";
libName = "unicode_ident";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
};
"unicode-width" = rec {
crateName = "unicode-width";
version = "0.1.11";
edition = "2015";
sha256 = "11ds4ydhg8g7l06rlmh712q41qsrd0j0h00n1jm74kww3kqk65z5";
libName = "unicode_width";
authors = [
"kwantam <kwantam@gmail.com>"
"Manish Goregaokar <manishsmail@gmail.com>"
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"rustc-dep-of-std" = [ "std" "core" "compiler_builtins" ];
"std" = [ "dep:std" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"urlencoding" = rec {
crateName = "urlencoding";
version = "2.1.3";
edition = "2021";
sha256 = "1nj99jp37k47n0hvaz5fvz7z6jd0sb4ppvfy3nphr1zbnyixpy6s";
authors = [
"Kornel <kornel@geekhood.net>"
"Bertram Truong <b@bertramtruong.com>"
];
};
"version_check" = rec {
crateName = "version_check";
version = "0.9.4";
edition = "2015";
sha256 = "0gs8grwdlgh0xq660d7wr80x14vxbizmd8dbp29p2pdncx8lp1s9";
authors = [
"Sergio Benitez <sb@sergio.bz>"
];
};
"vu128" = rec {
crateName = "vu128";
version = "1.1.0";
edition = "2018";
sha256 = "1pczgy26c0lsri1ddrx5wkgn0rcq4da04pqya5rl6vrwfnys73di";
libPath = "vu128/vu128.rs";
authors = [
"John Millikin <john@john-millikin.com>"
];
};
"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" ];
};
};
"wasm-bindgen" = rec {
crateName = "wasm-bindgen";
version = "0.2.93";
edition = "2021";
sha256 = "1dfr7pka5kwvky2fx82m9d060p842hc5fyyw8igryikcdb0xybm8";
libName = "wasm_bindgen";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "wasm-bindgen-macro";
packageId = "wasm-bindgen-macro";
}
];
features = {
"default" = [ "spans" "std" ];
"enable-interning" = [ "std" ];
"serde" = [ "dep:serde" ];
"serde-serialize" = [ "serde" "serde_json" "std" ];
"serde_json" = [ "dep:serde_json" ];
"spans" = [ "wasm-bindgen-macro/spans" ];
"strict-macro" = [ "wasm-bindgen-macro/strict-macro" ];
"xxx_debug_only_print_generated_code" = [ "wasm-bindgen-macro/xxx_debug_only_print_generated_code" ];
};
resolvedDefaultFeatures = [ "default" "spans" "std" ];
};
"wasm-bindgen-backend" = rec {
crateName = "wasm-bindgen-backend";
version = "0.2.93";
edition = "2021";
sha256 = "0yypblaf94rdgqs5xw97499xfwgs1096yx026d6h88v563d9dqwx";
libName = "wasm_bindgen_backend";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "bumpalo";
packageId = "bumpalo";
}
{
name = "log";
packageId = "log";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "full" ];
}
{
name = "wasm-bindgen-shared";
packageId = "wasm-bindgen-shared";
}
];
features = {
"extra-traits" = [ "syn/extra-traits" ];
};
resolvedDefaultFeatures = [ "spans" ];
};
"wasm-bindgen-futures" = rec {
crateName = "wasm-bindgen-futures";
version = "0.4.42";
edition = "2018";
sha256 = "1h322zjvpjllcpj7dahfxjsv6inkr6y0baw7nkdwivr1c4v19g3n";
libName = "wasm_bindgen_futures";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
target = { target, features }: (builtins.elem "atomics" targetFeatures);
features = [ "MessageEvent" "Worker" ];
}
];
features = {
"futures-core" = [ "dep:futures-core" ];
"futures-core-03-stream" = [ "futures-core" ];
};
};
"wasm-bindgen-macro" = rec {
crateName = "wasm-bindgen-macro";
version = "0.2.93";
edition = "2021";
sha256 = "1kycd1xfx4d9xzqknvzbiqhwb5fzvjqrrn88x692q1vblj8lqp2q";
procMacro = true;
libName = "wasm_bindgen_macro";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "quote";
packageId = "quote";
}
{
name = "wasm-bindgen-macro-support";
packageId = "wasm-bindgen-macro-support";
}
];
features = {
"spans" = [ "wasm-bindgen-macro-support/spans" ];
"strict-macro" = [ "wasm-bindgen-macro-support/strict-macro" ];
};
resolvedDefaultFeatures = [ "spans" ];
};
"wasm-bindgen-macro-support" = rec {
crateName = "wasm-bindgen-macro-support";
version = "0.2.93";
edition = "2021";
sha256 = "0dp8w6jmw44srym6l752nkr3hkplyw38a2fxz5f3j1ch9p3l1hxg";
libName = "wasm_bindgen_macro_support";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "visit" "full" ];
}
{
name = "wasm-bindgen-backend";
packageId = "wasm-bindgen-backend";
}
{
name = "wasm-bindgen-shared";
packageId = "wasm-bindgen-shared";
}
];
features = {
"extra-traits" = [ "syn/extra-traits" ];
"spans" = [ "wasm-bindgen-backend/spans" ];
};
resolvedDefaultFeatures = [ "spans" ];
};
"wasm-bindgen-shared" = rec {
crateName = "wasm-bindgen-shared";
version = "0.2.93";
edition = "2021";
links = "wasm_bindgen";
sha256 = "1104bny0hv40jfap3hp8jhs0q4ya244qcrvql39i38xlghq0lan6";
libName = "wasm_bindgen_shared";
authors = [
"The wasm-bindgen Developers"
];
};
"web-sys" = rec {
crateName = "web-sys";
version = "0.3.69";
edition = "2018";
sha256 = "1vqkxk935xa8zcnsi4bd88sb267ly2i24xl1yiq26d1n32hskbvp";
libName = "web_sys";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
features = {
"AbortSignal" = [ "EventTarget" ];
"AnalyserNode" = [ "AudioNode" "EventTarget" ];
"Animation" = [ "EventTarget" ];
"AnimationEvent" = [ "Event" ];
"AnimationPlaybackEvent" = [ "Event" ];
"Attr" = [ "EventTarget" "Node" ];
"AudioBufferSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ];
"AudioContext" = [ "BaseAudioContext" "EventTarget" ];
"AudioDestinationNode" = [ "AudioNode" "EventTarget" ];
"AudioNode" = [ "EventTarget" ];
"AudioProcessingEvent" = [ "Event" ];
"AudioScheduledSourceNode" = [ "AudioNode" "EventTarget" ];
"AudioStreamTrack" = [ "EventTarget" "MediaStreamTrack" ];
"AudioTrackList" = [ "EventTarget" ];
"AudioWorklet" = [ "Worklet" ];
"AudioWorkletGlobalScope" = [ "WorkletGlobalScope" ];
"AudioWorkletNode" = [ "AudioNode" "EventTarget" ];
"AuthenticatorAssertionResponse" = [ "AuthenticatorResponse" ];
"AuthenticatorAttestationResponse" = [ "AuthenticatorResponse" ];
"BaseAudioContext" = [ "EventTarget" ];
"BatteryManager" = [ "EventTarget" ];
"BeforeUnloadEvent" = [ "Event" ];
"BiquadFilterNode" = [ "AudioNode" "EventTarget" ];
"BlobEvent" = [ "Event" ];
"Bluetooth" = [ "EventTarget" ];
"BluetoothAdvertisingEvent" = [ "Event" ];
"BluetoothDevice" = [ "EventTarget" ];
"BluetoothPermissionResult" = [ "EventTarget" "PermissionStatus" ];
"BluetoothRemoteGattCharacteristic" = [ "EventTarget" ];
"BluetoothRemoteGattService" = [ "EventTarget" ];
"BroadcastChannel" = [ "EventTarget" ];
"CanvasCaptureMediaStream" = [ "EventTarget" "MediaStream" ];
"CanvasCaptureMediaStreamTrack" = [ "EventTarget" "MediaStreamTrack" ];
"CdataSection" = [ "CharacterData" "EventTarget" "Node" "Text" ];
"ChannelMergerNode" = [ "AudioNode" "EventTarget" ];
"ChannelSplitterNode" = [ "AudioNode" "EventTarget" ];
"CharacterData" = [ "EventTarget" "Node" ];
"ChromeWorker" = [ "EventTarget" "Worker" ];
"Clipboard" = [ "EventTarget" ];
"ClipboardEvent" = [ "Event" ];
"CloseEvent" = [ "Event" ];
"Comment" = [ "CharacterData" "EventTarget" "Node" ];
"CompositionEvent" = [ "Event" "UiEvent" ];
"ConstantSourceNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ];
"ConvolverNode" = [ "AudioNode" "EventTarget" ];
"CssAnimation" = [ "Animation" "EventTarget" ];
"CssConditionRule" = [ "CssGroupingRule" "CssRule" ];
"CssCounterStyleRule" = [ "CssRule" ];
"CssFontFaceRule" = [ "CssRule" ];
"CssFontFeatureValuesRule" = [ "CssRule" ];
"CssGroupingRule" = [ "CssRule" ];
"CssImportRule" = [ "CssRule" ];
"CssKeyframeRule" = [ "CssRule" ];
"CssKeyframesRule" = [ "CssRule" ];
"CssMediaRule" = [ "CssConditionRule" "CssGroupingRule" "CssRule" ];
"CssNamespaceRule" = [ "CssRule" ];
"CssPageRule" = [ "CssRule" ];
"CssStyleRule" = [ "CssRule" ];
"CssStyleSheet" = [ "StyleSheet" ];
"CssSupportsRule" = [ "CssConditionRule" "CssGroupingRule" "CssRule" ];
"CssTransition" = [ "Animation" "EventTarget" ];
"CustomEvent" = [ "Event" ];
"DedicatedWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ];
"DelayNode" = [ "AudioNode" "EventTarget" ];
"DeviceLightEvent" = [ "Event" ];
"DeviceMotionEvent" = [ "Event" ];
"DeviceOrientationEvent" = [ "Event" ];
"DeviceProximityEvent" = [ "Event" ];
"Document" = [ "EventTarget" "Node" ];
"DocumentFragment" = [ "EventTarget" "Node" ];
"DocumentTimeline" = [ "AnimationTimeline" ];
"DocumentType" = [ "EventTarget" "Node" ];
"DomMatrix" = [ "DomMatrixReadOnly" ];
"DomPoint" = [ "DomPointReadOnly" ];
"DomRect" = [ "DomRectReadOnly" ];
"DomRequest" = [ "EventTarget" ];
"DragEvent" = [ "Event" "MouseEvent" "UiEvent" ];
"DynamicsCompressorNode" = [ "AudioNode" "EventTarget" ];
"Element" = [ "EventTarget" "Node" ];
"ErrorEvent" = [ "Event" ];
"EventSource" = [ "EventTarget" ];
"ExtendableEvent" = [ "Event" ];
"ExtendableMessageEvent" = [ "Event" "ExtendableEvent" ];
"FetchEvent" = [ "Event" "ExtendableEvent" ];
"FetchObserver" = [ "EventTarget" ];
"File" = [ "Blob" ];
"FileReader" = [ "EventTarget" ];
"FileSystemDirectoryEntry" = [ "FileSystemEntry" ];
"FileSystemDirectoryHandle" = [ "FileSystemHandle" ];
"FileSystemFileEntry" = [ "FileSystemEntry" ];
"FileSystemFileHandle" = [ "FileSystemHandle" ];
"FileSystemWritableFileStream" = [ "WritableStream" ];
"FocusEvent" = [ "Event" "UiEvent" ];
"FontFaceSet" = [ "EventTarget" ];
"FontFaceSetLoadEvent" = [ "Event" ];
"GainNode" = [ "AudioNode" "EventTarget" ];
"GamepadAxisMoveEvent" = [ "Event" "GamepadEvent" ];
"GamepadButtonEvent" = [ "Event" "GamepadEvent" ];
"GamepadEvent" = [ "Event" ];
"GpuDevice" = [ "EventTarget" ];
"GpuInternalError" = [ "GpuError" ];
"GpuOutOfMemoryError" = [ "GpuError" ];
"GpuPipelineError" = [ "DomException" ];
"GpuUncapturedErrorEvent" = [ "Event" ];
"GpuValidationError" = [ "GpuError" ];
"HashChangeEvent" = [ "Event" ];
"Hid" = [ "EventTarget" ];
"HidConnectionEvent" = [ "Event" ];
"HidDevice" = [ "EventTarget" ];
"HidInputReportEvent" = [ "Event" ];
"HtmlAnchorElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlAreaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlAudioElement" = [ "Element" "EventTarget" "HtmlElement" "HtmlMediaElement" "Node" ];
"HtmlBaseElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlBodyElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlBrElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlButtonElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlCanvasElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDataElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDataListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDetailsElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDialogElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDirectoryElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDivElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlDocument" = [ "Document" "EventTarget" "Node" ];
"HtmlElement" = [ "Element" "EventTarget" "Node" ];
"HtmlEmbedElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlFieldSetElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlFontElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlFormControlsCollection" = [ "HtmlCollection" ];
"HtmlFormElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlFrameElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlFrameSetElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlHeadElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlHeadingElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlHrElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlHtmlElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlIFrameElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlImageElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlInputElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlLabelElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlLegendElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlLiElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlLinkElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlMapElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlMediaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlMenuElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlMenuItemElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlMetaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlMeterElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlModElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlOListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlObjectElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlOptGroupElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlOptionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlOptionsCollection" = [ "HtmlCollection" ];
"HtmlOutputElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlParagraphElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlParamElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlPictureElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlPreElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlProgressElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlQuoteElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlScriptElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlSelectElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlSlotElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlSourceElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlSpanElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlStyleElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTableCaptionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTableCellElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTableColElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTableElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTableRowElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTableSectionElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTemplateElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTextAreaElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTimeElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTitleElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlTrackElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlUListElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlUnknownElement" = [ "Element" "EventTarget" "HtmlElement" "Node" ];
"HtmlVideoElement" = [ "Element" "EventTarget" "HtmlElement" "HtmlMediaElement" "Node" ];
"IdbCursorWithValue" = [ "IdbCursor" ];
"IdbDatabase" = [ "EventTarget" ];
"IdbFileHandle" = [ "EventTarget" ];
"IdbFileRequest" = [ "DomRequest" "EventTarget" ];
"IdbLocaleAwareKeyRange" = [ "IdbKeyRange" ];
"IdbMutableFile" = [ "EventTarget" ];
"IdbOpenDbRequest" = [ "EventTarget" "IdbRequest" ];
"IdbRequest" = [ "EventTarget" ];
"IdbTransaction" = [ "EventTarget" ];
"IdbVersionChangeEvent" = [ "Event" ];
"IirFilterNode" = [ "AudioNode" "EventTarget" ];
"ImageCaptureErrorEvent" = [ "Event" ];
"ImageTrack" = [ "EventTarget" ];
"InputEvent" = [ "Event" "UiEvent" ];
"KeyboardEvent" = [ "Event" "UiEvent" ];
"KeyframeEffect" = [ "AnimationEffect" ];
"LocalMediaStream" = [ "EventTarget" "MediaStream" ];
"MediaDevices" = [ "EventTarget" ];
"MediaElementAudioSourceNode" = [ "AudioNode" "EventTarget" ];
"MediaEncryptedEvent" = [ "Event" ];
"MediaKeyError" = [ "Event" ];
"MediaKeyMessageEvent" = [ "Event" ];
"MediaKeySession" = [ "EventTarget" ];
"MediaQueryList" = [ "EventTarget" ];
"MediaQueryListEvent" = [ "Event" ];
"MediaRecorder" = [ "EventTarget" ];
"MediaRecorderErrorEvent" = [ "Event" ];
"MediaSource" = [ "EventTarget" ];
"MediaStream" = [ "EventTarget" ];
"MediaStreamAudioDestinationNode" = [ "AudioNode" "EventTarget" ];
"MediaStreamAudioSourceNode" = [ "AudioNode" "EventTarget" ];
"MediaStreamEvent" = [ "Event" ];
"MediaStreamTrack" = [ "EventTarget" ];
"MediaStreamTrackEvent" = [ "Event" ];
"MediaStreamTrackGenerator" = [ "EventTarget" "MediaStreamTrack" ];
"MessageEvent" = [ "Event" ];
"MessagePort" = [ "EventTarget" ];
"MidiAccess" = [ "EventTarget" ];
"MidiConnectionEvent" = [ "Event" ];
"MidiInput" = [ "EventTarget" "MidiPort" ];
"MidiMessageEvent" = [ "Event" ];
"MidiOutput" = [ "EventTarget" "MidiPort" ];
"MidiPort" = [ "EventTarget" ];
"MouseEvent" = [ "Event" "UiEvent" ];
"MouseScrollEvent" = [ "Event" "MouseEvent" "UiEvent" ];
"MutationEvent" = [ "Event" ];
"NetworkInformation" = [ "EventTarget" ];
"Node" = [ "EventTarget" ];
"Notification" = [ "EventTarget" ];
"NotificationEvent" = [ "Event" "ExtendableEvent" ];
"OfflineAudioCompletionEvent" = [ "Event" ];
"OfflineAudioContext" = [ "BaseAudioContext" "EventTarget" ];
"OfflineResourceList" = [ "EventTarget" ];
"OffscreenCanvas" = [ "EventTarget" ];
"OscillatorNode" = [ "AudioNode" "AudioScheduledSourceNode" "EventTarget" ];
"PageTransitionEvent" = [ "Event" ];
"PaintWorkletGlobalScope" = [ "WorkletGlobalScope" ];
"PannerNode" = [ "AudioNode" "EventTarget" ];
"PaymentMethodChangeEvent" = [ "Event" "PaymentRequestUpdateEvent" ];
"PaymentRequestUpdateEvent" = [ "Event" ];
"Performance" = [ "EventTarget" ];
"PerformanceMark" = [ "PerformanceEntry" ];
"PerformanceMeasure" = [ "PerformanceEntry" ];
"PerformanceNavigationTiming" = [ "PerformanceEntry" "PerformanceResourceTiming" ];
"PerformanceResourceTiming" = [ "PerformanceEntry" ];
"PermissionStatus" = [ "EventTarget" ];
"PointerEvent" = [ "Event" "MouseEvent" "UiEvent" ];
"PopStateEvent" = [ "Event" ];
"PopupBlockedEvent" = [ "Event" ];
"PresentationAvailability" = [ "EventTarget" ];
"PresentationConnection" = [ "EventTarget" ];
"PresentationConnectionAvailableEvent" = [ "Event" ];
"PresentationConnectionCloseEvent" = [ "Event" ];
"PresentationConnectionList" = [ "EventTarget" ];
"PresentationRequest" = [ "EventTarget" ];
"ProcessingInstruction" = [ "CharacterData" "EventTarget" "Node" ];
"ProgressEvent" = [ "Event" ];
"PromiseRejectionEvent" = [ "Event" ];
"PublicKeyCredential" = [ "Credential" ];
"PushEvent" = [ "Event" "ExtendableEvent" ];
"RadioNodeList" = [ "NodeList" ];
"RtcDataChannel" = [ "EventTarget" ];
"RtcDataChannelEvent" = [ "Event" ];
"RtcPeerConnection" = [ "EventTarget" ];
"RtcPeerConnectionIceErrorEvent" = [ "Event" ];
"RtcPeerConnectionIceEvent" = [ "Event" ];
"RtcTrackEvent" = [ "Event" ];
"RtcdtmfSender" = [ "EventTarget" ];
"RtcdtmfToneChangeEvent" = [ "Event" ];
"Screen" = [ "EventTarget" ];
"ScreenOrientation" = [ "EventTarget" ];
"ScriptProcessorNode" = [ "AudioNode" "EventTarget" ];
"ScrollAreaEvent" = [ "Event" "UiEvent" ];
"SecurityPolicyViolationEvent" = [ "Event" ];
"Serial" = [ "EventTarget" ];
"SerialPort" = [ "EventTarget" ];
"ServiceWorker" = [ "EventTarget" ];
"ServiceWorkerContainer" = [ "EventTarget" ];
"ServiceWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ];
"ServiceWorkerRegistration" = [ "EventTarget" ];
"ShadowRoot" = [ "DocumentFragment" "EventTarget" "Node" ];
"SharedWorker" = [ "EventTarget" ];
"SharedWorkerGlobalScope" = [ "EventTarget" "WorkerGlobalScope" ];
"SourceBuffer" = [ "EventTarget" ];
"SourceBufferList" = [ "EventTarget" ];
"SpeechRecognition" = [ "EventTarget" ];
"SpeechRecognitionError" = [ "Event" ];
"SpeechRecognitionEvent" = [ "Event" ];
"SpeechSynthesis" = [ "EventTarget" ];
"SpeechSynthesisErrorEvent" = [ "Event" "SpeechSynthesisEvent" ];
"SpeechSynthesisEvent" = [ "Event" ];
"SpeechSynthesisUtterance" = [ "EventTarget" ];
"StereoPannerNode" = [ "AudioNode" "EventTarget" ];
"StorageEvent" = [ "Event" ];
"SubmitEvent" = [ "Event" ];
"SvgAnimateElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
"SvgAnimateMotionElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
"SvgAnimateTransformElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
"SvgAnimationElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgCircleElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
"SvgClipPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgComponentTransferFunctionElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgDefsElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgDescElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgElement" = [ "Element" "EventTarget" "Node" ];
"SvgEllipseElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
"SvgFilterElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgForeignObjectElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgGeometryElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgGraphicsElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgImageElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgLineElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
"SvgLinearGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGradientElement" ];
"SvgMarkerElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgMaskElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgMetadataElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
"SvgPathSegArcAbs" = [ "SvgPathSeg" ];
"SvgPathSegArcRel" = [ "SvgPathSeg" ];
"SvgPathSegClosePath" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoCubicAbs" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoCubicRel" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoCubicSmoothAbs" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoCubicSmoothRel" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoQuadraticAbs" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoQuadraticRel" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoQuadraticSmoothAbs" = [ "SvgPathSeg" ];
"SvgPathSegCurvetoQuadraticSmoothRel" = [ "SvgPathSeg" ];
"SvgPathSegLinetoAbs" = [ "SvgPathSeg" ];
"SvgPathSegLinetoHorizontalAbs" = [ "SvgPathSeg" ];
"SvgPathSegLinetoHorizontalRel" = [ "SvgPathSeg" ];
"SvgPathSegLinetoRel" = [ "SvgPathSeg" ];
"SvgPathSegLinetoVerticalAbs" = [ "SvgPathSeg" ];
"SvgPathSegLinetoVerticalRel" = [ "SvgPathSeg" ];
"SvgPathSegMovetoAbs" = [ "SvgPathSeg" ];
"SvgPathSegMovetoRel" = [ "SvgPathSeg" ];
"SvgPatternElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgPolygonElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
"SvgPolylineElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
"SvgRadialGradientElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGradientElement" ];
"SvgRectElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGeometryElement" "SvgGraphicsElement" ];
"SvgScriptElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgSetElement" = [ "Element" "EventTarget" "Node" "SvgAnimationElement" "SvgElement" ];
"SvgStopElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgStyleElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgSwitchElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgSymbolElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgTextContentElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgTextElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" "SvgTextPositioningElement" ];
"SvgTextPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" ];
"SvgTextPositioningElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" ];
"SvgTitleElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgUseElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgViewElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgaElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgfeBlendElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeColorMatrixElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeComponentTransferElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeCompositeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeConvolveMatrixElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeDiffuseLightingElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeDisplacementMapElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeDistantLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeDropShadowElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeFloodElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeFuncAElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
"SvgfeFuncBElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
"SvgfeFuncGElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
"SvgfeFuncRElement" = [ "Element" "EventTarget" "Node" "SvgComponentTransferFunctionElement" "SvgElement" ];
"SvgfeGaussianBlurElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeImageElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeMergeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeMergeNodeElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeMorphologyElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeOffsetElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfePointLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeSpecularLightingElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeSpotLightElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeTileElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgfeTurbulenceElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvggElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgmPathElement" = [ "Element" "EventTarget" "Node" "SvgElement" ];
"SvgsvgElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" ];
"SvgtSpanElement" = [ "Element" "EventTarget" "Node" "SvgElement" "SvgGraphicsElement" "SvgTextContentElement" "SvgTextPositioningElement" ];
"TaskController" = [ "AbortController" ];
"TaskPriorityChangeEvent" = [ "Event" ];
"TaskSignal" = [ "AbortSignal" "EventTarget" ];
"TcpServerSocket" = [ "EventTarget" ];
"TcpServerSocketEvent" = [ "Event" ];
"TcpSocket" = [ "EventTarget" ];
"TcpSocketErrorEvent" = [ "Event" ];
"TcpSocketEvent" = [ "Event" ];
"Text" = [ "CharacterData" "EventTarget" "Node" ];
"TextTrack" = [ "EventTarget" ];
"TextTrackCue" = [ "EventTarget" ];
"TextTrackList" = [ "EventTarget" ];
"TimeEvent" = [ "Event" ];
"TouchEvent" = [ "Event" "UiEvent" ];
"TrackEvent" = [ "Event" ];
"TransitionEvent" = [ "Event" ];
"UiEvent" = [ "Event" ];
"Usb" = [ "EventTarget" ];
"UsbConnectionEvent" = [ "Event" ];
"UsbPermissionResult" = [ "EventTarget" "PermissionStatus" ];
"UserProximityEvent" = [ "Event" ];
"ValueEvent" = [ "Event" ];
"VideoStreamTrack" = [ "EventTarget" "MediaStreamTrack" ];
"VideoTrackList" = [ "EventTarget" ];
"VrDisplay" = [ "EventTarget" ];
"VttCue" = [ "EventTarget" "TextTrackCue" ];
"WakeLockSentinel" = [ "EventTarget" ];
"WaveShaperNode" = [ "AudioNode" "EventTarget" ];
"WebGlContextEvent" = [ "Event" ];
"WebKitCssMatrix" = [ "DomMatrix" "DomMatrixReadOnly" ];
"WebSocket" = [ "EventTarget" ];
"WebTransportError" = [ "DomException" ];
"WebTransportReceiveStream" = [ "ReadableStream" ];
"WebTransportSendStream" = [ "WritableStream" ];
"WheelEvent" = [ "Event" "MouseEvent" "UiEvent" ];
"Window" = [ "EventTarget" ];
"WindowClient" = [ "Client" ];
"Worker" = [ "EventTarget" ];
"WorkerDebuggerGlobalScope" = [ "EventTarget" ];
"WorkerGlobalScope" = [ "EventTarget" ];
"XmlDocument" = [ "Document" "EventTarget" "Node" ];
"XmlHttpRequest" = [ "EventTarget" "XmlHttpRequestEventTarget" ];
"XmlHttpRequestEventTarget" = [ "EventTarget" ];
"XmlHttpRequestUpload" = [ "EventTarget" "XmlHttpRequestEventTarget" ];
"XrBoundedReferenceSpace" = [ "EventTarget" "XrReferenceSpace" "XrSpace" ];
"XrInputSourceEvent" = [ "Event" ];
"XrInputSourcesChangeEvent" = [ "Event" ];
"XrJointPose" = [ "XrPose" ];
"XrJointSpace" = [ "EventTarget" "XrSpace" ];
"XrLayer" = [ "EventTarget" ];
"XrPermissionStatus" = [ "EventTarget" "PermissionStatus" ];
"XrReferenceSpace" = [ "EventTarget" "XrSpace" ];
"XrReferenceSpaceEvent" = [ "Event" ];
"XrSession" = [ "EventTarget" ];
"XrSessionEvent" = [ "Event" ];
"XrSpace" = [ "EventTarget" ];
"XrSystem" = [ "EventTarget" ];
"XrViewerPose" = [ "XrPose" ];
"XrWebGlLayer" = [ "EventTarget" "XrLayer" ];
};
resolvedDefaultFeatures = [ "AbortSignal" "AddEventListenerOptions" "AnimationEvent" "BinaryType" "Blob" "BlobPropertyBag" "CharacterData" "CloseEvent" "CloseEventInit" "DedicatedWorkerGlobalScope" "Document" "DocumentFragment" "DomException" "DragEvent" "Element" "ErrorEvent" "Event" "EventInit" "EventSource" "EventTarget" "File" "FileList" "FilePropertyBag" "FileReader" "FocusEvent" "FormData" "Headers" "History" "HtmlBaseElement" "HtmlCollection" "HtmlDetailsElement" "HtmlElement" "HtmlHeadElement" "HtmlInputElement" "HtmlScriptElement" "HtmlTextAreaElement" "InputEvent" "InputEventInit" "KeyboardEvent" "Location" "MessageEvent" "MouseEvent" "Node" "NodeList" "ObserverCallback" "PointerEvent" "ProgressEvent" "ReadableStream" "ReferrerPolicy" "Request" "RequestCache" "RequestCredentials" "RequestInit" "RequestMode" "RequestRedirect" "Response" "ResponseInit" "ResponseType" "ShadowRoot" "Storage" "SubmitEvent" "Text" "TouchEvent" "TransitionEvent" "UiEvent" "Url" "UrlSearchParams" "WebSocket" "WheelEvent" "Window" "Worker" "WorkerGlobalScope" "WorkerOptions" "console" ];
};
"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" "knownfolders" "minwindef" "objbase" "processenv" "shlobj" "std" "sysinfoapi" "winbase" "wincon" "winerror" "winnt" ];
};
"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-util" = rec {
crateName = "winapi-util";
version = "0.1.6";
edition = "2021";
sha256 = "15i5lm39wd44004i9d5qspry2cynkrpvwzghr6s2c3dsk28nz7pj";
libName = "winapi_util";
authors = [
"Andrew Gallant <jamslam@gmail.com>"
];
dependencies = [
{
name = "winapi";
packageId = "winapi";
target = { target, features }: (target."windows" or false);
features = [ "std" "consoleapi" "errhandlingapi" "fileapi" "minwindef" "processenv" "sysinfoapi" "winbase" "wincon" "winerror" "winnt" ];
}
];
};
"winapi-x86_64-pc-windows-gnu" = rec {
crateName = "winapi-x86_64-pc-windows-gnu";
version = "0.4.0";
edition = "2015";
sha256 = "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki";
libName = "winapi_x86_64_pc_windows_gnu";
authors = [
"Peter Atashian <retep998@gmail.com>"
];
};
"winnow" = rec {
crateName = "winnow";
version = "0.5.40";
edition = "2021";
sha256 = "0xk8maai7gyxda673mmw3pj1hdizy5fpi7287vaywykkk19sk4zm";
dependencies = [
{
name = "memchr";
packageId = "memchr";
optional = true;
usesDefaultFeatures = false;
}
];
features = {
"debug" = [ "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" ];
};
"yew" = rec {
crateName = "yew";
version = "0.21.0";
edition = "2021";
sha256 = "1b0ccqqlyyhcrk0l6d8jch2xwbhl5wliabn6x6ipl367apr066jz";
authors = [
"Denis Kolodin <deniskolodin@gmail.com>"
"Justin Starry <justin@yew.rs>"
];
dependencies = [
{
name = "console_error_panic_hook";
packageId = "console_error_panic_hook";
}
{
name = "futures";
packageId = "futures";
usesDefaultFeatures = false;
features = [ "std" ];
}
{
name = "gloo";
packageId = "gloo 0.10.0";
}
{
name = "implicit-clone";
packageId = "implicit-clone";
features = [ "map" ];
}
{
name = "indexmap";
packageId = "indexmap 2.2.6";
features = [ "std" ];
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "prokio";
packageId = "prokio";
}
{
name = "rustversion";
packageId = "rustversion";
}
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "slab";
packageId = "slab";
}
{
name = "thiserror";
packageId = "thiserror";
}
{
name = "tokio";
packageId = "tokio";
target = { target, features }: (!("wasm32" == target."arch" or null));
features = [ "rt" ];
}
{
name = "tracing";
packageId = "tracing";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "wasm-bindgen-futures";
packageId = "wasm-bindgen-futures";
target = { target, features }: ("wasm32" == target."arch" or null);
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "AnimationEvent" "Document" "DragEvent" "Element" "ErrorEvent" "Event" "EventInit" "EventTarget" "FocusEvent" "HtmlElement" "HtmlInputElement" "HtmlCollection" "HtmlTextAreaElement" "InputEvent" "InputEventInit" "KeyboardEvent" "Location" "MouseEvent" "Node" "NodeList" "PointerEvent" "ProgressEvent" "ShadowRoot" "Text" "TouchEvent" "TransitionEvent" "UiEvent" "WheelEvent" "Window" "HtmlScriptElement" "SubmitEvent" ];
}
{
name = "yew-macro";
packageId = "yew-macro";
}
];
devDependencies = [
{
name = "gloo";
packageId = "gloo 0.10.0";
features = [ "futures" ];
}
{
name = "tokio";
packageId = "tokio";
target = { target, features }: (!("wasm32" == target."arch" or null));
features = [ "full" ];
}
{
name = "wasm-bindgen-futures";
packageId = "wasm-bindgen-futures";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "ShadowRootInit" "ShadowRootMode" "HtmlButtonElement" ];
}
];
features = {
"hydration" = [ "csr" "dep:bincode" ];
"ssr" = [ "dep:html-escape" "dep:base64ct" "dep:bincode" ];
};
resolvedDefaultFeatures = [ "csr" "default" ];
};
"yew-macro" = rec {
crateName = "yew-macro";
version = "0.21.0";
edition = "2021";
sha256 = "1qix6k8f8gzxb750icxvxknm3xrg8g7a4035g6gyasbd2sjqrz82";
procMacro = true;
libName = "yew_macro";
authors = [
"Justin Starry <justin@yew.rs>"
];
dependencies = [
{
name = "boolinator";
packageId = "boolinator";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "prettyplease";
packageId = "prettyplease";
}
{
name = "proc-macro-error";
packageId = "proc-macro-error";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "full" "extra-traits" "visit-mut" ];
}
];
};
"yew-router" = rec {
crateName = "yew-router";
version = "0.18.0";
edition = "2021";
sha256 = "1ip071apn35gbycpki768ba5hxsrxnnsh2b29lmpdrln5h2xb8ac";
libName = "yew_router";
authors = [
"Hamza <muhammadhamza1311@gmail.com>"
];
dependencies = [
{
name = "gloo";
packageId = "gloo 0.10.0";
features = [ "futures" ];
}
{
name = "js-sys";
packageId = "js-sys";
}
{
name = "route-recognizer";
packageId = "route-recognizer";
}
{
name = "serde";
packageId = "serde";
}
{
name = "serde_urlencoded";
packageId = "serde_urlencoded";
}
{
name = "tracing";
packageId = "tracing";
}
{
name = "urlencoding";
packageId = "urlencoding";
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "Document" "HtmlBaseElement" "Window" ];
}
{
name = "yew";
packageId = "yew";
usesDefaultFeatures = false;
}
{
name = "yew-router-macro";
packageId = "yew-router-macro";
}
];
devDependencies = [
{
name = "serde";
packageId = "serde";
features = [ "derive" ];
}
{
name = "web-sys";
packageId = "web-sys";
features = [ "HtmlHeadElement" ];
}
{
name = "yew";
packageId = "yew";
features = [ "csr" ];
}
];
};
"yew-router-macro" = rec {
crateName = "yew-router-macro";
version = "0.18.0";
edition = "2021";
sha256 = "134pcmiyi5x6v8s8rnr3fg03v033qhx2piflgkgcza3wl28d3gs2";
procMacro = true;
libName = "yew_router_macro";
authors = [
"Hamza <muhammadhamza1311@gmail.com>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.68";
features = [ "full" "extra-traits" ];
}
];
};
};
#
# 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)
#
};
}