diff --git a/.gitignore b/.gitignore index 566443e..3df4461 100644 --- a/.gitignore +++ b/.gitignore @@ -6,6 +6,7 @@ devenv.local.nix target cloud.devenv.toml +frontend/elm-land.json TODO # Terraform diff --git a/.gitmodules b/.gitmodules new file mode 100644 index 0000000..fcde67d --- /dev/null +++ b/.gitmodules @@ -0,0 +1,3 @@ +[submodule "oauth-kit"] + path = oauth-kit + url = https://github.com/cachix/oauth-kit diff --git a/Cargo.lock b/Cargo.lock index 7529d68..3950512 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -17,6 +17,41 @@ version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "320119579fcad9c21884f5c4861d16174d0e06250625266f50fe6898340abefa" +[[package]] +name = "aead" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d122413f284cf2d62fb1b7db97e02edb8cda96d769b16e443a4f6195e35662b0" +dependencies = [ + "crypto-common", + "generic-array", +] + +[[package]] +name = "aes" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b169f7a6d4742236a0a00c541b845991d0ac43e546831af1249753ab4c3aa3a0" +dependencies = [ + "cfg-if", + "cipher", + "cpufeatures", +] + +[[package]] +name = "aes-gcm" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "831010a0f742e1209b3bcea8fab6a8e149051ba6099432c8cb2cc117dec3ead1" +dependencies = [ + "aead", + "aes", + "cipher", + "ctr", + "ghash", + "subtle", +] + [[package]] name = "ahash" version = "0.8.12" @@ -26,7 +61,7 @@ dependencies = [ "cfg-if", "getrandom 0.3.4", "once_cell", - "version_check 0.9.5", + "version_check", "zerocopy", ] @@ -116,16 +151,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "any_key" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d21bb2cdab8087ed9d69411dd99c608dbede1df847c255b4d609f0399a3cb452" -dependencies = [ - "debugit", - "mopa", -] - [[package]] name = "anyhow" version = "1.0.100" @@ -134,9 +159,12 @@ checksum = "a23eb6b1614318a8071c9b2521f36b424b2c83db5eb3a0fead4a6c0809af6e61" [[package]] name = "arc-swap" -version = "1.7.1" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" +checksum = "51d03449bb8ca2cc2ef70869af31463d1ae5ccc8fa3e334b307203fbf815207e" +dependencies = [ + "rustversion", +] [[package]] name = "arrayref" @@ -181,7 +209,7 @@ checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -198,7 +226,7 @@ checksum = "9035ad2d096bed7955a320ee7e2230574d28fd3c3a0f186cbea1ff3c7eed5dbb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -234,7 +262,7 @@ dependencies = [ "derive_utils", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -245,9 +273,9 @@ checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" [[package]] name = "aws-lc-rs" -version = "1.15.1" +version = "1.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b5ce75405893cd713f9ab8e297d8e438f624dde7d706108285f7e17a25a180f" +checksum = "e84ce723ab67259cfeb9877c6a639ee9eb7a27b28123abd71db7f0d5d0cc9d86" dependencies = [ "aws-lc-sys", "zeroize", @@ -255,9 +283,9 @@ dependencies = [ [[package]] name = "aws-lc-sys" -version = "0.34.0" +version = "0.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "179c3777a8b5e70e90ea426114ffc565b2c1a9f82f6c4a0c5a34aa6ef5e781b6" +checksum = "43a442ece363113bd4bd4c8b18977a7798dd4d3c3383f34fb61936960e8f4ad8" dependencies = [ "cc", "cmake", @@ -267,39 +295,11 @@ dependencies = [ [[package]] name = "axum" -version = "0.7.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edca88bc138befd0323b20752846e6587272d3b03b0343c8ea28a6f819e6e71f" -dependencies = [ - "async-trait", - "axum-core 0.4.5", - "bytes", - "futures-util", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", - "itoa", - "matchit 0.7.3", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "sync_wrapper 1.0.2", - "tower 0.5.2", - "tower-layer", - "tower-service", -] - -[[package]] -name = "axum" -version = "0.8.7" +version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b098575ebe77cb6d14fc7f32749631a6e44edbef6b796f89b020e99ba20d425" +checksum = "8b52af3cb4058c895d37317bb27508dccc8e5f2d39454016b297bf4a400597b8" dependencies = [ - "axum-core 0.5.5", - "axum-macros", + "axum-core", "base64 0.22.1", "bytes", "form_urlencoded", @@ -310,7 +310,7 @@ dependencies = [ "hyper 1.8.1", "hyper-util", "itoa", - "matchit 0.8.4", + "matchit", "memchr", "mime", "percent-encoding", @@ -323,7 +323,7 @@ dependencies = [ "sync_wrapper 1.0.2", "tokio", "tokio-tungstenite 0.28.0", - "tower 0.5.2", + "tower", "tower-layer", "tower-service", "tracing", @@ -331,29 +331,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", - "mime", - "pin-project-lite", - "rustversion", - "sync_wrapper 1.0.2", - "tower-layer", - "tower-service", -] - -[[package]] -name = "axum-core" -version = "0.5.5" +version = "0.5.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59446ce19cd142f8833f856eb31f3eb097812d1479ab224f54d72428ca21ea22" +checksum = "08c78f31d7b1291f7ee735c1c6780ccde7785daae9a9206026862dab7d8792d1" dependencies = [ "bytes", "futures-core", @@ -374,8 +354,8 @@ version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9963ff19f40c6102c76756ef0a46004c0d58957d87259fc9208ff8441c12ab96" dependencies = [ - "axum 0.8.7", - "axum-core 0.5.5", + "axum", + "axum-core", "bytes", "futures-util", "headers", @@ -395,23 +375,12 @@ dependencies = [ "tracing", ] -[[package]] -name = "axum-macros" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604fde5e028fea851ce1d8570bbdc034bec850d157f7569d10f347d06808c05c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.111", -] - [[package]] name = "axum-typed-websockets" version = "0.6.0" source = "git+https://github.com/cachix/axum-typed-websockets#21b25a4285037639171eca4aeb3031c48273e196" dependencies = [ - "axum 0.8.7", + "axum", "futures-util", "serde", "serde_json", @@ -480,20 +449,11 @@ version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" -[[package]] -name = "base64-compat" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a8d4d2746f89841e49230dd26917df1876050f95abafafbe34f47cb534b88d7" -dependencies = [ - "byteorder", -] - [[package]] name = "base64ct" -version = "1.8.0" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba" +checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06" [[package]] name = "bincode" @@ -523,7 +483,7 @@ dependencies = [ "regex", "rustc-hash 1.1.0", "shlex", - "syn 2.0.111", + "syn 2.0.114", "which 4.4.2", ] @@ -544,15 +504,16 @@ dependencies = [ [[package]] name = "blake3" -version = "1.8.2" +version = "1.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3888aaa89e4b2a40fca9848e400f6a658a5a3978de7be858e209cafa8be9a4a0" +checksum = "2468ef7d57b3fb7e16b576e8377cdbde2320c60e1491e961d11da40fc4f02a2d" dependencies = [ "arrayref", "arrayvec", "cc", "cfg-if", "constant_time_eq", + "cpufeatures", ] [[package]] @@ -586,9 +547,9 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.19.0" +version = "3.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43" +checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510" [[package]] name = "bytemuck" @@ -619,9 +580,9 @@ checksum = "2e93abca9e28e0a1b9877922aacb20576e05d4679ffa78c3d6dc22a26a216659" [[package]] name = "bytesize" -version = "2.3.0" +version = "2.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "00f4369ba008f82b968b1acbe31715ec37bd45236fa0726605a36cc3060ea256" +checksum = "6bd91ee7b2422bcb158d90ef4d14f75ef67f340943fc4149891dcce8f8b972a3" [[package]] name = "cast" @@ -640,9 +601,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.2.47" +version = "1.2.53" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd405d82c84ff7f35739f175f67d8b9fb7687a0e84ccdc78bd3568839827cf07" +checksum = "755d2fce177175ffca841e9a06afdb2c4ab0f593d53b4dee48147dfaade85932" dependencies = [ "find-msvc-tools", "jobserver", @@ -679,9 +640,9 @@ checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" [[package]] name = "chrono" -version = "0.4.42" +version = "0.4.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2" +checksum = "fac4744fb15ae8337dc853fee7fb3f4e48c0fbaa23d0afe49c447b4fab126118" dependencies = [ "iana-time-zone", "js-sys", @@ -718,6 +679,16 @@ dependencies = [ "half", ] +[[package]] +name = "cipher" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773f3b9af64447d2ce9850330c473515014aa235e6a783b02db81ff39e4a3dad" +dependencies = [ + "crypto-common", + "inout", +] + [[package]] name = "clang-sys" version = "1.8.1" @@ -731,9 +702,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.53" +version = "4.5.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9e340e012a1bf4935f5282ed1436d1489548e8f72308207ea5df0e23d2d03f8" +checksum = "c6e6ff9dcd79cff5cd969a17a545d79e84ab086e444102a591e288a8aa3ce394" dependencies = [ "clap_builder", "clap_derive", @@ -741,9 +712,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.53" +version = "4.5.54" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d76b5d13eaa18c901fd2f7fca939fefe3a0727a953561fefdf3b2922b8569d00" +checksum = "fa42cf4d2b7a41bc8f663a7cab4031ebafa1bf3875705bfaf8466dc60ab52c00" dependencies = [ "anstream", "anstyle", @@ -760,14 +731,14 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] name = "clap_lex" -version = "0.7.6" +version = "0.7.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1d728cc89cf3aee9ff92b05e62b19ee65a02b5702cff7d5a377e32c6ae29d8d" +checksum = "c3e64b0cc0439b12df2fa678eae89a1c56a529fd067a9115f7827f1fffd22b32" [[package]] name = "cli-table" @@ -789,7 +760,7 @@ checksum = "9f7c1b60bae2c3d45228dfb096046aa51ef6c300de70b658d7a13fcb0c4f832e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -818,9 +789,9 @@ checksum = "cbd0f76e066e64fdc5631e3bb46381254deab9ef1158292f27c8c57e3bf3fe59" [[package]] name = "cmake" -version = "0.1.54" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0" +checksum = "75443c44cd6b379beb8c5b45d85d0773baf31cce901fe7bb252f4eff3008ef7d" dependencies = [ "cc", ] @@ -922,9 +893,9 @@ dependencies = [ [[package]] name = "console" -version = "0.16.1" +version = "0.16.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b430743a6eb14e9764d4260d4c0d8123087d504eeb9c48f2b2a5e810dd369df4" +checksum = "03e45a4a8926227e4197636ba97a9fc9b00477e9f4bd711395687c5f0734bec4" dependencies = [ "encode_unicode", "libc", @@ -941,28 +912,46 @@ checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" [[package]] name = "constant_time_eq" -version = "0.3.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6" +checksum = "3d52eff69cd5e647efe296129160853a42795992097e8af39800e1060caeea9b" [[package]] name = "convert_case" -version = "0.7.1" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb402b8d4c85569410425650ce3eddc7d698ed96d39a73f941b08fb63082f1e7" +checksum = "baaaa0ecca5b51987b9423ccdc971514dd8b0bb7b4060b983d3664dad3f1f89f" dependencies = [ "unicode-segmentation", ] [[package]] name = "convert_case" -version = "0.8.0" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baaaa0ecca5b51987b9423ccdc971514dd8b0bb7b4060b983d3664dad3f1f89f" +checksum = "633458d4ef8c78b72454de2d54fd6ab2e60f9e02be22f3c6104cdc8a4e0fceb9" dependencies = [ "unicode-segmentation", ] +[[package]] +name = "cookie" +version = "0.18.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747" +dependencies = [ + "aes-gcm", + "base64 0.22.1", + "hkdf", + "hmac", + "percent-encoding", + "rand 0.8.5", + "sha2", + "subtle", + "time", + "version_check", +] + [[package]] name = "coolor" version = "1.1.0" @@ -1009,9 +998,9 @@ dependencies = [ [[package]] name = "crc" -version = "3.3.0" +version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9710d3b3739c2e349eb44fe848ad0b7c8cb1e42bd87ee49371df2f7acaf3e675" +checksum = "5eb8a2a1cd12ab0d987a5d5e825195d372001a4094a0376319d5a0ad71c1ba0d" dependencies = [ "crc-catalog", ] @@ -1092,7 +1081,7 @@ dependencies = [ "proc-macro2", "quote", "strict", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -1186,7 +1175,7 @@ dependencies = [ "bitflags 2.10.0", "crossterm_winapi", "futures-core", - "mio 1.1.0", + "mio 1.1.1", "parking_lot", "rustix 0.38.44", "signal-hook", @@ -1204,9 +1193,9 @@ dependencies = [ "crossterm_winapi", "derive_more", "document-features", - "mio 1.1.0", + "mio 1.1.1", "parking_lot", - "rustix 1.1.2", + "rustix 1.1.3", "signal-hook", "signal-hook-mio", "winapi", @@ -1246,6 +1235,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" dependencies = [ "generic-array", + "rand_core 0.6.4", "typenum", ] @@ -1287,7 +1277,16 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "32a2785755761f3ddc1492979ce1e48d2c00d09311c39e4466429188f3dd6501" dependencies = [ "quote", - "syn 2.0.111", + "syn 2.0.114", +] + +[[package]] +name = "ctr" +version = "0.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0369ee1ad671834580515889b80f2ea915f23b8be8d0daa4bbaf2ac5c7590835" +dependencies = [ + "cipher", ] [[package]] @@ -1314,15 +1313,9 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] -[[package]] -name = "custom_error" -version = "1.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f8a51dd197fa6ba5b4dc98a990a43cc13693c23eb0089ebb0fcc1f04152bca6" - [[package]] name = "darling" version = "0.14.4" @@ -1378,7 +1371,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -1392,7 +1385,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -1414,7 +1407,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead" dependencies = [ "darling_core 0.20.11", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -1425,7 +1418,7 @@ checksum = "d38308df82d1080de0afee5d069fa14b0326a88c14f15c5ccda35b4a6c414c81" dependencies = [ "darling_core 0.21.3", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -1444,15 +1437,15 @@ dependencies = [ [[package]] name = "data-encoding" -version = "2.9.0" +version = "2.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" +checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea" [[package]] name = "dbus" -version = "0.9.9" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "190b6255e8ab55a7b568df5a883e9497edc3e4821c06396612048b430e5ad1e9" +checksum = "21b3aa68d7e7abee336255bd7248ea965cc393f3e70411135a6f6a4b651345d4" dependencies = [ "libc", "libdbus-sys", @@ -1497,15 +1490,6 @@ dependencies = [ "uuid", ] -[[package]] -name = "debugit" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63c2f7e3034df2b09f750327e23c1adfe33301e6b7388f05bb4fcc0fa46825e3" -dependencies = [ - "version_check 0.1.5", -] - [[package]] name = "der" version = "0.7.10" @@ -1545,7 +1529,7 @@ dependencies = [ "darling 0.20.11", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -1555,28 +1539,29 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ab63b0e2bf4d5928aff72e83a7dace85d7bba5fe12dcc3c5a572d78caffd3f3c" dependencies = [ "derive_builder_core", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] name = "derive_more" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "093242cf7570c207c83073cf82f79706fe7b8317e98620a47d5be7c3d8497678" +checksum = "d751e9e49156b02b44f9c1815bcb94b984cdcc4396ecc32521c739452808b134" dependencies = [ "derive_more-impl", ] [[package]] name = "derive_more-impl" -version = "2.0.1" +version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda628edc44c4bb645fbe0f758797143e4e07926f7ebf4e9bdfbd3d2ce621df3" +checksum = "799a97264921d8623a957f6c3b9011f3b5492f557bbb7a5a19b7fa6d06ba8dcb" dependencies = [ - "convert_case 0.7.1", + "convert_case 0.10.0", "proc-macro2", "quote", - "syn 2.0.111", + "rustc_version", + "syn 2.0.114", ] [[package]] @@ -1587,20 +1572,21 @@ checksum = "ccfae181bab5ab6c5478b2ccb69e4c68a02f8c3ec72f6616bfec9dbc599d2ee0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] name = "devenv" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "async-trait", + "axum", "blake3", "chrono", "clap", "cli-table", - "console 0.16.1", + "console 0.16.2", "devenv-activity", "devenv-cache-core", "devenv-core", @@ -1614,7 +1600,6 @@ dependencies = [ "futures", "hex", "hostname", - "http-client-tls", "include_dir", "indicatif", "indoc", @@ -1626,13 +1611,13 @@ dependencies = [ "pathdiff", "rand 0.8.5", "regex", - "reqwest 0.12.24", + "reqwest 0.13.1", "rmcp", "rmcp-macros", - "schemars 1.1.0", + "schemars 1.2.0", "schematic", "secrecy", - "secretspec 0.5.0", + "secretspec 0.6.1", "ser_nix", "serde", "serde_json", @@ -1651,14 +1636,14 @@ dependencies = [ "tracing-subscriber", "valuable", "which 8.0.0", - "whoami", + "whoami 1.6.1", "xdg", ] [[package]] name = "devenv-activity" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "devenv-activity-macros", "humantime", @@ -1675,11 +1660,11 @@ dependencies = [ [[package]] name = "devenv-activity-macros" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -1687,7 +1672,7 @@ name = "devenv-backend" version = "0.1.0" dependencies = [ "async-trait", - "axum 0.8.7", + "axum", "axum-typed-websockets", "chrono", "clap", @@ -1703,13 +1688,14 @@ dependencies = [ "hmac", "jsonwebtoken", "metrics-prometheus", + "oauth-kit", "octocrab", "pbjson-types", "posthog-rs", "prometheus", "prost", - "reqwest 0.12.24", - "rustls 0.23.35", + "reqwest 0.12.28", + "rustls 0.23.36", "secrecy", "secretspec 0.3.4", "secretspec-derive", @@ -1723,11 +1709,12 @@ dependencies = [ "strum", "strum_macros", "tempfile", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "toml 0.8.23", - "tower 0.5.2", + "tower", "tower-http", + "tower-sessions-cookie-store", "tracing", "tracing-error", "tracing-subscriber", @@ -1735,19 +1722,18 @@ dependencies = [ "utoipa", "utoipa-axum", "uuid", - "zitadel", ] [[package]] name = "devenv-cache-core" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "blake3", "miette", "serde_json", "sqlx", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", "walkdir", @@ -1756,24 +1742,26 @@ dependencies = [ [[package]] name = "devenv-core" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "async-trait", "clap", "devenv-activity", - "devenv-eval-cache", + "devenv-cache-core", "miette", "nix-conf-parser", + "num_enum", "once_cell", "pathdiff", "regex", - "schemars 1.1.0", + "schemars 1.2.0", "schematic", "ser_nix", "serde", "serde_json", + "serde_repr", "serde_yaml", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", ] @@ -1781,20 +1769,21 @@ dependencies = [ [[package]] name = "devenv-eval-cache" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "blake3", + "devenv-activity", "devenv-cache-core", + "devenv-core", "futures", - "lazy_static", "miette", "num_enum", - "regex", + "ser_nix", "serde", "serde_json", "serde_repr", "sqlx", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", ] @@ -1817,7 +1806,7 @@ name = "devenv-logger" version = "0.1.0" dependencies = [ "async-stream", - "axum 0.8.7", + "axum", "axum-extra", "bytes", "criterion", @@ -1826,7 +1815,7 @@ dependencies = [ "hyper 1.8.1", "hyper-util", "hyperlocal", - "reqwest 0.12.24", + "reqwest 0.12.28", "serde", "serde_json", "slatedb", @@ -1840,7 +1829,7 @@ dependencies = [ [[package]] name = "devenv-nix-backend" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "anyhow", "async-trait", @@ -1858,10 +1847,11 @@ dependencies = [ "nix-bindings-util", "nix-cmd", "once_cell", - "secretspec 0.5.0", + "secretspec 0.6.1", "ser_nix", "serde", "serde_json", + "sqlx", "tempfile", "tokio", "tokio-shutdown", @@ -1896,19 +1886,19 @@ dependencies = [ "objc2-foundation", "objc2-virtualization", "pid1", - "reqwest 0.12.24", + "reqwest 0.12.28", "serde", "serde_json", "signal-hook", "sysinfo 0.34.2", "tempfile", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tokio-shutdown", "tokio-stream", "tokio-tungstenite 0.26.2", "tokio-vsock", - "tonic 0.13.1", + "tonic", "tracing", "tracing-subscriber", "url", @@ -1919,11 +1909,11 @@ dependencies = [ [[package]] name = "devenv-tasks" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "blake3", "clap", - "console 0.16.1", + "console 0.16.2", "devenv-activity", "devenv-cache-core", "glob", @@ -1935,7 +1925,7 @@ dependencies = [ "shell-escape", "sqlx", "tempfile", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tokio-shutdown", "tokio-util", @@ -1946,27 +1936,27 @@ dependencies = [ [[package]] name = "devenv-tui" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "anyhow", "async-trait", "chrono", "clap", - "console 0.16.1", + "console 0.16.2", "crossterm 0.28.1", "devenv-activity", "devenv-cache-core", "devenv-eval-cache", "futures", "human-repr", - "indexmap 2.12.1", + "indexmap 2.13.0", "iocraft", "miette", "once_cell", "rand 0.8.5", "serde", "serde_json", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tokio-shutdown", "tracing", @@ -1980,7 +1970,7 @@ version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "25f104b501bf2364e78d0d3974cbc774f738f5865306ed128e1e0d7499c0ad96" dependencies = [ - "console 0.16.1", + "console 0.16.2", "shell-words", "tempfile", "zeroize", @@ -2027,7 +2017,7 @@ dependencies = [ "dsl_auto_type", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -2047,7 +2037,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "209c735641a413bc68c4923a9d6ad4bcb3ca306b794edaa7eb0b3228a99ffb25" dependencies = [ - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -2124,7 +2114,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -2168,7 +2158,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -2185,7 +2175,7 @@ checksum = "f88959de2d447fd3eddcf1909d1f19fe084e27a056a6904203dc5d8b9e771c1e" dependencies = [ "rust_decimal", "serde", - "thiserror 2.0.17", + "thiserror 2.0.18", "time", "winnow 0.6.26", ] @@ -2401,7 +2391,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ce92ff622d6dadf7349484f42c93271a0d49b7cc4d466a936405bacbe10aa78" dependencies = [ "cfg-if", - "rustix 1.1.2", + "rustix 1.1.3", "windows-sys 0.59.0", ] @@ -2434,26 +2424,25 @@ dependencies = [ "serde_yaml", "toml 0.8.23", "uncased", - "version_check 0.9.5", + "version_check", ] [[package]] name = "filetime" -version = "0.2.26" +version = "0.2.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bc0505cd1b6fa6580283f6bdf70a73fcf4aba1184038c90902b92b3dd0df63ed" +checksum = "f98844151eee8917efc50bd9e8318cb963ae8b297431495d3f758616ea5c57db" dependencies = [ "cfg-if", "libc", "libredox", - "windows-sys 0.60.2", ] [[package]] name = "find-msvc-tools" -version = "0.1.5" +version = "0.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844" +checksum = "8591b0bcc8a98a64310a2fae1bb3e9b8564dd10e381e6e28010fde8e8e8568db" [[package]] name = "findshlibs" @@ -2475,9 +2464,9 @@ checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99" [[package]] name = "flatbuffers" -version = "25.9.23" +version = "25.12.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b6620799e7340ebd9968d2e0708eb82cf1971e9a16821e2091b6d6e475eed5" +checksum = "35f6839d7b3b98adde531effaf34f0c2badc6f4735d26fe74709d8e513a96ef3" dependencies = [ "bitflags 2.10.0", "rustc_version", @@ -2485,9 +2474,9 @@ dependencies = [ [[package]] name = "flate2" -version = "1.1.5" +version = "1.1.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfe33edd8e85a12a67454e37f8c75e730830d83e313556ab9ebf9ee7fbeb3bfb" +checksum = "b375d6465b98090a5f25b1c7703f3859783755aa9a80433b36e0379a3ec2f369" dependencies = [ "crc32fast", "miniz_oxide", @@ -2555,7 +2544,7 @@ dependencies = [ "mixtrics", "pin-project", "serde", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", ] @@ -2575,7 +2564,7 @@ dependencies = [ "parking_lot", "pin-project", "serde", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "twox-hash", ] @@ -2608,7 +2597,7 @@ dependencies = [ "parking_lot", "pin-project", "serde", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", ] @@ -2640,7 +2629,7 @@ dependencies = [ "pin-project", "rand 0.9.2", "serde", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", "twox-hash", @@ -2653,7 +2642,7 @@ version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8640e34b88f7652208ce9e88b1a37a2ae95227d84abec377ccd3c5cfeb141ed4" dependencies = [ - "rustix 1.1.2", + "rustix 1.1.3", "windows-sys 0.59.0", ] @@ -2730,7 +2719,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -2765,9 +2754,9 @@ dependencies = [ [[package]] name = "garde" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a989bd2fd12136080f7825ff410d9239ce84a2a639487fc9d924ee42e2fb84f" +checksum = "3a74b56a4039a46e8c91cc9d84e8a7df4e1f8b24239ca57d1304b3263cb599b9" dependencies = [ "compact_str", "garde_derive", @@ -2778,14 +2767,14 @@ dependencies = [ [[package]] name = "garde_derive" -version = "0.22.0" +version = "0.22.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f7f0545bbbba0a37d4d445890fa5759814e0716f02417b39f6fab292193df68" +checksum = "7224c08ec489e2840af29ed882b47f7f6ac8f4ce15c275d9fc0d6d1b94578ae6" dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -2813,20 +2802,20 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4bb6743198531e02858aeaea5398fcc883e71851fcbcb5a2f773e2fb6cb1edf2" dependencies = [ "typenum", - "version_check 0.9.5", + "version_check", "zeroize", ] [[package]] name = "getrandom" -version = "0.2.16" +version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592" +checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0" dependencies = [ "cfg-if", "js-sys", "libc", - "wasi", + "wasi 0.11.1+wasi-snapshot-preview1", "wasm-bindgen", ] @@ -2844,6 +2833,16 @@ dependencies = [ "wasm-bindgen", ] +[[package]] +name = "ghash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0d8a4362ccb29cb0b265253fb0a2728f592895ee6854fd9bc13f2ffda266ff1" +dependencies = [ + "opaque-debug", + "polyval", +] + [[package]] name = "gimli" version = "0.32.3" @@ -2908,7 +2907,7 @@ dependencies = [ "regex", "signal-hook", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -2921,8 +2920,8 @@ dependencies = [ "gix-date", "gix-utils 0.2.0", "itoa", - "thiserror 2.0.17", - "winnow 0.7.13", + "thiserror 2.0.18", + "winnow 0.7.14", ] [[package]] @@ -2936,7 +2935,7 @@ dependencies = [ "gix-object", "gix-worktree-stream", "jiff", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -2952,7 +2951,7 @@ dependencies = [ "gix-trace", "kstring", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", "unicode-bom", ] @@ -2962,7 +2961,7 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e150161b8a75b5860521cb876b506879a3376d3adc857ec7a9d35e7c6a5e531" dependencies = [ - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -2971,7 +2970,7 @@ version = "0.4.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c356b3825677cb6ff579551bb8311a81821e184453cbd105e2fc5311b288eeb" dependencies = [ - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -2997,7 +2996,7 @@ dependencies = [ "gix-chunk", "gix-hash 0.17.0", "memmap2", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3016,9 +3015,9 @@ dependencies = [ "memchr", "once_cell", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", "unicode-bom", - "winnow 0.7.13", + "winnow 0.7.14", ] [[package]] @@ -3031,7 +3030,7 @@ dependencies = [ "bstr", "gix-path", "libc", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3048,7 +3047,7 @@ dependencies = [ "gix-sec", "gix-trace", "gix-url", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3060,7 +3059,7 @@ dependencies = [ "bstr", "itoa", "jiff", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3084,7 +3083,7 @@ dependencies = [ "gix-traverse", "gix-worktree", "imara-diff", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3104,7 +3103,7 @@ dependencies = [ "gix-trace", "gix-utils 0.2.0", "gix-worktree", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3120,7 +3119,7 @@ dependencies = [ "gix-path", "gix-ref", "gix-sec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3141,7 +3140,7 @@ dependencies = [ "once_cell", "parking_lot", "prodash", - "thiserror 2.0.17", + "thiserror 2.0.18", "walkdir", ] @@ -3175,7 +3174,7 @@ dependencies = [ "gix-trace", "gix-utils 0.2.0", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3189,7 +3188,7 @@ dependencies = [ "gix-features 0.41.1", "gix-path", "gix-utils 0.2.0", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3203,7 +3202,7 @@ dependencies = [ "gix-features 0.42.1", "gix-path", "gix-utils 0.3.1", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3227,7 +3226,7 @@ dependencies = [ "faster-hex 0.9.0", "gix-features 0.41.1", "sha1-checked", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3239,7 +3238,7 @@ dependencies = [ "faster-hex 0.10.0", "gix-features 0.42.1", "sha1-checked", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3291,7 +3290,7 @@ dependencies = [ "memmap2", "rustix 0.38.44", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3302,7 +3301,7 @@ checksum = "570f8b034659f256366dc90f1a24924902f20acccd6a15be96d44d1269e7a796" dependencies = [ "gix-tempfile", "gix-utils 0.3.1", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3314,7 +3313,7 @@ dependencies = [ "bstr", "gix-actor", "gix-date", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3330,7 +3329,7 @@ dependencies = [ "gix-object", "gix-revwalk", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3350,8 +3349,8 @@ dependencies = [ "gix-validate 0.9.4", "itoa", "smallvec", - "thiserror 2.0.17", - "winnow 0.7.13", + "thiserror 2.0.18", + "winnow 0.7.14", ] [[package]] @@ -3372,7 +3371,7 @@ dependencies = [ "gix-quote", "parking_lot", "tempfile", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3392,7 +3391,7 @@ dependencies = [ "memmap2", "parking_lot", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", "uluru", ] @@ -3405,7 +3404,7 @@ dependencies = [ "bstr", "faster-hex 0.9.0", "gix-trace", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3417,7 +3416,7 @@ dependencies = [ "bstr", "faster-hex 0.9.0", "gix-trace", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3429,7 +3428,7 @@ dependencies = [ "bstr", "gix-trace", "gix-validate 0.10.1", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3444,7 +3443,7 @@ dependencies = [ "gix-config-value", "gix-glob", "gix-path", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3457,7 +3456,7 @@ dependencies = [ "gix-config-value", "parking_lot", "rustix 0.38.44", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3482,8 +3481,8 @@ dependencies = [ "gix-transport", "gix-utils 0.2.0", "maybe-async", - "thiserror 2.0.17", - "winnow 0.7.13", + "thiserror 2.0.18", + "winnow 0.7.14", ] [[package]] @@ -3494,7 +3493,7 @@ checksum = "1b005c550bf84de3b24aa5e540a23e6146a1c01c7d30470e35d75a12f827f969" dependencies = [ "bstr", "gix-utils 0.2.0", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3514,8 +3513,8 @@ dependencies = [ "gix-utils 0.2.0", "gix-validate 0.9.4", "memmap2", - "thiserror 2.0.17", - "winnow 0.7.13", + "thiserror 2.0.18", + "winnow 0.7.14", ] [[package]] @@ -3529,7 +3528,7 @@ dependencies = [ "gix-revision", "gix-validate 0.9.4", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3547,7 +3546,7 @@ dependencies = [ "gix-object", "gix-revwalk", "gix-trace", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3562,7 +3561,7 @@ dependencies = [ "gix-hashtable", "gix-object", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3586,7 +3585,7 @@ dependencies = [ "bstr", "gix-hash 0.17.0", "gix-lock", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3609,7 +3608,7 @@ dependencies = [ "gix-pathspec", "gix-worktree", "portable-atomic", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3624,7 +3623,7 @@ dependencies = [ "gix-pathspec", "gix-refspec", "gix-url", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3645,9 +3644,9 @@ dependencies = [ [[package]] name = "gix-trace" -version = "0.1.15" +version = "0.1.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d3f59a8de2934f6391b6b3a1a7654eae18961fcb9f9c843533fed34ad0f3457" +checksum = "6e42a4c2583357721ba2d887916e78df504980f22f1182df06997ce197b89504" [[package]] name = "gix-transport" @@ -3664,8 +3663,8 @@ dependencies = [ "gix-quote", "gix-sec", "gix-url", - "reqwest 0.12.24", - "thiserror 2.0.17", + "reqwest 0.12.28", + "thiserror 2.0.18", ] [[package]] @@ -3682,7 +3681,7 @@ dependencies = [ "gix-object", "gix-revwalk", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3695,7 +3694,7 @@ dependencies = [ "gix-features 0.41.1", "gix-path", "percent-encoding", - "thiserror 2.0.17", + "thiserror 2.0.18", "url", ] @@ -3727,7 +3726,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34b5f1253109da6c79ed7cf6e1e38437080bb6d704c76af14c93e2f255234084" dependencies = [ "bstr", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3737,7 +3736,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5b1e63a5b516e970a594f870ed4571a8fdcb8a344e7bd407a20db8bd61dbfde4" dependencies = [ "bstr", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3776,7 +3775,7 @@ dependencies = [ "gix-path", "gix-worktree", "io-close", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3794,7 +3793,7 @@ dependencies = [ "gix-path", "gix-traverse", "parking_lot", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -3844,7 +3843,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.12.1", + "indexmap 2.13.0", "slab", "tokio", "tokio-util", @@ -3853,9 +3852,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.12" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c0b69cfcb4e1b9f1bf2f53f95f766e4661169728ec61cd3fe5a0166f2d1386" +checksum = "2f44da3a8150a6703ed5d34e164b875fd14c2cdab9af1252a9a1020bde2bdc54" dependencies = [ "atomic-waker", "bytes", @@ -3863,7 +3862,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.4.0", - "indexmap 2.12.1", + "indexmap 2.13.0", "slab", "tokio", "tokio-util", @@ -4028,13 +4027,13 @@ dependencies = [ [[package]] name = "hostname" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56f203cd1c76362b69e3863fd987520ac36cf70a8c92627449b2f64a8cf7d65" +checksum = "617aaa3557aef3810a6369d0a99fac8a080891b68bd9f9812a1eeda0c0730cbd" dependencies = [ "cfg-if", "libc", - "windows-link 0.1.3", + "windows-link 0.2.1", ] [[package]] @@ -4092,16 +4091,6 @@ dependencies = [ "pin-project-lite", ] -[[package]] -name = "http-client-tls" -version = "0.1.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" -dependencies = [ - "rustls 0.23.35", - "rustls-platform-verifier", - "thiserror 2.0.17", -] - [[package]] name = "httparse" version = "1.10.1" @@ -4122,9 +4111,9 @@ checksum = "f58b778a5761513caf593693f8951c97a5b610841e754788400f32102eefdff1" [[package]] name = "human_format" -version = "1.1.0" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c3b1f728c459d27b12448862017b96ad4767b1ec2ec5e6434e99f1577f085b8" +checksum = "eaec953f16e5bcf6b8a3cb3aa959b17e5577dbd2693e94554c462c08be22624b" [[package]] name = "humantime" @@ -4166,7 +4155,7 @@ dependencies = [ "bytes", "futures-channel", "futures-core", - "h2 0.4.12", + "h2 0.4.13", "http 1.4.0", "http-body 1.0.1", "httparse", @@ -4203,13 +4192,13 @@ dependencies = [ "hyper 1.8.1", "hyper-util", "log", - "rustls 0.23.35", + "rustls 0.23.36", "rustls-native-certs", "rustls-pki-types", "tokio", "tokio-rustls 0.26.4", "tower-service", - "webpki-roots 1.0.4", + "webpki-roots 1.0.5", ] [[package]] @@ -4243,9 +4232,9 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.18" +version = "0.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52e9a2a24dc5c6821e71a7030e1e14b7b632acac55c40e9d2e082c621261bb56" +checksum = "727805d60e7938b76b826a6ef209eb70eaa1812794f9424d4a4e2d740662df5f" dependencies = [ "base64 0.22.1", "bytes", @@ -4294,7 +4283,7 @@ dependencies = [ "js-sys", "log", "wasm-bindgen", - "windows-core 0.57.0", + "windows-core 0.61.2", ] [[package]] @@ -4354,9 +4343,9 @@ checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a" [[package]] name = "icu_properties" -version = "2.1.1" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e93fcd3157766c0c8da2f8cff6ce651a31f0810eaa1c51ec363ef790bbb5fb99" +checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec" dependencies = [ "icu_collections", "icu_locale_core", @@ -4368,9 +4357,9 @@ dependencies = [ [[package]] name = "icu_properties_data" -version = "2.1.1" +version = "2.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02845b3647bb045f1100ecd6480ff52f34c35f82d9880e029d329c21d1054899" +checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af" [[package]] name = "icu_provider" @@ -4461,9 +4450,9 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.12.1" +version = "2.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ad4bb2b565bca0645f4d68c5c9af97fba094e9791da685bf83cb5f3ce74acf2" +checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017" dependencies = [ "equivalent", "hashbrown 0.16.1", @@ -4500,6 +4489,15 @@ version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8fae54786f62fb2918dcfae3d568594e50eb9b5c25bf04371af6fe7516452fb" +[[package]] +name = "inout" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "879f10e63c20629ecabbb64a8010319738c66a5cd0c29b02d63d272b03751d01" +dependencies = [ + "generic-array", +] + [[package]] name = "inquire" version = "0.6.2" @@ -4529,10 +4527,8 @@ dependencies = [ [[package]] name = "iocraft" version = "0.7.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "278d66852f35d4b9a795285f9b397a9eea69662410fef51940634f56682c3dc3" +source = "git+https://github.com/sandydoo/iocraft?branch=feat-configure-output#17cc06c56e03435afe62275d4db99d472ffa8c8d" dependencies = [ - "any_key", "bitflags 2.10.0", "crossterm 0.28.1", "futures", @@ -4545,12 +4541,11 @@ dependencies = [ [[package]] name = "iocraft-macros" version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2a8b12929295d5fea225570fd69a41084e2949d56ce0c20ff22494ef13e0d56" +source = "git+https://github.com/sandydoo/iocraft?branch=feat-configure-output#17cc06c56e03435afe62275d4db99d472ffa8c8d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", "uuid", ] @@ -4562,9 +4557,9 @@ checksum = "469fb0b9cefa57e3ef31275ee7cacb78f2fdca44e4765491884a2b119d4eb130" [[package]] name = "iri-string" -version = "0.7.9" +version = "0.7.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f867b9d1d896b67beb18518eda36fdb77a32ea590de864f1325b294a6d14397" +checksum = "c91338f0783edbd6195decb37bae672fd3b165faffb89bf7b9e6942f8b1a731a" dependencies = [ "memchr", "serde", @@ -4622,15 +4617,15 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.15" +version = "1.0.17" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" +checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2" [[package]] name = "jiff" -version = "0.2.16" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49cce2b81f2098e7e3efc35bc2e0a6b7abec9d34128283d7a26fa8f32a6dbb35" +checksum = "e67e8da4c49d6d9909fe03361f9b620f58898859f5c7aded68351e85e71ecf50" dependencies = [ "jiff-static", "jiff-tzdb-platform", @@ -4643,20 +4638,20 @@ dependencies = [ [[package]] name = "jiff-static" -version = "0.2.16" +version = "0.2.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "980af8b43c3ad5d8d349ace167ec8170839f753a42d233ba19e08afe1850fa69" +checksum = "e0c84ee7f197eca9a86c6fd6cb771e55eb991632f15f2bc3ca6ec838929e6e78" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] name = "jiff-tzdb" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c1283705eb0a21404d2bfd6eef2a7593d240bc42a0bdb39db0ad6fa2ec026524" +checksum = "68971ebff725b9e2ca27a601c5eb38a4c5d64422c4cbab0c535f248087eda5c2" [[package]] name = "jiff-tzdb-platform" @@ -4701,9 +4696,9 @@ dependencies = [ [[package]] name = "js-sys" -version = "0.3.82" +version = "0.3.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b011eec8cc36da2aab2d5cff675ec18454fad408585853910a202391cf9f8e65" +checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3" dependencies = [ "once_cell", "wasm-bindgen", @@ -4765,9 +4760,9 @@ dependencies = [ [[package]] name = "lazy-regex" -version = "3.4.2" +version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "191898e17ddee19e60bccb3945aa02339e81edd4a8c50e21fd4d48cdecda7b29" +checksum = "c5c13b6857ade4c8ee05c3c3dc97d2ab5415d691213825b90d3211c425c1f907" dependencies = [ "lazy-regex-proc_macros", "once_cell", @@ -4776,14 +4771,14 @@ dependencies = [ [[package]] name = "lazy-regex-proc_macros" -version = "3.4.2" +version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c35dc8b0da83d1a9507e12122c80dea71a9c7c613014347392483a83ea593e04" +checksum = "32a95c68db5d41694cea563c86a4ba4dc02141c16ef64814108cb23def4d5438" dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -4803,15 +4798,15 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.177" +version = "0.2.180" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976" +checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc" [[package]] name = "libdbus-sys" -version = "0.2.6" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cbe856efeb50e4681f010e9aaa2bf0a644e10139e54cde10fc83a307c23bd9f" +checksum = "328c4789d42200f1eeec05bd86c9c13c7f091d2ba9a6ea35acdf51f31bc0f043" dependencies = [ "pkg-config", ] @@ -4834,13 +4829,13 @@ checksum = "f9fbbcab51052fe104eb5e5d351cf728d30a5be1fe14d9be8a3b097481fb97de" [[package]] name = "libredox" -version = "0.1.10" +version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "416f7e718bdb06000964960ffa43b4335ad4012ae8b99060261aa4a8088d5ccb" +checksum = "3d0b95e02c851351f877147b7deea7b1afb1df71b63aa5f8270716e0c5720616" dependencies = [ "bitflags 2.10.0", "libc", - "redox_syscall", + "redox_syscall 0.7.0", ] [[package]] @@ -4871,7 +4866,7 @@ checksum = "e5cec0ec4228b4853bb129c84dbf093a27e6c7a20526da046defc334a1b017f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -4905,13 +4900,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" dependencies = [ "scopeguard", + "serde", ] [[package]] name = "log" -version = "0.4.28" +version = "0.4.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" [[package]] name = "lru-slab" @@ -4965,7 +4961,7 @@ dependencies = [ "spin", "tokio", "tokio-util", - "toml 0.9.8", + "toml 0.9.11+spec-1.1.0", "tracing", "tracing-subscriber", ] @@ -5011,12 +5007,6 @@ dependencies = [ "regex-automata", ] -[[package]] -name = "matchit" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" - [[package]] name = "matchit" version = "0.8.4" @@ -5031,7 +5021,7 @@ checksum = "5cf92c10c7e361d6b99666ec1c6f9805b0bea2c3bd8c78dc6fe98ac5bd78db11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -5070,9 +5060,9 @@ dependencies = [ [[package]] name = "metrics" -version = "0.24.2" +version = "0.24.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25dea7ac8057892855ec285c440160265225438c3c45072613c25a4b26e98ef5" +checksum = "5d5312e9ba3771cfa961b585728215e3d972c950a3eed9252aa093d6301277e8" dependencies = [ "ahash", "portable-atomic", @@ -5134,7 +5124,7 @@ checksum = "db5b29714e950dbb20d5e6f74f9dcec4edbcc1067bb7f8ed198c097b8c1a818b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -5144,7 +5134,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3bda1634d70d5bd53553cf15dca9842a396e8c799982a3ad22998dc44d961f24" dependencies = [ "serde", - "toml 0.9.8", + "toml 0.9.11+spec-1.1.0", ] [[package]] @@ -5197,19 +5187,19 @@ checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c" dependencies = [ "libc", "log", - "wasi", + "wasi 0.11.1+wasi-snapshot-preview1", "windows-sys 0.48.0", ] [[package]] name = "mio" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69d83b0086dc8ecf3ce9ae2874b2d1290252e2a30720bea58a5c6639b0092873" +checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc" dependencies = [ "libc", "log", - "wasi", + "wasi 0.11.1+wasi-snapshot-preview1", "windows-sys 0.61.2", ] @@ -5223,12 +5213,6 @@ dependencies = [ "parking_lot", ] -[[package]] -name = "mopa" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a785740271256c230f57462d3b83e52f998433a7062fc18f96d5999474a9f915" - [[package]] name = "multimap" version = "0.10.1" @@ -5247,7 +5231,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a51313c5820b0b02bd422f4b44776fbf47961755c74ce64afc73bfad10226c3" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", ] [[package]] @@ -5259,7 +5243,7 @@ dependencies = [ "libc", "log", "openssl", - "openssl-probe", + "openssl-probe 0.1.6", "openssl-sys", "schannel", "security-framework 2.11.1", @@ -5304,7 +5288,7 @@ dependencies = [ [[package]] name = "nix-bindings-bindgen-raw" version = "0.1.0" -source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#d8bcb2f23d0dedc063ec559f838f096a82e76cb8" +source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#a1155bb962f8bcf760623135aa418d20af526726" dependencies = [ "bindgen", "pkg-config", @@ -5313,7 +5297,7 @@ dependencies = [ [[package]] name = "nix-bindings-expr" version = "0.1.0" -source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#d8bcb2f23d0dedc063ec559f838f096a82e76cb8" +source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#a1155bb962f8bcf760623135aa418d20af526726" dependencies = [ "anyhow", "cstr", @@ -5329,7 +5313,7 @@ dependencies = [ [[package]] name = "nix-bindings-fetchers" version = "0.1.0" -source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#d8bcb2f23d0dedc063ec559f838f096a82e76cb8" +source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#a1155bb962f8bcf760623135aa418d20af526726" dependencies = [ "anyhow", "cstr", @@ -5343,7 +5327,7 @@ dependencies = [ [[package]] name = "nix-bindings-flake" version = "0.1.0" -source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#d8bcb2f23d0dedc063ec559f838f096a82e76cb8" +source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#a1155bb962f8bcf760623135aa418d20af526726" dependencies = [ "anyhow", "cstr", @@ -5360,7 +5344,7 @@ dependencies = [ [[package]] name = "nix-bindings-store" version = "0.1.0" -source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#d8bcb2f23d0dedc063ec559f838f096a82e76cb8" +source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#a1155bb962f8bcf760623135aa418d20af526726" dependencies = [ "anyhow", "lazy_static", @@ -5372,7 +5356,7 @@ dependencies = [ [[package]] name = "nix-bindings-util" version = "0.1.0" -source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#d8bcb2f23d0dedc063ec559f838f096a82e76cb8" +source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#a1155bb962f8bcf760623135aa418d20af526726" dependencies = [ "anyhow", "ctor", @@ -5382,7 +5366,7 @@ dependencies = [ [[package]] name = "nix-cmd" version = "0.1.0" -source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#d8bcb2f23d0dedc063ec559f838f096a82e76cb8" +source = "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#a1155bb962f8bcf760623135aa418d20af526726" dependencies = [ "anyhow", "nix-bindings-bindgen-raw", @@ -5393,11 +5377,11 @@ dependencies = [ [[package]] name = "nix-conf-parser" version = "0.0.1" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ - "indexmap 2.12.1", + "indexmap 2.13.0", "miette", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -5412,9 +5396,9 @@ dependencies = [ [[package]] name = "ntapi" -version = "0.4.1" +version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4" +checksum = "c70f219e21142367c70c0b30c6a9e3a14d55b4d12a204d897fbec83a0363f081" dependencies = [ "winapi", ] @@ -5519,7 +5503,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -5528,18 +5512,38 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" +[[package]] +name = "oauth-kit" +version = "0.1.0" +dependencies = [ + "async-trait", + "axum", + "axum-extra", + "oauth2", + "openidconnect", + "reqwest 0.12.28", + "serde", + "serde_json", + "thiserror 2.0.18", + "tokio", + "tower-sessions", + "tracing", + "tracing-subscriber", + "url", +] + [[package]] name = "oauth2" version = "5.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "51e219e79014df21a225b1860a479e2dcd7cbd9130f4defd4bd0e191ea31d67d" dependencies = [ - "base64 0.22.1", + "base64 0.21.7", "chrono", - "getrandom 0.2.16", + "getrandom 0.2.17", "http 1.4.0", "rand 0.8.5", - "reqwest 0.12.24", + "reqwest 0.12.28", "serde", "serde_json", "serde_path_to_error", @@ -5788,9 +5792,9 @@ dependencies = [ [[package]] name = "object_store" -version = "0.12.4" +version = "0.12.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c1be0c6c22ec0817cdc77d3842f721a17fd30ab6965001415b5402a74e6b740" +checksum = "fbfbfff40aeccab00ec8a910b57ca8ecf4319b335c542f2edcd19dd25a1e2a00" dependencies = [ "async-trait", "base64 0.22.1", @@ -5808,12 +5812,12 @@ dependencies = [ "percent-encoding", "quick-xml", "rand 0.9.2", - "reqwest 0.12.24", + "reqwest 0.12.28", "ring", "serde", "serde_json", "serde_urlencoded", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", "url", @@ -5855,7 +5859,7 @@ dependencies = [ "serde_urlencoded", "snafu", "tokio", - "tower 0.5.2", + "tower", "tower-http", "tracing", "url", @@ -5881,7 +5885,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" [[package]] -name = "openidconnect" +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + +[[package]] +name = "openidconnect" version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0d8c6709ba2ea764bbed26bce1adf3c10517113ddea6f2d4196e4851757ef2b2" @@ -5934,7 +5944,7 @@ checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -5943,6 +5953,12 @@ version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" +[[package]] +name = "openssl-probe" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f50d9b3dabb09ecd771ad0aa242ca6894994c130308ca3d7684634df8037391" + [[package]] name = "openssl-sys" version = "0.9.111" @@ -5981,9 +5997,9 @@ dependencies = [ [[package]] name = "os_info" -version = "3.13.0" +version = "3.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c39b5918402d564846d5aba164c09a66cc88d232179dfd3e3c619a25a268392" +checksum = "e4022a17595a00d6a369236fdae483f0de7f0a339960a53118b818238e132224" dependencies = [ "android_system_properties", "log", @@ -6016,7 +6032,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -6079,7 +6095,7 @@ checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.5.18", "smallvec", "windows-link 0.2.1", ] @@ -6153,7 +6169,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -6188,7 +6204,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772" dependencies = [ "fixedbitset", - "indexmap 2.12.1", + "indexmap 2.13.0", ] [[package]] @@ -6199,7 +6215,7 @@ checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455" dependencies = [ "fixedbitset", "hashbrown 0.15.5", - "indexmap 2.12.1", + "indexmap 2.13.0", "serde", ] @@ -6250,7 +6266,7 @@ checksum = "6e918e4ff8c4549eb882f14b3a4bc8c8bc93de829416eacf579f1207a8fbf861" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -6320,11 +6336,23 @@ dependencies = [ "plotters-backend", ] +[[package]] +name = "polyval" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d1fe60d06143b2430aa532c94cfe9e29783047f06c0d7fd359a9a51b729fa25" +dependencies = [ + "cfg-if", + "cpufeatures", + "opaque-debug", + "universal-hash", +] + [[package]] name = "portable-atomic" -version = "1.11.1" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483" +checksum = "f89776e4d69bb58bc6993e99ffa1d11f228b839984854c7daeb5d37f87cbe950" [[package]] name = "portable-atomic-util" @@ -6337,9 +6365,9 @@ dependencies = [ [[package]] name = "postgres-protocol" -version = "0.6.9" +version = "0.6.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbef655056b916eb868048276cfd5d6a7dea4f81560dfd047f97c8c6fe3fcfd4" +checksum = "3ee9dd5fe15055d2b6806f4736aa0c9637217074e224bbec46d4041b91bb9491" dependencies = [ "base64 0.22.1", "byteorder", @@ -6355,9 +6383,9 @@ dependencies = [ [[package]] name = "postgres-types" -version = "0.2.11" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef4605b7c057056dd35baeb6ac0c0338e4975b1f2bef0f65da953285eb007095" +checksum = "54b858f82211e84682fecd373f68e1ceae642d8d751a1ebd13f33de6257b3e20" dependencies = [ "bytes", "fallible-iterator", @@ -6410,7 +6438,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" dependencies = [ "proc-macro2", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -6428,14 +6456,14 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "219cb19e96be00ab2e37d6e299658a0cfa83e52429179969b0f0121b4ac46983" dependencies = [ - "toml_edit 0.23.9", + "toml_edit 0.23.10+spec-1.0.0", ] [[package]] name = "proc-macro2" -version = "1.0.103" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee95bc4ef87b8d5ba32e8b7714ccc834865276eab0aed5c9958d00ec45f49e8" +checksum = "535d180e0ecab6268a3e718bb9fd44db66bbbc256257165fc699dadf70d16fe7" dependencies = [ "unicode-ident", ] @@ -6448,8 +6476,8 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", - "version_check 0.9.5", + "syn 2.0.114", + "version_check", "yansi", ] @@ -6459,7 +6487,7 @@ version = "29.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f04bb108f648884c23b98a0e940ebc2c93c0c3b89f04dbaf7eb8256ce617d1bc" dependencies = [ - "bytesize 2.3.0", + "bytesize 2.3.1", "human_format", "log", "parking_lot", @@ -6477,7 +6505,7 @@ dependencies = [ "memchr", "parking_lot", "protobuf", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -6496,7 +6524,7 @@ version = "0.13.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be769465445e8c1474e9c5dac2018218498557af32d9ed057325ec9a41ae81bf" dependencies = [ - "heck 0.5.0", + "heck 0.4.1", "itertools 0.14.0", "log", "multimap", @@ -6506,7 +6534,7 @@ dependencies = [ "prost", "prost-types", "regex", - "syn 2.0.111", + "syn 2.0.114", "tempfile", ] @@ -6520,7 +6548,7 @@ dependencies = [ "itertools 0.14.0", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -6574,9 +6602,9 @@ dependencies = [ "quinn-proto", "quinn-udp", "rustc-hash 2.1.1", - "rustls 0.23.35", + "rustls 0.23.36", "socket2 0.6.1", - "thiserror 2.0.17", + "thiserror 2.0.18", "tokio", "tracing", "web-time", @@ -6588,16 +6616,17 @@ version = "0.11.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" dependencies = [ + "aws-lc-rs", "bytes", "getrandom 0.3.4", "lru-slab", "rand 0.9.2", "ring", "rustc-hash 2.1.1", - "rustls 0.23.35", + "rustls 0.23.36", "rustls-pki-types", "slab", - "thiserror 2.0.17", + "thiserror 2.0.18", "tinyvec", "tracing", "web-time", @@ -6619,9 +6648,9 @@ dependencies = [ [[package]] name = "quote" -version = "1.0.42" +version = "1.0.43" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a338cc41d27e6cc6dce6cefc13a0729dfbb81c262b1f519331575dd80ef3067f" +checksum = "dc74d9a594b72ae6656596548f56f667211f8a97b3d4c3d467150794690dc40a" dependencies = [ "proc-macro2", ] @@ -6650,7 +6679,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1" dependencies = [ "rand_chacha 0.9.0", - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -6670,7 +6699,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb" dependencies = [ "ppv-lite86", - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -6679,14 +6708,14 @@ version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", ] [[package]] name = "rand_core" -version = "0.9.3" +version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38" +checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c" dependencies = [ "getrandom 0.3.4", ] @@ -6706,7 +6735,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f703f4665700daf5512dcca5f43afa6af89f09db47fb56be587f80636bda2d41" dependencies = [ - "rand_core 0.9.3", + "rand_core 0.9.5", ] [[package]] @@ -6738,13 +6767,22 @@ dependencies = [ "bitflags 2.10.0", ] +[[package]] +name = "redox_syscall" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f3fe0889e69e2ae9e41f4d6c4c0181701d00e4697b356fb1f74173a5e0ee27" +dependencies = [ + "bitflags 2.10.0", +] + [[package]] name = "redox_users" version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "libredox", "thiserror 1.0.69", ] @@ -6755,9 +6793,9 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4e608c6638b9c18977b00b475ac1f28d14e84b27d8d42f70e0bf1e3dec127ac" dependencies = [ - "getrandom 0.2.16", + "getrandom 0.2.17", "libredox", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -6777,7 +6815,7 @@ checksum = "b7186006dcb21920990093f30e3dea63b7d6e977bf1256be20c3563a5db070da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -6833,7 +6871,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "rustls 0.21.12", - "rustls-pemfile 1.0.4", + "rustls-pemfile", "serde", "serde_json", "serde_urlencoded", @@ -6852,9 +6890,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.24" +version = "0.12.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d0946410b9f7b082a427e4ef5c8ff541a88b357bc6c637c40db3a68ac70a36f" +checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147" dependencies = [ "base64 0.22.1", "bytes", @@ -6862,7 +6900,7 @@ dependencies = [ "futures-channel", "futures-core", "futures-util", - "h2 0.4.12", + "h2 0.4.13", "http 1.4.0", "http-body 1.0.1", "http-body-util", @@ -6877,7 +6915,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.35", + "rustls 0.23.36", "rustls-native-certs", "rustls-pki-types", "serde", @@ -6888,7 +6926,52 @@ dependencies = [ "tokio-native-tls", "tokio-rustls 0.26.4", "tokio-util", - "tower 0.5.2", + "tower", + "tower-http", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "webpki-roots 1.0.5", +] + +[[package]] +name = "reqwest" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04e9018c9d814e5f30cc16a0f03271aeab3571e609612d9fe78c1aa8d11c2f62" +dependencies = [ + "base64 0.22.1", + "bytes", + "encoding_rs", + "futures-core", + "futures-util", + "h2 0.4.13", + "http 1.4.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.8.1", + "hyper-rustls 0.27.7", + "hyper-util", + "js-sys", + "log", + "mime", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls 0.23.36", + "rustls-pki-types", + "rustls-platform-verifier", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.2", + "tokio", + "tokio-rustls 0.26.4", + "tokio-util", + "tower", "tower-http", "tower-service", "url", @@ -6896,7 +6979,6 @@ dependencies = [ "wasm-bindgen-futures", "wasm-streams", "web-sys", - "webpki-roots 1.0.4", ] [[package]] @@ -6917,7 +6999,7 @@ checksum = "a4689e6c2294d81e88dc6261c768b63bc4fcdb852be6d1352498b114f61383b7" dependencies = [ "cc", "cfg-if", - "getrandom 0.2.16", + "getrandom 0.2.17", "libc", "untrusted", "windows-sys 0.52.0", @@ -6930,18 +7012,27 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "534fd1cd0601e798ac30545ff2b7f4a62c6f14edd4aaed1cc5eb1e85f69f09af" dependencies = [ "base64 0.22.1", + "bytes", "chrono", "futures", + "http 1.4.0", + "http-body 1.0.1", + "http-body-util", "paste", "pin-project-lite", + "rand 0.9.2", "rmcp-macros", - "schemars 1.1.0", + "schemars 1.2.0", "serde", "serde_json", - "thiserror 2.0.17", + "sse-stream", + "thiserror 2.0.18", "tokio", + "tokio-stream", "tokio-util", + "tower-service", "tracing", + "uuid", ] [[package]] @@ -6954,7 +7045,7 @@ dependencies = [ "proc-macro2", "quote", "serde_json", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -6970,9 +7061,9 @@ dependencies = [ [[package]] name = "rsa" -version = "0.9.9" +version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40a0376c50d0358279d9d643e4bf7b7be212f1f4ff1da9070a7b54d22ef75c88" +checksum = "b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d" dependencies = [ "const-oid", "digest", @@ -7000,9 +7091,9 @@ dependencies = [ [[package]] name = "rust_decimal" -version = "1.39.0" +version = "1.40.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35affe401787a9bd846712274d97654355d21b2a2c092a3139aabe31e9022282" +checksum = "61f703d19852dbf87cbc513643fa81428361eb6940f1ac14fd58155d295a3eb0" dependencies = [ "arrayvec", "num-traits", @@ -7010,9 +7101,9 @@ dependencies = [ [[package]] name = "rustc-demangle" -version = "0.1.26" +version = "0.1.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace" +checksum = "b50b8869d9fc858ce7266cce0194bd74df58b9d0e3f6df3a9fc8eb470d95c09d" [[package]] name = "rustc-hash" @@ -7050,9 +7141,9 @@ dependencies = [ [[package]] name = "rustix" -version = "1.1.2" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e" +checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" dependencies = [ "bitflags 2.10.0", "errno", @@ -7075,27 +7166,27 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.35" +version = "0.23.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "533f54bc6a7d4f647e46ad909549eda97bf5afc1585190ef692b4286b198bd8f" +checksum = "c665f33d38cea657d9614f766881e4d510e0eda4239891eea56b4cadcf01801b" dependencies = [ "aws-lc-rs", "log", "once_cell", "ring", "rustls-pki-types", - "rustls-webpki 0.103.8", + "rustls-webpki 0.103.9", "subtle", "zeroize", ] [[package]] name = "rustls-native-certs" -version = "0.8.2" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9980d917ebb0c0536119ba501e90834767bffc3d60641457fd84a1f3fd337923" +checksum = "612460d5f7bea540c490b2b6395d8e34a953e52b491accd6c86c8164c5932a63" dependencies = [ - "openssl-probe", + "openssl-probe 0.2.0", "rustls-pki-types", "schannel", "security-framework 3.5.1", @@ -7110,20 +7201,11 @@ dependencies = [ "base64 0.21.7", ] -[[package]] -name = "rustls-pemfile" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" -dependencies = [ - "rustls-pki-types", -] - [[package]] name = "rustls-pki-types" -version = "1.13.0" +version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94182ad936a0c91c324cd46c6511b9510ed16af436d7b5bab34beab0afd55f7a" +checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd" dependencies = [ "web-time", "zeroize", @@ -7140,10 +7222,10 @@ dependencies = [ "jni", "log", "once_cell", - "rustls 0.23.35", + "rustls 0.23.36", "rustls-native-certs", "rustls-platform-verifier-android", - "rustls-webpki 0.103.8", + "rustls-webpki 0.103.9", "security-framework 3.5.1", "security-framework-sys", "webpki-root-certs", @@ -7168,9 +7250,9 @@ dependencies = [ [[package]] name = "rustls-webpki" -version = "0.103.8" +version = "0.103.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2ffdfa2f5286e2247234e03f680868ac2815974dc39e00ea15adc445d0aafe52" +checksum = "d7df23109aa6c1567d1c575b9952556388da57401e4ace1d15f79eedad0d8f53" dependencies = [ "aws-lc-rs", "ring", @@ -7186,9 +7268,9 @@ checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" [[package]] name = "ryu" -version = "1.0.20" +version = "1.0.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" +checksum = "a50f4cf475b65d88e057964e0e9bb1f0aa9bbb2036dc65c64596b42932536984" [[package]] name = "safemem" @@ -7239,9 +7321,9 @@ dependencies = [ [[package]] name = "schemars" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9558e172d4e8533736ba97870c4b2cd63f84b382a3d6eb063da41b91cce17289" +checksum = "54e910108742c57a770f492731f99be216a52fadd361b06c8fb59d74ccc267d2" dependencies = [ "chrono", "dyn-clone", @@ -7253,14 +7335,14 @@ dependencies = [ [[package]] name = "schemars_derive" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "301858a4023d78debd2353c7426dc486001bddc91ae31a76fb1f55132f7e2633" +checksum = "4908ad288c5035a8eb12cfdf0d49270def0a268ee162b75eeee0f85d155a7c45" dependencies = [ "proc-macro2", "quote", "serde_derive_internals", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -7270,7 +7352,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35c034eb788877c2422b6db6925a19563dcc8b6656e48a9566ef5578309b7c43" dependencies = [ "garde", - "indexmap 2.12.1", + "indexmap 2.13.0", "markdown", "miette", "schemars 0.8.22", @@ -7281,7 +7363,7 @@ dependencies = [ "serde_path_to_error", "serde_yaml", "starbase_styles", - "thiserror 2.0.17", + "thiserror 2.0.18", "tracing", ] @@ -7295,7 +7377,7 @@ dependencies = [ "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -7304,7 +7386,7 @@ version = "0.10.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "145fc73996eeb44c83cbaf7c360212b398390faaaf8640150b465f2ea40940e6" dependencies = [ - "indexmap 2.12.1", + "indexmap 2.13.0", "serde_json", "serde_yaml", ] @@ -7342,7 +7424,7 @@ checksum = "22f968c5ea23d555e670b449c1c5e7b2fc399fdaec1d304a17cd48e288abc107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -7393,13 +7475,13 @@ dependencies = [ "thiserror 1.0.69", "toml 0.8.23", "url", - "whoami", + "whoami 1.6.1", ] [[package]] name = "secretspec" -version = "0.5.0" -source = "git+https://github.com/cachix/secretspec?tag=v0.5.0#099b23b97478751a77f5b0c2b8c4bb0cc8f61bd9" +version = "0.6.1" +source = "git+https://github.com/cachix/secretspec?tag=v0.6.1#23650316932342c62fa6a6ba48ae39e772df784b" dependencies = [ "clap", "colored", @@ -7419,7 +7501,7 @@ dependencies = [ "thiserror 1.0.69", "toml 0.8.23", "url", - "whoami", + "whoami 1.6.1", ] [[package]] @@ -7432,7 +7514,7 @@ dependencies = [ "quote", "secretspec 0.3.4", "serde", - "syn 2.0.111", + "syn 2.0.114", "toml 0.8.23", "url", ] @@ -7487,7 +7569,7 @@ checksum = "255914a8e53822abd946e2ce8baa41d4cded6b8e938913b7f7b9da5b7ab44335" dependencies = [ "httpdate", "native-tls", - "reqwest 0.12.24", + "reqwest 0.12.28", "sentry-backtrace", "sentry-contexts", "sentry-core", @@ -7564,7 +7646,7 @@ version = "0.37.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4b98005537e38ee3bc10e7d36e7febe9b8e573d03f2ddd85fcdf05d21f9abd6d" dependencies = [ - "axum 0.8.7", + "axum", "http 1.4.0", "pin-project", "sentry-core", @@ -7605,7 +7687,7 @@ dependencies = [ [[package]] name = "ser_nix" version = "0.1.2" -source = "git+https://github.com/cachix/ser_nix?branch=support-paths#3bb3ddc87749361f2aaa04565faeabaab892aa02" +source = "git+https://github.com/cachix/ser_nix?branch=support-paths#15b61a91d16ba39ceb3b82fb9906d564bb889e47" dependencies = [ "serde", ] @@ -7630,7 +7712,7 @@ dependencies = [ "dotenvy", "envy", "serde", - "thiserror 2.0.17", + "thiserror 2.0.18", ] [[package]] @@ -7660,7 +7742,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -7671,21 +7753,21 @@ checksum = "18d26a20a969b9e3fdf2fc2d9f21eda6c40e2de84c9408bb5d3b05d499aae711" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] name = "serde_json" -version = "1.0.145" +version = "1.0.149" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" dependencies = [ - "indexmap 2.12.1", + "indexmap 2.13.0", "itoa", "memchr", - "ryu", "serde", "serde_core", + "zmij", ] [[package]] @@ -7716,7 +7798,7 @@ checksum = "175ee3e80ae9982737ca543e96133087cbd9a485eecc3bc4de9c1a37b47ea59c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -7730,9 +7812,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e24345aa0fe688594e73770a5f6d1b216508b4f93484c0026d521acd30134392" +checksum = "f8bbf91e5a4d6315eee45e704372590b30e260ee83af6639d64557f51b067776" dependencies = [ "serde_core", ] @@ -7751,17 +7833,17 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.16.0" +version = "3.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10574371d41b0d9b2cff89418eda27da52bcaff2cc8741db26382a77c29131f1" +checksum = "4fa237f2807440d238e0364a218270b98f767a00d3dada77b1c53ae88940e2e7" dependencies = [ "base64 0.22.1", "chrono", "hex", "indexmap 1.9.3", - "indexmap 2.12.1", + "indexmap 2.13.0", "schemars 0.9.0", - "schemars 1.1.0", + "schemars 1.2.0", "serde_core", "serde_json", "serde_with_macros", @@ -7770,14 +7852,14 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.16.0" +version = "3.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08a72d8216842fdd57820dc78d840bef99248e35fb2554ff923319e60f2d686b" +checksum = "52a8e3ca0ca629121f70ab50f95249e5a6f925cc0f6ffe8256c45b728875706c" dependencies = [ "darling 0.21.3", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -7786,7 +7868,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.12.1", + "indexmap 2.13.0", "itoa", "ryu", "serde", @@ -7842,9 +7924,9 @@ checksum = "45bb67a18fa91266cc7807181f62f9178a6873bfad7dc788c42e6430db40184f" [[package]] name = "shell-words" -version = "1.1.0" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" +checksum = "dc6fe69c597f9c37bfeeeeeb33da3530379845f10be461a66d16d03eca2ded77" [[package]] name = "shlex" @@ -7870,16 +7952,17 @@ checksum = "b75a19a7a740b25bc7944bdee6172368f988763b744e3d4dfe753f6b4ece40cc" dependencies = [ "libc", "mio 0.8.11", - "mio 1.1.0", + "mio 1.1.1", "signal-hook", ] [[package]] name = "signal-hook-registry" -version = "1.4.7" +version = "1.4.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7664a098b8e616bdfcc2dc0e9ac44eb231eedf41db4e9fe95d8d32ec728dedad" +checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b" dependencies = [ + "errno", "libc", ] @@ -7895,9 +7978,9 @@ dependencies = [ [[package]] name = "simd-adler32" -version = "0.3.7" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" +checksum = "e320a6c5ad31d271ad523dcf3ad13e2767ad8b1cb8f047f75a8aeaf8da139da2" [[package]] name = "similar" @@ -7913,7 +7996,7 @@ checksum = "297f631f50729c8c99b84667867963997ec0b50f32b2a7dbcab828ef0541e8bb" dependencies = [ "num-bigint", "num-traits", - "thiserror 2.0.17", + "thiserror 2.0.18", "time", ] @@ -7937,9 +8020,9 @@ checksum = "7a2ae44ef20feb57a68b23d846850f861394c2e02dc425a50098ae8c90267589" [[package]] name = "slatedb" -version = "0.10.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6bab45c2940c214e8f9e80d100f74b90cc3f1cc3b62b9caef0369060612c83b9" +checksum = "588e9ae32019696205a05e54e4456486e8d11b69c72662739be853736833b3dd" dependencies = [ "anyhow", "async-trait", @@ -7986,7 +8069,7 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bdd58c3c93c3d278ca835519292445cb4b0d4dc59ccfdf7ceadaab3f8aeb4038" dependencies = [ - "version_check 0.9.5", + "version_check", ] [[package]] @@ -8013,10 +8096,10 @@ version = "0.8.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c1c97747dbf44bb1ca44a561ece23508e99cb592e862f22222dcf42f51d1e451" dependencies = [ - "heck 0.5.0", + "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -8089,17 +8172,17 @@ dependencies = [ "futures-util", "hashbrown 0.15.5", "hashlink", - "indexmap 2.12.1", + "indexmap 2.13.0", "log", "memchr", "once_cell", "percent-encoding", - "rustls 0.23.35", + "rustls 0.23.36", "serde", "serde_json", "sha2", "smallvec", - "thiserror 2.0.17", + "thiserror 2.0.18", "time", "tokio", "tokio-stream", @@ -8118,7 +8201,7 @@ dependencies = [ "quote", "sqlx-core", "sqlx-macros-core", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -8141,7 +8224,7 @@ dependencies = [ "sqlx-mysql", "sqlx-postgres", "sqlx-sqlite", - "syn 2.0.111", + "syn 2.0.114", "tokio", "url", ] @@ -8183,10 +8266,10 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror 2.0.17", + "thiserror 2.0.18", "time", "tracing", - "whoami", + "whoami 1.6.1", ] [[package]] @@ -8221,10 +8304,10 @@ dependencies = [ "smallvec", "sqlx-core", "stringprep", - "thiserror 2.0.17", + "thiserror 2.0.18", "time", "tracing", - "whoami", + "whoami 1.6.1", ] [[package]] @@ -8246,12 +8329,25 @@ dependencies = [ "serde", "serde_urlencoded", "sqlx-core", - "thiserror 2.0.17", + "thiserror 2.0.18", "time", "tracing", "url", ] +[[package]] +name = "sse-stream" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb4dc4d33c68ec1f27d386b5610a351922656e1fdf5c05bbaad930cd1519479a" +dependencies = [ + "bytes", + "futures-util", + "http-body 1.0.1", + "http-body-util", + "pin-project-lite", +] + [[package]] name = "stable_deref_trait" version = "1.2.1" @@ -8260,9 +8356,9 @@ checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" [[package]] name = "starbase_styles" -version = "0.6.4" +version = "0.6.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dc2b90d883da3735a7eb663fdd7091f57a6328e550707bf2fd76efacbfea66b" +checksum = "fbe90f7d42a3f2d8c3bfa8344be4d182706a986e08d6e833aaf00519c1b57213" dependencies = [ "dirs", "owo-colors", @@ -8322,7 +8418,7 @@ dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -8342,9 +8438,9 @@ dependencies = [ [[package]] name = "supports-hyperlinks" -version = "3.1.0" +version = "3.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804f44ed3c63152de6a9f90acbea1a110441de43006ea51bcce8f436196a288b" +checksum = "e396b6523b11ccb83120b115a0b7366de372751aa6edf19844dfb13a6af97e91" [[package]] name = "supports-unicode" @@ -8365,9 +8461,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.111" +version = "2.0.114" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "390cc9a294ab71bdb1aa2e99d13be9c753cd2d7bd6560c77118597410c4d2e87" +checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a" dependencies = [ "proc-macro2", "quote", @@ -8397,7 +8493,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -8463,14 +8559,14 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.23.0" +version = "3.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16" +checksum = "655da9c7eb6305c55742045d5a8d2037996d61d8de95806335c7c86ce0f82e9c" dependencies = [ "fastrand", "getrandom 0.3.4", "once_cell", - "rustix 1.1.2", + "rustix 1.1.3", "windows-sys 0.61.2", ] @@ -8505,7 +8601,7 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0" dependencies = [ - "rustix 1.1.2", + "rustix 1.1.3", "windows-sys 0.60.2", ] @@ -8530,11 +8626,11 @@ dependencies = [ [[package]] name = "thiserror" -version = "2.0.17" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" dependencies = [ - "thiserror-impl 2.0.17", + "thiserror-impl 2.0.18", ] [[package]] @@ -8545,18 +8641,18 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] name = "thiserror-impl" -version = "2.0.17" +version = "2.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -8570,30 +8666,30 @@ dependencies = [ [[package]] name = "time" -version = "0.3.44" +version = "0.3.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d" +checksum = "f9e442fc33d7fdb45aa9bfeb312c095964abdf596f7567261062b2a7107aaabd" dependencies = [ "deranged", "itoa", "num-conv", "powerfmt", - "serde", + "serde_core", "time-core", "time-macros", ] [[package]] name = "time-core" -version = "0.1.6" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b" +checksum = "8b36ee98fd31ec7426d599183e8fe26932a8dc1fb76ddb6214d05493377d34ca" [[package]] name = "time-macros" -version = "0.2.24" +version = "0.2.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3" +checksum = "71e552d1249bf61ac2a52db88179fd0673def1e1ad8243a00d9ec9ed71fee3dd" dependencies = [ "num-conv", "time-core", @@ -8636,13 +8732,13 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "tokio" -version = "1.48.0" +version = "1.49.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff360e02eab121e0bc37a2d3b4d4dc622e6eda3a8e5253d5435ecf5bd4c68408" +checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86" dependencies = [ "bytes", "libc", - "mio 1.1.0", + "mio 1.1.1", "parking_lot", "pin-project-lite", "signal-hook-registry", @@ -8659,7 +8755,7 @@ checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -8674,9 +8770,9 @@ dependencies = [ [[package]] name = "tokio-postgres" -version = "0.7.15" +version = "0.7.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b40d66d9b2cfe04b628173409368e58247e8eddbbd3b0e6c6ba1d09f20f6c9e" +checksum = "dcea47c8f71744367793f16c2db1f11cb859d28f436bdb4ca9193eb1f787ee42" dependencies = [ "async-trait", "byteorder", @@ -8695,7 +8791,7 @@ dependencies = [ "socket2 0.6.1", "tokio", "tokio-util", - "whoami", + "whoami 2.0.2", ] [[package]] @@ -8714,14 +8810,14 @@ version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1729aa945f29d91ba541258c8df89027d5792d85a8841fb65e8bf0f4ede4ef61" dependencies = [ - "rustls 0.23.35", + "rustls 0.23.36", "tokio", ] [[package]] name = "tokio-shutdown" version = "2.0.0" -source = "git+https://github.com/cachix/devenv?branch=main#087479a204660a29e6c7c9bbf6a025c059c64fed" +source = "git+https://github.com/cachix/devenv?branch=main#1cde97dea0d8af62a29872cc55c4c9eeac6a5e56" dependencies = [ "futures", "nix 0.30.1", @@ -8732,9 +8828,9 @@ dependencies = [ [[package]] name = "tokio-stream" -version = "0.1.17" +version = "0.1.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047" +checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70" dependencies = [ "futures-core", "pin-project-lite", @@ -8767,9 +8863,9 @@ dependencies = [ [[package]] name = "tokio-util" -version = "0.7.17" +version = "0.7.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594" +checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098" dependencies = [ "bytes", "futures-core", @@ -8807,17 +8903,17 @@ dependencies = [ [[package]] name = "toml" -version = "0.9.8" +version = "0.9.11+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0dc8b1fb61449e27716ec0e1bdf0f6b8f3e8f6b05391e8497b8b6d7804ea6d8" +checksum = "f3afc9a848309fe1aaffaed6e1546a7a14de1f935dc9d89d32afd9a44bab7c46" dependencies = [ - "indexmap 2.12.1", + "indexmap 2.13.0", "serde_core", - "serde_spanned 1.0.3", - "toml_datetime 0.7.3", + "serde_spanned 1.0.4", + "toml_datetime 0.7.5+spec-1.1.0", "toml_parser", "toml_writer", - "winnow 0.7.13", + "winnow 0.7.14", ] [[package]] @@ -8831,9 +8927,9 @@ dependencies = [ [[package]] name = "toml_datetime" -version = "0.7.3" +version = "0.7.5+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2cdb639ebbc97961c51720f858597f7f24c4fc295327923af55b74c3c724533" +checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347" dependencies = [ "serde_core", ] @@ -8844,33 +8940,33 @@ version = "0.22.27" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "41fe8c660ae4257887cf66394862d21dbca4a6ddd26f04a3560410406a2f819a" dependencies = [ - "indexmap 2.12.1", + "indexmap 2.13.0", "serde", "serde_spanned 0.6.9", "toml_datetime 0.6.11", "toml_write", - "winnow 0.7.13", + "winnow 0.7.14", ] [[package]] name = "toml_edit" -version = "0.23.9" +version = "0.23.10+spec-1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d7cbc3b4b49633d57a0509303158ca50de80ae32c265093b24c414705807832" +checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269" dependencies = [ - "indexmap 2.12.1", - "toml_datetime 0.7.3", + "indexmap 2.13.0", + "toml_datetime 0.7.5+spec-1.1.0", "toml_parser", - "winnow 0.7.13", + "winnow 0.7.14", ] [[package]] name = "toml_parser" -version = "1.0.4" +version = "1.0.6+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e" +checksum = "a3198b4b0a8e11f09dd03e133c0280504d0801269e9afa46362ffde1cbeebf44" dependencies = [ - "winnow 0.7.13", + "winnow 0.7.14", ] [[package]] @@ -8881,42 +8977,9 @@ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801" [[package]] name = "toml_writer" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df8b2b54733674ad286d16267dcfc7a71ed5c776e4ac7aa3c3e2561f7c637bf2" - -[[package]] -name = "tonic" -version = "0.12.3" +version = "1.0.6+spec-1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "877c5b330756d856ffcc4553ab34a5684481ade925ecc54bcd1bf02b1d0d4d52" -dependencies = [ - "async-stream", - "async-trait", - "axum 0.7.9", - "base64 0.22.1", - "bytes", - "h2 0.4.12", - "http 1.4.0", - "http-body 1.0.1", - "http-body-util", - "hyper 1.8.1", - "hyper-timeout", - "hyper-util", - "percent-encoding", - "pin-project", - "prost", - "rustls-native-certs", - "rustls-pemfile 2.2.0", - "socket2 0.5.10", - "tokio", - "tokio-rustls 0.26.4", - "tokio-stream", - "tower 0.4.13", - "tower-layer", - "tower-service", - "tracing", -] +checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607" [[package]] name = "tonic" @@ -8925,10 +8988,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7e581ba15a835f4d9ea06c55ab1bd4dce26fc53752c69a04aac00703bfb49ba9" dependencies = [ "async-trait", - "axum 0.8.7", + "axum", "base64 0.22.1", "bytes", - "h2 0.4.12", + "h2 0.4.13", "http 1.4.0", "http-body 1.0.1", "http-body-util", @@ -8941,50 +9004,24 @@ dependencies = [ "socket2 0.5.10", "tokio", "tokio-stream", - "tower 0.5.2", + "tower", "tower-layer", "tower-service", "tracing", ] -[[package]] -name = "tonic-build" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9557ce109ea773b399c9b9e5dca39294110b74f1f342cb347a80d1fce8c26a11" -dependencies = [ - "prettyplease", - "proc-macro2", - "prost-build", - "prost-types", - "quote", - "syn 2.0.111", -] - -[[package]] -name = "tonic-types" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0081d8ee0847d01271392a5aebe960a4600f5d4da6c67648a6382a0940f8b367" -dependencies = [ - "prost", - "prost-types", - "tonic 0.12.3", -] - [[package]] name = "tower" -version = "0.4.13" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4" dependencies = [ "futures-core", "futures-util", - "indexmap 1.9.3", - "pin-project", + "indexmap 2.13.0", "pin-project-lite", - "rand 0.8.5", "slab", + "sync_wrapper 1.0.2", "tokio", "tokio-util", "tower-layer", @@ -8993,29 +9030,26 @@ dependencies = [ ] [[package]] -name = "tower" -version = "0.5.2" +name = "tower-cookies" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9" +checksum = "151b5a3e3c45df17466454bb74e9ecedecc955269bdedbf4d150dfa393b55a36" dependencies = [ - "futures-core", + "axum-core", + "cookie", "futures-util", - "indexmap 2.12.1", + "http 1.4.0", + "parking_lot", "pin-project-lite", - "slab", - "sync_wrapper 1.0.2", - "tokio", - "tokio-util", "tower-layer", "tower-service", - "tracing", ] [[package]] name = "tower-http" -version = "0.6.7" +version = "0.6.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cf146f99d442e8e68e585f5d798ccd3cad9a7835b917e09728880a862706456" +checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8" dependencies = [ "bitflags 2.10.0", "bytes", @@ -9025,7 +9059,7 @@ dependencies = [ "http-body-util", "iri-string", "pin-project-lite", - "tower 0.5.2", + "tower", "tower-layer", "tower-service", "tracing", @@ -9043,11 +9077,81 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" +[[package]] +name = "tower-sessions" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "43a05911f23e8fae446005fe9b7b97e66d95b6db589dc1c4d59f6a2d4d4927d3" +dependencies = [ + "async-trait", + "http 1.4.0", + "time", + "tokio", + "tower-cookies", + "tower-layer", + "tower-service", + "tower-sessions-core", + "tower-sessions-memory-store", + "tracing", +] + +[[package]] +name = "tower-sessions-cookie-store" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8831be41b579a91b2b4084e2a8b5a383ac4e73a93c2a0dbb0c1d232a7e3f7247" +dependencies = [ + "async-trait", + "base64 0.22.1", + "http 1.4.0", + "serde", + "serde_json", + "time", + "tower-cookies", + "tower-layer", + "tower-service", + "tower-sessions-core", + "tracing", +] + +[[package]] +name = "tower-sessions-core" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce8cce604865576b7751b7a6bc3058f754569a60d689328bb74c52b1d87e355b" +dependencies = [ + "async-trait", + "axum-core", + "base64 0.22.1", + "futures", + "http 1.4.0", + "parking_lot", + "rand 0.8.5", + "serde", + "serde_json", + "thiserror 2.0.18", + "time", + "tokio", + "tracing", +] + +[[package]] +name = "tower-sessions-memory-store" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb05909f2e1420135a831dd5df9f5596d69196d0a64c3499ca474c4bd3d33242" +dependencies = [ + "async-trait", + "time", + "tokio", + "tower-sessions-core", +] + [[package]] name = "tracing" -version = "0.1.41" +version = "0.1.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" +checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100" dependencies = [ "log", "pin-project-lite", @@ -9057,20 +9161,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.30" +version = "0.1.31" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903" +checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] name = "tracing-core" -version = "0.1.34" +version = "0.1.36" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678" +checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a" dependencies = [ "once_cell", "valuable", @@ -9123,9 +9227,9 @@ dependencies = [ [[package]] name = "tracing-subscriber" -version = "0.3.20" +version = "0.3.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5" +checksum = "2f30143827ddab0d256fd843b7a66d164e9f271cfa0dde49142c5ca0ca291f1e" dependencies = [ "matchers", "nu-ansi-term", @@ -9163,7 +9267,7 @@ dependencies = [ "log", "rand 0.9.2", "sha1", - "thiserror 2.0.17", + "thiserror 2.0.18", "utf-8", ] @@ -9180,7 +9284,7 @@ dependencies = [ "log", "rand 0.9.2", "sha1", - "thiserror 2.0.17", + "thiserror 2.0.18", "utf-8", ] @@ -9234,7 +9338,7 @@ version = "0.9.10" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e1b88fcfe09e89d3866a5c11019378088af2d24c3fbd4f0543f96b479ec90697" dependencies = [ - "version_check 0.9.5", + "version_check", ] [[package]] @@ -9300,6 +9404,16 @@ version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4ac048d71ede7ee76d585517add45da530660ef4390e49b098733c6e897f254" +[[package]] +name = "universal-hash" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc1de2c688dc15305988b563c3854064043356019f97a4b46276fe734c4f07ea" +dependencies = [ + "crypto-common", + "subtle", +] + [[package]] name = "unsafe-libyaml" version = "0.2.11" @@ -9327,14 +9441,15 @@ dependencies = [ [[package]] name = "url" -version = "2.5.7" +version = "2.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b" +checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed" dependencies = [ "form_urlencoded", "idna", "percent-encoding", "serde", + "serde_derive", ] [[package]] @@ -9361,7 +9476,7 @@ version = "5.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2fcc29c80c21c31608227e0912b2d7fddba57ad76b606890627ba8ee7964e993" dependencies = [ - "indexmap 2.12.1", + "indexmap 2.13.0", "serde", "serde_json", "utoipa-gen", @@ -9373,7 +9488,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7c25bae5bccc842449ec0c5ddc5cbb6a3a1eaeac4503895dc105a1138f8234a0" dependencies = [ - "axum 0.8.7", + "axum", "paste", "tower-layer", "tower-service", @@ -9388,19 +9503,19 @@ checksum = "6d79d08d92ab8af4c5e8a6da20c47ae3f61a0f1dabc1997cdf2d082b757ca08b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", "uuid", ] [[package]] name = "uuid" -version = "1.18.1" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f87b8aa10b915a06587d0dec516c282ff295b475d94abf425d62b57710070a2" +checksum = "e2e054861b4bd027cd373e18e8d8d8e6548085000e41290d95ce0c373a654b4a" dependencies = [ "getrandom 0.3.4", "js-sys", - "serde", + "serde_core", "wasm-bindgen", ] @@ -9421,7 +9536,7 @@ checksum = "4e3a32a9bcc0f6c6ccfd5b27bcf298c58e753bcc9eeff268157a303393183a6d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -9440,12 +9555,6 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" -[[package]] -name = "version_check" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" - [[package]] name = "version_check" version = "0.9.5" @@ -9520,11 +9629,20 @@ version = "0.11.1+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b" +[[package]] +name = "wasi" +version = "0.14.7+wasi-0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c" +dependencies = [ + "wasip2", +] + [[package]] name = "wasip2" -version = "1.0.1+wasi-0.2.4" +version = "1.0.2+wasi-0.2.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7" +checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" dependencies = [ "wit-bindgen", ] @@ -9535,11 +9653,20 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b8dad83b4f25e74f184f64c43b150b91efe7647395b42289f38e50566d82855b" +[[package]] +name = "wasite" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66fe902b4a6b8028a753d5424909b764ccf79b7a209eac9bf97e59cda9f71a42" +dependencies = [ + "wasi 0.14.7+wasi-0.2.4", +] + [[package]] name = "wasm-bindgen" -version = "0.2.105" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da95793dfc411fbbd93f5be7715b0578ec61fe87cb1a42b12eb625caa5c5ea60" +checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566" dependencies = [ "cfg-if", "once_cell", @@ -9550,11 +9677,12 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.55" +version = "0.4.58" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "551f88106c6d5e7ccc7cd9a16f312dd3b5d36ea8b4954304657d5dfba115d4a0" +checksum = "70a6e77fd0ae8029c9ea0063f87c46fde723e7d887703d74ad2616d792e51e6f" dependencies = [ "cfg-if", + "futures-util", "js-sys", "once_cell", "wasm-bindgen", @@ -9563,9 +9691,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.105" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04264334509e04a7bf8690f2384ef5265f05143a4bff3889ab7a3269adab59c2" +checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -9573,22 +9701,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.105" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "420bc339d9f322e562942d52e115d57e950d12d88983a14c79b86859ee6c7ebc" +checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55" dependencies = [ "bumpalo", "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.105" +version = "0.2.108" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76f218a38c84bcb33c25ec7059b07847d465ce0e0a76b995e134a45adcb6af76" +checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12" dependencies = [ "unicode-ident", ] @@ -9608,9 +9736,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.82" +version = "0.3.85" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a1f95c0d03a47f4ae1f7a64643a6bb97465d9b740f0fa8f90ea33915c99a9a1" +checksum = "312e32e551d92129218ea9a2452120f4aabc03529ef03e4d0d82fb2780608598" dependencies = [ "js-sys", "wasm-bindgen", @@ -9629,9 +9757,9 @@ dependencies = [ [[package]] name = "webpki-root-certs" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee3e3b5f5e80bc89f30ce8d0343bf4e5f12341c51f3e26cbeecbc7c85443e85b" +checksum = "36a29fc0408b113f68cf32637857ab740edfafdf460c326cd2afaa2d84cc05dc" dependencies = [ "rustls-pki-types", ] @@ -9648,14 +9776,14 @@ version = "0.26.11" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "521bc38abb08001b01866da9f51eb7c5d647a19260e00054a8c7fd5f9e57f7a9" dependencies = [ - "webpki-roots 1.0.4", + "webpki-roots 1.0.5", ] [[package]] name = "webpki-roots" -version = "1.0.4" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2878ef029c47c6e8cf779119f20fcf52bde7ad42a731b2a304bc221df17571e" +checksum = "12bed680863276c63889429bfd6cab3b99943659923822de1c8a39c49e4d722c" dependencies = [ "rustls-pki-types", ] @@ -9679,7 +9807,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3fabb953106c3c8eea8306e4393700d7657561cb43122571b172bbfb7c7ba1d" dependencies = [ "env_home", - "rustix 1.1.2", + "rustix 1.1.3", "winsafe", ] @@ -9690,7 +9818,18 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5d4a4db5077702ca3015d3d02d74974948aba2ad9e12ab7df718ee64ccd7e97d" dependencies = [ "libredox", - "wasite", + "wasite 0.1.0", + "web-sys", +] + +[[package]] +name = "whoami" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace4d5c7b5ab3d99629156d4e0997edbe98a4beb6d5ba99e2cae830207a81983" +dependencies = [ + "libredox", + "wasite 1.0.2", "web-sys", ] @@ -9801,7 +9940,7 @@ checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -9812,7 +9951,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -9823,7 +9962,7 @@ checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -9834,7 +9973,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -10232,9 +10371,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.7.13" +version = "0.7.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf" +checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829" dependencies = [ "memchr", ] @@ -10257,9 +10396,9 @@ checksum = "d135d17ab770252ad95e9a872d365cf3090e3be864a34ab46f48555993efc904" [[package]] name = "wit-bindgen" -version = "0.46.0" +version = "0.51.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59" +checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" [[package]] name = "writeable" @@ -10298,28 +10437,28 @@ checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", "synstructure", ] [[package]] name = "zerocopy" -version = "0.8.30" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea879c944afe8a2b25fef16bb4ba234f47c694565e97383b36f3a878219065c" +checksum = "668f5168d10b9ee831de31933dc111a459c97ec93225beb307aed970d1372dfd" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.8.30" +version = "0.8.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf955aa904d6040f70dc8e9384444cb1030aed272ba3cb09bbc4ab9e7c1f34f5" +checksum = "2c7962b26b0a8685668b671ee4b54d007a67d4eaf05fda79ac0ecf41e32270f1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -10339,7 +10478,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", "synstructure", ] @@ -10354,13 +10493,13 @@ dependencies = [ [[package]] name = "zeroize_derive" -version = "1.4.2" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", + "syn 2.0.114", ] [[package]] @@ -10393,56 +10532,14 @@ checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.111", -] - -[[package]] -name = "zitadel" -version = "0.0.0-development" -source = "git+https://github.com/cachix/zitadel-rust?branch=cachix#bf54b405fa03654087f6624013e8ffdf848c0335" -dependencies = [ - "async-trait", - "axum 0.8.7", - "axum-extra", - "base64-compat", - "custom_error", - "hex", - "hmac", - "jsonwebtoken", - "openidconnect", - "pbjson-types", - "prost", - "prost-types", - "reqwest 0.12.24", - "serde", - "serde_json", - "serde_urlencoded", - "sha2", - "thiserror 1.0.69", - "time", - "tonic 0.12.3", - "tonic-types", - "zitadel-gen", + "syn 2.0.114", ] [[package]] -name = "zitadel-gen" -version = "4.0.3" -source = "git+https://github.com/cachix/zitadel-rust?branch=cachix#bf54b405fa03654087f6624013e8ffdf848c0335" -dependencies = [ - "anyhow", - "pbjson", - "pbjson-build", - "pbjson-types", - "prost", - "prost-build", - "prost-types", - "regex", - "serde", - "serde_json", - "tonic 0.12.3", - "tonic-build", -] +name = "zmij" +version = "1.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfcd145825aace48cff44a8844de64bf75feec3080e0aa5cdbde72961ae51a65" [[package]] name = "zstd" diff --git a/Cargo.nix b/Cargo.nix new file mode 100644 index 0000000..629d819 --- /dev/null +++ b/Cargo.nix @@ -0,0 +1,40267 @@ + +# This file was @generated by crate2nix 0.15.0 with the command: +# "generate" +# See https://github.com/kolloch/crate2nix for more info. + +{ nixpkgs ? +, pkgs ? import nixpkgs { config = {}; } +, fetchurl ? pkgs.fetchurl +, 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 ? [] + # Additional target attributes for conditional dependencies. + # Use this for custom cfg flags that are passed via rustcflags but need to + # be known at Nix evaluation time for dependency resolution. + # Example: { tracing_unstable = true; } for crates using cfg(tracing_unstable). +, extraTargetFlags ? {} + # 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. + # + + + # Refer your crate build derivation by name here. + # You can override the features with + # workspaceMembers."${crateName}".build.override { features = [ "default" "feature1" ... ]; }. + workspaceMembers = { + "cloud-hypervisor-client" = rec { + packageId = "cloud-hypervisor-client"; + build = internal.buildRustCrateWithFeatures { + packageId = "cloud-hypervisor-client"; + }; + + # Debug support which might change between releases. + # File a bug if you depend on any for non-debug work! + debug = internal.debugCrate { inherit packageId; }; + }; + "devenv-backend" = rec { + packageId = "devenv-backend"; + build = internal.buildRustCrateWithFeatures { + packageId = "devenv-backend"; + }; + + # Debug support which might change between releases. + # File a bug if you depend on any for non-debug work! + debug = internal.debugCrate { inherit packageId; }; + }; + "devenv-init" = rec { + packageId = "devenv-init"; + build = internal.buildRustCrateWithFeatures { + packageId = "devenv-init"; + }; + + # Debug support which might change between releases. + # File a bug if you depend on any for non-debug work! + debug = internal.debugCrate { inherit packageId; }; + }; + "devenv-logger" = rec { + packageId = "devenv-logger"; + build = internal.buildRustCrateWithFeatures { + packageId = "devenv-logger"; + }; + + # Debug support which might change between releases. + # File a bug if you depend on any for non-debug work! + debug = internal.debugCrate { inherit packageId; }; + }; + "devenv-runner" = rec { + packageId = "devenv-runner"; + build = internal.buildRustCrateWithFeatures { + packageId = "devenv-runner"; + }; + + # Debug support which might change between releases. + # File a bug if you depend on any for non-debug work! + debug = internal.debugCrate { inherit packageId; }; + }; + "oauth-kit" = rec { + packageId = "oauth-kit"; + build = internal.buildRustCrateWithFeatures { + packageId = "oauth-kit"; + }; + + # 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.25.1"; + edition = "2018"; + crateBin = []; + sha256 = "0jwb96gv17vdr29hbzi0ha5q6jkpgjyn7rjlg5nis65k41rk0p8v"; + dependencies = [ + { + name = "gimli"; + packageId = "gimli"; + usesDefaultFeatures = false; + features = [ "read" ]; + } + ]; + features = { + "all" = [ "bin" "wasm" ]; + "alloc" = [ "dep:alloc" ]; + "bin" = [ "loader" "rustc-demangle" "cpp_demangle" "fallible-iterator" "smallvec" "dep:clap" ]; + "core" = [ "dep:core" ]; + "cpp_demangle" = [ "dep:cpp_demangle" ]; + "default" = [ "rustc-demangle" "cpp_demangle" "loader" "fallible-iterator" "smallvec" ]; + "fallible-iterator" = [ "dep:fallible-iterator" ]; + "loader" = [ "std" "dep:object" "dep:memmap2" "dep:typed-arena" ]; + "rustc-demangle" = [ "dep:rustc-demangle" ]; + "rustc-dep-of-std" = [ "core" "alloc" "gimli/rustc-dep-of-std" ]; + "smallvec" = [ "dep:smallvec" ]; + "std" = [ "gimli/std" ]; + "wasm" = [ "object/wasm" ]; + }; + }; + "adler2" = rec { + crateName = "adler2"; + version = "2.0.1"; + edition = "2021"; + sha256 = "1ymy18s9hs7ya1pjc9864l30wk8p2qfqdi7mhhcc5nfakxbij09j"; + authors = [ + "Jonas Schievink " + "oyvindln " + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "std" ]; + "rustc-dep-of-std" = [ "core" ]; + }; + }; + "aead" = rec { + crateName = "aead"; + version = "0.5.2"; + edition = "2021"; + sha256 = "1c32aviraqag7926xcb9sybdm36v5vh9gnxpn4pxdwjc50zl28ni"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "crypto-common"; + packageId = "crypto-common"; + } + { + name = "generic-array"; + packageId = "generic-array"; + usesDefaultFeatures = false; + } + ]; + features = { + "arrayvec" = [ "dep:arrayvec" ]; + "blobby" = [ "dep:blobby" ]; + "bytes" = [ "dep:bytes" ]; + "default" = [ "rand_core" ]; + "dev" = [ "blobby" ]; + "getrandom" = [ "crypto-common/getrandom" "rand_core" ]; + "heapless" = [ "dep:heapless" ]; + "rand_core" = [ "crypto-common/rand_core" ]; + "std" = [ "alloc" "crypto-common/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "getrandom" "rand_core" ]; + }; + "aes" = rec { + crateName = "aes"; + version = "0.8.4"; + edition = "2021"; + sha256 = "1853796anlwp4kqim0s6wm1srl4ib621nm0cl2h3c8klsjkgfsdi"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "cipher"; + packageId = "cipher"; + } + { + name = "cpufeatures"; + packageId = "cpufeatures"; + target = { target, features }: (("aarch64" == target."arch" or null) || ("x86_64" == target."arch" or null) || ("x86" == target."arch" or null)); + } + ]; + devDependencies = [ + { + name = "cipher"; + packageId = "cipher"; + features = [ "dev" ]; + } + ]; + features = { + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "aes-gcm" = rec { + crateName = "aes-gcm"; + version = "0.10.3"; + edition = "2021"; + sha256 = "1lgaqgg1gh9crg435509lqdhajg1m2vgma6f7fdj1qa2yyh10443"; + libName = "aes_gcm"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "aead"; + packageId = "aead"; + usesDefaultFeatures = false; + } + { + name = "aes"; + packageId = "aes"; + optional = true; + } + { + name = "cipher"; + packageId = "cipher"; + } + { + name = "ctr"; + packageId = "ctr"; + } + { + name = "ghash"; + packageId = "ghash"; + usesDefaultFeatures = false; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "aead"; + packageId = "aead"; + usesDefaultFeatures = false; + features = [ "dev" ]; + } + ]; + features = { + "aes" = [ "dep:aes" ]; + "alloc" = [ "aead/alloc" ]; + "arrayvec" = [ "aead/arrayvec" ]; + "default" = [ "aes" "alloc" "getrandom" ]; + "getrandom" = [ "aead/getrandom" "rand_core" ]; + "heapless" = [ "aead/heapless" ]; + "rand_core" = [ "aead/rand_core" ]; + "std" = [ "aead/std" "alloc" ]; + "stream" = [ "aead/stream" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "aes" "alloc" "default" "getrandom" "rand_core" ]; + }; + "ahash" = rec { + crateName = "ahash"; + version = "0.8.12"; + edition = "2018"; + sha256 = "0xbsp9rlm5ki017c0w6ay8kjwinwm8knjncci95mii30rmwz25as"; + authors = [ + "Tom Kaitchuck " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + target = { target, features }: (!(("arm" == target."arch" or null) && ("none" == target."os" or null))); + features = [ "alloc" ]; + } + { + name = "zerocopy"; + packageId = "zerocopy"; + usesDefaultFeatures = false; + features = [ "simd" ]; + } + ]; + buildDependencies = [ + { + name = "version_check"; + packageId = "version_check"; + } + ]; + features = { + "atomic-polyfill" = [ "dep:portable-atomic" "once_cell/critical-section" ]; + "compile-time-rng" = [ "const-random" ]; + "const-random" = [ "dep:const-random" ]; + "default" = [ "std" "runtime-rng" ]; + "getrandom" = [ "dep:getrandom" ]; + "runtime-rng" = [ "getrandom" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "getrandom" "runtime-rng" "std" ]; + }; + "aho-corasick" = rec { + crateName = "aho-corasick"; + version = "1.1.4"; + edition = "2021"; + sha256 = "00a32wb2h07im3skkikc495jvncf62jl6s96vwc7bhi70h9imlyx"; + libName = "aho_corasick"; + authors = [ + "Andrew Gallant " + ]; + 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" ]; + }; + "aliasable" = rec { + crateName = "aliasable"; + version = "0.1.3"; + edition = "2018"; + sha256 = "1z8548zdjlm4ps1k0d7x68lfdyji02crwcc9rw3q3bb106f643r5"; + authors = [ + "avitex " + ]; + features = { + "aliasable_deref_trait" = [ "dep:aliasable_deref_trait" ]; + "default" = [ "alloc" ]; + "stable_deref_trait" = [ "dep:stable_deref_trait" ]; + "traits" = [ "stable_deref_trait" "aliasable_deref_trait" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" ]; + }; + "allocator-api2" = rec { + crateName = "allocator-api2"; + version = "0.2.21"; + edition = "2018"; + sha256 = "08zrzs022xwndihvzdn78yqarv2b9696y67i6h78nla3ww87jgb8"; + libName = "allocator_api2"; + authors = [ + "Zakarum " + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "android_system_properties" = rec { + crateName = "android_system_properties"; + version = "0.1.5"; + edition = "2018"; + sha256 = "04b3wrz12837j7mdczqd95b732gw5q7q66cv4yn4646lvccp57l1"; + authors = [ + "Nicolas Silva " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + ]; + + }; + "anes" = rec { + crateName = "anes"; + version = "0.1.6"; + edition = "2018"; + sha256 = "16bj1ww1xkwzbckk32j2pnbn5vk6wgsl3q4p3j9551xbcarwnijb"; + authors = [ + "Robert Vojta " + ]; + features = { + "bitflags" = [ "dep:bitflags" ]; + "parser" = [ "bitflags" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "anstream" = rec { + crateName = "anstream"; + version = "0.6.21"; + edition = "2021"; + sha256 = "0jjgixms4qjj58dzr846h2s29p8w7ynwr9b9x6246m1pwy0v5ma3"; + dependencies = [ + { + name = "anstyle"; + packageId = "anstyle"; + } + { + name = "anstyle-parse"; + packageId = "anstyle-parse"; + } + { + name = "anstyle-query"; + packageId = "anstyle-query"; + optional = true; + } + { + name = "anstyle-wincon"; + packageId = "anstyle-wincon"; + optional = true; + target = { target, features }: (target."windows" or false); + } + { + name = "colorchoice"; + packageId = "colorchoice"; + } + { + name = "is_terminal_polyfill"; + packageId = "is_terminal_polyfill"; + } + { + name = "utf8parse"; + packageId = "utf8parse"; + } + ]; + features = { + "auto" = [ "dep:anstyle-query" ]; + "default" = [ "auto" "wincon" ]; + "wincon" = [ "dep:anstyle-wincon" ]; + }; + resolvedDefaultFeatures = [ "auto" "default" "wincon" ]; + }; + "anstyle" = rec { + crateName = "anstyle"; + version = "1.0.13"; + edition = "2021"; + sha256 = "0y2ynjqajpny6q0amvfzzgw0gfw3l47z85km4gvx87vg02lcr4ji"; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "anstyle-parse" = rec { + crateName = "anstyle-parse"; + version = "0.2.7"; + edition = "2021"; + sha256 = "1hhmkkfr95d462b3zf6yl2vfzdqfy5726ya572wwg8ha9y148xjf"; + libName = "anstyle_parse"; + dependencies = [ + { + name = "utf8parse"; + packageId = "utf8parse"; + optional = true; + } + ]; + features = { + "core" = [ "dep:arrayvec" ]; + "default" = [ "utf8" ]; + "utf8" = [ "dep:utf8parse" ]; + }; + resolvedDefaultFeatures = [ "default" "utf8" ]; + }; + "anstyle-query" = rec { + crateName = "anstyle-query"; + version = "1.1.5"; + edition = "2021"; + sha256 = "1p6shfpnbghs6jsa0vnqd8bb8gd7pjd0jr7w0j8jikakzmr8zi20"; + libName = "anstyle_query"; + dependencies = [ + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_System_Console" "Win32_Foundation" ]; + } + ]; + + }; + "anstyle-wincon" = rec { + crateName = "anstyle-wincon"; + version = "3.0.11"; + edition = "2021"; + sha256 = "0zblannm70sk3xny337mz7c6d8q8i24vhbqi42ld8v7q1wjnl7i9"; + libName = "anstyle_wincon"; + dependencies = [ + { + name = "anstyle"; + packageId = "anstyle"; + } + { + name = "once_cell_polyfill"; + packageId = "once_cell_polyfill"; + target = { target, features }: (target."windows" or false); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_System_Console" "Win32_Foundation" ]; + } + ]; + + }; + "anyhow" = rec { + crateName = "anyhow"; + version = "1.0.100"; + edition = "2018"; + sha256 = "0qbfmw4hhv2ampza1csyvf1jqjs2dgrj29cv3h3sh623c6qvcgm2"; + authors = [ + "David Tolnay " + ]; + features = { + "backtrace" = [ "dep:backtrace" ]; + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "arc-swap" = rec { + crateName = "arc-swap"; + version = "1.8.0"; + edition = "2018"; + sha256 = "0zi02pwgn0vj615k6gpsr36fa6ix8qqsys88ywpcr8lcpd4k9l2i"; + libName = "arc_swap"; + authors = [ + "Michal 'vorner' Vaner " + ]; + dependencies = [ + { + name = "rustversion"; + packageId = "rustversion"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + }; + "arrayref" = rec { + crateName = "arrayref"; + version = "0.3.9"; + edition = "2015"; + sha256 = "1jzyp0nvp10dmahaq9a2rnxqdd5wxgbvp8xaibps3zai8c9fi8kn"; + authors = [ + "David Roundy " + ]; + + }; + "arrayvec" = rec { + crateName = "arrayvec"; + version = "0.7.6"; + edition = "2018"; + sha256 = "0l1fz4ccgv6pm609rif37sl5nv5k6lbzi7kkppgzqzh1vwix20kw"; + authors = [ + "bluss" + ]; + features = { + "borsh" = [ "dep:borsh" ]; + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "async-channel" = rec { + crateName = "async-channel"; + version = "2.5.0"; + edition = "2021"; + sha256 = "1ljq24ig8lgs2555myrrjighycpx2mbjgrm3q7lpa6rdsmnxjklj"; + libName = "async_channel"; + authors = [ + "Stjepan Glavina " + ]; + dependencies = [ + { + name = "concurrent-queue"; + packageId = "concurrent-queue"; + usesDefaultFeatures = false; + } + { + name = "event-listener-strategy"; + packageId = "event-listener-strategy"; + usesDefaultFeatures = false; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + features = { + "default" = [ "std" ]; + "portable-atomic" = [ "concurrent-queue/portable-atomic" "event-listener-strategy/portable-atomic" "dep:portable-atomic-util" "dep:portable-atomic" ]; + "std" = [ "concurrent-queue/std" "event-listener-strategy/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "async-stream" = rec { + crateName = "async-stream"; + version = "0.3.6"; + edition = "2021"; + sha256 = "0xl4zqncrdmw2g6241wgr11dxdg4h7byy6bz3l6si03qyfk72nhb"; + libName = "async_stream"; + authors = [ + "Carl Lerche " + ]; + dependencies = [ + { + name = "async-stream-impl"; + packageId = "async-stream-impl"; + } + { + name = "futures-core"; + packageId = "futures-core"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + + }; + "async-stream-impl" = rec { + crateName = "async-stream-impl"; + version = "0.3.6"; + edition = "2021"; + sha256 = "0kaplfb5axsvf1gfs2gk6c4zx6zcsns0yf3ssk7iwni7bphlvhn7"; + procMacro = true; + libName = "async_stream_impl"; + authors = [ + "Carl Lerche " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "visit-mut" ]; + } + ]; + + }; + "async-task" = rec { + crateName = "async-task"; + version = "4.7.1"; + edition = "2021"; + sha256 = "1pp3avr4ri2nbh7s6y9ws0397nkx1zymmcr14sq761ljarh3axcb"; + libName = "async_task"; + authors = [ + "Stjepan Glavina " + ]; + features = { + "default" = [ "std" ]; + "portable-atomic" = [ "dep:portable-atomic" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "async-trait" = rec { + crateName = "async-trait"; + version = "0.1.89"; + edition = "2021"; + sha256 = "1fsxxmz3rzx1prn1h3rs7kyjhkap60i7xvi0ldapkvbb14nssdch"; + procMacro = true; + libName = "async_trait"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "clone-impls" "full" "parsing" "printing" "proc-macro" "visit-mut" ]; + } + ]; + + }; + "atoi" = rec { + crateName = "atoi"; + version = "2.0.0"; + edition = "2021"; + sha256 = "0a05h42fggmy7h0ajjv6m7z72l924i7igbx13hk9d8pyign9k3gj"; + authors = [ + "Markus Klein" + ]; + dependencies = [ + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "num-traits/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "atomic" = rec { + crateName = "atomic"; + version = "0.6.1"; + edition = "2018"; + sha256 = "0h43ljcgbl6vk62hs6yk7zg7qn3myzvpw8k7isb9nzhkbdvvz758"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "bytemuck"; + packageId = "bytemuck"; + } + ]; + devDependencies = [ + { + name = "bytemuck"; + packageId = "bytemuck"; + features = [ "derive" ]; + } + ]; + features = { + "default" = [ "fallback" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "fallback" ]; + }; + "atomic-waker" = rec { + crateName = "atomic-waker"; + version = "1.1.2"; + edition = "2018"; + sha256 = "1h5av1lw56m0jf0fd3bchxq8a30xv0b4wv8s4zkp4s0i7mfvs18m"; + libName = "atomic_waker"; + authors = [ + "Stjepan Glavina " + "Contributors to futures-rs" + ]; + features = { + "portable-atomic" = [ "dep:portable-atomic" ]; + }; + }; + "auto_enums" = rec { + crateName = "auto_enums"; + version = "0.8.7"; + edition = "2021"; + sha256 = "10a7mgjdq73fif29sw0f64m05k53999b805hmsls6dr1i5jhj5ww"; + procMacro = true; + dependencies = [ + { + name = "derive_utils"; + packageId = "derive_utils"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "printing" "clone-impls" "proc-macro" "full" "visit-mut" ]; + } + ]; + features = { + "default" = [ "std" ]; + "generator_trait" = [ "coroutine_trait" ]; + }; + resolvedDefaultFeatures = [ "default" "futures03" "std" ]; + }; + "autocfg" = rec { + crateName = "autocfg"; + version = "1.5.0"; + edition = "2015"; + sha256 = "1s77f98id9l4af4alklmzq46f21c980v13z2r1pcxx6bqgw0d1n0"; + authors = [ + "Josh Stone " + ]; + + }; + "aws-lc-rs" = rec { + crateName = "aws-lc-rs"; + version = "1.15.3"; + edition = "2021"; + links = "aws_lc_rs_1_15_3_sys"; + sha256 = "11lxrk8dbw5p3pbsn8w1n8kpmsz9krinlz47p7z9q9b7mciyfk78"; + libName = "aws_lc_rs"; + authors = [ + "AWS-LibCrypto" + ]; + dependencies = [ + { + name = "aws-lc-sys"; + packageId = "aws-lc-sys"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + } + ]; + features = { + "asan" = [ "aws-lc-sys?/asan" "aws-lc-fips-sys?/asan" ]; + "aws-lc-sys" = [ "dep:aws-lc-sys" ]; + "bindgen" = [ "aws-lc-sys?/bindgen" "aws-lc-fips-sys?/bindgen" ]; + "default" = [ "aws-lc-sys" "alloc" "ring-io" "ring-sig-verify" ]; + "fips" = [ "dep:aws-lc-fips-sys" ]; + "non-fips" = [ "aws-lc-sys" ]; + "prebuilt-nasm" = [ "aws-lc-sys?/prebuilt-nasm" ]; + "ring-io" = [ "dep:untrusted" ]; + "ring-sig-verify" = [ "dep:untrusted" ]; + }; + resolvedDefaultFeatures = [ "aws-lc-sys" "prebuilt-nasm" ]; + }; + "aws-lc-sys" = rec { + crateName = "aws-lc-sys"; + version = "0.36.0"; + edition = "2021"; + links = "aws_lc_0_36_0"; + sha256 = "1n2aiw79cdhrnr7z70rk7i6xv63pgabii2scppa3n4b3wgn45923"; + build = "builder/main.rs"; + libName = "aws_lc_sys"; + authors = [ + "AWS-LC" + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + features = [ "parallel" ]; + } + { + name = "cmake"; + packageId = "cmake"; + } + { + name = "dunce"; + packageId = "dunce"; + } + { + name = "fs_extra"; + packageId = "fs_extra"; + } + ]; + features = { + "bindgen" = [ "dep:bindgen" ]; + "default" = [ "all-bindings" ]; + "ssl" = [ "bindgen" "all-bindings" ]; + }; + resolvedDefaultFeatures = [ "prebuilt-nasm" ]; + }; + "axum" = rec { + crateName = "axum"; + version = "0.8.8"; + edition = "2021"; + sha256 = "1f4p0m04mgwpn8b40i9r5mgqxk6w11sv4yri6xfqk305nhyayllb"; + dependencies = [ + { + name = "axum-core"; + packageId = "axum-core"; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + optional = true; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "form_urlencoded"; + packageId = "form_urlencoded"; + optional = true; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + optional = true; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + optional = true; + features = [ "tokio" "server" "service" ]; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "matchit"; + packageId = "matchit"; + } + { + name = "memchr"; + packageId = "memchr"; + } + { + name = "mime"; + packageId = "mime"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "serde_core"; + packageId = "serde_core"; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + features = [ "raw_value" ]; + } + { + name = "serde_path_to_error"; + packageId = "serde_path_to_error"; + optional = true; + } + { + name = "serde_urlencoded"; + packageId = "serde_urlencoded"; + optional = true; + } + { + name = "sha1"; + packageId = "sha1"; + optional = true; + } + { + name = "sync_wrapper"; + packageId = "sync_wrapper 1.0.2"; + } + { + name = "tokio"; + packageId = "tokio"; + rename = "tokio"; + optional = true; + features = [ "time" ]; + } + { + name = "tokio-tungstenite"; + packageId = "tokio-tungstenite 0.28.0"; + optional = true; + } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + features = [ "util" ]; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "hyper"; + packageId = "hyper 1.8.1"; + features = [ "client" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + features = [ "raw_value" ]; + } + { + name = "tokio"; + packageId = "tokio"; + rename = "tokio"; + features = [ "macros" "rt" "rt-multi-thread" "net" "test-util" ]; + } + { + name = "tokio-tungstenite"; + packageId = "tokio-tungstenite 0.28.0"; + } + { + name = "tower"; + packageId = "tower"; + rename = "tower"; + features = [ "util" "timeout" "limit" "load-shed" "steer" "filter" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + ]; + features = { + "__private" = [ "tokio" "http1" "dep:reqwest" ]; + "__private_docs" = [ "axum-core/__private_docs" "tower/full" "dep:serde" "dep:tower-http" ]; + "default" = [ "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" ]; + "form" = [ "dep:form_urlencoded" "dep:serde_urlencoded" "dep:serde_path_to_error" ]; + "http1" = [ "dep:hyper" "hyper?/http1" "hyper-util?/http1" ]; + "http2" = [ "dep:hyper" "hyper?/http2" "hyper-util?/http2" ]; + "json" = [ "dep:serde_json" "dep:serde_path_to_error" ]; + "macros" = [ "dep:axum-macros" ]; + "multipart" = [ "dep:multer" ]; + "query" = [ "dep:form_urlencoded" "dep:serde_urlencoded" "dep:serde_path_to_error" ]; + "tokio" = [ "dep:hyper-util" "dep:tokio" "tokio/net" "tokio/rt" "tower/make" "tokio/macros" ]; + "tower-log" = [ "tower/log" ]; + "tracing" = [ "dep:tracing" "axum-core/tracing" ]; + "ws" = [ "dep:hyper" "tokio" "dep:tokio-tungstenite" "dep:sha1" "dep:base64" ]; + }; + resolvedDefaultFeatures = [ "default" "form" "http1" "json" "matched-path" "original-uri" "query" "tokio" "tower-log" "tracing" "ws" ]; + }; + "axum-core" = rec { + crateName = "axum-core"; + version = "0.5.6"; + edition = "2021"; + sha256 = "1lcjhxysnbc64rh21ag9m9fpiryd1iwcdh9mwxz1yadiswqqziq8"; + libName = "axum_core"; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-core"; + packageId = "futures-core"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "mime"; + packageId = "mime"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "sync_wrapper"; + packageId = "sync_wrapper 1.0.2"; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "__private_docs" = [ "dep:tower-http" ]; + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "tracing" ]; + }; + "axum-extra" = rec { + crateName = "axum-extra"; + version = "0.10.3"; + edition = "2021"; + sha256 = "15mb28f49y4g434ry9c7gnamh3ac0130mvsncz3h4q8cyhczyqwr"; + libName = "axum_extra"; + dependencies = [ + { + name = "axum"; + packageId = "axum"; + usesDefaultFeatures = false; + features = [ "original-uri" ]; + } + { + name = "axum-core"; + packageId = "axum-core"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "headers"; + packageId = "headers"; + optional = true; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "mime"; + packageId = "mime"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "rustversion"; + packageId = "rustversion"; + } + { + name = "serde_core"; + packageId = "serde_core"; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + } + { + name = "tokio-stream"; + packageId = "tokio-stream"; + optional = true; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + optional = true; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "full" ]; + } + ]; + features = { + "__private_docs" = [ "axum/json" "dep:serde" "dep:tower" ]; + "async-read-body" = [ "dep:tokio-util" "tokio-util?/io" "dep:tokio" ]; + "attachment" = [ "dep:tracing" ]; + "cookie" = [ "dep:cookie" ]; + "cookie-key-expansion" = [ "cookie" "cookie?/key-expansion" ]; + "cookie-private" = [ "cookie" "cookie?/private" ]; + "cookie-signed" = [ "cookie" "cookie?/signed" ]; + "default" = [ "tracing" ]; + "erased-json" = [ "dep:serde_json" "dep:typed-json" ]; + "error-response" = [ "dep:tracing" "tracing/std" ]; + "file-stream" = [ "dep:tokio-util" "tokio-util?/io" "dep:tokio" "tokio?/fs" "tokio?/io-util" ]; + "form" = [ "dep:form_urlencoded" "dep:serde_html_form" "dep:serde_path_to_error" ]; + "json-deserializer" = [ "dep:serde_json" "dep:serde_path_to_error" ]; + "json-lines" = [ "dep:serde_json" "dep:tokio-util" "dep:tokio-stream" "tokio-util?/io" "tokio-stream?/io-util" "dep:tokio" ]; + "multipart" = [ "dep:multer" "dep:fastrand" ]; + "protobuf" = [ "dep:prost" ]; + "query" = [ "dep:form_urlencoded" "dep:serde_html_form" "dep:serde_path_to_error" ]; + "tracing" = [ "axum-core/tracing" "axum/tracing" "dep:tracing" ]; + "typed-header" = [ "dep:headers" ]; + "typed-routing" = [ "dep:axum-macros" "dep:percent-encoding" "dep:serde_html_form" "dep:form_urlencoded" ]; + }; + resolvedDefaultFeatures = [ "default" "json-lines" "tracing" "typed-header" ]; + }; + "axum-typed-websockets" = rec { + crateName = "axum-typed-websockets"; + version = "0.6.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/axum-typed-websockets"; + rev = "21b25a4285037639171eca4aeb3031c48273e196"; + sha256 = "01iig76f471ngn0ia4vayqsqgi1myk30sxmv1r6hpspg5vgv92xs"; + }; + libName = "axum_typed_websockets"; + authors = [ + "David Pedersen " + ]; + dependencies = [ + { + name = "axum"; + packageId = "axum"; + usesDefaultFeatures = false; + features = [ "ws" ]; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + ]; + devDependencies = [ + { + name = "axum"; + packageId = "axum"; + features = [ "ws" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "default" = [ "json" ]; + "json" = [ "serde_json" ]; + "msgpack" = [ "rmp-serde" ]; + "rmp-serde" = [ "dep:rmp-serde" ]; + "serde_json" = [ "dep:serde_json" ]; + }; + resolvedDefaultFeatures = [ "default" "json" "serde_json" ]; + }; + "backon" = rec { + crateName = "backon"; + version = "1.6.0"; + edition = "2024"; + sha256 = "1vzphngmym91xh29x7px6vw1xgcv5vjzw86b9zy6ddkm329hxyyg"; + dependencies = [ + { + name = "fastrand"; + packageId = "fastrand"; + usesDefaultFeatures = false; + } + { + name = "gloo-timers"; + packageId = "gloo-timers"; + optional = true; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "time" "rt" "macros" "sync" "rt-multi-thread" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "macros" "rt" "sync" ]; + } + ]; + features = { + "default" = [ "std" "std-blocking-sleep" "tokio-sleep" "gloo-timers-sleep" ]; + "embassy-sleep" = [ "embassy-time" ]; + "embassy-time" = [ "dep:embassy-time" ]; + "futures-timer" = [ "dep:futures-timer" ]; + "futures-timer-sleep" = [ "futures-timer" ]; + "gloo-timers" = [ "dep:gloo-timers" ]; + "gloo-timers-sleep" = [ "gloo-timers/futures" ]; + "std" = [ "fastrand/std" ]; + "tokio" = [ "dep:tokio" ]; + "tokio-sleep" = [ "tokio/time" ]; + }; + resolvedDefaultFeatures = [ "default" "gloo-timers" "gloo-timers-sleep" "std" "std-blocking-sleep" "tokio" "tokio-sleep" ]; + }; + "backtrace" = rec { + crateName = "backtrace"; + version = "0.3.76"; + edition = "2021"; + sha256 = "1mibx75x4jf6wz7qjifynld3hpw3vq6sy3d3c9y5s88sg59ihlxv"; + authors = [ + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "addr2line"; + packageId = "addr2line"; + usesDefaultFeatures = false; + target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); + } + { + name = "miniz_oxide"; + packageId = "miniz_oxide"; + usesDefaultFeatures = false; + target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); + } + { + name = "object"; + packageId = "object"; + usesDefaultFeatures = false; + target = { target, features }: (!((target."windows" or false) && ("msvc" == target."env" or null) && (!("uwp" == target."vendor" or null)))); + features = [ "read_core" "elf" "macho" "pe" "xcoff" "unaligned" "archive" ]; + } + { + name = "rustc-demangle"; + packageId = "rustc-demangle"; + } + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + target = { target, features }: ((target."windows" or false) || ("cygwin" == target."os" or null)); + } + ]; + features = { + "cpp_demangle" = [ "dep:cpp_demangle" ]; + "default" = [ "std" ]; + "ruzstd" = [ "dep:ruzstd" ]; + "serde" = [ "dep:serde" ]; + "serialize-serde" = [ "serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "backtrace-ext" = rec { + crateName = "backtrace-ext"; + version = "0.2.1"; + edition = "2018"; + sha256 = "0l4xacjnx4jrn9k14xbs2swks018mviq03sp7c1gn62apviywysk"; + libName = "backtrace_ext"; + dependencies = [ + { + name = "backtrace"; + packageId = "backtrace"; + } + ]; + + }; + "base16ct" = rec { + crateName = "base16ct"; + version = "0.2.0"; + edition = "2021"; + sha256 = "1kylrjhdzk7qpknrvlphw8ywdnvvg39dizw9622w3wk5xba04zsc"; + authors = [ + "RustCrypto Developers" + ]; + features = { + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "base64 0.21.7" = rec { + crateName = "base64"; + version = "0.21.7"; + edition = "2018"; + sha256 = "0rw52yvsk75kar9wgqfwgb414kvil1gn7mqkrhn9zf1537mpsacx"; + authors = [ + "Alice Maz " + "Marshall Pierce " + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "base64 0.22.1" = rec { + crateName = "base64"; + version = "0.22.1"; + edition = "2018"; + sha256 = "1imqzgh7bxcikp5vx3shqvw9j09g9ly0xr0jma0q66i52r7jbcvj"; + authors = [ + "Marshall Pierce " + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "base64 0.7.0" = rec { + crateName = "base64"; + version = "0.7.0"; + edition = "2015"; + sha256 = "1hlrhii3dvvd1dk5qwch5cggvnf6p3cn89pbvazjj5vll8fxacjh"; + authors = [ + "Alice Maz " + "Marshall Pierce " + ]; + dependencies = [ + { + name = "byteorder"; + packageId = "byteorder"; + } + { + name = "safemem"; + packageId = "safemem"; + } + ]; + + }; + "base64ct" = rec { + crateName = "base64ct"; + version = "1.8.3"; + edition = "2024"; + sha256 = "01nyyyx84bhwrcc168hn47d8gvz2pzpv3y3lmck7mq4hw5vh3x9a"; + authors = [ + "RustCrypto Developers" + ]; + features = { + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "bincode" = rec { + crateName = "bincode"; + version = "1.3.3"; + edition = "2015"; + sha256 = "1bfw3mnwzx5g1465kiqllp5n4r10qrqy88kdlp3jfwnq2ya5xx5i"; + authors = [ + "Ty Overby " + "Francesco Mazzoli " + "David Tolnay " + "Zoey Riordan " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + } + ]; + features = { + }; + }; + "bindgen" = rec { + crateName = "bindgen"; + version = "0.69.5"; + edition = "2018"; + sha256 = "1240snlcfj663k04bjsg629g4wx6f83flgbjh5rzpgyagk3864r7"; + libPath = "lib.rs"; + authors = [ + "Jyun-Yan You " + "Emilio Cobos Álvarez " + "Nick Fitzgerald " + "The Servo project developers" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "cexpr"; + packageId = "cexpr"; + } + { + name = "clang-sys"; + packageId = "clang-sys"; + features = [ "clang_6_0" ]; + } + { + name = "itertools"; + packageId = "itertools 0.10.5"; + usesDefaultFeatures = false; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "lazycell"; + packageId = "lazycell"; + } + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "prettyplease"; + packageId = "prettyplease"; + optional = true; + features = [ "verbatim" ]; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "regex"; + packageId = "regex"; + usesDefaultFeatures = false; + features = [ "std" "unicode-perl" ]; + } + { + name = "rustc-hash"; + packageId = "rustc-hash 1.1.0"; + } + { + name = "shlex"; + packageId = "shlex"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" "visit-mut" ]; + } + { + name = "which"; + packageId = "which 4.4.2"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "logging" "prettyplease" "runtime" "which-rustfmt" ]; + "experimental" = [ "dep:annotate-snippets" ]; + "logging" = [ "dep:log" ]; + "prettyplease" = [ "dep:prettyplease" ]; + "runtime" = [ "clang-sys/runtime" ]; + "static" = [ "clang-sys/static" ]; + "which-rustfmt" = [ "dep:which" ]; + }; + resolvedDefaultFeatures = [ "default" "logging" "prettyplease" "runtime" "which-rustfmt" ]; + }; + "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.10.0" = rec { + crateName = "bitflags"; + version = "2.10.0"; + edition = "2021"; + sha256 = "1lqxwc3625lcjrjm5vygban9v8a6dlxisp1aqylibiaw52si4bl1"; + authors = [ + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "bytemuck" = [ "dep:bytemuck" ]; + "serde" = [ "serde_core" ]; + "serde_core" = [ "dep:serde_core" ]; + }; + resolvedDefaultFeatures = [ "serde" "serde_core" "std" ]; + }; + "blake3" = rec { + crateName = "blake3"; + version = "1.8.3"; + edition = "2024"; + sha256 = "0b9ay320z90xs5hyk48l1v3208yyvdy3gs3nnlb7xyxkaxyyys14"; + authors = [ + "Jack O'Connor " + "Samuel Neves" + ]; + dependencies = [ + { + name = "arrayref"; + packageId = "arrayref"; + } + { + name = "arrayvec"; + packageId = "arrayvec"; + usesDefaultFeatures = false; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "constant_time_eq"; + packageId = "constant_time_eq"; + usesDefaultFeatures = false; + } + { + name = "cpufeatures"; + packageId = "cpufeatures"; + target = { target, features }: (("x86" == target."arch" or null) || ("x86_64" == target."arch" or null)); + } + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + } + ]; + features = { + "default" = [ "std" ]; + "digest" = [ "dep:digest" ]; + "mmap" = [ "std" "dep:memmap2" ]; + "rayon" = [ "dep:rayon-core" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "constant_time_eq/std" ]; + "traits-preview" = [ "dep:digest" ]; + "zeroize" = [ "dep:zeroize" "arrayvec/zeroize" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "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"; + } + ]; + + }; + "block2" = rec { + crateName = "block2"; + version = "0.6.2"; + edition = "2021"; + sha256 = "1xcfllzx6c3jc554nmb5qy6xmlkl6l6j5ib4wd11800n0n3rvsyd"; + authors = [ + "Mads Marquart " + ]; + dependencies = [ + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + features = { + "compiler-rt" = [ "objc2/unstable-compiler-rt" ]; + "default" = [ "std" ]; + "gnustep-1-7" = [ "objc2/gnustep-1-7" ]; + "gnustep-1-8" = [ "gnustep-1-7" "objc2/gnustep-1-8" ]; + "gnustep-1-9" = [ "gnustep-1-8" "objc2/gnustep-1-9" ]; + "gnustep-2-0" = [ "gnustep-1-9" "objc2/gnustep-2-0" ]; + "gnustep-2-1" = [ "gnustep-2-0" "objc2/gnustep-2-1" ]; + "std" = [ "alloc" ]; + "unstable-winobjc" = [ "gnustep-1-8" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "bstr" = rec { + crateName = "bstr"; + version = "1.12.1"; + edition = "2021"; + sha256 = "1arc1v7h5l86vd6z76z3xykjzldqd5icldn7j9d3p7z6x0d4w133"; + authors = [ + "Andrew Gallant " + ]; + 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" "std" "unicode" ]; + }; + "bumpalo" = rec { + crateName = "bumpalo"; + version = "3.19.1"; + edition = "2021"; + sha256 = "044555i277xcinmqs7nnv8n5y4fqfi4l4lp1mp3i30vsidrxrnax"; + authors = [ + "Nick Fitzgerald " + ]; + features = { + "allocator-api2" = [ "dep:allocator-api2" ]; + "bench_allocator_api" = [ "allocator_api" "blink-alloc/nightly" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "bytemuck" = rec { + crateName = "bytemuck"; + version = "1.24.0"; + edition = "2018"; + sha256 = "1x65wc9kwf0dfnmglkl8r46d29pfl7yilll5wh9bcf0g6a0gbg8z"; + authors = [ + "Lokathor " + ]; + features = { + "bytemuck_derive" = [ "dep:bytemuck_derive" ]; + "derive" = [ "bytemuck_derive" ]; + "extern_crate_std" = [ "extern_crate_alloc" ]; + "latest_stable_rust" = [ "aarch64_simd" "avx512_simd" "align_offset" "alloc_uninit" "const_zeroed" "derive" "impl_core_error" "min_const_generics" "must_cast" "must_cast_extra" "pod_saturating" "track_caller" "transparentwrapper_extra" "wasm_simd" "zeroable_atomics" "zeroable_maybe_uninit" "zeroable_unwind_fn" ]; + "must_cast_extra" = [ "must_cast" ]; + }; + }; + "byteorder" = rec { + crateName = "byteorder"; + version = "1.5.0"; + edition = "2021"; + sha256 = "0jzncxyf404mwqdbspihyzpkndfgda450l0893pz5xj685cg5l0z"; + authors = [ + "Andrew Gallant " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "bytes" = rec { + crateName = "bytes"; + version = "1.11.0"; + edition = "2021"; + sha256 = "1cww1ybcvisyj8pbzl4m36bni2jaz0narhczp1348gqbvkxh8lmk"; + authors = [ + "Carl Lerche " + "Sean McArthur " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "default" = [ "std" ]; + "extra-platforms" = [ "dep:extra-platforms" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" "std" ]; + }; + "bytesize 1.3.3" = rec { + crateName = "bytesize"; + version = "1.3.3"; + edition = "2015"; + sha256 = "0nb645ma48nwsv1piylzcza0avjp435sl8krhyws3q18kv5ap4rf"; + authors = [ + "Hyunsik Choi " + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "bytesize 2.3.1" = rec { + crateName = "bytesize"; + version = "2.3.1"; + edition = "2021"; + sha256 = "18vjp7wfik0xi54l3z2314s7zxjyywa4vvwhilawnas2nbkixnbb"; + authors = [ + "Hyunsik Choi " + "MrCroxx " + "Rob Ede " + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "default" = [ "std" ]; + "serde" = [ "dep:serde_core" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "cast" = rec { + crateName = "cast"; + version = "0.3.0"; + edition = "2018"; + sha256 = "1dbyngbyz2qkk0jn2sxil8vrz3rnpcj142y184p9l4nbl9radcip"; + authors = [ + "Jorge Aparicio " + ]; + features = { + }; + }; + "castaway" = rec { + crateName = "castaway"; + version = "0.2.4"; + edition = "2018"; + sha256 = "0nn5his5f8q20nkyg1nwb40xc19a08yaj4y76a8q2y3mdsmm3ify"; + authors = [ + "Stephen M. Coakley " + ]; + dependencies = [ + { + name = "rustversion"; + packageId = "rustversion"; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "cc" = rec { + crateName = "cc"; + version = "1.2.53"; + edition = "2018"; + sha256 = "0cjrx2nzlz8l93p4sfymjgsv0jicvfphd6hyhk5gyxbi2z72ypbm"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "find-msvc-tools"; + packageId = "find-msvc-tools"; + } + { + name = "jobserver"; + packageId = "jobserver"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."unix" or false); + } + { + name = "shlex"; + packageId = "shlex"; + } + ]; + features = { + "parallel" = [ "dep:libc" "dep:jobserver" ]; + }; + resolvedDefaultFeatures = [ "parallel" ]; + }; + "cesu8" = rec { + crateName = "cesu8"; + version = "1.1.0"; + edition = "2015"; + sha256 = "0g6q58wa7khxrxcxgnqyi9s1z2cjywwwd3hzr5c55wskhx6s0hvd"; + authors = [ + "Eric Kidd " + ]; + features = { + }; + }; + "cexpr" = rec { + crateName = "cexpr"; + version = "0.6.0"; + edition = "2018"; + sha256 = "0rl77bwhs5p979ih4r0202cn5jrfsrbgrksp40lkfz5vk1x3ib3g"; + authors = [ + "Jethro Beekman " + ]; + dependencies = [ + { + name = "nom"; + packageId = "nom"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + + }; + "cfg-if" = rec { + crateName = "cfg-if"; + version = "1.0.4"; + edition = "2018"; + sha256 = "008q28ajc546z5p2hcwdnckmg0hia7rnx52fni04bwqkzyrghc4k"; + libName = "cfg_if"; + authors = [ + "Alex Crichton " + ]; + features = { + "core" = [ "dep:core" ]; + "rustc-dep-of-std" = [ "core" ]; + }; + }; + "cfg_aliases" = rec { + crateName = "cfg_aliases"; + version = "0.2.1"; + edition = "2018"; + sha256 = "092pxdc1dbgjb6qvh83gk56rkic2n2ybm4yvy76cgynmzi3zwfk1"; + authors = [ + "Zicklag " + ]; + + }; + "chrono" = rec { + crateName = "chrono"; + version = "0.4.43"; + edition = "2021"; + sha256 = "06312amlyys4kkjazl13mbxw0j2f7zxygzjkr1yk7s2sn57p9i7s"; + dependencies = [ + { + name = "iana-time-zone"; + packageId = "iana-time-zone"; + optional = true; + target = { target, features }: (target."unix" or false); + features = [ "fallback" ]; + } + { + name = "js-sys"; + packageId = "js-sys"; + optional = true; + target = { target, features }: (("wasm32" == target."arch" or null) && (!(("emscripten" == target."os" or null) || ("wasi" == target."os" or null)))); + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + optional = true; + target = { target, features }: (("wasm32" == target."arch" or null) && (!(("emscripten" == target."os" or null) || ("wasi" == target."os" or null)))); + } + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + optional = true; + target = { target, features }: (target."windows" or false); + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "clock" = [ "winapi" "iana-time-zone" "now" ]; + "default" = [ "clock" "std" "oldtime" "wasmbind" ]; + "defmt" = [ "dep:defmt" "pure-rust-locales?/defmt" ]; + "iana-time-zone" = [ "dep:iana-time-zone" ]; + "js-sys" = [ "dep:js-sys" ]; + "now" = [ "std" ]; + "pure-rust-locales" = [ "dep:pure-rust-locales" ]; + "rkyv" = [ "dep:rkyv" "rkyv/size_32" ]; + "rkyv-16" = [ "dep:rkyv" "rkyv?/size_16" ]; + "rkyv-32" = [ "dep:rkyv" "rkyv?/size_32" ]; + "rkyv-64" = [ "dep:rkyv" "rkyv?/size_64" ]; + "rkyv-validation" = [ "rkyv?/validation" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + "unstable-locales" = [ "pure-rust-locales" ]; + "wasm-bindgen" = [ "dep:wasm-bindgen" ]; + "wasmbind" = [ "wasm-bindgen" "js-sys" ]; + "winapi" = [ "windows-link" ]; + "windows-link" = [ "dep:windows-link" ]; + }; + resolvedDefaultFeatures = [ "alloc" "clock" "default" "iana-time-zone" "js-sys" "now" "oldtime" "serde" "std" "wasm-bindgen" "wasmbind" "winapi" "windows-link" ]; + }; + "ciborium" = rec { + crateName = "ciborium"; + version = "0.2.2"; + edition = "2021"; + sha256 = "03hgfw4674im1pdqblcp77m7rc8x2v828si5570ga5q9dzyrzrj2"; + authors = [ + "Nathaniel McCallum " + ]; + dependencies = [ + { + name = "ciborium-io"; + packageId = "ciborium-io"; + features = [ "alloc" ]; + } + { + name = "ciborium-ll"; + packageId = "ciborium-ll"; + } + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + features = [ "alloc" "derive" ]; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "ciborium-io/std" "serde/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "ciborium-io" = rec { + crateName = "ciborium-io"; + version = "0.2.2"; + edition = "2021"; + sha256 = "0my7s5g24hvp1rs1zd1cxapz94inrvqpdf1rslrvxj8618gfmbq5"; + libName = "ciborium_io"; + authors = [ + "Nathaniel McCallum " + ]; + features = { + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "std" ]; + }; + "ciborium-ll" = rec { + crateName = "ciborium-ll"; + version = "0.2.2"; + edition = "2021"; + sha256 = "1n8g4j5rwkfs3rzfi6g1p7ngmz6m5yxsksryzf5k72ll7mjknrjp"; + libName = "ciborium_ll"; + authors = [ + "Nathaniel McCallum " + ]; + dependencies = [ + { + name = "ciborium-io"; + packageId = "ciborium-io"; + } + { + name = "half"; + packageId = "half"; + usesDefaultFeatures = false; + } + ]; + features = { + "std" = [ "alloc" "half/std" ]; + }; + }; + "cipher" = rec { + crateName = "cipher"; + version = "0.4.4"; + edition = "2021"; + sha256 = "1b9x9agg67xq5nq879z66ni4l08m6m3hqcshk37d4is4ysd3ngvp"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "crypto-common"; + packageId = "crypto-common"; + } + { + name = "inout"; + packageId = "inout"; + } + ]; + features = { + "blobby" = [ "dep:blobby" ]; + "block-padding" = [ "inout/block-padding" ]; + "dev" = [ "blobby" ]; + "rand_core" = [ "crypto-common/rand_core" ]; + "std" = [ "alloc" "crypto-common/std" "inout/std" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "clang-sys" = rec { + crateName = "clang-sys"; + version = "1.8.1"; + edition = "2021"; + links = "clang"; + sha256 = "1x1r9yqss76z8xwpdanw313ss6fniwc1r7dzb5ycjn0ph53kj0hb"; + libName = "clang_sys"; + authors = [ + "Kyle Mayes " + ]; + dependencies = [ + { + name = "glob"; + packageId = "glob"; + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + } + { + name = "libloading"; + packageId = "libloading"; + optional = true; + } + ]; + buildDependencies = [ + { + name = "glob"; + packageId = "glob"; + } + ]; + devDependencies = [ + { + name = "glob"; + packageId = "glob"; + } + ]; + features = { + "clang_10_0" = [ "clang_9_0" ]; + "clang_11_0" = [ "clang_10_0" ]; + "clang_12_0" = [ "clang_11_0" ]; + "clang_13_0" = [ "clang_12_0" ]; + "clang_14_0" = [ "clang_13_0" ]; + "clang_15_0" = [ "clang_14_0" ]; + "clang_16_0" = [ "clang_15_0" ]; + "clang_17_0" = [ "clang_16_0" ]; + "clang_18_0" = [ "clang_17_0" ]; + "clang_3_6" = [ "clang_3_5" ]; + "clang_3_7" = [ "clang_3_6" ]; + "clang_3_8" = [ "clang_3_7" ]; + "clang_3_9" = [ "clang_3_8" ]; + "clang_4_0" = [ "clang_3_9" ]; + "clang_5_0" = [ "clang_4_0" ]; + "clang_6_0" = [ "clang_5_0" ]; + "clang_7_0" = [ "clang_6_0" ]; + "clang_8_0" = [ "clang_7_0" ]; + "clang_9_0" = [ "clang_8_0" ]; + "libloading" = [ "dep:libloading" ]; + "runtime" = [ "libloading" ]; + }; + resolvedDefaultFeatures = [ "clang_3_5" "clang_3_6" "clang_3_7" "clang_3_8" "clang_3_9" "clang_4_0" "clang_5_0" "clang_6_0" "libloading" "runtime" ]; + }; + "clap" = rec { + crateName = "clap"; + version = "4.5.54"; + edition = "2021"; + crateBin = []; + sha256 = "15737jmai272j6jh4ha4dq4ap14ysx2sa5wsjv6zbkvrrnfzzrn6"; + dependencies = [ + { + name = "clap_builder"; + packageId = "clap_builder"; + usesDefaultFeatures = false; + } + { + name = "clap_derive"; + packageId = "clap_derive"; + optional = true; + } + ]; + features = { + "cargo" = [ "clap_builder/cargo" ]; + "color" = [ "clap_builder/color" ]; + "debug" = [ "clap_builder/debug" "clap_derive?/debug" ]; + "default" = [ "std" "color" "help" "usage" "error-context" "suggestions" ]; + "deprecated" = [ "clap_builder/deprecated" "clap_derive?/deprecated" ]; + "derive" = [ "dep:clap_derive" ]; + "env" = [ "clap_builder/env" ]; + "error-context" = [ "clap_builder/error-context" ]; + "help" = [ "clap_builder/help" ]; + "std" = [ "clap_builder/std" ]; + "string" = [ "clap_builder/string" ]; + "suggestions" = [ "clap_builder/suggestions" ]; + "unicode" = [ "clap_builder/unicode" ]; + "unstable-doc" = [ "clap_builder/unstable-doc" "derive" ]; + "unstable-ext" = [ "clap_builder/unstable-ext" ]; + "unstable-markdown" = [ "clap_derive/unstable-markdown" ]; + "unstable-styles" = [ "clap_builder/unstable-styles" ]; + "unstable-v5" = [ "clap_builder/unstable-v5" "clap_derive?/unstable-v5" "deprecated" ]; + "usage" = [ "clap_builder/usage" ]; + "wrap_help" = [ "clap_builder/wrap_help" ]; + }; + resolvedDefaultFeatures = [ "cargo" "color" "default" "derive" "env" "error-context" "help" "std" "suggestions" "usage" ]; + }; + "clap_builder" = rec { + crateName = "clap_builder"; + version = "4.5.54"; + edition = "2021"; + sha256 = "001cnl5ccva6z3x5nw3m72zs3bzb650anz1scs7vqhbs5d6wyhps"; + dependencies = [ + { + name = "anstream"; + packageId = "anstream"; + optional = true; + } + { + name = "anstyle"; + packageId = "anstyle"; + } + { + name = "clap_lex"; + packageId = "clap_lex"; + } + { + name = "strsim"; + packageId = "strsim 0.11.1"; + optional = true; + } + ]; + features = { + "color" = [ "dep:anstream" ]; + "debug" = [ "dep:backtrace" ]; + "default" = [ "std" "color" "help" "usage" "error-context" "suggestions" ]; + "std" = [ "anstyle/std" ]; + "suggestions" = [ "dep:strsim" "error-context" ]; + "unicode" = [ "dep:unicode-width" "dep:unicase" ]; + "unstable-doc" = [ "cargo" "wrap_help" "env" "unicode" "string" "unstable-ext" ]; + "unstable-styles" = [ "color" ]; + "unstable-v5" = [ "deprecated" ]; + "wrap_help" = [ "help" "dep:terminal_size" ]; + }; + resolvedDefaultFeatures = [ "cargo" "color" "env" "error-context" "help" "std" "suggestions" "usage" ]; + }; + "clap_derive" = rec { + crateName = "clap_derive"; + version = "4.5.49"; + edition = "2021"; + sha256 = "0wbngw649138v3jwx8pm5x9sq0qsml3sh0sfzyrdxcpamy3m82ra"; + procMacro = true; + dependencies = [ + { + name = "heck"; + packageId = "heck 0.5.0"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + features = { + "raw-deprecated" = [ "deprecated" ]; + "unstable-markdown" = [ "dep:pulldown-cmark" "dep:anstyle" ]; + "unstable-v5" = [ "deprecated" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "clap_lex" = rec { + crateName = "clap_lex"; + version = "0.7.7"; + edition = "2021"; + sha256 = "0cibsbziyzw2ywar2yh6zllsamhwkblfly565zgi56s3q064prn3"; + + }; + "cli-table" = rec { + crateName = "cli-table"; + version = "0.5.0"; + edition = "2024"; + sha256 = "0b088r2jgskhq0rzrrn7cdwdaqv9fd6p96yc7kqw8z7g3jaqvnhl"; + libName = "cli_table"; + authors = [ + "Devashish Dixit " + ]; + dependencies = [ + { + name = "cli-table-derive"; + packageId = "cli-table-derive"; + optional = true; + } + { + name = "csv"; + packageId = "csv"; + optional = true; + } + { + name = "termcolor"; + packageId = "termcolor"; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.2.2"; + } + ]; + features = { + "cli-table-derive" = [ "dep:cli-table-derive" ]; + "csv" = [ "dep:csv" ]; + "default" = [ "csv" "derive" ]; + "derive" = [ "cli-table-derive" "title" ]; + }; + resolvedDefaultFeatures = [ "cli-table-derive" "csv" "default" "derive" "title" ]; + }; + "cli-table-derive" = rec { + crateName = "cli-table-derive"; + version = "0.5.0"; + edition = "2024"; + sha256 = "0bl39w6cngx1sxcbcw6y031zc7m5d829dc6z519d9hz2p9h1nz4z"; + procMacro = true; + libName = "cli_table_derive"; + authors = [ + "Devashish Dixit " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "cloud-hypervisor-client" = rec { + crateName = "cloud-hypervisor-client"; + version = "0.3.0"; + edition = "2021"; + src = lib.cleanSourceWith { filter = sourceFilter; src = ./cloud-hypervisor-client; }; + libName = "cloud_hypervisor_client"; + authors = [ + "OpenAPI Generator team and contributors" + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.7.0"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "futures"; + packageId = "futures"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "http"; + packageId = "http 0.2.12"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "http-body-util"; + packageId = "http-body-util"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "full" ]; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "client" "client-legacy" "http1" "http2" ]; + } + { + name = "hyperlocal"; + packageId = "hyperlocal"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "serde"; + packageId = "serde"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "derive" "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "serde_repr"; + packageId = "serde_repr"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "url"; + packageId = "url"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "serde" ]; + } + { + name = "uuid"; + packageId = "uuid"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "v7" "serde" "serde" "v4" ]; + } + ]; + + }; + "clru" = rec { + crateName = "clru"; + version = "0.6.2"; + edition = "2021"; + sha256 = "0ngyycxpxif84wpjjn0ixywylk95h5iv8fqycg2zsr3f0rpggl6b"; + authors = [ + "marmeladema " + ]; + + }; + "cmake" = rec { + crateName = "cmake"; + version = "0.1.57"; + edition = "2021"; + sha256 = "0zgg10qgykig4nxyf7whrqfg7fkk0xfxhiavikmrndvbrm23qi3m"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "cc"; + packageId = "cc"; + } + ]; + + }; + "cmsketch" = rec { + crateName = "cmsketch"; + version = "0.2.4"; + edition = "2021"; + sha256 = "0m6qpw2f1ixbkrwk5ain128644wgmmsnvc02k53hd5yjrgx2rvnp"; + authors = [ + "MrCroxx " + ]; + + }; + "color-eyre" = rec { + crateName = "color-eyre"; + version = "0.6.5"; + edition = "2018"; + sha256 = "0vgjy8q6c4fin6inh7ik66rkkyjwar3ai8z33vbacckqnkphp4p5"; + libName = "color_eyre"; + authors = [ + "Jane Lusby " + ]; + dependencies = [ + { + name = "backtrace"; + packageId = "backtrace"; + } + { + name = "color-spantrace"; + packageId = "color-spantrace"; + optional = true; + } + { + name = "eyre"; + packageId = "eyre"; + } + { + name = "indenter"; + packageId = "indenter"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "owo-colors"; + packageId = "owo-colors"; + } + { + name = "tracing-error"; + packageId = "tracing-error"; + optional = true; + } + ]; + features = { + "capture-spantrace" = [ "tracing-error" "color-spantrace" ]; + "color-spantrace" = [ "dep:color-spantrace" ]; + "default" = [ "track-caller" "capture-spantrace" ]; + "issue-url" = [ "url" ]; + "tracing-error" = [ "dep:tracing-error" ]; + "url" = [ "dep:url" ]; + }; + resolvedDefaultFeatures = [ "capture-spantrace" "color-spantrace" "default" "tracing-error" "track-caller" ]; + }; + "color-spantrace" = rec { + crateName = "color-spantrace"; + version = "0.3.0"; + edition = "2018"; + sha256 = "09xl077fs44yvqajmr52mjbghvkfwg6fnd3jpialnd8kvylqxf5q"; + libName = "color_spantrace"; + authors = [ + "Jane Lusby " + ]; + dependencies = [ + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "owo-colors"; + packageId = "owo-colors"; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + } + { + name = "tracing-error"; + packageId = "tracing-error"; + } + ]; + + }; + "colorchoice" = rec { + crateName = "colorchoice"; + version = "1.0.4"; + edition = "2021"; + sha256 = "0x8ymkz1xr77rcj1cfanhf416pc4v681gmkc9dzb3jqja7f62nxh"; + + }; + "colored" = rec { + crateName = "colored"; + version = "2.2.0"; + edition = "2021"; + sha256 = "0g6s7j2qayjd7i3sivmwiawfdg8c8ldy0g2kl4vwk1yk16hjaxqi"; + authors = [ + "Thomas Wickham " + ]; + dependencies = [ + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.59.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Console" ]; + } + ]; + features = { + }; + }; + "combine" = rec { + crateName = "combine"; + version = "4.6.7"; + edition = "2018"; + sha256 = "1z8rh8wp59gf8k23ar010phgs0wgf5i8cx4fg01gwcnzfn5k0nms"; + authors = [ + "Markus Westerlind " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + optional = true; + } + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + ]; + features = { + "bytes" = [ "dep:bytes" ]; + "bytes_05" = [ "dep:bytes_05" ]; + "default" = [ "std" ]; + "futures-03" = [ "pin-project" "std" "futures-core-03" "futures-io-03" "pin-project-lite" ]; + "futures-core-03" = [ "dep:futures-core-03" ]; + "futures-io-03" = [ "dep:futures-io-03" ]; + "pin-project" = [ "pin-project-lite" ]; + "pin-project-lite" = [ "dep:pin-project-lite" ]; + "regex" = [ "dep:regex" ]; + "std" = [ "memchr/std" "bytes" "alloc" ]; + "tokio" = [ "tokio-dep" "tokio-util/io" "futures-core-03" "pin-project-lite" ]; + "tokio-02" = [ "pin-project" "std" "tokio-02-dep" "futures-core-03" "pin-project-lite" "bytes_05" ]; + "tokio-02-dep" = [ "dep:tokio-02-dep" ]; + "tokio-03" = [ "pin-project" "std" "tokio-03-dep" "futures-core-03" "pin-project-lite" ]; + "tokio-03-dep" = [ "dep:tokio-03-dep" ]; + "tokio-dep" = [ "dep:tokio-dep" ]; + "tokio-util" = [ "dep:tokio-util" ]; + }; + resolvedDefaultFeatures = [ "alloc" "bytes" "default" "std" ]; + }; + "compact_str" = rec { + crateName = "compact_str"; + version = "0.8.1"; + edition = "2021"; + sha256 = "0cmgp61hw4fwaakhilwznfgncw2p4wkbvz6dw3i7ibbckh3c8y9v"; + authors = [ + "Parker Timmerman " + ]; + dependencies = [ + { + name = "castaway"; + packageId = "castaway"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "rustversion"; + packageId = "rustversion"; + } + { + name = "ryu"; + packageId = "ryu"; + } + { + name = "static_assertions"; + packageId = "static_assertions"; + } + ]; + devDependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "borsh" = [ "dep:borsh" ]; + "bytes" = [ "dep:bytes" ]; + "default" = [ "std" ]; + "diesel" = [ "dep:diesel" ]; + "markup" = [ "dep:markup" ]; + "proptest" = [ "dep:proptest" ]; + "quickcheck" = [ "dep:quickcheck" ]; + "rkyv" = [ "dep:rkyv" ]; + "serde" = [ "dep:serde" ]; + "smallvec" = [ "dep:smallvec" ]; + "sqlx" = [ "dep:sqlx" "std" ]; + "sqlx-mysql" = [ "sqlx" "sqlx/mysql" ]; + "sqlx-postgres" = [ "sqlx" "sqlx/postgres" ]; + "sqlx-sqlite" = [ "sqlx" "sqlx/sqlite" ]; + }; + }; + "concurrent-queue" = rec { + crateName = "concurrent-queue"; + version = "2.5.0"; + edition = "2021"; + sha256 = "0wrr3mzq2ijdkxwndhf79k952cp4zkz35ray8hvsxl96xrx1k82c"; + libName = "concurrent_queue"; + authors = [ + "Stjepan Glavina " + "Taiki Endo " + "John Nunley " + ]; + dependencies = [ + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "loom" = [ "dep:loom" ]; + "portable-atomic" = [ "dep:portable-atomic" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "console 0.15.11" = rec { + crateName = "console"; + version = "0.15.11"; + edition = "2021"; + sha256 = "1n5gmsjk6isbnw6qss043377kln20lfwlmdk3vswpwpr21dwnk05"; + authors = [ + "Armin Ronacher " + ]; + dependencies = [ + { + name = "encode_unicode"; + packageId = "encode_unicode"; + target = { target, features }: (target."windows" or false); + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.2.2"; + optional = true; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.59.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Console" "Win32_Storage_FileSystem" "Win32_UI_Input_KeyboardAndMouse" ]; + } + ]; + features = { + "default" = [ "unicode-width" "ansi-parsing" ]; + "unicode-width" = [ "dep:unicode-width" ]; + "windows-console-colors" = [ "ansi-parsing" ]; + }; + resolvedDefaultFeatures = [ "ansi-parsing" "unicode-width" ]; + }; + "console 0.16.2" = rec { + crateName = "console"; + version = "0.16.2"; + edition = "2021"; + sha256 = "1i5y6h3myz38jl9p3gglx5vh9c69kxxajsv3jx0pw8i6i555mr03"; + dependencies = [ + { + name = "encode_unicode"; + packageId = "encode_unicode"; + target = { target, features }: (target."windows" or false); + } + { + name = "libc"; + packageId = "libc"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + optional = true; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.2.2"; + optional = true; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Console" "Win32_Storage_FileSystem" "Win32_UI_Input_KeyboardAndMouse" ]; + } + ]; + features = { + "default" = [ "unicode-width" "ansi-parsing" "std" ]; + "std" = [ "dep:libc" "dep:once_cell" "alloc" ]; + "unicode-width" = [ "dep:unicode-width" ]; + "windows-console-colors" = [ "ansi-parsing" ]; + }; + resolvedDefaultFeatures = [ "alloc" "ansi-parsing" "default" "std" "unicode-width" ]; + }; + "const-oid" = rec { + crateName = "const-oid"; + version = "0.9.6"; + edition = "2021"; + sha256 = "1y0jnqaq7p2wvspnx7qj76m7hjcqpz73qzvr9l2p9n2s51vr6if2"; + libName = "const_oid"; + authors = [ + "RustCrypto Developers" + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + }; + }; + "constant_time_eq" = rec { + crateName = "constant_time_eq"; + version = "0.4.2"; + edition = "2024"; + sha256 = "16zamq60dq80k3rqlzh9j9cpjhishmh924lnwbplgrnmkkvfylix"; + authors = [ + "Cesar Eduardo Barros " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "convert_case 0.10.0" = rec { + crateName = "convert_case"; + version = "0.10.0"; + edition = "2021"; + sha256 = "1fff1x78mp2c233g68my0ag0zrmjdbym8bfyahjbfy4cxza5hd33"; + authors = [ + "rutrum " + ]; + dependencies = [ + { + name = "unicode-segmentation"; + packageId = "unicode-segmentation"; + } + ]; + + }; + "convert_case 0.8.0" = rec { + crateName = "convert_case"; + version = "0.8.0"; + edition = "2021"; + sha256 = "17zqy79xlr1n7nc0n1mlnw5qpp8l2nbxrk13jixrhlavrbna1ams"; + authors = [ + "rutrum " + ]; + dependencies = [ + { + name = "unicode-segmentation"; + packageId = "unicode-segmentation"; + } + ]; + features = { + "rand" = [ "dep:rand" ]; + "random" = [ "rand" ]; + }; + }; + "cookie" = rec { + crateName = "cookie"; + version = "0.18.1"; + edition = "2018"; + sha256 = "0iy749flficrlvgr3hjmf3igr738lk81n5akzf4ym4cs6cxg7pjd"; + authors = [ + "Sergio Benitez " + "Alex Crichton " + ]; + dependencies = [ + { + name = "aes-gcm"; + packageId = "aes-gcm"; + optional = true; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + optional = true; + } + { + name = "hkdf"; + packageId = "hkdf"; + optional = true; + } + { + name = "hmac"; + packageId = "hmac"; + optional = true; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + optional = true; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + optional = true; + } + { + name = "sha2"; + packageId = "sha2"; + optional = true; + } + { + name = "subtle"; + packageId = "subtle"; + optional = true; + } + { + name = "time"; + packageId = "time"; + usesDefaultFeatures = false; + features = [ "std" "parsing" "formatting" "macros" ]; + } + ]; + buildDependencies = [ + { + name = "version_check"; + packageId = "version_check"; + } + ]; + features = { + "aes-gcm" = [ "dep:aes-gcm" ]; + "base64" = [ "dep:base64" ]; + "hkdf" = [ "dep:hkdf" ]; + "hmac" = [ "dep:hmac" ]; + "key-expansion" = [ "sha2" "hkdf" ]; + "percent-encode" = [ "percent-encoding" ]; + "percent-encoding" = [ "dep:percent-encoding" ]; + "private" = [ "aes-gcm" "base64" "rand" "subtle" ]; + "rand" = [ "dep:rand" ]; + "secure" = [ "private" "signed" "key-expansion" ]; + "sha2" = [ "dep:sha2" ]; + "signed" = [ "hmac" "sha2" "base64" "rand" "subtle" ]; + "subtle" = [ "dep:subtle" ]; + }; + resolvedDefaultFeatures = [ "aes-gcm" "base64" "hkdf" "hmac" "key-expansion" "percent-encode" "percent-encoding" "private" "rand" "secure" "sha2" "signed" "subtle" ]; + }; + "coolor" = rec { + crateName = "coolor"; + version = "1.1.0"; + edition = "2021"; + sha256 = "1wr7q2c8l1cmigw3h7yfdpwcz5g5xbwkirsvbjhdchxgwkyjl34q"; + authors = [ + "dystroy " + ]; + dependencies = [ + { + name = "crossterm"; + packageId = "crossterm 0.29.0"; + optional = true; + } + ]; + devDependencies = [ + { + name = "crossterm"; + packageId = "crossterm 0.29.0"; + } + ]; + features = { + "crossterm" = [ "dep:crossterm" ]; + }; + resolvedDefaultFeatures = [ "crossterm" "default" ]; + }; + "core-foundation 0.10.1" = rec { + crateName = "core-foundation"; + version = "0.10.1"; + edition = "2021"; + sha256 = "1xjns6dqf36rni2x9f47b65grxwdm20kwdg9lhmzdrrkwadcv9mj"; + libName = "core_foundation"; + authors = [ + "The Servo Project Developers" + ]; + dependencies = [ + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + usesDefaultFeatures = false; + } + { + name = "libc"; + packageId = "libc"; + } + ]; + features = { + "default" = [ "link" ]; + "link" = [ "core-foundation-sys/link" ]; + "mac_os_10_7_support" = [ "core-foundation-sys/mac_os_10_7_support" ]; + "mac_os_10_8_features" = [ "core-foundation-sys/mac_os_10_8_features" ]; + "with-uuid" = [ "dep:uuid" ]; + }; + resolvedDefaultFeatures = [ "default" "link" ]; + }; + "core-foundation 0.9.4" = rec { + crateName = "core-foundation"; + version = "0.9.4"; + edition = "2018"; + sha256 = "13zvbbj07yk3b61b8fhwfzhy35535a583irf23vlcg59j7h9bqci"; + libName = "core_foundation"; + authors = [ + "The Servo Project Developers" + ]; + dependencies = [ + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + usesDefaultFeatures = false; + } + { + name = "libc"; + packageId = "libc"; + } + ]; + features = { + "chrono" = [ "dep:chrono" ]; + "default" = [ "link" ]; + "link" = [ "core-foundation-sys/link" ]; + "mac_os_10_7_support" = [ "core-foundation-sys/mac_os_10_7_support" ]; + "mac_os_10_8_features" = [ "core-foundation-sys/mac_os_10_8_features" ]; + "uuid" = [ "dep:uuid" ]; + "with-chrono" = [ "chrono" ]; + "with-uuid" = [ "uuid" ]; + }; + resolvedDefaultFeatures = [ "default" "link" ]; + }; + "core-foundation-sys" = rec { + crateName = "core-foundation-sys"; + version = "0.8.7"; + edition = "2018"; + sha256 = "12w8j73lazxmr1z0h98hf3z623kl8ms7g07jch7n4p8f9nwlhdkp"; + libName = "core_foundation_sys"; + authors = [ + "The Servo Project Developers" + ]; + features = { + "default" = [ "link" ]; + }; + resolvedDefaultFeatures = [ "default" "link" ]; + }; + "cpufeatures" = rec { + crateName = "cpufeatures"; + version = "0.2.17"; + edition = "2018"; + sha256 = "10023dnnaghhdl70xcds12fsx2b966sxbxjq5sxs49mvxqw5ivar"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (target.name == "aarch64-linux-android"); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("aarch64" == target."arch" or null) && ("linux" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("aarch64" == target."arch" or null) && ("apple" == target."vendor" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("loongarch64" == target."arch" or null) && ("linux" == target."os" or null)); + } + ]; + + }; + "crc" = rec { + crateName = "crc"; + version = "3.4.0"; + edition = "2021"; + sha256 = "03dsq5qsv86m35ikg84l80d00wnkjm8q4pjxgac0vaqjrnhs5f2y"; + authors = [ + "Rui Hu " + "Akhil Velagapudi <4@4khil.com>" + ]; + dependencies = [ + { + name = "crc-catalog"; + packageId = "crc-catalog"; + } + ]; + + }; + "crc-catalog" = rec { + crateName = "crc-catalog"; + version = "2.4.0"; + edition = "2018"; + sha256 = "1xg7sz82w3nxp1jfn425fvn1clvbzb3zgblmxsyqpys0dckp9lqr"; + libName = "crc_catalog"; + authors = [ + "Akhil Velagapudi " + ]; + + }; + "crc32fast" = rec { + crateName = "crc32fast"; + version = "1.5.0"; + edition = "2021"; + sha256 = "04d51liy8rbssra92p0qnwjw8i9rm9c4m3bwy19wjamz1k4w30cl"; + authors = [ + "Sam Rijs " + "Alex Crichton " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "criterion" = rec { + crateName = "criterion"; + version = "0.5.1"; + edition = "2018"; + sha256 = "0bv9ipygam3z8kk6k771gh9zi0j0lb9ir0xi1pc075ljg80jvcgj"; + authors = [ + "Jorge Aparicio " + "Brook Heisler " + ]; + dependencies = [ + { + name = "anes"; + packageId = "anes"; + } + { + name = "cast"; + packageId = "cast"; + } + { + name = "ciborium"; + packageId = "ciborium"; + } + { + name = "clap"; + packageId = "clap"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "criterion-plot"; + packageId = "criterion-plot"; + } + { + name = "futures"; + packageId = "futures"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "is-terminal"; + packageId = "is-terminal"; + } + { + name = "itertools"; + packageId = "itertools 0.10.5"; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "oorandom"; + packageId = "oorandom"; + } + { + name = "plotters"; + packageId = "plotters"; + optional = true; + usesDefaultFeatures = false; + features = [ "svg_backend" "area_series" "line_series" ]; + } + { + name = "rayon"; + packageId = "rayon"; + optional = true; + } + { + name = "regex"; + packageId = "regex"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_derive"; + packageId = "serde_derive"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "tinytemplate"; + packageId = "tinytemplate"; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + usesDefaultFeatures = false; + features = [ "rt" ]; + } + { + name = "walkdir"; + packageId = "walkdir"; + } + ]; + devDependencies = [ + { + name = "futures"; + packageId = "futures"; + usesDefaultFeatures = false; + features = [ "executor" ]; + } + ]; + features = { + "async" = [ "futures" ]; + "async-std" = [ "dep:async-std" ]; + "async_futures" = [ "futures/executor" "async" ]; + "async_smol" = [ "smol" "async" ]; + "async_std" = [ "async-std" "async" ]; + "async_tokio" = [ "tokio" "async" ]; + "csv" = [ "dep:csv" ]; + "csv_output" = [ "csv" ]; + "default" = [ "rayon" "plotters" "cargo_bench_support" ]; + "futures" = [ "dep:futures" ]; + "plotters" = [ "dep:plotters" ]; + "rayon" = [ "dep:rayon" ]; + "smol" = [ "dep:smol" ]; + "stable" = [ "csv_output" "html_reports" "async_futures" "async_smol" "async_tokio" "async_std" ]; + "tokio" = [ "dep:tokio" ]; + }; + resolvedDefaultFeatures = [ "async" "async_tokio" "cargo_bench_support" "default" "futures" "html_reports" "plotters" "rayon" "tokio" ]; + }; + "criterion-plot" = rec { + crateName = "criterion-plot"; + version = "0.5.0"; + edition = "2018"; + sha256 = "1c866xkjqqhzg4cjvg01f8w6xc1j3j7s58rdksl52skq89iq4l3b"; + libName = "criterion_plot"; + authors = [ + "Jorge Aparicio " + "Brook Heisler " + ]; + dependencies = [ + { + name = "cast"; + packageId = "cast"; + } + { + name = "itertools"; + packageId = "itertools 0.10.5"; + } + ]; + + }; + "crokey" = rec { + crateName = "crokey"; + version = "1.3.0"; + edition = "2021"; + sha256 = "1basm3p007xmbak9p9gic0lad1yk8g7sx0kcqwhdzcxyxd9hhdji"; + authors = [ + "dystroy " + ]; + dependencies = [ + { + name = "crokey-proc_macros"; + packageId = "crokey-proc_macros"; + } + { + name = "crossterm"; + packageId = "crossterm 0.29.0"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + features = [ "derive" ]; + } + { + name = "strict"; + packageId = "strict"; + } + ]; + features = { + "default" = [ "serde" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" ]; + }; + "crokey-proc_macros" = rec { + crateName = "crokey-proc_macros"; + version = "1.3.0"; + edition = "2018"; + sha256 = "0fg41ah18lpgkwilh2sbjvp89kx90pr9fsl2l3hfappbr8ksgw9v"; + procMacro = true; + libName = "crokey_proc_macros"; + libPath = "mod.rs"; + authors = [ + "Canop " + ]; + dependencies = [ + { + name = "crossterm"; + packageId = "crossterm 0.29.0"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "strict"; + packageId = "strict"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" ]; + } + ]; + + }; + "crossbeam" = rec { + crateName = "crossbeam"; + version = "0.8.4"; + edition = "2021"; + sha256 = "1a5c7yacnk723x0hfycdbl91ks2nxhwbwy46b8y5vyy0gxzcsdqi"; + dependencies = [ + { + name = "crossbeam-channel"; + packageId = "crossbeam-channel"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "crossbeam-deque"; + packageId = "crossbeam-deque"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "crossbeam-epoch"; + packageId = "crossbeam-epoch"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "crossbeam-queue"; + packageId = "crossbeam-queue"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "crossbeam-epoch/alloc" "crossbeam-queue/alloc" ]; + "crossbeam-channel" = [ "dep:crossbeam-channel" ]; + "crossbeam-deque" = [ "dep:crossbeam-deque" ]; + "crossbeam-epoch" = [ "dep:crossbeam-epoch" ]; + "crossbeam-queue" = [ "dep:crossbeam-queue" ]; + "default" = [ "std" ]; + "nightly" = [ "crossbeam-epoch/nightly" "crossbeam-utils/nightly" "crossbeam-queue/nightly" ]; + "std" = [ "alloc" "crossbeam-channel/std" "crossbeam-deque/std" "crossbeam-epoch/std" "crossbeam-queue/std" "crossbeam-utils/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "crossbeam-channel" "crossbeam-deque" "crossbeam-epoch" "crossbeam-queue" "default" "std" ]; + }; + "crossbeam-channel" = rec { + crateName = "crossbeam-channel"; + version = "0.5.15"; + edition = "2021"; + sha256 = "1cicd9ins0fkpfgvz9vhz3m9rpkh6n8d3437c3wnfsdkd3wgif42"; + libName = "crossbeam_channel"; + dependencies = [ + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "crossbeam-utils/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "crossbeam-deque" = rec { + crateName = "crossbeam-deque"; + version = "0.8.6"; + edition = "2021"; + sha256 = "0l9f1saqp1gn5qy0rxvkmz4m6n7fc0b3dbm6q1r5pmgpnyvi3lcx"; + libName = "crossbeam_deque"; + dependencies = [ + { + name = "crossbeam-epoch"; + packageId = "crossbeam-epoch"; + usesDefaultFeatures = false; + } + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "crossbeam-epoch/std" "crossbeam-utils/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "crossbeam-epoch" = rec { + crateName = "crossbeam-epoch"; + version = "0.9.18"; + edition = "2021"; + sha256 = "03j2np8llwf376m3fxqx859mgp9f83hj1w34153c7a9c7i5ar0jv"; + libName = "crossbeam_epoch"; + dependencies = [ + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "loom" = [ "loom-crate" "crossbeam-utils/loom" ]; + "loom-crate" = [ "dep:loom-crate" ]; + "nightly" = [ "crossbeam-utils/nightly" ]; + "std" = [ "alloc" "crossbeam-utils/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "std" ]; + }; + "crossbeam-queue" = rec { + crateName = "crossbeam-queue"; + version = "0.3.12"; + edition = "2021"; + sha256 = "059igaxckccj6ndmg45d5yf7cm4ps46c18m21afq3pwiiz1bnn0g"; + libName = "crossbeam_queue"; + dependencies = [ + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "nightly" = [ "crossbeam-utils/nightly" ]; + "std" = [ "alloc" "crossbeam-utils/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "crossbeam-skiplist" = rec { + crateName = "crossbeam-skiplist"; + version = "0.1.3"; + edition = "2021"; + sha256 = "06qmzagqmrv4zwmrvppv6lja6lbm6hi3vv47wp32rjjq1i2dwafz"; + libName = "crossbeam_skiplist"; + dependencies = [ + { + name = "crossbeam-epoch"; + packageId = "crossbeam-epoch"; + usesDefaultFeatures = false; + } + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "crossbeam-epoch/alloc" ]; + "default" = [ "std" ]; + "std" = [ "alloc" "crossbeam-epoch/std" "crossbeam-utils/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "crossbeam-utils" = rec { + crateName = "crossbeam-utils"; + version = "0.8.21"; + edition = "2021"; + sha256 = "0a3aa2bmc8q35fb67432w16wvi54sfmb69rk9h5bhd18vw0c99fh"; + libName = "crossbeam_utils"; + features = { + "default" = [ "std" ]; + "loom" = [ "dep:loom" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "crossterm 0.25.0" = rec { + crateName = "crossterm"; + version = "0.25.0"; + edition = "2021"; + sha256 = "0rsbkkhdf61aipc06b7vpl4cw3wnxz0miizp0ms3a5rcpq7nqkp6"; + authors = [ + "T. Post" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 1.3.2"; + } + { + name = "crossterm_winapi"; + packageId = "crossterm_winapi"; + target = { target, features }: (target."windows" or false); + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "mio"; + packageId = "mio 0.8.11"; + target = { target, features }: (target."unix" or false); + features = [ "os-poll" ]; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + target = { target, features }: (target."unix" or false); + } + { + name = "signal-hook-mio"; + packageId = "signal-hook-mio"; + target = { target, features }: (target."unix" or false); + features = [ "support-v0_8" ]; + } + { + name = "winapi"; + packageId = "winapi"; + target = { target, features }: (target."windows" or false); + features = [ "winuser" "winerror" ]; + } + ]; + features = { + "default" = [ "bracketed-paste" ]; + "event-stream" = [ "futures-core" ]; + "futures-core" = [ "dep:futures-core" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "bracketed-paste" "default" ]; + }; + "crossterm 0.28.1" = rec { + crateName = "crossterm"; + version = "0.28.1"; + edition = "2021"; + sha256 = "1im9vs6fvkql0sr378dfr4wdm1rrkrvr22v4i8byz05k1dd9b7c2"; + authors = [ + "T. Post" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "crossterm_winapi"; + packageId = "crossterm_winapi"; + optional = true; + target = { target, features }: (target."windows" or false); + } + { + name = "futures-core"; + packageId = "futures-core"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "mio"; + packageId = "mio 1.1.1"; + optional = true; + target = { target, features }: (target."unix" or false); + features = [ "os-poll" ]; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "rustix"; + packageId = "rustix 0.38.44"; + usesDefaultFeatures = false; + target = { target, features }: (target."unix" or false); + features = [ "std" "stdio" "termios" ]; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + optional = true; + target = { target, features }: (target."unix" or false); + } + { + name = "signal-hook-mio"; + packageId = "signal-hook-mio"; + optional = true; + target = { target, features }: (target."unix" or false); + features = [ "support-v1_0" ]; + } + { + name = "winapi"; + packageId = "winapi"; + optional = true; + target = { target, features }: (target."windows" or false); + features = [ "winuser" "winerror" ]; + } + ]; + features = { + "default" = [ "bracketed-paste" "windows" "events" ]; + "event-stream" = [ "dep:futures-core" "events" ]; + "events" = [ "dep:mio" "dep:signal-hook" "dep:signal-hook-mio" ]; + "filedescriptor" = [ "dep:filedescriptor" ]; + "libc" = [ "dep:libc" ]; + "serde" = [ "dep:serde" "bitflags/serde" ]; + "use-dev-tty" = [ "filedescriptor" "rustix/process" ]; + "windows" = [ "dep:winapi" "dep:crossterm_winapi" ]; + }; + resolvedDefaultFeatures = [ "bracketed-paste" "default" "event-stream" "events" "windows" ]; + }; + "crossterm 0.29.0" = rec { + crateName = "crossterm"; + version = "0.29.0"; + edition = "2021"; + sha256 = "0yzqxxd90k7d2ac26xq1awsznsaq0qika2nv1ik3p0vzqvjg5ffq"; + authors = [ + "T. Post" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "crossterm_winapi"; + packageId = "crossterm_winapi"; + optional = true; + target = { target, features }: (target."windows" or false); + } + { + name = "derive_more"; + packageId = "derive_more"; + optional = true; + features = [ "is_variant" ]; + } + { + name = "document-features"; + packageId = "document-features"; + } + { + name = "mio"; + packageId = "mio 1.1.1"; + optional = true; + target = { target, features }: (target."unix" or false); + features = [ "os-poll" ]; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "rustix"; + packageId = "rustix 1.1.3"; + usesDefaultFeatures = false; + target = { target, features }: (target."unix" or false); + features = [ "std" "stdio" "termios" ]; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + optional = true; + target = { target, features }: (target."unix" or false); + } + { + name = "signal-hook-mio"; + packageId = "signal-hook-mio"; + optional = true; + target = { target, features }: (target."unix" or false); + features = [ "support-v1_0" ]; + } + { + name = "winapi"; + packageId = "winapi"; + optional = true; + target = { target, features }: (target."windows" or false); + features = [ "winuser" "winerror" ]; + } + ]; + features = { + "default" = [ "bracketed-paste" "events" "windows" "derive-more" ]; + "derive-more" = [ "dep:derive_more" ]; + "event-stream" = [ "dep:futures-core" "events" ]; + "events" = [ "dep:mio" "dep:signal-hook" "dep:signal-hook-mio" ]; + "filedescriptor" = [ "dep:filedescriptor" ]; + "libc" = [ "dep:libc" ]; + "osc52" = [ "dep:base64" ]; + "serde" = [ "dep:serde" "bitflags/serde" ]; + "use-dev-tty" = [ "filedescriptor" "rustix/process" ]; + "windows" = [ "dep:winapi" "dep:crossterm_winapi" ]; + }; + resolvedDefaultFeatures = [ "bracketed-paste" "default" "derive-more" "events" "windows" ]; + }; + "crossterm_winapi" = rec { + crateName = "crossterm_winapi"; + version = "0.9.1"; + edition = "2018"; + sha256 = "0axbfb2ykbwbpf1hmxwpawwfs8wvmkcka5m561l7yp36ldi7rpdc"; + authors = [ + "T. Post" + ]; + dependencies = [ + { + name = "winapi"; + packageId = "winapi"; + target = { target, features }: (target."windows" or false); + features = [ "winbase" "consoleapi" "processenv" "handleapi" "synchapi" "impl-default" ]; + } + ]; + + }; + "crunchy" = rec { + crateName = "crunchy"; + version = "0.2.4"; + edition = "2021"; + sha256 = "1mbp5navim2qr3x48lyvadqblcxc1dm0lqr0swrkkwy2qblvw3s6"; + authors = [ + "Eira Fransham " + ]; + features = { + "default" = [ "limit_128" ]; + }; + resolvedDefaultFeatures = [ "default" "limit_128" ]; + }; + "crypto-bigint" = rec { + crateName = "crypto-bigint"; + version = "0.5.5"; + edition = "2021"; + sha256 = "0xmbdff3g6ii5sbxjxc31xfkv9lrmyril4arh3dzckd4gjsjzj8d"; + libName = "crypto_bigint"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "generic-array"; + packageId = "generic-array"; + optional = true; + } + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + optional = true; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + features = [ "std" ]; + } + ]; + features = { + "alloc" = [ "serdect?/alloc" ]; + "default" = [ "rand" ]; + "der" = [ "dep:der" ]; + "generic-array" = [ "dep:generic-array" ]; + "rand" = [ "rand_core/std" ]; + "rand_core" = [ "dep:rand_core" ]; + "rlp" = [ "dep:rlp" ]; + "serde" = [ "dep:serdect" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "generic-array" "rand_core" "zeroize" ]; + }; + "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 = "rand_core"; + packageId = "rand_core 0.6.4"; + optional = true; + } + { + name = "typenum"; + packageId = "typenum"; + } + ]; + features = { + "getrandom" = [ "rand_core/getrandom" ]; + "rand_core" = [ "dep:rand_core" ]; + }; + resolvedDefaultFeatures = [ "getrandom" "rand_core" "std" ]; + }; + "cstr" = rec { + crateName = "cstr"; + version = "0.2.12"; + edition = "2021"; + sha256 = "0dj6ll9ry27kn4k0vvhlvbhn9dyyr9haxnd06bxaqnmfr01kjlk8"; + procMacro = true; + authors = [ + "Xidorn Quan " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + ]; + + }; + "csv" = rec { + crateName = "csv"; + version = "1.4.0"; + edition = "2021"; + sha256 = "0f7r2ip0rbi7k377c3xmsh9xd69sillffhpfmbgnvz3yrxl9vkaj"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "csv-core"; + packageId = "csv-core"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "ryu"; + packageId = "ryu"; + } + { + name = "serde_core"; + packageId = "serde_core"; + } + ]; + + }; + "csv-core" = rec { + crateName = "csv-core"; + version = "0.1.13"; + edition = "2018"; + sha256 = "10lppd3fdb1i5npgx9xqjs5mjmy2qbdi8n16i48lg03ak4k3qjkh"; + libName = "csv_core"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + ]; + features = { + "libc" = [ "memchr/libc" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "ctor" = rec { + crateName = "ctor"; + version = "0.2.9"; + edition = "2018"; + sha256 = "00b5vprqi4a2cr29xhqijg800b4dwkhrr5wj2kf3s7vnambpi8ij"; + procMacro = true; + authors = [ + "Matt Mastracci " + ]; + dependencies = [ + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "full" "parsing" "printing" "proc-macro" ]; + } + ]; + features = { + }; + }; + "ctr" = rec { + crateName = "ctr"; + version = "0.9.2"; + edition = "2021"; + sha256 = "0d88b73waamgpfjdml78icxz45d95q7vi2aqa604b0visqdfws83"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "cipher"; + packageId = "cipher"; + } + ]; + devDependencies = [ + { + name = "cipher"; + packageId = "cipher"; + features = [ "dev" ]; + } + ]; + features = { + "alloc" = [ "cipher/alloc" ]; + "block-padding" = [ "cipher/block-padding" ]; + "std" = [ "cipher/std" "alloc" ]; + "zeroize" = [ "cipher/zeroize" ]; + }; + }; + "curve25519-dalek" = rec { + crateName = "curve25519-dalek"; + version = "4.1.3"; + edition = "2021"; + sha256 = "1gmjb9dsknrr8lypmhkyjd67p1arb8mbfamlwxm7vph38my8pywp"; + libName = "curve25519_dalek"; + authors = [ + "Isis Lovecruft " + "Henry de Valence " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "cpufeatures"; + packageId = "cpufeatures"; + target = { target, features }: ("x86_64" == target."arch" or null); + } + { + name = "curve25519-dalek-derive"; + packageId = "curve25519-dalek-derive"; + target = { target, features }: ((!("fiat" == target."curve25519_dalek_backend" or null)) && (!("serial" == target."curve25519_dalek_backend" or null)) && ("x86_64" == target."arch" or null)); + } + { + name = "digest"; + packageId = "digest"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "fiat-crypto"; + packageId = "fiat-crypto"; + usesDefaultFeatures = false; + target = { target, features }: ("fiat" == target."curve25519_dalek_backend" or null); + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + usesDefaultFeatures = false; + } + ]; + buildDependencies = [ + { + name = "rustc_version"; + packageId = "rustc_version"; + } + ]; + features = { + "alloc" = [ "zeroize?/alloc" ]; + "default" = [ "alloc" "precomputed-tables" "zeroize" ]; + "digest" = [ "dep:digest" ]; + "ff" = [ "dep:ff" ]; + "group" = [ "dep:group" "rand_core" ]; + "group-bits" = [ "group" "ff/bits" ]; + "rand_core" = [ "dep:rand_core" ]; + "serde" = [ "dep:serde" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "alloc" "digest" "precomputed-tables" "zeroize" ]; + }; + "curve25519-dalek-derive" = rec { + crateName = "curve25519-dalek-derive"; + version = "0.1.1"; + edition = "2021"; + sha256 = "1cry71xxrr0mcy5my3fb502cwfxy6822k4pm19cwrilrg7hq4s7l"; + procMacro = true; + libName = "curve25519_dalek_derive"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "darling 0.14.4" = rec { + crateName = "darling"; + version = "0.14.4"; + edition = "2018"; + sha256 = "0l1qrn805bsxa0iy7x8bmdwr8c10hlw0yiqs8ckv7lbz86rhqxbv"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.14.4"; + } + { + name = "darling_macro"; + packageId = "darling_macro 0.14.4"; + } + ]; + features = { + "default" = [ "suggestions" ]; + "diagnostics" = [ "darling_core/diagnostics" ]; + "suggestions" = [ "darling_core/suggestions" ]; + }; + resolvedDefaultFeatures = [ "default" "suggestions" ]; + }; + "darling 0.20.11" = rec { + crateName = "darling"; + version = "0.20.11"; + edition = "2021"; + sha256 = "1vmlphlrlw4f50z16p4bc9p5qwdni1ba95qmxfrrmzs6dh8lczzw"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.20.11"; + } + { + name = "darling_macro"; + packageId = "darling_macro 0.20.11"; + } + ]; + features = { + "default" = [ "suggestions" ]; + "diagnostics" = [ "darling_core/diagnostics" ]; + "suggestions" = [ "darling_core/suggestions" ]; + }; + resolvedDefaultFeatures = [ "default" "suggestions" ]; + }; + "darling 0.21.3" = rec { + crateName = "darling"; + version = "0.21.3"; + edition = "2021"; + sha256 = "1h281ah78pz05450r71h3gwm2n24hy8yngbz58g426l4j1q37pww"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.21.3"; + } + { + name = "darling_macro"; + packageId = "darling_macro 0.21.3"; + } + ]; + features = { + "default" = [ "suggestions" ]; + "diagnostics" = [ "darling_core/diagnostics" ]; + "serde" = [ "darling_core/serde" ]; + "suggestions" = [ "darling_core/suggestions" ]; + }; + resolvedDefaultFeatures = [ "default" "suggestions" ]; + }; + "darling_core 0.14.4" = rec { + crateName = "darling_core"; + version = "0.14.4"; + edition = "2018"; + sha256 = "1w4b2ndxmkwghwq84yphk8x15jnpivm08w596g12ry5pwsk1r70h"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "ident_case"; + packageId = "ident_case"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "strsim"; + packageId = "strsim 0.10.0"; + optional = true; + } + { + name = "syn"; + packageId = "syn 1.0.109"; + features = [ "full" "extra-traits" ]; + } + ]; + features = { + "strsim" = [ "dep:strsim" ]; + "suggestions" = [ "strsim" ]; + }; + resolvedDefaultFeatures = [ "strsim" "suggestions" ]; + }; + "darling_core 0.20.11" = rec { + crateName = "darling_core"; + version = "0.20.11"; + edition = "2021"; + sha256 = "0bj1af6xl4ablnqbgn827m43b8fiicgv180749f5cphqdmcvj00d"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "ident_case"; + packageId = "ident_case"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "strsim"; + packageId = "strsim 0.11.1"; + optional = true; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" ]; + } + ]; + features = { + "strsim" = [ "dep:strsim" ]; + "suggestions" = [ "strsim" ]; + }; + resolvedDefaultFeatures = [ "strsim" "suggestions" ]; + }; + "darling_core 0.21.3" = rec { + crateName = "darling_core"; + version = "0.21.3"; + edition = "2021"; + sha256 = "193ya45qgac0a4siwghk0bl8im8h89p3cald7kw8ag3yrmg1jiqj"; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "ident_case"; + packageId = "ident_case"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "strsim"; + packageId = "strsim 0.11.1"; + optional = true; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" ]; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + "strsim" = [ "dep:strsim" ]; + "suggestions" = [ "strsim" ]; + }; + resolvedDefaultFeatures = [ "strsim" "suggestions" ]; + }; + "darling_macro 0.14.4" = rec { + crateName = "darling_macro"; + version = "0.14.4"; + edition = "2018"; + sha256 = "13mlyd5w275c815k0ijf6g4c446hs8b3m2h4an5isqgpr7dv9am4"; + procMacro = true; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.14.4"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 1.0.109"; + } + ]; + + }; + "darling_macro 0.20.11" = rec { + crateName = "darling_macro"; + version = "0.20.11"; + edition = "2021"; + sha256 = "1bbfbc2px6sj1pqqq97bgqn6c8xdnb2fmz66f7f40nrqrcybjd7w"; + procMacro = true; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.20.11"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + + }; + "darling_macro 0.21.3" = rec { + crateName = "darling_macro"; + version = "0.21.3"; + edition = "2021"; + sha256 = "10ac85n4lnx3rmf5rw8lijl2c0sbl6ghcpgfmzh0s26ihbghi0yk"; + procMacro = true; + authors = [ + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling_core"; + packageId = "darling_core 0.21.3"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + + }; + "dashmap" = rec { + crateName = "dashmap"; + version = "6.1.0"; + edition = "2018"; + sha256 = "1kvnw859xvrqyd1lk89na6797yvl5bri4wi9j0viz2a4j54wqhah"; + authors = [ + "Acrimon " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.14.5"; + usesDefaultFeatures = false; + features = [ "raw" ]; + } + { + name = "lock_api"; + packageId = "lock_api"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "parking_lot_core"; + packageId = "parking_lot_core"; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "inline" = [ "hashbrown/inline-more" ]; + "rayon" = [ "dep:rayon" ]; + "serde" = [ "dep:serde" ]; + "typesize" = [ "dep:typesize" ]; + }; + }; + "data-encoding" = rec { + crateName = "data-encoding"; + version = "2.10.0"; + edition = "2018"; + sha256 = "1shzipi8igi058fkx9wfiy6prd7d8rahz1lb7d4idw9nfvrf58fp"; + libName = "data_encoding"; + authors = [ + "Julien Cretin " + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "dbus" = rec { + crateName = "dbus"; + version = "0.9.10"; + edition = "2018"; + sha256 = "1m252djlnskgb89i2177yf9w6p4nx9475gamc8ryxaz7sxlamcr1"; + authors = [ + "David Henningsson " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + { + name = "libdbus-sys"; + packageId = "libdbus-sys"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.59.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Networking_WinSock" ]; + } + ]; + features = { + "futures" = [ "futures-util" "futures-channel" ]; + "futures-channel" = [ "dep:futures-channel" ]; + "futures-executor" = [ "dep:futures-executor" ]; + "futures-util" = [ "dep:futures-util" ]; + "vendored" = [ "libdbus-sys/vendored" ]; + }; + }; + "dbus-secret-service" = rec { + crateName = "dbus-secret-service"; + version = "4.1.0"; + edition = "2021"; + sha256 = "19jgbqb841kbzmfgaqnbbhsc5ijck7fzl3zvgqyyb2bqvyg512vh"; + libName = "dbus_secret_service"; + authors = [ + "Daniel Brotsky " + ]; + dependencies = [ + { + name = "dbus"; + packageId = "dbus"; + } + { + name = "zeroize"; + packageId = "zeroize"; + features = [ "derive" ]; + } + ]; + features = { + "crypto-openssl" = [ "dep:fastrand" "dep:num" "dep:once_cell" "dep:openssl" ]; + "crypto-rust" = [ "dep:aes" "dep:block-padding" "dep:cbc" "dep:fastrand" "dep:hkdf" "dep:num" "dep:once_cell" "dep:sha2" ]; + "vendored" = [ "dbus/vendored" "openssl?/vendored" ]; + }; + }; + "deadpool" = rec { + crateName = "deadpool"; + version = "0.12.3"; + edition = "2021"; + sha256 = "06wvsfyni5f04ia6jczgjnpkq4w91cnjjdz10mpq93gcsv8v3qhb"; + authors = [ + "Michael P. Jung " + ]; + dependencies = [ + { + name = "deadpool-runtime"; + packageId = "deadpool-runtime"; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "num_cpus"; + packageId = "num_cpus"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "rt" "rt-multi-thread" "time" ]; + } + ]; + features = { + "default" = [ "managed" "unmanaged" ]; + "rt_async-std_1" = [ "deadpool-runtime/async-std_1" ]; + "rt_tokio_1" = [ "deadpool-runtime/tokio_1" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "managed" ]; + }; + "deadpool-runtime" = rec { + crateName = "deadpool-runtime"; + version = "0.1.4"; + edition = "2021"; + sha256 = "0arbchl5j887hcfvjy4gq38d32055s5cf7pkpmwn0lfw3ss6ca89"; + libName = "deadpool_runtime"; + authors = [ + "Michael P. Jung " + ]; + features = { + "async-std_1" = [ "dep:async-std_1" ]; + "tokio_1" = [ "dep:tokio_1" ]; + }; + }; + "debugid" = rec { + crateName = "debugid"; + version = "0.8.0"; + edition = "2018"; + sha256 = "13f15dfvn07fa7087pmacixqqv0lmj4hv93biw4ldr48ypk55xdy"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + } + { + name = "uuid"; + packageId = "uuid"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "serde" ]; + }; + "der" = rec { + crateName = "der"; + version = "0.7.10"; + edition = "2021"; + sha256 = "1jyxacyxdx6mxbkfw99jz59dzvcd9k17rq01a7xvn1dr6wl87hg7"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "const-oid"; + packageId = "const-oid"; + optional = true; + } + { + name = "pem-rfc7468"; + packageId = "pem-rfc7468"; + optional = true; + features = [ "alloc" ]; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "zeroize?/alloc" ]; + "arbitrary" = [ "dep:arbitrary" "const-oid?/arbitrary" "std" ]; + "bytes" = [ "dep:bytes" "alloc" ]; + "derive" = [ "dep:der_derive" ]; + "flagset" = [ "dep:flagset" ]; + "oid" = [ "dep:const-oid" ]; + "pem" = [ "dep:pem-rfc7468" "alloc" "zeroize" ]; + "std" = [ "alloc" ]; + "time" = [ "dep:time" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "alloc" "oid" "pem" "std" "zeroize" ]; + }; + "deranged" = rec { + crateName = "deranged"; + version = "0.5.5"; + edition = "2021"; + sha256 = "11z5939gv2klp1r1lgrp4w5fnlkj18jqqf0h9zxmia3vkrjwpv7c"; + authors = [ + "Jacob Pratt " + ]; + dependencies = [ + { + name = "powerfmt"; + packageId = "powerfmt"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "macros" = [ "dep:deranged-macros" ]; + "num" = [ "dep:num-traits" ]; + "powerfmt" = [ "dep:powerfmt" ]; + "quickcheck" = [ "dep:quickcheck" "alloc" ]; + "rand" = [ "rand08" "rand09" ]; + "rand08" = [ "dep:rand08" ]; + "rand09" = [ "dep:rand09" ]; + "serde" = [ "dep:serde_core" ]; + }; + resolvedDefaultFeatures = [ "default" "powerfmt" "serde" ]; + }; + "derive_builder" = rec { + crateName = "derive_builder"; + version = "0.20.2"; + edition = "2018"; + sha256 = "0is9z7v3kznziqsxa5jqji3ja6ay9wzravppzhcaczwbx84znzah"; + authors = [ + "Colin Kiegel " + "Pascal Hertleif " + "Jan-Erik Rediger " + "Ted Driggs " + ]; + dependencies = [ + { + name = "derive_builder_macro"; + packageId = "derive_builder_macro"; + } + ]; + features = { + "alloc" = [ "derive_builder_macro/alloc" ]; + "clippy" = [ "derive_builder_macro/clippy" ]; + "default" = [ "std" ]; + "std" = [ "derive_builder_macro/lib_has_std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "derive_builder_core" = rec { + crateName = "derive_builder_core"; + version = "0.20.2"; + edition = "2018"; + sha256 = "1s640r6q46c2iiz25sgvxw3lk6b6v5y8hwylng7kas2d09xwynrd"; + authors = [ + "Colin Kiegel " + "Pascal Hertleif " + "Jan-Erik Rediger " + "Ted Driggs " + ]; + dependencies = [ + { + name = "darling"; + packageId = "darling 0.20.11"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "lib_has_std" ]; + }; + "derive_builder_macro" = rec { + crateName = "derive_builder_macro"; + version = "0.20.2"; + edition = "2018"; + sha256 = "0g1zznpqrmvjlp2w7p0jzsjvpmw5rvdag0rfyypjhnadpzib0qxb"; + procMacro = true; + authors = [ + "Colin Kiegel " + "Pascal Hertleif " + "Jan-Erik Rediger " + "Ted Driggs " + ]; + dependencies = [ + { + name = "derive_builder_core"; + packageId = "derive_builder_core"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" ]; + } + ]; + features = { + "alloc" = [ "derive_builder_core/alloc" ]; + "clippy" = [ "derive_builder_core/clippy" ]; + "lib_has_std" = [ "derive_builder_core/lib_has_std" ]; + }; + resolvedDefaultFeatures = [ "lib_has_std" ]; + }; + "derive_more" = rec { + crateName = "derive_more"; + version = "2.1.1"; + edition = "2021"; + sha256 = "0d5i10l4aff744jw7v4n8g6cv15rjk5mp0f1z522pc2nj7jfjlfp"; + authors = [ + "Jelte Fennema " + ]; + dependencies = [ + { + name = "derive_more-impl"; + packageId = "derive_more-impl"; + } + ]; + features = { + "add" = [ "derive_more-impl/add" ]; + "add_assign" = [ "derive_more-impl/add_assign" ]; + "as_ref" = [ "derive_more-impl/as_ref" ]; + "constructor" = [ "derive_more-impl/constructor" ]; + "debug" = [ "derive_more-impl/debug" ]; + "default" = [ "std" ]; + "deref" = [ "derive_more-impl/deref" ]; + "deref_mut" = [ "derive_more-impl/deref_mut" ]; + "display" = [ "derive_more-impl/display" ]; + "eq" = [ "derive_more-impl/eq" ]; + "error" = [ "derive_more-impl/error" ]; + "from" = [ "derive_more-impl/from" ]; + "from_str" = [ "derive_more-impl/from_str" ]; + "full" = [ "add" "add_assign" "as_ref" "constructor" "debug" "deref" "deref_mut" "display" "eq" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "is_variant" "mul" "mul_assign" "not" "sum" "try_from" "try_into" "try_unwrap" "unwrap" ]; + "index" = [ "derive_more-impl/index" ]; + "index_mut" = [ "derive_more-impl/index_mut" ]; + "into" = [ "derive_more-impl/into" ]; + "into_iterator" = [ "derive_more-impl/into_iterator" ]; + "is_variant" = [ "derive_more-impl/is_variant" ]; + "mul" = [ "derive_more-impl/mul" ]; + "mul_assign" = [ "derive_more-impl/mul_assign" ]; + "not" = [ "derive_more-impl/not" ]; + "sum" = [ "derive_more-impl/sum" ]; + "testing-helpers" = [ "derive_more-impl/testing-helpers" "dep:rustc_version" ]; + "try_from" = [ "derive_more-impl/try_from" ]; + "try_into" = [ "derive_more-impl/try_into" ]; + "try_unwrap" = [ "derive_more-impl/try_unwrap" ]; + "unwrap" = [ "derive_more-impl/unwrap" ]; + }; + resolvedDefaultFeatures = [ "default" "is_variant" "std" ]; + }; + "derive_more-impl" = rec { + crateName = "derive_more-impl"; + version = "2.1.1"; + edition = "2021"; + sha256 = "1jwdp836vymp35d7mfvvalplkdgk2683nv3zjlx65n1194k9g6kr"; + procMacro = true; + libName = "derive_more_impl"; + authors = [ + "Jelte Fennema " + ]; + dependencies = [ + { + name = "convert_case"; + packageId = "convert_case 0.10.0"; + optional = true; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + buildDependencies = [ + { + name = "rustc_version"; + packageId = "rustc_version"; + } + ]; + features = { + "add" = [ "syn/extra-traits" "syn/visit" ]; + "add_assign" = [ "syn/extra-traits" "syn/visit" ]; + "as_ref" = [ "syn/extra-traits" "syn/visit" ]; + "debug" = [ "syn/extra-traits" "dep:unicode-xid" ]; + "display" = [ "syn/extra-traits" "dep:unicode-xid" "dep:convert_case" ]; + "eq" = [ "syn/extra-traits" "syn/visit" ]; + "error" = [ "syn/extra-traits" ]; + "from" = [ "syn/extra-traits" ]; + "from_str" = [ "syn/full" "syn/visit" "dep:convert_case" ]; + "full" = [ "add" "add_assign" "as_ref" "constructor" "debug" "deref" "deref_mut" "display" "eq" "error" "from" "from_str" "index" "index_mut" "into" "into_iterator" "is_variant" "mul" "mul_assign" "not" "sum" "try_from" "try_into" "try_unwrap" "unwrap" ]; + "into" = [ "syn/extra-traits" "syn/visit-mut" ]; + "is_variant" = [ "dep:convert_case" ]; + "mul" = [ "syn/extra-traits" "syn/visit" ]; + "mul_assign" = [ "syn/extra-traits" "syn/visit" ]; + "not" = [ "syn/extra-traits" ]; + "testing-helpers" = [ "syn/full" ]; + "try_into" = [ "syn/extra-traits" "syn/full" "syn/visit-mut" ]; + "try_unwrap" = [ "dep:convert_case" ]; + "unwrap" = [ "dep:convert_case" ]; + }; + resolvedDefaultFeatures = [ "default" "is_variant" ]; + }; + "derive_utils" = rec { + crateName = "derive_utils"; + version = "0.15.0"; + edition = "2021"; + sha256 = "1q1fkmcvr7gcpwb6cby77s62z8389jgbdk5jg1a6raxmpa0y3ync"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "printing" "clone-impls" "proc-macro" "full" ]; + } + ]; + + }; + "devenv" = rec { + crateName = "devenv"; + version = "2.0.0"; + edition = "2024"; + crateBin = []; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "axum"; + packageId = "axum"; + } + { + name = "blake3"; + packageId = "blake3"; + } + { + name = "chrono"; + packageId = "chrono"; + features = [ "serde" ]; + } + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "cargo" "env" ]; + } + { + name = "cli-table"; + packageId = "cli-table"; + } + { + name = "console"; + packageId = "console 0.16.2"; + } + { + name = "devenv-activity"; + packageId = "devenv-activity"; + } + { + name = "devenv-cache-core"; + packageId = "devenv-cache-core"; + } + { + name = "devenv-core"; + packageId = "devenv-core"; + } + { + name = "devenv-eval-cache"; + packageId = "devenv-eval-cache"; + } + { + name = "devenv-nix-backend"; + packageId = "devenv-nix-backend"; + } + { + name = "devenv-tasks"; + packageId = "devenv-tasks"; + } + { + name = "devenv-tui"; + packageId = "devenv-tui"; + } + { + name = "dialoguer"; + packageId = "dialoguer"; + } + { + name = "dotlock"; + packageId = "dotlock"; + } + { + name = "fd-lock"; + packageId = "fd-lock"; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "hex"; + packageId = "hex"; + } + { + name = "hostname"; + packageId = "hostname"; + } + { + name = "include_dir"; + packageId = "include_dir"; + } + { + name = "indicatif"; + packageId = "indicatif"; + } + { + name = "indoc"; + packageId = "indoc"; + } + { + name = "json-subscriber"; + packageId = "json-subscriber"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "nix"; + packageId = "nix 0.30.1"; + features = [ "signal" "process" ]; + } + { + name = "nix-conf-parser"; + packageId = "nix-conf-parser"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "pathdiff"; + packageId = "pathdiff"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + { + name = "regex"; + packageId = "regex"; + } + { + name = "reqwest"; + packageId = "reqwest 0.13.1"; + features = [ "json" "query" "stream" ]; + } + { + name = "rmcp"; + packageId = "rmcp"; + features = [ "server" "transport-io" "transport-streamable-http-server" ]; + } + { + name = "rmcp-macros"; + packageId = "rmcp-macros"; + } + { + name = "schemars"; + packageId = "schemars 1.2.0"; + } + { + name = "schematic"; + packageId = "schematic"; + features = [ "schema" "yaml" "renderer_template" "renderer_json_schema" ]; + } + { + name = "secrecy"; + packageId = "secrecy"; + } + { + name = "secretspec"; + packageId = "secretspec 0.6.1"; + } + { + name = "ser_nix"; + packageId = "ser_nix"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_yaml"; + packageId = "serde_yaml"; + } + { + name = "sha2"; + packageId = "sha2"; + } + { + name = "shell-escape"; + packageId = "shell-escape"; + } + { + name = "similar"; + packageId = "similar"; + } + { + name = "sqlx"; + packageId = "sqlx"; + features = [ "time" "sqlite" "runtime-tokio" ]; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "termimad"; + packageId = "termimad"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" ]; + } + { + name = "tokio-shutdown"; + packageId = "tokio-shutdown"; + } + { + name = "tokio-stream"; + packageId = "tokio-stream"; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "tracing-indicatif"; + packageId = "tracing-indicatif"; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "json" "valuable" ]; + } + { + name = "valuable"; + packageId = "valuable"; + features = [ "derive" ]; + } + { + name = "which"; + packageId = "which 8.0.0"; + } + { + name = "whoami"; + packageId = "whoami 1.6.1"; + } + { + name = "xdg"; + packageId = "xdg"; + } + ]; + features = { + "snix" = [ "dep:devenv-snix-backend" "dep:nix-compat" "dep:nix-compat-derive" "dep:snix-build" "dep:snix-castore" "dep:snix-eval" "dep:snix-glue" "dep:snix-store" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "devenv-activity" = rec { + crateName = "devenv-activity"; + version = "2.0.0"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "devenv_activity"; + dependencies = [ + { + name = "devenv-activity-macros"; + packageId = "devenv-activity-macros"; + } + { + name = "humantime"; + packageId = "humantime"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_with"; + packageId = "serde_with"; + } + { + name = "strum"; + packageId = "strum"; + features = [ "derive" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "sync" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "json" "valuable" "registry" ]; + } + { + name = "valuable"; + packageId = "valuable"; + features = [ "derive" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "macros" "rt-multi-thread" ]; + } + ]; + + }; + "devenv-activity-macros" = rec { + crateName = "devenv-activity-macros"; + version = "2.0.0"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + procMacro = true; + libName = "devenv_activity_macros"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "parsing" "extra-traits" ]; + } + ]; + + }; + "devenv-backend" = rec { + crateName = "devenv-backend"; + version = "0.1.0"; + edition = "2024"; + crateBin = [ + { + name = "devenv-backend"; + path = "src/main.rs"; + requiredFeatures = [ ]; + } + ]; + src = lib.cleanSourceWith { filter = sourceFilter; src = ./backend; }; + libName = "devenv_backend"; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "axum"; + packageId = "axum"; + } + { + name = "axum-typed-websockets"; + packageId = "axum-typed-websockets"; + } + { + name = "chrono"; + packageId = "chrono"; + features = [ "serde" ]; + } + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "env" ]; + } + { + name = "color-eyre"; + packageId = "color-eyre"; + } + { + name = "devenv-runner"; + packageId = "devenv-runner"; + usesDefaultFeatures = false; + } + { + name = "diesel"; + packageId = "diesel"; + features = [ "uuid" "time" "chrono" "serde_json" ]; + } + { + name = "diesel-async"; + packageId = "diesel-async"; + features = [ "async-connection-wrapper" "deadpool" "postgres" "tokio-postgres" ]; + } + { + name = "diesel_migrations"; + packageId = "diesel_migrations"; + features = [ "postgres" ]; + } + { + name = "digest"; + packageId = "digest"; + } + { + name = "eyre"; + packageId = "eyre"; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "hex"; + packageId = "hex"; + } + { + name = "hmac"; + packageId = "hmac"; + } + { + name = "jsonwebtoken"; + packageId = "jsonwebtoken"; + } + { + name = "metrics-prometheus"; + packageId = "metrics-prometheus"; + } + { + name = "oauth-kit"; + packageId = "oauth-kit"; + } + { + name = "octocrab"; + packageId = "octocrab"; + } + { + name = "pbjson-types"; + packageId = "pbjson-types"; + } + { + name = "posthog-rs"; + packageId = "posthog-rs"; + } + { + name = "prometheus"; + packageId = "prometheus"; + } + { + name = "prost"; + packageId = "prost"; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + features = [ "stream" "json" "rustls-tls-webpki-roots" ]; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + } + { + name = "secrecy"; + packageId = "secrecy"; + } + { + name = "secretspec"; + packageId = "secretspec 0.3.4"; + } + { + name = "secretspec-derive"; + packageId = "secretspec-derive"; + } + { + name = "sentry"; + packageId = "sentry"; + } + { + name = "sentry-tower"; + packageId = "sentry-tower"; + features = [ "axum" "axum-matched-path" "http" ]; + } + { + name = "sentry-tracing"; + packageId = "sentry-tracing"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_yaml"; + packageId = "serde_yaml"; + } + { + name = "sha2"; + packageId = "sha2"; + } + { + name = "strum"; + packageId = "strum"; + } + { + name = "strum_macros"; + packageId = "strum_macros"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "full" "macros" "sync" "rt-multi-thread" ]; + } + { + name = "toml"; + packageId = "toml 0.8.23"; + } + { + name = "tower"; + packageId = "tower"; + } + { + name = "tower-http"; + packageId = "tower-http"; + features = [ "catch-panic" "trace" "cors" "catch-panic" "trace" ]; + } + { + name = "tower-sessions-cookie-store"; + packageId = "tower-sessions-cookie-store"; + features = [ "private" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "tracing-error"; + packageId = "tracing-error"; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "fmt" "json" "valuable" ]; + } + { + name = "url"; + packageId = "url"; + features = [ "serde" ]; + } + { + name = "utoipa"; + packageId = "utoipa"; + features = [ "chrono" "uuid" ]; + } + { + name = "utoipa-axum"; + packageId = "utoipa-axum"; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "v7" "serde" "v7" ]; + } + ]; + + }; + "devenv-cache-core" = rec { + crateName = "devenv-cache-core"; + version = "2.0.0"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "devenv_cache_core"; + dependencies = [ + { + name = "blake3"; + packageId = "blake3"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "sqlx"; + packageId = "sqlx"; + features = [ "time" "sqlite" "runtime-tokio" "runtime-tokio" "tls-rustls" "sqlite" "migrate" "macros" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "fs" "macros" "time" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "walkdir"; + packageId = "walkdir"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "rt" "macros" ]; + } + ]; + + }; + "devenv-core" = rec { + crateName = "devenv-core"; + version = "2.0.0"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "devenv_core"; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "cargo" "env" ]; + } + { + name = "devenv-activity"; + packageId = "devenv-activity"; + } + { + name = "devenv-cache-core"; + packageId = "devenv-cache-core"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "nix-conf-parser"; + packageId = "nix-conf-parser"; + } + { + name = "num_enum"; + packageId = "num_enum"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "pathdiff"; + packageId = "pathdiff"; + } + { + name = "regex"; + packageId = "regex"; + } + { + name = "schemars"; + packageId = "schemars 1.2.0"; + } + { + name = "schematic"; + packageId = "schematic"; + features = [ "schema" "yaml" "renderer_template" "renderer_json_schema" ]; + } + { + name = "ser_nix"; + packageId = "ser_nix"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_repr"; + packageId = "serde_repr"; + } + { + name = "serde_yaml"; + packageId = "serde_yaml"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + ]; + features = { + }; + }; + "devenv-eval-cache" = rec { + crateName = "devenv-eval-cache"; + version = "2.0.0"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "devenv_eval_cache"; + dependencies = [ + { + name = "blake3"; + packageId = "blake3"; + } + { + name = "devenv-activity"; + packageId = "devenv-activity"; + } + { + name = "devenv-cache-core"; + packageId = "devenv-cache-core"; + } + { + name = "devenv-core"; + packageId = "devenv-core"; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "num_enum"; + packageId = "num_enum"; + } + { + name = "ser_nix"; + packageId = "ser_nix"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_repr"; + packageId = "serde_repr"; + } + { + name = "sqlx"; + packageId = "sqlx"; + features = [ "time" "sqlite" "runtime-tokio" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "devenv-init" = rec { + crateName = "devenv-init"; + version = "0.1.0"; + edition = "2021"; + crateBin = [ + { + name = "init"; + path = "src/bin/init.rs"; + requiredFeatures = [ ]; + } + ]; + src = lib.cleanSourceWith { filter = sourceFilter; src = ./init; }; + libName = "devenv_init"; + dependencies = [ + { + name = "clap"; + packageId = "clap"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "derive" "env" "derive" ]; + } + { + name = "color-eyre"; + packageId = "color-eyre"; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "nix"; + packageId = "nix 0.29.0"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "fs" "hostname" "mount" ]; + } + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "rt-multi-thread" "full" "macros" "sync" ]; + } + { + name = "tracing"; + packageId = "tracing"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "valuable" ]; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "env-filter" "fmt" "json" "valuable" ]; + } + ]; + + }; + "devenv-logger" = rec { + crateName = "devenv-logger"; + version = "0.1.0"; + edition = "2024"; + crateBin = [ + { + name = "client"; + path = "src/bin/client.rs"; + requiredFeatures = [ ]; + } + { + name = "server"; + path = "src/main.rs"; + requiredFeatures = [ ]; + } + ]; + src = lib.cleanSourceWith { filter = sourceFilter; src = ./logger; }; + libName = "devenv_logger"; + dependencies = [ + { + name = "async-stream"; + packageId = "async-stream"; + } + { + name = "axum"; + packageId = "axum"; + } + { + name = "axum-extra"; + packageId = "axum-extra"; + features = [ "json-lines" ]; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + features = [ "stream" "json" "rustls-tls-webpki-roots" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "slatedb"; + packageId = "slatedb"; + } + { + name = "time"; + packageId = "time"; + features = [ "formatting" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "full" "macros" "sync" ]; + } + { + name = "tokio-stream"; + packageId = "tokio-stream"; + } + { + name = "tower-http"; + packageId = "tower-http"; + features = [ "catch-panic" "trace" "cors" "cors" ]; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "v7" "serde" ]; + } + ]; + devDependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "criterion"; + packageId = "criterion"; + features = [ "html_reports" "async_tokio" ]; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + features = [ "full" ]; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "client" "client-legacy" "http1" "http2" ]; + } + { + name = "hyperlocal"; + packageId = "hyperlocal"; + } + ]; + + }; + "devenv-nix-backend" = rec { + crateName = "devenv-nix-backend"; + version = "2.0.0"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "devenv_nix_backend"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "devenv-activity"; + packageId = "devenv-activity"; + } + { + name = "devenv-cache-core"; + packageId = "devenv-cache-core"; + } + { + name = "devenv-core"; + packageId = "devenv-core"; + } + { + name = "devenv-eval-cache"; + packageId = "devenv-eval-cache"; + } + { + name = "include_dir"; + packageId = "include_dir"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "nix-bindings-bindgen-raw"; + packageId = "nix-bindings-bindgen-raw"; + } + { + name = "nix-bindings-expr"; + packageId = "nix-bindings-expr"; + } + { + name = "nix-bindings-fetchers"; + packageId = "nix-bindings-fetchers"; + } + { + name = "nix-bindings-flake"; + packageId = "nix-bindings-flake"; + } + { + name = "nix-bindings-store"; + packageId = "nix-bindings-store"; + } + { + name = "nix-bindings-util"; + packageId = "nix-bindings-util"; + } + { + name = "nix-cmd"; + packageId = "nix-cmd"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "secretspec"; + packageId = "secretspec 0.6.1"; + } + { + name = "ser_nix"; + packageId = "ser_nix"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "sqlx"; + packageId = "sqlx"; + features = [ "time" "sqlite" "runtime-tokio" ]; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" ]; + } + { + name = "tokio-shutdown"; + packageId = "tokio-shutdown"; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "v4" ]; + } + ]; + devDependencies = [ + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" ]; + } + ]; + + }; + "devenv-runner" = rec { + crateName = "devenv-runner"; + version = "0.1.0"; + edition = "2024"; + crateBin = [ + { + name = "devenv-driver"; + path = "src/bin/driver.rs"; + requiredFeatures = [ "client" ]; + } + { + name = "devenv-launcher"; + path = "src/bin/launcher.rs"; + requiredFeatures = [ "client" ]; + } + { + name = "devenv-runner"; + path = "src/bin/runner.rs"; + requiredFeatures = [ "client" ]; + } + ]; + src = lib.cleanSourceWith { filter = sourceFilter; src = ./runner; }; + libName = "devenv_runner"; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "backon"; + packageId = "backon"; + } + { + name = "block2"; + packageId = "block2"; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "chrono"; + packageId = "chrono"; + features = [ "serde" ]; + } + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "env" ]; + } + { + name = "cloud-hypervisor-client"; + packageId = "cloud-hypervisor-client"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "color-eyre"; + packageId = "color-eyre"; + } + { + name = "devenv"; + packageId = "devenv"; + } + { + name = "devenv-logger"; + packageId = "devenv-logger"; + } + { + name = "dispatch2"; + packageId = "dispatch2"; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "eyre"; + packageId = "eyre"; + } + { + name = "fs_extra"; + packageId = "fs_extra"; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "gen_passphrase"; + packageId = "gen_passphrase"; + features = [ "eff_large" ]; + } + { + name = "gix"; + packageId = "gix"; + features = [ "worktree-mutation" "blocking-network-client" "blocking-http-transport-reqwest-rust-tls" ]; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "nix"; + packageId = "nix 0.29.0"; + target = { target, features }: ("linux" == target."os" or null); + features = [ "fs" "hostname" "mount" "user" ]; + } + { + name = "objc2"; + packageId = "objc2"; + target = { target, features }: ("macos" == target."os" or null); + features = [ "std" "exception" ]; + } + { + name = "objc2-app-kit"; + packageId = "objc2-app-kit"; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "objc2-virtualization"; + packageId = "objc2-virtualization"; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "pid1"; + packageId = "pid1"; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + features = [ "stream" "json" "rustls-tls-webpki-roots" "blocking" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + } + { + name = "sysinfo"; + packageId = "sysinfo 0.34.2"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "full" "macros" "sync" "macros" "rt-multi-thread" "sync" ]; + } + { + name = "tokio-shutdown"; + packageId = "tokio-shutdown"; + } + { + name = "tokio-stream"; + packageId = "tokio-stream"; + } + { + name = "tokio-tungstenite"; + packageId = "tokio-tungstenite 0.26.2"; + } + { + name = "tokio-vsock"; + packageId = "tokio-vsock"; + } + { + name = "tonic"; + packageId = "tonic"; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "fmt" "json" "valuable" ]; + } + { + name = "url"; + packageId = "url"; + features = [ "serde" ]; + } + { + name = "utoipa"; + packageId = "utoipa"; + features = [ "chrono" "uuid" ]; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "v7" "serde" "serde" "v7" ]; + } + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + target = { target, features }: ("linux" == target."os" or null); + } + ]; + features = { + "default" = [ "client" ]; + }; + resolvedDefaultFeatures = [ "client" "default" ]; + }; + "devenv-tasks" = rec { + crateName = "devenv-tasks"; + version = "2.0.0"; + edition = "2024"; + crateBin = []; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "devenv_tasks"; + dependencies = [ + { + name = "blake3"; + packageId = "blake3"; + } + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "cargo" "env" ]; + } + { + name = "console"; + packageId = "console 0.16.2"; + } + { + name = "devenv-activity"; + packageId = "devenv-activity"; + } + { + name = "devenv-cache-core"; + packageId = "devenv-cache-core"; + } + { + name = "glob"; + packageId = "glob"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "nix"; + packageId = "nix 0.30.1"; + target = { target, features }: (target."unix" or false); + features = [ "signal" "process" "user" ]; + } + { + name = "petgraph"; + packageId = "petgraph 0.8.3"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "shell-escape"; + packageId = "shell-escape"; + } + { + name = "sqlx"; + packageId = "sqlx"; + features = [ "time" "sqlite" "runtime-tokio" ]; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "signal" ]; + } + { + name = "tokio-shutdown"; + packageId = "tokio-shutdown"; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + features = [ "io" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "walkdir"; + packageId = "walkdir"; + } + ]; + + }; + "devenv-tui" = rec { + crateName = "devenv-tui"; + version = "2.0.0"; + edition = "2024"; + crateBin = []; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "devenv_tui"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "chrono"; + packageId = "chrono"; + features = [ "serde" ]; + } + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "cargo" "env" ]; + } + { + name = "console"; + packageId = "console 0.16.2"; + } + { + name = "crossterm"; + packageId = "crossterm 0.28.1"; + } + { + name = "devenv-activity"; + packageId = "devenv-activity"; + } + { + name = "devenv-cache-core"; + packageId = "devenv-cache-core"; + } + { + name = "devenv-eval-cache"; + packageId = "devenv-eval-cache"; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "human-repr"; + packageId = "human-repr"; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + } + { + name = "iocraft"; + packageId = "iocraft"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "macros" "rt-multi-thread" "sync" "time" "signal" ]; + } + { + name = "tokio-shutdown"; + packageId = "tokio-shutdown"; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "json" "valuable" ]; + } + { + name = "url"; + packageId = "url"; + } + ]; + + }; + "dialoguer" = rec { + crateName = "dialoguer"; + version = "0.12.0"; + edition = "2021"; + sha256 = "15mdq2cp838yiq9fs1jkhvskixvlqz5p8f8dipkn88xz06sh9w95"; + dependencies = [ + { + name = "console"; + packageId = "console 0.16.2"; + } + { + name = "shell-words"; + packageId = "shell-words"; + } + { + name = "tempfile"; + packageId = "tempfile"; + optional = true; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + } + ]; + features = { + "default" = [ "editor" "password" ]; + "editor" = [ "tempfile" ]; + "fuzzy-matcher" = [ "dep:fuzzy-matcher" ]; + "fuzzy-select" = [ "fuzzy-matcher" ]; + "password" = [ "zeroize" ]; + "tempfile" = [ "dep:tempfile" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "default" "editor" "password" "tempfile" "zeroize" ]; + }; + "diesel" = rec { + crateName = "diesel"; + version = "2.2.12"; + edition = "2021"; + sha256 = "0372l6pzyhwbpsfr9a6aziqaxh5gjk9dj2i9y3a896yd2ai51612"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + } + { + name = "byteorder"; + packageId = "byteorder"; + optional = true; + } + { + name = "chrono"; + packageId = "chrono"; + optional = true; + usesDefaultFeatures = false; + features = [ "clock" "std" ]; + } + { + name = "diesel_derives"; + packageId = "diesel_derives"; + } + { + name = "itoa"; + packageId = "itoa"; + optional = true; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "time"; + packageId = "time"; + optional = true; + features = [ "macros" ]; + } + { + name = "uuid"; + packageId = "uuid"; + optional = true; + } + ]; + features = { + "128-column-tables" = [ "64-column-tables" "diesel_derives/128-column-tables" ]; + "32-column-tables" = [ "diesel_derives/32-column-tables" ]; + "64-column-tables" = [ "32-column-tables" "diesel_derives/64-column-tables" ]; + "__with_asan_tests" = [ "libsqlite3-sys?/bundled" "libsqlite3-sys?/with-asan" "pq-sys?/bundled" "pq-src?/with-asan" "mysqlclient-sys?/bundled" "mysqlclient-src?/with-asan" ]; + "chrono" = [ "diesel_derives/chrono" "dep:chrono" ]; + "default" = [ "with-deprecated" "32-column-tables" ]; + "extras" = [ "chrono" "time" "serde_json" "uuid" "network-address" "numeric" "r2d2" ]; + "huge-tables" = [ "64-column-tables" ]; + "ipnet-address" = [ "dep:ipnet" "dep:libc" ]; + "large-tables" = [ "32-column-tables" ]; + "mysql" = [ "dep:mysqlclient-sys" "dep:url" "dep:percent-encoding" "dep:bitflags" "mysql_backend" ]; + "mysql_backend" = [ "diesel_derives/mysql" "dep:byteorder" ]; + "mysqlclient-src" = [ "dep:mysqlclient-src" ]; + "network-address" = [ "dep:ipnetwork" "dep:libc" ]; + "numeric" = [ "dep:num-bigint" "dep:bigdecimal" "dep:num-traits" "dep:num-integer" ]; + "postgres" = [ "dep:pq-sys" "postgres_backend" ]; + "postgres_backend" = [ "diesel_derives/postgres" "dep:bitflags" "dep:byteorder" "dep:itoa" ]; + "pq-src" = [ "dep:pq-src" ]; + "quickcheck" = [ "dep:quickcheck" ]; + "r2d2" = [ "diesel_derives/r2d2" "dep:r2d2" ]; + "serde_json" = [ "dep:serde_json" ]; + "sqlite" = [ "dep:libsqlite3-sys" "diesel_derives/sqlite" "time?/formatting" "time?/parsing" ]; + "time" = [ "diesel_derives/time" "dep:time" ]; + "unstable" = [ "diesel_derives/nightly" ]; + "uuid" = [ "dep:uuid" ]; + "with-deprecated" = [ "diesel_derives/with-deprecated" ]; + "without-deprecated" = [ "diesel_derives/without-deprecated" ]; + }; + resolvedDefaultFeatures = [ "32-column-tables" "chrono" "default" "i-implement-a-third-party-backend-and-opt-into-breaking-changes" "postgres_backend" "serde_json" "time" "uuid" "with-deprecated" ]; + }; + "diesel-async" = rec { + crateName = "diesel-async"; + version = "0.5.2"; + edition = "2021"; + sha256 = "1jxxjl05hn2sj1dvz3l3n879z6sil1hpg9q4d993zhpp02n0g8si"; + libName = "diesel_async"; + authors = [ + "Georg Semmler " + ]; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "deadpool"; + packageId = "deadpool"; + optional = true; + usesDefaultFeatures = false; + features = [ "managed" ]; + } + { + name = "diesel"; + packageId = "diesel"; + usesDefaultFeatures = false; + features = [ "i-implement-a-third-party-backend-and-opt-into-breaking-changes" ]; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "std" "sink" ]; + } + { + name = "scoped-futures"; + packageId = "scoped-futures"; + features = [ "std" ]; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + } + { + name = "tokio-postgres"; + packageId = "tokio-postgres"; + optional = true; + } + ]; + devDependencies = [ + { + name = "diesel"; + packageId = "diesel"; + usesDefaultFeatures = false; + features = [ "chrono" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt" "macros" "rt-multi-thread" ]; + } + ]; + features = { + "async-connection-wrapper" = [ "tokio/net" ]; + "bb8" = [ "pool" "dep:bb8" ]; + "deadpool" = [ "pool" "dep:deadpool" ]; + "futures-channel" = [ "dep:futures-channel" ]; + "mobc" = [ "pool" "dep:mobc" ]; + "mysql" = [ "diesel/mysql_backend" "mysql_async" "mysql_common" "futures-channel" "tokio" ]; + "mysql_async" = [ "dep:mysql_async" ]; + "mysql_common" = [ "dep:mysql_common" ]; + "postgres" = [ "diesel/postgres_backend" "tokio-postgres" "tokio" "tokio/rt" ]; + "r2d2" = [ "pool" "diesel/r2d2" ]; + "sqlite" = [ "diesel/sqlite" "sync-connection-wrapper" ]; + "sync-connection-wrapper" = [ "tokio/rt" ]; + "tokio" = [ "dep:tokio" ]; + "tokio-postgres" = [ "dep:tokio-postgres" ]; + }; + resolvedDefaultFeatures = [ "async-connection-wrapper" "deadpool" "default" "pool" "postgres" "tokio" "tokio-postgres" ]; + }; + "diesel_derives" = rec { + crateName = "diesel_derives"; + version = "2.2.7"; + edition = "2021"; + sha256 = "0mnpb0l80wnk1mw8ypfyh4ggxr5kxhhp3wgngdbwn9cl8r69i5hv"; + procMacro = true; + dependencies = [ + { + name = "diesel_table_macro_syntax"; + packageId = "diesel_table_macro_syntax"; + } + { + name = "dsl_auto_type"; + packageId = "dsl_auto_type"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "derive" "fold" "full" ]; + } + ]; + features = { + "128-column-tables" = [ "64-column-tables" ]; + "64-column-tables" = [ "32-column-tables" ]; + "nightly" = [ "proc-macro2/nightly" ]; + }; + resolvedDefaultFeatures = [ "32-column-tables" "chrono" "default" "postgres" "time" "with-deprecated" ]; + }; + "diesel_migrations" = rec { + crateName = "diesel_migrations"; + version = "2.2.0"; + edition = "2021"; + sha256 = "1xn12ny9m1ci74iqpvhcfyhapr6wj56k3wxz07q32hmd9dqcwwwa"; + dependencies = [ + { + name = "diesel"; + packageId = "diesel"; + usesDefaultFeatures = false; + } + { + name = "migrations_internals"; + packageId = "migrations_internals"; + } + { + name = "migrations_macros"; + packageId = "migrations_macros"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" "postgres" ]; + }; + "diesel_table_macro_syntax" = rec { + crateName = "diesel_table_macro_syntax"; + version = "0.2.0"; + edition = "2021"; + sha256 = "09gvkyljhchbxfkxlkkrdcqcmcxwsim9sfljqilbq4x485b77710"; + dependencies = [ + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "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 = "const-oid"; + packageId = "const-oid"; + optional = true; + } + { + name = "crypto-common"; + packageId = "crypto-common"; + } + { + name = "subtle"; + packageId = "subtle"; + optional = true; + usesDefaultFeatures = false; + } + ]; + 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" "const-oid" "core-api" "default" "mac" "oid" "std" "subtle" ]; + }; + "directories" = rec { + crateName = "directories"; + version = "5.0.1"; + edition = "2015"; + sha256 = "0dba6xzk79s1clqzxh2qlgzk3lmvvks1lzzjhhi3hd70hhxifjcs"; + authors = [ + "Simon Ochsenreither " + ]; + dependencies = [ + { + name = "dirs-sys"; + packageId = "dirs-sys 0.4.1"; + } + ]; + + }; + "dirs" = rec { + crateName = "dirs"; + version = "6.0.0"; + edition = "2015"; + sha256 = "0knfikii29761g22pwfrb8d0nqpbgw77sni9h2224haisyaams63"; + authors = [ + "Simon Ochsenreither " + ]; + dependencies = [ + { + name = "dirs-sys"; + packageId = "dirs-sys 0.5.0"; + } + ]; + + }; + "dirs-sys 0.4.1" = rec { + crateName = "dirs-sys"; + version = "0.4.1"; + edition = "2015"; + sha256 = "071jy0pvaad9lsa6mzawxrh7cmr7hsmsdxwzm7jzldfkrfjha3sj"; + libName = "dirs_sys"; + authors = [ + "Simon Ochsenreither " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "option-ext"; + packageId = "option-ext"; + } + { + name = "redox_users"; + packageId = "redox_users 0.4.6"; + usesDefaultFeatures = false; + target = { target, features }: ("redox" == target."os" or null); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.48.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_UI_Shell" "Win32_Foundation" "Win32_Globalization" "Win32_System_Com" ]; + } + ]; + + }; + "dirs-sys 0.5.0" = rec { + crateName = "dirs-sys"; + version = "0.5.0"; + edition = "2015"; + sha256 = "1aqzpgq6ampza6v012gm2dppx9k35cdycbj54808ksbys9k366p0"; + libName = "dirs_sys"; + authors = [ + "Simon Ochsenreither " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "option-ext"; + packageId = "option-ext"; + } + { + name = "redox_users"; + packageId = "redox_users 0.5.2"; + usesDefaultFeatures = false; + target = { target, features }: ("redox" == target."os" or null); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_UI_Shell" "Win32_Foundation" "Win32_Globalization" "Win32_System_Com" ]; + } + ]; + + }; + "dispatch2" = rec { + crateName = "dispatch2"; + version = "0.3.0"; + edition = "2021"; + sha256 = "1v1ak9w0s8z1g13x4mj2y5im9wmck0i2vf8f8wc9l1n6lqi9z849"; + authors = [ + "Mads Marquart " + "Mary " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "block2"; + packageId = "block2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "objc2"; + packageId = "objc2"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + features = { + "block2" = [ "dep:block2" ]; + "default" = [ "std" "block2" "libc" "objc2" ]; + "libc" = [ "dep:libc" ]; + "objc2" = [ "dep:objc2" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "block2" "default" "libc" "objc2" "std" ]; + }; + "displaydoc" = rec { + crateName = "displaydoc"; + version = "0.2.5"; + edition = "2021"; + sha256 = "1q0alair462j21iiqwrr21iabkfnb13d6x5w95lkdg21q2xrqdlp"; + procMacro = true; + authors = [ + "Jane Lusby " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + features = { + "default" = [ "std" ]; + }; + }; + "document-features" = rec { + crateName = "document-features"; + version = "0.2.12"; + edition = "2018"; + sha256 = "0qcgpialq3zgvjmsvar9n6v10rfbv6mk6ajl46dd4pj5hn3aif6l"; + procMacro = true; + libName = "document_features"; + libPath = "lib.rs"; + authors = [ + "Slint Developers " + ]; + dependencies = [ + { + name = "litrs"; + packageId = "litrs"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "dotenvy" = rec { + crateName = "dotenvy"; + version = "0.15.7"; + edition = "2018"; + crateBin = []; + sha256 = "16s3n973n5aqym02692i1npb079n5mb0fwql42ikmwn8wnrrbbqs"; + authors = [ + "Noemi Lapresta " + "Craig Hills " + "Mike Piccolo " + "Alice Maz " + "Sean Griffin " + "Adam Sharp " + "Arpad Borsos " + "Allan Zhang " + ]; + features = { + "clap" = [ "dep:clap" ]; + "cli" = [ "clap" ]; + }; + }; + "dotlock" = rec { + crateName = "dotlock"; + version = "0.5.0"; + edition = "2015"; + sha256 = "18qn6isd98w13ahlwlqvb5950w3993i5pnxd7h8m6blmbdbl3i9h"; + authors = [ + "Bruce Guenter " + ]; + dependencies = [ + { + name = "tempfile"; + packageId = "tempfile"; + } + ]; + + }; + "downcast-rs" = rec { + crateName = "downcast-rs"; + version = "1.2.1"; + edition = "2015"; + sha256 = "1lmrq383d1yszp7mg5i7i56b17x2lnn3kb91jwsq0zykvg2jbcvm"; + libName = "downcast_rs"; + authors = [ + "Ashish Myles " + "Runji Wang " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "dsl_auto_type" = rec { + crateName = "dsl_auto_type"; + version = "0.1.3"; + edition = "2021"; + sha256 = "0nzzqmqyymlnffhms1kism5xhgsk73mq6r6pdpr8azsjlynfk6hk"; + dependencies = [ + { + name = "darling"; + packageId = "darling 0.20.11"; + } + { + name = "either"; + packageId = "either"; + } + { + name = "heck"; + packageId = "heck 0.5.0"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" "full" "derive" "parsing" "visit" ]; + } + ]; + + }; + "dunce" = rec { + crateName = "dunce"; + version = "1.0.5"; + edition = "2021"; + sha256 = "04y8wwv3vvcqaqmqzssi6k0ii9gs6fpz96j5w9nky2ccsl23axwj"; + authors = [ + "Kornel " + ]; + + }; + "duration-str" = rec { + crateName = "duration-str"; + version = "0.11.3"; + edition = "2021"; + sha256 = "07hwfyg8npfw0d1919jnl0klw27y34grv47ivknx6zs45pg5k2gq"; + libName = "duration_str"; + authors = [ + "baoyachi " + ]; + dependencies = [ + { + name = "rust_decimal"; + packageId = "rust_decimal"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + features = [ "derive" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "time"; + packageId = "time"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "winnow"; + packageId = "winnow 0.6.26"; + } + ]; + features = { + "chrono" = [ "dep:chrono" ]; + "default" = [ "chrono" "serde" "time" ]; + "serde" = [ "dep:serde" ]; + "time" = [ "dep:time" ]; + }; + resolvedDefaultFeatures = [ "serde" "time" ]; + }; + "dyn-clone" = rec { + crateName = "dyn-clone"; + version = "1.0.20"; + edition = "2018"; + sha256 = "0m956cxcg8v2n8kmz6xs5zl13k2fak3zkapzfzzp7pxih6hix26h"; + libName = "dyn_clone"; + authors = [ + "David Tolnay " + ]; + + }; + "ecdsa" = rec { + crateName = "ecdsa"; + version = "0.16.9"; + edition = "2021"; + sha256 = "1jhb0bcbkaz4001sdmfyv8ajrv8a1cg7z7aa5myrd4jjbhmz69zf"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "der"; + packageId = "der"; + optional = true; + } + { + name = "digest"; + packageId = "digest"; + optional = true; + usesDefaultFeatures = false; + features = [ "oid" ]; + } + { + name = "elliptic-curve"; + packageId = "elliptic-curve"; + usesDefaultFeatures = false; + features = [ "digest" "sec1" ]; + } + { + name = "rfc6979"; + packageId = "rfc6979"; + optional = true; + } + { + name = "signature"; + packageId = "signature"; + usesDefaultFeatures = false; + features = [ "rand_core" ]; + } + { + name = "spki"; + packageId = "spki"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "elliptic-curve"; + packageId = "elliptic-curve"; + usesDefaultFeatures = false; + features = [ "dev" ]; + } + ]; + features = { + "alloc" = [ "elliptic-curve/alloc" "signature/alloc" "spki/alloc" ]; + "arithmetic" = [ "elliptic-curve/arithmetic" ]; + "default" = [ "digest" ]; + "der" = [ "dep:der" ]; + "dev" = [ "arithmetic" "digest" "elliptic-curve/dev" "hazmat" ]; + "digest" = [ "dep:digest" "signature/digest" ]; + "pem" = [ "elliptic-curve/pem" "pkcs8" ]; + "pkcs8" = [ "digest" "elliptic-curve/pkcs8" "der" ]; + "rfc6979" = [ "dep:rfc6979" ]; + "serde" = [ "elliptic-curve/serde" "serdect" ]; + "serdect" = [ "dep:serdect" ]; + "sha2" = [ "dep:sha2" ]; + "signing" = [ "arithmetic" "digest" "hazmat" "rfc6979" ]; + "spki" = [ "dep:spki" ]; + "std" = [ "alloc" "elliptic-curve/std" "signature/std" ]; + "verifying" = [ "arithmetic" "digest" "hazmat" ]; + }; + resolvedDefaultFeatures = [ "alloc" "arithmetic" "der" "digest" "hazmat" "pem" "pkcs8" "rfc6979" "signing" "spki" "std" "verifying" ]; + }; + "ed25519" = rec { + crateName = "ed25519"; + version = "2.2.3"; + edition = "2021"; + sha256 = "0lydzdf26zbn82g7xfczcac9d7mzm3qgx934ijjrd5hjpjx32m8i"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "pkcs8"; + packageId = "pkcs8"; + optional = true; + } + { + name = "signature"; + packageId = "signature"; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "pkcs8?/alloc" ]; + "default" = [ "std" ]; + "pem" = [ "alloc" "pkcs8/pem" ]; + "pkcs8" = [ "dep:pkcs8" ]; + "serde" = [ "dep:serde" ]; + "serde_bytes" = [ "serde" "dep:serde_bytes" ]; + "std" = [ "pkcs8?/std" "signature/std" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "alloc" "pem" "pkcs8" "std" ]; + }; + "ed25519-dalek" = rec { + crateName = "ed25519-dalek"; + version = "2.2.0"; + edition = "2021"; + sha256 = "1agcwij1z687hg26ngzwhnmpz29b2w56m8z1ap3pvrnfh709drvh"; + libName = "ed25519_dalek"; + authors = [ + "isis lovecruft " + "Tony Arcieri " + "Michael Rosenberg " + ]; + dependencies = [ + { + name = "curve25519-dalek"; + packageId = "curve25519-dalek"; + usesDefaultFeatures = false; + features = [ "digest" ]; + } + { + name = "ed25519"; + packageId = "ed25519"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "sha2"; + packageId = "sha2"; + usesDefaultFeatures = false; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "curve25519-dalek"; + packageId = "curve25519-dalek"; + usesDefaultFeatures = false; + features = [ "digest" "rand_core" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "curve25519-dalek/alloc" "ed25519/alloc" "serde?/alloc" "zeroize/alloc" ]; + "asm" = [ "sha2/asm" ]; + "batch" = [ "alloc" "merlin" "rand_core" ]; + "default" = [ "fast" "std" "zeroize" ]; + "digest" = [ "signature/digest" ]; + "fast" = [ "curve25519-dalek/precomputed-tables" ]; + "legacy_compatibility" = [ "curve25519-dalek/legacy_compatibility" ]; + "merlin" = [ "dep:merlin" ]; + "pem" = [ "alloc" "ed25519/pem" "pkcs8" ]; + "pkcs8" = [ "ed25519/pkcs8" ]; + "rand_core" = [ "dep:rand_core" ]; + "serde" = [ "dep:serde" "ed25519/serde" ]; + "signature" = [ "dep:signature" ]; + "std" = [ "alloc" "ed25519/std" "serde?/std" "sha2/std" ]; + "zeroize" = [ "dep:zeroize" "curve25519-dalek/zeroize" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "fast" "pem" "pkcs8" "std" "zeroize" ]; + }; + "either" = rec { + crateName = "either"; + version = "1.15.0"; + edition = "2021"; + sha256 = "069p1fknsmzn9llaizh77kip0pqmcwpdsykv2x30xpjyija5gis8"; + authors = [ + "bluss" + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" "derive" ]; + } + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "use_std" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" "std" "use_std" ]; + }; + "elliptic-curve" = rec { + crateName = "elliptic-curve"; + version = "0.13.8"; + edition = "2021"; + sha256 = "0ixx4brgnzi61z29r3g1606nh2za88hzyz8c5r3p6ydzhqq09rmm"; + libName = "elliptic_curve"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "base16ct"; + packageId = "base16ct"; + } + { + name = "crypto-bigint"; + packageId = "crypto-bigint"; + usesDefaultFeatures = false; + features = [ "rand_core" "generic-array" "zeroize" ]; + } + { + name = "digest"; + packageId = "digest"; + optional = true; + } + { + name = "ff"; + packageId = "ff"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "generic-array"; + packageId = "generic-array"; + usesDefaultFeatures = false; + features = [ "zeroize" ]; + } + { + name = "group"; + packageId = "group"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "hkdf"; + packageId = "hkdf"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "pem-rfc7468"; + packageId = "pem-rfc7468"; + optional = true; + features = [ "alloc" ]; + } + { + name = "pkcs8"; + packageId = "pkcs8"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + usesDefaultFeatures = false; + } + { + name = "sec1"; + packageId = "sec1"; + optional = true; + features = [ "subtle" "zeroize" ]; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "base16ct/alloc" "ff?/alloc" "group?/alloc" "pkcs8?/alloc" "sec1?/alloc" "zeroize/alloc" ]; + "arithmetic" = [ "group" ]; + "bits" = [ "arithmetic" "ff/bits" "dep:tap" ]; + "default" = [ "arithmetic" ]; + "dev" = [ "arithmetic" "dep:hex-literal" "pem" "pkcs8" ]; + "digest" = [ "dep:digest" ]; + "ecdh" = [ "arithmetic" "digest" "dep:hkdf" ]; + "ff" = [ "dep:ff" ]; + "group" = [ "dep:group" "ff" ]; + "hash2curve" = [ "arithmetic" "digest" ]; + "jwk" = [ "dep:base64ct" "dep:serde_json" "alloc" "serde" "zeroize/alloc" ]; + "pem" = [ "dep:pem-rfc7468" "alloc" "arithmetic" "pkcs8" "sec1/pem" ]; + "pkcs8" = [ "dep:pkcs8" "sec1" ]; + "sec1" = [ "dep:sec1" ]; + "serde" = [ "dep:serdect" "alloc" "pkcs8" "sec1/serde" ]; + "std" = [ "alloc" "rand_core/std" "pkcs8?/std" "sec1?/std" ]; + "voprf" = [ "digest" ]; + }; + resolvedDefaultFeatures = [ "alloc" "arithmetic" "digest" "ecdh" "ff" "group" "hazmat" "pem" "pkcs8" "sec1" "std" ]; + }; + "encode_unicode" = rec { + crateName = "encode_unicode"; + version = "1.0.0"; + edition = "2021"; + sha256 = "1h5j7j7byi289by63s3w4a8b3g6l5ccdrws7a67nn07vdxj77ail"; + authors = [ + "Torbjørn Birch Moltu " + ]; + features = { + "ascii" = [ "dep:ascii" ]; + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "encoding_rs" = rec { + crateName = "encoding_rs"; + version = "0.8.35"; + edition = "2018"; + sha256 = "1wv64xdrr9v37rqqdjsyb8l8wzlcbab80ryxhrszvnj59wy0y0vm"; + authors = [ + "Henri Sivonen " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + ]; + features = { + "any_all_workaround" = [ "dep:any_all_workaround" ]; + "default" = [ "alloc" ]; + "fast-legacy-encode" = [ "fast-hangul-encode" "fast-hanja-encode" "fast-kanji-encode" "fast-gb-hanzi-encode" "fast-big5-hanzi-encode" ]; + "serde" = [ "dep:serde" ]; + "simd-accel" = [ "any_all_workaround" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" ]; + }; + "env_home" = rec { + crateName = "env_home"; + version = "0.1.0"; + edition = "2015"; + sha256 = "1zn08mk95rjh97831rky1n944k024qrwjhbcgb0xv9zhrh94xy67"; + authors = [ + "Peter Tripp " + ]; + + }; + "envy" = rec { + crateName = "envy"; + version = "0.4.2"; + edition = "2018"; + sha256 = "0rar459p7pl19v6pbx98q3hi2hxfl8q1ndxxw5d4zd9cgway0irz"; + authors = [ + "softprops " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + + }; + "equivalent" = rec { + crateName = "equivalent"; + version = "1.0.2"; + edition = "2015"; + sha256 = "03swzqznragy8n0x31lqc78g2af054jwivp7lkrbrc0khz74lyl7"; + + }; + "errno" = rec { + crateName = "errno"; + version = "0.3.14"; + edition = "2018"; + sha256 = "1szgccmh8vgryqyadg8xd58mnwwicf39zmin3bsn63df2wbbgjir"; + authors = [ + "Chris Wong " + "Dan Gohman " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("hermit" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("wasi" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (target."unix" or false); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Diagnostics_Debug" ]; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "libc/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "etcetera" = rec { + crateName = "etcetera"; + version = "0.8.0"; + edition = "2018"; + sha256 = "0hxrsn75dirbjhwgkdkh0pnpqrnq17ypyhjpjaypgax1hd91nv8k"; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "home"; + packageId = "home"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.48.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_UI_Shell" ]; + } + ]; + + }; + "event-listener" = rec { + crateName = "event-listener"; + version = "5.4.1"; + edition = "2021"; + sha256 = "1asnp3agbr8shcl001yd935m167ammyi8hnvl0q1ycajryn6cfz1"; + libName = "event_listener"; + authors = [ + "Stjepan Glavina " + "John Nunley " + ]; + dependencies = [ + { + name = "concurrent-queue"; + packageId = "concurrent-queue"; + usesDefaultFeatures = false; + } + { + name = "parking"; + packageId = "parking"; + optional = true; + target = { target, features }: (!(builtins.elem "wasm" target."family")); + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + features = { + "critical-section" = [ "dep:critical-section" ]; + "default" = [ "std" ]; + "loom" = [ "concurrent-queue/loom" "parking?/loom" "dep:loom" ]; + "parking" = [ "dep:parking" ]; + "portable-atomic" = [ "portable-atomic-util" "portable_atomic_crate" "concurrent-queue/portable-atomic" ]; + "portable-atomic-util" = [ "dep:portable-atomic-util" ]; + "portable_atomic_crate" = [ "dep:portable_atomic_crate" ]; + "std" = [ "concurrent-queue/std" "parking" ]; + }; + resolvedDefaultFeatures = [ "default" "parking" "std" ]; + }; + "event-listener-strategy" = rec { + crateName = "event-listener-strategy"; + version = "0.5.4"; + edition = "2021"; + sha256 = "14rv18av8s7n8yixg38bxp5vg2qs394rl1w052by5npzmbgz7scb"; + libName = "event_listener_strategy"; + authors = [ + "John Nunley " + ]; + dependencies = [ + { + name = "event-listener"; + packageId = "event-listener"; + usesDefaultFeatures = false; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + features = { + "default" = [ "std" ]; + "loom" = [ "event-listener/loom" ]; + "portable-atomic" = [ "event-listener/portable-atomic" ]; + "std" = [ "event-listener/std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "eyre" = rec { + crateName = "eyre"; + version = "0.6.12"; + edition = "2018"; + sha256 = "1v1a3vb9gs5zkwp4jzkcfnpg0gvyp4ifydzx37f4qy14kzcibnbw"; + authors = [ + "David Tolnay " + "Jane Lusby " + ]; + dependencies = [ + { + name = "indenter"; + packageId = "indenter"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + ]; + features = { + "default" = [ "auto-install" "track-caller" ]; + "pyo3" = [ "dep:pyo3" ]; + }; + resolvedDefaultFeatures = [ "auto-install" "default" "track-caller" ]; + }; + "fail-parallel" = rec { + crateName = "fail-parallel"; + version = "0.5.1"; + edition = "2021"; + sha256 = "17ckqih0mk6fpr0kqqpxvhcr7shvkg18j9vlzfbdhx619v5fhrjn"; + libName = "fail_parallel"; + authors = [ + "The SlateDB Project Developers" + ]; + dependencies = [ + { + name = "log"; + packageId = "log"; + features = [ "std" ]; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + ]; + features = { + }; + }; + "fallible-iterator" = rec { + crateName = "fallible-iterator"; + version = "0.2.0"; + edition = "2018"; + sha256 = "1xq759lsr8gqss7hva42azn3whgrbrs2sd9xpn92c5ickxm1fhs4"; + libName = "fallible_iterator"; + authors = [ + "Steven Fackler " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "faster-hex 0.10.0" = rec { + crateName = "faster-hex"; + version = "0.10.0"; + edition = "2018"; + sha256 = "0wzvv4a1czxfxmh99cza2y0jps97hm3k1j6r6cs816qp5wnsw8vj"; + libName = "faster_hex"; + authors = [ + "zhangsoledad <787953403@qq.com>" + ]; + dependencies = [ + { + name = "heapless"; + packageId = "heapless"; + target = { target, features }: (!(builtins.elem "alloc" features)); + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "default" = [ "std" "serde" ]; + "serde" = [ "dep:serde" "alloc" ]; + "std" = [ "alloc" "serde?/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "serde" "std" ]; + }; + "faster-hex 0.9.0" = rec { + crateName = "faster-hex"; + version = "0.9.0"; + edition = "2018"; + sha256 = "10wi4vqbdpkamw4qvra1ijp4as2j7j1zc66g4rdr6h0xv8gb38m2"; + libName = "faster_hex"; + authors = [ + "zhangsoledad <787953403@qq.com>" + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "default" = [ "std" "serde" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "serde" "std" ]; + }; + "fastrand" = rec { + crateName = "fastrand"; + version = "2.3.0"; + edition = "2018"; + sha256 = "1ghiahsw1jd68df895cy5h3gzwk30hndidn3b682zmshpgmrx41p"; + authors = [ + "Stjepan Glavina " + ]; + features = { + "default" = [ "std" ]; + "getrandom" = [ "dep:getrandom" ]; + "js" = [ "std" "getrandom" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "fd-lock" = rec { + crateName = "fd-lock"; + version = "4.0.4"; + edition = "2021"; + sha256 = "0y5a22zaqns06slndm64gjdx983i6b4l4ks895rxznnn4bv2zs8c"; + libName = "fd_lock"; + authors = [ + "Yoshua Wuyts " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "rustix"; + packageId = "rustix 1.1.3"; + target = { target, features }: (target."unix" or false); + features = [ "fs" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.59.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Storage_FileSystem" "Win32_System_IO" ]; + } + ]; + + }; + "ff" = rec { + crateName = "ff"; + version = "0.13.1"; + edition = "2021"; + sha256 = "14v3bc6q24gbcjnxjfbq2dddgf4as2z2gd4mj35gjlrncpxhpdf0"; + authors = [ + "Sean Bowe " + "Jack Grigg " + ]; + dependencies = [ + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + usesDefaultFeatures = false; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + ]; + features = { + "bits" = [ "bitvec" ]; + "bitvec" = [ "dep:bitvec" ]; + "byteorder" = [ "dep:byteorder" ]; + "default" = [ "bits" "std" ]; + "derive" = [ "byteorder" "ff_derive" ]; + "derive_bits" = [ "bits" "ff_derive/bits" ]; + "ff_derive" = [ "dep:ff_derive" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "fiat-crypto" = rec { + crateName = "fiat-crypto"; + version = "0.2.9"; + edition = "2018"; + sha256 = "07c1vknddv3ak7w89n85ik0g34nzzpms6yb845vrjnv9m4csbpi8"; + libName = "fiat_crypto"; + authors = [ + "Fiat Crypto library authors " + ]; + features = { + "default" = [ "std" ]; + }; + }; + "figment" = rec { + crateName = "figment"; + version = "0.10.19"; + edition = "2018"; + sha256 = "1ww9sxdzjj2i80w7bq0kllnymjyrfb1cdx2h70ap5wqcdga1rc4c"; + authors = [ + "Sergio Benitez " + ]; + dependencies = [ + { + name = "atomic"; + packageId = "atomic"; + target = { target, features }: (("8" == target."pointer_width" or null) || ("16" == target."pointer_width" or null) || ("32" == target."pointer_width" or null)); + } + { + name = "pear"; + packageId = "pear"; + optional = true; + } + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "serde_yaml"; + packageId = "serde_yaml"; + optional = true; + } + { + name = "toml"; + packageId = "toml 0.8.23"; + optional = true; + } + { + name = "uncased"; + packageId = "uncased"; + } + ]; + buildDependencies = [ + { + name = "version_check"; + packageId = "version_check"; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "env" = [ "pear" "parse-value" ]; + "json" = [ "serde_json" ]; + "parking_lot" = [ "dep:parking_lot" ]; + "parse-value" = [ "pear" ]; + "pear" = [ "dep:pear" ]; + "serde_json" = [ "dep:serde_json" ]; + "serde_yaml" = [ "dep:serde_yaml" ]; + "tempfile" = [ "dep:tempfile" ]; + "test" = [ "tempfile" "parking_lot" ]; + "toml" = [ "dep:toml" ]; + "yaml" = [ "serde_yaml" ]; + }; + resolvedDefaultFeatures = [ "env" "json" "parse-value" "pear" "serde_json" "serde_yaml" "toml" "yaml" ]; + }; + "filetime" = rec { + crateName = "filetime"; + version = "0.2.27"; + edition = "2018"; + sha256 = "1nspbkm1d1km7xfljcbl565swqxrihqyin8bqppig2gf3qal927r"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "libredox"; + packageId = "libredox"; + target = { target, features }: ("redox" == target."os" or null); + } + ]; + + }; + "find-msvc-tools" = rec { + crateName = "find-msvc-tools"; + version = "0.1.8"; + edition = "2018"; + sha256 = "1nv8hn78xphg04l6w7iq1v8lsmmqx6ripbig18qn92m9r2yb14c5"; + libName = "find_msvc_tools"; + + }; + "findshlibs" = rec { + crateName = "findshlibs"; + version = "0.10.2"; + edition = "2018"; + sha256 = "0r3zy2r12rxzwqgz53830bk38r6b7rl8kq2br9n81q7ps2ffbfa0"; + dependencies = [ + { + name = "lazy_static"; + packageId = "lazy_static"; + target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "winapi"; + packageId = "winapi"; + target = { target, features }: ("windows" == target."os" or null); + features = [ "psapi" "memoryapi" "libloaderapi" "processthreadsapi" ]; + } + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + } + ]; + + }; + "fixedbitset" = rec { + crateName = "fixedbitset"; + version = "0.5.7"; + edition = "2021"; + sha256 = "16fd3v9d2cms2vddf9xhlm56sz4j0zgrk3d2h6v1l7hx760lwrqx"; + authors = [ + "bluss" + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + }; + }; + "flatbuffers" = rec { + crateName = "flatbuffers"; + version = "25.12.19"; + edition = "2018"; + sha256 = "1wvfm49ybn098zknzlim8xpxrfn2y0sazzqyaggav61vgffq7xim"; + authors = [ + "Robert Winslow " + "FlatBuffers Maintainers" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + ]; + buildDependencies = [ + { + name = "rustc_version"; + packageId = "rustc_version"; + } + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "serialize" = [ "serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "flate2" = rec { + crateName = "flate2"; + version = "1.1.8"; + edition = "2018"; + sha256 = "0sgkq8z9ldz06qxl704sm9akfy2r70zp1ixi4mghl2cqbd3dcxdk"; + authors = [ + "Alex Crichton " + "Josh Triplett " + ]; + dependencies = [ + { + name = "crc32fast"; + packageId = "crc32fast"; + } + { + name = "miniz_oxide"; + packageId = "miniz_oxide"; + optional = true; + usesDefaultFeatures = false; + features = [ "with-alloc" "simd" ]; + } + { + name = "miniz_oxide"; + packageId = "miniz_oxide"; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (!("emscripten" == target."os" or null))); + features = [ "with-alloc" "simd" ]; + } + ]; + features = { + "any_c_zlib" = [ "any_zlib" ]; + "any_zlib" = [ "any_impl" ]; + "cloudflare-zlib-sys" = [ "dep:cloudflare-zlib-sys" ]; + "cloudflare_zlib" = [ "any_c_zlib" "cloudflare-zlib-sys" ]; + "default" = [ "rust_backend" ]; + "document-features" = [ "dep:document-features" ]; + "libz-ng-sys" = [ "dep:libz-ng-sys" ]; + "libz-sys" = [ "dep:libz-sys" ]; + "miniz-sys" = [ "rust_backend" ]; + "miniz_oxide" = [ "dep:miniz_oxide" ]; + "rust_backend" = [ "miniz_oxide" "any_impl" ]; + "zlib" = [ "any_c_zlib" "libz-sys" ]; + "zlib-default" = [ "any_c_zlib" "libz-sys/default" ]; + "zlib-ng" = [ "any_c_zlib" "libz-ng-sys" ]; + "zlib-ng-compat" = [ "zlib" "libz-sys/zlib-ng" ]; + "zlib-rs" = [ "any_zlib" "dep:zlib-rs" ]; + }; + resolvedDefaultFeatures = [ "any_impl" "miniz_oxide" "rust_backend" ]; + }; + "flume" = rec { + crateName = "flume"; + version = "0.11.1"; + edition = "2018"; + sha256 = "15ch0slxa8sqsi6c73a0ky6vdnh48q8cxjf7rksa3243m394s3ns"; + authors = [ + "Joshua Barretto " + ]; + dependencies = [ + { + name = "futures-core"; + packageId = "futures-core"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "futures-sink"; + packageId = "futures-sink"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "nanorand"; + packageId = "nanorand"; + optional = true; + features = [ "getrandom" ]; + } + { + name = "spin"; + packageId = "spin"; + rename = "spin1"; + features = [ "mutex" ]; + } + ]; + features = { + "async" = [ "futures-sink" "futures-core" ]; + "default" = [ "async" "select" "eventual-fairness" ]; + "eventual-fairness" = [ "select" "nanorand" ]; + "futures-core" = [ "dep:futures-core" ]; + "futures-sink" = [ "dep:futures-sink" ]; + "nanorand" = [ "dep:nanorand" ]; + }; + resolvedDefaultFeatures = [ "async" "default" "eventual-fairness" "futures-core" "futures-sink" "nanorand" "select" ]; + }; + "fnv" = rec { + crateName = "fnv"; + version = "1.0.7"; + edition = "2015"; + sha256 = "1hc2mcqha06aibcaza94vbi81j6pr9a1bbxrxjfhc91zin8yr7iz"; + libPath = "lib.rs"; + authors = [ + "Alex Crichton " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "foldhash" = rec { + crateName = "foldhash"; + version = "0.1.5"; + edition = "2021"; + sha256 = "1wisr1xlc2bj7hk4rgkcjkz3j2x4dhd1h9lwk7mj8p71qpdgbi6r"; + authors = [ + "Orson Peters " + ]; + features = { + "default" = [ "std" ]; + }; + }; + "foreign-types" = rec { + crateName = "foreign-types"; + version = "0.3.2"; + edition = "2015"; + sha256 = "1cgk0vyd7r45cj769jym4a6s7vwshvd0z4bqrb92q1fwibmkkwzn"; + libName = "foreign_types"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "foreign-types-shared"; + packageId = "foreign-types-shared"; + } + ]; + + }; + "foreign-types-shared" = rec { + crateName = "foreign-types-shared"; + version = "0.1.1"; + edition = "2015"; + sha256 = "0jxgzd04ra4imjv8jgkmdq59kj8fsz6w4zxsbmlai34h26225c00"; + libName = "foreign_types_shared"; + authors = [ + "Steven Fackler " + ]; + + }; + "form_urlencoded" = rec { + crateName = "form_urlencoded"; + version = "1.2.2"; + edition = "2018"; + sha256 = "1kqzb2qn608rxl3dws04zahcklpplkd5r1vpabwga5l50d2v4k6b"; + 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" ]; + }; + "foyer" = rec { + crateName = "foyer"; + version = "0.18.1"; + edition = "2021"; + sha256 = "1p0fwg8jd5cpkb2bj6vqfhlp6gimk9k4sj32k3w0wjiclyqr6834"; + authors = [ + "MrCroxx " + ]; + dependencies = [ + { + name = "equivalent"; + packageId = "equivalent"; + } + { + name = "foyer-common"; + packageId = "foyer-common"; + } + { + name = "foyer-memory"; + packageId = "foyer-memory"; + } + { + name = "foyer-storage"; + packageId = "foyer-storage"; + } + { + name = "madsim-tokio"; + packageId = "madsim-tokio"; + rename = "tokio"; + target = { target, features }: (target."madsim" or false); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "mixtrics"; + packageId = "mixtrics"; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: (!(target."madsim" or false)); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + ]; + devDependencies = [ + { + name = "foyer-storage"; + packageId = "foyer-storage"; + features = [ "test_utils" ]; + } + ]; + features = { + "clap" = [ "foyer-storage/clap" ]; + "deadlock" = [ "foyer-storage/deadlock" ]; + "fastrace" = [ "dep:fastrace" ]; + "nightly" = [ "foyer-storage/nightly" "foyer-memory/nightly" ]; + "serde" = [ "foyer-common/serde" "foyer-storage/serde" ]; + "strict_assertions" = [ "foyer-common/strict_assertions" "foyer-memory/strict_assertions" "foyer-storage/strict_assertions" ]; + "tracing" = [ "fastrace/enable" "foyer-common/tracing" "foyer-memory/tracing" "foyer-storage/tracing" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" ]; + }; + "foyer-common" = rec { + crateName = "foyer-common"; + version = "0.18.1"; + edition = "2021"; + sha256 = "0i39jmphnqzc0zk87sqs61ssj73m8f6k0nvqdlhyj4wbckjc1fcx"; + libName = "foyer_common"; + authors = [ + "MrCroxx " + ]; + dependencies = [ + { + name = "bincode"; + packageId = "bincode"; + optional = true; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "itertools"; + packageId = "itertools 0.14.0"; + } + { + name = "madsim-tokio"; + packageId = "madsim-tokio"; + rename = "tokio"; + target = { target, features }: (target."madsim" or false); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "mixtrics"; + packageId = "mixtrics"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + features = [ "derive" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: (!(target."madsim" or false)); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "twox-hash"; + packageId = "twox-hash"; + } + ]; + devDependencies = [ + { + name = "bytes"; + packageId = "bytes"; + features = [ "serde" ]; + } + { + name = "mixtrics"; + packageId = "mixtrics"; + features = [ "test-utils" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "fastrace" = [ "dep:fastrace" ]; + "serde" = [ "dep:serde" "dep:bincode" ]; + "tracing" = [ "fastrace/enable" ]; + }; + resolvedDefaultFeatures = [ "serde" ]; + }; + "foyer-intrusive-collections" = rec { + crateName = "foyer-intrusive-collections"; + version = "0.10.0-dev"; + edition = "2018"; + sha256 = "0fsarbqvs133cgkbvwvd3snf091lbpk10chf2fb0b7m6pr3fwkvf"; + libName = "foyer_intrusive_collections"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "memoffset"; + packageId = "memoffset"; + } + ]; + features = { + "default" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" ]; + }; + "foyer-memory" = rec { + crateName = "foyer-memory"; + version = "0.18.1"; + edition = "2021"; + sha256 = "027ndzk0n1plgfgyjpdimd58i44h37lxkfvbybgg3a7wrf5c6384"; + libName = "foyer_memory"; + authors = [ + "MrCroxx " + ]; + dependencies = [ + { + name = "arc-swap"; + packageId = "arc-swap"; + } + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "cmsketch"; + packageId = "cmsketch"; + } + { + name = "equivalent"; + packageId = "equivalent"; + } + { + name = "foyer-common"; + packageId = "foyer-common"; + } + { + name = "foyer-intrusive-collections"; + packageId = "foyer-intrusive-collections"; + rename = "intrusive-collections"; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + } + { + name = "itertools"; + packageId = "itertools 0.14.0"; + } + { + name = "madsim-tokio"; + packageId = "madsim-tokio"; + rename = "tokio"; + target = { target, features }: (target."madsim" or false); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "mixtrics"; + packageId = "mixtrics"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: (!(target."madsim" or false)); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + ]; + features = { + "deadlock" = [ "parking_lot/deadlock_detection" ]; + "fastrace" = [ "dep:fastrace" ]; + "nightly" = [ "hashbrown/nightly" ]; + "strict_assertions" = [ "foyer-common/strict_assertions" ]; + "tracing" = [ "fastrace/enable" "foyer-common/tracing" ]; + }; + }; + "foyer-storage" = rec { + crateName = "foyer-storage"; + version = "0.18.1"; + edition = "2021"; + sha256 = "1af4dw2cm5d59s60kgi8rwn20gyfrcpxdmm6gnchwjfsi3c7x9sl"; + libName = "foyer_storage"; + authors = [ + "MrCroxx " + ]; + dependencies = [ + { + name = "allocator-api2"; + packageId = "allocator-api2"; + } + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "auto_enums"; + packageId = "auto_enums"; + features = [ "futures03" ]; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "equivalent"; + packageId = "equivalent"; + } + { + name = "flume"; + packageId = "flume"; + } + { + name = "foyer-common"; + packageId = "foyer-common"; + } + { + name = "foyer-memory"; + packageId = "foyer-memory"; + } + { + name = "fs4"; + packageId = "fs4"; + usesDefaultFeatures = false; + } + { + name = "futures-core"; + packageId = "futures-core"; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "itertools"; + packageId = "itertools 0.14.0"; + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "lz4"; + packageId = "lz4"; + } + { + name = "madsim-tokio"; + packageId = "madsim-tokio"; + rename = "tokio"; + target = { target, features }: (target."madsim" or false); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "ordered_hash_map"; + packageId = "ordered_hash_map"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "paste"; + packageId = "paste"; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + features = [ "derive" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: (!(target."madsim" or false)); + features = [ "rt" "rt-multi-thread" "sync" "macros" "net" "time" "signal" "fs" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "twox-hash"; + packageId = "twox-hash"; + } + { + name = "zstd"; + packageId = "zstd"; + } + ]; + devDependencies = [ + { + name = "foyer-memory"; + packageId = "foyer-memory"; + features = [ "test_utils" ]; + } + ]; + features = { + "clap" = [ "dep:clap" ]; + "deadlock" = [ "parking_lot/deadlock_detection" ]; + "fastrace" = [ "dep:fastrace" ]; + "nightly" = [ "allocator-api2/nightly" ]; + "serde" = [ "dep:serde" ]; + "strict_assertions" = [ "foyer-common/strict_assertions" "foyer-memory/strict_assertions" ]; + "tracing" = [ "fastrace/enable" "foyer-common/tracing" "foyer-memory/tracing" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" ]; + }; + "fs4" = rec { + crateName = "fs4"; + version = "0.13.1"; + edition = "2021"; + sha256 = "1m0y2kmwzifkrivw7gjav0km5s9agaiv324yrq424rgpi15y6h46"; + authors = [ + "Dan Burkert " + "Al Liu " + ]; + dependencies = [ + { + name = "rustix"; + packageId = "rustix 1.1.3"; + target = { target, features }: (!(target."windows" or false)); + features = [ "fs" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.59.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Storage_FileSystem" "Win32_System_IO" ]; + } + ]; + features = { + "async-std" = [ "dep:async-std" ]; + "default" = [ "sync" ]; + "fs-err2" = [ "dep:fs-err2" "fs-err2/io_safety" ]; + "fs-err2-tokio" = [ "fs-err2" "fs-err2/tokio" ]; + "fs-err3" = [ "dep:fs-err3" ]; + "fs-err3-tokio" = [ "fs-err3" "fs-err3/tokio" ]; + "smol" = [ "dep:smol" ]; + "tokio" = [ "dep:tokio" ]; + }; + }; + "fs_extra" = rec { + crateName = "fs_extra"; + version = "1.3.0"; + edition = "2018"; + sha256 = "075i25z70j2mz9r7i9p9r521y8xdj81q7skslyb7zhqnnw33fw22"; + authors = [ + "Denis Kurilenko " + ]; + + }; + "futures" = rec { + crateName = "futures"; + version = "0.3.31"; + edition = "2018"; + sha256 = "0xh8ddbkm9jy8kc5gbvjp9a4b6rqqxvc8471yb2qaz5wm2qhgg35"; + dependencies = [ + { + name = "futures-channel"; + packageId = "futures-channel"; + usesDefaultFeatures = false; + features = [ "sink" ]; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-executor"; + packageId = "futures-executor"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "futures-io"; + packageId = "futures-io"; + usesDefaultFeatures = false; + } + { + name = "futures-sink"; + packageId = "futures-sink"; + usesDefaultFeatures = false; + } + { + name = "futures-task"; + packageId = "futures-task"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "sink" ]; + } + ]; + features = { + "alloc" = [ "futures-core/alloc" "futures-task/alloc" "futures-sink/alloc" "futures-channel/alloc" "futures-util/alloc" ]; + "async-await" = [ "futures-util/async-await" "futures-util/async-await-macro" ]; + "bilock" = [ "futures-util/bilock" ]; + "compat" = [ "std" "futures-util/compat" ]; + "default" = [ "std" "async-await" "executor" ]; + "executor" = [ "std" "futures-executor/std" ]; + "futures-executor" = [ "dep:futures-executor" ]; + "io-compat" = [ "compat" "futures-util/io-compat" ]; + "std" = [ "alloc" "futures-core/std" "futures-task/std" "futures-io/std" "futures-sink/std" "futures-util/std" "futures-util/io" "futures-util/channel" ]; + "thread-pool" = [ "executor" "futures-executor/thread-pool" ]; + "unstable" = [ "futures-core/unstable" "futures-task/unstable" "futures-channel/unstable" "futures-io/unstable" "futures-util/unstable" ]; + "write-all-vectored" = [ "futures-util/write-all-vectored" ]; + }; + resolvedDefaultFeatures = [ "alloc" "async-await" "default" "executor" "futures-executor" "std" ]; + }; + "futures-channel" = rec { + crateName = "futures-channel"; + version = "0.3.31"; + edition = "2018"; + sha256 = "040vpqpqlbk099razq8lyn74m0f161zd0rp36hciqrwcg2zibzrd"; + libName = "futures_channel"; + dependencies = [ + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-sink"; + packageId = "futures-sink"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "futures-core/alloc" ]; + "default" = [ "std" ]; + "futures-sink" = [ "dep:futures-sink" ]; + "sink" = [ "futures-sink" ]; + "std" = [ "alloc" "futures-core/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "futures-sink" "sink" "std" ]; + }; + "futures-core" = rec { + crateName = "futures-core"; + version = "0.3.31"; + edition = "2018"; + sha256 = "0gk6yrxgi5ihfanm2y431jadrll00n5ifhnpx090c2f2q1cr1wh5"; + libName = "futures_core"; + features = { + "default" = [ "std" ]; + "portable-atomic" = [ "dep:portable-atomic" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "futures-executor" = rec { + crateName = "futures-executor"; + version = "0.3.31"; + edition = "2018"; + sha256 = "17vcci6mdfzx4gbk0wx64chr2f13wwwpvyf3xd5fb1gmjzcx2a0y"; + libName = "futures_executor"; + dependencies = [ + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-task"; + packageId = "futures-task"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "num_cpus" = [ "dep:num_cpus" ]; + "std" = [ "futures-core/std" "futures-task/std" "futures-util/std" ]; + "thread-pool" = [ "std" "num_cpus" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "futures-intrusive" = rec { + crateName = "futures-intrusive"; + version = "0.5.0"; + edition = "2018"; + sha256 = "0vwm08d1pli6bdaj0i7xhk3476qlx4pll6i0w03gzdnh7lh0r4qx"; + libName = "futures_intrusive"; + authors = [ + "Matthias Einwag " + ]; + dependencies = [ + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "lock_api"; + packageId = "lock_api"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + optional = true; + } + ]; + features = { + "alloc" = [ "futures-core/alloc" ]; + "default" = [ "std" ]; + "parking_lot" = [ "dep:parking_lot" ]; + "std" = [ "alloc" "parking_lot" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "parking_lot" "std" ]; + }; + "futures-io" = rec { + crateName = "futures-io"; + version = "0.3.31"; + edition = "2018"; + sha256 = "1ikmw1yfbgvsychmsihdkwa8a1knank2d9a8dk01mbjar9w1np4y"; + libName = "futures_io"; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "futures-macro" = rec { + crateName = "futures-macro"; + version = "0.3.31"; + edition = "2018"; + sha256 = "0l1n7kqzwwmgiznn0ywdc5i24z72zvh9q1dwps54mimppi7f6bhn"; + procMacro = true; + libName = "futures_macro"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "futures-sink" = rec { + crateName = "futures-sink"; + version = "0.3.31"; + edition = "2018"; + sha256 = "1xyly6naq6aqm52d5rh236snm08kw8zadydwqz8bip70s6vzlxg5"; + libName = "futures_sink"; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "futures-task" = rec { + crateName = "futures-task"; + version = "0.3.31"; + edition = "2018"; + sha256 = "124rv4n90f5xwfsm9qw6y99755y021cmi5dhzh253s920z77s3zr"; + libName = "futures_task"; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "std" ]; + }; + "futures-util" = rec { + crateName = "futures-util"; + version = "0.3.31"; + edition = "2018"; + sha256 = "10aa1ar8bgkgbr4wzxlidkqkcxf77gffyj8j7768h831pcaq784z"; + libName = "futures_util"; + dependencies = [ + { + name = "futures-channel"; + packageId = "futures-channel"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-io"; + packageId = "futures-io"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "futures-macro"; + packageId = "futures-macro"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "futures-sink"; + packageId = "futures-sink"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "futures-task"; + packageId = "futures-task"; + usesDefaultFeatures = false; + } + { + name = "memchr"; + packageId = "memchr"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "pin-utils"; + packageId = "pin-utils"; + } + { + name = "slab"; + packageId = "slab"; + optional = true; + } + ]; + features = { + "alloc" = [ "futures-core/alloc" "futures-task/alloc" ]; + "async-await-macro" = [ "async-await" "futures-macro" ]; + "channel" = [ "std" "futures-channel" ]; + "compat" = [ "std" "futures_01" ]; + "default" = [ "std" "async-await" "async-await-macro" ]; + "futures-channel" = [ "dep:futures-channel" ]; + "futures-io" = [ "dep:futures-io" ]; + "futures-macro" = [ "dep:futures-macro" ]; + "futures-sink" = [ "dep:futures-sink" ]; + "futures_01" = [ "dep:futures_01" ]; + "io" = [ "std" "futures-io" "memchr" ]; + "io-compat" = [ "io" "compat" "tokio-io" ]; + "memchr" = [ "dep:memchr" ]; + "portable-atomic" = [ "futures-core/portable-atomic" ]; + "sink" = [ "futures-sink" ]; + "slab" = [ "dep:slab" ]; + "std" = [ "alloc" "futures-core/std" "futures-task/std" "slab" ]; + "tokio-io" = [ "dep:tokio-io" ]; + "unstable" = [ "futures-core/unstable" "futures-task/unstable" ]; + "write-all-vectored" = [ "io" ]; + }; + resolvedDefaultFeatures = [ "alloc" "async-await" "async-await-macro" "channel" "default" "futures-channel" "futures-io" "futures-macro" "futures-sink" "io" "memchr" "sink" "slab" "std" ]; + }; + "garde" = rec { + crateName = "garde"; + version = "0.22.1"; + edition = "2021"; + sha256 = "1fcrnly2dcq42dysb7134j5iyknzlzl897fcj666x91r81mbax1s"; + dependencies = [ + { + name = "compact_str"; + packageId = "compact_str"; + usesDefaultFeatures = false; + } + { + name = "garde_derive"; + packageId = "garde_derive"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "once_cell"; + packageId = "once_cell"; + optional = true; + } + { + name = "regex"; + packageId = "regex"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "smallvec"; + packageId = "smallvec"; + usesDefaultFeatures = false; + } + ]; + features = { + "credit-card" = [ "dep:card-validate" ]; + "derive" = [ "dep:garde_derive" ]; + "email" = [ "regex" ]; + "email-idna" = [ "dep:idna" ]; + "full" = [ "derive" "serde" "url" "credit-card" "phone-number" "email" "email-idna" "regex" "unicode" ]; + "js-sys" = [ "dep:js-sys" "garde_derive?/js-sys" ]; + "pattern" = [ "regex" ]; + "phone-number" = [ "dep:phonenumber" ]; + "regex" = [ "dep:regex" "dep:once_cell" "garde_derive?/regex" ]; + "rust_decimal" = [ "dep:rust_decimal" ]; + "serde" = [ "dep:serde" "compact_str/serde" "smallvec/serde" ]; + "unicode" = [ "dep:unicode-segmentation" ]; + "url" = [ "dep:url" ]; + }; + resolvedDefaultFeatures = [ "regex" ]; + }; + "garde_derive" = rec { + crateName = "garde_derive"; + version = "0.22.1"; + edition = "2021"; + sha256 = "1rlaaya1nv8dzkcpbhhmrvschskzgys85n4yy8589ql9qj7c093j"; + procMacro = true; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "regex"; + packageId = "regex"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "derive" ]; + } + ]; + features = { + "regex" = [ "dep:regex" ]; + }; + resolvedDefaultFeatures = [ "regex" ]; + }; + "gen_passphrase" = rec { + crateName = "gen_passphrase"; + version = "0.1.1"; + edition = "2021"; + sha256 = "11w2smzs1izdblqzx3hwwnmp0zxs6jc0mz3lqpjjz8f2zcraw2zj"; + dependencies = [ + { + name = "nanorand"; + packageId = "nanorand"; + features = [ "chacha" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" "eff_large" ]; + }; + "generational-box" = rec { + crateName = "generational-box"; + version = "0.5.6"; + edition = "2021"; + sha256 = "1q6hwnhpy78jqqyp2iikg3cy238y0zw557y2z1mlql6hmk5z4z2m"; + libName = "generational_box"; + authors = [ + "Evan Almloff" + ]; + dependencies = [ + { + name = "parking_lot"; + packageId = "parking_lot"; + } + ]; + features = { + "default" = [ "check_generation" ]; + }; + resolvedDefaultFeatures = [ "check_generation" "default" ]; + }; + "generic-array" = rec { + crateName = "generic-array"; + version = "0.14.9"; + edition = "2015"; + sha256 = "1wpdn5ngpqkkyyibbg7wa4cfg0y8zjc57spaia2h47jkk0qp9djb"; + libName = "generic_array"; + authors = [ + "Bartłomiej Kamiński " + "Aaron Trent " + ]; + dependencies = [ + { + name = "typenum"; + packageId = "typenum"; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + usesDefaultFeatures = false; + } + ]; + buildDependencies = [ + { + name = "version_check"; + packageId = "version_check"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "more_lengths" "zeroize" ]; + }; + "getrandom 0.2.17" = rec { + crateName = "getrandom"; + version = "0.2.17"; + edition = "2018"; + sha256 = "1l2ac6jfj9xhpjjgmcx6s1x89bbnw9x6j9258yy6xjkzpq0bqapz"; + 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 0.11.1+wasi-snapshot-preview1"; + 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" "rdrand" "std" "wasm-bindgen" ]; + }; + "getrandom 0.3.4" = rec { + crateName = "getrandom"; + version = "0.3.4"; + edition = "2021"; + sha256 = "1zbpvpicry9lrbjmkd4msgj3ihff1q92i334chk7pzf46xffz7c9"; + authors = [ + "The Rand Project Developers" + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "js-sys"; + packageId = "js-sys"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null)) && (builtins.elem "atomics" targetFeatures)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ((("linux" == target."os" or null) || ("android" == target."os" or null)) && (!((("linux" == target."os" or null) && ("" == target."env" or null)) || ("custom" == target."getrandom_backend" or null) || ("linux_raw" == target."getrandom_backend" or null) || ("rdrand" == target."getrandom_backend" or null) || ("rndr" == target."getrandom_backend" or null)))); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("dragonfly" == target."os" or null) || ("freebsd" == target."os" or null) || ("hurd" == target."os" or null) || ("illumos" == target."os" or null) || ("cygwin" == target."os" or null) || (("horizon" == target."os" or null) && ("arm" == target."arch" or null))); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("haiku" == target."os" or null) || ("redox" == target."os" or null) || ("nto" == target."os" or null) || ("aix" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("ios" == target."os" or null) || ("visionos" == target."os" or null) || ("watchos" == target."os" or null) || ("tvos" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (("macos" == target."os" or null) || ("openbsd" == target."os" or null) || ("vita" == target."os" or null) || ("emscripten" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("netbsd" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("solaris" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ("vxworks" == target."os" or null); + } + { + name = "r-efi"; + packageId = "r-efi"; + usesDefaultFeatures = false; + target = { target, features }: (("uefi" == target."os" or null) && ("efi_rng" == target."getrandom_backend" or null)); + } + { + name = "wasip2"; + packageId = "wasip2"; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && ("wasi" == target."os" or null) && ("p2" == target."env" or null)); + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null))); + } + ]; + features = { + "wasm_js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; + }; + resolvedDefaultFeatures = [ "std" "wasm_js" ]; + }; + "ghash" = rec { + crateName = "ghash"; + version = "0.5.1"; + edition = "2021"; + sha256 = "1wbg4vdgzwhkpkclz1g6bs4r5x984w5gnlsj4q5wnafb5hva9n7h"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "opaque-debug"; + packageId = "opaque-debug"; + } + { + name = "polyval"; + packageId = "polyval"; + } + ]; + features = { + "std" = [ "polyval/std" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "gimli" = rec { + crateName = "gimli"; + version = "0.32.3"; + edition = "2018"; + sha256 = "1iqk5xznimn5bfa8jy4h7pa1dv3c624hzgd2dkz8mpgkiswvjag6"; + 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" ]; + "std" = [ "fallible-iterator?/std" "stable_deref_trait?/std" ]; + "write" = [ "dep:indexmap" ]; + }; + resolvedDefaultFeatures = [ "read" "read-core" ]; + }; + "gix" = rec { + crateName = "gix"; + version = "0.71.0"; + edition = "2021"; + sha256 = "0dblc4j5bhs973y04zp2sah6xvjizqn6h4pq2agkrz0pd3n727m6"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "gix-actor"; + packageId = "gix-actor"; + } + { + name = "gix-archive"; + packageId = "gix-archive"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "gix-attributes"; + packageId = "gix-attributes"; + optional = true; + } + { + name = "gix-command"; + packageId = "gix-command"; + optional = true; + } + { + name = "gix-commitgraph"; + packageId = "gix-commitgraph"; + } + { + name = "gix-config"; + packageId = "gix-config"; + } + { + name = "gix-credentials"; + packageId = "gix-credentials"; + optional = true; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-diff"; + packageId = "gix-diff"; + usesDefaultFeatures = false; + } + { + name = "gix-dir"; + packageId = "gix-dir"; + optional = true; + } + { + name = "gix-discover"; + packageId = "gix-discover"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "progress" "once_cell" ]; + } + { + name = "gix-filter"; + packageId = "gix-filter"; + optional = true; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-glob"; + packageId = "gix-glob"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-hashtable"; + packageId = "gix-hashtable"; + } + { + name = "gix-ignore"; + packageId = "gix-ignore"; + optional = true; + } + { + name = "gix-index"; + packageId = "gix-index"; + optional = true; + } + { + name = "gix-lock"; + packageId = "gix-lock"; + } + { + name = "gix-mailmap"; + packageId = "gix-mailmap"; + optional = true; + } + { + name = "gix-negotiate"; + packageId = "gix-negotiate"; + optional = true; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-odb"; + packageId = "gix-odb"; + } + { + name = "gix-pack"; + packageId = "gix-pack"; + usesDefaultFeatures = false; + features = [ "object-cache-dynamic" ]; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-pathspec"; + packageId = "gix-pathspec"; + optional = true; + } + { + name = "gix-prompt"; + packageId = "gix-prompt"; + optional = true; + } + { + name = "gix-protocol"; + packageId = "gix-protocol"; + } + { + name = "gix-ref"; + packageId = "gix-ref"; + } + { + name = "gix-refspec"; + packageId = "gix-refspec"; + } + { + name = "gix-revision"; + packageId = "gix-revision"; + usesDefaultFeatures = false; + } + { + name = "gix-revwalk"; + packageId = "gix-revwalk"; + } + { + name = "gix-sec"; + packageId = "gix-sec"; + } + { + name = "gix-shallow"; + packageId = "gix-shallow"; + } + { + name = "gix-status"; + packageId = "gix-status"; + optional = true; + features = [ "worktree-rewrites" ]; + } + { + name = "gix-submodule"; + packageId = "gix-submodule"; + optional = true; + } + { + name = "gix-tempfile"; + packageId = "gix-tempfile"; + usesDefaultFeatures = false; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "gix-transport"; + packageId = "gix-transport"; + optional = true; + } + { + name = "gix-traverse"; + packageId = "gix-traverse"; + } + { + name = "gix-url"; + packageId = "gix-url"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "gix-validate"; + packageId = "gix-validate 0.9.4"; + } + { + name = "gix-worktree"; + packageId = "gix-worktree"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "gix-worktree-state"; + packageId = "gix-worktree-state"; + optional = true; + } + { + name = "gix-worktree-stream"; + packageId = "gix-worktree-stream"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + optional = true; + } + { + name = "regex"; + packageId = "regex"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "async-network-client" = [ "gix-protocol/async-client" "gix-pack/streaming-input" "dep:gix-transport" "attributes" "credentials" ]; + "async-network-client-async-std" = [ "async-std" "async-network-client" "gix-transport/async-std" ]; + "async-std" = [ "dep:async-std" ]; + "attributes" = [ "excludes" "dep:gix-filter" "dep:gix-pathspec" "dep:gix-attributes" "dep:gix-submodule" "gix-worktree?/attributes" "command" ]; + "basic" = [ "blob-diff" "revision" "index" ]; + "blame" = [ "dep:gix-blame" ]; + "blob-diff" = [ "gix-diff/blob" "attributes" ]; + "blocking-http-transport-curl" = [ "blocking-network-client" "gix-transport/http-client-curl" ]; + "blocking-http-transport-curl-rustls" = [ "blocking-http-transport-curl" "gix-transport/http-client-curl-rust-tls" ]; + "blocking-http-transport-reqwest" = [ "blocking-network-client" "gix-transport/http-client-reqwest" ]; + "blocking-http-transport-reqwest-native-tls" = [ "blocking-http-transport-reqwest" "gix-transport/http-client-reqwest-native-tls" ]; + "blocking-http-transport-reqwest-rust-tls" = [ "blocking-http-transport-reqwest" "gix-transport/http-client-reqwest-rust-tls" ]; + "blocking-http-transport-reqwest-rust-tls-trust-dns" = [ "blocking-http-transport-reqwest" "gix-transport/http-client-reqwest-rust-tls-trust-dns" ]; + "blocking-network-client" = [ "gix-protocol/blocking-client" "gix-pack/streaming-input" "dep:gix-transport" "attributes" "credentials" ]; + "cache-efficiency-debug" = [ "gix-features/cache-efficiency-debug" ]; + "comfort" = [ "gix-features/progress-unit-bytes" "gix-features/progress-unit-human-numbers" ]; + "command" = [ "dep:gix-command" ]; + "credentials" = [ "dep:gix-credentials" "dep:gix-prompt" "dep:gix-negotiate" ]; + "default" = [ "max-performance-safe" "comfort" "basic" "extras" ]; + "dirwalk" = [ "dep:gix-dir" "attributes" "excludes" ]; + "document-features" = [ "dep:document-features" ]; + "excludes" = [ "dep:gix-ignore" "dep:gix-worktree" "index" ]; + "extras" = [ "worktree-stream" "worktree-archive" "revparse-regex" "mailmap" "excludes" "attributes" "worktree-mutation" "credentials" "interrupt" "status" "dirwalk" ]; + "gix-archive" = [ "dep:gix-archive" ]; + "gix-status" = [ "dep:gix-status" ]; + "gix-worktree-stream" = [ "dep:gix-worktree-stream" ]; + "hp-tempfile-registry" = [ "gix-tempfile/hp-hashmap" ]; + "index" = [ "dep:gix-index" ]; + "interrupt" = [ "dep:signal-hook" "gix-tempfile/signals" "dep:parking_lot" ]; + "mailmap" = [ "dep:gix-mailmap" "revision" ]; + "max-control" = [ "parallel" "pack-cache-lru-static" "pack-cache-lru-dynamic" ]; + "max-performance" = [ "max-performance-safe" "zlib-ng" ]; + "max-performance-safe" = [ "max-control" ]; + "merge" = [ "tree-editor" "blob-diff" "dep:gix-merge" "attributes" ]; + "need-more-recent-msrv" = [ "merge" "tree-editor" ]; + "pack-cache-lru-dynamic" = [ "gix-pack/pack-cache-lru-dynamic" ]; + "pack-cache-lru-static" = [ "gix-pack/pack-cache-lru-static" ]; + "parallel" = [ "gix-features/parallel" ]; + "prodash" = [ "dep:prodash" ]; + "progress-tree" = [ "prodash/progress-tree" ]; + "regex" = [ "dep:regex" ]; + "revision" = [ "gix-revision/describe" "gix-revision/merge_base" "index" ]; + "revparse-regex" = [ "regex" "revision" ]; + "serde" = [ "dep:serde" "gix-pack/serde" "gix-object/serde" "gix-protocol/serde" "gix-transport?/serde" "gix-ref/serde" "gix-odb/serde" "gix-index?/serde" "gix-mailmap?/serde" "gix-url/serde" "gix-attributes?/serde" "gix-ignore?/serde" "gix-revision/serde" "gix-worktree?/serde" "gix-commitgraph/serde" "gix-credentials?/serde" ]; + "status" = [ "gix-status" "dirwalk" "index" "blob-diff" "gix-diff/index" ]; + "tracing" = [ "gix-features/tracing" ]; + "tracing-detail" = [ "gix-features/tracing-detail" "tracing" ]; + "verbose-object-parsing-errors" = [ "gix-object/verbose-object-parsing-errors" ]; + "worktree-archive" = [ "gix-archive" "worktree-stream" "attributes" ]; + "worktree-mutation" = [ "attributes" "dep:gix-worktree-state" ]; + "worktree-stream" = [ "gix-worktree-stream" "attributes" ]; + "zlib-ng" = [ "gix-features/zlib-ng" ]; + "zlib-ng-compat" = [ "gix-features/zlib-ng-compat" ]; + "zlib-rs" = [ "gix-features/zlib-rs" ]; + "zlib-stock" = [ "gix-features/zlib-stock" ]; + }; + resolvedDefaultFeatures = [ "attributes" "basic" "blob-diff" "blocking-http-transport-reqwest" "blocking-http-transport-reqwest-rust-tls" "blocking-network-client" "comfort" "command" "credentials" "default" "dirwalk" "excludes" "extras" "gix-archive" "gix-status" "gix-worktree-stream" "index" "interrupt" "mailmap" "max-control" "max-performance-safe" "pack-cache-lru-dynamic" "pack-cache-lru-static" "parallel" "regex" "revision" "revparse-regex" "status" "worktree-archive" "worktree-mutation" "worktree-stream" ]; + }; + "gix-actor" = rec { + crateName = "gix-actor"; + version = "0.34.0"; + edition = "2021"; + sha256 = "1rr05a5nfwba8nl5zg75ng7j762nn658vfl25ywa9b1881ywhf7l"; + libName = "gix_actor"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + features = [ "simd" ]; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-date/serde" ]; + }; + }; + "gix-archive" = rec { + crateName = "gix-archive"; + version = "0.20.0"; + edition = "2021"; + sha256 = "0vhsspf73j5mkhv0vkyk0ndscipamr6lcv8dl9kqv5dqv8caghwv"; + libName = "gix_archive"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-worktree-stream"; + packageId = "gix-worktree-stream"; + } + { + name = "jiff"; + packageId = "jiff"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "default" = [ "tar" "tar_gz" "zip" ]; + "document-features" = [ "dep:document-features" ]; + "tar" = [ "dep:tar" "dep:gix-path" ]; + "tar_gz" = [ "tar" "dep:flate2" ]; + "zip" = [ "dep:zip" ]; + }; + }; + "gix-attributes" = rec { + crateName = "gix-attributes"; + version = "0.25.0"; + edition = "2021"; + sha256 = "0zyxr1257fzfvi79109z2dmakm40cznmrdpqjq8a22j3w0jmiqp4"; + libName = "gix_attributes"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-glob"; + packageId = "gix-glob"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-quote"; + packageId = "gix-quote"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "kstring"; + packageId = "kstring"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "unicode-bom"; + packageId = "unicode-bom"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-glob/serde" "kstring/serde" ]; + }; + }; + "gix-bitmap" = rec { + crateName = "gix-bitmap"; + version = "0.2.15"; + edition = "2021"; + sha256 = "0cg5lp3ffdcxgbn5gj5dsdv376l70sspdf0wa9h5hnx7p1hh25ay"; + libName = "gix_bitmap"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-chunk" = rec { + crateName = "gix-chunk"; + version = "0.4.12"; + edition = "2021"; + sha256 = "1swf50dk3i9gbq8bsg25hkhj2658261vnlcmazzvcz374lw6ndaw"; + libName = "gix_chunk"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-command" = rec { + crateName = "gix-command"; + version = "0.5.0"; + edition = "2021"; + sha256 = "1y6yfasb60507mxmpq2bwqpldwzccclzwmz1z2bscwvphjaqjdy0"; + libName = "gix_command"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-quote"; + packageId = "gix-quote"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "shell-words"; + packageId = "shell-words"; + } + ]; + + }; + "gix-commitgraph" = rec { + crateName = "gix-commitgraph"; + version = "0.27.0"; + edition = "2021"; + sha256 = "1zi819j9ska52pv82rz2q5d36csqq6vkqpwpvd852l57nx4vwg04"; + libName = "gix_commitgraph"; + authors = [ + "Conor Davis " + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-chunk"; + packageId = "gix-chunk"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "memmap2"; + packageId = "memmap2"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "gix-hash/serde" "bstr/serde" ]; + }; + }; + "gix-config" = rec { + crateName = "gix-config"; + version = "0.44.0"; + edition = "2021"; + sha256 = "1ylcdqqkm7ipx4m19x69mnfc3ljmyvvsnj8v4r04jq26yw5q6vww"; + libName = "gix_config"; + authors = [ + "Edward Shen " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-config-value"; + packageId = "gix-config-value"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + } + { + name = "gix-glob"; + packageId = "gix-glob"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-ref"; + packageId = "gix-ref"; + } + { + name = "gix-sec"; + packageId = "gix-sec"; + } + { + name = "memchr"; + packageId = "memchr"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "unicode-bom"; + packageId = "unicode-bom"; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + features = [ "simd" ]; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-sec/serde" "gix-ref/serde" "gix-glob/serde" "gix-config-value/serde" ]; + }; + }; + "gix-config-value" = rec { + crateName = "gix-config-value"; + version = "0.14.12"; + edition = "2021"; + sha256 = "1dj4g52s18ab01pnw55rd0qdf7frdxryzawccy21h56gqi2cihld"; + libName = "gix_config_value"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (!(target."windows" or false)); + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" ]; + }; + }; + "gix-credentials" = rec { + crateName = "gix-credentials"; + version = "0.28.0"; + edition = "2021"; + sha256 = "0qn0a4wqvc5bq4air5y49806jyrzgh9j23c6dd9qjmznm8426ci5"; + libName = "gix_credentials"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-command"; + packageId = "gix-command"; + } + { + name = "gix-config-value"; + packageId = "gix-config-value"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-prompt"; + packageId = "gix-prompt"; + } + { + name = "gix-sec"; + packageId = "gix-sec"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "gix-url"; + packageId = "gix-url"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-sec/serde" ]; + }; + }; + "gix-date" = rec { + crateName = "gix-date"; + version = "0.9.4"; + edition = "2021"; + sha256 = "1r0pc9ra4r7qxwsyd0jvxh3vsnm3jvkgkr19qbxi2dbxxic018ys"; + libName = "gix_date"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "jiff"; + packageId = "jiff"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" ]; + }; + }; + "gix-diff" = rec { + crateName = "gix-diff"; + version = "0.51.0"; + edition = "2021"; + sha256 = "1y5301nl772hhhwif1rsrz6w6dp4zcg4si1z4d75xj5gsbd7bjd2"; + libName = "gix_diff"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "gix-attributes"; + packageId = "gix-attributes"; + optional = true; + } + { + name = "gix-command"; + packageId = "gix-command"; + optional = true; + } + { + name = "gix-filter"; + packageId = "gix-filter"; + optional = true; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + optional = true; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-index"; + packageId = "gix-index"; + optional = true; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + optional = true; + } + { + name = "gix-pathspec"; + packageId = "gix-pathspec"; + optional = true; + } + { + name = "gix-tempfile"; + packageId = "gix-tempfile"; + optional = true; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + optional = true; + } + { + name = "gix-traverse"; + packageId = "gix-traverse"; + optional = true; + } + { + name = "gix-worktree"; + packageId = "gix-worktree"; + optional = true; + usesDefaultFeatures = false; + features = [ "attributes" ]; + } + { + name = "imara-diff"; + packageId = "imara-diff"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "blob" = [ "dep:imara-diff" "dep:gix-filter" "dep:gix-worktree" "dep:gix-path" "dep:gix-fs" "dep:gix-command" "dep:gix-tempfile" "dep:gix-trace" "dep:gix-traverse" ]; + "default" = [ "blob" "index" ]; + "document-features" = [ "dep:document-features" ]; + "index" = [ "dep:gix-index" "dep:gix-pathspec" "dep:gix-attributes" ]; + "serde" = [ "dep:serde" "gix-hash/serde" "gix-object/serde" "gix-index?/serde" ]; + "wasm" = [ "dep:getrandom" ]; + }; + resolvedDefaultFeatures = [ "blob" "index" ]; + }; + "gix-dir" = rec { + crateName = "gix-dir"; + version = "0.13.0"; + edition = "2021"; + sha256 = "0fvrsk2yyk3acqnjvf9bnvjhv9whaabwhkl6xmvq4pc1sdxljyaq"; + libName = "gix_dir"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "gix-discover"; + packageId = "gix-discover"; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-ignore"; + packageId = "gix-ignore"; + } + { + name = "gix-index"; + packageId = "gix-index"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-pathspec"; + packageId = "gix-pathspec"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + features = [ "bstr" ]; + } + { + name = "gix-worktree"; + packageId = "gix-worktree"; + usesDefaultFeatures = false; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-discover" = rec { + crateName = "gix-discover"; + version = "0.39.0"; + edition = "2021"; + sha256 = "10b7x3pnj3far7zqm728dfm1spqy6k9iiphm75m50m5q951qmyzp"; + libName = "gix_discover"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "dunce"; + packageId = "dunce"; + target = { target, features }: (target."windows" or false); + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-ref"; + packageId = "gix-ref"; + } + { + name = "gix-sec"; + packageId = "gix-sec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-features 0.41.1" = rec { + crateName = "gix-features"; + version = "0.41.1"; + edition = "2021"; + sha256 = "0d4n21h3z63wfqj2gg69vqqiddwwxgyvs8py412x2n4l45860v81"; + libName = "gix_features"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + optional = true; + } + { + name = "bytesize"; + packageId = "bytesize 1.3.3"; + optional = true; + } + { + name = "crc32fast"; + packageId = "crc32fast"; + optional = true; + } + { + name = "crossbeam-channel"; + packageId = "crossbeam-channel"; + optional = true; + } + { + name = "flate2"; + packageId = "flate2"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "gix-path"; + packageId = "gix-path"; + optional = true; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + optional = true; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "once_cell"; + packageId = "once_cell"; + optional = true; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "prodash"; + packageId = "prodash"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + optional = true; + } + { + name = "walkdir"; + packageId = "walkdir"; + optional = true; + } + ]; + features = { + "crc32" = [ "dep:crc32fast" ]; + "document-features" = [ "dep:document-features" ]; + "fs-read-dir" = [ "dep:gix-utils" ]; + "io-pipe" = [ "dep:bytes" ]; + "once_cell" = [ "dep:once_cell" ]; + "parallel" = [ "dep:crossbeam-channel" "dep:parking_lot" ]; + "prodash" = [ "dep:prodash" ]; + "progress" = [ "prodash" ]; + "progress-unit-bytes" = [ "dep:bytesize" "prodash?/unit-bytes" ]; + "progress-unit-human-numbers" = [ "prodash?/unit-human" ]; + "tracing" = [ "gix-trace/tracing" ]; + "tracing-detail" = [ "gix-trace/tracing-detail" ]; + "walkdir" = [ "dep:walkdir" "dep:gix-path" "dep:gix-utils" ]; + "zlib" = [ "dep:flate2" "flate2?/rust_backend" "dep:thiserror" ]; + "zlib-ng" = [ "zlib" "flate2?/zlib-ng" ]; + "zlib-ng-compat" = [ "zlib" "flate2?/zlib-ng-compat" ]; + "zlib-rs" = [ "zlib" "flate2?/zlib-rs" ]; + "zlib-rust-backend" = [ "zlib" "flate2?/rust_backend" ]; + "zlib-stock" = [ "zlib" "flate2?/zlib" ]; + }; + resolvedDefaultFeatures = [ "crc32" "default" "fs-read-dir" "io-pipe" "once_cell" "parallel" "prodash" "progress" "progress-unit-bytes" "progress-unit-human-numbers" "walkdir" "zlib" ]; + }; + "gix-features 0.42.1" = rec { + crateName = "gix-features"; + version = "0.42.1"; + edition = "2021"; + sha256 = "1v9zj90l4ax9gv1afh5bjas5ly2wdijzjk6xhkdxjkzcysd3kx2n"; + libName = "gix_features"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.3.1"; + optional = true; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "prodash"; + packageId = "prodash"; + optional = true; + } + ]; + features = { + "crc32" = [ "dep:crc32fast" ]; + "document-features" = [ "dep:document-features" ]; + "fs-read-dir" = [ "dep:gix-utils" ]; + "io-pipe" = [ "dep:bytes" ]; + "once_cell" = [ "dep:once_cell" ]; + "parallel" = [ "dep:crossbeam-channel" "dep:parking_lot" ]; + "prodash" = [ "dep:prodash" ]; + "progress" = [ "prodash" ]; + "progress-unit-bytes" = [ "dep:bytesize" "prodash?/unit-bytes" ]; + "progress-unit-human-numbers" = [ "prodash?/unit-human" ]; + "tracing" = [ "gix-trace/tracing" ]; + "tracing-detail" = [ "gix-trace/tracing-detail" ]; + "walkdir" = [ "dep:walkdir" "dep:gix-path" "dep:gix-utils" ]; + "zlib" = [ "dep:flate2" "dep:thiserror" ]; + "zlib-ng" = [ "zlib" ]; + "zlib-ng-compat" = [ "zlib" ]; + "zlib-rs" = [ "zlib" ]; + "zlib-rust-backend" = [ "zlib" ]; + "zlib-stock" = [ "zlib" ]; + }; + resolvedDefaultFeatures = [ "default" "fs-read-dir" "prodash" "progress" ]; + }; + "gix-filter" = rec { + crateName = "gix-filter"; + version = "0.18.0"; + edition = "2021"; + sha256 = "12dbr5x98fm8p9457d627919ng0nk0dxm0pwh8mrpk65znzjnayb"; + libName = "gix_filter"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "encoding_rs"; + packageId = "encoding_rs"; + } + { + name = "gix-attributes"; + packageId = "gix-attributes"; + } + { + name = "gix-command"; + packageId = "gix-command"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-packetline-blocking"; + packageId = "gix-packetline-blocking"; + rename = "gix-packetline"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-quote"; + packageId = "gix-quote"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-fs 0.14.0" = rec { + crateName = "gix-fs"; + version = "0.14.0"; + edition = "2021"; + sha256 = "04f1z60r0lyi8cp1p09nr9l27wa3jk4fbrakq35ahpyw41hqh7lm"; + libName = "gix_fs"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + } + { + name = "fastrand"; + packageId = "fastrand"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "fs-read-dir" ]; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + }; + "gix-fs 0.15.0" = rec { + crateName = "gix-fs"; + version = "0.15.0"; + edition = "2021"; + sha256 = "1iwpnmz9b1y965rs4vdf7x3ch08l4dvizy2mxb9j9vxl95qn7837"; + libName = "gix_fs"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + } + { + name = "fastrand"; + packageId = "fastrand"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-features"; + packageId = "gix-features 0.42.1"; + features = [ "fs-read-dir" ]; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.3.1"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + }; + "gix-glob" = rec { + crateName = "gix-glob"; + version = "0.19.0"; + edition = "2021"; + sha256 = "0c506lb1lfa33ajrfxw3cljbgfcmqv85z7h9l9ryfwrlq2cj95r0"; + libName = "gix_glob"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "bitflags/serde" ]; + }; + }; + "gix-hash 0.17.0" = rec { + crateName = "gix-hash"; + version = "0.17.0"; + edition = "2021"; + sha256 = "0jfbdmb1a22x4arhccrbpcwjkkcmfphs3nif6h1qp5b341r7jkl3"; + libName = "gix_hash"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "faster-hex"; + packageId = "faster-hex 0.9.0"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "progress" ]; + } + { + name = "sha1-checked"; + packageId = "sha1-checked"; + usesDefaultFeatures = false; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" ]; + }; + }; + "gix-hash 0.18.0" = rec { + crateName = "gix-hash"; + version = "0.18.0"; + edition = "2021"; + sha256 = "1n45szq2xh9vyasfmn27y0jbzkpc88sg0bifnjk54a365ib00jcd"; + libName = "gix_hash"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "faster-hex"; + packageId = "faster-hex 0.10.0"; + } + { + name = "gix-features"; + packageId = "gix-features 0.42.1"; + features = [ "progress" ]; + } + { + name = "sha1-checked"; + packageId = "sha1-checked"; + usesDefaultFeatures = false; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" ]; + }; + }; + "gix-hashtable" = rec { + crateName = "gix-hashtable"; + version = "0.8.1"; + edition = "2021"; + sha256 = "0129yss47n6s826lva7iziwi4r0f2cr4xxigc7r48hcb60ycpddm"; + libName = "gix_hashtable"; + authors = [ + "Pascal Kuthe " + ]; + dependencies = [ + { + name = "gix-hash"; + packageId = "gix-hash 0.18.0"; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.14.5"; + usesDefaultFeatures = false; + features = [ "inline-more" "raw" ]; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + ]; + + }; + "gix-ignore" = rec { + crateName = "gix-ignore"; + version = "0.14.0"; + edition = "2021"; + sha256 = "060x4vqgpjnz0kikarcdq27mfkcjh4znlxbz8p8i0fj91wwch9ws"; + libName = "gix_ignore"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-glob"; + packageId = "gix-glob"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "unicode-bom"; + packageId = "unicode-bom"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-glob/serde" ]; + }; + }; + "gix-index" = rec { + crateName = "gix-index"; + version = "0.39.0"; + edition = "2021"; + sha256 = "19q8p7649hssm0yj3kxllgb8rkm1xqfxb00abnm56d0mskifqnw5"; + libName = "gix_index"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "filetime"; + packageId = "filetime"; + } + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "gix-bitmap"; + packageId = "gix-bitmap"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "progress" ]; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-lock"; + packageId = "gix-lock"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-traverse"; + packageId = "gix-traverse"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "gix-validate"; + packageId = "gix-validate 0.9.4"; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.14.5"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (!(target."windows" or false)); + } + { + name = "memmap2"; + packageId = "memmap2"; + } + { + name = "rustix"; + packageId = "rustix 0.38.44"; + usesDefaultFeatures = false; + target = { target, features }: (!(target."windows" or false)); + features = [ "std" "fs" ]; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "smallvec/serde" "gix-hash/serde" ]; + }; + }; + "gix-lock" = rec { + crateName = "gix-lock"; + version = "17.1.0"; + edition = "2021"; + sha256 = "15m7wxli4kfljsz1asndrh5g40j9j8j1l3y9dlv5dwjr8q1qn3sp"; + libName = "gix_lock"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "gix-tempfile"; + packageId = "gix-tempfile"; + usesDefaultFeatures = false; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.3.1"; + usesDefaultFeatures = false; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-mailmap" = rec { + crateName = "gix-mailmap"; + version = "0.26.0"; + edition = "2021"; + sha256 = "14xkdb8mk8xrkncyv5rpng7igy1cknx7xhswg32k0kb8sa3d107z"; + libName = "gix_mailmap"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-actor"; + packageId = "gix-actor"; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-actor/serde" ]; + }; + }; + "gix-negotiate" = rec { + crateName = "gix-negotiate"; + version = "0.19.0"; + edition = "2021"; + sha256 = "0yz5hm15534ah4gz9660qgw1lf7lgwri8q43lkppv2m6ynn15nfs"; + libName = "gix_negotiate"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "gix-commitgraph"; + packageId = "gix-commitgraph"; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-revwalk"; + packageId = "gix-revwalk"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-object" = rec { + crateName = "gix-object"; + version = "0.48.0"; + edition = "2021"; + sha256 = "16nn1ndxij6sv5fsidsaja192lzdc81ix9wy1j93bhgzwvdgqhs9"; + libName = "gix_object"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-actor"; + packageId = "gix-actor"; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "progress" ]; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-hashtable"; + packageId = "gix-hashtable"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "gix-validate"; + packageId = "gix-validate 0.9.4"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "smallvec"; + packageId = "smallvec"; + features = [ "write" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + features = [ "simd" ]; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "smallvec/serde" "gix-hash/serde" "gix-actor/serde" ]; + "verbose-object-parsing-errors" = [ "winnow/std" ]; + }; + }; + "gix-odb" = rec { + crateName = "gix-odb"; + version = "0.68.0"; + edition = "2021"; + sha256 = "0476ynwy0aydycadpfac15xrqa56dq33y44kfmmyp0n9vi06sc2h"; + libName = "gix_odb"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "arc-swap"; + packageId = "arc-swap"; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "walkdir" "zlib" "crc32" ]; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-hashtable"; + packageId = "gix-hashtable"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-pack"; + packageId = "gix-pack"; + usesDefaultFeatures = false; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-quote"; + packageId = "gix-quote"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "gix-hash/serde" "gix-object/serde" "gix-pack/serde" ]; + }; + }; + "gix-pack" = rec { + crateName = "gix-pack"; + version = "0.58.0"; + edition = "2021"; + sha256 = "1jvrjzrx5q8596cdyp0arnagnxl7zqnd62549ii2cg1r17xzyrcv"; + libName = "gix_pack"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "clru"; + packageId = "clru"; + optional = true; + } + { + name = "gix-chunk"; + packageId = "gix-chunk"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "crc32" "progress" "zlib" ]; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-hashtable"; + packageId = "gix-hashtable"; + optional = true; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-tempfile"; + packageId = "gix-tempfile"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "memmap2"; + packageId = "memmap2"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "uluru"; + packageId = "uluru"; + optional = true; + } + ]; + features = { + "default" = [ "generate" "streaming-input" ]; + "document-features" = [ "dep:document-features" ]; + "generate" = [ "dep:gix-traverse" "dep:gix-diff" "dep:parking_lot" "dep:gix-hashtable" ]; + "object-cache-dynamic" = [ "dep:clru" "dep:gix-hashtable" ]; + "pack-cache-lru-dynamic" = [ "dep:clru" ]; + "pack-cache-lru-static" = [ "dep:uluru" ]; + "serde" = [ "dep:serde" "gix-object/serde" ]; + "streaming-input" = [ "dep:parking_lot" "dep:gix-tempfile" ]; + "wasm" = [ "gix-diff?/wasm" ]; + }; + resolvedDefaultFeatures = [ "object-cache-dynamic" "pack-cache-lru-dynamic" "pack-cache-lru-static" "streaming-input" ]; + }; + "gix-packetline" = rec { + crateName = "gix-packetline"; + version = "0.18.4"; + edition = "2021"; + sha256 = "011sdpf03fp066v9q8zcjjz63vwavaqbl1nw84j3bmgl1jkl8f0j"; + libName = "gix_packetline"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "faster-hex"; + packageId = "faster-hex 0.9.0"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "async-io" = [ "dep:futures-io" "dep:futures-lite" "dep:pin-project-lite" ]; + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" ]; + }; + resolvedDefaultFeatures = [ "blocking-io" "default" ]; + }; + "gix-packetline-blocking" = rec { + crateName = "gix-packetline-blocking"; + version = "0.18.3"; + edition = "2021"; + sha256 = "1crknbdkdnh5aanpyda3dhm2c0a3hacl1h5shxay9iq5w6i3xkqy"; + libName = "gix_packetline_blocking"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "faster-hex"; + packageId = "faster-hex 0.9.0"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "default" = [ "blocking-io" ]; + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" ]; + }; + resolvedDefaultFeatures = [ "blocking-io" "default" ]; + }; + "gix-path" = rec { + crateName = "gix-path"; + version = "0.10.22"; + edition = "2021"; + sha256 = "0rpksdgf0wv6w6x6irx09qgm32p28lqsjpwizlj6xvcf9wz6rc3w"; + libName = "gix_path"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + } + { + name = "gix-validate"; + packageId = "gix-validate 0.10.1"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-pathspec" = rec { + crateName = "gix-pathspec"; + version = "0.10.0"; + edition = "2021"; + sha256 = "057ch8xlbadf2rnjvlzs5ciqagwn4m8h492b0x4xcrlh7hn45y7y"; + libName = "gix_pathspec"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-attributes"; + packageId = "gix-attributes"; + } + { + name = "gix-config-value"; + packageId = "gix-config-value"; + } + { + name = "gix-glob"; + packageId = "gix-glob"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-prompt" = rec { + crateName = "gix-prompt"; + version = "0.10.0"; + edition = "2021"; + sha256 = "1w6m975b2pj5ghxhxykrnz4s33xjx6sfwmww5hn2zlwz4gvcpygv"; + libName = "gix_prompt"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "gix-command"; + packageId = "gix-command"; + } + { + name = "gix-config-value"; + packageId = "gix-config-value"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + target = { target, features }: (target."unix" or false); + } + { + name = "rustix"; + packageId = "rustix 0.38.44"; + target = { target, features }: (target."unix" or false); + features = [ "termios" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-protocol" = rec { + crateName = "gix-protocol"; + version = "0.49.0"; + edition = "2021"; + sha256 = "0njv6mkq6zsf3gw233p8w1r37bw7jcdvw0121v1hp2323npdsy2n"; + libName = "gix_protocol"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-credentials"; + packageId = "gix-credentials"; + optional = true; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "progress" ]; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-lock"; + packageId = "gix-lock"; + optional = true; + } + { + name = "gix-negotiate"; + packageId = "gix-negotiate"; + optional = true; + } + { + name = "gix-object"; + packageId = "gix-object"; + optional = true; + } + { + name = "gix-ref"; + packageId = "gix-ref"; + } + { + name = "gix-refspec"; + packageId = "gix-refspec"; + optional = true; + } + { + name = "gix-revwalk"; + packageId = "gix-revwalk"; + optional = true; + } + { + name = "gix-shallow"; + packageId = "gix-shallow"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + optional = true; + } + { + name = "gix-transport"; + packageId = "gix-transport"; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "maybe-async"; + packageId = "maybe-async"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + features = [ "simd" ]; + } + ]; + features = { + "async-client" = [ "gix-transport/async-client" "dep:async-trait" "dep:futures-io" "dep:futures-lite" "handshake" "fetch" ]; + "blocking-client" = [ "gix-transport/blocking-client" "maybe-async/is_sync" "handshake" "fetch" ]; + "document-features" = [ "dep:document-features" ]; + "fetch" = [ "dep:gix-negotiate" "dep:gix-object" "dep:gix-revwalk" "dep:gix-lock" "dep:gix-refspec" "dep:gix-trace" ]; + "handshake" = [ "dep:gix-credentials" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-transport/serde" "gix-hash/serde" "gix-shallow/serde" ]; + }; + resolvedDefaultFeatures = [ "blocking-client" "fetch" "handshake" ]; + }; + "gix-quote" = rec { + crateName = "gix-quote"; + version = "0.5.0"; + edition = "2021"; + sha256 = "0sgr4zw14nnp6l74fc3x3k0a2ik17si41rd59arf6kgq1damq00v"; + libName = "gix_quote"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-ref" = rec { + crateName = "gix-ref"; + version = "0.51.0"; + edition = "2021"; + sha256 = "12sx86q6gz5y7nrbziqvkfkkxavvcfyp87wn34njvs3wdgmzgqdj"; + libName = "gix_ref"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "gix-actor"; + packageId = "gix-actor"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "walkdir" ]; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-lock"; + packageId = "gix-lock"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-tempfile"; + packageId = "gix-tempfile"; + usesDefaultFeatures = false; + } + { + name = "gix-utils"; + packageId = "gix-utils 0.2.0"; + } + { + name = "gix-validate"; + packageId = "gix-validate 0.9.4"; + } + { + name = "memmap2"; + packageId = "memmap2"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + features = [ "simd" ]; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "gix-hash/serde" "gix-actor/serde" "gix-object/serde" ]; + }; + }; + "gix-refspec" = rec { + crateName = "gix-refspec"; + version = "0.29.0"; + edition = "2021"; + sha256 = "1z1g4mfchpxi6xbilx0h7b0pj9v6k5f0r54djglacr123sr8g18x"; + libName = "gix_refspec"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-revision"; + packageId = "gix-revision"; + usesDefaultFeatures = false; + } + { + name = "gix-validate"; + packageId = "gix-validate 0.9.4"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-revision" = rec { + crateName = "gix-revision"; + version = "0.33.0"; + edition = "2021"; + sha256 = "1sf3c0c824kj3lbngpygxbj8z5630xinabznml605wwd2m7alb1l"; + libName = "gix_revision"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + } + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-commitgraph"; + packageId = "gix-commitgraph"; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-hashtable"; + packageId = "gix-hashtable"; + optional = true; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-revwalk"; + packageId = "gix-revwalk"; + } + { + name = "gix-trace"; + packageId = "gix-trace"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "default" = [ "describe" "merge_base" ]; + "describe" = [ "dep:gix-trace" "dep:gix-hashtable" ]; + "document-features" = [ "dep:document-features" ]; + "merge_base" = [ "dep:gix-trace" "dep:bitflags" ]; + "serde" = [ "dep:serde" "gix-hash/serde" "gix-object/serde" ]; + }; + resolvedDefaultFeatures = [ "describe" "merge_base" ]; + }; + "gix-revwalk" = rec { + crateName = "gix-revwalk"; + version = "0.19.0"; + edition = "2021"; + sha256 = "03fy5glq01v95cqz908crag9ykqamzj0c08k6n6sphfdwpbw7ird"; + libName = "gix_revwalk"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "gix-commitgraph"; + packageId = "gix-commitgraph"; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-hashtable"; + packageId = "gix-hashtable"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-sec" = rec { + crateName = "gix-sec"; + version = "0.10.12"; + edition = "2021"; + sha256 = "122qvp6sll7hkrpjiwf9ga1dni0gwf6j3zzm6cq2zvz97pqv1bj7"; + libName = "gix_sec"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "gix-path"; + packageId = "gix-path"; + target = { target, features }: (target."windows" or false); + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (!(target."windows" or false)); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.52.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Security_Authorization" "Win32_Storage_FileSystem" "Win32_System_Memory" "Win32_System_Threading" ]; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bitflags/serde" ]; + }; + }; + "gix-shallow" = rec { + crateName = "gix-shallow"; + version = "0.3.0"; + edition = "2021"; + sha256 = "1hrlyhivjan43743dv18w8hvpvc6w3z9550wl9sjbmg1rym9h1fc"; + libName = "gix_shallow"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-lock"; + packageId = "gix-lock"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "serde" = [ "dep:serde" "gix-hash/serde" ]; + }; + }; + "gix-status" = rec { + crateName = "gix-status"; + version = "0.18.0"; + edition = "2021"; + sha256 = "1xdjd37n0a8pamz7rp1nn6fd6yzgcdxfxci4dv2805l9nl76snk0"; + libName = "gix_status"; + authors = [ + "Sebastian Thiel " + "Pascal Kuthe " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "filetime"; + packageId = "filetime"; + } + { + name = "gix-diff"; + packageId = "gix-diff"; + optional = true; + usesDefaultFeatures = false; + features = [ "blob" ]; + } + { + name = "gix-dir"; + packageId = "gix-dir"; + optional = true; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "progress" ]; + } + { + name = "gix-filter"; + packageId = "gix-filter"; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-index"; + packageId = "gix-index"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-pathspec"; + packageId = "gix-pathspec"; + } + { + name = "gix-worktree"; + packageId = "gix-worktree"; + usesDefaultFeatures = false; + features = [ "attributes" ]; + } + { + name = "portable-atomic"; + packageId = "portable-atomic"; + target = { target, features }: (!("64" == target."has_atomic" or null)); + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "worktree-rewrites" = [ "dep:gix-dir" "dep:gix-diff" ]; + }; + resolvedDefaultFeatures = [ "worktree-rewrites" ]; + }; + "gix-submodule" = rec { + crateName = "gix-submodule"; + version = "0.18.0"; + edition = "2021"; + sha256 = "18ldqsxh0i11n6vi54bakis3b7yw9rnh2j4mbqv5ql2r4063kivq"; + libName = "gix_submodule"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "gix-config"; + packageId = "gix-config"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-pathspec"; + packageId = "gix-pathspec"; + } + { + name = "gix-refspec"; + packageId = "gix-refspec"; + } + { + name = "gix-url"; + packageId = "gix-url"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-tempfile" = rec { + crateName = "gix-tempfile"; + version = "17.1.0"; + edition = "2021"; + sha256 = "1akh8jnmfm0x6mg3yfhp67d0avkinwldkc52cyx2sfj5130fhl67"; + libName = "gix_tempfile"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "dashmap"; + packageId = "dashmap"; + optional = true; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.15.0"; + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (!(target."windows" or false)); + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + features = [ "race" "std" ]; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "signal-hook-registry"; + packageId = "signal-hook-registry"; + optional = true; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + ]; + features = { + "default" = [ "hp-hashmap" ]; + "document-features" = [ "dep:document-features" ]; + "hp-hashmap" = [ "dep:dashmap" ]; + "signals" = [ "dep:signal-hook" "dep:signal-hook-registry" ]; + }; + resolvedDefaultFeatures = [ "default" "hp-hashmap" "signals" ]; + }; + "gix-trace" = rec { + crateName = "gix-trace"; + version = "0.1.17"; + edition = "2021"; + sha256 = "014mp2by2z4r0vgq449gya04jl6zg1p931yql8dp4mrkb31a8hkf"; + libName = "gix_trace"; + authors = [ + "Sebastian Thiel " + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "tracing" = [ "dep:tracing-core" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "gix-transport" = rec { + crateName = "gix-transport"; + version = "0.46.0"; + edition = "2021"; + sha256 = "0zkq877jmmraqz9pflncn386fnr1yakq894x71w85jmzf0l8rxmk"; + libName = "gix_transport"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + optional = true; + } + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" "unicode" ]; + } + { + name = "gix-command"; + packageId = "gix-command"; + } + { + name = "gix-credentials"; + packageId = "gix-credentials"; + optional = true; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + } + { + name = "gix-packetline"; + packageId = "gix-packetline"; + } + { + name = "gix-quote"; + packageId = "gix-quote"; + } + { + name = "gix-sec"; + packageId = "gix-sec"; + } + { + name = "gix-url"; + packageId = "gix-url"; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + optional = true; + usesDefaultFeatures = false; + features = [ "blocking" "charset" "http2" "macos-system-configuration" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "async-client" = [ "gix-packetline/async-io" "async-trait" "futures-lite" "futures-io" "pin-project-lite" ]; + "async-std" = [ "dep:async-std" ]; + "async-trait" = [ "dep:async-trait" ]; + "base64" = [ "dep:base64" ]; + "blocking-client" = [ "gix-packetline/blocking-io" ]; + "curl" = [ "dep:curl" ]; + "document-features" = [ "dep:document-features" ]; + "futures-io" = [ "dep:futures-io" ]; + "futures-lite" = [ "dep:futures-lite" ]; + "gix-credentials" = [ "dep:gix-credentials" ]; + "http-client" = [ "base64" "gix-features/io-pipe" "blocking-client" "gix-credentials" ]; + "http-client-curl" = [ "curl" "http-client" ]; + "http-client-curl-rust-tls" = [ "http-client-curl" "curl/rustls" ]; + "http-client-reqwest" = [ "reqwest" "http-client" ]; + "http-client-reqwest-native-tls" = [ "http-client-reqwest" "reqwest/default-tls" ]; + "http-client-reqwest-rust-tls" = [ "http-client-reqwest" "reqwest/rustls-tls" ]; + "http-client-reqwest-rust-tls-trust-dns" = [ "http-client-reqwest" "reqwest/rustls-tls" "reqwest/trust-dns" ]; + "pin-project-lite" = [ "dep:pin-project-lite" ]; + "reqwest" = [ "dep:reqwest" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "base64" "blocking-client" "default" "gix-credentials" "http-client" "http-client-reqwest" "http-client-reqwest-rust-tls" "reqwest" ]; + }; + "gix-traverse" = rec { + crateName = "gix-traverse"; + version = "0.45.0"; + edition = "2021"; + sha256 = "113kzy27skxddmg9qgp84wbjwzshgcpi153604h1pdmxz14v1h1n"; + libName = "gix_traverse"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "gix-commitgraph"; + packageId = "gix-commitgraph"; + } + { + name = "gix-date"; + packageId = "gix-date"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-hashtable"; + packageId = "gix-hashtable"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-revwalk"; + packageId = "gix-revwalk"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-url" = rec { + crateName = "gix-url"; + version = "0.30.0"; + edition = "2021"; + sha256 = "0q78bb1ark0chavckh5gspsip7d0gbfv02yqfx4vipgijczy5ps8"; + libName = "gix_url"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "url"; + packageId = "url"; + } + ]; + features = { + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" ]; + }; + }; + "gix-utils 0.2.0" = rec { + crateName = "gix-utils"; + version = "0.2.0"; + edition = "2021"; + sha256 = "1l7qfjkw6lig08d7hb5jvjn5q9fv1717n2zygkapyglhrwj8g7qq"; + libName = "gix_utils"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "fastrand"; + packageId = "fastrand"; + } + { + name = "unicode-normalization"; + packageId = "unicode-normalization"; + usesDefaultFeatures = false; + } + ]; + features = { + "bstr" = [ "dep:bstr" ]; + }; + resolvedDefaultFeatures = [ "bstr" ]; + }; + "gix-utils 0.3.1" = rec { + crateName = "gix-utils"; + version = "0.3.1"; + edition = "2021"; + sha256 = "1igpdrs5dxlk5y7hx8c05pkqbv8vf540lxhzb5a2i393n7gxpz5y"; + libName = "gix_utils"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "fastrand"; + packageId = "fastrand"; + } + { + name = "unicode-normalization"; + packageId = "unicode-normalization"; + usesDefaultFeatures = false; + } + ]; + features = { + "bstr" = [ "dep:bstr" ]; + }; + }; + "gix-validate 0.10.1" = rec { + crateName = "gix-validate"; + version = "0.10.1"; + edition = "2021"; + sha256 = "1r7xvdhvvf0dl83x8ysf6j5cpzd8f52ysw7qjjjp1s8nnnjn67jv"; + libName = "gix_validate"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-validate 0.9.4" = rec { + crateName = "gix-validate"; + version = "0.9.4"; + edition = "2021"; + sha256 = "11204daz5qlk9kqnmiq4syv0n21phkiy3xkwxmwnrnh964jz3d9l"; + libName = "gix_validate"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-worktree" = rec { + crateName = "gix-worktree"; + version = "0.40.0"; + edition = "2021"; + sha256 = "0yvjvjs1y6q7qikphvpj85v92sya3pac1b9hxm7jgakr9fy0sxpp"; + libName = "gix_worktree"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "gix-attributes"; + packageId = "gix-attributes"; + optional = true; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-glob"; + packageId = "gix-glob"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-ignore"; + packageId = "gix-ignore"; + } + { + name = "gix-index"; + packageId = "gix-index"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-validate"; + packageId = "gix-validate 0.9.4"; + optional = true; + } + ]; + features = { + "attributes" = [ "dep:gix-attributes" "dep:gix-validate" ]; + "default" = [ "attributes" ]; + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" "bstr/serde" "gix-index/serde" "gix-hash/serde" "gix-object/serde" "gix-attributes?/serde" "gix-ignore/serde" ]; + }; + resolvedDefaultFeatures = [ "attributes" ]; + }; + "gix-worktree-state" = rec { + crateName = "gix-worktree-state"; + version = "0.18.0"; + edition = "2021"; + sha256 = "12z1h01r20xbpy56ashd3161mv243f4a62l4cqs5nwy2iv9v83j9"; + libName = "gix_worktree_state"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bstr"; + packageId = "bstr"; + usesDefaultFeatures = false; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + } + { + name = "gix-filter"; + packageId = "gix-filter"; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-glob"; + packageId = "gix-glob"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-index"; + packageId = "gix-index"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-worktree"; + packageId = "gix-worktree"; + usesDefaultFeatures = false; + features = [ "attributes" ]; + } + { + name = "io-close"; + packageId = "io-close"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "gix-worktree-stream" = rec { + crateName = "gix-worktree-stream"; + version = "0.20.0"; + edition = "2021"; + sha256 = "0qzai5a0hxcsv2b0jbd5ja89ps5xk0m3grgqwvhaqdpi4fdxcqh0"; + libName = "gix_worktree_stream"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "gix-attributes"; + packageId = "gix-attributes"; + } + { + name = "gix-features"; + packageId = "gix-features 0.41.1"; + features = [ "progress" "io-pipe" ]; + } + { + name = "gix-filter"; + packageId = "gix-filter"; + } + { + name = "gix-fs"; + packageId = "gix-fs 0.14.0"; + } + { + name = "gix-hash"; + packageId = "gix-hash 0.17.0"; + } + { + name = "gix-object"; + packageId = "gix-object"; + } + { + name = "gix-path"; + packageId = "gix-path"; + } + { + name = "gix-traverse"; + packageId = "gix-traverse"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "glob" = rec { + crateName = "glob"; + version = "0.3.3"; + edition = "2015"; + sha256 = "106jpd3syfzjfj2k70mwm0v436qbx96wig98m4q8x071yrq35hhc"; + authors = [ + "The Rust Project Developers" + ]; + + }; + "gloo-timers" = 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" ]; + }; + "grid" = rec { + crateName = "grid"; + version = "0.14.0"; + edition = "2018"; + sha256 = "10lg390k6ybbgiii84yvz10jdyqlnh1gkj5n1g3kr8f2mjfns4xy"; + authors = [ + "Armin Becher " + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "std" "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "group" = rec { + crateName = "group"; + version = "0.13.0"; + edition = "2021"; + sha256 = "0qqs2p5vqnv3zvq9mfjkmw3qlvgqb0c3cm6p33srkh7pc9sfzygh"; + authors = [ + "Sean Bowe " + "Jack Grigg " + ]; + dependencies = [ + { + name = "ff"; + packageId = "ff"; + usesDefaultFeatures = false; + } + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + usesDefaultFeatures = false; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "alloc" ]; + "memuse" = [ "dep:memuse" ]; + "rand" = [ "dep:rand" ]; + "rand_xorshift" = [ "dep:rand_xorshift" ]; + "tests" = [ "alloc" "rand" "rand_xorshift" ]; + "wnaf-memuse" = [ "alloc" "memuse" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "h2 0.3.27" = rec { + crateName = "h2"; + version = "0.3.27"; + edition = "2018"; + sha256 = "0b92141hilij015av6i5ziw9xfx4py3lbjy17yc35z5ih01sbv0b"; + authors = [ + "Carl Lerche " + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-sink"; + packageId = "futures-sink"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http 0.2.12"; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + features = [ "std" ]; + } + { + name = "slab"; + packageId = "slab"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-util" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + features = [ "codec" "io" ]; + } + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "macros" "sync" "net" ]; + } + ]; + features = { + }; + }; + "h2 0.4.13" = rec { + crateName = "h2"; + version = "0.4.13"; + edition = "2021"; + sha256 = "0m6w5gg0n0m1m5915bxrv8n4rlazhx5icknkslz719jhh4xdli1g"; + authors = [ + "Carl Lerche " + "Sean McArthur " + ]; + dependencies = [ + { + name = "atomic-waker"; + packageId = "atomic-waker"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-sink"; + packageId = "futures-sink"; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + features = [ "std" ]; + } + { + name = "slab"; + packageId = "slab"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-util" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + features = [ "codec" "io" ]; + } + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "macros" "sync" "net" ]; + } + ]; + features = { + }; + }; + "half" = rec { + crateName = "half"; + version = "2.7.1"; + edition = "2021"; + sha256 = "0jyq42xfa6sghc397mx84av7fayd4xfxr4jahsqv90lmjr5xi8kf"; + authors = [ + "Kathryn Long " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "crunchy"; + packageId = "crunchy"; + target = { target, features }: ("spirv" == target."arch" or null); + } + { + name = "zerocopy"; + packageId = "zerocopy"; + usesDefaultFeatures = false; + features = [ "derive" "simd" ]; + } + ]; + devDependencies = [ + { + name = "crunchy"; + packageId = "crunchy"; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "bytemuck" = [ "dep:bytemuck" ]; + "default" = [ "std" ]; + "num-traits" = [ "dep:num-traits" ]; + "rand_distr" = [ "dep:rand" "dep:rand_distr" ]; + "rkyv" = [ "dep:rkyv" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + }; + }; + "hash32" = rec { + crateName = "hash32"; + version = "0.3.1"; + edition = "2015"; + sha256 = "01h68z8qi5gl9lnr17nz10lay8wjiidyjdyd60kqx8ibj090pmj7"; + authors = [ + "Jorge Aparicio " + ]; + dependencies = [ + { + name = "byteorder"; + packageId = "byteorder"; + usesDefaultFeatures = false; + } + ]; + + }; + "hashbrown 0.12.3" = rec { + crateName = "hashbrown"; + version = "0.12.3"; + edition = "2021"; + sha256 = "1268ka4750pyg2pbgsr43f0289l5zah4arir2k4igx5a8c6fg7la"; + authors = [ + "Amanieu d'Antras " + ]; + features = { + "ahash" = [ "dep:ahash" ]; + "ahash-compile-time-rng" = [ "ahash/compile-time-rng" ]; + "alloc" = [ "dep:alloc" ]; + "bumpalo" = [ "dep:bumpalo" ]; + "compiler_builtins" = [ "dep:compiler_builtins" ]; + "core" = [ "dep:core" ]; + "default" = [ "ahash" "inline-more" ]; + "rayon" = [ "dep:rayon" ]; + "rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "raw" ]; + }; + "hashbrown 0.13.2" = rec { + crateName = "hashbrown"; + version = "0.13.2"; + edition = "2021"; + sha256 = "03ji3n19j4b6mf2wlla81vsixcmlivglp6hgk79d1pcxfcrw38s3"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "ahash"; + packageId = "ahash"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "ahash" = [ "dep:ahash" ]; + "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 = [ "ahash" "default" "inline-more" ]; + }; + "hashbrown 0.14.5" = rec { + crateName = "hashbrown"; + version = "0.14.5"; + edition = "2021"; + sha256 = "1wa1vy1xs3mp11bn3z9dv0jricgr6a2j0zkf1g19yz3vw4il89z5"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "ahash"; + packageId = "ahash"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "allocator-api2"; + packageId = "allocator-api2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + 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 = [ "ahash" "allocator-api2" "default" "inline-more" "raw" ]; + }; + "hashbrown 0.15.5" = rec { + crateName = "hashbrown"; + version = "0.15.5"; + edition = "2021"; + sha256 = "189qaczmjxnikm9db748xyhiw04kpmhm9xj9k9hg0sgx7pjwyacj"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "allocator-api2"; + packageId = "allocator-api2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "equivalent"; + packageId = "equivalent"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "foldhash"; + packageId = "foldhash"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "dep:alloc" ]; + "allocator-api2" = [ "dep:allocator-api2" ]; + "core" = [ "dep:core" ]; + "default" = [ "default-hasher" "inline-more" "allocator-api2" "equivalent" "raw-entry" ]; + "default-hasher" = [ "dep:foldhash" ]; + "equivalent" = [ "dep:equivalent" ]; + "nightly" = [ "bumpalo/allocator_api" ]; + "rayon" = [ "dep:rayon" ]; + "rustc-dep-of-std" = [ "nightly" "core" "alloc" "rustc-internal-api" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "allocator-api2" "default" "default-hasher" "equivalent" "inline-more" "raw-entry" ]; + }; + "hashbrown 0.16.1" = rec { + crateName = "hashbrown"; + version = "0.16.1"; + edition = "2021"; + sha256 = "004i3njw38ji3bzdp9z178ba9x3k0c1pgy8x69pj7yfppv4iq7c4"; + authors = [ + "Amanieu d'Antras " + ]; + features = { + "alloc" = [ "dep:alloc" ]; + "allocator-api2" = [ "dep:allocator-api2" ]; + "core" = [ "dep:core" ]; + "default" = [ "default-hasher" "inline-more" "allocator-api2" "equivalent" "raw-entry" ]; + "default-hasher" = [ "dep:foldhash" ]; + "equivalent" = [ "dep:equivalent" ]; + "nightly" = [ "foldhash?/nightly" "bumpalo/allocator_api" ]; + "rayon" = [ "dep:rayon" ]; + "rustc-dep-of-std" = [ "nightly" "core" "alloc" "rustc-internal-api" ]; + "serde" = [ "dep:serde_core" "dep:serde" ]; + }; + }; + "hashlink" = rec { + crateName = "hashlink"; + version = "0.10.0"; + edition = "2018"; + sha256 = "1h8lzvnl9qxi3zyagivzz2p1hp6shgddfmccyf6jv7s1cdicz0kk"; + authors = [ + "kyren " + ]; + dependencies = [ + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + usesDefaultFeatures = false; + features = [ "default-hasher" "inline-more" ]; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + "serde_impl" = [ "serde" ]; + }; + }; + "headers" = rec { + crateName = "headers"; + version = "0.4.1"; + edition = "2018"; + sha256 = "1sr4zygaq1b2f0k7b5l8vx5vp05wvd82w7vpavgvr52xvdd4scdk"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "headers-core"; + packageId = "headers-core"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "httpdate"; + packageId = "httpdate"; + } + { + name = "mime"; + packageId = "mime"; + } + { + name = "sha1"; + packageId = "sha1"; + } + ]; + features = { + }; + }; + "headers-core" = rec { + crateName = "headers-core"; + version = "0.3.0"; + edition = "2015"; + sha256 = "1r1w80i2bhmyh8s5mjr2dz6baqlrm6cak6yvzm4jq96lacjs5d2l"; + libName = "headers_core"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "http"; + packageId = "http 1.4.0"; + } + ]; + + }; + "heapless" = rec { + crateName = "heapless"; + version = "0.8.0"; + edition = "2021"; + sha256 = "1b9zpdjv4qkl2511s2c80fz16fx9in4m9qkhbaa8j73032v9xyqb"; + authors = [ + "Jorge Aparicio " + "Per Lindgren " + "Emil Fresk " + ]; + dependencies = [ + { + name = "hash32"; + packageId = "hash32"; + } + { + name = "stable_deref_trait"; + packageId = "stable_deref_trait"; + usesDefaultFeatures = false; + } + ]; + features = { + "defmt-03" = [ "dep:defmt" ]; + "portable-atomic" = [ "dep:portable-atomic" ]; + "portable-atomic-critical-section" = [ "dep:portable-atomic" "portable-atomic" "portable-atomic?/critical-section" ]; + "portable-atomic-unsafe-assume-single-core" = [ "dep:portable-atomic" "portable-atomic" "portable-atomic?/unsafe-assume-single-core" ]; + "serde" = [ "dep:serde" ]; + "ufmt" = [ "dep:ufmt-write" ]; + }; + }; + "heck 0.4.1" = rec { + crateName = "heck"; + version = "0.4.1"; + edition = "2018"; + sha256 = "1a7mqsnycv5z4z5vnv1k34548jzmc0ajic7c1j8jsaspnhw5ql4m"; + authors = [ + "Without Boats " + ]; + features = { + "unicode" = [ "unicode-segmentation" ]; + "unicode-segmentation" = [ "dep:unicode-segmentation" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "heck 0.5.0" = rec { + crateName = "heck"; + version = "0.5.0"; + edition = "2021"; + sha256 = "1sjmpsdl8czyh9ywl3qcsfsq9a307dg4ni2vnlwgnzzqhc4y0113"; + + }; + "hermit-abi" = rec { + crateName = "hermit-abi"; + version = "0.5.2"; + edition = "2021"; + sha256 = "1744vaqkczpwncfy960j2hxrbjl1q01csm84jpd9dajbdr2yy3zw"; + libName = "hermit_abi"; + authors = [ + "Stefan Lankes" + ]; + features = { + "alloc" = [ "dep:alloc" ]; + "core" = [ "dep:core" ]; + "rustc-dep-of-std" = [ "core" "alloc" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "hex" = rec { + crateName = "hex"; + version = "0.4.3"; + edition = "2018"; + sha256 = "0w1a4davm1lgzpamwnba907aysmlrnygbqmfis2mqjx5m552a93z"; + authors = [ + "KokaKiwi " + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "hkdf" = rec { + crateName = "hkdf"; + version = "0.12.4"; + edition = "2018"; + sha256 = "1xxxzcarz151p1b858yn5skmhyrvn8fs4ivx5km3i1kjmnr8wpvv"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "hmac"; + packageId = "hmac"; + } + ]; + features = { + "std" = [ "hmac/std" ]; + }; + }; + "hmac" = rec { + crateName = "hmac"; + version = "0.12.1"; + edition = "2018"; + sha256 = "0pmbr069sfg76z7wsssfk5ddcqd9ncp79fyz6zcm6yn115yc6jbc"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "digest"; + packageId = "digest"; + features = [ "mac" ]; + } + ]; + devDependencies = [ + { + name = "digest"; + packageId = "digest"; + features = [ "dev" ]; + } + ]; + features = { + "std" = [ "digest/std" ]; + }; + resolvedDefaultFeatures = [ "reset" ]; + }; + "home" = rec { + crateName = "home"; + version = "0.5.12"; + edition = "2024"; + sha256 = "13bjyzgx6q9srnfvl43dvmhn93qc8mh5w7cylk2g13sj3i3pyqnc"; + authors = [ + "Brian Anderson " + ]; + dependencies = [ + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_UI_Shell" "Win32_System_Com" ]; + } + ]; + + }; + "hostname" = rec { + crateName = "hostname"; + version = "0.4.2"; + edition = "2021"; + sha256 = "1g8cfg0a1v8y5a0zkncbns8hh24amjgskl39cc583wxfawsslyk1"; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ((target."unix" or false) || ("redox" == target."os" or null)); + } + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + target = { target, features }: ("windows" == target."os" or null); + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "http 0.2.12" = rec { + crateName = "http"; + version = "0.2.12"; + edition = "2018"; + sha256 = "1w81s4bcbmcj9bjp7mllm8jlz6b31wzvirz8bgpzbqkpwmbvn730"; + authors = [ + "Alex Crichton " + "Carl Lerche " + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "itoa"; + packageId = "itoa"; + } + ]; + + }; + "http 1.4.0" = rec { + crateName = "http"; + version = "1.4.0"; + edition = "2021"; + sha256 = "06iind4cwsj1d6q8c2xgq8i2wka4ps74kmws24gsi1bzdlw2mfp3"; + authors = [ + "Alex Crichton " + "Carl Lerche " + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "itoa"; + packageId = "itoa"; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "http-body 0.4.6" = rec { + crateName = "http-body"; + version = "0.4.6"; + edition = "2018"; + sha256 = "1lmyjfk6bqk6k9gkn1dxq770sb78pqbqshga241hr5p995bb5skw"; + libName = "http_body"; + authors = [ + "Carl Lerche " + "Lucio Franco " + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "http"; + packageId = "http 0.2.12"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + + }; + "http-body 1.0.1" = rec { + crateName = "http-body"; + version = "1.0.1"; + edition = "2018"; + sha256 = "111ir5k2b9ihz5nr9cz7cwm7fnydca7dx4hc7vr16scfzghxrzhy"; + libName = "http_body"; + authors = [ + "Carl Lerche " + "Lucio Franco " + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + ]; + + }; + "http-body-util" = rec { + crateName = "http-body-util"; + version = "0.1.3"; + edition = "2018"; + sha256 = "0jm6jv4gxsnlsi1kzdyffjrj8cfr3zninnxpw73mvkxy4qzdj8dh"; + libName = "http_body_util"; + authors = [ + "Carl Lerche " + "Lucio Franco " + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + features = { + "channel" = [ "dep:tokio" ]; + "full" = [ "channel" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "httparse" = rec { + crateName = "httparse"; + version = "1.10.1"; + edition = "2018"; + sha256 = "11ycd554bw2dkgw0q61xsa7a4jn1wb1xbfacmf3dbwsikvkkvgvd"; + authors = [ + "Sean McArthur " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "httpdate" = rec { + crateName = "httpdate"; + version = "1.0.3"; + edition = "2021"; + sha256 = "1aa9rd2sac0zhjqh24c9xvir96g188zldkx0hr6dnnlx5904cfyz"; + authors = [ + "Pyfisch " + ]; + + }; + "human-repr" = rec { + crateName = "human-repr"; + version = "1.1.0"; + edition = "2021"; + sha256 = "1wfzxwp10chg8244fx8yhh8bd9cp3jazi4rnb6pkqlb1ay57g2zm"; + libName = "human_repr"; + authors = [ + "Rogério Sampaio de Almeida " + ]; + features = { + "iec" = [ "1024" ]; + "serde" = [ "dep:serde" ]; + }; + }; + "human_format" = rec { + crateName = "human_format"; + version = "1.2.1"; + edition = "2024"; + sha256 = "0jv24az0hb269iar8gk9sbdpfmbyn5csjfnblfwgdg752qzrbv7a"; + authors = [ + "Bob Chatman " + ]; + features = { + }; + }; + "humantime" = rec { + crateName = "humantime"; + version = "2.3.0"; + edition = "2021"; + sha256 = "092lpipp32ayz4kyyn4k3vz59j9blng36wprm5by0g2ykqr14nqk"; + features = { + }; + }; + "hyper 0.14.32" = rec { + crateName = "hyper"; + version = "0.14.32"; + edition = "2018"; + sha256 = "1rvcb0smz8q1i0y6p7rwxr02x5sclfg2hhxf3g0774zczn0cgps1"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-channel"; + packageId = "futures-channel"; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + } + { + name = "h2"; + packageId = "h2 0.3.27"; + optional = true; + } + { + name = "http"; + packageId = "http 0.2.12"; + } + { + name = "http-body"; + packageId = "http-body 0.4.6"; + } + { + name = "httparse"; + packageId = "httparse"; + } + { + name = "httpdate"; + packageId = "httpdate"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "socket2"; + packageId = "socket2 0.5.10"; + optional = true; + features = [ "all" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" ]; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "want"; + packageId = "want"; + } + ]; + devDependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "fs" "macros" "io-std" "io-util" "rt" "rt-multi-thread" "sync" "time" "test-util" ]; + } + ]; + features = { + "ffi" = [ "libc" ]; + "full" = [ "client" "http1" "http2" "server" "stream" "runtime" ]; + "h2" = [ "dep:h2" ]; + "http2" = [ "h2" ]; + "libc" = [ "dep:libc" ]; + "runtime" = [ "tcp" "tokio/rt" "tokio/time" ]; + "socket2" = [ "dep:socket2" ]; + "tcp" = [ "socket2" "tokio/net" "tokio/rt" "tokio/time" ]; + }; + resolvedDefaultFeatures = [ "client" "h2" "http1" "http2" "runtime" "socket2" "tcp" ]; + }; + "hyper 1.8.1" = rec { + crateName = "hyper"; + version = "1.8.1"; + edition = "2021"; + sha256 = "04cxr8j5y86bhxxlyqb8xkxjskpajk7cxwfzzk4v3my3a3rd9cia"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "atomic-waker"; + packageId = "atomic-waker"; + optional = true; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-channel"; + packageId = "futures-channel"; + optional = true; + } + { + name = "futures-core"; + packageId = "futures-core"; + optional = true; + } + { + name = "h2"; + packageId = "h2 0.4.13"; + optional = true; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "httparse"; + packageId = "httparse"; + optional = true; + } + { + name = "httpdate"; + packageId = "httpdate"; + optional = true; + } + { + name = "itoa"; + packageId = "itoa"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + optional = true; + } + { + name = "pin-utils"; + packageId = "pin-utils"; + optional = true; + } + { + name = "smallvec"; + packageId = "smallvec"; + optional = true; + features = [ "const_generics" "const_new" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" ]; + } + { + name = "want"; + packageId = "want"; + optional = true; + } + ]; + devDependencies = [ + { + name = "futures-channel"; + packageId = "futures-channel"; + features = [ "sink" ]; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "fs" "macros" "net" "io-std" "io-util" "rt" "rt-multi-thread" "sync" "time" "test-util" ]; + } + ]; + features = { + "client" = [ "dep:want" "dep:pin-project-lite" "dep:smallvec" ]; + "ffi" = [ "dep:http-body-util" "dep:futures-util" ]; + "full" = [ "client" "http1" "http2" "server" ]; + "http1" = [ "dep:atomic-waker" "dep:futures-channel" "dep:futures-core" "dep:httparse" "dep:itoa" "dep:pin-utils" ]; + "http2" = [ "dep:futures-channel" "dep:futures-core" "dep:h2" ]; + "server" = [ "dep:httpdate" "dep:pin-project-lite" "dep:smallvec" ]; + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "client" "default" "full" "http1" "http2" "server" ]; + }; + "hyper-rustls 0.24.2" = rec { + crateName = "hyper-rustls"; + version = "0.24.2"; + edition = "2021"; + sha256 = "1475j4a2nczz4aajzzsq3hpwg1zacmzbqg393a14j80ff8izsgpc"; + libName = "hyper_rustls"; + dependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http 0.2.12"; + } + { + name = "hyper"; + packageId = "hyper 0.14.32"; + usesDefaultFeatures = false; + features = [ "client" ]; + } + { + name = "rustls"; + packageId = "rustls 0.21.12"; + usesDefaultFeatures = false; + } + { + name = "tokio"; + packageId = "tokio"; + } + { + name = "tokio-rustls"; + packageId = "tokio-rustls 0.24.1"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "hyper"; + packageId = "hyper 0.14.32"; + features = [ "full" ]; + } + { + name = "rustls"; + packageId = "rustls 0.21.12"; + usesDefaultFeatures = false; + features = [ "tls12" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-std" "macros" "net" "rt-multi-thread" ]; + } + ]; + features = { + "acceptor" = [ "hyper/server" "tokio-runtime" ]; + "default" = [ "native-tokio" "http1" "tls12" "logging" "acceptor" ]; + "http1" = [ "hyper/http1" ]; + "http2" = [ "hyper/http2" ]; + "log" = [ "dep:log" ]; + "logging" = [ "log" "tokio-rustls/logging" "rustls/logging" ]; + "native-tokio" = [ "tokio-runtime" "rustls-native-certs" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "tls12" = [ "tokio-rustls/tls12" "rustls/tls12" ]; + "tokio-runtime" = [ "hyper/runtime" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + "webpki-tokio" = [ "tokio-runtime" "webpki-roots" ]; + }; + }; + "hyper-rustls 0.27.7" = rec { + crateName = "hyper-rustls"; + version = "0.27.7"; + edition = "2021"; + sha256 = "0n6g8998szbzhnvcs1b7ibn745grxiqmlpg53xz206v826v3xjg3"; + libName = "hyper_rustls"; + dependencies = [ + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + usesDefaultFeatures = false; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + usesDefaultFeatures = false; + features = [ "client-legacy" "tokio" ]; + } + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + usesDefaultFeatures = false; + } + { + name = "rustls-native-certs"; + packageId = "rustls-native-certs"; + optional = true; + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + rename = "pki-types"; + } + { + name = "tokio"; + packageId = "tokio"; + } + { + name = "tokio-rustls"; + packageId = "tokio-rustls 0.26.4"; + usesDefaultFeatures = false; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "webpki-roots"; + packageId = "webpki-roots 1.0.5"; + optional = true; + } + ]; + devDependencies = [ + { + name = "hyper-util"; + packageId = "hyper-util"; + usesDefaultFeatures = false; + features = [ "server-auto" ]; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + usesDefaultFeatures = false; + features = [ "tls12" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-std" "macros" "net" "rt-multi-thread" ]; + } + ]; + features = { + "aws-lc-rs" = [ "rustls/aws_lc_rs" ]; + "default" = [ "native-tokio" "http1" "tls12" "logging" "aws-lc-rs" ]; + "fips" = [ "aws-lc-rs" "rustls/fips" ]; + "http1" = [ "hyper-util/http1" ]; + "http2" = [ "hyper-util/http2" ]; + "log" = [ "dep:log" ]; + "logging" = [ "log" "tokio-rustls/logging" "rustls/logging" ]; + "native-tokio" = [ "rustls-native-certs" ]; + "ring" = [ "rustls/ring" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-platform-verifier" = [ "dep:rustls-platform-verifier" ]; + "tls12" = [ "tokio-rustls/tls12" "rustls/tls12" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + "webpki-tokio" = [ "webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "aws-lc-rs" "http1" "http2" "log" "logging" "native-tokio" "ring" "rustls-native-certs" "tls12" "webpki-roots" "webpki-tokio" ]; + }; + "hyper-timeout" = rec { + crateName = "hyper-timeout"; + version = "0.5.2"; + edition = "2018"; + sha256 = "1c431l5ckr698248yd6bnsmizjy2m1da02cbpmsnmkpvpxkdb41b"; + libName = "hyper_timeout"; + authors = [ + "Herman J. Radtke III " + ]; + dependencies = [ + { + name = "hyper"; + packageId = "hyper 1.8.1"; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "client-legacy" "http1" ]; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "tokio"; + packageId = "tokio"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + ]; + devDependencies = [ + { + name = "hyper"; + packageId = "hyper 1.8.1"; + features = [ "http1" ]; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "client-legacy" "http1" "server" "server-graceful" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-std" "io-util" "macros" ]; + } + ]; + + }; + "hyper-tls" = rec { + crateName = "hyper-tls"; + version = "0.6.0"; + edition = "2018"; + sha256 = "1q36x2yps6hhvxq5r7mc8ph9zz6xlb573gx0x3yskb0fi736y83h"; + libName = "hyper_tls"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "client-legacy" "tokio" ]; + } + { + name = "native-tls"; + packageId = "native-tls"; + } + { + name = "tokio"; + packageId = "tokio"; + } + { + name = "tokio-native-tls"; + packageId = "tokio-native-tls"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + ]; + devDependencies = [ + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "http1" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-std" "macros" "io-util" ]; + } + ]; + features = { + "alpn" = [ "native-tls/alpn" ]; + "vendored" = [ "native-tls/vendored" ]; + }; + }; + "hyper-util" = rec { + crateName = "hyper-util"; + version = "0.1.19"; + edition = "2021"; + sha256 = "0pyzc8378baf996l5ycl4y0s3skhxc4z4vkah9mvff3r1vb0ay3j"; + libName = "hyper_util"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + optional = true; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-channel"; + packageId = "futures-channel"; + optional = true; + } + { + name = "futures-core"; + packageId = "futures-core"; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + } + { + name = "ipnet"; + packageId = "ipnet"; + optional = true; + } + { + name = "libc"; + packageId = "libc"; + optional = true; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "socket2"; + packageId = "socket2 0.6.1"; + optional = true; + features = [ "all" ]; + } + { + name = "system-configuration"; + packageId = "system-configuration"; + optional = true; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "tower-service"; + packageId = "tower-service"; + optional = true; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "windows-registry"; + packageId = "windows-registry"; + optional = true; + target = { target, features }: (target."windows" or false); + } + ]; + devDependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + features = [ "full" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "test-util" "signal" ]; + } + ]; + features = { + "client" = [ "hyper/client" "tokio/net" "dep:tracing" "dep:futures-channel" "dep:tower-service" ]; + "client-legacy" = [ "client" "dep:socket2" "tokio/sync" "dep:libc" "dep:futures-util" ]; + "client-pool" = [ "client" "dep:futures-util" "dep:tower-layer" ]; + "client-proxy" = [ "client" "dep:base64" "dep:ipnet" "dep:percent-encoding" ]; + "client-proxy-system" = [ "dep:system-configuration" "dep:windows-registry" ]; + "full" = [ "client" "client-legacy" "client-pool" "client-proxy" "client-proxy-system" "server" "server-auto" "server-graceful" "service" "http1" "http2" "tokio" "tracing" ]; + "http1" = [ "hyper/http1" ]; + "http2" = [ "hyper/http2" ]; + "server" = [ "hyper/server" ]; + "server-auto" = [ "server" "http1" "http2" ]; + "server-graceful" = [ "server" "tokio/sync" ]; + "service" = [ "dep:tower-service" ]; + "tokio" = [ "dep:tokio" "tokio/rt" "tokio/time" ]; + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "client" "client-legacy" "client-proxy" "client-proxy-system" "default" "http1" "http2" "server" "server-auto" "service" "tokio" ]; + }; + "hyperlocal" = rec { + crateName = "hyperlocal"; + version = "0.9.1"; + edition = "2021"; + sha256 = "1iy8rhsap5iyigj6s86nk449zl5bahjycy2mswy6nlllp7imqv4q"; + authors = [ + "softprops " + ]; + dependencies = [ + { + name = "hex"; + packageId = "hex"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + optional = true; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "net" ]; + } + { + name = "tower-service"; + packageId = "tower-service"; + optional = true; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-std" "io-util" "macros" "rt-multi-thread" ]; + } + ]; + features = { + "client" = [ "http-body-util" "hyper/client" "hyper/http1" "hyper-util/client-legacy" "hyper-util/http1" "hyper-util/tokio" "tower-service" ]; + "default" = [ "client" "server" ]; + "http-body-util" = [ "dep:http-body-util" ]; + "hyper-util" = [ "dep:hyper-util" ]; + "server" = [ "hyper/http1" "hyper/server" "hyper-util/tokio" ]; + "tower-service" = [ "dep:tower-service" ]; + }; + resolvedDefaultFeatures = [ "client" "default" "http-body-util" "hyper-util" "server" "tower-service" ]; + }; + "iana-time-zone" = rec { + crateName = "iana-time-zone"; + version = "0.1.64"; + edition = "2021"; + sha256 = "1yz980fmhaq9bdkasz35z63az37ci6kzzfhya83kgdqba61pzr9k"; + libName = "iana_time_zone"; + authors = [ + "Andrew Straw " + "René Kijewski " + "Ryan Lopopolo " + ]; + dependencies = [ + { + name = "android_system_properties"; + packageId = "android_system_properties"; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + target = { target, features }: ("apple" == target."vendor" or null); + } + { + name = "iana-time-zone-haiku"; + packageId = "iana-time-zone-haiku"; + target = { target, features }: ("haiku" == target."os" or null); + } + { + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); + } + { + name = "log"; + packageId = "log"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); + } + { + name = "windows-core"; + packageId = "windows-core 0.61.2"; + target = { target, features }: ("windows" == target."os" or null); + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "fallback" ]; + }; + "iana-time-zone-haiku" = rec { + crateName = "iana-time-zone-haiku"; + version = "0.1.2"; + edition = "2018"; + sha256 = "17r6jmj31chn7xs9698r122mapq85mfnv98bb4pg6spm0si2f67k"; + libName = "iana_time_zone_haiku"; + authors = [ + "René Kijewski " + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + } + ]; + + }; + "icu_collections" = rec { + crateName = "icu_collections"; + version = "2.1.1"; + edition = "2021"; + sha256 = "0hsblchsdl64q21qwrs4hvc2672jrf466zivbj1bwyv606bn8ssc"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "potential_utf"; + packageId = "potential_utf"; + usesDefaultFeatures = false; + features = [ "zerovec" ]; + } + { + name = "yoke"; + packageId = "yoke"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerovec"; + packageId = "zerovec"; + usesDefaultFeatures = false; + features = [ "derive" "yoke" ]; + } + ]; + features = { + "alloc" = [ "serde?/alloc" "zerovec/alloc" ]; + "databake" = [ "dep:databake" "zerovec/databake" ]; + "serde" = [ "dep:serde" "zerovec/serde" "potential_utf/serde" "alloc" ]; + }; + }; + "icu_locale_core" = rec { + crateName = "icu_locale_core"; + version = "2.1.1"; + edition = "2021"; + sha256 = "1djvdc2f5ylmp1ymzv4gcnmq1s4hqfim9nxlcm173lsd01hpifpd"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "litemap"; + packageId = "litemap"; + usesDefaultFeatures = false; + } + { + name = "tinystr"; + packageId = "tinystr"; + usesDefaultFeatures = false; + } + { + name = "writeable"; + packageId = "writeable"; + usesDefaultFeatures = false; + } + { + name = "zerovec"; + packageId = "zerovec"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "litemap/alloc" "tinystr/alloc" "writeable/alloc" "serde?/alloc" ]; + "databake" = [ "dep:databake" "alloc" ]; + "serde" = [ "dep:serde" "tinystr/serde" ]; + "zerovec" = [ "dep:zerovec" "tinystr/zerovec" ]; + }; + resolvedDefaultFeatures = [ "zerovec" ]; + }; + "icu_normalizer" = rec { + crateName = "icu_normalizer"; + version = "2.1.1"; + edition = "2021"; + sha256 = "16dmn5596la2qm0r3vih0bzjfi0vx9a20yqjha6r1y3vnql8hv2z"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "icu_collections"; + packageId = "icu_collections"; + usesDefaultFeatures = false; + } + { + name = "icu_normalizer_data"; + packageId = "icu_normalizer_data"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "icu_properties"; + packageId = "icu_properties"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "icu_provider"; + packageId = "icu_provider"; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + usesDefaultFeatures = false; + } + { + name = "zerovec"; + packageId = "zerovec"; + usesDefaultFeatures = false; + } + ]; + features = { + "compiled_data" = [ "dep:icu_normalizer_data" "icu_properties?/compiled_data" "icu_provider/baked" ]; + "datagen" = [ "serde" "dep:databake" "icu_properties" "icu_collections/databake" "zerovec/databake" "icu_properties?/datagen" "icu_provider/export" ]; + "default" = [ "compiled_data" "utf8_iter" "utf16_iter" ]; + "icu_properties" = [ "dep:icu_properties" ]; + "serde" = [ "dep:serde" "icu_collections/serde" "zerovec/serde" "icu_properties?/serde" "icu_provider/serde" ]; + "utf16_iter" = [ "dep:utf16_iter" "dep:write16" ]; + "utf8_iter" = [ "dep:utf8_iter" ]; + }; + resolvedDefaultFeatures = [ "compiled_data" ]; + }; + "icu_normalizer_data" = rec { + crateName = "icu_normalizer_data"; + version = "2.1.1"; + edition = "2021"; + sha256 = "02jnzizg6q75m41l6c13xc7nkc5q8yr1b728dcgfhpzw076wrvbs"; + authors = [ + "The ICU4X Project Developers" + ]; + + }; + "icu_properties" = rec { + crateName = "icu_properties"; + version = "2.1.2"; + edition = "2021"; + sha256 = "1v3lbmhhi7i6jgw51ikjb1p50qh5rb67grlkdnkc63l7zq1gq2q2"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "icu_collections"; + packageId = "icu_collections"; + usesDefaultFeatures = false; + } + { + name = "icu_locale_core"; + packageId = "icu_locale_core"; + usesDefaultFeatures = false; + features = [ "zerovec" ]; + } + { + name = "icu_properties_data"; + packageId = "icu_properties_data"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "icu_provider"; + packageId = "icu_provider"; + usesDefaultFeatures = false; + } + { + name = "zerotrie"; + packageId = "zerotrie"; + usesDefaultFeatures = false; + features = [ "yoke" "zerofrom" ]; + } + { + name = "zerovec"; + packageId = "zerovec"; + usesDefaultFeatures = false; + features = [ "derive" "yoke" ]; + } + ]; + features = { + "alloc" = [ "zerovec/alloc" "icu_collections/alloc" "serde?/alloc" ]; + "compiled_data" = [ "dep:icu_properties_data" "icu_provider/baked" ]; + "datagen" = [ "serde" "dep:databake" "zerovec/databake" "icu_collections/databake" "icu_locale_core/databake" "zerotrie/databake" "icu_provider/export" ]; + "default" = [ "compiled_data" ]; + "serde" = [ "dep:serde" "icu_locale_core/serde" "zerovec/serde" "icu_collections/serde" "icu_provider/serde" "zerotrie/serde" ]; + "unicode_bidi" = [ "dep:unicode-bidi" ]; + }; + resolvedDefaultFeatures = [ "compiled_data" ]; + }; + "icu_properties_data" = rec { + crateName = "icu_properties_data"; + version = "2.1.2"; + edition = "2021"; + sha256 = "1bvpkh939rgzrjfdb7hz47v4wijngk0snmcgrnpwc9fpz162jv31"; + authors = [ + "The ICU4X Project Developers" + ]; + + }; + "icu_provider" = rec { + crateName = "icu_provider"; + version = "2.1.1"; + edition = "2021"; + sha256 = "0576b7dizgyhpfa74kacv86y4g1p7v5ffd6c56kf1q82rvq2r5l5"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "icu_locale_core"; + packageId = "icu_locale_core"; + usesDefaultFeatures = false; + } + { + name = "writeable"; + packageId = "writeable"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "yoke"; + packageId = "yoke"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerotrie"; + packageId = "zerotrie"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zerovec"; + packageId = "zerovec"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "icu_locale_core/alloc" "serde?/alloc" "yoke/alloc" "zerofrom/alloc" "zerovec/alloc" "zerotrie?/alloc" "dep:stable_deref_trait" "dep:writeable" ]; + "baked" = [ "dep:zerotrie" "dep:writeable" ]; + "deserialize_bincode_1" = [ "serde" "dep:bincode" "std" ]; + "deserialize_json" = [ "serde" "dep:serde_json" ]; + "deserialize_postcard_1" = [ "serde" "dep:postcard" ]; + "export" = [ "serde" "dep:erased-serde" "dep:databake" "std" "sync" "dep:postcard" "zerovec/databake" ]; + "logging" = [ "dep:log" ]; + "serde" = [ "dep:serde" "yoke/serde" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "baked" ]; + }; + "ident_case" = rec { + crateName = "ident_case"; + version = "1.0.1"; + edition = "2015"; + sha256 = "0fac21q6pwns8gh1hz3nbq15j8fi441ncl6w4vlnd1cmc55kiq5r"; + authors = [ + "Ted Driggs " + ]; + + }; + "idna" = rec { + crateName = "idna"; + version = "1.1.0"; + edition = "2018"; + sha256 = "1pp4n7hppm480zcx411dsv9wfibai00wbpgnjj4qj0xa7kr7a21v"; + authors = [ + "The rust-url developers" + ]; + dependencies = [ + { + name = "idna_adapter"; + packageId = "idna_adapter"; + } + { + name = "smallvec"; + packageId = "smallvec"; + features = [ "const_generics" ]; + } + { + name = "utf8_iter"; + packageId = "utf8_iter"; + } + ]; + features = { + "compiled_data" = [ "idna_adapter/compiled_data" ]; + "default" = [ "std" "compiled_data" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "compiled_data" "std" ]; + }; + "idna_adapter" = rec { + crateName = "idna_adapter"; + version = "1.2.1"; + edition = "2021"; + sha256 = "0i0339pxig6mv786nkqcxnwqa87v4m94b2653f6k3aj0jmhfkjis"; + authors = [ + "The rust-url developers" + ]; + dependencies = [ + { + name = "icu_normalizer"; + packageId = "icu_normalizer"; + usesDefaultFeatures = false; + } + { + name = "icu_properties"; + packageId = "icu_properties"; + usesDefaultFeatures = false; + } + ]; + features = { + "compiled_data" = [ "icu_normalizer/compiled_data" "icu_properties/compiled_data" ]; + }; + resolvedDefaultFeatures = [ "compiled_data" ]; + }; + "imara-diff" = rec { + crateName = "imara-diff"; + version = "0.1.8"; + edition = "2021"; + sha256 = "1lmk5dpha2fhahrnsrgavxn1qz6ydp1w8jz8fpvlb28p89ylplqp"; + libName = "imara_diff"; + authors = [ + "pascalkuthe " + ]; + dependencies = [ + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + usesDefaultFeatures = false; + features = [ "default-hasher" "inline-more" ]; + } + ]; + features = { + "default" = [ "unified_diff" ]; + }; + resolvedDefaultFeatures = [ "default" "unified_diff" ]; + }; + "include_dir" = rec { + crateName = "include_dir"; + version = "0.7.4"; + edition = "2021"; + sha256 = "1pfh3g45z88kwq93skng0n6g3r7zkhq9ldqs9y8rvr7i11s12gcj"; + authors = [ + "Michael Bryan " + ]; + dependencies = [ + { + name = "include_dir_macros"; + packageId = "include_dir_macros"; + } + ]; + features = { + "glob" = [ "dep:glob" ]; + "metadata" = [ "include_dir_macros/metadata" ]; + "nightly" = [ "include_dir_macros/nightly" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "include_dir_macros" = rec { + crateName = "include_dir_macros"; + version = "0.7.4"; + edition = "2021"; + sha256 = "0x8smnf6knd86g69p19z5lpfsaqp8w0nx14kdpkz1m8bxnkqbavw"; + procMacro = true; + authors = [ + "Michael Bryan " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + ]; + features = { + }; + }; + "indenter" = rec { + crateName = "indenter"; + version = "0.3.4"; + edition = "2018"; + sha256 = "1maq7yl2px9y40f68c2g2gjsq93rabphzp5shinj8nsldplfckcn"; + authors = [ + "Jane Lusby " + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "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" ]; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + ]; + 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" ]; + }; + resolvedDefaultFeatures = [ "serde" "serde-1" "std" ]; + }; + "indexmap 2.13.0" = rec { + crateName = "indexmap"; + version = "2.13.0"; + edition = "2021"; + sha256 = "05qh5c4h2hrnyypphxpwflk45syqbzvqsvvyxg43mp576w2ff53p"; + dependencies = [ + { + name = "equivalent"; + packageId = "equivalent"; + usesDefaultFeatures = false; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.16.1"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: false; + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "borsh" = [ "dep:borsh" ]; + "default" = [ "std" ]; + "quickcheck" = [ "dep:quickcheck" ]; + "rayon" = [ "dep:rayon" ]; + "serde" = [ "dep:serde_core" "dep:serde" ]; + "sval" = [ "dep:sval" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" "std" ]; + }; + "indicatif" = rec { + crateName = "indicatif"; + version = "0.17.11"; + edition = "2021"; + sha256 = "0db2b2r79r9x8x4lysq1ci9xm13c0xg0sqn3z960yh2bk2430fqq"; + dependencies = [ + { + name = "console"; + packageId = "console 0.15.11"; + usesDefaultFeatures = false; + features = [ "ansi-parsing" ]; + } + { + name = "number_prefix"; + packageId = "number_prefix"; + } + { + name = "portable-atomic"; + packageId = "portable-atomic"; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.2.2"; + optional = true; + } + { + name = "vt100"; + packageId = "vt100"; + optional = true; + } + { + name = "web-time"; + packageId = "web-time"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + ]; + features = { + "default" = [ "unicode-width" "console/unicode-width" ]; + "futures" = [ "dep:futures-core" ]; + "improved_unicode" = [ "unicode-segmentation" "unicode-width" "console/unicode-width" ]; + "in_memory" = [ "vt100" ]; + "rayon" = [ "dep:rayon" ]; + "tokio" = [ "dep:tokio" ]; + "unicode-segmentation" = [ "dep:unicode-segmentation" ]; + "unicode-width" = [ "dep:unicode-width" ]; + "vt100" = [ "dep:vt100" ]; + }; + resolvedDefaultFeatures = [ "default" "in_memory" "unicode-width" "vt100" ]; + }; + "indoc" = rec { + crateName = "indoc"; + version = "2.0.7"; + edition = "2021"; + sha256 = "01np60qdq6lvgh8ww2caajn9j4dibx9n58rvzf7cya1jz69mrkvr"; + procMacro = true; + authors = [ + "David Tolnay " + ]; + buildDependencies = [ + { + name = "rustversion"; + packageId = "rustversion"; + } + ]; + devDependencies = [ + { + name = "rustversion"; + packageId = "rustversion"; + } + ]; + + }; + "inlinable_string" = rec { + crateName = "inlinable_string"; + version = "0.1.15"; + edition = "2018"; + sha256 = "1ysjci8yfvxgf51z0ny2nnwhxrclhmb3vbngin8v4bznhr3ybyn8"; + authors = [ + "Nick Fitzgerald " + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + }; + "inout" = rec { + crateName = "inout"; + version = "0.1.4"; + edition = "2021"; + sha256 = "008xfl1jn9rxsq19phnhbimccf4p64880jmnpg59wqi07kk117w7"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "generic-array"; + packageId = "generic-array"; + } + ]; + features = { + "block-padding" = [ "dep:block-padding" ]; + "std" = [ "block-padding/std" ]; + }; + }; + "inquire" = rec { + crateName = "inquire"; + version = "0.6.2"; + edition = "2018"; + sha256 = "0fw0cm81pncfp0qi12bcdlmvasczwbc2jq7gpyy9lp5ivqfpqgn3"; + authors = [ + "Mikael Mello " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 1.3.2"; + } + { + name = "crossterm"; + packageId = "crossterm 0.25.0"; + optional = true; + } + { + name = "dyn-clone"; + packageId = "dyn-clone"; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "newline-converter"; + packageId = "newline-converter"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "unicode-segmentation"; + packageId = "unicode-segmentation"; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.1.14"; + } + ]; + features = { + "chrono" = [ "dep:chrono" ]; + "console" = [ "dep:console" ]; + "crossterm" = [ "dep:crossterm" ]; + "date" = [ "chrono" ]; + "default" = [ "macros" "crossterm" ]; + "editor" = [ "tempfile" ]; + "tempfile" = [ "dep:tempfile" ]; + "termion" = [ "dep:termion" ]; + }; + resolvedDefaultFeatures = [ "crossterm" "default" "macros" ]; + }; + "io-close" = rec { + crateName = "io-close"; + version = "0.3.7"; + edition = "2018"; + sha256 = "1g4hldfn436rkrx3jlm4az1y5gdmkcixdlhkwy64yx06gx2czbcw"; + libName = "io_close"; + authors = [ + "wufz" + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "winapi"; + packageId = "winapi"; + target = { target, features }: (target."windows" or false); + features = [ "handleapi" "std" "winsock2" ]; + } + ]; + features = { + "os_pipe" = [ "dep:os_pipe" ]; + }; + }; + "iocraft" = rec { + crateName = "iocraft"; + version = "0.7.16"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/sandydoo/iocraft"; + rev = "17cc06c56e03435afe62275d4db99d472ffa8c8d"; + sha256 = "0fyn859gyz7fq0nil2j51kds9r12r952mb4skkkpa9nyq4zi671h"; + }; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "crossterm"; + packageId = "crossterm 0.28.1"; + features = [ "event-stream" ]; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "generational-box"; + packageId = "generational-box"; + } + { + name = "iocraft-macros"; + packageId = "iocraft-macros"; + } + { + name = "taffy"; + packageId = "taffy"; + usesDefaultFeatures = false; + features = [ "std" "flexbox" "taffy_tree" ]; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.1.14"; + } + ]; + + }; + "iocraft-macros" = rec { + crateName = "iocraft-macros"; + version = "0.2.3"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/sandydoo/iocraft"; + rev = "17cc06c56e03435afe62275d4db99d472ffa8c8d"; + sha256 = "0fyn859gyz7fq0nil2j51kds9r12r952mb4skkkpa9nyq4zi671h"; + }; + procMacro = true; + libName = "iocraft_macros"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "v4" ]; + } + ]; + + }; + "ipnet" = rec { + crateName = "ipnet"; + version = "2.11.0"; + edition = "2018"; + sha256 = "0c5i9sfi2asai28m8xp48k5gvwkqrg5ffpi767py6mzsrswv17s6"; + authors = [ + "Kris Price " + ]; + features = { + "default" = [ "std" ]; + "heapless" = [ "dep:heapless" ]; + "json" = [ "serde" "schemars" ]; + "schemars" = [ "dep:schemars" ]; + "ser_as_str" = [ "heapless" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "iri-string" = rec { + crateName = "iri-string"; + version = "0.7.10"; + edition = "2021"; + sha256 = "06kk3a5jz576p7vrpf7zz9jv3lrgcyp7pczcblcxdnryg3q3h4y9"; + libName = "iri_string"; + authors = [ + "YOSHIOKA Takuma " + ]; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "serde?/alloc" ]; + "default" = [ "std" ]; + "memchr" = [ "dep:memchr" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" "memchr?/std" "serde?/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "is-terminal" = rec { + crateName = "is-terminal"; + version = "0.4.17"; + edition = "2018"; + sha256 = "0ilfr9n31m0k6fsm3gvfrqaa62kbzkjqpwcd9mc46klfig1w2h1n"; + libName = "is_terminal"; + authors = [ + "softprops " + "Dan Gohman " + ]; + dependencies = [ + { + name = "hermit-abi"; + packageId = "hermit-abi"; + target = { target, features }: ("hermit" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ((target."unix" or false) || ("wasi" == target."os" or null)); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Storage_FileSystem" "Win32_System_Console" ]; + } + ]; + devDependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ((target."unix" or false) || ("wasi" == target."os" or null)); + } + ]; + + }; + "is_ci" = rec { + crateName = "is_ci"; + version = "1.2.0"; + edition = "2018"; + crateBin = []; + sha256 = "0ifwvxmrsj4r29agfzr71bjq6y1bihkx38fbzafq5vl0jn1wjmbn"; + authors = [ + "Kat Marchán " + ]; + + }; + "is_terminal_polyfill" = rec { + crateName = "is_terminal_polyfill"; + version = "1.70.2"; + edition = "2021"; + sha256 = "15anlc47sbz0jfs9q8fhwf0h3vs2w4imc030shdnq54sny5i7jx6"; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "itertools 0.10.5" = rec { + crateName = "itertools"; + version = "0.10.5"; + edition = "2018"; + sha256 = "0ww45h7nxx5kj6z2y6chlskxd1igvs4j507anr6dzg99x1h25zdh"; + 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" ]; + }; + "itertools 0.13.0" = rec { + crateName = "itertools"; + version = "0.13.0"; + edition = "2018"; + sha256 = "11hiy3qzl643zcigknclh446qb9zlg4dpdzfkjaa9q9fqpgyfgj1"; + 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" ]; + }; + "itertools 0.14.0" = rec { + crateName = "itertools"; + version = "0.14.0"; + edition = "2018"; + sha256 = "118j6l1vs2mx65dqhwyssbrxpawa90886m3mzafdvyip41w2q69b"; + 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.17"; + edition = "2021"; + sha256 = "1lh93xydrdn1g9x547bd05g0d3hra7pd1k4jfd2z1pl1h5hwdv4j"; + authors = [ + "David Tolnay " + ]; + features = { + "no-panic" = [ "dep:no-panic" ]; + }; + }; + "jiff" = rec { + crateName = "jiff"; + version = "0.2.18"; + edition = "2021"; + sha256 = "0l6g3vkqa7imd3nsvizmb648jn0gcadiydh3zq4rjvcxqjj8szp6"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "jiff-static"; + packageId = "jiff-static"; + optional = true; + } + { + name = "jiff-static"; + packageId = "jiff-static"; + target = { target, features }: false; + } + { + name = "jiff-tzdb-platform"; + packageId = "jiff-tzdb-platform"; + optional = true; + target = { target, features }: ((target."windows" or false) || (builtins.elem "wasm" target."family")); + } + { + name = "log"; + packageId = "log"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "portable-atomic"; + packageId = "portable-atomic"; + usesDefaultFeatures = false; + target = { target, features }: (!("ptr" == target."has_atomic" or null)); + } + { + name = "portable-atomic-util"; + packageId = "portable-atomic-util"; + usesDefaultFeatures = false; + target = { target, features }: (!("ptr" == target."has_atomic" or null)); + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Time" ]; + } + ]; + devDependencies = [ + { + name = "log"; + packageId = "log"; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" "portable-atomic-util/alloc" ]; + "default" = [ "std" "tz-system" "tz-fat" "tzdb-bundle-platform" "tzdb-zoneinfo" "tzdb-concatenated" "perf-inline" ]; + "js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; + "logging" = [ "dep:log" ]; + "serde" = [ "dep:serde_core" ]; + "static" = [ "static-tz" "jiff-static?/tzdb" ]; + "static-tz" = [ "dep:jiff-static" ]; + "std" = [ "alloc" "log?/std" "serde_core?/std" ]; + "tz-fat" = [ "jiff-static?/tz-fat" ]; + "tz-system" = [ "std" "dep:windows-sys" ]; + "tzdb-bundle-always" = [ "dep:jiff-tzdb" "alloc" ]; + "tzdb-bundle-platform" = [ "dep:jiff-tzdb-platform" "alloc" ]; + "tzdb-concatenated" = [ "std" ]; + "tzdb-zoneinfo" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "perf-inline" "std" "tz-fat" "tz-system" "tzdb-bundle-platform" "tzdb-concatenated" "tzdb-zoneinfo" ]; + }; + "jiff-static" = rec { + crateName = "jiff-static"; + version = "0.2.18"; + edition = "2021"; + sha256 = "0y3fks93ij3frb1jnpzi68b9kssm3rvwpmkgdjlakv4py7klxj70"; + procMacro = true; + libName = "jiff_static"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + features = { + "tzdb" = [ "dep:jiff-tzdb" ]; + }; + resolvedDefaultFeatures = [ "default" "tz-fat" ]; + }; + "jiff-tzdb" = rec { + crateName = "jiff-tzdb"; + version = "0.1.5"; + edition = "2021"; + sha256 = "1hm5xn3q092zac6apjy4492ddid473mwa0d64z5f5f95yyzix5v8"; + libName = "jiff_tzdb"; + libPath = "lib.rs"; + authors = [ + "Andrew Gallant " + ]; + + }; + "jiff-tzdb-platform" = rec { + crateName = "jiff-tzdb-platform"; + version = "0.1.3"; + edition = "2021"; + sha256 = "1s1ja692wyhbv7f60mc0x90h7kn1pv65xkqi2y4imarbmilmlnl7"; + libName = "jiff_tzdb_platform"; + libPath = "lib.rs"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "jiff-tzdb"; + packageId = "jiff-tzdb"; + } + ]; + + }; + "jni" = rec { + crateName = "jni"; + version = "0.21.1"; + edition = "2018"; + sha256 = "15wczfkr2r45slsljby12ymf2hij8wi5b104ghck9byjnwmsm1qs"; + authors = [ + "Josh Chase " + ]; + dependencies = [ + { + name = "cesu8"; + packageId = "cesu8"; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "combine"; + packageId = "combine"; + } + { + name = "jni-sys"; + packageId = "jni-sys"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.45.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Globalization" ]; + } + ]; + buildDependencies = [ + { + name = "walkdir"; + packageId = "walkdir"; + } + ]; + features = { + "invocation" = [ "java-locator" "libloading" ]; + "java-locator" = [ "dep:java-locator" ]; + "libloading" = [ "dep:libloading" ]; + }; + }; + "jni-sys" = rec { + crateName = "jni-sys"; + version = "0.3.0"; + edition = "2015"; + sha256 = "0c01zb9ygvwg9wdx2fii2d39myzprnpqqhy7yizxvjqp5p04pbwf"; + libName = "jni_sys"; + authors = [ + "Steven Fackler " + ]; + + }; + "jobserver" = rec { + crateName = "jobserver"; + version = "0.1.34"; + edition = "2021"; + sha256 = "0cwx0fllqzdycqn4d6nb277qx5qwnmjdxdl0lxkkwssx77j3vyws"; + authors = [ + "Alex Crichton " + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + target = { target, features }: (target."windows" or false); + features = [ "std" ]; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + ]; + + }; + "js-sys" = rec { + crateName = "js-sys"; + version = "0.3.85"; + edition = "2021"; + sha256 = "1csmb42fxjmzjdgc790bgw77sf1cb9ydm5rdsnh5qj4miszjx54c"; + libName = "js_sys"; + authors = [ + "The wasm-bindgen Developers" + ]; + dependencies = [ + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "wasm-bindgen/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "json-subscriber" = rec { + crateName = "json-subscriber"; + version = "0.2.6"; + edition = "2021"; + sha256 = "0cqw4b3937y7vrwjwva1zmsd4fmagds5042fk106a1lf59pir29r"; + libName = "json_subscriber"; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + usesDefaultFeatures = false; + } + { + name = "tracing-serde"; + packageId = "tracing-serde"; + usesDefaultFeatures = false; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + usesDefaultFeatures = false; + features = [ "std" "registry" "fmt" ]; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "v4" ]; + } + ]; + devDependencies = [ + { + name = "tracing"; + packageId = "tracing"; + features = [ "attributes" ]; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "env-filter" "json" ]; + } + ]; + features = { + "__private_docs" = [ "tracing-subscriber/time" "tracing-subscriber/local-time" ]; + "async-trait" = [ "dep:async-trait" ]; + "env-filter" = [ "tracing-subscriber/env-filter" ]; + "lazy_static" = [ "dep:lazy_static" ]; + "opentelemetry" = [ "dep:tracing-opentelemetry-0-25" "dep:opentelemetry-0-24" ]; + "opentelemetry-0-29" = [ "dep:opentelemetry-0-29" ]; + "opentelemetry-0-30" = [ "dep:opentelemetry-0-30" ]; + "tracing-log" = [ "tracing-subscriber/tracing-log" "dep:tracing-log" ]; + "tracing-opentelemetry-0-28" = [ "dep:tracing-opentelemetry-0-28" "dep:opentelemetry-0-27" ]; + "tracing-opentelemetry-0-29" = [ "dep:tracing-opentelemetry-0-29" "dep:opentelemetry-0-28" ]; + "tracing-opentelemetry-0-30" = [ "dep:tracing-opentelemetry-0-30" "dep:opentelemetry-0-29" ]; + "tracing-opentelemetry-0-31" = [ "dep:tracing-opentelemetry-0-31" "dep:opentelemetry-0-30" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "jsonwebtoken" = rec { + crateName = "jsonwebtoken"; + version = "9.3.1"; + edition = "2021"; + sha256 = "1plx2qf8mpg96bpsa1aalfsf4jvgwcnl6i37x7masysk91xcr1ss"; + authors = [ + "Vincent Prouillet " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "pem"; + packageId = "pem"; + optional = true; + } + { + name = "ring"; + packageId = "ring"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" ]; + } + { + name = "ring"; + packageId = "ring"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "std" "wasm32_unknown_unknown_js" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "simple_asn1"; + packageId = "simple_asn1"; + optional = true; + } + ]; + features = { + "default" = [ "use_pem" ]; + "pem" = [ "dep:pem" ]; + "simple_asn1" = [ "dep:simple_asn1" ]; + "use_pem" = [ "pem" "simple_asn1" ]; + }; + resolvedDefaultFeatures = [ "default" "pem" "simple_asn1" "use_pem" ]; + }; + "keyring" = rec { + crateName = "keyring"; + version = "3.6.3"; + edition = "2021"; + sha256 = "072mzc4rk2qffdlc8c5s9h38c6fifyr9xxmsix599ra4y2pw7g7f"; + authors = [ + "Walther Chen " + "Daniel Brotsky " + ]; + dependencies = [ + { + name = "byteorder"; + packageId = "byteorder"; + optional = true; + target = { target, features }: ("windows" == target."os" or null); + } + { + name = "dbus-secret-service"; + packageId = "dbus-secret-service"; + optional = true; + target = { target, features }: ("freebsd" == target."os" or null); + } + { + name = "dbus-secret-service"; + packageId = "dbus-secret-service"; + optional = true; + target = { target, features }: ("linux" == target."os" or null); + } + { + name = "dbus-secret-service"; + packageId = "dbus-secret-service"; + optional = true; + target = { target, features }: ("openbsd" == target."os" or null); + } + { + name = "log"; + packageId = "log"; + } + { + name = "security-framework"; + packageId = "security-framework 2.11.1"; + optional = true; + target = { target, features }: ("ios" == target."os" or null); + } + { + name = "security-framework"; + packageId = "security-framework 3.5.1"; + optional = true; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.60.2"; + optional = true; + target = { target, features }: ("windows" == target."os" or null); + features = [ "Win32_Foundation" "Win32_Security_Credentials" ]; + } + { + name = "zeroize"; + packageId = "zeroize"; + target = { target, features }: ("windows" == target."os" or null); + } + ]; + features = { + "apple-native" = [ "dep:security-framework" ]; + "async-io" = [ "zbus?/async-io" ]; + "async-secret-service" = [ "dep:secret-service" "dep:zbus" ]; + "crypto-openssl" = [ "dbus-secret-service?/crypto-openssl" "secret-service?/crypto-openssl" ]; + "crypto-rust" = [ "dbus-secret-service?/crypto-rust" "secret-service?/crypto-rust" ]; + "linux-native" = [ "dep:linux-keyutils" ]; + "linux-native-async-persistent" = [ "linux-native" "async-secret-service" ]; + "linux-native-sync-persistent" = [ "linux-native" "sync-secret-service" ]; + "openssl" = [ "dep:openssl" ]; + "sync-secret-service" = [ "dep:dbus-secret-service" ]; + "tokio" = [ "zbus?/tokio" ]; + "vendored" = [ "dbus-secret-service?/vendored" "openssl?/vendored" ]; + "windows-native" = [ "dep:windows-sys" "dep:byteorder" ]; + }; + resolvedDefaultFeatures = [ "apple-native" "sync-secret-service" "windows-native" ]; + }; + "kstring" = rec { + crateName = "kstring"; + version = "2.0.2"; + edition = "2021"; + sha256 = "1lfvqlqkg2x23nglznb7ah6fk3vv3y5i759h5l2151ami98gk2sm"; + authors = [ + "Ed Page " + ]; + dependencies = [ + { + name = "static_assertions"; + packageId = "static_assertions"; + } + ]; + features = { + "default" = [ "std" "unsafe" ]; + "document-features" = [ "dep:document-features" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" "unsafe" ]; + }; + "lazy-regex" = rec { + crateName = "lazy-regex"; + version = "3.5.1"; + edition = "2021"; + sha256 = "01zrq4jw849j1nwjaf11j7b1am5bsabxrhy30ppcir5daxl3phf5"; + libName = "lazy_regex"; + authors = [ + "Canop " + ]; + dependencies = [ + { + name = "lazy-regex-proc_macros"; + packageId = "lazy-regex-proc_macros"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "regex"; + packageId = "regex"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "regex/default" ]; + "lite" = [ "regex-lite" ]; + "perf" = [ "regex/perf" ]; + "perf-cache" = [ "regex/perf-cache" ]; + "perf-dfa" = [ "regex/perf-dfa" ]; + "perf-inline" = [ "regex/perf-inline" ]; + "perf-literal" = [ "regex/perf-literal" ]; + "regex" = [ "dep:regex" ]; + "regex-lite" = [ "dep:regex-lite" ]; + "std" = [ "regex/std" ]; + "unicode" = [ "regex/unicode" ]; + "unicode-age" = [ "regex/unicode-age" ]; + "unicode-bool" = [ "regex/unicode-bool" ]; + "unicode-case" = [ "regex/unicode-case" ]; + "unicode-gencat" = [ "regex/unicode-gencat" ]; + "unicode-perl" = [ "regex/unicode-perl" ]; + "unicode-script" = [ "regex/unicode-script" ]; + "unicode-segment" = [ "regex/unicode-segment" ]; + }; + resolvedDefaultFeatures = [ "default" "regex" ]; + }; + "lazy-regex-proc_macros" = rec { + crateName = "lazy-regex-proc_macros"; + version = "3.5.1"; + edition = "2018"; + sha256 = "0f2l9ppkvclc20a4ixkfq50j3h2dpaj8cg2nx966jhaxvdl5ra9j"; + procMacro = true; + libName = "lazy_regex_proc_macros"; + libPath = "mod.rs"; + authors = [ + "Canop " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "regex"; + packageId = "regex"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "lazy_static" = rec { + crateName = "lazy_static"; + version = "1.5.0"; + edition = "2015"; + sha256 = "1zk6dqqni0193xg6iijh7i3i44sryglwgvx20spdvwk3r6sbrlmv"; + authors = [ + "Marvin Löbel " + ]; + dependencies = [ + { + name = "spin"; + packageId = "spin"; + optional = true; + usesDefaultFeatures = false; + features = [ "once" ]; + } + ]; + features = { + "spin" = [ "dep:spin" ]; + "spin_no_std" = [ "spin" ]; + }; + resolvedDefaultFeatures = [ "spin" "spin_no_std" ]; + }; + "lazycell" = rec { + crateName = "lazycell"; + version = "1.3.0"; + edition = "2015"; + sha256 = "0m8gw7dn30i0zjjpjdyf6pc16c34nl71lpv461mix50x3p70h3c3"; + authors = [ + "Alex Crichton " + "Nikita Pekin " + ]; + features = { + "clippy" = [ "dep:clippy" ]; + "nightly-testing" = [ "clippy" "nightly" ]; + "serde" = [ "dep:serde" ]; + }; + }; + "libc" = rec { + crateName = "libc"; + version = "0.2.180"; + edition = "2021"; + sha256 = "1z2n7hl10fnk1xnv19ahhqxwnb4qi9aclnl6gigim2aaahw5mhxw"; + authors = [ + "The Rust Project Developers" + ]; + features = { + "default" = [ "std" ]; + "rustc-dep-of-std" = [ "align" "rustc-std-workspace-core" ]; + "rustc-std-workspace-core" = [ "dep:rustc-std-workspace-core" ]; + "use_std" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "extra_traits" "std" ]; + }; + "libdbus-sys" = rec { + crateName = "libdbus-sys"; + version = "0.2.7"; + edition = "2018"; + links = "dbus"; + sha256 = "0hzhq0dz6lfzmhsym9m95cfhjzrwq74qdg85xkpg2012sj4lg31j"; + libName = "libdbus_sys"; + authors = [ + "David Henningsson " + ]; + buildDependencies = [ + { + name = "pkg-config"; + packageId = "pkg-config"; + optional = true; + } + ]; + features = { + "cc" = [ "dep:cc" ]; + "default" = [ "pkg-config" ]; + "pkg-config" = [ "dep:pkg-config" ]; + "vendored" = [ "cc" ]; + }; + resolvedDefaultFeatures = [ "default" "pkg-config" ]; + }; + "libloading" = rec { + crateName = "libloading"; + version = "0.8.9"; + edition = "2015"; + sha256 = "0mfwxwjwi2cf0plxcd685yxzavlslz7xirss3b9cbrzyk4hv1i6p"; + authors = [ + "Simonas Kazlauskas " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + target = { target, features }: (target."unix" or false); + } + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + target = { target, features }: (target."windows" or false); + } + ]; + + }; + "libm" = rec { + crateName = "libm"; + version = "0.2.15"; + edition = "2021"; + sha256 = "1plpzf0p829viazdj57yw5dhmlr8ywf3apayxc2f2bq5a6mvryzr"; + authors = [ + "Jorge Aparicio " + ]; + features = { + "default" = [ "arch" ]; + "unstable" = [ "unstable-intrinsics" "unstable-float" ]; + }; + resolvedDefaultFeatures = [ "arch" "default" ]; + }; + "libredox" = rec { + crateName = "libredox"; + version = "0.1.12"; + edition = "2021"; + sha256 = "05h6fb2y05h74zwaafmnf7gv3bxilzp7syqlfzw524w55kh9a2rx"; + authors = [ + "4lDO2 <4lDO2@protonmail.com>" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "redox_syscall"; + packageId = "redox_syscall 0.7.0"; + optional = true; + } + ]; + features = { + "default" = [ "call" "std" "redox_syscall" ]; + "ioslice" = [ "dep:ioslice" ]; + "mkns" = [ "ioslice" ]; + "redox_syscall" = [ "dep:redox_syscall" ]; + }; + resolvedDefaultFeatures = [ "call" "default" "redox_syscall" "std" ]; + }; + "libsqlite3-sys" = rec { + crateName = "libsqlite3-sys"; + version = "0.30.1"; + edition = "2021"; + links = "sqlite3"; + sha256 = "0jcikvgbj84xc7ikdmpc8m4y5lyqgrb9aqblphwk67kv95xgp69f"; + libName = "libsqlite3_sys"; + authors = [ + "The rusqlite developers" + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + optional = true; + } + { + name = "pkg-config"; + packageId = "pkg-config"; + optional = true; + } + { + name = "vcpkg"; + packageId = "vcpkg"; + optional = true; + } + ]; + features = { + "bindgen" = [ "dep:bindgen" ]; + "buildtime_bindgen" = [ "bindgen" "pkg-config" "vcpkg" ]; + "bundled" = [ "cc" "bundled_bindings" ]; + "bundled-sqlcipher" = [ "bundled" ]; + "bundled-sqlcipher-vendored-openssl" = [ "bundled-sqlcipher" "openssl-sys/vendored" ]; + "bundled-windows" = [ "cc" "bundled_bindings" ]; + "cc" = [ "dep:cc" ]; + "default" = [ "min_sqlite_version_3_14_0" ]; + "loadable_extension" = [ "prettyplease" "quote" "syn" ]; + "min_sqlite_version_3_14_0" = [ "pkg-config" "vcpkg" ]; + "openssl-sys" = [ "dep:openssl-sys" ]; + "pkg-config" = [ "dep:pkg-config" ]; + "prettyplease" = [ "dep:prettyplease" ]; + "preupdate_hook" = [ "buildtime_bindgen" ]; + "quote" = [ "dep:quote" ]; + "session" = [ "preupdate_hook" "buildtime_bindgen" ]; + "syn" = [ "dep:syn" ]; + "vcpkg" = [ "dep:vcpkg" ]; + }; + resolvedDefaultFeatures = [ "bundled" "bundled_bindings" "cc" "pkg-config" "unlock_notify" "vcpkg" ]; + }; + "linkme" = rec { + crateName = "linkme"; + version = "0.3.35"; + edition = "2021"; + sha256 = "164q2w2q5vb4vcwsgfyh4miqn15v36rhlbk0v1nw0l0f5pnq6cjy"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "linkme-impl"; + packageId = "linkme-impl"; + } + ]; + features = { + "used_linker" = [ "linkme-impl/used_linker" ]; + }; + }; + "linkme-impl" = rec { + crateName = "linkme-impl"; + version = "0.3.35"; + edition = "2021"; + sha256 = "1xqpn2hk9hzgdl2dl9h5lb3yc9rs16zlvj19n4xqbd188bnc1kp5"; + procMacro = true; + libName = "linkme_impl"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + features = { + }; + }; + "linux-raw-sys 0.11.0" = rec { + crateName = "linux-raw-sys"; + version = "0.11.0"; + edition = "2021"; + sha256 = "0fghx0nn8nvbz5yzgizfcwd6ap2pislp68j8c1bwyr6sacxkq7fz"; + libName = "linux_raw_sys"; + authors = [ + "Dan Gohman " + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "std" "general" "errno" ]; + "rustc-dep-of-std" = [ "core" "no_std" ]; + }; + resolvedDefaultFeatures = [ "auxvec" "elf" "errno" "general" "ioctl" "no_std" ]; + }; + "linux-raw-sys 0.4.15" = rec { + crateName = "linux-raw-sys"; + version = "0.4.15"; + edition = "2021"; + sha256 = "1aq7r2g7786hyxhv40spzf2nhag5xbw2axxc1k8z5k1dsgdm4v6j"; + libName = "linux_raw_sys"; + authors = [ + "Dan Gohman " + ]; + features = { + "compiler_builtins" = [ "dep:compiler_builtins" ]; + "core" = [ "dep:core" ]; + "default" = [ "std" "general" "errno" ]; + "rustc-dep-of-std" = [ "core" "compiler_builtins" "no_std" ]; + }; + resolvedDefaultFeatures = [ "elf" "errno" "general" "ioctl" "no_std" ]; + }; + "litemap" = rec { + crateName = "litemap"; + version = "0.8.1"; + edition = "2021"; + sha256 = "0xsy8pfp9s802rsj1bq2ys2kbk1g36w5dr3gkfip7gphb5x60wv3"; + authors = [ + "The ICU4X Project Developers" + ]; + features = { + "databake" = [ "dep:databake" ]; + "default" = [ "alloc" ]; + "serde" = [ "dep:serde_core" "alloc" ]; + "testing" = [ "alloc" ]; + "yoke" = [ "dep:yoke" ]; + }; + }; + "litrs" = rec { + crateName = "litrs"; + version = "1.0.0"; + edition = "2021"; + sha256 = "14p0kzzkavnngvybl88nvfwv031cc2qx4vaxpfwsiifm8grdglqi"; + authors = [ + "Lukas Kalbertodt " + ]; + features = { + "check_suffix" = [ "unicode-xid" ]; + "proc-macro2" = [ "dep:proc-macro2" ]; + "unicode-xid" = [ "dep:unicode-xid" ]; + }; + }; + "lock_api" = rec { + crateName = "lock_api"; + version = "0.4.14"; + edition = "2021"; + sha256 = "0rg9mhx7vdpajfxvdjmgmlyrn20ligzqvn8ifmaz7dc79gkrjhr2"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "scopeguard"; + packageId = "scopeguard"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "atomic_usize" ]; + "owning_ref" = [ "dep:owning_ref" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "atomic_usize" "default" "serde" ]; + }; + "log" = rec { + crateName = "log"; + version = "0.4.29"; + edition = "2021"; + sha256 = "15q8j9c8g5zpkcw0hnd6cf2z7fxqnvsjh3rw5mv5q10r83i34l2y"; + 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" = [ "serde_core" ]; + "serde_core" = [ "dep:serde_core" ]; + "sval" = [ "dep:sval" ]; + "sval_ref" = [ "dep:sval_ref" ]; + "value-bag" = [ "dep:value-bag" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "lru-slab" = rec { + crateName = "lru-slab"; + version = "0.1.2"; + edition = "2021"; + sha256 = "0m2139k466qj3bnpk66bwivgcx3z88qkxvlzk70vd65jq373jaqi"; + libName = "lru_slab"; + authors = [ + "Benjamin Saunders " + ]; + + }; + "lz4" = rec { + crateName = "lz4"; + version = "1.28.1"; + edition = "2018"; + crateBin = []; + sha256 = "1x2svvs3gkn3krv61nd7ms4vmikibsnfl31mk0z480qdhqz542x2"; + authors = [ + "Jens Heyens " + "Artem V. Navrotskiy " + "Patrick Marks " + ]; + dependencies = [ + { + name = "lz4-sys"; + packageId = "lz4-sys"; + } + ]; + + }; + "lz4-sys" = rec { + crateName = "lz4-sys"; + version = "1.11.1+lz4-1.10.0"; + edition = "2015"; + links = "lz4"; + sha256 = "1rhqnhwq05fmlc2q39ipsq0vpi0xf6w6p22j6q5x637dqvbc1n3b"; + libName = "lz4_sys"; + authors = [ + "Jens Heyens " + "Artem V. Navrotskiy " + "Patrick Marks " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + } + ]; + + }; + "madsim" = rec { + crateName = "madsim"; + version = "0.2.34"; + edition = "2021"; + sha256 = "0wgpyv8r4wxsynzz2ahlah3wq3jls6rjbggzm5p7scwl86n1ld8q"; + authors = [ + "Runji Wang " + ]; + dependencies = [ + { + name = "ahash"; + packageId = "ahash"; + target = { target, features }: (target."madsim" or false); + } + { + name = "async-channel"; + packageId = "async-channel"; + target = { target, features }: (target."madsim" or false); + } + { + name = "async-stream"; + packageId = "async-stream"; + target = { target, features }: (target."madsim" or false); + } + { + name = "async-task"; + packageId = "async-task"; + target = { target, features }: (target."madsim" or false); + } + { + name = "bincode"; + packageId = "bincode"; + optional = true; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "downcast-rs"; + packageId = "downcast-rs"; + target = { target, features }: (target."madsim" or false); + } + { + name = "errno"; + packageId = "errno"; + target = { target, features }: (target."madsim" or false); + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."madsim" or false); + } + { + name = "madsim-macros"; + packageId = "madsim-macros"; + optional = true; + } + { + name = "naive-timer"; + packageId = "naive-timer"; + target = { target, features }: (target."madsim" or false); + } + { + name = "panic-message"; + packageId = "panic-message"; + target = { target, features }: (target."madsim" or false); + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + { + name = "rand_xoshiro"; + packageId = "rand_xoshiro 0.6.0"; + target = { target, features }: (target."madsim" or false); + } + { + name = "rustversion"; + packageId = "rustversion"; + target = { target, features }: (target."madsim" or false); + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "spin"; + packageId = "spin"; + } + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: (target."madsim" or false); + features = [ "rt" "sync" ]; + } + { + name = "tokio"; + packageId = "tokio"; + target = { target, features }: (!(target."madsim" or false)); + features = [ "rt" "fs" "net" "time" "io-util" "sync" "signal" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + target = { target, features }: (!(target."madsim" or false)); + features = [ "codec" ]; + } + { + name = "toml"; + packageId = "toml 0.9.11+spec-1.1.0"; + target = { target, features }: (target."madsim" or false); + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "macros" "io-util" ]; + } + ]; + features = { + "async-ucx" = [ "dep:async-ucx" ]; + "bincode" = [ "dep:bincode" ]; + "default" = [ "macros" "rpc" ]; + "macros" = [ "madsim-macros" "tokio/macros" ]; + "madsim-macros" = [ "dep:madsim-macros" ]; + "rpc" = [ "bincode" ]; + "ucx" = [ "async-ucx" ]; + }; + resolvedDefaultFeatures = [ "bincode" "default" "macros" "madsim-macros" "rpc" ]; + }; + "madsim-macros" = rec { + crateName = "madsim-macros"; + version = "0.2.12"; + edition = "2021"; + sha256 = "1qa6r46r34qavms75wab74affj453s98v0n329m84j0sggllilpk"; + procMacro = true; + libName = "madsim_macros"; + authors = [ + "Runji Wang " + ]; + dependencies = [ + { + name = "darling"; + packageId = "darling 0.14.4"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 1.0.109"; + } + ]; + + }; + "madsim-tokio" = rec { + crateName = "madsim-tokio"; + version = "0.2.30"; + edition = "2021"; + sha256 = "1dgcpn1vwwhyba438ixqplfsjw6zw9cvh6cid4fx50kwqnnb4gkx"; + libName = "madsim_tokio"; + authors = [ + "Runji Wang " + ]; + dependencies = [ + { + name = "madsim"; + packageId = "madsim"; + target = { target, features }: (target."madsim" or false); + } + { + name = "spin"; + packageId = "spin"; + target = { target, features }: (target."madsim" or false); + } + { + name = "tokio"; + packageId = "tokio"; + } + ]; + features = { + "fs" = [ "tokio/fs" ]; + "full" = [ "fs" "io-util" "io-std" "macros" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "sync" "time" ]; + "io-std" = [ "tokio/io-std" ]; + "io-util" = [ "tokio/io-util" ]; + "macros" = [ "tokio/macros" ]; + "net" = [ "tokio/net" ]; + "process" = [ "tokio/process" ]; + "rt" = [ "tokio/rt" ]; + "rt-multi-thread" = [ "tokio/rt-multi-thread" ]; + "signal" = [ "tokio/signal" ]; + "sync" = [ "tokio/sync" ]; + "test-util" = [ "tokio/test-util" ]; + "time" = [ "tokio/time" ]; + "tracing" = [ "tokio/tracing" ]; + }; + resolvedDefaultFeatures = [ "fs" "macros" "net" "rt" "rt-multi-thread" "signal" "sync" "time" ]; + }; + "markdown" = rec { + crateName = "markdown"; + version = "1.0.0"; + edition = "2018"; + sha256 = "1sqxbclkxw615kcwglcisda1dcw8cfaa30z7sa16lhfwrbrbijm5"; + authors = [ + "Titus Wormer " + ]; + dependencies = [ + { + name = "unicode-id"; + packageId = "unicode-id"; + features = [ "no_std" ]; + } + ]; + features = { + "json" = [ "serde" ]; + "log" = [ "dep:log" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "matchers" = rec { + crateName = "matchers"; + version = "0.2.0"; + edition = "2018"; + sha256 = "1sasssspdj2vwcwmbq3ra18d3qniapkimfcbr47zmx6750m5llni"; + authors = [ + "Eliza Weisman " + ]; + dependencies = [ + { + name = "regex-automata"; + packageId = "regex-automata"; + usesDefaultFeatures = false; + features = [ "syntax" "dfa-build" "dfa-search" ]; + } + ]; + features = { + "unicode" = [ "regex-automata/unicode" ]; + }; + }; + "matchit" = rec { + crateName = "matchit"; + version = "0.8.4"; + edition = "2021"; + sha256 = "1hzl48fwq1cn5dvshfly6vzkzqhfihya65zpj7nz7lfx82mgzqa7"; + authors = [ + "Ibraheem Ahmed " + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "maybe-async" = rec { + crateName = "maybe-async"; + version = "0.2.10"; + edition = "2021"; + sha256 = "04fvg2ywb2p9dzf7i35xqfibxc05k1pirv36jswxcqg3qw82ryaw"; + procMacro = true; + libName = "maybe_async"; + authors = [ + "Guoli Lyu " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "visit-mut" "full" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" "is_sync" ]; + }; + "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.6"; + edition = "2021"; + sha256 = "0wy29kf6pb4fbhfksjbs05jy2f32r2f3r1ga6qkmpz31k79h0azm"; + authors = [ + "Andrew Gallant " + "bluss" + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "std" ]; + "logging" = [ "dep:log" ]; + "rustc-dep-of-std" = [ "core" ]; + "std" = [ "alloc" ]; + "use_std" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "memmap2" = rec { + crateName = "memmap2"; + version = "0.9.9"; + edition = "2021"; + sha256 = "146lfx0mpib44wvws6hibahm4h2w867bzwsc6zhmi9p0l3j36hbl"; + authors = [ + "Dan Burkert " + "Yevhenii Reizner " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + ]; + features = { + "stable_deref_trait" = [ "dep:stable_deref_trait" ]; + }; + }; + "memoffset" = rec { + crateName = "memoffset"; + version = "0.9.1"; + edition = "2015"; + sha256 = "12i17wh9a9plx869g7j4whf62xw68k5zd4k0k5nh6ys5mszid028"; + authors = [ + "Gilad Naaman " + ]; + buildDependencies = [ + { + name = "autocfg"; + packageId = "autocfg"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "metrics" = rec { + crateName = "metrics"; + version = "0.24.3"; + edition = "2018"; + sha256 = "1s3p28qdd4x058jxkvm3a34p5ng32n1751dmc6lwyw9ppbli4lsx"; + authors = [ + "Toby Lawrence " + ]; + dependencies = [ + { + name = "ahash"; + packageId = "ahash"; + usesDefaultFeatures = false; + } + { + name = "portable-atomic"; + packageId = "portable-atomic"; + usesDefaultFeatures = false; + target = { target, features }: ("32" == target."pointer_width" or null); + features = [ "fallback" ]; + } + ]; + + }; + "metrics-prometheus" = rec { + crateName = "metrics-prometheus"; + version = "0.10.0"; + edition = "2024"; + sha256 = "1nqbrmslhgv1kifwv0zqzlc3cn9hmmw0zls0jj6l3mn5n58gawlx"; + libName = "metrics_prometheus"; + authors = [ + "Instrumentisto Team " + ]; + dependencies = [ + { + name = "arc-swap"; + packageId = "arc-swap"; + } + { + name = "metrics"; + packageId = "metrics"; + usesDefaultFeatures = false; + } + { + name = "metrics-util"; + packageId = "metrics-util"; + usesDefaultFeatures = false; + features = [ "registry" ]; + } + { + name = "prometheus"; + packageId = "prometheus"; + usesDefaultFeatures = false; + } + { + name = "sealed"; + packageId = "sealed"; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + ]; + devDependencies = [ + { + name = "metrics-util"; + packageId = "metrics-util"; + usesDefaultFeatures = false; + features = [ "layer-filter" ]; + } + ]; + + }; + "metrics-util" = rec { + crateName = "metrics-util"; + version = "0.19.1"; + edition = "2018"; + sha256 = "0xp37996aqxdhm27wnybxj52n2s85h60z3yxhl9lryfi4g2nqjdq"; + libName = "metrics_util"; + authors = [ + "Toby Lawrence " + ]; + dependencies = [ + { + name = "crossbeam-epoch"; + packageId = "crossbeam-epoch"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" "std" ]; + } + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + optional = true; + usesDefaultFeatures = false; + features = [ "default-hasher" "raw-entry" ]; + } + { + name = "metrics"; + packageId = "metrics"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + optional = true; + usesDefaultFeatures = false; + features = [ "thread_rng" ]; + } + { + name = "rand_xoshiro"; + packageId = "rand_xoshiro 0.7.0"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "sketches-ddsketch"; + packageId = "sketches-ddsketch"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "rand"; + packageId = "rand 0.9.2"; + usesDefaultFeatures = false; + features = [ "thread_rng" ]; + } + { + name = "sketches-ddsketch"; + packageId = "sketches-ddsketch"; + usesDefaultFeatures = false; + } + ]; + features = { + "ahash" = [ "dep:ahash" ]; + "aho-corasick" = [ "dep:aho-corasick" ]; + "crossbeam-epoch" = [ "dep:crossbeam-epoch" ]; + "crossbeam-utils" = [ "dep:crossbeam-utils" ]; + "debugging" = [ "indexmap" "ordered-float" "registry" ]; + "default" = [ "debugging" "layers" "recency" "registry" "storage" ]; + "hashbrown" = [ "dep:hashbrown" ]; + "indexmap" = [ "dep:indexmap" ]; + "layer-filter" = [ "aho-corasick" ]; + "layer-router" = [ "radix_trie" ]; + "layers" = [ "layer-filter" "layer-router" ]; + "ordered-float" = [ "dep:ordered-float" ]; + "quanta" = [ "dep:quanta" ]; + "radix_trie" = [ "dep:radix_trie" ]; + "rand" = [ "dep:rand" ]; + "rand_xoshiro" = [ "dep:rand_xoshiro" ]; + "recency" = [ "registry" "quanta" ]; + "registry" = [ "hashbrown" "storage" ]; + "sketches-ddsketch" = [ "dep:sketches-ddsketch" ]; + "storage" = [ "crossbeam-epoch" "crossbeam-utils" "rand" "rand_xoshiro" "sketches-ddsketch" ]; + }; + resolvedDefaultFeatures = [ "crossbeam-epoch" "crossbeam-utils" "hashbrown" "rand" "rand_xoshiro" "registry" "sketches-ddsketch" "storage" ]; + }; + "miette" = rec { + crateName = "miette"; + version = "7.6.0"; + edition = "2018"; + sha256 = "1dwjnnpcff4jzpf5ns1m19di2p0n5j31zmjv5dskrih7i3nfz62z"; + authors = [ + "Kat Marchán " + ]; + dependencies = [ + { + name = "backtrace"; + packageId = "backtrace"; + optional = true; + } + { + name = "backtrace-ext"; + packageId = "backtrace-ext"; + optional = true; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "miette-derive"; + packageId = "miette-derive"; + optional = true; + } + { + name = "owo-colors"; + packageId = "owo-colors"; + optional = true; + } + { + name = "supports-color"; + packageId = "supports-color"; + optional = true; + } + { + name = "supports-hyperlinks"; + packageId = "supports-hyperlinks"; + optional = true; + } + { + name = "supports-unicode"; + packageId = "supports-unicode"; + optional = true; + } + { + name = "terminal_size"; + packageId = "terminal_size"; + optional = true; + } + { + name = "textwrap"; + packageId = "textwrap"; + optional = true; + usesDefaultFeatures = false; + features = [ "unicode-linebreak" "unicode-width" ]; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.1.14"; + } + ]; + features = { + "default" = [ "derive" ]; + "derive" = [ "dep:miette-derive" ]; + "fancy" = [ "fancy-no-backtrace" "dep:backtrace" "dep:backtrace-ext" ]; + "fancy-base" = [ "dep:owo-colors" "dep:textwrap" ]; + "fancy-no-backtrace" = [ "fancy-base" "dep:terminal_size" "dep:supports-hyperlinks" "dep:supports-color" "dep:supports-unicode" ]; + "fancy-no-syscall" = [ "fancy-base" ]; + "serde" = [ "dep:serde" ]; + "syntect-highlighter" = [ "fancy-no-backtrace" "dep:syntect" ]; + }; + resolvedDefaultFeatures = [ "default" "derive" "fancy" "fancy-base" "fancy-no-backtrace" ]; + }; + "miette-derive" = rec { + crateName = "miette-derive"; + version = "7.6.0"; + edition = "2018"; + sha256 = "12w13a67n2cc37nzidvv0v0vrvf4rsflzxz6slhbn3cm9rqjjnyv"; + procMacro = true; + libName = "miette_derive"; + authors = [ + "Kat Marchán " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + + }; + "migrations_internals" = rec { + crateName = "migrations_internals"; + version = "2.2.1"; + edition = "2021"; + sha256 = "090zjr6w93cr4ans70lrg666wf9ahjlxq5fgacsxanqdsws1dniv"; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "toml"; + packageId = "toml 0.9.11+spec-1.1.0"; + } + ]; + + }; + "migrations_macros" = rec { + crateName = "migrations_macros"; + version = "2.2.0"; + edition = "2021"; + sha256 = "1z9p2ag0fnnh0m7z8qfncwyjc0pgschca7vzlixb6v0pfb663cgz"; + procMacro = true; + dependencies = [ + { + name = "migrations_internals"; + packageId = "migrations_internals"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "mime" = rec { + crateName = "mime"; + version = "0.3.17"; + edition = "2015"; + sha256 = "16hkibgvb9klh0w0jk5crr5xv90l3wlf77ggymzjmvl1818vnxv8"; + authors = [ + "Sean McArthur " + ]; + + }; + "minimad" = rec { + crateName = "minimad"; + version = "0.13.1"; + edition = "2018"; + sha256 = "1lj5szpri8hjf38qrmg0i7vabp9b1rwakm5nly86a63d484dgid9"; + authors = [ + "dystroy " + ]; + dependencies = [ + { + name = "once_cell"; + packageId = "once_cell"; + } + ]; + features = { + "default" = [ "escaping" ]; + }; + resolvedDefaultFeatures = [ "default" "escaping" ]; + }; + "minimal-lexical" = rec { + crateName = "minimal-lexical"; + version = "0.2.1"; + edition = "2018"; + sha256 = "16ppc5g84aijpri4jzv14rvcnslvlpphbszc7zzp6vfkddf4qdb8"; + libName = "minimal_lexical"; + authors = [ + "Alex Huszagh " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "miniz_oxide" = rec { + crateName = "miniz_oxide"; + version = "0.8.9"; + edition = "2021"; + sha256 = "05k3pdg8bjjzayq3rf0qhpirq9k37pxnasfn4arbs17phqn6m9qz"; + authors = [ + "Frommi " + "oyvindln " + "Rich Geldreich richgel99@gmail.com" + ]; + dependencies = [ + { + name = "adler2"; + packageId = "adler2"; + usesDefaultFeatures = false; + } + { + name = "simd-adler32"; + packageId = "simd-adler32"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "dep:alloc" ]; + "core" = [ "dep:core" ]; + "default" = [ "with-alloc" ]; + "rustc-dep-of-std" = [ "core" "alloc" "adler2/rustc-dep-of-std" ]; + "serde" = [ "dep:serde" ]; + "simd" = [ "simd-adler32" ]; + "simd-adler32" = [ "dep:simd-adler32" ]; + }; + resolvedDefaultFeatures = [ "simd" "simd-adler32" "with-alloc" ]; + }; + "mio 0.8.11" = rec { + crateName = "mio"; + version = "0.8.11"; + edition = "2018"; + sha256 = "034byyl0ardml5yliy1hmvx8arkmn9rv479pid794sm07ia519m4"; + authors = [ + "Carl Lerche " + "Thomas de Zeeuw " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ("wasi" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "wasi"; + packageId = "wasi 0.11.1+wasi-snapshot-preview1"; + target = { target, features }: ("wasi" == target."os" or null); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.48.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_Storage_FileSystem" "Win32_System_IO" "Win32_System_WindowsProgramming" ]; + } + ]; + features = { + "default" = [ "log" ]; + "log" = [ "dep:log" ]; + "os-ext" = [ "os-poll" "windows-sys/Win32_System_Pipes" "windows-sys/Win32_Security" ]; + }; + resolvedDefaultFeatures = [ "default" "log" "net" "os-ext" "os-poll" ]; + }; + "mio 1.1.1" = rec { + crateName = "mio"; + version = "1.1.1"; + edition = "2021"; + sha256 = "1z2phpalqbdgihrcjp8y09l3kgq6309jnhnr6h11l9s7mnqcm6x6"; + authors = [ + "Carl Lerche " + "Thomas de Zeeuw " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ("hermit" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ("wasi" == target."os" or null); + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "wasi"; + packageId = "wasi 0.11.1+wasi-snapshot-preview1"; + target = { target, features }: ("wasi" == target."os" or null); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Wdk_Foundation" "Wdk_Storage_FileSystem" "Wdk_System_IO" "Win32_Foundation" "Win32_Networking_WinSock" "Win32_Storage_FileSystem" "Win32_Security" "Win32_System_IO" "Win32_System_WindowsProgramming" ]; + } + ]; + features = { + "default" = [ "log" ]; + "log" = [ "dep:log" ]; + "os-ext" = [ "os-poll" "windows-sys/Win32_System_Pipes" "windows-sys/Win32_Security" ]; + }; + resolvedDefaultFeatures = [ "default" "log" "net" "os-ext" "os-poll" ]; + }; + "mixtrics" = rec { + crateName = "mixtrics"; + version = "0.2.3"; + edition = "2021"; + sha256 = "04acw3vfzyypjmi962hx2qxks2ps4hawiw03j7pwcxwxidr2q9gv"; + authors = [ + "MrCroxx " + ]; + dependencies = [ + { + name = "itertools"; + packageId = "itertools 0.14.0"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + ]; + features = { + "full" = [ "test-utils" ]; + "opentelemetry" = [ "opentelemetry_0_31" ]; + "opentelemetry_0_26" = [ "dep:opentelemetry_0_26" ]; + "opentelemetry_0_27" = [ "dep:opentelemetry_0_27" ]; + "opentelemetry_0_28" = [ "dep:opentelemetry_0_28" ]; + "opentelemetry_0_29" = [ "dep:opentelemetry_0_29" ]; + "opentelemetry_0_30" = [ "dep:opentelemetry_0_30" ]; + "opentelemetry_0_31" = [ "dep:opentelemetry_0_31" ]; + "prometheus" = [ "prometheus_0_14" ]; + "prometheus-client" = [ "prometheus-client_0_24" ]; + "prometheus-client_0_22" = [ "dep:prometheus-client_0_22" ]; + "prometheus-client_0_23" = [ "dep:prometheus-client_0_23" ]; + "prometheus-client_0_24" = [ "dep:prometheus-client_0_24" ]; + "prometheus_0_13" = [ "dep:prometheus_0_13" ]; + "prometheus_0_14" = [ "dep:prometheus_0_14" ]; + "test-utils" = [ "prometheus" "prometheus_0_13" "prometheus_0_14" "prometheus-client" "prometheus-client_0_22" "prometheus-client_0_23" "prometheus-client_0_24" "opentelemetry" "opentelemetry_0_26" "opentelemetry_0_27" "opentelemetry_0_28" "opentelemetry_0_29" "opentelemetry_0_30" "opentelemetry_0_31" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "multimap" = rec { + crateName = "multimap"; + version = "0.10.1"; + edition = "2015"; + sha256 = "1150lf0hjfjj4ksb8s3y0hl7a2nqzqlbh0is7vdym2iyjfrfr1qx"; + authors = [ + "Håvar Nøvik " + ]; + features = { + "default" = [ "serde_impl" ]; + "serde" = [ "dep:serde" ]; + "serde_impl" = [ "serde" ]; + }; + }; + "naive-timer" = rec { + crateName = "naive-timer"; + version = "0.2.0"; + edition = "2018"; + sha256 = "1v9zhizqmylfyk0d1ynqm5gc3hv6cq59ad94rymw5w7bvvbhljh3"; + libName = "naive_timer"; + authors = [ + "Runji Wang " + ]; + + }; + "nanorand" = rec { + crateName = "nanorand"; + version = "0.7.0"; + edition = "2021"; + sha256 = "1hr60b8zlfy7mxjcwx2wfmhpkx7vfr3v9x12shmv1c10b0y32lba"; + authors = [ + "Lucy " + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.2.17"; + optional = true; + features = [ "rdrand" "js" ]; + } + ]; + features = { + "default" = [ "std" "tls" "wyrand" "pcg64" "chacha" ]; + "getrandom" = [ "dep:getrandom" ]; + "rdseed" = [ "std" ]; + "std" = [ "alloc" ]; + "tls" = [ "std" "wyrand" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "alloc" "chacha" "default" "getrandom" "pcg64" "std" "tls" "wyrand" ]; + }; + "native-tls" = rec { + crateName = "native-tls"; + version = "0.2.14"; + edition = "2015"; + sha256 = "03hga800x8bzkp8h7frnm7yp545dwwawgmaq673vx7byk1139pl7"; + libName = "native_tls"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: ("apple" == target."vendor" or null); + } + { + name = "log"; + packageId = "log"; + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); + } + { + name = "openssl"; + packageId = "openssl"; + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); + } + { + name = "openssl-probe"; + packageId = "openssl-probe 0.1.6"; + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); + } + { + name = "openssl-sys"; + packageId = "openssl-sys"; + target = { target, features }: (!(("windows" == target."os" or null) || ("apple" == target."vendor" or null))); + } + { + name = "schannel"; + packageId = "schannel"; + target = { target, features }: ("windows" == target."os" or null); + } + { + name = "security-framework"; + packageId = "security-framework 2.11.1"; + target = { target, features }: ("apple" == target."vendor" or null); + } + { + name = "security-framework-sys"; + packageId = "security-framework-sys"; + target = { target, features }: ("apple" == target."vendor" or null); + } + { + name = "tempfile"; + packageId = "tempfile"; + target = { target, features }: ("macos" == target."os" or null); + } + ]; + devDependencies = [ + { + name = "tempfile"; + packageId = "tempfile"; + } + ]; + features = { + "alpn" = [ "security-framework/alpn" ]; + "vendored" = [ "openssl/vendored" ]; + }; + }; + "newline-converter" = rec { + crateName = "newline-converter"; + version = "0.2.2"; + edition = "2018"; + sha256 = "03y000bbxnwzb7aipxyw7gm68b1bd8dv7illz03l4qw7bjfx0w8z"; + libName = "newline_converter"; + authors = [ + "Michal Borejszo " + ]; + dependencies = [ + { + name = "unicode-segmentation"; + packageId = "unicode-segmentation"; + } + ]; + + }; + "nix 0.29.0" = rec { + crateName = "nix"; + version = "0.29.0"; + edition = "2021"; + sha256 = "0ikvn7s9r2lrfdm3mx1h7nbfjvcc6s9vxdzw7j5xfkd2qdnp9qki"; + authors = [ + "The nix-rust Project Developers" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "libc"; + packageId = "libc"; + features = [ "extra_traits" ]; + } + ]; + buildDependencies = [ + { + name = "cfg_aliases"; + packageId = "cfg_aliases"; + } + ]; + features = { + "aio" = [ "pin-utils" ]; + "dir" = [ "fs" ]; + "memoffset" = [ "dep:memoffset" ]; + "mount" = [ "uio" ]; + "mqueue" = [ "fs" ]; + "net" = [ "socket" ]; + "pin-utils" = [ "dep:pin-utils" ]; + "ptrace" = [ "process" ]; + "sched" = [ "process" ]; + "signal" = [ "process" ]; + "socket" = [ "memoffset" ]; + "ucontext" = [ "signal" ]; + "user" = [ "feature" ]; + "zerocopy" = [ "fs" "uio" ]; + }; + resolvedDefaultFeatures = [ "default" "feature" "fs" "hostname" "mount" "process" "signal" "uio" "user" ]; + }; + "nix 0.30.1" = rec { + crateName = "nix"; + version = "0.30.1"; + edition = "2021"; + sha256 = "1dixahq9hk191g0c2ydc0h1ppxj0xw536y6rl63vlnp06lx3ylkl"; + authors = [ + "The nix-rust Project Developers" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "libc"; + packageId = "libc"; + features = [ "extra_traits" ]; + } + { + name = "memoffset"; + packageId = "memoffset"; + optional = true; + } + ]; + buildDependencies = [ + { + name = "cfg_aliases"; + packageId = "cfg_aliases"; + } + ]; + features = { + "aio" = [ "pin-utils" ]; + "dir" = [ "fs" ]; + "event" = [ "poll" ]; + "memoffset" = [ "dep:memoffset" ]; + "mount" = [ "uio" ]; + "mqueue" = [ "fs" ]; + "net" = [ "socket" ]; + "pin-utils" = [ "dep:pin-utils" ]; + "ptrace" = [ "process" ]; + "sched" = [ "process" ]; + "signal" = [ "process" ]; + "socket" = [ "memoffset" ]; + "ucontext" = [ "signal" ]; + "user" = [ "feature" ]; + "zerocopy" = [ "fs" "uio" ]; + }; + resolvedDefaultFeatures = [ "default" "feature" "ioctl" "memoffset" "process" "signal" "socket" "user" ]; + }; + "nix-bindings-bindgen-raw" = rec { + crateName = "nix-bindings-bindgen-raw"; + version = "0.1.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/nix-bindings-rust.git"; + rev = "a1155bb962f8bcf760623135aa418d20af526726"; + sha256 = "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd"; + }; + libName = "nix_bindings_bindgen_raw"; + buildDependencies = [ + { + name = "bindgen"; + packageId = "bindgen"; + } + { + name = "pkg-config"; + packageId = "pkg-config"; + } + ]; + + }; + "nix-bindings-expr" = rec { + crateName = "nix-bindings-expr"; + version = "0.1.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/nix-bindings-rust.git"; + rev = "a1155bb962f8bcf760623135aa418d20af526726"; + sha256 = "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd"; + }; + libName = "nix_bindings_expr"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "cstr"; + packageId = "cstr"; + } + { + name = "ctor"; + packageId = "ctor"; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "nix-bindings-bindgen-raw"; + packageId = "nix-bindings-bindgen-raw"; + } + { + name = "nix-bindings-store"; + packageId = "nix-bindings-store"; + } + { + name = "nix-bindings-util"; + packageId = "nix-bindings-util"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + ]; + + }; + "nix-bindings-fetchers" = rec { + crateName = "nix-bindings-fetchers"; + version = "0.1.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/nix-bindings-rust.git"; + rev = "a1155bb962f8bcf760623135aa418d20af526726"; + sha256 = "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd"; + }; + libName = "nix_bindings_fetchers"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "cstr"; + packageId = "cstr"; + } + { + name = "ctor"; + packageId = "ctor"; + } + { + name = "nix-bindings-bindgen-raw"; + packageId = "nix-bindings-bindgen-raw"; + } + { + name = "nix-bindings-store"; + packageId = "nix-bindings-store"; + } + { + name = "nix-bindings-util"; + packageId = "nix-bindings-util"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + ]; + + }; + "nix-bindings-flake" = rec { + crateName = "nix-bindings-flake"; + version = "0.1.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/nix-bindings-rust.git"; + rev = "a1155bb962f8bcf760623135aa418d20af526726"; + sha256 = "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd"; + }; + libName = "nix_bindings_flake"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "cstr"; + packageId = "cstr"; + } + { + name = "ctor"; + packageId = "ctor"; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "nix-bindings-bindgen-raw"; + packageId = "nix-bindings-bindgen-raw"; + } + { + name = "nix-bindings-expr"; + packageId = "nix-bindings-expr"; + } + { + name = "nix-bindings-fetchers"; + packageId = "nix-bindings-fetchers"; + } + { + name = "nix-bindings-store"; + packageId = "nix-bindings-store"; + } + { + name = "nix-bindings-util"; + packageId = "nix-bindings-util"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + ]; + + }; + "nix-bindings-store" = rec { + crateName = "nix-bindings-store"; + version = "0.1.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/nix-bindings-rust.git"; + rev = "a1155bb962f8bcf760623135aa418d20af526726"; + sha256 = "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd"; + }; + libName = "nix_bindings_store"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "nix-bindings-bindgen-raw"; + packageId = "nix-bindings-bindgen-raw"; + } + { + name = "nix-bindings-util"; + packageId = "nix-bindings-util"; + } + ]; + buildDependencies = [ + { + name = "pkg-config"; + packageId = "pkg-config"; + } + ]; + + }; + "nix-bindings-util" = rec { + crateName = "nix-bindings-util"; + version = "0.1.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/nix-bindings-rust.git"; + rev = "a1155bb962f8bcf760623135aa418d20af526726"; + sha256 = "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd"; + }; + libName = "nix_bindings_util"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "ctor"; + packageId = "ctor"; + } + { + name = "nix-bindings-bindgen-raw"; + packageId = "nix-bindings-bindgen-raw"; + } + ]; + + }; + "nix-cmd" = rec { + crateName = "nix-cmd"; + version = "0.1.0"; + edition = "2021"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/nix-bindings-rust.git"; + rev = "a1155bb962f8bcf760623135aa418d20af526726"; + sha256 = "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd"; + }; + libName = "nix_cmd"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "nix-bindings-bindgen-raw"; + packageId = "nix-bindings-bindgen-raw"; + } + { + name = "nix-bindings-expr"; + packageId = "nix-bindings-expr"; + } + { + name = "nix-bindings-util"; + packageId = "nix-bindings-util"; + } + ]; + + }; + "nix-conf-parser" = rec { + crateName = "nix-conf-parser"; + version = "0.0.1"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "nix_conf_parser"; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + + }; + "nom" = rec { + crateName = "nom"; + version = "7.1.3"; + edition = "2018"; + sha256 = "0jha9901wxam390jcf5pfa0qqfrgh8li787jx2ip0yk5b8y9hwyj"; + authors = [ + "contact@geoffroycouprie.com" + ]; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + { + name = "minimal-lexical"; + packageId = "minimal-lexical"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" "memchr/std" "minimal-lexical/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "std" ]; + }; + "ntapi" = rec { + crateName = "ntapi"; + version = "0.4.2"; + edition = "2018"; + sha256 = "10ghcc1kmj5ygy4ls81as6s5akd1wflwcc0b1k3nf8ql46g223y7"; + authors = [ + "MSxDOS " + ]; + dependencies = [ + { + name = "winapi"; + packageId = "winapi"; + features = [ "cfg" "evntrace" "in6addr" "inaddr" "minwinbase" "ntsecapi" "windef" "winioctl" ]; + } + ]; + features = { + "default" = [ "user" ]; + "impl-default" = [ "winapi/impl-default" ]; + }; + resolvedDefaultFeatures = [ "default" "user" ]; + }; + "nu-ansi-term" = rec { + crateName = "nu-ansi-term"; + version = "0.50.3"; + edition = "2021"; + sha256 = "1ra088d885lbd21q1bxgpqdlk1zlndblmarn948jz2a40xsbjmvr"; + libName = "nu_ansi_term"; + authors = [ + "ogham@bsago.me" + "Ryan Scheel (Havvy) " + "Josh Triplett " + "The Nushell Project Developers" + ]; + dependencies = [ + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + rename = "windows"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Console" "Win32_Storage_FileSystem" "Win32_Security" ]; + } + ]; + features = { + "default" = [ "std" ]; + "derive_serde_style" = [ "serde" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "num-bigint" = rec { + crateName = "num-bigint"; + version = "0.4.6"; + edition = "2021"; + sha256 = "1f903zd33i6hkjpsgwhqwi2wffnvkxbn6rv4mkgcjcqi7xr4zr55"; + libName = "num_bigint"; + authors = [ + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "num-integer"; + packageId = "num-integer"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "default" = [ "std" ]; + "quickcheck" = [ "dep:quickcheck" ]; + "rand" = [ "dep:rand" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "num-integer/std" "num-traits/std" ]; + }; + }; + "num-bigint-dig" = rec { + crateName = "num-bigint-dig"; + version = "0.8.6"; + edition = "2021"; + sha256 = "1dxh3d8pzjc5k0kpy8gy2qhhhqs7zw8a7m564zl3ib8gcjkdsqg6"; + libName = "num_bigint_dig"; + authors = [ + "dignifiedquire " + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "lazy_static"; + packageId = "lazy_static"; + usesDefaultFeatures = false; + features = [ "spin_no_std" ]; + } + { + name = "libm"; + packageId = "libm"; + } + { + name = "num-integer"; + packageId = "num-integer"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + { + name = "num-iter"; + packageId = "num-iter"; + usesDefaultFeatures = false; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "rand"; + packageId = "rand 0.8.5"; + features = [ "small_rng" ]; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "default" = [ "std" "u64_digit" ]; + "fuzz" = [ "arbitrary" "smallvec/arbitrary" ]; + "prime" = [ "rand/std_rng" ]; + "rand" = [ "dep:rand" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "num-integer/std" "num-traits/std" "smallvec/write" "rand/std" "serde/std" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + resolvedDefaultFeatures = [ "i128" "prime" "rand" "u64_digit" "zeroize" ]; + }; + "num-conv" = rec { + crateName = "num-conv"; + version = "0.1.0"; + edition = "2021"; + sha256 = "1ndiyg82q73783jq18isi71a7mjh56wxrk52rlvyx0mi5z9ibmai"; + libName = "num_conv"; + authors = [ + "Jacob Pratt " + ]; + + }; + "num-integer" = rec { + crateName = "num-integer"; + version = "0.1.46"; + edition = "2018"; + sha256 = "13w5g54a9184cqlbsq80rnxw4jj4s0d8wv75jsq5r2lms8gncsbr"; + libName = "num_integer"; + authors = [ + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "num-traits/std" ]; + }; + resolvedDefaultFeatures = [ "i128" ]; + }; + "num-iter" = rec { + crateName = "num-iter"; + version = "0.1.45"; + edition = "2018"; + sha256 = "1gzm7vc5g9qsjjl3bqk9rz1h6raxhygbrcpbfl04swlh0i506a8l"; + libName = "num_iter"; + authors = [ + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "num-integer"; + packageId = "num-integer"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + ]; + buildDependencies = [ + { + name = "autocfg"; + packageId = "autocfg"; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "num-integer/std" "num-traits/std" ]; + }; + }; + "num-traits" = rec { + crateName = "num-traits"; + version = "0.2.19"; + edition = "2021"; + sha256 = "0h984rhdkkqd4ny9cif7y2azl3xdfb7768hb9irhpsch4q3gq787"; + libName = "num_traits"; + authors = [ + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "libm"; + packageId = "libm"; + optional = true; + } + ]; + buildDependencies = [ + { + name = "autocfg"; + packageId = "autocfg"; + } + ]; + features = { + "default" = [ "std" ]; + "libm" = [ "dep:libm" ]; + }; + resolvedDefaultFeatures = [ "default" "i128" "libm" "std" ]; + }; + "num_cpus" = rec { + crateName = "num_cpus"; + version = "1.17.0"; + edition = "2015"; + sha256 = "0fxjazlng4z8cgbmsvbzv411wrg7x3hyxdq8nxixgzjswyylppwi"; + authors = [ + "Sean McArthur " + ]; + 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)); + } + ]; + + }; + "num_enum" = rec { + crateName = "num_enum"; + version = "0.7.5"; + edition = "2021"; + sha256 = "0k25hagf3xfgmj4j1zmvja1d6844jrmpginxpd3vhmxd41z7l85i"; + authors = [ + "Daniel Wagner-Hall " + "Daniel Henry-Mantilla " + "Vincent Esche " + ]; + dependencies = [ + { + name = "num_enum_derive"; + packageId = "num_enum_derive"; + usesDefaultFeatures = false; + } + { + name = "rustversion"; + packageId = "rustversion"; + } + ]; + features = { + "complex-expressions" = [ "num_enum_derive/complex-expressions" ]; + "default" = [ "std" ]; + "std" = [ "num_enum_derive/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "num_enum_derive" = rec { + crateName = "num_enum_derive"; + version = "0.7.5"; + edition = "2021"; + sha256 = "1mx4dgza8b9g16baybc00gg06jn4cf17h45p0fr3qx5nw5fkccpz"; + procMacro = true; + authors = [ + "Daniel Wagner-Hall " + "Daniel Henry-Mantilla " + "Vincent Esche " + ]; + dependencies = [ + { + name = "proc-macro-crate"; + packageId = "proc-macro-crate"; + optional = true; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "derive" "extra-traits" "parsing" ]; + } + ]; + devDependencies = [ + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" "parsing" ]; + } + ]; + features = { + "complex-expressions" = [ "syn/full" ]; + "default" = [ "std" ]; + "proc-macro-crate" = [ "dep:proc-macro-crate" ]; + "std" = [ "proc-macro-crate" ]; + }; + resolvedDefaultFeatures = [ "proc-macro-crate" "std" ]; + }; + "number_prefix" = rec { + crateName = "number_prefix"; + version = "0.4.0"; + edition = "2015"; + sha256 = "1wvh13wvlajqxkb1filsfzbrnq0vrmrw298v2j3sy82z1rm282w3"; + authors = [ + "Benjamin Sago " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "oauth-kit" = rec { + crateName = "oauth-kit"; + version = "0.1.0"; + edition = "2021"; + src = lib.cleanSourceWith { filter = sourceFilter; src = ./oauth-kit; }; + libName = "oauth_kit"; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "axum"; + packageId = "axum"; + optional = true; + } + { + name = "axum-extra"; + packageId = "axum-extra"; + optional = true; + features = [ "typed-header" ]; + } + { + name = "oauth2"; + packageId = "oauth2"; + } + { + name = "openidconnect"; + packageId = "openidconnect"; + optional = true; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + usesDefaultFeatures = false; + features = [ "json" "rustls-tls" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "macros" ]; + } + { + name = "tower-sessions"; + packageId = "tower-sessions"; + optional = true; + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "url"; + packageId = "url"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "full" ]; + } + { + name = "tower-sessions"; + packageId = "tower-sessions"; + features = [ "memory-store" ]; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + } + ]; + features = { + "axum-integration" = [ "dep:axum" "dep:axum-extra" "dep:tower-sessions" ]; + "default" = [ "axum-integration" "oidc" ]; + "oidc" = [ "dep:openidconnect" ]; + }; + resolvedDefaultFeatures = [ "axum-integration" "default" "oidc" ]; + }; + "oauth2" = rec { + crateName = "oauth2"; + version = "5.0.0"; + edition = "2021"; + sha256 = "0zfn67m93qfh9gyxxx1hj6yprk9dkr3hm1mi4ni23pqlj3kikqji"; + authors = [ + "Alex Crichton " + "Florin Lipan " + "David A. Ramos " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.21.7"; + } + { + name = "chrono"; + packageId = "chrono"; + usesDefaultFeatures = false; + features = [ "clock" "serde" "std" "wasmbind" ]; + } + { + name = "getrandom"; + packageId = "getrandom 0.2.17"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "js" ]; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_path_to_error"; + packageId = "serde_path_to_error"; + } + { + name = "sha2"; + packageId = "sha2"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "url"; + packageId = "url"; + features = [ "serde" ]; + } + ]; + features = { + "curl" = [ "dep:curl" ]; + "default" = [ "reqwest" "rustls-tls" ]; + "native-tls" = [ "reqwest/native-tls" ]; + "reqwest" = [ "dep:reqwest" ]; + "reqwest-blocking" = [ "reqwest/blocking" ]; + "rustls-tls" = [ "reqwest/rustls-tls" ]; + "ureq" = [ "dep:ureq" ]; + }; + resolvedDefaultFeatures = [ "default" "reqwest" "rustls-tls" ]; + }; + "objc2" = rec { + crateName = "objc2"; + version = "0.6.3"; + edition = "2021"; + sha256 = "01ccrb558qav2rqrmk0clzqzdd6r1rmicqnf55xqam7cw2f5khmp"; + authors = [ + "Mads Marquart " + ]; + dependencies = [ + { + name = "objc2-encode"; + packageId = "objc2-encode"; + usesDefaultFeatures = false; + } + { + name = "objc2-exception-helper"; + packageId = "objc2-exception-helper"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "objc2-encode/alloc" ]; + "catch-all" = [ "exception" ]; + "default" = [ "std" ]; + "exception" = [ "dep:objc2-exception-helper" ]; + "gnustep-1-7" = [ "unstable-static-class" "objc2-exception-helper?/gnustep-1-7" ]; + "gnustep-1-8" = [ "gnustep-1-7" "objc2-exception-helper?/gnustep-1-8" ]; + "gnustep-1-9" = [ "gnustep-1-8" "objc2-exception-helper?/gnustep-1-9" ]; + "gnustep-2-0" = [ "gnustep-1-9" "objc2-exception-helper?/gnustep-2-0" ]; + "gnustep-2-1" = [ "gnustep-2-0" "objc2-exception-helper?/gnustep-2-1" ]; + "std" = [ "alloc" "objc2-encode/std" ]; + "unstable-compiler-rt" = [ "gnustep-1-7" ]; + "unstable-gnustep-strict-apple-compat" = [ "gnustep-1-7" ]; + "unstable-static-class" = [ "dep:objc2-proc-macros" ]; + "unstable-static-class-inlined" = [ "unstable-static-class" ]; + "unstable-static-sel" = [ "dep:objc2-proc-macros" ]; + "unstable-static-sel-inlined" = [ "unstable-static-sel" ]; + "unstable-winobjc" = [ "gnustep-1-8" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "exception" "std" ]; + }; + "objc2-app-kit" = rec { + crateName = "objc2-app-kit"; + version = "0.3.2"; + edition = "2021"; + sha256 = "132ijwni8lsi8phq7wnmialkxp46zx998fns3zq5np0ya1mr77nl"; + libName = "objc2_app_kit"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "block2"; + packageId = "block2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-cloud-kit"; + packageId = "objc2-cloud-kit"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ("apple" == target."vendor" or null); + features = [ "CKContainer" "CKRecord" "CKShare" "CKShareMetadata" ]; + } + { + name = "objc2-core-data"; + packageId = "objc2-core-data"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ("apple" == target."vendor" or null); + features = [ "NSAttributeDescription" "NSEntityDescription" "NSFetchRequest" "NSManagedObjectContext" "NSManagedObjectModel" "NSPersistentStoreRequest" "NSPropertyDescription" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + features = [ "CFCGTypes" "CFDate" "objc2" ]; + } + { + name = "objc2-core-graphics"; + packageId = "objc2-core-graphics"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ("apple" == target."vendor" or null); + features = [ "CGColor" "CGColorSpace" "CGContext" "CGDirectDisplay" "CGEventTypes" "CGFont" "CGImage" "CGPath" "objc2" ]; + } + { + name = "objc2-core-image"; + packageId = "objc2-core-image"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ("apple" == target."vendor" or null); + features = [ "CIColor" "CIContext" "CIFilter" "CIImage" ]; + } + { + name = "objc2-core-text"; + packageId = "objc2-core-text"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ("apple" == target."vendor" or null); + features = [ "CTFont" "CTFontCollection" "CTFontDescriptor" "CTGlyphInfo" "objc2" ]; + } + { + name = "objc2-core-video"; + packageId = "objc2-core-video"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ("apple" == target."vendor" or null); + features = [ "CVBase" "objc2" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "objc2-quartz-core"; + packageId = "objc2-quartz-core"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ("apple" == target."vendor" or null); + features = [ "CADisplayLink" "CALayer" "CAMediaTiming" "CAMediaTimingFunction" "CAOpenGLLayer" ]; + } + ]; + features = { + "NSATSTypesetter" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSGeometry" "objc2-foundation/NSRange" "objc2-foundation/objc2-core-foundation" ]; + "NSAccessibility" = [ "objc2-foundation/NSArray" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSAccessibilityColor" = [ "objc2-foundation/NSString" ]; + "NSAccessibilityConstants" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSAccessibilityCustomAction" = [ "objc2-foundation/NSString" ]; + "NSAccessibilityCustomRotor" = [ "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSAccessibilityElement" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSAccessibilityProtocols" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSData" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSValue" "objc2-foundation/objc2-core-foundation" ]; + "NSActionCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSAdaptiveImageGlyph" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSAffineTransform" = [ "objc2-foundation/NSAffineTransform" ]; + "NSAlert" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "NSAlignmentFeedbackFilter" = [ "objc2-foundation/NSArray" "objc2-foundation/NSGeometry" "objc2-foundation/objc2-core-foundation" ]; + "NSAnimation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "NSAnimationContext" = [ "objc2-foundation/NSDate" ]; + "NSAppearance" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSAppleScriptExtensions" = [ "objc2-foundation/NSAppleScript" "objc2-foundation/NSAttributedString" ]; + "NSApplication" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSException" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSUserActivity" ]; + "NSApplicationScripting" = [ "objc2-foundation/NSArray" ]; + "NSArrayController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSIndexSet" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" ]; + "NSAttributedString" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFileWrapper" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSBackgroundExtensionView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSBezierPath" = [ "objc2-foundation/NSAffineTransform" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSBitmapImageRep" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSBox" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSBrowser" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexPath" "objc2-foundation/NSIndexSet" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSBrowserCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSButton" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSButtonCell" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSButtonTouchBarItem" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSCIImageRep" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSCachedImageRep" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSCandidateListTouchBarItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSCell" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSFormatter" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSClickGestureRecognizer" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "NSClipView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSCollectionView" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexPath" "objc2-foundation/NSIndexSet" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSCollectionViewCompositionalLayout" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSCollectionViewFlowLayout" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSCollectionViewGridLayout" = [ "objc2-foundation/NSArray" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSCollectionViewLayout" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSCollectionViewTransitionLayout" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSColor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSColorList" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSColorPanel" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSColorPicker" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSColorPickerTouchBarItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSColorPicking" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSColorSpace" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSColorWell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSComboBox" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSComboBoxCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSComboButton" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSControl" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSFormatter" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSController" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "NSCursor" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSCustomImageRep" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSCustomTouchBarItem" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSDataAsset" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSData" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSDatePicker" = [ "objc2-foundation/NSCalendar" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSGeometry" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSTimeZone" "objc2-foundation/objc2-core-foundation" ]; + "NSDatePickerCell" = [ "bitflags" "objc2-foundation/NSCalendar" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSTimeZone" ]; + "NSDictionaryController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSDiffableDataSource" = [ "objc2-foundation/NSArray" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSDirection" = [ "bitflags" ]; + "NSDockTile" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSDocument" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFilePresenter" "objc2-foundation/NSFileVersion" "objc2-foundation/NSFileWrapper" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSUndoManager" ]; + "NSDocumentController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSDocumentScripting" = [ "objc2-foundation/NSScriptCommand" "objc2-foundation/NSScriptObjectSpecifiers" "objc2-foundation/NSScriptStandardSuiteCommands" "objc2-foundation/NSString" ]; + "NSDragging" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSDraggingItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSDraggingSession" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSDrawer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSEPSImageRep" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSErrors" = [ "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSString" ]; + "NSEvent" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSFilePromiseProvider" = [ "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSFilePromiseReceiver" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSFileWrapperExtensions" = [ "objc2-foundation/NSFileWrapper" ]; + "NSFont" = [ "objc2-foundation/NSAffineTransform" "objc2-foundation/NSCharacterSet" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSFontAssetRequest" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSProgress" ]; + "NSFontCollection" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSLocale" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "NSFontDescriptor" = [ "bitflags" "objc2-foundation/NSAffineTransform" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "NSFontManager" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "NSFontPanel" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSForm" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSFormCell" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSGestureRecognizer" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSGlassEffectView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSGlyphGenerator" = [ "objc2-foundation/NSAttributedString" ]; + "NSGlyphInfo" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSGradient" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSGraphics" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSGraphicsContext" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSGridView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/objc2-core-foundation" ]; + "NSGroupTouchBarItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSHelpManager" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSBundle" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSImage" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSItemProvider" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSImageCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSImageRep" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSImageView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSInputManager" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSGeometry" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSInputServer" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSInterfaceStyle" = [ "objc2-foundation/NSString" ]; + "NSItemBadge" = [ "objc2-foundation/NSString" ]; + "NSItemProvider" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSItemProvider" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSKeyValueBinding" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSLayoutAnchor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSLayoutConstraint" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSLayoutGuide" = [ "objc2-foundation/NSArray" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSLayoutManager" = [ "bitflags" "objc2-foundation/NSAffineTransform" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSLevelIndicator" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSLevelIndicatorCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSMagnificationGestureRecognizer" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "NSMatrix" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSMediaLibraryBrowserController" = [ "bitflags" "objc2-foundation/NSGeometry" "objc2-foundation/objc2-core-foundation" ]; + "NSMenu" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSZone" "objc2-foundation/objc2-core-foundation" ]; + "NSMenuItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSMenuItemBadge" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSMenuItemCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSMenuToolbarItem" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSMovie" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "NSNib" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSNibConnector" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSNibControlConnector" = [ "objc2-foundation/NSObject" ]; + "NSNibOutletConnector" = [ "objc2-foundation/NSObject" ]; + "NSObjectController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" ]; + "NSOpenGL" = [ "objc2-foundation/NSData" "objc2-foundation/NSLock" "objc2-foundation/NSObject" ]; + "NSOpenGLLayer" = [ "objc2-foundation/NSObject" ]; + "NSOpenGLView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSOpenPanel" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSOutlineView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexSet" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSPDFImageRep" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSPDFInfo" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSPDFPanel" = [ "bitflags" "objc2-foundation/NSString" ]; + "NSPICTImageRep" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSPageController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSPageLayout" = [ "objc2-foundation/NSArray" ]; + "NSPanGestureRecognizer" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSPanel" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSParagraphStyle" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCharacterSet" "objc2-foundation/NSDictionary" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSPasteboard" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFileWrapper" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSPasteboardItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "NSPathCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSPathComponentCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSPathControl" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSPathControlItem" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSPersistentDocument" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFilePresenter" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSPickerTouchBarItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSPopUpButton" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSPopUpButtonCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSPopover" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSPopoverTouchBarItem" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSPredicateEditor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSPredicateEditorRowTemplate" = [ "objc2-foundation/NSArray" "objc2-foundation/NSComparisonPredicate" "objc2-foundation/NSExpression" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "NSPressGestureRecognizer" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "NSPreviewRepresentingActivityItem" = [ "objc2-foundation/NSItemProvider" "objc2-foundation/NSString" ]; + "NSPrintInfo" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSPrintOperation" = [ "objc2-foundation/NSData" "objc2-foundation/NSGeometry" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSPrintPanel" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "NSPrinter" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSProgressIndicator" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSProgress" "objc2-foundation/objc2-core-foundation" ]; + "NSResponder" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSUndoManager" ]; + "NSRotationGestureRecognizer" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "NSRuleEditor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexSet" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSRulerMarker" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSRulerView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" "objc2-foundation/objc2-core-foundation" ]; + "NSRunningApplication" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSSavePanel" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSScreen" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSScrollView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSScroller" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSScrubber" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexSet" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSScrubberItemView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSScrubberLayout" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexSet" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/objc2-core-foundation" ]; + "NSSearchField" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSearchFieldCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSearchToolbarItem" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSSecureTextField" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSegmentedCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSegmentedControl" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSShadow" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSSharingCollaborationModeRestriction" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSSharingService" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSGeometry" "objc2-foundation/NSItemProvider" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSSharingServicePickerToolbarItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSSharingServicePickerTouchBarItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSSlider" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSliderAccessory" = [ "objc2-foundation/NSObject" ]; + "NSSliderCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSliderTouchBarItem" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSSound" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSSpeechRecognizer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "NSSpeechSynthesizer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSSpellChecker" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSOrthography" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSTextCheckingResult" "objc2-foundation/objc2-core-foundation" ]; + "NSSplitView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSplitViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSplitViewItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "NSSplitViewItemAccessoryViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSStackView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSStatusBarButton" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSStatusItem" = [ "bitflags" "objc2-foundation/NSAttributedString" "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSStepper" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSStepperCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSStepperTouchBarItem" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSFormatter" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSStoryboard" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSString" ]; + "NSStoryboardSegue" = [ "objc2-foundation/NSString" ]; + "NSStringDrawing" = [ "bitflags" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSSwitch" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTabView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTabViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTabViewItem" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSTableCellView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTableColumn" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" ]; + "NSTableHeaderCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSTableHeaderView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTableRowView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTableView" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSEnumerator" "objc2-foundation/NSGeometry" "objc2-foundation/NSIndexSet" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/objc2-core-foundation" ]; + "NSTableViewRowAction" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSText" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSTextAlternatives" = [ "objc2-foundation/NSArray" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextAttachment" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSFileWrapper" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextAttachmentCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSTextCheckingClient" = [ "bitflags" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSTextCheckingController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSTextCheckingResult" ]; + "NSTextContainer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTextContent" = [ "objc2-foundation/NSString" ]; + "NSTextContentManager" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSTextElement" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" ]; + "NSTextField" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSTextCheckingResult" "objc2-foundation/objc2-core-foundation" ]; + "NSTextFieldCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextFinder" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSValue" "objc2-foundation/objc2-core-foundation" ]; + "NSTextInputClient" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSGeometry" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSTextInputContext" = [ "objc2-foundation/NSArray" "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "NSTextInsertionIndicator" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTextLayoutFragment" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSOperation" ]; + "NSTextLayoutManager" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "NSTextLineFragment" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSTextList" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextListElement" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "NSTextRange" = [ "objc2-foundation/NSObjCRuntime" ]; + "NSTextSelection" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextSelectionNavigation" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "NSTextStorage" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSTextStorageScripting" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" ]; + "NSTextTable" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/objc2-core-foundation" ]; + "NSTextView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSOrthography" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSTextCheckingResult" "objc2-foundation/NSURL" "objc2-foundation/NSUndoManager" "objc2-foundation/NSValue" "objc2-foundation/objc2-core-foundation" ]; + "NSTintConfiguration" = [ "objc2-foundation/NSObject" ]; + "NSTitlebarAccessoryViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTokenField" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCharacterSet" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSTokenFieldCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCharacterSet" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSToolbar" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSNotification" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "NSToolbarItem" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSToolbarItemGroup" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTouch" = [ "bitflags" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTouchBar" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "NSTouchBarItem" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTrackingArea" = [ "bitflags" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSTrackingSeparatorToolbarItem" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTreeController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" ]; + "NSTreeNode" = [ "objc2-foundation/NSArray" "objc2-foundation/NSIndexPath" "objc2-foundation/NSSortDescriptor" ]; + "NSTypesetter" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSUserActivity" = [ "objc2-foundation/NSString" "objc2-foundation/NSUserActivity" ]; + "NSUserDefaultsController" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSUserDefaults" ]; + "NSUserInterfaceCompression" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSUserInterfaceItemIdentification" = [ "objc2-foundation/NSString" ]; + "NSUserInterfaceItemSearching" = [ "objc2-foundation/NSArray" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSView" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSViewController" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSExtensionContext" "objc2-foundation/NSExtensionRequestHandling" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/objc2-core-foundation" ]; + "NSViewLayoutRegion" = [ "objc2-foundation/NSGeometry" "objc2-foundation/objc2-core-foundation" ]; + "NSVisualEffectView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "NSWindow" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSUndoManager" "objc2-foundation/NSValue" "objc2-foundation/objc2-core-foundation" ]; + "NSWindowController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSWindowRestoration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "NSWindowScripting" = [ "objc2-foundation/NSScriptCommand" "objc2-foundation/NSScriptStandardSuiteCommands" ]; + "NSWindowTab" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSString" ]; + "NSWindowTabGroup" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "NSWorkspace" = [ "bitflags" "objc2-foundation/NSAppleEventDescriptor" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFileManager" "objc2-foundation/NSGeometry" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSValue" "objc2-foundation/objc2-core-foundation" ]; + "NSWritingToolsCoordinator" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSGeometry" "objc2-foundation/NSRange" "objc2-foundation/NSUUID" "objc2-foundation/NSValue" "objc2-foundation/objc2-core-foundation" ]; + "NSWritingToolsCoordinatorContext" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSRange" "objc2-foundation/NSUUID" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "AppKitDefines" "AppKitErrors" "NSATSTypesetter" "NSAccessibility" "NSAccessibilityColor" "NSAccessibilityConstants" "NSAccessibilityCustomAction" "NSAccessibilityCustomRotor" "NSAccessibilityElement" "NSAccessibilityProtocols" "NSActionCell" "NSAdaptiveImageGlyph" "NSAffineTransform" "NSAlert" "NSAlignmentFeedbackFilter" "NSAnimation" "NSAnimationContext" "NSAppearance" "NSAppleScriptExtensions" "NSApplication" "NSApplicationScripting" "NSArrayController" "NSAttributedString" "NSBackgroundExtensionView" "NSBezierPath" "NSBitmapImageRep" "NSBox" "NSBrowser" "NSBrowserCell" "NSButton" "NSButtonCell" "NSButtonTouchBarItem" "NSCIImageRep" "NSCachedImageRep" "NSCandidateListTouchBarItem" "NSCell" "NSClickGestureRecognizer" "NSClipView" "NSCollectionView" "NSCollectionViewCompositionalLayout" "NSCollectionViewFlowLayout" "NSCollectionViewGridLayout" "NSCollectionViewLayout" "NSCollectionViewTransitionLayout" "NSColor" "NSColorList" "NSColorPanel" "NSColorPicker" "NSColorPickerTouchBarItem" "NSColorPicking" "NSColorSampler" "NSColorSpace" "NSColorWell" "NSComboBox" "NSComboBoxCell" "NSComboButton" "NSControl" "NSController" "NSCursor" "NSCustomImageRep" "NSCustomTouchBarItem" "NSDataAsset" "NSDatePicker" "NSDatePickerCell" "NSDictionaryController" "NSDiffableDataSource" "NSDirection" "NSDockTile" "NSDocument" "NSDocumentController" "NSDocumentScripting" "NSDragging" "NSDraggingItem" "NSDraggingSession" "NSDrawer" "NSEPSImageRep" "NSErrors" "NSEvent" "NSFilePromiseProvider" "NSFilePromiseReceiver" "NSFileWrapperExtensions" "NSFont" "NSFontAssetRequest" "NSFontCollection" "NSFontDescriptor" "NSFontManager" "NSFontPanel" "NSForm" "NSFormCell" "NSGestureRecognizer" "NSGlassEffectView" "NSGlyphGenerator" "NSGlyphInfo" "NSGradient" "NSGraphics" "NSGraphicsContext" "NSGridView" "NSGroupTouchBarItem" "NSHapticFeedback" "NSHelpManager" "NSImage" "NSImageCell" "NSImageRep" "NSImageView" "NSInputManager" "NSInputServer" "NSInterfaceStyle" "NSItemBadge" "NSItemProvider" "NSKeyValueBinding" "NSLayoutAnchor" "NSLayoutConstraint" "NSLayoutGuide" "NSLayoutManager" "NSLevelIndicator" "NSLevelIndicatorCell" "NSMagnificationGestureRecognizer" "NSMatrix" "NSMediaLibraryBrowserController" "NSMenu" "NSMenuItem" "NSMenuItemBadge" "NSMenuItemCell" "NSMenuToolbarItem" "NSMovie" "NSNib" "NSNibConnector" "NSNibControlConnector" "NSNibDeclarations" "NSNibLoading" "NSNibOutletConnector" "NSObjectController" "NSOpenGL" "NSOpenGLLayer" "NSOpenGLView" "NSOpenPanel" "NSOutlineView" "NSPDFImageRep" "NSPDFInfo" "NSPDFPanel" "NSPICTImageRep" "NSPageController" "NSPageLayout" "NSPanGestureRecognizer" "NSPanel" "NSParagraphStyle" "NSPasteboard" "NSPasteboardItem" "NSPathCell" "NSPathComponentCell" "NSPathControl" "NSPathControlItem" "NSPersistentDocument" "NSPickerTouchBarItem" "NSPopUpButton" "NSPopUpButtonCell" "NSPopover" "NSPopoverTouchBarItem" "NSPredicateEditor" "NSPredicateEditorRowTemplate" "NSPressGestureRecognizer" "NSPressureConfiguration" "NSPreviewRepresentingActivityItem" "NSPrintInfo" "NSPrintOperation" "NSPrintPanel" "NSPrinter" "NSProgressIndicator" "NSResponder" "NSRotationGestureRecognizer" "NSRuleEditor" "NSRulerMarker" "NSRulerView" "NSRunningApplication" "NSSavePanel" "NSScreen" "NSScrollView" "NSScroller" "NSScrubber" "NSScrubberItemView" "NSScrubberLayout" "NSSearchField" "NSSearchFieldCell" "NSSearchToolbarItem" "NSSecureTextField" "NSSegmentedCell" "NSSegmentedControl" "NSShadow" "NSSharingCollaborationModeRestriction" "NSSharingService" "NSSharingServicePickerToolbarItem" "NSSharingServicePickerTouchBarItem" "NSSlider" "NSSliderAccessory" "NSSliderCell" "NSSliderTouchBarItem" "NSSound" "NSSpeechRecognizer" "NSSpeechSynthesizer" "NSSpellChecker" "NSSpellProtocol" "NSSplitView" "NSSplitViewController" "NSSplitViewItem" "NSSplitViewItemAccessoryViewController" "NSStackView" "NSStatusBar" "NSStatusBarButton" "NSStatusItem" "NSStepper" "NSStepperCell" "NSStepperTouchBarItem" "NSStoryboard" "NSStoryboardSegue" "NSStringDrawing" "NSSwitch" "NSTabView" "NSTabViewController" "NSTabViewItem" "NSTableCellView" "NSTableColumn" "NSTableHeaderCell" "NSTableHeaderView" "NSTableRowView" "NSTableView" "NSTableViewDiffableDataSource" "NSTableViewRowAction" "NSText" "NSTextAlternatives" "NSTextAttachment" "NSTextAttachmentCell" "NSTextCheckingClient" "NSTextCheckingController" "NSTextContainer" "NSTextContent" "NSTextContentManager" "NSTextElement" "NSTextField" "NSTextFieldCell" "NSTextFinder" "NSTextInputClient" "NSTextInputContext" "NSTextInsertionIndicator" "NSTextLayoutFragment" "NSTextLayoutManager" "NSTextLineFragment" "NSTextList" "NSTextListElement" "NSTextRange" "NSTextSelection" "NSTextSelectionNavigation" "NSTextStorage" "NSTextStorageScripting" "NSTextTable" "NSTextView" "NSTextViewportLayoutController" "NSTintConfiguration" "NSTintProminence" "NSTitlebarAccessoryViewController" "NSTokenField" "NSTokenFieldCell" "NSToolbar" "NSToolbarItem" "NSToolbarItemGroup" "NSTouch" "NSTouchBar" "NSTouchBarItem" "NSTrackingArea" "NSTrackingSeparatorToolbarItem" "NSTreeController" "NSTreeNode" "NSTypesetter" "NSUserActivity" "NSUserDefaultsController" "NSUserInterfaceCompression" "NSUserInterfaceItemIdentification" "NSUserInterfaceItemSearching" "NSUserInterfaceLayout" "NSUserInterfaceValidation" "NSView" "NSViewController" "NSViewLayoutRegion" "NSVisualEffectView" "NSWindow" "NSWindowController" "NSWindowRestoration" "NSWindowScripting" "NSWindowTab" "NSWindowTabGroup" "NSWorkspace" "NSWritingToolsCoordinator" "NSWritingToolsCoordinatorAnimationParameters" "NSWritingToolsCoordinatorContext" "bitflags" "block2" "libc" "objc2-cloud-kit" "objc2-core-data" "objc2-core-foundation" "objc2-core-graphics" "objc2-core-image" "objc2-core-text" "objc2-core-video" "objc2-quartz-core" ]; + "gnustep-1-7" = [ "objc2/gnustep-1-7" "block2?/gnustep-1-7" "objc2-foundation/gnustep-1-7" "objc2-core-data?/gnustep-1-7" "objc2-quartz-core?/gnustep-1-7" ]; + "gnustep-1-8" = [ "gnustep-1-7" "objc2/gnustep-1-8" "block2?/gnustep-1-8" "objc2-foundation/gnustep-1-8" "objc2-core-data?/gnustep-1-8" "objc2-quartz-core?/gnustep-1-8" ]; + "gnustep-1-9" = [ "gnustep-1-8" "objc2/gnustep-1-9" "block2?/gnustep-1-9" "objc2-foundation/gnustep-1-9" "objc2-core-data?/gnustep-1-9" "objc2-quartz-core?/gnustep-1-9" ]; + "gnustep-2-0" = [ "gnustep-1-9" "objc2/gnustep-2-0" "block2?/gnustep-2-0" "objc2-foundation/gnustep-2-0" "objc2-core-data?/gnustep-2-0" "objc2-quartz-core?/gnustep-2-0" ]; + "gnustep-2-1" = [ "gnustep-2-0" "objc2/gnustep-2-1" "block2?/gnustep-2-1" "objc2-foundation/gnustep-2-1" "objc2-core-data?/gnustep-2-1" "objc2-quartz-core?/gnustep-2-1" ]; + "libc" = [ "dep:libc" ]; + "objc2-cloud-kit" = [ "dep:objc2-cloud-kit" ]; + "objc2-core-data" = [ "dep:objc2-core-data" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "objc2-core-graphics" = [ "dep:objc2-core-graphics" ]; + "objc2-core-image" = [ "dep:objc2-core-image" ]; + "objc2-core-text" = [ "dep:objc2-core-text" ]; + "objc2-core-video" = [ "dep:objc2-core-video" ]; + "objc2-open-gl" = [ "dep:objc2-open-gl" ]; + "objc2-quartz-core" = [ "dep:objc2-quartz-core" ]; + "objc2-uniform-type-identifiers" = [ "dep:objc2-uniform-type-identifiers" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "AppKitDefines" "AppKitErrors" "NSATSTypesetter" "NSAccessibility" "NSAccessibilityColor" "NSAccessibilityConstants" "NSAccessibilityCustomAction" "NSAccessibilityCustomRotor" "NSAccessibilityElement" "NSAccessibilityProtocols" "NSActionCell" "NSAdaptiveImageGlyph" "NSAffineTransform" "NSAlert" "NSAlignmentFeedbackFilter" "NSAnimation" "NSAnimationContext" "NSAppearance" "NSAppleScriptExtensions" "NSApplication" "NSApplicationScripting" "NSArrayController" "NSAttributedString" "NSBackgroundExtensionView" "NSBezierPath" "NSBitmapImageRep" "NSBox" "NSBrowser" "NSBrowserCell" "NSButton" "NSButtonCell" "NSButtonTouchBarItem" "NSCIImageRep" "NSCachedImageRep" "NSCandidateListTouchBarItem" "NSCell" "NSClickGestureRecognizer" "NSClipView" "NSCollectionView" "NSCollectionViewCompositionalLayout" "NSCollectionViewFlowLayout" "NSCollectionViewGridLayout" "NSCollectionViewLayout" "NSCollectionViewTransitionLayout" "NSColor" "NSColorList" "NSColorPanel" "NSColorPicker" "NSColorPickerTouchBarItem" "NSColorPicking" "NSColorSampler" "NSColorSpace" "NSColorWell" "NSComboBox" "NSComboBoxCell" "NSComboButton" "NSControl" "NSController" "NSCursor" "NSCustomImageRep" "NSCustomTouchBarItem" "NSDataAsset" "NSDatePicker" "NSDatePickerCell" "NSDictionaryController" "NSDiffableDataSource" "NSDirection" "NSDockTile" "NSDocument" "NSDocumentController" "NSDocumentScripting" "NSDragging" "NSDraggingItem" "NSDraggingSession" "NSDrawer" "NSEPSImageRep" "NSErrors" "NSEvent" "NSFilePromiseProvider" "NSFilePromiseReceiver" "NSFileWrapperExtensions" "NSFont" "NSFontAssetRequest" "NSFontCollection" "NSFontDescriptor" "NSFontManager" "NSFontPanel" "NSForm" "NSFormCell" "NSGestureRecognizer" "NSGlassEffectView" "NSGlyphGenerator" "NSGlyphInfo" "NSGradient" "NSGraphics" "NSGraphicsContext" "NSGridView" "NSGroupTouchBarItem" "NSHapticFeedback" "NSHelpManager" "NSImage" "NSImageCell" "NSImageRep" "NSImageView" "NSInputManager" "NSInputServer" "NSInterfaceStyle" "NSItemBadge" "NSItemProvider" "NSKeyValueBinding" "NSLayoutAnchor" "NSLayoutConstraint" "NSLayoutGuide" "NSLayoutManager" "NSLevelIndicator" "NSLevelIndicatorCell" "NSMagnificationGestureRecognizer" "NSMatrix" "NSMediaLibraryBrowserController" "NSMenu" "NSMenuItem" "NSMenuItemBadge" "NSMenuItemCell" "NSMenuToolbarItem" "NSMovie" "NSNib" "NSNibConnector" "NSNibControlConnector" "NSNibDeclarations" "NSNibLoading" "NSNibOutletConnector" "NSObjectController" "NSOpenGL" "NSOpenGLLayer" "NSOpenGLView" "NSOpenPanel" "NSOutlineView" "NSPDFImageRep" "NSPDFInfo" "NSPDFPanel" "NSPICTImageRep" "NSPageController" "NSPageLayout" "NSPanGestureRecognizer" "NSPanel" "NSParagraphStyle" "NSPasteboard" "NSPasteboardItem" "NSPathCell" "NSPathComponentCell" "NSPathControl" "NSPathControlItem" "NSPersistentDocument" "NSPickerTouchBarItem" "NSPopUpButton" "NSPopUpButtonCell" "NSPopover" "NSPopoverTouchBarItem" "NSPredicateEditor" "NSPredicateEditorRowTemplate" "NSPressGestureRecognizer" "NSPressureConfiguration" "NSPreviewRepresentingActivityItem" "NSPrintInfo" "NSPrintOperation" "NSPrintPanel" "NSPrinter" "NSProgressIndicator" "NSResponder" "NSRotationGestureRecognizer" "NSRuleEditor" "NSRulerMarker" "NSRulerView" "NSRunningApplication" "NSSavePanel" "NSScreen" "NSScrollView" "NSScroller" "NSScrubber" "NSScrubberItemView" "NSScrubberLayout" "NSSearchField" "NSSearchFieldCell" "NSSearchToolbarItem" "NSSecureTextField" "NSSegmentedCell" "NSSegmentedControl" "NSShadow" "NSSharingCollaborationModeRestriction" "NSSharingService" "NSSharingServicePickerToolbarItem" "NSSharingServicePickerTouchBarItem" "NSSlider" "NSSliderAccessory" "NSSliderCell" "NSSliderTouchBarItem" "NSSound" "NSSpeechRecognizer" "NSSpeechSynthesizer" "NSSpellChecker" "NSSpellProtocol" "NSSplitView" "NSSplitViewController" "NSSplitViewItem" "NSSplitViewItemAccessoryViewController" "NSStackView" "NSStatusBar" "NSStatusBarButton" "NSStatusItem" "NSStepper" "NSStepperCell" "NSStepperTouchBarItem" "NSStoryboard" "NSStoryboardSegue" "NSStringDrawing" "NSSwitch" "NSTabView" "NSTabViewController" "NSTabViewItem" "NSTableCellView" "NSTableColumn" "NSTableHeaderCell" "NSTableHeaderView" "NSTableRowView" "NSTableView" "NSTableViewDiffableDataSource" "NSTableViewRowAction" "NSText" "NSTextAlternatives" "NSTextAttachment" "NSTextAttachmentCell" "NSTextCheckingClient" "NSTextCheckingController" "NSTextContainer" "NSTextContent" "NSTextContentManager" "NSTextElement" "NSTextField" "NSTextFieldCell" "NSTextFinder" "NSTextInputClient" "NSTextInputContext" "NSTextInsertionIndicator" "NSTextLayoutFragment" "NSTextLayoutManager" "NSTextLineFragment" "NSTextList" "NSTextListElement" "NSTextRange" "NSTextSelection" "NSTextSelectionNavigation" "NSTextStorage" "NSTextStorageScripting" "NSTextTable" "NSTextView" "NSTextViewportLayoutController" "NSTintConfiguration" "NSTintProminence" "NSTitlebarAccessoryViewController" "NSTokenField" "NSTokenFieldCell" "NSToolbar" "NSToolbarItem" "NSToolbarItemGroup" "NSTouch" "NSTouchBar" "NSTouchBarItem" "NSTrackingArea" "NSTrackingSeparatorToolbarItem" "NSTreeController" "NSTreeNode" "NSTypesetter" "NSUserActivity" "NSUserDefaultsController" "NSUserInterfaceCompression" "NSUserInterfaceItemIdentification" "NSUserInterfaceItemSearching" "NSUserInterfaceLayout" "NSUserInterfaceValidation" "NSView" "NSViewController" "NSViewLayoutRegion" "NSVisualEffectView" "NSWindow" "NSWindowController" "NSWindowRestoration" "NSWindowScripting" "NSWindowTab" "NSWindowTabGroup" "NSWorkspace" "NSWritingToolsCoordinator" "NSWritingToolsCoordinatorAnimationParameters" "NSWritingToolsCoordinatorContext" "alloc" "bitflags" "block2" "default" "libc" "objc2-cloud-kit" "objc2-core-data" "objc2-core-foundation" "objc2-core-graphics" "objc2-core-image" "objc2-core-text" "objc2-core-video" "objc2-quartz-core" "std" ]; + }; + "objc2-cloud-kit" = rec { + crateName = "objc2-cloud-kit"; + version = "0.3.2"; + edition = "2021"; + sha256 = "0714xrydi9wvh25s2110sjfpx9mv4xs9p4ys71q8fhxvh3c79bbk"; + libName = "objc2_cloud_kit"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "CKAcceptSharesOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKAllowedSharingOptions" = [ "bitflags" "objc2-foundation/NSObject" ]; + "CKAsset" = [ "objc2-foundation/NSURL" ]; + "CKContainer" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CKDatabase" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKDatabaseOperation" = [ "objc2-foundation/NSOperation" ]; + "CKDiscoverAllUserIdentitiesOperation" = [ "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKDiscoverUserIdentitiesOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKError" = [ "objc2-foundation/NSString" ]; + "CKFetchDatabaseChangesOperation" = [ "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKFetchNotificationChangesOperation" = [ "objc2-foundation/NSOperation" ]; + "CKFetchRecordChangesOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKFetchRecordZoneChangesOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKFetchRecordZonesOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKFetchRecordsOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKFetchShareMetadataOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CKFetchShareParticipantsOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKFetchSubscriptionsOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKFetchWebAuthTokenOperation" = [ "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKLocationSortDescriptor" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" "objc2-foundation/block2" ]; + "CKMarkNotificationsReadOperation" = [ "objc2-foundation/NSOperation" ]; + "CKModifyBadgeOperation" = [ "objc2-foundation/NSOperation" ]; + "CKModifyRecordZonesOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKModifyRecordsOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSError" "objc2-foundation/NSOperation" ]; + "CKModifySubscriptionsOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKNotification" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "CKOperation" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKOperationGroup" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CKQuery" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" ]; + "CKQueryOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "CKRecord" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "CKRecordID" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CKRecordZone" = [ "bitflags" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CKRecordZoneID" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CKReference" = [ "objc2-foundation/NSObject" ]; + "CKServerChangeToken" = [ "objc2-foundation/NSObject" ]; + "CKShare" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CKShareAccessRequester" = [ "objc2-foundation/NSObject" ]; + "CKShareBlockedIdentity" = [ "objc2-foundation/NSObject" ]; + "CKShareMetadata" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CKShareParticipant" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CKShareRequestAccessOperation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSOperation" "objc2-foundation/NSURL" ]; + "CKSubscription" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" ]; + "CKSyncEngine" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSSet" ]; + "CKSyncEngineConfiguration" = [ "objc2-foundation/NSString" ]; + "CKSyncEngineEvent" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "CKSyncEngineRecordZoneChangeBatch" = [ "objc2-foundation/NSArray" ]; + "CKSyncEngineState" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "CKSystemSharingUIObserver" = [ "objc2-foundation/NSError" ]; + "CKUserIdentity" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSPersonNameComponents" "objc2-foundation/NSString" ]; + "CKUserIdentityLookupInfo" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSItemProvider_CKSharingSupport" = [ "objc2-foundation/NSError" "objc2-foundation/NSItemProvider" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CKAcceptSharesOperation" "CKAllowedSharingOptions" "CKAsset" "CKContainer" "CKDatabase" "CKDatabaseOperation" "CKDefines" "CKDiscoverAllUserIdentitiesOperation" "CKDiscoverUserIdentitiesOperation" "CKError" "CKFetchDatabaseChangesOperation" "CKFetchNotificationChangesOperation" "CKFetchRecordChangesOperation" "CKFetchRecordZoneChangesOperation" "CKFetchRecordZonesOperation" "CKFetchRecordsOperation" "CKFetchShareMetadataOperation" "CKFetchShareParticipantsOperation" "CKFetchSubscriptionsOperation" "CKFetchWebAuthTokenOperation" "CKLocationSortDescriptor" "CKMarkNotificationsReadOperation" "CKModifyBadgeOperation" "CKModifyRecordZonesOperation" "CKModifyRecordsOperation" "CKModifySubscriptionsOperation" "CKNotification" "CKOperation" "CKOperationGroup" "CKQuery" "CKQueryOperation" "CKRecord" "CKRecordID" "CKRecordZone" "CKRecordZoneID" "CKReference" "CKServerChangeToken" "CKShare" "CKShareAccessRequester" "CKShareBlockedIdentity" "CKShareMetadata" "CKShareParticipant" "CKShareRequestAccessOperation" "CKSubscription" "CKSyncEngine" "CKSyncEngineConfiguration" "CKSyncEngineEvent" "CKSyncEngineRecordZoneChangeBatch" "CKSyncEngineState" "CKSystemSharingUIObserver" "CKUserIdentity" "CKUserIdentityLookupInfo" "NSItemProvider_CKSharingSupport" "bitflags" "block2" "objc2-contacts" "objc2-core-location" ]; + "objc2-contacts" = [ "dep:objc2-contacts" ]; + "objc2-core-location" = [ "dep:objc2-core-location" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CKContainer" "CKRecord" "CKShare" "CKShareMetadata" "bitflags" ]; + }; + "objc2-core-data" = rec { + crateName = "objc2-core-data"; + version = "0.3.2"; + edition = "2021"; + sha256 = "1ylqsa6hpma7k4090pkil8b7c0i8dcxnh46zwhnfidgv7rjjlh0b"; + libName = "objc2_core_data"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "CloudKit" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSSet" ]; + "CoreDataErrors" = [ "objc2-foundation/NSString" ]; + "NSAtomicStore" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSAtomicStoreCacheNode" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "NSAttributeDescription" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSBatchDeleteRequest" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "NSBatchInsertRequest" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSBatchUpdateRequest" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" ]; + "NSCompositeAttributeDescription" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "NSCoreDataCoreSpotlightDelegate" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "NSCustomMigrationStage" = [ "objc2-foundation/NSError" ]; + "NSDerivedAttributeDescription" = [ "objc2-foundation/NSExpression" "objc2-foundation/NSObject" ]; + "NSEntityDescription" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSEnumerator" "objc2-foundation/NSExpression" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSEntityMapping" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSExpression" "objc2-foundation/NSString" ]; + "NSEntityMigrationPolicy" = [ "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "NSExpressionDescription" = [ "objc2-foundation/NSExpression" "objc2-foundation/NSObject" ]; + "NSFetchIndexDescription" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" ]; + "NSFetchIndexElementDescription" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSFetchRequest" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSSortDescriptor" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "NSFetchRequestExpression" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSExpression" "objc2-foundation/NSObject" ]; + "NSFetchedPropertyDescription" = [ "objc2-foundation/NSObject" ]; + "NSFetchedResultsController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSIndexPath" "objc2-foundation/NSOrderedCollectionDifference" "objc2-foundation/NSString" "NSFetchRequest" ]; + "NSIncrementalStore" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSIncrementalStoreNode" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "NSLightweightMigrationStage" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "NSManagedObject" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSKeyValueObserving" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "NSManagedObjectContext" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSLock" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSUndoManager" ]; + "NSManagedObjectID" = [ "objc2-foundation/NSObject" "objc2-foundation/NSURL" ]; + "NSManagedObjectModel" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSEnumerator" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSManagedObjectModelReference" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSMappingModel" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSMergePolicy" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "NSMigrationManager" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSMigrationStage" = [ "objc2-foundation/NSString" ]; + "NSPersistentCloudKitContainer" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "NSPersistentCloudKitContainerEvent" = [ "objc2-foundation/NSDate" "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSUUID" ]; + "NSPersistentCloudKitContainerEventRequest" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "NSPersistentCloudKitContainerOptions" = [ "objc2-foundation/NSString" ]; + "NSPersistentContainer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSPersistentHistoryChange" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSSet" ]; + "NSPersistentHistoryChangeRequest" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "NSPersistentHistoryToken" = [ "objc2-foundation/NSObject" ]; + "NSPersistentHistoryTransaction" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSPersistentStore" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSPersistentStoreCoordinator" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSLock" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSValue" ]; + "NSPersistentStoreDescription" = [ "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSPersistentStoreRequest" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "NSPersistentStoreResult" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSProgress" "NSFetchRequest" ]; + "NSPropertyDescription" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" ]; + "NSPropertyMapping" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSExpression" "objc2-foundation/NSString" ]; + "NSQueryGenerationToken" = [ "objc2-foundation/NSObject" ]; + "NSRelationshipDescription" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" ]; + "NSSaveChangesRequest" = [ "objc2-foundation/NSObject" "objc2-foundation/NSSet" ]; + "NSStagedMigrationManager" = [ "objc2-foundation/NSArray" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CloudKit" "CoreDataDefines" "CoreDataErrors" "NSAtomicStore" "NSAtomicStoreCacheNode" "NSAttributeDescription" "NSBatchDeleteRequest" "NSBatchInsertRequest" "NSBatchUpdateRequest" "NSCompositeAttributeDescription" "NSCoreDataCoreSpotlightDelegate" "NSCustomMigrationStage" "NSDerivedAttributeDescription" "NSEntityDescription" "NSEntityMapping" "NSEntityMigrationPolicy" "NSExpressionDescription" "NSFetchIndexDescription" "NSFetchIndexElementDescription" "NSFetchRequest" "NSFetchRequestExpression" "NSFetchedPropertyDescription" "NSFetchedResultsController" "NSIncrementalStore" "NSIncrementalStoreNode" "NSLightweightMigrationStage" "NSManagedObject" "NSManagedObjectContext" "NSManagedObjectID" "NSManagedObjectModel" "NSManagedObjectModelReference" "NSMappingModel" "NSMergePolicy" "NSMigrationManager" "NSMigrationStage" "NSPersistentCloudKitContainer" "NSPersistentCloudKitContainerEvent" "NSPersistentCloudKitContainerEventRequest" "NSPersistentCloudKitContainerOptions" "NSPersistentContainer" "NSPersistentHistoryChange" "NSPersistentHistoryChangeRequest" "NSPersistentHistoryToken" "NSPersistentHistoryTransaction" "NSPersistentStore" "NSPersistentStoreCoordinator" "NSPersistentStoreDescription" "NSPersistentStoreRequest" "NSPersistentStoreResult" "NSPropertyDescription" "NSPropertyMapping" "NSQueryGenerationToken" "NSRelationshipDescription" "NSSaveChangesRequest" "NSStagedMigrationManager" "bitflags" "block2" "objc2-cloud-kit" ]; + "objc2-cloud-kit" = [ "dep:objc2-cloud-kit" ]; + "objc2-core-spotlight" = [ "dep:objc2-core-spotlight" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "NSAttributeDescription" "NSEntityDescription" "NSFetchRequest" "NSManagedObjectContext" "NSManagedObjectModel" "NSPersistentStoreRequest" "NSPropertyDescription" "bitflags" ]; + }; + "objc2-core-foundation" = rec { + crateName = "objc2-core-foundation"; + version = "0.3.2"; + edition = "2021"; + sha256 = "0dnmg7606n4zifyjw4ff554xvjmi256cs8fpgpdmr91gckc0s61a"; + libName = "objc2_core_foundation"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "dispatch2"; + packageId = "dispatch2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "objc2"; + packageId = "objc2"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + features = { + "CFCalendar" = [ "bitflags" ]; + "CFData" = [ "bitflags" ]; + "CFDate" = [ "bitflags" ]; + "CFDateFormatter" = [ "bitflags" ]; + "CFFileSecurity" = [ "bitflags" ]; + "CFNumberFormatter" = [ "bitflags" ]; + "CFPropertyList" = [ "bitflags" ]; + "CFRunLoop" = [ "bitflags" ]; + "CFSocket" = [ "bitflags" ]; + "CFStream" = [ "bitflags" ]; + "CFString" = [ "bitflags" ]; + "CFStringTokenizer" = [ "bitflags" ]; + "CFURL" = [ "bitflags" ]; + "CFURLEnumerator" = [ "bitflags" ]; + "CFXMLParser" = [ "bitflags" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CFArray" "CFAttributedString" "CFAvailability" "CFBag" "CFBinaryHeap" "CFBitVector" "CFBundle" "CFByteOrder" "CFCGTypes" "CFCalendar" "CFCharacterSet" "CFData" "CFDate" "CFDateFormatter" "CFDictionary" "CFError" "CFFileDescriptor" "CFFileSecurity" "CFLocale" "CFMachPort" "CFMessagePort" "CFNotificationCenter" "CFNumber" "CFNumberFormatter" "CFPlugIn" "CFPlugInCOM" "CFPreferences" "CFPropertyList" "CFRunLoop" "CFSet" "CFSocket" "CFStream" "CFString" "CFStringEncodingExt" "CFStringTokenizer" "CFTimeZone" "CFTree" "CFURL" "CFURLAccess" "CFURLEnumerator" "CFUUID" "CFUserNotification" "CFUtilities" "CFXMLNode" "CFXMLParser" "bitflags" "block2" "dispatch2" "libc" "objc2" ]; + "dispatch2" = [ "dep:dispatch2" ]; + "libc" = [ "dep:libc" ]; + "objc2" = [ "dep:objc2" "dispatch2?/objc2" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CFArray" "CFAttributedString" "CFBase" "CFCGTypes" "CFCalendar" "CFCharacterSet" "CFData" "CFDate" "CFDictionary" "CFError" "CFFileSecurity" "CFLocale" "CFMachPort" "CFMessagePort" "CFNumber" "CFPlugInCOM" "CFRunLoop" "CFSet" "CFStream" "CFString" "CFURL" "CFUUID" "alloc" "bitflags" "objc2" "std" ]; + }; + "objc2-core-graphics" = rec { + crateName = "objc2-core-graphics"; + version = "0.3.2"; + edition = "2021"; + sha256 = "01x8413pxq0m5rwidlaczni8v5cz9dc3xqzq8l9zlpl9cv8cj8p0"; + libName = "objc2_core_graphics"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "dispatch2"; + packageId = "dispatch2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "objc2"; + packageId = "objc2"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + usesDefaultFeatures = false; + } + { + name = "objc2-io-surface"; + packageId = "objc2-io-surface"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("watchos" == target."os" or null)); + features = [ "IOSurfaceRef" ]; + } + ]; + features = { + "CGAffineTransform" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGBitmapContext" = [ "bitflags" "objc2-core-foundation/CFByteOrder" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFError" ]; + "CGColor" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CGColorConversionInfo" = [ "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFError" ]; + "CGColorSpace" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFData" ]; + "CGContext" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CGConvertColorDataWithFormat" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CGDataConsumer" = [ "objc2-core-foundation/CFData" "objc2-core-foundation/CFURL" ]; + "CGDataProvider" = [ "objc2-core-foundation/CFData" "objc2-core-foundation/CFURL" ]; + "CGDirectDisplay" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CGDisplayConfiguration" = [ "bitflags" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CGDisplayStream" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFRunLoop" ]; + "CGEXRToneMappingGamma" = [ "objc2-core-foundation/CFDictionary" ]; + "CGEvent" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFData" "objc2-core-foundation/CFMachPort" ]; + "CGEventSource" = [ "objc2-core-foundation/CFDate" ]; + "CGEventTypes" = [ "bitflags" ]; + "CGFont" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFData" "objc2-core-foundation/CFDictionary" ]; + "CGFunction" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGGeometry" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CGGradient" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" ]; + "CGImage" = [ "bitflags" "objc2-core-foundation/CFCGTypes" ]; + "CGLayer" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CGPDFArray" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGPDFContentStream" = [ "objc2-core-foundation/CFArray" ]; + "CGPDFContext" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFData" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFURL" ]; + "CGPDFDictionary" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGPDFDocument" = [ "bitflags" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFURL" ]; + "CGPDFObject" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGPDFPage" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGPDFScanner" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGPDFStream" = [ "objc2-core-foundation/CFData" ]; + "CGPDFString" = [ "objc2-core-foundation/CFDate" ]; + "CGPSConverter" = [ "objc2-core-foundation/CFDictionary" ]; + "CGPath" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" ]; + "CGPattern" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGRemoteOperation" = [ "bitflags" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDate" "objc2-core-foundation/CFMachPort" ]; + "CGRenderingBufferProvider" = [ "objc2-core-foundation/CFData" ]; + "CGSession" = [ "objc2-core-foundation/CFDictionary" ]; + "CGShading" = [ "objc2-core-foundation/CFCGTypes" ]; + "CGToneMapping" = [ "objc2-core-foundation/CFDictionary" ]; + "CGWindow" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CGAffineTransform" "CGBase" "CGBitmapContext" "CGColor" "CGColorConversionInfo" "CGColorSpace" "CGContext" "CGConvertColorDataWithFormat" "CGDataConsumer" "CGDataProvider" "CGDirectDisplay" "CGDirectDisplayMetal" "CGDirectPalette" "CGDisplayConfiguration" "CGDisplayFade" "CGDisplayStream" "CGEXRToneMappingGamma" "CGError" "CGEvent" "CGEventSource" "CGEventTypes" "CGFont" "CGFunction" "CGGeometry" "CGGradient" "CGITUToneMapping" "CGImage" "CGLayer" "CGPDFArray" "CGPDFContentStream" "CGPDFContext" "CGPDFDictionary" "CGPDFDocument" "CGPDFObject" "CGPDFOperatorTable" "CGPDFPage" "CGPDFScanner" "CGPDFStream" "CGPDFString" "CGPSConverter" "CGPath" "CGPattern" "CGRemoteOperation" "CGRenderingBufferProvider" "CGSession" "CGShading" "CGToneMapping" "CGWindow" "CGWindowLevel" "bitflags" "block2" "dispatch2" "libc" "objc2" "objc2-metal" ]; + "dispatch2" = [ "dep:dispatch2" ]; + "libc" = [ "dep:libc" ]; + "objc2" = [ "dep:objc2" "dispatch2?/objc2" "objc2-core-foundation/objc2" "objc2-io-surface?/objc2" ]; + "objc2-io-surface" = [ "dep:objc2-io-surface" ]; + "objc2-metal" = [ "dep:objc2-metal" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CGColor" "CGColorSpace" "CGContext" "CGDirectDisplay" "CGEventTypes" "CGFont" "CGImage" "CGPath" "bitflags" "objc2" ]; + }; + "objc2-core-image" = rec { + crateName = "objc2-core-image"; + version = "0.3.2"; + edition = "2021"; + sha256 = "01phi7cx2k32a8x45qr0y1623l2b8gg764c6isgj15rbinrn7mg5"; + libName = "objc2_core_image"; + dependencies = [ + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "CIBarcodeDescriptor" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" "objc2-foundation/NSUserActivity" ]; + "CIColor" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CIContext" = [ "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CIDetector" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "CIFeature" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CIFilter" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CIFilterBuiltins" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSData" "objc2-foundation/NSString" ]; + "CIFilterConstructor" = [ "objc2-foundation/NSString" ]; + "CIFilterGenerator" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CIFilterShape" = [ "objc2-foundation/NSObject" ]; + "CIImage" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CIImageProcessor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "CIImageProvider" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "CIKernel" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "CIPlugIn" = [ "objc2-foundation/NSURL" ]; + "CIRAWFilter" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CIRAWFilter_Deprecated" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "CIRenderDestination" = [ "objc2-foundation/NSDate" "objc2-foundation/NSError" "objc2-foundation/NSURL" ]; + "CISampler" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CIVector" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CIBarcodeDescriptor" "CIColor" "CIContext" "CIDetector" "CIFeature" "CIFilter" "CIFilterBuiltins" "CIFilterConstructor" "CIFilterGenerator" "CIFilterShape" "CIImage" "CIImageAccumulator" "CIImageProcessor" "CIImageProvider" "CIKernel" "CIKernelMetalLib" "CIPlugIn" "CIPlugInInterface" "CIRAWFilter" "CIRAWFilter_Deprecated" "CIRenderDestination" "CISampler" "CIVector" "CoreImageDefines" "block2" "objc2-core-foundation" "objc2-core-graphics" "objc2-core-video" "objc2-image-io" "objc2-metal" ]; + "gnustep-1-7" = [ "objc2/gnustep-1-7" "block2?/gnustep-1-7" "objc2-foundation/gnustep-1-7" ]; + "gnustep-1-8" = [ "gnustep-1-7" "objc2/gnustep-1-8" "block2?/gnustep-1-8" "objc2-foundation/gnustep-1-8" ]; + "gnustep-1-9" = [ "gnustep-1-8" "objc2/gnustep-1-9" "block2?/gnustep-1-9" "objc2-foundation/gnustep-1-9" ]; + "gnustep-2-0" = [ "gnustep-1-9" "objc2/gnustep-2-0" "block2?/gnustep-2-0" "objc2-foundation/gnustep-2-0" ]; + "gnustep-2-1" = [ "gnustep-2-0" "objc2/gnustep-2-1" "block2?/gnustep-2-1" "objc2-foundation/gnustep-2-1" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "objc2-core-graphics" = [ "dep:objc2-core-graphics" ]; + "objc2-core-ml" = [ "dep:objc2-core-ml" ]; + "objc2-core-video" = [ "dep:objc2-core-video" ]; + "objc2-image-io" = [ "dep:objc2-image-io" ]; + "objc2-io-surface" = [ "dep:objc2-io-surface" ]; + "objc2-metal" = [ "dep:objc2-metal" ]; + "objc2-open-gl" = [ "dep:objc2-open-gl" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CIColor" "CIContext" "CIFilter" "CIImage" ]; + }; + "objc2-core-location" = rec { + crateName = "objc2-core-location"; + version = "0.3.2"; + edition = "2021"; + sha256 = "02908pp1knq64wjq07zd6q2z77qppdpd7l2z0by77jabw8a74d6a"; + libName = "objc2_core_location"; + dependencies = [ + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "CLBeaconIdentityCondition" = [ "objc2-foundation/NSObject" "objc2-foundation/NSUUID" "objc2-foundation/NSValue" ]; + "CLBeaconIdentityConstraint" = [ "objc2-foundation/NSObject" "objc2-foundation/NSUUID" ]; + "CLBeaconRegion" = [ "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSUUID" "objc2-foundation/NSValue" ]; + "CLCircularGeographicCondition" = [ "objc2-foundation/NSObject" ]; + "CLCircularRegion" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CLCondition" = [ "objc2-foundation/NSObject" ]; + "CLError" = [ "objc2-foundation/NSString" ]; + "CLErrorDomain" = [ "objc2-foundation/NSString" ]; + "CLGeocoder" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSLocale" "objc2-foundation/NSString" ]; + "CLHeading" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "CLLocation" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "CLLocationManager" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSError" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "CLLocationManagerDelegate" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" ]; + "CLLocationPushServiceError" = [ "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "CLLocationPushServiceExtension" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "CLMonitor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "CLMonitorConfiguration" = [ "objc2-foundation/NSString" ]; + "CLMonitoringEvent" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CLMonitoringRecord" = [ "objc2-foundation/NSObject" ]; + "CLPlacemark" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSTimeZone" ]; + "CLRegion" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CLServiceSession" = [ "objc2-foundation/NSString" ]; + "CLVisit" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CLAvailability" "CLBackgroundActivitySession" "CLBeaconIdentityCondition" "CLBeaconIdentityConstraint" "CLBeaconRegion" "CLCircularGeographicCondition" "CLCircularRegion" "CLCondition" "CLError" "CLErrorDomain" "CLGeocoder" "CLHeading" "CLLocation" "CLLocationManager" "CLLocationManagerDelegate" "CLLocationManager_CLVisitExtensions" "CLLocationPushServiceError" "CLLocationPushServiceExtension" "CLLocationUpdater" "CLMonitor" "CLMonitorConfiguration" "CLMonitoringEvent" "CLMonitoringRecord" "CLPlacemark" "CLRegion" "CLServiceSession" "CLVisit" "block2" "dispatch2" "objc2-contacts" ]; + "dispatch2" = [ "dep:dispatch2" ]; + "objc2-contacts" = [ "dep:objc2-contacts" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CLRegion" ]; + }; + "objc2-core-text" = rec { + crateName = "objc2-core-text"; + version = "0.3.2"; + edition = "2021"; + sha256 = "0bfrzqxhgh4y1imk1bb9g0v28g0frigls6hnc942npfj93xhvphc"; + libName = "objc2_core_text"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2"; + packageId = "objc2"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + usesDefaultFeatures = false; + } + { + name = "objc2-core-graphics"; + packageId = "objc2-core-graphics"; + optional = true; + usesDefaultFeatures = false; + features = [ "CGContext" "CGFont" "CGImage" "CGPath" ]; + } + ]; + features = { + "CTFont" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFCharacterSet" "objc2-core-foundation/CFData" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFString" ]; + "CTFontCollection" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFSet" ]; + "CTFontDescriptor" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFNumber" "objc2-core-foundation/CFSet" ]; + "CTFontManager" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFBundle" "objc2-core-foundation/CFData" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFError" "objc2-core-foundation/CFRunLoop" "objc2-core-foundation/CFURL" ]; + "CTFontTraits" = [ "bitflags" ]; + "CTFrame" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CTFramesetter" = [ "objc2-core-foundation/CFAttributedString" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CTLine" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFAttributedString" "objc2-core-foundation/CFCGTypes" ]; + "CTRubyAnnotation" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CTRun" = [ "bitflags" "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CTRunDelegate" = [ "objc2-core-foundation/CFCGTypes" ]; + "CTStringAttributes" = [ "bitflags" ]; + "CTTextTab" = [ "objc2-core-foundation/CFDictionary" ]; + "CTTypesetter" = [ "objc2-core-foundation/CFAttributedString" "objc2-core-foundation/CFDictionary" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CTDefines" "CTFont" "CTFontCollection" "CTFontDescriptor" "CTFontManager" "CTFontManagerErrors" "CTFontTraits" "CTFrame" "CTFramesetter" "CTGlyphInfo" "CTLine" "CTParagraphStyle" "CTRubyAnnotation" "CTRun" "CTRunDelegate" "CTStringAttributes" "CTTextTab" "CTTypesetter" "SFNTLayoutTypes" "SFNTTypes" "bitflags" "block2" "libc" "objc2" "objc2-core-graphics" ]; + "libc" = [ "dep:libc" ]; + "objc2" = [ "dep:objc2" "objc2-core-foundation/objc2" "objc2-core-graphics?/objc2" ]; + "objc2-core-graphics" = [ "dep:objc2-core-graphics" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CTFont" "CTFontCollection" "CTFontDescriptor" "CTGlyphInfo" "bitflags" "objc2" ]; + }; + "objc2-core-video" = rec { + crateName = "objc2-core-video"; + version = "0.3.2"; + edition = "2021"; + sha256 = "19j1a7f863gh30nq03w70x1js3f3vdg3wp4azllky8vkvzqwl9fl"; + libName = "objc2_core_video"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2"; + packageId = "objc2"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + usesDefaultFeatures = false; + } + { + name = "objc2-core-graphics"; + packageId = "objc2-core-graphics"; + optional = true; + usesDefaultFeatures = false; + features = [ "CGColorSpace" "CGDirectDisplay" ]; + } + { + name = "objc2-io-surface"; + packageId = "objc2-io-surface"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("watchos" == target."os" or null)); + features = [ "IOSurfaceRef" ]; + } + ]; + features = { + "CVBase" = [ "bitflags" ]; + "CVBuffer" = [ "objc2-core-foundation/CFDictionary" ]; + "CVImageBuffer" = [ "objc2-core-foundation/CFCGTypes" "objc2-core-foundation/CFDictionary" ]; + "CVMetalBufferCache" = [ "objc2-core-foundation/CFDictionary" ]; + "CVMetalTextureCache" = [ "objc2-core-foundation/CFDictionary" ]; + "CVOpenGLBuffer" = [ "objc2-core-foundation/CFDictionary" ]; + "CVOpenGLBufferPool" = [ "objc2-core-foundation/CFDictionary" ]; + "CVOpenGLTextureCache" = [ "objc2-core-foundation/CFDictionary" ]; + "CVPixelBuffer" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFDictionary" ]; + "CVPixelBufferIOSurface" = [ "objc2-core-foundation/CFDictionary" ]; + "CVPixelBufferPool" = [ "bitflags" "objc2-core-foundation/CFDictionary" ]; + "CVPixelFormatDescription" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFDictionary" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CVBase" "CVBuffer" "CVDisplayLink" "CVHostTime" "CVImageBuffer" "CVMetalBuffer" "CVMetalBufferCache" "CVMetalTexture" "CVMetalTextureCache" "CVOpenGLBuffer" "CVOpenGLBufferPool" "CVOpenGLTexture" "CVOpenGLTextureCache" "CVPixelBuffer" "CVPixelBufferIOSurface" "CVPixelBufferPool" "CVPixelFormatDescription" "CVReturn" "bitflags" "block2" "objc2" "objc2-core-graphics" "objc2-metal" ]; + "objc2" = [ "dep:objc2" "objc2-core-foundation/objc2" "objc2-core-graphics?/objc2" "objc2-io-surface?/objc2" ]; + "objc2-core-graphics" = [ "dep:objc2-core-graphics" ]; + "objc2-io-surface" = [ "dep:objc2-io-surface" ]; + "objc2-metal" = [ "dep:objc2-metal" ]; + "objc2-open-gl" = [ "dep:objc2-open-gl" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CVBase" "bitflags" "objc2" ]; + }; + "objc2-encode" = rec { + crateName = "objc2-encode"; + version = "4.1.0"; + edition = "2021"; + sha256 = "0cqckp4cpf68mxyc2zgnazj8klv0z395nsgbafa61cjgsyyan9gg"; + libName = "objc2_encode"; + authors = [ + "Mads Marquart " + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "std" ]; + }; + "objc2-exception-helper" = rec { + crateName = "objc2-exception-helper"; + version = "0.1.1"; + edition = "2021"; + links = "objc2_exception_helper_0_1"; + sha256 = "12nrg6fhhp2rzmnym6s37h7w9v9sa9wbaixvfsq3axrdnzxwb8f7"; + libName = "objc2_exception_helper"; + authors = [ + "Mads Marquart " + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + } + ]; + features = { + "default" = [ "std" ]; + "gnustep-1-8" = [ "gnustep-1-7" ]; + "gnustep-1-9" = [ "gnustep-1-8" ]; + "gnustep-2-0" = [ "gnustep-1-9" ]; + "gnustep-2-1" = [ "gnustep-2-0" ]; + "std" = [ "alloc" ]; + }; + }; + "objc2-foundation" = rec { + crateName = "objc2-foundation"; + version = "0.3.2"; + edition = "2021"; + sha256 = "0wijkxzzvw2xkzssds3fj8279cbykz2rz9agxf6qh7y2agpsvq73"; + libName = "objc2_foundation"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "block2"; + packageId = "block2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + features = [ "CFArray" "CFAttributedString" "CFCGTypes" "CFCalendar" "CFCharacterSet" "CFData" "CFDate" "CFDictionary" "CFError" "CFFileSecurity" "CFLocale" "CFMachPort" "CFMessagePort" "CFRunLoop" "CFSet" "CFStream" "CFURL" "objc2" ]; + } + ]; + devDependencies = [ + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + usesDefaultFeatures = false; + features = [ "CFString" ]; + } + ]; + features = { + "NSAppleEventDescriptor" = [ "bitflags" ]; + "NSArray" = [ "bitflags" ]; + "NSAttributedString" = [ "bitflags" ]; + "NSByteCountFormatter" = [ "bitflags" ]; + "NSCalendar" = [ "bitflags" ]; + "NSComparisonPredicate" = [ "bitflags" ]; + "NSData" = [ "bitflags" ]; + "NSDateComponentsFormatter" = [ "bitflags" ]; + "NSDistributedNotificationCenter" = [ "bitflags" ]; + "NSFileCoordinator" = [ "bitflags" ]; + "NSFileManager" = [ "bitflags" ]; + "NSFileVersion" = [ "bitflags" ]; + "NSFileWrapper" = [ "bitflags" ]; + "NSGeometry" = [ "bitflags" ]; + "NSISO8601DateFormatter" = [ "bitflags" ]; + "NSItemProvider" = [ "bitflags" ]; + "NSJSONSerialization" = [ "bitflags" ]; + "NSKeyValueObserving" = [ "bitflags" ]; + "NSLinguisticTagger" = [ "bitflags" ]; + "NSMeasurement" = [ "NSUnit" ]; + "NSMeasurementFormatter" = [ "bitflags" ]; + "NSNetServices" = [ "bitflags" ]; + "NSNotificationQueue" = [ "bitflags" ]; + "NSObjCRuntime" = [ "bitflags" ]; + "NSOrderedCollectionDifference" = [ "bitflags" ]; + "NSPathUtilities" = [ "bitflags" ]; + "NSPersonNameComponentsFormatter" = [ "bitflags" ]; + "NSPointerFunctions" = [ "bitflags" ]; + "NSPort" = [ "bitflags" ]; + "NSProcessInfo" = [ "bitflags" ]; + "NSPropertyList" = [ "bitflags" ]; + "NSRegularExpression" = [ "bitflags" ]; + "NSStream" = [ "bitflags" ]; + "NSString" = [ "bitflags" ]; + "NSTextCheckingResult" = [ "bitflags" ]; + "NSURL" = [ "bitflags" ]; + "NSXMLNodeOptions" = [ "bitflags" ]; + "NSXPCConnection" = [ "bitflags" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "FoundationErrors" "FoundationLegacySwiftCompatibility" "NSAffineTransform" "NSAppleEventDescriptor" "NSAppleEventManager" "NSAppleScript" "NSArchiver" "NSArray" "NSAttributedString" "NSAutoreleasePool" "NSBackgroundActivityScheduler" "NSBundle" "NSByteCountFormatter" "NSByteOrder" "NSCache" "NSCalendar" "NSCalendarDate" "NSCharacterSet" "NSClassDescription" "NSCoder" "NSComparisonPredicate" "NSCompoundPredicate" "NSConnection" "NSData" "NSDate" "NSDateComponentsFormatter" "NSDateFormatter" "NSDateInterval" "NSDateIntervalFormatter" "NSDebug" "NSDecimal" "NSDecimalNumber" "NSDictionary" "NSDistantObject" "NSDistributedLock" "NSDistributedNotificationCenter" "NSEnergyFormatter" "NSEnumerator" "NSError" "NSException" "NSExpression" "NSExtensionContext" "NSExtensionItem" "NSExtensionRequestHandling" "NSFileCoordinator" "NSFileHandle" "NSFileManager" "NSFilePresenter" "NSFileVersion" "NSFileWrapper" "NSFormatter" "NSGarbageCollector" "NSGeometry" "NSHFSFileTypes" "NSHTTPCookie" "NSHTTPCookieStorage" "NSHashTable" "NSHost" "NSISO8601DateFormatter" "NSIndexPath" "NSIndexSet" "NSInflectionRule" "NSInvocation" "NSItemProvider" "NSJSONSerialization" "NSKeyValueCoding" "NSKeyValueObserving" "NSKeyValueSharedObservers" "NSKeyedArchiver" "NSLengthFormatter" "NSLinguisticTagger" "NSListFormatter" "NSLocale" "NSLocalizedNumberFormatRule" "NSLock" "NSMapTable" "NSMassFormatter" "NSMeasurement" "NSMeasurementFormatter" "NSMetadata" "NSMetadataAttributes" "NSMethodSignature" "NSMorphology" "NSNetServices" "NSNotification" "NSNotificationQueue" "NSNull" "NSNumberFormatter" "NSObjCRuntime" "NSObject" "NSObjectScripting" "NSOperation" "NSOrderedCollectionChange" "NSOrderedCollectionDifference" "NSOrderedSet" "NSOrthography" "NSPathUtilities" "NSPersonNameComponents" "NSPersonNameComponentsFormatter" "NSPointerArray" "NSPointerFunctions" "NSPort" "NSPortCoder" "NSPortMessage" "NSPortNameServer" "NSPredicate" "NSProcessInfo" "NSProgress" "NSPropertyList" "NSProtocolChecker" "NSProxy" "NSRange" "NSRegularExpression" "NSRelativeDateTimeFormatter" "NSRunLoop" "NSScanner" "NSScriptClassDescription" "NSScriptCoercionHandler" "NSScriptCommand" "NSScriptCommandDescription" "NSScriptExecutionContext" "NSScriptKeyValueCoding" "NSScriptObjectSpecifiers" "NSScriptStandardSuiteCommands" "NSScriptSuiteRegistry" "NSScriptWhoseTests" "NSSet" "NSSortDescriptor" "NSSpellServer" "NSStream" "NSString" "NSTask" "NSTermOfAddress" "NSTextCheckingResult" "NSThread" "NSTimeZone" "NSTimer" "NSURL" "NSURLAuthenticationChallenge" "NSURLCache" "NSURLConnection" "NSURLCredential" "NSURLCredentialStorage" "NSURLDownload" "NSURLError" "NSURLHandle" "NSURLProtectionSpace" "NSURLProtocol" "NSURLRequest" "NSURLResponse" "NSURLSession" "NSUUID" "NSUbiquitousKeyValueStore" "NSUndoManager" "NSUnit" "NSUserActivity" "NSUserDefaults" "NSUserNotification" "NSUserScriptTask" "NSValue" "NSValueTransformer" "NSXMLDTD" "NSXMLDTDNode" "NSXMLDocument" "NSXMLElement" "NSXMLNode" "NSXMLNodeOptions" "NSXMLParser" "NSXPCConnection" "NSZone" "bitflags" "block2" "libc" "objc2-core-foundation" ]; + "gnustep-1-7" = [ "objc2/gnustep-1-7" "block2?/gnustep-1-7" ]; + "gnustep-1-8" = [ "gnustep-1-7" "objc2/gnustep-1-8" "block2?/gnustep-1-8" ]; + "gnustep-1-9" = [ "gnustep-1-8" "objc2/gnustep-1-9" "block2?/gnustep-1-9" ]; + "gnustep-2-0" = [ "gnustep-1-9" "objc2/gnustep-2-0" "block2?/gnustep-2-0" ]; + "gnustep-2-1" = [ "gnustep-2-0" "objc2/gnustep-2-1" "block2?/gnustep-2-1" ]; + "libc" = [ "dep:libc" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "objc2-core-services" = [ "dep:objc2-core-services" ]; + "std" = [ "alloc" ]; + "unstable-mutation-return-null" = [ "NSNull" ]; + }; + resolvedDefaultFeatures = [ "FoundationErrors" "FoundationLegacySwiftCompatibility" "NSAffineTransform" "NSAppleEventDescriptor" "NSAppleEventManager" "NSAppleScript" "NSArchiver" "NSArray" "NSAttributedString" "NSAutoreleasePool" "NSBackgroundActivityScheduler" "NSBundle" "NSByteCountFormatter" "NSByteOrder" "NSCache" "NSCalendar" "NSCalendarDate" "NSCharacterSet" "NSClassDescription" "NSCoder" "NSComparisonPredicate" "NSCompoundPredicate" "NSConnection" "NSData" "NSDate" "NSDateComponentsFormatter" "NSDateFormatter" "NSDateInterval" "NSDateIntervalFormatter" "NSDebug" "NSDecimal" "NSDecimalNumber" "NSDictionary" "NSDistantObject" "NSDistributedLock" "NSDistributedNotificationCenter" "NSEnergyFormatter" "NSEnumerator" "NSError" "NSException" "NSExpression" "NSExtensionContext" "NSExtensionItem" "NSExtensionRequestHandling" "NSFileCoordinator" "NSFileHandle" "NSFileManager" "NSFilePresenter" "NSFileVersion" "NSFileWrapper" "NSFormatter" "NSGarbageCollector" "NSGeometry" "NSHFSFileTypes" "NSHTTPCookie" "NSHTTPCookieStorage" "NSHashTable" "NSHost" "NSISO8601DateFormatter" "NSIndexPath" "NSIndexSet" "NSInflectionRule" "NSInvocation" "NSItemProvider" "NSJSONSerialization" "NSKeyValueCoding" "NSKeyValueObserving" "NSKeyValueSharedObservers" "NSKeyedArchiver" "NSLengthFormatter" "NSLinguisticTagger" "NSListFormatter" "NSLocale" "NSLocalizedNumberFormatRule" "NSLock" "NSMapTable" "NSMassFormatter" "NSMeasurement" "NSMeasurementFormatter" "NSMetadata" "NSMetadataAttributes" "NSMethodSignature" "NSMorphology" "NSNetServices" "NSNotification" "NSNotificationQueue" "NSNull" "NSNumberFormatter" "NSObjCRuntime" "NSObject" "NSObjectScripting" "NSOperation" "NSOrderedCollectionChange" "NSOrderedCollectionDifference" "NSOrderedSet" "NSOrthography" "NSPathUtilities" "NSPersonNameComponents" "NSPersonNameComponentsFormatter" "NSPointerArray" "NSPointerFunctions" "NSPort" "NSPortCoder" "NSPortMessage" "NSPortNameServer" "NSPredicate" "NSProcessInfo" "NSProgress" "NSPropertyList" "NSProtocolChecker" "NSProxy" "NSRange" "NSRegularExpression" "NSRelativeDateTimeFormatter" "NSRunLoop" "NSScanner" "NSScriptClassDescription" "NSScriptCoercionHandler" "NSScriptCommand" "NSScriptCommandDescription" "NSScriptExecutionContext" "NSScriptKeyValueCoding" "NSScriptObjectSpecifiers" "NSScriptStandardSuiteCommands" "NSScriptSuiteRegistry" "NSScriptWhoseTests" "NSSet" "NSSortDescriptor" "NSSpellServer" "NSStream" "NSString" "NSTask" "NSTermOfAddress" "NSTextCheckingResult" "NSThread" "NSTimeZone" "NSTimer" "NSURL" "NSURLAuthenticationChallenge" "NSURLCache" "NSURLConnection" "NSURLCredential" "NSURLCredentialStorage" "NSURLDownload" "NSURLError" "NSURLHandle" "NSURLProtectionSpace" "NSURLProtocol" "NSURLRequest" "NSURLResponse" "NSURLSession" "NSUUID" "NSUbiquitousKeyValueStore" "NSUndoManager" "NSUnit" "NSUserActivity" "NSUserDefaults" "NSUserNotification" "NSUserScriptTask" "NSValue" "NSValueTransformer" "NSXMLDTD" "NSXMLDTDNode" "NSXMLDocument" "NSXMLElement" "NSXMLNode" "NSXMLNodeOptions" "NSXMLParser" "NSXPCConnection" "NSZone" "alloc" "bitflags" "block2" "default" "libc" "objc2-core-foundation" "std" ]; + }; + "objc2-io-kit" = rec { + crateName = "objc2-io-kit"; + version = "0.3.2"; + edition = "2021"; + sha256 = "05dvfcf97w39daaj5qsbfc399lw9hbx3s4h9nwgxrmlpjnizpyik"; + libName = "objc2_io_kit"; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + usesDefaultFeatures = false; + features = [ "CFArray" "CFData" "CFDictionary" "CFPlugInCOM" "CFRunLoop" "CFURL" "CFUUID" ]; + } + ]; + features = { + "IOUSBLib" = [ "objc2-core-foundation/CFPlugInCOM" "objc2-core-foundation/CFRunLoop" "objc2-core-foundation/CFUUID" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "AppleUSBDefinitions" "IOUSBHostFamilyDefinitions" "IOUSBLib" "USB" "USBSpec" "bitflags" "block2" "dispatch2" "graphics" "hid" "hidsystem" "libc" "network" "objc2" "ps" "pwr_mgt" "serial" "usb" ]; + "dispatch2" = [ "dep:dispatch2" ]; + "graphics" = [ "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFPlugInCOM" "objc2-core-foundation/CFUUID" ]; + "hid" = [ "bitflags" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFDate" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFPlugInCOM" "objc2-core-foundation/CFRunLoop" "objc2-core-foundation/CFSet" "objc2-core-foundation/CFUUID" ]; + "hidsystem" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFDictionary" ]; + "libc" = [ "dep:libc" ]; + "objc2" = [ "dep:objc2" "dispatch2?/objc2" "objc2-core-foundation/objc2" ]; + "ps" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFDate" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFPlugInCOM" "objc2-core-foundation/CFRunLoop" "objc2-core-foundation/CFSet" "objc2-core-foundation/CFUUID" ]; + "pwr_mgt" = [ "objc2-core-foundation/CFArray" "objc2-core-foundation/CFDate" "objc2-core-foundation/CFDictionary" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "hidsystem" "libc" "std" ]; + }; + "objc2-io-surface" = rec { + crateName = "objc2-io-surface"; + version = "0.3.2"; + edition = "2021"; + sha256 = "07fqx4fmwydf2arrc4xs4awv7zyzzxh60fyqdfmrpm9n148qh1qq"; + libName = "objc2_io_surface"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2"; + packageId = "objc2"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + features = [ "CFDictionary" ]; + } + ]; + features = { + "IOSurfaceRef" = [ "bitflags" ]; + "IOSurfaceTypes" = [ "bitflags" ]; + "ObjC" = [ "objc2" ]; + "bitflags" = [ "dep:bitflags" ]; + "default" = [ "std" "IOSurface" "IOSurfaceAPI" "IOSurfaceBase" "IOSurfaceRef" "IOSurfaceTypes" "bitflags" "libc" "objc2" "objc2-core-foundation" "objc2-foundation" ]; + "libc" = [ "dep:libc" ]; + "objc2" = [ "dep:objc2" "objc2-core-foundation?/objc2" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "objc2-foundation" = [ "dep:objc2-foundation" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "IOSurfaceRef" "bitflags" "objc2" ]; + }; + "objc2-quartz-core" = rec { + crateName = "objc2-quartz-core"; + version = "0.3.2"; + edition = "2021"; + sha256 = "07vzaf6y1lk7zygkgvpp23mm19ipdm9yq8af22gvywdkaa23bhcn"; + libName = "objc2_quartz_core"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + features = [ "CFCGTypes" "CFDate" "objc2" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "CAAnimation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "CAConstraintLayoutManager" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CADisplayLink" = [ "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSRunLoop" "objc2-foundation/NSString" ]; + "CAEDRMetadata" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" ]; + "CAEmitterCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CAEmitterLayer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CAGradientLayer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "CALayer" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSNull" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CAMediaTiming" = [ "objc2-foundation/NSString" ]; + "CAMediaTimingFunction" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CAMetalDisplayLink" = [ "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSRunLoop" "objc2-foundation/NSString" ]; + "CAMetalLayer" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" ]; + "CAOpenGLLayer" = [ "objc2-foundation/NSObject" ]; + "CARenderer" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "CAReplicatorLayer" = [ "objc2-foundation/NSObject" ]; + "CAScrollLayer" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CAShapeLayer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "CATextLayer" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "CATiledLayer" = [ "objc2-foundation/NSObject" ]; + "CATransaction" = [ "objc2-foundation/NSString" ]; + "CATransform3D" = [ "objc2-foundation/NSValue" ]; + "CATransformLayer" = [ "objc2-foundation/NSObject" ]; + "CAValueFunction" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "CAAnimation" "CABase" "CAConstraintLayoutManager" "CADisplayLink" "CAEAGLLayer" "CAEDRMetadata" "CAEmitterCell" "CAEmitterLayer" "CAFrameRateRange" "CAGradientLayer" "CALayer" "CAMediaTiming" "CAMediaTimingFunction" "CAMetalDisplayLink" "CAMetalLayer" "CAOpenGLLayer" "CARemoteLayerClient" "CARemoteLayerServer" "CARenderer" "CAReplicatorLayer" "CAScrollLayer" "CAShapeLayer" "CATextLayer" "CATiledLayer" "CATransaction" "CATransform3D" "CATransformLayer" "CAValueFunction" "CoreAnimation" "bitflags" "block2" "libc" "objc2-core-foundation" "objc2-core-graphics" "objc2-core-video" "objc2-metal" ]; + "libc" = [ "dep:libc" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "objc2-core-graphics" = [ "dep:objc2-core-graphics" ]; + "objc2-core-video" = [ "dep:objc2-core-video" ]; + "objc2-metal" = [ "dep:objc2-metal" ]; + "objc2-open-gl" = [ "dep:objc2-open-gl" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "CADisplayLink" "CAFrameRateRange" "CALayer" "CAMediaTiming" "CAMediaTimingFunction" "CAOpenGLLayer" "CATransform3D" "bitflags" "objc2-core-foundation" ]; + }; + "objc2-ui-kit" = rec { + crateName = "objc2-ui-kit"; + version = "0.3.2"; + edition = "2021"; + sha256 = "08mbgqg8pffclyxpz2lr8r1fv8wn2i4m1k6bk1s5fvy06f766zfq"; + libName = "objc2_ui_kit"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "block2"; + packageId = "block2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-cloud-kit"; + packageId = "objc2-cloud-kit"; + optional = true; + usesDefaultFeatures = false; + features = [ "CKContainer" "CKRecord" "CKShare" "CKShareMetadata" ]; + } + { + name = "objc2-core-data"; + packageId = "objc2-core-data"; + optional = true; + usesDefaultFeatures = false; + features = [ "NSManagedObjectContext" "NSManagedObjectModel" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + features = [ "CFCGTypes" "CFDate" "objc2" ]; + } + { + name = "objc2-core-graphics"; + packageId = "objc2-core-graphics"; + optional = true; + usesDefaultFeatures = false; + features = [ "CGColor" "CGContext" "CGFont" "CGImage" "CGPath" "objc2" ]; + } + { + name = "objc2-core-image"; + packageId = "objc2-core-image"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("watchos" == target."os" or null)); + features = [ "CIColor" "CIImage" ]; + } + { + name = "objc2-core-location"; + packageId = "objc2-core-location"; + optional = true; + usesDefaultFeatures = false; + features = [ "CLRegion" ]; + } + { + name = "objc2-core-text"; + packageId = "objc2-core-text"; + optional = true; + usesDefaultFeatures = false; + features = [ "CTFont" "CTFontDescriptor" "objc2" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "objc2-quartz-core"; + packageId = "objc2-quartz-core"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("watchos" == target."os" or null)); + features = [ "CADisplayLink" "CAFrameRateRange" "CALayer" "CAMediaTiming" "CATransform3D" "objc2-core-foundation" ]; + } + { + name = "objc2-user-notifications"; + packageId = "objc2-user-notifications"; + optional = true; + usesDefaultFeatures = false; + features = [ "UNNotificationResponse" ]; + } + ]; + features = { + "NSAdaptiveImageGlyph" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSAttributedString" = [ "bitflags" "objc2-foundation/NSAttributedString" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFileWrapper" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "NSDataAsset" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSData" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSDiffableDataSourceSectionSnapshot" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSIndexPath_UIKitAdditions" = [ "objc2-foundation/NSIndexPath" ]; + "NSItemProvider_UIKitAdditions" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSError" "objc2-foundation/NSItemProvider" "objc2-foundation/NSString" ]; + "NSLayoutAnchor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSLayoutConstraint" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "NSLayoutManager" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSParagraphStyle" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCharacterSet" "objc2-foundation/NSDictionary" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSShadow" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "NSStringDrawing" = [ "bitflags" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "NSTextAttachment" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSFileWrapper" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextContainer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "NSTextContentManager" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSTextElement" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" ]; + "NSTextLayoutFragment" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSOperation" ]; + "NSTextLayoutManager" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "NSTextLineFragment" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "NSTextList" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextListElement" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "NSTextRange" = [ "objc2-foundation/NSObjCRuntime" ]; + "NSTextSelection" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "NSTextSelectionNavigation" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "NSTextStorage" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "UIAccelerometer" = [ "objc2-foundation/NSDate" ]; + "UIAccessibility" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSNotification" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIAccessibilityAdditions" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSString" ]; + "UIAccessibilityConstants" = [ "bitflags" "objc2-foundation/NSAttributedString" "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "UIAccessibilityContainer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSRange" ]; + "UIAccessibilityCustomAction" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSString" ]; + "UIAccessibilityCustomRotor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSString" ]; + "UIAccessibilityElement" = [ "objc2-foundation/NSString" ]; + "UIAccessibilityIdentification" = [ "objc2-foundation/NSString" ]; + "UIAccessibilityLocationDescriptor" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSString" ]; + "UIAction" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIActionSheet" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIActivity" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "UIActivityCollaborationModeRestriction" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIActivityIndicatorView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIActivityItemProvider" = [ "objc2-foundation/NSOperation" "objc2-foundation/NSString" ]; + "UIActivityItemsConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSItemProvider" "objc2-foundation/NSString" ]; + "UIActivityItemsConfigurationReading" = [ "objc2-foundation/NSArray" "objc2-foundation/NSItemProvider" "objc2-foundation/NSString" ]; + "UIActivityItemsConfigurationReading_ShareSheet" = [ "objc2-foundation/NSString" ]; + "UIActivityViewController" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIAlertController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIAlertView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIAppearance" = [ "objc2-foundation/NSArray" ]; + "UIApplication" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSUserActivity" ]; + "UIApplicationShortcutItem" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIAttachmentBehavior" = [ "objc2-foundation/NSArray" ]; + "UIBackgroundConfiguration" = [ "objc2-foundation/NSObject" ]; + "UIBackgroundExtensionView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIBarAppearance" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIBarButtonItem" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIBarButtonItemAppearance" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIBarButtonItemBadge" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIBarButtonItemGroup" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIBarItem" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIBezierPath" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIBlurEffect" = [ "objc2-foundation/NSObject" ]; + "UIButton" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIButtonConfiguration" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICalendarSelectionMultiDate" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCalendar" ]; + "UICalendarSelectionSingleDate" = [ "objc2-foundation/NSCalendar" ]; + "UICalendarSelectionWeekOfYear" = [ "objc2-foundation/NSCalendar" ]; + "UICalendarView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCalendar" "objc2-foundation/NSCoder" "objc2-foundation/NSDateInterval" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSTimeZone" ]; + "UICellAccessory" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICellConfigurationState" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UICloudSharingController" = [ "bitflags" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICollectionLayoutList" = [ "bitflags" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" ]; + "UICollectionView" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSIndexPath" "objc2-foundation/NSIndexSet" "objc2-foundation/NSObject" "objc2-foundation/NSProgress" "objc2-foundation/NSString" ]; + "UICollectionViewCell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICollectionViewCompositionalLayout" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICollectionViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICollectionViewFlowLayout" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" ]; + "UICollectionViewItemRegistration" = [ "objc2-foundation/NSIndexPath" "objc2-foundation/NSString" ]; + "UICollectionViewLayout" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICollectionViewListCell" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UICollectionViewTransitionLayout" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICollectionViewUpdateItem" = [ "objc2-foundation/NSIndexPath" ]; + "UICollisionBehavior" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UIColor" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSItemProvider" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIColorPickerViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIColorWell" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UICommand" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIConfigurationState" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIContentConfiguration" = [ "objc2-foundation/NSObject" ]; + "UIContentSizeCategory" = [ "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSString" ]; + "UIContentUnavailableButtonProperties" = [ "objc2-foundation/NSObject" ]; + "UIContentUnavailableConfiguration" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIContentUnavailableConfigurationState" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIContentUnavailableImageProperties" = [ "objc2-foundation/NSObject" ]; + "UIContentUnavailableTextProperties" = [ "objc2-foundation/NSObject" ]; + "UIContentUnavailableView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIContextMenuConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSSet" ]; + "UIContextMenuInteraction" = [ "objc2-foundation/NSObject" ]; + "UIContextualAction" = [ "objc2-foundation/NSString" ]; + "UIControl" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIConversationContext" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSPersonNameComponents" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIConversationEntry" = [ "objc2-foundation/NSDate" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UICornerConfiguration" = [ "objc2-foundation/NSObject" ]; + "UICornerRadius" = [ "objc2-foundation/NSObject" ]; + "UIDataDetectors" = [ "bitflags" ]; + "UIDataSourceTranslating" = [ "objc2-foundation/NSIndexPath" ]; + "UIDatePicker" = [ "objc2-foundation/NSCalendar" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSTimeZone" ]; + "UIDeferredMenuElement" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIDevice" = [ "objc2-foundation/NSNotification" "objc2-foundation/NSString" "objc2-foundation/NSUUID" ]; + "UIDiffableDataSource" = [ "objc2-foundation/NSArray" "objc2-foundation/NSIndexPath" "objc2-foundation/NSObject" "objc2-foundation/NSOrderedCollectionDifference" "objc2-foundation/NSString" ]; + "UIDocument" = [ "bitflags" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFilePresenter" "objc2-foundation/NSNotification" "objc2-foundation/NSProgress" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSUndoManager" "objc2-foundation/NSUserActivity" ]; + "UIDocumentBrowserAction" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIDocumentBrowserViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSProgress" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIDocumentInteractionController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIDocumentMenuViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIDocumentPickerExtensionViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIDocumentPickerViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIDocumentProperties" = [ "objc2-foundation/NSArray" "objc2-foundation/NSURL" ]; + "UIDocumentViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIDocumentViewControllerLaunchOptions" = [ "objc2-foundation/NSString" ]; + "UIDragInteraction" = [ "objc2-foundation/NSArray" ]; + "UIDragItem" = [ "objc2-foundation/NSItemProvider" ]; + "UIDragPreview" = [ "objc2-foundation/NSObject" ]; + "UIDragPreviewParameters" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSValue" ]; + "UIDragSession" = [ "objc2-foundation/NSArray" "objc2-foundation/NSItemProvider" "objc2-foundation/NSProgress" "objc2-foundation/NSString" ]; + "UIDropInteraction" = [ "objc2-foundation/NSObject" "objc2-foundation/NSProgress" ]; + "UIDynamicAnimator" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSIndexPath" "objc2-foundation/NSString" ]; + "UIDynamicBehavior" = [ "objc2-foundation/NSArray" ]; + "UIDynamicItemBehavior" = [ "objc2-foundation/NSArray" ]; + "UIEditMenuInteraction" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UIEvent" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSSet" ]; + "UIEventAttribution" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIEventAttributionView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIFieldBehavior" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDate" ]; + "UIFindInteraction" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "UIFindSession" = [ "objc2-foundation/NSString" ]; + "UIFocus" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "UIFocusAnimationCoordinator" = [ "objc2-foundation/NSDate" ]; + "UIFocusEffect" = [ "objc2-foundation/NSObject" ]; + "UIFocusGuide" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UIFocusMovementHint" = [ "objc2-foundation/NSObject" ]; + "UIFocusSystem_UIKitAdditions" = [ "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIFont" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIFontDescriptor" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIFontMetrics" = [ "objc2-foundation/NSString" ]; + "UIFontPickerViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIFontPickerViewControllerConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" ]; + "UIGeometry" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "UIGestureRecognizer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "UIGestureRecognizerSubclass" = [ "objc2-foundation/NSSet" ]; + "UIGlassEffect" = [ "objc2-foundation/NSObject" ]; + "UIGraphics" = [ "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIGraphicsImageRenderer" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" ]; + "UIGraphicsPDFRenderer" = [ "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIGraphicsRenderer" = [ "objc2-foundation/NSObject" ]; + "UIGraphicsRendererSubclass" = [ "objc2-foundation/NSError" ]; + "UIGravityBehavior" = [ "objc2-foundation/NSArray" ]; + "UIGuidedAccess" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "UIHoverEffect" = [ "objc2-foundation/NSObject" ]; + "UIHoverEffectLayer" = [ "objc2-foundation/NSObject" ]; + "UIHoverGestureRecognizer" = [ "objc2-foundation/NSCoder" ]; + "UIHoverStyle" = [ "objc2-foundation/NSObject" ]; + "UIImage" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSItemProvider" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIImageAsset" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIImageConfiguration" = [ "objc2-foundation/NSLocale" "objc2-foundation/NSObject" ]; + "UIImagePickerController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "UIImageReader" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" "objc2-foundation/NSURL" ]; + "UIImageSymbolConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSLocale" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIImageView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "UIIndirectScribbleInteraction" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UIInputView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIInputViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSUUID" ]; + "UIInteraction" = [ "objc2-foundation/NSArray" ]; + "UIKey" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIKeyCommand" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIKeyboardLayoutGuide" = [ "objc2-foundation/NSObject" ]; + "UILabel" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UILargeContentViewer" = [ "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "UILayoutGuide" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UILexicon" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIListContentConfiguration" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIListContentImageProperties" = [ "objc2-foundation/NSObject" ]; + "UIListContentTextProperties" = [ "objc2-foundation/NSObject" ]; + "UIListSeparatorConfiguration" = [ "objc2-foundation/NSObject" ]; + "UILocalNotification" = [ "objc2-foundation/NSCalendar" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSTimeZone" ]; + "UILocalizedIndexedCollation" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "UILongPressGestureRecognizer" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSDate" ]; + "UIMailConversationContext" = [ "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIMailConversationEntry" = [ "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIMainMenuSystem" = [ "objc2-foundation/NSObject" ]; + "UIManagedDocument" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSFilePresenter" "objc2-foundation/NSProgress" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIMenu" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIMenuBuilder" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "UIMenuController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "UIMenuDisplayPreferences" = [ "objc2-foundation/NSObject" ]; + "UIMenuElement" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIMenuLeaf" = [ "objc2-foundation/NSString" ]; + "UIMotionEffect" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UINavigationBar" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UINavigationBarAppearance" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UINavigationController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UINavigationItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "UINib" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSData" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "UINibLoading" = [ "objc2-foundation/NSString" ]; + "UIOpenURLContext" = [ "objc2-foundation/NSURL" ]; + "UIOrientation" = [ "bitflags" ]; + "UIPageControl" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIPageControlProgress" = [ "objc2-foundation/NSDate" ]; + "UIPageViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIPanGestureRecognizer" = [ "bitflags" "objc2-foundation/NSCoder" ]; + "UIPasteConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSItemProvider" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIPasteConfigurationSupporting" = [ "objc2-foundation/NSArray" "objc2-foundation/NSItemProvider" ]; + "UIPasteControl" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIPasteboard" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSDate" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSIndexSet" "objc2-foundation/NSItemProvider" "objc2-foundation/NSNotification" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIPencilInteraction" = [ "objc2-foundation/NSDate" ]; + "UIPickerView" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIPinchGestureRecognizer" = [ "objc2-foundation/NSCoder" ]; + "UIPointerAccessory" = [ "objc2-foundation/NSObject" ]; + "UIPointerLockState" = [ "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "UIPointerRegion" = [ "objc2-foundation/NSObject" ]; + "UIPointerStyle" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UIPopoverBackgroundView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIPopoverController" = [ "objc2-foundation/NSArray" ]; + "UIPopoverPresentationController" = [ "objc2-foundation/NSArray" ]; + "UIPopoverSupport" = [ "bitflags" ]; + "UIPress" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDate" ]; + "UIPressesEvent" = [ "objc2-foundation/NSSet" ]; + "UIPreviewParameters" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSValue" ]; + "UIPrintError" = [ "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "UIPrintFormatter" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIPrintInfo" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIPrintInteractionController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSError" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIPrintPageRenderer" = [ "objc2-foundation/NSArray" "objc2-foundation/NSRange" ]; + "UIPrintPaper" = [ "objc2-foundation/NSArray" ]; + "UIPrintServiceExtension" = [ "objc2-foundation/NSArray" "objc2-foundation/NSData" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIPrinter" = [ "bitflags" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UIPrinterPickerController" = [ "objc2-foundation/NSError" ]; + "UIProgressView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSProgress" ]; + "UIPushBehavior" = [ "objc2-foundation/NSArray" ]; + "UIReferenceLibraryViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIRefreshControl" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIRegion" = [ "objc2-foundation/NSObject" ]; + "UIResponder" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSUndoManager" "objc2-foundation/NSUserActivity" ]; + "UIRotationGestureRecognizer" = [ "objc2-foundation/NSCoder" ]; + "UIScene" = [ "objc2-foundation/NSError" "objc2-foundation/NSNotification" "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSUserActivity" ]; + "UISceneActivationConditions" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSPredicate" "objc2-foundation/NSString" "objc2-foundation/NSUserActivity" ]; + "UISceneConfiguration" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UISceneDefinitions" = [ "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "UISceneDestructionCondition" = [ "objc2-foundation/NSObject" ]; + "UISceneOptions" = [ "objc2-foundation/NSSet" "objc2-foundation/NSString" "objc2-foundation/NSUserActivity" ]; + "UISceneSession" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSUserActivity" "UISceneConfiguration" ]; + "UISceneSessionActivationRequest" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSUserActivity" ]; + "UISceneSystemProtectionManager" = [ "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "UIScreen" = [ "objc2-foundation/NSArray" "objc2-foundation/NSNotification" "objc2-foundation/NSString" ]; + "UIScreenEdgePanGestureRecognizer" = [ "objc2-foundation/NSCoder" ]; + "UIScreenshotService" = [ "objc2-foundation/NSData" ]; + "UIScrollView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSSet" ]; + "UISearchBar" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "UISearchContainerViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UISearchController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UISearchDisplayController" = [ "objc2-foundation/NSString" ]; + "UISearchSuggestion" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSString" ]; + "UISearchTab" = [ "objc2-foundation/NSString" ]; + "UISearchTextField" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSItemProvider" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UISegmentedControl" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIShadowProperties" = [ "objc2-foundation/NSObject" ]; + "UIShape" = [ "objc2-foundation/NSObject" ]; + "UISheetPresentationController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "UISlider" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UISliderTrackConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UISmartReplySuggestion" = [ "objc2-foundation/NSString" ]; + "UISplitViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIStackView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIStandardTextCursorView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIStateRestoration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSIndexPath" "objc2-foundation/NSString" ]; + "UIStepper" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIStoryboard" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSString" ]; + "UIStoryboardPopoverSegue" = [ "objc2-foundation/NSString" ]; + "UIStoryboardSegue" = [ "objc2-foundation/NSString" ]; + "UIStringDrawing" = [ "objc2-foundation/NSString" ]; + "UISwipeActionsConfiguration" = [ "objc2-foundation/NSArray" ]; + "UISwipeGestureRecognizer" = [ "bitflags" "objc2-foundation/NSCoder" ]; + "UISwitch" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UISymbolContentTransition" = [ "objc2-foundation/NSObject" ]; + "UITab" = [ "objc2-foundation/NSString" ]; + "UITabBar" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UITabBarAppearance" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITabBarController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSProgress" "objc2-foundation/NSString" ]; + "UITabBarControllerSidebar" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSProgress" ]; + "UITabBarItem" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITabGroup" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "UITabSidebarItem" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UITableView" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSIndexPath" "objc2-foundation/NSIndexSet" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSProgress" "objc2-foundation/NSString" ]; + "UITableViewCell" = [ "bitflags" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITableViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITableViewHeaderFooterView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITapGestureRecognizer" = [ "objc2-foundation/NSCoder" ]; + "UITargetedDragPreview" = [ "objc2-foundation/NSObject" ]; + "UITargetedPreview" = [ "objc2-foundation/NSObject" ]; + "UITextChecker" = [ "objc2-foundation/NSArray" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "UITextDragPreviewRenderer" = [ "objc2-foundation/NSRange" ]; + "UITextDragURLPreviews" = [ "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UITextDragging" = [ "bitflags" "objc2-foundation/NSArray" ]; + "UITextDropProposal" = [ "objc2-foundation/NSObject" ]; + "UITextDropping" = [ "objc2-foundation/NSProgress" ]; + "UITextField" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "UITextFormattingCoordinator" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSString" ]; + "UITextFormattingViewController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITextFormattingViewControllerChangeValue" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "UITextFormattingViewControllerComponent" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITextFormattingViewControllerConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UITextFormattingViewControllerFormattingDescriptor" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UITextFormattingViewControllerFormattingStyle" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITextInput" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" ]; + "UITextInputTraits" = [ "bitflags" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UITextInteraction" = [ "objc2-foundation/NSArray" ]; + "UITextItem" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UITextPasteDelegate" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSDictionary" "objc2-foundation/NSItemProvider" "objc2-foundation/NSString" ]; + "UITextSearching" = [ "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSOrderedSet" "objc2-foundation/NSString" ]; + "UITextSelectionDisplayInteraction" = [ "objc2-foundation/NSArray" ]; + "UITextSelectionHighlightView" = [ "objc2-foundation/NSArray" ]; + "UITextView" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSValue" ]; + "UITimingCurveProvider" = [ "objc2-foundation/NSObject" ]; + "UITimingParameters" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "UIToolTipInteraction" = [ "objc2-foundation/NSString" ]; + "UIToolbar" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIToolbarAppearance" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UITouch" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSDate" "objc2-foundation/NSValue" ]; + "UITrackingLayoutGuide" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "UITrait" = [ "objc2-foundation/NSString" ]; + "UITraitCollection" = [ "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIUpdateInfo" = [ "objc2-foundation/NSDate" ]; + "UIUserActivity" = [ "objc2-foundation/NSUserActivity" ]; + "UIUserNotificationSettings" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDictionary" "objc2-foundation/NSObject" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "UIVibrancyEffect" = [ "objc2-foundation/NSObject" ]; + "UIVideoEditorController" = [ "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIView" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIViewAnimating" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "UIViewConfigurationState" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIViewController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSBundle" "objc2-foundation/NSCoder" "objc2-foundation/NSDate" "objc2-foundation/NSExtensionContext" "objc2-foundation/NSExtensionRequestHandling" "objc2-foundation/NSNotification" "objc2-foundation/NSObjCRuntime" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIViewControllerTransitionCoordinator" = [ "objc2-foundation/NSDate" "objc2-foundation/NSString" ]; + "UIViewControllerTransitioning" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIViewPropertyAnimator" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "UIVisualEffect" = [ "objc2-foundation/NSObject" ]; + "UIVisualEffectView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" ]; + "UIWebView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSData" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" "objc2-foundation/NSURLRequest" ]; + "UIWindow" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSNotification" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIWindowScene" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSString" "UISceneSizeRestrictions" ]; + "UIWindowSceneActivationAction" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UIWindowSceneActivationConfiguration" = [ "objc2-foundation/NSUserActivity" ]; + "UIWindowSceneActivationInteraction" = [ "objc2-foundation/NSError" ]; + "UIWindowSceneGeometry" = [ "objc2-foundation/NSObject" ]; + "UIWindowScenePlacement" = [ "objc2-foundation/NSObject" ]; + "UIWindowSceneProminentPlacement" = [ "objc2-foundation/NSObject" ]; + "UIWindowScenePushPlacement" = [ "objc2-foundation/NSObject" ]; + "UIWindowSceneReplacePlacement" = [ "objc2-foundation/NSObject" ]; + "UIWindowSceneStandardPlacement" = [ "objc2-foundation/NSObject" ]; + "UIWritingToolsCoordinator" = [ "objc2-foundation/NSArray" "objc2-foundation/NSAttributedString" "objc2-foundation/NSRange" "objc2-foundation/NSString" "objc2-foundation/NSUUID" "objc2-foundation/NSValue" ]; + "UIWritingToolsCoordinatorContext" = [ "objc2-foundation/NSAttributedString" "objc2-foundation/NSRange" "objc2-foundation/NSUUID" ]; + "UIZoomTransitionOptions" = [ "objc2-foundation/NSObject" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "DocumentManager" "NSAdaptiveImageGlyph" "NSAttributedString" "NSDataAsset" "NSDiffableDataSourceSectionSnapshot" "NSFileProviderExtension" "NSIndexPath_UIKitAdditions" "NSItemProvider_UIKitAdditions" "NSLayoutAnchor" "NSLayoutConstraint" "NSLayoutManager" "NSParagraphStyle" "NSShadow" "NSStringDrawing" "NSText" "NSTextAttachment" "NSTextContainer" "NSTextContentManager" "NSTextElement" "NSTextLayoutFragment" "NSTextLayoutManager" "NSTextLineFragment" "NSTextList" "NSTextListElement" "NSTextRange" "NSTextSelection" "NSTextSelectionNavigation" "NSTextStorage" "NSTextViewportLayoutController" "NSToolbar_UIKitAdditions" "NSTouchBar_UIKitAdditions" "NSUserActivity_NSItemProvider" "PrintKitUI" "ShareSheet" "UIAccelerometer" "UIAccessibility" "UIAccessibilityAdditions" "UIAccessibilityConstants" "UIAccessibilityContainer" "UIAccessibilityContentSizeCategoryImageAdjusting" "UIAccessibilityCustomAction" "UIAccessibilityCustomRotor" "UIAccessibilityElement" "UIAccessibilityIdentification" "UIAccessibilityLocationDescriptor" "UIAccessibilityZoom" "UIAction" "UIActionSheet" "UIActivity" "UIActivityCollaborationModeRestriction" "UIActivityIndicatorView" "UIActivityItemProvider" "UIActivityItemsConfiguration" "UIActivityItemsConfigurationReading" "UIActivityItemsConfigurationReading_ShareSheet" "UIActivityViewController" "UIAlert" "UIAlertController" "UIAlertView" "UIAppearance" "UIApplication" "UIApplicationShortcutItem" "UIAttachmentBehavior" "UIBackgroundConfiguration" "UIBackgroundExtensionView" "UIBandSelectionInteraction" "UIBarAppearance" "UIBarButtonItem" "UIBarButtonItemAppearance" "UIBarButtonItemBadge" "UIBarButtonItemGroup" "UIBarCommon" "UIBarItem" "UIBehavioralStyle" "UIBezierPath" "UIBlurEffect" "UIButton" "UIButtonConfiguration" "UICalendarSelection" "UICalendarSelectionMultiDate" "UICalendarSelectionSingleDate" "UICalendarSelectionWeekOfYear" "UICalendarView" "UICalendarViewDecoration" "UICanvasFeedbackGenerator" "UICellAccessory" "UICellConfigurationState" "UICloudSharingController" "UICollectionLayoutList" "UICollectionView" "UICollectionViewCell" "UICollectionViewCompositionalLayout" "UICollectionViewController" "UICollectionViewFlowLayout" "UICollectionViewItemRegistration" "UICollectionViewLayout" "UICollectionViewListCell" "UICollectionViewTransitionLayout" "UICollectionViewUpdateItem" "UICollisionBehavior" "UIColor" "UIColorPickerViewController" "UIColorWell" "UICommand" "UIConfigurationColorTransformer" "UIConfigurationState" "UIContentConfiguration" "UIContentSizeCategory" "UIContentSizeCategoryAdjusting" "UIContentUnavailableButtonProperties" "UIContentUnavailableConfiguration" "UIContentUnavailableConfigurationState" "UIContentUnavailableImageProperties" "UIContentUnavailableTextProperties" "UIContentUnavailableView" "UIContextMenuConfiguration" "UIContextMenuInteraction" "UIContextMenuSystem" "UIContextualAction" "UIControl" "UIConversationContext" "UIConversationEntry" "UICornerConfiguration" "UICornerRadius" "UIDataDetectors" "UIDataSourceTranslating" "UIDatePicker" "UIDeferredMenuElement" "UIDevice" "UIDiffableDataSource" "UIDocument" "UIDocumentBrowserAction" "UIDocumentBrowserViewController" "UIDocumentInteractionController" "UIDocumentMenuViewController" "UIDocumentPickerExtensionViewController" "UIDocumentPickerViewController" "UIDocumentProperties" "UIDocumentViewController" "UIDocumentViewControllerLaunchOptions" "UIDragInteraction" "UIDragItem" "UIDragPreview" "UIDragPreviewParameters" "UIDragSession" "UIDropInteraction" "UIDynamicAnimator" "UIDynamicBehavior" "UIDynamicItemBehavior" "UIEditMenuInteraction" "UIEvent" "UIEventAttribution" "UIEventAttributionView" "UIFeedbackGenerator" "UIFieldBehavior" "UIFindInteraction" "UIFindSession" "UIFocus" "UIFocusAnimationCoordinator" "UIFocusDebugger" "UIFocusDefines" "UIFocusEffect" "UIFocusGuide" "UIFocusMovementHint" "UIFocusSystem" "UIFocusSystem_UIKitAdditions" "UIFocusUpdateContext_UIKitAdditions" "UIFont" "UIFontDescriptor" "UIFontMetrics" "UIFontPickerViewController" "UIFontPickerViewControllerConfiguration" "UIFoundation" "UIGeometry" "UIGestureRecognizer" "UIGestureRecognizerSubclass" "UIGlassEffect" "UIGraphics" "UIGraphicsImageRenderer" "UIGraphicsPDFRenderer" "UIGraphicsRenderer" "UIGraphicsRendererSubclass" "UIGravityBehavior" "UIGuidedAccess" "UIGuidedAccessRestrictions" "UIHoverEffect" "UIHoverEffectLayer" "UIHoverGestureRecognizer" "UIHoverStyle" "UIImage" "UIImageAsset" "UIImageConfiguration" "UIImagePickerController" "UIImageReader" "UIImageSymbolConfiguration" "UIImageView" "UIImpactFeedbackGenerator" "UIIndirectScribbleInteraction" "UIInputSuggestion" "UIInputView" "UIInputViewController" "UIInteraction" "UIInterface" "UIKey" "UIKeyCommand" "UIKeyConstants" "UIKeyboardLayoutGuide" "UIKitCore" "UIKitDefines" "UILabel" "UILargeContentViewer" "UILayoutGuide" "UILetterformAwareAdjusting" "UILexicon" "UIListContentConfiguration" "UIListContentImageProperties" "UIListContentTextProperties" "UIListSeparatorConfiguration" "UILocalNotification" "UILocalizedIndexedCollation" "UILongPressGestureRecognizer" "UIMailConversationContext" "UIMailConversationEntry" "UIMainMenuSystem" "UIManagedDocument" "UIMenu" "UIMenuBuilder" "UIMenuController" "UIMenuDisplayPreferences" "UIMenuElement" "UIMenuLeaf" "UIMenuSystem" "UIMessageConversationContext" "UIMessageConversationEntry" "UIMotionEffect" "UINavigationBar" "UINavigationBarAppearance" "UINavigationController" "UINavigationItem" "UINib" "UINibDeclarations" "UINibLoading" "UINotificationFeedbackGenerator" "UIOpenURLContext" "UIOrientation" "UIPageControl" "UIPageControlProgress" "UIPageViewController" "UIPanGestureRecognizer" "UIPasteConfiguration" "UIPasteConfigurationSupporting" "UIPasteControl" "UIPasteboard" "UIPencilInteraction" "UIPickerView" "UIPinchGestureRecognizer" "UIPointerAccessory" "UIPointerInteraction" "UIPointerLockState" "UIPointerRegion" "UIPointerStyle" "UIPopoverBackgroundView" "UIPopoverController" "UIPopoverPresentationController" "UIPopoverPresentationControllerSourceItem" "UIPopoverSupport" "UIPresentationController" "UIPress" "UIPressesEvent" "UIPreviewInteraction" "UIPreviewParameters" "UIPrintError" "UIPrintFormatter" "UIPrintInfo" "UIPrintInteractionController" "UIPrintPageRenderer" "UIPrintPaper" "UIPrintServiceExtension" "UIPrinter" "UIPrinterPickerController" "UIProgressView" "UIPushBehavior" "UIReferenceLibraryViewController" "UIRefreshControl" "UIRegion" "UIResponder" "UIResponder_UIActivityItemsConfiguration" "UIRotationGestureRecognizer" "UIScene" "UISceneActivationConditions" "UISceneConfiguration" "UISceneDefinitions" "UISceneDestructionCondition" "UISceneEnhancedStateRestoration" "UISceneOptions" "UISceneSession" "UISceneSessionActivationRequest" "UISceneSizeRestrictions" "UISceneSystemProtectionManager" "UISceneWindowingBehaviors" "UISceneWindowingControlStyle" "UIScene_AVAudioSession" "UIScreen" "UIScreenEdgePanGestureRecognizer" "UIScreenMode" "UIScreenshotService" "UIScribbleInteraction" "UIScrollEdgeElementContainerInteraction" "UIScrollView" "UISearchBar" "UISearchContainerViewController" "UISearchController" "UISearchDisplayController" "UISearchSuggestion" "UISearchTab" "UISearchTextField" "UISegmentedControl" "UISelectionFeedbackGenerator" "UIShadowProperties" "UIShape" "UISheetPresentationController" "UISlider" "UISliderTrackConfiguration" "UISmartReplySuggestion" "UISnapBehavior" "UISplitViewController" "UISplitViewControllerLayoutEnvironment" "UISpringLoadedInteraction" "UISpringLoadedInteractionSupporting" "UIStackView" "UIStandardTextCursorView" "UIStateRestoration" "UIStatusBarManager" "UIStepper" "UIStoryboard" "UIStoryboardPopoverSegue" "UIStoryboardSegue" "UIStringDrawing" "UISwipeActionsConfiguration" "UISwipeGestureRecognizer" "UISwitch" "UISymbolContentTransition" "UISymbolEffectCompletion" "UITab" "UITabAccessory" "UITabBar" "UITabBarAppearance" "UITabBarController" "UITabBarControllerSidebar" "UITabBarItem" "UITabGroup" "UITabSidebarItem" "UITableView" "UITableViewCell" "UITableViewController" "UITableViewHeaderFooterView" "UITapGestureRecognizer" "UITargetedDragPreview" "UITargetedPreview" "UITextChecker" "UITextCursorDropPositionAnimator" "UITextCursorView" "UITextDragPreviewRenderer" "UITextDragURLPreviews" "UITextDragging" "UITextDropProposal" "UITextDropping" "UITextField" "UITextFormattingCoordinator" "UITextFormattingViewController" "UITextFormattingViewControllerChangeValue" "UITextFormattingViewControllerComponent" "UITextFormattingViewControllerConfiguration" "UITextFormattingViewControllerFormattingDescriptor" "UITextFormattingViewControllerFormattingStyle" "UITextInput" "UITextInputContext" "UITextInputTraits" "UITextInteraction" "UITextItem" "UITextItemInteraction" "UITextLoupeSession" "UITextPasteConfigurationSupporting" "UITextPasteDelegate" "UITextSearching" "UITextSelectionDisplayInteraction" "UITextSelectionHandleView" "UITextSelectionHighlightView" "UITextView" "UITimingCurveProvider" "UITimingParameters" "UIToolTipInteraction" "UIToolbar" "UIToolbarAppearance" "UITouch" "UITrackingLayoutGuide" "UITrait" "UITraitCollection" "UITraitListEnvironment" "UIUpdateActionPhase" "UIUpdateInfo" "UIUpdateLink" "UIUserActivity" "UIUserNotificationSettings" "UIVibrancyEffect" "UIVideoEditorController" "UIView" "UIViewAnimating" "UIViewConfigurationState" "UIViewController" "UIViewControllerTransition" "UIViewControllerTransitionCoordinator" "UIViewControllerTransitioning" "UIViewLayoutRegion" "UIViewPropertyAnimator" "UIVisualEffect" "UIVisualEffectView" "UIWebView" "UIWindow" "UIWindowScene" "UIWindowSceneActivationAction" "UIWindowSceneActivationConfiguration" "UIWindowSceneActivationInteraction" "UIWindowSceneActivationRequestOptions" "UIWindowSceneDragInteraction" "UIWindowSceneGeometry" "UIWindowSceneGeometryPreferences" "UIWindowSceneGeometryPreferencesIOS" "UIWindowSceneGeometryPreferencesMac" "UIWindowSceneGeometryPreferencesVision" "UIWindowScenePlacement" "UIWindowSceneProminentPlacement" "UIWindowScenePushPlacement" "UIWindowSceneReplacePlacement" "UIWindowSceneStandardPlacement" "UIWritingToolsCoordinator" "UIWritingToolsCoordinatorAnimationParameters" "UIWritingToolsCoordinatorContext" "UIZoomTransitionOptions" "UNNotificationResponse_UIKitAdditions" "bitflags" "block2" "objc2-cloud-kit" "objc2-core-data" "objc2-core-foundation" "objc2-core-graphics" "objc2-core-image" "objc2-core-location" "objc2-core-text" "objc2-quartz-core" "objc2-user-notifications" ]; + "objc2-cloud-kit" = [ "dep:objc2-cloud-kit" ]; + "objc2-core-data" = [ "dep:objc2-core-data" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "objc2-core-graphics" = [ "dep:objc2-core-graphics" ]; + "objc2-core-image" = [ "dep:objc2-core-image" ]; + "objc2-core-location" = [ "dep:objc2-core-location" ]; + "objc2-core-text" = [ "dep:objc2-core-text" ]; + "objc2-quartz-core" = [ "dep:objc2-quartz-core" ]; + "objc2-symbols" = [ "dep:objc2-symbols" ]; + "objc2-uniform-type-identifiers" = [ "dep:objc2-uniform-type-identifiers" ]; + "objc2-user-notifications" = [ "dep:objc2-user-notifications" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "DocumentManager" "NSAdaptiveImageGlyph" "NSAttributedString" "NSDataAsset" "NSDiffableDataSourceSectionSnapshot" "NSFileProviderExtension" "NSIndexPath_UIKitAdditions" "NSItemProvider_UIKitAdditions" "NSLayoutAnchor" "NSLayoutConstraint" "NSLayoutManager" "NSParagraphStyle" "NSShadow" "NSStringDrawing" "NSText" "NSTextAttachment" "NSTextContainer" "NSTextContentManager" "NSTextElement" "NSTextLayoutFragment" "NSTextLayoutManager" "NSTextLineFragment" "NSTextList" "NSTextListElement" "NSTextRange" "NSTextSelection" "NSTextSelectionNavigation" "NSTextStorage" "NSTextViewportLayoutController" "NSToolbar_UIKitAdditions" "NSTouchBar_UIKitAdditions" "NSUserActivity_NSItemProvider" "PrintKitUI" "ShareSheet" "UIAccelerometer" "UIAccessibility" "UIAccessibilityAdditions" "UIAccessibilityConstants" "UIAccessibilityContainer" "UIAccessibilityContentSizeCategoryImageAdjusting" "UIAccessibilityCustomAction" "UIAccessibilityCustomRotor" "UIAccessibilityElement" "UIAccessibilityIdentification" "UIAccessibilityLocationDescriptor" "UIAccessibilityZoom" "UIAction" "UIActionSheet" "UIActivity" "UIActivityCollaborationModeRestriction" "UIActivityIndicatorView" "UIActivityItemProvider" "UIActivityItemsConfiguration" "UIActivityItemsConfigurationReading" "UIActivityItemsConfigurationReading_ShareSheet" "UIActivityViewController" "UIAlert" "UIAlertController" "UIAlertView" "UIAppearance" "UIApplication" "UIApplicationShortcutItem" "UIAttachmentBehavior" "UIBackgroundConfiguration" "UIBackgroundExtensionView" "UIBandSelectionInteraction" "UIBarAppearance" "UIBarButtonItem" "UIBarButtonItemAppearance" "UIBarButtonItemBadge" "UIBarButtonItemGroup" "UIBarCommon" "UIBarItem" "UIBehavioralStyle" "UIBezierPath" "UIBlurEffect" "UIButton" "UIButtonConfiguration" "UICalendarSelection" "UICalendarSelectionMultiDate" "UICalendarSelectionSingleDate" "UICalendarSelectionWeekOfYear" "UICalendarView" "UICalendarViewDecoration" "UICanvasFeedbackGenerator" "UICellAccessory" "UICellConfigurationState" "UICloudSharingController" "UICollectionLayoutList" "UICollectionView" "UICollectionViewCell" "UICollectionViewCompositionalLayout" "UICollectionViewController" "UICollectionViewFlowLayout" "UICollectionViewItemRegistration" "UICollectionViewLayout" "UICollectionViewListCell" "UICollectionViewTransitionLayout" "UICollectionViewUpdateItem" "UICollisionBehavior" "UIColor" "UIColorPickerViewController" "UIColorWell" "UICommand" "UIConfigurationColorTransformer" "UIConfigurationState" "UIContentConfiguration" "UIContentSizeCategory" "UIContentSizeCategoryAdjusting" "UIContentUnavailableButtonProperties" "UIContentUnavailableConfiguration" "UIContentUnavailableConfigurationState" "UIContentUnavailableImageProperties" "UIContentUnavailableTextProperties" "UIContentUnavailableView" "UIContextMenuConfiguration" "UIContextMenuInteraction" "UIContextMenuSystem" "UIContextualAction" "UIControl" "UIConversationContext" "UIConversationEntry" "UICornerConfiguration" "UICornerRadius" "UIDataDetectors" "UIDataSourceTranslating" "UIDatePicker" "UIDeferredMenuElement" "UIDevice" "UIDiffableDataSource" "UIDocument" "UIDocumentBrowserAction" "UIDocumentBrowserViewController" "UIDocumentInteractionController" "UIDocumentMenuViewController" "UIDocumentPickerExtensionViewController" "UIDocumentPickerViewController" "UIDocumentProperties" "UIDocumentViewController" "UIDocumentViewControllerLaunchOptions" "UIDragInteraction" "UIDragItem" "UIDragPreview" "UIDragPreviewParameters" "UIDragSession" "UIDropInteraction" "UIDynamicAnimator" "UIDynamicBehavior" "UIDynamicItemBehavior" "UIEditMenuInteraction" "UIEvent" "UIEventAttribution" "UIEventAttributionView" "UIFeedbackGenerator" "UIFieldBehavior" "UIFindInteraction" "UIFindSession" "UIFocus" "UIFocusAnimationCoordinator" "UIFocusDebugger" "UIFocusDefines" "UIFocusEffect" "UIFocusGuide" "UIFocusMovementHint" "UIFocusSystem" "UIFocusSystem_UIKitAdditions" "UIFocusUpdateContext_UIKitAdditions" "UIFont" "UIFontDescriptor" "UIFontMetrics" "UIFontPickerViewController" "UIFontPickerViewControllerConfiguration" "UIFoundation" "UIGeometry" "UIGestureRecognizer" "UIGestureRecognizerSubclass" "UIGlassEffect" "UIGraphics" "UIGraphicsImageRenderer" "UIGraphicsPDFRenderer" "UIGraphicsRenderer" "UIGraphicsRendererSubclass" "UIGravityBehavior" "UIGuidedAccess" "UIGuidedAccessRestrictions" "UIHoverEffect" "UIHoverEffectLayer" "UIHoverGestureRecognizer" "UIHoverStyle" "UIImage" "UIImageAsset" "UIImageConfiguration" "UIImagePickerController" "UIImageReader" "UIImageSymbolConfiguration" "UIImageView" "UIImpactFeedbackGenerator" "UIIndirectScribbleInteraction" "UIInputSuggestion" "UIInputView" "UIInputViewController" "UIInteraction" "UIInterface" "UIKey" "UIKeyCommand" "UIKeyConstants" "UIKeyboardLayoutGuide" "UIKitCore" "UIKitDefines" "UILabel" "UILargeContentViewer" "UILayoutGuide" "UILetterformAwareAdjusting" "UILexicon" "UIListContentConfiguration" "UIListContentImageProperties" "UIListContentTextProperties" "UIListSeparatorConfiguration" "UILocalNotification" "UILocalizedIndexedCollation" "UILongPressGestureRecognizer" "UIMailConversationContext" "UIMailConversationEntry" "UIMainMenuSystem" "UIManagedDocument" "UIMenu" "UIMenuBuilder" "UIMenuController" "UIMenuDisplayPreferences" "UIMenuElement" "UIMenuLeaf" "UIMenuSystem" "UIMessageConversationContext" "UIMessageConversationEntry" "UIMotionEffect" "UINavigationBar" "UINavigationBarAppearance" "UINavigationController" "UINavigationItem" "UINib" "UINibDeclarations" "UINibLoading" "UINotificationFeedbackGenerator" "UIOpenURLContext" "UIOrientation" "UIPageControl" "UIPageControlProgress" "UIPageViewController" "UIPanGestureRecognizer" "UIPasteConfiguration" "UIPasteConfigurationSupporting" "UIPasteControl" "UIPasteboard" "UIPencilInteraction" "UIPickerView" "UIPinchGestureRecognizer" "UIPointerAccessory" "UIPointerInteraction" "UIPointerLockState" "UIPointerRegion" "UIPointerStyle" "UIPopoverBackgroundView" "UIPopoverController" "UIPopoverPresentationController" "UIPopoverPresentationControllerSourceItem" "UIPopoverSupport" "UIPresentationController" "UIPress" "UIPressesEvent" "UIPreviewInteraction" "UIPreviewParameters" "UIPrintError" "UIPrintFormatter" "UIPrintInfo" "UIPrintInteractionController" "UIPrintPageRenderer" "UIPrintPaper" "UIPrintServiceExtension" "UIPrinter" "UIPrinterPickerController" "UIProgressView" "UIPushBehavior" "UIReferenceLibraryViewController" "UIRefreshControl" "UIRegion" "UIResponder" "UIResponder_UIActivityItemsConfiguration" "UIRotationGestureRecognizer" "UIScene" "UISceneActivationConditions" "UISceneConfiguration" "UISceneDefinitions" "UISceneDestructionCondition" "UISceneEnhancedStateRestoration" "UISceneOptions" "UISceneSession" "UISceneSessionActivationRequest" "UISceneSizeRestrictions" "UISceneSystemProtectionManager" "UISceneWindowingBehaviors" "UISceneWindowingControlStyle" "UIScene_AVAudioSession" "UIScreen" "UIScreenEdgePanGestureRecognizer" "UIScreenMode" "UIScreenshotService" "UIScribbleInteraction" "UIScrollEdgeElementContainerInteraction" "UIScrollView" "UISearchBar" "UISearchContainerViewController" "UISearchController" "UISearchDisplayController" "UISearchSuggestion" "UISearchTab" "UISearchTextField" "UISegmentedControl" "UISelectionFeedbackGenerator" "UIShadowProperties" "UIShape" "UISheetPresentationController" "UISlider" "UISliderTrackConfiguration" "UISmartReplySuggestion" "UISnapBehavior" "UISplitViewController" "UISplitViewControllerLayoutEnvironment" "UISpringLoadedInteraction" "UISpringLoadedInteractionSupporting" "UIStackView" "UIStandardTextCursorView" "UIStateRestoration" "UIStatusBarManager" "UIStepper" "UIStoryboard" "UIStoryboardPopoverSegue" "UIStoryboardSegue" "UIStringDrawing" "UISwipeActionsConfiguration" "UISwipeGestureRecognizer" "UISwitch" "UISymbolContentTransition" "UISymbolEffectCompletion" "UITab" "UITabAccessory" "UITabBar" "UITabBarAppearance" "UITabBarController" "UITabBarControllerSidebar" "UITabBarItem" "UITabGroup" "UITabSidebarItem" "UITableView" "UITableViewCell" "UITableViewController" "UITableViewHeaderFooterView" "UITapGestureRecognizer" "UITargetedDragPreview" "UITargetedPreview" "UITextChecker" "UITextCursorDropPositionAnimator" "UITextCursorView" "UITextDragPreviewRenderer" "UITextDragURLPreviews" "UITextDragging" "UITextDropProposal" "UITextDropping" "UITextField" "UITextFormattingCoordinator" "UITextFormattingViewController" "UITextFormattingViewControllerChangeValue" "UITextFormattingViewControllerComponent" "UITextFormattingViewControllerConfiguration" "UITextFormattingViewControllerFormattingDescriptor" "UITextFormattingViewControllerFormattingStyle" "UITextInput" "UITextInputContext" "UITextInputTraits" "UITextInteraction" "UITextItem" "UITextItemInteraction" "UITextLoupeSession" "UITextPasteConfigurationSupporting" "UITextPasteDelegate" "UITextSearching" "UITextSelectionDisplayInteraction" "UITextSelectionHandleView" "UITextSelectionHighlightView" "UITextView" "UITimingCurveProvider" "UITimingParameters" "UIToolTipInteraction" "UIToolbar" "UIToolbarAppearance" "UITouch" "UITrackingLayoutGuide" "UITrait" "UITraitCollection" "UITraitListEnvironment" "UIUpdateActionPhase" "UIUpdateInfo" "UIUpdateLink" "UIUserActivity" "UIUserNotificationSettings" "UIVibrancyEffect" "UIVideoEditorController" "UIView" "UIViewAnimating" "UIViewConfigurationState" "UIViewController" "UIViewControllerTransition" "UIViewControllerTransitionCoordinator" "UIViewControllerTransitioning" "UIViewLayoutRegion" "UIViewPropertyAnimator" "UIVisualEffect" "UIVisualEffectView" "UIWebView" "UIWindow" "UIWindowScene" "UIWindowSceneActivationAction" "UIWindowSceneActivationConfiguration" "UIWindowSceneActivationInteraction" "UIWindowSceneActivationRequestOptions" "UIWindowSceneDragInteraction" "UIWindowSceneGeometry" "UIWindowSceneGeometryPreferences" "UIWindowSceneGeometryPreferencesIOS" "UIWindowSceneGeometryPreferencesMac" "UIWindowSceneGeometryPreferencesVision" "UIWindowScenePlacement" "UIWindowSceneProminentPlacement" "UIWindowScenePushPlacement" "UIWindowSceneReplacePlacement" "UIWindowSceneStandardPlacement" "UIWritingToolsCoordinator" "UIWritingToolsCoordinatorAnimationParameters" "UIWritingToolsCoordinatorContext" "UIZoomTransitionOptions" "UNNotificationResponse_UIKitAdditions" "alloc" "bitflags" "block2" "default" "objc2-cloud-kit" "objc2-core-data" "objc2-core-foundation" "objc2-core-graphics" "objc2-core-image" "objc2-core-location" "objc2-core-text" "objc2-quartz-core" "objc2-user-notifications" "std" ]; + }; + "objc2-user-notifications" = rec { + crateName = "objc2-user-notifications"; + version = "0.3.2"; + edition = "2021"; + sha256 = "0gk1frfj875pkbz3ncs8swvjgdipz3vwq5l42vd3rxzypf615ycx"; + libName = "objc2_user_notifications"; + dependencies = [ + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "NSString_UserNotifications" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "UNError" = [ "objc2-foundation/NSString" ]; + "UNNotification" = [ "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "UNNotificationAction" = [ "bitflags" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UNNotificationActionIcon" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UNNotificationAttachment" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "UNNotificationCategory" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UNNotificationContent" = [ "objc2-foundation/NSArray" "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSValue" ]; + "UNNotificationRequest" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UNNotificationResponse" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UNNotificationSettings" = [ "objc2-foundation/NSObject" ]; + "UNNotificationSound" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "UNNotificationTrigger" = [ "objc2-foundation/NSCalendar" "objc2-foundation/NSDate" "objc2-foundation/NSObject" ]; + "UNUserNotificationCenter" = [ "bitflags" "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSSet" "objc2-foundation/NSString" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "NSString_UserNotifications" "UNError" "UNNotification" "UNNotificationAction" "UNNotificationActionIcon" "UNNotificationAttachment" "UNNotificationAttributedMessageContext" "UNNotificationCategory" "UNNotificationContent" "UNNotificationRequest" "UNNotificationResponse" "UNNotificationServiceExtension" "UNNotificationSettings" "UNNotificationSound" "UNNotificationTrigger" "UNUserNotificationCenter" "bitflags" "block2" "objc2-core-location" ]; + "objc2-core-location" = [ "dep:objc2-core-location" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "UNNotificationResponse" ]; + }; + "objc2-virtualization" = rec { + crateName = "objc2-virtualization"; + version = "0.3.2"; + edition = "2021"; + sha256 = "17gmkyz1h67drjkz8l5m8mk7wirzvxdlvd9ax2idxxyib9i9inwf"; + libName = "objc2_virtualization"; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "block2"; + packageId = "block2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "dispatch2"; + packageId = "dispatch2"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" "objc2" ]; + } + { + name = "objc2"; + packageId = "objc2"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "objc2-app-kit"; + packageId = "objc2-app-kit"; + optional = true; + usesDefaultFeatures = false; + features = [ "NSAccessibilityProtocols" "NSAnimation" "NSAppearance" "NSDragging" "NSResponder" "NSScreen" "NSUserInterfaceItemIdentification" "NSView" ]; + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + features = [ "CFCGTypes" "objc2" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "VZAudioDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZBootLoader" = [ "objc2-foundation/NSObject" ]; + "VZBridgedNetworkInterface" = [ "objc2-foundation/NSArray" "objc2-foundation/NSString" ]; + "VZConsoleDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZConsolePortConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZDirectorySharingDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZDiskBlockDeviceStorageDeviceAttachment" = [ "objc2-foundation/NSError" "objc2-foundation/NSFileHandle" ]; + "VZDiskImageStorageDeviceAttachment" = [ "objc2-foundation/NSError" "objc2-foundation/NSURL" ]; + "VZEFIBootLoader" = [ "objc2-foundation/NSObject" ]; + "VZEFIVariableStore" = [ "bitflags" "objc2-foundation/NSError" "objc2-foundation/NSURL" ]; + "VZEntropyDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZError" = [ "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "VZFileHandleNetworkDeviceAttachment" = [ "objc2-foundation/NSFileHandle" ]; + "VZFileHandleSerialPortAttachment" = [ "objc2-foundation/NSFileHandle" ]; + "VZFileSerialPortAttachment" = [ "objc2-foundation/NSError" "objc2-foundation/NSURL" ]; + "VZGenericMachineIdentifier" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" ]; + "VZGenericPlatformConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZGraphicsDevice" = [ "objc2-foundation/NSArray" ]; + "VZGraphicsDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZGraphicsDisplay" = [ "objc2-foundation/NSError" ]; + "VZGraphicsDisplayConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZKeyboardConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZLinuxBootLoader" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "VZLinuxRosettaAbstractSocketCachingOptions" = [ "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "VZLinuxRosettaDirectoryShare" = [ "objc2-foundation/NSError" ]; + "VZLinuxRosettaUnixSocketCachingOptions" = [ "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "VZMACAddress" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "VZMacAuxiliaryStorage" = [ "bitflags" "objc2-foundation/NSError" "objc2-foundation/NSURL" ]; + "VZMacGraphicsDeviceConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "VZMacGraphicsDisplayConfiguration" = [ "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "VZMacHardwareModel" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" ]; + "VZMacKeyboardConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZMacMachineIdentifier" = [ "objc2-foundation/NSData" "objc2-foundation/NSObject" ]; + "VZMacOSBootLoader" = [ "objc2-foundation/NSObject" ]; + "VZMacOSInstaller" = [ "objc2-foundation/NSError" "objc2-foundation/NSProgress" "objc2-foundation/NSURL" ]; + "VZMacOSRestoreImage" = [ "objc2-foundation/NSError" "objc2-foundation/NSProcessInfo" "objc2-foundation/NSString" "objc2-foundation/NSURL" ]; + "VZMacPlatformConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZMacTrackpadConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZMemoryBalloonDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZMultipleDirectoryShare" = [ "objc2-foundation/NSDictionary" "objc2-foundation/NSError" "objc2-foundation/NSString" ]; + "VZNVMExpressControllerDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZNetworkBlockDeviceStorageDeviceAttachment" = [ "objc2-foundation/NSDate" "objc2-foundation/NSError" "objc2-foundation/NSURL" ]; + "VZNetworkDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZPlatformConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZPointingDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZSerialPortConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZSharedDirectory" = [ "objc2-foundation/NSURL" ]; + "VZSocketDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZSpiceAgentPortAttachment" = [ "objc2-foundation/NSString" ]; + "VZStorageDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZUSBController" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" ]; + "VZUSBControllerConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "VZUSBDevice" = [ "objc2-foundation/NSUUID" ]; + "VZUSBDeviceConfiguration" = [ "objc2-foundation/NSUUID" ]; + "VZUSBKeyboardConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZUSBMassStorageDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZUSBScreenCoordinatePointingDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioBlockDeviceConfiguration" = [ "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "VZVirtioConsoleDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioConsoleDeviceSerialPortConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioConsolePort" = [ "objc2-foundation/NSString" ]; + "VZVirtioConsolePortConfiguration" = [ "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "VZVirtioConsolePortConfigurationArray" = [ "objc2-foundation/NSObject" ]; + "VZVirtioEntropyDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioFileSystemDevice" = [ "objc2-foundation/NSString" ]; + "VZVirtioFileSystemDeviceConfiguration" = [ "objc2-foundation/NSError" "objc2-foundation/NSObject" "objc2-foundation/NSString" ]; + "VZVirtioGraphicsDeviceConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "VZVirtioGraphicsScanoutConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioNetworkDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioSocketDevice" = [ "objc2-foundation/NSError" ]; + "VZVirtioSocketDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioSoundDeviceConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSObject" ]; + "VZVirtioSoundDeviceInputStreamConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioSoundDeviceOutputStreamConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioSoundDeviceStreamConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtioTraditionalMemoryBalloonDeviceConfiguration" = [ "objc2-foundation/NSObject" ]; + "VZVirtualMachine" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSURL" ]; + "VZVirtualMachineConfiguration" = [ "objc2-foundation/NSArray" "objc2-foundation/NSError" "objc2-foundation/NSObject" ]; + "VZVirtualMachineDelegate" = [ "objc2-foundation/NSError" ]; + "VZVirtualMachineView" = [ "objc2-foundation/NSCoder" "objc2-foundation/NSGeometry" "objc2-foundation/NSObject" "objc2-foundation/objc2-core-foundation" ]; + "VZXHCIControllerConfiguration" = [ "objc2-foundation/NSObject" ]; + "bitflags" = [ "dep:bitflags" ]; + "block2" = [ "dep:block2" ]; + "default" = [ "std" "VZAudioDeviceConfiguration" "VZAudioInputStreamSource" "VZAudioOutputStreamSink" "VZBootLoader" "VZBridgedNetworkDeviceAttachment" "VZBridgedNetworkInterface" "VZConsoleDevice" "VZConsoleDeviceConfiguration" "VZConsolePortConfiguration" "VZDefines" "VZDirectoryShare" "VZDirectorySharingDevice" "VZDirectorySharingDeviceConfiguration" "VZDiskBlockDeviceStorageDeviceAttachment" "VZDiskImageStorageDeviceAttachment" "VZDiskSynchronizationMode" "VZEFIBootLoader" "VZEFIVariableStore" "VZEntropyDeviceConfiguration" "VZError" "VZFileHandleNetworkDeviceAttachment" "VZFileHandleSerialPortAttachment" "VZFileSerialPortAttachment" "VZGenericMachineIdentifier" "VZGenericPlatformConfiguration" "VZGraphicsDevice" "VZGraphicsDeviceConfiguration" "VZGraphicsDisplay" "VZGraphicsDisplayConfiguration" "VZHostAudioInputStreamSource" "VZHostAudioOutputStreamSink" "VZKeyboardConfiguration" "VZLinuxBootLoader" "VZLinuxRosettaAbstractSocketCachingOptions" "VZLinuxRosettaCachingOptions" "VZLinuxRosettaDirectoryShare" "VZLinuxRosettaUnixSocketCachingOptions" "VZMACAddress" "VZMacAuxiliaryStorage" "VZMacGraphicsDevice" "VZMacGraphicsDeviceConfiguration" "VZMacGraphicsDisplay" "VZMacGraphicsDisplayConfiguration" "VZMacHardwareModel" "VZMacKeyboardConfiguration" "VZMacMachineIdentifier" "VZMacOSBootLoader" "VZMacOSConfigurationRequirements" "VZMacOSInstaller" "VZMacOSRestoreImage" "VZMacOSVirtualMachineStartOptions" "VZMacPlatformConfiguration" "VZMacTrackpadConfiguration" "VZMemoryBalloonDevice" "VZMemoryBalloonDeviceConfiguration" "VZMultipleDirectoryShare" "VZNATNetworkDeviceAttachment" "VZNVMExpressControllerDeviceConfiguration" "VZNetworkBlockDeviceStorageDeviceAttachment" "VZNetworkDevice" "VZNetworkDeviceAttachment" "VZNetworkDeviceConfiguration" "VZPlatformConfiguration" "VZPointingDeviceConfiguration" "VZSerialPortAttachment" "VZSerialPortConfiguration" "VZSharedDirectory" "VZSingleDirectoryShare" "VZSocketDevice" "VZSocketDeviceConfiguration" "VZSpiceAgentPortAttachment" "VZStorageDevice" "VZStorageDeviceAttachment" "VZStorageDeviceConfiguration" "VZUSBController" "VZUSBControllerConfiguration" "VZUSBDevice" "VZUSBDeviceConfiguration" "VZUSBKeyboardConfiguration" "VZUSBMassStorageDevice" "VZUSBMassStorageDeviceConfiguration" "VZUSBScreenCoordinatePointingDeviceConfiguration" "VZVirtioBlockDeviceConfiguration" "VZVirtioConsoleDevice" "VZVirtioConsoleDeviceConfiguration" "VZVirtioConsoleDeviceSerialPortConfiguration" "VZVirtioConsolePort" "VZVirtioConsolePortArray" "VZVirtioConsolePortConfiguration" "VZVirtioConsolePortConfigurationArray" "VZVirtioEntropyDeviceConfiguration" "VZVirtioFileSystemDevice" "VZVirtioFileSystemDeviceConfiguration" "VZVirtioGraphicsDevice" "VZVirtioGraphicsDeviceConfiguration" "VZVirtioGraphicsScanout" "VZVirtioGraphicsScanoutConfiguration" "VZVirtioNetworkDeviceConfiguration" "VZVirtioSocketConnection" "VZVirtioSocketDevice" "VZVirtioSocketDeviceConfiguration" "VZVirtioSocketListener" "VZVirtioSoundDeviceConfiguration" "VZVirtioSoundDeviceInputStreamConfiguration" "VZVirtioSoundDeviceOutputStreamConfiguration" "VZVirtioSoundDeviceStreamConfiguration" "VZVirtioTraditionalMemoryBalloonDevice" "VZVirtioTraditionalMemoryBalloonDeviceConfiguration" "VZVirtualMachine" "VZVirtualMachineConfiguration" "VZVirtualMachineDelegate" "VZVirtualMachineStartOptions" "VZVirtualMachineView" "VZVmnetNetworkDeviceAttachment" "VZXHCIController" "VZXHCIControllerConfiguration" "bitflags" "block2" "dispatch2" "objc2-app-kit" "objc2-core-foundation" ]; + "dispatch2" = [ "dep:dispatch2" ]; + "objc2-app-kit" = [ "dep:objc2-app-kit" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "VZAudioDeviceConfiguration" "VZAudioInputStreamSource" "VZAudioOutputStreamSink" "VZBootLoader" "VZBridgedNetworkDeviceAttachment" "VZBridgedNetworkInterface" "VZConsoleDevice" "VZConsoleDeviceConfiguration" "VZConsolePortConfiguration" "VZDefines" "VZDirectoryShare" "VZDirectorySharingDevice" "VZDirectorySharingDeviceConfiguration" "VZDiskBlockDeviceStorageDeviceAttachment" "VZDiskImageStorageDeviceAttachment" "VZDiskSynchronizationMode" "VZEFIBootLoader" "VZEFIVariableStore" "VZEntropyDeviceConfiguration" "VZError" "VZFileHandleNetworkDeviceAttachment" "VZFileHandleSerialPortAttachment" "VZFileSerialPortAttachment" "VZGenericMachineIdentifier" "VZGenericPlatformConfiguration" "VZGraphicsDevice" "VZGraphicsDeviceConfiguration" "VZGraphicsDisplay" "VZGraphicsDisplayConfiguration" "VZHostAudioInputStreamSource" "VZHostAudioOutputStreamSink" "VZKeyboardConfiguration" "VZLinuxBootLoader" "VZLinuxRosettaAbstractSocketCachingOptions" "VZLinuxRosettaCachingOptions" "VZLinuxRosettaDirectoryShare" "VZLinuxRosettaUnixSocketCachingOptions" "VZMACAddress" "VZMacAuxiliaryStorage" "VZMacGraphicsDevice" "VZMacGraphicsDeviceConfiguration" "VZMacGraphicsDisplay" "VZMacGraphicsDisplayConfiguration" "VZMacHardwareModel" "VZMacKeyboardConfiguration" "VZMacMachineIdentifier" "VZMacOSBootLoader" "VZMacOSConfigurationRequirements" "VZMacOSInstaller" "VZMacOSRestoreImage" "VZMacOSVirtualMachineStartOptions" "VZMacPlatformConfiguration" "VZMacTrackpadConfiguration" "VZMemoryBalloonDevice" "VZMemoryBalloonDeviceConfiguration" "VZMultipleDirectoryShare" "VZNATNetworkDeviceAttachment" "VZNVMExpressControllerDeviceConfiguration" "VZNetworkBlockDeviceStorageDeviceAttachment" "VZNetworkDevice" "VZNetworkDeviceAttachment" "VZNetworkDeviceConfiguration" "VZPlatformConfiguration" "VZPointingDeviceConfiguration" "VZSerialPortAttachment" "VZSerialPortConfiguration" "VZSharedDirectory" "VZSingleDirectoryShare" "VZSocketDevice" "VZSocketDeviceConfiguration" "VZSpiceAgentPortAttachment" "VZStorageDevice" "VZStorageDeviceAttachment" "VZStorageDeviceConfiguration" "VZUSBController" "VZUSBControllerConfiguration" "VZUSBDevice" "VZUSBDeviceConfiguration" "VZUSBKeyboardConfiguration" "VZUSBMassStorageDevice" "VZUSBMassStorageDeviceConfiguration" "VZUSBScreenCoordinatePointingDeviceConfiguration" "VZVirtioBlockDeviceConfiguration" "VZVirtioConsoleDevice" "VZVirtioConsoleDeviceConfiguration" "VZVirtioConsoleDeviceSerialPortConfiguration" "VZVirtioConsolePort" "VZVirtioConsolePortArray" "VZVirtioConsolePortConfiguration" "VZVirtioConsolePortConfigurationArray" "VZVirtioEntropyDeviceConfiguration" "VZVirtioFileSystemDevice" "VZVirtioFileSystemDeviceConfiguration" "VZVirtioGraphicsDevice" "VZVirtioGraphicsDeviceConfiguration" "VZVirtioGraphicsScanout" "VZVirtioGraphicsScanoutConfiguration" "VZVirtioNetworkDeviceConfiguration" "VZVirtioSocketConnection" "VZVirtioSocketDevice" "VZVirtioSocketDeviceConfiguration" "VZVirtioSocketListener" "VZVirtioSoundDeviceConfiguration" "VZVirtioSoundDeviceInputStreamConfiguration" "VZVirtioSoundDeviceOutputStreamConfiguration" "VZVirtioSoundDeviceStreamConfiguration" "VZVirtioTraditionalMemoryBalloonDevice" "VZVirtioTraditionalMemoryBalloonDeviceConfiguration" "VZVirtualMachine" "VZVirtualMachineConfiguration" "VZVirtualMachineDelegate" "VZVirtualMachineStartOptions" "VZVirtualMachineView" "VZVmnetNetworkDeviceAttachment" "VZXHCIController" "VZXHCIControllerConfiguration" "alloc" "bitflags" "block2" "default" "dispatch2" "objc2-app-kit" "objc2-core-foundation" "std" ]; + }; + "object" = rec { + crateName = "object"; + version = "0.37.3"; + edition = "2018"; + sha256 = "1zikiy9xhk6lfx1dn2gn2pxbnfpmlkn0byd7ib1n720x0cgj0xpz"; + 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" ]; + "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" "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" ]; + }; + "object_store" = rec { + crateName = "object_store"; + version = "0.12.5"; + edition = "2021"; + sha256 = "001a3rdd57fivhp2ym2w6fdk3x7cm1yba459r07b1jpc1bsgzyzv"; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "chrono"; + packageId = "chrono"; + usesDefaultFeatures = false; + features = [ "clock" ]; + } + { + name = "form_urlencoded"; + packageId = "form_urlencoded"; + optional = true; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + optional = true; + } + { + name = "humantime"; + packageId = "humantime"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "itertools"; + packageId = "itertools 0.14.0"; + } + { + name = "md-5"; + packageId = "md-5"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "quick-xml"; + packageId = "quick-xml"; + optional = true; + features = [ "serialize" "overlapped-lists" ]; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" "std_rng" "thread_rng" ]; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + optional = true; + usesDefaultFeatures = false; + features = [ "rustls-tls-native-roots" "http2" ]; + } + { + name = "ring"; + packageId = "ring"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "serde_urlencoded"; + packageId = "serde_urlencoded"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" "macros" "rt" "time" "io-util" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "url"; + packageId = "url"; + } + { + name = "walkdir"; + packageId = "walkdir"; + optional = true; + } + { + name = "wasm-bindgen-futures"; + packageId = "wasm-bindgen-futures"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); + } + { + name = "web-time"; + packageId = "web-time"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("unknown" == target."os" or null)); + } + ]; + devDependencies = [ + { + name = "hyper"; + packageId = "hyper 1.8.1"; + features = [ "server" ]; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + features = [ "gzip" ]; + } + ]; + features = { + "aws" = [ "cloud" "md-5" ]; + "azure" = [ "cloud" "httparse" ]; + "base64" = [ "dep:base64" ]; + "cloud" = [ "serde" "serde_json" "quick-xml" "hyper" "reqwest" "reqwest/stream" "chrono/serde" "base64" "rand" "ring" "http-body-util" "form_urlencoded" "serde_urlencoded" ]; + "default" = [ "fs" ]; + "form_urlencoded" = [ "dep:form_urlencoded" ]; + "fs" = [ "walkdir" ]; + "gcp" = [ "cloud" "rustls-pemfile" ]; + "http" = [ "cloud" ]; + "http-body-util" = [ "dep:http-body-util" ]; + "httparse" = [ "dep:httparse" ]; + "hyper" = [ "dep:hyper" ]; + "integration" = [ "rand" ]; + "md-5" = [ "dep:md-5" ]; + "quick-xml" = [ "dep:quick-xml" ]; + "rand" = [ "dep:rand" ]; + "reqwest" = [ "dep:reqwest" ]; + "ring" = [ "dep:ring" ]; + "rustls-pemfile" = [ "dep:rustls-pemfile" ]; + "serde" = [ "dep:serde" ]; + "serde_json" = [ "dep:serde_json" ]; + "serde_urlencoded" = [ "dep:serde_urlencoded" ]; + "tls-webpki-roots" = [ "reqwest?/rustls-tls-webpki-roots" ]; + "walkdir" = [ "dep:walkdir" ]; + }; + resolvedDefaultFeatures = [ "aws" "base64" "cloud" "default" "form_urlencoded" "fs" "http-body-util" "hyper" "md-5" "quick-xml" "rand" "reqwest" "ring" "serde" "serde_json" "serde_urlencoded" "walkdir" ]; + }; + "octocrab" = rec { + crateName = "octocrab"; + version = "0.44.1"; + edition = "2018"; + sha256 = "149bbp894yanm9l48wayxvbclvp5rq6alf6jdrxhc8dpz1j6k6c6"; + authors = [ + "XAMPPRocky " + ]; + dependencies = [ + { + name = "arc-swap"; + packageId = "arc-swap"; + } + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "chrono"; + packageId = "chrono"; + usesDefaultFeatures = false; + features = [ "serde" "clock" "wasmbind" ]; + } + { + name = "either"; + packageId = "either"; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + } + { + name = "hyper-rustls"; + packageId = "hyper-rustls 0.27.7"; + optional = true; + usesDefaultFeatures = false; + features = [ "http1" "logging" "native-tokio" "tls12" ]; + } + { + name = "hyper-timeout"; + packageId = "hyper-timeout"; + optional = true; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + features = [ "http1" ]; + } + { + name = "jsonwebtoken"; + packageId = "jsonwebtoken"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "secrecy"; + packageId = "secrecy"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_path_to_error"; + packageId = "serde_path_to_error"; + } + { + name = "serde_urlencoded"; + packageId = "serde_urlencoded"; + } + { + name = "snafu"; + packageId = "snafu"; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + usesDefaultFeatures = false; + features = [ "time" ]; + } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + features = [ "util" "buffer" ]; + } + { + name = "tower-http"; + packageId = "tower-http"; + features = [ "map-response-body" "trace" ]; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + features = [ "log" ]; + } + { + name = "url"; + packageId = "url"; + features = [ "serde" ]; + } + { + name = "web-time"; + packageId = "web-time"; + features = [ "serde" ]; + } + ]; + devDependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "macros" "rt-multi-thread" "time" ]; + } + ]; + features = { + "default" = [ "follow-redirect" "retry" "rustls" "timeout" "tracing" "default-client" "rustls-ring" ]; + "default-client" = [ "hyper-util/client-legacy" ]; + "follow-redirect" = [ "tower-http/follow-redirect" ]; + "futures-core" = [ "dep:futures-core" ]; + "futures-util" = [ "dep:futures-util" ]; + "hyper-rustls" = [ "dep:hyper-rustls" ]; + "hyper-timeout" = [ "dep:hyper-timeout" ]; + "hyper-tls" = [ "dep:hyper-tls" ]; + "opentls" = [ "hyper-tls" ]; + "retry" = [ "tower/retry" "futures-util" ]; + "rustls" = [ "hyper-rustls" ]; + "rustls-aws-lc-rs" = [ "hyper-rustls/aws-lc-rs" ]; + "rustls-ring" = [ "hyper-rustls/ring" ]; + "rustls-webpki-tokio" = [ "hyper-rustls/webpki-tokio" ]; + "stream" = [ "futures-core" "futures-util" ]; + "timeout" = [ "hyper-timeout" "tokio" "tower/timeout" ]; + "tokio" = [ "dep:tokio" ]; + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "default" "default-client" "follow-redirect" "futures-util" "hyper-rustls" "hyper-timeout" "retry" "rustls" "rustls-ring" "timeout" "tokio" "tracing" ]; + }; + "once_cell" = rec { + crateName = "once_cell"; + version = "1.21.3"; + edition = "2021"; + sha256 = "0b9x77lb9f1j6nqgf5aka4s2qj0nly176bpbrv6f9iakk5ff3xa2"; + authors = [ + "Aleksey Kladov " + ]; + 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" ]; + }; + "once_cell_polyfill" = rec { + crateName = "once_cell_polyfill"; + version = "1.70.2"; + edition = "2021"; + sha256 = "1zmla628f0sk3fhjdjqzgxhalr2xrfna958s632z65bjsfv8ljrq"; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "oorandom" = rec { + crateName = "oorandom"; + version = "11.1.5"; + edition = "2018"; + sha256 = "07mlf13z453fq01qff38big1lh83j8l6aaglf63ksqzzqxc0yyfn"; + authors = [ + "Simon Heath " + ]; + + }; + "opaque-debug" = rec { + crateName = "opaque-debug"; + version = "0.3.1"; + edition = "2018"; + sha256 = "10b3w0kydz5jf1ydyli5nv10gdfp97xh79bgz327d273bs46b3f0"; + libName = "opaque_debug"; + authors = [ + "RustCrypto Developers" + ]; + + }; + "openidconnect" = rec { + crateName = "openidconnect"; + version = "4.0.1"; + edition = "2021"; + sha256 = "1cpjgrsm2j3f37ag59ny7l8if1f1yfny3g16xnxn99rfp84ng30d"; + authors = [ + "David A. Ramos " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.21.7"; + } + { + name = "chrono"; + packageId = "chrono"; + usesDefaultFeatures = false; + features = [ "clock" "std" "wasmbind" ]; + } + { + name = "dyn-clone"; + packageId = "dyn-clone"; + } + { + name = "ed25519-dalek"; + packageId = "ed25519-dalek"; + features = [ "pem" ]; + } + { + name = "hmac"; + packageId = "hmac"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "itertools"; + packageId = "itertools 0.10.5"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "oauth2"; + packageId = "oauth2"; + usesDefaultFeatures = false; + } + { + name = "p256"; + packageId = "p256"; + } + { + name = "p384"; + packageId = "p384"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + { + name = "rsa"; + packageId = "rsa"; + } + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde-value"; + packageId = "serde-value"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "serde_path_to_error"; + packageId = "serde_path_to_error"; + } + { + name = "serde_plain"; + packageId = "serde_plain"; + } + { + name = "serde_with"; + packageId = "serde_with"; + } + { + name = "sha2"; + packageId = "sha2"; + features = [ "oid" ]; + } + { + name = "subtle"; + packageId = "subtle"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "url"; + packageId = "url"; + features = [ "serde" ]; + } + ]; + features = { + "curl" = [ "oauth2/curl" ]; + "default" = [ "reqwest" "rustls-tls" ]; + "native-tls" = [ "oauth2/native-tls" ]; + "reqwest" = [ "oauth2/reqwest" ]; + "reqwest-blocking" = [ "oauth2/reqwest-blocking" ]; + "rustls-tls" = [ "oauth2/rustls-tls" ]; + "timing-resistant-secret-traits" = [ "oauth2/timing-resistant-secret-traits" ]; + "ureq" = [ "oauth2/ureq" ]; + }; + resolvedDefaultFeatures = [ "default" "reqwest" "rustls-tls" ]; + }; + "openssl" = rec { + crateName = "openssl"; + version = "0.10.75"; + edition = "2021"; + sha256 = "0a238gvrzjq0r62a7472i685hi5jjzgfj72kp1xd32ir46qqv0q8"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "foreign-types"; + packageId = "foreign-types"; + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "openssl-macros"; + packageId = "openssl-macros"; + } + { + name = "openssl-sys"; + packageId = "openssl-sys"; + rename = "ffi"; + } + ]; + features = { + "aws-lc" = [ "ffi/aws-lc" ]; + "aws-lc-fips" = [ "ffi/aws-lc-fips" ]; + "bindgen" = [ "ffi/bindgen" ]; + "unstable_boringssl" = [ "ffi/unstable_boringssl" ]; + "vendored" = [ "ffi/vendored" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "openssl-macros" = rec { + crateName = "openssl-macros"; + version = "0.1.1"; + edition = "2018"; + sha256 = "173xxvfc63rr5ybwqwylsir0vq6xsj4kxiv4hmg4c3vscdmncj59"; + procMacro = true; + libName = "openssl_macros"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "openssl-probe 0.1.6" = rec { + crateName = "openssl-probe"; + version = "0.1.6"; + edition = "2021"; + sha256 = "0bl52x55laalqb707k009h8kfawliwp992rlsvkzy49n47p2fpnh"; + libName = "openssl_probe"; + authors = [ + "Alex Crichton " + ]; + + }; + "openssl-probe 0.2.0" = rec { + crateName = "openssl-probe"; + version = "0.2.0"; + edition = "2021"; + sha256 = "14bk0gw4sqw4fqywl2032d69k538r91a42mdf7byq2dvvarxjl4z"; + libName = "openssl_probe"; + authors = [ + "Alex Crichton " + ]; + + }; + "openssl-sys" = rec { + crateName = "openssl-sys"; + version = "0.9.111"; + edition = "2021"; + links = "openssl"; + sha256 = "08f3mpsabivfi3fd0qv9231qidqy68lr8a4qi32y6xda43av5jl2"; + build = "build/main.rs"; + libName = "openssl_sys"; + authors = [ + "Alex Crichton " + "Steven Fackler " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + } + { + name = "pkg-config"; + packageId = "pkg-config"; + } + { + name = "vcpkg"; + packageId = "vcpkg"; + } + ]; + features = { + "aws-lc" = [ "dep:aws-lc-sys" ]; + "aws-lc-fips" = [ "dep:aws-lc-fips-sys" ]; + "bindgen" = [ "dep:bindgen" ]; + "bssl-sys" = [ "dep:bssl-sys" ]; + "openssl-src" = [ "dep:openssl-src" ]; + "unstable_boringssl" = [ "bssl-sys" ]; + "vendored" = [ "openssl-src" ]; + }; + }; + "option-ext" = rec { + crateName = "option-ext"; + version = "0.2.0"; + edition = "2015"; + sha256 = "0zbf7cx8ib99frnlanpyikm1bx8qn8x602sw1n7bg6p9x94lyx04"; + libName = "option_ext"; + authors = [ + "Simon Ochsenreither " + ]; + + }; + "ordered-float" = rec { + crateName = "ordered-float"; + version = "2.10.1"; + edition = "2018"; + sha256 = "075i108hr95pr7hy4fgxivib5pky3b6b22rywya5qyd2wmkrvwb8"; + libName = "ordered_float"; + authors = [ + "Jonathan Reem " + "Matt Brubeck " + ]; + dependencies = [ + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "default" = [ "std" ]; + "proptest" = [ "dep:proptest" ]; + "rand" = [ "dep:rand" ]; + "randtest" = [ "rand/std" "rand/std_rng" ]; + "rkyv" = [ "dep:rkyv" ]; + "schemars" = [ "dep:schemars" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "num-traits/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "ordered_hash_map" = rec { + crateName = "ordered_hash_map"; + version = "0.4.0"; + edition = "2021"; + sha256 = "0xn1ww62fl5izfkfnq0jihngma0kg0j7922ahnylml3dpwi5y3mb"; + authors = [ + "William Correia " + ]; + dependencies = [ + { + name = "hashbrown"; + packageId = "hashbrown 0.13.2"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + }; + "os_info" = rec { + crateName = "os_info"; + version = "3.14.0"; + edition = "2018"; + sha256 = "09122f72665q30qsaq4r6c57zpphhgjdlvr3d6ixc02sb4bjl0p4"; + authors = [ + "Jan Schulte " + "Stanislav Tkach " + ]; + dependencies = [ + { + name = "android_system_properties"; + packageId = "android_system_properties"; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "log"; + packageId = "log"; + } + { + name = "nix"; + packageId = "nix 0.30.1"; + target = { target, features }: (("aix" == target."os" or null) || ("dragonfly" == target."os" or null) || ("freebsd" == target."os" or null) || ("illumos" == target."os" or null) || ("linux" == target."os" or null) || ("macos" == target."os" or null) || ("netbsd" == target."os" or null) || ("openbsd" == target."os" or null) || ("cygwin" == target."os" or null)); + features = [ "feature" ]; + } + { + name = "objc2"; + packageId = "objc2"; + target = { target, features }: ("ios" == target."os" or null); + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + target = { target, features }: ("ios" == target."os" or null); + features = [ "NSString" ]; + } + { + name = "objc2-foundation"; + packageId = "objc2-foundation"; + target = { target, features }: ("macos" == target."os" or null); + features = [ "NSData" "NSError" "NSEnumerator" "NSString" ]; + } + { + name = "objc2-ui-kit"; + packageId = "objc2-ui-kit"; + target = { target, features }: ("ios" == target."os" or null); + } + { + name = "serde"; + packageId = "serde"; + optional = true; + features = [ "derive" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_LibraryLoader" "Win32_System_Registry" "Win32_System_SystemInformation" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_UI_WindowsAndMessaging" ]; + } + ]; + features = { + "default" = [ "serde" ]; + "schemars" = [ "dep:schemars" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" ]; + }; + "ouroboros" = rec { + crateName = "ouroboros"; + version = "0.18.5"; + edition = "2018"; + sha256 = "0ndy8hvp24gs7yxw9wj81hs5rb36wxmpw4i38ylrfjy4p46ha3qy"; + authors = [ + "Josh " + ]; + dependencies = [ + { + name = "aliasable"; + packageId = "aliasable"; + } + { + name = "ouroboros_macro"; + packageId = "ouroboros_macro"; + } + { + name = "static_assertions"; + packageId = "static_assertions"; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "ouroboros_macro/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "ouroboros_macro" = rec { + crateName = "ouroboros_macro"; + version = "0.18.5"; + edition = "2018"; + sha256 = "1l343ss6hlh0abbwjk6zah6mdlyhh1v1imflv3v86c6lsfyjhw1w"; + procMacro = true; + authors = [ + "Josh " + ]; + dependencies = [ + { + name = "heck"; + packageId = "heck 0.4.1"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "proc-macro2-diagnostics"; + packageId = "proc-macro2-diagnostics"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "owo-colors" = rec { + crateName = "owo-colors"; + version = "4.2.3"; + edition = "2021"; + sha256 = "0ljavh4hfxmlyjr67hyii5875p55kjg24crkj6h937m7kxr02scw"; + libName = "owo_colors"; + authors = [ + "jam1garner <8260240+jam1garner@users.noreply.github.com>" + ]; + features = { + "supports-color" = [ "dep:supports-color" ]; + "supports-colors" = [ "dep:supports-color-2" "supports-color" ]; + }; + }; + "p256" = rec { + crateName = "p256"; + version = "0.13.2"; + edition = "2021"; + sha256 = "0jyd3c3k239ybs59ixpnl7dqkmm072fr1js8kh7ldx58bzc3m1n9"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "ecdsa"; + packageId = "ecdsa"; + rename = "ecdsa-core"; + optional = true; + usesDefaultFeatures = false; + features = [ "der" ]; + } + { + name = "elliptic-curve"; + packageId = "elliptic-curve"; + usesDefaultFeatures = false; + features = [ "hazmat" "sec1" ]; + } + { + name = "primeorder"; + packageId = "primeorder"; + optional = true; + } + { + name = "sha2"; + packageId = "sha2"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "ecdsa"; + packageId = "ecdsa"; + rename = "ecdsa-core"; + usesDefaultFeatures = false; + features = [ "dev" ]; + } + { + name = "primeorder"; + packageId = "primeorder"; + features = [ "dev" ]; + } + ]; + features = { + "alloc" = [ "ecdsa-core?/alloc" "elliptic-curve/alloc" ]; + "arithmetic" = [ "dep:primeorder" "elliptic-curve/arithmetic" ]; + "bits" = [ "arithmetic" "elliptic-curve/bits" ]; + "default" = [ "arithmetic" "ecdsa" "pem" "std" ]; + "digest" = [ "ecdsa-core/digest" "ecdsa-core/hazmat" ]; + "ecdh" = [ "arithmetic" "elliptic-curve/ecdh" ]; + "ecdsa" = [ "arithmetic" "ecdsa-core/signing" "ecdsa-core/verifying" "sha256" ]; + "ecdsa-core" = [ "dep:ecdsa-core" ]; + "expose-field" = [ "arithmetic" ]; + "hash2curve" = [ "arithmetic" "elliptic-curve/hash2curve" ]; + "jwk" = [ "elliptic-curve/jwk" ]; + "pem" = [ "elliptic-curve/pem" "ecdsa-core/pem" "pkcs8" ]; + "pkcs8" = [ "ecdsa-core?/pkcs8" "elliptic-curve/pkcs8" ]; + "serde" = [ "ecdsa-core?/serde" "elliptic-curve/serde" "primeorder?/serde" "serdect" ]; + "serdect" = [ "dep:serdect" ]; + "sha2" = [ "dep:sha2" ]; + "sha256" = [ "digest" "sha2" ]; + "std" = [ "alloc" "ecdsa-core?/std" "elliptic-curve/std" ]; + "test-vectors" = [ "dep:hex-literal" ]; + "voprf" = [ "elliptic-curve/voprf" "sha2" ]; + }; + resolvedDefaultFeatures = [ "alloc" "arithmetic" "default" "digest" "ecdsa" "ecdsa-core" "pem" "pkcs8" "sha2" "sha256" "std" ]; + }; + "p384" = rec { + crateName = "p384"; + version = "0.13.1"; + edition = "2021"; + sha256 = "1dnnp133mbpp72mfss3fhm8wx3yp3p3abdhlix27v92j19kz2hpy"; + authors = [ + "RustCrypto Developers" + "Frank Denis " + ]; + dependencies = [ + { + name = "ecdsa"; + packageId = "ecdsa"; + rename = "ecdsa-core"; + optional = true; + usesDefaultFeatures = false; + features = [ "der" ]; + } + { + name = "elliptic-curve"; + packageId = "elliptic-curve"; + usesDefaultFeatures = false; + features = [ "hazmat" "sec1" ]; + } + { + name = "primeorder"; + packageId = "primeorder"; + } + { + name = "sha2"; + packageId = "sha2"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "ecdsa"; + packageId = "ecdsa"; + rename = "ecdsa-core"; + usesDefaultFeatures = false; + features = [ "dev" ]; + } + ]; + features = { + "alloc" = [ "ecdsa-core?/alloc" "elliptic-curve/alloc" ]; + "arithmetic" = [ "elliptic-curve/arithmetic" "elliptic-curve/digest" ]; + "bits" = [ "arithmetic" "elliptic-curve/bits" ]; + "default" = [ "arithmetic" "ecdh" "ecdsa" "pem" "std" ]; + "digest" = [ "ecdsa-core/digest" "ecdsa-core/hazmat" ]; + "ecdh" = [ "arithmetic" "elliptic-curve/ecdh" ]; + "ecdsa" = [ "arithmetic" "ecdsa-core/signing" "ecdsa-core/verifying" "sha384" ]; + "ecdsa-core" = [ "dep:ecdsa-core" ]; + "expose-field" = [ "arithmetic" ]; + "hash2curve" = [ "arithmetic" "elliptic-curve/hash2curve" ]; + "hex-literal" = [ "dep:hex-literal" ]; + "jwk" = [ "elliptic-curve/jwk" ]; + "pem" = [ "elliptic-curve/pem" "ecdsa-core/pem" "pkcs8" ]; + "pkcs8" = [ "ecdsa-core/pkcs8" "elliptic-curve/pkcs8" ]; + "serde" = [ "ecdsa-core/serde" "elliptic-curve/serde" "serdect" ]; + "serdect" = [ "dep:serdect" ]; + "sha2" = [ "dep:sha2" ]; + "sha384" = [ "digest" "sha2" ]; + "std" = [ "alloc" "ecdsa-core?/std" "elliptic-curve/std" ]; + "test-vectors" = [ "hex-literal" ]; + "voprf" = [ "elliptic-curve/voprf" "sha2" ]; + }; + resolvedDefaultFeatures = [ "alloc" "arithmetic" "default" "digest" "ecdh" "ecdsa" "ecdsa-core" "pem" "pkcs8" "sha2" "sha384" "std" ]; + }; + "panic-message" = rec { + crateName = "panic-message"; + version = "0.3.0"; + edition = "2018"; + sha256 = "0ba75hapwknxljlcw2719l9zk8111hk1d0ky64ybwk5xizym4kiq"; + libName = "panic_message"; + authors = [ + "Gus Wynn " + ]; + + }; + "parking" = rec { + crateName = "parking"; + version = "2.2.1"; + edition = "2018"; + sha256 = "1fnfgmzkfpjd69v4j9x737b1k8pnn054bvzcn5dm3pkgq595d3gk"; + authors = [ + "Stjepan Glavina " + "The Rust Project Developers" + ]; + features = { + "loom" = [ "dep:loom" ]; + }; + }; + "parking_lot" = rec { + crateName = "parking_lot"; + version = "0.12.5"; + edition = "2021"; + sha256 = "06jsqh9aqmc94j2rlm8gpccilqm6bskbd67zf6ypfc0f4m9p91ck"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "lock_api"; + packageId = "lock_api"; + } + { + name = "parking_lot_core"; + packageId = "parking_lot_core"; + } + ]; + features = { + "arc_lock" = [ "lock_api/arc_lock" ]; + "deadlock_detection" = [ "parking_lot_core/deadlock_detection" ]; + "nightly" = [ "parking_lot_core/nightly" "lock_api/nightly" ]; + "owning_ref" = [ "lock_api/owning_ref" ]; + "serde" = [ "lock_api/serde" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" ]; + }; + "parking_lot_core" = rec { + crateName = "parking_lot_core"; + version = "0.9.12"; + edition = "2021"; + sha256 = "1hb4rggy70fwa1w9nb0svbyflzdc69h047482v2z3sx2hmcnh896"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "redox_syscall"; + packageId = "redox_syscall 0.5.18"; + target = { target, features }: ("redox" == target."os" or null); + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + target = { target, features }: (target."windows" or false); + } + ]; + features = { + "backtrace" = [ "dep:backtrace" ]; + "deadlock_detection" = [ "petgraph" "backtrace" ]; + "petgraph" = [ "dep:petgraph" ]; + }; + }; + "paste" = rec { + crateName = "paste"; + version = "1.0.15"; + edition = "2018"; + sha256 = "02pxffpdqkapy292harq6asfjvadgp1s005fip9ljfsn9fvxgh2p"; + procMacro = true; + authors = [ + "David Tolnay " + ]; + + }; + "pathdiff" = rec { + crateName = "pathdiff"; + version = "0.2.3"; + edition = "2018"; + sha256 = "1lrqp4ip05df8dzldq6gb2c1sq2gs54gly8lcnv3rhav1qhwx56z"; + authors = [ + "Manish Goregaokar " + ]; + features = { + "camino" = [ "dep:camino" ]; + }; + }; + "pbjson" = rec { + crateName = "pbjson"; + version = "0.7.0"; + edition = "2021"; + sha256 = "0s6cdx4lfjahgvzlyv8s0ff2lmw1rc2zvbvxb553ydc0l2gk9rn7"; + authors = [ + "Raphael Taylor-Davies " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.21.7"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + + }; + "pbjson-build" = rec { + crateName = "pbjson-build"; + version = "0.7.0"; + edition = "2021"; + sha256 = "1jbr4b1y0fy3ww9x8qk3mjxvfh8a9sq3qh6i0mhnavixfrc31skf"; + libName = "pbjson_build"; + authors = [ + "Raphael Taylor-Davies " + ]; + dependencies = [ + { + name = "heck"; + packageId = "heck 0.5.0"; + } + { + name = "itertools"; + packageId = "itertools 0.13.0"; + } + { + name = "prost"; + packageId = "prost"; + } + { + name = "prost-types"; + packageId = "prost-types"; + } + ]; + + }; + "pbjson-types" = rec { + crateName = "pbjson-types"; + version = "0.7.0"; + edition = "2021"; + sha256 = "11q83yafwrj1fxz431ab2dmm53hdg0y6zmv1qddzjlhnzdxmwkp5"; + libName = "pbjson_types"; + authors = [ + "Raphael Taylor-Davies " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "chrono"; + packageId = "chrono"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "pbjson"; + packageId = "pbjson"; + } + { + name = "prost"; + packageId = "prost"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + buildDependencies = [ + { + name = "pbjson-build"; + packageId = "pbjson-build"; + } + { + name = "prost-build"; + packageId = "prost-build"; + } + ]; + + }; + "pear" = rec { + crateName = "pear"; + version = "0.2.9"; + edition = "2018"; + sha256 = "0rxlyizzaqq6lswgyfdxjxd3dyb1jfml9gwfpbx5g1j8rq0amvmx"; + authors = [ + "Sergio Benitez " + ]; + dependencies = [ + { + name = "inlinable_string"; + packageId = "inlinable_string"; + } + { + name = "pear_codegen"; + packageId = "pear_codegen"; + } + { + name = "yansi"; + packageId = "yansi"; + optional = true; + } + ]; + features = { + "color" = [ "yansi" ]; + "default" = [ "color" ]; + "yansi" = [ "dep:yansi" ]; + }; + resolvedDefaultFeatures = [ "color" "default" "yansi" ]; + }; + "pear_codegen" = rec { + crateName = "pear_codegen"; + version = "0.2.9"; + edition = "2018"; + sha256 = "0izijffdd2xs762497mk0xr7xwmyw62dzdqjz12v70n0bnc5pasb"; + procMacro = true; + authors = [ + "Sergio Benitez " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "proc-macro2-diagnostics"; + packageId = "proc-macro2-diagnostics"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" "visit-mut" ]; + } + ]; + + }; + "pem" = rec { + crateName = "pem"; + version = "3.0.6"; + edition = "2021"; + sha256 = "1glia9vv51wx79cysqxgdha6g1bwbbr20bfhijlk2nxw4qycac0x"; + authors = [ + "Jonathan Creekmore " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde_core" ]; + "std" = [ "base64/std" "serde_core?/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "pem-rfc7468" = rec { + crateName = "pem-rfc7468"; + version = "0.7.0"; + edition = "2021"; + sha256 = "04l4852scl4zdva31c1z6jafbak0ni5pi0j38ml108zwzjdrrcw8"; + libName = "pem_rfc7468"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "base64ct"; + packageId = "base64ct"; + } + ]; + features = { + "alloc" = [ "base64ct/alloc" ]; + "std" = [ "alloc" "base64ct/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "percent-encoding" = rec { + crateName = "percent-encoding"; + version = "2.3.2"; + edition = "2018"; + sha256 = "083jv1ai930azvawz2khv7w73xh8mnylk7i578cifndjn5y64kwv"; + libName = "percent_encoding"; + authors = [ + "The rust-url developers" + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "petgraph 0.7.1" = rec { + crateName = "petgraph"; + version = "0.7.1"; + edition = "2018"; + sha256 = "0wkpppwrfv1h197asz1p4yfb4li5b1kw0nqllil67n6vj1qb6win"; + authors = [ + "bluss" + "mitchmindtree" + ]; + dependencies = [ + { + name = "fixedbitset"; + packageId = "fixedbitset"; + usesDefaultFeatures = false; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + } + ]; + features = { + "all" = [ "unstable" "quickcheck" "matrix_graph" "stable_graph" "graphmap" "rayon" ]; + "default" = [ "graphmap" "stable_graph" "matrix_graph" ]; + "quickcheck" = [ "dep:quickcheck" ]; + "rayon" = [ "dep:rayon" "indexmap/rayon" ]; + "serde" = [ "dep:serde" ]; + "serde-1" = [ "serde" "serde_derive" ]; + "serde_derive" = [ "dep:serde_derive" ]; + "unstable" = [ "generate" ]; + }; + }; + "petgraph 0.8.3" = rec { + crateName = "petgraph"; + version = "0.8.3"; + edition = "2021"; + sha256 = "0mblnaqbx1y20h5y7pz6y11hk9jjk6k87lsmn7jxaq3hm67ba0c7"; + authors = [ + "bluss" + "mitchmindtree" + ]; + dependencies = [ + { + name = "fixedbitset"; + packageId = "fixedbitset"; + usesDefaultFeatures = false; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + usesDefaultFeatures = false; + features = [ "default-hasher" "inline-more" ]; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "all" = [ "unstable" "quickcheck" "matrix_graph" "stable_graph" "graphmap" "rayon" "dot_parser" ]; + "default" = [ "std" "graphmap" "stable_graph" "matrix_graph" ]; + "dot_parser" = [ "std" "dep:dot-parser" "dep:dot-parser-macros" ]; + "quickcheck" = [ "std" "dep:quickcheck" "graphmap" "stable_graph" ]; + "rayon" = [ "std" "dep:rayon" "indexmap/rayon" "hashbrown/rayon" ]; + "serde" = [ "dep:serde" ]; + "serde-1" = [ "serde" "serde_derive" ]; + "serde_derive" = [ "dep:serde_derive" ]; + "stable_graph" = [ "serde?/alloc" ]; + "std" = [ "indexmap/std" ]; + "unstable" = [ "generate" ]; + }; + resolvedDefaultFeatures = [ "default" "graphmap" "matrix_graph" "stable_graph" "std" ]; + }; + "phf" = rec { + crateName = "phf"; + version = "0.13.1"; + edition = "2021"; + sha256 = "1pzswx5gdglgjgp4azyzwyr4gh031r0kcnpqq6jblga72z3jsmn1"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "phf_shared"; + packageId = "phf_shared"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "macros" = [ "phf_macros" ]; + "phf_macros" = [ "dep:phf_macros" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "phf_shared/std" "serde?/std" ]; + "uncased" = [ "phf_macros?/uncased" "phf_shared/uncased" ]; + "unicase" = [ "phf_macros?/unicase" "phf_shared/unicase" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "phf_shared" = rec { + crateName = "phf_shared"; + version = "0.13.1"; + edition = "2021"; + sha256 = "0rpjchnswm0x5l4mz9xqfpw0j4w68sjvyqrdrv13h7lqqmmyyzz5"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "siphasher"; + packageId = "siphasher"; + } + ]; + features = { + "default" = [ "std" ]; + "uncased" = [ "dep:uncased" ]; + "unicase" = [ "dep:unicase" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "pid1" = rec { + crateName = "pid1"; + version = "0.1.5"; + edition = "2021"; + sha256 = "04vyscnamyj26f2r3anqd3gh50nsg76d0l2n68da2yiv9jzvs2y9"; + dependencies = [ + { + name = "nix"; + packageId = "nix 0.29.0"; + features = [ "process" "signal" ]; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + ]; + + }; + "pin-project" = rec { + crateName = "pin-project"; + version = "1.1.10"; + edition = "2021"; + sha256 = "12kadbnfm1f43cyadw9gsbyln1cy7vj764wz5c8wxaiza3filzv7"; + libName = "pin_project"; + dependencies = [ + { + name = "pin-project-internal"; + packageId = "pin-project-internal"; + } + ]; + + }; + "pin-project-internal" = rec { + crateName = "pin-project-internal"; + version = "1.1.10"; + edition = "2021"; + sha256 = "0qgqzfl0f4lzaz7yl5llhbg97g68r15kljzihaw9wm64z17qx4bf"; + procMacro = true; + libName = "pin_project_internal"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "printing" "clone-impls" "proc-macro" "full" "visit-mut" ]; + } + ]; + + }; + "pin-project-lite" = rec { + crateName = "pin-project-lite"; + version = "0.2.16"; + edition = "2018"; + sha256 = "16wzc7z7dfkf9bmjin22f5282783f6mdksnr0nv0j5ym5f9gyg1v"; + libName = "pin_project_lite"; + + }; + "pin-utils" = rec { + crateName = "pin-utils"; + version = "0.1.0"; + edition = "2018"; + sha256 = "117ir7vslsl2z1a7qzhws4pd01cg2d3338c47swjyvqv2n60v1wb"; + libName = "pin_utils"; + authors = [ + "Josef Brandl " + ]; + + }; + "pkcs1" = rec { + crateName = "pkcs1"; + version = "0.7.5"; + edition = "2021"; + sha256 = "0zz4mil3nchnxljdfs2k5ab1cjqn7kq5lqp62n9qfix01zqvkzy8"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "der"; + packageId = "der"; + features = [ "oid" ]; + } + { + name = "pkcs8"; + packageId = "pkcs8"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "spki"; + packageId = "spki"; + } + ]; + features = { + "alloc" = [ "der/alloc" "zeroize" "pkcs8?/alloc" ]; + "pem" = [ "alloc" "der/pem" "pkcs8?/pem" ]; + "pkcs8" = [ "dep:pkcs8" ]; + "std" = [ "der/std" "alloc" ]; + "zeroize" = [ "der/zeroize" ]; + }; + resolvedDefaultFeatures = [ "alloc" "pem" "pkcs8" "std" "zeroize" ]; + }; + "pkcs8" = rec { + crateName = "pkcs8"; + version = "0.10.2"; + edition = "2021"; + sha256 = "1dx7w21gvn07azszgqd3ryjhyphsrjrmq5mmz1fbxkj5g0vv4l7r"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "der"; + packageId = "der"; + features = [ "oid" ]; + } + { + name = "spki"; + packageId = "spki"; + } + ]; + features = { + "3des" = [ "encryption" "pkcs5/3des" ]; + "alloc" = [ "der/alloc" "der/zeroize" "spki/alloc" ]; + "des-insecure" = [ "encryption" "pkcs5/des-insecure" ]; + "encryption" = [ "alloc" "pkcs5/alloc" "pkcs5/pbes2" "rand_core" ]; + "getrandom" = [ "rand_core/getrandom" ]; + "pem" = [ "alloc" "der/pem" "spki/pem" ]; + "pkcs5" = [ "dep:pkcs5" ]; + "rand_core" = [ "dep:rand_core" ]; + "sha1-insecure" = [ "encryption" "pkcs5/sha1-insecure" ]; + "std" = [ "alloc" "der/std" "spki/std" ]; + "subtle" = [ "dep:subtle" ]; + }; + resolvedDefaultFeatures = [ "alloc" "pem" "std" ]; + }; + "pkg-config" = rec { + crateName = "pkg-config"; + version = "0.3.32"; + edition = "2018"; + sha256 = "0k4h3gnzs94sjb2ix6jyksacs52cf1fanpwsmlhjnwrdnp8dppby"; + libName = "pkg_config"; + authors = [ + "Alex Crichton " + ]; + + }; + "plotters" = rec { + crateName = "plotters"; + version = "0.3.7"; + edition = "2018"; + sha256 = "0ixpy9svpmr2rkzkxvvdpysjjky4gw104d73n7pi2jbs7m06zsss"; + authors = [ + "Hao Hou " + ]; + dependencies = [ + { + name = "num-traits"; + packageId = "num-traits"; + } + { + name = "plotters-backend"; + packageId = "plotters-backend"; + } + { + name = "plotters-svg"; + packageId = "plotters-svg"; + optional = true; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: (("wasm32" == target."arch" or null) && (!("wasi" == target."os" or null))); + } + { + name = "web-sys"; + packageId = "web-sys"; + target = { target, features }: (("wasm32" == target."arch" or null) && (!("wasi" == target."os" or null))); + features = [ "Document" "DomRect" "Element" "HtmlElement" "Node" "Window" "HtmlCanvasElement" "CanvasRenderingContext2d" ]; + } + ]; + features = { + "ab_glyph" = [ "dep:ab_glyph" "once_cell" ]; + "all_elements" = [ "errorbar" "candlestick" "boxplot" "histogram" ]; + "all_series" = [ "area_series" "line_series" "point_series" "surface_series" ]; + "bitmap_backend" = [ "plotters-bitmap" ]; + "bitmap_encoder" = [ "plotters-bitmap/image_encoder" ]; + "bitmap_gif" = [ "plotters-bitmap/gif_backend" ]; + "chrono" = [ "dep:chrono" ]; + "datetime" = [ "chrono" ]; + "default" = [ "bitmap_backend" "bitmap_encoder" "bitmap_gif" "svg_backend" "chrono" "ttf" "image" "deprecated_items" "all_series" "all_elements" "full_palette" "colormaps" ]; + "evcxr" = [ "svg_backend" ]; + "evcxr_bitmap" = [ "evcxr" "bitmap_backend" "plotters-svg/bitmap_encoder" ]; + "font-kit" = [ "dep:font-kit" ]; + "fontconfig-dlopen" = [ "font-kit/source-fontconfig-dlopen" ]; + "image" = [ "dep:image" ]; + "lazy_static" = [ "dep:lazy_static" ]; + "once_cell" = [ "dep:once_cell" ]; + "pathfinder_geometry" = [ "dep:pathfinder_geometry" ]; + "plotters-bitmap" = [ "dep:plotters-bitmap" ]; + "plotters-svg" = [ "dep:plotters-svg" ]; + "svg_backend" = [ "plotters-svg" ]; + "ttf" = [ "font-kit" "ttf-parser" "lazy_static" "pathfinder_geometry" ]; + "ttf-parser" = [ "dep:ttf-parser" ]; + }; + resolvedDefaultFeatures = [ "area_series" "line_series" "plotters-svg" "svg_backend" ]; + }; + "plotters-backend" = rec { + crateName = "plotters-backend"; + version = "0.3.7"; + edition = "2018"; + sha256 = "0ahpliim4hrrf7d4ispc2hwr7rzkn6d6nf7lyyrid2lm28yf2hnz"; + libName = "plotters_backend"; + authors = [ + "Hao Hou " + ]; + + }; + "plotters-svg" = rec { + crateName = "plotters-svg"; + version = "0.3.7"; + edition = "2018"; + sha256 = "0w56sxaa2crpasa1zj0bhxzihlapqfkncggavyngg0w86anf5fji"; + libName = "plotters_svg"; + authors = [ + "Hao Hou " + ]; + dependencies = [ + { + name = "plotters-backend"; + packageId = "plotters-backend"; + } + ]; + features = { + "bitmap_encoder" = [ "image" ]; + "image" = [ "dep:image" ]; + }; + }; + "polyval" = rec { + crateName = "polyval"; + version = "0.6.2"; + edition = "2021"; + sha256 = "09gs56vm36ls6pyxgh06gw2875z2x77r8b2km8q28fql0q6yc7wx"; + 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 = "opaque-debug"; + packageId = "opaque-debug"; + } + { + name = "universal-hash"; + packageId = "universal-hash"; + usesDefaultFeatures = false; + } + ]; + features = { + "std" = [ "universal-hash/std" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "portable-atomic" = rec { + crateName = "portable-atomic"; + version = "1.13.0"; + edition = "2018"; + sha256 = "0l79rf3pzlxmmrylr1c4k61qn8hzs6hzz69yk738pdcvsvj7d5zq"; + libName = "portable_atomic"; + features = { + "critical-section" = [ "dep:critical-section" ]; + "default" = [ "fallback" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "fallback" "require-cas" ]; + }; + "portable-atomic-util" = rec { + crateName = "portable-atomic-util"; + version = "0.2.4"; + edition = "2018"; + sha256 = "01rmx1li07ixsx3sqg2bxqrkzk7b5n8pibwwf2589ms0s3cg18nq"; + libName = "portable_atomic_util"; + dependencies = [ + { + name = "portable-atomic"; + packageId = "portable-atomic"; + usesDefaultFeatures = false; + features = [ "require-cas" ]; + } + ]; + features = { + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" ]; + }; + "postgres-protocol" = rec { + crateName = "postgres-protocol"; + version = "0.6.10"; + edition = "2021"; + sha256 = "14clpf8in16l8vnbn972fiq22dwn1jm3civgh2vd4mahw5gxvs9y"; + libName = "postgres_protocol"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "byteorder"; + packageId = "byteorder"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "fallible-iterator"; + packageId = "fallible-iterator"; + } + { + name = "hmac"; + packageId = "hmac"; + } + { + name = "md-5"; + packageId = "md-5"; + } + { + name = "memchr"; + packageId = "memchr"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "sha2"; + packageId = "sha2"; + } + { + name = "stringprep"; + packageId = "stringprep"; + } + ]; + features = { + "getrandom" = [ "dep:getrandom" ]; + "js" = [ "getrandom/wasm_js" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "postgres-types" = rec { + crateName = "postgres-types"; + version = "0.2.12"; + edition = "2021"; + sha256 = "081ygcjycggk2fyiw6kmilnn9bnfw5l3ydydzs14ds0i4bw5if2l"; + libName = "postgres_types"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "fallible-iterator"; + packageId = "fallible-iterator"; + } + { + name = "postgres-protocol"; + packageId = "postgres-protocol"; + } + ]; + features = { + "array-impls" = [ "array-init" ]; + "array-init" = [ "dep:array-init" ]; + "bit-vec-06" = [ "dep:bit-vec-06" ]; + "bit-vec-07" = [ "dep:bit-vec-07" ]; + "bit-vec-08" = [ "dep:bit-vec-08" ]; + "chrono-04" = [ "dep:chrono-04" ]; + "cidr-02" = [ "dep:cidr-02" ]; + "cidr-03" = [ "dep:cidr-03" ]; + "derive" = [ "postgres-derive" ]; + "eui48-04" = [ "dep:eui48-04" ]; + "eui48-1" = [ "dep:eui48-1" ]; + "geo-types-06" = [ "dep:geo-types-06" ]; + "geo-types-0_7" = [ "dep:geo-types-0_7" ]; + "jiff-01" = [ "dep:jiff-01" ]; + "jiff-02" = [ "dep:jiff-02" ]; + "js" = [ "postgres-protocol/js" ]; + "postgres-derive" = [ "dep:postgres-derive" ]; + "serde-1" = [ "dep:serde-1" ]; + "serde_json-1" = [ "dep:serde_json-1" ]; + "smol_str-01" = [ "dep:smol_str-01" ]; + "time-02" = [ "dep:time-02" ]; + "time-03" = [ "dep:time-03" ]; + "uuid-08" = [ "dep:uuid-08" ]; + "uuid-1" = [ "dep:uuid-1" ]; + "with-bit-vec-0_6" = [ "bit-vec-06" ]; + "with-bit-vec-0_7" = [ "bit-vec-07" ]; + "with-bit-vec-0_8" = [ "bit-vec-08" ]; + "with-chrono-0_4" = [ "chrono-04" ]; + "with-cidr-0_2" = [ "cidr-02" ]; + "with-cidr-0_3" = [ "cidr-03" ]; + "with-eui48-0_4" = [ "eui48-04" ]; + "with-eui48-1" = [ "eui48-1" ]; + "with-geo-types-0_6" = [ "geo-types-06" ]; + "with-geo-types-0_7" = [ "geo-types-0_7" ]; + "with-jiff-0_1" = [ "jiff-01" ]; + "with-jiff-0_2" = [ "jiff-02" ]; + "with-serde_json-1" = [ "serde-1" "serde_json-1" ]; + "with-smol_str-01" = [ "smol_str-01" ]; + "with-time-0_2" = [ "time-02" ]; + "with-time-0_3" = [ "time-03" ]; + "with-uuid-0_8" = [ "uuid-08" ]; + "with-uuid-1" = [ "uuid-1" ]; + }; + }; + "posthog-rs" = rec { + crateName = "posthog-rs"; + version = "0.3.7"; + edition = "2018"; + sha256 = "073ciz3x9zzqdvda058fyvxghjyskfc40aqd9ccrck69fxh263b1"; + libName = "posthog_rs"; + authors = [ + "christos " + "olly " + ]; + dependencies = [ + { + name = "chrono"; + packageId = "chrono"; + features = [ "serde" ]; + } + { + name = "derive_builder"; + packageId = "derive_builder"; + } + { + name = "reqwest"; + packageId = "reqwest 0.11.27"; + usesDefaultFeatures = false; + features = [ "rustls-tls" "blocking" ]; + } + { + name = "semver"; + packageId = "semver"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "serde" "v7" ]; + } + ]; + features = { + "default" = [ "async-client" ]; + }; + resolvedDefaultFeatures = [ "async-client" "default" ]; + }; + "potential_utf" = rec { + crateName = "potential_utf"; + version = "0.1.4"; + edition = "2021"; + sha256 = "0xxg0pkfpq299wvwln409z4fk80rbv55phh3f1jhjajy5x1ljfdp"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "zerovec"; + packageId = "zerovec"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" "writeable/alloc" "zerovec?/alloc" ]; + "databake" = [ "dep:databake" ]; + "default" = [ "alloc" ]; + "serde" = [ "dep:serde_core" ]; + "writeable" = [ "dep:writeable" ]; + "zerovec" = [ "dep:zerovec" ]; + }; + resolvedDefaultFeatures = [ "zerovec" ]; + }; + "powerfmt" = rec { + crateName = "powerfmt"; + version = "0.2.0"; + edition = "2021"; + sha256 = "14ckj2xdpkhv3h6l5sdmb9f1d57z8hbfpdldjc2vl5givq2y77j3"; + authors = [ + "Jacob Pratt " + ]; + features = { + "default" = [ "std" "macros" ]; + "macros" = [ "dep:powerfmt-macros" ]; + "std" = [ "alloc" ]; + }; + }; + "ppv-lite86" = rec { + crateName = "ppv-lite86"; + version = "0.2.21"; + edition = "2021"; + sha256 = "1abxx6qz5qnd43br1dd9b2savpihzjza8gb4fbzdql1gxp2f7sl5"; + libName = "ppv_lite86"; + authors = [ + "The CryptoCorrosion Contributors" + ]; + dependencies = [ + { + name = "zerocopy"; + packageId = "zerocopy"; + features = [ "simd" ]; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "simd" "std" ]; + }; + "prettyplease" = rec { + crateName = "prettyplease"; + version = "0.2.37"; + edition = "2021"; + links = "prettyplease02"; + sha256 = "0azn11i1kh0byabhsgab6kqs74zyrg69xkirzgqyhz6xmjnsi727"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "full" ]; + } + ]; + devDependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "clone-impls" "extra-traits" "parsing" "printing" "visit-mut" ]; + } + ]; + features = { + "verbatim" = [ "syn/parsing" ]; + }; + resolvedDefaultFeatures = [ "verbatim" ]; + }; + "primeorder" = rec { + crateName = "primeorder"; + version = "0.13.6"; + edition = "2021"; + sha256 = "1rp16710mxksagcjnxqjjq9r9wf5vf72fs8wxffnvhb6i6hiqgim"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "elliptic-curve"; + packageId = "elliptic-curve"; + usesDefaultFeatures = false; + features = [ "arithmetic" "sec1" ]; + } + ]; + features = { + "alloc" = [ "elliptic-curve/alloc" ]; + "serde" = [ "elliptic-curve/serde" "serdect" ]; + "serdect" = [ "dep:serdect" ]; + "std" = [ "alloc" "elliptic-curve/std" ]; + }; + }; + "proc-macro-crate" = rec { + crateName = "proc-macro-crate"; + version = "3.4.0"; + edition = "2021"; + sha256 = "10v9qi51n4phn1lrj5r94kjq7yhci9jrkqnn6wpan05yjsgb3711"; + libName = "proc_macro_crate"; + authors = [ + "Bastian Köcher " + ]; + dependencies = [ + { + name = "toml_edit"; + packageId = "toml_edit 0.23.10+spec-1.0.0"; + usesDefaultFeatures = false; + features = [ "parse" ]; + } + ]; + + }; + "proc-macro2" = rec { + crateName = "proc-macro2"; + version = "1.0.105"; + edition = "2021"; + sha256 = "1rvgs5qdznlrqrgicmv24nybnrnv8kyvk2vi7s52ddna1q71hpak"; + libName = "proc_macro2"; + authors = [ + "David Tolnay " + "Alex Crichton " + ]; + dependencies = [ + { + name = "unicode-ident"; + packageId = "unicode-ident"; + } + ]; + features = { + "default" = [ "proc-macro" ]; + }; + resolvedDefaultFeatures = [ "default" "proc-macro" ]; + }; + "proc-macro2-diagnostics" = rec { + crateName = "proc-macro2-diagnostics"; + version = "0.10.1"; + edition = "2018"; + sha256 = "1j48ipc80pykvhx6yhndfa774s58ax1h6sm6mlhf09ls76f6l1mg"; + libName = "proc_macro2_diagnostics"; + authors = [ + "Sergio Benitez " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + { + name = "yansi"; + packageId = "yansi"; + optional = true; + } + ]; + buildDependencies = [ + { + name = "version_check"; + packageId = "version_check"; + } + ]; + features = { + "colors" = [ "yansi" ]; + "default" = [ "colors" ]; + "yansi" = [ "dep:yansi" ]; + }; + resolvedDefaultFeatures = [ "colors" "default" "yansi" ]; + }; + "prodash" = rec { + crateName = "prodash"; + version = "29.0.2"; + edition = "2021"; + sha256 = "1g6i2zk6q9dqgspxn14zp31w14rcph7983lap4ilr228yq4b2jzh"; + authors = [ + "Sebastian Thiel " + ]; + dependencies = [ + { + name = "bytesize"; + packageId = "bytesize 2.3.1"; + optional = true; + } + { + name = "human_format"; + packageId = "human_format"; + optional = true; + } + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "async-io" = [ "dep:async-io" ]; + "bytesize" = [ "dep:bytesize" ]; + "crosstermion" = [ "dep:crosstermion" ]; + "ctrlc" = [ "dep:ctrlc" ]; + "dashmap" = [ "dep:dashmap" ]; + "default" = [ "progress-tree" "progress-tree-log" ]; + "futures-core" = [ "dep:futures-core" ]; + "futures-lite" = [ "dep:futures-lite" ]; + "human_format" = [ "dep:human_format" ]; + "is-terminal" = [ "dep:is-terminal" ]; + "jiff" = [ "dep:jiff" ]; + "local-time" = [ "jiff" ]; + "log" = [ "dep:log" ]; + "parking_lot" = [ "dep:parking_lot" ]; + "progress-log" = [ "log" ]; + "progress-tree" = [ "parking_lot" ]; + "progress-tree-hp-hashmap" = [ "dashmap" ]; + "progress-tree-log" = [ "log" ]; + "render-line" = [ "crosstermion/color" "jiff" "unicode-width" ]; + "render-line-autoconfigure" = [ "is-terminal" ]; + "render-line-crossterm" = [ "crosstermion/crossterm" ]; + "render-tui" = [ "tui" "unicode-segmentation" "unicode-width" "crosstermion/input-async" "tui-react" "futures-lite" "futures-core" "async-io" "jiff" ]; + "render-tui-crossterm" = [ "crosstermion/tui-react-crossterm" "crosstermion/input-async-crossterm" ]; + "signal-hook" = [ "dep:signal-hook" ]; + "tui" = [ "dep:tui" ]; + "tui-react" = [ "dep:tui-react" ]; + "unicode-segmentation" = [ "dep:unicode-segmentation" ]; + "unicode-width" = [ "dep:unicode-width" ]; + "unit-bytes" = [ "bytesize" ]; + "unit-duration" = [ "jiff" ]; + "unit-human" = [ "human_format" ]; + }; + resolvedDefaultFeatures = [ "bytesize" "default" "human_format" "log" "parking_lot" "progress-tree" "progress-tree-log" "unit-bytes" "unit-human" ]; + }; + "prometheus" = rec { + crateName = "prometheus"; + version = "0.14.0"; + edition = "2018"; + sha256 = "0fpl98whrg5j4bpb3qfswii4yfa58zws7rl7rnd0m58bimnk599w"; + authors = [ + "overvenus@gmail.com" + "siddontang@gmail.com" + "vistaswx@gmail.com" + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "fnv"; + packageId = "fnv"; + } + { + name = "lazy_static"; + packageId = "lazy_static"; + } + { + name = "memchr"; + packageId = "memchr"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "protobuf"; + packageId = "protobuf"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "default" = [ "protobuf" ]; + "gen" = [ "protobuf-codegen" ]; + "libc" = [ "dep:libc" ]; + "nightly" = [ "libc" ]; + "process" = [ "libc" "procfs" ]; + "procfs" = [ "dep:procfs" ]; + "protobuf" = [ "dep:protobuf" ]; + "protobuf-codegen" = [ "dep:protobuf-codegen" ]; + "push" = [ "reqwest" "libc" "protobuf" ]; + "reqwest" = [ "dep:reqwest" ]; + }; + resolvedDefaultFeatures = [ "default" "protobuf" ]; + }; + "prost" = rec { + crateName = "prost"; + version = "0.13.5"; + edition = "2021"; + sha256 = "1r8yi6zxxwv9gq5ia9p55nspgwmchs94sqpp64x33v5k3njgm5i7"; + authors = [ + "Dan Burkert " + "Lucio Franco " + "Casper Meijn " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + usesDefaultFeatures = false; + } + { + name = "prost-derive"; + packageId = "prost-derive"; + optional = true; + } + ]; + features = { + "default" = [ "derive" "std" ]; + "derive" = [ "dep:prost-derive" ]; + "prost-derive" = [ "derive" ]; + }; + resolvedDefaultFeatures = [ "default" "derive" "prost-derive" "std" ]; + }; + "prost-build" = rec { + crateName = "prost-build"; + version = "0.13.5"; + edition = "2021"; + sha256 = "1gw1mr0rmv15fc2yvn9jmxbqaj8qh80w5nn5x5s1932y8ijr8xmy"; + libName = "prost_build"; + authors = [ + "Dan Burkert " + "Lucio Franco " + "Casper Meijn " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "heck"; + packageId = "heck 0.4.1"; + } + { + name = "itertools"; + packageId = "itertools 0.14.0"; + usesDefaultFeatures = false; + features = [ "use_alloc" ]; + } + { + name = "log"; + packageId = "log"; + } + { + name = "multimap"; + packageId = "multimap"; + usesDefaultFeatures = false; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "petgraph"; + packageId = "petgraph 0.7.1"; + usesDefaultFeatures = false; + } + { + name = "prettyplease"; + packageId = "prettyplease"; + optional = true; + } + { + name = "prost"; + packageId = "prost"; + usesDefaultFeatures = false; + } + { + name = "prost-types"; + packageId = "prost-types"; + usesDefaultFeatures = false; + } + { + name = "regex"; + packageId = "regex"; + usesDefaultFeatures = false; + features = [ "std" "unicode-bool" ]; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + optional = true; + features = [ "full" ]; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + ]; + features = { + "cleanup-markdown" = [ "dep:pulldown-cmark" "dep:pulldown-cmark-to-cmark" ]; + "default" = [ "format" ]; + "format" = [ "dep:prettyplease" "dep:syn" ]; + }; + resolvedDefaultFeatures = [ "default" "format" ]; + }; + "prost-derive" = rec { + crateName = "prost-derive"; + version = "0.13.5"; + edition = "2021"; + sha256 = "0kgc9gbzsa998xixblfi3kfydka64zqf6rmpm53b761cjxbxfmla"; + procMacro = true; + libName = "prost_derive"; + authors = [ + "Dan Burkert " + "Lucio Franco " + "Casper Meijn " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + } + { + name = "itertools"; + packageId = "itertools 0.14.0"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" ]; + } + ]; + + }; + "prost-types" = rec { + crateName = "prost-types"; + version = "0.13.5"; + edition = "2021"; + sha256 = "05mx699wyg7cjil3hz7h8lp4dhi7xhy1lq5kjv1s3cfx6szw3hjj"; + libName = "prost_types"; + authors = [ + "Dan Burkert " + "Lucio Franco " + "Casper Meijn " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "prost"; + packageId = "prost"; + usesDefaultFeatures = false; + features = [ "prost-derive" ]; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "default" = [ "std" ]; + "std" = [ "prost/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "protobuf" = rec { + crateName = "protobuf"; + version = "3.7.2"; + edition = "2021"; + sha256 = "1x4riz4znnjsqpdxnhxj0aq8rfivmbv4hfqmd3gbbn77v96isnnn"; + authors = [ + "Stepan Koltsov " + ]; + dependencies = [ + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "protobuf-support"; + packageId = "protobuf-support"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + ]; + features = { + "bytes" = [ "dep:bytes" ]; + "with-bytes" = [ "bytes" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "protobuf-support" = rec { + crateName = "protobuf-support"; + version = "3.7.2"; + edition = "2021"; + sha256 = "1mnpn2q96bxm2vidh86m5p2x5z0z8rgfyixk1wlgjiqa3vrw4diy"; + libName = "protobuf_support"; + authors = [ + "Stepan Koltsov " + ]; + dependencies = [ + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + ]; + + }; + "quick-xml" = rec { + crateName = "quick-xml"; + version = "0.38.4"; + edition = "2021"; + sha256 = "0772siy4d9vlq77842012c8cycs3y0szxkv62rh9sh2sqmc20v5n"; + libName = "quick_xml"; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "async-tokio" = [ "tokio" ]; + "document-features" = [ "dep:document-features" ]; + "encoding" = [ "encoding_rs" ]; + "encoding_rs" = [ "dep:encoding_rs" ]; + "serde" = [ "dep:serde" ]; + "serde-types" = [ "serde/derive" ]; + "serialize" = [ "serde" ]; + "tokio" = [ "dep:tokio" ]; + }; + resolvedDefaultFeatures = [ "default" "overlapped-lists" "serde" "serialize" ]; + }; + "quinn" = rec { + crateName = "quinn"; + version = "0.11.9"; + edition = "2021"; + sha256 = "086gzj666dr3slmlynkvxlndy28hahgl361d6bf93hk3i6ahmqmr"; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "quinn-proto"; + packageId = "quinn-proto"; + rename = "proto"; + usesDefaultFeatures = false; + } + { + name = "quinn-udp"; + packageId = "quinn-udp"; + rename = "udp"; + usesDefaultFeatures = false; + features = [ "tracing" ]; + } + { + name = "rustc-hash"; + packageId = "rustc-hash 2.1.1"; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "socket2"; + packageId = "socket2 0.6.1"; + target = { target, features }: (!((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null))); + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" ]; + } + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "web-time"; + packageId = "web-time"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } + ]; + buildDependencies = [ + { + name = "cfg_aliases"; + packageId = "cfg_aliases"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" "rt" "rt-multi-thread" "time" "macros" ]; + } + ]; + features = { + "async-io" = [ "dep:async-io" ]; + "async-std" = [ "dep:async-std" ]; + "aws-lc-rs" = [ "proto/aws-lc-rs" ]; + "aws-lc-rs-fips" = [ "proto/aws-lc-rs-fips" ]; + "bloom" = [ "proto/bloom" ]; + "default" = [ "log" "platform-verifier" "runtime-tokio" "rustls-ring" "bloom" ]; + "futures-io" = [ "dep:futures-io" ]; + "log" = [ "tracing/log" "proto/log" "udp/log" ]; + "platform-verifier" = [ "proto/platform-verifier" ]; + "qlog" = [ "proto/qlog" ]; + "ring" = [ "proto/ring" ]; + "runtime-async-std" = [ "async-io" "async-std" ]; + "runtime-smol" = [ "async-io" "smol" ]; + "runtime-tokio" = [ "tokio/time" "tokio/rt" "tokio/net" ]; + "rustls" = [ "rustls-ring" ]; + "rustls-aws-lc-rs" = [ "dep:rustls" "aws-lc-rs" "proto/rustls-aws-lc-rs" "proto/aws-lc-rs" ]; + "rustls-aws-lc-rs-fips" = [ "dep:rustls" "aws-lc-rs-fips" "proto/rustls-aws-lc-rs-fips" "proto/aws-lc-rs-fips" ]; + "rustls-log" = [ "rustls?/logging" ]; + "rustls-ring" = [ "dep:rustls" "ring" "proto/rustls-ring" "proto/ring" ]; + "smol" = [ "dep:smol" ]; + }; + resolvedDefaultFeatures = [ "aws-lc-rs" "ring" "runtime-tokio" "rustls" "rustls-aws-lc-rs" "rustls-ring" ]; + }; + "quinn-proto" = rec { + crateName = "quinn-proto"; + version = "0.11.13"; + edition = "2021"; + sha256 = "0cca3mgja9p4w66f6sl1kfhj8rdf4mwsg1jxzssh9g63n14np47i"; + libName = "quinn_proto"; + dependencies = [ + { + name = "aws-lc-rs"; + packageId = "aws-lc-rs"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + usesDefaultFeatures = false; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + features = [ "wasm_js" ]; + } + { + name = "lru-slab"; + packageId = "lru-slab"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "ring"; + packageId = "ring"; + optional = true; + } + { + name = "ring"; + packageId = "ring"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + features = [ "wasm32_unknown_unknown_js" ]; + } + { + name = "rustc-hash"; + packageId = "rustc-hash 2.1.1"; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + features = [ "web" ]; + } + { + name = "slab"; + packageId = "slab"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tinyvec"; + packageId = "tinyvec"; + features = [ "alloc" "alloc" ]; + } + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "web-time"; + packageId = "web-time"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "aws-lc-rs" = [ "dep:aws-lc-rs" "aws-lc-rs?/aws-lc-sys" "aws-lc-rs?/prebuilt-nasm" ]; + "aws-lc-rs-fips" = [ "aws-lc-rs" "aws-lc-rs?/fips" ]; + "bloom" = [ "dep:fastbloom" ]; + "default" = [ "rustls-ring" "log" "bloom" ]; + "log" = [ "tracing/log" ]; + "platform-verifier" = [ "dep:rustls-platform-verifier" ]; + "qlog" = [ "dep:qlog" ]; + "ring" = [ "dep:ring" ]; + "rustls" = [ "rustls-ring" ]; + "rustls-aws-lc-rs" = [ "dep:rustls" "rustls?/aws-lc-rs" "aws-lc-rs" ]; + "rustls-aws-lc-rs-fips" = [ "rustls-aws-lc-rs" "aws-lc-rs-fips" ]; + "rustls-log" = [ "rustls?/logging" ]; + "rustls-ring" = [ "dep:rustls" "rustls?/ring" "ring" ]; + }; + resolvedDefaultFeatures = [ "aws-lc-rs" "ring" "rustls-aws-lc-rs" "rustls-ring" ]; + }; + "quinn-udp" = rec { + crateName = "quinn-udp"; + version = "0.5.14"; + edition = "2021"; + sha256 = "1gacawr17a2zkyri0r3m0lc9spzmxbq1by3ilyb8v2mdvjhcdpmd"; + libName = "quinn_udp"; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + { + name = "once_cell"; + packageId = "once_cell"; + target = { target, features }: (target."windows" or false); + } + { + name = "socket2"; + packageId = "socket2 0.6.1"; + target = { target, features }: (!((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null))); + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.60.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_IO" "Win32_Networking_WinSock" ]; + } + ]; + buildDependencies = [ + { + name = "cfg_aliases"; + packageId = "cfg_aliases"; + } + ]; + features = { + "default" = [ "tracing" "log" ]; + "direct-log" = [ "dep:log" ]; + "log" = [ "tracing/log" ]; + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "tracing" ]; + }; + "quote" = rec { + crateName = "quote"; + version = "1.0.43"; + edition = "2021"; + sha256 = "02n41mlr81qmczac7m5kjy51y8b7yrb8ym4ncmjycampjjjxjx6w"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "proc-macro" ]; + "proc-macro" = [ "proc-macro2/proc-macro" ]; + }; + resolvedDefaultFeatures = [ "default" "proc-macro" ]; + }; + "r-efi" = rec { + crateName = "r-efi"; + version = "5.3.0"; + edition = "2018"; + sha256 = "03sbfm3g7myvzyylff6qaxk4z6fy76yv860yy66jiswc2m6b7kb9"; + libName = "r_efi"; + features = { + "core" = [ "dep:core" ]; + "examples" = [ "native" ]; + "rustc-dep-of-std" = [ "core" ]; + }; + }; + "rand 0.8.5" = rec { + crateName = "rand"; + version = "0.8.5"; + edition = "2018"; + sha256 = "013l6931nn7gkc23jz5mm3qdhf93jjf0fg64nz2lp4i51qd8vbrl"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."unix" or false); + } + { + name = "rand_chacha"; + packageId = "rand_chacha 0.3.1"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + } + ]; + features = { + "alloc" = [ "rand_core/alloc" ]; + "default" = [ "std" "std_rng" ]; + "getrandom" = [ "rand_core/getrandom" ]; + "libc" = [ "dep:libc" ]; + "log" = [ "dep:log" ]; + "packed_simd" = [ "dep:packed_simd" ]; + "rand_chacha" = [ "dep:rand_chacha" ]; + "serde" = [ "dep:serde" ]; + "serde1" = [ "serde" "rand_core/serde1" ]; + "simd_support" = [ "packed_simd" ]; + "std" = [ "rand_core/std" "rand_chacha/std" "alloc" "getrandom" "libc" ]; + "std_rng" = [ "rand_chacha" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "getrandom" "libc" "rand_chacha" "std" "std_rng" ]; + }; + "rand 0.9.2" = rec { + crateName = "rand"; + version = "0.9.2"; + edition = "2021"; + sha256 = "1lah73ainvrgl7brcxx0pwhpnqa3sm3qaj672034jz8i0q7pgckd"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "rand_chacha"; + packageId = "rand_chacha 0.9.0"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "rand_core"; + packageId = "rand_core 0.9.5"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" "std_rng" "os_rng" "small_rng" "thread_rng" ]; + "log" = [ "dep:log" ]; + "os_rng" = [ "rand_core/os_rng" ]; + "serde" = [ "dep:serde" "rand_core/serde" ]; + "std" = [ "rand_core/std" "rand_chacha?/std" "alloc" ]; + "std_rng" = [ "dep:rand_chacha" ]; + "thread_rng" = [ "std" "std_rng" "os_rng" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "os_rng" "small_rng" "std" "std_rng" "thread_rng" ]; + }; + "rand_chacha 0.3.1" = rec { + crateName = "rand_chacha"; + version = "0.3.1"; + edition = "2018"; + sha256 = "123x2adin558xbhvqb8w4f6syjsdkmqff8cxwhmjacpsl1ihmhg6"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + "The CryptoCorrosion Contributors" + ]; + dependencies = [ + { + name = "ppv-lite86"; + packageId = "ppv-lite86"; + usesDefaultFeatures = false; + features = [ "simd" ]; + } + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + } + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "serde1" = [ "serde" ]; + "std" = [ "ppv-lite86/std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "rand_chacha 0.9.0" = rec { + crateName = "rand_chacha"; + version = "0.9.0"; + edition = "2021"; + sha256 = "1jr5ygix7r60pz0s1cv3ms1f6pd1i9pcdmnxzzhjc3zn3mgjn0nk"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + "The CryptoCorrosion Contributors" + ]; + dependencies = [ + { + name = "ppv-lite86"; + packageId = "ppv-lite86"; + usesDefaultFeatures = false; + features = [ "simd" ]; + } + { + name = "rand_core"; + packageId = "rand_core 0.9.5"; + } + ]; + devDependencies = [ + { + name = "rand_core"; + packageId = "rand_core 0.9.5"; + features = [ "os_rng" ]; + } + ]; + features = { + "default" = [ "std" ]; + "os_rng" = [ "rand_core/os_rng" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "ppv-lite86/std" "rand_core/std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "rand_core 0.6.4" = rec { + crateName = "rand_core"; + version = "0.6.4"; + edition = "2018"; + sha256 = "0b4j2v4cb5krak1pv6kakv4sz6xcwbrmy2zckc32hsigbrwy82zc"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.2.17"; + optional = true; + } + ]; + features = { + "getrandom" = [ "dep:getrandom" ]; + "serde" = [ "dep:serde" ]; + "serde1" = [ "serde" ]; + "std" = [ "alloc" "getrandom" "getrandom/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "getrandom" "std" ]; + }; + "rand_core 0.9.5" = rec { + crateName = "rand_core"; + version = "0.9.5"; + edition = "2021"; + sha256 = "0g6qc5r3f0hdmz9b11nripyp9qqrzb0xqk9piip8w8qlvqkcibvn"; + authors = [ + "The Rand Project Developers" + "The Rust Project Developers" + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + optional = true; + } + ]; + features = { + "os_rng" = [ "dep:getrandom" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "getrandom?/std" ]; + }; + resolvedDefaultFeatures = [ "os_rng" "std" ]; + }; + "rand_xoshiro 0.6.0" = rec { + crateName = "rand_xoshiro"; + version = "0.6.0"; + edition = "2018"; + sha256 = "1ajsic84rzwz5qr0mzlay8vi17swqi684bqvwqyiim3flfrcv5vg"; + authors = [ + "The Rand Project Developers" + ]; + dependencies = [ + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + "serde1" = [ "serde" ]; + }; + }; + "rand_xoshiro 0.7.0" = rec { + crateName = "rand_xoshiro"; + version = "0.7.0"; + edition = "2021"; + sha256 = "0h9dv9mn703zb2z5dys7vc4rzy3az8xg99fc5m8zbnh0axkg80zp"; + authors = [ + "The Rand Project Developers" + ]; + dependencies = [ + { + name = "rand_core"; + packageId = "rand_core 0.9.5"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + }; + "rayon" = rec { + crateName = "rayon"; + version = "1.11.0"; + edition = "2021"; + sha256 = "13x5fxb7rn4j2yw0cr26n7782jkc7rjzmdkg42qxk3xz0p8033rn"; + dependencies = [ + { + name = "either"; + packageId = "either"; + usesDefaultFeatures = false; + } + { + name = "rayon-core"; + packageId = "rayon-core"; + } + ]; + features = { + "web_spin_lock" = [ "dep:wasm_sync" "rayon-core/web_spin_lock" ]; + }; + }; + "rayon-core" = rec { + crateName = "rayon-core"; + version = "1.13.0"; + edition = "2021"; + links = "rayon-core"; + sha256 = "14dbr0sq83a6lf1rfjq5xdpk5r6zgzvmzs5j6110vlv2007qpq92"; + libName = "rayon_core"; + dependencies = [ + { + name = "crossbeam-deque"; + packageId = "crossbeam-deque"; + } + { + name = "crossbeam-utils"; + packageId = "crossbeam-utils"; + } + ]; + features = { + "web_spin_lock" = [ "dep:wasm_sync" ]; + }; + }; + "redox_syscall 0.5.18" = rec { + crateName = "redox_syscall"; + version = "0.5.18"; + edition = "2021"; + sha256 = "0b9n38zsxylql36vybw18if68yc9jczxmbyzdwyhb9sifmag4azd"; + libName = "syscall"; + authors = [ + "Jeremy Soller " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "userspace" ]; + "rustc-dep-of-std" = [ "core" "bitflags/rustc-dep-of-std" ]; + }; + resolvedDefaultFeatures = [ "default" "userspace" ]; + }; + "redox_syscall 0.7.0" = rec { + crateName = "redox_syscall"; + version = "0.7.0"; + edition = "2021"; + sha256 = "09zfw2jp6hgpn5pkayv9wh01sw410566qk8zwkljm7p6i44gxws9"; + libName = "syscall"; + authors = [ + "Jeremy Soller " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "userspace" ]; + "rustc-dep-of-std" = [ "core" "bitflags/rustc-dep-of-std" ]; + }; + resolvedDefaultFeatures = [ "default" "userspace" ]; + }; + "redox_users 0.4.6" = rec { + crateName = "redox_users"; + version = "0.4.6"; + edition = "2021"; + sha256 = "0hya2cxx6hxmjfxzv9n8rjl5igpychav7zfi1f81pz6i4krry05s"; + authors = [ + "Jose Narvaez " + "Wesley Hershberger " + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.2.17"; + features = [ "std" ]; + } + { + name = "libredox"; + packageId = "libredox"; + usesDefaultFeatures = false; + features = [ "std" "call" ]; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + ]; + features = { + "auth" = [ "rust-argon2" "zeroize" ]; + "default" = [ "auth" ]; + "rust-argon2" = [ "dep:rust-argon2" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "redox_users 0.5.2" = rec { + crateName = "redox_users"; + version = "0.5.2"; + edition = "2021"; + sha256 = "1b17q7gf7w8b1vvl53bxna24xl983yn7bd00gfbii74bcg30irm4"; + authors = [ + "Jose Narvaez " + "Wesley Hershberger " + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.2.17"; + features = [ "std" ]; + } + { + name = "libredox"; + packageId = "libredox"; + usesDefaultFeatures = false; + features = [ "std" "call" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "auth" = [ "rust-argon2" "zeroize" ]; + "default" = [ "auth" ]; + "rust-argon2" = [ "dep:rust-argon2" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "ref-cast" = rec { + crateName = "ref-cast"; + version = "1.0.25"; + edition = "2021"; + sha256 = "0zdzc34qjva9xxgs889z5iz787g81hznk12zbk4g2xkgwq530m7k"; + libName = "ref_cast"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "ref-cast-impl"; + packageId = "ref-cast-impl"; + } + ]; + + }; + "ref-cast-impl" = rec { + crateName = "ref-cast-impl"; + version = "1.0.25"; + edition = "2021"; + sha256 = "1nkhn1fklmn342z5c4mzfzlxddv3x8yhxwwk02cj06djvh36065p"; + procMacro = true; + libName = "ref_cast_impl"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + + }; + "regex" = rec { + crateName = "regex"; + version = "1.12.2"; + edition = "2021"; + sha256 = "1m14zkg6xmkb0q5ah3y39cmggclsjdr1wpxfa4kf5wvm3wcw0fw4"; + authors = [ + "The Rust Project Developers" + "Andrew Gallant " + ]; + 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.13"; + edition = "2021"; + sha256 = "070z0j23pjfidqz0z89id1fca4p572wxpcr20a0qsv68bbrclxjj"; + libName = "regex_automata"; + authors = [ + "The Rust Project Developers" + "Andrew Gallant " + ]; + 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" = [ "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-build" "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.8"; + edition = "2021"; + sha256 = "0n7ggnpk0r32rzgnycy5xrc1yp2kq19m6pz98ch3c6dkaxw9hbbs"; + libName = "regex_syntax"; + authors = [ + "The Rust Project Developers" + "Andrew Gallant " + ]; + 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" ]; + }; + "reqwest 0.11.27" = rec { + crateName = "reqwest"; + version = "0.11.27"; + edition = "2021"; + sha256 = "0qjary4hpplpgdi62d2m0xvbn6lnzckwffm0rgkm2x51023m6ryx"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.21.7"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "encoding_rs"; + packageId = "encoding_rs"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + } + { + name = "h2"; + packageId = "h2 0.3.27"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "http"; + packageId = "http 0.2.12"; + } + { + name = "http-body"; + packageId = "http-body 0.4.6"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "hyper"; + packageId = "hyper 0.14.32"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "tcp" "http1" "http2" "client" "runtime" ]; + } + { + name = "hyper-rustls"; + packageId = "hyper-rustls 0.24.2"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "ipnet"; + packageId = "ipnet"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "log"; + packageId = "log"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "mime"; + packageId = "mime"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "once_cell"; + packageId = "once_cell"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "rustls"; + packageId = "rustls 0.21.12"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "dangerous_configuration" ]; + } + { + name = "rustls-pemfile"; + packageId = "rustls-pemfile"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "serde_json"; + packageId = "serde_json"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "serde_urlencoded"; + packageId = "serde_urlencoded"; + } + { + name = "sync_wrapper"; + packageId = "sync_wrapper 0.1.2"; + } + { + name = "system-configuration"; + packageId = "system-configuration"; + target = { target, features }: ("macos" == target."os" or null); + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "net" "time" ]; + } + { + name = "tokio-rustls"; + packageId = "tokio-rustls 0.24.1"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "url"; + packageId = "url"; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "wasm-bindgen-futures"; + packageId = "wasm-bindgen-futures"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "web-sys"; + packageId = "web-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "AbortController" "AbortSignal" "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" "File" "ReadableStream" ]; + } + { + name = "webpki-roots"; + packageId = "webpki-roots 0.25.4"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "winreg"; + packageId = "winreg"; + target = { target, features }: (target."windows" or false); + } + ]; + devDependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" "alloc" ]; + } + { + name = "hyper"; + packageId = "hyper 0.14.32"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "tcp" "stream" "http1" "http2" "client" "server" "runtime" ]; + } + { + name = "serde"; + packageId = "serde"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "derive" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "macros" "rt-multi-thread" ]; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "serde-serialize" ]; + } + ]; + features = { + "__rustls" = [ "hyper-rustls" "tokio-rustls" "rustls" "__tls" ]; + "__tls" = [ "dep:rustls-pemfile" ]; + "async-compression" = [ "dep:async-compression" ]; + "blocking" = [ "futures-util/io" "tokio/sync" ]; + "brotli" = [ "async-compression" "async-compression/brotli" "tokio-util" ]; + "cookie_crate" = [ "dep:cookie_crate" ]; + "cookie_store" = [ "dep:cookie_store" ]; + "cookies" = [ "cookie_crate" "cookie_store" ]; + "default" = [ "default-tls" ]; + "default-tls" = [ "hyper-tls" "native-tls-crate" "__tls" "tokio-native-tls" ]; + "deflate" = [ "async-compression" "async-compression/zlib" "tokio-util" ]; + "futures-channel" = [ "dep:futures-channel" ]; + "gzip" = [ "async-compression" "async-compression/gzip" "tokio-util" ]; + "h3" = [ "dep:h3" ]; + "h3-quinn" = [ "dep:h3-quinn" ]; + "hickory-dns" = [ "hickory-resolver" ]; + "hickory-resolver" = [ "dep:hickory-resolver" ]; + "http3" = [ "rustls-tls-manual-roots" "h3" "h3-quinn" "quinn" "futures-channel" ]; + "hyper-rustls" = [ "dep:hyper-rustls" ]; + "hyper-tls" = [ "dep:hyper-tls" ]; + "json" = [ "serde_json" ]; + "mime_guess" = [ "dep:mime_guess" ]; + "multipart" = [ "mime_guess" ]; + "native-tls" = [ "default-tls" ]; + "native-tls-alpn" = [ "native-tls" "native-tls-crate/alpn" ]; + "native-tls-crate" = [ "dep:native-tls-crate" ]; + "native-tls-vendored" = [ "native-tls" "native-tls-crate/vendored" ]; + "quinn" = [ "dep:quinn" ]; + "rustls" = [ "dep:rustls" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-tls" = [ "rustls-tls-webpki-roots" ]; + "rustls-tls-manual-roots" = [ "__rustls" ]; + "rustls-tls-native-roots" = [ "rustls-native-certs" "__rustls" ]; + "rustls-tls-webpki-roots" = [ "webpki-roots" "__rustls" ]; + "serde_json" = [ "dep:serde_json" ]; + "socks" = [ "tokio-socks" ]; + "stream" = [ "tokio/fs" "tokio-util" "wasm-streams" ]; + "tokio-native-tls" = [ "dep:tokio-native-tls" ]; + "tokio-rustls" = [ "dep:tokio-rustls" ]; + "tokio-socks" = [ "dep:tokio-socks" ]; + "tokio-util" = [ "dep:tokio-util" ]; + "trust-dns" = [ "hickory-dns" ]; + "wasm-streams" = [ "dep:wasm-streams" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "__rustls" "__tls" "blocking" "hyper-rustls" "rustls" "rustls-tls" "rustls-tls-webpki-roots" "tokio-rustls" "webpki-roots" ]; + }; + "reqwest 0.12.28" = rec { + crateName = "reqwest"; + version = "0.12.28"; + edition = "2021"; + sha256 = "0iqidijghgqbzl3bjg5hb4zmigwa4r612bgi0yiq0c90b6jkrpgd"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "encoding_rs"; + packageId = "encoding_rs"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "futures-channel"; + packageId = "futures-channel"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "h2"; + packageId = "h2 0.4.13"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "http-body-util"; + packageId = "http-body-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "client" ]; + } + { + name = "hyper-rustls"; + packageId = "hyper-rustls 0.27.7"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "tls12" ]; + } + { + name = "hyper-tls"; + packageId = "hyper-tls"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "hyper-util"; + packageId = "hyper-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "client" "client-legacy" "client-proxy" "tokio" ]; + } + { + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "log"; + packageId = "log"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "mime"; + packageId = "mime"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "native-tls"; + packageId = "native-tls"; + rename = "native-tls-crate"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "quinn"; + packageId = "quinn"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "rustls" "runtime-tokio" ]; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" "tls12" ]; + } + { + name = "rustls-native-certs"; + packageId = "rustls-native-certs"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" ]; + } + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "serde_json"; + packageId = "serde_json"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "serde_urlencoded"; + packageId = "serde_urlencoded"; + } + { + name = "sync_wrapper"; + packageId = "sync_wrapper 1.0.2"; + features = [ "futures" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "net" "time" ]; + } + { + name = "tokio-native-tls"; + packageId = "tokio-native-tls"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "tokio-rustls"; + packageId = "tokio-rustls 0.26.4"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "tls12" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "io" ]; + } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "retry" "timeout" "util" ]; + } + { + name = "tower-http"; + packageId = "tower-http"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "follow-redirect" ]; + } + { + name = "tower-service"; + packageId = "tower-service"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "url"; + packageId = "url"; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "wasm-bindgen-futures"; + packageId = "wasm-bindgen-futures"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "wasm-streams"; + packageId = "wasm-streams"; + optional = true; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "web-sys"; + packageId = "web-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "AbortController" "AbortSignal" "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" "File" "ReadableStream" "RequestCache" ]; + } + { + name = "webpki-roots"; + packageId = "webpki-roots 1.0.5"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + ]; + devDependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" "alloc" ]; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "http2" "client" "server" ]; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "http2" "client" "client-legacy" "server-auto" "server-graceful" "tokio" ]; + } + { + name = "serde"; + packageId = "serde"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "derive" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "macros" "rt-multi-thread" ]; + } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + features = [ "limit" ]; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "serde-serialize" ]; + } + ]; + features = { + "__rustls" = [ "dep:hyper-rustls" "dep:tokio-rustls" "dep:rustls" "__tls" ]; + "__rustls-ring" = [ "hyper-rustls?/ring" "tokio-rustls?/ring" "rustls?/ring" "quinn?/ring" ]; + "__tls" = [ "dep:rustls-pki-types" "tokio/io-util" ]; + "blocking" = [ "dep:futures-channel" "futures-channel?/sink" "dep:futures-util" "futures-util?/io" "futures-util?/sink" "tokio/sync" ]; + "brotli" = [ "tower-http/decompression-br" ]; + "charset" = [ "dep:encoding_rs" "dep:mime" ]; + "cookies" = [ "dep:cookie_crate" "dep:cookie_store" ]; + "default" = [ "default-tls" "charset" "http2" "system-proxy" ]; + "default-tls" = [ "dep:hyper-tls" "dep:native-tls-crate" "__tls" "dep:tokio-native-tls" ]; + "deflate" = [ "tower-http/decompression-deflate" ]; + "gzip" = [ "tower-http/decompression-gzip" ]; + "h2" = [ "dep:h2" ]; + "hickory-dns" = [ "dep:hickory-resolver" "dep:once_cell" ]; + "http2" = [ "h2" "hyper/http2" "hyper-util/http2" "hyper-rustls?/http2" ]; + "http3" = [ "rustls-tls-manual-roots" "dep:h3" "dep:h3-quinn" "dep:quinn" "tokio/macros" ]; + "json" = [ "dep:serde_json" ]; + "macos-system-configuration" = [ "system-proxy" ]; + "multipart" = [ "dep:mime_guess" "dep:futures-util" ]; + "native-tls" = [ "default-tls" ]; + "native-tls-alpn" = [ "native-tls" "native-tls-crate?/alpn" "hyper-tls?/alpn" ]; + "native-tls-vendored" = [ "native-tls" "native-tls-crate?/vendored" ]; + "rustls-tls" = [ "rustls-tls-webpki-roots" ]; + "rustls-tls-manual-roots" = [ "rustls-tls-manual-roots-no-provider" "__rustls-ring" ]; + "rustls-tls-manual-roots-no-provider" = [ "__rustls" ]; + "rustls-tls-native-roots" = [ "rustls-tls-native-roots-no-provider" "__rustls-ring" ]; + "rustls-tls-native-roots-no-provider" = [ "dep:rustls-native-certs" "hyper-rustls?/native-tokio" "__rustls" ]; + "rustls-tls-no-provider" = [ "rustls-tls-manual-roots-no-provider" ]; + "rustls-tls-webpki-roots" = [ "rustls-tls-webpki-roots-no-provider" "__rustls-ring" ]; + "rustls-tls-webpki-roots-no-provider" = [ "dep:webpki-roots" "hyper-rustls?/webpki-tokio" "__rustls" ]; + "stream" = [ "tokio/fs" "dep:futures-util" "dep:tokio-util" "dep:wasm-streams" ]; + "system-proxy" = [ "hyper-util/client-proxy-system" ]; + "zstd" = [ "tower-http/decompression-zstd" ]; + }; + resolvedDefaultFeatures = [ "__rustls" "__rustls-ring" "__tls" "blocking" "charset" "default" "default-tls" "h2" "http2" "json" "macos-system-configuration" "rustls-tls" "rustls-tls-native-roots" "rustls-tls-native-roots-no-provider" "rustls-tls-webpki-roots" "rustls-tls-webpki-roots-no-provider" "stream" "system-proxy" ]; + }; + "reqwest 0.13.1" = rec { + crateName = "reqwest"; + version = "0.13.1"; + edition = "2021"; + sha256 = "0qig3k8sh6lcwygjsq89wrqkbaxff4rg180nrhq5ykl1kn603s84"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "encoding_rs"; + packageId = "encoding_rs"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "h2"; + packageId = "h2 0.4.13"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "http-body-util"; + packageId = "http-body-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "client" ]; + } + { + name = "hyper-rustls"; + packageId = "hyper-rustls 0.27.7"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "tls12" ]; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "client" "client-legacy" "client-proxy" "tokio" ]; + } + { + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "log"; + packageId = "log"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "mime"; + packageId = "mime"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "quinn"; + packageId = "quinn"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "runtime-tokio" ]; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" "tls12" ]; + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" ]; + } + { + name = "rustls-platform-verifier"; + packageId = "rustls-platform-verifier"; + optional = true; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "serde"; + packageId = "serde"; + optional = true; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "serde_urlencoded"; + packageId = "serde_urlencoded"; + optional = true; + } + { + name = "sync_wrapper"; + packageId = "sync_wrapper 1.0.2"; + features = [ "futures" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "net" "time" ]; + } + { + name = "tokio-rustls"; + packageId = "tokio-rustls 0.26.4"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "tls12" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "io" ]; + } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "retry" "timeout" "util" ]; + } + { + name = "tower-http"; + packageId = "tower-http"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "follow-redirect" ]; + } + { + name = "tower-service"; + packageId = "tower-service"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + } + { + name = "url"; + packageId = "url"; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "wasm-bindgen-futures"; + packageId = "wasm-bindgen-futures"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "wasm-streams"; + packageId = "wasm-streams"; + optional = true; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "web-sys"; + packageId = "web-sys"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "AbortController" "AbortSignal" "Headers" "Request" "RequestInit" "RequestMode" "Response" "Window" "FormData" "Blob" "BlobPropertyBag" "ServiceWorkerGlobalScope" "RequestCredentials" "File" "ReadableStream" "RequestCache" ]; + } + ]; + devDependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "std" "alloc" ]; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "http2" "client" "server" ]; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "http1" "http2" "client" "client-legacy" "server-auto" "server-graceful" "tokio" ]; + } + { + name = "serde"; + packageId = "serde"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "derive" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "macros" "rt-multi-thread" ]; + } + { + name = "tower"; + packageId = "tower"; + usesDefaultFeatures = false; + features = [ "limit" ]; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: ("wasm32" == target."arch" or null); + features = [ "serde-serialize" ]; + } + ]; + features = { + "__native-tls" = [ "dep:hyper-tls" "dep:native-tls-crate" "__tls" "dep:tokio-native-tls" ]; + "__native-tls-alpn" = [ "native-tls-crate?/alpn" "hyper-tls?/alpn" ]; + "__rustls" = [ "dep:hyper-rustls" "dep:tokio-rustls" "dep:rustls" "__tls" ]; + "__rustls-aws-lc-rs" = [ "hyper-rustls?/aws-lc-rs" "tokio-rustls?/aws-lc-rs" "rustls?/aws-lc-rs" "quinn?/rustls-aws-lc-rs" ]; + "__tls" = [ "dep:rustls-pki-types" "tokio/io-util" ]; + "blocking" = [ "dep:futures-channel" "futures-channel?/sink" "dep:futures-util" "futures-util?/io" "futures-util?/sink" "tokio/sync" ]; + "brotli" = [ "tower-http/decompression-br" ]; + "charset" = [ "dep:encoding_rs" "dep:mime" ]; + "cookies" = [ "dep:cookie_crate" "dep:cookie_store" ]; + "default" = [ "default-tls" "charset" "http2" "system-proxy" ]; + "default-tls" = [ "rustls" ]; + "deflate" = [ "tower-http/decompression-deflate" ]; + "form" = [ "dep:serde" "dep:serde_urlencoded" ]; + "gzip" = [ "tower-http/decompression-gzip" ]; + "hickory-dns" = [ "dep:hickory-resolver" "dep:once_cell" ]; + "http2" = [ "dep:h2" "hyper/http2" "hyper-util/http2" "hyper-rustls?/http2" ]; + "http3" = [ "rustls" "dep:h3" "dep:h3-quinn" "dep:quinn" "tokio/macros" ]; + "json" = [ "dep:serde" "dep:serde_json" ]; + "multipart" = [ "dep:mime_guess" "dep:futures-util" ]; + "native-tls" = [ "__native-tls" "__native-tls-alpn" ]; + "native-tls-no-alpn" = [ "__native-tls" ]; + "native-tls-vendored" = [ "__native-tls" "native-tls-crate?/vendored" "__native-tls-alpn" ]; + "native-tls-vendored-no-alpn" = [ "__native-tls" "native-tls-crate?/vendored" ]; + "query" = [ "dep:serde" "dep:serde_urlencoded" ]; + "rustls" = [ "__rustls-aws-lc-rs" "dep:rustls-platform-verifier" "__rustls" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-no-provider" = [ "dep:rustls-platform-verifier" "__rustls" ]; + "stream" = [ "tokio/fs" "dep:futures-util" "dep:tokio-util" "dep:wasm-streams" ]; + "system-proxy" = [ "hyper-util/client-proxy-system" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + "zstd" = [ "tower-http/decompression-zstd" ]; + }; + resolvedDefaultFeatures = [ "__rustls" "__rustls-aws-lc-rs" "__tls" "charset" "default" "default-tls" "http2" "json" "query" "rustls" "stream" "system-proxy" ]; + }; + "rfc6979" = rec { + crateName = "rfc6979"; + version = "0.4.0"; + edition = "2021"; + sha256 = "1chw95jgcfrysyzsq6a10b1j5qb7bagkx8h0wda4lv25in02mpgq"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "hmac"; + packageId = "hmac"; + usesDefaultFeatures = false; + features = [ "reset" ]; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + ]; + + }; + "ring" = rec { + crateName = "ring"; + version = "0.17.14"; + edition = "2021"; + links = "ring_core_0_17_14_"; + sha256 = "1dw32gv19ccq4hsx3ribhpdzri1vnrlcfqb2vj41xn4l49n9ws54"; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + usesDefaultFeatures = false; + } + { + name = "getrandom"; + packageId = "getrandom 0.2.17"; + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ((("aarch64" == target."arch" or null) && ("little" == target."endian" or null)) && ("apple" == target."vendor" or null) && (("ios" == target."os" or null) || ("macos" == target."os" or null) || ("tvos" == target."os" or null) || ("visionos" == target."os" or null) || ("watchos" == target."os" or null))); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: (((("aarch64" == target."arch" or null) && ("little" == target."endian" or null)) || (("arm" == target."arch" or null) && ("little" == target."endian" or null))) && (("android" == target."os" or null) || ("linux" == target."os" or null))); + } + { + name = "untrusted"; + packageId = "untrusted"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.52.0"; + target = { target, features }: ((("aarch64" == target."arch" or null) && ("little" == target."endian" or null)) && ("windows" == target."os" or null)); + features = [ "Win32_Foundation" "Win32_System_Threading" ]; + } + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ((target."unix" or false) || (target."windows" or false) || ("wasi" == target."os" or null)); + } + ]; + features = { + "default" = [ "alloc" "dev_urandom_fallback" ]; + "std" = [ "alloc" ]; + "wasm32_unknown_unknown_js" = [ "getrandom/js" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "dev_urandom_fallback" "std" "wasm32_unknown_unknown_js" ]; + }; + "rmcp" = rec { + crateName = "rmcp"; + version = "0.7.0"; + edition = "2024"; + sha256 = "1bq9kzv8a7pbqlffvanlxla6yb56yjvz4psl62n9irq10v6x2ksk"; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + optional = true; + } + { + name = "bytes"; + packageId = "bytes"; + optional = true; + } + { + name = "chrono"; + packageId = "chrono"; + usesDefaultFeatures = false; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + features = [ "serde" "clock" "std" "oldtime" ]; + } + { + name = "chrono"; + packageId = "chrono"; + target = { target, features }: (!((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null))); + features = [ "serde" ]; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "http"; + packageId = "http 1.4.0"; + optional = true; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + optional = true; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + optional = true; + } + { + name = "paste"; + packageId = "paste"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + optional = true; + } + { + name = "rmcp-macros"; + packageId = "rmcp-macros"; + optional = true; + } + { + name = "schemars"; + packageId = "schemars 1.2.0"; + optional = true; + features = [ "chrono04" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" "rc" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "sse-stream"; + packageId = "sse-stream"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" "macros" "rt" "time" ]; + } + { + name = "tokio-stream"; + packageId = "tokio-stream"; + optional = true; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + } + { + name = "tower-service"; + packageId = "tower-service"; + optional = true; + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "uuid"; + packageId = "uuid"; + optional = true; + features = [ "v4" ]; + } + ]; + devDependencies = [ + { + name = "schemars"; + packageId = "schemars 1.2.0"; + features = [ "chrono04" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "full" ]; + } + ]; + features = { + "__reqwest" = [ "dep:reqwest" ]; + "auth" = [ "dep:oauth2" "__reqwest" "dep:url" ]; + "base64" = [ "dep:base64" ]; + "client" = [ "dep:tokio-stream" ]; + "client-side-sse" = [ "dep:sse-stream" "dep:http" ]; + "default" = [ "base64" "macros" "server" ]; + "macros" = [ "dep:rmcp-macros" "dep:paste" ]; + "reqwest" = [ "__reqwest" "reqwest?/rustls-tls" ]; + "reqwest-tls-no-provider" = [ "__reqwest" "reqwest?/rustls-tls-no-provider" ]; + "schemars" = [ "dep:schemars" ]; + "server" = [ "transport-async-rw" "dep:schemars" ]; + "server-side-http" = [ "uuid" "dep:rand" "dep:tokio-stream" "dep:http" "dep:http-body" "dep:http-body-util" "dep:bytes" "dep:sse-stream" "tower" ]; + "tower" = [ "dep:tower-service" ]; + "transport-async-rw" = [ "tokio/io-util" "tokio-util/codec" ]; + "transport-child-process" = [ "transport-async-rw" "tokio/process" "dep:process-wrap" ]; + "transport-io" = [ "transport-async-rw" "tokio/io-std" ]; + "transport-sse-client" = [ "client-side-sse" "transport-worker" ]; + "transport-sse-client-reqwest" = [ "transport-sse-client" "reqwest" ]; + "transport-sse-server" = [ "transport-async-rw" "transport-worker" "server-side-http" "dep:axum" ]; + "transport-streamable-http-client" = [ "client-side-sse" "transport-worker" ]; + "transport-streamable-http-client-reqwest" = [ "transport-streamable-http-client" "reqwest" ]; + "transport-streamable-http-server" = [ "transport-streamable-http-server-session" "server-side-http" "transport-worker" ]; + "transport-streamable-http-server-session" = [ "transport-async-rw" "dep:tokio-stream" ]; + "transport-worker" = [ "dep:tokio-stream" ]; + "uuid" = [ "dep:uuid" ]; + }; + resolvedDefaultFeatures = [ "base64" "default" "macros" "server" "server-side-http" "tower" "transport-async-rw" "transport-io" "transport-streamable-http-server" "transport-streamable-http-server-session" "transport-worker" "uuid" ]; + }; + "rmcp-macros" = rec { + crateName = "rmcp-macros"; + version = "0.7.0"; + edition = "2024"; + sha256 = "0bh2ad3jmfgf00b219sbarkbf2ns85s2h3kgwdbsflsz1vmpg9wv"; + procMacro = true; + libName = "rmcp_macros"; + dependencies = [ + { + name = "darling"; + packageId = "darling 0.21.3"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "rpassword" = rec { + crateName = "rpassword"; + version = "7.4.0"; + edition = "2018"; + sha256 = "0ffzfff51pl95a7px9gwlz243mn3vxyw7klcxhhng7049yvcim36"; + authors = [ + "Conrad Kleinespel " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "rtoolbox"; + packageId = "rtoolbox"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.59.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Console" "Win32_Storage_FileSystem" "Win32_Security" "Win32_System_SystemServices" ]; + } + ]; + + }; + "rsa" = rec { + crateName = "rsa"; + version = "0.9.10"; + edition = "2021"; + sha256 = "0bdikdwhcvl1gfh4637m5rdw3fgcl752aiygvzmwlgc8yl1kymxq"; + authors = [ + "RustCrypto Developers" + "dignifiedquire " + ]; + dependencies = [ + { + name = "const-oid"; + packageId = "const-oid"; + usesDefaultFeatures = false; + } + { + name = "digest"; + packageId = "digest"; + usesDefaultFeatures = false; + features = [ "alloc" "oid" ]; + } + { + name = "num-bigint-dig"; + packageId = "num-bigint-dig"; + rename = "num-bigint"; + usesDefaultFeatures = false; + features = [ "i128" "prime" "zeroize" ]; + } + { + name = "num-integer"; + packageId = "num-integer"; + usesDefaultFeatures = false; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + features = [ "libm" ]; + } + { + name = "pkcs1"; + packageId = "pkcs1"; + usesDefaultFeatures = false; + features = [ "alloc" "pkcs8" ]; + } + { + name = "pkcs8"; + packageId = "pkcs8"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + usesDefaultFeatures = false; + } + { + name = "signature"; + packageId = "signature"; + usesDefaultFeatures = false; + features = [ "alloc" "digest" "rand_core" ]; + } + { + name = "spki"; + packageId = "spki"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + features = [ "alloc" ]; + } + ]; + devDependencies = [ + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" "pem" "u64_digit" ]; + "getrandom" = [ "rand_core/getrandom" ]; + "nightly" = [ "num-bigint/nightly" ]; + "pem" = [ "pkcs1/pem" "pkcs8/pem" ]; + "pkcs5" = [ "pkcs8/encryption" ]; + "serde" = [ "dep:serde" "num-bigint/serde" ]; + "sha1" = [ "dep:sha1" ]; + "sha2" = [ "dep:sha2" ]; + "std" = [ "digest/std" "pkcs1/std" "pkcs8/std" "rand_core/std" "signature/std" ]; + "u64_digit" = [ "num-bigint/u64_digit" ]; + }; + resolvedDefaultFeatures = [ "default" "pem" "std" "u64_digit" ]; + }; + "rtoolbox" = rec { + crateName = "rtoolbox"; + version = "0.0.3"; + edition = "2018"; + sha256 = "0vvz9p8wdzspwd7hk0cxyjr0i49cfqks5q02drym5glz4h5rgk57"; + authors = [ + "Conrad Kleinespel " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.52.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Security" "Win32_Storage_FileSystem" "Win32_System_Console" "Win32_System_SystemServices" ]; + } + ]; + features = { + "serde" = [ "dep:serde" "dep:serde_json" ]; + }; + }; + "rust_decimal" = rec { + crateName = "rust_decimal"; + version = "1.40.0"; + edition = "2021"; + sha256 = "1c1yb8lms5aqzlaarwa0d7mn30s2h7x46djipiyginsjk38h7xv1"; + authors = [ + "Paul Mason " + ]; + dependencies = [ + { + name = "arrayvec"; + packageId = "arrayvec"; + usesDefaultFeatures = false; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + features = [ "i128" ]; + } + ]; + features = { + "borsh" = [ "dep:borsh" "std" ]; + "db-diesel-mysql" = [ "diesel/mysql_backend" "std" ]; + "db-diesel-postgres" = [ "diesel/postgres_backend" "std" ]; + "db-diesel2-mysql" = [ "db-diesel-mysql" ]; + "db-diesel2-postgres" = [ "db-diesel-postgres" ]; + "db-postgres" = [ "dep:bytes" "dep:postgres-types" "std" ]; + "db-tokio-postgres" = [ "dep:bytes" "dep:postgres-types" "std" ]; + "default" = [ "serde" "std" ]; + "diesel" = [ "dep:diesel" ]; + "macros" = [ "dep:rust_decimal_macros" ]; + "maths-nopanic" = [ "maths" ]; + "ndarray" = [ "dep:ndarray" ]; + "proptest" = [ "dep:proptest" ]; + "rand" = [ "dep:rand" ]; + "rand-0_9" = [ "dep:rand-0_9" ]; + "rkyv" = [ "dep:rkyv" ]; + "rkyv-safe" = [ "rkyv/validation" ]; + "rocket-traits" = [ "dep:rocket" "std" ]; + "rust-fuzz" = [ "dep:arbitrary" ]; + "ryu" = [ "dep:ryu" ]; + "serde" = [ "dep:serde" ]; + "serde-arbitrary-precision" = [ "serde-with-arbitrary-precision" ]; + "serde-bincode" = [ "serde-str" ]; + "serde-float" = [ "serde-with-float" ]; + "serde-str" = [ "serde-with-str" ]; + "serde-with-arbitrary-precision" = [ "serde" "serde_json/arbitrary_precision" "serde_json/std" "ryu" ]; + "serde-with-float" = [ "serde" ]; + "serde-with-str" = [ "serde" ]; + "serde_json" = [ "dep:serde_json" ]; + "std" = [ "arrayvec/std" "borsh?/std" "bytes?/std" "rand?/std" "rkyv?/std" "serde?/std" "serde_json?/std" ]; + "tokio-pg" = [ "db-tokio-postgres" ]; + "tokio-postgres" = [ "dep:tokio-postgres" ]; + }; + }; + "rustc-demangle" = rec { + crateName = "rustc-demangle"; + version = "0.1.27"; + edition = "2015"; + sha256 = "17f0jl6lgsy8kwxdzxp3s2wmipvlpna03kkc4vkqr1gwv5lqh2xm"; + libName = "rustc_demangle"; + authors = [ + "Alex Crichton " + ]; + features = { + "core" = [ "dep:core" ]; + "rustc-dep-of-std" = [ "core" ]; + }; + }; + "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.1.1" = rec { + crateName = "rustc-hash"; + version = "2.1.1"; + edition = "2021"; + sha256 = "03gz5lvd9ghcwsal022cgkq67dmimcgdjghfb5yb5d352ga06xrm"; + libName = "rustc_hash"; + authors = [ + "The Rust Project Developers" + ]; + features = { + "default" = [ "std" ]; + "rand" = [ "dep:rand" "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "rustc_version" = rec { + crateName = "rustc_version"; + version = "0.4.1"; + edition = "2018"; + sha256 = "14lvdsmr5si5qbqzrajgb6vfn69k0sfygrvfvr2mps26xwi3mjyg"; + dependencies = [ + { + name = "semver"; + packageId = "semver"; + } + ]; + + }; + "rustix 0.38.44" = rec { + crateName = "rustix"; + version = "0.38.44"; + edition = "2021"; + sha256 = "0m61v0h15lf5rrnbjhcb9306bgqrhskrqv7i1n0939dsw8dbrdgx"; + authors = [ + "Dan Gohman " + "Jakub Konka " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + usesDefaultFeatures = false; + } + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || ("s390x" == target."arch" or null)) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + } + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || ("s390x" == target."arch" or null)) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + } + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + usesDefaultFeatures = false; + target = { target, features }: (target."windows" or false); + } + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || ("s390x" == target."arch" or null)) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || ("s390x" == target."arch" or null)) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + } + { + name = "linux-raw-sys"; + packageId = "linux-raw-sys 0.4.15"; + usesDefaultFeatures = false; + target = { target, features }: ((("android" == target."os" or null) || ("linux" == target."os" or null)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || ("s390x" == target."arch" or null)) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + features = [ "general" "ioctl" "no_std" ]; + } + { + name = "linux-raw-sys"; + packageId = "linux-raw-sys 0.4.15"; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || ("s390x" == target."arch" or null)) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + features = [ "general" "errno" "ioctl" "no_std" "elf" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.59.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_NetworkManagement_IpHelper" "Win32_System_Threading" ]; + } + ]; + devDependencies = [ + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + usesDefaultFeatures = false; + } + { + name = "libc"; + packageId = "libc"; + } + ]; + features = { + "all-apis" = [ "event" "fs" "io_uring" "mm" "mount" "net" "param" "pipe" "process" "procfs" "pty" "rand" "runtime" "shm" "stdio" "system" "termios" "thread" "time" ]; + "compiler_builtins" = [ "dep:compiler_builtins" ]; + "core" = [ "dep:core" ]; + "default" = [ "std" "use-libc-auxv" ]; + "io_uring" = [ "event" "fs" "net" "linux-raw-sys/io_uring" ]; + "itoa" = [ "dep:itoa" ]; + "libc" = [ "dep:libc" ]; + "libc-extra-traits" = [ "libc?/extra_traits" ]; + "libc_errno" = [ "dep:libc_errno" ]; + "linux_latest" = [ "linux_4_11" ]; + "net" = [ "linux-raw-sys/net" "linux-raw-sys/netlink" "linux-raw-sys/if_ether" "linux-raw-sys/xdp" ]; + "once_cell" = [ "dep:once_cell" ]; + "param" = [ "fs" ]; + "process" = [ "linux-raw-sys/prctl" ]; + "procfs" = [ "once_cell" "itoa" "fs" ]; + "pty" = [ "itoa" "fs" ]; + "runtime" = [ "linux-raw-sys/prctl" ]; + "rustc-dep-of-std" = [ "core" "rustc-std-workspace-alloc" "compiler_builtins" "linux-raw-sys/rustc-dep-of-std" "bitflags/rustc-dep-of-std" "compiler_builtins?/rustc-dep-of-std" ]; + "rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ]; + "shm" = [ "fs" ]; + "std" = [ "bitflags/std" "alloc" "libc?/std" "libc_errno?/std" "libc-extra-traits" ]; + "system" = [ "linux-raw-sys/system" ]; + "thread" = [ "linux-raw-sys/prctl" ]; + "use-libc" = [ "libc_errno" "libc" "libc-extra-traits" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "fs" "libc-extra-traits" "std" "stdio" "termios" "use-libc-auxv" ]; + }; + "rustix 1.1.3" = rec { + crateName = "rustix"; + version = "1.1.3"; + edition = "2021"; + sha256 = "0d0z2zcw4rwzni1hm8snw8xdxwwrij336m31c4ghq66cghj9wv0l"; + authors = [ + "Dan Gohman " + "Jakub Konka " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + usesDefaultFeatures = false; + } + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + } + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + } + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + usesDefaultFeatures = false; + target = { target, features }: (target."windows" or false); + } + { + name = "libc"; + packageId = "libc"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + } + { + name = "libc"; + packageId = "libc"; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."windows" or false)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + } + { + name = "linux-raw-sys"; + packageId = "linux-raw-sys 0.11.0"; + usesDefaultFeatures = false; + target = { target, features }: ((("linux" == target."os" or null) || ("android" == target."os" or null)) && ((target."rustix_use_libc" or false) || (target."miri" or false) || (!(("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null))))))); + features = [ "general" "ioctl" "no_std" ]; + } + { + name = "linux-raw-sys"; + packageId = "linux-raw-sys 0.11.0"; + usesDefaultFeatures = false; + target = { target, features }: ((!(target."rustix_use_libc" or false)) && (!(target."miri" or false)) && ("linux" == target."os" or null) && (("little" == target."endian" or null) || (("s390x" == target."arch" or null) || ("powerpc" == target."arch" or null))) && (("arm" == target."arch" or null) || (("aarch64" == target."arch" or null) && ("64" == target."pointer_width" or null)) || ("riscv64" == target."arch" or null) || ((target."rustix_use_experimental_asm" or false) && ("powerpc" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("powerpc64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("s390x" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips32r6" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64" == target."arch" or null)) || ((target."rustix_use_experimental_asm" or false) && ("mips64r6" == target."arch" or null)) || ("x86" == target."arch" or null) || (("x86_64" == target."arch" or null) && ("64" == target."pointer_width" or null)))); + features = [ "auxvec" "general" "errno" "ioctl" "no_std" "elf" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Networking_WinSock" ]; + } + ]; + devDependencies = [ + { + name = "errno"; + packageId = "errno"; + rename = "libc_errno"; + usesDefaultFeatures = false; + } + { + name = "libc"; + packageId = "libc"; + } + ]; + features = { + "all-apis" = [ "event" "fs" "io_uring" "mm" "mount" "net" "param" "pipe" "process" "pty" "rand" "runtime" "shm" "stdio" "system" "termios" "thread" "time" ]; + "core" = [ "dep:core" ]; + "default" = [ "std" ]; + "io_uring" = [ "event" "fs" "net" "thread" "linux-raw-sys/io_uring" ]; + "libc" = [ "dep:libc" ]; + "libc_errno" = [ "dep:libc_errno" ]; + "linux_5_1" = [ "linux_4_11" ]; + "linux_5_11" = [ "linux_5_1" ]; + "linux_latest" = [ "linux_5_11" ]; + "net" = [ "linux-raw-sys/net" "linux-raw-sys/netlink" "linux-raw-sys/if_ether" "linux-raw-sys/xdp" ]; + "process" = [ "linux-raw-sys/prctl" ]; + "pty" = [ "fs" ]; + "runtime" = [ "linux-raw-sys/prctl" ]; + "rustc-dep-of-std" = [ "core" "rustc-std-workspace-alloc" "linux-raw-sys/rustc-dep-of-std" "bitflags/rustc-dep-of-std" ]; + "rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ]; + "shm" = [ "fs" ]; + "std" = [ "bitflags/std" "alloc" "libc?/std" "libc_errno?/std" ]; + "system" = [ "linux-raw-sys/system" ]; + "thread" = [ "linux-raw-sys/prctl" ]; + "use-libc" = [ "libc_errno" "libc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "fs" "std" "stdio" "termios" ]; + }; + "rustls 0.21.12" = rec { + crateName = "rustls"; + version = "0.21.12"; + edition = "2021"; + sha256 = "0gjdg2a9r81sdwkyw3n5yfbkrr6p9gyk3xr2kcsr3cs83x6s2miz"; + dependencies = [ + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "ring"; + packageId = "ring"; + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki 0.101.7"; + rename = "webpki"; + features = [ "alloc" "std" ]; + } + { + name = "sct"; + packageId = "sct"; + } + ]; + devDependencies = [ + { + name = "log"; + packageId = "log"; + } + ]; + features = { + "default" = [ "logging" "tls12" ]; + "log" = [ "dep:log" ]; + "logging" = [ "log" ]; + "read_buf" = [ "rustversion" ]; + "rustversion" = [ "dep:rustversion" ]; + }; + resolvedDefaultFeatures = [ "dangerous_configuration" "default" "log" "logging" "tls12" ]; + }; + "rustls 0.23.36" = rec { + crateName = "rustls"; + version = "0.23.36"; + edition = "2021"; + sha256 = "06w0077ssk3blpp93613lkny046mwj0nhxjgc7cmg9nf70yz6rf6"; + dependencies = [ + { + name = "aws-lc-rs"; + packageId = "aws-lc-rs"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + features = [ "alloc" "race" ]; + } + { + name = "ring"; + packageId = "ring"; + optional = true; + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + rename = "pki-types"; + features = [ "alloc" ]; + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki 0.103.9"; + rename = "webpki"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + } + ]; + devDependencies = [ + { + name = "log"; + packageId = "log"; + } + ]; + features = { + "aws-lc-rs" = [ "aws_lc_rs" ]; + "aws_lc_rs" = [ "dep:aws-lc-rs" "webpki/aws-lc-rs" "aws-lc-rs/aws-lc-sys" "aws-lc-rs/prebuilt-nasm" ]; + "brotli" = [ "dep:brotli" "dep:brotli-decompressor" "std" ]; + "default" = [ "aws_lc_rs" "logging" "prefer-post-quantum" "std" "tls12" ]; + "fips" = [ "aws_lc_rs" "aws-lc-rs?/fips" "webpki/aws-lc-rs-fips" ]; + "hashbrown" = [ "dep:hashbrown" ]; + "log" = [ "dep:log" ]; + "logging" = [ "log" ]; + "prefer-post-quantum" = [ "aws_lc_rs" ]; + "read_buf" = [ "rustversion" "std" ]; + "ring" = [ "dep:ring" "webpki/ring" ]; + "rustversion" = [ "dep:rustversion" ]; + "std" = [ "webpki/std" "pki-types/std" "once_cell/std" ]; + "zlib" = [ "dep:zlib-rs" ]; + }; + resolvedDefaultFeatures = [ "aws-lc-rs" "aws_lc_rs" "default" "log" "logging" "prefer-post-quantum" "ring" "std" "tls12" ]; + }; + "rustls-native-certs" = rec { + crateName = "rustls-native-certs"; + version = "0.8.3"; + edition = "2021"; + sha256 = "0qrajg2n90bcr3bcq6j95gjm7a9lirfkkdmjj32419dyyzan0931"; + libName = "rustls_native_certs"; + dependencies = [ + { + name = "openssl-probe"; + packageId = "openssl-probe 0.2.0"; + target = { target, features }: ((target."unix" or false) && (!("macos" == target."os" or null))); + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + rename = "pki-types"; + features = [ "std" ]; + } + { + name = "schannel"; + packageId = "schannel"; + target = { target, features }: (target."windows" or false); + } + { + name = "security-framework"; + packageId = "security-framework 3.5.1"; + target = { target, features }: ("macos" == target."os" or null); + } + ]; + + }; + "rustls-pemfile" = rec { + crateName = "rustls-pemfile"; + version = "1.0.4"; + edition = "2018"; + sha256 = "1324n5bcns0rnw6vywr5agff3rwfvzphi7rmbyzwnv6glkhclx0w"; + libName = "rustls_pemfile"; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.21.7"; + } + ]; + + }; + "rustls-pki-types" = rec { + crateName = "rustls-pki-types"; + version = "1.14.0"; + edition = "2021"; + sha256 = "1p9zsgslvwzzkzhm6bqicffqndr4jpx67992b0vl0pi21a5hy15y"; + libName = "rustls_pki_types"; + dependencies = [ + { + name = "web-time"; + packageId = "web-time"; + optional = true; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + } + ]; + features = { + "alloc" = [ "dep:zeroize" ]; + "default" = [ "alloc" ]; + "std" = [ "alloc" ]; + "web" = [ "web-time" ]; + "web-time" = [ "dep:web-time" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" "web" "web-time" ]; + }; + "rustls-platform-verifier" = rec { + crateName = "rustls-platform-verifier"; + version = "0.6.2"; + edition = "2021"; + sha256 = "110pqkn3px9115pb6h6a23cq738v29gbp559dfvpmbibqzmzx68x"; + libName = "rustls_platform_verifier"; + dependencies = [ + { + name = "core-foundation"; + packageId = "core-foundation 0.10.1"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "jni"; + packageId = "jni"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "jni"; + packageId = "jni"; + usesDefaultFeatures = false; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "log"; + packageId = "log"; + } + { + name = "once_cell"; + packageId = "once_cell"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "rustls-native-certs"; + packageId = "rustls-native-certs"; + target = { target, features }: ((target."unix" or false) && (!("android" == target."os" or null)) && (!("apple" == target."vendor" or null)) && (!("wasm32" == target."arch" or null))); + } + { + name = "rustls-platform-verifier-android"; + packageId = "rustls-platform-verifier-android"; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki 0.103.9"; + rename = "webpki"; + usesDefaultFeatures = false; + target = { target, features }: ((target."unix" or false) && (!("android" == target."os" or null)) && (!("apple" == target."vendor" or null)) && (!("wasm32" == target."arch" or null))); + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki 0.103.9"; + rename = "webpki"; + usesDefaultFeatures = false; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "rustls-webpki"; + packageId = "rustls-webpki 0.103.9"; + rename = "webpki"; + usesDefaultFeatures = false; + target = { target, features }: ("android" == target."os" or null); + } + { + name = "security-framework"; + packageId = "security-framework 3.5.1"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "security-framework-sys"; + packageId = "security-framework-sys"; + target = { target, features }: (("apple" == target."vendor" or null)); + } + { + name = "webpki-root-certs"; + packageId = "webpki-root-certs"; + target = { target, features }: ("wasm32" == target."arch" or null); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + usesDefaultFeatures = false; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Security_Cryptography" ]; + } + ]; + devDependencies = [ + { + name = "rustls"; + packageId = "rustls 0.23.36"; + usesDefaultFeatures = false; + features = [ "ring" ]; + } + { + name = "webpki-root-certs"; + packageId = "webpki-root-certs"; + } + ]; + features = { + "android_logger" = [ "dep:android_logger" ]; + "base64" = [ "dep:base64" ]; + "cert-logging" = [ "base64" ]; + "docsrs" = [ "jni" "once_cell" ]; + "ffi-testing" = [ "android_logger" "rustls/ring" ]; + "jni" = [ "dep:jni" ]; + "once_cell" = [ "dep:once_cell" ]; + }; + }; + "rustls-platform-verifier-android" = rec { + crateName = "rustls-platform-verifier-android"; + version = "0.1.1"; + edition = "2021"; + sha256 = "13vq6sxsgz9547xm2zbdxiw8x7ad1g8n8ax6xvxsjqszk7q6awgq"; + libName = "rustls_platform_verifier_android"; + + }; + "rustls-webpki 0.101.7" = rec { + crateName = "rustls-webpki"; + version = "0.101.7"; + edition = "2021"; + sha256 = "0rapfhpkqp75552i8r0y7f4vq7csb4k7gjjans0df73sxv8paqlb"; + libName = "webpki"; + dependencies = [ + { + name = "ring"; + packageId = "ring"; + usesDefaultFeatures = false; + } + { + name = "untrusted"; + packageId = "untrusted"; + } + ]; + features = { + "alloc" = [ "ring/alloc" ]; + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "rustls-webpki 0.103.9" = rec { + crateName = "rustls-webpki"; + version = "0.103.9"; + edition = "2021"; + sha256 = "0lwg1nnyv7pp2lfwwjhy81bxm233am99jnsp3iymdhd6k8827pyp"; + libName = "webpki"; + dependencies = [ + { + name = "aws-lc-rs"; + packageId = "aws-lc-rs"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "ring"; + packageId = "ring"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + rename = "pki-types"; + usesDefaultFeatures = false; + } + { + name = "untrusted"; + packageId = "untrusted"; + } + ]; + features = { + "alloc" = [ "ring?/alloc" "pki-types/alloc" ]; + "aws-lc-rs" = [ "dep:aws-lc-rs" "aws-lc-rs/aws-lc-sys" "aws-lc-rs/prebuilt-nasm" ]; + "aws-lc-rs-fips" = [ "dep:aws-lc-rs" "aws-lc-rs/fips" ]; + "aws-lc-rs-unstable" = [ "aws-lc-rs" "aws-lc-rs/unstable" ]; + "default" = [ "std" ]; + "ring" = [ "dep:ring" ]; + "std" = [ "alloc" "pki-types/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "aws-lc-rs" "ring" "std" ]; + }; + "rustversion" = rec { + crateName = "rustversion"; + version = "1.0.22"; + edition = "2018"; + sha256 = "0vfl70jhv72scd9rfqgr2n11m5i9l1acnk684m2w83w0zbqdx75k"; + procMacro = true; + build = "build/build.rs"; + authors = [ + "David Tolnay " + ]; + + }; + "ryu" = rec { + crateName = "ryu"; + version = "1.0.22"; + edition = "2021"; + sha256 = "1139acr2kd4n8p36bp1n42xrpaphn6dhwklnazh8hpdnfps4q3x5"; + authors = [ + "David Tolnay " + ]; + features = { + "no-panic" = [ "dep:no-panic" ]; + }; + }; + "safemem" = rec { + crateName = "safemem"; + version = "0.2.0"; + edition = "2015"; + sha256 = "13rx2vl5bqc7x4xpfc0can3a39f3bhgqg3l112lsxxrmp0cqnyp2"; + authors = [ + "Austin Bonander " + ]; + + }; + "same-file" = rec { + crateName = "same-file"; + version = "1.0.6"; + edition = "2018"; + sha256 = "00h5j1w87dmhnvbv9l8bic3y7xxsnjmssvifw2ayvgx9mb1ivz4k"; + libName = "same_file"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "winapi-util"; + packageId = "winapi-util"; + target = { target, features }: (target."windows" or false); + } + ]; + + }; + "schannel" = rec { + crateName = "schannel"; + version = "0.1.28"; + edition = "2018"; + sha256 = "1qb6s5gyxfz2inz753a4z3mc1d266mwvz0c5w7ppd3h44swq27c9"; + authors = [ + "Steven Fackler " + "Steffen Butzer " + ]; + dependencies = [ + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + features = [ "Win32_Foundation" "Win32_Security_Cryptography" "Win32_Security_Authentication_Identity" "Win32_Security_Credentials" "Win32_System_LibraryLoader" "Win32_System_Memory" "Win32_System_SystemInformation" ]; + } + ]; + devDependencies = [ + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + features = [ "Win32_System_SystemInformation" "Win32_System_Time" ]; + } + ]; + + }; + "schemars 0.8.22" = rec { + crateName = "schemars"; + version = "0.8.22"; + edition = "2021"; + sha256 = "05an9nbi18ynyxv1rjmwbg6j08j0496hd64mjggh53mwp3hjmgrz"; + authors = [ + "Graham Esau " + ]; + dependencies = [ + { + name = "dyn-clone"; + packageId = "dyn-clone"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + ]; + features = { + "arrayvec" = [ "arrayvec05" ]; + "arrayvec05" = [ "dep:arrayvec05" ]; + "arrayvec07" = [ "dep:arrayvec07" ]; + "bigdecimal" = [ "bigdecimal03" ]; + "bigdecimal03" = [ "dep:bigdecimal03" ]; + "bigdecimal04" = [ "dep:bigdecimal04" ]; + "bytes" = [ "dep:bytes" ]; + "chrono" = [ "dep:chrono" ]; + "default" = [ "derive" ]; + "derive" = [ "schemars_derive" ]; + "derive_json_schema" = [ "impl_json_schema" ]; + "either" = [ "dep:either" ]; + "enumset" = [ "dep:enumset" ]; + "impl_json_schema" = [ "derive" ]; + "indexmap" = [ "dep:indexmap" ]; + "indexmap1" = [ "indexmap" ]; + "indexmap2" = [ "dep:indexmap2" ]; + "preserve_order" = [ "indexmap" ]; + "raw_value" = [ "serde_json/raw_value" ]; + "rust_decimal" = [ "dep:rust_decimal" ]; + "schemars_derive" = [ "dep:schemars_derive" ]; + "semver" = [ "dep:semver" ]; + "smallvec" = [ "dep:smallvec" ]; + "smol_str" = [ "dep:smol_str" ]; + "url" = [ "dep:url" ]; + "uuid" = [ "uuid08" ]; + "uuid08" = [ "dep:uuid08" ]; + "uuid1" = [ "dep:uuid1" ]; + }; + }; + "schemars 0.9.0" = rec { + crateName = "schemars"; + version = "0.9.0"; + edition = "2021"; + sha256 = "0pqncln5hqbzbl2r3yayyr4a82jjf93h2cfxrn0xamvx77wr3lac"; + authors = [ + "Graham Esau " + ]; + dependencies = [ + { + name = "dyn-clone"; + packageId = "dyn-clone"; + } + { + name = "ref-cast"; + packageId = "ref-cast"; + } + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "arrayvec07" = [ "dep:arrayvec07" ]; + "bigdecimal04" = [ "dep:bigdecimal04" ]; + "bytes1" = [ "dep:bytes1" ]; + "chrono04" = [ "dep:chrono04" ]; + "default" = [ "derive" "std" ]; + "derive" = [ "schemars_derive" ]; + "either1" = [ "dep:either1" ]; + "indexmap2" = [ "dep:indexmap2" ]; + "jiff02" = [ "dep:jiff02" ]; + "preserve_order" = [ "serde_json/preserve_order" ]; + "raw_value" = [ "serde_json/raw_value" ]; + "rust_decimal1" = [ "dep:rust_decimal1" ]; + "schemars_derive" = [ "dep:schemars_derive" ]; + "semver1" = [ "dep:semver1" ]; + "smallvec1" = [ "dep:smallvec1" ]; + "smol_str02" = [ "dep:smol_str02" ]; + "url2" = [ "dep:url2" ]; + "uuid1" = [ "dep:uuid1" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "schemars 1.2.0" = rec { + crateName = "schemars"; + version = "1.2.0"; + edition = "2021"; + sha256 = "1lk7qb6797dmixnb0qfkmlpsa5p2kgwk29s91xvpmia2hw811sal"; + authors = [ + "Graham Esau " + ]; + dependencies = [ + { + name = "chrono"; + packageId = "chrono"; + rename = "chrono04"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "dyn-clone"; + packageId = "dyn-clone"; + } + { + name = "ref-cast"; + packageId = "ref-cast"; + } + { + name = "schemars_derive"; + packageId = "schemars_derive"; + optional = true; + } + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + devDependencies = [ + { + name = "chrono"; + packageId = "chrono"; + rename = "chrono04"; + usesDefaultFeatures = false; + features = [ "serde" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "arrayvec07" = [ "dep:arrayvec07" ]; + "bigdecimal04" = [ "dep:bigdecimal04" ]; + "bytes1" = [ "dep:bytes1" ]; + "chrono04" = [ "dep:chrono04" ]; + "default" = [ "derive" "std" ]; + "derive" = [ "schemars_derive" ]; + "either1" = [ "dep:either1" ]; + "indexmap2" = [ "dep:indexmap2" ]; + "jiff02" = [ "dep:jiff02" ]; + "preserve_order" = [ "serde_json/preserve_order" ]; + "raw_value" = [ "serde_json/raw_value" ]; + "rust_decimal1" = [ "dep:rust_decimal1" ]; + "schemars_derive" = [ "dep:schemars_derive" ]; + "semver1" = [ "dep:semver1" ]; + "smallvec1" = [ "dep:smallvec1" ]; + "smol_str02" = [ "dep:smol_str02" ]; + "smol_str03" = [ "dep:smol_str03" ]; + "url2" = [ "dep:url2" ]; + "uuid1" = [ "dep:uuid1" ]; + }; + resolvedDefaultFeatures = [ "chrono04" "default" "derive" "schemars_derive" "std" ]; + }; + "schemars_derive" = rec { + crateName = "schemars_derive"; + version = "1.2.0"; + edition = "2021"; + sha256 = "0ibwb8amvy70xrgbfqp1iqk0mvqd4x4hvpyg2bmshdahihlas229"; + procMacro = true; + authors = [ + "Graham Esau " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "serde_derive_internals"; + packageId = "serde_derive_internals"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + devDependencies = [ + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" ]; + } + ]; + + }; + "schematic" = rec { + crateName = "schematic"; + version = "0.18.15"; + edition = "2024"; + sha256 = "0hvwkcq7hmggcsaqmr2ncs5wqgan35d95dkd5d1c4xw8g3mk9h1m"; + dependencies = [ + { + name = "garde"; + packageId = "garde"; + optional = true; + usesDefaultFeatures = false; + features = [ "regex" ]; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + optional = true; + features = [ "serde" ]; + } + { + name = "markdown"; + packageId = "markdown"; + optional = true; + } + { + name = "miette"; + packageId = "miette"; + } + { + name = "schemars"; + packageId = "schemars 0.8.22"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "schematic_macros"; + packageId = "schematic_macros"; + } + { + name = "schematic_types"; + packageId = "schematic_types"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + features = [ "preserve_order" ]; + } + { + name = "serde_path_to_error"; + packageId = "serde_path_to_error"; + optional = true; + } + { + name = "serde_yaml"; + packageId = "serde_yaml"; + optional = true; + } + { + name = "starbase_styles"; + packageId = "starbase_styles"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "tracing"; + packageId = "tracing"; + } + ]; + devDependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + } + ]; + features = { + "config" = [ "dep:serde_path_to_error" "dep:starbase_styles" "schematic_macros/config" ]; + "default" = [ "config" "env" "extends" "validate" ]; + "env" = [ "schematic_macros/env" ]; + "extends" = [ "schematic_macros/extends" ]; + "json" = [ "dep:serde_json" "schematic_types/serde_json" ]; + "pkl" = [ "dep:rpkl" "schematic_types/serde_rpkl" ]; + "renderer_json_schema" = [ "json" "schema" "dep:markdown" "dep:schemars" ]; + "renderer_template" = [ "schema" ]; + "renderer_typescript" = [ "schema" ]; + "ron" = [ "dep:ron" "schematic_types/serde_ron" ]; + "schema" = [ "dep:indexmap" "schematic_macros/schema" ]; + "schema_serde" = [ "schema" "schematic_types/serde" ]; + "toml" = [ "dep:toml" "schematic_types/serde_toml" ]; + "tracing" = [ "schematic_macros/tracing" ]; + "type_chrono" = [ "schematic_types/chrono" ]; + "type_indexmap" = [ "schematic_types/indexmap" ]; + "type_regex" = [ "schematic_types/regex" "dep:regex" ]; + "type_relative_path" = [ "schematic_types/relative_path" ]; + "type_rust_decimal" = [ "schematic_types/rust_decimal" "garde?/rust_decimal" ]; + "type_semver" = [ "schematic_types/semver" "dep:semver" ]; + "type_url" = [ "schematic_types/url" ]; + "type_uuid" = [ "schematic_types/uuid" ]; + "url" = [ "dep:reqwest" ]; + "validate" = [ "dep:garde" "schematic_macros/validate" ]; + "validate_email" = [ "validate" "garde/email" ]; + "validate_url" = [ "validate" "garde/url" ]; + "yaml" = [ "dep:serde_yaml" "schematic_types/serde_yaml" ]; + "yml" = [ "dep:serde_yml" "schematic_types/serde_yml" ]; + }; + resolvedDefaultFeatures = [ "config" "default" "env" "extends" "json" "renderer_json_schema" "renderer_template" "schema" "validate" "yaml" ]; + }; + "schematic_macros" = rec { + crateName = "schematic_macros"; + version = "0.18.12"; + edition = "2024"; + sha256 = "1hbd8aggfvpim52da88g8rciammhf3j9rkcp1bpn31mxs9wy6brr"; + procMacro = true; + dependencies = [ + { + name = "convert_case"; + packageId = "convert_case 0.8.0"; + } + { + name = "darling"; + packageId = "darling 0.21.3"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "config" "default" "env" "extends" "schema" "validate" ]; + }; + "schematic_types" = rec { + crateName = "schematic_types"; + version = "0.10.7"; + edition = "2024"; + sha256 = "1rj016j2wps61cal11mgm87kk65k2813cz5grf1lrd7fjqwwfpql"; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "serde_yaml"; + packageId = "serde_yaml"; + optional = true; + } + ]; + features = { + "chrono" = [ "dep:chrono" ]; + "regex" = [ "dep:regex" ]; + "relative_path" = [ "dep:relative-path" ]; + "rust_decimal" = [ "dep:rust_decimal" ]; + "semver" = [ "dep:semver" ]; + "serde" = [ "dep:serde" ]; + "serde_json" = [ "dep:serde_json" ]; + "serde_ron" = [ "dep:ron" ]; + "serde_rpkl" = [ "dep:rpkl" ]; + "serde_toml" = [ "dep:toml" ]; + "serde_yaml" = [ "dep:serde_yaml" ]; + "serde_yml" = [ "dep:serde_yml" ]; + "url" = [ "dep:url" ]; + "uuid" = [ "dep:uuid" ]; + }; + resolvedDefaultFeatures = [ "default" "serde_json" "serde_yaml" ]; + }; + "scoped-futures" = rec { + crateName = "scoped-futures"; + version = "0.1.4"; + edition = "2021"; + sha256 = "14ch6bc4bn56lqkrnsanwz2i37b60h6fzmg9b7rk0rb3s3ial90v"; + libName = "scoped_futures"; + dependencies = [ + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "scopeguard" = rec { + crateName = "scopeguard"; + version = "1.2.0"; + edition = "2015"; + sha256 = "0jcz9sd47zlsgcnm1hdw0664krxwb5gczlif4qngj2aif8vky54l"; + authors = [ + "bluss" + ]; + features = { + "default" = [ "use_std" ]; + }; + }; + "sct" = rec { + crateName = "sct"; + version = "0.7.1"; + edition = "2021"; + sha256 = "056lmi2xkzdg1dbai6ha3n57s18cbip4pnmpdhyljli3m99n216s"; + authors = [ + "Joseph Birr-Pixton " + ]; + dependencies = [ + { + name = "ring"; + packageId = "ring"; + } + { + name = "untrusted"; + packageId = "untrusted"; + } + ]; + + }; + "sealed" = rec { + crateName = "sealed"; + version = "0.6.0"; + edition = "2021"; + sha256 = "01y1mf4f4j6d2x5307gcvagkkz5jwz2w2jdlf3k5bm93xb2niy92"; + procMacro = true; + authors = [ + "José Duarte " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + devDependencies = [ + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" ]; + } + ]; + + }; + "sec1" = rec { + crateName = "sec1"; + version = "0.7.3"; + edition = "2021"; + sha256 = "1p273j8c87pid6a1iyyc7vxbvifrw55wbxgr0dh3l8vnbxb7msfk"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "base16ct"; + packageId = "base16ct"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "der"; + packageId = "der"; + optional = true; + features = [ "oid" ]; + } + { + name = "generic-array"; + packageId = "generic-array"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "pkcs8"; + packageId = "pkcs8"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "subtle"; + packageId = "subtle"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zeroize"; + packageId = "zeroize"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "der?/alloc" "pkcs8?/alloc" "zeroize?/alloc" ]; + "default" = [ "der" "point" ]; + "der" = [ "dep:der" "zeroize" ]; + "pem" = [ "alloc" "der/pem" "pkcs8/pem" ]; + "pkcs8" = [ "dep:pkcs8" ]; + "point" = [ "dep:base16ct" "dep:generic-array" ]; + "serde" = [ "dep:serdect" ]; + "std" = [ "alloc" "der?/std" ]; + "subtle" = [ "dep:subtle" ]; + "zeroize" = [ "dep:zeroize" "der?/zeroize" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "der" "pem" "pkcs8" "point" "std" "subtle" "zeroize" ]; + }; + "secrecy" = rec { + crateName = "secrecy"; + version = "0.10.3"; + edition = "2021"; + sha256 = "0nmfsf9qm8921v2jliz08bj8zrryqar4gj3d6irqfc3kaj2az4g8"; + authors = [ + "Tony Arcieri " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "zeroize"; + packageId = "zeroize"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "serde" ]; + }; + "secretspec 0.3.4" = rec { + crateName = "secretspec"; + version = "0.3.4"; + edition = "2024"; + crateBin = []; + sha256 = "1f5damgg2k693zwy09jsagvh0gzvrbsjs7plyy4jy74rb785sm99"; + dependencies = [ + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "env" ]; + } + { + name = "colored"; + packageId = "colored"; + } + { + name = "directories"; + packageId = "directories"; + } + { + name = "dotenvy"; + packageId = "dotenvy"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "inquire"; + packageId = "inquire"; + } + { + name = "keyring"; + packageId = "keyring"; + optional = true; + features = [ "sync-secret-service" "windows-native" "apple-native" ]; + } + { + name = "linkme"; + packageId = "linkme"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "rpassword"; + packageId = "rpassword"; + } + { + name = "secrecy"; + packageId = "secrecy"; + features = [ "serde" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde-envfile"; + packageId = "serde-envfile"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "toml"; + packageId = "toml 0.8.23"; + } + { + name = "url"; + packageId = "url"; + } + { + name = "whoami"; + packageId = "whoami 1.6.1"; + optional = true; + } + ]; + features = { + "default" = [ "cli" "keyring" ]; + "keyring" = [ "dep:keyring" "dep:whoami" ]; + }; + resolvedDefaultFeatures = [ "cli" "default" "keyring" ]; + }; + "secretspec 0.6.1" = rec { + crateName = "secretspec"; + version = "0.6.1"; + edition = "2024"; + crateBin = []; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/secretspec"; + rev = "23650316932342c62fa6a6ba48ae39e772df784b"; + sha256 = "0mv8igfmb6ks0mxqffgg3qn7ai8rf5n3x6gxj9bnaafvck6b3sc0"; + }; + dependencies = [ + { + name = "clap"; + packageId = "clap"; + features = [ "derive" "env" ]; + } + { + name = "colored"; + packageId = "colored"; + } + { + name = "directories"; + packageId = "directories"; + } + { + name = "dotenvy"; + packageId = "dotenvy"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "inquire"; + packageId = "inquire"; + } + { + name = "keyring"; + packageId = "keyring"; + optional = true; + features = [ "sync-secret-service" "windows-native" "apple-native" ]; + } + { + name = "linkme"; + packageId = "linkme"; + } + { + name = "miette"; + packageId = "miette"; + features = [ "fancy" ]; + } + { + name = "rpassword"; + packageId = "rpassword"; + } + { + name = "secrecy"; + packageId = "secrecy"; + features = [ "serde" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde-envfile"; + packageId = "serde-envfile"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "tempfile"; + packageId = "tempfile"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "toml"; + packageId = "toml 0.8.23"; + } + { + name = "url"; + packageId = "url"; + } + { + name = "whoami"; + packageId = "whoami 1.6.1"; + optional = true; + } + ]; + features = { + "default" = [ "cli" "keyring" ]; + "gcsm" = [ "dep:google-cloud-secretmanager-v1" "dep:tokio" ]; + "keyring" = [ "dep:keyring" "dep:whoami" ]; + }; + resolvedDefaultFeatures = [ "cli" "default" "keyring" ]; + }; + "secretspec-derive" = rec { + crateName = "secretspec-derive"; + version = "0.3.4"; + edition = "2024"; + sha256 = "18j22mjd2aw4i11wss42qf9z4hwdjcnf93qr2l9w0mh8spra3fa9"; + procMacro = true; + libName = "secretspec_derive"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "secretspec"; + packageId = "secretspec 0.3.4"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + { + name = "toml"; + packageId = "toml 0.8.23"; + } + { + name = "url"; + packageId = "url"; + } + ]; + devDependencies = [ + { + name = "secretspec"; + packageId = "secretspec 0.3.4"; + } + ]; + + }; + "security-framework 2.11.1" = rec { + crateName = "security-framework"; + version = "2.11.1"; + edition = "2021"; + sha256 = "00ldclwx78dm61v7wkach9lcx76awlrv0fdgjdwch4dmy12j4yw9"; + libName = "security_framework"; + authors = [ + "Steven Fackler " + "Kornel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "core-foundation"; + packageId = "core-foundation 0.9.4"; + } + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "security-framework-sys"; + packageId = "security-framework-sys"; + usesDefaultFeatures = false; + } + ]; + features = { + "OSX_10_10" = [ "OSX_10_9" "security-framework-sys/OSX_10_10" ]; + "OSX_10_11" = [ "OSX_10_10" "security-framework-sys/OSX_10_11" ]; + "OSX_10_12" = [ "OSX_10_11" "security-framework-sys/OSX_10_12" ]; + "OSX_10_13" = [ "OSX_10_12" "security-framework-sys/OSX_10_13" "alpn" "session-tickets" "serial-number-bigint" ]; + "OSX_10_14" = [ "OSX_10_13" "security-framework-sys/OSX_10_14" ]; + "OSX_10_15" = [ "OSX_10_14" "security-framework-sys/OSX_10_15" ]; + "OSX_10_9" = [ "security-framework-sys/OSX_10_9" ]; + "default" = [ "OSX_10_12" ]; + "log" = [ "dep:log" ]; + "serial-number-bigint" = [ "dep:num-bigint" ]; + }; + resolvedDefaultFeatures = [ "OSX_10_10" "OSX_10_11" "OSX_10_12" "OSX_10_9" "default" ]; + }; + "security-framework 3.5.1" = rec { + crateName = "security-framework"; + version = "3.5.1"; + edition = "2021"; + sha256 = "1vz6pf5qjgx8s0hg805hq6qbcqnll6fs63irvrpgcc7qx91p6adk"; + libName = "security_framework"; + authors = [ + "Steven Fackler " + "Kornel " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "core-foundation"; + packageId = "core-foundation 0.10.1"; + } + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "security-framework-sys"; + packageId = "security-framework-sys"; + usesDefaultFeatures = false; + } + ]; + features = { + "OSX_10_12" = [ "security-framework-sys/OSX_10_12" ]; + "OSX_10_13" = [ "OSX_10_12" "security-framework-sys/OSX_10_13" "alpn" "session-tickets" ]; + "OSX_10_14" = [ "OSX_10_13" "security-framework-sys/OSX_10_14" ]; + "OSX_10_15" = [ "OSX_10_14" "security-framework-sys/OSX_10_15" ]; + "default" = [ "OSX_10_12" ]; + "log" = [ "dep:log" ]; + "sync-keychain" = [ "OSX_10_13" ]; + }; + resolvedDefaultFeatures = [ "OSX_10_12" "default" ]; + }; + "security-framework-sys" = rec { + crateName = "security-framework-sys"; + version = "2.15.0"; + edition = "2021"; + sha256 = "1h6mijxnfrwvl1y4dzwn3m877j6dqp9qn3g37i954j5czazhq7yc"; + libName = "security_framework_sys"; + authors = [ + "Steven Fackler " + "Kornel " + ]; + dependencies = [ + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + } + { + name = "libc"; + packageId = "libc"; + } + ]; + features = { + "OSX_10_10" = [ "OSX_10_9" ]; + "OSX_10_11" = [ "OSX_10_10" ]; + "OSX_10_12" = [ "OSX_10_11" ]; + "OSX_10_13" = [ "OSX_10_12" ]; + "OSX_10_14" = [ "OSX_10_13" ]; + "OSX_10_15" = [ "OSX_10_14" ]; + "default" = [ "OSX_10_12" ]; + }; + resolvedDefaultFeatures = [ "OSX_10_10" "OSX_10_11" "OSX_10_12" "OSX_10_9" "default" ]; + }; + "semver" = rec { + crateName = "semver"; + version = "1.0.27"; + edition = "2018"; + sha256 = "1qmi3akfrnqc2hfkdgcxhld5bv961wbk8my3ascv5068mc5fnryp"; + authors = [ + "David Tolnay " + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "sentry" = rec { + crateName = "sentry"; + version = "0.37.0"; + edition = "2021"; + sha256 = "0da3nix5pnmryyvi72ckirmyvkfl86m8pkp28vcsn8iqwnl18n95"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "httpdate"; + packageId = "httpdate"; + optional = true; + } + { + name = "native-tls"; + packageId = "native-tls"; + optional = true; + } + { + name = "reqwest"; + packageId = "reqwest 0.12.28"; + optional = true; + usesDefaultFeatures = false; + features = [ "blocking" "json" ]; + } + { + name = "sentry-backtrace"; + packageId = "sentry-backtrace"; + optional = true; + } + { + name = "sentry-contexts"; + packageId = "sentry-contexts"; + optional = true; + } + { + name = "sentry-core"; + packageId = "sentry-core"; + features = [ "client" ]; + } + { + name = "sentry-debug-images"; + packageId = "sentry-debug-images"; + optional = true; + } + { + name = "sentry-panic"; + packageId = "sentry-panic"; + optional = true; + } + { + name = "sentry-tracing"; + packageId = "sentry-tracing"; + optional = true; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + features = [ "rt" ]; + } + { + name = "ureq"; + packageId = "ureq"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" ]; + } + ]; + features = { + "anyhow" = [ "sentry-anyhow" ]; + "backtrace" = [ "sentry-backtrace" "sentry-tracing?/backtrace" ]; + "contexts" = [ "sentry-contexts" ]; + "curl" = [ "dep:curl" "httpdate" ]; + "debug-images" = [ "sentry-debug-images" ]; + "debug-logs" = [ "dep:log" "sentry-core/debug-logs" ]; + "default" = [ "backtrace" "contexts" "debug-images" "panic" "transport" "release-health" ]; + "embedded-svc-http" = [ "dep:embedded-svc" "dep:esp-idf-svc" ]; + "http-client" = [ "dep:http-client" ]; + "httpdate" = [ "dep:httpdate" ]; + "isahc" = [ "dep:isahc" ]; + "log" = [ "sentry-log" ]; + "native-tls" = [ "dep:native-tls" "reqwest?/default-tls" "ureq?/native-tls" ]; + "panic" = [ "sentry-panic" ]; + "release-health" = [ "sentry-core/release-health" ]; + "reqwest" = [ "dep:reqwest" "httpdate" "tokio" ]; + "rustls" = [ "dep:rustls" "reqwest?/rustls-tls" "ureq?/tls" "webpki-roots" ]; + "sentry-anyhow" = [ "dep:sentry-anyhow" ]; + "sentry-backtrace" = [ "dep:sentry-backtrace" ]; + "sentry-contexts" = [ "dep:sentry-contexts" ]; + "sentry-debug-images" = [ "dep:sentry-debug-images" ]; + "sentry-log" = [ "dep:sentry-log" ]; + "sentry-panic" = [ "dep:sentry-panic" ]; + "sentry-slog" = [ "dep:sentry-slog" ]; + "sentry-tower" = [ "dep:sentry-tower" ]; + "sentry-tracing" = [ "dep:sentry-tracing" ]; + "serde_json" = [ "dep:serde_json" ]; + "slog" = [ "sentry-slog" ]; + "surf" = [ "surf/curl-client" "http-client" "httpdate" "isahc" "tokio" ]; + "surf-h1" = [ "surf/h1-client" "httpdate" ]; + "test" = [ "sentry-core/test" ]; + "tokio" = [ "dep:tokio" ]; + "tower" = [ "sentry-tower" ]; + "tower-axum-matched-path" = [ "tower-http" "sentry-tower/axum-matched-path" ]; + "tower-http" = [ "tower" "sentry-tower/http" ]; + "tracing" = [ "sentry-tracing" ]; + "transport" = [ "reqwest" "native-tls" ]; + "ureq" = [ "dep:ureq" "httpdate" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "backtrace" "contexts" "debug-images" "default" "httpdate" "native-tls" "panic" "release-health" "reqwest" "sentry-backtrace" "sentry-contexts" "sentry-debug-images" "sentry-panic" "tokio" "transport" ]; + }; + "sentry-backtrace" = rec { + crateName = "sentry-backtrace"; + version = "0.37.0"; + edition = "2021"; + sha256 = "00j3i8cc9nl4zw6054gbx9pp7bwjgs7jasgx4hgrcnd86b9kqa80"; + libName = "sentry_backtrace"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "backtrace"; + packageId = "backtrace"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "regex"; + packageId = "regex"; + usesDefaultFeatures = false; + features = [ "std" "unicode-perl" ]; + } + { + name = "sentry-core"; + packageId = "sentry-core"; + } + ]; + + }; + "sentry-contexts" = rec { + crateName = "sentry-contexts"; + version = "0.37.0"; + edition = "2021"; + sha256 = "1amj7ynhj3ig2k15gyvhmbsxfk310pd0l4yyh727cr57rbwr06cn"; + libName = "sentry_contexts"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "hostname"; + packageId = "hostname"; + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "os_info"; + packageId = "os_info"; + target = { target, features }: (target."windows" or false); + } + { + name = "sentry-core"; + packageId = "sentry-core"; + } + { + name = "uname"; + packageId = "uname"; + target = { target, features }: (!(target."windows" or false)); + } + ]; + buildDependencies = [ + { + name = "rustc_version"; + packageId = "rustc_version"; + } + ]; + + }; + "sentry-core" = rec { + crateName = "sentry-core"; + version = "0.37.0"; + edition = "2021"; + sha256 = "1vrmppgk21f6jw4pnh9f7kgy7r9vssjr00l0bi0q4zbh8pc0jr0s"; + libName = "sentry_core"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + optional = true; + } + { + name = "sentry-types"; + packageId = "sentry-types"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + ]; + features = { + "cadence" = [ "dep:cadence" ]; + "client" = [ "rand" ]; + "crc32fast" = [ "dep:crc32fast" ]; + "debug-logs" = [ "dep:log" ]; + "rand" = [ "dep:rand" ]; + "regex" = [ "dep:regex" ]; + "test" = [ "client" "release-health" ]; + "uuid" = [ "dep:uuid" ]; + }; + resolvedDefaultFeatures = [ "client" "default" "rand" "release-health" ]; + }; + "sentry-debug-images" = rec { + crateName = "sentry-debug-images"; + version = "0.37.0"; + edition = "2021"; + sha256 = "1k75i1c0cwr6sxwnlmm7pp5mmazyj11bmq6zir860ixnygs5vavi"; + libName = "sentry_debug_images"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "findshlibs"; + packageId = "findshlibs"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "sentry-core"; + packageId = "sentry-core"; + } + ]; + + }; + "sentry-panic" = rec { + crateName = "sentry-panic"; + version = "0.37.0"; + edition = "2021"; + sha256 = "1wr36rw8q5vawgxdz10sghrkqhpdz27y1jgfp8bwx5846h91m6v0"; + libName = "sentry_panic"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "sentry-backtrace"; + packageId = "sentry-backtrace"; + } + { + name = "sentry-core"; + packageId = "sentry-core"; + } + ]; + + }; + "sentry-tower" = rec { + crateName = "sentry-tower"; + version = "0.37.0"; + edition = "2021"; + sha256 = "0vdxk8gx41fzzj2xsb9zs1rybf79xdznxlz722yf73p36xah162b"; + libName = "sentry_tower"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "axum"; + packageId = "axum"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http 1.4.0"; + optional = true; + } + { + name = "pin-project"; + packageId = "pin-project"; + optional = true; + } + { + name = "sentry-core"; + packageId = "sentry-core"; + usesDefaultFeatures = false; + features = [ "client" ]; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "url"; + packageId = "url"; + optional = true; + } + ]; + features = { + "axum" = [ "dep:axum" ]; + "axum-matched-path" = [ "http" "axum/matched-path" ]; + "default" = [ "release-health" ]; + "http" = [ "dep:http" "pin-project" "url" ]; + "pin-project" = [ "dep:pin-project" ]; + "release-health" = [ "sentry-core/release-health" ]; + "url" = [ "dep:url" ]; + }; + resolvedDefaultFeatures = [ "axum" "axum-matched-path" "default" "http" "pin-project" "release-health" "url" ]; + }; + "sentry-tracing" = rec { + crateName = "sentry-tracing"; + version = "0.37.0"; + edition = "2021"; + sha256 = "1js48vz5gashimnh4knbbwfj4j70spvd73vxvhwh5ifm09jfix29"; + libName = "sentry_tracing"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "sentry-backtrace"; + packageId = "sentry-backtrace"; + optional = true; + } + { + name = "sentry-core"; + packageId = "sentry-core"; + features = [ "client" ]; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + devDependencies = [ + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + features = [ "fmt" "registry" ]; + } + ]; + features = { + "backtrace" = [ "dep:sentry-backtrace" ]; + "default" = [ "release-health" ]; + "release-health" = [ "sentry-core/release-health" ]; + }; + resolvedDefaultFeatures = [ "backtrace" "default" "release-health" ]; + }; + "sentry-types" = rec { + crateName = "sentry-types"; + version = "0.37.0"; + edition = "2021"; + sha256 = "0c8nb4j47wwsjvl389p76bs217h2xcmdwlh94vlfvnsmhxxi2grx"; + libName = "sentry_types"; + authors = [ + "Sentry " + ]; + dependencies = [ + { + name = "debugid"; + packageId = "debugid"; + features = [ "serde" ]; + } + { + name = "hex"; + packageId = "hex"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "time"; + packageId = "time"; + features = [ "formatting" "parsing" ]; + } + { + name = "url"; + packageId = "url"; + features = [ "serde" ]; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "serde" ]; + } + ]; + features = { + "default" = [ "protocol" ]; + }; + resolvedDefaultFeatures = [ "default" "protocol" ]; + }; + "ser_nix" = rec { + crateName = "ser_nix"; + version = "0.1.2"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/ser_nix"; + rev = "15b61a91d16ba39ceb3b82fb9906d564bb889e47"; + sha256 = "095hs3l95548wm2v8329j999v1l1ziw8cn7cx2ny94a32mzcynqk"; + }; + authors = [ + "James Craven <4jamesccraven@gmail.com>" + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + + }; + "serde" = rec { + crateName = "serde"; + version = "1.0.228"; + edition = "2021"; + sha256 = "17mf4hhjxv5m90g42wmlbc61hdhlm6j9hwfkpcnd72rpgzm993ls"; + authors = [ + "Erick Tryzelaar " + "David Tolnay " + ]; + dependencies = [ + { + name = "serde_core"; + packageId = "serde_core"; + usesDefaultFeatures = false; + features = [ "result" ]; + } + { + name = "serde_derive"; + packageId = "serde_derive"; + optional = true; + } + ]; + features = { + "alloc" = [ "serde_core/alloc" ]; + "default" = [ "std" ]; + "derive" = [ "serde_derive" ]; + "rc" = [ "serde_core/rc" ]; + "serde_derive" = [ "dep:serde_derive" ]; + "std" = [ "serde_core/std" ]; + "unstable" = [ "serde_core/unstable" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "derive" "rc" "serde_derive" "std" ]; + }; + "serde-envfile" = rec { + crateName = "serde-envfile"; + version = "0.3.0"; + edition = "2024"; + sha256 = "0vdxc176hbj91hj518rd3kg7gc01j2npn77606ri2clvhb5345c9"; + libName = "serde_envfile"; + authors = [ + "Luca Goslar " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "dotenvy"; + packageId = "dotenvy"; + } + { + name = "envy"; + packageId = "envy"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + ]; + features = { + "debug" = [ "dep:log" ]; + "preserve_order" = [ "dep:indexmap" ]; + }; + }; + "serde-value" = rec { + crateName = "serde-value"; + version = "0.7.0"; + edition = "2018"; + sha256 = "0b18ngk7n4f9zmwsfdkhgsp31192smzyl5z143qmx1qi28sa78gk"; + libName = "serde_value"; + authors = [ + "arcnmx" + ]; + dependencies = [ + { + name = "ordered-float"; + packageId = "ordered-float"; + } + { + name = "serde"; + packageId = "serde"; + } + ]; + + }; + "serde_core" = rec { + crateName = "serde_core"; + version = "1.0.228"; + edition = "2021"; + sha256 = "1bb7id2xwx8izq50098s5j2sqrrvk31jbbrjqygyan6ask3qbls1"; + authors = [ + "Erick Tryzelaar " + "David Tolnay " + ]; + dependencies = [ + { + name = "serde_derive"; + packageId = "serde_derive"; + target = { target, features }: false; + } + ]; + devDependencies = [ + { + name = "serde_derive"; + packageId = "serde_derive"; + } + ]; + features = { + "default" = [ "std" "result" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "rc" "result" "std" ]; + }; + "serde_derive" = rec { + crateName = "serde_derive"; + version = "1.0.228"; + edition = "2021"; + sha256 = "0y8xm7fvmr2kjcd029g9fijpndh8csv5m20g4bd76w8qschg4h6m"; + procMacro = true; + authors = [ + "Erick Tryzelaar " + "David Tolnay " + ]; + 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.114"; + usesDefaultFeatures = false; + features = [ "clone-impls" "derive" "parsing" "printing" "proc-macro" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "serde_derive_internals" = rec { + crateName = "serde_derive_internals"; + version = "0.29.1"; + edition = "2015"; + sha256 = "04g7macx819vbnxhi52cx0nhxi56xlhrybgwybyy7fb9m4h6mlhq"; + libPath = "lib.rs"; + authors = [ + "Erick Tryzelaar " + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "clone-impls" "derive" "parsing" "printing" ]; + } + ]; + + }; + "serde_json" = rec { + crateName = "serde_json"; + version = "1.0.149"; + edition = "2021"; + sha256 = "11jdx4vilzrjjd1dpgy67x5lgzr0laplz30dhv75lnf5ffa07z43"; + authors = [ + "Erick Tryzelaar " + "David Tolnay " + ]; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + optional = true; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + target = { target, features }: false; + } + { + name = "serde_core"; + packageId = "serde_core"; + usesDefaultFeatures = false; + } + { + name = "zmij"; + packageId = "zmij"; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "serde_core/alloc" ]; + "default" = [ "std" ]; + "indexmap" = [ "dep:indexmap" ]; + "preserve_order" = [ "indexmap" "std" ]; + "std" = [ "memchr/std" "serde_core/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "indexmap" "preserve_order" "raw_value" "std" ]; + }; + "serde_path_to_error" = rec { + crateName = "serde_path_to_error"; + version = "0.1.20"; + edition = "2021"; + sha256 = "0mxls44p2ycmnxh03zpnlxxygq42w61ws7ir7r0ba6rp5s1gza8h"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + target = { target, features }: false; + } + { + name = "serde_core"; + packageId = "serde_core"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + } + ]; + + }; + "serde_plain" = rec { + crateName = "serde_plain"; + version = "1.0.2"; + edition = "2018"; + sha256 = "0l4d4nbw00pz6n43icrc605bhgynfmlyq39sn8i10qasnrnzrqcw"; + authors = [ + "Armin Ronacher " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + } + ]; + + }; + "serde_repr" = rec { + crateName = "serde_repr"; + version = "0.1.20"; + edition = "2021"; + sha256 = "1755gss3f6lwvv23pk7fhnjdkjw7609rcgjlr8vjg6791blf6php"; + procMacro = true; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + + }; + "serde_spanned 0.6.9" = rec { + crateName = "serde_spanned"; + version = "0.6.9"; + edition = "2021"; + sha256 = "18vmxq6qfrm110caszxrzibjhy2s54n1g5w1bshxq9kjmz7y0hdz"; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "serde" ]; + }; + "serde_spanned 1.0.4" = rec { + crateName = "serde_spanned"; + version = "1.0.4"; + edition = "2021"; + sha256 = "0xkp0qdzams5sqwndbw3xrhf4c0bb5r46w2ywkp1aqsdb8ggkfzq"; + dependencies = [ + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" ]; + "default" = [ "std" "serde" ]; + "serde" = [ "dep:serde_core" ]; + "std" = [ "alloc" "serde_core?/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "serde" "std" ]; + }; + "serde_urlencoded" = rec { + crateName = "serde_urlencoded"; + version = "0.7.1"; + edition = "2018"; + sha256 = "1zgklbdaysj3230xivihs30qi5vkhigg323a9m62k8jwf4a1qjfk"; + authors = [ + "Anthony Ramine " + ]; + dependencies = [ + { + name = "form_urlencoded"; + packageId = "form_urlencoded"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "ryu"; + packageId = "ryu"; + } + { + name = "serde"; + packageId = "serde"; + } + ]; + + }; + "serde_with" = rec { + crateName = "serde_with"; + version = "3.16.1"; + edition = "2021"; + sha256 = "1rz2824yhfn5n5vxmnnk01x7d3xrf2122jinw0wd4h3lh3r3g8jg"; + authors = [ + "Jonas Bushart" + "Marcin Kaźmierczak" + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "chrono"; + packageId = "chrono"; + rename = "chrono_0_4"; + optional = true; + usesDefaultFeatures = false; + features = [ "serde" ]; + } + { + name = "hex"; + packageId = "hex"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "indexmap"; + packageId = "indexmap 1.9.3"; + rename = "indexmap_1"; + optional = true; + usesDefaultFeatures = false; + features = [ "serde-1" ]; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + rename = "indexmap_2"; + optional = true; + usesDefaultFeatures = false; + features = [ "serde" ]; + } + { + name = "schemars"; + packageId = "schemars 0.9.0"; + rename = "schemars_0_9"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "schemars"; + packageId = "schemars 1.2.0"; + rename = "schemars_1"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde_core"; + packageId = "serde_core"; + usesDefaultFeatures = false; + features = [ "result" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde_with_macros"; + packageId = "serde_with_macros"; + optional = true; + } + { + name = "time"; + packageId = "time"; + rename = "time_0_3"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "schemars"; + packageId = "schemars 0.9.0"; + rename = "schemars_0_9"; + } + { + name = "schemars"; + packageId = "schemars 1.2.0"; + rename = "schemars_1"; + } + { + name = "serde_json"; + packageId = "serde_json"; + features = [ "preserve_order" ]; + } + ]; + features = { + "alloc" = [ "serde_core/alloc" "base64?/alloc" "chrono_0_4?/alloc" "hex?/alloc" "serde_json?/alloc" "time_0_3?/alloc" ]; + "base64" = [ "dep:base64" "alloc" ]; + "chrono" = [ "chrono_0_4" ]; + "chrono_0_4" = [ "dep:chrono_0_4" ]; + "default" = [ "std" "macros" ]; + "guide" = [ "dep:document-features" "macros" "std" ]; + "hashbrown_0_14" = [ "dep:hashbrown_0_14" "alloc" ]; + "hashbrown_0_15" = [ "dep:hashbrown_0_15" "alloc" ]; + "hashbrown_0_16" = [ "dep:hashbrown_0_16" "alloc" ]; + "hex" = [ "dep:hex" "alloc" ]; + "indexmap" = [ "indexmap_1" ]; + "indexmap_1" = [ "dep:indexmap_1" "alloc" ]; + "indexmap_2" = [ "dep:indexmap_2" "alloc" ]; + "json" = [ "dep:serde_json" "alloc" ]; + "macros" = [ "dep:serde_with_macros" ]; + "schemars_0_8" = [ "dep:schemars_0_8" "std" "serde_with_macros?/schemars_0_8" ]; + "schemars_0_9" = [ "dep:schemars_0_9" "alloc" "serde_with_macros?/schemars_0_9" "dep:serde_json" ]; + "schemars_1" = [ "dep:schemars_1" "alloc" "serde_with_macros?/schemars_1" "dep:serde_json" ]; + "smallvec_1" = [ "dep:smallvec_1" ]; + "std" = [ "alloc" "serde_core/std" "chrono_0_4?/clock" "chrono_0_4?/std" "indexmap_1?/std" "indexmap_2?/std" "time_0_3?/serde-well-known" "time_0_3?/std" "schemars_0_9?/std" "schemars_1?/std" ]; + "time_0_3" = [ "dep:time_0_3" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "macros" "std" ]; + }; + "serde_with_macros" = rec { + crateName = "serde_with_macros"; + version = "3.16.1"; + edition = "2021"; + sha256 = "0v3hfn474ny4as1gwvqgrhjzk9p5959gjl5bf0gi4ad61k5f7a2j"; + procMacro = true; + authors = [ + "Jonas Bushart" + ]; + dependencies = [ + { + name = "darling"; + packageId = "darling 0.21.3"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" "full" "parsing" ]; + } + ]; + features = { + }; + }; + "serde_yaml" = rec { + crateName = "serde_yaml"; + version = "0.9.34+deprecated"; + edition = "2021"; + sha256 = "0isba1fjyg3l6rxk156k600ilzr8fp7crv82rhal0rxz5qd1m2va"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "ryu"; + packageId = "ryu"; + } + { + name = "serde"; + packageId = "serde"; + } + { + name = "unsafe-libyaml"; + packageId = "unsafe-libyaml"; + } + ]; + + }; + "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 = [ "compress" "default" "std" ]; + }; + "sha1-checked" = rec { + crateName = "sha1-checked"; + version = "0.10.0"; + edition = "2021"; + sha256 = "08s4h1drgwxzfn1mk11rn0r9i0rbjra1m0l2c0fbngij1jn9kxc9"; + libName = "sha1_checked"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "digest"; + packageId = "digest"; + } + { + name = "sha1"; + packageId = "sha1"; + usesDefaultFeatures = false; + features = [ "compress" ]; + } + ]; + devDependencies = [ + { + name = "digest"; + packageId = "digest"; + features = [ "dev" ]; + } + ]; + features = { + "default" = [ "oid" "std" ]; + "oid" = [ "digest/oid" "sha1/oid" ]; + "std" = [ "digest/std" "sha1/std" ]; + "zeroize" = [ "dep:zeroize" ]; + }; + }; + "sha2" = rec { + crateName = "sha2"; + version = "0.10.9"; + edition = "2018"; + sha256 = "10xjj843v31ghsksd9sl9y12qfc48157j1xpb8v1ml39jy0psl57"; + 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" "oid" "std" ]; + }; + "sharded-slab" = rec { + crateName = "sharded-slab"; + version = "0.1.7"; + edition = "2018"; + sha256 = "1xipjr4nqsgw34k7a2cgj9zaasl2ds6jwn89886kww93d32a637l"; + libName = "sharded_slab"; + authors = [ + "Eliza Weisman " + ]; + dependencies = [ + { + name = "lazy_static"; + packageId = "lazy_static"; + } + ]; + features = { + "loom" = [ "dep:loom" ]; + }; + }; + "shell-escape" = rec { + crateName = "shell-escape"; + version = "0.1.5"; + edition = "2015"; + sha256 = "0kqq83dk0r1fqj4cfzddpxrni2hpz5i1y607g366c4m9iyhngfs5"; + libName = "shell_escape"; + authors = [ + "Steven Fackler " + ]; + + }; + "shell-words" = rec { + crateName = "shell-words"; + version = "1.1.1"; + edition = "2015"; + sha256 = "0xzd5p53xl0ndnk63r0by52rhdrh6pd37szfxszkg73zb6ffcvyw"; + libName = "shell_words"; + authors = [ + "Tomasz Miąsko " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "shlex" = rec { + crateName = "shlex"; + version = "1.3.0"; + edition = "2015"; + sha256 = "0r1y6bv26c1scpxvhg2cabimrmwgbp4p3wy6syj9n0c4s3q2znhg"; + authors = [ + "comex " + "Fenhl " + "Adrian Taylor " + "Alex Touchet " + "Daniel Parks " + "Garrett Berg " + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "signal-hook" = rec { + crateName = "signal-hook"; + version = "0.3.18"; + edition = "2018"; + sha256 = "1qnnbq4g2vixfmlv28i1whkr0hikrf1bsc4xjy2aasj2yina30fq"; + libName = "signal_hook"; + authors = [ + "Michal 'vorner' Vaner " + "Thomas Himmelstoss " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + { + name = "signal-hook-registry"; + packageId = "signal-hook-registry"; + } + ]; + features = { + "cc" = [ "dep:cc" ]; + "default" = [ "channel" "iterator" ]; + "extended-siginfo" = [ "channel" "iterator" "extended-siginfo-raw" ]; + "extended-siginfo-raw" = [ "cc" ]; + "iterator" = [ "channel" ]; + }; + resolvedDefaultFeatures = [ "channel" "default" "iterator" ]; + }; + "signal-hook-mio" = rec { + crateName = "signal-hook-mio"; + version = "0.2.5"; + edition = "2018"; + sha256 = "1k20rr76ngvmzr6kskkl7dv8iyb84cbydpjbjk3mpcj0lykijnmp"; + libName = "signal_hook_mio"; + authors = [ + "Michal 'vorner' Vaner " + "Thomas Himmelstoss " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + { + name = "mio"; + packageId = "mio 0.8.11"; + rename = "mio-0_8"; + optional = true; + features = [ "net" "os-ext" ]; + } + { + name = "mio"; + packageId = "mio 1.1.1"; + rename = "mio-1_0"; + optional = true; + features = [ "net" "os-ext" ]; + } + { + name = "signal-hook"; + packageId = "signal-hook"; + } + ]; + features = { + "mio-0_6" = [ "dep:mio-0_6" ]; + "mio-0_7" = [ "dep:mio-0_7" ]; + "mio-0_8" = [ "dep:mio-0_8" ]; + "mio-1_0" = [ "dep:mio-1_0" ]; + "mio-uds" = [ "dep:mio-uds" ]; + "support-v0_6" = [ "mio-0_6" "mio-uds" ]; + "support-v0_7" = [ "mio-0_7" ]; + "support-v0_8" = [ "mio-0_8" ]; + "support-v1_0" = [ "mio-1_0" ]; + }; + resolvedDefaultFeatures = [ "mio-0_8" "mio-1_0" "support-v0_8" "support-v1_0" ]; + }; + "signal-hook-registry" = rec { + crateName = "signal-hook-registry"; + version = "1.4.8"; + edition = "2015"; + sha256 = "06vc7pmnki6lmxar3z31gkyg9cw7py5x9g7px70gy2hil75nkny4"; + libName = "signal_hook_registry"; + authors = [ + "Michal 'vorner' Vaner " + "Masaki Hara " + ]; + dependencies = [ + { + name = "errno"; + packageId = "errno"; + } + { + name = "libc"; + packageId = "libc"; + } + ]; + + }; + "signature" = rec { + crateName = "signature"; + version = "2.2.0"; + edition = "2021"; + sha256 = "1pi9hd5vqfr3q3k49k37z06p7gs5si0in32qia4mmr1dancr6m3p"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "digest"; + packageId = "digest"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "rand_core"; + packageId = "rand_core 0.6.4"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "derive" = [ "dep:derive" ]; + "digest" = [ "dep:digest" ]; + "rand_core" = [ "dep:rand_core" ]; + "std" = [ "alloc" "rand_core?/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "digest" "rand_core" "std" ]; + }; + "simd-adler32" = rec { + crateName = "simd-adler32"; + version = "0.3.8"; + edition = "2018"; + sha256 = "18lx2gdgislabbvlgw5q3j5ssrr77v8kmkrxaanp3liimp2sc873"; + libName = "simd_adler32"; + authors = [ + "Marvin Countryman " + ]; + features = { + "default" = [ "std" "const-generics" ]; + }; + }; + "similar" = rec { + crateName = "similar"; + version = "2.7.0"; + edition = "2018"; + sha256 = "1aidids7ymfr96s70232s6962v5g9l4zwhkvcjp4c5hlb6b5vfxv"; + authors = [ + "Armin Ronacher " + "Pierre-Étienne Meunier " + "Brandon Williams " + ]; + features = { + "bstr" = [ "dep:bstr" ]; + "bytes" = [ "bstr" "text" ]; + "default" = [ "text" ]; + "inline" = [ "text" ]; + "serde" = [ "dep:serde" ]; + "unicode" = [ "text" "unicode-segmentation" "bstr?/unicode" "bstr?/std" ]; + "unicode-segmentation" = [ "dep:unicode-segmentation" ]; + "wasm32_web_time" = [ "web-time" ]; + "web-time" = [ "dep:web-time" ]; + }; + resolvedDefaultFeatures = [ "default" "text" ]; + }; + "simple_asn1" = rec { + crateName = "simple_asn1"; + version = "0.6.3"; + edition = "2018"; + sha256 = "1fz8842yya5qrbdsgcij1ysw0zlrcdwqcrs6p2cqr73ja0gn6zr9"; + authors = [ + "Adam Wick " + ]; + dependencies = [ + { + name = "num-bigint"; + packageId = "num-bigint"; + usesDefaultFeatures = false; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + usesDefaultFeatures = false; + } + { + name = "time"; + packageId = "time"; + usesDefaultFeatures = false; + features = [ "formatting" "macros" "parsing" ]; + } + ]; + devDependencies = [ + { + name = "time"; + packageId = "time"; + usesDefaultFeatures = false; + features = [ "formatting" "macros" "parsing" "quickcheck" ]; + } + ]; + + }; + "siphasher" = rec { + crateName = "siphasher"; + version = "1.0.1"; + edition = "2018"; + sha256 = "17f35782ma3fn6sh21c027kjmd227xyrx06ffi8gw4xzv9yry6an"; + authors = [ + "Frank Denis " + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "serde_json" = [ "dep:serde_json" ]; + "serde_no_std" = [ "serde/alloc" ]; + "serde_std" = [ "std" "serde/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "sketches-ddsketch" = rec { + crateName = "sketches-ddsketch"; + version = "0.3.0"; + edition = "2018"; + sha256 = "02j17srcrssfmlaly61s95bzkg76c9ax49dvajn450f2lrsagsf1"; + libName = "sketches_ddsketch"; + authors = [ + "Mike Heffner " + ]; + features = { + "serde" = [ "dep:serde" ]; + "use_serde" = [ "serde" "serde/derive" ]; + }; + }; + "slab" = rec { + crateName = "slab"; + version = "0.4.11"; + edition = "2018"; + sha256 = "12bm4s88rblq02jjbi1dw31984w61y2ldn13ifk5gsqgy97f8aks"; + authors = [ + "Carl Lerche " + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "slatedb" = rec { + crateName = "slatedb"; + version = "0.10.1"; + edition = "2021"; + sha256 = "1pdk6dl76lz8kdrn49n7d4dx3s46ci2y8m2yl02n4s8r43irm3jq"; + dependencies = [ + { + name = "anyhow"; + packageId = "anyhow"; + optional = true; + } + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "atomic"; + packageId = "atomic"; + } + { + name = "backon"; + packageId = "backon"; + } + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "bytemuck"; + packageId = "bytemuck"; + } + { + name = "bytes"; + packageId = "bytes"; + features = [ "serde" ]; + } + { + name = "chrono"; + packageId = "chrono"; + features = [ "serde" ]; + } + { + name = "crc32fast"; + packageId = "crc32fast"; + } + { + name = "crossbeam-skiplist"; + packageId = "crossbeam-skiplist"; + } + { + name = "dotenvy"; + packageId = "dotenvy"; + } + { + name = "duration-str"; + packageId = "duration-str"; + usesDefaultFeatures = false; + features = [ "serde" "time" ]; + } + { + name = "fail-parallel"; + packageId = "fail-parallel"; + } + { + name = "figment"; + packageId = "figment"; + features = [ "env" "json" "toml" "yaml" ]; + } + { + name = "flatbuffers"; + packageId = "flatbuffers"; + } + { + name = "foyer"; + packageId = "foyer"; + optional = true; + features = [ "serde" ]; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "object_store"; + packageId = "object_store"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "ouroboros"; + packageId = "ouroboros"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "rand_xoshiro"; + packageId = "rand_xoshiro 0.7.0"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "siphasher"; + packageId = "siphasher"; + } + { + name = "sysinfo"; + packageId = "sysinfo 0.35.2"; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "thread_local"; + packageId = "thread_local"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "fs" "macros" "sync" "rt" "rt-multi-thread" "signal" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + usesDefaultFeatures = false; + features = [ "rt" "join-map" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "log" ]; + } + { + name = "ulid"; + packageId = "ulid"; + features = [ "serde" ]; + } + { + name = "url"; + packageId = "url"; + } + { + name = "uuid"; + packageId = "uuid"; + features = [ "v4" "serde" ]; + } + { + name = "walkdir"; + packageId = "walkdir"; + } + ]; + devDependencies = [ + { + name = "fail-parallel"; + packageId = "fail-parallel"; + features = [ "failpoints" ]; + } + { + name = "figment"; + packageId = "figment"; + features = [ "test" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" ]; + } + ]; + features = { + "aws" = [ "object_store/aws" ]; + "azure" = [ "object_store/azure" ]; + "bencher" = [ "aws" "azure" "wal_disable" "foyer" ]; + "compression" = [ "snappy" ]; + "default" = [ "aws" "foyer" ]; + "foyer" = [ "dep:foyer" "dep:anyhow" ]; + "lz4" = [ "dep:lz4_flex" ]; + "moka" = [ "dep:moka" ]; + "opendal" = [ "dep:opendal" "dep:object_store_opendal" ]; + "snappy" = [ "dep:snap" ]; + "test-util" = [ "tokio/test-util" ]; + "zlib" = [ "dep:flate2" ]; + "zstd" = [ "dep:zstd" ]; + }; + resolvedDefaultFeatures = [ "aws" "default" "foyer" ]; + }; + "slotmap" = rec { + crateName = "slotmap"; + version = "1.1.1"; + edition = "2018"; + sha256 = "0f20xf53zaysx9ydzkwwqm6hsjyb8lj2j6amhg57iln3jcy8rmdx"; + authors = [ + "Orson Peters " + ]; + buildDependencies = [ + { + name = "version_check"; + packageId = "version_check"; + } + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "smallvec" = rec { + crateName = "smallvec"; + version = "1.15.1"; + edition = "2018"; + sha256 = "00xxdxxpgyq5vjnpljvkmy99xij5rxgh913ii1v16kzynnivgcb7"; + authors = [ + "The Servo Project Developers" + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "bincode" = [ "dep:bincode" ]; + "const_new" = [ "const_generics" ]; + "drain_keep_rest" = [ "drain_filter" ]; + "impl_bincode" = [ "bincode" "unty" ]; + "malloc_size_of" = [ "dep:malloc_size_of" ]; + "serde" = [ "dep:serde" ]; + "unty" = [ "dep:unty" ]; + }; + resolvedDefaultFeatures = [ "const_generics" "const_new" "serde" "write" ]; + }; + "snafu" = rec { + crateName = "snafu"; + version = "0.8.9"; + edition = "2018"; + sha256 = "18p1y5qxwjn5j902wqsdr75n17b29lxpdipa0p7a3wybxbsb713f"; + authors = [ + "Jake Goulding " + ]; + dependencies = [ + { + name = "snafu-derive"; + packageId = "snafu-derive"; + } + ]; + features = { + "backtrace" = [ "dep:backtrace" ]; + "backtraces-impl-backtrace-crate" = [ "backtrace" ]; + "default" = [ "std" "rust_1_65" ]; + "futures" = [ "futures-core-crate" "pin-project" ]; + "futures-core-crate" = [ "dep:futures-core-crate" ]; + "futures-crate" = [ "dep:futures-crate" ]; + "internal-dev-dependencies" = [ "futures-crate" ]; + "pin-project" = [ "dep:pin-project" ]; + "rust_1_61" = [ "snafu-derive/rust_1_61" ]; + "rust_1_65" = [ "rust_1_61" ]; + "rust_1_81" = [ "rust_1_65" ]; + "std" = [ "alloc" ]; + "unstable-provider-api" = [ "snafu-derive/unstable-provider-api" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "rust_1_61" "rust_1_65" "std" ]; + }; + "snafu-derive" = rec { + crateName = "snafu-derive"; + version = "0.8.9"; + edition = "2018"; + sha256 = "0lg4s58jzx6w48ig4qp8jasrrs886pifqqd58k5b2jzlvd3pgjf1"; + procMacro = true; + libName = "snafu_derive"; + authors = [ + "Jake Goulding " + ]; + dependencies = [ + { + name = "heck"; + packageId = "heck 0.4.1"; + usesDefaultFeatures = false; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "rust_1_61" ]; + }; + "socket2 0.5.10" = rec { + crateName = "socket2"; + version = "0.5.10"; + edition = "2021"; + sha256 = "0y067ki5q946w91xlz2sb175pnfazizva6fi3kfp639mxnmpc8z2"; + authors = [ + "Alex Crichton " + "Thomas de Zeeuw " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.52.0"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_System_IO" "Win32_System_Threading" "Win32_System_WindowsProgramming" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "all" ]; + }; + "socket2 0.6.1" = rec { + crateName = "socket2"; + version = "0.6.1"; + edition = "2021"; + sha256 = "109qn0kjhqi5zds84qyqi5wn72g8azjhmf4b04fkgkrkd48rw4hp"; + authors = [ + "Alex Crichton " + "Thomas de Zeeuw " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.60.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_System_IO" "Win32_System_Threading" "Win32_System_WindowsProgramming" ]; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "all" ]; + }; + "spin" = rec { + crateName = "spin"; + version = "0.9.8"; + edition = "2015"; + sha256 = "0rvam5r0p3a6qhc18scqpvpgb3ckzyqxpgdfyjnghh8ja7byi039"; + authors = [ + "Mathijs van de Nes " + "John Ericson " + "Joshua Barretto " + ]; + dependencies = [ + { + name = "lock_api"; + packageId = "lock_api"; + rename = "lock_api_crate"; + optional = true; + } + ]; + features = { + "barrier" = [ "mutex" ]; + "default" = [ "lock_api" "mutex" "spin_mutex" "rwlock" "once" "lazy" "barrier" ]; + "fair_mutex" = [ "mutex" ]; + "lazy" = [ "once" ]; + "lock_api" = [ "lock_api_crate" ]; + "lock_api_crate" = [ "dep:lock_api_crate" ]; + "portable-atomic" = [ "dep:portable-atomic" ]; + "portable_atomic" = [ "portable-atomic" ]; + "spin_mutex" = [ "mutex" ]; + "ticket_mutex" = [ "mutex" ]; + "use_ticket_mutex" = [ "mutex" "ticket_mutex" ]; + }; + resolvedDefaultFeatures = [ "barrier" "default" "lazy" "lock_api" "lock_api_crate" "mutex" "once" "rwlock" "spin_mutex" ]; + }; + "spki" = rec { + crateName = "spki"; + version = "0.7.3"; + edition = "2021"; + sha256 = "17fj8k5fmx4w9mp27l970clrh5qa7r5sjdvbsln987xhb34dc7nr"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "base64ct"; + packageId = "base64ct"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "der"; + packageId = "der"; + features = [ "oid" ]; + } + ]; + features = { + "alloc" = [ "base64ct?/alloc" "der/alloc" ]; + "arbitrary" = [ "std" "dep:arbitrary" "der/arbitrary" ]; + "base64" = [ "dep:base64ct" ]; + "fingerprint" = [ "sha2" ]; + "pem" = [ "alloc" "der/pem" ]; + "sha2" = [ "dep:sha2" ]; + "std" = [ "der/std" "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "pem" "std" ]; + }; + "sqlx" = rec { + crateName = "sqlx"; + version = "0.8.6"; + edition = "2021"; + sha256 = "1p4pgppy10ch4vj0fyay9q3g8y5xhzsayyfrrnfncacli69vivqz"; + authors = [ + "Ryan Leckey " + "Austin Bonander " + "Chloe Ross " + "Daniel Akhterov " + ]; + dependencies = [ + { + name = "sqlx-core"; + packageId = "sqlx-core"; + features = [ "offline" "migrate" ]; + } + { + name = "sqlx-macros"; + packageId = "sqlx-macros"; + optional = true; + } + { + name = "sqlx-mysql"; + packageId = "sqlx-mysql"; + optional = true; + } + { + name = "sqlx-postgres"; + packageId = "sqlx-postgres"; + optional = true; + } + { + name = "sqlx-sqlite"; + packageId = "sqlx-sqlite"; + optional = true; + } + ]; + features = { + "_unstable-all-types" = [ "bigdecimal" "rust_decimal" "json" "time" "chrono" "ipnet" "ipnetwork" "mac_address" "uuid" "bit-vec" "bstr" ]; + "all-databases" = [ "mysql" "sqlite" "postgres" "any" ]; + "any" = [ "sqlx-core/any" "sqlx-mysql?/any" "sqlx-postgres?/any" "sqlx-sqlite?/any" ]; + "bigdecimal" = [ "sqlx-core/bigdecimal" "sqlx-macros?/bigdecimal" "sqlx-mysql?/bigdecimal" "sqlx-postgres?/bigdecimal" ]; + "bit-vec" = [ "sqlx-core/bit-vec" "sqlx-macros?/bit-vec" "sqlx-postgres?/bit-vec" ]; + "bstr" = [ "sqlx-core/bstr" ]; + "chrono" = [ "sqlx-core/chrono" "sqlx-macros?/chrono" "sqlx-mysql?/chrono" "sqlx-postgres?/chrono" "sqlx-sqlite?/chrono" ]; + "default" = [ "any" "macros" "migrate" "json" ]; + "derive" = [ "sqlx-macros/derive" ]; + "ipnet" = [ "sqlx-core/ipnet" "sqlx-macros?/ipnet" "sqlx-postgres?/ipnet" ]; + "ipnetwork" = [ "sqlx-core/ipnetwork" "sqlx-macros?/ipnetwork" "sqlx-postgres?/ipnetwork" ]; + "json" = [ "sqlx-core/json" "sqlx-macros?/json" "sqlx-mysql?/json" "sqlx-postgres?/json" "sqlx-sqlite?/json" ]; + "mac_address" = [ "sqlx-core/mac_address" "sqlx-macros?/mac_address" "sqlx-postgres?/mac_address" ]; + "macros" = [ "derive" "sqlx-macros/macros" ]; + "migrate" = [ "sqlx-core/migrate" "sqlx-macros?/migrate" "sqlx-mysql?/migrate" "sqlx-postgres?/migrate" "sqlx-sqlite?/migrate" ]; + "mysql" = [ "sqlx-mysql" "sqlx-macros?/mysql" ]; + "postgres" = [ "sqlx-postgres" "sqlx-macros?/postgres" ]; + "regexp" = [ "sqlx-sqlite?/regexp" ]; + "runtime-async-std" = [ "_rt-async-std" "sqlx-core/_rt-async-std" "sqlx-macros?/_rt-async-std" ]; + "runtime-async-std-native-tls" = [ "runtime-async-std" "tls-native-tls" ]; + "runtime-async-std-rustls" = [ "runtime-async-std" "tls-rustls-ring" ]; + "runtime-tokio" = [ "_rt-tokio" "sqlx-core/_rt-tokio" "sqlx-macros?/_rt-tokio" ]; + "runtime-tokio-native-tls" = [ "runtime-tokio" "tls-native-tls" ]; + "runtime-tokio-rustls" = [ "runtime-tokio" "tls-rustls-ring" ]; + "rust_decimal" = [ "sqlx-core/rust_decimal" "sqlx-macros?/rust_decimal" "sqlx-mysql?/rust_decimal" "sqlx-postgres?/rust_decimal" ]; + "sqlite" = [ "_sqlite" "sqlx-sqlite/bundled" "sqlx-macros?/sqlite" ]; + "sqlite-preupdate-hook" = [ "sqlx-sqlite/preupdate-hook" ]; + "sqlite-unbundled" = [ "_sqlite" "sqlx-sqlite/unbundled" "sqlx-macros?/sqlite-unbundled" ]; + "sqlx-macros" = [ "dep:sqlx-macros" ]; + "sqlx-mysql" = [ "dep:sqlx-mysql" ]; + "sqlx-postgres" = [ "dep:sqlx-postgres" ]; + "sqlx-sqlite" = [ "dep:sqlx-sqlite" ]; + "time" = [ "sqlx-core/time" "sqlx-macros?/time" "sqlx-mysql?/time" "sqlx-postgres?/time" "sqlx-sqlite?/time" ]; + "tls-native-tls" = [ "sqlx-core/_tls-native-tls" "sqlx-macros?/_tls-native-tls" ]; + "tls-rustls" = [ "tls-rustls-ring" ]; + "tls-rustls-aws-lc-rs" = [ "sqlx-core/_tls-rustls-aws-lc-rs" "sqlx-macros?/_tls-rustls-aws-lc-rs" ]; + "tls-rustls-ring" = [ "tls-rustls-ring-webpki" ]; + "tls-rustls-ring-native-roots" = [ "sqlx-core/_tls-rustls-ring-native-roots" "sqlx-macros?/_tls-rustls-ring-native-roots" ]; + "tls-rustls-ring-webpki" = [ "sqlx-core/_tls-rustls-ring-webpki" "sqlx-macros?/_tls-rustls-ring-webpki" ]; + "uuid" = [ "sqlx-core/uuid" "sqlx-macros?/uuid" "sqlx-mysql?/uuid" "sqlx-postgres?/uuid" "sqlx-sqlite?/uuid" ]; + }; + resolvedDefaultFeatures = [ "_rt-tokio" "_sqlite" "any" "default" "derive" "json" "macros" "migrate" "runtime-tokio" "sqlite" "sqlx-macros" "sqlx-sqlite" "time" "tls-rustls" "tls-rustls-ring" "tls-rustls-ring-webpki" ]; + }; + "sqlx-core" = rec { + crateName = "sqlx-core"; + version = "0.8.6"; + edition = "2021"; + sha256 = "1ildwsjy7lwfxsvfh174jwhk0rjqvyw37h87q1lhyslbhfqrhrzf"; + libName = "sqlx_core"; + authors = [ + "Ryan Leckey " + "Austin Bonander " + "Chloe Ross " + "Daniel Akhterov " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "crc"; + packageId = "crc"; + optional = true; + } + { + name = "crossbeam-queue"; + packageId = "crossbeam-queue"; + } + { + name = "either"; + packageId = "either"; + } + { + name = "event-listener"; + packageId = "event-listener"; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-intrusive"; + packageId = "futures-intrusive"; + } + { + name = "futures-io"; + packageId = "futures-io"; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" "sink" "io" ]; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + } + { + name = "hashlink"; + packageId = "hashlink"; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + } + { + name = "log"; + packageId = "log"; + usesDefaultFeatures = false; + } + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "rustls"; + packageId = "rustls 0.23.36"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" "tls12" ]; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + features = [ "derive" "rc" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + features = [ "raw_value" ]; + } + { + name = "sha2"; + packageId = "sha2"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "time"; + packageId = "time"; + optional = true; + features = [ "formatting" "parsing" "macros" ]; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + usesDefaultFeatures = false; + features = [ "time" "net" "sync" "fs" "io-util" "rt" ]; + } + { + name = "tokio-stream"; + packageId = "tokio-stream"; + optional = true; + features = [ "fs" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "log" ]; + } + { + name = "url"; + packageId = "url"; + } + { + name = "webpki-roots"; + packageId = "webpki-roots 0.26.11"; + optional = true; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt" ]; + } + ]; + features = { + "_rt-async-std" = [ "async-std" "async-io" ]; + "_rt-tokio" = [ "tokio" "tokio-stream" ]; + "_tls-native-tls" = [ "native-tls" ]; + "_tls-rustls" = [ "rustls" ]; + "_tls-rustls-aws-lc-rs" = [ "_tls-rustls" "rustls/aws-lc-rs" "webpki-roots" ]; + "_tls-rustls-ring-native-roots" = [ "_tls-rustls" "rustls/ring" "rustls-native-certs" ]; + "_tls-rustls-ring-webpki" = [ "_tls-rustls" "rustls/ring" "webpki-roots" ]; + "async-io" = [ "dep:async-io" ]; + "async-std" = [ "dep:async-std" ]; + "bigdecimal" = [ "dep:bigdecimal" ]; + "bit-vec" = [ "dep:bit-vec" ]; + "bstr" = [ "dep:bstr" ]; + "chrono" = [ "dep:chrono" ]; + "crc" = [ "dep:crc" ]; + "ipnet" = [ "dep:ipnet" ]; + "ipnetwork" = [ "dep:ipnetwork" ]; + "json" = [ "serde" "serde_json" ]; + "mac_address" = [ "dep:mac_address" ]; + "migrate" = [ "sha2" "crc" ]; + "native-tls" = [ "dep:native-tls" ]; + "offline" = [ "serde" "either/serde" ]; + "regex" = [ "dep:regex" ]; + "rust_decimal" = [ "dep:rust_decimal" ]; + "rustls" = [ "dep:rustls" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "serde" = [ "dep:serde" ]; + "serde_json" = [ "dep:serde_json" ]; + "sha2" = [ "dep:sha2" ]; + "time" = [ "dep:time" ]; + "tokio" = [ "dep:tokio" ]; + "tokio-stream" = [ "dep:tokio-stream" ]; + "uuid" = [ "dep:uuid" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "_rt-tokio" "_tls-rustls" "_tls-rustls-ring-webpki" "any" "crc" "default" "json" "migrate" "offline" "rustls" "serde" "serde_json" "sha2" "time" "tokio" "tokio-stream" "webpki-roots" ]; + }; + "sqlx-macros" = rec { + crateName = "sqlx-macros"; + version = "0.8.6"; + edition = "2021"; + sha256 = "0pbiwsv5ysv3qcx1g4p1pvsqlz0xp67k9g5xw3szpb6aijc55m52"; + procMacro = true; + libName = "sqlx_macros"; + authors = [ + "Ryan Leckey " + "Austin Bonander " + "Chloe Ross " + "Daniel Akhterov " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "sqlx-core"; + packageId = "sqlx-core"; + features = [ "any" ]; + } + { + name = "sqlx-macros-core"; + packageId = "sqlx-macros-core"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" ]; + } + ]; + features = { + "_rt-async-std" = [ "sqlx-macros-core/_rt-async-std" ]; + "_rt-tokio" = [ "sqlx-macros-core/_rt-tokio" ]; + "_tls-native-tls" = [ "sqlx-macros-core/_tls-native-tls" ]; + "_tls-rustls-aws-lc-rs" = [ "sqlx-macros-core/_tls-rustls-aws-lc-rs" ]; + "_tls-rustls-ring-native-roots" = [ "sqlx-macros-core/_tls-rustls-ring-native-roots" ]; + "_tls-rustls-ring-webpki" = [ "sqlx-macros-core/_tls-rustls-ring-webpki" ]; + "bigdecimal" = [ "sqlx-macros-core/bigdecimal" ]; + "bit-vec" = [ "sqlx-macros-core/bit-vec" ]; + "chrono" = [ "sqlx-macros-core/chrono" ]; + "derive" = [ "sqlx-macros-core/derive" ]; + "ipnet" = [ "sqlx-macros-core/ipnet" ]; + "ipnetwork" = [ "sqlx-macros-core/ipnetwork" ]; + "json" = [ "sqlx-macros-core/json" ]; + "mac_address" = [ "sqlx-macros-core/mac_address" ]; + "macros" = [ "sqlx-macros-core/macros" ]; + "migrate" = [ "sqlx-macros-core/migrate" ]; + "mysql" = [ "sqlx-macros-core/mysql" ]; + "postgres" = [ "sqlx-macros-core/postgres" ]; + "rust_decimal" = [ "sqlx-macros-core/rust_decimal" ]; + "sqlite" = [ "sqlx-macros-core/sqlite" ]; + "sqlite-unbundled" = [ "sqlx-macros-core/sqlite-unbundled" ]; + "time" = [ "sqlx-macros-core/time" ]; + "uuid" = [ "sqlx-macros-core/uuid" ]; + }; + resolvedDefaultFeatures = [ "_rt-tokio" "_tls-rustls-ring-webpki" "default" "derive" "json" "macros" "migrate" "sqlite" "time" ]; + }; + "sqlx-macros-core" = rec { + crateName = "sqlx-macros-core"; + version = "0.8.6"; + edition = "2021"; + sha256 = "16r1slvkzfdxjkc2v5i3yd5l4xzcwbcy35hzfihmmb14262c3a8r"; + libName = "sqlx_macros_core"; + authors = [ + "Ryan Leckey " + "Austin Bonander " + "Chloe Ross " + "Daniel Akhterov " + ]; + dependencies = [ + { + name = "dotenvy"; + packageId = "dotenvy"; + usesDefaultFeatures = false; + } + { + name = "either"; + packageId = "either"; + } + { + name = "heck"; + packageId = "heck 0.5.0"; + } + { + name = "hex"; + packageId = "hex"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "sha2"; + packageId = "sha2"; + } + { + name = "sqlx-core"; + packageId = "sqlx-core"; + features = [ "offline" ]; + } + { + name = "sqlx-mysql"; + packageId = "sqlx-mysql"; + optional = true; + features = [ "offline" "migrate" ]; + } + { + name = "sqlx-postgres"; + packageId = "sqlx-postgres"; + optional = true; + features = [ "offline" "migrate" ]; + } + { + name = "sqlx-sqlite"; + packageId = "sqlx-sqlite"; + optional = true; + features = [ "offline" "migrate" ]; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "full" "derive" "parsing" "printing" "clone-impls" ]; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + usesDefaultFeatures = false; + features = [ "time" "net" "sync" "fs" "io-util" "rt" ]; + } + { + name = "url"; + packageId = "url"; + } + ]; + features = { + "_rt-async-std" = [ "async-std" "sqlx-core/_rt-async-std" ]; + "_rt-tokio" = [ "tokio" "sqlx-core/_rt-tokio" ]; + "_tls-native-tls" = [ "sqlx-core/_tls-native-tls" ]; + "_tls-rustls-aws-lc-rs" = [ "sqlx-core/_tls-rustls-aws-lc-rs" ]; + "_tls-rustls-ring-native-roots" = [ "sqlx-core/_tls-rustls-ring-native-roots" ]; + "_tls-rustls-ring-webpki" = [ "sqlx-core/_tls-rustls-ring-webpki" ]; + "async-std" = [ "dep:async-std" ]; + "bigdecimal" = [ "sqlx-core/bigdecimal" "sqlx-mysql?/bigdecimal" "sqlx-postgres?/bigdecimal" ]; + "bit-vec" = [ "sqlx-core/bit-vec" "sqlx-postgres?/bit-vec" ]; + "chrono" = [ "sqlx-core/chrono" "sqlx-mysql?/chrono" "sqlx-postgres?/chrono" "sqlx-sqlite?/chrono" ]; + "ipnet" = [ "sqlx-core/ipnet" "sqlx-postgres?/ipnet" ]; + "ipnetwork" = [ "sqlx-core/ipnetwork" "sqlx-postgres?/ipnetwork" ]; + "json" = [ "sqlx-core/json" "sqlx-mysql?/json" "sqlx-postgres?/json" "sqlx-sqlite?/json" ]; + "mac_address" = [ "sqlx-core/mac_address" "sqlx-postgres?/mac_address" ]; + "migrate" = [ "sqlx-core/migrate" ]; + "mysql" = [ "sqlx-mysql" ]; + "postgres" = [ "sqlx-postgres" ]; + "rust_decimal" = [ "sqlx-core/rust_decimal" "sqlx-mysql?/rust_decimal" "sqlx-postgres?/rust_decimal" ]; + "sqlite" = [ "_sqlite" "sqlx-sqlite/bundled" ]; + "sqlite-unbundled" = [ "_sqlite" "sqlx-sqlite/unbundled" ]; + "sqlx-mysql" = [ "dep:sqlx-mysql" ]; + "sqlx-postgres" = [ "dep:sqlx-postgres" ]; + "sqlx-sqlite" = [ "dep:sqlx-sqlite" ]; + "time" = [ "sqlx-core/time" "sqlx-mysql?/time" "sqlx-postgres?/time" "sqlx-sqlite?/time" ]; + "tokio" = [ "dep:tokio" ]; + "uuid" = [ "sqlx-core/uuid" "sqlx-mysql?/uuid" "sqlx-postgres?/uuid" "sqlx-sqlite?/uuid" ]; + }; + resolvedDefaultFeatures = [ "_rt-tokio" "_sqlite" "_tls-rustls-ring-webpki" "default" "derive" "json" "macros" "migrate" "sqlite" "sqlx-sqlite" "time" "tokio" ]; + }; + "sqlx-mysql" = rec { + crateName = "sqlx-mysql"; + version = "0.8.6"; + edition = "2021"; + sha256 = "09n5k60z9j1ilbdmggcla6s27np3zwxc3fnbzsw4wy6z7003y05a"; + libName = "sqlx_mysql"; + authors = [ + "Ryan Leckey " + "Austin Bonander " + "Chloe Ross " + "Daniel Akhterov " + ]; + dependencies = [ + { + name = "atoi"; + packageId = "atoi"; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + usesDefaultFeatures = false; + features = [ "serde" ]; + } + { + name = "byteorder"; + packageId = "byteorder"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "crc"; + packageId = "crc"; + } + { + name = "digest"; + packageId = "digest"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "dotenvy"; + packageId = "dotenvy"; + } + { + name = "either"; + packageId = "either"; + } + { + name = "futures-channel"; + packageId = "futures-channel"; + usesDefaultFeatures = false; + features = [ "sink" "alloc" "std" ]; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-io"; + packageId = "futures-io"; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" "sink" "io" ]; + } + { + name = "generic-array"; + packageId = "generic-array"; + usesDefaultFeatures = false; + } + { + name = "hex"; + packageId = "hex"; + } + { + name = "hkdf"; + packageId = "hkdf"; + } + { + name = "hmac"; + packageId = "hmac"; + usesDefaultFeatures = false; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "md-5"; + packageId = "md-5"; + usesDefaultFeatures = false; + } + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + usesDefaultFeatures = false; + features = [ "std" "std_rng" ]; + } + { + name = "rsa"; + packageId = "rsa"; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + } + { + name = "sha1"; + packageId = "sha1"; + usesDefaultFeatures = false; + } + { + name = "sha2"; + packageId = "sha2"; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + } + { + name = "sqlx-core"; + packageId = "sqlx-core"; + } + { + name = "stringprep"; + packageId = "stringprep"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "time"; + packageId = "time"; + optional = true; + features = [ "formatting" "parsing" "macros" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "log" ]; + } + { + name = "whoami"; + packageId = "whoami 1.6.1"; + usesDefaultFeatures = false; + } + ]; + features = { + "any" = [ "sqlx-core/any" ]; + "bigdecimal" = [ "dep:bigdecimal" "sqlx-core/bigdecimal" ]; + "chrono" = [ "dep:chrono" "sqlx-core/chrono" ]; + "json" = [ "sqlx-core/json" "serde" ]; + "migrate" = [ "sqlx-core/migrate" ]; + "offline" = [ "sqlx-core/offline" "serde/derive" ]; + "rust_decimal" = [ "dep:rust_decimal" "rust_decimal/maths" "sqlx-core/rust_decimal" ]; + "serde" = [ "dep:serde" ]; + "time" = [ "dep:time" "sqlx-core/time" ]; + "uuid" = [ "dep:uuid" "sqlx-core/uuid" ]; + }; + resolvedDefaultFeatures = [ "any" "json" "migrate" "offline" "serde" "time" ]; + }; + "sqlx-postgres" = rec { + crateName = "sqlx-postgres"; + version = "0.8.6"; + edition = "2021"; + sha256 = "0insvvaql0pz6nk64dbss4q4qzilj7zh2j0m9cc7rw1wlpazqn6v"; + libName = "sqlx_postgres"; + authors = [ + "Ryan Leckey " + "Austin Bonander " + "Chloe Ross " + "Daniel Akhterov " + ]; + dependencies = [ + { + name = "atoi"; + packageId = "atoi"; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + usesDefaultFeatures = false; + } + { + name = "byteorder"; + packageId = "byteorder"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "crc"; + packageId = "crc"; + } + { + name = "dotenvy"; + packageId = "dotenvy"; + usesDefaultFeatures = false; + } + { + name = "etcetera"; + packageId = "etcetera"; + target = { target, features }: ("windows" == target."os" or null); + } + { + name = "futures-channel"; + packageId = "futures-channel"; + usesDefaultFeatures = false; + features = [ "sink" "alloc" "std" ]; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" "sink" "io" ]; + } + { + name = "hex"; + packageId = "hex"; + } + { + name = "hkdf"; + packageId = "hkdf"; + } + { + name = "hmac"; + packageId = "hmac"; + usesDefaultFeatures = false; + features = [ "reset" ]; + } + { + name = "home"; + packageId = "home"; + } + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "md-5"; + packageId = "md-5"; + usesDefaultFeatures = false; + } + { + name = "memchr"; + packageId = "memchr"; + usesDefaultFeatures = false; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + usesDefaultFeatures = false; + features = [ "std" "std_rng" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + features = [ "raw_value" ]; + } + { + name = "sha2"; + packageId = "sha2"; + usesDefaultFeatures = false; + } + { + name = "smallvec"; + packageId = "smallvec"; + features = [ "serde" ]; + } + { + name = "sqlx-core"; + packageId = "sqlx-core"; + features = [ "json" ]; + } + { + name = "stringprep"; + packageId = "stringprep"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "time"; + packageId = "time"; + optional = true; + features = [ "formatting" "parsing" "macros" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "log" ]; + } + { + name = "whoami"; + packageId = "whoami 1.6.1"; + usesDefaultFeatures = false; + } + ]; + features = { + "any" = [ "sqlx-core/any" ]; + "bigdecimal" = [ "dep:bigdecimal" "dep:num-bigint" "sqlx-core/bigdecimal" ]; + "bit-vec" = [ "dep:bit-vec" "sqlx-core/bit-vec" ]; + "chrono" = [ "dep:chrono" "sqlx-core/chrono" ]; + "ipnet" = [ "dep:ipnet" "sqlx-core/ipnet" ]; + "ipnetwork" = [ "dep:ipnetwork" "sqlx-core/ipnetwork" ]; + "json" = [ "sqlx-core/json" ]; + "mac_address" = [ "dep:mac_address" "sqlx-core/mac_address" ]; + "migrate" = [ "sqlx-core/migrate" ]; + "offline" = [ "sqlx-core/offline" ]; + "rust_decimal" = [ "dep:rust_decimal" "rust_decimal/maths" "sqlx-core/rust_decimal" ]; + "time" = [ "dep:time" "sqlx-core/time" ]; + "uuid" = [ "dep:uuid" "sqlx-core/uuid" ]; + }; + resolvedDefaultFeatures = [ "any" "json" "migrate" "offline" "time" ]; + }; + "sqlx-sqlite" = rec { + crateName = "sqlx-sqlite"; + version = "0.8.6"; + edition = "2021"; + sha256 = "1siy1jhqf5flpxyrmy7rw66j0y0v2l7zjmc00c0l86rc1gkjzlf2"; + libName = "sqlx_sqlite"; + authors = [ + "Ryan Leckey " + "Austin Bonander " + "Chloe Ross " + "Daniel Akhterov " + ]; + dependencies = [ + { + name = "atoi"; + packageId = "atoi"; + } + { + name = "flume"; + packageId = "flume"; + usesDefaultFeatures = false; + features = [ "async" ]; + } + { + name = "futures-channel"; + packageId = "futures-channel"; + usesDefaultFeatures = false; + features = [ "sink" "alloc" "std" ]; + } + { + name = "futures-core"; + packageId = "futures-core"; + usesDefaultFeatures = false; + } + { + name = "futures-executor"; + packageId = "futures-executor"; + } + { + name = "futures-intrusive"; + packageId = "futures-intrusive"; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "alloc" "sink" ]; + } + { + name = "libsqlite3-sys"; + packageId = "libsqlite3-sys"; + usesDefaultFeatures = false; + features = [ "pkg-config" "vcpkg" "unlock_notify" ]; + } + { + name = "log"; + packageId = "log"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + features = [ "derive" ]; + } + { + name = "serde_urlencoded"; + packageId = "serde_urlencoded"; + } + { + name = "sqlx-core"; + packageId = "sqlx-core"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "time"; + packageId = "time"; + optional = true; + features = [ "formatting" "parsing" "macros" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "log" ]; + } + { + name = "url"; + packageId = "url"; + } + ]; + features = { + "any" = [ "sqlx-core/any" ]; + "bundled" = [ "libsqlite3-sys/bundled" ]; + "chrono" = [ "dep:chrono" "sqlx-core/chrono" ]; + "json" = [ "sqlx-core/json" "serde" ]; + "migrate" = [ "sqlx-core/migrate" ]; + "offline" = [ "sqlx-core/offline" "serde" ]; + "preupdate-hook" = [ "libsqlite3-sys/preupdate_hook" ]; + "regexp" = [ "dep:regex" ]; + "serde" = [ "dep:serde" ]; + "time" = [ "dep:time" "sqlx-core/time" ]; + "unbundled" = [ "libsqlite3-sys/buildtime_bindgen" ]; + "uuid" = [ "dep:uuid" "sqlx-core/uuid" ]; + }; + resolvedDefaultFeatures = [ "any" "bundled" "json" "migrate" "offline" "serde" "time" ]; + }; + "sse-stream" = rec { + crateName = "sse-stream"; + version = "0.2.1"; + edition = "2021"; + sha256 = "16j734awsc6rmaxhap6z3xp6a8hr6l563dc6sckizv387k9w8kgb"; + libName = "sse_stream"; + authors = [ + "4t145 " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + ]; + features = { + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "stable_deref_trait" = rec { + crateName = "stable_deref_trait"; + version = "1.2.1"; + edition = "2015"; + sha256 = "15h5h73ppqyhdhx6ywxfj88azmrpml9gl6zp3pwy2malqa6vxqkc"; + authors = [ + "Robert Grosse " + ]; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + }; + "starbase_styles" = rec { + crateName = "starbase_styles"; + version = "0.6.5"; + edition = "2024"; + sha256 = "04vjnp0ij1ghm8ryimh8dsc6lw42s7j4nd58pz1xiwm389yhzsgv"; + dependencies = [ + { + name = "dirs"; + packageId = "dirs"; + } + { + name = "owo-colors"; + packageId = "owo-colors"; + } + { + name = "supports-color"; + packageId = "supports-color"; + } + ]; + features = { + "relative-path" = [ "dep:relative-path" ]; + "theme" = [ "dep:miette" ]; + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "static_assertions" = rec { + crateName = "static_assertions"; + version = "1.1.0"; + edition = "2015"; + sha256 = "0gsl6xmw10gvn3zs1rv99laj5ig7ylffnh71f9l34js4nr4r7sx2"; + authors = [ + "Nikolai Vazquez" + ]; + features = { + }; + }; + "strict" = rec { + crateName = "strict"; + version = "0.2.0"; + edition = "2021"; + sha256 = "01j0h28xzg07kd1km5m0wz88asp6hwh45n8q8bdkjymqlpz4897l"; + authors = [ + "dystroy " + ]; + + }; + "stringprep" = rec { + crateName = "stringprep"; + version = "0.1.5"; + edition = "2015"; + sha256 = "1cb3jis4h2b767csk272zw92lc6jzfzvh8d6m1cd86yqjb9z6kbv"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "unicode-bidi"; + packageId = "unicode-bidi"; + } + { + name = "unicode-normalization"; + packageId = "unicode-normalization"; + } + { + name = "unicode-properties"; + packageId = "unicode-properties"; + } + ]; + + }; + "strsim 0.10.0" = rec { + crateName = "strsim"; + version = "0.10.0"; + edition = "2015"; + sha256 = "08s69r4rcrahwnickvi0kq49z524ci50capybln83mg6b473qivk"; + authors = [ + "Danny Guo " + ]; + + }; + "strsim 0.11.1" = rec { + crateName = "strsim"; + version = "0.11.1"; + edition = "2015"; + sha256 = "0kzvqlw8hxqb7y598w1s0hxlnmi84sg5vsipp3yg5na5d1rvba3x"; + authors = [ + "Danny Guo " + "maxbachmann " + ]; + + }; + "strum" = rec { + crateName = "strum"; + version = "0.27.2"; + edition = "2021"; + sha256 = "1ksb9jssw4bg9kmv9nlgp2jqa4vnsa3y4q9zkppvl952q7vdc8xg"; + authors = [ + "Peter Glotfelty " + ]; + dependencies = [ + { + name = "strum_macros"; + packageId = "strum_macros"; + optional = true; + } + ]; + features = { + "default" = [ "std" ]; + "derive" = [ "strum_macros" ]; + "phf" = [ "dep:phf" ]; + "strum_macros" = [ "dep:strum_macros" ]; + }; + resolvedDefaultFeatures = [ "default" "derive" "std" "strum_macros" ]; + }; + "strum_macros" = rec { + crateName = "strum_macros"; + version = "0.27.2"; + edition = "2021"; + sha256 = "19xwikxma0yi70fxkcy1yxcv0ica8gf3jnh5gj936jza8lwcx5bn"; + procMacro = true; + authors = [ + "Peter Glotfelty " + ]; + dependencies = [ + { + name = "heck"; + packageId = "heck 0.5.0"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "parsing" ]; + } + ]; + + }; + "subtle" = rec { + crateName = "subtle"; + version = "2.6.1"; + edition = "2018"; + sha256 = "14ijxaymghbl1p0wql9cib5zlwiina7kall6w7g89csprkgbvhhk"; + authors = [ + "Isis Lovecruft " + "Henry de Valence " + ]; + features = { + "default" = [ "std" "i128" ]; + }; + resolvedDefaultFeatures = [ "default" "i128" "std" ]; + }; + "supports-color" = rec { + crateName = "supports-color"; + version = "3.0.2"; + edition = "2018"; + sha256 = "1mk7r2j6l7zmqk3pg7av0l6viq413lmk1vz4bjnf9lnq5liwfky6"; + libName = "supports_color"; + authors = [ + "Kat Marchán " + ]; + dependencies = [ + { + name = "is_ci"; + packageId = "is_ci"; + } + ]; + + }; + "supports-hyperlinks" = rec { + crateName = "supports-hyperlinks"; + version = "3.2.0"; + edition = "2021"; + sha256 = "14byz5m3mcfz8jcg3vd639sp5qvd6svs05di40qvik0i7d9bd5p3"; + libName = "supports_hyperlinks"; + authors = [ + "Kat Marchán " + ]; + + }; + "supports-unicode" = rec { + crateName = "supports-unicode"; + version = "3.0.0"; + edition = "2018"; + sha256 = "1qpc344453x3ai4k9iygxnbk6lr2nw5jflj8ns5q3dbcmwq1lh5p"; + libName = "supports_unicode"; + authors = [ + "Kat Marchán " + ]; + + }; + "syn 1.0.109" = rec { + crateName = "syn"; + version = "1.0.109"; + edition = "2018"; + sha256 = "0ds2if4600bd59wsv7jjgfkayfzy3hnazs394kz6zdkmna8l3dkj"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "unicode-ident"; + packageId = "unicode-ident"; + } + ]; + features = { + "default" = [ "derive" "parsing" "printing" "clone-impls" "proc-macro" ]; + "printing" = [ "quote" ]; + "proc-macro" = [ "proc-macro2/proc-macro" "quote/proc-macro" ]; + "quote" = [ "dep:quote" ]; + "test" = [ "syn-test-suite/all-features" ]; + }; + resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "full" "parsing" "printing" "proc-macro" "quote" ]; + }; + "syn 2.0.114" = rec { + crateName = "syn"; + version = "2.0.114"; + edition = "2021"; + sha256 = "0akw62dizhyrkf3ym1jsys0gy1nphzgv0y8qkgpi6c1s4vghglfl"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "unicode-ident"; + packageId = "unicode-ident"; + } + ]; + features = { + "default" = [ "derive" "parsing" "printing" "clone-impls" "proc-macro" ]; + "printing" = [ "dep:quote" ]; + "proc-macro" = [ "proc-macro2/proc-macro" "quote?/proc-macro" ]; + "test" = [ "syn-test-suite/all-features" ]; + }; + resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "extra-traits" "fold" "full" "parsing" "printing" "proc-macro" "visit" "visit-mut" ]; + }; + "sync_wrapper 0.1.2" = rec { + crateName = "sync_wrapper"; + version = "0.1.2"; + edition = "2018"; + sha256 = "0q01lyj0gr9a93n10nxsn8lwbzq97jqd6b768x17c8f7v7gccir0"; + authors = [ + "Actyx AG " + ]; + features = { + "futures" = [ "futures-core" ]; + "futures-core" = [ "dep:futures-core" ]; + }; + }; + "sync_wrapper 1.0.2" = rec { + crateName = "sync_wrapper"; + version = "1.0.2"; + edition = "2021"; + sha256 = "0qvjyasd6w18mjg5xlaq5jgy84jsjfsvmnn12c13gypxbv75dwhb"; + authors = [ + "Actyx AG " + ]; + dependencies = [ + { + name = "futures-core"; + packageId = "futures-core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "futures" = [ "futures-core" ]; + "futures-core" = [ "dep:futures-core" ]; + }; + resolvedDefaultFeatures = [ "futures" "futures-core" ]; + }; + "synstructure" = rec { + crateName = "synstructure"; + version = "0.13.2"; + edition = "2018"; + sha256 = "1lh9lx3r3jb18f8sbj29am5hm9jymvbwh6jb1izsnnxgvgrp12kj"; + authors = [ + "Nika Layzell " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "derive" "parsing" "printing" "clone-impls" "visit" "extra-traits" ]; + } + ]; + features = { + "default" = [ "proc-macro" ]; + "proc-macro" = [ "proc-macro2/proc-macro" "syn/proc-macro" "quote/proc-macro" ]; + }; + resolvedDefaultFeatures = [ "default" "proc-macro" ]; + }; + "sysinfo 0.34.2" = rec { + crateName = "sysinfo"; + version = "0.34.2"; + edition = "2021"; + sha256 = "1cp4qyr67p7ifglil70p178wx7839kyyxf04cl1smbnknds3kfd4"; + authors = [ + "Guillaume Gomez " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (!(("unknown" == target."os" or null) || ("wasm32" == target."arch" or null))); + } + { + name = "memchr"; + packageId = "memchr"; + optional = true; + } + { + name = "ntapi"; + packageId = "ntapi"; + optional = true; + target = { target, features }: (target."windows" or false); + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + features = [ "std" ]; + } + { + name = "windows"; + packageId = "windows 0.57.0"; + optional = true; + target = { target, features }: (target."windows" or false); + } + ]; + features = { + "apple-app-store" = [ "apple-sandbox" ]; + "c-interface" = [ "default" ]; + "component" = [ "windows/Win32_Foundation" "windows/Win32_Security" "windows/Win32_System_Com" "windows/Win32_System_Rpc" "windows/Win32_System_Variant" "windows/Win32_System_Wmi" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFBase" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFNumber" "objc2-core-foundation/CFString" ]; + "debug" = [ "libc/extra_traits" ]; + "default" = [ "component" "disk" "network" "system" "user" ]; + "disk" = [ "windows/Win32_Foundation" "windows/Win32_Storage_FileSystem" "windows/Win32_Security" "windows/Win32_System_IO" "windows/Win32_System_Ioctl" "windows/Win32_System_SystemServices" "windows/Win32_System_WindowsProgramming" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFBase" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFError" "objc2-core-foundation/CFNumber" "objc2-core-foundation/CFString" "objc2-core-foundation/CFURL" ]; + "multithread" = [ "dep:rayon" ]; + "network" = [ "windows/Win32_Foundation" "windows/Win32_NetworkManagement_IpHelper" "windows/Win32_NetworkManagement_Ndis" "windows/Win32_Networking_WinSock" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "serde" = [ "dep:serde" ]; + "system" = [ "windows/Win32_Foundation" "windows/Win32_System_Diagnostics_ToolHelp" "windows/Wdk_System_SystemInformation" "windows/Wdk_System_SystemServices" "windows/Wdk_System_Threading" "windows/Win32_Security_Authorization" "windows/Win32_System_Diagnostics_Debug" "windows/Win32_System_Kernel" "windows/Win32_System_Memory" "windows/Win32_System_Performance" "windows/Win32_System_Power" "windows/Win32_System_ProcessStatus" "windows/Win32_System_Registry" "windows/Win32_System_RemoteDesktop" "windows/Win32_System_SystemInformation" "windows/Win32_System_SystemServices" "windows/Win32_System_Threading" "windows/Win32_UI_Shell" "dep:ntapi" "dep:memchr" "objc2-core-foundation/CFBase" "objc2-core-foundation/CFData" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFString" ]; + "user" = [ "windows/Win32_Foundation" "windows/Win32_NetworkManagement_NetManagement" "windows/Win32_Security" "windows/Win32_Security_Authentication_Identity" "windows/Win32_Security_Authorization" ]; + "windows" = [ "dep:windows" ]; + }; + resolvedDefaultFeatures = [ "component" "default" "disk" "network" "objc2-core-foundation" "system" "user" "windows" ]; + }; + "sysinfo 0.35.2" = rec { + crateName = "sysinfo"; + version = "0.35.2"; + edition = "2021"; + sha256 = "0vj9j8m10j56a41552f1qckv3isnjqs3rsvsgyjj9czj9wzglgrw"; + authors = [ + "Guillaume Gomez " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (!(("unknown" == target."os" or null) || ("wasm32" == target."arch" or null))); + } + { + name = "memchr"; + packageId = "memchr"; + optional = true; + } + { + name = "ntapi"; + packageId = "ntapi"; + optional = true; + target = { target, features }: (target."windows" or false); + } + { + name = "objc2-core-foundation"; + packageId = "objc2-core-foundation"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + features = [ "std" ]; + } + { + name = "objc2-io-kit"; + packageId = "objc2-io-kit"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("macos" == target."os" or null) || ("ios" == target."os" or null)); + features = [ "std" "libc" ]; + } + { + name = "windows"; + packageId = "windows 0.61.3"; + optional = true; + target = { target, features }: (target."windows" or false); + } + ]; + features = { + "apple-app-store" = [ "apple-sandbox" ]; + "c-interface" = [ "default" ]; + "component" = [ "windows/Win32_Foundation" "windows/Win32_Security" "windows/Win32_System_Com" "windows/Win32_System_Ole" "windows/Win32_System_Rpc" "windows/Win32_System_Variant" "windows/Win32_System_Wmi" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFBase" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFNumber" "objc2-core-foundation/CFString" "objc2-io-kit" "objc2-io-kit/hidsystem" ]; + "debug" = [ "libc/extra_traits" ]; + "default" = [ "component" "disk" "network" "system" "user" ]; + "disk" = [ "windows/Win32_Foundation" "windows/Win32_Storage_FileSystem" "windows/Win32_Security" "windows/Win32_System_IO" "windows/Win32_System_Ioctl" "windows/Win32_System_SystemServices" "windows/Win32_System_WindowsProgramming" "objc2-core-foundation/CFArray" "objc2-core-foundation/CFBase" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFError" "objc2-core-foundation/CFNumber" "objc2-core-foundation/CFString" "objc2-core-foundation/CFURL" "objc2-io-kit" ]; + "multithread" = [ "dep:rayon" ]; + "network" = [ "windows/Win32_Foundation" "windows/Win32_NetworkManagement_IpHelper" "windows/Win32_NetworkManagement_Ndis" "windows/Win32_Networking_WinSock" ]; + "objc2-core-foundation" = [ "dep:objc2-core-foundation" ]; + "objc2-io-kit" = [ "dep:objc2-io-kit" ]; + "serde" = [ "dep:serde" ]; + "system" = [ "windows/Win32_Foundation" "windows/Win32_System_Diagnostics_ToolHelp" "windows/Wdk_System_SystemInformation" "windows/Wdk_System_SystemServices" "windows/Wdk_System_Threading" "windows/Win32_Security_Authorization" "windows/Win32_System_Diagnostics_Debug" "windows/Win32_System_Kernel" "windows/Win32_System_Memory" "windows/Win32_System_Performance" "windows/Win32_System_Power" "windows/Win32_System_ProcessStatus" "windows/Win32_System_Registry" "windows/Win32_System_RemoteDesktop" "windows/Win32_System_SystemInformation" "windows/Win32_System_SystemServices" "windows/Win32_System_Threading" "windows/Win32_UI_Shell" "dep:ntapi" "dep:memchr" "objc2-core-foundation/CFBase" "objc2-core-foundation/CFData" "objc2-core-foundation/CFDictionary" "objc2-core-foundation/CFString" "objc2-io-kit" ]; + "user" = [ "windows/Win32_Foundation" "windows/Win32_NetworkManagement_NetManagement" "windows/Win32_Security" "windows/Win32_Security_Authentication_Identity" "windows/Win32_Security_Authorization" ]; + "windows" = [ "dep:windows" ]; + }; + resolvedDefaultFeatures = [ "component" "default" "disk" "network" "objc2-core-foundation" "objc2-io-kit" "system" "user" "windows" ]; + }; + "system-configuration" = rec { + crateName = "system-configuration"; + version = "0.5.1"; + edition = "2021"; + sha256 = "1rz0r30xn7fiyqay2dvzfy56cvaa3km74hnbz2d72p97bkf3lfms"; + libName = "system_configuration"; + authors = [ + "Mullvad VPN" + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 1.3.2"; + } + { + name = "core-foundation"; + packageId = "core-foundation 0.9.4"; + } + { + name = "system-configuration-sys"; + packageId = "system-configuration-sys"; + } + ]; + + }; + "system-configuration-sys" = rec { + crateName = "system-configuration-sys"; + version = "0.5.0"; + edition = "2021"; + sha256 = "1jckxvdr37bay3i9v52izgy52dg690x5xfg3hd394sv2xf4b2px7"; + libName = "system_configuration_sys"; + authors = [ + "Mullvad VPN" + ]; + dependencies = [ + { + name = "core-foundation-sys"; + packageId = "core-foundation-sys"; + } + { + name = "libc"; + packageId = "libc"; + } + ]; + + }; + "taffy" = rec { + crateName = "taffy"; + version = "0.5.2"; + edition = "2021"; + sha256 = "151whwijwi5inkcq90p3j2y8sywn59i31q2p79yy22pqy2zr7f4w"; + authors = [ + "Alice Cecile " + "Johnathan Kelley " + "Nico Burns " + ]; + dependencies = [ + { + name = "arrayvec"; + packageId = "arrayvec"; + usesDefaultFeatures = false; + } + { + name = "grid"; + packageId = "grid"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "num-traits"; + packageId = "num-traits"; + usesDefaultFeatures = false; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + features = [ "serde_derive" ]; + } + { + name = "slotmap"; + packageId = "slotmap"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde?/alloc" ]; + "debug" = [ "std" ]; + "default" = [ "std" "taffy_tree" "flexbox" "grid" "block_layout" "content_size" ]; + "document-features" = [ "dep:document-features" ]; + "grid" = [ "alloc" "dep:grid" ]; + "profile" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "num-traits/std" "grid?/std" "serde?/std" "slotmap?/std" ]; + "taffy_tree" = [ "dep:slotmap" ]; + }; + resolvedDefaultFeatures = [ "flexbox" "std" "taffy_tree" ]; + }; + "tempfile" = rec { + crateName = "tempfile"; + version = "3.24.0"; + edition = "2021"; + sha256 = "171fz3h6rj676miq15fyv1hnv69p426mlp8489bwa1b3xg3sjpb5"; + authors = [ + "Steven Allen " + "The Rust Project Developers" + "Ashley Mannix " + "Jason White " + ]; + dependencies = [ + { + name = "fastrand"; + packageId = "fastrand"; + } + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((target."unix" or false) || (target."windows" or false) || ("wasi" == target."os" or null)); + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "rustix"; + packageId = "rustix 1.1.3"; + target = { target, features }: ((target."unix" or false) || ("wasi" == target."os" or null)); + features = [ "fs" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Storage_FileSystem" "Win32_Foundation" ]; + } + ]; + features = { + "default" = [ "getrandom" ]; + "getrandom" = [ "dep:getrandom" ]; + }; + resolvedDefaultFeatures = [ "default" "getrandom" ]; + }; + "termcolor" = rec { + crateName = "termcolor"; + version = "1.4.1"; + edition = "2018"; + sha256 = "0mappjh3fj3p2nmrg4y7qv94rchwi9mzmgmfflr8p2awdj7lyy86"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "winapi-util"; + packageId = "winapi-util"; + target = { target, features }: (target."windows" or false); + } + ]; + + }; + "termimad" = rec { + crateName = "termimad"; + version = "0.30.1"; + edition = "2021"; + sha256 = "0z37g5vgp1b7728pckk1xycb3vdkgx65b3sm1brzz7cyj0874492"; + authors = [ + "dystroy " + ]; + dependencies = [ + { + name = "coolor"; + packageId = "coolor"; + features = [ "crossterm" ]; + } + { + name = "crokey"; + packageId = "crokey"; + } + { + name = "crossbeam"; + packageId = "crossbeam"; + } + { + name = "lazy-regex"; + packageId = "lazy-regex"; + } + { + name = "minimad"; + packageId = "minimad"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "thiserror"; + packageId = "thiserror 1.0.69"; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.1.14"; + } + ]; + features = { + "default" = [ "special-renders" ]; + }; + resolvedDefaultFeatures = [ "default" "special-renders" ]; + }; + "terminal_size" = rec { + crateName = "terminal_size"; + version = "0.4.3"; + edition = "2021"; + sha256 = "1l7cicmz49c0cyskfp5a389rsai649xi7y032v73475ikjbwpf30"; + authors = [ + "Andrew Chin " + ]; + dependencies = [ + { + name = "rustix"; + packageId = "rustix 1.1.3"; + target = { target, features }: (target."unix" or false); + features = [ "termios" ]; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.60.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_System_Console" ]; + } + ]; + + }; + "textwrap" = rec { + crateName = "textwrap"; + version = "0.16.2"; + edition = "2021"; + sha256 = "0mrhd8q0dnh5hwbwhiv89c6i41yzmhw4clwa592rrp24b9hlfdf1"; + authors = [ + "Martin Geisler " + ]; + dependencies = [ + { + name = "unicode-linebreak"; + packageId = "unicode-linebreak"; + optional = true; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.2.2"; + optional = true; + } + ]; + features = { + "default" = [ "unicode-linebreak" "unicode-width" "smawk" ]; + "hyphenation" = [ "dep:hyphenation" ]; + "smawk" = [ "dep:smawk" ]; + "terminal_size" = [ "dep:terminal_size" ]; + "unicode-linebreak" = [ "dep:unicode-linebreak" ]; + "unicode-width" = [ "dep:unicode-width" ]; + }; + resolvedDefaultFeatures = [ "unicode-linebreak" "unicode-width" ]; + }; + "thiserror 1.0.69" = rec { + crateName = "thiserror"; + version = "1.0.69"; + edition = "2021"; + sha256 = "0lizjay08agcr5hs9yfzzj6axs53a2rgx070a1dsi3jpkcrzbamn"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "thiserror-impl"; + packageId = "thiserror-impl 1.0.69"; + } + ]; + + }; + "thiserror 2.0.18" = rec { + crateName = "thiserror"; + version = "2.0.18"; + edition = "2021"; + sha256 = "1i7vcmw9900bvsmay7mww04ahahab7wmr8s925xc083rpjybb222"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "thiserror-impl"; + packageId = "thiserror-impl 2.0.18"; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "thiserror-impl 1.0.69" = rec { + crateName = "thiserror-impl"; + version = "1.0.69"; + edition = "2021"; + sha256 = "1h84fmn2nai41cxbhk6pqf46bxqq1b344v8yz089w1chzi76rvjg"; + procMacro = true; + libName = "thiserror_impl"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + + }; + "thiserror-impl 2.0.18" = rec { + crateName = "thiserror-impl"; + version = "2.0.18"; + edition = "2021"; + sha256 = "1mf1vrbbimj1g6dvhdgzjmn6q09yflz2b92zs1j9n3k7cxzyxi7b"; + procMacro = true; + libName = "thiserror_impl"; + authors = [ + "David Tolnay " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + } + ]; + + }; + "thread_local" = rec { + crateName = "thread_local"; + version = "1.1.9"; + edition = "2021"; + sha256 = "1191jvl8d63agnq06pcnarivf63qzgpws5xa33hgc92gjjj4c0pn"; + authors = [ + "Amanieu d'Antras " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + ]; + features = { + }; + }; + "time" = rec { + crateName = "time"; + version = "0.3.45"; + edition = "2021"; + sha256 = "1gdag88agck220k6fxbgb7gsnr2r14n33sxzm5db9zfp6gy45r7r"; + authors = [ + "Jacob Pratt " + "Time contributors" + ]; + dependencies = [ + { + name = "deranged"; + packageId = "deranged"; + features = [ "powerfmt" ]; + } + { + name = "itoa"; + packageId = "itoa"; + optional = true; + } + { + name = "num-conv"; + packageId = "num-conv"; + } + { + name = "powerfmt"; + packageId = "powerfmt"; + usesDefaultFeatures = false; + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "time-core"; + packageId = "time-core"; + } + { + name = "time-macros"; + packageId = "time-macros"; + optional = true; + } + ]; + devDependencies = [ + { + name = "num-conv"; + packageId = "num-conv"; + } + { + name = "time-macros"; + packageId = "time-macros"; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" ]; + "default" = [ "std" ]; + "formatting" = [ "dep:itoa" "std" "time-macros?/formatting" ]; + "large-dates" = [ "time-macros?/large-dates" ]; + "local-offset" = [ "std" "dep:libc" "dep:num_threads" ]; + "macros" = [ "dep:time-macros" ]; + "parsing" = [ "time-macros?/parsing" ]; + "quickcheck" = [ "dep:quickcheck" "alloc" "deranged/quickcheck" ]; + "rand" = [ "rand08" "rand09" ]; + "rand08" = [ "dep:rand08" "deranged/rand08" ]; + "rand09" = [ "dep:rand09" "deranged/rand09" ]; + "serde" = [ "dep:serde_core" "time-macros?/serde" "deranged/serde" ]; + "serde-human-readable" = [ "serde" "formatting" "parsing" ]; + "serde-well-known" = [ "serde" "formatting" "parsing" ]; + "std" = [ "alloc" ]; + "wasm-bindgen" = [ "dep:js-sys" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "formatting" "macros" "parsing" "serde" "serde-well-known" "std" ]; + }; + "time-core" = rec { + crateName = "time-core"; + version = "0.1.7"; + edition = "2021"; + sha256 = "1jilglvr6m6h2iidnvdp3zfahck9wa7kw64rslk79v1izncfwdlb"; + libName = "time_core"; + authors = [ + "Jacob Pratt " + "Time contributors" + ]; + + }; + "time-macros" = rec { + crateName = "time-macros"; + version = "0.2.25"; + edition = "2021"; + sha256 = "1pg3zrqyvjcy1nh470mdw7qxwwq6zmwq3f1dlp11mxlv4k8m5rbi"; + procMacro = true; + libName = "time_macros"; + authors = [ + "Jacob Pratt " + "Time contributors" + ]; + dependencies = [ + { + name = "num-conv"; + packageId = "num-conv"; + } + { + name = "time-core"; + packageId = "time-core"; + } + ]; + features = { + }; + resolvedDefaultFeatures = [ "formatting" "parsing" "serde" ]; + }; + "tinystr" = rec { + crateName = "tinystr"; + version = "0.8.2"; + edition = "2021"; + sha256 = "0sa8z88axdsf088hgw5p4xcyi6g3w3sgbb6qdp81bph9bk2fkls2"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "zerovec"; + packageId = "zerovec"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" "zerovec?/alloc" ]; + "databake" = [ "dep:databake" ]; + "default" = [ "alloc" ]; + "serde" = [ "dep:serde_core" ]; + "zerovec" = [ "dep:zerovec" ]; + }; + resolvedDefaultFeatures = [ "zerovec" ]; + }; + "tinytemplate" = rec { + crateName = "tinytemplate"; + version = "1.2.1"; + edition = "2015"; + sha256 = "1g5n77cqkdh9hy75zdb01adxn45mkh9y40wdr7l68xpz35gnnkdy"; + authors = [ + "Brook Heisler " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + ]; + + }; + "tinyvec" = rec { + crateName = "tinyvec"; + version = "1.10.0"; + edition = "2018"; + sha256 = "1yhk0qdqyiaa4v2j9h8pzax5gxgwpz4da0lcphfil6g6pk1zv9dz"; + authors = [ + "Lokathor " + ]; + dependencies = [ + { + name = "tinyvec_macros"; + packageId = "tinyvec_macros"; + optional = true; + } + ]; + features = { + "alloc" = [ "tinyvec_macros" ]; + "arbitrary" = [ "dep:arbitrary" ]; + "borsh" = [ "dep:borsh" ]; + "generic-array" = [ "dep:generic-array" ]; + "latest_stable_rust" = [ "rustc_1_61" ]; + "real_blackbox" = [ "criterion/real_blackbox" ]; + "rustc_1_61" = [ "rustc_1_57" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + "tinyvec_macros" = [ "dep:tinyvec_macros" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "tinyvec_macros" ]; + }; + "tinyvec_macros" = rec { + crateName = "tinyvec_macros"; + version = "0.1.1"; + edition = "2018"; + sha256 = "081gag86208sc3y6sdkshgw3vysm5d34p431dzw0bshz66ncng0z"; + authors = [ + "Soveu " + ]; + + }; + "tokio" = rec { + crateName = "tokio"; + version = "1.49.0"; + edition = "2021"; + sha256 = "11ix3pl03s0bp71q3wddrbf8xr0cpn47d7fzr6m42r3kswy918kj"; + authors = [ + "Tokio Contributors " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + optional = true; + } + { + name = "libc"; + packageId = "libc"; + optional = true; + target = { target, features }: ((target."tokio_unstable" or false) && ("linux" == target."os" or null)); + } + { + name = "libc"; + packageId = "libc"; + optional = true; + target = { target, features }: (target."unix" or false); + } + { + name = "mio"; + packageId = "mio 1.1.1"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "mio"; + packageId = "mio 1.1.1"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((target."tokio_unstable" or false) && ("linux" == target."os" or null)); + features = [ "os-poll" "os-ext" ]; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "signal-hook-registry"; + packageId = "signal-hook-registry"; + optional = true; + target = { target, features }: (target."unix" or false); + } + { + name = "socket2"; + packageId = "socket2 0.6.1"; + optional = true; + target = { target, features }: (!(builtins.elem "wasm" target."family")); + features = [ "all" ]; + } + { + name = "tokio-macros"; + packageId = "tokio-macros"; + optional = true; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + optional = true; + target = { target, features }: (target."windows" or false); + } + ]; + devDependencies = [ + { + name = "libc"; + packageId = "libc"; + target = { target, features }: (target."unix" or false); + } + { + name = "socket2"; + packageId = "socket2 0.6.1"; + target = { target, features }: (!(builtins.elem "wasm" target."family")); + } + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Security_Authorization" ]; + } + ]; + features = { + "bytes" = [ "dep:bytes" ]; + "full" = [ "fs" "io-util" "io-std" "macros" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "sync" "time" ]; + "io-uring" = [ "dep:io-uring" "libc" "mio/os-poll" "mio/os-ext" "dep:slab" ]; + "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" ]; + "taskdump" = [ "dep:backtrace" ]; + "test-util" = [ "rt" "sync" "time" ]; + "tokio-macros" = [ "dep:tokio-macros" ]; + "tracing" = [ "dep:tracing" ]; + "windows-sys" = [ "dep:windows-sys" ]; + }; + resolvedDefaultFeatures = [ "bytes" "default" "fs" "full" "io-std" "io-util" "libc" "macros" "mio" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "signal-hook-registry" "socket2" "sync" "time" "tokio-macros" "windows-sys" ]; + }; + "tokio-macros" = rec { + crateName = "tokio-macros"; + version = "2.6.0"; + edition = "2021"; + sha256 = "19czvgliginbzyhhfbmj77wazqn2y8g27y2nirfajdlm41bphh5g"; + procMacro = true; + libName = "tokio_macros"; + authors = [ + "Tokio Contributors " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "tokio-native-tls" = rec { + crateName = "tokio-native-tls"; + version = "0.3.1"; + edition = "2018"; + sha256 = "1wkfg6zn85zckmv4im7mv20ca6b1vmlib5xwz9p7g19wjfmpdbmv"; + libName = "tokio_native_tls"; + authors = [ + "Tokio Contributors " + ]; + dependencies = [ + { + name = "native-tls"; + packageId = "native-tls"; + } + { + name = "tokio"; + packageId = "tokio"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "rt" "rt-multi-thread" "io-util" "net" ]; + } + ]; + features = { + "vendored" = [ "native-tls/vendored" ]; + }; + }; + "tokio-postgres" = rec { + crateName = "tokio-postgres"; + version = "0.7.16"; + edition = "2021"; + sha256 = "0hpfhzvv2ghrm56dnss3iz95kf0wy6qjsv7ijdvkci0pyz44gsnw"; + libName = "tokio_postgres"; + authors = [ + "Steven Fackler " + ]; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "byteorder"; + packageId = "byteorder"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "fallible-iterator"; + packageId = "fallible-iterator"; + } + { + name = "futures-channel"; + packageId = "futures-channel"; + features = [ "sink" ]; + } + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "sink" ]; + } + { + name = "log"; + packageId = "log"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "phf"; + packageId = "phf"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "postgres-protocol"; + packageId = "postgres-protocol"; + } + { + name = "postgres-types"; + packageId = "postgres-types"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "socket2"; + packageId = "socket2 0.6.1"; + target = { target, features }: (!("wasm32" == target."arch" or null)); + features = [ "all" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "io-util" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + features = [ "codec" ]; + } + { + name = "whoami"; + packageId = "whoami 2.0.2"; + } + ]; + devDependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "async-await-macro" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "net" "rt" "rt-multi-thread" "time" ]; + } + ]; + features = { + "array-impls" = [ "postgres-types/array-impls" ]; + "default" = [ "runtime" ]; + "js" = [ "postgres-protocol/js" "postgres-types/js" ]; + "runtime" = [ "tokio/net" "tokio/time" ]; + "with-bit-vec-0_6" = [ "postgres-types/with-bit-vec-0_6" ]; + "with-bit-vec-0_7" = [ "postgres-types/with-bit-vec-0_7" ]; + "with-bit-vec-0_8" = [ "postgres-types/with-bit-vec-0_8" ]; + "with-chrono-0_4" = [ "postgres-types/with-chrono-0_4" ]; + "with-cidr-0_2" = [ "postgres-types/with-cidr-0_2" ]; + "with-cidr-0_3" = [ "postgres-types/with-cidr-0_3" ]; + "with-eui48-0_4" = [ "postgres-types/with-eui48-0_4" ]; + "with-eui48-1" = [ "postgres-types/with-eui48-1" ]; + "with-geo-types-0_6" = [ "postgres-types/with-geo-types-0_6" ]; + "with-geo-types-0_7" = [ "postgres-types/with-geo-types-0_7" ]; + "with-jiff-0_1" = [ "postgres-types/with-jiff-0_1" ]; + "with-jiff-0_2" = [ "postgres-types/with-jiff-0_2" ]; + "with-serde_json-1" = [ "postgres-types/with-serde_json-1" ]; + "with-smol_str-01" = [ "postgres-types/with-smol_str-01" ]; + "with-time-0_2" = [ "postgres-types/with-time-0_2" ]; + "with-time-0_3" = [ "postgres-types/with-time-0_3" ]; + "with-uuid-0_8" = [ "postgres-types/with-uuid-0_8" ]; + "with-uuid-1" = [ "postgres-types/with-uuid-1" ]; + }; + resolvedDefaultFeatures = [ "default" "runtime" ]; + }; + "tokio-rustls 0.24.1" = rec { + crateName = "tokio-rustls"; + version = "0.24.1"; + edition = "2018"; + sha256 = "10bhibg57mqir7xjhb2xmf24xgfpx6fzpyw720a4ih8a737jg0y2"; + libName = "tokio_rustls"; + dependencies = [ + { + name = "rustls"; + packageId = "rustls 0.21.12"; + usesDefaultFeatures = false; + } + { + name = "tokio"; + packageId = "tokio"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "full" ]; + } + ]; + features = { + "dangerous_configuration" = [ "rustls/dangerous_configuration" ]; + "default" = [ "logging" "tls12" ]; + "logging" = [ "rustls/logging" ]; + "secret_extraction" = [ "rustls/secret_extraction" ]; + "tls12" = [ "rustls/tls12" ]; + }; + resolvedDefaultFeatures = [ "default" "logging" "tls12" ]; + }; + "tokio-rustls 0.26.4" = rec { + crateName = "tokio-rustls"; + version = "0.26.4"; + edition = "2021"; + sha256 = "0qggwknz9w4bbsv1z158hlnpkm97j3w8v31586jipn99byaala8p"; + libName = "tokio_rustls"; + dependencies = [ + { + name = "rustls"; + packageId = "rustls 0.23.36"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "tokio"; + packageId = "tokio"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "full" ]; + } + ]; + features = { + "aws-lc-rs" = [ "aws_lc_rs" ]; + "aws_lc_rs" = [ "rustls/aws_lc_rs" ]; + "brotli" = [ "rustls/brotli" ]; + "default" = [ "logging" "tls12" "aws_lc_rs" ]; + "fips" = [ "rustls/fips" ]; + "logging" = [ "rustls/logging" ]; + "ring" = [ "rustls/ring" ]; + "tls12" = [ "rustls/tls12" ]; + "zlib" = [ "rustls/zlib" ]; + }; + resolvedDefaultFeatures = [ "aws-lc-rs" "aws_lc_rs" "logging" "ring" "tls12" ]; + }; + "tokio-shutdown" = rec { + crateName = "tokio-shutdown"; + version = "2.0.0"; + edition = "2024"; + workspace_member = null; + src = pkgs.fetchgit { + url = "https://github.com/cachix/devenv"; + rev = "1cde97dea0d8af62a29872cc55c4c9eeac6a5e56"; + sha256 = "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5"; + }; + libName = "tokio_shutdown"; + dependencies = [ + { + name = "futures"; + packageId = "futures"; + } + { + name = "nix"; + packageId = "nix 0.30.1"; + features = [ "signal" "process" "signal" "process" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "sync" "macros" "rt" "signal" "time" ]; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + features = [ "io" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "valuable" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "process" "fs" "io-util" "macros" "rt-multi-thread" "sync" "time" "test-util" ]; + } + ]; + + }; + "tokio-stream" = rec { + crateName = "tokio-stream"; + version = "0.1.18"; + edition = "2021"; + sha256 = "0w3cj33605ab58wqd382gnla5pnd9hnr00xgg333np5bka04knij"; + libName = "tokio_stream"; + authors = [ + "Tokio Contributors " + ]; + 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" "fs" "io-util" "net" "time" ]; + }; + "tokio-tungstenite 0.26.2" = rec { + crateName = "tokio-tungstenite"; + version = "0.26.2"; + edition = "2018"; + sha256 = "117hwxfwmpxazxks076w5i73xj7cgv5iqs7x2rnbzln60zvaz7bs"; + libName = "tokio_tungstenite"; + authors = [ + "Daniel Abramov " + "Alexey Galakhov " + ]; + dependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "sink" "std" ]; + } + { + name = "log"; + packageId = "log"; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "io-util" ]; + } + { + name = "tungstenite"; + packageId = "tungstenite 0.26.2"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "io-std" "macros" "net" "rt-multi-thread" "time" ]; + } + ]; + features = { + "__rustls-tls" = [ "rustls" "rustls-pki-types" "tokio-rustls" "stream" "tungstenite/__rustls-tls" "handshake" ]; + "connect" = [ "stream" "tokio/net" "handshake" ]; + "default" = [ "connect" "handshake" ]; + "handshake" = [ "tungstenite/handshake" ]; + "native-tls" = [ "native-tls-crate" "tokio-native-tls" "stream" "tungstenite/native-tls" "handshake" ]; + "native-tls-crate" = [ "dep:native-tls-crate" ]; + "native-tls-vendored" = [ "native-tls" "native-tls-crate/vendored" "tungstenite/native-tls-vendored" ]; + "rustls" = [ "dep:rustls" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-pki-types" = [ "dep:rustls-pki-types" ]; + "rustls-tls-native-roots" = [ "__rustls-tls" "rustls-native-certs" ]; + "rustls-tls-webpki-roots" = [ "__rustls-tls" "webpki-roots" ]; + "tokio-native-tls" = [ "dep:tokio-native-tls" ]; + "tokio-rustls" = [ "dep:tokio-rustls" ]; + "url" = [ "tungstenite/url" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "connect" "default" "handshake" "stream" ]; + }; + "tokio-tungstenite 0.28.0" = rec { + crateName = "tokio-tungstenite"; + version = "0.28.0"; + edition = "2018"; + sha256 = "0mzqgc94csy5ai6kx5yxj548shppq2kwdbyrsdsilhycvmn40nnj"; + libName = "tokio_tungstenite"; + authors = [ + "Daniel Abramov " + "Alexey Galakhov " + ]; + dependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "sink" "std" ]; + } + { + name = "log"; + packageId = "log"; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "io-util" ]; + } + { + name = "tungstenite"; + packageId = "tungstenite 0.28.0"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "io-std" "macros" "net" "rt-multi-thread" "time" ]; + } + ]; + features = { + "__rustls-tls" = [ "rustls" "rustls-pki-types" "tokio-rustls" "stream" "tungstenite/__rustls-tls" "handshake" ]; + "connect" = [ "stream" "tokio/net" "handshake" ]; + "default" = [ "connect" "handshake" ]; + "handshake" = [ "tungstenite/handshake" ]; + "native-tls" = [ "native-tls-crate" "tokio-native-tls" "stream" "tungstenite/native-tls" "handshake" ]; + "native-tls-crate" = [ "dep:native-tls-crate" ]; + "native-tls-vendored" = [ "native-tls" "native-tls-crate/vendored" "tungstenite/native-tls-vendored" ]; + "rustls" = [ "dep:rustls" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-pki-types" = [ "dep:rustls-pki-types" ]; + "rustls-tls-native-roots" = [ "__rustls-tls" "rustls-native-certs" ]; + "rustls-tls-webpki-roots" = [ "__rustls-tls" "webpki-roots" ]; + "tokio-native-tls" = [ "dep:tokio-native-tls" ]; + "tokio-rustls" = [ "dep:tokio-rustls" ]; + "url" = [ "tungstenite/url" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "connect" "default" "handshake" "stream" ]; + }; + "tokio-util" = rec { + crateName = "tokio-util"; + version = "0.7.18"; + edition = "2021"; + sha256 = "1600rd47pylwn7cap1k7s5nvdaa9j7w8kqigzp1qy7mh0p4cxscs"; + libName = "tokio_util"; + authors = [ + "Tokio Contributors " + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-core"; + packageId = "futures-core"; + } + { + name = "futures-sink"; + packageId = "futures-sink"; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + } + { + name = "hashbrown"; + packageId = "hashbrown 0.15.5"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "full" ]; + } + ]; + features = { + "__docs_rs" = [ "futures-util" ]; + "compat" = [ "futures-io" ]; + "full" = [ "codec" "compat" "io-util" "time" "net" "rt" "join-map" ]; + "futures-io" = [ "dep:futures-io" ]; + "futures-util" = [ "dep:futures-util" ]; + "hashbrown" = [ "dep:hashbrown" ]; + "io-util" = [ "io" "tokio/rt" "tokio/io-util" ]; + "join-map" = [ "rt" "hashbrown" ]; + "net" = [ "tokio/net" ]; + "rt" = [ "tokio/rt" "tokio/sync" "futures-util" ]; + "slab" = [ "dep:slab" ]; + "time" = [ "tokio/time" "slab" ]; + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "codec" "default" "futures-util" "hashbrown" "io" "join-map" "rt" ]; + }; + "tokio-vsock" = rec { + crateName = "tokio-vsock"; + version = "0.7.2"; + edition = "2018"; + sha256 = "1izis04x0my0mz8sklf9kp3x04ds8mdhiw5lw6rdm2a877wrwccb"; + libName = "tokio_vsock"; + authors = [ + "fsyncd" + "rust-vsock" + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures"; + packageId = "futures"; + } + { + name = "libc"; + packageId = "libc"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "net" "sync" ]; + } + { + name = "vsock"; + packageId = "vsock"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "rt" "io-util" ]; + } + ]; + features = { + "axum08" = [ "dep:axum08" ]; + "tonic010" = [ "dep:tonic010" ]; + "tonic011" = [ "dep:tonic011" ]; + "tonic012" = [ "dep:tonic012" ]; + "tonic013" = [ "dep:tonic013" ]; + "tonic014" = [ "dep:tonic014" ]; + "tonic05" = [ "dep:tonic05" ]; + "tonic06" = [ "dep:tonic06" ]; + "tonic07" = [ "dep:tonic07" ]; + "tonic08" = [ "dep:tonic08" ]; + "tonic09" = [ "dep:tonic09" ]; + }; + }; + "toml 0.8.23" = rec { + crateName = "toml"; + version = "0.8.23"; + edition = "2021"; + sha256 = "0qnkrq4lm2sdhp3l6cb6f26i8zbnhqb7mhbmksd550wxdfcyn6yw"; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_spanned"; + packageId = "serde_spanned 0.6.9"; + features = [ "serde" ]; + } + { + name = "toml_datetime"; + packageId = "toml_datetime 0.6.11"; + features = [ "serde" ]; + } + { + name = "toml_edit"; + packageId = "toml_edit 0.22.27"; + optional = true; + usesDefaultFeatures = false; + features = [ "serde" ]; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "default" = [ "parse" "display" ]; + "display" = [ "dep:toml_edit" "toml_edit?/display" ]; + "indexmap" = [ "dep:indexmap" ]; + "parse" = [ "dep:toml_edit" "toml_edit?/parse" ]; + "preserve_order" = [ "indexmap" ]; + "unbounded" = [ "toml_edit?/unbounded" ]; + }; + resolvedDefaultFeatures = [ "default" "display" "parse" ]; + }; + "toml 0.9.11+spec-1.1.0" = rec { + crateName = "toml"; + version = "0.9.11+spec-1.1.0"; + edition = "2021"; + sha256 = "0ikwmd5s9ndg6afxijaxjcgxw53sd9af3mmfzymf37rh92lckbzk"; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde_spanned"; + packageId = "serde_spanned 1.0.4"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "toml_datetime"; + packageId = "toml_datetime 0.7.5+spec-1.1.0"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "toml_parser"; + packageId = "toml_parser"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "toml_writer"; + packageId = "toml_writer"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "debug" = [ "std" "toml_parser?/debug" "dep:anstream" "dep:anstyle" ]; + "default" = [ "std" "serde" "parse" "display" ]; + "display" = [ "dep:toml_writer" ]; + "fast_hash" = [ "preserve_order" "dep:foldhash" ]; + "parse" = [ "dep:toml_parser" "dep:winnow" ]; + "preserve_order" = [ "dep:indexmap" "std" ]; + "serde" = [ "dep:serde_core" "toml_datetime/serde" "serde_spanned/serde" ]; + "std" = [ "indexmap?/std" "serde_core?/std" "toml_parser?/std" "toml_writer?/std" "toml_datetime/std" "serde_spanned/std" ]; + }; + resolvedDefaultFeatures = [ "default" "display" "parse" "serde" "std" ]; + }; + "toml_datetime 0.6.11" = rec { + crateName = "toml_datetime"; + version = "0.6.11"; + edition = "2021"; + sha256 = "077ix2hb1dcya49hmi1avalwbixmrs75zgzb3b2i7g2gizwdmk92"; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + optional = true; + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "serde" ]; + }; + "toml_datetime 0.7.5+spec-1.1.0" = rec { + crateName = "toml_datetime"; + version = "0.7.5+spec-1.1.0"; + edition = "2021"; + sha256 = "0iqkgvgsxmszpai53dbip7sf2igic39s4dby29dbqf1h9bnwzqcj"; + dependencies = [ + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde_core?/alloc" ]; + "default" = [ "std" ]; + "serde" = [ "dep:serde_core" ]; + "std" = [ "alloc" "serde_core?/std" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "serde" "std" ]; + }; + "toml_edit 0.22.27" = rec { + crateName = "toml_edit"; + version = "0.22.27"; + edition = "2021"; + sha256 = "16l15xm40404asih8vyjvnka9g0xs9i4hfb6ry3ph9g419k8rzj1"; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + features = [ "std" ]; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + } + { + name = "serde_spanned"; + packageId = "serde_spanned 0.6.9"; + optional = true; + features = [ "serde" ]; + } + { + name = "toml_datetime"; + packageId = "toml_datetime 0.6.11"; + } + { + name = "toml_write"; + packageId = "toml_write"; + optional = true; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + optional = true; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + ]; + features = { + "default" = [ "parse" "display" ]; + "display" = [ "dep:toml_write" ]; + "parse" = [ "dep:winnow" ]; + "perf" = [ "dep:kstring" ]; + "serde" = [ "dep:serde" "toml_datetime/serde" "dep:serde_spanned" ]; + "unstable-debug" = [ "winnow?/debug" ]; + }; + resolvedDefaultFeatures = [ "display" "parse" "serde" ]; + }; + "toml_edit 0.23.10+spec-1.0.0" = rec { + crateName = "toml_edit"; + version = "0.23.10+spec-1.0.0"; + edition = "2021"; + sha256 = "0saj5c676j8a3sqaj9akkp09wambg8aflji4zblwwa70azvvkj44"; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + features = [ "std" ]; + } + { + name = "toml_datetime"; + packageId = "toml_datetime 0.7.5+spec-1.1.0"; + } + { + name = "toml_parser"; + packageId = "toml_parser"; + optional = true; + } + { + name = "winnow"; + packageId = "winnow 0.7.14"; + optional = true; + } + ]; + features = { + "debug" = [ "toml_parser?/debug" "dep:anstream" "dep:anstyle" "display" ]; + "default" = [ "parse" "display" ]; + "display" = [ "dep:toml_writer" ]; + "parse" = [ "dep:toml_parser" "dep:winnow" ]; + "serde" = [ "dep:serde_core" "toml_datetime/serde" "dep:serde_spanned" ]; + }; + resolvedDefaultFeatures = [ "parse" ]; + }; + "toml_parser" = rec { + crateName = "toml_parser"; + version = "1.0.6+spec-1.1.0"; + edition = "2021"; + sha256 = "0i5zxv5y3z9g6r3gm6ly4q0hhkahh013q4rys2fz04cf195qn6d3"; + dependencies = [ + { + name = "winnow"; + packageId = "winnow 0.7.14"; + usesDefaultFeatures = false; + } + ]; + features = { + "debug" = [ "std" "dep:anstream" "dep:anstyle" ]; + "default" = [ "std" ]; + "simd" = [ "winnow/simd" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "toml_write" = rec { + crateName = "toml_write"; + version = "0.1.2"; + edition = "2021"; + sha256 = "008qlhqlqvljp1gpp9rn5cqs74gwvdgbvs92wnpq8y3jlz4zi6ax"; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "toml_writer" = rec { + crateName = "toml_writer"; + version = "1.0.6+spec-1.1.0"; + edition = "2021"; + sha256 = "01r6x42d1p8p5kzfsi1fm4dakm3w53vi69f2ivyqpvi1xm5g25mb"; + features = { + "default" = [ "std" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "std" ]; + }; + "tonic" = rec { + crateName = "tonic"; + version = "0.13.1"; + edition = "2021"; + sha256 = "1acvnjzh61y0m829mijj6z2nzqnwshdsnmbcl2g4spw3bahinn3y"; + authors = [ + "Lucio Franco " + ]; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + optional = true; + } + { + name = "axum"; + packageId = "axum"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "h2"; + packageId = "h2 0.4.13"; + optional = true; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "hyper"; + packageId = "hyper 1.8.1"; + optional = true; + features = [ "http1" "http2" ]; + } + { + name = "hyper-timeout"; + packageId = "hyper-timeout"; + optional = true; + } + { + name = "hyper-util"; + packageId = "hyper-util"; + optional = true; + features = [ "tokio" ]; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + } + { + name = "pin-project"; + packageId = "pin-project"; + } + { + name = "prost"; + packageId = "prost"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "socket2"; + packageId = "socket2 0.5.10"; + optional = true; + features = [ "all" ]; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "tokio-stream"; + packageId = "tokio-stream"; + usesDefaultFeatures = false; + } + { + name = "tower"; + packageId = "tower"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tracing"; + packageId = "tracing"; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + features = [ "rt-multi-thread" "macros" ]; + } + { + name = "tower"; + packageId = "tower"; + features = [ "full" ]; + } + ]; + features = { + "_tls-any" = [ "dep:tokio-rustls" "dep:tokio" "tokio?/rt" "tokio?/macros" ]; + "channel" = [ "dep:hyper" "hyper?/client" "dep:hyper-util" "hyper-util?/client-legacy" "dep:tower" "tower?/balance" "tower?/buffer" "tower?/discover" "tower?/limit" "tower?/util" "dep:tokio" "tokio?/time" "dep:hyper-timeout" ]; + "codegen" = [ "dep:async-trait" ]; + "default" = [ "router" "transport" "codegen" "prost" ]; + "deflate" = [ "dep:flate2" ]; + "gzip" = [ "dep:flate2" ]; + "prost" = [ "dep:prost" ]; + "router" = [ "dep:axum" "dep:tower" "tower?/util" ]; + "server" = [ "dep:h2" "dep:hyper" "hyper?/server" "dep:hyper-util" "hyper-util?/service" "hyper-util?/server-auto" "dep:socket2" "dep:tokio" "tokio?/macros" "tokio?/net" "tokio?/time" "tokio-stream/net" "dep:tower" "tower?/util" "tower?/limit" ]; + "tls-aws-lc" = [ "_tls-any" "tokio-rustls/aws-lc-rs" ]; + "tls-native-roots" = [ "_tls-any" "channel" "dep:rustls-native-certs" ]; + "tls-ring" = [ "_tls-any" "tokio-rustls/ring" ]; + "tls-webpki-roots" = [ "_tls-any" "channel" "dep:webpki-roots" ]; + "transport" = [ "server" "channel" ]; + "zstd" = [ "dep:zstd" ]; + }; + resolvedDefaultFeatures = [ "channel" "codegen" "default" "prost" "router" "server" "transport" ]; + }; + "tower" = rec { + crateName = "tower"; + version = "0.5.3"; + edition = "2018"; + sha256 = "1m5i3a2z1sgs8nnz1hgfq2nr4clpdmizlp1d9qsg358ma5iyzrgb"; + authors = [ + "Tower Maintainers " + ]; + dependencies = [ + { + name = "futures-core"; + packageId = "futures-core"; + optional = true; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + optional = true; + } + { + name = "slab"; + packageId = "slab"; + optional = true; + } + { + name = "sync_wrapper"; + packageId = "sync_wrapper 1.0.2"; + optional = true; + } + { + name = "tokio"; + packageId = "tokio"; + optional = true; + } + { + name = "tokio-util"; + packageId = "tokio-util"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + devDependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + usesDefaultFeatures = false; + features = [ "async-await-macro" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "macros" "sync" "test-util" "rt-multi-thread" ]; + } + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + features = { + "balance" = [ "discover" "load" "ready-cache" "make" "slab" "util" ]; + "buffer" = [ "tokio/sync" "tokio/rt" "tokio-util" "tracing" "pin-project-lite" ]; + "discover" = [ "futures-core" "pin-project-lite" ]; + "filter" = [ "futures-util" "pin-project-lite" ]; + "full" = [ "balance" "buffer" "discover" "filter" "hedge" "limit" "load" "load-shed" "make" "ready-cache" "reconnect" "retry" "spawn-ready" "steer" "timeout" "util" ]; + "futures-core" = [ "dep:futures-core" ]; + "futures-util" = [ "dep:futures-util" ]; + "hdrhistogram" = [ "dep:hdrhistogram" ]; + "hedge" = [ "util" "filter" "futures-util" "hdrhistogram" "tokio/time" "tracing" ]; + "indexmap" = [ "dep:indexmap" ]; + "limit" = [ "tokio/time" "tokio/sync" "tokio-util" "tracing" "pin-project-lite" ]; + "load" = [ "tokio/time" "tracing" "pin-project-lite" ]; + "load-shed" = [ "pin-project-lite" ]; + "log" = [ "tracing/log" ]; + "make" = [ "pin-project-lite" "tokio" ]; + "pin-project-lite" = [ "dep:pin-project-lite" ]; + "ready-cache" = [ "futures-core" "futures-util" "indexmap" "tokio/sync" "tracing" "pin-project-lite" ]; + "reconnect" = [ "make" "tracing" ]; + "retry" = [ "tokio/time" "util" ]; + "slab" = [ "dep:slab" ]; + "spawn-ready" = [ "futures-util" "tokio/sync" "tokio/rt" "util" "tracing" ]; + "sync_wrapper" = [ "dep:sync_wrapper" ]; + "timeout" = [ "pin-project-lite" "tokio/time" ]; + "tokio" = [ "dep:tokio" ]; + "tokio-util" = [ "dep:tokio-util" ]; + "tracing" = [ "dep:tracing" ]; + "util" = [ "futures-core" "futures-util" "pin-project-lite" "sync_wrapper" ]; + }; + resolvedDefaultFeatures = [ "balance" "buffer" "discover" "futures-core" "futures-util" "indexmap" "limit" "load" "log" "make" "pin-project-lite" "ready-cache" "retry" "slab" "sync_wrapper" "timeout" "tokio" "tokio-util" "tracing" "util" ]; + }; + "tower-cookies" = rec { + crateName = "tower-cookies"; + version = "0.11.0"; + edition = "2021"; + sha256 = "0djsnn9s7pshs7sdpplv4rawkv7dxklp9fslci31gps57hz5l6qm"; + libName = "tower_cookies"; + authors = [ + "imbolc" + ]; + dependencies = [ + { + name = "axum-core"; + packageId = "axum-core"; + optional = true; + } + { + name = "cookie"; + packageId = "cookie"; + features = [ "percent-encode" ]; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + ]; + features = { + "axum-core" = [ "dep:axum-core" ]; + "default" = [ "axum-core" ]; + "private" = [ "cookie/secure" ]; + "signed" = [ "cookie/signed" ]; + }; + resolvedDefaultFeatures = [ "axum-core" "default" "private" "signed" ]; + }; + "tower-http" = rec { + crateName = "tower-http"; + version = "0.6.8"; + edition = "2018"; + sha256 = "1y514jwzbyrmrkbaajpwmss4rg0mak82k16d6588w9ncaffmbrnl"; + libName = "tower_http"; + authors = [ + "Tower Maintainers " + ]; + dependencies = [ + { + name = "bitflags"; + packageId = "bitflags 2.10.0"; + } + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + optional = true; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + optional = true; + } + { + name = "iri-string"; + packageId = "iri-string"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "tower"; + packageId = "tower"; + optional = true; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "futures-util"; + packageId = "futures-util"; + } + { + name = "http-body"; + packageId = "http-body 1.0.1"; + } + { + name = "http-body-util"; + packageId = "http-body-util"; + } + { + name = "tower"; + packageId = "tower"; + features = [ "buffer" "util" "retry" "make" "timeout" ]; + } + ]; + features = { + "async-compression" = [ "dep:async-compression" ]; + "auth" = [ "base64" "validate-request" ]; + "base64" = [ "dep:base64" ]; + "catch-panic" = [ "tracing" "futures-util/std" "dep:http-body" "dep:http-body-util" ]; + "compression-br" = [ "async-compression/brotli" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; + "compression-deflate" = [ "async-compression/zlib" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; + "compression-full" = [ "compression-br" "compression-deflate" "compression-gzip" "compression-zstd" ]; + "compression-gzip" = [ "async-compression/gzip" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; + "compression-zstd" = [ "async-compression/zstd" "futures-core" "dep:http-body" "tokio-util" "tokio" ]; + "decompression-br" = [ "async-compression/brotli" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; + "decompression-deflate" = [ "async-compression/zlib" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; + "decompression-full" = [ "decompression-br" "decompression-deflate" "decompression-gzip" "decompression-zstd" ]; + "decompression-gzip" = [ "async-compression/gzip" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; + "decompression-zstd" = [ "async-compression/zstd" "futures-core" "dep:http-body" "dep:http-body-util" "tokio-util" "tokio" ]; + "follow-redirect" = [ "futures-util" "dep:http-body" "iri-string" "tower/util" ]; + "fs" = [ "futures-core" "futures-util" "dep:http-body" "dep:http-body-util" "tokio/fs" "tokio-util/io" "tokio/io-util" "dep:http-range-header" "mime_guess" "mime" "percent-encoding" "httpdate" "set-status" "futures-util/alloc" "tracing" ]; + "full" = [ "add-extension" "auth" "catch-panic" "compression-full" "cors" "decompression-full" "follow-redirect" "fs" "limit" "map-request-body" "map-response-body" "metrics" "normalize-path" "propagate-header" "redirect" "request-id" "sensitive-headers" "set-header" "set-status" "timeout" "trace" "util" "validate-request" ]; + "futures-core" = [ "dep:futures-core" ]; + "futures-util" = [ "dep:futures-util" ]; + "httpdate" = [ "dep:httpdate" ]; + "iri-string" = [ "dep:iri-string" ]; + "limit" = [ "dep:http-body" "dep:http-body-util" ]; + "metrics" = [ "dep:http-body" "tokio/time" ]; + "mime" = [ "dep:mime" ]; + "mime_guess" = [ "dep:mime_guess" ]; + "percent-encoding" = [ "dep:percent-encoding" ]; + "request-id" = [ "uuid" ]; + "timeout" = [ "dep:http-body" "tokio/time" ]; + "tokio" = [ "dep:tokio" ]; + "tokio-util" = [ "dep:tokio-util" ]; + "tower" = [ "dep:tower" ]; + "trace" = [ "dep:http-body" "tracing" ]; + "tracing" = [ "dep:tracing" ]; + "util" = [ "tower" ]; + "uuid" = [ "dep:uuid" ]; + "validate-request" = [ "mime" ]; + }; + resolvedDefaultFeatures = [ "catch-panic" "cors" "default" "follow-redirect" "futures-util" "iri-string" "map-response-body" "tower" "trace" "tracing" ]; + }; + "tower-layer" = rec { + crateName = "tower-layer"; + version = "0.3.3"; + edition = "2018"; + sha256 = "03kq92fdzxin51w8iqix06dcfgydyvx7yr6izjq0p626v9n2l70j"; + libName = "tower_layer"; + authors = [ + "Tower Maintainers " + ]; + + }; + "tower-service" = rec { + crateName = "tower-service"; + version = "0.3.3"; + edition = "2018"; + sha256 = "1hzfkvkci33ra94xjx64vv3pp0sq346w06fpkcdwjcid7zhvdycd"; + libName = "tower_service"; + authors = [ + "Tower Maintainers " + ]; + + }; + "tower-sessions" = rec { + crateName = "tower-sessions"; + version = "0.14.0"; + edition = "2021"; + sha256 = "1lr7956jsslzsp2c37aqvfv9avg6jxxrpzh5c12ax3ryy88mk823"; + libName = "tower_sessions"; + authors = [ + "Max Countryman " + ]; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "time"; + packageId = "time"; + features = [ "serde" ]; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "sync" ]; + } + { + name = "tower-cookies"; + packageId = "tower-cookies"; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tower-sessions-core"; + packageId = "tower-sessions-core"; + usesDefaultFeatures = false; + } + { + name = "tower-sessions-memory-store"; + packageId = "tower-sessions-memory-store"; + optional = true; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "log" ]; + } + ]; + devDependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "time"; + packageId = "time"; + } + { + name = "tokio"; + packageId = "tokio"; + features = [ "full" ]; + } + { + name = "tower-cookies"; + packageId = "tower-cookies"; + } + { + name = "tower-sessions-core"; + packageId = "tower-sessions-core"; + usesDefaultFeatures = false; + features = [ "deletion-task" ]; + } + ]; + features = { + "axum-core" = [ "tower-sessions-core/axum-core" ]; + "default" = [ "axum-core" "memory-store" ]; + "memory-store" = [ "tower-sessions-memory-store" ]; + "private" = [ "tower-cookies/private" ]; + "signed" = [ "tower-cookies/signed" ]; + "tower-sessions-memory-store" = [ "dep:tower-sessions-memory-store" ]; + }; + resolvedDefaultFeatures = [ "axum-core" "default" "memory-store" "tower-sessions-memory-store" ]; + }; + "tower-sessions-cookie-store" = rec { + crateName = "tower-sessions-cookie-store"; + version = "0.5.2"; + edition = "2024"; + sha256 = "0ivj7xz2l8qx1jxhsaiwm5rlxb43lfssiql480mipabrnm0vwcc8"; + libName = "tower_sessions_cookie_store"; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "time"; + packageId = "time"; + features = [ "serde" ]; + } + { + name = "tower-cookies"; + packageId = "tower-cookies"; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "tower-sessions-core"; + packageId = "tower-sessions-core"; + } + { + name = "tracing"; + packageId = "tracing"; + } + ]; + features = { + "default" = [ "signed" ]; + "key-expansion" = [ "dep:cookie" "cookie/key-expansion" ]; + "private" = [ "tower-cookies/private" ]; + "signed" = [ "tower-cookies/signed" ]; + }; + resolvedDefaultFeatures = [ "default" "private" "signed" ]; + }; + "tower-sessions-core" = rec { + crateName = "tower-sessions-core"; + version = "0.14.0"; + edition = "2021"; + sha256 = "0nrmgvcb2ljcny5k52fnc2d5cm7pb0qbr9mpa5vnnmv591hcx36f"; + libName = "tower_sessions_core"; + authors = [ + "Max Countryman " + ]; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "axum-core"; + packageId = "axum-core"; + optional = true; + } + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "futures"; + packageId = "futures"; + usesDefaultFeatures = false; + features = [ "async-await" ]; + } + { + name = "http"; + packageId = "http 1.4.0"; + } + { + name = "parking_lot"; + packageId = "parking_lot"; + features = [ "serde" ]; + } + { + name = "rand"; + packageId = "rand 0.8.5"; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" "rc" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "time"; + packageId = "time"; + features = [ "serde" ]; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "sync" ]; + } + { + name = "tracing"; + packageId = "tracing"; + features = [ "log" ]; + } + ]; + devDependencies = [ + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "sync" "rt" "macros" ]; + } + ]; + features = { + "axum-core" = [ "dep:axum-core" ]; + "deletion-task" = [ "tokio/time" ]; + }; + resolvedDefaultFeatures = [ "axum-core" "default" ]; + }; + "tower-sessions-memory-store" = rec { + crateName = "tower-sessions-memory-store"; + version = "0.14.0"; + edition = "2021"; + sha256 = "0hijsg9lnk27rack8k56s2b93mlnangxzm8xhdd1680l5sgr01gv"; + libName = "tower_sessions_memory_store"; + authors = [ + "Max Countryman " + ]; + dependencies = [ + { + name = "async-trait"; + packageId = "async-trait"; + } + { + name = "time"; + packageId = "time"; + } + { + name = "tokio"; + packageId = "tokio"; + usesDefaultFeatures = false; + features = [ "sync" ]; + } + { + name = "tower-sessions-core"; + packageId = "tower-sessions-core"; + usesDefaultFeatures = false; + } + ]; + + }; + "tracing" = rec { + crateName = "tracing"; + version = "0.1.44"; + edition = "2018"; + sha256 = "006ilqkg1lmfdh3xhg3z762izfwmxcvz0w7m4qx2qajbz9i1drv3"; + authors = [ + "Eliza Weisman " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "log"; + packageId = "log"; + optional = true; + } + { + name = "pin-project-lite"; + packageId = "pin-project-lite"; + } + { + name = "tracing-attributes"; + packageId = "tracing-attributes"; + optional = true; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "log"; + packageId = "log"; + } + ]; + features = { + "attributes" = [ "tracing-attributes" ]; + "default" = [ "std" "attributes" ]; + "log" = [ "dep:log" ]; + "log-always" = [ "log" ]; + "std" = [ "tracing-core/std" ]; + "tracing-attributes" = [ "dep:tracing-attributes" ]; + "valuable" = [ "tracing-core/valuable" ]; + }; + resolvedDefaultFeatures = [ "attributes" "default" "log" "std" "tracing-attributes" "valuable" ]; + }; + "tracing-attributes" = rec { + crateName = "tracing-attributes"; + version = "0.1.31"; + edition = "2018"; + sha256 = "1np8d77shfvz0n7camx2bsf1qw0zg331lra0hxb4cdwnxjjwz43l"; + procMacro = true; + libName = "tracing_attributes"; + authors = [ + "Tokio Contributors " + "Eliza Weisman " + "David Barsky " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "full" "parsing" "printing" "visit-mut" "clone-impls" "extra-traits" "proc-macro" ]; + } + ]; + features = { + }; + }; + "tracing-core" = rec { + crateName = "tracing-core"; + version = "0.1.36"; + edition = "2018"; + sha256 = "16mpbz6p8vd6j7sf925k9k8wzvm9vdfsjbynbmaxxyq6v7wwm5yv"; + libName = "tracing_core"; + authors = [ + "Tokio Contributors " + ]; + dependencies = [ + { + name = "once_cell"; + packageId = "once_cell"; + optional = true; + } + { + name = "valuable"; + packageId = "valuable"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."tracing_unstable" or false); + } + ]; + features = { + "default" = [ "std" "valuable?/std" ]; + "once_cell" = [ "dep:once_cell" ]; + "std" = [ "once_cell" ]; + "valuable" = [ "dep:valuable" ]; + }; + resolvedDefaultFeatures = [ "default" "once_cell" "std" "valuable" ]; + }; + "tracing-error" = rec { + crateName = "tracing-error"; + version = "0.2.1"; + edition = "2018"; + sha256 = "1nzk6qcvhmxxy3lw1nj71anmfmvxlnk78l5lym1389vs1l1825cb"; + libName = "tracing_error"; + authors = [ + "Eliza Weisman " + "Jane Lusby " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "tracing"; + packageId = "tracing"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + usesDefaultFeatures = false; + features = [ "registry" "fmt" ]; + } + ]; + features = { + "default" = [ "traced-error" ]; + }; + resolvedDefaultFeatures = [ "default" "traced-error" ]; + }; + "tracing-indicatif" = rec { + crateName = "tracing-indicatif"; + version = "0.3.9"; + edition = "2021"; + sha256 = "188anka0xqrjbd7bzj41854rqvf02qszs9l2jzpr7n0c1r1wl0c2"; + libName = "tracing_indicatif"; + dependencies = [ + { + name = "indicatif"; + packageId = "indicatif"; + features = [ "in_memory" ]; + } + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + } + { + name = "tracing-subscriber"; + packageId = "tracing-subscriber"; + } + ]; + + }; + "tracing-log" = rec { + crateName = "tracing-log"; + version = "0.2.0"; + edition = "2018"; + sha256 = "1hs77z026k730ij1a9dhahzrl0s073gfa2hm5p0fbl0b80gmz1gf"; + libName = "tracing_log"; + authors = [ + "Tokio Contributors " + ]; + dependencies = [ + { + name = "log"; + packageId = "log"; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + } + ]; + features = { + "ahash" = [ "dep:ahash" ]; + "default" = [ "log-tracer" "std" ]; + "interest-cache" = [ "lru" "ahash" ]; + "lru" = [ "dep:lru" ]; + "std" = [ "log/std" ]; + }; + resolvedDefaultFeatures = [ "log-tracer" "std" ]; + }; + "tracing-serde" = rec { + crateName = "tracing-serde"; + version = "0.2.0"; + edition = "2018"; + sha256 = "1wbgzi364vzfswfkvy48a3p0z5xmv98sx342r57sil70ggmiljvh"; + libName = "tracing_serde"; + authors = [ + "Tokio Contributors " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + } + { + name = "valuable"; + packageId = "valuable"; + rename = "valuable_crate"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."tracing_unstable" or false); + } + { + name = "valuable-serde"; + packageId = "valuable-serde"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."tracing_unstable" or false); + } + ]; + features = { + "valuable" = [ "valuable_crate" "valuable-serde" "tracing-core/valuable" ]; + "valuable-serde" = [ "dep:valuable-serde" ]; + "valuable_crate" = [ "dep:valuable_crate" ]; + }; + resolvedDefaultFeatures = [ "valuable" "valuable-serde" "valuable_crate" ]; + }; + "tracing-subscriber" = rec { + crateName = "tracing-subscriber"; + version = "0.3.22"; + edition = "2018"; + sha256 = "07hz575a0p1c2i4xw3gs3hkrykhndnkbfhyqdwjhvayx4ww18c1g"; + libName = "tracing_subscriber"; + authors = [ + "Eliza Weisman " + "David Barsky " + "Tokio Contributors " + ]; + dependencies = [ + { + name = "matchers"; + packageId = "matchers"; + optional = true; + } + { + name = "nu-ansi-term"; + packageId = "nu-ansi-term"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + optional = true; + } + { + name = "regex-automata"; + packageId = "regex-automata"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + } + { + name = "serde_json"; + packageId = "serde_json"; + optional = true; + } + { + name = "sharded-slab"; + packageId = "sharded-slab"; + optional = true; + } + { + name = "smallvec"; + packageId = "smallvec"; + optional = true; + } + { + name = "thread_local"; + packageId = "thread_local"; + optional = true; + } + { + name = "tracing"; + packageId = "tracing"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "tracing-core"; + packageId = "tracing-core"; + usesDefaultFeatures = false; + } + { + name = "tracing-log"; + packageId = "tracing-log"; + optional = true; + usesDefaultFeatures = false; + features = [ "log-tracer" "std" ]; + } + { + name = "tracing-serde"; + packageId = "tracing-serde"; + optional = true; + } + { + name = "valuable"; + packageId = "valuable"; + rename = "valuable_crate"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."tracing_unstable" or false); + } + { + name = "valuable-serde"; + packageId = "valuable-serde"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (target."tracing_unstable" or false); + } + ]; + devDependencies = [ + { + name = "tracing"; + packageId = "tracing"; + } + { + name = "tracing-log"; + packageId = "tracing-log"; + } + ]; + features = { + "ansi" = [ "fmt" "nu-ansi-term" ]; + "chrono" = [ "dep:chrono" ]; + "default" = [ "smallvec" "fmt" "ansi" "tracing-log" "std" ]; + "env-filter" = [ "matchers" "once_cell" "tracing" "std" "thread_local" "dep:regex-automata" ]; + "fmt" = [ "registry" "std" ]; + "json" = [ "tracing-serde" "serde" "serde_json" ]; + "local-time" = [ "time/local-offset" ]; + "matchers" = [ "dep:matchers" ]; + "nu-ansi-term" = [ "dep:nu-ansi-term" ]; + "once_cell" = [ "dep:once_cell" ]; + "parking_lot" = [ "dep:parking_lot" ]; + "registry" = [ "sharded-slab" "thread_local" "std" ]; + "serde" = [ "dep:serde" ]; + "serde_json" = [ "dep:serde_json" ]; + "sharded-slab" = [ "dep:sharded-slab" ]; + "smallvec" = [ "dep:smallvec" ]; + "std" = [ "alloc" "tracing-core/std" ]; + "thread_local" = [ "dep:thread_local" ]; + "time" = [ "dep:time" ]; + "tracing" = [ "dep:tracing" ]; + "tracing-log" = [ "dep:tracing-log" ]; + "tracing-serde" = [ "dep:tracing-serde" ]; + "valuable" = [ "tracing-core/valuable" "valuable_crate" "valuable-serde" "tracing-serde/valuable" ]; + "valuable-serde" = [ "dep:valuable-serde" ]; + "valuable_crate" = [ "dep:valuable_crate" ]; + }; + resolvedDefaultFeatures = [ "alloc" "ansi" "default" "env-filter" "fmt" "json" "matchers" "nu-ansi-term" "once_cell" "registry" "serde" "serde_json" "sharded-slab" "smallvec" "std" "thread_local" "tracing" "tracing-log" "tracing-serde" "valuable" "valuable-serde" "valuable_crate" ]; + }; + "try-lock" = rec { + crateName = "try-lock"; + version = "0.2.5"; + edition = "2015"; + sha256 = "0jqijrrvm1pyq34zn1jmy2vihd4jcrjlvsh4alkjahhssjnsn8g4"; + libName = "try_lock"; + authors = [ + "Sean McArthur " + ]; + + }; + "tungstenite 0.26.2" = rec { + crateName = "tungstenite"; + version = "0.26.2"; + edition = "2021"; + sha256 = "04rwwcxx95m3avi46rmn0kmpb6nynqimnla3v2qwn3k8argcp4s7"; + authors = [ + "Alexey Galakhov" + "Daniel Abramov" + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "data-encoding"; + packageId = "data-encoding"; + optional = true; + } + { + name = "http"; + packageId = "http 1.4.0"; + optional = true; + } + { + name = "httparse"; + packageId = "httparse"; + optional = true; + } + { + name = "log"; + packageId = "log"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "sha1"; + packageId = "sha1"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "utf-8"; + packageId = "utf-8"; + } + ]; + devDependencies = [ + { + name = "rand"; + packageId = "rand 0.9.2"; + } + ]; + features = { + "__rustls-tls" = [ "rustls" "rustls-pki-types" ]; + "data-encoding" = [ "dep:data-encoding" ]; + "default" = [ "handshake" ]; + "handshake" = [ "data-encoding" "http" "httparse" "sha1" ]; + "http" = [ "dep:http" ]; + "httparse" = [ "dep:httparse" ]; + "native-tls" = [ "native-tls-crate" ]; + "native-tls-crate" = [ "dep:native-tls-crate" ]; + "native-tls-vendored" = [ "native-tls" "native-tls-crate/vendored" ]; + "rustls" = [ "dep:rustls" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-pki-types" = [ "dep:rustls-pki-types" ]; + "rustls-tls-native-roots" = [ "__rustls-tls" "rustls-native-certs" ]; + "rustls-tls-webpki-roots" = [ "__rustls-tls" "webpki-roots" ]; + "sha1" = [ "dep:sha1" ]; + "url" = [ "dep:url" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "data-encoding" "handshake" "http" "httparse" "sha1" ]; + }; + "tungstenite 0.28.0" = rec { + crateName = "tungstenite"; + version = "0.28.0"; + edition = "2021"; + sha256 = "0hll4l62lk77zqzgps04689skpk555lcpmi3hhyyn2as9v4dqa46"; + authors = [ + "Alexey Galakhov" + "Daniel Abramov" + ]; + dependencies = [ + { + name = "bytes"; + packageId = "bytes"; + } + { + name = "data-encoding"; + packageId = "data-encoding"; + optional = true; + } + { + name = "http"; + packageId = "http 1.4.0"; + optional = true; + } + { + name = "httparse"; + packageId = "httparse"; + optional = true; + } + { + name = "log"; + packageId = "log"; + } + { + name = "rand"; + packageId = "rand 0.9.2"; + } + { + name = "sha1"; + packageId = "sha1"; + optional = true; + } + { + name = "thiserror"; + packageId = "thiserror 2.0.18"; + } + { + name = "utf-8"; + packageId = "utf-8"; + } + ]; + devDependencies = [ + { + name = "rand"; + packageId = "rand 0.9.2"; + } + ]; + features = { + "__rustls-tls" = [ "rustls" "rustls-pki-types" ]; + "data-encoding" = [ "dep:data-encoding" ]; + "default" = [ "handshake" ]; + "handshake" = [ "data-encoding" "http" "httparse" "sha1" ]; + "http" = [ "dep:http" ]; + "httparse" = [ "dep:httparse" ]; + "native-tls" = [ "native-tls-crate" ]; + "native-tls-crate" = [ "dep:native-tls-crate" ]; + "native-tls-vendored" = [ "native-tls" "native-tls-crate/vendored" ]; + "rustls" = [ "dep:rustls" ]; + "rustls-native-certs" = [ "dep:rustls-native-certs" ]; + "rustls-pki-types" = [ "dep:rustls-pki-types" ]; + "rustls-tls-native-roots" = [ "__rustls-tls" "rustls-native-certs" ]; + "rustls-tls-webpki-roots" = [ "__rustls-tls" "webpki-roots" ]; + "sha1" = [ "dep:sha1" ]; + "url" = [ "dep:url" ]; + "webpki-roots" = [ "dep:webpki-roots" ]; + }; + resolvedDefaultFeatures = [ "data-encoding" "handshake" "http" "httparse" "sha1" ]; + }; + "twox-hash" = rec { + crateName = "twox-hash"; + version = "2.1.2"; + edition = "2021"; + sha256 = "1721278f1yc5zvkpdb8gsb1x6nlfjdmwm5fk9ff3fismcxmi78wy"; + libName = "twox_hash"; + authors = [ + "Jake Goulding " + ]; + dependencies = [ + { + name = "rand"; + packageId = "rand 0.9.2"; + optional = true; + usesDefaultFeatures = false; + features = [ "thread_rng" ]; + } + ]; + features = { + "default" = [ "random" "xxhash32" "xxhash64" "xxhash3_64" "xxhash3_128" "std" ]; + "random" = [ "dep:rand" ]; + "serialize" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "random" "std" "xxhash32" "xxhash3_128" "xxhash3_64" "xxhash64" ]; + }; + "typenum" = rec { + crateName = "typenum"; + version = "1.19.0"; + edition = "2018"; + sha256 = "1fw2mpbn2vmqan56j1b3fbpcdg80mz26fm53fs16bq5xcq84hban"; + authors = [ + "Paho Lurie-Gregg " + "Andre Bogus " + ]; + features = { + "scale-info" = [ "dep:scale-info" ]; + "scale_info" = [ "scale-info/derive" ]; + }; + }; + "ulid" = rec { + crateName = "ulid"; + version = "1.2.1"; + edition = "2018"; + sha256 = "1ghzggz7194hw345idz8afd8g1lw8qmknlhl7ka3j6ysj5jvy3a7"; + authors = [ + "dylanhart " + ]; + dependencies = [ + { + name = "rand"; + packageId = "rand 0.9.2"; + optional = true; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + } + { + name = "web-time"; + packageId = "web-time"; + target = { target, features }: (target.name == "wasm32-unknown-unknown"); + } + ]; + features = { + "default" = [ "std" ]; + "postgres" = [ "dep:postgres-types" "dep:bytes" ]; + "rand" = [ "dep:rand" ]; + "rkyv" = [ "dep:rkyv" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "rand" ]; + "uuid" = [ "dep:uuid" ]; + }; + resolvedDefaultFeatures = [ "default" "rand" "serde" "std" ]; + }; + "uluru" = rec { + crateName = "uluru"; + version = "3.1.0"; + edition = "2021"; + sha256 = "1njp6vvy1mm8idnsp6ljyxx5znfsk3xkmk9cr2am0vkfwmlj92kw"; + authors = [ + "The Servo Project Developers" + "Matt Brubeck " + ]; + dependencies = [ + { + name = "arrayvec"; + packageId = "arrayvec"; + usesDefaultFeatures = false; + } + ]; + + }; + "uname" = rec { + crateName = "uname"; + version = "0.1.1"; + edition = "2015"; + sha256 = "1j1xd1rryml4j1hf07kahva9d5ym8m9jz9z20hfdpr1jrbq8jbxp"; + authors = [ + "Ignacio Corderi " + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + ]; + + }; + "uncased" = rec { + crateName = "uncased"; + version = "0.9.10"; + edition = "2018"; + sha256 = "15q6r6g4fszr8c2lzg9z9k9g52h8g29h24awda3d72cyw37qzf71"; + authors = [ + "Sergio Benitez " + ]; + buildDependencies = [ + { + name = "version_check"; + packageId = "version_check"; + } + ]; + features = { + "default" = [ "alloc" ]; + "serde" = [ "dep:serde" ]; + "with-serde" = [ "serde" ]; + "with-serde-alloc" = [ "serde" "serde/alloc" "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" ]; + }; + "unicode-bidi" = rec { + crateName = "unicode-bidi"; + version = "0.3.18"; + edition = "2018"; + sha256 = "1xcxwbsqa24b8vfchhzyyzgj0l6bn51ib5v8j6krha0m77dva72w"; + libName = "unicode_bidi"; + authors = [ + "The Servo Project Developers" + ]; + features = { + "default" = [ "std" "hardcoded-data" ]; + "flame" = [ "dep:flame" ]; + "flame_it" = [ "flame" "flamer" ]; + "flamer" = [ "dep:flamer" ]; + "serde" = [ "dep:serde" ]; + "smallvec" = [ "dep:smallvec" ]; + "with_serde" = [ "serde" ]; + }; + resolvedDefaultFeatures = [ "default" "hardcoded-data" "std" ]; + }; + "unicode-bom" = rec { + crateName = "unicode-bom"; + version = "2.0.3"; + edition = "2018"; + sha256 = "05s2sqyjanqrbds3fxam35f92npp5ci2wz9zg7v690r0448mvv3y"; + libName = "unicode_bom"; + authors = [ + "Phil Booth " + ]; + + }; + "unicode-id" = rec { + crateName = "unicode-id"; + version = "0.3.6"; + edition = "2015"; + sha256 = "1015prrd0dmy1p6zxymi7zjnnc5y6y6p2xp4rd1w09wrf272ifkh"; + libName = "unicode_id"; + authors = [ + "Boshen " + "erick.tryzelaar " + "kwantam " + "Manish Goregaokar " + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" "no_std" ]; + }; + "unicode-ident" = rec { + crateName = "unicode-ident"; + version = "1.0.22"; + edition = "2018"; + sha256 = "1x8xrz17vqi6qmkkcqr8cyf0an76ig7390j9cnqnk47zyv2gf4lk"; + libName = "unicode_ident"; + authors = [ + "David Tolnay " + ]; + + }; + "unicode-linebreak" = rec { + crateName = "unicode-linebreak"; + version = "0.1.5"; + edition = "2021"; + sha256 = "07spj2hh3daajg335m4wdav6nfkl0f6c0q72lc37blr97hych29v"; + libName = "unicode_linebreak"; + authors = [ + "Axel Forsman " + ]; + + }; + "unicode-normalization" = rec { + crateName = "unicode-normalization"; + version = "0.1.25"; + edition = "2018"; + sha256 = "1s76dcrxw7vs32yhpi0p074apdc3s7lak7809f3qvclwij3zdm2z"; + libName = "unicode_normalization"; + authors = [ + "kwantam " + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "tinyvec"; + packageId = "tinyvec"; + features = [ "alloc" ]; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "unicode-properties" = rec { + crateName = "unicode-properties"; + version = "0.1.4"; + edition = "2021"; + sha256 = "07fpm3sqq7lm9gmgpxa93z31q933h3c3ypfwy4cdh6l42g3miw3x"; + libName = "unicode_properties"; + authors = [ + "Charles Lew " + "Manish Goregaokar " + ]; + features = { + "default" = [ "general-category" "emoji" ]; + }; + resolvedDefaultFeatures = [ "default" "emoji" "general-category" ]; + }; + "unicode-segmentation" = rec { + crateName = "unicode-segmentation"; + version = "1.12.0"; + edition = "2018"; + sha256 = "14qla2jfx74yyb9ds3d2mpwpa4l4lzb9z57c6d2ba511458z5k7n"; + libName = "unicode_segmentation"; + authors = [ + "kwantam " + "Manish Goregaokar " + ]; + features = { + }; + }; + "unicode-width 0.1.14" = rec { + crateName = "unicode-width"; + version = "0.1.14"; + edition = "2021"; + sha256 = "1bzn2zv0gp8xxbxbhifw778a7fc93pa6a1kj24jgg9msj07f7mkx"; + libName = "unicode_width"; + authors = [ + "kwantam " + "Manish Goregaokar " + ]; + features = { + "compiler_builtins" = [ "dep:compiler_builtins" ]; + "core" = [ "dep:core" ]; + "default" = [ "cjk" ]; + "rustc-dep-of-std" = [ "std" "core" "compiler_builtins" ]; + "std" = [ "dep:std" ]; + }; + resolvedDefaultFeatures = [ "cjk" "default" ]; + }; + "unicode-width 0.2.2" = rec { + crateName = "unicode-width"; + version = "0.2.2"; + edition = "2021"; + sha256 = "0m7jjzlcccw716dy9423xxh0clys8pfpllc5smvfxrzdf66h9b5l"; + libName = "unicode_width"; + authors = [ + "kwantam " + "Manish Goregaokar " + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "cjk" ]; + "rustc-dep-of-std" = [ "std" "core" ]; + "std" = [ "dep:std" ]; + }; + resolvedDefaultFeatures = [ "cjk" "default" ]; + }; + "universal-hash" = rec { + crateName = "universal-hash"; + version = "0.5.1"; + edition = "2021"; + sha256 = "1sh79x677zkncasa95wz05b36134822w6qxmi1ck05fwi33f47gw"; + libName = "universal_hash"; + authors = [ + "RustCrypto Developers" + ]; + dependencies = [ + { + name = "crypto-common"; + packageId = "crypto-common"; + } + { + name = "subtle"; + packageId = "subtle"; + usesDefaultFeatures = false; + } + ]; + features = { + "std" = [ "crypto-common/std" ]; + }; + }; + "unsafe-libyaml" = rec { + crateName = "unsafe-libyaml"; + version = "0.2.11"; + edition = "2021"; + crateBin = []; + sha256 = "0qdq69ffl3v5pzx9kzxbghzn0fzn266i1xn70y88maybz9csqfk7"; + libName = "unsafe_libyaml"; + authors = [ + "David Tolnay " + ]; + + }; + "untrusted" = rec { + crateName = "untrusted"; + version = "0.9.0"; + edition = "2018"; + sha256 = "1ha7ib98vkc538x0z60gfn0fc5whqdd85mb87dvisdcaifi6vjwf"; + authors = [ + "Brian Smith " + ]; + + }; + "ureq" = rec { + crateName = "ureq"; + version = "2.12.1"; + edition = "2018"; + sha256 = "07f0qdn6459k4rmdnkivkz0y7j28vxh5c8q8sr0gcxgdfxiadl82"; + authors = [ + "Martin Algesten " + "Jacob Hoffman-Andrews " + ]; + dependencies = [ + { + name = "base64"; + packageId = "base64 0.22.1"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "native-tls"; + packageId = "native-tls"; + optional = true; + } + { + name = "once_cell"; + packageId = "once_cell"; + } + { + name = "url"; + packageId = "url"; + } + ]; + features = { + "brotli" = [ "dep:brotli-decompressor" ]; + "charset" = [ "dep:encoding_rs" ]; + "cookies" = [ "dep:cookie" "dep:cookie_store" ]; + "default" = [ "tls" "gzip" ]; + "gzip" = [ "dep:flate2" ]; + "http-crate" = [ "dep:http" ]; + "http-interop" = [ "dep:http-02" ]; + "json" = [ "dep:serde" "dep:serde_json" ]; + "native-certs" = [ "dep:rustls-native-certs" ]; + "native-tls" = [ "dep:native-tls" ]; + "socks-proxy" = [ "dep:socks" ]; + "testdeps" = [ "dep:hootbin" ]; + "tls" = [ "dep:webpki-roots" "dep:rustls" "dep:rustls-pki-types" ]; + }; + resolvedDefaultFeatures = [ "native-tls" ]; + }; + "url" = rec { + crateName = "url"; + version = "2.5.8"; + edition = "2018"; + sha256 = "1v8f7nx3hpr1qh76if0a04sj08k86amsq4h8cvpw6wvk76jahrzz"; + authors = [ + "The rust-url developers" + ]; + dependencies = [ + { + name = "form_urlencoded"; + packageId = "form_urlencoded"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "idna"; + packageId = "idna"; + usesDefaultFeatures = false; + features = [ "alloc" "compiled_data" ]; + } + { + name = "percent-encoding"; + packageId = "percent-encoding"; + usesDefaultFeatures = false; + features = [ "alloc" ]; + } + { + name = "serde"; + packageId = "serde"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "serde_derive"; + packageId = "serde_derive"; + optional = true; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + } + { + name = "serde_derive"; + packageId = "serde_derive"; + } + ]; + features = { + "default" = [ "std" ]; + "serde" = [ "dep:serde" "dep:serde_derive" ]; + "std" = [ "idna/std" "percent-encoding/std" "form_urlencoded/std" "serde?/std" ]; + }; + resolvedDefaultFeatures = [ "default" "serde" "std" ]; + }; + "utf-8" = rec { + crateName = "utf-8"; + version = "0.7.6"; + edition = "2015"; + sha256 = "1a9ns3fvgird0snjkd3wbdhwd3zdpc2h5gpyybrfr6ra5pkqxk09"; + libName = "utf8"; + authors = [ + "Simon Sapin " + ]; + + }; + "utf8_iter" = rec { + crateName = "utf8_iter"; + version = "1.0.4"; + edition = "2021"; + sha256 = "1gmna9flnj8dbyd8ba17zigrp9c4c3zclngf5lnb5yvz1ri41hdn"; + authors = [ + "Henri Sivonen " + ]; + + }; + "utf8parse" = rec { + crateName = "utf8parse"; + version = "0.2.2"; + edition = "2018"; + sha256 = "088807qwjq46azicqwbhlmzwrbkz7l4hpw43sdkdyyk524vdxaq6"; + authors = [ + "Joe Wilm " + "Christian Duerr " + ]; + features = { + }; + resolvedDefaultFeatures = [ "default" ]; + }; + "utoipa" = rec { + crateName = "utoipa"; + version = "5.4.0"; + edition = "2021"; + sha256 = "14z9ciwyxa3vca86hq3bsxxabnzxsyr142by4841dhr11k42kk1g"; + authors = [ + "Juha Kukkonen " + ]; + dependencies = [ + { + name = "indexmap"; + packageId = "indexmap 2.13.0"; + features = [ "serde" ]; + } + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "serde_json"; + packageId = "serde_json"; + } + { + name = "utoipa-gen"; + packageId = "utoipa-gen"; + optional = true; + } + ]; + features = { + "actix_extras" = [ "utoipa-gen?/actix_extras" ]; + "auto_into_responses" = [ "utoipa-gen?/auto_into_responses" ]; + "axum_extras" = [ "utoipa-gen?/axum_extras" ]; + "chrono" = [ "utoipa-gen?/chrono" ]; + "config" = [ "utoipa-gen?/config" ]; + "debug" = [ "utoipa-gen?/debug" ]; + "decimal" = [ "utoipa-gen?/decimal" ]; + "decimal_float" = [ "utoipa-gen?/decimal_float" ]; + "default" = [ "macros" ]; + "indexmap" = [ "utoipa-gen?/indexmap" ]; + "jiff_0_2" = [ "utoipa-gen?/jiff_0_2" ]; + "macros" = [ "dep:utoipa-gen" ]; + "non_strict_integers" = [ "utoipa-gen?/non_strict_integers" ]; + "rc_schema" = [ "utoipa-gen?/rc_schema" ]; + "repr" = [ "utoipa-gen?/repr" ]; + "rocket_extras" = [ "utoipa-gen?/rocket_extras" ]; + "serde_norway" = [ "dep:serde_norway" ]; + "smallvec" = [ "utoipa-gen?/smallvec" ]; + "time" = [ "utoipa-gen?/time" ]; + "ulid" = [ "utoipa-gen?/ulid" ]; + "url" = [ "utoipa-gen?/url" ]; + "uuid" = [ "utoipa-gen?/uuid" ]; + "yaml" = [ "serde_norway" "utoipa-gen?/yaml" ]; + }; + resolvedDefaultFeatures = [ "chrono" "default" "macros" "uuid" ]; + }; + "utoipa-axum" = rec { + crateName = "utoipa-axum"; + version = "0.2.0"; + edition = "2021"; + sha256 = "181lha7i7885q5fqj0s5mjp1wfkapdfdqp8cxi4j916cpkjvl9bw"; + libName = "utoipa_axum"; + authors = [ + "Juha Kukkonen " + ]; + dependencies = [ + { + name = "axum"; + packageId = "axum"; + usesDefaultFeatures = false; + } + { + name = "paste"; + packageId = "paste"; + } + { + name = "tower-layer"; + packageId = "tower-layer"; + } + { + name = "tower-service"; + packageId = "tower-service"; + } + { + name = "utoipa"; + packageId = "utoipa"; + usesDefaultFeatures = false; + features = [ "macros" ]; + } + ]; + devDependencies = [ + { + name = "axum"; + packageId = "axum"; + usesDefaultFeatures = false; + features = [ "json" ]; + } + ]; + features = { + }; + }; + "utoipa-gen" = rec { + crateName = "utoipa-gen"; + version = "5.4.0"; + edition = "2021"; + sha256 = "12x0gisjn21dvxy9khdb3l7imxp3gb221nm6x32z92mbja6x0ybd"; + procMacro = true; + libName = "utoipa_gen"; + authors = [ + "Juha Kukkonen " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" ]; + } + { + name = "uuid"; + packageId = "uuid"; + optional = true; + features = [ "serde" ]; + } + ]; + features = { + "actix_extras" = [ "regex" "syn/extra-traits" ]; + "axum_extras" = [ "regex" "syn/extra-traits" ]; + "config" = [ "dep:utoipa-config" "dep:once_cell" ]; + "debug" = [ "syn/extra-traits" ]; + "regex" = [ "dep:regex" ]; + "rocket_extras" = [ "regex" "syn/extra-traits" ]; + "ulid" = [ "dep:ulid" ]; + "url" = [ "dep:url" ]; + "uuid" = [ "dep:uuid" ]; + }; + resolvedDefaultFeatures = [ "chrono" "uuid" ]; + }; + "uuid" = rec { + crateName = "uuid"; + version = "1.19.0"; + edition = "2021"; + sha256 = "0jjbclx3f36fjl6jjh8f022q0m76v3cfh61y6z6jgl2b3f359q72"; + authors = [ + "Ashley Mannix" + "Dylan DPC" + "Hunar Roop Kahlon" + ]; + dependencies = [ + { + name = "getrandom"; + packageId = "getrandom 0.3.4"; + optional = true; + target = { target, features }: (!(("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null)))); + } + { + name = "js-sys"; + packageId = "js-sys"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null)) && (builtins.elem "atomics" targetFeatures)); + } + { + name = "serde_core"; + packageId = "serde_core"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null))); + features = [ "msrv" ]; + } + ]; + devDependencies = [ + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + target = { target, features }: (("wasm32" == target."arch" or null) && (("unknown" == target."os" or null) || ("none" == target."os" or null))); + } + ]; + features = { + "arbitrary" = [ "dep:arbitrary" ]; + "atomic" = [ "dep:atomic" ]; + "borsh" = [ "dep:borsh" "dep:borsh-derive" ]; + "bytemuck" = [ "dep:bytemuck" ]; + "default" = [ "std" ]; + "fast-rng" = [ "rng" "dep:rand" ]; + "js" = [ "dep:wasm-bindgen" "dep:js-sys" ]; + "macro-diagnostics" = [ "dep:uuid-macro-internal" ]; + "md5" = [ "dep:md-5" ]; + "rng" = [ "dep:getrandom" ]; + "rng-getrandom" = [ "rng" "dep:getrandom" "uuid-rng-internal-lib" "uuid-rng-internal-lib/getrandom" ]; + "rng-rand" = [ "rng" "dep:rand" "uuid-rng-internal-lib" "uuid-rng-internal-lib/rand" ]; + "serde" = [ "dep:serde_core" ]; + "sha1" = [ "dep:sha1_smol" ]; + "slog" = [ "dep:slog" ]; + "std" = [ "wasm-bindgen?/std" "js-sys?/std" ]; + "uuid-rng-internal-lib" = [ "dep:uuid-rng-internal-lib" ]; + "v1" = [ "atomic" ]; + "v3" = [ "md5" ]; + "v4" = [ "rng" ]; + "v5" = [ "sha1" ]; + "v6" = [ "atomic" ]; + "v7" = [ "rng" ]; + "zerocopy" = [ "dep:zerocopy" ]; + }; + resolvedDefaultFeatures = [ "default" "rng" "serde" "std" "v4" "v7" ]; + }; + "valuable" = rec { + crateName = "valuable"; + version = "0.1.1"; + edition = "2021"; + sha256 = "0r9srp55v7g27s5bg7a2m095fzckrcdca5maih6dy9bay6fflwxs"; + dependencies = [ + { + name = "valuable-derive"; + packageId = "valuable-derive"; + optional = true; + } + ]; + features = { + "default" = [ "std" ]; + "derive" = [ "valuable-derive" ]; + "std" = [ "alloc" ]; + "valuable-derive" = [ "dep:valuable-derive" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "derive" "std" "valuable-derive" ]; + }; + "valuable-derive" = rec { + crateName = "valuable-derive"; + version = "0.1.1"; + edition = "2021"; + sha256 = "0v9s329k6c3s2mlg5vwyrhxpb3n5k3rbq9svzp6cdxn0pjlk4fjf"; + procMacro = true; + libName = "valuable_derive"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" ]; + } + ]; + + }; + "valuable-serde" = rec { + crateName = "valuable-serde"; + version = "0.1.1"; + edition = "2021"; + sha256 = "1cccgaa2q3ih6fy3x8x4kddjf0kx7f98jxz6wxxr06ydvs759q1f"; + libName = "valuable_serde"; + authors = [ + "Taiki Endo " + ]; + dependencies = [ + { + name = "serde"; + packageId = "serde"; + usesDefaultFeatures = false; + } + { + name = "valuable"; + packageId = "valuable"; + usesDefaultFeatures = false; + } + ]; + devDependencies = [ + { + name = "serde"; + packageId = "serde"; + features = [ "derive" ]; + } + { + name = "valuable"; + packageId = "valuable"; + features = [ "derive" ]; + } + ]; + features = { + "alloc" = [ "valuable/alloc" "serde/alloc" ]; + "default" = [ "std" ]; + "std" = [ "alloc" "valuable/std" "serde/std" ]; + }; + }; + "vcpkg" = rec { + crateName = "vcpkg"; + version = "0.2.15"; + edition = "2015"; + sha256 = "09i4nf5y8lig6xgj3f7fyrvzd3nlaw4znrihw8psidvv5yk4xkdc"; + authors = [ + "Jim McGrath " + ]; + + }; + "version_check" = rec { + crateName = "version_check"; + version = "0.9.5"; + edition = "2015"; + sha256 = "0nhhi4i5x89gm911azqbn7avs9mdacw2i3vcz3cnmz3mv4rqz4hb"; + authors = [ + "Sergio Benitez " + ]; + + }; + "vsock" = rec { + crateName = "vsock"; + version = "0.5.2"; + edition = "2021"; + sha256 = "0qzd42wk8wrapl5ghbzf8j02zdlb6y2qkyg0vhsrdlbcqx56xnp2"; + authors = [ + "fsyncd" + "rust-vsock" + ]; + dependencies = [ + { + name = "libc"; + packageId = "libc"; + } + { + name = "nix"; + packageId = "nix 0.30.1"; + features = [ "ioctl" "socket" ]; + } + ]; + + }; + "vt100" = rec { + crateName = "vt100"; + version = "0.15.2"; + edition = "2021"; + sha256 = "1pklc8y984axmxr0cd363srr2d27wd5rj15xlcmkjznvy0xqdkc4"; + authors = [ + "Jesse Luehrs " + ]; + dependencies = [ + { + name = "itoa"; + packageId = "itoa"; + } + { + name = "log"; + packageId = "log"; + } + { + name = "unicode-width"; + packageId = "unicode-width 0.1.14"; + } + { + name = "vte"; + packageId = "vte"; + } + ]; + devDependencies = [ + { + name = "vte"; + packageId = "vte"; + } + ]; + + }; + "vte" = rec { + crateName = "vte"; + version = "0.11.1"; + edition = "2021"; + sha256 = "15r1ff4j8ndqj9vsyil3wqwxhhl7jsz5g58f31n0h1wlpxgjn0pm"; + authors = [ + "Joe Wilm " + "Christian Duerr " + ]; + dependencies = [ + { + name = "arrayvec"; + packageId = "arrayvec"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "utf8parse"; + packageId = "utf8parse"; + } + { + name = "vte_generate_state_changes"; + packageId = "vte_generate_state_changes"; + } + ]; + features = { + "ansi" = [ "log" ]; + "arrayvec" = [ "dep:arrayvec" ]; + "default" = [ "no_std" ]; + "log" = [ "dep:log" ]; + "nightly" = [ "utf8parse/nightly" ]; + "no_std" = [ "arrayvec" ]; + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "arrayvec" "default" "no_std" ]; + }; + "vte_generate_state_changes" = rec { + crateName = "vte_generate_state_changes"; + version = "0.1.2"; + edition = "2018"; + sha256 = "0biwgpcji3w4llz7h4bi8c2rwqchm9gmyr7dnjki1m853gp9ndif"; + procMacro = true; + authors = [ + "Christian Duerr " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + ]; + + }; + "walkdir" = rec { + crateName = "walkdir"; + version = "2.5.0"; + edition = "2018"; + sha256 = "0jsy7a710qv8gld5957ybrnc07gavppp963gs32xk4ag8130jy99"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "same-file"; + packageId = "same-file"; + } + { + name = "winapi-util"; + packageId = "winapi-util"; + target = { target, features }: (target."windows" or false); + } + ]; + + }; + "want" = rec { + crateName = "want"; + version = "0.3.1"; + edition = "2018"; + sha256 = "03hbfrnvqqdchb5kgxyavb9jabwza0dmh2vw5kg0dq8rxl57d9xz"; + authors = [ + "Sean McArthur " + ]; + dependencies = [ + { + name = "try-lock"; + packageId = "try-lock"; + } + ]; + + }; + "wasi 0.11.1+wasi-snapshot-preview1" = rec { + crateName = "wasi"; + version = "0.11.1+wasi-snapshot-preview1"; + edition = "2018"; + sha256 = "0jx49r7nbkbhyfrfyhz0bm4817yrnxgd3jiwwwfv0zl439jyrwyc"; + authors = [ + "The Cranelift Project Developers" + ]; + features = { + "core" = [ "dep:core" ]; + "default" = [ "std" ]; + "rustc-dep-of-std" = [ "core" "rustc-std-workspace-alloc" ]; + "rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "wasi 0.14.7+wasi-0.2.4" = rec { + crateName = "wasi"; + version = "0.14.7+wasi-0.2.4"; + edition = "2021"; + sha256 = "133fq3mq7h65mzrsphcm7bbbx1gsz7srrbwh01624zin43g7hd48"; + dependencies = [ + { + name = "wasip2"; + packageId = "wasip2"; + usesDefaultFeatures = false; + } + ]; + features = { + "bitflags" = [ "wasip2/bitflags" ]; + "default" = [ "wasip2/default" ]; + "std" = [ "wasip2/std" ]; + }; + }; + "wasip2" = rec { + crateName = "wasip2"; + version = "1.0.2+wasi-0.2.9"; + edition = "2021"; + sha256 = "1xdw7v08jpfjdg94sp4lbdgzwa587m5ifpz6fpdnkh02kwizj5wm"; + dependencies = [ + { + name = "wit-bindgen"; + packageId = "wit-bindgen"; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "dep:alloc" ]; + "bitflags" = [ "wit-bindgen/bitflags" ]; + "core" = [ "dep:core" ]; + "default" = [ "std" "bitflags" ]; + "rustc-dep-of-std" = [ "core" "alloc" "wit-bindgen/rustc-dep-of-std" ]; + }; + }; + "wasite 0.1.0" = rec { + crateName = "wasite"; + version = "0.1.0"; + edition = "2018"; + sha256 = "0nw5h9nmcl4fyf4j5d4mfdjfgvwi1cakpi349wc4zrr59wxxinmq"; + + }; + "wasite 1.0.2" = rec { + crateName = "wasite"; + version = "1.0.2"; + edition = "2021"; + sha256 = "0hhsyylwsnbyz6dsr7i0gadzgk34nw4ljhnmafkji03b98mr1zk6"; + dependencies = [ + { + name = "wasi"; + packageId = "wasi 0.14.7+wasi-0.2.4"; + usesDefaultFeatures = false; + } + ]; + + }; + "wasm-bindgen" = rec { + crateName = "wasm-bindgen"; + version = "0.2.108"; + edition = "2021"; + sha256 = "0rl5pn80sdhj2p2r28lp3k50a8mpppzgwzssz2f3jdqyxhq4l0k4"; + libName = "wasm_bindgen"; + authors = [ + "The wasm-bindgen Developers" + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + } + { + name = "wasm-bindgen-macro"; + packageId = "wasm-bindgen-macro"; + } + { + name = "wasm-bindgen-shared"; + packageId = "wasm-bindgen-shared"; + } + ]; + buildDependencies = [ + { + name = "rustversion"; + packageId = "rustversion"; + rename = "rustversion-compat"; + } + ]; + devDependencies = [ + { + name = "once_cell"; + packageId = "once_cell"; + } + ]; + features = { + "default" = [ "std" ]; + "enable-interning" = [ "std" ]; + "serde" = [ "dep:serde" ]; + "serde-serialize" = [ "serde" "serde_json" "std" ]; + "serde_json" = [ "dep:serde_json" ]; + "strict-macro" = [ "wasm-bindgen-macro/strict-macro" ]; + }; + resolvedDefaultFeatures = [ "default" "msrv" "std" ]; + }; + "wasm-bindgen-futures" = rec { + crateName = "wasm-bindgen-futures"; + version = "0.4.58"; + edition = "2021"; + sha256 = "0vqywn9df5i6mms3sw47v3kj7rzx8ryghqq0xb4jk05fs1zyg9kh"; + libName = "wasm_bindgen_futures"; + authors = [ + "The wasm-bindgen Developers" + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "futures-util"; + packageId = "futures-util"; + optional = true; + usesDefaultFeatures = false; + features = [ "std" ]; + } + { + name = "js-sys"; + packageId = "js-sys"; + usesDefaultFeatures = false; + } + { + name = "once_cell"; + packageId = "once_cell"; + usesDefaultFeatures = false; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + usesDefaultFeatures = false; + } + { + name = "web-sys"; + packageId = "web-sys"; + usesDefaultFeatures = false; + target = { target, features }: (builtins.elem "atomics" targetFeatures); + features = [ "MessageEvent" "Worker" ]; + } + ]; + features = { + "default" = [ "std" ]; + "futures-core" = [ "dep:futures-core" ]; + "futures-core-03-stream" = [ "futures-core" ]; + "futures-util" = [ "dep:futures-util" ]; + "std" = [ "wasm-bindgen/std" "js-sys/std" "web-sys/std" "futures-util" ]; + }; + resolvedDefaultFeatures = [ "default" "futures-util" "std" ]; + }; + "wasm-bindgen-macro" = rec { + crateName = "wasm-bindgen-macro"; + version = "0.2.108"; + edition = "2021"; + sha256 = "026nnvakp0w6j3ghpcxn31shj9wx8bv8x7nk3gkk40klkjfj72q0"; + 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 = { + "strict-macro" = [ "wasm-bindgen-macro-support/strict-macro" ]; + }; + }; + "wasm-bindgen-macro-support" = rec { + crateName = "wasm-bindgen-macro-support"; + version = "0.2.108"; + edition = "2021"; + sha256 = "0m9sj475ypgifbkvksjsqs2gy3bq96f87ychch784m4gspiblmjj"; + libName = "wasm_bindgen_macro_support"; + authors = [ + "The wasm-bindgen Developers" + ]; + dependencies = [ + { + name = "bumpalo"; + packageId = "bumpalo"; + } + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "visit" "visit-mut" "full" ]; + } + { + name = "wasm-bindgen-shared"; + packageId = "wasm-bindgen-shared"; + } + ]; + features = { + "extra-traits" = [ "syn/extra-traits" ]; + }; + }; + "wasm-bindgen-shared" = rec { + crateName = "wasm-bindgen-shared"; + version = "0.2.108"; + edition = "2021"; + links = "wasm_bindgen"; + sha256 = "04ix7v99rvj5730553j58pqsrwpf9sqazr60y3cchx5cr60ba08z"; + libName = "wasm_bindgen_shared"; + authors = [ + "The wasm-bindgen Developers" + ]; + dependencies = [ + { + name = "unicode-ident"; + packageId = "unicode-ident"; + } + ]; + + }; + "wasm-streams" = rec { + crateName = "wasm-streams"; + version = "0.4.2"; + edition = "2021"; + sha256 = "0rddn007hp6k2cm91mm9y33n79b0jxv0c3znzszcvv67hn6ks18m"; + libName = "wasm_streams";type = [ "cdylib" "rlib" ]; + authors = [ + "Mattias Buelens " + ]; + dependencies = [ + { + name = "futures-util"; + packageId = "futures-util"; + features = [ "io" "sink" ]; + } + { + name = "js-sys"; + packageId = "js-sys"; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + } + { + name = "wasm-bindgen-futures"; + packageId = "wasm-bindgen-futures"; + } + { + name = "web-sys"; + packageId = "web-sys"; + features = [ "AbortSignal" "QueuingStrategy" "ReadableStream" "ReadableStreamType" "ReadableWritablePair" "ReadableStreamByobReader" "ReadableStreamReaderMode" "ReadableStreamReadResult" "ReadableStreamByobRequest" "ReadableStreamDefaultReader" "ReadableByteStreamController" "ReadableStreamGetReaderOptions" "ReadableStreamDefaultController" "StreamPipeOptions" "TransformStream" "TransformStreamDefaultController" "Transformer" "UnderlyingSink" "UnderlyingSource" "WritableStream" "WritableStreamDefaultController" "WritableStreamDefaultWriter" ]; + } + ]; + devDependencies = [ + { + name = "web-sys"; + packageId = "web-sys"; + features = [ "console" "AbortSignal" "ErrorEvent" "PromiseRejectionEvent" "Response" "ReadableStream" "Window" ]; + } + ]; + + }; + "web-sys" = rec { + crateName = "web-sys"; + version = "0.3.85"; + edition = "2021"; + sha256 = "1645c202gyw21m6kxw4ya81vrapl40hlb8m9iqhjj8fra7jk4bii"; + libName = "web_sys"; + authors = [ + "The wasm-bindgen Developers" + ]; + dependencies = [ + { + name = "js-sys"; + packageId = "js-sys"; + usesDefaultFeatures = false; + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + usesDefaultFeatures = false; + } + ]; + 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" ]; + "CookieChangeEvent" = [ "Event" ]; + "CookieStore" = [ "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" ]; + "ExtendableCookieChangeEvent" = [ "Event" "ExtendableEvent" ]; + "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" ]; + "GamepadEvent" = [ "Event" ]; + "GestureEvent" = [ "Event" "UiEvent" ]; + "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" ]; + "InputDeviceInfo" = [ "MediaDeviceInfo" ]; + "InputEvent" = [ "Event" "UiEvent" ]; + "KeyFrameRequestEvent" = [ "Event" ]; + "KeyboardEvent" = [ "Event" "UiEvent" ]; + "KeyframeEffect" = [ "AnimationEffect" ]; + "LocalMediaStream" = [ "EventTarget" "MediaStream" ]; + "MathMlElement" = [ "Element" "EventTarget" "Node" ]; + "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" ]; + "PictureInPictureEvent" = [ "Event" ]; + "PictureInPictureWindow" = [ "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" ]; + "RtcRtpScriptTransformer" = [ "EventTarget" ]; + "RtcTrackEvent" = [ "Event" ]; + "RtcTransformEvent" = [ "Event" ]; + "RtcdtmfSender" = [ "EventTarget" ]; + "RtcdtmfToneChangeEvent" = [ "Event" ]; + "SFrameTransform" = [ "EventTarget" ]; + "SFrameTransformErrorEvent" = [ "Event" ]; + "Screen" = [ "EventTarget" ]; + "ScreenDetailed" = [ "EventTarget" "Screen" ]; + "ScreenDetails" = [ "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" ]; + "ToggleEvent" = [ "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" ]; + "VisualViewport" = [ "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" ]; + "default" = [ "std" ]; + "std" = [ "wasm-bindgen/std" "js-sys/std" ]; + }; + resolvedDefaultFeatures = [ "AbortController" "AbortSignal" "Blob" "BlobPropertyBag" "CanvasRenderingContext2d" "Document" "DomRect" "DomRectReadOnly" "Element" "Event" "EventTarget" "File" "FormData" "Headers" "HtmlCanvasElement" "HtmlElement" "Location" "MessageEvent" "Navigator" "Node" "QueuingStrategy" "ReadableByteStreamController" "ReadableStream" "ReadableStreamByobReader" "ReadableStreamByobRequest" "ReadableStreamDefaultController" "ReadableStreamDefaultReader" "ReadableStreamGetReaderOptions" "ReadableStreamReadResult" "ReadableStreamReaderMode" "ReadableStreamType" "ReadableWritablePair" "Request" "RequestCache" "RequestCredentials" "RequestInit" "RequestMode" "Response" "ServiceWorkerGlobalScope" "StreamPipeOptions" "TransformStream" "TransformStreamDefaultController" "Transformer" "UnderlyingSink" "UnderlyingSource" "Window" "Worker" "WorkerGlobalScope" "WritableStream" "WritableStreamDefaultController" "WritableStreamDefaultWriter" "default" "std" ]; + }; + "web-time" = rec { + crateName = "web-time"; + version = "1.1.0"; + edition = "2021"; + sha256 = "1fx05yqx83dhx628wb70fyy10yjfq1jpl20qfqhdkymi13rq0ras"; + libName = "web_time"; + dependencies = [ + { + name = "js-sys"; + packageId = "js-sys"; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } + { + name = "serde"; + packageId = "serde"; + optional = true; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } + { + name = "wasm-bindgen"; + packageId = "wasm-bindgen"; + usesDefaultFeatures = false; + target = { target, features }: ((builtins.elem "wasm" target."family") && ("unknown" == target."os" or null)); + } + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + resolvedDefaultFeatures = [ "serde" ]; + }; + "webpki-root-certs" = rec { + crateName = "webpki-root-certs"; + version = "1.0.5"; + edition = "2021"; + sha256 = "1p05rj22vamgs9n34326vypxy3klmdbphqrjrxl3y4cb8309z8in"; + libName = "webpki_root_certs"; + dependencies = [ + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + rename = "pki-types"; + usesDefaultFeatures = false; + } + ]; + + }; + "webpki-roots 0.25.4" = rec { + crateName = "webpki-roots"; + version = "0.25.4"; + edition = "2018"; + sha256 = "1qgqa615gc1cgklls4bkjp9jv9pvv3jnl82lc6wd7dkximywa82z"; + libName = "webpki_roots"; + + }; + "webpki-roots 0.26.11" = rec { + crateName = "webpki-roots"; + version = "0.26.11"; + edition = "2021"; + sha256 = "1agpayg5zzf7m1a01q30jahlgmn5nwggbabdhq0in008pf5c66sj"; + libName = "webpki_roots"; + dependencies = [ + { + name = "webpki-roots"; + packageId = "webpki-roots 1.0.5"; + rename = "parent"; + } + ]; + + }; + "webpki-roots 1.0.5" = rec { + crateName = "webpki-roots"; + version = "1.0.5"; + edition = "2021"; + sha256 = "0b3j9ngc8fca3kg24f4jb4v9969vmdngv6s2i4wccxijhs0ddghj"; + libName = "webpki_roots"; + dependencies = [ + { + name = "rustls-pki-types"; + packageId = "rustls-pki-types"; + rename = "pki-types"; + usesDefaultFeatures = false; + } + ]; + + }; + "which 4.4.2" = rec { + crateName = "which"; + version = "4.4.2"; + edition = "2021"; + sha256 = "1ixzmx3svsv5hbdvd8vdhd3qwvf6ns8jdpif1wmwsy10k90j9fl7"; + authors = [ + "Harry Fei " + ]; + dependencies = [ + { + name = "either"; + packageId = "either"; + } + { + name = "home"; + packageId = "home"; + target = { target, features }: ((target."windows" or false) || (target."unix" or false) || ("redox" == target."os" or null)); + } + { + name = "once_cell"; + packageId = "once_cell"; + target = { target, features }: (target."windows" or false); + } + { + name = "rustix"; + packageId = "rustix 0.38.44"; + usesDefaultFeatures = false; + features = [ "fs" "std" ]; + } + ]; + features = { + "regex" = [ "dep:regex" ]; + }; + }; + "which 8.0.0" = rec { + crateName = "which"; + version = "8.0.0"; + edition = "2021"; + sha256 = "07dsqyvvyaqp3dbj4cdl3ib5fxhdf29l6vihm3pcihq666avpynk"; + authors = [ + "Harry Fei , Jacob Kiesel " + ]; + dependencies = [ + { + name = "env_home"; + packageId = "env_home"; + optional = true; + target = { target, features }: ((target."windows" or false) || (target."unix" or false) || ("redox" == target."os" or null)); + } + { + name = "rustix"; + packageId = "rustix 1.1.3"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: ((target."unix" or false) || ("wasi" == target."os" or null) || ("redox" == target."os" or null)); + features = [ "fs" "std" ]; + } + { + name = "winsafe"; + packageId = "winsafe"; + optional = true; + target = { target, features }: (target."windows" or false); + features = [ "kernel" ]; + } + ]; + features = { + "default" = [ "real-sys" ]; + "real-sys" = [ "dep:env_home" "dep:rustix" "dep:winsafe" ]; + "regex" = [ "dep:regex" ]; + "tracing" = [ "dep:tracing" ]; + }; + resolvedDefaultFeatures = [ "default" "real-sys" ]; + }; + "whoami 1.6.1" = rec { + crateName = "whoami"; + version = "1.6.1"; + edition = "2018"; + sha256 = "0zg9sz669vhqyxysn4lymnianj29jxs2vl6k2lqcl0kp0yslsjjx"; + dependencies = [ + { + name = "libredox"; + packageId = "libredox"; + target = { target, features }: (("redox" == target."os" or null) && (!("wasm32" == target."arch" or null))); + } + { + name = "wasite"; + packageId = "wasite 0.1.0"; + target = { target, features }: (("wasm32" == target."arch" or null) && ("wasi" == target."os" or null)); + } + { + name = "web-sys"; + packageId = "web-sys"; + optional = true; + target = { target, features }: (("wasm32" == target."arch" or null) && (!("wasi" == target."os" or null)) && (!(target."daku" or false))); + features = [ "Navigator" "Document" "Window" "Location" ]; + } + ]; + features = { + "default" = [ "web" ]; + "web" = [ "web-sys" ]; + "web-sys" = [ "dep:web-sys" ]; + }; + resolvedDefaultFeatures = [ "default" "web" "web-sys" ]; + }; + "whoami 2.0.2" = rec { + crateName = "whoami"; + version = "2.0.2"; + edition = "2021"; + sha256 = "10qrm03h50xf5jgajnvdxd5qmsfvgscy1m2nj5i9jgdbnp3xbr5c"; + dependencies = [ + { + name = "libredox"; + packageId = "libredox"; + usesDefaultFeatures = false; + target = { target, features }: (("redox" == target."os" or null) && (!("wasm32" == target."arch" or null))); + features = [ "call" ]; + } + { + name = "wasite"; + packageId = "wasite 1.0.2"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && ("wasi" == target."os" or null)); + } + { + name = "web-sys"; + packageId = "web-sys"; + optional = true; + usesDefaultFeatures = false; + target = { target, features }: (("wasm32" == target."arch" or null) && (!("wasi" == target."os" or null)) && (!(target."daku" or false))); + features = [ "Navigator" "Document" "Window" "Location" ]; + } + ]; + features = { + "default" = [ "std" "wasi-wasite" "wasm-web" ]; + "std" = [ "web-sys?/std" ]; + "wasi-wasite" = [ "dep:wasite" ]; + "wasm-web" = [ "dep:web-sys" ]; + }; + resolvedDefaultFeatures = [ "default" "std" "wasi-wasite" "wasm-web" ]; + }; + "winapi" = rec { + crateName = "winapi"; + version = "0.3.9"; + edition = "2015"; + sha256 = "06gl025x418lchw1wxj64ycr7gha83m44cjr5sarhynd9xkrm0sw"; + authors = [ + "Peter Atashian " + ]; + dependencies = [ + { + name = "winapi-i686-pc-windows-gnu"; + packageId = "winapi-i686-pc-windows-gnu"; + target = { target, features }: (target.name == "i686-pc-windows-gnu"); + } + { + name = "winapi-x86_64-pc-windows-gnu"; + packageId = "winapi-x86_64-pc-windows-gnu"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnu"); + } + ]; + features = { + "debug" = [ "impl-debug" ]; + }; + resolvedDefaultFeatures = [ "cfg" "consoleapi" "evntrace" "handleapi" "impl-default" "in6addr" "inaddr" "libloaderapi" "memoryapi" "minwinbase" "ntsecapi" "processenv" "processthreadsapi" "psapi" "std" "synchapi" "winbase" "windef" "winerror" "winioctl" "winsock2" "winuser" ]; + }; + "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 " + ]; + + }; + "winapi-util" = rec { + crateName = "winapi-util"; + version = "0.1.11"; + edition = "2021"; + sha256 = "08hdl7mkll7pz8whg869h58c1r9y7in0w0pk8fm24qc77k0b39y2"; + libName = "winapi_util"; + authors = [ + "Andrew Gallant " + ]; + dependencies = [ + { + name = "windows-sys"; + packageId = "windows-sys 0.61.2"; + target = { target, features }: (target."windows" or false); + features = [ "Win32_Foundation" "Win32_Storage_FileSystem" "Win32_System_Console" "Win32_System_SystemInformation" ]; + } + ]; + + }; + "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 " + ]; + + }; + "windows 0.57.0" = rec { + crateName = "windows"; + version = "0.57.0"; + edition = "2021"; + sha256 = "0hqid10bqvxa3pbpgvrh2cilf950lxsd9zqfv3rldc73v2s2qd0j"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-core"; + packageId = "windows-core 0.57.0"; + } + { + name = "windows-targets"; + packageId = "windows-targets 0.52.6"; + } + ]; + features = { + "AI" = [ "Foundation" ]; + "AI_MachineLearning" = [ "AI" ]; + "ApplicationModel" = [ "Foundation" ]; + "ApplicationModel_Activation" = [ "ApplicationModel" ]; + "ApplicationModel_AppExtensions" = [ "ApplicationModel" ]; + "ApplicationModel_AppService" = [ "ApplicationModel" ]; + "ApplicationModel_Appointments" = [ "ApplicationModel" ]; + "ApplicationModel_Appointments_AppointmentsProvider" = [ "ApplicationModel_Appointments" ]; + "ApplicationModel_Appointments_DataProvider" = [ "ApplicationModel_Appointments" ]; + "ApplicationModel_Background" = [ "ApplicationModel" ]; + "ApplicationModel_Calls" = [ "ApplicationModel" ]; + "ApplicationModel_Calls_Background" = [ "ApplicationModel_Calls" ]; + "ApplicationModel_Calls_Provider" = [ "ApplicationModel_Calls" ]; + "ApplicationModel_Chat" = [ "ApplicationModel" ]; + "ApplicationModel_CommunicationBlocking" = [ "ApplicationModel" ]; + "ApplicationModel_Contacts" = [ "ApplicationModel" ]; + "ApplicationModel_Contacts_DataProvider" = [ "ApplicationModel_Contacts" ]; + "ApplicationModel_Contacts_Provider" = [ "ApplicationModel_Contacts" ]; + "ApplicationModel_ConversationalAgent" = [ "ApplicationModel" ]; + "ApplicationModel_Core" = [ "ApplicationModel" ]; + "ApplicationModel_DataTransfer" = [ "ApplicationModel" ]; + "ApplicationModel_DataTransfer_DragDrop" = [ "ApplicationModel_DataTransfer" ]; + "ApplicationModel_DataTransfer_DragDrop_Core" = [ "ApplicationModel_DataTransfer_DragDrop" ]; + "ApplicationModel_DataTransfer_ShareTarget" = [ "ApplicationModel_DataTransfer" ]; + "ApplicationModel_Email" = [ "ApplicationModel" ]; + "ApplicationModel_Email_DataProvider" = [ "ApplicationModel_Email" ]; + "ApplicationModel_ExtendedExecution" = [ "ApplicationModel" ]; + "ApplicationModel_ExtendedExecution_Foreground" = [ "ApplicationModel_ExtendedExecution" ]; + "ApplicationModel_Holographic" = [ "ApplicationModel" ]; + "ApplicationModel_LockScreen" = [ "ApplicationModel" ]; + "ApplicationModel_Payments" = [ "ApplicationModel" ]; + "ApplicationModel_Payments_Provider" = [ "ApplicationModel_Payments" ]; + "ApplicationModel_Preview" = [ "ApplicationModel" ]; + "ApplicationModel_Preview_Holographic" = [ "ApplicationModel_Preview" ]; + "ApplicationModel_Preview_InkWorkspace" = [ "ApplicationModel_Preview" ]; + "ApplicationModel_Preview_Notes" = [ "ApplicationModel_Preview" ]; + "ApplicationModel_Resources" = [ "ApplicationModel" ]; + "ApplicationModel_Resources_Core" = [ "ApplicationModel_Resources" ]; + "ApplicationModel_Resources_Management" = [ "ApplicationModel_Resources" ]; + "ApplicationModel_Search" = [ "ApplicationModel" ]; + "ApplicationModel_Search_Core" = [ "ApplicationModel_Search" ]; + "ApplicationModel_UserActivities" = [ "ApplicationModel" ]; + "ApplicationModel_UserActivities_Core" = [ "ApplicationModel_UserActivities" ]; + "ApplicationModel_UserDataAccounts" = [ "ApplicationModel" ]; + "ApplicationModel_UserDataAccounts_Provider" = [ "ApplicationModel_UserDataAccounts" ]; + "ApplicationModel_UserDataAccounts_SystemAccess" = [ "ApplicationModel_UserDataAccounts" ]; + "ApplicationModel_UserDataTasks" = [ "ApplicationModel" ]; + "ApplicationModel_UserDataTasks_DataProvider" = [ "ApplicationModel_UserDataTasks" ]; + "ApplicationModel_VoiceCommands" = [ "ApplicationModel" ]; + "ApplicationModel_Wallet" = [ "ApplicationModel" ]; + "ApplicationModel_Wallet_System" = [ "ApplicationModel_Wallet" ]; + "Data" = [ "Foundation" ]; + "Data_Html" = [ "Data" ]; + "Data_Json" = [ "Data" ]; + "Data_Pdf" = [ "Data" ]; + "Data_Text" = [ "Data" ]; + "Data_Xml" = [ "Data" ]; + "Data_Xml_Dom" = [ "Data_Xml" ]; + "Data_Xml_Xsl" = [ "Data_Xml" ]; + "Devices" = [ "Foundation" ]; + "Devices_Adc" = [ "Devices" ]; + "Devices_Adc_Provider" = [ "Devices_Adc" ]; + "Devices_Background" = [ "Devices" ]; + "Devices_Bluetooth" = [ "Devices" ]; + "Devices_Bluetooth_Advertisement" = [ "Devices_Bluetooth" ]; + "Devices_Bluetooth_Background" = [ "Devices_Bluetooth" ]; + "Devices_Bluetooth_GenericAttributeProfile" = [ "Devices_Bluetooth" ]; + "Devices_Bluetooth_Rfcomm" = [ "Devices_Bluetooth" ]; + "Devices_Custom" = [ "Devices" ]; + "Devices_Display" = [ "Devices" ]; + "Devices_Display_Core" = [ "Devices_Display" ]; + "Devices_Enumeration" = [ "Devices" ]; + "Devices_Enumeration_Pnp" = [ "Devices_Enumeration" ]; + "Devices_Geolocation" = [ "Devices" ]; + "Devices_Geolocation_Geofencing" = [ "Devices_Geolocation" ]; + "Devices_Geolocation_Provider" = [ "Devices_Geolocation" ]; + "Devices_Gpio" = [ "Devices" ]; + "Devices_Gpio_Provider" = [ "Devices_Gpio" ]; + "Devices_Haptics" = [ "Devices" ]; + "Devices_HumanInterfaceDevice" = [ "Devices" ]; + "Devices_I2c" = [ "Devices" ]; + "Devices_I2c_Provider" = [ "Devices_I2c" ]; + "Devices_Input" = [ "Devices" ]; + "Devices_Input_Preview" = [ "Devices_Input" ]; + "Devices_Lights" = [ "Devices" ]; + "Devices_Lights_Effects" = [ "Devices_Lights" ]; + "Devices_Midi" = [ "Devices" ]; + "Devices_PointOfService" = [ "Devices" ]; + "Devices_PointOfService_Provider" = [ "Devices_PointOfService" ]; + "Devices_Portable" = [ "Devices" ]; + "Devices_Power" = [ "Devices" ]; + "Devices_Printers" = [ "Devices" ]; + "Devices_Printers_Extensions" = [ "Devices_Printers" ]; + "Devices_Pwm" = [ "Devices" ]; + "Devices_Pwm_Provider" = [ "Devices_Pwm" ]; + "Devices_Radios" = [ "Devices" ]; + "Devices_Scanners" = [ "Devices" ]; + "Devices_Sensors" = [ "Devices" ]; + "Devices_Sensors_Custom" = [ "Devices_Sensors" ]; + "Devices_SerialCommunication" = [ "Devices" ]; + "Devices_SmartCards" = [ "Devices" ]; + "Devices_Sms" = [ "Devices" ]; + "Devices_Spi" = [ "Devices" ]; + "Devices_Spi_Provider" = [ "Devices_Spi" ]; + "Devices_Usb" = [ "Devices" ]; + "Devices_WiFi" = [ "Devices" ]; + "Devices_WiFiDirect" = [ "Devices" ]; + "Devices_WiFiDirect_Services" = [ "Devices_WiFiDirect" ]; + "Embedded" = [ "Foundation" ]; + "Embedded_DeviceLockdown" = [ "Embedded" ]; + "Foundation_Collections" = [ "Foundation" ]; + "Foundation_Diagnostics" = [ "Foundation" ]; + "Foundation_Metadata" = [ "Foundation" ]; + "Foundation_Numerics" = [ "Foundation" ]; + "Gaming" = [ "Foundation" ]; + "Gaming_Input" = [ "Gaming" ]; + "Gaming_Input_Custom" = [ "Gaming_Input" ]; + "Gaming_Input_ForceFeedback" = [ "Gaming_Input" ]; + "Gaming_Input_Preview" = [ "Gaming_Input" ]; + "Gaming_Preview" = [ "Gaming" ]; + "Gaming_Preview_GamesEnumeration" = [ "Gaming_Preview" ]; + "Gaming_UI" = [ "Gaming" ]; + "Gaming_XboxLive" = [ "Gaming" ]; + "Gaming_XboxLive_Storage" = [ "Gaming_XboxLive" ]; + "Globalization" = [ "Foundation" ]; + "Globalization_Collation" = [ "Globalization" ]; + "Globalization_DateTimeFormatting" = [ "Globalization" ]; + "Globalization_Fonts" = [ "Globalization" ]; + "Globalization_NumberFormatting" = [ "Globalization" ]; + "Globalization_PhoneNumberFormatting" = [ "Globalization" ]; + "Graphics" = [ "Foundation" ]; + "Graphics_Capture" = [ "Graphics" ]; + "Graphics_DirectX" = [ "Graphics" ]; + "Graphics_DirectX_Direct3D11" = [ "Graphics_DirectX" ]; + "Graphics_Display" = [ "Graphics" ]; + "Graphics_Display_Core" = [ "Graphics_Display" ]; + "Graphics_Effects" = [ "Graphics" ]; + "Graphics_Holographic" = [ "Graphics" ]; + "Graphics_Imaging" = [ "Graphics" ]; + "Graphics_Printing" = [ "Graphics" ]; + "Graphics_Printing3D" = [ "Graphics" ]; + "Graphics_Printing_OptionDetails" = [ "Graphics_Printing" ]; + "Graphics_Printing_PrintSupport" = [ "Graphics_Printing" ]; + "Graphics_Printing_PrintTicket" = [ "Graphics_Printing" ]; + "Graphics_Printing_Workflow" = [ "Graphics_Printing" ]; + "Management" = [ "Foundation" ]; + "Management_Core" = [ "Management" ]; + "Management_Deployment" = [ "Management" ]; + "Management_Deployment_Preview" = [ "Management_Deployment" ]; + "Management_Policies" = [ "Management" ]; + "Management_Update" = [ "Management" ]; + "Management_Workplace" = [ "Management" ]; + "Media" = [ "Foundation" ]; + "Media_AppBroadcasting" = [ "Media" ]; + "Media_AppRecording" = [ "Media" ]; + "Media_Audio" = [ "Media" ]; + "Media_Capture" = [ "Media" ]; + "Media_Capture_Core" = [ "Media_Capture" ]; + "Media_Capture_Frames" = [ "Media_Capture" ]; + "Media_Casting" = [ "Media" ]; + "Media_ClosedCaptioning" = [ "Media" ]; + "Media_ContentRestrictions" = [ "Media" ]; + "Media_Control" = [ "Media" ]; + "Media_Core" = [ "Media" ]; + "Media_Core_Preview" = [ "Media_Core" ]; + "Media_Devices" = [ "Media" ]; + "Media_Devices_Core" = [ "Media_Devices" ]; + "Media_DialProtocol" = [ "Media" ]; + "Media_Editing" = [ "Media" ]; + "Media_Effects" = [ "Media" ]; + "Media_FaceAnalysis" = [ "Media" ]; + "Media_Import" = [ "Media" ]; + "Media_MediaProperties" = [ "Media" ]; + "Media_Miracast" = [ "Media" ]; + "Media_Ocr" = [ "Media" ]; + "Media_PlayTo" = [ "Media" ]; + "Media_Playback" = [ "Media" ]; + "Media_Playlists" = [ "Media" ]; + "Media_Protection" = [ "Media" ]; + "Media_Protection_PlayReady" = [ "Media_Protection" ]; + "Media_Render" = [ "Media" ]; + "Media_SpeechRecognition" = [ "Media" ]; + "Media_SpeechSynthesis" = [ "Media" ]; + "Media_Streaming" = [ "Media" ]; + "Media_Streaming_Adaptive" = [ "Media_Streaming" ]; + "Media_Transcoding" = [ "Media" ]; + "Networking" = [ "Foundation" ]; + "Networking_BackgroundTransfer" = [ "Networking" ]; + "Networking_Connectivity" = [ "Networking" ]; + "Networking_NetworkOperators" = [ "Networking" ]; + "Networking_Proximity" = [ "Networking" ]; + "Networking_PushNotifications" = [ "Networking" ]; + "Networking_ServiceDiscovery" = [ "Networking" ]; + "Networking_ServiceDiscovery_Dnssd" = [ "Networking_ServiceDiscovery" ]; + "Networking_Sockets" = [ "Networking" ]; + "Networking_Vpn" = [ "Networking" ]; + "Networking_XboxLive" = [ "Networking" ]; + "Perception" = [ "Foundation" ]; + "Perception_Automation" = [ "Perception" ]; + "Perception_Automation_Core" = [ "Perception_Automation" ]; + "Perception_People" = [ "Perception" ]; + "Perception_Spatial" = [ "Perception" ]; + "Perception_Spatial_Preview" = [ "Perception_Spatial" ]; + "Perception_Spatial_Surfaces" = [ "Perception_Spatial" ]; + "Phone" = [ "Foundation" ]; + "Phone_ApplicationModel" = [ "Phone" ]; + "Phone_Devices" = [ "Phone" ]; + "Phone_Devices_Notification" = [ "Phone_Devices" ]; + "Phone_Devices_Power" = [ "Phone_Devices" ]; + "Phone_Management" = [ "Phone" ]; + "Phone_Management_Deployment" = [ "Phone_Management" ]; + "Phone_Media" = [ "Phone" ]; + "Phone_Media_Devices" = [ "Phone_Media" ]; + "Phone_Notification" = [ "Phone" ]; + "Phone_Notification_Management" = [ "Phone_Notification" ]; + "Phone_PersonalInformation" = [ "Phone" ]; + "Phone_PersonalInformation_Provisioning" = [ "Phone_PersonalInformation" ]; + "Phone_Speech" = [ "Phone" ]; + "Phone_Speech_Recognition" = [ "Phone_Speech" ]; + "Phone_StartScreen" = [ "Phone" ]; + "Phone_System" = [ "Phone" ]; + "Phone_System_Power" = [ "Phone_System" ]; + "Phone_System_Profile" = [ "Phone_System" ]; + "Phone_System_UserProfile" = [ "Phone_System" ]; + "Phone_System_UserProfile_GameServices" = [ "Phone_System_UserProfile" ]; + "Phone_System_UserProfile_GameServices_Core" = [ "Phone_System_UserProfile_GameServices" ]; + "Phone_UI" = [ "Phone" ]; + "Phone_UI_Input" = [ "Phone_UI" ]; + "Security" = [ "Foundation" ]; + "Security_Authentication" = [ "Security" ]; + "Security_Authentication_Identity" = [ "Security_Authentication" ]; + "Security_Authentication_Identity_Core" = [ "Security_Authentication_Identity" ]; + "Security_Authentication_OnlineId" = [ "Security_Authentication" ]; + "Security_Authentication_Web" = [ "Security_Authentication" ]; + "Security_Authentication_Web_Core" = [ "Security_Authentication_Web" ]; + "Security_Authentication_Web_Provider" = [ "Security_Authentication_Web" ]; + "Security_Authorization" = [ "Security" ]; + "Security_Authorization_AppCapabilityAccess" = [ "Security_Authorization" ]; + "Security_Credentials" = [ "Security" ]; + "Security_Credentials_UI" = [ "Security_Credentials" ]; + "Security_Cryptography" = [ "Security" ]; + "Security_Cryptography_Certificates" = [ "Security_Cryptography" ]; + "Security_Cryptography_Core" = [ "Security_Cryptography" ]; + "Security_Cryptography_DataProtection" = [ "Security_Cryptography" ]; + "Security_DataProtection" = [ "Security" ]; + "Security_EnterpriseData" = [ "Security" ]; + "Security_ExchangeActiveSyncProvisioning" = [ "Security" ]; + "Security_Isolation" = [ "Security" ]; + "Services" = [ "Foundation" ]; + "Services_Maps" = [ "Services" ]; + "Services_Maps_Guidance" = [ "Services_Maps" ]; + "Services_Maps_LocalSearch" = [ "Services_Maps" ]; + "Services_Maps_OfflineMaps" = [ "Services_Maps" ]; + "Services_Store" = [ "Services" ]; + "Services_TargetedContent" = [ "Services" ]; + "Storage" = [ "Foundation" ]; + "Storage_AccessCache" = [ "Storage" ]; + "Storage_BulkAccess" = [ "Storage" ]; + "Storage_Compression" = [ "Storage" ]; + "Storage_FileProperties" = [ "Storage" ]; + "Storage_Pickers" = [ "Storage" ]; + "Storage_Pickers_Provider" = [ "Storage_Pickers" ]; + "Storage_Provider" = [ "Storage" ]; + "Storage_Search" = [ "Storage" ]; + "Storage_Streams" = [ "Storage" ]; + "System" = [ "Foundation" ]; + "System_Diagnostics" = [ "System" ]; + "System_Diagnostics_DevicePortal" = [ "System_Diagnostics" ]; + "System_Diagnostics_Telemetry" = [ "System_Diagnostics" ]; + "System_Diagnostics_TraceReporting" = [ "System_Diagnostics" ]; + "System_Display" = [ "System" ]; + "System_Implementation" = [ "System" ]; + "System_Implementation_FileExplorer" = [ "System_Implementation" ]; + "System_Inventory" = [ "System" ]; + "System_Power" = [ "System" ]; + "System_Profile" = [ "System" ]; + "System_Profile_SystemManufacturers" = [ "System_Profile" ]; + "System_RemoteDesktop" = [ "System" ]; + "System_RemoteDesktop_Input" = [ "System_RemoteDesktop" ]; + "System_RemoteDesktop_Provider" = [ "System_RemoteDesktop" ]; + "System_RemoteSystems" = [ "System" ]; + "System_Threading" = [ "System" ]; + "System_Threading_Core" = [ "System_Threading" ]; + "System_Update" = [ "System" ]; + "System_UserProfile" = [ "System" ]; + "UI" = [ "Foundation" ]; + "UI_Accessibility" = [ "UI" ]; + "UI_ApplicationSettings" = [ "UI" ]; + "UI_Composition" = [ "UI" ]; + "UI_Composition_Core" = [ "UI_Composition" ]; + "UI_Composition_Desktop" = [ "UI_Composition" ]; + "UI_Composition_Diagnostics" = [ "UI_Composition" ]; + "UI_Composition_Effects" = [ "UI_Composition" ]; + "UI_Composition_Interactions" = [ "UI_Composition" ]; + "UI_Composition_Scenes" = [ "UI_Composition" ]; + "UI_Core" = [ "UI" ]; + "UI_Core_AnimationMetrics" = [ "UI_Core" ]; + "UI_Core_Preview" = [ "UI_Core" ]; + "UI_Input" = [ "UI" ]; + "UI_Input_Core" = [ "UI_Input" ]; + "UI_Input_Inking" = [ "UI_Input" ]; + "UI_Input_Inking_Analysis" = [ "UI_Input_Inking" ]; + "UI_Input_Inking_Core" = [ "UI_Input_Inking" ]; + "UI_Input_Inking_Preview" = [ "UI_Input_Inking" ]; + "UI_Input_Preview" = [ "UI_Input" ]; + "UI_Input_Preview_Injection" = [ "UI_Input_Preview" ]; + "UI_Input_Spatial" = [ "UI_Input" ]; + "UI_Notifications" = [ "UI" ]; + "UI_Notifications_Management" = [ "UI_Notifications" ]; + "UI_Notifications_Preview" = [ "UI_Notifications" ]; + "UI_Popups" = [ "UI" ]; + "UI_Shell" = [ "UI" ]; + "UI_StartScreen" = [ "UI" ]; + "UI_Text" = [ "UI" ]; + "UI_Text_Core" = [ "UI_Text" ]; + "UI_UIAutomation" = [ "UI" ]; + "UI_UIAutomation_Core" = [ "UI_UIAutomation" ]; + "UI_ViewManagement" = [ "UI" ]; + "UI_ViewManagement_Core" = [ "UI_ViewManagement" ]; + "UI_WebUI" = [ "UI" ]; + "UI_WebUI_Core" = [ "UI_WebUI" ]; + "UI_WindowManagement" = [ "UI" ]; + "UI_WindowManagement_Preview" = [ "UI_WindowManagement" ]; + "Wdk" = [ "Win32_Foundation" ]; + "Wdk_Devices" = [ "Wdk" ]; + "Wdk_Devices_HumanInterfaceDevice" = [ "Wdk_Devices" ]; + "Wdk_Foundation" = [ "Wdk" ]; + "Wdk_Graphics" = [ "Wdk" ]; + "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_NetworkManagement" = [ "Wdk" ]; + "Wdk_NetworkManagement_Ndis" = [ "Wdk_NetworkManagement" ]; + "Wdk_NetworkManagement_WindowsFilteringPlatform" = [ "Wdk_NetworkManagement" ]; + "Wdk_Storage" = [ "Wdk" ]; + "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; + "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; + "Wdk_System" = [ "Wdk" ]; + "Wdk_System_IO" = [ "Wdk_System" ]; + "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Wdk_System_Registry" = [ "Wdk_System" ]; + "Wdk_System_SystemInformation" = [ "Wdk_System" ]; + "Wdk_System_SystemServices" = [ "Wdk_System" ]; + "Wdk_System_Threading" = [ "Wdk_System" ]; + "Web" = [ "Foundation" ]; + "Web_AtomPub" = [ "Web" ]; + "Web_Http" = [ "Web" ]; + "Web_Http_Diagnostics" = [ "Web_Http" ]; + "Web_Http_Filters" = [ "Web_Http" ]; + "Web_Http_Headers" = [ "Web_Http" ]; + "Web_Syndication" = [ "Web" ]; + "Web_UI" = [ "Web" ]; + "Web_UI_Interop" = [ "Web_UI" ]; + "Win32" = [ "Win32_Foundation" ]; + "Win32_AI" = [ "Win32" ]; + "Win32_AI_MachineLearning" = [ "Win32_AI" ]; + "Win32_AI_MachineLearning_DirectML" = [ "Win32_AI_MachineLearning" ]; + "Win32_AI_MachineLearning_WinML" = [ "Win32_AI_MachineLearning" ]; + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Data_Xml" = [ "Win32_Data" ]; + "Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ]; + "Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAccess" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_FunctionDiscovery" = [ "Win32_Devices" ]; + "Win32_Devices_Geolocation" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_ImageAcquisition" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_CompositionSwapchain" = [ "Win32_Graphics" ]; + "Win32_Graphics_DXCore" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct2D" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct2D_Common" = [ "Win32_Graphics_Direct2D" ]; + "Win32_Graphics_Direct3D" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D10" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D11" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D11on12" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D12" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D9" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D9on12" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D_Dxc" = [ "Win32_Graphics_Direct3D" ]; + "Win32_Graphics_Direct3D_Fxc" = [ "Win32_Graphics_Direct3D" ]; + "Win32_Graphics_DirectComposition" = [ "Win32_Graphics" ]; + "Win32_Graphics_DirectDraw" = [ "Win32_Graphics" ]; + "Win32_Graphics_DirectManipulation" = [ "Win32_Graphics" ]; + "Win32_Graphics_DirectWrite" = [ "Win32_Graphics" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Dxgi" = [ "Win32_Graphics" ]; + "Win32_Graphics_Dxgi_Common" = [ "Win32_Graphics_Dxgi" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_Imaging" = [ "Win32_Graphics" ]; + "Win32_Graphics_Imaging_D2D" = [ "Win32_Graphics_Imaging" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_Audio_Apo" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_DirectSound" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ]; + "Win32_Media_DeviceManager" = [ "Win32_Media" ]; + "Win32_Media_DirectShow" = [ "Win32_Media" ]; + "Win32_Media_DirectShow_Tv" = [ "Win32_Media_DirectShow" ]; + "Win32_Media_DirectShow_Xml" = [ "Win32_Media_DirectShow" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_LibrarySharingServices" = [ "Win32_Media" ]; + "Win32_Media_MediaFoundation" = [ "Win32_Media" ]; + "Win32_Media_MediaPlayer" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_PictureAcquisition" = [ "Win32_Media" ]; + "Win32_Media_Speech" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_MobileBroadband" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkPolicyServer" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectNow" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_BackgroundIntelligentTransferService" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_NetworkListManager" = [ "Win32_Networking" ]; + "Win32_Networking_RemoteDifferentialCompression" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ]; + "Win32_Security_ConfigurationSnapin" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_Tpm" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DataDeduplication" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileServerResourceManager" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_Nvme" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ]; + "Win32_Storage_Vss" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_AssessmentTool" = [ "Win32_System" ]; + "Win32_System_ClrHosting" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_CallObj" = [ "Win32_System_Com" ]; + "Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ]; + "Win32_System_Com_Events" = [ "Win32_System_Com" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_UI" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_Contacts" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DesktopSharing" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ClrProfiling" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug_ActiveScript" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_TraceLogging" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Mmc" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_ParentalControls" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_RealTimeCommunications" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteAssistance" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_ServerBackup" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_SideShow" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_TaskScheduler" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_TransactionServer" = [ "Win32_System" ]; + "Win32_System_UpdateAgent" = [ "Win32_System" ]; + "Win32_System_UpdateAssessment" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_Variant" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WinRT" = [ "Win32_System" ]; + "Win32_System_WinRT_AllJoyn" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Composition" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_CoreInputView" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Direct3D11" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Display" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Graphics" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Graphics_Capture" = [ "Win32_System_WinRT_Graphics" ]; + "Win32_System_WinRT_Graphics_Direct2D" = [ "Win32_System_WinRT_Graphics" ]; + "Win32_System_WinRT_Graphics_Imaging" = [ "Win32_System_WinRT_Graphics" ]; + "Win32_System_WinRT_Holographic" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Isolation" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_ML" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Media" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Metadata" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Pdf" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Printing" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Shell" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Storage" = [ "Win32_System_WinRT" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_WindowsSync" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_Animation" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Ink" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Radial" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Notifications" = [ "Win32_UI" ]; + "Win32_UI_Ribbon" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_UI_Wpf" = [ "Win32_UI" ]; + "Win32_Web" = [ "Win32" ]; + "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; + "default" = [ "std" ]; + "std" = [ "windows-core/std" ]; + }; + resolvedDefaultFeatures = [ "Wdk" "Wdk_System" "Wdk_System_SystemInformation" "Wdk_System_SystemServices" "Wdk_System_Threading" "Win32" "Win32_Foundation" "Win32_NetworkManagement" "Win32_NetworkManagement_IpHelper" "Win32_NetworkManagement_Ndis" "Win32_NetworkManagement_NetManagement" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Authentication" "Win32_Security_Authentication_Identity" "Win32_Security_Authorization" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Com" "Win32_System_Diagnostics" "Win32_System_Diagnostics_Debug" "Win32_System_Diagnostics_ToolHelp" "Win32_System_IO" "Win32_System_Ioctl" "Win32_System_Kernel" "Win32_System_Memory" "Win32_System_Performance" "Win32_System_Power" "Win32_System_ProcessStatus" "Win32_System_Registry" "Win32_System_RemoteDesktop" "Win32_System_Rpc" "Win32_System_SystemInformation" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_Variant" "Win32_System_WindowsProgramming" "Win32_System_Wmi" "Win32_UI" "Win32_UI_Shell" "default" "std" ]; + }; + "windows 0.61.3" = rec { + crateName = "windows"; + version = "0.61.3"; + edition = "2021"; + sha256 = "14v8dln7i4ccskd8danzri22bkjkbmgzh284j3vaxhd4cykx7awv"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-collections"; + packageId = "windows-collections"; + usesDefaultFeatures = false; + } + { + name = "windows-core"; + packageId = "windows-core 0.61.2"; + usesDefaultFeatures = false; + } + { + name = "windows-future"; + packageId = "windows-future"; + usesDefaultFeatures = false; + } + { + name = "windows-link"; + packageId = "windows-link 0.1.3"; + usesDefaultFeatures = false; + } + { + name = "windows-numerics"; + packageId = "windows-numerics"; + usesDefaultFeatures = false; + } + ]; + features = { + "AI" = [ "Foundation" ]; + "AI_MachineLearning" = [ "AI" ]; + "ApplicationModel" = [ "Foundation" ]; + "ApplicationModel_Activation" = [ "ApplicationModel" ]; + "ApplicationModel_AppExtensions" = [ "ApplicationModel" ]; + "ApplicationModel_AppService" = [ "ApplicationModel" ]; + "ApplicationModel_Appointments" = [ "ApplicationModel" ]; + "ApplicationModel_Appointments_AppointmentsProvider" = [ "ApplicationModel_Appointments" ]; + "ApplicationModel_Appointments_DataProvider" = [ "ApplicationModel_Appointments" ]; + "ApplicationModel_Background" = [ "ApplicationModel" ]; + "ApplicationModel_Calls" = [ "ApplicationModel" ]; + "ApplicationModel_Calls_Background" = [ "ApplicationModel_Calls" ]; + "ApplicationModel_Calls_Provider" = [ "ApplicationModel_Calls" ]; + "ApplicationModel_Chat" = [ "ApplicationModel" ]; + "ApplicationModel_CommunicationBlocking" = [ "ApplicationModel" ]; + "ApplicationModel_Contacts" = [ "ApplicationModel" ]; + "ApplicationModel_Contacts_DataProvider" = [ "ApplicationModel_Contacts" ]; + "ApplicationModel_Contacts_Provider" = [ "ApplicationModel_Contacts" ]; + "ApplicationModel_ConversationalAgent" = [ "ApplicationModel" ]; + "ApplicationModel_Core" = [ "ApplicationModel" ]; + "ApplicationModel_DataTransfer" = [ "ApplicationModel" ]; + "ApplicationModel_DataTransfer_DragDrop" = [ "ApplicationModel_DataTransfer" ]; + "ApplicationModel_DataTransfer_DragDrop_Core" = [ "ApplicationModel_DataTransfer_DragDrop" ]; + "ApplicationModel_DataTransfer_ShareTarget" = [ "ApplicationModel_DataTransfer" ]; + "ApplicationModel_Email" = [ "ApplicationModel" ]; + "ApplicationModel_Email_DataProvider" = [ "ApplicationModel_Email" ]; + "ApplicationModel_ExtendedExecution" = [ "ApplicationModel" ]; + "ApplicationModel_ExtendedExecution_Foreground" = [ "ApplicationModel_ExtendedExecution" ]; + "ApplicationModel_Holographic" = [ "ApplicationModel" ]; + "ApplicationModel_LockScreen" = [ "ApplicationModel" ]; + "ApplicationModel_PackageExtensions" = [ "ApplicationModel" ]; + "ApplicationModel_Payments" = [ "ApplicationModel" ]; + "ApplicationModel_Payments_Provider" = [ "ApplicationModel_Payments" ]; + "ApplicationModel_Preview" = [ "ApplicationModel" ]; + "ApplicationModel_Preview_Holographic" = [ "ApplicationModel_Preview" ]; + "ApplicationModel_Preview_InkWorkspace" = [ "ApplicationModel_Preview" ]; + "ApplicationModel_Preview_Notes" = [ "ApplicationModel_Preview" ]; + "ApplicationModel_Resources" = [ "ApplicationModel" ]; + "ApplicationModel_Resources_Core" = [ "ApplicationModel_Resources" ]; + "ApplicationModel_Resources_Management" = [ "ApplicationModel_Resources" ]; + "ApplicationModel_Search" = [ "ApplicationModel" ]; + "ApplicationModel_Search_Core" = [ "ApplicationModel_Search" ]; + "ApplicationModel_UserActivities" = [ "ApplicationModel" ]; + "ApplicationModel_UserActivities_Core" = [ "ApplicationModel_UserActivities" ]; + "ApplicationModel_UserDataAccounts" = [ "ApplicationModel" ]; + "ApplicationModel_UserDataAccounts_Provider" = [ "ApplicationModel_UserDataAccounts" ]; + "ApplicationModel_UserDataAccounts_SystemAccess" = [ "ApplicationModel_UserDataAccounts" ]; + "ApplicationModel_UserDataTasks" = [ "ApplicationModel" ]; + "ApplicationModel_UserDataTasks_DataProvider" = [ "ApplicationModel_UserDataTasks" ]; + "ApplicationModel_VoiceCommands" = [ "ApplicationModel" ]; + "ApplicationModel_Wallet" = [ "ApplicationModel" ]; + "ApplicationModel_Wallet_System" = [ "ApplicationModel_Wallet" ]; + "Data" = [ "Foundation" ]; + "Data_Html" = [ "Data" ]; + "Data_Json" = [ "Data" ]; + "Data_Pdf" = [ "Data" ]; + "Data_Text" = [ "Data" ]; + "Data_Xml" = [ "Data" ]; + "Data_Xml_Dom" = [ "Data_Xml" ]; + "Data_Xml_Xsl" = [ "Data_Xml" ]; + "Devices" = [ "Foundation" ]; + "Devices_Adc" = [ "Devices" ]; + "Devices_Adc_Provider" = [ "Devices_Adc" ]; + "Devices_Background" = [ "Devices" ]; + "Devices_Bluetooth" = [ "Devices" ]; + "Devices_Bluetooth_Advertisement" = [ "Devices_Bluetooth" ]; + "Devices_Bluetooth_Background" = [ "Devices_Bluetooth" ]; + "Devices_Bluetooth_GenericAttributeProfile" = [ "Devices_Bluetooth" ]; + "Devices_Bluetooth_Rfcomm" = [ "Devices_Bluetooth" ]; + "Devices_Custom" = [ "Devices" ]; + "Devices_Display" = [ "Devices" ]; + "Devices_Display_Core" = [ "Devices_Display" ]; + "Devices_Enumeration" = [ "Devices" ]; + "Devices_Enumeration_Pnp" = [ "Devices_Enumeration" ]; + "Devices_Geolocation" = [ "Devices" ]; + "Devices_Geolocation_Geofencing" = [ "Devices_Geolocation" ]; + "Devices_Geolocation_Provider" = [ "Devices_Geolocation" ]; + "Devices_Gpio" = [ "Devices" ]; + "Devices_Gpio_Provider" = [ "Devices_Gpio" ]; + "Devices_Haptics" = [ "Devices" ]; + "Devices_HumanInterfaceDevice" = [ "Devices" ]; + "Devices_I2c" = [ "Devices" ]; + "Devices_I2c_Provider" = [ "Devices_I2c" ]; + "Devices_Input" = [ "Devices" ]; + "Devices_Input_Preview" = [ "Devices_Input" ]; + "Devices_Lights" = [ "Devices" ]; + "Devices_Lights_Effects" = [ "Devices_Lights" ]; + "Devices_Midi" = [ "Devices" ]; + "Devices_PointOfService" = [ "Devices" ]; + "Devices_PointOfService_Provider" = [ "Devices_PointOfService" ]; + "Devices_Portable" = [ "Devices" ]; + "Devices_Power" = [ "Devices" ]; + "Devices_Printers" = [ "Devices" ]; + "Devices_Printers_Extensions" = [ "Devices_Printers" ]; + "Devices_Pwm" = [ "Devices" ]; + "Devices_Pwm_Provider" = [ "Devices_Pwm" ]; + "Devices_Radios" = [ "Devices" ]; + "Devices_Scanners" = [ "Devices" ]; + "Devices_Sensors" = [ "Devices" ]; + "Devices_Sensors_Custom" = [ "Devices_Sensors" ]; + "Devices_SerialCommunication" = [ "Devices" ]; + "Devices_SmartCards" = [ "Devices" ]; + "Devices_Sms" = [ "Devices" ]; + "Devices_Spi" = [ "Devices" ]; + "Devices_Spi_Provider" = [ "Devices_Spi" ]; + "Devices_Usb" = [ "Devices" ]; + "Devices_WiFi" = [ "Devices" ]; + "Devices_WiFiDirect" = [ "Devices" ]; + "Devices_WiFiDirect_Services" = [ "Devices_WiFiDirect" ]; + "Embedded" = [ "Foundation" ]; + "Embedded_DeviceLockdown" = [ "Embedded" ]; + "Foundation_Collections" = [ "Foundation" ]; + "Foundation_Diagnostics" = [ "Foundation" ]; + "Foundation_Metadata" = [ "Foundation" ]; + "Foundation_Numerics" = [ "Foundation" ]; + "Gaming" = [ "Foundation" ]; + "Gaming_Input" = [ "Gaming" ]; + "Gaming_Input_Custom" = [ "Gaming_Input" ]; + "Gaming_Input_ForceFeedback" = [ "Gaming_Input" ]; + "Gaming_Input_Preview" = [ "Gaming_Input" ]; + "Gaming_Preview" = [ "Gaming" ]; + "Gaming_Preview_GamesEnumeration" = [ "Gaming_Preview" ]; + "Gaming_UI" = [ "Gaming" ]; + "Gaming_XboxLive" = [ "Gaming" ]; + "Gaming_XboxLive_Storage" = [ "Gaming_XboxLive" ]; + "Globalization" = [ "Foundation" ]; + "Globalization_Collation" = [ "Globalization" ]; + "Globalization_DateTimeFormatting" = [ "Globalization" ]; + "Globalization_Fonts" = [ "Globalization" ]; + "Globalization_NumberFormatting" = [ "Globalization" ]; + "Globalization_PhoneNumberFormatting" = [ "Globalization" ]; + "Graphics" = [ "Foundation" ]; + "Graphics_Capture" = [ "Graphics" ]; + "Graphics_DirectX" = [ "Graphics" ]; + "Graphics_DirectX_Direct3D11" = [ "Graphics_DirectX" ]; + "Graphics_Display" = [ "Graphics" ]; + "Graphics_Display_Core" = [ "Graphics_Display" ]; + "Graphics_Effects" = [ "Graphics" ]; + "Graphics_Holographic" = [ "Graphics" ]; + "Graphics_Imaging" = [ "Graphics" ]; + "Graphics_Printing" = [ "Graphics" ]; + "Graphics_Printing3D" = [ "Graphics" ]; + "Graphics_Printing_OptionDetails" = [ "Graphics_Printing" ]; + "Graphics_Printing_PrintSupport" = [ "Graphics_Printing" ]; + "Graphics_Printing_PrintTicket" = [ "Graphics_Printing" ]; + "Graphics_Printing_Workflow" = [ "Graphics_Printing" ]; + "Management" = [ "Foundation" ]; + "Management_Core" = [ "Management" ]; + "Management_Deployment" = [ "Management" ]; + "Management_Deployment_Preview" = [ "Management_Deployment" ]; + "Management_Policies" = [ "Management" ]; + "Management_Setup" = [ "Management" ]; + "Management_Update" = [ "Management" ]; + "Management_Workplace" = [ "Management" ]; + "Media" = [ "Foundation" ]; + "Media_AppBroadcasting" = [ "Media" ]; + "Media_AppRecording" = [ "Media" ]; + "Media_Audio" = [ "Media" ]; + "Media_Capture" = [ "Media" ]; + "Media_Capture_Core" = [ "Media_Capture" ]; + "Media_Capture_Frames" = [ "Media_Capture" ]; + "Media_Casting" = [ "Media" ]; + "Media_ClosedCaptioning" = [ "Media" ]; + "Media_ContentRestrictions" = [ "Media" ]; + "Media_Control" = [ "Media" ]; + "Media_Core" = [ "Media" ]; + "Media_Core_Preview" = [ "Media_Core" ]; + "Media_Devices" = [ "Media" ]; + "Media_Devices_Core" = [ "Media_Devices" ]; + "Media_DialProtocol" = [ "Media" ]; + "Media_Editing" = [ "Media" ]; + "Media_Effects" = [ "Media" ]; + "Media_FaceAnalysis" = [ "Media" ]; + "Media_Import" = [ "Media" ]; + "Media_MediaProperties" = [ "Media" ]; + "Media_Miracast" = [ "Media" ]; + "Media_Ocr" = [ "Media" ]; + "Media_PlayTo" = [ "Media" ]; + "Media_Playback" = [ "Media" ]; + "Media_Playlists" = [ "Media" ]; + "Media_Protection" = [ "Media" ]; + "Media_Protection_PlayReady" = [ "Media_Protection" ]; + "Media_Render" = [ "Media" ]; + "Media_SpeechRecognition" = [ "Media" ]; + "Media_SpeechSynthesis" = [ "Media" ]; + "Media_Streaming" = [ "Media" ]; + "Media_Streaming_Adaptive" = [ "Media_Streaming" ]; + "Media_Transcoding" = [ "Media" ]; + "Networking" = [ "Foundation" ]; + "Networking_BackgroundTransfer" = [ "Networking" ]; + "Networking_Connectivity" = [ "Networking" ]; + "Networking_NetworkOperators" = [ "Networking" ]; + "Networking_Proximity" = [ "Networking" ]; + "Networking_PushNotifications" = [ "Networking" ]; + "Networking_ServiceDiscovery" = [ "Networking" ]; + "Networking_ServiceDiscovery_Dnssd" = [ "Networking_ServiceDiscovery" ]; + "Networking_Sockets" = [ "Networking" ]; + "Networking_Vpn" = [ "Networking" ]; + "Networking_XboxLive" = [ "Networking" ]; + "Perception" = [ "Foundation" ]; + "Perception_Automation" = [ "Perception" ]; + "Perception_Automation_Core" = [ "Perception_Automation" ]; + "Perception_People" = [ "Perception" ]; + "Perception_Spatial" = [ "Perception" ]; + "Perception_Spatial_Preview" = [ "Perception_Spatial" ]; + "Perception_Spatial_Surfaces" = [ "Perception_Spatial" ]; + "Phone" = [ "Foundation" ]; + "Phone_ApplicationModel" = [ "Phone" ]; + "Phone_Devices" = [ "Phone" ]; + "Phone_Devices_Notification" = [ "Phone_Devices" ]; + "Phone_Devices_Power" = [ "Phone_Devices" ]; + "Phone_Management" = [ "Phone" ]; + "Phone_Management_Deployment" = [ "Phone_Management" ]; + "Phone_Media" = [ "Phone" ]; + "Phone_Media_Devices" = [ "Phone_Media" ]; + "Phone_Notification" = [ "Phone" ]; + "Phone_Notification_Management" = [ "Phone_Notification" ]; + "Phone_PersonalInformation" = [ "Phone" ]; + "Phone_PersonalInformation_Provisioning" = [ "Phone_PersonalInformation" ]; + "Phone_Speech" = [ "Phone" ]; + "Phone_Speech_Recognition" = [ "Phone_Speech" ]; + "Phone_StartScreen" = [ "Phone" ]; + "Phone_System" = [ "Phone" ]; + "Phone_System_Power" = [ "Phone_System" ]; + "Phone_System_Profile" = [ "Phone_System" ]; + "Phone_System_UserProfile" = [ "Phone_System" ]; + "Phone_System_UserProfile_GameServices" = [ "Phone_System_UserProfile" ]; + "Phone_System_UserProfile_GameServices_Core" = [ "Phone_System_UserProfile_GameServices" ]; + "Phone_UI" = [ "Phone" ]; + "Phone_UI_Input" = [ "Phone_UI" ]; + "Security" = [ "Foundation" ]; + "Security_Authentication" = [ "Security" ]; + "Security_Authentication_Identity" = [ "Security_Authentication" ]; + "Security_Authentication_Identity_Core" = [ "Security_Authentication_Identity" ]; + "Security_Authentication_OnlineId" = [ "Security_Authentication" ]; + "Security_Authentication_Web" = [ "Security_Authentication" ]; + "Security_Authentication_Web_Core" = [ "Security_Authentication_Web" ]; + "Security_Authentication_Web_Provider" = [ "Security_Authentication_Web" ]; + "Security_Authorization" = [ "Security" ]; + "Security_Authorization_AppCapabilityAccess" = [ "Security_Authorization" ]; + "Security_Credentials" = [ "Security" ]; + "Security_Credentials_UI" = [ "Security_Credentials" ]; + "Security_Cryptography" = [ "Security" ]; + "Security_Cryptography_Certificates" = [ "Security_Cryptography" ]; + "Security_Cryptography_Core" = [ "Security_Cryptography" ]; + "Security_Cryptography_DataProtection" = [ "Security_Cryptography" ]; + "Security_DataProtection" = [ "Security" ]; + "Security_EnterpriseData" = [ "Security" ]; + "Security_ExchangeActiveSyncProvisioning" = [ "Security" ]; + "Security_Isolation" = [ "Security" ]; + "Services" = [ "Foundation" ]; + "Services_Maps" = [ "Services" ]; + "Services_Maps_Guidance" = [ "Services_Maps" ]; + "Services_Maps_LocalSearch" = [ "Services_Maps" ]; + "Services_Maps_OfflineMaps" = [ "Services_Maps" ]; + "Services_Store" = [ "Services" ]; + "Services_TargetedContent" = [ "Services" ]; + "Storage" = [ "Foundation" ]; + "Storage_AccessCache" = [ "Storage" ]; + "Storage_BulkAccess" = [ "Storage" ]; + "Storage_Compression" = [ "Storage" ]; + "Storage_FileProperties" = [ "Storage" ]; + "Storage_Pickers" = [ "Storage" ]; + "Storage_Pickers_Provider" = [ "Storage_Pickers" ]; + "Storage_Provider" = [ "Storage" ]; + "Storage_Search" = [ "Storage" ]; + "Storage_Streams" = [ "Storage" ]; + "System" = [ "Foundation" ]; + "System_Diagnostics" = [ "System" ]; + "System_Diagnostics_DevicePortal" = [ "System_Diagnostics" ]; + "System_Diagnostics_Telemetry" = [ "System_Diagnostics" ]; + "System_Diagnostics_TraceReporting" = [ "System_Diagnostics" ]; + "System_Display" = [ "System" ]; + "System_Implementation" = [ "System" ]; + "System_Implementation_FileExplorer" = [ "System_Implementation" ]; + "System_Inventory" = [ "System" ]; + "System_Power" = [ "System" ]; + "System_Profile" = [ "System" ]; + "System_Profile_SystemManufacturers" = [ "System_Profile" ]; + "System_RemoteDesktop" = [ "System" ]; + "System_RemoteDesktop_Input" = [ "System_RemoteDesktop" ]; + "System_RemoteDesktop_Provider" = [ "System_RemoteDesktop" ]; + "System_RemoteSystems" = [ "System" ]; + "System_Threading" = [ "System" ]; + "System_Threading_Core" = [ "System_Threading" ]; + "System_Update" = [ "System" ]; + "System_UserProfile" = [ "System" ]; + "UI" = [ "Foundation" ]; + "UI_Accessibility" = [ "UI" ]; + "UI_ApplicationSettings" = [ "UI" ]; + "UI_Composition" = [ "UI" ]; + "UI_Composition_Core" = [ "UI_Composition" ]; + "UI_Composition_Desktop" = [ "UI_Composition" ]; + "UI_Composition_Diagnostics" = [ "UI_Composition" ]; + "UI_Composition_Effects" = [ "UI_Composition" ]; + "UI_Composition_Interactions" = [ "UI_Composition" ]; + "UI_Composition_Scenes" = [ "UI_Composition" ]; + "UI_Core" = [ "UI" ]; + "UI_Core_AnimationMetrics" = [ "UI_Core" ]; + "UI_Core_Preview" = [ "UI_Core" ]; + "UI_Input" = [ "UI" ]; + "UI_Input_Core" = [ "UI_Input" ]; + "UI_Input_Inking" = [ "UI_Input" ]; + "UI_Input_Inking_Analysis" = [ "UI_Input_Inking" ]; + "UI_Input_Inking_Core" = [ "UI_Input_Inking" ]; + "UI_Input_Inking_Preview" = [ "UI_Input_Inking" ]; + "UI_Input_Preview" = [ "UI_Input" ]; + "UI_Input_Preview_Injection" = [ "UI_Input_Preview" ]; + "UI_Input_Spatial" = [ "UI_Input" ]; + "UI_Notifications" = [ "UI" ]; + "UI_Notifications_Management" = [ "UI_Notifications" ]; + "UI_Notifications_Preview" = [ "UI_Notifications" ]; + "UI_Popups" = [ "UI" ]; + "UI_Shell" = [ "UI" ]; + "UI_StartScreen" = [ "UI" ]; + "UI_Text" = [ "UI" ]; + "UI_Text_Core" = [ "UI_Text" ]; + "UI_UIAutomation" = [ "UI" ]; + "UI_UIAutomation_Core" = [ "UI_UIAutomation" ]; + "UI_ViewManagement" = [ "UI" ]; + "UI_ViewManagement_Core" = [ "UI_ViewManagement" ]; + "UI_WebUI" = [ "UI" ]; + "UI_WebUI_Core" = [ "UI_WebUI" ]; + "UI_WindowManagement" = [ "UI" ]; + "UI_WindowManagement_Preview" = [ "UI_WindowManagement" ]; + "Wdk" = [ "Win32_Foundation" ]; + "Wdk_Devices" = [ "Wdk" ]; + "Wdk_Devices_Bluetooth" = [ "Wdk_Devices" ]; + "Wdk_Devices_HumanInterfaceDevice" = [ "Wdk_Devices" ]; + "Wdk_Foundation" = [ "Wdk" ]; + "Wdk_Graphics" = [ "Wdk" ]; + "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_NetworkManagement" = [ "Wdk" ]; + "Wdk_NetworkManagement_Ndis" = [ "Wdk_NetworkManagement" ]; + "Wdk_NetworkManagement_WindowsFilteringPlatform" = [ "Wdk_NetworkManagement" ]; + "Wdk_Storage" = [ "Wdk" ]; + "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; + "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; + "Wdk_System" = [ "Wdk" ]; + "Wdk_System_IO" = [ "Wdk_System" ]; + "Wdk_System_Memory" = [ "Wdk_System" ]; + "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Wdk_System_Registry" = [ "Wdk_System" ]; + "Wdk_System_SystemInformation" = [ "Wdk_System" ]; + "Wdk_System_SystemServices" = [ "Wdk_System" ]; + "Wdk_System_Threading" = [ "Wdk_System" ]; + "Web" = [ "Foundation" ]; + "Web_AtomPub" = [ "Web" ]; + "Web_Http" = [ "Web" ]; + "Web_Http_Diagnostics" = [ "Web_Http" ]; + "Web_Http_Filters" = [ "Web_Http" ]; + "Web_Http_Headers" = [ "Web_Http" ]; + "Web_Syndication" = [ "Web" ]; + "Web_UI" = [ "Web" ]; + "Web_UI_Interop" = [ "Web_UI" ]; + "Win32" = [ "Win32_Foundation" ]; + "Win32_AI" = [ "Win32" ]; + "Win32_AI_MachineLearning" = [ "Win32_AI" ]; + "Win32_AI_MachineLearning_DirectML" = [ "Win32_AI_MachineLearning" ]; + "Win32_AI_MachineLearning_WinML" = [ "Win32_AI_MachineLearning" ]; + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Data_Xml" = [ "Win32_Data" ]; + "Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ]; + "Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_Beep" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Cdrom" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAccess" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Dvd" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_FunctionDiscovery" = [ "Win32_Devices" ]; + "Win32_Devices_Geolocation" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_ImageAcquisition" = [ "Win32_Devices" ]; + "Win32_Devices_Nfc" = [ "Win32_Devices" ]; + "Win32_Devices_Nfp" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_CompositionSwapchain" = [ "Win32_Graphics" ]; + "Win32_Graphics_DXCore" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct2D" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct2D_Common" = [ "Win32_Graphics_Direct2D" ]; + "Win32_Graphics_Direct3D" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D10" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D11" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D11on12" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D12" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D9" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D9on12" = [ "Win32_Graphics" ]; + "Win32_Graphics_Direct3D_Dxc" = [ "Win32_Graphics_Direct3D" ]; + "Win32_Graphics_Direct3D_Fxc" = [ "Win32_Graphics_Direct3D" ]; + "Win32_Graphics_DirectComposition" = [ "Win32_Graphics" ]; + "Win32_Graphics_DirectDraw" = [ "Win32_Graphics" ]; + "Win32_Graphics_DirectManipulation" = [ "Win32_Graphics" ]; + "Win32_Graphics_DirectWrite" = [ "Win32_Graphics" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Dxgi" = [ "Win32_Graphics" ]; + "Win32_Graphics_Dxgi_Common" = [ "Win32_Graphics_Dxgi" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_Imaging" = [ "Win32_Graphics" ]; + "Win32_Graphics_Imaging_D2D" = [ "Win32_Graphics_Imaging" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_Audio_Apo" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_DirectSound" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ]; + "Win32_Media_DeviceManager" = [ "Win32_Media" ]; + "Win32_Media_DirectShow" = [ "Win32_Media" ]; + "Win32_Media_DirectShow_Tv" = [ "Win32_Media_DirectShow" ]; + "Win32_Media_DirectShow_Xml" = [ "Win32_Media_DirectShow" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_LibrarySharingServices" = [ "Win32_Media" ]; + "Win32_Media_MediaFoundation" = [ "Win32_Media" ]; + "Win32_Media_MediaPlayer" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_PictureAcquisition" = [ "Win32_Media" ]; + "Win32_Media_Speech" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_MobileBroadband" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkPolicyServer" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectNow" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_BackgroundIntelligentTransferService" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_NetworkListManager" = [ "Win32_Networking" ]; + "Win32_Networking_RemoteDifferentialCompression" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ]; + "Win32_Security_ConfigurationSnapin" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_Tpm" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DataDeduplication" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileServerResourceManager" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_Nvme" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ]; + "Win32_Storage_Vss" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_AssessmentTool" = [ "Win32_System" ]; + "Win32_System_ClrHosting" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_CallObj" = [ "Win32_System_Com" ]; + "Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ]; + "Win32_System_Com_Events" = [ "Win32_System_Com" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_UI" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_Contacts" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DesktopSharing" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ClrProfiling" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug_ActiveScript" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_TraceLogging" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Mmc" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_ParentalControls" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_RealTimeCommunications" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteAssistance" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_ServerBackup" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_SideShow" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_TaskScheduler" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_TransactionServer" = [ "Win32_System" ]; + "Win32_System_UpdateAgent" = [ "Win32_System" ]; + "Win32_System_UpdateAssessment" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_Variant" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WinRT" = [ "Win32_System" ]; + "Win32_System_WinRT_AllJoyn" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Composition" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_CoreInputView" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Direct3D11" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Display" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Graphics" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Graphics_Capture" = [ "Win32_System_WinRT_Graphics" ]; + "Win32_System_WinRT_Graphics_Direct2D" = [ "Win32_System_WinRT_Graphics" ]; + "Win32_System_WinRT_Graphics_Imaging" = [ "Win32_System_WinRT_Graphics" ]; + "Win32_System_WinRT_Holographic" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Isolation" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_ML" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Media" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Metadata" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Pdf" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Printing" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Shell" = [ "Win32_System_WinRT" ]; + "Win32_System_WinRT_Storage" = [ "Win32_System_WinRT" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_WindowsSync" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_Animation" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Ink" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Radial" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Notifications" = [ "Win32_UI" ]; + "Win32_UI_Ribbon" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_UI_Wpf" = [ "Win32_UI" ]; + "Win32_Web" = [ "Win32" ]; + "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; + "default" = [ "std" ]; + "std" = [ "windows-core/std" ]; + }; + resolvedDefaultFeatures = [ "Wdk" "Wdk_System" "Wdk_System_SystemInformation" "Wdk_System_SystemServices" "Wdk_System_Threading" "Win32" "Win32_Foundation" "Win32_NetworkManagement" "Win32_NetworkManagement_IpHelper" "Win32_NetworkManagement_Ndis" "Win32_NetworkManagement_NetManagement" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Authentication" "Win32_Security_Authentication_Identity" "Win32_Security_Authorization" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Com" "Win32_System_Diagnostics" "Win32_System_Diagnostics_Debug" "Win32_System_Diagnostics_ToolHelp" "Win32_System_IO" "Win32_System_Ioctl" "Win32_System_Kernel" "Win32_System_Memory" "Win32_System_Ole" "Win32_System_Performance" "Win32_System_Power" "Win32_System_ProcessStatus" "Win32_System_Registry" "Win32_System_RemoteDesktop" "Win32_System_Rpc" "Win32_System_SystemInformation" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_Variant" "Win32_System_WindowsProgramming" "Win32_System_Wmi" "Win32_UI" "Win32_UI_Shell" "default" "std" ]; + }; + "windows-collections" = rec { + crateName = "windows-collections"; + version = "0.2.0"; + edition = "2021"; + sha256 = "1s65anr609qvsjga7w971p6iq964h87670dkfqfypnfgwnswxviv"; + libName = "windows_collections"; + dependencies = [ + { + name = "windows-core"; + packageId = "windows-core 0.61.2"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + }; + "windows-core 0.57.0" = rec { + crateName = "windows-core"; + version = "0.57.0"; + edition = "2021"; + sha256 = "0bc3jxw2jw76xkk3ddvnp5b2m76qmbzv1qncgvb6qrlhl8wj9vfj"; + libName = "windows_core"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-implement"; + packageId = "windows-implement 0.57.0"; + } + { + name = "windows-interface"; + packageId = "windows-interface 0.57.0"; + } + { + name = "windows-result"; + packageId = "windows-result 0.1.2"; + } + { + name = "windows-targets"; + packageId = "windows-targets 0.52.6"; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "windows-core 0.61.2" = rec { + crateName = "windows-core"; + version = "0.61.2"; + edition = "2021"; + sha256 = "1qsa3iw14wk4ngfl7ipcvdf9xyq456ms7cx2i9iwf406p7fx7zf0"; + libName = "windows_core"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-implement"; + packageId = "windows-implement 0.60.2"; + usesDefaultFeatures = false; + } + { + name = "windows-interface"; + packageId = "windows-interface 0.59.3"; + usesDefaultFeatures = false; + } + { + name = "windows-link"; + packageId = "windows-link 0.1.3"; + usesDefaultFeatures = false; + } + { + name = "windows-result"; + packageId = "windows-result 0.3.4"; + usesDefaultFeatures = false; + } + { + name = "windows-strings"; + packageId = "windows-strings 0.4.2"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "windows-result/std" "windows-strings/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "windows-future" = rec { + crateName = "windows-future"; + version = "0.2.1"; + edition = "2021"; + sha256 = "13mdzcdn51ckpzp3frb8glnmkyjr1c30ym9wnzj9zc97hkll2spw"; + libName = "windows_future"; + dependencies = [ + { + name = "windows-core"; + packageId = "windows-core 0.61.2"; + usesDefaultFeatures = false; + } + { + name = "windows-link"; + packageId = "windows-link 0.1.3"; + usesDefaultFeatures = false; + } + { + name = "windows-threading"; + packageId = "windows-threading"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + }; + "windows-implement 0.57.0" = rec { + crateName = "windows-implement"; + version = "0.57.0"; + edition = "2021"; + sha256 = "1mqs7qypclnmx5r8yq5jy3g2d8i27vzag9yzzzxzpdnmb70ds1wi"; + procMacro = true; + libName = "windows_implement"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" "printing" "full" "derive" ]; + } + ]; + + }; + "windows-implement 0.60.2" = rec { + crateName = "windows-implement"; + version = "0.60.2"; + edition = "2021"; + sha256 = "1psxhmklzcf3wjs4b8qb42qb6znvc142cb5pa74rsyxm1822wgh5"; + procMacro = true; + libName = "windows_implement"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" "printing" "full" "clone-impls" ]; + } + ]; + + }; + "windows-interface 0.57.0" = rec { + crateName = "windows-interface"; + version = "0.57.0"; + edition = "2021"; + sha256 = "19zwlzr0q1z9s692681yb5w2lhvwcyx4v95s25hfdkd3isry9gi9"; + procMacro = true; + libName = "windows_interface"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" "printing" "full" "derive" "clone-impls" ]; + } + ]; + + }; + "windows-interface 0.59.3" = rec { + crateName = "windows-interface"; + version = "0.59.3"; + edition = "2021"; + sha256 = "0n73cwrn4247d0axrk7gjp08p34x1723483jxjxjdfkh4m56qc9z"; + procMacro = true; + libName = "windows_interface"; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + usesDefaultFeatures = false; + } + { + name = "quote"; + packageId = "quote"; + usesDefaultFeatures = false; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + usesDefaultFeatures = false; + features = [ "parsing" "proc-macro" "printing" "full" "clone-impls" ]; + } + ]; + + }; + "windows-link 0.1.3" = rec { + crateName = "windows-link"; + version = "0.1.3"; + edition = "2021"; + sha256 = "12kr1p46dbhpijr4zbwr2spfgq8i8c5x55mvvfmyl96m01cx4sjy"; + libName = "windows_link"; + authors = [ + "Microsoft" + ]; + + }; + "windows-link 0.2.1" = rec { + crateName = "windows-link"; + version = "0.2.1"; + edition = "2021"; + sha256 = "1rag186yfr3xx7piv5rg8b6im2dwcf8zldiflvb22xbzwli5507h"; + libName = "windows_link"; + + }; + "windows-numerics" = rec { + crateName = "windows-numerics"; + version = "0.2.0"; + edition = "2021"; + sha256 = "1cf2j8nbqf0hqqa7chnyid91wxsl2m131kn0vl3mqk3c0rlayl4i"; + libName = "windows_numerics"; + dependencies = [ + { + name = "windows-core"; + packageId = "windows-core 0.61.2"; + usesDefaultFeatures = false; + } + { + name = "windows-link"; + packageId = "windows-link 0.1.3"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + }; + "windows-registry" = rec { + crateName = "windows-registry"; + version = "0.6.1"; + edition = "2021"; + sha256 = "082p7l615qk8a4g8g15yipc5lghga6cgfhm74wm7zknwzgvjnx82"; + libName = "windows_registry"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + usesDefaultFeatures = false; + } + { + name = "windows-result"; + packageId = "windows-result 0.4.1"; + usesDefaultFeatures = false; + } + { + name = "windows-strings"; + packageId = "windows-strings 0.5.1"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + "std" = [ "windows-result/std" "windows-strings/std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "windows-result 0.1.2" = rec { + crateName = "windows-result"; + version = "0.1.2"; + edition = "2021"; + sha256 = "1y274q1v0vy21lhkgslpxpq1m08hvr1mcs2l88h1b1gcx0136f2y"; + libName = "windows_result"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-targets"; + packageId = "windows-targets 0.52.6"; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "default" "std" ]; + }; + "windows-result 0.3.4" = rec { + crateName = "windows-result"; + version = "0.3.4"; + edition = "2021"; + sha256 = "1il60l6idrc6hqsij0cal0mgva6n3w6gq4ziban8wv6c6b9jpx2n"; + libName = "windows_result"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.1.3"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "windows-result 0.4.1" = rec { + crateName = "windows-result"; + version = "0.4.1"; + edition = "2021"; + sha256 = "1d9yhmrmmfqh56zlj751s5wfm9a2aa7az9rd7nn5027nxa4zm0bp"; + libName = "windows_result"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "windows-strings 0.4.2" = rec { + crateName = "windows-strings"; + version = "0.4.2"; + edition = "2021"; + sha256 = "0mrv3plibkla4v5kaakc2rfksdd0b14plcmidhbkcfqc78zwkrjn"; + libName = "windows_strings"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.1.3"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "windows-strings 0.5.1" = rec { + crateName = "windows-strings"; + version = "0.5.1"; + edition = "2021"; + sha256 = "14bhng9jqv4fyl7lqjz3az7vzh8pw0w4am49fsqgcz67d67x0dvq"; + libName = "windows_strings"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "std" ]; + }; + resolvedDefaultFeatures = [ "std" ]; + }; + "windows-sys 0.45.0" = rec { + crateName = "windows-sys"; + version = "0.45.0"; + edition = "2018"; + sha256 = "1l36bcqm4g89pknfp8r9rl1w4bn017q6a8qlx8viv0xjxzjkna3m"; + libName = "windows_sys"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-targets"; + packageId = "windows-targets 0.42.2"; + target = { target, features }: (!(target."windows_raw_dylib" or false)); + } + ]; + features = { + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Data_Xml" = [ "Win32_Data" ]; + "Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ]; + "Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAccess" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_FunctionDiscovery" = [ "Win32_Devices" ]; + "Win32_Devices_Geolocation" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_ImageAcquisition" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_Audio_Apo" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ]; + "Win32_Media_DeviceManager" = [ "Win32_Media" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_LibrarySharingServices" = [ "Win32_Media" ]; + "Win32_Media_MediaPlayer" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_Speech" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_MobileBroadband" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkPolicyServer" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectNow" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_BackgroundIntelligentTransferService" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_NetworkListManager" = [ "Win32_Networking" ]; + "Win32_Networking_RemoteDifferentialCompression" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ]; + "Win32_Security_ConfigurationSnapin" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_Tpm" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DataDeduplication" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileServerResourceManager" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ]; + "Win32_Storage_Vss" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_AssessmentTool" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_CallObj" = [ "Win32_System_Com" ]; + "Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ]; + "Win32_System_Com_Events" = [ "Win32_System_Com" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_UI" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_Contacts" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DesktopSharing" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Mmc" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_ParentalControls" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_RealTimeCommunications" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteAssistance" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_ServerBackup" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_TaskScheduler" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_UpdateAgent" = [ "Win32_System" ]; + "Win32_System_UpdateAssessment" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_WindowsSync" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_Animation" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Ink" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Radial" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Notifications" = [ "Win32_UI" ]; + "Win32_UI_Ribbon" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_UI_Wpf" = [ "Win32_UI" ]; + }; + resolvedDefaultFeatures = [ "Win32" "Win32_Globalization" "default" ]; + }; + "windows-sys 0.48.0" = rec { + crateName = "windows-sys"; + version = "0.48.0"; + edition = "2018"; + sha256 = "1aan23v5gs7gya1lc46hqn9mdh8yph3fhxmhxlw36pn6pqc28zb7"; + libName = "windows_sys"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-targets"; + packageId = "windows-targets 0.48.5"; + } + ]; + features = { + "Wdk_System" = [ "Wdk" ]; + "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Data_Xml" = [ "Win32_Data" ]; + "Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ]; + "Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAccess" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_FunctionDiscovery" = [ "Win32_Devices" ]; + "Win32_Devices_Geolocation" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_ImageAcquisition" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_Audio_Apo" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ]; + "Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ]; + "Win32_Media_DeviceManager" = [ "Win32_Media" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_LibrarySharingServices" = [ "Win32_Media" ]; + "Win32_Media_MediaPlayer" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_Speech" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_MobileBroadband" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkPolicyServer" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectNow" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_BackgroundIntelligentTransferService" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_NetworkListManager" = [ "Win32_Networking" ]; + "Win32_Networking_RemoteDifferentialCompression" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ]; + "Win32_Security_ConfigurationSnapin" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_Tpm" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DataDeduplication" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileServerResourceManager" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ]; + "Win32_Storage_Vss" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_AssessmentTool" = [ "Win32_System" ]; + "Win32_System_ClrHosting" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_CallObj" = [ "Win32_System_Com" ]; + "Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ]; + "Win32_System_Com_Events" = [ "Win32_System_Com" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_UI" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_Contacts" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DesktopSharing" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ClrProfiling" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug_ActiveScript" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Mmc" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_ParentalControls" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_RealTimeCommunications" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteAssistance" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_ServerBackup" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_TaskScheduler" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_UpdateAgent" = [ "Win32_System" ]; + "Win32_System_UpdateAssessment" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_WindowsSync" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_Animation" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Ink" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Radial" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Notifications" = [ "Win32_UI" ]; + "Win32_UI_Ribbon" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_UI_Wpf" = [ "Win32_UI" ]; + "Win32_Web" = [ "Win32" ]; + "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; + }; + resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Globalization" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Com" "Win32_System_Diagnostics" "Win32_System_Diagnostics_Debug" "Win32_System_IO" "Win32_System_Pipes" "Win32_System_Registry" "Win32_System_Time" "Win32_System_WindowsProgramming" "Win32_UI" "Win32_UI_Shell" "default" ]; + }; + "windows-sys 0.52.0" = rec { + crateName = "windows-sys"; + version = "0.52.0"; + edition = "2021"; + sha256 = "0gd3v4ji88490zgb6b5mq5zgbvwv7zx1ibn8v3x83rwcdbryaar8"; + libName = "windows_sys"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-targets"; + packageId = "windows-targets 0.52.6"; + } + ]; + features = { + "Wdk_Foundation" = [ "Wdk" ]; + "Wdk_Graphics" = [ "Wdk" ]; + "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_Storage" = [ "Wdk" ]; + "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; + "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; + "Wdk_System" = [ "Wdk" ]; + "Wdk_System_IO" = [ "Wdk_System" ]; + "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Wdk_System_Registry" = [ "Wdk_System" ]; + "Wdk_System_SystemInformation" = [ "Wdk_System" ]; + "Wdk_System_SystemServices" = [ "Wdk_System" ]; + "Wdk_System_Threading" = [ "Wdk_System" ]; + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_Nvme" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_ClrHosting" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_Variant" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_Web" = [ "Win32" ]; + "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; + }; + resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Authorization" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_IO" "Win32_System_Memory" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_WindowsProgramming" "default" ]; + }; + "windows-sys 0.59.0" = rec { + crateName = "windows-sys"; + version = "0.59.0"; + edition = "2021"; + sha256 = "0fw5672ziw8b3zpmnbp9pdv1famk74f1l9fcbc3zsrzdg56vqf0y"; + libName = "windows_sys"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-targets"; + packageId = "windows-targets 0.52.6"; + } + ]; + features = { + "Wdk" = [ "Win32_Foundation" ]; + "Wdk_Devices" = [ "Wdk" ]; + "Wdk_Devices_Bluetooth" = [ "Wdk_Devices" ]; + "Wdk_Devices_HumanInterfaceDevice" = [ "Wdk_Devices" ]; + "Wdk_Foundation" = [ "Wdk" ]; + "Wdk_Graphics" = [ "Wdk" ]; + "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_NetworkManagement" = [ "Wdk" ]; + "Wdk_NetworkManagement_Ndis" = [ "Wdk_NetworkManagement" ]; + "Wdk_NetworkManagement_WindowsFilteringPlatform" = [ "Wdk_NetworkManagement" ]; + "Wdk_Storage" = [ "Wdk" ]; + "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; + "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; + "Wdk_System" = [ "Wdk" ]; + "Wdk_System_IO" = [ "Wdk_System" ]; + "Wdk_System_Memory" = [ "Wdk_System" ]; + "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Wdk_System_Registry" = [ "Wdk_System" ]; + "Wdk_System_SystemInformation" = [ "Wdk_System" ]; + "Wdk_System_SystemServices" = [ "Wdk_System" ]; + "Wdk_System_Threading" = [ "Wdk_System" ]; + "Win32" = [ "Win32_Foundation" ]; + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_Nvme" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_ClrHosting" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_TraceLogging" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_Variant" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_Web" = [ "Win32" ]; + "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; + }; + resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_NetworkManagement" "Win32_NetworkManagement_IpHelper" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_IO" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_UI" "Win32_UI_Input" "Win32_UI_Input_KeyboardAndMouse" "default" ]; + }; + "windows-sys 0.60.2" = rec { + crateName = "windows-sys"; + version = "0.60.2"; + edition = "2021"; + sha256 = "1jrbc615ihqnhjhxplr2kw7rasrskv9wj3lr80hgfd42sbj01xgj"; + libName = "windows_sys"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-targets"; + packageId = "windows-targets 0.53.5"; + usesDefaultFeatures = false; + } + ]; + features = { + "Wdk" = [ "Win32_Foundation" ]; + "Wdk_Devices" = [ "Wdk" ]; + "Wdk_Devices_Bluetooth" = [ "Wdk_Devices" ]; + "Wdk_Devices_HumanInterfaceDevice" = [ "Wdk_Devices" ]; + "Wdk_Foundation" = [ "Wdk" ]; + "Wdk_Graphics" = [ "Wdk" ]; + "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_NetworkManagement" = [ "Wdk" ]; + "Wdk_NetworkManagement_Ndis" = [ "Wdk_NetworkManagement" ]; + "Wdk_NetworkManagement_WindowsFilteringPlatform" = [ "Wdk_NetworkManagement" ]; + "Wdk_Storage" = [ "Wdk" ]; + "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; + "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; + "Wdk_System" = [ "Wdk" ]; + "Wdk_System_IO" = [ "Wdk_System" ]; + "Wdk_System_Memory" = [ "Wdk_System" ]; + "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Wdk_System_Registry" = [ "Wdk_System" ]; + "Wdk_System_SystemInformation" = [ "Wdk_System" ]; + "Wdk_System_SystemServices" = [ "Wdk_System" ]; + "Wdk_System_Threading" = [ "Wdk_System" ]; + "Win32" = [ "Win32_Foundation" ]; + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_Beep" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Cdrom" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Dvd" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_Nfc" = [ "Win32_Devices" ]; + "Win32_Devices_Nfp" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_Nvme" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_ClrHosting" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_TraceLogging" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_Variant" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_Web" = [ "Win32" ]; + "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; + }; + resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Credentials" "Win32_System" "Win32_System_Console" "Win32_System_IO" "Win32_System_Threading" "Win32_System_WindowsProgramming" "default" ]; + }; + "windows-sys 0.61.2" = rec { + crateName = "windows-sys"; + version = "0.61.2"; + edition = "2021"; + sha256 = "1z7k3y9b6b5h52kid57lvmvm05362zv1v8w0gc7xyv5xphlp44xf"; + libName = "windows_sys"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + usesDefaultFeatures = false; + } + ]; + features = { + "Wdk" = [ "Win32_Foundation" ]; + "Wdk_Devices" = [ "Wdk" ]; + "Wdk_Devices_Bluetooth" = [ "Wdk_Devices" ]; + "Wdk_Devices_HumanInterfaceDevice" = [ "Wdk_Devices" ]; + "Wdk_Foundation" = [ "Wdk" ]; + "Wdk_Graphics" = [ "Wdk" ]; + "Wdk_Graphics_Direct3D" = [ "Wdk_Graphics" ]; + "Wdk_NetworkManagement" = [ "Wdk" ]; + "Wdk_NetworkManagement_Ndis" = [ "Wdk_NetworkManagement" ]; + "Wdk_NetworkManagement_WindowsFilteringPlatform" = [ "Wdk_NetworkManagement" ]; + "Wdk_Storage" = [ "Wdk" ]; + "Wdk_Storage_FileSystem" = [ "Wdk_Storage" ]; + "Wdk_Storage_FileSystem_Minifilters" = [ "Wdk_Storage_FileSystem" ]; + "Wdk_System" = [ "Wdk" ]; + "Wdk_System_IO" = [ "Wdk_System" ]; + "Wdk_System_Memory" = [ "Wdk_System" ]; + "Wdk_System_OfflineRegistry" = [ "Wdk_System" ]; + "Wdk_System_Registry" = [ "Wdk_System" ]; + "Wdk_System_SystemInformation" = [ "Wdk_System" ]; + "Wdk_System_SystemServices" = [ "Wdk_System" ]; + "Wdk_System_Threading" = [ "Wdk_System" ]; + "Win32" = [ "Win32_Foundation" ]; + "Win32_Data" = [ "Win32" ]; + "Win32_Data_HtmlHelp" = [ "Win32_Data" ]; + "Win32_Data_RightsManagement" = [ "Win32_Data" ]; + "Win32_Devices" = [ "Win32" ]; + "Win32_Devices_AllJoyn" = [ "Win32_Devices" ]; + "Win32_Devices_Beep" = [ "Win32_Devices" ]; + "Win32_Devices_BiometricFramework" = [ "Win32_Devices" ]; + "Win32_Devices_Bluetooth" = [ "Win32_Devices" ]; + "Win32_Devices_Cdrom" = [ "Win32_Devices" ]; + "Win32_Devices_Communication" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ]; + "Win32_Devices_DeviceQuery" = [ "Win32_Devices" ]; + "Win32_Devices_Display" = [ "Win32_Devices" ]; + "Win32_Devices_Dvd" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration" = [ "Win32_Devices" ]; + "Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ]; + "Win32_Devices_Fax" = [ "Win32_Devices" ]; + "Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ]; + "Win32_Devices_Nfc" = [ "Win32_Devices" ]; + "Win32_Devices_Nfp" = [ "Win32_Devices" ]; + "Win32_Devices_PortableDevices" = [ "Win32_Devices" ]; + "Win32_Devices_Properties" = [ "Win32_Devices" ]; + "Win32_Devices_Pwm" = [ "Win32_Devices" ]; + "Win32_Devices_Sensors" = [ "Win32_Devices" ]; + "Win32_Devices_SerialCommunication" = [ "Win32_Devices" ]; + "Win32_Devices_Tapi" = [ "Win32_Devices" ]; + "Win32_Devices_Usb" = [ "Win32_Devices" ]; + "Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ]; + "Win32_Foundation" = [ "Win32" ]; + "Win32_Gaming" = [ "Win32" ]; + "Win32_Globalization" = [ "Win32" ]; + "Win32_Graphics" = [ "Win32" ]; + "Win32_Graphics_Dwm" = [ "Win32_Graphics" ]; + "Win32_Graphics_Gdi" = [ "Win32_Graphics" ]; + "Win32_Graphics_GdiPlus" = [ "Win32_Graphics" ]; + "Win32_Graphics_Hlsl" = [ "Win32_Graphics" ]; + "Win32_Graphics_OpenGL" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing" = [ "Win32_Graphics" ]; + "Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ]; + "Win32_Management" = [ "Win32" ]; + "Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ]; + "Win32_Media" = [ "Win32" ]; + "Win32_Media_Audio" = [ "Win32_Media" ]; + "Win32_Media_DxMediaObjects" = [ "Win32_Media" ]; + "Win32_Media_KernelStreaming" = [ "Win32_Media" ]; + "Win32_Media_Multimedia" = [ "Win32_Media" ]; + "Win32_Media_Streaming" = [ "Win32_Media" ]; + "Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ]; + "Win32_NetworkManagement" = [ "Win32" ]; + "Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ]; + "Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ]; + "Win32_Networking" = [ "Win32" ]; + "Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ]; + "Win32_Networking_Clustering" = [ "Win32_Networking" ]; + "Win32_Networking_HttpServer" = [ "Win32_Networking" ]; + "Win32_Networking_Ldap" = [ "Win32_Networking" ]; + "Win32_Networking_WebSocket" = [ "Win32_Networking" ]; + "Win32_Networking_WinHttp" = [ "Win32_Networking" ]; + "Win32_Networking_WinInet" = [ "Win32_Networking" ]; + "Win32_Networking_WinSock" = [ "Win32_Networking" ]; + "Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ]; + "Win32_Security" = [ "Win32" ]; + "Win32_Security_AppLocker" = [ "Win32_Security" ]; + "Win32_Security_Authentication" = [ "Win32_Security" ]; + "Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ]; + "Win32_Security_Authorization" = [ "Win32_Security" ]; + "Win32_Security_Credentials" = [ "Win32_Security" ]; + "Win32_Security_Cryptography" = [ "Win32_Security" ]; + "Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ]; + "Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ]; + "Win32_Security_DirectoryServices" = [ "Win32_Security" ]; + "Win32_Security_EnterpriseData" = [ "Win32_Security" ]; + "Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ]; + "Win32_Security_Isolation" = [ "Win32_Security" ]; + "Win32_Security_LicenseProtection" = [ "Win32_Security" ]; + "Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ]; + "Win32_Security_WinTrust" = [ "Win32_Security" ]; + "Win32_Security_WinWlx" = [ "Win32_Security" ]; + "Win32_Storage" = [ "Win32" ]; + "Win32_Storage_Cabinets" = [ "Win32_Storage" ]; + "Win32_Storage_CloudFilters" = [ "Win32_Storage" ]; + "Win32_Storage_Compression" = [ "Win32_Storage" ]; + "Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_FileHistory" = [ "Win32_Storage" ]; + "Win32_Storage_FileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_Imapi" = [ "Win32_Storage" ]; + "Win32_Storage_IndexServer" = [ "Win32_Storage" ]; + "Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ]; + "Win32_Storage_IscsiDisc" = [ "Win32_Storage" ]; + "Win32_Storage_Jet" = [ "Win32_Storage" ]; + "Win32_Storage_Nvme" = [ "Win32_Storage" ]; + "Win32_Storage_OfflineFiles" = [ "Win32_Storage" ]; + "Win32_Storage_OperationRecorder" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging" = [ "Win32_Storage" ]; + "Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ]; + "Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ]; + "Win32_Storage_StructuredStorage" = [ "Win32_Storage" ]; + "Win32_Storage_Vhd" = [ "Win32_Storage" ]; + "Win32_Storage_Xps" = [ "Win32_Storage" ]; + "Win32_System" = [ "Win32" ]; + "Win32_System_AddressBook" = [ "Win32_System" ]; + "Win32_System_Antimalware" = [ "Win32_System" ]; + "Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ]; + "Win32_System_ApplicationVerifier" = [ "Win32_System" ]; + "Win32_System_ClrHosting" = [ "Win32_System" ]; + "Win32_System_Com" = [ "Win32_System" ]; + "Win32_System_Com_Marshal" = [ "Win32_System_Com" ]; + "Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ]; + "Win32_System_Com_Urlmon" = [ "Win32_System_Com" ]; + "Win32_System_ComponentServices" = [ "Win32_System" ]; + "Win32_System_Console" = [ "Win32_System" ]; + "Win32_System_CorrelationVector" = [ "Win32_System" ]; + "Win32_System_DataExchange" = [ "Win32_System" ]; + "Win32_System_DeploymentServices" = [ "Win32_System" ]; + "Win32_System_DeveloperLicensing" = [ "Win32_System" ]; + "Win32_System_Diagnostics" = [ "Win32_System" ]; + "Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_Debug_Extensions" = [ "Win32_System_Diagnostics_Debug" ]; + "Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ]; + "Win32_System_Diagnostics_TraceLogging" = [ "Win32_System_Diagnostics" ]; + "Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ]; + "Win32_System_Environment" = [ "Win32_System" ]; + "Win32_System_ErrorReporting" = [ "Win32_System" ]; + "Win32_System_EventCollector" = [ "Win32_System" ]; + "Win32_System_EventLog" = [ "Win32_System" ]; + "Win32_System_EventNotificationService" = [ "Win32_System" ]; + "Win32_System_GroupPolicy" = [ "Win32_System" ]; + "Win32_System_HostCompute" = [ "Win32_System" ]; + "Win32_System_HostComputeNetwork" = [ "Win32_System" ]; + "Win32_System_HostComputeSystem" = [ "Win32_System" ]; + "Win32_System_Hypervisor" = [ "Win32_System" ]; + "Win32_System_IO" = [ "Win32_System" ]; + "Win32_System_Iis" = [ "Win32_System" ]; + "Win32_System_Ioctl" = [ "Win32_System" ]; + "Win32_System_JobObjects" = [ "Win32_System" ]; + "Win32_System_Js" = [ "Win32_System" ]; + "Win32_System_Kernel" = [ "Win32_System" ]; + "Win32_System_LibraryLoader" = [ "Win32_System" ]; + "Win32_System_Mailslots" = [ "Win32_System" ]; + "Win32_System_Mapi" = [ "Win32_System" ]; + "Win32_System_Memory" = [ "Win32_System" ]; + "Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ]; + "Win32_System_MessageQueuing" = [ "Win32_System" ]; + "Win32_System_MixedReality" = [ "Win32_System" ]; + "Win32_System_Ole" = [ "Win32_System" ]; + "Win32_System_PasswordManagement" = [ "Win32_System" ]; + "Win32_System_Performance" = [ "Win32_System" ]; + "Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ]; + "Win32_System_Pipes" = [ "Win32_System" ]; + "Win32_System_Power" = [ "Win32_System" ]; + "Win32_System_ProcessStatus" = [ "Win32_System" ]; + "Win32_System_Recovery" = [ "Win32_System" ]; + "Win32_System_Registry" = [ "Win32_System" ]; + "Win32_System_RemoteDesktop" = [ "Win32_System" ]; + "Win32_System_RemoteManagement" = [ "Win32_System" ]; + "Win32_System_RestartManager" = [ "Win32_System" ]; + "Win32_System_Restore" = [ "Win32_System" ]; + "Win32_System_Rpc" = [ "Win32_System" ]; + "Win32_System_Search" = [ "Win32_System" ]; + "Win32_System_Search_Common" = [ "Win32_System_Search" ]; + "Win32_System_SecurityCenter" = [ "Win32_System" ]; + "Win32_System_Services" = [ "Win32_System" ]; + "Win32_System_SetupAndMigration" = [ "Win32_System" ]; + "Win32_System_Shutdown" = [ "Win32_System" ]; + "Win32_System_StationsAndDesktops" = [ "Win32_System" ]; + "Win32_System_SubsystemForLinux" = [ "Win32_System" ]; + "Win32_System_SystemInformation" = [ "Win32_System" ]; + "Win32_System_SystemServices" = [ "Win32_System" ]; + "Win32_System_Threading" = [ "Win32_System" ]; + "Win32_System_Time" = [ "Win32_System" ]; + "Win32_System_TpmBaseServices" = [ "Win32_System" ]; + "Win32_System_UserAccessLogging" = [ "Win32_System" ]; + "Win32_System_Variant" = [ "Win32_System" ]; + "Win32_System_VirtualDosMachines" = [ "Win32_System" ]; + "Win32_System_WindowsProgramming" = [ "Win32_System" ]; + "Win32_System_Wmi" = [ "Win32_System" ]; + "Win32_UI" = [ "Win32" ]; + "Win32_UI_Accessibility" = [ "Win32_UI" ]; + "Win32_UI_ColorSystem" = [ "Win32_UI" ]; + "Win32_UI_Controls" = [ "Win32_UI" ]; + "Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ]; + "Win32_UI_HiDpi" = [ "Win32_UI" ]; + "Win32_UI_Input" = [ "Win32_UI" ]; + "Win32_UI_Input_Ime" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_Touch" = [ "Win32_UI_Input" ]; + "Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ]; + "Win32_UI_InteractionContext" = [ "Win32_UI" ]; + "Win32_UI_Magnification" = [ "Win32_UI" ]; + "Win32_UI_Shell" = [ "Win32_UI" ]; + "Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ]; + "Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ]; + "Win32_UI_TabletPC" = [ "Win32_UI" ]; + "Win32_UI_TextServices" = [ "Win32_UI" ]; + "Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ]; + "Win32_Web" = [ "Win32" ]; + "Win32_Web_InternetExplorer" = [ "Win32_Web" ]; + }; + resolvedDefaultFeatures = [ "Wdk" "Wdk_Foundation" "Wdk_Storage" "Wdk_Storage_FileSystem" "Wdk_System" "Wdk_System_IO" "Win32" "Win32_Foundation" "Win32_Globalization" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Authentication" "Win32_Security_Authentication_Identity" "Win32_Security_Credentials" "Win32_Security_Cryptography" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Com" "Win32_System_Console" "Win32_System_Diagnostics" "Win32_System_Diagnostics_Debug" "Win32_System_IO" "Win32_System_LibraryLoader" "Win32_System_Memory" "Win32_System_Pipes" "Win32_System_Registry" "Win32_System_SystemInformation" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_Time" "Win32_System_WindowsProgramming" "Win32_UI" "Win32_UI_Input" "Win32_UI_Input_KeyboardAndMouse" "Win32_UI_Shell" "Win32_UI_WindowsAndMessaging" "default" ]; + }; + "windows-targets 0.42.2" = rec { + crateName = "windows-targets"; + version = "0.42.2"; + edition = "2018"; + sha256 = "0wfhnib2fisxlx8c507dbmh97kgij4r6kcxdi0f9nk6l1k080lcf"; + libName = "windows_targets"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows_aarch64_gnullvm"; + packageId = "windows_aarch64_gnullvm 0.42.2"; + target = { target, features }: (target.name == "aarch64-pc-windows-gnullvm"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.42.2"; + target = { target, features }: (target.name == "aarch64-pc-windows-msvc"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.42.2"; + target = { target, features }: (target.name == "aarch64-uwp-windows-msvc"); + } + { + name = "windows_i686_gnu"; + packageId = "windows_i686_gnu 0.42.2"; + target = { target, features }: (target.name == "i686-pc-windows-gnu"); + } + { + name = "windows_i686_gnu"; + packageId = "windows_i686_gnu 0.42.2"; + target = { target, features }: (target.name == "i686-uwp-windows-gnu"); + } + { + name = "windows_i686_msvc"; + packageId = "windows_i686_msvc 0.42.2"; + target = { target, features }: (target.name == "i686-pc-windows-msvc"); + } + { + name = "windows_i686_msvc"; + packageId = "windows_i686_msvc 0.42.2"; + target = { target, features }: (target.name == "i686-uwp-windows-msvc"); + } + { + name = "windows_x86_64_gnu"; + packageId = "windows_x86_64_gnu 0.42.2"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnu"); + } + { + name = "windows_x86_64_gnu"; + packageId = "windows_x86_64_gnu 0.42.2"; + target = { target, features }: (target.name == "x86_64-uwp-windows-gnu"); + } + { + name = "windows_x86_64_gnullvm"; + packageId = "windows_x86_64_gnullvm 0.42.2"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnullvm"); + } + { + name = "windows_x86_64_msvc"; + packageId = "windows_x86_64_msvc 0.42.2"; + target = { target, features }: (target.name == "x86_64-pc-windows-msvc"); + } + { + name = "windows_x86_64_msvc"; + packageId = "windows_x86_64_msvc 0.42.2"; + target = { target, features }: (target.name == "x86_64-uwp-windows-msvc"); + } + ]; + + }; + "windows-targets 0.48.5" = rec { + crateName = "windows-targets"; + version = "0.48.5"; + edition = "2018"; + sha256 = "034ljxqshifs1lan89xwpcy1hp0lhdh4b5n0d2z4fwjx2piacbws"; + libName = "windows_targets"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows_aarch64_gnullvm"; + packageId = "windows_aarch64_gnullvm 0.48.5"; + target = { target, features }: (target.name == "aarch64-pc-windows-gnullvm"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.48.5"; + target = { target, features }: (("aarch64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_gnu"; + packageId = "windows_i686_gnu 0.48.5"; + target = { target, features }: (("x86" == target."arch" or null) && ("gnu" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_msvc"; + packageId = "windows_i686_msvc 0.48.5"; + target = { target, features }: (("x86" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnu"; + packageId = "windows_x86_64_gnu 0.48.5"; + target = { target, features }: (("x86_64" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnullvm"; + packageId = "windows_x86_64_gnullvm 0.48.5"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnullvm"); + } + { + name = "windows_x86_64_msvc"; + packageId = "windows_x86_64_msvc 0.48.5"; + target = { target, features }: (("x86_64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + ]; + + }; + "windows-targets 0.52.6" = rec { + crateName = "windows-targets"; + version = "0.52.6"; + edition = "2021"; + sha256 = "0wwrx625nwlfp7k93r2rra568gad1mwd888h1jwnl0vfg5r4ywlv"; + libName = "windows_targets"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows_aarch64_gnullvm"; + packageId = "windows_aarch64_gnullvm 0.52.6"; + target = { target, features }: (target.name == "aarch64-pc-windows-gnullvm"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.52.6"; + target = { target, features }: (("aarch64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_gnu"; + packageId = "windows_i686_gnu 0.52.6"; + target = { target, features }: (("x86" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_gnullvm"; + packageId = "windows_i686_gnullvm 0.52.6"; + target = { target, features }: (target.name == "i686-pc-windows-gnullvm"); + } + { + name = "windows_i686_msvc"; + packageId = "windows_i686_msvc 0.52.6"; + target = { target, features }: (("x86" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnu"; + packageId = "windows_x86_64_gnu 0.52.6"; + target = { target, features }: (("x86_64" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnullvm"; + packageId = "windows_x86_64_gnullvm 0.52.6"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnullvm"); + } + { + name = "windows_x86_64_msvc"; + packageId = "windows_x86_64_msvc 0.52.6"; + target = { target, features }: ((("x86_64" == target."arch" or null) || ("arm64ec" == target."arch" or null)) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + ]; + + }; + "windows-targets 0.53.5" = rec { + crateName = "windows-targets"; + version = "0.53.5"; + edition = "2021"; + sha256 = "1wv9j2gv3l6wj3gkw5j1kr6ymb5q6dfc42yvydjhv3mqa7szjia9"; + libName = "windows_targets"; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.2.1"; + usesDefaultFeatures = false; + target = { target, features }: (target."windows_raw_dylib" or false); + } + { + name = "windows_aarch64_gnullvm"; + packageId = "windows_aarch64_gnullvm 0.53.1"; + target = { target, features }: (target.name == "aarch64-pc-windows-gnullvm"); + } + { + name = "windows_aarch64_msvc"; + packageId = "windows_aarch64_msvc 0.53.1"; + target = { target, features }: (("aarch64" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_gnu"; + packageId = "windows_i686_gnu 0.53.1"; + target = { target, features }: (("x86" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_i686_gnullvm"; + packageId = "windows_i686_gnullvm 0.53.1"; + target = { target, features }: (target.name == "i686-pc-windows-gnullvm"); + } + { + name = "windows_i686_msvc"; + packageId = "windows_i686_msvc 0.53.1"; + target = { target, features }: (("x86" == target."arch" or null) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnu"; + packageId = "windows_x86_64_gnu 0.53.1"; + target = { target, features }: (("x86_64" == target."arch" or null) && ("gnu" == target."env" or null) && (!("llvm" == target."abi" or null)) && (!(target."windows_raw_dylib" or false))); + } + { + name = "windows_x86_64_gnullvm"; + packageId = "windows_x86_64_gnullvm 0.53.1"; + target = { target, features }: (target.name == "x86_64-pc-windows-gnullvm"); + } + { + name = "windows_x86_64_msvc"; + packageId = "windows_x86_64_msvc 0.53.1"; + target = { target, features }: ((("x86_64" == target."arch" or null) || ("arm64ec" == target."arch" or null)) && ("msvc" == target."env" or null) && (!(target."windows_raw_dylib" or false))); + } + ]; + + }; + "windows-threading" = rec { + crateName = "windows-threading"; + version = "0.1.0"; + edition = "2021"; + sha256 = "19jpn37zpjj2q7pn07dpq0ay300w65qx7wdp13wbp8qf5snn6r5n"; + libName = "windows_threading"; + authors = [ + "Microsoft" + ]; + dependencies = [ + { + name = "windows-link"; + packageId = "windows-link 0.1.3"; + usesDefaultFeatures = false; + } + ]; + + }; + "windows_aarch64_gnullvm 0.42.2" = rec { + crateName = "windows_aarch64_gnullvm"; + version = "0.42.2"; + edition = "2018"; + sha256 = "1y4q0qmvl0lvp7syxvfykafvmwal5hrjb4fmv04bqs0bawc52yjr"; + authors = [ + "Microsoft" + ]; + + }; + "windows_aarch64_gnullvm 0.48.5" = rec { + crateName = "windows_aarch64_gnullvm"; + version = "0.48.5"; + edition = "2018"; + sha256 = "1n05v7qblg1ci3i567inc7xrkmywczxrs1z3lj3rkkxw18py6f1b"; + authors = [ + "Microsoft" + ]; + + }; + "windows_aarch64_gnullvm 0.52.6" = rec { + crateName = "windows_aarch64_gnullvm"; + version = "0.52.6"; + edition = "2021"; + sha256 = "1lrcq38cr2arvmz19v32qaggvj8bh1640mdm9c2fr877h0hn591j"; + authors = [ + "Microsoft" + ]; + + }; + "windows_aarch64_gnullvm 0.53.1" = rec { + crateName = "windows_aarch64_gnullvm"; + version = "0.53.1"; + edition = "2021"; + sha256 = "0lqvdm510mka9w26vmga7hbkmrw9glzc90l4gya5qbxlm1pl3n59"; + + }; + "windows_aarch64_msvc 0.42.2" = rec { + crateName = "windows_aarch64_msvc"; + version = "0.42.2"; + edition = "2018"; + sha256 = "0hsdikjl5sa1fva5qskpwlxzpc5q9l909fpl1w6yy1hglrj8i3p0"; + authors = [ + "Microsoft" + ]; + + }; + "windows_aarch64_msvc 0.48.5" = rec { + crateName = "windows_aarch64_msvc"; + version = "0.48.5"; + edition = "2018"; + sha256 = "1g5l4ry968p73g6bg6jgyvy9lb8fyhcs54067yzxpcpkf44k2dfw"; + authors = [ + "Microsoft" + ]; + + }; + "windows_aarch64_msvc 0.52.6" = rec { + crateName = "windows_aarch64_msvc"; + version = "0.52.6"; + edition = "2021"; + sha256 = "0sfl0nysnz32yyfh773hpi49b1q700ah6y7sacmjbqjjn5xjmv09"; + authors = [ + "Microsoft" + ]; + + }; + "windows_aarch64_msvc 0.53.1" = rec { + crateName = "windows_aarch64_msvc"; + version = "0.53.1"; + edition = "2021"; + sha256 = "01jh2adlwx043rji888b22whx4bm8alrk3khjpik5xn20kl85mxr"; + + }; + "windows_i686_gnu 0.42.2" = rec { + crateName = "windows_i686_gnu"; + version = "0.42.2"; + edition = "2018"; + sha256 = "0kx866dfrby88lqs9v1vgmrkk1z6af9lhaghh5maj7d4imyr47f6"; + authors = [ + "Microsoft" + ]; + + }; + "windows_i686_gnu 0.48.5" = rec { + crateName = "windows_i686_gnu"; + version = "0.48.5"; + edition = "2018"; + sha256 = "0gklnglwd9ilqx7ac3cn8hbhkraqisd0n83jxzf9837nvvkiand7"; + authors = [ + "Microsoft" + ]; + + }; + "windows_i686_gnu 0.52.6" = rec { + crateName = "windows_i686_gnu"; + version = "0.52.6"; + edition = "2021"; + sha256 = "02zspglbykh1jh9pi7gn8g1f97jh1rrccni9ivmrfbl0mgamm6wf"; + authors = [ + "Microsoft" + ]; + + }; + "windows_i686_gnu 0.53.1" = rec { + crateName = "windows_i686_gnu"; + version = "0.53.1"; + edition = "2021"; + sha256 = "18wkcm82ldyg4figcsidzwbg1pqd49jpm98crfz0j7nqd6h6s3ln"; + + }; + "windows_i686_gnullvm 0.52.6" = rec { + crateName = "windows_i686_gnullvm"; + version = "0.52.6"; + edition = "2021"; + sha256 = "0rpdx1537mw6slcpqa0rm3qixmsb79nbhqy5fsm3q2q9ik9m5vhf"; + authors = [ + "Microsoft" + ]; + + }; + "windows_i686_gnullvm 0.53.1" = rec { + crateName = "windows_i686_gnullvm"; + version = "0.53.1"; + edition = "2021"; + sha256 = "030qaxqc4salz6l4immfb6sykc6gmhyir9wzn2w8mxj8038mjwzs"; + + }; + "windows_i686_msvc 0.42.2" = rec { + crateName = "windows_i686_msvc"; + version = "0.42.2"; + edition = "2018"; + sha256 = "0q0h9m2aq1pygc199pa5jgc952qhcnf0zn688454i7v4xjv41n24"; + authors = [ + "Microsoft" + ]; + + }; + "windows_i686_msvc 0.48.5" = rec { + crateName = "windows_i686_msvc"; + version = "0.48.5"; + edition = "2018"; + sha256 = "01m4rik437dl9rdf0ndnm2syh10hizvq0dajdkv2fjqcywrw4mcg"; + authors = [ + "Microsoft" + ]; + + }; + "windows_i686_msvc 0.52.6" = rec { + crateName = "windows_i686_msvc"; + version = "0.52.6"; + edition = "2021"; + sha256 = "0rkcqmp4zzmfvrrrx01260q3xkpzi6fzi2x2pgdcdry50ny4h294"; + authors = [ + "Microsoft" + ]; + + }; + "windows_i686_msvc 0.53.1" = rec { + crateName = "windows_i686_msvc"; + version = "0.53.1"; + edition = "2021"; + sha256 = "1hi6scw3mn2pbdl30ji5i4y8vvspb9b66l98kkz350pig58wfyhy"; + + }; + "windows_x86_64_gnu 0.42.2" = rec { + crateName = "windows_x86_64_gnu"; + version = "0.42.2"; + edition = "2018"; + sha256 = "0dnbf2xnp3xrvy8v9mgs3var4zq9v9yh9kv79035rdgyp2w15scd"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_gnu 0.48.5" = rec { + crateName = "windows_x86_64_gnu"; + version = "0.48.5"; + edition = "2018"; + sha256 = "13kiqqcvz2vnyxzydjh73hwgigsdr2z1xpzx313kxll34nyhmm2k"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_gnu 0.52.6" = rec { + crateName = "windows_x86_64_gnu"; + version = "0.52.6"; + edition = "2021"; + sha256 = "0y0sifqcb56a56mvn7xjgs8g43p33mfqkd8wj1yhrgxzma05qyhl"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_gnu 0.53.1" = rec { + crateName = "windows_x86_64_gnu"; + version = "0.53.1"; + edition = "2021"; + sha256 = "16d4yiysmfdlsrghndr97y57gh3kljkwhfdbcs05m1jasz6l4f4w"; + + }; + "windows_x86_64_gnullvm 0.42.2" = rec { + crateName = "windows_x86_64_gnullvm"; + version = "0.42.2"; + edition = "2018"; + sha256 = "18wl9r8qbsl475j39zvawlidp1bsbinliwfymr43fibdld31pm16"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_gnullvm 0.48.5" = rec { + crateName = "windows_x86_64_gnullvm"; + version = "0.48.5"; + edition = "2018"; + sha256 = "1k24810wfbgz8k48c2yknqjmiigmql6kk3knmddkv8k8g1v54yqb"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_gnullvm 0.52.6" = rec { + crateName = "windows_x86_64_gnullvm"; + version = "0.52.6"; + edition = "2021"; + sha256 = "03gda7zjx1qh8k9nnlgb7m3w3s1xkysg55hkd1wjch8pqhyv5m94"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_gnullvm 0.53.1" = rec { + crateName = "windows_x86_64_gnullvm"; + version = "0.53.1"; + edition = "2021"; + sha256 = "1qbspgv4g3q0vygkg8rnql5c6z3caqv38japiynyivh75ng1gyhg"; + + }; + "windows_x86_64_msvc 0.42.2" = rec { + crateName = "windows_x86_64_msvc"; + version = "0.42.2"; + edition = "2018"; + sha256 = "1w5r0q0yzx827d10dpjza2ww0j8iajqhmb54s735hhaj66imvv4s"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_msvc 0.48.5" = rec { + crateName = "windows_x86_64_msvc"; + version = "0.48.5"; + edition = "2018"; + sha256 = "0f4mdp895kkjh9zv8dxvn4pc10xr7839lf5pa9l0193i2pkgr57d"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_msvc 0.52.6" = rec { + crateName = "windows_x86_64_msvc"; + version = "0.52.6"; + edition = "2021"; + sha256 = "1v7rb5cibyzx8vak29pdrk8nx9hycsjs4w0jgms08qk49jl6v7sq"; + authors = [ + "Microsoft" + ]; + + }; + "windows_x86_64_msvc 0.53.1" = rec { + crateName = "windows_x86_64_msvc"; + version = "0.53.1"; + edition = "2021"; + sha256 = "0l6npq76vlq4ksn4bwsncpr8508mk0gmznm6wnhjg95d19gzzfyn"; + + }; + "winnow 0.6.26" = rec { + crateName = "winnow"; + version = "0.6.26"; + edition = "2021"; + sha256 = "0a4sjbbrkhbd0ba6dy0011hln1q3ry4iv6srqjjpi8hsmk9fv40y"; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "debug" = [ "std" "dep:anstream" "dep:anstyle" "dep:is-terminal" "dep:terminal_size" ]; + "default" = [ "std" ]; + "simd" = [ "dep:memchr" ]; + "std" = [ "alloc" "memchr?/std" ]; + "unstable-doc" = [ "alloc" "std" "simd" "unstable-recover" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "winnow 0.7.14" = rec { + crateName = "winnow"; + version = "0.7.14"; + edition = "2021"; + sha256 = "0a88ahjqhyn2ln1yplq2xsigm09kxqkdkkk2c2mfxkbzszln8lss"; + dependencies = [ + { + name = "memchr"; + packageId = "memchr"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "debug" = [ "std" "dep:anstream" "dep:anstyle" "dep:is_terminal_polyfill" "dep:terminal_size" ]; + "default" = [ "std" ]; + "simd" = [ "dep:memchr" ]; + "std" = [ "alloc" "memchr?/std" ]; + "unstable-doc" = [ "alloc" "std" "simd" "unstable-recover" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "simd" "std" ]; + }; + "winreg" = rec { + crateName = "winreg"; + version = "0.50.0"; + edition = "2018"; + sha256 = "1cddmp929k882mdh6i9f2as848f13qqna6czwsqzkh1pqnr5fkjj"; + authors = [ + "Igor Shaula " + ]; + dependencies = [ + { + name = "cfg-if"; + packageId = "cfg-if"; + } + { + name = "windows-sys"; + packageId = "windows-sys 0.48.0"; + features = [ "Win32_Foundation" "Win32_System_Time" "Win32_System_Registry" "Win32_Security" "Win32_Storage_FileSystem" "Win32_System_Diagnostics_Debug" ]; + } + ]; + features = { + "chrono" = [ "dep:chrono" ]; + "serde" = [ "dep:serde" ]; + "serialization-serde" = [ "transactions" "serde" ]; + }; + }; + "winsafe" = rec { + crateName = "winsafe"; + version = "0.0.19"; + edition = "2021"; + sha256 = "0169xy9mjma8dys4m8v4x0xhw2gkbhv2v1wsbvcjl9bhnxxd2dfi"; + authors = [ + "Rodrigo Cesar de Freitas Dias " + ]; + features = { + "comctl" = [ "ole" ]; + "dshow" = [ "oleaut" ]; + "dwm" = [ "uxtheme" ]; + "dxgi" = [ "ole" ]; + "gdi" = [ "user" ]; + "gui" = [ "comctl" "shell" "uxtheme" ]; + "mf" = [ "oleaut" ]; + "ole" = [ "user" ]; + "oleaut" = [ "ole" ]; + "shell" = [ "oleaut" ]; + "taskschd" = [ "oleaut" ]; + "user" = [ "kernel" ]; + "uxtheme" = [ "gdi" "ole" ]; + "version" = [ "kernel" ]; + }; + resolvedDefaultFeatures = [ "kernel" ]; + }; + "wit-bindgen" = rec { + crateName = "wit-bindgen"; + version = "0.51.0"; + edition = "2024"; + sha256 = "19fazgch8sq5cvjv3ynhhfh5d5x08jq2pkw8jfb05vbcyqcr496p"; + libName = "wit_bindgen"; + authors = [ + "Alex Crichton " + ]; + features = { + "async" = [ "std" "wit-bindgen-rust-macro?/async" ]; + "async-spawn" = [ "async" "dep:futures" ]; + "bitflags" = [ "dep:bitflags" ]; + "default" = [ "macros" "realloc" "async" "std" "bitflags" ]; + "inter-task-wakeup" = [ "async" ]; + "macros" = [ "dep:wit-bindgen-rust-macro" ]; + "rustc-dep-of-std" = [ "dep:core" "dep:alloc" ]; + }; + }; + "writeable" = rec { + crateName = "writeable"; + version = "0.6.2"; + edition = "2021"; + sha256 = "1fg08y97n6vk7l0rnjggw3xyrii6dcqg54wqaxldrlk98zdy1pcy"; + authors = [ + "The ICU4X Project Developers" + ]; + features = { + "default" = [ "alloc" ]; + "either" = [ "dep:either" ]; + }; + }; + "xdg" = rec { + crateName = "xdg"; + version = "3.0.0"; + edition = "2021"; + sha256 = "1dc5jpkkylp7z54c4xwxzwxx1jb5cklwfjs5493k9y9d7wik7d1g"; + authors = [ + "Ben Longbons " + "whitequark " + ]; + features = { + "serde" = [ "dep:serde" ]; + }; + }; + "yansi" = rec { + crateName = "yansi"; + version = "1.0.1"; + edition = "2021"; + sha256 = "0jdh55jyv0dpd38ij4qh60zglbw9aa8wafqai6m0wa7xaxk3mrfg"; + authors = [ + "Sergio Benitez " + ]; + features = { + "default" = [ "std" ]; + "detect-env" = [ "std" ]; + "detect-tty" = [ "is-terminal" "std" ]; + "hyperlink" = [ "std" ]; + "is-terminal" = [ "dep:is-terminal" ]; + "std" = [ "alloc" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "std" ]; + }; + "yoke" = rec { + crateName = "yoke"; + version = "0.8.1"; + edition = "2021"; + sha256 = "0m29dm0bf5iakxgma0bj6dbmc3b8qi9b1vaw9sa76kdqmz3fbmkj"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "stable_deref_trait"; + packageId = "stable_deref_trait"; + usesDefaultFeatures = false; + } + { + name = "yoke-derive"; + packageId = "yoke-derive"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "stable_deref_trait/alloc" "zerofrom/alloc" ]; + "default" = [ "alloc" "zerofrom" ]; + "derive" = [ "dep:yoke-derive" "zerofrom/derive" ]; + "zerofrom" = [ "dep:zerofrom" ]; + }; + resolvedDefaultFeatures = [ "derive" "zerofrom" ]; + }; + "yoke-derive" = rec { + crateName = "yoke-derive"; + version = "0.8.1"; + edition = "2021"; + sha256 = "0pbyja133jnng4mrhimzdq4a0y26421g734ybgz8wsgbfhl0andn"; + procMacro = true; + libName = "yoke_derive"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "fold" ]; + } + { + name = "synstructure"; + packageId = "synstructure"; + } + ]; + + }; + "zerocopy" = rec { + crateName = "zerocopy"; + version = "0.8.33"; + edition = "2021"; + sha256 = "1z9d6z8p1ndf0yrvw99jr5zcjnd4270kv4rivqqyi7hbs5l533v6"; + authors = [ + "Joshua Liebow-Feeser " + "Jack Wrenn " + ]; + dependencies = [ + { + name = "zerocopy-derive"; + packageId = "zerocopy-derive"; + optional = true; + } + { + name = "zerocopy-derive"; + packageId = "zerocopy-derive"; + target = { target, features }: false; + } + ]; + devDependencies = [ + { + name = "zerocopy-derive"; + packageId = "zerocopy-derive"; + } + ]; + features = { + "__internal_use_only_features_that_work_on_stable" = [ "alloc" "derive" "simd" "std" ]; + "derive" = [ "zerocopy-derive" ]; + "simd-nightly" = [ "simd" ]; + "std" = [ "alloc" ]; + "zerocopy-derive" = [ "dep:zerocopy-derive" ]; + }; + resolvedDefaultFeatures = [ "derive" "simd" "zerocopy-derive" ]; + }; + "zerocopy-derive" = rec { + crateName = "zerocopy-derive"; + version = "0.8.33"; + edition = "2021"; + sha256 = "1wbh4bil3kqfmiwxlpzhxba6fyh09nsy87k7idk8b1hadfr64y9c"; + procMacro = true; + libName = "zerocopy_derive"; + authors = [ + "Joshua Liebow-Feeser " + "Jack Wrenn " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" ]; + } + ]; + + }; + "zerofrom" = rec { + crateName = "zerofrom"; + version = "0.1.6"; + edition = "2021"; + sha256 = "19dyky67zkjichsb7ykhv0aqws3q0jfvzww76l66c19y6gh45k2h"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "zerofrom-derive"; + packageId = "zerofrom-derive"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "default" = [ "alloc" ]; + "derive" = [ "dep:zerofrom-derive" ]; + }; + resolvedDefaultFeatures = [ "derive" ]; + }; + "zerofrom-derive" = rec { + crateName = "zerofrom-derive"; + version = "0.1.6"; + edition = "2021"; + sha256 = "00l5niw7c1b0lf1vhvajpjmcnbdp2vn96jg4nmkhq2db0rp5s7np"; + procMacro = true; + libName = "zerofrom_derive"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "fold" ]; + } + { + name = "synstructure"; + packageId = "synstructure"; + } + ]; + + }; + "zeroize" = rec { + crateName = "zeroize"; + version = "1.8.2"; + edition = "2021"; + sha256 = "1l48zxgcv34d7kjskr610zqsm6j2b4fcr2vfh9jm9j1jgvk58wdr"; + authors = [ + "The RustCrypto Project Developers" + ]; + dependencies = [ + { + name = "zeroize_derive"; + packageId = "zeroize_derive"; + optional = true; + } + ]; + features = { + "default" = [ "alloc" ]; + "derive" = [ "zeroize_derive" ]; + "serde" = [ "dep:serde" ]; + "std" = [ "alloc" ]; + "zeroize_derive" = [ "dep:zeroize_derive" ]; + }; + resolvedDefaultFeatures = [ "alloc" "default" "derive" "zeroize_derive" ]; + }; + "zeroize_derive" = rec { + crateName = "zeroize_derive"; + version = "1.4.3"; + edition = "2021"; + sha256 = "0bl5vd1lz27p4z336nximg5wrlw5j7jc8fxh7iv6r1wrhhav99c5"; + procMacro = true; + authors = [ + "The RustCrypto Project Developers" + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "full" "extra-traits" "visit" ]; + } + ]; + + }; + "zerotrie" = rec { + crateName = "zerotrie"; + version = "0.2.3"; + edition = "2021"; + sha256 = "0lbqznlqazmrwwzslw0ci7p3pqxykrbfhq29npj0gmb2amxc2n9a"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "displaydoc"; + packageId = "displaydoc"; + usesDefaultFeatures = false; + } + { + name = "yoke"; + packageId = "yoke"; + optional = true; + usesDefaultFeatures = false; + features = [ "derive" ]; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "databake" = [ "dep:databake" "zerovec?/databake" ]; + "litemap" = [ "dep:litemap" "alloc" ]; + "serde" = [ "dep:serde_core" "dep:litemap" "alloc" "litemap/serde" "zerovec?/serde" ]; + "yoke" = [ "dep:yoke" ]; + "zerofrom" = [ "dep:zerofrom" ]; + "zerovec" = [ "dep:zerovec" ]; + }; + resolvedDefaultFeatures = [ "yoke" "zerofrom" ]; + }; + "zerovec" = rec { + crateName = "zerovec"; + version = "0.11.5"; + edition = "2021"; + sha256 = "00m0p47k2g9mkv505hky5xh3r6ps7v8qc0dy4pspg542jj972a3c"; + authors = [ + "The ICU4X Project Developers" + ]; + dependencies = [ + { + name = "yoke"; + packageId = "yoke"; + optional = true; + usesDefaultFeatures = false; + } + { + name = "zerofrom"; + packageId = "zerofrom"; + usesDefaultFeatures = false; + } + { + name = "zerovec-derive"; + packageId = "zerovec-derive"; + optional = true; + usesDefaultFeatures = false; + } + ]; + features = { + "alloc" = [ "serde?/alloc" ]; + "databake" = [ "dep:databake" ]; + "derive" = [ "dep:zerovec-derive" ]; + "hashmap" = [ "dep:twox-hash" "alloc" ]; + "serde" = [ "dep:serde" ]; + "yoke" = [ "dep:yoke" ]; + }; + resolvedDefaultFeatures = [ "derive" "yoke" ]; + }; + "zerovec-derive" = rec { + crateName = "zerovec-derive"; + version = "0.11.2"; + edition = "2021"; + sha256 = "1wsig4h5j7a1scd5hrlnragnazjny9qjc44hancb6p6a76ay7p7a"; + procMacro = true; + libName = "zerovec_derive"; + authors = [ + "Manish Goregaokar " + ]; + dependencies = [ + { + name = "proc-macro2"; + packageId = "proc-macro2"; + } + { + name = "quote"; + packageId = "quote"; + } + { + name = "syn"; + packageId = "syn 2.0.114"; + features = [ "extra-traits" ]; + } + ]; + + }; + "zmij" = rec { + crateName = "zmij"; + version = "1.0.16"; + edition = "2021"; + sha256 = "0r8swld9cwnyvdfamq4063ngwxdzckg4922ayk7likma4mc19kfz"; + authors = [ + "David Tolnay " + ]; + features = { + "no-panic" = [ "dep:no-panic" ]; + }; + }; + "zstd" = rec { + crateName = "zstd"; + version = "0.13.3"; + edition = "2018"; + sha256 = "12n0h4w9l526li7jl972rxpyf012jw3nwmji2qbjghv9ll8y67p9"; + authors = [ + "Alexandre Bury " + ]; + dependencies = [ + { + name = "zstd-safe"; + packageId = "zstd-safe"; + usesDefaultFeatures = false; + features = [ "std" ]; + } + ]; + features = { + "arrays" = [ "zstd-safe/arrays" ]; + "bindgen" = [ "zstd-safe/bindgen" ]; + "debug" = [ "zstd-safe/debug" ]; + "default" = [ "legacy" "arrays" "zdict_builder" ]; + "experimental" = [ "zstd-safe/experimental" ]; + "fat-lto" = [ "zstd-safe/fat-lto" ]; + "legacy" = [ "zstd-safe/legacy" ]; + "no_asm" = [ "zstd-safe/no_asm" ]; + "pkg-config" = [ "zstd-safe/pkg-config" ]; + "thin" = [ "zstd-safe/thin" ]; + "thin-lto" = [ "zstd-safe/thin-lto" ]; + "zdict_builder" = [ "zstd-safe/zdict_builder" ]; + "zstdmt" = [ "zstd-safe/zstdmt" ]; + }; + resolvedDefaultFeatures = [ "arrays" "default" "legacy" "zdict_builder" ]; + }; + "zstd-safe" = rec { + crateName = "zstd-safe"; + version = "7.2.4"; + edition = "2018"; + sha256 = "179vxmkzhpz6cq6mfzvgwc99bpgllkr6lwxq7ylh5dmby3aw8jcg"; + libName = "zstd_safe"; + authors = [ + "Alexandre Bury " + ]; + dependencies = [ + { + name = "zstd-sys"; + packageId = "zstd-sys"; + usesDefaultFeatures = false; + } + ]; + features = { + "bindgen" = [ "zstd-sys/bindgen" ]; + "debug" = [ "zstd-sys/debug" ]; + "default" = [ "legacy" "arrays" "zdict_builder" ]; + "experimental" = [ "zstd-sys/experimental" ]; + "fat-lto" = [ "zstd-sys/fat-lto" ]; + "legacy" = [ "zstd-sys/legacy" ]; + "no_asm" = [ "zstd-sys/no_asm" ]; + "pkg-config" = [ "zstd-sys/pkg-config" ]; + "seekable" = [ "zstd-sys/seekable" ]; + "std" = [ "zstd-sys/std" ]; + "thin" = [ "zstd-sys/thin" ]; + "thin-lto" = [ "zstd-sys/thin-lto" ]; + "zdict_builder" = [ "zstd-sys/zdict_builder" ]; + "zstdmt" = [ "zstd-sys/zstdmt" ]; + }; + resolvedDefaultFeatures = [ "arrays" "legacy" "std" "zdict_builder" ]; + }; + "zstd-sys" = rec { + crateName = "zstd-sys"; + version = "2.0.16+zstd.1.5.7"; + edition = "2018"; + links = "zstd"; + sha256 = "0j1pd2iaqpvaxlgqmmijj68wma7xwdv9grrr63j873yw5ay9xqci"; + libName = "zstd_sys"; + authors = [ + "Alexandre Bury " + ]; + buildDependencies = [ + { + name = "cc"; + packageId = "cc"; + features = [ "parallel" ]; + } + { + name = "pkg-config"; + packageId = "pkg-config"; + } + ]; + features = { + "bindgen" = [ "dep:bindgen" ]; + "default" = [ "legacy" "zdict_builder" "bindgen" ]; + }; + resolvedDefaultFeatures = [ "legacy" "std" "zdict_builder" ]; + }; + }; + + # +# crate2nix/default.nix (excerpt start) +# + + /* + Target (platform) data for conditional dependencies. + This corresponds roughly to what buildRustCrate is setting. + */ + makeDefaultTarget = platform: { + name = platform.rust.rustcTarget; + + 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; + } // extraTargetFlags; + + registryUrl = + { registries + , url + , crate + , version + , sha256 + , + }: + let + dl = registries.${url}.dl; + tmpl = [ + "{crate}" + "{version}" + "{prefix}" + "{lowerprefix}" + "{sha256-checksum}" + ]; + in + with lib.strings; + if lib.lists.any (i: hasInfix "{}" dl) tmpl then + let + prefix = + if builtins.stringLength crate == 1 then + "1" + else if builtins.stringLength crate == 2 then + "2" + else + "${builtins.substring 0 2 crate}/${builtins.substring 2 (builtins.stringLength crate - 2) crate}"; + in + builtins.replaceStrings tmpl [ + crate + version + prefix + (lib.strings.toLower prefix) + sha256 + ] + else + "${dl}/${crate}/${version}/download"; + + # Filters common temp files and build files. + # TODO(pkolloch): Substitute with gitignore filter + sourceFilter = + name: type: + let + baseName = builtins.baseNameOf (builtins.toString name); + in + !( + # Filter out git + baseName == ".gitignore" + || (type == "directory" && baseName == ".git") + + # Filter out build results + || ( + type == "directory" + && ( + baseName == "target" + || baseName == "_site" + || baseName == ".sass-cache" + || baseName == ".jekyll-metadata" + || baseName == "build-artifacts" + ) + ) + + # Filter out nix-build result symlinks + || (type == "symlink" && lib.hasPrefix "result" baseName) + + # Filter out IDE config + || (type == "directory" && (baseName == ".idea" || baseName == ".vscode")) + || lib.hasSuffix ".iml" baseName + + # Filter out nix build files + || baseName == "Cargo.nix" + + # Filter out editor backup / swap files. + || lib.hasSuffix "~" baseName + || builtins.match "^\\.sw[a-z]$$" baseName != null + || builtins.match "^\\..*\\.sw[a-z]$$" baseName != null + || lib.hasSuffix ".tmp" baseName + || lib.hasSuffix ".bak" baseName + || baseName == "tests.nix" + ); + + /* + Returns a crate which depends on successful test execution + of crate given as the second argument. + + testCrateFlags: list of flags to pass to the test exectuable + testInputs: list of packages that should be available during test execution + */ + crateWithTest = + { crate + , testCrate + , testCrateFlags + , testInputs + , testPreRun + , testPostRun + , + }: + assert builtins.typeOf testCrateFlags == "list"; + assert builtins.typeOf testInputs == "list"; + assert builtins.typeOf testPreRun == "string"; + assert builtins.typeOf testPostRun == "string"; + let + # override the `crate` so that it will build and execute tests instead of + # building the actual lib and bin targets We just have to pass `--test` + # to rustc and it will do the right thing. We execute the tests and copy + # their log and the test executables to $out for later inspection. + test = + let + drv = testCrate.override (_: { + buildTests = true; + }); + # If the user hasn't set any pre/post commands, we don't want to + # insert empty lines. This means that any existing users of crate2nix + # don't get a spurious rebuild unless they set these explicitly. + testCommand = pkgs.lib.concatStringsSep "\n" ( + pkgs.lib.filter (s: s != "") [ + testPreRun + "$f $testCrateFlags 2>&1 | tee -a $out" + testPostRun + ] + ); + in + pkgs.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 meta; + 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 pkgs.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 (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) + # + }; +} + diff --git a/Cargo.toml b/Cargo.toml index e6f6d1d..c9f5c1a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -105,7 +105,6 @@ utoipa = { version = "5.3.1", features = ["chrono", "uuid"] } utoipa-axum = "0.2" uuid = { version = "1.11.0", features = ["v7", "serde"] } which = "7.0.2" -zitadel = { git = "https://github.com/cachix/zitadel-rust", branch = "cachix", features = ["api", "axum", "actions-v3"] } gix = { version = "0.71.0", features = [ "worktree-mutation", "blocking-network-client", diff --git a/README.md b/README.md index 9d7c2b3..e5fd946 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,7 @@ in { - **Runner** (Rust) - WebSocket-connected service for executing commands in remote environments - **Logger** (Rust) - Centralized logging service for collecting and managing logs - **Database** (PostgreSQL 17) - Persistent storage with Diesel ORM migrations -- **Authentication** ([Zitadel](https://zitadel.com)) - Open Source OIDC SSO with OAuth2/LDAP/SAML2/OTP support +- **Authentication** (oauth-kit) - Session-based OAuth with GitHub provider ## Development @@ -92,11 +92,7 @@ in { 2. Create [GitHub App](https://github.com/settings/apps/new): - Name: Choose a unique name for your app (this will be used in config as `app_name`) -- Callback URLs: - - Legacy zitadel login - `http://localhost:9500/ui/login/login/externalidp/callback` - - V2 login UI - `http://localhost:9500/idps/callback` +- Callback URL: `/auth/callback/github` - Permissions: Repository: Check (write), Contents (Read) - Account permissions: read only emails - Subscribe to events: Pull Request, Check run, Push @@ -104,15 +100,8 @@ in { - Secret: generate secure secret (use this as `webhook_secret` in config) 3. In the GitHub app's general settings: - - Generate a new private key (use this in config as `app_private_key`) + - Generate a new private key - Generate a new client secret - - Save the client ID and client secret to `.env`. - - ```shell - export TF_VAR_github_client_id=... - export TF_VAR_github_client_secret=... - export TF_VAR_redirect_uris=["http://localhost:1234/", "/"] - ``` 4. Create `./cloud.devenv.toml`: @@ -123,26 +112,7 @@ base_url = "https://..ts.net" app_name = "your-app-name" # The name of your GitHub app ``` -5. Configure development secrets using secretspec: - - ```shell - secretspec set --provider env GITHUB_APP_PRIVATE_KEY="$(cat path/to/private-key.pem)" - secretspec set --provider env GITHUB_WEBHOOK_SECRET="your-webhook-secret" - ``` - -6. Launch the processes - - ```console - devenv up - ``` - -7. Initialize Zitadel by following `terraform/zitadel/README.md` - -8. Set the Zitadel webhook signing key: - - ```shell - secretspec set --provider env ZITADEL_WEBHOOK_SIGNING_KEY="$(cat .devenv/state/zitadel/signing-key.txt)" - ``` +5. Run `devenv up` — secretspec will prompt for any missing secrets (see `secretspec.toml` for descriptions of where to find each value). ### Migrations @@ -164,4 +134,6 @@ secretspec set --provider vault POSTHOG_API_KEY="your-posthog-api-key" secretspec set --provider vault DATABASE_URL="your-production-db-url" secretspec set --provider vault GITHUB_APP_PRIVATE_KEY="$(cat path/to/private-key.pem)" secretspec set --provider vault GITHUB_WEBHOOK_SECRET="your-webhook-secret" +secretspec set --provider vault GITHUB_OAUTH_CLIENT_ID="your-client-id" +secretspec set --provider vault GITHUB_OAUTH_CLIENT_SECRET="your-client-secret" ``` diff --git a/backend/Cargo.toml b/backend/Cargo.toml index cf8b68f..3b25218 100644 --- a/backend/Cargo.toml +++ b/backend/Cargo.toml @@ -19,7 +19,6 @@ color-eyre.workspace = true diesel.workspace = true diesel-async.workspace = true diesel_migrations.workspace = true -digest.workspace = true eyre.workspace = true futures-util.workspace = true hex.workspace = true @@ -47,7 +46,8 @@ tracing-error.workspace = true utoipa.workspace = true utoipa-axum.workspace = true uuid = { workspace = true, features = ["v7"] } -zitadel.workspace = true +oauth-kit = { path = "../oauth-kit" } +tower-sessions-cookie-store = { version = "0.5", features = ["private"] } prost.workspace = true pbjson-types = "0.7" url.workspace = true diff --git a/backend/migrations/2026-01-19-000000_oauth_auth_tables/down.sql b/backend/migrations/2026-01-19-000000_oauth_auth_tables/down.sql new file mode 100644 index 0000000..1866a54 --- /dev/null +++ b/backend/migrations/2026-01-19-000000_oauth_auth_tables/down.sql @@ -0,0 +1,14 @@ +-- Drop role-based access table +DROP TABLE IF EXISTS account_role; + +-- Drop OAuth account linking table +DROP INDEX IF EXISTS oauth_account_ix_account_id; +DROP TABLE IF EXISTS oauth_account; + +-- Remove columns from accounts table +ALTER TABLE accounts DROP COLUMN IF EXISTS updated_at; +ALTER TABLE accounts DROP COLUMN IF EXISTS created_at; +ALTER TABLE accounts DROP COLUMN IF EXISTS avatar_url; +ALTER TABLE accounts DROP COLUMN IF EXISTS name; +ALTER TABLE accounts DROP COLUMN IF EXISTS email_verified; +ALTER TABLE accounts DROP COLUMN IF EXISTS email; diff --git a/backend/migrations/2026-01-19-000000_oauth_auth_tables/up.sql b/backend/migrations/2026-01-19-000000_oauth_auth_tables/up.sql new file mode 100644 index 0000000..f9c102a --- /dev/null +++ b/backend/migrations/2026-01-19-000000_oauth_auth_tables/up.sql @@ -0,0 +1,28 @@ +-- Expand accounts table with user profile fields +ALTER TABLE accounts ADD COLUMN email TEXT; +ALTER TABLE accounts ADD COLUMN email_verified BOOLEAN NOT NULL DEFAULT false; +ALTER TABLE accounts ADD COLUMN name TEXT; +ALTER TABLE accounts ADD COLUMN avatar_url TEXT; +ALTER TABLE accounts ADD COLUMN created_at TIMESTAMPTZ NOT NULL DEFAULT now(); +ALTER TABLE accounts ADD COLUMN updated_at TIMESTAMPTZ NOT NULL DEFAULT now(); + +-- OAuth account linking table +CREATE TABLE oauth_account ( + id UUID PRIMARY KEY DEFAULT gen_random_uuid(), + account_id UUID NOT NULL REFERENCES accounts(id) ON DELETE CASCADE, + provider TEXT NOT NULL, + provider_account_id TEXT NOT NULL, + provider_email TEXT, + raw_profile JSONB, + created_at TIMESTAMPTZ NOT NULL DEFAULT now(), + UNIQUE (provider, provider_account_id) +); +CREATE INDEX oauth_account_ix_account_id ON oauth_account(account_id); + +-- Role-based access (replaces Zitadel roles) +CREATE TABLE account_role ( + account_id UUID NOT NULL REFERENCES accounts(id) ON DELETE CASCADE, + role TEXT NOT NULL, + granted_at TIMESTAMPTZ NOT NULL DEFAULT now(), + PRIMARY KEY (account_id, role) +); diff --git a/backend/src/account/model.rs b/backend/src/account/model.rs index fcd773d..c115851 100644 --- a/backend/src/account/model.rs +++ b/backend/src/account/model.rs @@ -1,11 +1,12 @@ -use diesel::prelude::*; use serde::Serialize; use utoipa::ToSchema; -use crate::schema::accounts; - -#[derive(Queryable, Selectable, Debug, Serialize, ToSchema)] -#[diesel(table_name = accounts)] -pub struct Account { - pub id: uuid::Uuid, +#[derive(Debug, Serialize, ToSchema)] +pub struct AccountResponse { + pub user_id: String, + pub username: Option, + pub name: Option, + pub email: Option, + pub avatar_url: Option, + pub beta_access: bool, } diff --git a/backend/src/account/serve.rs b/backend/src/account/serve.rs index f2f5783..e982e2f 100644 --- a/backend/src/account/serve.rs +++ b/backend/src/account/serve.rs @@ -1,42 +1,31 @@ use crate::auth::BetaUser; use crate::config::AppState; use crate::error::Result; -use axum::{Json, extract::State}; +use axum::Json; use utoipa_axum::{router::OpenApiRouter, routes}; -use super::model::Account; +use super::model::AccountResponse; #[utoipa::path( get, path = "/me", responses( - (status = 200, description = "Account found", body = Account), + (status = 200, description = "Account found", body = AccountResponse), (status = 404, description = "Not logged in") ) )] #[tracing::instrument(skip_all, ret)] -pub async fn get_account( - user: BetaUser, - State(_state): State, -) -> Result> { - tracing::info!("/me"); - tracing::info!("{:?}", user); +pub async fn get_account(user: BetaUser) -> Result> { + tracing::info!("/me for account_id={}", user.account_id); - // Return user information from Zitadel introspection - let user_info = serde_json::json!({ - "user_id": user.sub, - "username": user.username, - "name": user.name, - "given_name": user.given_name, - "family_name": user.family_name, - "preferred_username": user.preferred_username, - "email": user.email, - "email_verified": user.email_verified, - "locale": user.locale, - "beta_access": true, // This user always has beta access since we validate it - }); - - Ok(Json(user_info)) + Ok(Json(AccountResponse { + user_id: user.account_id.to_string(), + username: user.username, + name: user.name, + email: user.email, + avatar_url: user.avatar_url, + beta_access: true, + })) } pub fn router() -> OpenApiRouter { diff --git a/backend/src/auth.rs b/backend/src/auth.rs index 7fa71e0..aff02a1 100644 --- a/backend/src/auth.rs +++ b/backend/src/auth.rs @@ -1,23 +1,37 @@ +//! Authentication extractors for the backend API. +//! +//! This module provides extractors that authenticate requests using session cookies +//! managed by oauth-kit and check role-based access. + use axum::{ extract::{FromRef, FromRequestParts}, http::{StatusCode, request::Parts}, response::{IntoResponse, Response}, }; -use zitadel::axum::introspection::IntrospectedUser; - -/// A wrapper around IntrospectedUser that ensures the user has beta_user role -#[derive(Debug)] -pub struct BetaUser(pub IntrospectedUser); - -impl std::ops::Deref for BetaUser { - type Target = IntrospectedUser; - - fn deref(&self) -> &Self::Target { - &self.0 - } +use diesel::prelude::*; +use diesel_async::RunQueryDsl; +use oauth_kit::axum::AuthUser; +use uuid::Uuid; + +use crate::config::{AppState, DbPool}; +use crate::schema::{account_role, accounts, oauth_account}; + +/// A wrapper around the authenticated user that ensures they have the beta_user role. +#[derive(Debug, Clone)] +pub struct BetaUser { + /// The user's account ID. + pub account_id: Uuid, + /// The user's email address (if available). + pub email: Option, + /// The user's display name (if available). + pub name: Option, + /// The user's avatar URL (if available). + pub avatar_url: Option, + /// The user's login/username from the OAuth provider (e.g. GitHub login). + pub username: Option, } -/// Custom error for authorization failures +/// Custom error for authorization failures. #[derive(Debug)] pub struct AuthorizationError { pub message: String, @@ -29,79 +43,27 @@ impl IntoResponse for AuthorizationError { } } -/// Trait for checking beta access on users -pub trait BetaAccessChecker { - fn has_beta_access(&self) -> bool; +/// Query struct for fetching account details. +#[derive(Queryable, Selectable)] +#[diesel(table_name = crate::schema::accounts)] +struct AccountDetails { + id: Uuid, + email: Option, + name: Option, + avatar_url: Option, } -impl BetaAccessChecker for IntrospectedUser { - fn has_beta_access(&self) -> bool { - tracing::debug!("Checking beta access for user: {}", self.sub); - - // Check if user has beta_user role in project_roles - if let Some(_) = self.project_roles.get("beta_user") { - tracing::debug!("User {} has beta_user in project_roles", self.sub); - return true; - } - - // Check if user has beta_user role in org_roles - if let Some(_) = self.org_roles.get("beta_user") { - tracing::debug!("User {} has beta_user in org_roles", self.sub); - return true; - } - - // Check for beta_user role in custom_claims using the Zitadel OIDC format - for (claim_name, claim_value) in &self.custom_claims { - if claim_name.starts_with("urn:zitadel:iam:org:project:") - && claim_name.ends_with(":roles") - { - // Check if claim_value contains beta_user key - if let Some(roles_obj) = claim_value.as_object() { - if roles_obj.contains_key("beta_user") { - tracing::debug!( - "User {} has beta_user in custom claim: {}", - self.sub, - claim_name - ); - return true; - } - } - } - } - - // Check for direct beta_access claim - if let Some(beta_access_value) = self.custom_claims.get("beta_access") { - if let Some(beta_access_bool) = beta_access_value.as_bool() { - if beta_access_bool { - tracing::debug!("User {} has beta_access claim: true", self.sub); - return true; - } - } - if let Some(beta_access_str) = beta_access_value.as_str() { - if beta_access_str.to_lowercase() == "true" { - tracing::debug!("User {} has beta_access claim: 'true'", self.sub); - return true; - } - } - } - - // Check metadata for beta_access field from webhook actions - if let Some(beta_access) = self.metadata.get("beta_access") { - if beta_access.to_lowercase() == "true" { - tracing::debug!("User {} has beta_access in metadata", self.sub); - return true; - } - } - - tracing::debug!("User {} does not have beta access", self.sub); - false - } +/// Query struct for fetching OAuth profile data. +#[derive(Queryable, Selectable)] +#[diesel(table_name = crate::schema::oauth_account)] +struct OAuthProfile { + raw_profile: Option, } impl FromRequestParts for BetaUser where S: Send + Sync, - zitadel::axum::introspection::IntrospectionState: FromRef, + DbPool: FromRef, { type Rejection = AuthorizationError; @@ -110,22 +72,72 @@ where state: &S, ) -> impl std::future::Future> + Send { async move { - // First, extract the regular IntrospectedUser - let user = IntrospectedUser::from_request_parts(parts, state) + // Extract the authenticated user ID from the session + let auth_user: AuthUser = AuthUser::from_request_parts(parts, state) .await .map_err(|_| AuthorizationError { message: "Authentication required".to_string(), })?; - // Check if user has beta access - if user.has_beta_access() { - Ok(BetaUser(user)) - } else { - Err(AuthorizationError { + let account_id = auth_user.0; + let pool = DbPool::from_ref(state); + + // Get a database connection + let mut conn = pool.get().await.map_err(|e| { + tracing::error!("Failed to get database connection: {}", e); + AuthorizationError { + message: "Internal server error".to_string(), + } + })?; + + // Fetch account details with beta_user role check and OAuth profile in a single query + let result: Option<(AccountDetails, OAuthProfile)> = accounts::table + .inner_join(account_role::table) + .inner_join(oauth_account::table) + .filter(accounts::id.eq(account_id)) + .filter(account_role::role.eq("beta_user")) + .select((AccountDetails::as_select(), OAuthProfile::as_select())) + .first(&mut conn) + .await + .optional() + .map_err(|e| { + tracing::error!("Failed to fetch account with beta role: {}", e); + AuthorizationError { + message: "Internal server error".to_string(), + } + })?; + + let (account, oauth_profile) = result.ok_or_else(|| { + tracing::debug!("User {} does not have beta_user role", account_id); + AuthorizationError { message: "Beta access required. Please contact support to get beta access." .to_string(), - }) - } + } + })?; + + // Extract username/login from the OAuth provider's raw profile + let username = oauth_profile + .raw_profile + .as_ref() + .and_then(|p| p.get("login")) + .and_then(|v| v.as_str()) + .map(String::from); + + tracing::debug!("User {} has beta access", account_id); + + Ok(BetaUser { + account_id: account.id, + email: account.email, + name: account.name, + avatar_url: account.avatar_url, + username, + }) } } } + +impl FromRef for DbPool { + fn from_ref(state: &AppState) -> Self { + state.pool.clone() + } +} diff --git a/backend/src/config.rs b/backend/src/config.rs index 0185b69..1d93dcf 100644 --- a/backend/src/config.rs +++ b/backend/src/config.rs @@ -2,7 +2,6 @@ use std::ops::Deref; use std::path::Path; use std::sync::Arc; -use axum::extract::FromRef; use diesel_async::AsyncPgConnection; use diesel_async::async_connection_wrapper::AsyncConnectionWrapper; use diesel_async::pooled_connection::AsyncDieselConnectionManager; @@ -13,26 +12,23 @@ use eyre::Result; use octocrab::Octocrab; use serde::{Deserialize, Serialize}; use url::Url; -use zitadel::axum::introspection::{IntrospectionState, IntrospectionStateBuilder}; -use zitadel::credentials::Application; + +use crate::oauth_store::PostgresUserStore; secretspec_derive::declare_secrets!("../secretspec.toml"); +/// Database connection pool type alias. +pub type DbPool = Pool; + fn default_port() -> u16 { 8080 } -fn default_zitadel_endpoint() -> Url { - "http://localhost:9500".parse().unwrap() -} - #[derive(Deserialize)] pub struct Config { pub base_url: Url, #[serde(default = "default_port")] pub port: u16, - #[serde(default)] - pub zitadel: Zitadel, pub github: GitHub, #[serde(default)] pub job: Job, @@ -58,7 +54,14 @@ impl Config { )); } let config_str = std::fs::read_to_string(config_path)?; - let config: Config = toml::from_str(&config_str)?; + let mut config: Config = toml::from_str(&config_str)?; + + if let Ok(port_str) = std::env::var("PORT") { + config.port = port_str + .parse() + .map_err(|e| eyre::eyre!("Invalid PORT value: {}", e))?; + } + Ok(config) } } @@ -87,20 +90,6 @@ impl Default for Job { } } -#[derive(Deserialize)] -pub struct Zitadel { - #[serde(default = "default_zitadel_endpoint")] - pub endpoint: Url, -} - -impl Default for Zitadel { - fn default() -> Self { - Self { - endpoint: default_zitadel_endpoint(), - } - } -} - #[derive(Clone)] pub struct AppState(Arc); @@ -116,18 +105,12 @@ pub struct InnerState { pub config: Config, pub secrets: SecretSpec, pub pool: Pool, - pub zitadel: IntrospectionState, + pub oauth_store: PostgresUserStore, pub github: Octocrab, pub posthog: Option, pub runner_state: crate::runner::serve::RunnerState, } -impl FromRef for IntrospectionState { - fn from_ref(state: &AppState) -> Self { - state.0.zitadel.clone() - } -} - pub const MIGRATIONS: EmbeddedMigrations = embed_migrations!(); impl AppState { @@ -149,22 +132,8 @@ impl AppState { .build() .map_err(|e| eyre::eyre!("Failed to create database pool: {}", e))?; - let zitadel = IntrospectionStateBuilder::new( - &config.zitadel.endpoint.origin().unicode_serialization(), - ) - .with_jwt_profile( - secrets - .zitadel_jwt_profile - .as_ref() - .ok_or_else(|| eyre::eyre!("Zitadel JWT profile not configured")) - .and_then(|token| { - Application::load_from_json(token) - .map_err(|e| eyre::eyre!("Failed to load Zitadel JWT profile: {}", e)) - })?, - ) - .build() - .await - .map_err(|e| eyre::eyre!("Failed to configure Zitadel: {}", e))?; + // Create OAuth user store + let oauth_store = PostgresUserStore::new(pool.clone()); let app_private_key = jsonwebtoken::EncodingKey::from_rsa_pem( secrets @@ -196,7 +165,7 @@ impl AppState { config, secrets, pool, - zitadel, + oauth_store, github, posthog, runner_state, diff --git a/backend/src/error.rs b/backend/src/error.rs index c8dcc90..baefcae 100644 --- a/backend/src/error.rs +++ b/backend/src/error.rs @@ -1,7 +1,6 @@ use axum::Json; use axum::http::StatusCode; use axum::response::{IntoResponse, Response}; -use thiserror::Error; pub type Result = color_eyre::Result; pub struct Report(color_eyre::Report); @@ -28,36 +27,6 @@ impl IntoResponse for Report { let err_string = format!("{err:?}"); tracing::error!("{err_string}"); - if let Some(err) = err.downcast_ref::() { - return err.response(); - } - - (StatusCode::INTERNAL_SERVER_ERROR, Json(())).into_response() - } -} - -#[derive(Error, Debug)] -pub enum InternalError { - #[error("Octocrab Error")] - Octocrab(#[from] octocrab::Error), - #[error("IO Error")] - Io(#[from] std::io::Error), - #[error("Pool Error")] - Pool(#[from] diesel_async::pooled_connection::deadpool::PoolError), - #[error("String Error")] - String(String), - #[error("Query Error")] - QueryResult(#[from] diesel::result::Error), - #[error("JSON Error")] - Json(#[from] serde_json::Error), - #[error("Invalid Length Error")] - InvalidLength(#[from] digest::InvalidLength), - #[error("Hex Error")] - Hex(#[from] hex::FromHexError), -} - -impl InternalError { - fn response(&self) -> Response { (StatusCode::INTERNAL_SERVER_ERROR, Json(())).into_response() } } diff --git a/backend/src/github/model.rs b/backend/src/github/model.rs index 19aca05..f2f2b4a 100644 --- a/backend/src/github/model.rs +++ b/backend/src/github/model.rs @@ -253,12 +253,6 @@ impl GitHubCommit { conn: &mut diesel_async::AsyncPgConnection, id: uuid::Uuid, ) -> crate::error::Result { - use crate::schema::github_commit; - use diesel::ExpressionMethods; - use diesel::QueryDsl; - use diesel::SelectableHelper; - use diesel_async::RunQueryDsl; - let commit = github_commit::table .filter(github_commit::id.eq(id)) .select(GitHubCommit::as_select()) @@ -513,8 +507,6 @@ impl JobGitHub { conn: &mut diesel_async::AsyncPgConnection, job: &crate::job::model::Job, ) -> Result { - use diesel_async::RunQueryDsl; - jobs_github::table .filter(jobs_github::job_id.eq(job.id)) .first::(conn) @@ -615,9 +607,6 @@ impl SourceControlIntegration for JobGitHub { conn: &mut diesel_async::AsyncPgConnection, id: uuid::Uuid, ) -> Result { - use crate::schema::jobs_github; - use diesel_async::RunQueryDsl; - // Get the GitHub job directly from the database let job_github = jobs_github::table .filter(jobs_github::job_id.eq(id)) @@ -704,16 +693,7 @@ impl SourceControlIntegration for JobGitHub { ) -> Result { let conn = &mut app_state.pool.get().await?; - // Convert VM config platform to job platform - // Get platform enum for job creation and formatting - let job_platform = match vm_config.platform { - devenv_runner::protocol::Platform::X86_64Linux => { - crate::job::model::Platform::X86_64Linux - } - devenv_runner::protocol::Platform::AArch64Darwin => { - crate::job::model::Platform::AArch64Darwin - } - }; + let job_platform: crate::job::model::Platform = vm_config.platform.into(); // Create job with specified VM configuration let job = Job::new( diff --git a/backend/src/github/serve.rs b/backend/src/github/serve.rs index 451a36d..0aad630 100644 --- a/backend/src/github/serve.rs +++ b/backend/src/github/serve.rs @@ -19,6 +19,63 @@ use utoipa_axum::{router::OpenApiRouter, routes}; use super::model::JobGitHub; +fn extract_full_account(installation: EventInstallation) -> Result { + match installation { + EventInstallation::Full(inst) => Ok(inst.account), + EventInstallation::Minimal(_) => { + Err(eyre!("Expected full installation payload but got minimal")) + } + } +} + +async fn fetch_devenv_yaml( + client: &octocrab::Octocrab, + owner: &str, + repo: &str, + git_ref: &str, +) -> Option { + match client + .repos(owner, repo) + .get_content() + .path("devenv.yaml") + .r#ref(git_ref) + .send() + .await + { + Ok(content) if !content.items.is_empty() => { + content.items[0].decoded_content().or_else(|| { + tracing::warn!("Failed to decode devenv.yaml content"); + None + }) + } + _ => None, + } +} + +async fn create_commit_and_jobs( + conn: &mut diesel_async::AsyncPgConnection, + app_state: &AppState, + client: &octocrab::Octocrab, + owner: &str, + repo: &str, + git_ref: &str, + commit: GitHubCommit, +) -> Result<()> { + GitHubCommit::create(conn, commit.clone()).await?; + + let devenv_yaml_content = fetch_devenv_yaml(client, owner, repo, git_ref).await; + + let yaml_str = devenv_yaml_content.as_deref().unwrap_or(""); + let cloud_config = crate::runner::cloudconfig::FinalCloud::new(yaml_str) + .map_err(|e| eyre!("Failed to parse devenv.yaml: {}", e))?; + let vms = cloud_config.into_vms(); + + for vm in vms { + commit.create_job(app_state.clone(), vm).await?; + } + Ok(()) +} + #[utoipa::path(get, path = "/repos", responses((status = OK, body = Vec)))] async fn get_repos( State(app_state): State, @@ -78,8 +135,7 @@ async fn get_repos( let jobs = all_jobs .iter() .map(|(job, job_github)| { - let log_url = - format!("{}/{}", app_state.config.logger_url, job.id); + let log_url = job.log_url(&app_state.config.logger_url); JobResponse { github: job_github.clone(), job: job.clone(), @@ -158,7 +214,7 @@ async fn get_rev( .into_iter() .map(|(github, job)| { // Generate a log URL for this job - let log_url = format!("{}/{}", app_state.config.logger_url, job.id); + let log_url = job.log_url(&app_state.config.logger_url); JobResponse { github, job, @@ -219,12 +275,7 @@ async fn webhook( match event.specific { WebhookEventPayload::Installation(installation_payload) => { - let account = match installation { - EventInstallation::Full(installation) => installation.account, - EventInstallation::Minimal(_) => { - panic!("can't happen") - } - }; + let account = extract_full_account(installation)?; match installation_payload.action { InstallationWebhookEventAction::Created => { let owner = GithubOwner { @@ -270,11 +321,7 @@ async fn webhook( } } WebhookEventPayload::InstallationRepositories(installation_repos) => { - let account = if let EventInstallation::Full(installation) = installation { - installation.account - } else { - panic!("can't happen") - }; + let account = extract_full_account(installation)?; for repo in installation_repos.repositories_added { GitHubRepo::create_from_webhook( @@ -346,7 +393,6 @@ async fn webhook( (String::from("Unknown"), String::from("No message provided")) }; - // Create the commit record let github_commit = GitHubCommit { id: uuid::Uuid::now_v7(), rev: push.after, @@ -356,39 +402,16 @@ async fn webhook( message, }; - // Insert the commit into the database - GitHubCommit::create(conn, github_commit.clone()).await?; - - // Try to fetch devenv.yaml to determine VM configurations - let devenv_yaml_content = match installation_client - .repos(owner_login.clone(), repo_name.clone()) - .get_content() - .path("devenv.yaml") - .r#ref(&push.r#ref) - .send() - .await - { - Ok(content) if !content.items.is_empty() => { - if let Some(content) = content.items[0].decoded_content() { - Some(content) - } else { - tracing::warn!("Failed to decode devenv.yaml content"); - None - } - } - _ => None, - }; - - // Parse devenv.yaml and get VM configurations - let yaml_str = devenv_yaml_content.as_deref().unwrap_or(""); - let cloud_config = crate::runner::cloudconfig::FinalCloud::new(yaml_str) - .map_err(|e| eyre!("Failed to parse devenv.yaml: {}", e))?; - let vms = cloud_config.into_vms(); - - // Create a job for each VM configuration - for vm in vms { - github_commit.create_job(app_state.clone(), vm).await?; - } + create_commit_and_jobs( + conn, + &app_state, + &installation_client, + &owner_login, + &repo_name, + &push.r#ref, + github_commit, + ) + .await?; } } WebhookEventPayload::PullRequest(pr) => match pr.action { @@ -445,39 +468,16 @@ async fn webhook( message, }; - // Insert the commit into the database - GitHubCommit::create(conn, github_commit.clone()).await?; - - // Try to fetch devenv.yaml to determine VM configurations - let devenv_yaml_content = match installation_client - .repos(owner_name.clone(), repo.name.clone()) - .get_content() - .path("devenv.yaml") - .r#ref(&ref_field) - .send() - .await - { - Ok(content) if !content.items.is_empty() => { - if let Some(content) = content.items[0].decoded_content() { - Some(content) - } else { - tracing::warn!("Failed to decode devenv.yaml content"); - None - } - } - _ => None, - }; - - // Parse devenv.yaml and get VM configurations - let yaml_str = devenv_yaml_content.as_deref().unwrap_or(""); - let cloud_config = crate::runner::cloudconfig::FinalCloud::new(yaml_str) - .map_err(|e| eyre!("Failed to parse devenv.yaml: {}", e))?; - let vms = cloud_config.into_vms(); - - // Create a job for each VM configuration - for vm in vms { - github_commit.create_job(app_state.clone(), vm).await?; - } + create_commit_and_jobs( + conn, + &app_state, + &installation_client, + &owner_name, + &repo.name, + &ref_field, + github_commit, + ) + .await?; } } _ => {} @@ -529,7 +529,7 @@ async fn get_repo_jobs( .or_insert_with(Vec::new) .push({ // Generate a log URL for this job - let log_url = format!("{}/{}", app_state.config.logger_url, job.id); + let log_url = job.log_url(&app_state.config.logger_url); let commit = GitHubCommit::get_by_id(conn, github_job.commit_id) .await .unwrap(); diff --git a/backend/src/job/serve.rs b/backend/src/job/serve.rs index abefade..a3dcaf6 100644 --- a/backend/src/job/serve.rs +++ b/backend/src/job/serve.rs @@ -81,7 +81,10 @@ async fn cancel_job( State(app_state): State, Path(id): Path, ) -> impl IntoResponse { - let conn = &mut app_state.pool.get().await.unwrap(); + let Ok(mut conn) = app_state.pool.get().await else { + return StatusCode::INTERNAL_SERVER_ERROR; + }; + let conn = &mut conn; // Use the model's cancel method which handles locking and race conditions match model::Job::cancel(conn, id).await { diff --git a/backend/src/lib.rs b/backend/src/lib.rs index 908f70a..b52a08a 100644 --- a/backend/src/lib.rs +++ b/backend/src/lib.rs @@ -6,7 +6,7 @@ pub mod config; pub mod error; pub mod github; pub mod job; +pub mod oauth_store; pub mod runner; pub mod schema; pub mod serve; -pub mod zitadel; diff --git a/backend/src/oauth_store.rs b/backend/src/oauth_store.rs new file mode 100644 index 0000000..92381dc --- /dev/null +++ b/backend/src/oauth_store.rs @@ -0,0 +1,221 @@ +//! PostgreSQL-backed UserStore implementation for oauth-kit. +//! +//! This module provides a UserStore implementation that persists OAuth user data +//! to PostgreSQL, linking OAuth provider accounts to local user accounts. + +use async_trait::async_trait; +use diesel::prelude::*; +use diesel_async::scoped_futures::ScopedFutureExt; +use diesel_async::{AsyncConnection, RunQueryDsl}; +use oauth_kit::{User, UserStore}; +use thiserror::Error; +use uuid::Uuid; + +use crate::config::DbPool; +use crate::schema::{accounts, oauth_account}; + +/// Convert a `serde_json::Value::Null` to `None`, otherwise wrap in `Some`. +fn nullable_json(value: serde_json::Value) -> Option { + if value.is_null() { None } else { Some(value) } +} + +/// Error type for PostgreSQL user store operations. +#[derive(Debug, Error)] +pub enum PostgresStoreError { + #[error("Database error: {0}")] + Database(#[from] diesel::result::Error), + + #[error("Pool error: {0}")] + Pool(String), +} + +/// PostgreSQL-backed user store for OAuth authentication. +/// +/// This store links OAuth provider accounts to local user accounts in the database. +/// When a user authenticates via OAuth, we either find an existing account linked +/// to that provider identity or create a new account. +#[derive(Clone)] +pub struct PostgresUserStore { + pool: DbPool, +} + +impl PostgresUserStore { + /// Creates a new PostgresUserStore with the given database connection pool. + pub fn new(pool: DbPool) -> Self { + Self { pool } + } + + /// Get a database connection from the pool. + async fn conn( + &self, + ) -> Result< + diesel_async::pooled_connection::bb8::PooledConnection<'_, diesel_async::AsyncPgConnection>, + PostgresStoreError, + > { + self.pool + .get() + .await + .map_err(|e| PostgresStoreError::Pool(e.to_string())) + } +} + +/// Insertable struct for creating new accounts. +#[derive(Insertable)] +#[diesel(table_name = accounts)] +struct NewAccount { + id: Uuid, + email: Option, + email_verified: bool, + name: Option, + avatar_url: Option, +} + +/// Insertable struct for creating OAuth account links. +#[derive(Insertable)] +#[diesel(table_name = oauth_account)] +struct NewOAuthAccount { + id: Uuid, + account_id: Uuid, + provider: String, + provider_account_id: String, + provider_email: Option, + raw_profile: Option, +} + +/// Query struct for finding OAuth accounts. +#[derive(Queryable, Selectable)] +#[diesel(table_name = oauth_account)] +struct OAuthAccountLookup { + account_id: Uuid, +} + +#[async_trait] +impl UserStore for PostgresUserStore { + type UserId = Uuid; + type Error = PostgresStoreError; + + /// Find or create a user from an OAuth profile. + /// + /// This method: + /// 1. Looks up an existing oauth_account by (provider, provider_account_id) + /// 2. If found, returns the linked account_id + /// 3. If not found, creates a new account and oauth_account link in a transaction + async fn find_or_create(&self, user: &User, provider: &str) -> Result { + let mut conn = self.conn().await?; + + // Try to find existing OAuth account link + let existing: Option = oauth_account::table + .filter(oauth_account::provider.eq(provider)) + .filter(oauth_account::provider_account_id.eq(&user.id)) + .select(OAuthAccountLookup::as_select()) + .first(&mut conn) + .await + .optional()?; + + if let Some(oauth_acc) = existing { + // Update the account with latest profile data + diesel::update(accounts::table.filter(accounts::id.eq(oauth_acc.account_id))) + .set(( + accounts::email.eq(&user.email), + accounts::email_verified.eq(user.email_verified), + accounts::name.eq(&user.name), + accounts::avatar_url.eq(&user.image), + accounts::updated_at.eq(diesel::dsl::now), + )) + .execute(&mut conn) + .await?; + + return Ok(oauth_acc.account_id); + } + + // Create new account and OAuth link in a transaction + let user_email = user.email.clone(); + let user_email_verified = user.email_verified; + let user_name = user.name.clone(); + let user_image = user.image.clone(); + let user_id = user.id.clone(); + let user_raw = user.raw.clone(); + let provider_owned = provider.to_string(); + + let account_id = conn + .transaction::<_, PostgresStoreError, _>(|conn| { + async move { + let account_id = Uuid::now_v7(); + let new_account = NewAccount { + id: account_id, + email: user_email.clone(), + email_verified: user_email_verified, + name: user_name, + avatar_url: user_image, + }; + + diesel::insert_into(accounts::table) + .values(&new_account) + .execute(conn) + .await?; + + let oauth_account_id = Uuid::now_v7(); + let new_oauth_account = NewOAuthAccount { + id: oauth_account_id, + account_id, + provider: provider_owned, + provider_account_id: user_id, + provider_email: user_email, + raw_profile: nullable_json(user_raw), + }; + + diesel::insert_into(oauth_account::table) + .values(&new_oauth_account) + .execute(conn) + .await?; + + Ok(account_id) + } + .scope_boxed() + }) + .await?; + + tracing::info!( + account_id = %account_id, + provider = %provider, + provider_account_id = %user.id, + "Created new account from OAuth authentication" + ); + + Ok(account_id) + } + + /// Link an additional OAuth provider to an existing user. + async fn link_account( + &self, + user_id: &Uuid, + user: &User, + provider: &str, + ) -> Result<(), Self::Error> { + let mut conn = self.conn().await?; + + let oauth_account_id = Uuid::now_v7(); + let new_oauth_account = NewOAuthAccount { + id: oauth_account_id, + account_id: *user_id, + provider: provider.to_string(), + provider_account_id: user.id.clone(), + provider_email: user.email.clone(), + raw_profile: nullable_json(user.raw.clone()), + }; + + diesel::insert_into(oauth_account::table) + .values(&new_oauth_account) + .on_conflict_do_nothing() + .execute(&mut conn) + .await?; + + tracing::info!( + account_id = %user_id, + provider = %provider, + "Linked OAuth provider to existing account" + ); + + Ok(()) + } +} diff --git a/backend/src/runner/cloudconfig.rs b/backend/src/runner/cloudconfig.rs index 3bd56e7..494c8e1 100644 --- a/backend/src/runner/cloudconfig.rs +++ b/backend/src/runner/cloudconfig.rs @@ -1,5 +1,5 @@ use crate::runner::model::Platform; -use devenv_runner::protocol::{Platform as RunnerPlatform, VM}; +use devenv_runner::protocol::VM; use serde::Deserialize; /// A collection of VM configurations parsed from a devenv.yaml file. @@ -78,14 +78,10 @@ impl FinalCloud { }; // Validate platform name and convert to enum - let platform = match name.as_str() { - "x86_64-linux" => Platform::X86_64Linux, - "aarch64-darwin" => Platform::AArch64Darwin, - _ => return Err(format!( - "Platform '{}' is not supported. Only 'x86_64-linux' and 'aarch64-darwin' are allowed", - name - )), - }; + let platform: Platform = name.parse().map_err(|_| format!( + "Platform '{}' is not supported. Only 'x86_64-linux' and 'aarch64-darwin' are allowed", + name + ))?; // Get platform memory, using platform override or cloud default let memory_mb = if let Some(mem_str) = memory_opt { @@ -97,14 +93,10 @@ impl FinalCloud { // Get platform CPUs, using platform override or cloud default let cpus = cpus_opt.unwrap_or(cloud_cpus); - // Convert directly to VM struct Ok(VM { cpu_count: cpus as usize, memory_size_mb: memory_mb as u64, - platform: match platform { - Platform::X86_64Linux => RunnerPlatform::X86_64Linux, - Platform::AArch64Darwin => RunnerPlatform::AArch64Darwin, - }, + platform: platform.into(), }) }) .collect::, String>>()?; diff --git a/backend/src/runner/model.rs b/backend/src/runner/model.rs index 11bc227..dcdbb46 100644 --- a/backend/src/runner/model.rs +++ b/backend/src/runner/model.rs @@ -20,37 +20,20 @@ pub struct Runner { } impl Runner { - pub async fn new( - pool: &Pool, - platform: Platform, - ) -> Result { - let conn = &mut pool.get().await.unwrap(); + pub async fn new(pool: &Pool, platform: Platform) -> Result { + let mut conn = pool.get().await?; let runner = diesel::insert_into(runners::table) .values(( runners::id.eq(Uuid::now_v7()), runners::last_seen_at.eq(chrono::Utc::now()), runners::platform.eq(platform), )) - .get_result(conn) + .get_result(&mut conn) .await?; Ok(runner) } - pub async fn disconnected( - runner_id: Uuid, - pool: &Pool, - ) -> Result<(), diesel::result::Error> { - let conn = &mut pool.get().await.unwrap(); - diesel::update(runners::table) - .filter(runners::id.eq(runner_id)) - .set(runners::last_seen_at.eq(chrono::Utc::now())) - .execute(conn) - .await?; - - Ok(()) - } - pub async fn get_platform( conn: &mut AsyncPgConnection, runner_id: &Uuid, diff --git a/backend/src/runner/serve.rs b/backend/src/runner/serve.rs index af1b4d3..5116c94 100644 --- a/backend/src/runner/serve.rs +++ b/backend/src/runner/serve.rs @@ -42,14 +42,10 @@ impl RunnerState { // Try to send a message to a runner pub async fn try_send_to(&self, runner_id: &uuid::Uuid, msg: ServerMessage) -> bool { - let mut success = false; - let mut runners = self.runners.write().await; - - if let Some(tx) = runners.get_mut(runner_id) { - success = tx.try_send(msg).is_ok(); - } - - success + let runners = self.runners.read().await; + runners + .get(runner_id) + .map_or(false, |tx| tx.try_send(msg).is_ok()) } /// Create a ServerMessage::NewJobAvailable from a Job @@ -164,14 +160,13 @@ async fn handler( .unwrap_or(crate::job::model::Platform::X86_64Linux); // Create a new runner with the platform information - let runner_result = Runner::new(&app_state.pool, platform).await; - - if let Err(e) = runner_result { - tracing::error!("Failed to create runner: {}", e); - return axum::http::StatusCode::INTERNAL_SERVER_ERROR.into_response(); - } - - let runner = runner_result.unwrap(); + let runner = match Runner::new(&app_state.pool, platform).await { + Ok(runner) => runner, + Err(e) => { + tracing::error!("Failed to create runner: {}", e); + return axum::http::StatusCode::INTERNAL_SERVER_ERROR.into_response(); + } + }; let runner_id = runner.id; tracing::debug!( "Created runner {} with platform {}", @@ -207,7 +202,11 @@ async fn spawn_runner( Some(Ok(Message::Item(client_msg))) => { match client_msg { ClientMessage::ClaimJob { id, vm } => { - let conn = &mut app_state.pool.get().await.unwrap(); + let Ok(mut conn) = app_state.pool.get().await else { + tracing::error!("Failed to get database connection for job claim"); + continue; + }; + let conn = &mut conn; tracing::info!("Runner {} claiming job {}", runner_id, id); let rows = Job::claim_job_for_runner(conn, id, runner_id) .await @@ -235,7 +234,11 @@ async fn spawn_runner( } ClientMessage::UpdateJobStatus { id, status } => { // TODO: authorize job_id against runner - let conn = &mut app_state.pool.get().await.unwrap(); + let Ok(mut conn) = app_state.pool.get().await else { + tracing::error!("Failed to get database connection for status update"); + continue; + }; + let conn = &mut conn; Job::update_job_status(conn, id, &JobStatus(status.clone())) .await .ok(); @@ -312,15 +315,18 @@ async fn check_and_send_job( runner_id: &uuid::Uuid, ) -> bool { // Get the runner's platform - let conn = &mut app_state.pool.get().await.unwrap(); - let runner_platform_result = Runner::get_platform(conn, runner_id).await; - - if let Err(e) = runner_platform_result { - tracing::error!("Failed to get runner platform: {}", e); + let Ok(mut conn) = app_state.pool.get().await else { + tracing::error!("Failed to get database connection for job check"); return false; - } - - let runner_platform_str = runner_platform_result.unwrap(); + }; + let conn = &mut conn; + let runner_platform_str = match Runner::get_platform(conn, runner_id).await { + Ok(platform) => platform, + Err(e) => { + tracing::error!("Failed to get runner platform: {}", e); + return false; + } + }; // Parse the platform string to our Platform type let runner_platform = runner_platform_str .parse() @@ -359,7 +365,11 @@ async fn job_timeout_checker(app_state: AppState, runner_state: RunnerState) { let timeout_seconds = app_state.config.job.timeout_seconds; // Find jobs that have exceeded their timeout - let conn = &mut app_state.pool.get().await.unwrap(); + let Ok(mut conn) = app_state.pool.get().await else { + tracing::error!("Failed to get database connection for timeout check"); + continue; + }; + let conn = &mut conn; let expired_jobs_result = Job::find_expired_jobs(conn, timeout_seconds).await; if let Ok(expired_jobs) = expired_jobs_result { @@ -379,9 +389,15 @@ async fn job_timeout_checker(app_state: AppState, runner_state: RunnerState) { // If we can't reach the runner, update the job status directly let mut job_clone = job.clone(); + let Ok(mut timeout_conn) = app_state.pool.get().await else { + tracing::error!( + "Failed to get database connection for job timeout update" + ); + continue; + }; if let Err(e) = job_clone .complete( - &mut app_state.pool.get().await.unwrap(), + &mut timeout_conn, devenv_runner::protocol::CompletionStatus::TimedOut, ) .await diff --git a/backend/src/schema.rs b/backend/src/schema.rs index bfaf483..31e0ce3 100644 --- a/backend/src/schema.rs +++ b/backend/src/schema.rs @@ -3,6 +3,32 @@ diesel::table! { accounts (id) { id -> Uuid, + email -> Nullable, + email_verified -> Bool, + name -> Nullable, + avatar_url -> Nullable, + created_at -> Timestamptz, + updated_at -> Timestamptz, + } +} + +diesel::table! { + account_role (account_id, role) { + account_id -> Uuid, + role -> Text, + granted_at -> Timestamptz, + } +} + +diesel::table! { + oauth_account (id) { + id -> Uuid, + account_id -> Uuid, + provider -> Text, + provider_account_id -> Text, + provider_email -> Nullable, + raw_profile -> Nullable, + created_at -> Timestamptz, } } @@ -86,14 +112,17 @@ diesel::table! { } } +diesel::joinable!(account_role -> accounts (account_id)); diesel::joinable!(github_commit -> github_repo (repo_id)); diesel::joinable!(github_installation -> github_owner (owner_id)); diesel::joinable!(github_owner -> github_instance (instance_id)); diesel::joinable!(github_repo -> github_owner (owner_id)); diesel::joinable!(jobs_github -> github_commit (commit_id)); diesel::joinable!(jobs_github -> jobs (job_id)); +diesel::joinable!(oauth_account -> accounts (account_id)); diesel::allow_tables_to_appear_in_same_query!( + account_role, accounts, github_commit, github_installation, @@ -102,5 +131,6 @@ diesel::allow_tables_to_appear_in_same_query!( github_repo, jobs, jobs_github, + oauth_account, runners, ); diff --git a/backend/src/serve.rs b/backend/src/serve.rs index 94ceb18..7d39592 100644 --- a/backend/src/serve.rs +++ b/backend/src/serve.rs @@ -1,8 +1,12 @@ use crate::config::{AppState, Config, FrontendConfig, SecretSpec}; use axum::Json; +use axum::Router; use axum::extract::State; use eyre::Context; use eyre::Result; +use oauth_kit::axum::AuthRouter; +use oauth_kit::provider::providers; +use tower_sessions_cookie_store::{CookieSessionConfig, CookieSessionManagerLayer, Key}; use utoipa_axum::router::OpenApiRouter; use utoipa_axum::routes; @@ -34,7 +38,6 @@ pub fn router() -> OpenApiRouter { .nest("/api/v1/account", crate::account::serve::router()) .nest("/api/v1/job", crate::job::serve::router()) .nest("/api/v1/runner", crate::runner::serve::router()) - .nest("/api/v1/zitadel/actions", crate::zitadel::serve::router()) .routes(routes!(metrics)) .routes(routes!(get_config)) .layer( @@ -50,12 +53,69 @@ async fn serve(app_state: AppState) -> Result<()> { // Start the job timeout checker crate::runner::serve::start_job_timeout_checker(app_state.clone()); + // Get OAuth credentials from environment + let github_client_id = app_state + .secrets + .github_oauth_client_id + .as_ref() + .ok_or_else(|| eyre::eyre!("GITHUB_OAUTH_CLIENT_ID not configured"))? + .clone(); + let github_client_secret = app_state + .secrets + .github_oauth_client_secret + .as_ref() + .ok_or_else(|| eyre::eyre!("GITHUB_OAUTH_CLIENT_SECRET not configured"))? + .clone(); + + // Configure session cookie store + let session_secret = app_state + .secrets + .session_secret + .as_ref() + .ok_or_else(|| eyre::eyre!("SESSION_SECRET not configured"))?; + let secret_bytes = hex::decode(session_secret) + .map_err(|e| eyre::eyre!("SESSION_SECRET must be valid hex: {}", e))?; + let key = Key::try_from(secret_bytes.as_slice()) + .map_err(|e| eyre::eyre!("SESSION_SECRET must be 64 bytes: {}", e))?; + + let is_production = app_state.config.base_url.scheme() == "https"; + let cookie_config = CookieSessionConfig::default() + .with_secure(is_production) + .with_http_only(true) + .with_name("devenv_session"); + let session_layer = CookieSessionManagerLayer::private(key).with_config(cookie_config); + + // Create GitHub OAuth provider + let github = providers::github(&github_client_id, &github_client_secret); + let base_url = app_state + .config + .base_url + .to_string() + .trim_end_matches('/') + .to_string(); + + // Build OAuth router + let auth_router = AuthRouter::new(app_state.oauth_store.clone(), &base_url) + .with_provider(github) + .with_signin_redirect("/") + .with_signout_redirect("/") + .build(); + let addr = format!("0.0.0.0:{}", app_state.config.port); tracing::info!("Listening on {}", addr); - let listener = tokio::net::TcpListener::bind(addr).await.unwrap(); - let (router, _) = router().split_for_parts(); - let router = router.with_state(app_state); - axum::serve(listener, router).await.wrap_err("serve") + let listener = tokio::net::TcpListener::bind(addr).await?; + + // Build the API router + let (api_router, _) = router().split_for_parts(); + let api_router = api_router.with_state(app_state); + + // Combine auth router with API router and apply session layer + let app = Router::new() + .merge(auth_router) + .merge(api_router) + .layer(session_layer); + + axum::serve(listener, app).await.wrap_err("serve") } pub fn main(config: Config) -> Result<()> { @@ -82,8 +142,7 @@ pub fn main(config: Config) -> Result<()> { // Create runtime and run everything in one block_on tokio::runtime::Builder::new_multi_thread() .enable_all() - .build() - .unwrap() + .build()? .block_on(async { let app_state = AppState::new(config, secrets).await?; serve(app_state).await diff --git a/backend/src/zitadel/actions.rs b/backend/src/zitadel/actions.rs deleted file mode 100644 index 8e6414f..0000000 --- a/backend/src/zitadel/actions.rs +++ /dev/null @@ -1,324 +0,0 @@ -use crate::config::AppState; -use async_trait::async_trait; -use axum::{Json, body::Bytes, extract::State, http::HeaderMap}; -use std::{error::Error as StdError, fmt}; -use zitadel::actions::{ActionHandler, ActionRequest, ActionResponse}; - -#[derive(Debug)] -pub struct ActionError(String); - -impl fmt::Display for ActionError { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - write!(f, "Action error: {}", self.0) - } -} - -impl StdError for ActionError {} - -impl From for ActionError { - fn from(s: String) -> Self { - ActionError(s) - } -} - -impl From<&str> for ActionError { - fn from(s: &str) -> Self { - ActionError(s.to_string()) - } -} - -pub struct ZitadelActionHandler { - pub state: AppState, -} - -#[async_trait] -impl ActionHandler for ZitadelActionHandler { - type Error = ActionError; - - async fn complement_token( - &self, - req: &ActionRequest, - ) -> std::result::Result { - tracing::info!("Handling complement_token action"); - tracing::info!("Full ActionRequest data: {:#?}", req); - tracing::debug!( - "Request user: {:?}, service_account: {:?}", - req.user, - req.service_account - ); - - // Check if user has beta_user role for beta access - let mut response = ActionResponse::default(); - - // For now, just add a default beta_access claim - // TODO: Figure out how to access user grants in actions-v3 API - let beta_access = false; // Default to false until we figure out grants access - - response = response.add_claim("beta_access", beta_access.to_string()); - - if let Some(user) = &req.user { - tracing::info!( - "Set beta_access claim: {} for user {:?}", - beta_access, - user.id - ); - } - - Ok(response) - } - - async fn pre_userinfo_creation( - &self, - req: &ActionRequest, - ) -> std::result::Result { - tracing::info!("Handling pre_userinfo_creation action for GitHub profile population"); - tracing::info!( - "Full ActionRequest data for pre_userinfo_creation: {:#?}", - req - ); - - let mut response = ActionResponse::default(); - - // Try to extract GitHub name and set profile fields - // This is a post-authentication hook where we can modify the user profile - // We'll set given_name and family_name based on the GitHub profile - - // For now, we'll set default values since we need to figure out how to access - // the IDP information in the actions-v3 API structure - tracing::info!("Setting default profile fields for GitHub user"); - - // We can't easily access the GitHub data here in pre_userinfo_creation - // This might need to be handled in a different hook or method - - Ok(response) - } -} - -#[utoipa::path( - post, - path = "/webhook", - responses( - (status = 200, description = "Action processed successfully"), - (status = 400, description = "Bad request") - ) -)] -pub async fn webhook_endpoint( - State(state): State, - headers: HeaderMap, - body: Bytes, -) -> Result { - tracing::info!("Received webhook request"); - tracing::info!("Headers: {:#?}", headers); - tracing::info!("Raw body: {}", String::from_utf8_lossy(&body)); - - // Get webhook signing key from secretspec - let webhook_secret = state - .secrets - .zitadel_webhook_secret - .as_ref() - .ok_or_else(|| zitadel::actions::WebhookError::InvalidSignature)?; - - // Use WebhookVerifier to verify the payload - use zitadel::actions::WebhookVerifier; - - let signature = headers - .get("zitadel-signature") - .and_then(|v| v.to_str().ok()) - .ok_or(zitadel::actions::WebhookError::InvalidSignature)?; - - let verifier = WebhookVerifier::new(webhook_secret); - verifier - .verify(&body, signature) - .map_err(|_| zitadel::actions::WebhookError::InvalidSignature)?; - - // Parse the JSON payload - let webhook_data: serde_json::Value = serde_json::from_slice(&body) - .map_err(|e| zitadel::actions::WebhookError::InvalidBody(e.to_string()))?; - - tracing::info!("Parsed webhook data: {:#?}", webhook_data); - - // Check both fullMethod and function fields to determine which handler to run - let full_method = webhook_data - .get("fullMethod") - .and_then(|m| m.as_str()) - .unwrap_or(""); - - let function = webhook_data - .get("function") - .and_then(|f| f.as_str()) - .unwrap_or(""); - - tracing::info!( - "Handling method: '{}', function: '{}'", - full_method, - function - ); - - // Handle function-based triggers first, then method-based triggers - if !function.is_empty() { - match function { - "function/preuserinfo" => { - let result = handle_preuserinfo(&webhook_data).await?; - Ok(axum::response::Response::builder() - .status(200) - .header("content-type", "application/json") - .body(axum::body::Body::from( - serde_json::to_string(&result).map_err(|e| { - zitadel::actions::WebhookError::InvalidBody(e.to_string()) - })?, - )) - .unwrap()) - } - _ => { - tracing::warn!("Unhandled function: {}", function); - Ok(axum::response::Response::builder() - .status(200) - .body(axum::body::Body::empty()) - .unwrap()) - } - } - } else { - match full_method { - "/zitadel.user.v2.UserService/RetrieveIdentityProviderIntent" => { - let result = handle_retrieve_identity_provider_intent(&webhook_data).await?; - Ok(axum::response::Response::builder() - .status(200) - .header("content-type", "application/json") - .body(axum::body::Body::from( - serde_json::to_string(&result.0).map_err(|e| { - zitadel::actions::WebhookError::InvalidBody(e.to_string()) - })?, - )) - .unwrap()) - } - _ => { - tracing::warn!("Unhandled method: {}", full_method); - Ok(axum::response::Response::builder() - .status(200) - .body(axum::body::Body::empty()) - .unwrap()) - } - } - } -} - -async fn handle_retrieve_identity_provider_intent( - webhook_data: &serde_json::Value, -) -> Result, zitadel::actions::WebhookError> { - tracing::info!("Handling RetrieveIdentityProviderIntent"); - - // Extract the response field if it exists - if let Some(mut response) = webhook_data.get("response").cloned() { - tracing::info!("Processing response field: {:#?}", response); - - // Extract name first to avoid borrowing conflicts - let name_from_github = response - .get("idpInformation") - .and_then(|idp| idp.get("rawInformation")) - .and_then(|raw| raw.get("name")) - .and_then(|n| n.as_str()) - .map(|s| s.to_string()); - - // Try to set given_name and family_name fields in the user profile - if let Some(name) = name_from_github { - if let Some(add_human_user) = response.get_mut("addHumanUser") { - if let Some(profile) = add_human_user.get_mut("profile") { - tracing::info!("Setting given_name: '{}', family_name: '-'", name); - - if let Some(profile_obj) = profile.as_object_mut() { - profile_obj - .insert("givenName".to_string(), serde_json::Value::String(name)); - profile_obj.insert( - "familyName".to_string(), - serde_json::Value::String("-".to_string()), - ); - } - } - } - } - - tracing::info!("Returning modified response: {:#?}", response); - return Ok(Json(response)); - } - - // If no response field, return empty JSON object - tracing::info!("No response field found, returning empty response"); - Ok(Json(serde_json::json!({}))) -} - -async fn handle_preuserinfo( - webhook_data: &serde_json::Value, -) -> Result { - tracing::info!("Handling preuserinfo function"); - tracing::info!("Full webhook data for preuserinfo: {:#?}", webhook_data); - - // Check if user has beta_user role in user_grants - let mut beta_access = false; - - if let Some(user_grants) = webhook_data.get("user_grants").and_then(|g| g.as_array()) { - tracing::info!("Found user_grants: {:#?}", user_grants); - - for grant in user_grants { - if let Some(roles) = grant.get("roles").and_then(|r| r.as_array()) { - tracing::info!("Grant roles: {:#?}", roles); - - for role in roles { - if let Some(role_str) = role.as_str() { - if role_str == "beta_user" { - beta_access = true; - tracing::info!("Found beta_user role, setting beta_access to true"); - break; - } - } - } - - if beta_access { - break; - } - } - } - } else { - tracing::info!("No user_grants found or not an array"); - } - - if let Some(user) = webhook_data.get("user") { - if let Some(user_id) = user.get("id").and_then(|id| id.as_str()) { - tracing::info!( - "Set beta_access claim: {} and metadata for user {}", - beta_access, - user_id - ); - } - } - - // Create ActionResponse with beta_access claim and metadata - let response = zitadel::actions::ActionResponse::default() - .add_claim("beta_access", beta_access.to_string()) - .add_metadata("beta_access_metadata", beta_access.to_string()) - .add_metadata("processed_by", "preuserinfo_handler".to_string()); - - // Serialize the ActionResponse to JSON - let serialized = serde_json::to_value(response) - .map_err(|e| zitadel::actions::WebhookError::InvalidBody(e.to_string()))?; - - tracing::info!("Returning ActionResponse: {:#?}", serialized); - - Ok(serialized) -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn test_action_error_creation() { - let error = ActionError::from("Test error"); - assert_eq!(format!("{}", error), "Action error: Test error"); - } - - #[test] - fn test_action_error_from_string() { - let error = ActionError::from("Another error".to_string()); - assert!(format!("{}", error).contains("Another error")); - } -} diff --git a/backend/src/zitadel/mod.rs b/backend/src/zitadel/mod.rs deleted file mode 100644 index 692eddb..0000000 --- a/backend/src/zitadel/mod.rs +++ /dev/null @@ -1,3 +0,0 @@ -pub mod actions; -pub mod serve; -pub mod types; diff --git a/backend/src/zitadel/serve.rs b/backend/src/zitadel/serve.rs deleted file mode 100644 index bcf6791..0000000 --- a/backend/src/zitadel/serve.rs +++ /dev/null @@ -1,8 +0,0 @@ -use crate::config::AppState; -use utoipa_axum::{router::OpenApiRouter, routes}; - -use super::actions; - -pub fn router() -> OpenApiRouter { - OpenApiRouter::new().routes(routes!(actions::webhook_endpoint)) -} diff --git a/backend/src/zitadel/types.rs b/backend/src/zitadel/types.rs deleted file mode 100644 index 86a3b45..0000000 --- a/backend/src/zitadel/types.rs +++ /dev/null @@ -1,182 +0,0 @@ -use serde::{Deserialize, Serialize}; - -#[derive(Deserialize, Serialize, Debug)] -pub struct ActionRequest { - #[serde(rename = "fullMethod")] - pub full_method: String, - #[serde(rename = "instanceID")] - pub instance_id: String, - #[serde(rename = "orgID")] - pub org_id: String, - #[serde(rename = "projectID")] - pub project_id: Option, - #[serde(rename = "userID")] - pub user_id: Option, - pub request: T, -} - -#[derive(Deserialize, Serialize, Debug)] -pub struct ActionRequestWithResponse { - #[serde(rename = "fullMethod")] - pub full_method: String, - #[serde(rename = "instanceID")] - pub instance_id: String, - #[serde(rename = "orgID")] - pub org_id: String, - #[serde(rename = "projectID")] - pub project_id: Option, - #[serde(rename = "userID")] - pub user_id: Option, - pub request: T, - pub response: R, -} - -// Post-authentication request for RetrieveIdentityProviderIntent method -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct PostAuthRequest { - pub idp_intent_id: String, - pub idp_intent_token: String, -} - -// Response for post-authentication hook (RetrieveIdentityProviderIntent) -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct PostAuthResponse { - pub idp_information: Option, - pub add_human_user: Option, -} - -// Full response from Zitadel webhook that includes the details and response data -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct RetrieveIdpIntentResponse { - pub details: Option, - pub idp_information: Option, - pub add_human_user: Option, - pub user_id: Option, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct ResponseDetails { - pub sequence: String, - pub change_date: String, - pub resource_owner: String, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct IdpInformation { - pub idp_id: String, - pub user_id: String, - pub user_name: String, - pub raw_information: Option, - pub oauth_access_token: Option, - pub idp_access_token: Option, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct AddHumanUserInfo { - pub username: Option, - pub profile: Option, - pub email: Option, - pub metadata: Option>, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct Organization { - pub org_id: String, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct Profile { - pub given_name: Option, - pub family_name: Option, - pub nick_name: Option, - pub display_name: Option, - pub preferred_language: Option, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct EmailInfo { - pub email: String, - pub is_verified: bool, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct IdpLink { - pub idp_id: String, - pub user_id: String, - pub user_name: String, -} - -// Token customization request for CreateSession method -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct TokenCustomizationRequest { - pub user_id: String, - pub username: String, - pub user_grants: Option, - pub session: Option, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct UserGrants { - pub count: u32, - pub grants: Vec, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct Grant { - pub project_id: String, - pub roles: Vec, -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -#[serde(rename_all = "camelCase")] -pub struct SessionInfo { - pub session_id: String, - pub creation_date: String, -} - -#[derive(Deserialize, Serialize, Debug)] -#[serde(rename_all = "snake_case")] -pub struct TokenCustomizationResponse { - pub append_claims: Option>, - pub append_log_claims: Option>, -} - -// Common types -#[derive(Deserialize, Serialize, Debug, Clone)] -pub struct UserMetadata { - pub key: String, - pub value: String, // base64 encoded value -} - -#[derive(Deserialize, Serialize, Debug, Clone)] -pub struct SetMetadataEntry { - pub key: String, - pub value: Vec, // raw bytes like in the Go example -} - -#[derive(Deserialize, Serialize, Debug)] -pub struct Claim { - pub key: String, - pub value: String, -} - -// GitHub API types -#[derive(Deserialize, Debug)] -pub struct GitHubEmail { - pub email: String, - pub verified: bool, - pub primary: bool, -} diff --git a/crate-config.nix b/crate-config.nix new file mode 100644 index 0000000..83b80c9 --- /dev/null +++ b/crate-config.nix @@ -0,0 +1,189 @@ +# Crate overrides for crate2nix build +{ + lib, + stdenv, + nix, + openssl, + dbus, + pkg-config, + llvmPackages, + boehmgc, + rustPlatform, + secretspecToml, +}: + +let + nixLibs = [ + nix.libs.nix-expr-c + nix.libs.nix-store-c + nix.libs.nix-util-c + nix.libs.nix-flake-c + nix.libs.nix-cmd-c + nix.libs.nix-fetchers-c + nix.libs.nix-main-c + # C++ libraries needed at link time (the C wrappers link against these) + nix.libs.nix-flake + nix.libs.nix-cmd + nix.libs.nix-fetchers + boehmgc + llvmPackages.clang-unwrapped + ]; + + nixLibsOverride = attrs: { + buildInputs = (attrs.buildInputs or [ ]) ++ nixLibs; + nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ pkg-config ]; + }; + + rustflagsOverride = attrs: { + extraRustcOpts = (attrs.extraRustcOpts or [ ]) ++ [ + "--cfg" + "tokio_unstable" + "--cfg" + "tracing_unstable" + ]; + }; +in +{ + # Native C library overrides + + openssl-sys = attrs: { + buildInputs = (attrs.buildInputs or [ ]) ++ [ openssl ]; + nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ pkg-config ]; + }; + + libdbus-sys = attrs: { + buildInputs = (attrs.buildInputs or [ ]) ++ lib.optional stdenv.isLinux dbus; + nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ pkg-config ]; + }; + + # nix-bindings crates need nix C libs and bindgen + + nix-bindings-bindgen-raw = attrs: { + buildInputs = (attrs.buildInputs or [ ]) ++ nixLibs; + nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ + pkg-config + rustPlatform.bindgenHook + ]; + # nix C headers use C23 [[deprecated(...)]] syntax which requires -std=c2x. + # bindgenHook appends $NIX_CFLAGS_COMPILE to BINDGEN_EXTRA_CLANG_ARGS. + NIX_CFLAGS_COMPILE = "-std=c2x"; + }; + + nix-bindings-util = nixLibsOverride; + nix-bindings-store = nixLibsOverride; + nix-bindings-expr = nixLibsOverride; + nix-bindings-flake = nixLibsOverride; + nix-bindings-fetchers = nixLibsOverride; + nix-cmd = nixLibsOverride; + + devenv-nix-backend = attrs: { + buildInputs = (attrs.buildInputs or [ ]) ++ nixLibs; + nativeBuildInputs = (attrs.nativeBuildInputs or [ ]) ++ [ + pkg-config + rustPlatform.bindgenHook + ]; + extraRustcOpts = (attrs.extraRustcOpts or [ ]) ++ [ + "--cfg" + "tokio_unstable" + "--cfg" + "tracing_unstable" + ]; + }; + + # Workspace crates need tokio_unstable and tracing_unstable cfg flags + + # devenv-runner binary links nix C++ libs transitively via nix-bindings crates + devenv-runner = attrs: { + buildInputs = (attrs.buildInputs or [ ]) ++ [ + nix.libs.nix-flake + nix.libs.nix-cmd + nix.libs.nix-fetchers + ]; + extraRustcOpts = (attrs.extraRustcOpts or [ ]) ++ [ + "--cfg" + "tokio_unstable" + "--cfg" + "tracing_unstable" + ]; + }; + + # devenv-backend uses secretspec_derive::declare_secrets!("../secretspec.toml") + # which resolves relative to the crate source (/build/source/), so we need + # secretspec.toml at /build/secretspec.toml + devenv-backend = attrs: { + postUnpack = (attrs.postUnpack or "") + '' + cp ${secretspecToml} secretspec.toml + ''; + extraRustcOpts = (attrs.extraRustcOpts or [ ]) ++ [ + "--cfg" + "tokio_unstable" + "--cfg" + "tracing_unstable" + ]; + }; + devenv-logger = rustflagsOverride; + devenv-init = rustflagsOverride; + oauth-kit = rustflagsOverride; + cloud-hypervisor-client = rustflagsOverride; + + # Transitive devenv crates that use tracing with valuable + + devenv = rustflagsOverride; + devenv-core = rustflagsOverride; + devenv-eval-cache = rustflagsOverride; + devenv-tasks = rustflagsOverride; + devenv-tui = rustflagsOverride; + devenv-activity = rustflagsOverride; + + # rmcp uses env!("CARGO_CRATE_NAME") at compile time + rmcp = attrs: { + CARGO_CRATE_NAME = "rmcp"; + }; + + # native-tls build.rs emits cargo:rustc-check-cfg which buildRustCrate + # converts into an invalid bash variable name (contains colon) + native-tls = attrs: { + postInstall = (attrs.postInstall or "") + '' + if [ -f "$lib/env" ]; then + grep -v ':RUSTC_CHECK_CFG' "$lib/env" > "$lib/env.tmp" || true + mv "$lib/env.tmp" "$lib/env" + fi + ''; + }; + + # aws-lc-sys: fix build sandbox paths and add versioned env vars + # aws-lc-rs build.rs requires DEP_AWS_LC_{version}_INCLUDE but some + # buildRustCrate versions only generate DEP_AWS_LC_INCLUDE + aws-lc-sys = attrs: { + postInstall = + let + version = lib.replaceStrings [ "." ] [ "_" ] (attrs.version or "0.36.0"); + in + (attrs.postInstall or "") + + '' + if [ -f "$lib/env" ]; then + sed -i "s|/build/.*/target/build/aws-lc-sys\.out|$lib/lib/aws-lc-sys.out|g" "$lib/env" + if ! grep -q "DEP_AWS_LC_${version}_" "$lib/env"; then + grep '^export DEP_AWS_LC_[A-Z]' "$lib/env" \ + | sed "s/DEP_AWS_LC_/DEP_AWS_LC_${version}_/" >> "$lib/env" + fi + fi + ''; + }; + + # tracing crates need tracing_unstable for valuable support + + tracing = attrs: { + extraRustcOpts = (attrs.extraRustcOpts or [ ]) ++ [ + "--cfg" + "tracing_unstable" + ]; + }; + + tracing-core = attrs: { + extraRustcOpts = (attrs.extraRustcOpts or [ ]) ++ [ + "--cfg" + "tracing_unstable" + ]; + }; +} diff --git a/crate-hashes.json b/crate-hashes.json new file mode 100644 index 0000000..4b5f77f --- /dev/null +++ b/crate-hashes.json @@ -0,0 +1,25 @@ +{ + "git+https://github.com/cachix/axum-typed-websockets#0.6.0": "01iig76f471ngn0ia4vayqsqgi1myk30sxmv1r6hpspg5vgv92xs", + "git+https://github.com/cachix/devenv?branch=main#2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-activity-macros@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-activity@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-cache-core@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-core@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-eval-cache@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-nix-backend@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-tasks@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#devenv-tui@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#nix-conf-parser@0.0.1": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/devenv?branch=main#tokio-shutdown@2.0.0": "0sv8309i1yqw6w7hb8nw47hrf76mvianzf4j904dixshgyg5pzm5", + "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#nix-bindings-bindgen-raw@0.1.0": "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd", + "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#nix-bindings-expr@0.1.0": "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd", + "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#nix-bindings-fetchers@0.1.0": "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd", + "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#nix-bindings-flake@0.1.0": "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd", + "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#nix-bindings-store@0.1.0": "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd", + "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#nix-bindings-util@0.1.0": "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd", + "git+https://github.com/cachix/nix-bindings-rust.git?branch=for-upstream#nix-cmd@0.1.0": "0lpgdgcrmpvvapqjf4sgq4cw9n17s0y32d64vcggmxxzs50k0axd", + "git+https://github.com/cachix/secretspec?tag=v0.6.1#0.6.1": "0mv8igfmb6ks0mxqffgg3qn7ai8rf5n3x6gxj9bnaafvck6b3sc0", + "git+https://github.com/cachix/ser_nix?branch=support-paths#0.1.2": "095hs3l95548wm2v8329j999v1l1ziw8cn7cx2ny94a32mzcynqk", + "git+https://github.com/sandydoo/iocraft?branch=feat-configure-output#0.7.16": "0fyn859gyz7fq0nil2j51kds9r12r952mb4skkkpa9nyq4zi671h", + "git+https://github.com/sandydoo/iocraft?branch=feat-configure-output#iocraft-macros@0.2.3": "0fyn859gyz7fq0nil2j51kds9r12r952mb4skkkpa9nyq4zi671h" +} diff --git a/deploy.sh b/deploy.sh new file mode 100755 index 0000000..dae7e98 --- /dev/null +++ b/deploy.sh @@ -0,0 +1,48 @@ +#!/usr/bin/env bash + +set -euo pipefail + +# Parse command line arguments +if [ $# -eq 0 ]; then + echo "Usage: $0 {frontend|backend|all}" + exit 1 +fi + +TARGET="$1" + +deploy_frontend() { + devenv -O env.BASE_URL:string "https://cloud.devenv.sh" \ + --verbose \ + container --registry docker://registry.fly.io/ --copy-args="--dest-creds x:$(flyctl auth token)" copy frontend + +} + +deploy_backend() { + devenv --verbose container --registry docker://registry.fly.io/ --copy-args="--dest-creds x:$(flyctl auth token)" copy backend +} + +case "$TARGET" in + frontend) + echo "Running frontend command..." + deploy_frontend + ;; + + backend) + echo "Running backend command..." + deploy_backend + ;; + + all) + echo "Running all commands..." + deploy_frontend + deploy_backend + ;; + + *) + echo "Error: Invalid target '$TARGET'" + echo "Usage: $0 {frontend|backend|all}" + exit 1 + ;; +esac + +echo "Completed: $TARGET" diff --git a/devenv.lock b/devenv.lock index bf6472c..81c2106 100644 --- a/devenv.lock +++ b/devenv.lock @@ -1,42 +1,203 @@ { "nodes": { + "cachix": { + "inputs": { + "devenv": [ + "crate2nix" + ], + "flake-compat": [ + "crate2nix" + ], + "git-hooks": "git-hooks", + "nixpkgs": "nixpkgs" + }, + "locked": { + "lastModified": 1767714506, + "narHash": "sha256-WaTs0t1CxhgxbIuvQ97OFhDTVUGd1HA+KzLZUZBhe0s=", + "owner": "cachix", + "repo": "cachix", + "rev": "894c649f0daaa38bbcfb21de64be47dfa7cd0ec9", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "latest", + "repo": "cachix", + "type": "github" + } + }, + "cachix_2": { + "inputs": { + "devenv": [ + "crate2nix", + "crate2nix_stable" + ], + "flake-compat": [ + "crate2nix", + "crate2nix_stable" + ], + "git-hooks": "git-hooks_2", + "nixpkgs": "nixpkgs_2" + }, + "locked": { + "lastModified": 1767714506, + "narHash": "sha256-WaTs0t1CxhgxbIuvQ97OFhDTVUGd1HA+KzLZUZBhe0s=", + "owner": "cachix", + "repo": "cachix", + "rev": "894c649f0daaa38bbcfb21de64be47dfa7cd0ec9", + "type": "github" + }, + "original": { + "owner": "cachix", + "ref": "latest", + "repo": "cachix", + "type": "github" + } + }, + "crate2nix": { + "inputs": { + "cachix": "cachix", + "crate2nix_stable": "crate2nix_stable", + "devshell": "devshell_2", + "flake-compat": "flake-compat_2", + "flake-parts": "flake-parts_2", + "nix-test-runner": "nix-test-runner_2", + "nixpkgs": "nixpkgs_4", + "pre-commit-hooks": "pre-commit-hooks_2" + }, + "locked": { + "lastModified": 1770646848, + "narHash": "sha256-0aZjR0id5glnZaKpu/nCwoLON4r5m6q6IDU06YvwT44=", + "owner": "nix-community", + "repo": "crate2nix", + "rev": "26b698e804dd32dc5bb1995028fef00cc87d603a", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "crate2nix", + "type": "github" + } + }, + "crate2nix_stable": { + "inputs": { + "cachix": "cachix_2", + "crate2nix_stable": [ + "crate2nix", + "crate2nix_stable" + ], + "devshell": "devshell", + "flake-compat": "flake-compat", + "flake-parts": "flake-parts", + "nix-test-runner": "nix-test-runner", + "nixpkgs": "nixpkgs_3", + "pre-commit-hooks": "pre-commit-hooks" + }, + "locked": { + "lastModified": 1769627083, + "narHash": "sha256-SUuruvw1/moNzCZosHaa60QMTL+L9huWdsCBN6XZIic=", + "owner": "nix-community", + "repo": "crate2nix", + "rev": "7c33e664668faecf7655fa53861d7a80c9e464a2", + "type": "github" + }, + "original": { + "owner": "nix-community", + "ref": "0.15.0", + "repo": "crate2nix", + "type": "github" + } + }, "devenv": { "locked": { "dir": "src/modules", - "lastModified": 1764086424, + "lastModified": 1771593911, + "narHash": "sha256-nMt9n5ihiH6Yz1Re0TxqodZnUuR8O8Y7ewPx4lixrT8=", "owner": "cachix", "repo": "devenv", - "rev": "65a7c40d185350f0e96783b3dd8d4afab3bb7034", + "rev": "6f33e087596c45caa0f502a9c2395c35028906d0", "type": "github" }, "original": { "dir": "src/modules", "owner": "cachix", + "ref": "devenv-caps", "repo": "devenv", "type": "github" } }, - "fenix": { + "devshell": { "inputs": { "nixpkgs": [ + "crate2nix", + "crate2nix_stable", "nixpkgs" - ], - "rust-analyzer-src": "rust-analyzer-src" + ] }, "locked": { - "lastModified": 1763880175, - "owner": "nix-community", - "repo": "fenix", - "rev": "a563f057979806c59da53070297502eb7af22f62", + "lastModified": 1768818222, + "narHash": "sha256-460jc0+CZfyaO8+w8JNtlClB2n4ui1RbHfPTLkpwhU8=", + "owner": "numtide", + "repo": "devshell", + "rev": "255a2b1725a20d060f566e4755dbf571bbbb5f76", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "fenix", + "owner": "numtide", + "repo": "devshell", + "type": "github" + } + }, + "devshell_2": { + "inputs": { + "nixpkgs": [ + "crate2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1768818222, + "narHash": "sha256-460jc0+CZfyaO8+w8JNtlClB2n4ui1RbHfPTLkpwhU8=", + "owner": "numtide", + "repo": "devshell", + "rev": "255a2b1725a20d060f566e4755dbf571bbbb5f76", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "devshell", "type": "github" } }, "flake-compat": { + "locked": { + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "revCount": 69, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_2": { + "locked": { + "lastModified": 1733328505, + "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "revCount": 69, + "type": "tarball", + "url": "https://api.flakehub.com/f/pinned/edolstra/flake-compat/1.1.0/01948eb7-9cba-704f-bbf3-3fa956735b52/source.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://flakehub.com/f/edolstra/flake-compat/1.tar.gz" + } + }, + "flake-compat_3": { "flake": false, "locked": { "lastModified": 1767039857, @@ -52,7 +213,7 @@ "type": "github" } }, - "flake-compat_2": { + "flake-compat_4": { "flake": false, "locked": { "lastModified": 1733328505, @@ -69,6 +230,49 @@ } }, "flake-parts": { + "inputs": { + "nixpkgs-lib": [ + "crate2nix", + "crate2nix_stable", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1768135262, + "narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_2": { + "inputs": { + "nixpkgs-lib": [ + "crate2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1768135262, + "narHash": "sha256-PVvu7OqHBGWN16zSi6tEmPwwHQ4rLPU9Plvs8/1TUBY=", + "owner": "hercules-ci", + "repo": "flake-parts", + "rev": "80daad04eddbbf5a4d883996a73f3f542fa437ac", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "flake-parts", + "type": "github" + } + }, + "flake-parts_3": { "inputs": { "nixpkgs-lib": [ "nix", @@ -91,18 +295,24 @@ }, "git-hooks": { "inputs": { - "flake-compat": "flake-compat", + "flake-compat": [ + "crate2nix", + "cachix", + "flake-compat" + ], "gitignore": "gitignore", "nixpkgs": [ + "crate2nix", + "cachix", "nixpkgs" ] }, "locked": { - "lastModified": 1767281941, - "narHash": "sha256-6MkqajPICgugsuZ92OMoQcgSHnD6sJHwk8AxvMcIgTE=", + "lastModified": 1765404074, + "narHash": "sha256-+ZDU2d+vzWkEJiqprvV5PR26DVFN2vgddwG5SnPZcUM=", "owner": "cachix", "repo": "git-hooks.nix", - "rev": "f0927703b7b1c8d97511c4116eb9b4ec6645a0fa", + "rev": "2d6f58930fbcd82f6f9fd59fb6d13e37684ca529", "type": "github" }, "original": { @@ -142,7 +352,151 @@ "type": "github" } }, + "git-hooks_2": { + "inputs": { + "flake-compat": [ + "crate2nix", + "crate2nix_stable", + "cachix", + "flake-compat" + ], + "gitignore": "gitignore_2", + "nixpkgs": [ + "crate2nix", + "crate2nix_stable", + "cachix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1765404074, + "narHash": "sha256-+ZDU2d+vzWkEJiqprvV5PR26DVFN2vgddwG5SnPZcUM=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "2d6f58930fbcd82f6f9fd59fb6d13e37684ca529", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, + "git-hooks_3": { + "inputs": { + "flake-compat": "flake-compat_3", + "gitignore": "gitignore_5", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1767281941, + "narHash": "sha256-6MkqajPICgugsuZ92OMoQcgSHnD6sJHwk8AxvMcIgTE=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "f0927703b7b1c8d97511c4116eb9b4ec6645a0fa", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, "gitignore": { + "inputs": { + "nixpkgs": [ + "crate2nix", + "cachix", + "git-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_2": { + "inputs": { + "nixpkgs": [ + "crate2nix", + "crate2nix_stable", + "cachix", + "git-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_3": { + "inputs": { + "nixpkgs": [ + "crate2nix", + "crate2nix_stable", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_4": { + "inputs": { + "nixpkgs": [ + "crate2nix", + "pre-commit-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, + "gitignore_5": { "inputs": { "nixpkgs": [ "git-hooks", @@ -179,19 +533,19 @@ }, "nix": { "inputs": { - "flake-compat": "flake-compat_2", - "flake-parts": "flake-parts", + "flake-compat": "flake-compat_4", + "flake-parts": "flake-parts_3", "git-hooks-nix": "git-hooks-nix", - "nixpkgs": "nixpkgs", + "nixpkgs": "nixpkgs_5", "nixpkgs-23-11": "nixpkgs-23-11", "nixpkgs-regression": "nixpkgs-regression" }, "locked": { - "lastModified": 1766922625, - "narHash": "sha256-O0wExzdYqSNqbPYCQhUWeoKlDa7q6wxhuWiHolxqdl8=", + "lastModified": 1769066183, + "narHash": "sha256-xW31KWpnMCqlBMdRTTu+NdFpTppvGy7l5YSrpaG+gL8=", "owner": "cachix", "repo": "nix", - "rev": "c62c4bdb6673871ae5cdc51c498df6292d5169aa", + "rev": "9e4eda85f03128e2a13108411691c7b3edd41ff9", "type": "github" }, "original": { @@ -201,6 +555,38 @@ "type": "github" } }, + "nix-test-runner": { + "flake": false, + "locked": { + "lastModified": 1588761593, + "narHash": "sha256-FKJykltAN/g3eIceJl4SfDnnyuH2jHImhMrXS2KvGIs=", + "owner": "stoeffel", + "repo": "nix-test-runner", + "rev": "c45d45b11ecef3eb9d834c3b6304c05c49b06ca2", + "type": "github" + }, + "original": { + "owner": "stoeffel", + "repo": "nix-test-runner", + "type": "github" + } + }, + "nix-test-runner_2": { + "flake": false, + "locked": { + "lastModified": 1588761593, + "narHash": "sha256-FKJykltAN/g3eIceJl4SfDnnyuH2jHImhMrXS2KvGIs=", + "owner": "stoeffel", + "repo": "nix-test-runner", + "rev": "c45d45b11ecef3eb9d834c3b6304c05c49b06ca2", + "type": "github" + }, + "original": { + "owner": "stoeffel", + "repo": "nix-test-runner", + "type": "github" + } + }, "nix2container": { "inputs": { "nixpkgs": [ @@ -222,16 +608,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1761597516, - "narHash": "sha256-wxX7u6D2rpkJLWkZ2E932SIvDJW8+ON/0Yy8+a5vsDU=", + "lastModified": 1765186076, + "narHash": "sha256-hM20uyap1a0M9d344I692r+ik4gTMyj60cQWO+hAYP8=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "daf6dc47aa4b44791372d6139ab7b25269184d55", + "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-25.05", + "ref": "nixos-unstable", "repo": "nixpkgs", "type": "github" } @@ -270,10 +656,75 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1761313199, + "lastModified": 1765186076, + "narHash": "sha256-hM20uyap1a0M9d344I692r+ik4gTMyj60cQWO+hAYP8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "addf7cf5f383a3101ecfba091b98d0a1263dc9b8", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { + "locked": { + "lastModified": 1769433173, + "narHash": "sha256-Gf1dFYgD344WZ3q0LPlRoWaNdNQq8kSBDLEWulRQSEs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "13b0f9e6ac78abbbb736c635d87845c4f4bee51b", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1769433173, + "narHash": "sha256-Gf1dFYgD344WZ3q0LPlRoWaNdNQq8kSBDLEWulRQSEs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "13b0f9e6ac78abbbb736c635d87845c4f4bee51b", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { + "locked": { + "lastModified": 1761597516, + "narHash": "sha256-wxX7u6D2rpkJLWkZ2E932SIvDJW8+ON/0Yy8+a5vsDU=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "daf6dc47aa4b44791372d6139ab7b25269184d55", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-25.05", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_6": { + "locked": { + "lastModified": 1767052823, + "narHash": "sha256-Fhuljcy7pJ8HacYYATRcm5rdKXx8P6D/0g19ppzDRNY=", "owner": "cachix", "repo": "devenv-nixpkgs", - "rev": "d1c30452ebecfc55185ae6d1c983c09da0c274ff", + "rev": "538a5124359f0b3d466e1160378c87887e3b51a4", "type": "github" }, "original": { @@ -283,30 +734,89 @@ "type": "github" } }, + "pre-commit-hooks": { + "inputs": { + "flake-compat": [ + "crate2nix", + "crate2nix_stable", + "flake-compat" + ], + "gitignore": "gitignore_3", + "nixpkgs": [ + "crate2nix", + "crate2nix_stable", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1769069492, + "narHash": "sha256-Efs3VUPelRduf3PpfPP2ovEB4CXT7vHf8W+xc49RL/U=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "a1ef738813b15cf8ec759bdff5761b027e3e1d23", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, + "pre-commit-hooks_2": { + "inputs": { + "flake-compat": [ + "crate2nix", + "flake-compat" + ], + "gitignore": "gitignore_4", + "nixpkgs": [ + "crate2nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1769069492, + "narHash": "sha256-Efs3VUPelRduf3PpfPP2ovEB4CXT7vHf8W+xc49RL/U=", + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "rev": "a1ef738813b15cf8ec759bdff5761b027e3e1d23", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "pre-commit-hooks.nix", + "type": "github" + } + }, "root": { "inputs": { + "crate2nix": "crate2nix", "devenv": "devenv", - "fenix": "fenix", - "git-hooks": "git-hooks", + "git-hooks": "git-hooks_3", "mk-shell-bin": "mk-shell-bin", "nix": "nix", "nix2container": "nix2container", - "nixpkgs": "nixpkgs_2" + "nixpkgs": "nixpkgs_6", + "rust-overlay": "rust-overlay" } }, - "rust-analyzer-src": { - "flake": false, + "rust-overlay": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, "locked": { - "lastModified": 1764018148, - "owner": "rust-lang", - "repo": "rust-analyzer", - "rev": "b5b4abac8278f568e3a7f4d115ae749403f6064a", + "lastModified": 1771211437, + "narHash": "sha256-lcNK438i4DGtyA+bPXXyVLHVmJjYpVKmpux9WASa3ro=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "c62195b3d6e1bb11e0c2fb2a494117d3b55d410f", "type": "github" }, "original": { - "owner": "rust-lang", - "ref": "nightly", - "repo": "rust-analyzer", + "owner": "oxalica", + "repo": "rust-overlay", "type": "github" } } diff --git a/devenv.nix b/devenv.nix index ebd1d00..5866feb 100644 --- a/devenv.nix +++ b/devenv.nix @@ -7,10 +7,11 @@ }: { + overlays = [ inputs.rust-overlay.overlays.default ]; + dotenv.enable = true; env = { - DATABASE_URL = "postgres:///devenv?host=${config.env.PGHOST}"; RUST_LOG = "info"; }; @@ -40,6 +41,7 @@ inputs.nix.packages.${pkgs.system}.nix-flake-c inputs.nix.packages.${pkgs.system}.nix-cmd-c inputs.nix.packages.${pkgs.system}.nix-fetchers-c + inputs.nix.packages.${pkgs.system}.nix-main-c pkgs.boehmgc pkgs.rustPlatform.bindgenHook pkgs.openssl @@ -55,6 +57,7 @@ # secretspec pkgs.secretspec pkgs.dbus + inputs.crate2nix.packages.${pkgs.system}.default ]; languages = { @@ -73,47 +76,39 @@ elm.enable = true; }; + tasks."db:migrate" = { + exec = "cargo run -p devenv-backend migrate"; + after = [ "devenv:processes:postgres" ]; + before = [ "devenv:processes:backend" ]; + }; + processes = { - backend-migrate = { - exec = '' - cargo run -p devenv-backend migrate && echo "Migrations completed" - ''; - process-compose = { - depends_on.postgres.condition = "process_healthy"; - depends_on.zitadel.condition = "process_healthy"; - }; - }; backend = { exec = '' - cargo watch -w backend -x "run -p devenv-backend serve" + export PORT=${toString config.processes.backend.ports.http.value} + cargo watch -w backend -w oauth-kit -x "run -p devenv-backend serve" ''; - process-compose = { - depends_on.postgres.condition = "process_healthy"; - depends_on.zitadel.condition = "process_healthy"; - depends_on.backend-migrate.condition = "process_completed_successfully"; - readiness_probe = { - http_get = { - host = "127.0.0.1"; - port = 8080; - path = "/metrics"; - }; - }; + ports.http.allocate = 8080; + after = [ "devenv:processes:postgres" ]; + ready.http.get = { + host = "127.0.0.1"; + port = config.processes.backend.ports.http.value; + path = "/metrics"; }; }; frontend = { exec = "cd frontend && elm-land server"; - process-compose = { - readiness_probe = { - http_get = { - host = "127.0.0.1"; - port = 1234; - path = "/"; - }; - }; + after = [ "devenv:processes:backend" ]; + env.PORT = toString config.processes.frontend.ports.http.value; + ports.http.allocate = 1234; + ready.http.get = { + host = "127.0.0.1"; + port = config.processes.frontend.ports.http.value; + path = "/"; }; }; runner.exec = '' - cargo watch -w runner -x "build -p devenv-runner --bin devenv-runner" -s "${lib.optionalString pkgs.stdenv.isDarwin "codesign --force --entitlements runner/resources/runner.entitlements --sign - target/debug/devenv-runner && "}target/debug/devenv-runner --host ws://127.0.0.1:8080" + cargo watch -w runner -x "build -p devenv-runner --bin devenv-runner" -s "${lib.optionalString pkgs.stdenv.isDarwin "codesign --force --entitlements runner/resources/runner.entitlements --sign - target/debug/devenv-runner && "}target/debug/devenv-runner --host ws://127.0.0.1:${toString config.processes.backend.ports.http.value}" ''; generate-elm.exec = '' cargo watch -w backend -x "run -p devenv-backend generate-elm" @@ -123,6 +118,75 @@ ''; }; + files."frontend/elm-land.json".json = { + app = { + elm = { + development = { + debugger = true; + }; + production = { + debugger = false; + }; + }; + env = [ + "BASE_URL" + ]; + html = { + attributes = { + html = { + lang = "en"; + }; + head = { }; + }; + title = "Devenv Cloud"; + meta = [ + { charset = "UTF-8"; } + { + http-equiv = "X-UA-Compatible"; + content = "IE=edge"; + } + { + name = "viewport"; + content = "width=device-width, initial-scale=1.0"; + } + ]; + link = [ + { + rel = "icon"; + type = "image/x-icon"; + href = "/favicon.svg"; + } + { + rel = "stylesheet"; + href = "https://fonts.googleapis.com/css2?family=Mulish:wght@100;200;300;400;500;600;700;800;900;1000&display=swap"; + } + ]; + script = [ + { + type = "text/javascript"; + innerHTML = '' + // Immediately set theme on page load to prevent flash + (function() { + var savedTheme = localStorage.getItem('theme'); + var theme = savedTheme ? JSON.parse(savedTheme) : + (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'); + + if (theme === 'dark') { + document.documentElement.classList.add('dark'); + } + })();''; + } + ]; + }; + router = { + useHashRouting = false; + }; + proxy = { + "/api" = "http://localhost:${toString config.processes.backend.ports.http.value}"; + }; + }; + }; + services = { postgres = { enable = true; @@ -136,13 +200,13 @@ enable = true; target = "localhost:1234"; }; - zitadel.enable = true; }; git-hooks = { excludes = [ "frontend/generated-api" "frontend/elm-srcs.nix" + "Cargo.nix" ]; hooks = { rustfmt.enable = true; @@ -166,6 +230,11 @@ ''; tasks = { + "devenv:crate2nix" = { + exec = "crate2nix generate"; + execIfModified = [ "Cargo.lock" ]; + before = [ "devenv:enterShell" ]; + }; "frontend:elm2nix" = { exec = '' cd frontend && elm2nix convert > elm-srcs.nix && elm2nix snapshot @@ -178,11 +247,14 @@ outputs = let nixPkg = inputs.nix.packages.${pkgs.system}.nix; + rustToolchain = pkgs.rust-bin.stable.latest.default; backendPackages = pkgs.callPackage ./package.nix { nix = nixPkg; + rustc = rustToolchain; + cargo = rustToolchain; }; frontendPackage = pkgs.callPackage ./frontend/package.nix { - inherit (config.env) BASE_URL OAUTH_AUDIENCE OAUTH_CLIENT_ID; + inherit (config.env) BASE_URL; }; in { @@ -234,9 +306,6 @@ [github] app_name="devenv-cloud" app_id = 1897971 - - [zitadel] - endpoint = "https://auth.devenv.sh" ''; destination = "/etc/cloud.devenv.toml"; }) @@ -292,21 +361,4 @@ ]; }; - containers."zitadel" = config.lib.mkLightainer { - name = "devenv-cloud-zitadel"; - tag = "latest"; - entrypoint = lib.splitString " " ( - lib.replaceStrings [ "\\\n" " " ] [ " " " " ] ( - lib.replaceStrings [ "\n" ] [ " " ] config.processes.zitadel.exec - ) - ); - layers = [ - { - deps = [ - config.services.zitadel.package - pkgs.bash - ]; - } - ]; - }; } diff --git a/devenv.yaml b/devenv.yaml index d96d36d..88ab4e6 100644 --- a/devenv.yaml +++ b/devenv.yaml @@ -1,16 +1,15 @@ inputs: - fenix: - url: github:nix-community/fenix - inputs: - nixpkgs: - follows: nixpkgs - mk-shell-bin: - url: github:rrbutani/nix-mk-shell-bin + devenv: + url: github:cachix/devenv/devenv-caps?dir=src/modules + crate2nix: + url: github:nix-community/crate2nix git-hooks: url: github:cachix/git-hooks.nix inputs: nixpkgs: follows: nixpkgs + mk-shell-bin: + url: github:rrbutani/nix-mk-shell-bin nix: url: github:cachix/nix/devenv-2.32 nix2container: @@ -20,9 +19,14 @@ inputs: follows: nixpkgs nixpkgs: url: github:cachix/devenv-nixpkgs/rolling + rust-overlay: + url: github:oxalica/rust-overlay + inputs: + nixpkgs: + follows: nixpkgs allowUnfree: true imports: - ./runner/ - - ./nix/zitadel/service.nix - ./nix/lightainer/ -secretspec: {} +secretspec: + enable: true diff --git a/docs/auth.md b/docs/auth.md index ea6907a..6070367 100644 --- a/docs/auth.md +++ b/docs/auth.md @@ -1,50 +1,54 @@ # OAuth Authorization Flow -Our frontend application uses the OAuth PKCE flow to authenticate users. The flow is as follows: +Authentication uses oauth-kit with GitHub as the OAuth provider. Session cookies manage user state. ``` -Frontend Zitadel GitHub (IDP) - | | | - | | | - | 1. Initiate OAuth Flow | | - |------------------------->| | - | | | - | 2. Redirect to Zitadel | | - |<-------------------------| | - | | | - | 3. User interacts | | - | with Zitadel | | - |------------------------->| | - | | | - | | 4. Initiate OAuth | - | | with GitHub | - | |-------------------------->| - | | | - | | 5. Redirect to GitHub | - | |<--------------------------| - | | | - | | 6. User authenticates | - | | with GitHub | - | |-------------------------->| - | | | - | | 7. Authorization code | - | |<--------------------------| - | | | - | | 8. Exchange code | - | | for token | - | |-------------------------->| - | | | - | | 9. Access token | - | |<--------------------------| - | | | - | 10. Redirect to | | - | Frontend callback | | - |<-------------------------| | - | | | - | 11. Exchange code | | - | for token | | - |------------------------->| | - | | | - | 12. Access token | | - |<-------------------------| | +Frontend Backend (oauth-kit) GitHub + | | | + | 1. Click "Sign In" | | + |----------------------------->| | + | GET /auth/signin/github | | + | | | + | 2. Redirect to GitHub | | + |<-----------------------------| | + | | | + | 3. User authenticates | | + | -------------------------------------------------------->| + | | | + | 4. GitHub redirects back | | + | with authorization code | | + |<----------------------------------------------------------| + | GET /auth/callback/github?code=... | + |----------------------------->| | + | | | + | | 5. Exchange code for | + | | access token | + | |-------------------------->| + | | | + | | 6. Fetch user profile | + | |-------------------------->| + | | | + | | 7. Find or create user | + | | in database | + | | | + | 8. Set session cookie | | + | and redirect to / | | + |<-----------------------------| | + | | | + | 9. GET /api/v1/account/me | | + |----------------------------->| | + | (with session cookie) | | + | | | + | 10. Return user info | | + |<-----------------------------| | ``` + +## Database Schema + +- `accounts` - User accounts with email, name, avatar_url +- `oauth_account` - Links OAuth provider identities to accounts +- `account_role` - Role-based access control (e.g., `beta_user`) + +## Sign Out + +`GET /auth/signout` clears the session cookie and redirects to `/`. diff --git a/frontend/elm-land.json b/frontend/elm-land.json deleted file mode 100644 index a75563c..0000000 --- a/frontend/elm-land.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "app": { - "elm": { - "development": { "debugger": true }, - "production": { "debugger": false } - }, - "env": ["BASE_URL", "OAUTH_CLIENT_ID", "OAUTH_AUDIENCE"], - "html": { - "attributes": { - "html": { "lang": "en" }, - "head": {} - }, - "title": "Devenv Cloud", - "meta": [ - { "charset": "UTF-8" }, - { "http-equiv": "X-UA-Compatible", "content": "IE=edge" }, - { - "name": "viewport", - "content": "width=device-width, initial-scale=1.0" - } - ], - "link": [ - { "rel": "icon", "type": "image/x-icon", "href": "/favicon.svg" }, - { - "rel": "stylesheet", - "href": "https://fonts.googleapis.com/css2?family=Mulish:wght@100;200;300;400;500;600;700;800;900;1000&display=swap" - } - ], - "script": [ - { - "type": "text/javascript", - "innerHTML": "// Immediately set theme on page load to prevent flash\n(function() {\n var savedTheme = localStorage.getItem('theme');\n var theme = savedTheme ? JSON.parse(savedTheme) : \n (window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light');\n \n if (theme === 'dark') {\n document.documentElement.classList.add('dark');\n }\n})();" - } - ] - }, - "router": { - "useHashRouting": false - }, - "proxy": { - "/api": "http://localhost:8080" - } - } -} diff --git a/frontend/elm-srcs.nix b/frontend/elm-srcs.nix index bf38480..6913f6f 100644 --- a/frontend/elm-srcs.nix +++ b/frontend/elm-srcs.nix @@ -1,162 +1,162 @@ { - "NoRedInk/elm-json-decode-pipeline" = { - sha256 = "1k241pjz1wj5rqv95f1j86msa0s0p6w4v8n0jn26aw6cbadw363b"; - version = "1.0.1"; - }; - - "cachix/elm-uuid" = { - sha256 = "08vdi3pn9zq469lln8zb8zdfzygygmjb2aym4f7hxpnaw41k0pvb"; - version = "2.0.0"; - }; - - "chelovek0v/bbase64" = { - sha256 = "01fj6lf2xpc3byw89zivh11i6kl5bimlsdjd6m3gsi1v88nfj17d"; - version = "1.0.1"; - }; - - "circuithub/elm-dropdown" = { - sha256 = "1x9p5vl6qmmyiqsnij2rq88kbs9cwqqiy2xnihnd76035qc30zjy"; - version = "1.0.0"; - }; - - "elm-community/html-extra" = { - sha256 = "0nysjwhlvcc3rsc6mq9g9j81xq4jdyx92m5y02mwsnlyblfd773k"; - version = "3.4.0"; - }; - - "elm-explorations/markdown" = { - sha256 = "0k3110ixa4wwf3vkkdplagwah9ypr965qxr1y147rnsc1xsxmr6y"; - version = "1.0.0"; - }; - - "elm/browser" = { - sha256 = "0nagb9ajacxbbg985r4k9h0jadqpp0gp84nm94kcgbr5sf8i9x13"; - version = "1.0.2"; - }; - - "elm/bytes" = { - sha256 = "02ywbf52akvxclpxwj9n04jydajcbsbcbsnjs53yjc5lwck3abwj"; - version = "1.0.8"; - }; - - "elm/core" = { - sha256 = "19w0iisdd66ywjayyga4kv2p1v9rxzqjaxhckp8ni6n8i0fb2dvf"; - version = "1.0.5"; - }; - - "elm/html" = { - sha256 = "1n3gpzmpqqdsldys4ipgyl1zacn0kbpc3g4v3hdpiyfjlgh8bf3k"; - version = "1.0.0"; - }; - - "elm/http" = { - sha256 = "008bs76mnp48b4dw8qwjj4fyvzbxvlrl4xpa2qh1gg2kfwyw56v1"; - version = "2.0.0"; - }; - - "elm/json" = { - sha256 = "0kjwrz195z84kwywaxhhlnpl3p251qlbm5iz6byd6jky2crmyqyh"; - version = "1.1.3"; - }; - - "elm/svg" = { - sha256 = "1cwcj73p61q45wqwgqvrvz3aypjyy3fw732xyxdyj6s256hwkn0k"; - version = "1.0.1"; - }; - - "elm/time" = { - sha256 = "0vch7i86vn0x8b850w1p69vplll1bnbkp8s383z7pinyg94cm2z1"; - version = "1.0.0"; - }; - - "elm/url" = { - sha256 = "0av8x5syid40sgpl5vd7pry2rq0q4pga28b4yykn9gd9v12rs3l4"; - version = "1.0.0"; - }; - - "ianmackenzie/elm-units" = { - sha256 = "053nibhpkf906c7g14z48pvinzzfhnrnk5hkj4mjvjnv3r457h97"; - version = "2.10.0"; - }; - - "krisajenkins/remotedata" = { - sha256 = "0m5bk0qhsjv14vajqrkph386696pnhj5rn51kgma8lwyvvx9ihw1"; - version = "6.0.1"; - }; - - "rtfeldman/elm-iso8601-date-strings" = { - sha256 = "1ah491kgyicgvy1c9myylqvhzb7ya9kgmn0hcsv23ymvqgaf6b1a"; - version = "1.1.4"; - }; - - "ryan-haskell/date-format" = { - sha256 = "18r9h72h3i507snjf5aw099s2ymv2qsr3x3ibnsmap407s98355y"; - version = "1.0.0"; - }; - - "truqu/elm-oauth2" = { - sha256 = "1sgnwhw0sk1mqjf71f8ylfkiq4nn5bi0qqi31022zkd2zfixszs4"; - version = "8.0.1"; - }; - - "wsowens/term" = { - sha256 = "0b25l39x8qxz0jqp8gw5sh40dq61yg1w87rv94l88ki4n5h8znv9"; - version = "2.0.6"; - }; - - "NoRedInk/elm-random-general" = { - sha256 = "02vqhjqgz8h3cmrdhbpr4wp1whgyxlingjl9jh0l4pdvqla7l79i"; - version = "1.0.0"; - }; - - "NoRedInk/elm-random-pcg-extended" = { - sha256 = "1i9dhvb2vvbxlmpfbbld0s0xkmn6c6gbq4dds6h7mc6smipgbfvf"; - version = "1.0.0"; - }; - - "danfishgold/base64-bytes" = { - sha256 = "1xw4kq7r4zpx484wcnwwkcgzmr4wdxsv3i0j90ynnrjc68ydwgj1"; - version = "1.1.0"; - }; - - "elm-community/json-extra" = { - sha256 = "10phb49jhfb2764zni5aivz59a06mjbggxlpqqza2iwn212h6m6j"; - version = "4.3.0"; - }; - - "elm/file" = { - sha256 = "1rljcb41dl97myidyjih2yliyzddkr2m7n74x7gg46rcw4jl0ny8"; - version = "1.0.5"; - }; - - "elm/parser" = { - sha256 = "0a3cxrvbm7mwg9ykynhp7vjid58zsw03r63qxipxp3z09qks7512"; - version = "1.1.0"; - }; - - "elm/regex" = { - sha256 = "0lijsp50w7n1n57mjg6clpn9phly8vvs07h0qh2rqcs0f1jqvsa2"; - version = "1.0.0"; - }; - - "elm/virtual-dom" = { - sha256 = "1yvb8px2z62xd578ag2q0r5hd1vkz9y7dfkx05355iiy1d7jwq4v"; - version = "1.0.3"; - }; - - "folkertdev/elm-sha2" = { - sha256 = "17rs2f8mx84kwi6mfcy3v3m4aplzxjwal1yqnv6a0licgfwgi1qc"; - version = "1.0.0"; - }; - - "rtfeldman/elm-hex" = { - sha256 = "1y0aa16asvwdqmgbskh5iba6psp43lkcjjw9mgzj3gsrg33lp00d"; - version = "1.0.0"; - }; - - "elm/random" = { - sha256 = "138n2455wdjwa657w6sjq18wx2r0k60ibpc4frhbqr50sncxrfdl"; - version = "1.0.0"; - }; + "NoRedInk/elm-json-decode-pipeline" = { + sha256 = "1k241pjz1wj5rqv95f1j86msa0s0p6w4v8n0jn26aw6cbadw363b"; + version = "1.0.1"; + }; + + "cachix/elm-uuid" = { + sha256 = "08vdi3pn9zq469lln8zb8zdfzygygmjb2aym4f7hxpnaw41k0pvb"; + version = "2.0.0"; + }; + + "chelovek0v/bbase64" = { + sha256 = "01fj6lf2xpc3byw89zivh11i6kl5bimlsdjd6m3gsi1v88nfj17d"; + version = "1.0.1"; + }; + + "circuithub/elm-dropdown" = { + sha256 = "1x9p5vl6qmmyiqsnij2rq88kbs9cwqqiy2xnihnd76035qc30zjy"; + version = "1.0.0"; + }; + + "elm-community/html-extra" = { + sha256 = "0nysjwhlvcc3rsc6mq9g9j81xq4jdyx92m5y02mwsnlyblfd773k"; + version = "3.4.0"; + }; + + "elm-explorations/markdown" = { + sha256 = "0k3110ixa4wwf3vkkdplagwah9ypr965qxr1y147rnsc1xsxmr6y"; + version = "1.0.0"; + }; + + "elm/browser" = { + sha256 = "0nagb9ajacxbbg985r4k9h0jadqpp0gp84nm94kcgbr5sf8i9x13"; + version = "1.0.2"; + }; + + "elm/bytes" = { + sha256 = "02ywbf52akvxclpxwj9n04jydajcbsbcbsnjs53yjc5lwck3abwj"; + version = "1.0.8"; + }; + + "elm/core" = { + sha256 = "19w0iisdd66ywjayyga4kv2p1v9rxzqjaxhckp8ni6n8i0fb2dvf"; + version = "1.0.5"; + }; + + "elm/html" = { + sha256 = "1n3gpzmpqqdsldys4ipgyl1zacn0kbpc3g4v3hdpiyfjlgh8bf3k"; + version = "1.0.0"; + }; + + "elm/http" = { + sha256 = "008bs76mnp48b4dw8qwjj4fyvzbxvlrl4xpa2qh1gg2kfwyw56v1"; + version = "2.0.0"; + }; + + "elm/json" = { + sha256 = "0kjwrz195z84kwywaxhhlnpl3p251qlbm5iz6byd6jky2crmyqyh"; + version = "1.1.3"; + }; + + "elm/svg" = { + sha256 = "1cwcj73p61q45wqwgqvrvz3aypjyy3fw732xyxdyj6s256hwkn0k"; + version = "1.0.1"; + }; + + "elm/time" = { + sha256 = "0vch7i86vn0x8b850w1p69vplll1bnbkp8s383z7pinyg94cm2z1"; + version = "1.0.0"; + }; + + "elm/url" = { + sha256 = "0av8x5syid40sgpl5vd7pry2rq0q4pga28b4yykn9gd9v12rs3l4"; + version = "1.0.0"; + }; + + "ianmackenzie/elm-units" = { + sha256 = "053nibhpkf906c7g14z48pvinzzfhnrnk5hkj4mjvjnv3r457h97"; + version = "2.10.0"; + }; + + "krisajenkins/remotedata" = { + sha256 = "0m5bk0qhsjv14vajqrkph386696pnhj5rn51kgma8lwyvvx9ihw1"; + version = "6.0.1"; + }; + + "rtfeldman/elm-iso8601-date-strings" = { + sha256 = "1ah491kgyicgvy1c9myylqvhzb7ya9kgmn0hcsv23ymvqgaf6b1a"; + version = "1.1.4"; + }; + + "ryan-haskell/date-format" = { + sha256 = "18r9h72h3i507snjf5aw099s2ymv2qsr3x3ibnsmap407s98355y"; + version = "1.0.0"; + }; + + "truqu/elm-oauth2" = { + sha256 = "1sgnwhw0sk1mqjf71f8ylfkiq4nn5bi0qqi31022zkd2zfixszs4"; + version = "8.0.1"; + }; + + "wsowens/term" = { + sha256 = "0b25l39x8qxz0jqp8gw5sh40dq61yg1w87rv94l88ki4n5h8znv9"; + version = "2.0.6"; + }; + + "NoRedInk/elm-random-general" = { + sha256 = "02vqhjqgz8h3cmrdhbpr4wp1whgyxlingjl9jh0l4pdvqla7l79i"; + version = "1.0.0"; + }; + + "NoRedInk/elm-random-pcg-extended" = { + sha256 = "1i9dhvb2vvbxlmpfbbld0s0xkmn6c6gbq4dds6h7mc6smipgbfvf"; + version = "1.0.0"; + }; + + "danfishgold/base64-bytes" = { + sha256 = "1xw4kq7r4zpx484wcnwwkcgzmr4wdxsv3i0j90ynnrjc68ydwgj1"; + version = "1.1.0"; + }; + + "elm-community/json-extra" = { + sha256 = "10phb49jhfb2764zni5aivz59a06mjbggxlpqqza2iwn212h6m6j"; + version = "4.3.0"; + }; + + "elm/file" = { + sha256 = "1rljcb41dl97myidyjih2yliyzddkr2m7n74x7gg46rcw4jl0ny8"; + version = "1.0.5"; + }; + + "elm/parser" = { + sha256 = "0a3cxrvbm7mwg9ykynhp7vjid58zsw03r63qxipxp3z09qks7512"; + version = "1.1.0"; + }; + + "elm/regex" = { + sha256 = "0lijsp50w7n1n57mjg6clpn9phly8vvs07h0qh2rqcs0f1jqvsa2"; + version = "1.0.0"; + }; + + "elm/virtual-dom" = { + sha256 = "1yvb8px2z62xd578ag2q0r5hd1vkz9y7dfkx05355iiy1d7jwq4v"; + version = "1.0.3"; + }; + + "folkertdev/elm-sha2" = { + sha256 = "17rs2f8mx84kwi6mfcy3v3m4aplzxjwal1yqnv6a0licgfwgi1qc"; + version = "1.0.0"; + }; + + "rtfeldman/elm-hex" = { + sha256 = "1y0aa16asvwdqmgbskh5iba6psp43lkcjjw9mgzj3gsrg33lp00d"; + version = "1.0.0"; + }; + + "elm/random" = { + sha256 = "138n2455wdjwa657w6sjq18wx2r0k60ibpc4frhbqr50sncxrfdl"; + version = "1.0.0"; + }; } diff --git a/frontend/generated-api/.openapi-generator/VERSION b/frontend/generated-api/.openapi-generator/VERSION index e465da4..1b2d969 100644 --- a/frontend/generated-api/.openapi-generator/VERSION +++ b/frontend/generated-api/.openapi-generator/VERSION @@ -1 +1 @@ -7.14.0 +7.18.0 diff --git a/frontend/generated-api/README.md b/frontend/generated-api/README.md index 67b8a75..b52ae08 100644 --- a/frontend/generated-api/README.md +++ b/frontend/generated-api/README.md @@ -7,5 +7,5 @@ This API client was generated by the [OpenAPI Generator](https://openapi-generat - API version: 0.2.0 - Package version: -- Generator version: 7.14.0 +- Generator version: 7.18.0 - Build package: org.openapitools.codegen.languages.ElmClientCodegen diff --git a/frontend/generated-api/src/Api/Request/Default.elm b/frontend/generated-api/src/Api/Request/Default.elm index 2cf2e4f..4a76f4e 100644 --- a/frontend/generated-api/src/Api/Request/Default.elm +++ b/frontend/generated-api/src/Api/Request/Default.elm @@ -26,7 +26,6 @@ module Api.Request.Default exposing , metrics , retryJob , webhook - , webhookEndpoint ) import Api @@ -184,15 +183,3 @@ webhook = Nothing Api.Data.anyTypeDecoder - -webhookEndpoint : Api.Request () -webhookEndpoint = - Api.request - "POST" - "/api/v1/zitadel/actions/webhook" - [] - [] - [] - Nothing - (Json.Decode.succeed ()) - diff --git a/frontend/package.nix b/frontend/package.nix index 4588b50..222b944 100644 --- a/frontend/package.nix +++ b/frontend/package.nix @@ -5,8 +5,6 @@ elmPackages, elm-land, BASE_URL, - OAUTH_CLIENT_ID, - OAUTH_AUDIENCE, }: let @@ -19,7 +17,7 @@ buildNpmPackage (finalAttrs: { src = lib.cleanSource ./.; env = { - inherit BASE_URL OAUTH_CLIENT_ID OAUTH_AUDIENCE; + inherit BASE_URL; }; nativeBuildInputs = [ diff --git a/frontend/src/Auth.elm b/frontend/src/Auth.elm index 8f8d3b4..f3c28f9 100644 --- a/frontend/src/Auth.elm +++ b/frontend/src/Auth.elm @@ -29,7 +29,7 @@ onPageLoad shared route = Auth.Action.loadCustomPage RemoteData.Success user -> - if user.beta_access then + if user.betaAccess then Auth.Action.loadPageWithUser user else diff --git a/frontend/src/Components/Breadcrumbs.elm b/frontend/src/Components/Breadcrumbs.elm index 2372599..a8b8fbb 100644 --- a/frontend/src/Components/Breadcrumbs.elm +++ b/frontend/src/Components/Breadcrumbs.elm @@ -1,7 +1,6 @@ module Components.Breadcrumbs exposing ( Breadcrumb , Breadcrumbs - , add , forCommit , forDashboard , forOwner @@ -19,9 +18,7 @@ module Components.Breadcrumbs exposing import Components.GitHub import Html exposing (..) import Html.Attributes exposing (..) -import Icons import Route.Path -import Svg.Attributes type Separator @@ -58,16 +55,6 @@ new = } -add : String -> Maybe String -> Breadcrumbs msg -> Breadcrumbs msg -add label maybeHref breadcrumbs = - case maybeHref of - Just _ -> - withText label breadcrumbs - - Nothing -> - withText label breadcrumbs - - withText : String -> Breadcrumbs msg -> Breadcrumbs msg withText text (Breadcrumbs settings) = let @@ -206,44 +193,19 @@ forDashboard = forOwner : { owner : String } -> Breadcrumbs msg forOwner params = - let - ownerAvatarConfig = - { username = params.owner - , size = "sm" - , extraClasses = "" - } - in new - |> withRouteAndAvatar params.owner (Route.Path.Github_Owner_ { owner = params.owner }) ownerAvatarConfig + |> withRouteAndAvatar params.owner + (Route.Path.Github_Owner_ { owner = params.owner }) + { username = params.owner, size = "sm", extraClasses = "" } forRepository : { owner : String, repo : String } -> Breadcrumbs msg forRepository params = - let - ownerAvatarConfig = - { username = params.owner - , size = "sm" - , extraClasses = "" - } - in - new - |> withRouteAndAvatar params.owner (Route.Path.Github_Owner_ { owner = params.owner }) ownerAvatarConfig + forOwner { owner = params.owner } |> withRoute params.repo (Route.Path.Github_Owner__Repo_ { owner = params.owner, repo = params.repo }) forCommit : { owner : String, repo : String, rev : String } -> Breadcrumbs msg forCommit params = - let - ownerAvatarConfig = - { username = params.owner - , size = "sm" - , extraClasses = "" - } - - shortRev = - String.left 7 params.rev - in - new - |> withRouteAndAvatar params.owner (Route.Path.Github_Owner_ { owner = params.owner }) ownerAvatarConfig - |> withRoute params.repo (Route.Path.Github_Owner__Repo_ { owner = params.owner, repo = params.repo }) - |> withText shortRev + forRepository { owner = params.owner, repo = params.repo } + |> withText (String.left 7 params.rev) diff --git a/frontend/src/Components/Button.elm b/frontend/src/Components/Button.elm index d718b6a..84ca032 100644 --- a/frontend/src/Components/Button.elm +++ b/frontend/src/Components/Button.elm @@ -21,7 +21,6 @@ module Components.Button exposing import Html exposing (..) import Html.Attributes exposing (..) -import Html.Events exposing (..) import Html.Events.Extra exposing (..) import RemoteData exposing (RemoteData) import Route.Path diff --git a/frontend/src/Components/CommitJobs.elm b/frontend/src/Components/CommitJobs.elm index 24bc5b9..b4093c9 100644 --- a/frontend/src/Components/CommitJobs.elm +++ b/frontend/src/Components/CommitJobs.elm @@ -3,7 +3,6 @@ module Components.CommitJobs exposing (Model, Msg(..), commitJobsView, init, sub import Api import Api.Data as Api import Api.Request.Default as Api -import Browser.Dom as Dom import Components.GitHubCommit exposing (viewCommitInfo) import Components.Job exposing (JobViewMsg(..), viewJob) import Components.ListTile as ListTile @@ -15,10 +14,8 @@ import Html.Attributes exposing (..) import Html.Lazy import Ports import RemoteData exposing (WebData) -import Route import Route.Path import Shared -import Task import Time import Uuid import WebData diff --git a/frontend/src/Components/GitHubCommit.elm b/frontend/src/Components/GitHubCommit.elm index 37ab7c6..cf79623 100644 --- a/frontend/src/Components/GitHubCommit.elm +++ b/frontend/src/Components/GitHubCommit.elm @@ -15,9 +15,7 @@ import Components.GitHub import Components.Label as Label import Html exposing (..) import Html.Attributes exposing (..) -import Html.Events exposing (onClick) import Icons -import Route import Route.Path import Svg.Attributes diff --git a/frontend/src/Components/Job.elm b/frontend/src/Components/Job.elm index 355d4cb..0db76ad 100644 --- a/frontend/src/Components/Job.elm +++ b/frontend/src/Components/Job.elm @@ -10,7 +10,6 @@ import Html exposing (..) import Html.Attributes exposing (attribute, class, href, id, title) import Html.Events exposing (onClick) import Icons -import Json.Decode as Decode import RemoteData exposing (WebData) import Route import Route.Path diff --git a/frontend/src/Components/Label.elm b/frontend/src/Components/Label.elm index c0d68b8..ebb4076 100644 --- a/frontend/src/Components/Label.elm +++ b/frontend/src/Components/Label.elm @@ -25,7 +25,6 @@ module Components.Label exposing import Html exposing (..) import Html.Attributes exposing (..) -import Html.Events exposing (..) type Type msg @@ -228,22 +227,3 @@ viewSingleLabel (Label settings) = Nothing -> [ text settings.text ] ) - - -{-| Creates a rev@branch label, properly styled and linked to GitHub --} -viewRevBranch : { rev : String, ref : String, owner : String, repo : String } -> Html msg -viewRevBranch { rev, ref, owner, repo } = - view - (new { text = "" } - |> asCombined - [ new { text = String.left 7 rev } - |> asLink ("https://github.com/" ++ owner ++ "/" ++ repo ++ "/commit/" ++ rev) - |> withClass "rounded-l" - , new { text = "@" } - |> withClass "px-0" - , new { text = ref } - |> asLink ("https://github.com/" ++ owner ++ "/" ++ repo ++ "/tree/" ++ ref) - |> withClass "rounded-r" - ] - ) diff --git a/frontend/src/Components/LandingLayout.elm b/frontend/src/Components/LandingLayout.elm index e94b608..6d152b8 100644 --- a/frontend/src/Components/LandingLayout.elm +++ b/frontend/src/Components/LandingLayout.elm @@ -5,8 +5,8 @@ import Components.Footer import Html exposing (..) import Html.Attributes exposing (..) import Html.Events exposing (onClick) +import Http import Icons -import Oidc.Model import RemoteData import Route exposing (Route) import Route.Path @@ -18,7 +18,7 @@ type alias Props msg = { onSignIn : msg , onToggleTheme : msg , theme : Theme - , user : RemoteData.RemoteData Oidc.Model.Error User + , user : RemoteData.RemoteData Http.Error User , route : Route () } @@ -59,7 +59,7 @@ viewHeader { onSignIn, onToggleTheme, theme, user, route } = ( "cloud.devenv.sh", Route.Path.Home ) _ -> - ( if userInfo.beta_access then + ( if userInfo.betaAccess then "Go to dashboard" else @@ -80,23 +80,6 @@ viewHeader { onSignIn, onToggleTheme, theme, user, route } = _ -> -- Show login buttons for logged-out users div [] [] - - {- - div [ class "flex gap-4" ] - [ Components.Button.new - { label = "Log in" - , icon = Nothing - , action = Components.Button.Click onSignIn - } - |> Components.Button.view - , Components.Button.new - { label = "Sign up" - , icon = Nothing - , action = Components.Button.Click onSignIn - } - |> Components.Button.view - ] - -} in nav [ class "container max-w-4xl p-4 text-secondary font-semibold flex flex-wrap items-center justify-between mx-auto dark:text-dark-text-secondary" diff --git a/frontend/src/Components/OwnerRepos.elm b/frontend/src/Components/OwnerRepos.elm index 3ba4df5..982eb13 100644 --- a/frontend/src/Components/OwnerRepos.elm +++ b/frontend/src/Components/OwnerRepos.elm @@ -6,16 +6,13 @@ module Components.OwnerRepos exposing import Api import Api.Data as Api -import Auth import Components.Button import Components.GitHub import Components.GitHubCommit exposing (viewCommitInfo) import Components.Job exposing (formatJobDuration, getJobStartedAtText, getPlatformText, viewJobDetails, viewJobStatus, viewSimpleJob) import Components.ListTile -import DateFormat.Relative exposing (relativeTime) import Html exposing (..) import Html.Attributes exposing (..) -import Html.Events import Icons import RemoteData import Route exposing (Route) diff --git a/frontend/src/Effect.elm b/frontend/src/Effect.elm index 459e8d0..88f6821 100644 --- a/frontend/src/Effect.elm +++ b/frontend/src/Effect.elm @@ -6,7 +6,7 @@ port module Effect exposing , pushRoutePath, replaceRoutePath , loadExternalUrl, back , map, toCmd - , clearAuthData, clearUserInfo, genRandomBytes, incoming, outgoing, saveAuthData, saveUserInfo, sendApi, setTheme, signIn, signOut, toggleTheme + , outgoing, sendApi, setTheme, signIn, signOut, toggleTheme ) {-| @@ -30,9 +30,6 @@ import Dict exposing (Dict) import Http import Json.Decode import Json.Encode -import OAuth -import Oidc.Model -import Oidc.Msg import Route exposing (Route) import Route.Path import Shared.Model @@ -56,8 +53,6 @@ type Effect msg | SendSharedMsg Shared.Msg.Msg -- LOCAL STORAGE | SendToLocalStorage { key : String, value : Json.Encode.Value } - -- AUTH - | GenRandomBytes Int -- API | SendApi { request : Api.Request msg @@ -72,9 +67,6 @@ type Effect msg port outgoing : { tag : String, data : Json.Encode.Value } -> Cmd msg -port incoming : (Json.Encode.Value -> msg) -> Sub msg - - -- BASICS @@ -203,9 +195,6 @@ map fn effect = SendToLocalStorage options -> SendToLocalStorage options - GenRandomBytes n -> - GenRandomBytes n - SendApi { request, onHttpError } -> SendApi { request = Api.map fn request @@ -262,14 +251,8 @@ toCmd options effect = ] } - GenRandomBytes n -> - outgoing { tag = "GEN_RANDOM_BYTES", data = Json.Encode.int n } - SendApi { request, onHttpError } -> let - oidcAuth = - options.shared.oidcAuth - expect = Http.expectJson (\httpResult -> @@ -280,17 +263,8 @@ toCmd options effect = Err httpError -> onHttpError httpError ) - - withBearerToken req = - case oidcAuth.flow of - Oidc.Model.Authenticated auth -> - Api.withHeader "Authorization" (OAuth.tokenToString auth.token) req - - _ -> - req in request - |> withBearerToken |> Api.withBasePath options.shared.baseUrl |> Api.sendWithCustomExpect expect @@ -300,48 +274,11 @@ signIn = SendSharedMsg Shared.Msg.SignIn -genRandomBytes : Int -> Effect msg -genRandomBytes n = - GenRandomBytes n - - signOut : Effect msg signOut = SendSharedMsg Shared.Msg.SignOut -saveAuthData : Oidc.Model.AuthData -> Effect msg -saveAuthData auth = - SendToLocalStorage - { key = "authData" - , value = Oidc.Model.encodeAuthData auth - } - - -clearAuthData : Effect msg -clearAuthData = - SendToLocalStorage - { key = "authData" - , value = Json.Encode.null - } - - -saveUserInfo : Oidc.Model.UserInfo -> Effect msg -saveUserInfo userInfo = - SendToLocalStorage - { key = "userInfo" - , value = Oidc.Model.encodeUserInfo userInfo - } - - -clearUserInfo : Effect msg -clearUserInfo = - SendToLocalStorage - { key = "userInfo" - , value = Json.Encode.null - } - - setTheme : String -> Effect msg setTheme theme = outgoing @@ -361,9 +298,7 @@ toggleTheme = {-| Send an API request by converting it into an Effect. -This handles: - - - Authentication: by attaching a bearer token to the request +This handles authentication automatically via cookies (session-based auth). We take extra care to avoid adding an extra type variable to our Effect type. This is done by deconstructing the `toMsg` function, so that our `Request a` becomes a `Request msg`. diff --git a/frontend/src/Layouts/Main.elm b/frontend/src/Layouts/Main.elm index abd24e4..769c5bc 100644 --- a/frontend/src/Layouts/Main.elm +++ b/frontend/src/Layouts/Main.elm @@ -13,12 +13,11 @@ import Html.Attributes exposing (..) import Html.Events exposing (onClick) import Icons import Layout exposing (Layout) -import Oidc.Model import RemoteData import Route exposing (Route) import Route.Path import Shared -import Shared.Model exposing (Theme(..)) +import Shared.Model exposing (Theme(..), User) import Shared.Msg import Svg.Attributes import Url @@ -154,17 +153,8 @@ view props route { toContentMsg, model, content } = viewHeader : Props contentMsg -> Model -> Route () -> (Msg -> contentMsg) -> Html contentMsg viewHeader props model route toContentMsg = let - navButton title to = - a - [ class "app-link hover:cursor-pointer" - , classList [ ( "font-black", to == route.url.path ) ] - , href to - ] - [ text title ] - navigation = - [-- navButton "Dashboard" (Route.Path.toString Route.Path.Home_) - ] + [] guestButtons = case route.path of @@ -346,31 +336,13 @@ viewHeader props model route toContentMsg = ] -viewMobileUser : Oidc.Model.UserInfo -> (Msg -> contentMsg) -> Html contentMsg -viewMobileUser userInfo toContentMsg = - let - avatarUsername = - Maybe.withDefault "" userInfo.preferred_username - in +viewMobileUser : User -> (Msg -> contentMsg) -> Html contentMsg +viewMobileUser user toContentMsg = div [ class "flex flex-col" ] [ div [ class "flex items-center px-4 py-2" ] - [ case userInfo.preferred_username of - Just username -> - Components.GitHub.viewAvatar - { username = username - , size = "md" - , extraClasses = "mr-2" - } - - Nothing -> - img - [ class "h-8 w-8 rounded-full mr-2" - , src (getUserAvatarUrl userInfo) - , alt "User avatar" - ] - [] + [ viewAvatar "h-8 w-8 mr-2" user , span [ class "font-medium" ] - [ text (Maybe.withDefault "User" userInfo.given_name) ] + [ text (Maybe.withDefault "User" user.name) ] ] , a [ class "px-4 py-2 mt-2 text-red hover:bg-light dark:hover:bg-dark-border rounded-md" @@ -382,8 +354,8 @@ viewMobileUser userInfo toContentMsg = ] -viewUser : Oidc.Model.UserInfo -> Model -> (Msg -> contentMsg) -> Html contentMsg -viewUser userInfo model toContentMsg = +viewUser : User -> Model -> (Msg -> contentMsg) -> Html contentMsg +viewUser user model toContentMsg = let dropdownItem icon name route = a [ class "block px-3 py-1.5 text-xs app-link hover:underline hover:cursor-pointer whitespace-nowrap", route ] @@ -391,23 +363,9 @@ viewUser userInfo model toContentMsg = toggleButton = div [ class "flex items-center" ] - [ case userInfo.preferred_username of - Just username -> - Components.GitHub.viewAvatar - { username = username - , size = "sm" - , extraClasses = "mr-2" - } - - Nothing -> - img - [ class "h-6 w-6 rounded-full mr-2" - , src (getUserAvatarUrl userInfo) - , alt "User avatar" - ] - [] + [ viewAvatar "h-6 w-6 mr-2" user , span [ class "text-xs whitespace-normal break-normal" ] - [ text (Maybe.withDefault "" userInfo.given_name) ] + [ text (Maybe.withDefault "" user.name) ] ] dropdownItems = @@ -426,17 +384,24 @@ viewUser userInfo model toContentMsg = } -getUserAvatarUrl : Oidc.Model.UserInfo -> String -getUserAvatarUrl userInfo = - -- Use GitHub avatar for all users - case userInfo.preferred_username of - Just username -> - Components.GitHub.getAvatarUrl username - - Nothing -> - -- Fallback to generating avatar using name - let - name = - Maybe.withDefault "User" userInfo.given_name - in - "https://ui-avatars.com/api/?name=" ++ name ++ "&background=F7D15D&color=4A3E3D" +viewAvatar : String -> User -> Html msg +viewAvatar extraClasses user = + let + avatarUrl = + case user.avatarUrl of + Just url -> + url + + Nothing -> + let + name = + Maybe.withDefault "User" user.name + in + "https://ui-avatars.com/api/?name=" ++ name ++ "&background=F7D15D&color=4A3E3D" + in + img + [ class ("rounded-full " ++ extraClasses) + , src avatarUrl + , alt "User avatar" + ] + [] diff --git a/frontend/src/Oidc.elm b/frontend/src/Oidc.elm deleted file mode 100644 index 5b9692e..0000000 --- a/frontend/src/Oidc.elm +++ /dev/null @@ -1,367 +0,0 @@ -module Oidc exposing (convertBytes, gotRandomBytes, init, shouldRefreshAccessToken, toBytes, update) - -import Base64.Encode as Base64 -import Bytes exposing (Bytes) -import Bytes.Encode as Bytes -import Effect exposing (Effect) -import Http -import Json.Decode as Json -import Json.Encode as E -import OAuth -import OAuth.AuthorizationCode.PKCE as OAuth -import OAuth.Refresh -import Oidc.Model -import Oidc.Msg -import Route.Path -import Time -import Url exposing (Protocol(..), Url) - - -type alias Model = - Oidc.Model.Model - - -type alias Flow = - Oidc.Model.Flow - - -type alias Configuration = - Oidc.Model.Configuration - - -type alias Msg = - Oidc.Msg.Msg - - -init : Model -> Maybe { state : String, codeVerifier : OAuth.CodeVerifier } -> Url -> ( Model, Effect Msg ) -init model mflags origin = - let - redirectUri = - { origin | query = Nothing, fragment = Nothing } - - clearUrl = - Effect.replaceRoutePath (Route.Path.fromUrl redirectUri) - in - case OAuth.parseCode origin of - OAuth.Empty -> - ( { model | flow = Oidc.Model.NotAuthenticated } - , Effect.none - ) - - -- It is important to set a `state` when making the authorization request - -- and to verify it after the redirection. The state can be anything but its primary - -- usage is to prevent cross-site request forgery; at minima, it should be a short, - -- non-guessable string, generated on the fly. - -- - -- We remember any previously generated state using the browser's local storage - -- and give it back (if present) to the elm application upon start - OAuth.Success { code, state } -> - case mflags of - Nothing -> - ( { model | flow = Oidc.Model.Failed Oidc.Model.ErrStateMismatch } - , clearUrl - ) - - Just flags -> - if state /= Just flags.state then - ( { model | flow = Oidc.Model.Failed Oidc.Model.ErrStateMismatch } - , clearUrl - ) - - else - ( { model | flow = Oidc.Model.Authenticating code flags.codeVerifier } - , Effect.batch - [ getAccessToken model.configuration model.redirectUri code flags.codeVerifier - , clearUrl - ] - ) - - OAuth.Error error -> - ( { model | flow = Oidc.Model.Failed <| Oidc.Model.ErrAuthorization error } - , clearUrl - ) - - -getAccessToken : Configuration -> Url -> OAuth.AuthorizationCode -> OAuth.CodeVerifier -> Effect Msg -getAccessToken { clientId, tokenEndpoint } redirectUri code codeVerifier = - Effect.sendCmd <| - Http.request <| - OAuth.makeTokenRequest Oidc.Msg.GotAccessToken - { credentials = - { clientId = clientId - , secret = Nothing - } - , code = code - , codeVerifier = codeVerifier - , url = tokenEndpoint - , redirectUri = redirectUri - } - - -update : Msg -> Model -> { shared | now : Time.Posix } -> ( Model, Effect Msg ) -update msg model shared = - case ( model.flow, msg ) of - ( Oidc.Model.NotAuthenticated, Oidc.Msg.StartLogin ) -> - startLogin model - - ( Oidc.Model.NotAuthenticated, Oidc.Msg.GotRandomBytes bytes ) -> - gotRandomBytes model bytes - - ( Oidc.Model.Authenticating _ _, Oidc.Msg.GotAccessToken authenticationResponse ) -> - gotAccessToken model shared.now authenticationResponse - - ( Oidc.Model.Authenticated auth, Oidc.Msg.UserInfoRequested ) -> - userInfoRequested model auth.token - - ( Oidc.Model.Authenticated _, Oidc.Msg.GotUserInfo userInfoResponse ) -> - gotUserInfo model userInfoResponse - - ( Oidc.Model.NotAuthenticated, Oidc.Msg.RefreshToken auth ) -> - requestRefreshToken model auth - - ( Oidc.Model.Authenticated auth, Oidc.Msg.RefreshToken _ ) -> - requestRefreshToken model auth.refreshToken - - ( _, Oidc.Msg.GotRefreshedToken authenticationResponse ) -> - gotRefreshedToken model shared.now authenticationResponse - - ( _, Oidc.Msg.Logout ) -> - logout model - - _ -> - noOp model - - -noOp : Model -> ( Model, Effect msg ) -noOp model = - ( model, Effect.none ) - - -gotRandomBytes : Model -> List Int -> ( Model, Effect Msg ) -gotRandomBytes model bytes = - case convertBytes bytes of - Nothing -> - ( { model | flow = Oidc.Model.Failed Oidc.Model.ErrFailedToConvertBytes } - , Effect.none - ) - - Just { state, codeVerifier } -> - let - authorization = - { clientId = model.configuration.clientId - , redirectUri = model.redirectUri - , scope = model.configuration.scope - , state = Just state - , codeChallenge = OAuth.mkCodeChallenge codeVerifier - , url = model.configuration.authorizationEndpoint - } - in - ( { model | flow = Oidc.Model.NotAuthenticated } - , authorization - |> OAuth.makeAuthorizationUrl - |> Url.toString - |> Effect.loadExternalUrl - ) - - -startLogin : Model -> ( Model, Effect Msg ) -startLogin model = - ( { model | flow = Oidc.Model.NotAuthenticated } - -- We generate random bytes for both the state and the code verifier. First bytes are - -- for the 'state', and remaining ones are used for the code verifier. - , Effect.genRandomBytes (cSTATE_SIZE + cCODE_VERIFIER_SIZE) - ) - - - --- Helper function to handle successful authentication - - -handleAuthSuccess : Model -> Time.Posix -> OAuth.AuthenticationSuccess -> Effect Msg -> ( Model, Effect Msg ) -handleAuthSuccess model now authSuccess extraEffect = - let - auth = - Oidc.Model.authDataFromAuthenticationSuccess now authSuccess - in - ( { model | flow = Oidc.Model.Authenticated auth } - , Effect.batch - [ extraEffect - , Effect.saveAuthData auth - ] - ) - - -gotAccessToken : Model -> Time.Posix -> Result Http.Error OAuth.AuthenticationSuccess -> ( Model, Effect Msg ) -gotAccessToken model now authenticationResponse = - case authenticationResponse of - Err (Http.BadBody body) -> - case Json.decodeString OAuth.defaultAuthenticationErrorDecoder body of - Ok error -> - ( { model | flow = Oidc.Model.Failed <| Oidc.Model.ErrAuthentication error } - , Effect.none - ) - - _ -> - ( { model | flow = Oidc.Model.Failed Oidc.Model.ErrHTTPGetAccessToken } - , Effect.none - ) - - Err _ -> - ( { model | flow = Oidc.Model.Failed Oidc.Model.ErrHTTPGetAccessToken } - , Effect.none - ) - - Ok authData -> - handleAuthSuccess model now authData (Effect.sendMsg Oidc.Msg.LoginSucceeded) - - -requestRefreshToken : Model -> Maybe OAuth.Token -> ( Model, Effect Msg ) -requestRefreshToken model mrefreshToken = - ( model - , mrefreshToken - |> Maybe.map - (\refreshToken -> - Effect.sendCmd <| - Http.request <| - OAuth.Refresh.makeTokenRequest Oidc.Msg.GotRefreshedToken - { credentials = - Just - { clientId = model.configuration.clientId - , secret = "" - } - , url = model.configuration.tokenEndpoint - , scope = model.configuration.scope - , token = refreshToken - } - ) - |> Maybe.withDefault Effect.none - ) - - -gotRefreshedToken : Model -> Time.Posix -> Result Http.Error OAuth.AuthenticationSuccess -> ( Model, Effect Msg ) -gotRefreshedToken = - gotAccessToken - - -userInfoRequested : Model -> OAuth.Token -> ( Model, Effect Msg ) -userInfoRequested model token = - ( model, getUserInfo model token ) - - -getUserInfo : Model -> OAuth.Token -> Effect Msg -getUserInfo model token = - Effect.sendCmd <| - Http.request - { method = "GET" - , body = Http.emptyBody - , headers = OAuth.useToken token [] - , url = Url.toString model.configuration.userInfoEndpoint - , expect = Http.expectJson Oidc.Msg.GotUserInfo Oidc.Model.userInfoDecoder - , timeout = Nothing - , tracker = Nothing - } - - -gotUserInfo : Model -> Result Http.Error Oidc.Model.UserInfo -> ( Model, Effect Msg ) -gotUserInfo model userInfoResponse = - case userInfoResponse of - Err _ -> - ( { model | flow = Oidc.Model.Failed Oidc.Model.ErrHTTPGetUserInfo } - , Effect.sendMsg Oidc.Msg.Logout - ) - - Ok userInfo -> - ( { model | userInfo = Just userInfo } - , Effect.sendMsg Oidc.Msg.LoginCompleted - ) - - -logout : Model -> ( Model, Effect Msg ) -logout model = - ( { model | flow = Oidc.Model.NotAuthenticated, userInfo = Nothing } - , Effect.batch - [ Effect.clearAuthData - , Effect.clearUserInfo - , Effect.loadExternalUrl (Url.toString model.redirectUri) - ] - ) - - - --- --- Helpers --- - - -cSTATE_SIZE : Int -cSTATE_SIZE = - 8 - - - --- Number of bytes making the 'code_verifier' - - -cCODE_VERIFIER_SIZE : Int -cCODE_VERIFIER_SIZE = - 32 - - -toBytes : List Int -> Bytes -toBytes = - List.map Bytes.unsignedInt8 >> Bytes.sequence >> Bytes.encode - - -base64 : Bytes -> String -base64 = - Base64.bytes >> Base64.encode - - -convertBytes : List Int -> Maybe { state : String, codeVerifier : OAuth.CodeVerifier } -convertBytes bytes = - if List.length bytes < (cSTATE_SIZE + cCODE_VERIFIER_SIZE) then - Nothing - - else - let - state = - bytes - |> List.take cSTATE_SIZE - |> toBytes - |> base64 - - mCodeVerifier = - bytes - |> List.drop cSTATE_SIZE - |> toBytes - |> OAuth.codeVerifierFromBytes - in - Maybe.map (\codeVerifier -> { state = state, codeVerifier = codeVerifier }) mCodeVerifier - - -calculateExpiryTime : Time.Posix -> Maybe Int -> Maybe Int -calculateExpiryTime now expiresIn = - expiresIn - |> Maybe.map - (\seconds -> - (Time.posixToMillis now // 1000) + seconds - ) - - -oauthErrorToString : { error : OAuth.ErrorCode, errorDescription : Maybe String } -> String -oauthErrorToString { error, errorDescription } = - let - desc = - errorDescription |> Maybe.withDefault "" |> String.replace "+" " " - in - OAuth.errorCodeToString error ++ ": " ++ desc - - -shouldRefreshAccessToken : Time.Posix -> Configuration -> Oidc.Model.AuthData -> Bool -shouldRefreshAccessToken now config authData = - case authData.expiresAt of - Just expiresAt -> - Time.posixToMillis expiresAt - Time.posixToMillis now <= config.refreshThresholdSeconds * 1000 - - _ -> - False diff --git a/frontend/src/Oidc/Model.elm b/frontend/src/Oidc/Model.elm deleted file mode 100644 index d98fe46..0000000 --- a/frontend/src/Oidc/Model.elm +++ /dev/null @@ -1,226 +0,0 @@ -module Oidc.Model exposing - ( AuthData - , Configuration - , Error(..) - , Flow(..) - , Model - , UserInfo - , authDataDecoder - , authDataFromAuthenticationSuccess - , encodeAuthData - , encodeUserInfo - , userInfoDecoder - ) - -import Dict -import Json.Decode as Decode -import Json.Decode.Pipeline as Decode -import Json.Encode as Encode -import OAuth -import OAuth.AuthorizationCode.PKCE as OAuth -import Time -import Url exposing (Protocol(..), Url) - - -type alias Model = - { flow : Flow - , userInfo : Maybe UserInfo - , configuration : Configuration - , redirectUri : Url - } - - -type Flow - = NotAuthenticated - | Authenticating OAuth.AuthorizationCode OAuth.CodeVerifier - | Authenticated AuthData - | Failed Error - - -type Error - = ErrStateMismatch - | ErrFailedToConvertBytes - | ErrAuthorization OAuth.AuthorizationError - | ErrAuthentication OAuth.AuthenticationError - | ErrHTTPGetAccessToken - | ErrHTTPGetUserInfo - - -type alias Configuration = - { authorizationEndpoint : Url - , tokenEndpoint : Url - , userInfoEndpoint : Url - , clientId : String - , scope : List String - , refreshThresholdSeconds : Int - } - - -{-| The result of a successful authentication flow. --} -type alias AuthData = - { -- | An access token. - token : OAuth.Token - - -- | An optional timestamp denoting the expiry of the `token`. - , expiresAt : Maybe Time.Posix - - -- | An optional refresh token to allow requesting a fresh `AuthData` before or after the token expires. - -- - -- The refresh token has its own expiry that is not communicated to the client. - -- Clients should be prepared to trigger the auth flow if the token cannot be refresh for whatever reason. - , refreshToken : Maybe OAuth.Token - } - - -authDataFromAuthenticationSuccess : Time.Posix -> OAuth.AuthenticationSuccess -> AuthData -authDataFromAuthenticationSuccess now success = - let - addSecondsToPosix timestamp seconds = - Time.millisToPosix (Time.posixToMillis timestamp + seconds * 1000) - - expiresAt = - success.expiresIn - |> Maybe.map (\seconds -> addSecondsToPosix now seconds) - in - { token = success.token - , expiresAt = expiresAt - , refreshToken = success.refreshToken - } - - -{-| The user info returned by the OIDC provider. --} -type alias UserInfo = - { sub : String - , name : Maybe String - , given_name : Maybe String - , family_name : Maybe String - , locale : Maybe String - , preferred_username : Maybe String - , updated_at : Maybe Int - , email : Maybe String - , email_verified : Maybe Bool - , beta_access : Bool - } - - - --- --- DECODERS --- - - -authDataDecoder : Decode.Decoder AuthData -authDataDecoder = - let - decodeToken = - Decode.string - |> Decode.andThen - (\t -> - case OAuth.tokenFromString t of - Nothing -> - Decode.fail "Failed to decode token" - - Just token -> - Decode.succeed token - ) - in - Decode.succeed AuthData - |> Decode.required "token" decodeToken - |> Decode.optional "expiresAt" (Decode.nullable (Decode.int |> Decode.map Time.millisToPosix)) Nothing - |> Decode.optional "refreshToken" (Decode.nullable decodeToken) Nothing - - -{-| { -"sub": "298937983627715588", -"name": "hey@sandydoo.me", -"given\_name": "Sander", -"family\_name": "Melnikov", -"locale": "en", -"updated\_at": 1734676923, -"preferred\_username": "sandydoo", -"email": "hey@sandydoo.me", -"email\_verified": true -} --} -userInfoDecoder : Decode.Decoder UserInfo -userInfoDecoder = - Decode.succeed UserInfo - |> Decode.required "sub" Decode.string - |> Decode.required "name" (Decode.nullable Decode.string) - |> Decode.required "given_name" (Decode.nullable Decode.string) - |> Decode.required "family_name" (Decode.nullable Decode.string) - |> Decode.required "locale" (Decode.nullable Decode.string) - |> Decode.required "preferred_username" (Decode.nullable Decode.string) - |> Decode.required "updated_at" (Decode.nullable Decode.int) - |> Decode.optional "email" (Decode.nullable Decode.string) Nothing - |> Decode.optional "email_verified" (Decode.nullable Decode.bool) Nothing - |> Decode.custom betaAccessDecoder - - -{-| Decoder for beta\_access that checks both: - -1. Direct "beta\_access" field -2. " for "beta\_user" role - --} -betaAccessDecoder : Decode.Decoder Bool -betaAccessDecoder = - Decode.oneOf - [ -- Try direct beta_access field first - Decode.field "beta_access" Decode.bool - , -- Then check for beta_user role in Zitadel roles - Decode.field "urn:zitadel:iam:org:project:roles" hasBetaUserRole - , -- Default to False if neither exists - Decode.succeed False - ] - - -{-| Check if the roles object contains "beta\_user" key --} -hasBetaUserRole : Decode.Decoder Bool -hasBetaUserRole = - Decode.dict Decode.value - |> Decode.map (\roles -> Dict.member "beta_user" roles) - - - --- --- ENCODERS --- - - -encodeMaybe : (a -> Encode.Value) -> Encode.Value -> Maybe a -> Encode.Value -encodeMaybe f d v = - Maybe.map f v |> Maybe.withDefault d - - -encodeNullable : (a -> Encode.Value) -> Maybe a -> Encode.Value -encodeNullable f v = - encodeMaybe f Encode.null v - - -encodeAuthData : AuthData -> Encode.Value -encodeAuthData o = - Encode.object - [ ( "token", Encode.string (OAuth.tokenToString o.token) ) - , ( "refreshToken", encodeNullable (OAuth.tokenToString >> Encode.string) o.refreshToken ) - , ( "expiresAt", encodeNullable (Time.posixToMillis >> Encode.int) o.expiresAt ) - ] - - -encodeUserInfo : UserInfo -> Encode.Value -encodeUserInfo o = - Encode.object - [ ( "sub", Encode.string o.sub ) - , ( "name", encodeNullable Encode.string o.name ) - , ( "given_name", encodeNullable Encode.string o.given_name ) - , ( "family_name", encodeNullable Encode.string o.family_name ) - , ( "locale", encodeNullable Encode.string o.locale ) - , ( "preferred_username", encodeNullable Encode.string o.preferred_username ) - , ( "updated_at", encodeNullable Encode.int o.updated_at ) - , ( "email", encodeNullable Encode.string o.email ) - , ( "email_verified", encodeNullable Encode.bool o.email_verified ) - , ( "beta_access", Encode.bool o.beta_access ) - ] diff --git a/frontend/src/Oidc/Msg.elm b/frontend/src/Oidc/Msg.elm deleted file mode 100644 index 3107843..0000000 --- a/frontend/src/Oidc/Msg.elm +++ /dev/null @@ -1,20 +0,0 @@ -module Oidc.Msg exposing (Msg(..)) - -import Http -import OAuth -import OAuth.AuthorizationCode.PKCE as OAuth -import Oidc.Model exposing (UserInfo) - - -type Msg - = NoOp - | StartLogin - | GotRandomBytes (List Int) - | GotAccessToken (Result Http.Error OAuth.AuthenticationSuccess) - | LoginSucceeded - | UserInfoRequested - | GotUserInfo (Result Http.Error UserInfo) - | LoginCompleted - | RefreshToken (Maybe OAuth.Token) - | GotRefreshedToken (Result Http.Error OAuth.AuthenticationSuccess) - | Logout diff --git a/frontend/src/Pages/Github/Owner_/Repo_.elm b/frontend/src/Pages/Github/Owner_/Repo_.elm index f76a930..163fa22 100644 --- a/frontend/src/Pages/Github/Owner_/Repo_.elm +++ b/frontend/src/Pages/Github/Owner_/Repo_.elm @@ -4,7 +4,6 @@ import Api import Api.Data as Api import Api.Request.Default as Api import Auth -import Browser.Dom as Dom import Components.Breadcrumbs exposing (Breadcrumbs) import Components.Button as Button import Components.CommitJobs @@ -13,16 +12,12 @@ import Dict import Effect exposing (Effect) import Html exposing (..) import Html.Attributes exposing (..) -import Http -import Json.Decode as Decode exposing (Decoder) import Layouts import Page exposing (Page) -import Process import RemoteData exposing (WebData) import Route exposing (Route) import Route.Path import Shared -import Task import Time exposing (millisToPosix) import Uuid exposing (Uuid) import View exposing (View) @@ -79,8 +74,6 @@ type Msg = RepoJobsResponse (WebData Api.RepoJobs) | Refresh | CommitJobsMsg Components.CommitJobs.Msg - | ScrollComplete -- When scrolling to an element is complete - | ScrollFailed -- When scrolling to an element fails update : Msg -> Model -> ( Model, Effect Msg ) @@ -99,14 +92,6 @@ update msg model = -- This keeps the UI state stable between refreshes ( model, getJobsForRepo model.owner model.repo ) - ScrollComplete -> - -- We've successfully scrolled to the element - ( model, Effect.none ) - - ScrollFailed -> - -- Scrolling failed, but we can continue - ( model, Effect.none ) - CommitJobsMsg subMsg -> let ( updatedJobsModel, jobsEffect ) = @@ -169,35 +154,6 @@ update msg model = ) - --- Helper function to scroll to an element by ID with an offset - - -scrollToElementEffect : String -> Effect Msg -scrollToElementEffect elementId = - Effect.sendCmd - (Process.sleep 100 - |> Task.andThen - (\_ -> - Dom.getElement elementId - |> Task.andThen - (\elementInfo -> - -- Scroll element into view with some offset from top - Dom.setViewport 0 (elementInfo.element.y - 100) - ) - ) - |> Task.attempt - (\result -> - case result of - Ok _ -> - ScrollComplete - - Err _ -> - ScrollFailed - ) - ) - - subscriptions : Model -> Sub Msg subscriptions model = Sub.batch diff --git a/frontend/src/Pages/Github/Owner_/Repo_/Rev_.elm b/frontend/src/Pages/Github/Owner_/Repo_/Rev_.elm index e2a7228..3f2b6ac 100644 --- a/frontend/src/Pages/Github/Owner_/Repo_/Rev_.elm +++ b/frontend/src/Pages/Github/Owner_/Repo_/Rev_.elm @@ -4,7 +4,6 @@ import Api import Api.Data as Api import Api.Request.Default as Api import Auth -import Browser.Dom as Dom import Components.Breadcrumbs exposing (Breadcrumbs) import Components.CommitJobs import Components.Job exposing (JobViewMsg(..)) diff --git a/frontend/src/Pages/Home_.elm b/frontend/src/Pages/Home_.elm index 7dd4cfa..8f9e3cf 100644 --- a/frontend/src/Pages/Home_.elm +++ b/frontend/src/Pages/Home_.elm @@ -34,7 +34,7 @@ init shared _ = case shared.user of RemoteData.Success userInfo -> -- Redirect authenticated users to their dashboard - case userInfo.preferred_username of + case userInfo.username of Just username -> ( {} , Effect.replaceRoute @@ -45,7 +45,6 @@ init shared _ = ) Nothing -> - -- Fallback if no username ( {}, Effect.none ) _ -> diff --git a/frontend/src/Shared.elm b/frontend/src/Shared.elm index 9e7979a..3f674b5 100644 --- a/frontend/src/Shared.elm +++ b/frontend/src/Shared.elm @@ -15,22 +15,16 @@ module Shared exposing import Api import Api.Data as Api import Api.Request.Default as Api -import Dict import Effect exposing (Effect) +import Http import Json.Decode import Json.Decode.Pipeline as Decode -import OAuth -import OAuth.AuthorizationCode.PKCE as OAuth -import Oidc -import Oidc.Model -import Oidc.Msg import RemoteData import Route exposing (Route) import Route.Path import Shared.Model import Shared.Msg import Time -import Url exposing (Protocol(..)) @@ -40,11 +34,6 @@ import Url exposing (Protocol(..)) type alias Flags = { now : Time.Posix , baseUrl : String - , authData : Maybe Oidc.Model.AuthData - , userInfo : Maybe Oidc.Model.UserInfo - - -- OAuth state and challenge for PKCE - , oauth : OAuthFlags , theme : Maybe String } @@ -53,36 +42,15 @@ defaultFlags : Flags defaultFlags = { now = Time.millisToPosix 0 , baseUrl = "http://localhost:8080" - , authData = Nothing - , userInfo = Nothing - , oauth = defaultOAuthFlags , theme = Nothing } -type alias OAuthFlags = - { clientId : String - , audience : String - , state : Maybe { state : String, codeVerifier : OAuth.CodeVerifier } - } - - -defaultOAuthFlags : OAuthFlags -defaultOAuthFlags = - { clientId = "" - , audience = "" - , state = Nothing - } - - decoder : Json.Decode.Decoder Flags decoder = Json.Decode.succeed Flags |> Decode.required "now" nowDecoder |> Decode.required "baseUrl" Json.Decode.string - |> Decode.optional "authData" (Json.Decode.maybe Oidc.Model.authDataDecoder) Nothing - |> Decode.optional "userInfo" (Json.Decode.maybe Oidc.Model.userInfoDecoder) Nothing - |> Decode.required "oauth" oauthFlagsDecoder |> Decode.optional "theme" (Json.Decode.maybe Json.Decode.string) Nothing @@ -92,31 +60,6 @@ nowDecoder = |> Json.Decode.map Time.millisToPosix -oauthFlagsDecoder : Json.Decode.Decoder OAuthFlags -oauthFlagsDecoder = - Json.Decode.succeed OAuthFlags - |> Decode.required "clientId" Json.Decode.string - |> Decode.required "audience" Json.Decode.string - |> Decode.required "state" (Json.Decode.nullable oauthStateDecoder) - - -oauthStateDecoder : Json.Decode.Decoder { state : String, codeVerifier : OAuth.CodeVerifier } -oauthStateDecoder = - Json.Decode.list Json.Decode.int - |> Json.Decode.andThen - (Oidc.convertBytes >> maybeToDecoder "Failed to decode oauthState") - - -maybeToDecoder : String -> Maybe a -> Json.Decode.Decoder a -maybeToDecoder errMsg maybe = - case maybe of - Just a -> - Json.Decode.succeed a - - Nothing -> - Json.Decode.fail errMsg - - -- INIT @@ -132,46 +75,10 @@ init flagsResult route = flagsResult |> Result.withDefault defaultFlags - ( oidcAuth, oidcEffect ) = - initOidcAuth route flags.oauth flags.authData flags.userInfo flags.now - - toUser muserInfo = - case muserInfo of - Just userInfo -> - RemoteData.Success (Shared.Model.toUser userInfo) - - Nothing -> - RemoteData.Loading - - user = - case oidcAuth.flow of - Oidc.Model.Authenticated _ -> - case oidcAuth.userInfo of - Just userInfo -> - RemoteData.Success (Shared.Model.toUser userInfo) - - Nothing -> - RemoteData.Loading - - Oidc.Model.NotAuthenticated -> - case oidcAuth.userInfo of - Just userInfo -> - RemoteData.Success (Shared.Model.toUser userInfo) - - Nothing -> - RemoteData.NotAsked - - Oidc.Model.Failed err -> - RemoteData.Failure err - - _ -> - RemoteData.NotAsked - model = { now = flags.now , baseUrl = flags.baseUrl - , oidcAuth = oidcAuth - , user = user + , user = RemoteData.Loading , config = RemoteData.Loading , theme = flags.theme @@ -181,109 +88,34 @@ init flagsResult route = in ( model , Effect.batch - [ Effect.map Shared.Msg.OAuthMsg oidcEffect - , Api.getConfig + [ -- Fetch user info to check if logged in + fetchCurrentUser + , -- Fetch frontend config + Api.getConfig |> Effect.sendApi (RemoteData.fromResult >> Shared.Msg.GetConfigResponse) ] ) -initOidcAuth : Route () -> OAuthFlags -> Maybe Oidc.Model.AuthData -> Maybe Oidc.Model.UserInfo -> Time.Posix -> ( Oidc.Model.Model, Effect Oidc.Msg.Msg ) -initOidcAuth route oauth mauthData muserInfo now = - let - config = - newOidcConfiguration oauth - - redirectUri = - let - currentUrl = - route.url - in - { currentUrl | query = Nothing, fragment = Nothing, path = "/" } - - ( flow, effect ) = - mauthData - |> Maybe.map - (\auth -> - if Oidc.shouldRefreshAccessToken now config auth then - ( Oidc.Model.NotAuthenticated - , Just (Oidc.Msg.RefreshToken auth.refreshToken) - ) - - else - ( Oidc.Model.Authenticated auth - , Just Oidc.Msg.LoginSucceeded - ) - ) - |> Maybe.withDefault ( Oidc.Model.NotAuthenticated, Nothing ) - - oidcAuth = - { configuration = config - , flow = flow - , userInfo = muserInfo - , redirectUri = redirectUri +fetchCurrentUser : Effect Msg +fetchCurrentUser = + Effect.sendCmd + (Http.get + { url = "/api/v1/account/me" + , expect = Http.expectJson Shared.Msg.GotUser userDecoder } - in - case ( flow, effect ) of - ( Oidc.Model.NotAuthenticated, Just (Oidc.Msg.RefreshToken _) ) -> - ( oidcAuth, effect |> Maybe.map Effect.sendMsg |> Maybe.withDefault Effect.none ) - - ( Oidc.Model.NotAuthenticated, _ ) -> - Oidc.init oidcAuth oauth.state route.url - - _ -> - ( oidcAuth, effect |> Maybe.map Effect.sendMsg |> Maybe.withDefault Effect.none ) + ) -newOidcConfiguration : OAuthFlags -> Oidc.Model.Configuration -newOidcConfiguration { clientId, audience } = - let - protocol = - if String.startsWith "https" audience then - Https - - else - Http - - origin = - case protocol of - Https -> - String.dropLeft 8 audience - - Http -> - String.dropLeft 7 audience - - ( host, port_ ) = - case String.split ":" origin of - [ h, p ] -> - ( h, String.toInt p ) - - [ h ] -> - ( h, Nothing ) - - _ -> - ( "", Nothing ) - - baseUrl = - { protocol = protocol - , host = host - , port_ = port_ - , path = "" - , query = Nothing - , fragment = Nothing - } - in - { authorizationEndpoint = - { baseUrl | path = "/oauth/v2/authorize" } - , tokenEndpoint = - { baseUrl | path = "/oauth/v2/token" } - , userInfoEndpoint = - { baseUrl | path = "/oidc/v1/userinfo" } - , clientId = clientId - , scope = - [ "openid", "email", "profile", "offline_access" ] - , refreshThresholdSeconds = 300 -- 5 minutes - } +userDecoder : Json.Decode.Decoder Shared.Model.User +userDecoder = + Json.Decode.succeed Shared.Model.User + |> Decode.required "user_id" Json.Decode.string + |> Decode.optional "username" (Json.Decode.nullable Json.Decode.string) Nothing + |> Decode.optional "name" (Json.Decode.nullable Json.Decode.string) Nothing + |> Decode.optional "email" (Json.Decode.nullable Json.Decode.string) Nothing + |> Decode.optional "avatar_url" (Json.Decode.nullable Json.Decode.string) Nothing + |> Decode.optional "beta_access" Json.Decode.bool False @@ -302,84 +134,58 @@ update route msg model = , Effect.none ) - Shared.Msg.IncomingMsgReceived json -> - case Json.Decode.decodeValue incomingMsgDecoder json of - Ok incomingMsg -> - ( model, Effect.sendMsg incomingMsg ) - - Err _ -> - ( model, Effect.none ) - - Shared.Msg.OAuthMsg Oidc.Msg.LoginSucceeded -> - case model.oidcAuth.flow of - Oidc.Model.Authenticated authData -> - ( { model | user = RemoteData.Loading } - , Effect.batch - [ Effect.sendMsg (Shared.Msg.OAuthMsg Oidc.Msg.UserInfoRequested) - , Effect.saveAuthData authData - ] - ) - - _ -> - ( model, Effect.none ) + Shared.Msg.GotUser result -> + case result of + Ok user -> + ( { model | user = RemoteData.Success user } + , -- Redirect authenticated users from landing page to their dashboard + case route.path of + Route.Path.Home_ -> + case user.username of + Just username -> + Effect.replaceRoute + { path = Route.Path.Github_Owner_ { owner = username } + , query = route.query + , hash = route.hash + } + + Nothing -> + Effect.none - Shared.Msg.OAuthMsg Oidc.Msg.LoginCompleted -> - case model.oidcAuth.flow of - Oidc.Model.Failed err -> - ( { model | user = RemoteData.Failure err } - , Effect.none + _ -> + Effect.none ) - _ -> - case model.oidcAuth.userInfo of - Just userInfo -> - let - redirectEffect = - case route.path of - Route.Path.Home_ -> - -- Redirect authenticated users from landing page to their dashboard - case userInfo.preferred_username of - Just username -> - Effect.replaceRoute - { path = Route.Path.Github_Owner_ { owner = username } - , query = route.query - , hash = route.hash - } - - Nothing -> - Effect.none - - _ -> - Effect.none - in - ( { model | user = RemoteData.Success (Shared.Model.toUser userInfo) } - , Effect.batch - [ Effect.saveUserInfo userInfo - , redirectEffect - ] + Err err -> + case err of + Http.BadStatus 401 -> + -- Not authenticated - this is expected for non-logged-in users + ( { model | user = RemoteData.NotAsked } + , Effect.none ) - _ -> - ( model, Effect.none ) + Http.BadStatus 403 -> + -- Forbidden (no beta access) - still not authenticated for our purposes + ( { model | user = RemoteData.NotAsked } + , Effect.none + ) - Shared.Msg.OAuthMsg authMsg -> - let - ( newOidcAuth, effect ) = - Oidc.update authMsg model.oidcAuth model - in - ( { model | oidcAuth = newOidcAuth }, Effect.map Shared.Msg.OAuthMsg effect ) + _ -> + -- Actual error (network issue, server error, etc.) + ( { model | user = RemoteData.Failure err } + , Effect.none + ) Shared.Msg.SignIn -> - ( model, Effect.genRandomBytes 40 ) + -- Redirect to OAuth sign-in endpoint + ( model + , Effect.loadExternalUrl "/auth/signin/github" + ) Shared.Msg.SignOut -> + -- Redirect to OAuth sign-out endpoint ( { model | user = RemoteData.NotAsked } - , Effect.batch - [ Effect.sendMsg (Shared.Msg.OAuthMsg Oidc.Msg.Logout) - , Effect.clearAuthData - , Effect.clearUserInfo - , Effect.replaceRoutePath Route.Path.Home - ] + , Effect.loadExternalUrl "/auth/signout" ) Shared.Msg.GetConfigResponse config -> @@ -423,18 +229,6 @@ update route msg model = , Effect.setTheme themeString ) - Shared.Msg.TokenRefreshTick now -> - case model.oidcAuth.flow of - Oidc.Model.Authenticated auth -> - if Oidc.shouldRefreshAccessToken now model.oidcAuth.configuration auth then - ( model, Effect.sendMsg (Shared.Msg.OAuthMsg (Oidc.Msg.RefreshToken auth.refreshToken)) ) - - else - ( model, Effect.none ) - - _ -> - ( model, Effect.none ) - -- SUBSCRIPTIONS @@ -442,34 +236,4 @@ update route msg model = subscriptions : Route () -> Model -> Sub Msg subscriptions _ _ = - Sub.batch - [ Time.every 1000 Shared.Msg.UpdateNow - , Time.every 60000 Shared.Msg.TokenRefreshTick - , Effect.incoming Shared.Msg.IncomingMsgReceived - ] - - - --- HELPERS - - -incomingMsgDecoder : Json.Decode.Decoder Msg -incomingMsgDecoder = - Json.Decode.field "tag" Json.Decode.string - |> Json.Decode.andThen - (\tag -> - case tag of - "GOT_RANDOM_BYTES" -> - gotRandomBytesDecoder - - -- We no longer handle THEME_CHANGED events from JS - -- to avoid circular event triggering - _ -> - Json.Decode.fail ("Unknown tag: " ++ tag) - ) - - -gotRandomBytesDecoder : Json.Decode.Decoder Msg -gotRandomBytesDecoder = - Json.Decode.succeed (Oidc.Msg.GotRandomBytes >> Shared.Msg.OAuthMsg) - |> Decode.required "data" (Json.Decode.list Json.Decode.int) + Time.every 1000 Shared.Msg.UpdateNow diff --git a/frontend/src/Shared/Model.elm b/frontend/src/Shared/Model.elm index 3ed7d15..9f86d62 100644 --- a/frontend/src/Shared/Model.elm +++ b/frontend/src/Shared/Model.elm @@ -1,13 +1,19 @@ -module Shared.Model exposing (Model, Theme(..), User, themeFromString, themeToString, toUser) +module Shared.Model exposing (Model, Theme(..), User, themeFromString, themeToString) import Api.Data as Api -import Oidc.Model +import Http import RemoteData exposing (WebData) import Time type alias User = - Oidc.Model.UserInfo + { userId : String + , username : Maybe String + , name : Maybe String + , email : Maybe String + , avatarUrl : Maybe String + , betaAccess : Bool + } type Theme @@ -21,11 +27,8 @@ type alias Model = -- The base URL of the backend API , baseUrl : String - -- The current user - , user : RemoteData.RemoteData Oidc.Model.Error User - - -- OIDC auth state - , oidcAuth : Oidc.Model.Model + -- The current user (fetched from /api/v1/account/me) + , user : RemoteData.RemoteData Http.Error User -- Frontend configuration from backend , config : WebData Api.FrontendConfig @@ -35,11 +38,6 @@ type alias Model = } -toUser : Oidc.Model.UserInfo -> User -toUser account = - account - - themeToString : Theme -> String themeToString theme = case theme of diff --git a/frontend/src/Shared/Msg.elm b/frontend/src/Shared/Msg.elm index 50bb8f3..9ce9b1c 100644 --- a/frontend/src/Shared/Msg.elm +++ b/frontend/src/Shared/Msg.elm @@ -1,23 +1,19 @@ module Shared.Msg exposing (Msg(..)) import Api.Data as Api -import Json.Decode -import Oidc.Msg as Oidc +import Http import RemoteData exposing (WebData) -import Shared.Model exposing (Theme) +import Shared.Model exposing (Theme, User) import Time type Msg = UpdateNow Time.Posix | GetConfigResponse (WebData Api.FrontendConfig) - -- INCOMING PORT - | IncomingMsgReceived Json.Decode.Value -- AUTH - | OAuthMsg Oidc.Msg | SignIn | SignOut - | TokenRefreshTick Time.Posix + | GotUser (Result Http.Error User) -- THEME | ToggleTheme | SetTheme Theme diff --git a/frontend/src/interop.ts b/frontend/src/interop.ts index bb1d8c4..cf04630 100644 --- a/frontend/src/interop.ts +++ b/frontend/src/interop.ts @@ -26,8 +26,6 @@ function loadHighlightTheme(theme: string): void { document.head.appendChild(link); } -// No longer needed - Elm handles scroll optimization internally - // SSE Connection Manager class class SSEConnectionManager { private connections = new Map(); @@ -213,13 +211,11 @@ class SSEConnectionManager { } interface RequiredEnvVars { - OAUTH_CLIENT_ID: string; - OAUTH_AUDIENCE: string; BASE_URL: string; } function validateRequiredEnvVars(env: any): RequiredEnvVars { - const requiredVars = ["OAUTH_CLIENT_ID", "OAUTH_AUDIENCE", "BASE_URL"]; + const requiredVars = ["BASE_URL"]; const missing = requiredVars.filter((varName) => !env[varName]); if (missing.length > 0) { @@ -229,8 +225,6 @@ function validateRequiredEnvVars(env: any): RequiredEnvVars { } return { - OAUTH_CLIENT_ID: env.OAUTH_CLIENT_ID, - OAUTH_AUDIENCE: env.OAUTH_AUDIENCE, BASE_URL: env.BASE_URL, }; } @@ -241,23 +235,11 @@ function validateRequiredEnvVars(env: any): RequiredEnvVars { // into your `Shared.init` function. export const flags = ({ env }: { env: any }): any => { let validatedEnv = validateRequiredEnvVars(env); - - let oauth = { - clientId: validatedEnv.OAUTH_CLIENT_ID, - audience: validatedEnv.OAUTH_AUDIENCE, - state: rememberedBytes(), - }; - - let authData = getAuthData(); - let userInfo = getUserInfo(); let theme = getTheme(); return { now: Date.now(), baseUrl: validatedEnv.BASE_URL, - authData, - userInfo, - oauth, theme, }; }; @@ -514,13 +496,6 @@ export const onReady = ({ app, env }: { app: any; env: any }): void => { app.ports.outgoing.subscribe( ({ tag, data }: { tag: string; data: any }) => { switch (tag) { - case "GEN_RANDOM_BYTES": - const buffer = new Uint8Array(data); - crypto.getRandomValues(buffer); - const bytes = Array.from(buffer); - localStorage.setItem("bytes", JSON.stringify(bytes)); - app.ports.incoming.send({ tag: "GOT_RANDOM_BYTES", data: bytes }); - break; case "SEND_TO_LOCAL_STORAGE": localStorage.setItem(data.key, JSON.stringify(data.value)); break; @@ -539,34 +514,6 @@ export const onReady = ({ app, env }: { app: any; env: any }): void => { applyTheme(getTheme()); }; -// Fetch bytes for PKCE from local storage -function rememberedBytes(): number[] | null { - const bytes = localStorage.getItem("bytes"); - return bytes ? JSON.parse(bytes) : null; -} - -function getAuthData(): any { - try { - const rawAuthData = localStorage.getItem("authData"); - if (!rawAuthData) return null; - - const authData = JSON.parse(rawAuthData); - return authData?.token ? authData : null; - } catch (e) { - return null; - } -} - -function getUserInfo(): any { - try { - const rawUserInfo = localStorage.getItem("userInfo"); - if (!rawUserInfo) return null; - return JSON.parse(rawUserInfo); - } catch (e) { - return null; - } -} - // Theme management function getTheme(): string { const savedTheme = localStorage.getItem("theme"); diff --git a/logger/src/main.rs b/logger/src/main.rs index b29b3dd..0f2327c 100644 --- a/logger/src/main.rs +++ b/logger/src/main.rs @@ -15,8 +15,10 @@ async fn main() -> Result<(), Box> { let app = create_app(shared_state); // Start the server - let listener = TcpListener::bind("0.0.0.0:3000").await.unwrap(); - println!("Listening on http://{}", listener.local_addr().unwrap()); - axum::serve(listener, app).await.unwrap(); + let port = std::env::var("PORT").unwrap_or_else(|_| "3000".to_string()); + let addr = format!("0.0.0.0:{}", port); + let listener = TcpListener::bind(&addr).await?; + println!("Listening on http://{}", listener.local_addr()?); + axum::serve(listener, app).await?; Ok(()) } diff --git a/nix/zitadel/0001-feat-github-idp-fetch-user-emails-when-primary-is-no.patch b/nix/zitadel/0001-feat-github-idp-fetch-user-emails-when-primary-is-no.patch deleted file mode 100644 index 2d48ea4..0000000 --- a/nix/zitadel/0001-feat-github-idp-fetch-user-emails-when-primary-is-no.patch +++ /dev/null @@ -1,175 +0,0 @@ -From 9101994f16af9dce4cb12d9a73f2bd51df8c1e83 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Domen=20Ko=C5=BEar?= -Date: Mon, 24 Mar 2025 14:41:29 +0000 -Subject: [PATCH] feat(github-idp): fetch user emails when primary is not - available -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This change improves the GitHub IDP integration by fetching user emails when the primary email is not included in the profile. It prioritizes verified and primary emails when selecting which to use. - -🤖 Generated with [Claude Code](https://claude.ai/code) - -Co-Authored-By: Claude ---- - .../api/ui/login/external_provider_handler.go | 12 ++- - internal/idp/providers/github/github.go | 94 ++++++++++++++++++- - 2 files changed, 100 insertions(+), 6 deletions(-) - -diff --git a/internal/api/ui/login/external_provider_handler.go b/internal/api/ui/login/external_provider_handler.go -index 1c421a774..8fc733541 100644 ---- a/internal/api/ui/login/external_provider_handler.go -+++ b/internal/api/ui/login/external_provider_handler.go -@@ -300,14 +300,22 @@ func (l *Login) handleExternalLoginCallback(w http.ResponseWriter, r *http.Reque - l.externalAuthCallbackFailed(w, r, authReq, nil, nil, err) - return - } -- session = oauth.NewSession(provider.Provider, data.Code, authReq.SelectedIDPConfigArgs) -+ // Use the GitHub-specific session that handles email fetching -+ session = &github.Session{ -+ Session: oauth.NewSession(provider.Provider, data.Code, authReq.SelectedIDPConfigArgs), -+ Provider: provider, -+ } - case domain.IDPTypeGitHubEnterprise: - provider, err := l.githubEnterpriseProvider(r.Context(), identityProvider) - if err != nil { - l.externalAuthCallbackFailed(w, r, authReq, nil, nil, err) - return - } -- session = oauth.NewSession(provider.Provider, data.Code, authReq.SelectedIDPConfigArgs) -+ // Use the GitHub-specific session for GitHub Enterprise too -+ session = &github.Session{ -+ Session: oauth.NewSession(provider.Provider, data.Code, authReq.SelectedIDPConfigArgs), -+ Provider: provider, -+ } - case domain.IDPTypeGitLab: - provider, err := l.gitlabProvider(r.Context(), identityProvider) - if err != nil { -diff --git a/internal/idp/providers/github/github.go b/internal/idp/providers/github/github.go -index 64e02941b..656469bee 100644 ---- a/internal/idp/providers/github/github.go -+++ b/internal/idp/providers/github/github.go -@@ -1,11 +1,14 @@ - package github - - import ( -+ "context" -+ "net/http" - "strconv" - "time" - - "golang.org/x/oauth2" - "golang.org/x/text/language" -+ httphelper "github.com/zitadel/oidc/v3/pkg/http" - - "github.com/zitadel/zitadel/internal/domain" - "github.com/zitadel/zitadel/internal/idp" -@@ -13,10 +16,11 @@ import ( - ) - - const ( -- authURL = "https://github.com/login/oauth/authorize" -- tokenURL = "https://github.com/login/oauth/access_token" -- profileURL = "https://api.github.com/user" -- name = "GitHub" -+ authURL = "https://github.com/login/oauth/authorize" -+ tokenURL = "https://github.com/login/oauth/access_token" -+ profileURL = "https://api.github.com/user" -+ emailsURL = "https://api.github.com/user/emails" -+ name = "GitHub" - ) - - var _ idp.Provider = (*Provider)(nil) -@@ -51,6 +55,88 @@ type Provider struct { - *oauth.Provider - } - -+// Session is the GitHub-specific implementation of idp.Session -+type Session struct { -+ *oauth.Session -+ Provider *Provider -+} -+ -+// FetchUser extends the OAuth session's FetchUser to handle GitHub's email fetching -+func (s *Session) FetchUser(ctx context.Context) (idp.User, error) { -+ user, err := s.Session.FetchUser(ctx) -+ if err != nil { -+ return nil, err -+ } -+ -+ githubUser, ok := user.(*User) -+ if !ok { -+ return user, nil -+ } -+ -+ // If email is empty, try to fetch it from the emails endpoint -+ if githubUser.Email == "" { -+ emails, err := s.fetchEmails(ctx) -+ if err == nil && len(emails) > 0 { -+ // Find the best email in a single pass -+ var verifiedEmail string -+ -+ for _, email := range emails { -+ // Priority 1: Primary and verified -+ if email.Primary && email.Verified { -+ githubUser.Email = domain.EmailAddress(email.Email) -+ break -+ } -+ -+ // Priority 2: First verified email -+ if email.Verified && verifiedEmail == "" { -+ verifiedEmail = email.Email -+ } -+ } -+ -+ // If no primary verified email found, use first verified or first available -+ if githubUser.Email == "" { -+ if verifiedEmail != "" { -+ githubUser.Email = domain.EmailAddress(verifiedEmail) -+ } else { -+ githubUser.Email = domain.EmailAddress(emails[0].Email) -+ } -+ } -+ } -+ } -+ -+ return githubUser, nil -+} -+ -+// GitHubEmail represents an email from the GitHub API -+type GitHubEmail struct { -+ Email string `json:"email"` -+ Primary bool `json:"primary"` -+ Verified bool `json:"verified"` -+} -+ -+// fetchEmails fetches the user's emails from GitHub -+func (s *Session) fetchEmails(ctx context.Context) ([]GitHubEmail, error) { -+ if s.Tokens == nil { -+ return nil, oauth.ErrCodeMissing -+ } -+ -+ req, err := http.NewRequestWithContext(ctx, "GET", emailsURL, nil) -+ if err != nil { -+ return nil, err -+ } -+ -+ // Make sure we use the correct Authorization header format -+ req.Header.Set("Authorization", s.Tokens.TokenType+" "+s.Tokens.AccessToken) -+ req.Header.Set("Accept", "application/vnd.github.v3+json") // Use GitHub's recommended API version -+ -+ var emails []GitHubEmail -+ if err := httphelper.HttpRequest(s.Provider.RelyingParty.HttpClient(), req, &emails); err != nil { -+ return nil, err -+ } -+ -+ return emails, nil -+} -+ - func newConfig(clientID, secret, callbackURL, authURL, tokenURL string, scopes []string) *oauth2.Config { - c := &oauth2.Config{ - ClientID: clientID, --- -2.47.2 - diff --git a/nix/zitadel/0002-init-skip-creating-role-if-it-exists.patch b/nix/zitadel/0002-init-skip-creating-role-if-it-exists.patch deleted file mode 100644 index 3cc5c66..0000000 --- a/nix/zitadel/0002-init-skip-creating-role-if-it-exists.patch +++ /dev/null @@ -1,114 +0,0 @@ -From 8cf12e6d98e9c80c2b580076f94f4baa3a5e8ef6 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Domen=20Ko=C5=BEar?= -Date: Fri, 5 Sep 2025 01:27:58 +0200 -Subject: [PATCH] init: skip creating role / database if it exists - ---- - cmd/initialise/verify_database.go | 28 +++++++++++++++++++++++++ - cmd/initialise/verify_user.go | 35 +++++++++++++++++++++++++++++-- - 2 files changed, 61 insertions(+), 2 deletions(-) - -diff --git a/cmd/initialise/verify_database.go b/cmd/initialise/verify_database.go -index 3e3bea9ef..483bbae03 100644 ---- a/cmd/initialise/verify_database.go -+++ b/cmd/initialise/verify_database.go -@@ -2,6 +2,7 @@ package initialise - - import ( - "context" -+ "database/sql" - _ "embed" - "fmt" - -@@ -39,6 +40,33 @@ func VerifyDatabase(databaseName string) func(context.Context, *database.DB) err - return func(ctx context.Context, db *database.DB) error { - logging.WithFields("database", databaseName).Info("verify database") - -+ // Check if database already exists first -+ exists, err := databaseExists(ctx, db, databaseName) -+ if err != nil { -+ return fmt.Errorf("failed to check if database exists: %w", err) -+ } -+ -+ if exists { -+ logging.WithFields("database", databaseName).Info("database already exists, skipping creation") -+ return nil -+ } -+ -+ // Proceed with database creation - return exec(ctx, db, fmt.Sprintf(databaseStmt, databaseName), []string{dbAlreadyExistsCode}) - } - } -+ -+func databaseExists(ctx context.Context, db *database.DB, databaseName string) (bool, error) { -+ var exists int -+ err := db.QueryRowContext(ctx, func(row *sql.Row) error { -+ return row.Scan(&exists) -+ }, `SELECT 1 FROM pg_database WHERE datname = $1`, databaseName) -+ if err == sql.ErrNoRows { -+ return false, nil -+ } -+ if err != nil { -+ return false, err -+ } -+ -+ return true, nil -+} -diff --git a/cmd/initialise/verify_user.go b/cmd/initialise/verify_user.go -index 3adca93e5..c1b891bc8 100644 ---- a/cmd/initialise/verify_user.go -+++ b/cmd/initialise/verify_user.go -@@ -2,6 +2,7 @@ package initialise - - import ( - "context" -+ "database/sql" - _ "embed" - "fmt" - -@@ -39,10 +40,40 @@ func VerifyUser(username, password string) func(context.Context, *database.DB) e - return func(ctx context.Context, db *database.DB) error { - logging.WithFields("username", username).Info("verify user") - -+ // Check if user already exists first -+ exists, err := userExists(ctx, db, username) -+ if err != nil { -+ return fmt.Errorf("failed to check if user exists: %w", err) -+ } -+ -+ if exists { -+ logging.WithFields("username", username).Info("user already exists, skipping creation") -+ return nil -+ } -+ -+ // Proceed with user creation -+ stmt := createUserStmt - if password != "" { -- createUserStmt += " WITH PASSWORD '" + password + "'" -+ stmt += " WITH PASSWORD '" + password + "'" - } - -- return exec(ctx, db, fmt.Sprintf(createUserStmt, username), []string{roleAlreadyExistsCode}) -+ return exec(ctx, db, fmt.Sprintf(stmt, username), []string{roleAlreadyExistsCode}) -+ } -+} -+ -+func userExists(ctx context.Context, db *database.DB, username string) (bool, error) { -+ query := `SELECT 1 FROM pg_user WHERE usename = $1` -+ -+ var exists int -+ err := db.QueryRowContext(ctx, func(row *sql.Row) error { -+ return row.Scan(&exists) -+ }, query, username) -+ if err == sql.ErrNoRows { -+ return false, nil -+ } -+ if err != nil { -+ return false, err - } -+ -+ return true, nil - } --- -2.50.1 - diff --git a/nix/zitadel/console-use-local-protobuf-plugins.patch b/nix/zitadel/console-use-local-protobuf-plugins.patch deleted file mode 100644 index 8ae5518..0000000 --- a/nix/zitadel/console-use-local-protobuf-plugins.patch +++ /dev/null @@ -1,34 +0,0 @@ -From a60d2910f700f04386d3593df9144dc0536d4606 Mon Sep 17 00:00:00 2001 -From: Sander -Date: Tue, 26 Aug 2025 02:14:14 +0200 -Subject: [PATCH] nix: patch console to use local plugins - ---- - console/buf.gen.yaml | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/console/buf.gen.yaml b/console/buf.gen.yaml -index bfb5f7e51..4b5641bbd 100644 ---- a/console/buf.gen.yaml -+++ b/console/buf.gen.yaml -@@ -3,12 +3,12 @@ version: v1 - managed: - enabled: true - plugins: -- - plugin: buf.build/protocolbuffers/js:v3.21.4 -+ - plugin: js - out: src/app/proto/generated - opt: import_style=commonjs,binary -- - plugin: buf.build/grpc/web:v1.5.0 -+ - plugin: grpc-web - out: src/app/proto/generated - opt: import_style=typescript,mode=grpcweb -- - plugin: buf.build/grpc-ecosystem/openapiv2 -+ - plugin: openapiv2 - out: src/app/proto/generated -- opt: allow_delete_body -\ No newline at end of file -+ opt: allow_delete_body --- -2.50.1 - diff --git a/nix/zitadel/console.nix b/nix/zitadel/console.nix deleted file mode 100644 index 622dc5b..0000000 --- a/nix/zitadel/console.nix +++ /dev/null @@ -1,182 +0,0 @@ -{ - generateProtobufCode, - version, - zitadelRepo, -}: - -{ - stdenv, - lib, - pnpm, - nodejs, - - grpc-gateway, - protoc-gen-connect-go, - protoc-gen-grpc-web, - - pkg-config, - protobuf_27, - fetchFromGitHub, - abseil-cpp_202407, - - buf, -}: - -let - # Fix protobuf_29 builds. This is fixed in nixpkgs-unstable. - protobuf = protobuf_27.override { - abseil-cpp = abseil-cpp_202407; - }; - - # Build our own protoc-gen-js to get a working zitadel on macOS. - # The upstream bazel build is broken. - protoc-gen-js-custom = stdenv.mkDerivation (finalAttrs: { - pname = "protoc-gen-js"; - version = "3.21.4"; - - src = fetchFromGitHub { - owner = "protocolbuffers"; - repo = "protobuf-javascript"; - rev = "v${finalAttrs.version}"; - hash = "sha256-eIOtVRnHv2oz4xuVc4aL6JmhpvlODQjXHt1eJHsjnLg="; - }; - - nativeBuildInputs = [ - pkg-config - stdenv.cc - ]; - - buildInputs = [ - protobuf - protobuf.passthru.abseil-cpp - ]; - - buildPhase = '' - runHook preBuild - - $CXX -std=c++17 \ - -I. \ - $(pkg-config --cflags protobuf) \ - generator/*.cc \ - -o protoc-gen-js \ - $(pkg-config --libs protobuf) \ - -lprotoc - - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - - install -Dm755 protoc-gen-js $out/bin/protoc-gen-js - - runHook postInstall - ''; - }); - - consoleProtobufGenerated = generateProtobufCode { - pname = "zitadel-console"; - inherit version; - nativeBuildInputs = [ - grpc-gateway - protoc-gen-connect-go - protoc-gen-grpc-web - protoc-gen-js-custom - ]; - workDir = "console"; - bufArgs = "../proto --include-imports --include-wkt"; - outputPath = "src/app/proto"; - hash = "sha256-2wIOIbfl2kI51HoXrCqiTI3AVAArHadU8iPxQUojKyo="; - }; - - zitadelProtobufGenerated = generateProtobufCode { - pname = "zitadel-proto"; - inherit version; - workDir = "packages/zitadel-proto"; - bufArgs = "../../proto"; - outputPath = "."; - hash = "sha256-HZ3zSdYY4uzDEe73MRnwy2hXSsu8+IEw1hUsBxk/Hu0="; - }; - - client = stdenv.mkDerivation (finalAttrs: { - pname = "zitadel-client"; - inherit version; - - src = zitadelRepo; - pnpmDeps = pnpm.fetchDeps { - inherit (finalAttrs) pname version src; - fetcherVersion = 2; - hash = "sha256-67W35bs00ZTTy5z3eXc9c1I9Qi1CsfU22/BXAx2Gbp4="; - }; - - pnpmWorkspaces = [ - "@zitadel/proto" - "@zitadel/client" - ]; - - nativeBuildInputs = [ - pnpm.configHook - nodejs - buf - ]; - - preBuild = '' - cp -r ${zitadelProtobufGenerated}/{cjs,es,types} packages/zitadel-proto - ''; - - buildPhase = '' - runHook preBuild - pnpm --filter=@zitadel/client run build - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - cp -r packages/zitadel-client/dist "$out" - runHook postInstall - ''; - }); -in -stdenv.mkDerivation (finalAttrs: { - pname = "zitadel-console"; - inherit version; - - src = zitadelRepo; - - pnpmDeps = pnpm.fetchDeps { - inherit (finalAttrs) pname version src; - fetcherVersion = 2; - hash = "sha256-67W35bs00ZTTy5z3eXc9c1I9Qi1CsfU22/BXAx2Gbp4="; - }; - - pnpmWorkspaces = [ - "@zitadel/proto" - "@zitadel/client" - "console" - ]; - - nativeBuildInputs = [ - pnpm.configHook - nodejs - buf - ]; - - # Build both v1 and v2 APIs, as well as the client - preBuild = '' - cp -r ${consoleProtobufGenerated} console/src/app/proto - cp -r ${zitadelProtobufGenerated}/{cjs,es,types} packages/zitadel-proto - cp -r ${client} packages/zitadel-client/dist - ''; - - buildPhase = '' - runHook preBuild - pnpm --filter=console build - runHook postBuild - ''; - - installPhase = '' - runHook preInstall - cp -r console/dist/console "$out" - runHook postInstall - ''; -}) diff --git a/nix/zitadel/package.nix b/nix/zitadel/package.nix deleted file mode 100644 index 15a9bfa..0000000 --- a/nix/zitadel/package.nix +++ /dev/null @@ -1,174 +0,0 @@ -{ - stdenv, - buildGoModule, - callPackage, - fetchFromGitHub, - lib, - - buf, - cacert, - grpc-gateway, - protoc-gen-connect-go, - protoc-gen-go, - protoc-gen-go-grpc, - protoc-gen-validate, - sass, - statik, -}: - -let - version = "4.0.3"; - zitadelRepo = fetchFromGitHub { - owner = "zitadel"; - repo = "zitadel"; - rev = "v${version}"; - hash = "sha256-hVL0sq/s8eXz2Rb4dxAGrmZDI5NxBeMlBTqhgrcdAmE="; - }; - goModulesHash = "sha256-zW2Uai6O+fh0/904AarO0WOfjDHwBb2HpBd8hG5/t5Q="; - - buildZitadelProtocGen = - name: - buildGoModule { - pname = "protoc-gen-${name}"; - inherit version; - - src = zitadelRepo; - - proxyVendor = true; - vendorHash = goModulesHash; - - buildPhase = '' - go install internal/protoc/protoc-gen-${name}/main.go - ''; - - postInstall = '' - mv $out/bin/main $out/bin/protoc-gen-${name} - ''; - }; - - protoc-gen-authoption = buildZitadelProtocGen "authoption"; - protoc-gen-zitadel = buildZitadelProtocGen "zitadel"; - - # Buf downloads dependencies from an external repo - there doesn't seem to - # really be any good way around it. We'll use a fixed-output derivation so it - # can download what it needs, and output the relevant generated code for use - # during the main build. - generateProtobufCode = - { - pname, - version, - nativeBuildInputs ? [ ], - bufArgs ? "", - workDir ? ".", - outputPath, - hash, - }: - stdenv.mkDerivation { - pname = "${pname}-buf-generated"; - inherit version; - - src = zitadelRepo; - patches = [ ./console-use-local-protobuf-plugins.patch ]; - - nativeBuildInputs = nativeBuildInputs ++ [ - buf - cacert - ]; - - buildPhase = '' - cd ${workDir} - HOME=$TMPDIR buf generate ${bufArgs} - ''; - - installPhase = '' - cp -r ${outputPath} $out - ''; - - outputHashMode = "recursive"; - outputHashAlgo = "sha256"; - outputHash = hash; - }; - - protobufGenerated = generateProtobufCode { - pname = "zitadel"; - inherit version; - nativeBuildInputs = [ - grpc-gateway - protoc-gen-authoption - protoc-gen-connect-go - protoc-gen-go - protoc-gen-go-grpc - protoc-gen-validate - protoc-gen-zitadel - ]; - outputPath = ".artifacts"; - hash = "sha256-CkXDJDFR1aB13nB0MDw3F46zdWTT8uWvsKQLnD8UztA="; - }; -in -buildGoModule rec { - pname = "zitadel"; - inherit version; - - src = zitadelRepo; - - nativeBuildInputs = [ - sass - statik - ]; - - patches = [ - # https://github.com/zitadel/zitadel/pull/10715 - ./0001-feat-github-idp-fetch-user-emails-when-primary-is-no.patch - # https://github.com/zitadel/zitadel/pull/10716 - ./0002-init-skip-creating-role-if-it-exists.patch - ]; - - proxyVendor = true; - vendorHash = goModulesHash; - ldflags = [ "-X 'github.com/zitadel/zitadel/cmd/build.version=${version}'" ]; - - # Exclude the login app, which contains separate go acceptance tests - excludedPackages = [ "apps/login" ]; - - # Adapted from Makefile in repo, with dependency fetching and protobuf codegen - # bits removed - preBuild = '' - mkdir -p pkg/grpc - cp -r ${protobufGenerated}/grpc/github.com/zitadel/zitadel/pkg/grpc/* pkg/grpc - mkdir -p openapi/v2/zitadel - cp -r ${protobufGenerated}/grpc/zitadel/ openapi/v2/zitadel - - go generate internal/api/ui/login/static/resources/generate.go - go generate internal/api/ui/login/statik/generate.go - go generate internal/notification/statik/generate.go - go generate internal/statik/generate.go - - mkdir -p docs/apis/assets - go run internal/api/assets/generator/asset_generator.go -directory=internal/api/assets/generator/ -assets=docs/apis/assets/assets.md - - cp -r ${passthru.console}/* internal/api/ui/console/static - ''; - - doCheck = false; - - installPhase = '' - mkdir -p $out/bin - install -Dm755 $GOPATH/bin/zitadel $out/bin/ - ''; - - passthru = { - console = callPackage (import ./console.nix { - inherit generateProtobufCode version zitadelRepo; - }) { }; - }; - - meta = with lib; { - description = "Identity and access management platform"; - homepage = "https://zitadel.com/"; - downloadPage = "https://github.com/zitadel/zitadel/releases"; - platforms = platforms.linux ++ platforms.darwin; - license = licenses.asl20; - sourceProvenance = [ sourceTypes.fromSource ]; - maintainers = [ maintainers.nrabulinski ]; - }; -} diff --git a/nix/zitadel/service.nix b/nix/zitadel/service.nix deleted file mode 100644 index 098685b..0000000 --- a/nix/zitadel/service.nix +++ /dev/null @@ -1,216 +0,0 @@ -{ - pkgs, - config, - lib, - ... -}: -let - cfg = config.services.zitadel; - package = pkgs.callPackage ./package.nix { }; - - zitadel-config = pkgs.writeText "config.yaml" '' - Log: - Level: info - - Port: ${toString cfg.port} - - WebAuthNName: - - ExternalSecure: ${lib.boolToString cfg.externalTLS} - ExternalDomain: ${cfg.domain} - ExternalPort: ${toString cfg.externalPort} - TLS: - Enabled: false - - Database: - postgres: - Host: ${cfg.postgresHost} - Port: 5432 - Database: ${cfg.database} - User: - Username: ${cfg.databaseUser} - ${lib.optionalString (cfg.databasePassword != null) "Password: ${cfg.databasePassword}"} - SSL: - Mode: disable - Admin: - Username: ${cfg.databaseUser} - ${lib.optionalString (cfg.databasePassword != null) "Password: ${cfg.databasePassword}"} - SSL: - Mode: disable - - # Use the v2 login UI by default - # These are per-app controls, but are not available in terraform yet. - DefaultInstance: - Features: - LoginV2: - Required: false - # Broken - # BaseURI: "http://localhost:${toString cfg.loginUIPort}/ui/v2/login" - ''; - - zitadel-steps = pkgs.writeText "steps.yaml" '' - # https://zitadel.com/docs/self-hosting/manage/configure - FirstInstance: - # PATs are not supported by the terraform provider - MachineKeyPath: ${cfg.devenvCliKeyPath} - Org: - Name: ${cfg.organizationName} - Human: - # use the loginname root@devenv.localhost - Username: '${cfg.adminUsername}' - Password: '${cfg.adminPassword}' - Machine: - Machine: - Username: devenv-cli - Name: devenv-cli - MachineKey: - ExpirationDate: 2100-01-01T00:00:00Z - Type: 1 # 1 for JSON - ''; - - masterKeyPath = "${config.devenv.state}/zitadel/zitadel-masterkey"; -in -{ - options.services.zitadel = { - enable = lib.mkEnableOption "Zitadel identity management server"; - - package = lib.mkOption { - type = lib.types.package; - default = package; - description = "Zitadel package to use"; - }; - - port = lib.mkOption { - type = lib.types.port; - default = 9500; - description = "Port for Zitadel server"; - }; - - loginUIPort = lib.mkOption { - type = lib.types.port; - default = 3001; - description = "Port for Zitadel login UI"; - }; - - domain = lib.mkOption { - type = lib.types.str; - default = "localhost"; - description = "External domain for Zitadel"; - }; - - externalPort = lib.mkOption { - type = lib.types.port; - default = cfg.port; - description = "External port for Zitadel (can be different from internal port)"; - }; - - externalTLS = lib.mkOption { - type = lib.types.bool; - default = false; - description = "Whether to enable TLS for external connections"; - }; - - database = lib.mkOption { - type = lib.types.str; - default = "zitadel"; - description = "Database name for Zitadel"; - }; - - databaseUser = lib.mkOption { - type = lib.types.str; - default = "domen"; - description = "Database user for Zitadel"; - }; - - databasePassword = lib.mkOption { - type = lib.types.nullOr lib.types.str; - default = null; - description = "PostgreSQL password for Zitadel database"; - }; - - organizationName = lib.mkOption { - type = lib.types.str; - default = "devenv"; - description = "Organization name for Zitadel setup"; - }; - - adminUsername = lib.mkOption { - type = lib.types.str; - default = "root"; - description = "Admin username for Zitadel"; - }; - - adminPassword = lib.mkOption { - type = lib.types.str; - default = "RootPassword1!"; - description = "Admin password for Zitadel"; - }; - - postgresHost = lib.mkOption { - type = lib.types.str; - default = config.env.PGHOST; - description = "PostgreSQL host for Zitadel database"; - }; - - devenvCliKeyPath = lib.mkOption { - type = lib.types.str; - default = "${config.devenv.state}/zitadel/devenv-cli.token"; - description = "Path to devenv-cli machine key token"; - }; - - }; - - config = lib.mkIf cfg.enable { - tasks."app:devenv:zitadel:generate-masterkey" = { - exec = '' - mkdir -p ${config.devenv.state}/zitadel - tr -dc A-Za-z0-9 ${masterKeyPath} - ''; - status = '' - test -f ${masterKeyPath} - ''; - after = [ "devenv:enterShell" ]; - }; - - processes.zitadel = { - exec = '' - ${cfg.package}/bin/zitadel start-from-init \ - --config ${zitadel-config} \ - --steps ${zitadel-steps} \ - ${ - if config.container.isBuilding then "--masterkeyFromEnv" else "--masterkeyFile ${masterKeyPath}" - } - ''; - process-compose = { - depends_on.postgres.condition = "process_healthy"; - readiness_probe = { - exec.command = "${cfg.package}/bin/zitadel ready --config ${zitadel-config}"; - initial_delay_seconds = 2; - period_seconds = 10; - timeout_seconds = 4; - success_threshold = 1; - failure_threshold = 5; - }; - - # https://github.com/F1bonacc1/process-compose#-auto-restart-if-not-healthy - availability.restart = "on_failure"; - }; - }; - - processes.zitadel-login = { - exec = '' - docker run --rm --network host \ - -e ZITADEL_API_URL=http://localhost:${toString cfg.port} \ - -e NEXT_PUBLIC_BASE_PATH=/ui/v2/login \ - -e ZITADEL_SERVICE_USER_TOKEN_FILE=/app/login-client.pat \ - -e DEBUG=true \ - -e PORT=${toString cfg.loginUIPort} \ - --mount type=bind,source=${config.devenv.state}/zitadel/login-client.pat,target=/app/login-client.pat \ - ghcr.io/zitadel/zitadel-login:latest - ''; - process-compose = { - depends_on.zitadel.condition = "process_healthy"; - }; - }; - }; -} diff --git a/oauth-kit b/oauth-kit new file mode 160000 index 0000000..5633f78 --- /dev/null +++ b/oauth-kit @@ -0,0 +1 @@ +Subproject commit 5633f78695ba4f115d743b4e31135c836d55ae2f diff --git a/package.nix b/package.nix index 63a1ca0..b656a8f 100644 --- a/package.nix +++ b/package.nix @@ -1,107 +1,113 @@ { lib, + pkgs, pkgsStatic, - rustPlatform, pkg-config, - openssl, - dbus, nix, - protobuf, - llvmPackages, - boehmgc, + rustc, + cargo, + buildRustCrate ? pkgs.buildRustCrate, + defaultCrateOverrides ? pkgs.defaultCrateOverrides, }: let - # Common configuration for Rust packages - cargoLock = { - lockFile = ./Cargo.lock; - outputHashes = { - "axum-typed-websockets-0.6.0" = "sha256-uou03y7v6gtNDrt2Dcb0NcSHNfZqExWBfTYc4sx5MQY="; - "devenv-2.0.0" = "sha256-d80K5fyUthiO89Q7L8Gha+7U9q/teAxplulCbws1K5I="; - "nix-bindings-bindgen-raw-0.1.0" = "sha256-Q+HPIqzOAJ85Af/6ag2IDQ0ssOXatb/AO84pUsPIT98="; - "secretspec-0.5.0" = "sha256-YKBZcdbR62IxchnGO/Vn5hWac3phvAlE6gGeAhBS50A="; - "ser_nix-0.1.2" = "sha256-IjTsHTAEBQQ8xyDHW51wufu2mmfmiw+alVjrLrG8bkY="; - "zitadel-0.0.0-development" = "sha256-Ia2LYUi8VD30kx48pwtVAVN7ko7cOgC7okx6w4bQ1/0="; + # Override buildRustCrate to use the newer rustc from languages.rust + # The default buildRustCrate uses an older rustc which doesn't support + # APIs needed by newer crate versions like human_format 1.2.1 + buildRustCrateNew = buildRustCrate.override { + inherit rustc cargo; + }; + + # crate2nix configuration + crateConfig = pkgs.callPackage ./crate-config.nix { + inherit nix; + secretspecToml = ./secretspec.toml; + }; + + cargoNix = import ./Cargo.nix { + inherit pkgs lib; + inherit (pkgs) stdenv; + buildRustCrateForPkgs = _: buildRustCrateNew; + defaultCrateOverrides = defaultCrateOverrides // crateConfig; + release = true; + extraTargetFlags = { + tracing_unstable = true; + tokio_unstable = true; }; }; - rustCommon = { + # devenv-init needs static linking, which crate2nix doesn't support well. + # Keep it using buildRustPackage with a narrowed source. + initSrc = lib.fileset.toSource { + root = ./.; + fileset = lib.fileset.unions [ + ./Cargo.toml + ./Cargo.lock + ./init + ./backend + ./logger + ./runner + ./cloud-hypervisor-client + ./oauth-kit + ]; + }; + + # devenv-init needs fully static musl binary (runs as VM init process). + # We use pkgs.makeRustPlatform for vendoring (needs newer cargo for edition 2024) + # but override buildPhase to target musl, since the cargo build hook hardcodes + # the platform target and pkgsStatic.makeRustPlatform causes SIGSEGV in build scripts. + rustcWithMusl = rustc.override { + targets = [ "x86_64-unknown-linux-musl" ]; + }; + + staticRustPlatform = pkgs.makeRustPlatform { + rustc = rustcWithMusl; + cargo = rustcWithMusl; + }; + + musl-cc = pkgsStatic.stdenv.cc; + + devenv-init = staticRustPlatform.buildRustPackage { + pname = "devenv-init"; + version = "0.1.0"; + src = initSrc; + cargoLock = { + lockFile = ./Cargo.lock; + outputHashes = { + "axum-typed-websockets-0.6.0" = "sha256-uou03y7v6gtNDrt2Dcb0NcSHNfZqExWBfTYc4sx5MQY="; + "devenv-2.0.0" = "sha256-pf5bnn9Q99gISJK4b1Xc1RyX4SHcogUPNxz7EBMYaGs="; + "iocraft-0.7.16" = "sha256-MBwTP8HeJnXnnJqsKkrKIuSk2wxFChotwO58/1JB1js="; + "nix-bindings-bindgen-raw-0.1.0" = "sha256-rSswQdG/9/oe28Q0MTzQJ9jEGcFPEyfxVXvfmtlr71I="; + "secretspec-0.6.1" = "sha256-gOmxzGTbKWVXkv2ZPmxxGUV1LB7vOYd7BXqaVd2LaFc="; + "ser_nix-0.1.2" = "sha256-E1vPfhVDkeSt6OxYhnj8gYadUpJJDLRF5YiUkujQsCQ="; + }; + }; + auditable = false; doCheck = false; doDoc = false; - inherit cargoLock; nativeBuildInputs = [ pkg-config + musl-cc ]; - RUSTFLAGS = "--cfg tokio_unstable --cfg tracing_unstable"; + buildInputs = [ pkgsStatic.openssl ]; + # Override build/install phases to target musl directly + buildPhase = '' + runHook preBuild + export CARGO_TARGET_X86_64_UNKNOWN_LINUX_MUSL_LINKER="${musl-cc}/bin/${musl-cc.targetPrefix}cc" + export CC_x86_64_unknown_linux_musl="${musl-cc}/bin/${musl-cc.targetPrefix}cc" + cargo build --release --frozen --target x86_64-unknown-linux-musl --bin init + runHook postBuild + ''; + installPhase = '' + runHook preInstall + mkdir -p $out/bin + cp target/x86_64-unknown-linux-musl/release/init $out/bin/ + runHook postInstall + ''; }; - - # Build our init binary from the Rust code, statically linked - devenv-init = pkgsStatic.rustPlatform.buildRustPackage ( - rustCommon - // { - src = lib.cleanSource ./.; - pname = "devenv-init"; - version = "0.1.0"; - RUSTFLAGS = "-C target-feature=+crt-static"; - buildInputs = [ - pkgsStatic.openssl - ]; - cargoBuildFlags = [ - "--bin" - "init" - ]; - } - ); - - # Build the driver binary from the Rust code - devenv-driver = rustPlatform.buildRustPackage ( - rustCommon - // { - src = lib.cleanSource ./.; - pname = "devenv-driver"; - version = "0.1.0"; - nativeBuildInputs = [ - pkg-config - protobuf - rustPlatform.bindgenHook - ]; - buildInputs = [ - openssl - dbus - nix.libs.nix-expr-c - nix.libs.nix-store-c - nix.libs.nix-util-c - nix.libs.nix-flake-c - nix.libs.nix-cmd-c - nix.libs.nix-fetchers-c - boehmgc - llvmPackages.clang-unwrapped - ]; - cargoBuildFlags = [ - "--bin" - "devenv-driver" - ]; - } - ); - - # Build the backend binary from the Rust code - devenv-backend = rustPlatform.buildRustPackage ( - rustCommon - // { - src = lib.cleanSource ./.; - pname = "devenv-backend"; - version = "0.1.0"; - buildInputs = [ - openssl - dbus - ]; - cargoBuildFlags = [ - "--bin" - "devenv-backend" - ]; - } - ); in { - inherit devenv-init devenv-driver devenv-backend; + inherit devenv-init; + devenv-driver = cargoNix.workspaceMembers.devenv-runner.build; + devenv-backend = cargoNix.workspaceMembers.devenv-backend.build; } diff --git a/runner/Cargo.toml b/runner/Cargo.toml index cc379a3..9e613ca 100644 --- a/runner/Cargo.toml +++ b/runner/Cargo.toml @@ -60,14 +60,17 @@ pid1 = "0.1.4" [[bin]] name = "devenv-runner" path = "src/bin/runner.rs" +required-features = ["client"] [[bin]] name = "devenv-driver" path = "src/bin/driver.rs" +required-features = ["client"] [[bin]] name = "devenv-launcher" path = "src/bin/launcher.rs" +required-features = ["client"] # Static linking dependency still needed for other binaries [target.'cfg(target_os = "linux")'.build-dependencies] diff --git a/runner/devenv.nix b/runner/devenv.nix index 17ec483..2e58e73 100644 --- a/runner/devenv.nix +++ b/runner/devenv.nix @@ -6,9 +6,13 @@ ... }: let + rustToolchain = pkgs.rust-bin.stable.latest.default; + # Import our package definitions packages = pkgs.callPackage ../package.nix { nix = inputs.nix.packages.${pkgs.system}.nix; + rustc = rustToolchain; + cargo = rustToolchain; }; # Extract binaries inherit (packages) devenv-init devenv-driver; @@ -162,58 +166,6 @@ let ln -s ${nixStoreImage} $out/nix-store-image ''; - # Create capability-wrapping function that can be used for both binaries - mkCapWrapper = - name: originalPath: capabilities: - pkgs.writeShellScriptBin name '' - #!/usr/bin/env bash - set -e - - # Source binary path and local destination - ORIGINAL_BIN="${originalPath}" - LOCAL_BIN_DIR="$DEVENV_STATE/bin" - LOCAL_BIN="$LOCAL_BIN_DIR/${name}" - - # Create local bin directory if it doesn't exist - mkdir -p "$LOCAL_BIN_DIR" - - # Check if we need to copy the binary (doesn't exist or content differs) - if [ ! -f "$LOCAL_BIN" ] || ! cmp -s "$ORIGINAL_BIN" "$LOCAL_BIN"; then - echo "Copying ${name} to $LOCAL_BIN" - rm -f "$LOCAL_BIN" - cp "$ORIGINAL_BIN" "$LOCAL_BIN" - chmod +x "$LOCAL_BIN" - fi - - # Check if the binary has the necessary capabilities by testing if any capabilities are set - CURRENT_CAPS=$(getcap "$LOCAL_BIN" 2>/dev/null || echo "") - if [ -z "$CURRENT_CAPS" ] || ! echo "$CURRENT_CAPS" | grep -q "cap_"; then - echo "${name} needs ${capabilities} capabilities." >&2 - echo "" >&2 - echo "Please run the following command to set them:" >&2 - echo "" >&2 - echo " sudo setcap ${capabilities}=ep $LOCAL_BIN" >&2 - echo "" >&2 - exit 1 - fi - - # Execute the local binary with all arguments - exec "$LOCAL_BIN" "$@" - ''; - - # Create wrappers for both binaries - cloud-hypervisor-wrapper = - mkCapWrapper "cloud-hypervisor" "${pkgs.cloud-hypervisor}/bin/cloud-hypervisor" - "cap_net_admin,cap_sys_admin,cap_net_raw"; - - virtiofsd-wrapper = - mkCapWrapper "virtiofsd" "${pkgs.virtiofsd}/bin/virtiofsd" - "cap_chown,cap_dac_override,cap_fowner,cap_sys_admin"; - - nft-wrapper = mkCapWrapper "nft" "${pkgs.nftables}/bin/nft" "cap_net_admin"; - libcap-wrapper = mkCapWrapper "libcap" "${pkgs.libcap}/bin/tuntap" "cap_net_admin"; - - sysctl-wrapper = mkCapWrapper "sysctl" "${pkgs.procps}/bin/sysctl" "cap_net_admin,cap_sys_admin"; in { config = lib.mkMerge [ @@ -224,12 +176,14 @@ in } (lib.mkIf pkgs.stdenv.isLinux { env.RESOURCES_DIR = linuxResources; - packages = [ - cloud-hypervisor-wrapper - virtiofsd-wrapper - nft-wrapper - libcap-wrapper - sysctl-wrapper + + processes.runner.linux.capabilities = [ + "cap_net_admin" # nft, sysctl, tuntap, cloud-hypervisor + "cap_net_raw" # cloud-hypervisor + "cap_sys_admin" # cloud-hypervisor, sysctl, virtiofsd + "cap_chown" # virtiofsd + "cap_dac_override" # virtiofsd + "cap_fowner" # virtiofsd ]; outputs = { diff --git a/secretspec.toml b/secretspec.toml index 1f25349..f929068 100644 --- a/secretspec.toml +++ b/secretspec.toml @@ -5,7 +5,7 @@ revision = "1.0" # Default profile (applies to all profiles unless overridden) [profiles.default] # Database -DATABASE_URL = { description = "PostgreSQL connection string", required = true } +DATABASE_URL = { description = "PostgreSQL connection string", required = false } # Error Tracking SENTRY_DSN = { description = "Sentry error tracking DSN", required = false } @@ -13,18 +13,20 @@ SENTRY_DSN = { description = "Sentry error tracking DSN", required = false } # Analytics POSTHOG_API_KEY = { description = "PostHog analytics API key", required = false } -# GitHub App -GITHUB_APP_PRIVATE_KEY = { description = "GitHub App private key (PEM format)", required = true } -GITHUB_WEBHOOK_SECRET = { description = "GitHub webhook secret for validating payloads", required = true } +# GitHub App (https://github.com/settings/apps) +GITHUB_APP_PRIVATE_KEY = { description = "GitHub App > General > Private keys > Generate", required = true } +GITHUB_WEBHOOK_SECRET = { description = "GitHub App > General > Webhook > Secret", required = true } -ZITADEL_JWT_PROFILE = { description = "ZITADEL JWT profile to use for authentication and introspection", required = true } -ZITADEL_WEBHOOK_SECRET = { description = "ZITADEL key for signing and validating webhook payloads. Look for $DEVENV_STATE/zitadel/signing-key.txt", required = true } +# GitHub OAuth (https://github.com/settings/apps) +GITHUB_OAUTH_CLIENT_ID = { description = "GitHub App > General > Client ID", required = true } +GITHUB_OAUTH_CLIENT_SECRET = { description = "GitHub App > General > Client secrets > Generate", required = true } -[profiles.development] -DATABASE_URL = { required = false } +SESSION_SECRET = { description = "Secret key for encrypting session cookies", type = "hex", generate = { bytes = 64 } } [profiles.staging] +DATABASE_URL = { required = false } [profiles.production] +DATABASE_URL = { required = false } SENTRY_DSN = { required = true } POSTHOG_API_KEY = { required = true } diff --git a/terraform/zitadel/README.md b/terraform/zitadel/README.md deleted file mode 100644 index c591952..0000000 --- a/terraform/zitadel/README.md +++ /dev/null @@ -1,98 +0,0 @@ -# Zitadel Terraform Configuration - -This Terraform configuration bootstraps a local Zitadel instance with the necessary project, applications, and identity providers using the official Zitadel Terraform provider. - -## Prerequisites - -1. Zitadel instance running locally (ensure `devenv up` is running) -2. Access token available at `.devenv/state/zitadel/devenv-cli.token` -3. Environment variables set in `.env` file (see main README): - - `BASE_URL` - - `TF_VAR_github_client_id` - - `TF_VAR_github_client_secret` - - `TF_VAR_redirect_uris=[ "http://localhost:1234/", "/" ]` - -## Usage - -1. Navigate to the terraform directory: - - ```bash - cd terraform/zitadel - ``` - -2. If you need to reset state (e.g., after destroying Zitadel): - - ```bash - rm -f terraform.tfstate terraform.tfstate.backup - ``` - -3. Initialize Terraform: - - ```bash - terraform init - ``` - -4. Source environment variables and apply the configuration: - - ```bash - source ../../.env - terraform apply -auto-approve - ``` - -5. After successful application, save the OIDC client ID to `.env`: - - ```bash - # The output will show: oidc_client_id = "324975956655805494" - # Add or update in .env: - export OAUTH_AUDIENCE=http://localhost:9500 - export OAUTH_CLIENT_ID= - ``` - -6. Reload your shell to pick up the new environment variables: - ```bash - source .env - ``` - -## Configuration - -| Variable | Description | Default | -| --------------------------- | ----------------------------------------- | ---------------------------- | -| `zitadel_domain` | Zitadel domain (without port or protocol) | `localhost` | -| `zitadel_port` | Zitadel port | `9500` | -| `insecure` | Whether to use HTTP instead of HTTPS | `true` | -| `project_name` | Zitadel project name | `devenv` | -| `api_app_name` | API application name | `devenv-api` | -| `oidc_app_name` | OIDC application name | `devenv-oidc` | -| `state_dir` | Directory to store state files | `.devenv/state/zitadel` | -| `redirect_uris` | OIDC redirect URIs | `["http://localhost:1234/"]` | -| `post_logout_redirect_uris` | OIDC post logout redirect URIs | `["http://localhost:1234/"]` | -| `github_client_id` | GitHub OAuth client ID for IdP | `""` | -| `github_client_secret` | GitHub OAuth client secret for IdP | `""` | -| `create_org` | Whether to create a new organization | `false` | -| `existing_org_id` | ID of an existing organization to use | `"default"` | - -## Resources Created - -1. Zitadel Organization (optional) -2. Zitadel Project -3. API Application with JWT authentication -4. OIDC Application for user authentication -5. Personal Access Token for the API application -6. GitHub Identity Provider (optional) -7. Domain and Login Policies for GitHub authentication (when GitHub IdP is enabled) - -## Outputs - -| Output | Description | -| ---------------- | ------------------------------ | -| `project_id` | The Zitadel project ID | -| `api_app_id` | The API application ID | -| `oidc_client_id` | The OIDC application client ID | - -## Notes - -- This configuration requires the Zitadel instance to be already running -- The `.devenv/state/zitadel/devenv-cli.token` file must exist and contain a valid access token -- By default, resources are created in the default organization. Use `create_org = true` to create a new organization. -- GitHub IdP is created only if both client ID and secret are provided -- For more details on the Zitadel provider, see the [official documentation](https://registry.terraform.io/providers/zitadel/zitadel/latest/docs) diff --git a/terraform/zitadel/main.tf b/terraform/zitadel/main.tf deleted file mode 100644 index c36c998..0000000 --- a/terraform/zitadel/main.tf +++ /dev/null @@ -1,61 +0,0 @@ -terraform { - required_providers { - zitadel = { - source = "zitadel/zitadel" - version = "~> 2.2" - } - null = { - source = "hashicorp/null" - version = "~> 3.2" - } - local = { - source = "hashicorp/local" - version = "~> 2.5" - } - } - required_version = ">= 1.0.0" -} - -provider "zitadel" { - domain = var.zitadel_domain - insecure = var.insecure - port = var.zitadel_port - jwt_profile_file = "${var.state_dir}/devenv-cli.token" -} - -module "zitadel" { - source = "./module" - - config = { - zitadel_domain = var.zitadel_domain - zitadel_port = var.zitadel_port - insecure = var.insecure - project_name = var.project_name - api_app_name = var.api_app_name - oidc_app_name = var.oidc_app_name - state_dir = var.state_dir - redirect_uris = var.redirect_uris - post_logout_redirect_uris = var.post_logout_redirect_uris - github_client_id = var.github_client_id - github_client_secret = var.github_client_secret - org_name = var.org_name - org_domain = var.org_domain - base_url = var.base_url - } -} - -# Outputs from the module -output "project_id" { - description = "The Zitadel project ID" - value = module.zitadel.project_id -} - -output "api_app_id" { - description = "The API application ID" - value = module.zitadel.api_app_id -} - -output "oidc_client_id" { - description = "The OIDC application client ID" - value = module.zitadel.oidc_client_id -} \ No newline at end of file diff --git a/terraform/zitadel/module/actions-v2.tf b/terraform/zitadel/module/actions-v2.tf deleted file mode 100644 index f896e96..0000000 --- a/terraform/zitadel/module/actions-v2.tf +++ /dev/null @@ -1,313 +0,0 @@ -# Actions v2 configuration using HTTP provider -# This works around the limitation that the Zitadel provider doesn't support Actions v2 yet - -# Data source to read the actions admin PAT -data "local_file" "actions_admin_pat" { - filename = "${var.config.state_dir}/actions-admin.pat" - depends_on = [local_file.actions_admin_pat_file] -} - -# Search and delete all existing v2 action targets -resource "null_resource" "cleanup_all_v2_targets" { - - provisioner "local-exec" { - command = <<-EOT - echo "Searching for all existing v2 action targets..." - - # Search for all targets using the v2 API - TARGETS_RESPONSE=$(curl -s -X POST \ - -H "Content-Type: application/json" \ - -H "Accept: application/json" \ - -H "Authorization: Bearer ${data.local_file.actions_admin_pat.content}" \ - -d '{ - "pagination": { - "offset": 0, - "limit": 1000, - "asc": true - } - }' \ - "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}/v2beta/actions/targets/search") - - echo "Search response: $TARGETS_RESPONSE" - - # Extract target IDs and delete them - echo "$TARGETS_RESPONSE" | jq -r '.targets[]?.id // empty' | while read -r TARGET_ID; do - if [ ! -z "$TARGET_ID" ]; then - echo "Deleting target: $TARGET_ID" - DELETE_RESPONSE=$(curl -s -X DELETE \ - -H "Accept: application/json" \ - -H "Authorization: Bearer ${data.local_file.actions_admin_pat.content}" \ - "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}/v2beta/actions/targets/$TARGET_ID") - echo "Delete response for $TARGET_ID: $DELETE_RESPONSE" - fi - done - - # Clean up local state files - rm -f "${var.config.state_dir}/webhook-target-id.txt" - rm -f "${var.config.state_dir}/actions-v2-config.json" - rm -f "${var.config.state_dir}/signing-key.txt" - - echo "Cleanup completed" - EOT - } - - depends_on = [data.local_file.actions_admin_pat] - - triggers = { - always_run = timestamp() - } -} - -# Create single webhook target for both actions -resource "null_resource" "webhook_target" { - - provisioner "local-exec" { - command = <<-EOT - RESPONSE=$(curl -s -X POST \ - -H "Authorization: Bearer ${data.local_file.actions_admin_pat.content}" \ - -H "Content-Type: application/json" \ - -d '${jsonencode({ - name = "actions_webhook" - endpoint = "${var.config.base_url}/api/v1/zitadel/actions/webhook" - timeout = "15s" - restCall = { - interruptOnError = false - } -})}' \ - "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}/v2beta/actions/targets") - - echo "$RESPONSE" > "${var.config.state_dir}/webhook-target-response.json" - - TARGET_ID=$(echo "$RESPONSE" | jq -r '.id // empty') - if [ -z "$TARGET_ID" ]; then - echo "Failed to create webhook target: $RESPONSE" >&2 - exit 1 - fi - echo "$TARGET_ID" > "${var.config.state_dir}/webhook-target-id.txt" - - # Extract and save the signing key - SIGNING_KEY=$(echo "$RESPONSE" | jq -r '.signingKey // empty') - if [ ! -z "$SIGNING_KEY" ]; then - echo "$SIGNING_KEY" > "${var.config.state_dir}/signing-key.txt" - echo "Signing key saved to ${var.config.state_dir}/signing-key.txt" - fi - EOT - } - - provisioner "local-exec" { - when = destroy - command = <<-EOT - if [ -f "${self.triggers.state_dir}/webhook-target-id.txt" ]; then - TARGET_ID=$(cat "${self.triggers.state_dir}/webhook-target-id.txt") - curl -s -X DELETE \ - -H "Authorization: Bearer ${self.triggers.token}" \ - "${self.triggers.zitadel_url}/v2beta/actions/targets/$TARGET_ID" - rm -f "${self.triggers.state_dir}/webhook-target-id.txt" - rm -f "${self.triggers.state_dir}/webhook-target-response.json" - rm -f "${self.triggers.state_dir}/signing-key.txt" - fi - EOT - } - - depends_on = [ - data.local_file.actions_admin_pat, - null_resource.cleanup_all_v2_targets, - zitadel_instance_member.actions_admin_role - ] - - triggers = { - endpoint = "${var.config.base_url}/api/v1/zitadel/actions/webhook" - token = data.local_file.actions_admin_pat.content - state_dir = var.config.state_dir - zitadel_url = "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}" - cleanup_id = null_resource.cleanup_all_v2_targets.id - } -} - -# Create execution for RetrieveIdentityProviderIntent -resource "null_resource" "retrieve_identity_provider_intent_execution" { - - provisioner "local-exec" { - command = <<-EOT - # Wait a moment for the target file to be written - sleep 2 - - if [ ! -f "${var.config.state_dir}/webhook-target-id.txt" ]; then - echo "Error: Webhook target ID file not found after target creation" >&2 - exit 1 - fi - - TARGET_ID=$(cat "${var.config.state_dir}/webhook-target-id.txt") - if [ -z "$TARGET_ID" ]; then - echo "Error: Webhook target ID is empty" >&2 - exit 1 - fi - - echo "Creating execution for RetrieveIdentityProviderIntent with target: $TARGET_ID" - - RESPONSE=$(curl -s -X PUT \ - -H "Authorization: Bearer ${data.local_file.actions_admin_pat.content}" \ - -H "Content-Type: application/json" \ - -d "{ - \"condition\": { - \"response\": { - \"method\": \"/zitadel.user.v2.UserService/RetrieveIdentityProviderIntent\" - } - }, - \"targets\": [\"$TARGET_ID\"] - }" \ - "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}/v2beta/actions/executions") - - echo "$RESPONSE" > "${var.config.state_dir}/retrieve-identity-provider-intent-execution-response.json" - - SET_DATE=$(echo "$RESPONSE" | jq -r '.setDate // empty') - if [ -z "$SET_DATE" ]; then - echo "Failed to create RetrieveIdentityProviderIntent execution: $RESPONSE" >&2 - exit 1 - fi - echo "RetrieveIdentityProviderIntent execution created successfully at: $SET_DATE" - EOT - } - - depends_on = [null_resource.webhook_target, data.local_file.actions_admin_pat] - - triggers = { - target_id = null_resource.webhook_target.id - token = data.local_file.actions_admin_pat.content - state_dir = var.config.state_dir - zitadel_url = "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}" - method = "/zitadel.user.v2.UserService/RetrieveIdentityProviderIntent" - } -} - -# Create execution for CreateSession -resource "null_resource" "create_session_execution" { - - provisioner "local-exec" { - command = <<-EOT - # Wait a moment for the target file to be written - sleep 2 - - if [ ! -f "${var.config.state_dir}/webhook-target-id.txt" ]; then - echo "Error: Webhook target ID file not found after target creation" >&2 - exit 1 - fi - - TARGET_ID=$(cat "${var.config.state_dir}/webhook-target-id.txt") - if [ -z "$TARGET_ID" ]; then - echo "Error: Webhook target ID is empty" >&2 - exit 1 - fi - - echo "Creating execution for CreateSession with target: $TARGET_ID" - - RESPONSE=$(curl -s -X PUT \ - -H "Authorization: Bearer ${data.local_file.actions_admin_pat.content}" \ - -H "Content-Type: application/json" \ - -d "{ - \"condition\": { - \"response\": { - \"method\": \"/zitadel.session.v2.SessionService/CreateSession\" - } - }, - \"targets\": [\"$TARGET_ID\"] - }" \ - "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}/v2beta/actions/executions") - - echo "$RESPONSE" > "${var.config.state_dir}/create-session-execution-response.json" - - SET_DATE=$(echo "$RESPONSE" | jq -r '.setDate // empty') - if [ -z "$SET_DATE" ]; then - echo "Failed to create CreateSession execution: $RESPONSE" >&2 - exit 1 - fi - echo "CreateSession execution created successfully at: $SET_DATE" - EOT - } - - depends_on = [null_resource.webhook_target, data.local_file.actions_admin_pat] - - triggers = { - target_id = null_resource.webhook_target.id - token = data.local_file.actions_admin_pat.content - state_dir = var.config.state_dir - zitadel_url = "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}" - method = "/zitadel.session.v2.SessionService/CreateSession" - } -} - - -# Create execution for preuserinfo function -resource "null_resource" "preuserinfo_execution" { - - provisioner "local-exec" { - command = <<-EOT - # Wait a moment for the target file to be written - sleep 2 - - if [ ! -f "${var.config.state_dir}/webhook-target-id.txt" ]; then - echo "Error: Webhook target ID file not found after target creation" >&2 - exit 1 - fi - - TARGET_ID=$(cat "${var.config.state_dir}/webhook-target-id.txt") - if [ -z "$TARGET_ID" ]; then - echo "Error: Webhook target ID is empty" >&2 - exit 1 - fi - - echo "Creating execution for preuserinfo with target: $TARGET_ID" - - RESPONSE=$(curl -s -X PUT \ - -H "Authorization: Bearer ${data.local_file.actions_admin_pat.content}" \ - -H "Content-Type: application/json" \ - -d "{ - \"condition\": { - \"function\": { - \"name\": \"preuserinfo\" - } - }, - \"targets\": [\"$TARGET_ID\"] - }" \ - "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}/v2beta/actions/executions") - - echo "$RESPONSE" > "${var.config.state_dir}/preuserinfo-execution-response.json" - - SET_DATE=$(echo "$RESPONSE" | jq -r '.setDate // empty') - if [ -z "$SET_DATE" ]; then - echo "Failed to create preuserinfo execution: $RESPONSE" >&2 - exit 1 - fi - echo "Preuserinfo execution created successfully at: $SET_DATE" - EOT - } - - depends_on = [null_resource.webhook_target, data.local_file.actions_admin_pat] - - triggers = { - target_id = null_resource.webhook_target.id - token = data.local_file.actions_admin_pat.content - state_dir = var.config.state_dir - zitadel_url = "${var.config.insecure ? "http" : "https"}://${var.config.zitadel_domain}:${var.config.zitadel_port}" - function = "preuserinfo" - } -} - -# Save configuration for reference -resource "local_file" "actions_v2_config" { - - filename = "${var.config.state_dir}/actions-v2-config.json" - content = jsonencode({ - created_at = timestamp() - endpoint = "${var.config.base_url}/api/v1/zitadel/actions/webhook" - methods = { - retrieve_identity_provider_intent = "/zitadel.user.v2.UserService/RetrieveIdentityProviderIntent" - create_session = "/zitadel.session.v2.SessionService/CreateSession" - preuserinfo = "preuserinfo" - } - managed_by = "terraform" - }) - - depends_on = [null_resource.webhook_target] -} - diff --git a/terraform/zitadel/module/main.tf b/terraform/zitadel/module/main.tf deleted file mode 100644 index 887116e..0000000 --- a/terraform/zitadel/module/main.tf +++ /dev/null @@ -1,213 +0,0 @@ -terraform { - required_providers { - zitadel = { - source = "zitadel/zitadel" - version = "~> 2.2" - } - null = { - source = "hashicorp/null" - version = "~> 3.2" - } - local = { - source = "hashicorp/local" - version = "~> 2.5" - } - } - required_version = ">= 1.0.0" -} - -data "local_file" "access_token" { - filename = local.access_token_file -} - -data "zitadel_orgs" "default" { - name = var.config.org_name - name_method = "TEXT_QUERY_METHOD_EQUALS_IGNORE_CASE" - domain = var.config.org_domain - domain_method = "TEXT_QUERY_METHOD_EQUALS_IGNORE_CASE" - state = "ORG_STATE_ACTIVE" -} - -locals { - access_token_file = "${var.config.state_dir}/devenv-cli.token" - app_key_path = "${var.config.state_dir}/devenv-app-key.json" -} - -data "zitadel_org" "project_org" { - id = data.zitadel_orgs.default.ids[0] -} - -# Create the project -resource "zitadel_project" "project" { - name = var.config.project_name - org_id = data.zitadel_org.project_org.id - project_role_assertion = true -} - -# Create beta_user role for beta access control -resource "zitadel_project_role" "beta_user" { - org_id = data.zitadel_org.project_org.id - project_id = zitadel_project.project.id - role_key = "beta_user" - display_name = "Beta User" - group = "access_control" -} - -# Create the API application -resource "zitadel_application_api" "api_app" { - project_id = zitadel_project.project.id - org_id = data.zitadel_org.project_org.id - name = var.config.api_app_name - auth_method_type = "API_AUTH_METHOD_TYPE_PRIVATE_KEY_JWT" -} - -data "zitadel_machine_users" "default" { - org_id = data.zitadel_org.project_org.id - user_name = "devenv-cli" - user_name_method = "TEXT_QUERY_METHOD_EQUALS_IGNORE_CASE" -} - -data "zitadel_machine_user" "devenv_cli" { - org_id = data.zitadel_org.project_org.id - user_id = data.zitadel_machine_users.default.user_ids[0] -} - -# Create an API key for the application -resource "zitadel_application_key" "api_key" { - org_id = data.zitadel_org.project_org.id - project_id = zitadel_project.project.id - app_id = zitadel_application_api.api_app.id - key_type = "KEY_TYPE_JSON" - expiration_date = "2519-04-01T08:45:00Z" -} - -# Save the API key to file -resource "local_file" "api_key_file" { - content = zitadel_application_key.api_key.key_details - filename = local.app_key_path -} - -# Create the OIDC application -resource "zitadel_application_oidc" "oidc_app" { - project_id = zitadel_project.project.id - org_id = data.zitadel_org.project_org.id - name = var.config.oidc_app_name - redirect_uris = var.config.redirect_uris - response_types = ["OIDC_RESPONSE_TYPE_CODE"] - grant_types = ["OIDC_GRANT_TYPE_AUTHORIZATION_CODE", "OIDC_GRANT_TYPE_REFRESH_TOKEN"] - app_type = "OIDC_APP_TYPE_USER_AGENT" - auth_method_type = "OIDC_AUTH_METHOD_TYPE_NONE" - post_logout_redirect_uris = var.config.post_logout_redirect_uris - dev_mode = true - access_token_type = "OIDC_TOKEN_TYPE_BEARER" - access_token_role_assertion = false - id_token_role_assertion = false - id_token_userinfo_assertion = true - clock_skew = "0s" -} - -# Create the GitHub Identity Provider (if credentials are provided) -resource "zitadel_org_idp_github" "github" { - count = var.config.github_client_id != "" && var.config.github_client_secret != "" ? 1 : 0 - org_id = data.zitadel_org.project_org.id - name = "GitHub" - client_id = var.config.github_client_id - client_secret = var.config.github_client_secret - # https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/scopes-for-oauth-apps - scopes = ["openid", "email"] - auto_linking = "AUTO_LINKING_OPTION_EMAIL" - is_linking_allowed = true - is_creation_allowed = true - is_auto_creation = true - is_auto_update = true -} - - -# Set up domain policy to allow auth from the IdP -resource "zitadel_domain_policy" "policy" { - count = var.config.github_client_id != "" && var.config.github_client_secret != "" ? 1 : 0 - org_id = data.zitadel_org.project_org.id - user_login_must_be_domain = false - validate_org_domains = false - smtp_sender_address_matches_instance_domain = false -} - -# Enable IdP for login -resource "zitadel_login_policy" "github_login_policy" { - count = var.config.github_client_id != "" && var.config.github_client_secret != "" ? 1 : 0 - org_id = data.zitadel_org.project_org.id - user_login = true - allow_register = true - default_redirect_uri = var.config.redirect_uris[0] - allow_external_idp = true - idps = [zitadel_org_idp_github.github[0].id] - passwordless_type = "PASSWORDLESS_TYPE_ALLOWED" # TODO: what is this - force_mfa = false - force_mfa_local_only = false - password_check_lifetime = "240h0m0s" - external_login_check_lifetime = "240h0m0s" - multi_factor_check_lifetime = "24h0m0s" - mfa_init_skip_lifetime = "720h0m0s" - second_factor_check_lifetime = "24h0m0s" - hide_password_reset = false - ignore_unknown_usernames = true - allow_domain_discovery = false - disable_login_with_phone = true -} - -# Create service user for login UI -resource "zitadel_machine_user" "login_client" { - org_id = data.zitadel_org.project_org.id - user_name = "login-client" - name = "Login Client Service User" - description = "Service user for Zitadel login UI" - access_token_type = "ACCESS_TOKEN_TYPE_BEARER" -} - -# Create PAT for the login client service user -resource "zitadel_personal_access_token" "login_client_pat" { - org_id = data.zitadel_org.project_org.id - user_id = zitadel_machine_user.login_client.id - expiration_date = "2519-04-01T08:45:00Z" -} - -# Assign IAM_LOGIN_CLIENT role to the login client machine user -resource "zitadel_instance_member" "login_client_role" { - user_id = zitadel_machine_user.login_client.id - roles = ["IAM_LOGIN_CLIENT"] -} - -# Save the PAT to file -resource "local_file" "login_client_pat_file" { - content = zitadel_personal_access_token.login_client_pat.token - filename = "${var.config.state_dir}/login-client.pat" -} - -# Create service user for Actions v2 management -resource "zitadel_machine_user" "actions_admin" { - org_id = data.zitadel_org.project_org.id - user_name = "actions-admin" - name = "Actions v2 Admin Service User" - description = "Service user for managing Actions v2 targets and executions" - access_token_type = "ACCESS_TOKEN_TYPE_BEARER" -} - -# Create PAT for the actions admin service user -resource "zitadel_personal_access_token" "actions_admin_pat" { - org_id = data.zitadel_org.project_org.id - user_id = zitadel_machine_user.actions_admin.id - expiration_date = "2519-04-01T08:45:00Z" -} - -# Assign IAM_OWNER role to the actions admin machine user -resource "zitadel_instance_member" "actions_admin_role" { - user_id = zitadel_machine_user.actions_admin.id - roles = ["IAM_OWNER"] -} - -# Save the actions admin PAT to file -resource "local_file" "actions_admin_pat_file" { - content = zitadel_personal_access_token.actions_admin_pat.token - filename = "${var.config.state_dir}/actions-admin.pat" -} - diff --git a/terraform/zitadel/module/outputs.tf b/terraform/zitadel/module/outputs.tf deleted file mode 100644 index 182f844..0000000 --- a/terraform/zitadel/module/outputs.tf +++ /dev/null @@ -1,14 +0,0 @@ -output "project_id" { - description = "The Zitadel project ID" - value = zitadel_project.project.id -} - -output "api_app_id" { - description = "The API application ID" - value = zitadel_application_api.api_app.id -} - -output "oidc_client_id" { - description = "The OIDC application client ID" - value = nonsensitive(zitadel_application_oidc.oidc_app.client_id) -} \ No newline at end of file diff --git a/terraform/zitadel/module/variables.tf b/terraform/zitadel/module/variables.tf deleted file mode 100644 index 004ee39..0000000 --- a/terraform/zitadel/module/variables.tf +++ /dev/null @@ -1,19 +0,0 @@ -variable "config" { - description = "Configuration object for Zitadel module" - type = object({ - zitadel_domain = string - zitadel_port = number - insecure = bool - project_name = string - api_app_name = string - oidc_app_name = string - state_dir = string - redirect_uris = list(string) - post_logout_redirect_uris = list(string) - github_client_id = string - github_client_secret = string - org_name = string - org_domain = string - base_url = string - }) -} \ No newline at end of file diff --git a/terraform/zitadel/terraform.tfvars.example b/terraform/zitadel/terraform.tfvars.example deleted file mode 100644 index d66380d..0000000 --- a/terraform/zitadel/terraform.tfvars.example +++ /dev/null @@ -1,24 +0,0 @@ -zitadel_domain = "localhost" -zitadel_port = 9500 -insecure = true -org_name = "devenv" -org_domain = "devenv.localhost" -project_name = "devenv" -api_app_name = "devenv-api" -oidc_app_name = "devenv-oidc" -# TODO: figure out a better way to get the project root -state_dir = "../../.devenv/state/zitadel" - -# redirect_uris = [ -# "http://localhost:1234/", -# # Add your additional redirect URIs here -# ] -# post_logout_redirect_uris = [ -# "http://localhost:1234/", -# # Add your additional post logout redirect URIs here -# ] - -# Uncomment and fill these to enable GitHub IdP integration -# Or use TF_VAR_name environment variables. -# github_client_id = "" -# github_client_secret = "" diff --git a/terraform/zitadel/variables.tf b/terraform/zitadel/variables.tf deleted file mode 100644 index eb56ccb..0000000 --- a/terraform/zitadel/variables.tf +++ /dev/null @@ -1,85 +0,0 @@ -variable "zitadel_domain" { - description = "Zitadel domain (without port or protocol)" - type = string - default = "localhost" -} - -variable "zitadel_port" { - description = "Zitadel port" - type = number - default = 9500 -} - -variable "insecure" { - description = "Whether to use HTTP instead of HTTPS" - type = bool - default = true -} - -variable "project_name" { - description = "Zitadel project name" - type = string - default = "devenv" -} - -variable "api_app_name" { - description = "API application name" - type = string - default = "devenv-api" -} - -variable "oidc_app_name" { - description = "OIDC application name" - type = string - default = "devenv-oidc" -} - -variable "state_dir" { - description = "Directory to store state files" - type = string - default = ".devenv/state/zitadel" -} - -variable "redirect_uris" { - description = "OIDC redirect URIs" - type = list(string) - default = ["http://localhost:1234/"] -} - -variable "post_logout_redirect_uris" { - description = "OIDC post logout redirect URIs" - type = list(string) - default = ["http://localhost:1234/"] -} - -variable "github_client_id" { - description = "GitHub OAuth client ID for Identity Provider" - type = string - default = "" -} - -variable "github_client_secret" { - description = "GitHub OAuth client secret for Identity Provider" - type = string - default = "" - sensitive = true -} - -variable "org_name" { - description = "The name of the organization" - type = string - nullable = true - default = null -} - -variable "org_domain" { - description = "The domain of the organization" - type = string - default = "localhost" -} - -variable "base_url" { - description = "Base URL of the backend API" - type = string - default = "http://localhost:8080" -} \ No newline at end of file