git.delta.rocks / jrsonnet / refs/commits / 43c14038052d

difftreelog

refactor pending new secret commands

nwrmmvsuYaroslav Bolyukin2026-02-03parent: #1e20ff1.patch.diff
in: trunk

5 files changed

modifiedCargo.lockdiffbeforeafterboth
11 "tokio",11 "tokio",
12]12]
13
14[[package]]
15name = "addr2line"
16version = "0.25.1"
17source = "registry+https://github.com/rust-lang/crates.io-index"
18checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b"
19dependencies = [
20 "gimli",
21]
2213
23[[package]]14[[package]]
24name = "adler2"15name = "adler2"
6354
64[[package]]55[[package]]
65name = "age"56name = "age"
66version = "0.11.1"57version = "0.11.2"
67source = "registry+https://github.com/rust-lang/crates.io-index"58source = "registry+https://github.com/rust-lang/crates.io-index"
68checksum = "57fc171f4874fa10887e47088f81a55fcf030cd421aa31ec2b370cafebcc608a"59checksum = "bf640be7658959746f1f0f2faab798f6098a9436a8e18e148d18bc9875e13c4b"
69dependencies = [60dependencies = [
70 "aes",61 "aes",
71 "aes-gcm",62 "aes-gcm",
118109
119[[package]]110[[package]]
120name = "aho-corasick"111name = "aho-corasick"
121version = "1.1.3"112version = "1.1.4"
122source = "registry+https://github.com/rust-lang/crates.io-index"113source = "registry+https://github.com/rust-lang/crates.io-index"
123checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"114checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301"
124dependencies = [115dependencies = [
125 "memchr",116 "memchr",
126]117]
166157
167[[package]]158[[package]]
168name = "anstyle-query"159name = "anstyle-query"
169version = "1.1.4"160version = "1.1.5"
170source = "registry+https://github.com/rust-lang/crates.io-index"161source = "registry+https://github.com/rust-lang/crates.io-index"
171checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2"162checksum = "40c48f72fd53cd289104fc64099abca73db4166ad86ea0b4341abe65af83dadc"
172dependencies = [163dependencies = [
173 "windows-sys 0.60.2",164 "windows-sys 0.61.2",
174]165]
175166
176[[package]]167[[package]]
177name = "anstyle-wincon"168name = "anstyle-wincon"
178version = "3.0.10"169version = "3.0.11"
179source = "registry+https://github.com/rust-lang/crates.io-index"170source = "registry+https://github.com/rust-lang/crates.io-index"
180checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a"171checksum = "291e6a250ff86cd4a820112fb8898808a366d8f9f58ce16d1f538353ad55747d"
181dependencies = [172dependencies = [
182 "anstyle",173 "anstyle",
183 "once_cell_polyfill",174 "once_cell_polyfill",
184 "windows-sys 0.60.2",175 "windows-sys 0.61.2",
185]176]
186177
187[[package]]178[[package]]
192183
193[[package]]184[[package]]
194name = "arc-swap"185name = "arc-swap"
195version = "1.7.1"186version = "1.8.0"
196source = "registry+https://github.com/rust-lang/crates.io-index"187source = "registry+https://github.com/rust-lang/crates.io-index"
197checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457"188checksum = "51d03449bb8ca2cc2ef70869af31463d1ae5ccc8fa3e334b307203fbf815207e"
189dependencies = [
190 "rustversion",
191]
198192
199[[package]]193[[package]]
200name = "arrayvec"194name = "arrayvec"
269 "rustversion",263 "rustversion",
270 "serde",264 "serde",
271 "sync_wrapper",265 "sync_wrapper",
272 "tower 0.5.2",266 "tower 0.5.3",
273 "tower-layer",267 "tower-layer",
274 "tower-service",268 "tower-service",
275]269]
276270
277[[package]]271[[package]]
278name = "axum"272name = "axum"
279version = "0.8.7"273version = "0.8.8"
280source = "registry+https://github.com/rust-lang/crates.io-index"274source = "registry+https://github.com/rust-lang/crates.io-index"
281checksum = "5b098575ebe77cb6d14fc7f32749631a6e44edbef6b796f89b020e99ba20d425"275checksum = "8b52af3cb4058c895d37317bb27508dccc8e5f2d39454016b297bf4a400597b8"
282dependencies = [276dependencies = [
283 "axum-core 0.5.5",277 "axum-core 0.5.6",
284 "axum-macros",278 "axum-macros",
285 "base64 0.22.1",279 "base64 0.22.1",
286 "bytes",280 "bytes",
305 "sync_wrapper",299 "sync_wrapper",
306 "tokio",300 "tokio",
307 "tokio-tungstenite",301 "tokio-tungstenite",
308 "tower 0.5.2",302 "tower 0.5.3",
309 "tower-layer",303 "tower-layer",
310 "tower-service",304 "tower-service",
311 "tracing",305 "tracing",
333327
334[[package]]328[[package]]
335name = "axum-core"329name = "axum-core"
336version = "0.5.5"330version = "0.5.6"
337source = "registry+https://github.com/rust-lang/crates.io-index"331source = "registry+https://github.com/rust-lang/crates.io-index"
338checksum = "59446ce19cd142f8833f856eb31f3eb097812d1479ab224f54d72428ca21ea22"332checksum = "08c78f31d7b1291f7ee735c1c6780ccde7785daae9a9206026862dab7d8792d1"
339dependencies = [333dependencies = [
340 "bytes",334 "bytes",
341 "futures-core",335 "futures-core",
352346
353[[package]]347[[package]]
354name = "axum-extra"348name = "axum-extra"
355version = "0.12.2"349version = "0.12.5"
356source = "registry+https://github.com/rust-lang/crates.io-index"350source = "registry+https://github.com/rust-lang/crates.io-index"
357checksum = "dbfe9f610fe4e99cf0cfcd03ccf8c63c28c616fe714d80475ef731f3b13dd21b"351checksum = "fef252edff26ddba56bbcdf2ee3307b8129acb86f5749b68990c168a6fcc9c76"
358dependencies = [352dependencies = [
359 "axum 0.8.7",353 "axum 0.8.8",
360 "axum-core 0.5.5",354 "axum-core 0.5.6",
361 "bytes",355 "bytes",
362 "futures-core",356 "futures-core",
363 "futures-util",357 "futures-util",
383 "syn",377 "syn",
384]378]
385
386[[package]]
387name = "backtrace"
388version = "0.3.76"
389source = "registry+https://github.com/rust-lang/crates.io-index"
390checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6"
391dependencies = [
392 "addr2line",
393 "cfg-if",
394 "libc",
395 "miniz_oxide",
396 "object",
397 "rustc-demangle",
398 "windows-link 0.2.1",
399]
400379
401[[package]]380[[package]]
402name = "base64"381name = "base64"
412391
413[[package]]392[[package]]
414name = "base64ct"393name = "base64ct"
415version = "1.8.0"394version = "1.8.3"
416source = "registry+https://github.com/rust-lang/crates.io-index"395source = "registry+https://github.com/rust-lang/crates.io-index"
417checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba"396checksum = "2af50177e190e07a26ab74f8b1efbfe2ef87da2116221318cb1c2e82baf7de06"
418397
419[[package]]398[[package]]
420name = "basic-toml"399name = "basic-toml"
475454
476[[package]]455[[package]]
477name = "bitflags"456name = "bitflags"
478version = "2.9.4"457version = "2.10.0"
479source = "registry+https://github.com/rust-lang/crates.io-index"458source = "registry+https://github.com/rust-lang/crates.io-index"
480checksum = "2261d10cca569e4643e526d8dc2e62e433cc8aba21ab764233731f8d369bf394"459checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3"
481dependencies = [
482 "serde",
483]
484460
485[[package]]461[[package]]
486name = "block-buffer"462name = "block-buffer"
512488
513[[package]]489[[package]]
514name = "bumpalo"490name = "bumpalo"
515version = "3.19.0"491version = "3.19.1"
516source = "registry+https://github.com/rust-lang/crates.io-index"492source = "registry+https://github.com/rust-lang/crates.io-index"
517checksum = "46c5e41b57b8bba42a04676d81cb89e9ee8e859a1a66f80a5a72e1cb76b34d43"493checksum = "5dd9dc738b7a8311c7ade152424974d8115f2cdad61e8dab8dac9f2362298510"
518494
519[[package]]495[[package]]
520name = "bytecount"496name = "bytecount"
530506
531[[package]]507[[package]]
532name = "bytes"508name = "bytes"
533version = "1.10.1"509version = "1.11.0"
534source = "registry+https://github.com/rust-lang/crates.io-index"510source = "registry+https://github.com/rust-lang/crates.io-index"
535checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a"511checksum = "b35204fbdc0b3f4446b89fc1ac2cf84a8a68971995d0bf2e925ec7cd960f9cb3"
536512
537[[package]]513[[package]]
538name = "cbc"514name = "cbc"
545521
546[[package]]522[[package]]
547name = "cc"523name = "cc"
548version = "1.2.41"524version = "1.2.53"
549source = "registry+https://github.com/rust-lang/crates.io-index"525source = "registry+https://github.com/rust-lang/crates.io-index"
550checksum = "ac9fe6cdbb24b6ade63616c0a0688e45bb56732262c158df3c0c4bea4ca47cb7"526checksum = "755d2fce177175ffca841e9a06afdb2c4ab0f593d53b4dee48147dfaade85932"
551dependencies = [527dependencies = [
552 "find-msvc-tools",528 "find-msvc-tools",
553 "shlex",529 "shlex",
564540
565[[package]]541[[package]]
566name = "cfg-if"542name = "cfg-if"
567version = "1.0.3"543version = "1.0.4"
568source = "registry+https://github.com/rust-lang/crates.io-index"544source = "registry+https://github.com/rust-lang/crates.io-index"
569checksum = "2fd1289c04a9ea8cb22300a459a72a385d7c73d3259e2ed7dcb2af674838cfa9"545checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801"
570546
571[[package]]547[[package]]
572name = "cfg_aliases"548name = "cfg_aliases"
600576
601[[package]]577[[package]]
602name = "chrono"578name = "chrono"
603version = "0.4.42"579version = "0.4.43"
604source = "registry+https://github.com/rust-lang/crates.io-index"580source = "registry+https://github.com/rust-lang/crates.io-index"
605checksum = "145052bdd345b87320e369255277e3fb5152762ad123a901ef5c262dd38fe8d2"581checksum = "fac4744fb15ae8337dc853fee7fb3f4e48c0fbaa23d0afe49c447b4fab126118"
606dependencies = [582dependencies = [
607 "iana-time-zone",583 "iana-time-zone",
608 "js-sys",584 "js-sys",
609 "num-traits",585 "num-traits",
610 "serde",586 "serde",
611 "wasm-bindgen",587 "wasm-bindgen",
612 "windows-link 0.2.1",588 "windows-link",
613]589]
614590
615[[package]]591[[package]]
636612
637[[package]]613[[package]]
638name = "clap"614name = "clap"
639version = "4.5.48"615version = "4.5.54"
640source = "registry+https://github.com/rust-lang/crates.io-index"616source = "registry+https://github.com/rust-lang/crates.io-index"
641checksum = "e2134bb3ea021b78629caa971416385309e0131b351b25e01dc16fb54e1b5fae"617checksum = "c6e6ff9dcd79cff5cd969a17a545d79e84ab086e444102a591e288a8aa3ce394"
642dependencies = [618dependencies = [
643 "clap_builder",619 "clap_builder",
644 "clap_derive",620 "clap_derive",
645]621]
646622
647[[package]]623[[package]]
648name = "clap_builder"624name = "clap_builder"
649version = "4.5.48"625version = "4.5.54"
650source = "registry+https://github.com/rust-lang/crates.io-index"626source = "registry+https://github.com/rust-lang/crates.io-index"
651checksum = "c2ba64afa3c0a6df7fa517765e31314e983f51dda798ffba27b988194fb65dc9"627checksum = "fa42cf4d2b7a41bc8f663a7cab4031ebafa1bf3875705bfaf8466dc60ab52c00"
652dependencies = [628dependencies = [
653 "anstream",629 "anstream",
654 "anstyle",630 "anstyle",
655 "clap_lex",631 "clap_lex",
656 "strsim",632 "strsim",
657 "terminal_size",633 "terminal_size",
658 "unicase",634 "unicase",
659 "unicode-width 0.2.2",635 "unicode-width",
660]636]
661637
662[[package]]638[[package]]
663name = "clap_complete"639name = "clap_complete"
664version = "4.5.58"640version = "4.5.65"
665source = "registry+https://github.com/rust-lang/crates.io-index"641source = "registry+https://github.com/rust-lang/crates.io-index"
666checksum = "75bf0b32ad2e152de789bb635ea4d3078f6b838ad7974143e99b99f45a04af4a"642checksum = "430b4dc2b5e3861848de79627b2bedc9f3342c7da5173a14eaa5d0f8dc18ae5d"
667dependencies = [643dependencies = [
668 "clap",644 "clap",
669]645]
670646
671[[package]]647[[package]]
672name = "clap_derive"648name = "clap_derive"
673version = "4.5.47"649version = "4.5.49"
674source = "registry+https://github.com/rust-lang/crates.io-index"650source = "registry+https://github.com/rust-lang/crates.io-index"
675checksum = "bbfd7eae0b0f1a6e63d4b13c9c478de77c2eb546fba158ad50b4203dc24b9f9c"651checksum = "2a0b5487afeab2deb2ff4e03a807ad1a03ac532ff5a2cee5d86884440c7f7671"
676dependencies = [652dependencies = [
677 "heck",653 "heck",
678 "proc-macro2",654 "proc-macro2",
682658
683[[package]]659[[package]]
684name = "clap_lex"660name = "clap_lex"
685version = "0.7.5"661version = "0.7.7"
686source = "registry+https://github.com/rust-lang/crates.io-index"662source = "registry+https://github.com/rust-lang/crates.io-index"
687checksum = "b94f61472cee1439c0b966b47e3aca9ae07e45d070759512cd390ea2bebc6675"663checksum = "c3e64b0cc0439b12df2fa678eae89a1c56a529fd067a9115f7827f1fffd22b32"
688664
689[[package]]665[[package]]
690name = "codespan-reporting"666name = "codespan-reporting"
691version = "0.12.0"667version = "0.13.1"
692source = "registry+https://github.com/rust-lang/crates.io-index"668source = "registry+https://github.com/rust-lang/crates.io-index"
693checksum = "fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81"669checksum = "af491d569909a7e4dee0ad7db7f5341fef5c614d5b8ec8cf765732aba3cff681"
694dependencies = [670dependencies = [
695 "serde",671 "serde",
696 "termcolor",672 "termcolor",
697 "unicode-width 0.2.2",673 "unicode-width",
698]674]
699675
700[[package]]676[[package]]
705681
706[[package]]682[[package]]
707name = "console"683name = "console"
708version = "0.16.1"684version = "0.16.2"
709source = "registry+https://github.com/rust-lang/crates.io-index"685source = "registry+https://github.com/rust-lang/crates.io-index"
710checksum = "b430743a6eb14e9764d4260d4c0d8123087d504eeb9c48f2b2a5e810dd369df4"686checksum = "03e45a4a8926227e4197636ba97a9fc9b00477e9f4bd711395687c5f0734bec4"
711dependencies = [687dependencies = [
712 "encode_unicode",688 "encode_unicode",
713 "libc",689 "libc",
714 "once_cell",690 "once_cell",
715 "unicode-width 0.2.2",691 "unicode-width",
716 "windows-sys 0.61.2",692 "windows-sys 0.61.2",
717]693]
718694
757733
758[[package]]734[[package]]
759name = "crypto-common"735name = "crypto-common"
760version = "0.1.6"736version = "0.1.7"
761source = "registry+https://github.com/rust-lang/crates.io-index"737source = "registry+https://github.com/rust-lang/crates.io-index"
762checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3"738checksum = "78c8292055d1c1df0cce5d180393dc8cce0abec0a7102adb6c7b1eef6016d60a"
763dependencies = [739dependencies = [
764 "generic-array",740 "generic-array",
765 "rand_core 0.6.4",741 "rand_core 0.6.4",
810786
811[[package]]787[[package]]
812name = "cxx"788name = "cxx"
813version = "1.0.186"789version = "1.0.194"
814source = "registry+https://github.com/rust-lang/crates.io-index"790source = "registry+https://github.com/rust-lang/crates.io-index"
815checksum = "4e9c4fe7f2f5dc5c62871a1b43992d197da6fa1394656a94276ac2894a90a6fe"791checksum = "747d8437319e3a2f43d93b341c137927ca70c0f5dabeea7a005a73665e247c7e"
816dependencies = [792dependencies = [
817 "cc",793 "cc",
818 "cxx-build",794 "cxx-build",
825801
826[[package]]802[[package]]
827name = "cxx-build"803name = "cxx-build"
828version = "1.0.186"804version = "1.0.194"
829source = "registry+https://github.com/rust-lang/crates.io-index"805source = "registry+https://github.com/rust-lang/crates.io-index"
830checksum = "b5cf2909d37d80633ddd208676fc27c2608a7f035fff69c882421168038b26dd"806checksum = "b0f4697d190a142477b16aef7da8a99bfdc41e7e8b1687583c0d23a79c7afc1e"
831dependencies = [807dependencies = [
832 "cc",808 "cc",
833 "codespan-reporting",809 "codespan-reporting",
834 "indexmap 2.11.4",810 "indexmap 2.13.0",
835 "proc-macro2",811 "proc-macro2",
836 "quote",812 "quote",
837 "scratch",813 "scratch",
840816
841[[package]]817[[package]]
842name = "cxxbridge-cmd"818name = "cxxbridge-cmd"
843version = "1.0.186"819version = "1.0.194"
844source = "registry+https://github.com/rust-lang/crates.io-index"820source = "registry+https://github.com/rust-lang/crates.io-index"
845checksum = "077f5ee3d3bfd8d27f83208fdaa96ddd50af7f096c77077cc4b94da10bfacefd"821checksum = "d0956799fa8678d4c50eed028f2de1c0552ae183c76e976cf7ca8c4e36a7c328"
846dependencies = [822dependencies = [
847 "clap",823 "clap",
848 "codespan-reporting",824 "codespan-reporting",
849 "indexmap 2.11.4",825 "indexmap 2.13.0",
850 "proc-macro2",826 "proc-macro2",
851 "quote",827 "quote",
852 "syn",828 "syn",
853]829]
854830
855[[package]]831[[package]]
856name = "cxxbridge-flags"832name = "cxxbridge-flags"
857version = "1.0.186"833version = "1.0.194"
858source = "registry+https://github.com/rust-lang/crates.io-index"834source = "registry+https://github.com/rust-lang/crates.io-index"
859checksum = "b0108748615125b9f2e915dfafdffcbdabbca9b15102834f6d7e9a768f2f2864"835checksum = "23384a836ab4f0ad98ace7e3955ad2de39de42378ab487dc28d3990392cb283a"
860836
861[[package]]837[[package]]
862name = "cxxbridge-macro"838name = "cxxbridge-macro"
863version = "1.0.186"839version = "1.0.194"
864source = "registry+https://github.com/rust-lang/crates.io-index"840source = "registry+https://github.com/rust-lang/crates.io-index"
865checksum = "e6e896681ef9b8dc462cfa6961d61909704bde0984b30bcb4082fe102b478890"841checksum = "e6acc6b5822b9526adfb4fc377b67128fdd60aac757cc4a741a6278603f763cf"
866dependencies = [842dependencies = [
867 "indexmap 2.11.4",843 "indexmap 2.13.0",
868 "proc-macro2",844 "proc-macro2",
869 "quote",845 "quote",
870 "rustversion",
871 "syn",846 "syn",
872]847]
873848
874[[package]]849[[package]]
875name = "data-encoding"850name = "data-encoding"
876version = "2.9.0"851version = "2.10.0"
877source = "registry+https://github.com/rust-lang/crates.io-index"852source = "registry+https://github.com/rust-lang/crates.io-index"
878checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476"853checksum = "d7a1e2f27636f116493b8b860f5546edb47c8d8f8ea73e1d2a20be88e28d1fea"
879854
880[[package]]855[[package]]
881name = "der"856name = "der"
889864
890[[package]]865[[package]]
891name = "deranged"866name = "deranged"
892version = "0.5.4"867version = "0.5.5"
893source = "registry+https://github.com/rust-lang/crates.io-index"868source = "registry+https://github.com/rust-lang/crates.io-index"
894checksum = "a41953f86f8a05768a6cda24def994fd2f424b04ec5c719cf89989779f199071"869checksum = "ececcb659e7ba858fb4f10388c250a7252eb0a27373f1a72b8748afdd248e587"
895dependencies = [870dependencies = [
896 "powerfmt",871 "powerfmt",
897 "serde_core",872 "serde_core",
958933
959[[package]]934[[package]]
960name = "env_filter"935name = "env_filter"
961version = "0.1.3"936version = "0.1.4"
962source = "registry+https://github.com/rust-lang/crates.io-index"937source = "registry+https://github.com/rust-lang/crates.io-index"
963checksum = "186e05a59d4c50738528153b83b0b0194d3a29507dfec16eccd4b342903397d0"938checksum = "1bf3c259d255ca70051b30e2e95b5446cdb8949ac4cd22c0d7fd634d89f568e2"
964dependencies = [939dependencies = [
965 "log",940 "log",
966]941]
1016991
1017[[package]]992[[package]]
1018name = "find-msvc-tools"993name = "find-msvc-tools"
1019version = "0.1.4"994version = "0.1.8"
1020source = "registry+https://github.com/rust-lang/crates.io-index"995source = "registry+https://github.com/rust-lang/crates.io-index"
1021checksum = "52051878f80a721bb68ebfbc930e07b65ba72f2da88968ea5c06fd6ca3d3a127"996checksum = "8591b0bcc8a98a64310a2fae1bb3e9b8564dd10e381e6e28010fde8e8e8568db"
1022997
1023[[package]]998[[package]]
1024name = "fixedbitset"999name = "fixedbitset"
10281003
1029[[package]]1004[[package]]
1030name = "flate2"1005name = "flate2"
1031version = "1.1.4"1006version = "1.1.8"
1032source = "registry+https://github.com/rust-lang/crates.io-index"1007source = "registry+https://github.com/rust-lang/crates.io-index"
1033checksum = "dc5a4e564e38c699f2880d3fda590bedc2e69f3f84cd48b457bd892ce61d0aa9"1008checksum = "b375d6465b98090a5f25b1c7703f3859783755aa9a80433b36e0379a3ec2f369"
1034dependencies = [1009dependencies = [
1035 "crc32fast",1010 "crc32fast",
1036 "miniz_oxide",1011 "miniz_oxide",
1070 "shlex",1045 "shlex",
1071 "tabled",1046 "tabled",
1072 "tempfile",1047 "tempfile",
1073 "thiserror 2.0.17",1048 "thiserror 2.0.18",
1074 "time",1049 "time",
1075 "tokio",1050 "tokio",
1076 "tokio-util",1051 "tokio-util",
1103 "serde_json",1078 "serde_json",
1104 "tabled",1079 "tabled",
1105 "tempfile",1080 "tempfile",
1106 "thiserror 2.0.17",1081 "thiserror 2.0.18",
1107 "time",1082 "time",
1108 "tokio",1083 "tokio",
1109 "tokio-util",1084 "tokio-util",
11791154
1180[[package]]1155[[package]]
1181name = "fluent-langneg"1156name = "fluent-langneg"
1182version = "0.13.0"1157version = "0.13.1"
1183source = "registry+https://github.com/rust-lang/crates.io-index"1158source = "registry+https://github.com/rust-lang/crates.io-index"
1184checksum = "2c4ad0989667548f06ccd0e306ed56b61bd4d35458d54df5ec7587c0e8ed5e94"1159checksum = "7eebbe59450baee8282d71676f3bfed5689aeab00b27545e83e5f14b1195e8b0"
1185dependencies = [1160dependencies = [
1186 "unic-langid",1161 "unic-langid",
1187]1162]
13071282
1308[[package]]1283[[package]]
1309name = "generic-array"1284name = "generic-array"
1310version = "0.14.8"1285version = "0.14.7"
1311source = "registry+https://github.com/rust-lang/crates.io-index"1286source = "registry+https://github.com/rust-lang/crates.io-index"
1312checksum = "1dc8f7d2ded5f9209535e4b3fd4d39c002f30902ff5ce9f64e2c33d549576500"1287checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
1313dependencies = [1288dependencies = [
1314 "typenum",1289 "typenum",
1315 "version_check",1290 "version_check",
1316]1291]
13171292
1318[[package]]1293[[package]]
1319name = "getrandom"1294name = "getrandom"
1320version = "0.2.16"1295version = "0.2.17"
1321source = "registry+https://github.com/rust-lang/crates.io-index"1296source = "registry+https://github.com/rust-lang/crates.io-index"
1322checksum = "335ff9f135e4384c8150d6f27c6daed433577f86b4750418338c01a1a2528592"1297checksum = "ff2abc00be7fca6ebc474524697ae276ad847ad0a6b3faa4bcb027e9a4614ad0"
1323dependencies = [1298dependencies = [
1324 "cfg-if",1299 "cfg-if",
1325 "libc",1300 "libc",
1326 "wasi 0.11.1+wasi-snapshot-preview1",1301 "wasi",
1327]1302]
13281303
1329[[package]]1304[[package]]
1330name = "getrandom"1305name = "getrandom"
1331version = "0.3.3"1306version = "0.3.4"
1332source = "registry+https://github.com/rust-lang/crates.io-index"1307source = "registry+https://github.com/rust-lang/crates.io-index"
1333checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4"1308checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd"
1334dependencies = [1309dependencies = [
1335 "cfg-if",1310 "cfg-if",
1336 "libc",1311 "libc",
1337 "r-efi",1312 "r-efi",
1338 "wasi 0.14.7+wasi-0.2.4",1313 "wasip2",
1339]1314]
13401315
1341[[package]]1316[[package]]
1348 "polyval",1323 "polyval",
1349]1324]
1350
1351[[package]]
1352name = "gimli"
1353version = "0.32.3"
1354source = "registry+https://github.com/rust-lang/crates.io-index"
1355checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7"
13561325
1357[[package]]1326[[package]]
1358name = "glob"1327name = "glob"
13621331
1363[[package]]1332[[package]]
1364name = "h2"1333name = "h2"
1365version = "0.4.12"1334version = "0.4.13"
1366source = "registry+https://github.com/rust-lang/crates.io-index"1335source = "registry+https://github.com/rust-lang/crates.io-index"
1367checksum = "f3c0b69cfcb4e1b9f1bf2f53f95f766e4661169728ec61cd3fe5a0166f2d1386"1336checksum = "2f44da3a8150a6703ed5d34e164b875fd14c2cdab9af1252a9a1020bde2bdc54"
1368dependencies = [1337dependencies = [
1369 "atomic-waker",1338 "atomic-waker",
1370 "bytes",1339 "bytes",
1371 "fnv",1340 "fnv",
1372 "futures-core",1341 "futures-core",
1373 "futures-sink",1342 "futures-sink",
1374 "http",1343 "http",
1375 "indexmap 2.11.4",1344 "indexmap 2.13.0",
1376 "slab",1345 "slab",
1377 "tokio",1346 "tokio",
1378 "tokio-util",1347 "tokio-util",
13871356
1388[[package]]1357[[package]]
1389name = "hashbrown"1358name = "hashbrown"
1390version = "0.16.0"1359version = "0.16.1"
1391source = "registry+https://github.com/rust-lang/crates.io-index"1360source = "registry+https://github.com/rust-lang/crates.io-index"
1392checksum = "5419bdc4f6a9207fbeba6d11b604d481addf78ecd10c11ad51e76c2f6482748d"1361checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
13931362
1394[[package]]1363[[package]]
1395name = "headers"1364name = "headers"
14471416
1448[[package]]1417[[package]]
1449name = "home"1418name = "home"
1450version = "0.5.11"1419version = "0.5.12"
1451source = "registry+https://github.com/rust-lang/crates.io-index"1420source = "registry+https://github.com/rust-lang/crates.io-index"
1452checksum = "589533453244b0995c858700322199b2becb13b627df2851f64a2775d024abcf"1421checksum = "cc627f471c528ff0c4a49e1d5e60450c8f6461dd6d10ba9dcd3a61d3dff7728d"
1453dependencies = [1422dependencies = [
1454 "windows-sys 0.59.0",1423 "windows-sys 0.61.2",
1455]1424]
14561425
1457[[package]]1426[[package]]
1458name = "hostname"1427name = "hostname"
1459version = "0.4.1"1428version = "0.4.2"
1460source = "registry+https://github.com/rust-lang/crates.io-index"1429source = "registry+https://github.com/rust-lang/crates.io-index"
1461checksum = "a56f203cd1c76362b69e3863fd987520ac36cf70a8c92627449b2f64a8cf7d65"1430checksum = "617aaa3557aef3810a6369d0a99fac8a080891b68bd9f9812a1eeda0c0730cbd"
1462dependencies = [1431dependencies = [
1463 "cfg-if",1432 "cfg-if",
1464 "libc",1433 "libc",
1465 "windows-link 0.1.3",1434 "windows-link",
1466]1435]
14671436
1468[[package]]1437[[package]]
1469name = "http"1438name = "http"
1470version = "1.3.1"1439version = "1.4.0"
1471source = "registry+https://github.com/rust-lang/crates.io-index"1440source = "registry+https://github.com/rust-lang/crates.io-index"
1472checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565"1441checksum = "e3ba2a386d7f85a81f119ad7498ebe444d2e22c2af0b86b069416ace48b3311a"
1473dependencies = [1442dependencies = [
1474 "bytes",1443 "bytes",
1475 "fnv",
1476 "itoa",1444 "itoa",
1477]1445]
14781446
15551523
1556[[package]]1524[[package]]
1557name = "hyper-util"1525name = "hyper-util"
1558version = "0.1.17"1526version = "0.1.19"
1559source = "registry+https://github.com/rust-lang/crates.io-index"1527source = "registry+https://github.com/rust-lang/crates.io-index"
1560checksum = "3c6995591a8f1380fcb4ba966a252a4b29188d51d2b89e3a252f5305be65aea8"1528checksum = "727805d60e7938b76b826a6ef209eb70eaa1812794f9424d4a4e2d740662df5f"
1561dependencies = [1529dependencies = [
1562 "base64 0.22.1",1530 "base64 0.22.1",
1563 "bytes",1531 "bytes",
1571 "libc",1539 "libc",
1572 "percent-encoding",1540 "percent-encoding",
1573 "pin-project-lite",1541 "pin-project-lite",
1574 "socket2 0.6.0",1542 "socket2 0.6.1",
1575 "tokio",1543 "tokio",
1576 "tower-service",1544 "tower-service",
1577 "tracing",1545 "tracing",
16691637
1670[[package]]1638[[package]]
1671name = "icu_collections"1639name = "icu_collections"
1672version = "2.0.0"1640version = "2.1.1"
1673source = "registry+https://github.com/rust-lang/crates.io-index"1641source = "registry+https://github.com/rust-lang/crates.io-index"
1674checksum = "200072f5d0e3614556f94a9930d5dc3e0662a652823904c3a75dc3b0af7fee47"1642checksum = "4c6b649701667bbe825c3b7e6388cb521c23d88644678e83c0c4d0a621a34b43"
1675dependencies = [1643dependencies = [
1676 "displaydoc",1644 "displaydoc",
1677 "potential_utf",1645 "potential_utf",
16821650
1683[[package]]1651[[package]]
1684name = "icu_locale_core"1652name = "icu_locale_core"
1685version = "2.0.0"1653version = "2.1.1"
1686source = "registry+https://github.com/rust-lang/crates.io-index"1654source = "registry+https://github.com/rust-lang/crates.io-index"
1687checksum = "0cde2700ccaed3872079a65fb1a78f6c0a36c91570f28755dda67bc8f7d9f00a"1655checksum = "edba7861004dd3714265b4db54a3c390e880ab658fec5f7db895fae2046b5bb6"
1688dependencies = [1656dependencies = [
1689 "displaydoc",1657 "displaydoc",
1690 "litemap",1658 "litemap",
16951663
1696[[package]]1664[[package]]
1697name = "icu_normalizer"1665name = "icu_normalizer"
1698version = "2.0.0"1666version = "2.1.1"
1699source = "registry+https://github.com/rust-lang/crates.io-index"1667source = "registry+https://github.com/rust-lang/crates.io-index"
1700checksum = "436880e8e18df4d7bbc06d58432329d6458cc84531f7ac5f024e93deadb37979"1668checksum = "5f6c8828b67bf8908d82127b2054ea1b4427ff0230ee9141c54251934ab1b599"
1701dependencies = [1669dependencies = [
1702 "displaydoc",
1703 "icu_collections",1670 "icu_collections",
1704 "icu_normalizer_data",1671 "icu_normalizer_data",
1705 "icu_properties",1672 "icu_properties",
17101677
1711[[package]]1678[[package]]
1712name = "icu_normalizer_data"1679name = "icu_normalizer_data"
1713version = "2.0.0"1680version = "2.1.1"
1714source = "registry+https://github.com/rust-lang/crates.io-index"1681source = "registry+https://github.com/rust-lang/crates.io-index"
1715checksum = "00210d6893afc98edb752b664b8890f0ef174c8adbb8d0be9710fa66fbbf72d3"1682checksum = "7aedcccd01fc5fe81e6b489c15b247b8b0690feb23304303a9e560f37efc560a"
17161683
1717[[package]]1684[[package]]
1718name = "icu_properties"1685name = "icu_properties"
1719version = "2.0.1"1686version = "2.1.2"
1720source = "registry+https://github.com/rust-lang/crates.io-index"1687source = "registry+https://github.com/rust-lang/crates.io-index"
1721checksum = "016c619c1eeb94efb86809b015c58f479963de65bdb6253345c1a1276f22e32b"1688checksum = "020bfc02fe870ec3a66d93e677ccca0562506e5872c650f893269e08615d74ec"
1722dependencies = [1689dependencies = [
1723 "displaydoc",
1724 "icu_collections",1690 "icu_collections",
1725 "icu_locale_core",1691 "icu_locale_core",
1726 "icu_properties_data",1692 "icu_properties_data",
1727 "icu_provider",1693 "icu_provider",
1728 "potential_utf",
1729 "zerotrie",1694 "zerotrie",
1730 "zerovec",1695 "zerovec",
1731]1696]
17321697
1733[[package]]1698[[package]]
1734name = "icu_properties_data"1699name = "icu_properties_data"
1735version = "2.0.1"1700version = "2.1.2"
1736source = "registry+https://github.com/rust-lang/crates.io-index"1701source = "registry+https://github.com/rust-lang/crates.io-index"
1737checksum = "298459143998310acd25ffe6810ed544932242d3f07083eee1084d83a71bd632"1702checksum = "616c294cf8d725c6afcd8f55abc17c56464ef6211f9ed59cccffe534129c77af"
17381703
1739[[package]]1704[[package]]
1740name = "icu_provider"1705name = "icu_provider"
1741version = "2.0.0"1706version = "2.1.1"
1742source = "registry+https://github.com/rust-lang/crates.io-index"1707source = "registry+https://github.com/rust-lang/crates.io-index"
1743checksum = "03c80da27b5f4187909049ee2d72f276f0d9f99a42c306bd0131ecfe04d8e5af"1708checksum = "85962cf0ce02e1e0a629cc34e7ca3e373ce20dda4c4d7294bbd0bf1fdb59e614"
1744dependencies = [1709dependencies = [
1745 "displaydoc",1710 "displaydoc",
1746 "icu_locale_core",1711 "icu_locale_core",
1747 "stable_deref_trait",
1748 "tinystr",
1749 "writeable",1712 "writeable",
1750 "yoke",1713 "yoke",
1751 "zerofrom",1714 "zerofrom",
17861749
1787[[package]]1750[[package]]
1788name = "indexmap"1751name = "indexmap"
1789version = "2.11.4"1752version = "2.13.0"
1790source = "registry+https://github.com/rust-lang/crates.io-index"1753source = "registry+https://github.com/rust-lang/crates.io-index"
1791checksum = "4b0f83760fb341a774ed326568e19f5a863af4a952def8c39f9ab92fd95b88e5"1754checksum = "7714e70437a7dc3ac8eb7e6f8df75fd8eb422675fc7678aff7364301092b1017"
1792dependencies = [1755dependencies = [
1793 "equivalent",1756 "equivalent",
1794 "hashbrown 0.16.0",1757 "hashbrown 0.16.1",
1795]1758]
17961759
1797[[package]]1760[[package]]
1798name = "indicatif"1761name = "indicatif"
1799version = "0.18.0"1762version = "0.18.3"
1800source = "registry+https://github.com/rust-lang/crates.io-index"1763source = "registry+https://github.com/rust-lang/crates.io-index"
1801checksum = "70a646d946d06bedbbc4cac4c218acf4bbf2d87757a784857025f4d447e4e1cd"1764checksum = "9375e112e4b463ec1b1c6c011953545c65a30164fbab5b581df32b3abf0dcb88"
1802dependencies = [1765dependencies = [
1803 "console",1766 "console",
1804 "portable-atomic",1767 "portable-atomic",
1805 "unicode-width 0.2.2",1768 "unicode-width",
1806 "unit-prefix",1769 "unit-prefix",
1807 "vt100",1770 "vt100",
1808 "web-time",1771 "web-time",
1809]1772]
18101773
1811[[package]]1774[[package]]
1812name = "indoc"1775name = "indoc"
1813version = "2.0.6"1776version = "2.0.7"
1814source = "registry+https://github.com/rust-lang/crates.io-index"1777source = "registry+https://github.com/rust-lang/crates.io-index"
1815checksum = "f4c7245a08504955605670dbf141fceab975f15ca21570696aebe9d2e71576bd"1778checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706"
1779dependencies = [
1780 "rustversion",
1781]
18161782
1817[[package]]1783[[package]]
1818name = "inout"1784name = "inout"
1843 "unic-langid",1809 "unic-langid",
1844]1810]
1845
1846[[package]]
1847name = "io-uring"
1848version = "0.7.10"
1849source = "registry+https://github.com/rust-lang/crates.io-index"
1850checksum = "046fa2d4d00aea763528b4950358d0ead425372445dc8ff86312b3c69ff7727b"
1851dependencies = [
1852 "bitflags",
1853 "cfg-if",
1854 "libc",
1855]
18561811
1857[[package]]1812[[package]]
1858name = "io_tee"1813name = "io_tee"
18681823
1869[[package]]1824[[package]]
1870name = "iri-string"1825name = "iri-string"
1871version = "0.7.8"1826version = "0.7.10"
1872source = "registry+https://github.com/rust-lang/crates.io-index"1827source = "registry+https://github.com/rust-lang/crates.io-index"
1873checksum = "dbc5ebe9c3a1a7a5127f920a418f7585e9e758e911d0466ed004f393b0e380b2"1828checksum = "c91338f0783edbd6195decb37bae672fd3b165faffb89bf7b9e6942f8b1a731a"
1874dependencies = [1829dependencies = [
1875 "memchr",1830 "memchr",
1876 "serde",1831 "serde",
1877]1832]
18781833
1879[[package]]1834[[package]]
1880name = "is_terminal_polyfill"1835name = "is_terminal_polyfill"
1881version = "1.70.1"1836version = "1.70.2"
1882source = "registry+https://github.com/rust-lang/crates.io-index"1837source = "registry+https://github.com/rust-lang/crates.io-index"
1883checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf"1838checksum = "a6cb138bb79a146c1bd460005623e142ef0181e3d0219cb493e02f7d08a35695"
18841839
1885[[package]]1840[[package]]
1886name = "itertools"1841name = "itertools"
19021857
1903[[package]]1858[[package]]
1904name = "itoa"1859name = "itoa"
1905version = "1.0.15"1860version = "1.0.17"
1906source = "registry+https://github.com/rust-lang/crates.io-index"1861source = "registry+https://github.com/rust-lang/crates.io-index"
1907checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"1862checksum = "92ecc6618181def0457392ccd0ee51198e065e016d1d527a7ac1b6dc7c1f09d2"
19081863
1909[[package]]1864[[package]]
1910name = "js-sys"1865name = "js-sys"
1911version = "0.3.81"1866version = "0.3.85"
1912source = "registry+https://github.com/rust-lang/crates.io-index"1867source = "registry+https://github.com/rust-lang/crates.io-index"
1913checksum = "ec48937a97411dcb524a265206ccd4c90bb711fca92b2792c407f268825b9305"1868checksum = "8c942ebf8e95485ca0d52d97da7c5a2c387d0e7f0ba4c35e93bfcaee045955b3"
1914dependencies = [1869dependencies = [
1915 "once_cell",1870 "once_cell",
1916 "wasm-bindgen",1871 "wasm-bindgen",
19271882
1928[[package]]1883[[package]]
1929name = "libc"1884name = "libc"
1930version = "0.2.177"1885version = "0.2.180"
1931source = "registry+https://github.com/rust-lang/crates.io-index"1886source = "registry+https://github.com/rust-lang/crates.io-index"
1932checksum = "2874a2af47a2325c2001a6e6fad9b16a53b802102b528163885171cf92b15976"1887checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc"
19331888
1934[[package]]1889[[package]]
1935name = "libloading"1890name = "libloading"
1938checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"1893checksum = "d7c4b02199fee7c5d21a5ae7d8cfa79a6ef5bb2fc834d6e9058e89c825efdc55"
1939dependencies = [1894dependencies = [
1940 "cfg-if",1895 "cfg-if",
1941 "windows-link 0.2.1",1896 "windows-link",
1942]1897]
19431898
1944[[package]]1899[[package]]
19761931
1977[[package]]1932[[package]]
1978name = "litemap"1933name = "litemap"
1979version = "0.8.0"1934version = "0.8.1"
1980source = "registry+https://github.com/rust-lang/crates.io-index"1935source = "registry+https://github.com/rust-lang/crates.io-index"
1981checksum = "241eaef5fd12c88705a01fc1066c48c4b36e0dd4377dcdc7ec3942cea7a69956"1936checksum = "6373607a59f0be73a39b6fe456b8192fcc3585f602af20751600e974dd455e77"
19821937
1983[[package]]1938[[package]]
1984name = "lock_api"1939name = "lock_api"
19911946
1992[[package]]1947[[package]]
1993name = "log"1948name = "log"
1994version = "0.4.28"1949version = "0.4.29"
1995source = "registry+https://github.com/rust-lang/crates.io-index"1950source = "registry+https://github.com/rust-lang/crates.io-index"
1996checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432"1951checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897"
19971952
1998[[package]]1953[[package]]
1999name = "matchers"1954name = "matchers"
20462001
2047[[package]]2002[[package]]
2048name = "mio"2003name = "mio"
2049version = "1.0.4"2004version = "1.1.1"
2050source = "registry+https://github.com/rust-lang/crates.io-index"2005source = "registry+https://github.com/rust-lang/crates.io-index"
2051checksum = "78bed444cc8a2160f01cbcf811ef18cac863ad68ae8ca62092e8db51d51c761c"2006checksum = "a69bcab0ad47271a0234d9422b131806bf3968021e5dc9328caf2d4cd58557fc"
2052dependencies = [2007dependencies = [
2053 "libc",2008 "libc",
2054 "wasi 0.11.1+wasi-snapshot-preview1",2009 "wasi",
2055 "windows-sys 0.59.0",2010 "windows-sys 0.61.2",
2056]2011]
20572012
2058[[package]]2013[[package]]
2087 "serde",2042 "serde",
2088 "serde_json",2043 "serde_json",
2089 "test-log",2044 "test-log",
2090 "thiserror 2.0.17",2045 "thiserror 2.0.18",
2091 "tokio",2046 "tokio",
2092 "tracing",2047 "tracing",
2093 "tracing-indicatif",2048 "tracing-indicatif",
2094 "vte 0.15.0",2049 "vte",
2095]2050]
20962051
2097[[package]]2052[[package]]
2101 "itertools 0.14.0",2056 "itertools 0.14.0",
2102 "linked-hash-map",2057 "linked-hash-map",
2103 "peg",2058 "peg",
2104 "ron",
2105 "serde",2059 "serde",
2106 "serde-transcode",2060 "serde-transcode",
2107 "serde_json",2061 "serde_json",
2108 "thiserror 2.0.17",2062 "thiserror 2.0.18",
2109]2063]
21102064
2111[[package]]2065[[package]]
21392093
2140[[package]]2094[[package]]
2141name = "num-bigint-dig"2095name = "num-bigint-dig"
2142version = "0.8.4"2096version = "0.8.6"
2143source = "registry+https://github.com/rust-lang/crates.io-index"2097source = "registry+https://github.com/rust-lang/crates.io-index"
2144checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151"2098checksum = "e661dda6640fad38e827a6d4a310ff4763082116fe217f279885c97f511bb0b7"
2145dependencies = [2099dependencies = [
2146 "byteorder",
2147 "lazy_static",2100 "lazy_static",
2148 "libm",2101 "libm",
2149 "num-integer",2102 "num-integer",
2190 "libm",2143 "libm",
2191]2144]
2192
2193[[package]]
2194name = "object"
2195version = "0.37.3"
2196source = "registry+https://github.com/rust-lang/crates.io-index"
2197checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe"
2198dependencies = [
2199 "memchr",
2200]
22012145
2202[[package]]2146[[package]]
2203name = "once_cell"2147name = "once_cell"
22072151
2208[[package]]2152[[package]]
2209name = "once_cell_polyfill"2153name = "once_cell_polyfill"
2210version = "1.70.1"2154version = "1.70.2"
2211source = "registry+https://github.com/rust-lang/crates.io-index"2155source = "registry+https://github.com/rust-lang/crates.io-index"
2212checksum = "a4895175b425cb1f87721b59f0f286c2092bd4af812243672510e1ac53e2e0ad"2156checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
22132157
2214[[package]]2158[[package]]
2215name = "opaque-debug"2159name = "opaque-debug"
22192163
2220[[package]]2164[[package]]
2221name = "openssh"2165name = "openssh"
2222version = "0.11.5"2166version = "0.11.6"
2223source = "registry+https://github.com/rust-lang/crates.io-index"2167source = "registry+https://github.com/rust-lang/crates.io-index"
2224checksum = "ea0bb128ba90e86bc55dae66031935f361cda4cbc1f011547c55a7d80079bc3e"2168checksum = "d534c4bfecb0ed71dea4db444a5922a294d15cf40e700548f27295e1feb0ef18"
2225dependencies = [2169dependencies = [
2226 "libc",2170 "libc",
2227 "once_cell",2171 "once_cell",
2228 "shell-escape",2172 "shell-escape",
2229 "tempfile",2173 "tempfile",
2230 "thiserror 2.0.17",2174 "thiserror 2.0.18",
2231 "tokio",2175 "tokio",
2232]2176]
22332177
2241 "futures-sink",2185 "futures-sink",
2242 "js-sys",2186 "js-sys",
2243 "pin-project-lite",2187 "pin-project-lite",
2244 "thiserror 2.0.17",2188 "thiserror 2.0.18",
2245 "tracing",2189 "tracing",
2246]2190]
22472191
2251dependencies = [2195dependencies = [
2252 "clap",2196 "clap",
2253 "opentelemetry-otlp",2197 "opentelemetry-otlp",
2254 "thiserror 2.0.17",2198 "thiserror 2.0.18",
2255]2199]
22562200
2257[[package]]2201[[package]]
2281 "prost",2225 "prost",
2282 "reqwest",2226 "reqwest",
2283 "serde_json",2227 "serde_json",
2284 "thiserror 2.0.17",2228 "thiserror 2.0.18",
2285 "tokio",2229 "tokio",
2286 "tonic 0.13.1",2230 "tonic 0.13.1",
2287 "tracing",2231 "tracing",
2315 "percent-encoding",2259 "percent-encoding",
2316 "rand 0.9.2",2260 "rand 0.9.2",
2317 "serde_json",2261 "serde_json",
2318 "thiserror 2.0.17",2262 "thiserror 2.0.18",
2319]2263]
23202264
2321[[package]]2265[[package]]
2332dependencies = [2276dependencies = [
2333 "bytecount",2277 "bytecount",
2334 "fnv",2278 "fnv",
2335 "unicode-width 0.2.2",2279 "unicode-width",
2336]2280]
23372281
2338[[package]]2282[[package]]
2355 "libc",2299 "libc",
2356 "redox_syscall",2300 "redox_syscall",
2357 "smallvec",2301 "smallvec",
2358 "windows-link 0.2.1",2302 "windows-link",
2359]2303]
2360
2361[[package]]
2362name = "paste"
2363version = "1.0.15"
2364source = "registry+https://github.com/rust-lang/crates.io-index"
2365checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
23662304
2367[[package]]2305[[package]]
2368name = "pbkdf2"2306name = "pbkdf2"
2424checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772"2362checksum = "3672b37090dbd86368a4145bc067582552b29c27377cad4e0a306c97f9bd7772"
2425dependencies = [2363dependencies = [
2426 "fixedbitset",2364 "fixedbitset",
2427 "indexmap 2.11.4",2365 "indexmap 2.13.0",
2428]2366]
24292367
2430[[package]]2368[[package]]
25112449
2512[[package]]2450[[package]]
2513name = "portable-atomic"2451name = "portable-atomic"
2514version = "1.11.1"2452version = "1.13.0"
2515source = "registry+https://github.com/rust-lang/crates.io-index"2453source = "registry+https://github.com/rust-lang/crates.io-index"
2516checksum = "f84267b20a16ea918e43c6a88433c2d54fa145c92a811b5b047ccbe153674483"2454checksum = "f89776e4d69bb58bc6993e99ffa1d11f228b839984854c7daeb5d37f87cbe950"
25172455
2518[[package]]2456[[package]]
2519name = "potential_utf"2457name = "potential_utf"
2520version = "0.1.3"2458version = "0.1.4"
2521source = "registry+https://github.com/rust-lang/crates.io-index"2459source = "registry+https://github.com/rust-lang/crates.io-index"
2522checksum = "84df19adbe5b5a0782edcab45899906947ab039ccf4573713735ee7de1e6b08a"2460checksum = "b73949432f5e2a09657003c25bca5e19a0e9c84f8058ca374f49e0ebe605af77"
2523dependencies = [2461dependencies = [
2524 "zerovec",2462 "zerovec",
2525]2463]
25732511
2574[[package]]2512[[package]]
2575name = "proc-macro2"2513name = "proc-macro2"
2576version = "1.0.101"2514version = "1.0.106"
2577source = "registry+https://github.com/rust-lang/crates.io-index"2515source = "registry+https://github.com/rust-lang/crates.io-index"
2578checksum = "89ae43fd86e4158d6db51ad8e2b80f313af9cc74f5c0e03ccb87de09998732de"2516checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934"
2579dependencies = [2517dependencies = [
2580 "unicode-ident",2518 "unicode-ident",
2581]2519]
2637version = "0.1.0"2575version = "0.1.0"
2638dependencies = [2576dependencies = [
2639 "anyhow",2577 "anyhow",
2640 "axum 0.8.7",2578 "axum 0.8.8",
2641 "axum-extra",2579 "axum-extra",
2642 "futures-util",2580 "futures-util",
2643 "hyper",2581 "hyper",
26482586
2649[[package]]2587[[package]]
2650name = "quote"2588name = "quote"
2651version = "1.0.41"2589version = "1.0.43"
2652source = "registry+https://github.com/rust-lang/crates.io-index"2590source = "registry+https://github.com/rust-lang/crates.io-index"
2653checksum = "ce25767e7b499d1b604768e7cde645d14cc8584231ea6b295e9c9eb22c02e1d1"2591checksum = "dc74d9a594b72ae6656596548f56f667211f8a97b3d4c3d467150794690dc40a"
2654dependencies = [2592dependencies = [
2655 "proc-macro2",2593 "proc-macro2",
2656]2594]
2679checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1"2617checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1"
2680dependencies = [2618dependencies = [
2681 "rand_chacha 0.9.0",2619 "rand_chacha 0.9.0",
2682 "rand_core 0.9.3",2620 "rand_core 0.9.5",
2683]2621]
26842622
2685[[package]]2623[[package]]
2699checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb"2637checksum = "d3022b5f1df60f26e1ffddd6c66e8aa15de382ae63b3a0c1bfc0e4d3e3f325cb"
2700dependencies = [2638dependencies = [
2701 "ppv-lite86",2639 "ppv-lite86",
2702 "rand_core 0.9.3",2640 "rand_core 0.9.5",
2703]2641]
27042642
2705[[package]]2643[[package]]
2708source = "registry+https://github.com/rust-lang/crates.io-index"2646source = "registry+https://github.com/rust-lang/crates.io-index"
2709checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"2647checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
2710dependencies = [2648dependencies = [
2711 "getrandom 0.2.16",2649 "getrandom 0.2.17",
2712]2650]
27132651
2714[[package]]2652[[package]]
2715name = "rand_core"2653name = "rand_core"
2716version = "0.9.3"2654version = "0.9.5"
2717source = "registry+https://github.com/rust-lang/crates.io-index"2655source = "registry+https://github.com/rust-lang/crates.io-index"
2718checksum = "99d9a13982dcf210057a8a78572b2217b667c3beacbf3a0d8b454f6f82837d38"2656checksum = "76afc826de14238e6e8c374ddcc1fa19e374fd8dd986b0d2af0d02377261d83c"
2719dependencies = [2657dependencies = [
2720 "getrandom 0.3.3",2658 "getrandom 0.3.4",
2721]2659]
27222660
2723[[package]]2661[[package]]
27442682
2745[[package]]2683[[package]]
2746name = "regex"2684name = "regex"
2747version = "1.12.1"2685version = "1.12.2"
2748source = "registry+https://github.com/rust-lang/crates.io-index"2686source = "registry+https://github.com/rust-lang/crates.io-index"
2749checksum = "4a52d8d02cacdb176ef4678de6c052efb4b3da14b78e4db683a4252762be5433"2687checksum = "843bc0191f75f3e22651ae5f1e72939ab2f72a4bc30fa80a066bd66edefc24d4"
2750dependencies = [2688dependencies = [
2751 "aho-corasick",2689 "aho-corasick",
2752 "memchr",2690 "memchr",
2753 "regex-automata 0.4.12",2691 "regex-automata 0.4.13",
2754 "regex-syntax 0.8.7",2692 "regex-syntax 0.8.8",
2755]2693]
27562694
2757[[package]]2695[[package]]
27652703
2766[[package]]2704[[package]]
2767name = "regex-automata"2705name = "regex-automata"
2768version = "0.4.12"2706version = "0.4.13"
2769source = "registry+https://github.com/rust-lang/crates.io-index"2707source = "registry+https://github.com/rust-lang/crates.io-index"
2770checksum = "722166aa0d7438abbaa4d5cc2c649dac844e8c56d82fb3d33e9c34b5cd268fc6"2708checksum = "5276caf25ac86c8d810222b3dbb938e512c55c6831a10f3e6ed1c93b84041f1c"
2771dependencies = [2709dependencies = [
2772 "aho-corasick",2710 "aho-corasick",
2773 "memchr",2711 "memchr",
2774 "regex-syntax 0.8.7",2712 "regex-syntax 0.8.8",
2775]2713]
27762714
2777[[package]]2715[[package]]
27822720
2783[[package]]2721[[package]]
2784name = "regex-syntax"2722name = "regex-syntax"
2785version = "0.8.7"2723version = "0.8.8"
2786source = "registry+https://github.com/rust-lang/crates.io-index"2724source = "registry+https://github.com/rust-lang/crates.io-index"
2787checksum = "c3160422bbd54dd5ecfdca71e5fd59b7b8fe2b1697ab2baf64f6d05dcc66d298"2725checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58"
27882726
2789[[package]]2727[[package]]
2790name = "repl-plugin-unstable"2728name = "repl-plugin-unstable"
27952733
2796[[package]]2734[[package]]
2797name = "reqwest"2735name = "reqwest"
2798version = "0.12.23"2736version = "0.12.28"
2799source = "registry+https://github.com/rust-lang/crates.io-index"2737source = "registry+https://github.com/rust-lang/crates.io-index"
2800checksum = "d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb"2738checksum = "eddd3ca559203180a307f12d114c268abf583f59b03cb906fd0b3ff8646c1147"
2801dependencies = [2739dependencies = [
2802 "base64 0.22.1",2740 "base64 0.22.1",
2803 "bytes",2741 "bytes",
2818 "serde_urlencoded",2756 "serde_urlencoded",
2819 "sync_wrapper",2757 "sync_wrapper",
2820 "tokio",2758 "tokio",
2821 "tower 0.5.2",2759 "tower 0.5.3",
2822 "tower-http 0.6.6",2760 "tower-http 0.6.8",
2823 "tower-service",2761 "tower-service",
2824 "url",2762 "url",
2825 "wasm-bindgen",2763 "wasm-bindgen",
2835dependencies = [2773dependencies = [
2836 "cc",2774 "cc",
2837 "cfg-if",2775 "cfg-if",
2838 "getrandom 0.2.16",2776 "getrandom 0.2.17",
2839 "libc",2777 "libc",
2840 "untrusted",2778 "untrusted",
2841 "windows-sys 0.52.0",2779 "windows-sys 0.52.0",
2842]2780]
28432781
2844[[package]]2782[[package]]
2845name = "rmp"2783name = "rmp"
2846version = "0.8.14"2784version = "0.8.15"
2847source = "registry+https://github.com/rust-lang/crates.io-index"2785source = "registry+https://github.com/rust-lang/crates.io-index"
2848checksum = "228ed7c16fa39782c3b3468e974aec2795e9089153cd08ee2e9aefb3613334c4"2786checksum = "4ba8be72d372b2c9b35542551678538b562e7cf86c3315773cae48dfbfe7790c"
2849dependencies = [2787dependencies = [
2850 "byteorder",
2851 "num-traits",2788 "num-traits",
2852 "paste",
2853]2789]
28542790
2855[[package]]2791[[package]]
2856name = "rmp-serde"2792name = "rmp-serde"
2857version = "1.3.0"2793version = "1.3.1"
2858source = "registry+https://github.com/rust-lang/crates.io-index"2794source = "registry+https://github.com/rust-lang/crates.io-index"
2859checksum = "52e599a477cf9840e92f2cde9a7189e67b42c57532749bf90aea6ec10facd4db"2795checksum = "72f81bee8c8ef9b577d1681a70ebbc962c232461e397b22c208c43c04b67a155"
2860dependencies = [2796dependencies = [
2861 "byteorder",
2862 "rmp",2797 "rmp",
2863 "serde",2798 "serde",
2864]2799]
2865
2866[[package]]
2867name = "ron"
2868version = "0.11.0"
2869source = "registry+https://github.com/rust-lang/crates.io-index"
2870checksum = "db09040cc89e461f1a265139777a2bde7f8d8c67c4936f700c63ce3e2904d468"
2871dependencies = [
2872 "base64 0.22.1",
2873 "bitflags",
2874 "serde",
2875 "serde_derive",
2876 "unicode-ident",
2877]
28782800
2879[[package]]2801[[package]]
2880name = "rsa"2802name = "rsa"
2881version = "0.9.8"2803version = "0.9.10"
2882source = "registry+https://github.com/rust-lang/crates.io-index"2804source = "registry+https://github.com/rust-lang/crates.io-index"
2883checksum = "78928ac1ed176a5ca1d17e578a1825f3d81ca54cf41053a592584b020cfd691b"2805checksum = "b8573f03f5883dcaebdfcf4725caa1ecb9c15b2ef50c43a07b816e06799bb12d"
2884dependencies = [2806dependencies = [
2885 "const-oid",2807 "const-oid",
2886 "digest",2808 "digest",
28982820
2899[[package]]2821[[package]]
2900name = "rust-embed"2822name = "rust-embed"
2901version = "8.7.2"2823version = "8.11.0"
2902source = "registry+https://github.com/rust-lang/crates.io-index"2824source = "registry+https://github.com/rust-lang/crates.io-index"
2903checksum = "025908b8682a26ba8d12f6f2d66b987584a4a87bc024abc5bbc12553a8cd178a"2825checksum = "04113cb9355a377d83f06ef1f0a45b8ab8cd7d8b1288160717d66df5c7988d27"
2904dependencies = [2826dependencies = [
2905 "rust-embed-impl",2827 "rust-embed-impl",
2906 "rust-embed-utils",2828 "rust-embed-utils",
29092831
2910[[package]]2832[[package]]
2911name = "rust-embed-impl"2833name = "rust-embed-impl"
2912version = "8.7.2"2834version = "8.11.0"
2913source = "registry+https://github.com/rust-lang/crates.io-index"2835source = "registry+https://github.com/rust-lang/crates.io-index"
2914checksum = "6065f1a4392b71819ec1ea1df1120673418bf386f50de1d6f54204d836d4349c"2836checksum = "da0902e4c7c8e997159ab384e6d0fc91c221375f6894346ae107f47dd0f3ccaa"
2915dependencies = [2837dependencies = [
2916 "proc-macro2",2838 "proc-macro2",
2917 "quote",2839 "quote",
29222844
2923[[package]]2845[[package]]
2924name = "rust-embed-utils"2846name = "rust-embed-utils"
2925version = "8.7.2"2847version = "8.11.0"
2926source = "registry+https://github.com/rust-lang/crates.io-index"2848source = "registry+https://github.com/rust-lang/crates.io-index"
2927checksum = "f6cc0c81648b20b70c491ff8cce00c1c3b223bb8ed2b5d41f0e54c6c4c0a3594"2849checksum = "5bcdef0be6fe7f6fa333b1073c949729274b05f123a0ad7efcb8efd878e5c3b1"
2928dependencies = [2850dependencies = [
2929 "sha2",2851 "sha2",
2930 "walkdir",2852 "walkdir",
2931]2853]
2932
2933[[package]]
2934name = "rustc-demangle"
2935version = "0.1.26"
2936source = "registry+https://github.com/rust-lang/crates.io-index"
2937checksum = "56f7d92ca342cea22a06f2121d944b4fd82af56988c270852495420f961d4ace"
29382854
2939[[package]]2855[[package]]
2940name = "rustc-hash"2856name = "rustc-hash"
29722888
2973[[package]]2889[[package]]
2974name = "rustix"2890name = "rustix"
2975version = "1.1.2"2891version = "1.1.3"
2976source = "registry+https://github.com/rust-lang/crates.io-index"2892source = "registry+https://github.com/rust-lang/crates.io-index"
2977checksum = "cd15f8a2c5551a84d56efdc1cd049089e409ac19a3072d5037a17fd70719ff3e"2893checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34"
2978dependencies = [2894dependencies = [
2979 "bitflags",2895 "bitflags",
2980 "errno",2896 "errno",
29852901
2986[[package]]2902[[package]]
2987name = "rustls"2903name = "rustls"
2988version = "0.23.32"2904version = "0.23.36"
2989source = "registry+https://github.com/rust-lang/crates.io-index"2905source = "registry+https://github.com/rust-lang/crates.io-index"
2990checksum = "cd3c25631629d034ce7cd9940adc9d45762d46de2b0f57193c4443b92c6d4d40"2906checksum = "c665f33d38cea657d9614f766881e4d510e0eda4239891eea56b4cadcf01801b"
2991dependencies = [2907dependencies = [
2992 "log",2908 "log",
2993 "once_cell",2909 "once_cell",
30092925
3010[[package]]2926[[package]]
3011name = "rustls-pki-types"2927name = "rustls-pki-types"
3012version = "1.12.0"2928version = "1.14.0"
3013source = "registry+https://github.com/rust-lang/crates.io-index"2929source = "registry+https://github.com/rust-lang/crates.io-index"
3014checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79"2930checksum = "be040f8b0a225e40375822a563fa9524378b9d63112f53e19ffff34df5d33fdd"
3015dependencies = [2931dependencies = [
3016 "zeroize",2932 "zeroize",
3017]2933]
30182934
3019[[package]]2935[[package]]
3020name = "rustls-webpki"2936name = "rustls-webpki"
3021version = "0.103.7"2937version = "0.103.9"
3022source = "registry+https://github.com/rust-lang/crates.io-index"2938source = "registry+https://github.com/rust-lang/crates.io-index"
3023checksum = "e10b3f4191e8a80e6b43eebabfac91e5dcecebb27a71f04e820c47ec41d314bf"2939checksum = "d7df23109aa6c1567d1c575b9952556388da57401e4ace1d15f79eedad0d8f53"
3024dependencies = [2940dependencies = [
3025 "ring",2941 "ring",
3026 "rustls-pki-types",2942 "rustls-pki-types",
30352951
3036[[package]]2952[[package]]
3037name = "ryu"2953name = "ryu"
3038version = "1.0.20"2954version = "1.0.22"
3039source = "registry+https://github.com/rust-lang/crates.io-index"2955source = "registry+https://github.com/rust-lang/crates.io-index"
3040checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f"2956checksum = "a50f4cf475b65d88e057964e0e9bb1f0aa9bbb2036dc65c64596b42932536984"
30412957
3042[[package]]2958[[package]]
3043name = "salsa20"2959name = "salsa20"
3095source = "registry+https://github.com/rust-lang/crates.io-index"3011source = "registry+https://github.com/rust-lang/crates.io-index"
3096checksum = "e14e4d63b804dc0c7ec4a1e52bcb63f02c7ac94476755aa579edac21e01f915d"3012checksum = "e14e4d63b804dc0c7ec4a1e52bcb63f02c7ac94476755aa579edac21e01f915d"
3097dependencies = [3013dependencies = [
3098 "self_cell 1.2.0",3014 "self_cell 1.2.2",
3099]3015]
31003016
3101[[package]]3017[[package]]
3102name = "self_cell"3018name = "self_cell"
3103version = "1.2.0"3019version = "1.2.2"
3104source = "registry+https://github.com/rust-lang/crates.io-index"3020source = "registry+https://github.com/rust-lang/crates.io-index"
3105checksum = "0f7d95a54511e0c7be3f51e8867aa8cf35148d7b9445d44de2f943e2b206e749"3021checksum = "b12e76d157a900eb52e81bc6e9f3069344290341720e9178cde2407113ac8d89"
31063022
3107[[package]]3023[[package]]
3108name = "semver"3024name = "semver"
31613077
3162[[package]]3078[[package]]
3163name = "serde_json"3079name = "serde_json"
3164version = "1.0.145"3080version = "1.0.149"
3165source = "registry+https://github.com/rust-lang/crates.io-index"3081source = "registry+https://github.com/rust-lang/crates.io-index"
3166checksum = "402a6f66d8c709116cf22f558eab210f5a50187f702eb4d7e5ef38d9a7f1c79c"3082checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86"
3167dependencies = [3083dependencies = [
3168 "itoa",3084 "itoa",
3169 "memchr",3085 "memchr",
3170 "ryu",
3171 "serde",3086 "serde",
3172 "serde_core",3087 "serde_core",
3088 "zmij",
3173]3089]
31743090
3175[[package]]3091[[package]]
32403156
3241[[package]]3157[[package]]
3242name = "signal-hook-registry"3158name = "signal-hook-registry"
3243version = "1.4.6"3159version = "1.4.8"
3244source = "registry+https://github.com/rust-lang/crates.io-index"3160source = "registry+https://github.com/rust-lang/crates.io-index"
3245checksum = "b2a4719bff48cee6b39d12c020eeb490953ad2443b7055bd0b21fca26bd8c28b"3161checksum = "c4db69cba1110affc0e9f7bcd48bbf87b3f4fc7c61fc9155afd4c469eb3d6c1b"
3246dependencies = [3162dependencies = [
3163 "errno",
3247 "libc",3164 "libc",
3248]3165]
32493166
32593176
3260[[package]]3177[[package]]
3261name = "simd-adler32"3178name = "simd-adler32"
3262version = "0.3.7"3179version = "0.3.8"
3263source = "registry+https://github.com/rust-lang/crates.io-index"3180source = "registry+https://github.com/rust-lang/crates.io-index"
3264checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"3181checksum = "e320a6c5ad31d271ad523dcf3ad13e2767ad8b1cb8f047f75a8aeaf8da139da2"
32653182
3266[[package]]3183[[package]]
3267name = "slab"3184name = "slab"
32873204
3288[[package]]3205[[package]]
3289name = "socket2"3206name = "socket2"
3290version = "0.6.0"3207version = "0.6.1"
3291source = "registry+https://github.com/rust-lang/crates.io-index"3208source = "registry+https://github.com/rust-lang/crates.io-index"
3292checksum = "233504af464074f9d066d7b5416c5f9b894a5862a6506e306f7b816cdd6f1807"3209checksum = "17129e116933cf371d018bb80ae557e889637989d8638274fb25622827b03881"
3293dependencies = [3210dependencies = [
3294 "libc",3211 "libc",
3295 "windows-sys 0.59.0",3212 "windows-sys 0.60.2",
3296]3213]
32973214
3298[[package]]3215[[package]]
33313248
3332[[package]]3249[[package]]
3333name = "syn"3250name = "syn"
3334version = "2.0.106"3251version = "2.0.114"
3335source = "registry+https://github.com/rust-lang/crates.io-index"3252source = "registry+https://github.com/rust-lang/crates.io-index"
3336checksum = "ede7c438028d4436d71104916910f5bb611972c5cfd7f89b8300a8186e6fada6"3253checksum = "d4d107df263a3013ef9b1879b0df87d706ff80f65a86ea879bd9c31f9b307c2a"
3337dependencies = [3254dependencies = [
3338 "proc-macro2",3255 "proc-macro2",
3339 "quote",3256 "quote",
33863303
3387[[package]]3304[[package]]
3388name = "tempfile"3305name = "tempfile"
3389version = "3.23.0"3306version = "3.24.0"
3390source = "registry+https://github.com/rust-lang/crates.io-index"3307source = "registry+https://github.com/rust-lang/crates.io-index"
3391checksum = "2d31c77bdf42a745371d260a26ca7163f1e0924b64afa0b688e61b5a9fa02f16"3308checksum = "655da9c7eb6305c55742045d5a8d2037996d61d8de95806335c7c86ce0f82e9c"
3392dependencies = [3309dependencies = [
3393 "fastrand",3310 "fastrand",
3394 "getrandom 0.3.3",3311 "getrandom 0.3.4",
3395 "once_cell",3312 "once_cell",
3396 "rustix 1.1.2",3313 "rustix 1.1.3",
3397 "windows-sys 0.61.2",3314 "windows-sys 0.61.2",
3398]3315]
33993316
3412source = "registry+https://github.com/rust-lang/crates.io-index"3329source = "registry+https://github.com/rust-lang/crates.io-index"
3413checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0"3330checksum = "60b8cb979cb11c32ce1603f8137b22262a9d131aaa5c37b5678025f22b8becd0"
3414dependencies = [3331dependencies = [
3415 "rustix 1.1.2",3332 "rustix 1.1.3",
3416 "windows-sys 0.60.2",3333 "windows-sys 0.60.2",
3417]3334]
34183335
34403357
3441[[package]]3358[[package]]
3442name = "test-log-macros"3359name = "test-log-macros"
3443version = "0.2.18"3360version = "0.2.19"
3444source = "registry+https://github.com/rust-lang/crates.io-index"3361source = "registry+https://github.com/rust-lang/crates.io-index"
3445checksum = "451b374529930d7601b1eef8d32bc79ae870b6079b069401709c2a8bf9e75f36"3362checksum = "be35209fd0781c5401458ab66e4f98accf63553e8fae7425503e92fdd319783b"
3446dependencies = [3363dependencies = [
3447 "proc-macro2",3364 "proc-macro2",
3448 "quote",3365 "quote",
3455source = "registry+https://github.com/rust-lang/crates.io-index"3372source = "registry+https://github.com/rust-lang/crates.io-index"
3456checksum = "0f8daae29995a24f65619e19d8d31dea5b389f3d853d8bf297bbf607cd0014cc"3373checksum = "0f8daae29995a24f65619e19d8d31dea5b389f3d853d8bf297bbf607cd0014cc"
3457dependencies = [3374dependencies = [
3458 "unicode-width 0.2.2",3375 "unicode-width",
3459]3376]
34603377
3461[[package]]3378[[package]]
34973414
3498[[package]]3415[[package]]
3499name = "thiserror"3416name = "thiserror"
3500version = "2.0.17"3417version = "2.0.18"
3501source = "registry+https://github.com/rust-lang/crates.io-index"3418source = "registry+https://github.com/rust-lang/crates.io-index"
3502checksum = "f63587ca0f12b72a0600bcba1d40081f830876000bb46dd2337a3051618f4fc8"3419checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4"
3503dependencies = [3420dependencies = [
3504 "thiserror-impl 2.0.17",3421 "thiserror-impl 2.0.18",
3505]3422]
35063423
3507[[package]]3424[[package]]
35173434
3518[[package]]3435[[package]]
3519name = "thiserror-impl"3436name = "thiserror-impl"
3520version = "2.0.17"3437version = "2.0.18"
3521source = "registry+https://github.com/rust-lang/crates.io-index"3438source = "registry+https://github.com/rust-lang/crates.io-index"
3522checksum = "3ff15c8ecd7de3849db632e14d18d2571fa09dfc5ed93479bc4485c7a517c913"3439checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5"
3523dependencies = [3440dependencies = [
3524 "proc-macro2",3441 "proc-macro2",
3525 "quote",3442 "quote",
35373454
3538[[package]]3455[[package]]
3539name = "time"3456name = "time"
3540version = "0.3.44"3457version = "0.3.45"
3541source = "registry+https://github.com/rust-lang/crates.io-index"3458source = "registry+https://github.com/rust-lang/crates.io-index"
3542checksum = "91e7d9e3bb61134e77bde20dd4825b97c010155709965fedf0f49bb138e52a9d"3459checksum = "f9e442fc33d7fdb45aa9bfeb312c095964abdf596f7567261062b2a7107aaabd"
3543dependencies = [3460dependencies = [
3544 "deranged",3461 "deranged",
3545 "num-conv",3462 "num-conv",
3546 "powerfmt",3463 "powerfmt",
3547 "serde",3464 "serde_core",
3548 "time-core",3465 "time-core",
3549 "time-macros",3466 "time-macros",
3550]3467]
35513468
3552[[package]]3469[[package]]
3553name = "time-core"3470name = "time-core"
3554version = "0.1.6"3471version = "0.1.7"
3555source = "registry+https://github.com/rust-lang/crates.io-index"3472source = "registry+https://github.com/rust-lang/crates.io-index"
3556checksum = "40868e7c1d2f0b8d73e4a8c7f0ff63af4f6d19be117e90bd73eb1d62cf831c6b"3473checksum = "8b36ee98fd31ec7426d599183e8fe26932a8dc1fb76ddb6214d05493377d34ca"
35573474
3558[[package]]3475[[package]]
3559name = "time-macros"3476name = "time-macros"
3560version = "0.2.24"3477version = "0.2.25"
3561source = "registry+https://github.com/rust-lang/crates.io-index"3478source = "registry+https://github.com/rust-lang/crates.io-index"
3562checksum = "30cfb0125f12d9c277f35663a0a33f8c30190f4e4574868a330595412d34ebf3"3479checksum = "71e552d1249bf61ac2a52db88179fd0673def1e1ad8243a00d9ec9ed71fee3dd"
3563dependencies = [3480dependencies = [
3564 "num-conv",3481 "num-conv",
3565 "time-core",3482 "time-core",
3566]3483]
35673484
3568[[package]]3485[[package]]
3569name = "tinystr"3486name = "tinystr"
3570version = "0.8.1"3487version = "0.8.2"
3571source = "registry+https://github.com/rust-lang/crates.io-index"3488source = "registry+https://github.com/rust-lang/crates.io-index"
3572checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b"3489checksum = "42d3e9c45c09de15d06dd8acf5f4e0e399e85927b7f00711024eb7ae10fa4869"
3573dependencies = [3490dependencies = [
3574 "displaydoc",3491 "displaydoc",
3492 "serde_core",
3575 "zerovec",3493 "zerovec",
3576]3494]
35773495
3578[[package]]3496[[package]]
3579name = "tokio"3497name = "tokio"
3580version = "1.47.1"3498version = "1.49.0"
3581source = "registry+https://github.com/rust-lang/crates.io-index"3499source = "registry+https://github.com/rust-lang/crates.io-index"
3582checksum = "89e49afdadebb872d3145a5638b59eb0691ea23e46ca484037cfab3b76b95038"3500checksum = "72a2903cd7736441aac9df9d7688bd0ce48edccaadf181c3b90be801e81d3d86"
3583dependencies = [3501dependencies = [
3584 "backtrace",
3585 "bytes",3502 "bytes",
3586 "io-uring",
3587 "libc",3503 "libc",
3588 "mio",3504 "mio",
3589 "pin-project-lite",3505 "pin-project-lite",
3590 "signal-hook-registry",3506 "signal-hook-registry",
3591 "slab",
3592 "socket2 0.6.0",3507 "socket2 0.6.1",
3593 "tokio-macros",3508 "tokio-macros",
3594 "windows-sys 0.59.0",3509 "windows-sys 0.61.2",
3595]3510]
35963511
3597[[package]]3512[[package]]
3598name = "tokio-macros"3513name = "tokio-macros"
3599version = "2.5.0"3514version = "2.6.0"
3600source = "registry+https://github.com/rust-lang/crates.io-index"3515source = "registry+https://github.com/rust-lang/crates.io-index"
3601checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"3516checksum = "af407857209536a95c8e56f8231ef2c2e2aff839b22e07a1ffcbc617e9db9fa5"
3602dependencies = [3517dependencies = [
3603 "proc-macro2",3518 "proc-macro2",
3604 "quote",3519 "quote",
36173532
3618[[package]]3533[[package]]
3619name = "tokio-stream"3534name = "tokio-stream"
3620version = "0.1.17"3535version = "0.1.18"
3621source = "registry+https://github.com/rust-lang/crates.io-index"3536source = "registry+https://github.com/rust-lang/crates.io-index"
3622checksum = "eca58d7bba4a75707817a2c44174253f9236b2d5fbd055602e9d5c07c139a047"3537checksum = "32da49809aab5c3bc678af03902d4ccddea2a87d028d86392a4b1560c6906c70"
3623dependencies = [3538dependencies = [
3624 "futures-core",3539 "futures-core",
3625 "pin-project-lite",3540 "pin-project-lite",
36413556
3642[[package]]3557[[package]]
3643name = "tokio-util"3558name = "tokio-util"
3644version = "0.7.17"3559version = "0.7.18"
3645source = "registry+https://github.com/rust-lang/crates.io-index"3560source = "registry+https://github.com/rust-lang/crates.io-index"
3646checksum = "2efa149fe76073d6e8fd97ef4f4eca7b67f599660115591483572e406e165594"3561checksum = "9ae9cec805b01e8fc3fd2fe289f89149a9b66dd16786abd8b19cfa7b48cb0098"
3647dependencies = [3562dependencies = [
3648 "bytes",3563 "bytes",
3649 "futures-core",3564 "futures-core",
36633578
3664[[package]]3579[[package]]
3665name = "toml_datetime"3580name = "toml_datetime"
3666version = "0.7.3"3581version = "0.7.5+spec-1.1.0"
3667source = "registry+https://github.com/rust-lang/crates.io-index"3582source = "registry+https://github.com/rust-lang/crates.io-index"
3668checksum = "f2cdb639ebbc97961c51720f858597f7f24c4fc295327923af55b74c3c724533"3583checksum = "92e1cfed4a3038bc5a127e35a2d360f145e1f4b971b551a2ba5fd7aedf7e1347"
3669dependencies = [3584dependencies = [
3670 "serde_core",3585 "serde_core",
3671]3586]
36723587
3673[[package]]3588[[package]]
3674name = "toml_edit"3589name = "toml_edit"
3675version = "0.23.7"3590version = "0.23.10+spec-1.0.0"
3676source = "registry+https://github.com/rust-lang/crates.io-index"3591source = "registry+https://github.com/rust-lang/crates.io-index"
3677checksum = "6485ef6d0d9b5d0ec17244ff7eb05310113c3f316f2d14200d4de56b3cb98f8d"3592checksum = "84c8b9f757e028cee9fa244aea147aab2a9ec09d5325a9b01e0a49730c2b5269"
3678dependencies = [3593dependencies = [
3679 "indexmap 2.11.4",3594 "indexmap 2.13.0",
3680 "toml_datetime",3595 "toml_datetime",
3681 "toml_parser",3596 "toml_parser",
3682 "toml_writer",3597 "toml_writer",
36853600
3686[[package]]3601[[package]]
3687name = "toml_parser"3602name = "toml_parser"
3688version = "1.0.4"3603version = "1.0.6+spec-1.1.0"
3689source = "registry+https://github.com/rust-lang/crates.io-index"3604source = "registry+https://github.com/rust-lang/crates.io-index"
3690checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e"3605checksum = "a3198b4b0a8e11f09dd03e133c0280504d0801269e9afa46362ffde1cbeebf44"
3691dependencies = [3606dependencies = [
3692 "winnow",3607 "winnow",
3693]3608]
36943609
3695[[package]]3610[[package]]
3696name = "toml_writer"3611name = "toml_writer"
3697version = "1.0.4"3612version = "1.0.6+spec-1.1.0"
3698source = "registry+https://github.com/rust-lang/crates.io-index"3613source = "registry+https://github.com/rust-lang/crates.io-index"
3699checksum = "df8b2b54733674ad286d16267dcfc7a71ed5c776e4ac7aa3c3e2561f7c637bf2"3614checksum = "ab16f14aed21ee8bfd8ec22513f7287cd4a91aa92e44edfe2c17ddd004e92607"
37003615
3701[[package]]3616[[package]]
3702name = "tonic"3617name = "tonic"
3751 "prost",3666 "prost",
3752 "tokio",3667 "tokio",
3753 "tokio-stream",3668 "tokio-stream",
3754 "tower 0.5.2",3669 "tower 0.5.3",
3755 "tower-layer",3670 "tower-layer",
3756 "tower-service",3671 "tower-service",
3757 "tracing",3672 "tracing",
37933708
3794[[package]]3709[[package]]
3795name = "tower"3710name = "tower"
3796version = "0.5.2"3711version = "0.5.3"
3797source = "registry+https://github.com/rust-lang/crates.io-index"3712source = "registry+https://github.com/rust-lang/crates.io-index"
3798checksum = "d039ad9159c98b70ecfd540b2573b97f7f52c3e8d9f8ad57a24b916a536975f9"3713checksum = "ebe5ef63511595f1344e2d5cfa636d973292adc0eec1f0ad45fae9f0851ab1d4"
3799dependencies = [3714dependencies = [
3800 "futures-core",3715 "futures-core",
3801 "futures-util",3716 "futures-util",
3802 "indexmap 2.11.4",3717 "indexmap 2.13.0",
3803 "pin-project-lite",3718 "pin-project-lite",
3804 "slab",3719 "slab",
3805 "sync_wrapper",3720 "sync_wrapper",
38293744
3830[[package]]3745[[package]]
3831name = "tower-http"3746name = "tower-http"
3832version = "0.6.6"3747version = "0.6.8"
3833source = "registry+https://github.com/rust-lang/crates.io-index"3748source = "registry+https://github.com/rust-lang/crates.io-index"
3834checksum = "adc82fd73de2a9722ac5da747f12383d2bfdb93591ee6c58486e0097890f05f2"3749checksum = "d4e6559d53cc268e5031cd8429d05415bc4cb4aefc4aa5d6cc35fbf5b924a1f8"
3835dependencies = [3750dependencies = [
3836 "bitflags",3751 "bitflags",
3837 "bytes",3752 "bytes",
3840 "http-body",3755 "http-body",
3841 "iri-string",3756 "iri-string",
3842 "pin-project-lite",3757 "pin-project-lite",
3843 "tower 0.5.2",3758 "tower 0.5.3",
3844 "tower-layer",3759 "tower-layer",
3845 "tower-service",3760 "tower-service",
3846]3761]
38593774
3860[[package]]3775[[package]]
3861name = "tracing"3776name = "tracing"
3862version = "0.1.41"3777version = "0.1.44"
3863source = "registry+https://github.com/rust-lang/crates.io-index"3778source = "registry+https://github.com/rust-lang/crates.io-index"
3864checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"3779checksum = "63e71662fa4b2a2c3a26f570f037eb95bb1f85397f3cd8076caed2f026a6d100"
3865dependencies = [3780dependencies = [
3866 "log",3781 "log",
3867 "pin-project-lite",3782 "pin-project-lite",
38713786
3872[[package]]3787[[package]]
3873name = "tracing-attributes"3788name = "tracing-attributes"
3874version = "0.1.30"3789version = "0.1.31"
3875source = "registry+https://github.com/rust-lang/crates.io-index"3790source = "registry+https://github.com/rust-lang/crates.io-index"
3876checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903"3791checksum = "7490cfa5ec963746568740651ac6781f701c9c5ea257c58e057f3ba8cf69e8da"
3877dependencies = [3792dependencies = [
3878 "proc-macro2",3793 "proc-macro2",
3879 "quote",3794 "quote",
38823797
3883[[package]]3798[[package]]
3884name = "tracing-core"3799name = "tracing-core"
3885version = "0.1.34"3800version = "0.1.36"
3886source = "registry+https://github.com/rust-lang/crates.io-index"3801source = "registry+https://github.com/rust-lang/crates.io-index"
3887checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678"3802checksum = "db97caf9d906fbde555dd62fa95ddba9eecfd14cb388e4f491a66d74cd5fb79a"
3888dependencies = [3803dependencies = [
3889 "once_cell",3804 "once_cell",
3890 "valuable",3805 "valuable",
3981 "log",3896 "log",
3982 "rand 0.9.2",3897 "rand 0.9.2",
3983 "sha1",3898 "sha1",
3984 "thiserror 2.0.17",3899 "thiserror 2.0.18",
3985 "utf-8",3900 "utf-8",
3986]3901]
39873902
40213936
4022[[package]]3937[[package]]
4023name = "unicase"3938name = "unicase"
4024version = "2.8.1"3939version = "2.9.0"
4025source = "registry+https://github.com/rust-lang/crates.io-index"3940source = "registry+https://github.com/rust-lang/crates.io-index"
4026checksum = "75b844d17643ee918803943289730bec8aac480150456169e647ed0b576ba539"3941checksum = "dbc4bc3a9f746d862c45cb89d705aa10f187bb96c76001afab07a0d35ce60142"
40273942
4028[[package]]3943[[package]]
4029name = "unicode-ident"3944name = "unicode-ident"
4030version = "1.0.19"3945version = "1.0.22"
4031source = "registry+https://github.com/rust-lang/crates.io-index"3946source = "registry+https://github.com/rust-lang/crates.io-index"
4032checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d"3947checksum = "9312f7c4f6ff9069b165498234ce8be658059c6728633667c526e27dc2cf1df5"
4033
4034[[package]]
4035name = "unicode-width"
4036version = "0.1.14"
4037source = "registry+https://github.com/rust-lang/crates.io-index"
4038checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"
40393948
4040[[package]]3949[[package]]
4041name = "unicode-width"3950name = "unicode-width"
40513960
4052[[package]]3961[[package]]
4053name = "unit-prefix"3962name = "unit-prefix"
4054version = "0.5.1"3963version = "0.5.2"
4055source = "registry+https://github.com/rust-lang/crates.io-index"3964source = "registry+https://github.com/rust-lang/crates.io-index"
4056checksum = "323402cff2dd658f39ca17c789b502021b3f18707c91cdf22e3838e1b4023817"3965checksum = "81e544489bf3d8ef66c953931f56617f423cd4b5494be343d9b9d3dda037b9a3"
40573966
4058[[package]]3967[[package]]
4059name = "universal-hash"3968name = "universal-hash"
40733982
4074[[package]]3983[[package]]
4075name = "url"3984name = "url"
4076version = "2.5.7"3985version = "2.5.8"
4077source = "registry+https://github.com/rust-lang/crates.io-index"3986source = "registry+https://github.com/rust-lang/crates.io-index"
4078checksum = "08bc136a29a3d1758e07a9cca267be308aeebf5cfd5a10f3f67ab2097683ef5b"3987checksum = "ff67a8a4397373c3ef660812acab3268222035010ab8680ec4215f38ba3d0eed"
4079dependencies = [3988dependencies = [
4080 "form_urlencoded",3989 "form_urlencoded",
4081 "idna",3990 "idna",
41154024
4116[[package]]4025[[package]]
4117name = "vt100"4026name = "vt100"
4118version = "0.15.2"4027version = "0.16.2"
4119source = "registry+https://github.com/rust-lang/crates.io-index"4028source = "registry+https://github.com/rust-lang/crates.io-index"
4120checksum = "84cd863bf0db7e392ba3bd04994be3473491b31e66340672af5d11943c6274de"4029checksum = "054ff75fb8fa83e609e685106df4faeffdf3a735d3c74ebce97ec557d5d36fd9"
4121dependencies = [4030dependencies = [
4122 "itoa",4031 "itoa",
4123 "log",
4124 "unicode-width 0.1.14",4032 "unicode-width",
4125 "vte 0.11.1",4033 "vte",
4126]4034]
4127
4128[[package]]
4129name = "vte"
4130version = "0.11.1"
4131source = "registry+https://github.com/rust-lang/crates.io-index"
4132checksum = "f5022b5fbf9407086c180e9557be968742d839e68346af7792b8592489732197"
4133dependencies = [
4134 "arrayvec",
4135 "utf8parse",
4136 "vte_generate_state_changes",
4137]
41384035
4139[[package]]4036[[package]]
4140name = "vte"4037name = "vte"
4149 "memchr",4046 "memchr",
4150]4047]
4151
4152[[package]]
4153name = "vte_generate_state_changes"
4154version = "0.1.2"
4155source = "registry+https://github.com/rust-lang/crates.io-index"
4156checksum = "2e369bee1b05d510a7b4ed645f5faa90619e05437111783ea5848f28d97d3c2e"
4157dependencies = [
4158 "proc-macro2",
4159 "quote",
4160]
41614048
4162[[package]]4049[[package]]
4163name = "walkdir"4050name = "walkdir"
4184source = "registry+https://github.com/rust-lang/crates.io-index"4071source = "registry+https://github.com/rust-lang/crates.io-index"
4185checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"4072checksum = "ccf3ec651a847eb01de73ccad15eb7d99f80485de043efb2f370cd654f4ea44b"
4186
4187[[package]]
4188name = "wasi"
4189version = "0.14.7+wasi-0.2.4"
4190source = "registry+https://github.com/rust-lang/crates.io-index"
4191checksum = "883478de20367e224c0090af9cf5f9fa85bed63a95c1abf3afc5c083ebc06e8c"
4192dependencies = [
4193 "wasip2",
4194]
41954073
4196[[package]]4074[[package]]
4197name = "wasip2"4075name = "wasip2"
4198version = "1.0.1+wasi-0.2.4"4076version = "1.0.2+wasi-0.2.9"
4199source = "registry+https://github.com/rust-lang/crates.io-index"4077source = "registry+https://github.com/rust-lang/crates.io-index"
4200checksum = "0562428422c63773dad2c345a1882263bbf4d65cf3f42e90921f787ef5ad58e7"4078checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5"
4201dependencies = [4079dependencies = [
4202 "wit-bindgen",4080 "wit-bindgen",
4203]4081]
42044082
4205[[package]]4083[[package]]
4206name = "wasm-bindgen"4084name = "wasm-bindgen"
4207version = "0.2.104"4085version = "0.2.108"
4208source = "registry+https://github.com/rust-lang/crates.io-index"4086source = "registry+https://github.com/rust-lang/crates.io-index"
4209checksum = "c1da10c01ae9f1ae40cbfac0bac3b1e724b320abfcf52229f80b547c0d250e2d"4087checksum = "64024a30ec1e37399cf85a7ffefebdb72205ca1c972291c51512360d90bd8566"
4210dependencies = [4088dependencies = [
4211 "cfg-if",4089 "cfg-if",
4212 "once_cell",4090 "once_cell",
4215 "wasm-bindgen-shared",4093 "wasm-bindgen-shared",
4216]4094]
4217
4218[[package]]
4219name = "wasm-bindgen-backend"
4220version = "0.2.104"
4221source = "registry+https://github.com/rust-lang/crates.io-index"
4222checksum = "671c9a5a66f49d8a47345ab942e2cb93c7d1d0339065d4f8139c486121b43b19"
4223dependencies = [
4224 "bumpalo",
4225 "log",
4226 "proc-macro2",
4227 "quote",
4228 "syn",
4229 "wasm-bindgen-shared",
4230]
42314095
4232[[package]]4096[[package]]
4233name = "wasm-bindgen-futures"4097name = "wasm-bindgen-futures"
4234version = "0.4.54"4098version = "0.4.58"
4235source = "registry+https://github.com/rust-lang/crates.io-index"4099source = "registry+https://github.com/rust-lang/crates.io-index"
4236checksum = "7e038d41e478cc73bae0ff9b36c60cff1c98b8f38f8d7e8061e79ee63608ac5c"4100checksum = "70a6e77fd0ae8029c9ea0063f87c46fde723e7d887703d74ad2616d792e51e6f"
4237dependencies = [4101dependencies = [
4238 "cfg-if",4102 "cfg-if",
4103 "futures-util",
4239 "js-sys",4104 "js-sys",
4240 "once_cell",4105 "once_cell",
4241 "wasm-bindgen",4106 "wasm-bindgen",
42444109
4245[[package]]4110[[package]]
4246name = "wasm-bindgen-macro"4111name = "wasm-bindgen-macro"
4247version = "0.2.104"4112version = "0.2.108"
4248source = "registry+https://github.com/rust-lang/crates.io-index"4113source = "registry+https://github.com/rust-lang/crates.io-index"
4249checksum = "7ca60477e4c59f5f2986c50191cd972e3a50d8a95603bc9434501cf156a9a119"4114checksum = "008b239d9c740232e71bd39e8ef6429d27097518b6b30bdf9086833bd5b6d608"
4250dependencies = [4115dependencies = [
4251 "quote",4116 "quote",
4252 "wasm-bindgen-macro-support",4117 "wasm-bindgen-macro-support",
4253]4118]
42544119
4255[[package]]4120[[package]]
4256name = "wasm-bindgen-macro-support"4121name = "wasm-bindgen-macro-support"
4257version = "0.2.104"4122version = "0.2.108"
4258source = "registry+https://github.com/rust-lang/crates.io-index"4123source = "registry+https://github.com/rust-lang/crates.io-index"
4259checksum = "9f07d2f20d4da7b26400c9f4a0511e6e0345b040694e8a75bd41d578fa4421d7"4124checksum = "5256bae2d58f54820e6490f9839c49780dff84c65aeab9e772f15d5f0e913a55"
4260dependencies = [4125dependencies = [
4126 "bumpalo",
4261 "proc-macro2",4127 "proc-macro2",
4262 "quote",4128 "quote",
4263 "syn",4129 "syn",
4264 "wasm-bindgen-backend",
4265 "wasm-bindgen-shared",4130 "wasm-bindgen-shared",
4266]4131]
42674132
4268[[package]]4133[[package]]
4269name = "wasm-bindgen-shared"4134name = "wasm-bindgen-shared"
4270version = "0.2.104"4135version = "0.2.108"
4271source = "registry+https://github.com/rust-lang/crates.io-index"4136source = "registry+https://github.com/rust-lang/crates.io-index"
4272checksum = "bad67dc8b2a1a6e5448428adec4c3e84c43e561d8c9ee8a9e5aabeb193ec41d1"4137checksum = "1f01b580c9ac74c8d8f0c0e4afb04eeef2acf145458e52c03845ee9cd23e3d12"
4273dependencies = [4138dependencies = [
4274 "unicode-ident",4139 "unicode-ident",
4275]4140]
42764141
4277[[package]]4142[[package]]
4278name = "web-sys"4143name = "web-sys"
4279version = "0.3.81"4144version = "0.3.85"
4280source = "registry+https://github.com/rust-lang/crates.io-index"4145source = "registry+https://github.com/rust-lang/crates.io-index"
4281checksum = "9367c417a924a74cae129e6a2ae3b47fabb1f8995595ab474029da749a8be120"4146checksum = "312e32e551d92129218ea9a2452120f4aabc03529ef03e4d0d82fb2780608598"
4282dependencies = [4147dependencies = [
4283 "js-sys",4148 "js-sys",
4284 "wasm-bindgen",4149 "wasm-bindgen",
4345dependencies = [4210dependencies = [
4346 "windows-implement",4211 "windows-implement",
4347 "windows-interface",4212 "windows-interface",
4348 "windows-link 0.2.1",4213 "windows-link",
4349 "windows-result",4214 "windows-result",
4350 "windows-strings",4215 "windows-strings",
4351]4216]
4372 "syn",4237 "syn",
4373]4238]
4374
4375[[package]]
4376name = "windows-link"
4377version = "0.1.3"
4378source = "registry+https://github.com/rust-lang/crates.io-index"
4379checksum = "5e6ad25900d524eaabdbbb96d20b4311e1e7ae1699af4fb28c17ae66c80d798a"
43804239
4381[[package]]4240[[package]]
4382name = "windows-link"4241name = "windows-link"
4390source = "registry+https://github.com/rust-lang/crates.io-index"4249source = "registry+https://github.com/rust-lang/crates.io-index"
4391checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5"4250checksum = "7781fa89eaf60850ac3d2da7af8e5242a5ea78d1a11c49bf2910bb5a73853eb5"
4392dependencies = [4251dependencies = [
4393 "windows-link 0.2.1",4252 "windows-link",
4394]4253]
43954254
4396[[package]]4255[[package]]
4399source = "registry+https://github.com/rust-lang/crates.io-index"4258source = "registry+https://github.com/rust-lang/crates.io-index"
4400checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091"4259checksum = "7837d08f69c77cf6b07689544538e017c1bfcf57e34b4c0ff58e6c2cd3b37091"
4401dependencies = [4260dependencies = [
4402 "windows-link 0.2.1",4261 "windows-link",
4403]4262]
44044263
4405[[package]]4264[[package]]
4435source = "registry+https://github.com/rust-lang/crates.io-index"4294source = "registry+https://github.com/rust-lang/crates.io-index"
4436checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"4295checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc"
4437dependencies = [4296dependencies = [
4438 "windows-link 0.2.1",4297 "windows-link",
4439]4298]
44404299
4441[[package]]4300[[package]]
4460source = "registry+https://github.com/rust-lang/crates.io-index"4319source = "registry+https://github.com/rust-lang/crates.io-index"
4461checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3"4320checksum = "4945f9f551b88e0d65f3db0bc25c33b8acea4d9e41163edf90dcd0b19f9069f3"
4462dependencies = [4321dependencies = [
4463 "windows-link 0.2.1",4322 "windows-link",
4464 "windows_aarch64_gnullvm 0.53.1",4323 "windows_aarch64_gnullvm 0.53.1",
4465 "windows_aarch64_msvc 0.53.1",4324 "windows_aarch64_msvc 0.53.1",
4466 "windows_i686_gnu 0.53.1",4325 "windows_i686_gnu 0.53.1",
45694428
4570[[package]]4429[[package]]
4571name = "winnow"4430name = "winnow"
4572version = "0.7.13"4431version = "0.7.14"
4573source = "registry+https://github.com/rust-lang/crates.io-index"4432source = "registry+https://github.com/rust-lang/crates.io-index"
4574checksum = "21a0236b59786fed61e2a80582dd500fe61f18b5dca67a4a067d0bc9039339cf"4433checksum = "5a5364e9d77fcdeeaa6062ced926ee3381faa2ee02d3eb83a5c27a8825540829"
4575dependencies = [4434dependencies = [
4576 "memchr",4435 "memchr",
4577]4436]
45784437
4579[[package]]4438[[package]]
4580name = "wit-bindgen"4439name = "wit-bindgen"
4581version = "0.46.0"4440version = "0.51.0"
4582source = "registry+https://github.com/rust-lang/crates.io-index"4441source = "registry+https://github.com/rust-lang/crates.io-index"
4583checksum = "f17a85883d4e6d00e8a97c586de764dabcc06133f7f1d55dce5cdc070ad7fe59"4442checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5"
45844443
4585[[package]]4444[[package]]
4586name = "writeable"4445name = "writeable"
4587version = "0.6.1"4446version = "0.6.2"
4588source = "registry+https://github.com/rust-lang/crates.io-index"4447source = "registry+https://github.com/rust-lang/crates.io-index"
4589checksum = "ea2f10b9bb0928dfb1b42b65e1f9e36f7f54dbdf08457afefb38afcdec4fa2bb"4448checksum = "9edde0db4769d2dc68579893f2306b26c6ecfbe0ef499b013d731b7b9247e0b9"
45904449
4591[[package]]4450[[package]]
4592name = "wsl"4451name = "wsl"
46174476
4618[[package]]4477[[package]]
4619name = "yoke"4478name = "yoke"
4620version = "0.8.0"4479version = "0.8.1"
4621source = "registry+https://github.com/rust-lang/crates.io-index"4480source = "registry+https://github.com/rust-lang/crates.io-index"
4622checksum = "5f41bb01b8226ef4bfd589436a297c53d118f65921786300e427be8d487695cc"4481checksum = "72d6e5c6afb84d73944e5cedb052c4680d5657337201555f9f2a16b7406d4954"
4623dependencies = [4482dependencies = [
4624 "serde",
4625 "stable_deref_trait",4483 "stable_deref_trait",
4626 "yoke-derive",4484 "yoke-derive",
4627 "zerofrom",4485 "zerofrom",
4628]4486]
46294487
4630[[package]]4488[[package]]
4631name = "yoke-derive"4489name = "yoke-derive"
4632version = "0.8.0"4490version = "0.8.1"
4633source = "registry+https://github.com/rust-lang/crates.io-index"4491source = "registry+https://github.com/rust-lang/crates.io-index"
4634checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6"4492checksum = "b659052874eb698efe5b9e8cf382204678a0086ebf46982b79d6ca3182927e5d"
4635dependencies = [4493dependencies = [
4636 "proc-macro2",4494 "proc-macro2",
4637 "quote",4495 "quote",
46414499
4642[[package]]4500[[package]]
4643name = "zerocopy"4501name = "zerocopy"
4644version = "0.8.27"4502version = "0.8.33"
4645source = "registry+https://github.com/rust-lang/crates.io-index"4503source = "registry+https://github.com/rust-lang/crates.io-index"
4646checksum = "0894878a5fa3edfd6da3f88c4805f4c8558e2b996227a3d864f47fe11e38282c"4504checksum = "668f5168d10b9ee831de31933dc111a459c97ec93225beb307aed970d1372dfd"
4647dependencies = [4505dependencies = [
4648 "zerocopy-derive",4506 "zerocopy-derive",
4649]4507]
46504508
4651[[package]]4509[[package]]
4652name = "zerocopy-derive"4510name = "zerocopy-derive"
4653version = "0.8.27"4511version = "0.8.33"
4654source = "registry+https://github.com/rust-lang/crates.io-index"4512source = "registry+https://github.com/rust-lang/crates.io-index"
4655checksum = "88d2b8d9c68ad2b9e4340d7832716a4d21a22a1154777ad56ea55c51a9cf3831"4513checksum = "2c7962b26b0a8685668b671ee4b54d007a67d4eaf05fda79ac0ecf41e32270f1"
4656dependencies = [4514dependencies = [
4657 "proc-macro2",4515 "proc-macro2",
4658 "quote",4516 "quote",
46914549
4692[[package]]4550[[package]]
4693name = "zeroize_derive"4551name = "zeroize_derive"
4694version = "1.4.2"4552version = "1.4.3"
4695source = "registry+https://github.com/rust-lang/crates.io-index"4553source = "registry+https://github.com/rust-lang/crates.io-index"
4696checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69"4554checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e"
4697dependencies = [4555dependencies = [
4698 "proc-macro2",4556 "proc-macro2",
4699 "quote",4557 "quote",
47024560
4703[[package]]4561[[package]]
4704name = "zerotrie"4562name = "zerotrie"
4705version = "0.2.2"4563version = "0.2.3"
4706source = "registry+https://github.com/rust-lang/crates.io-index"4564source = "registry+https://github.com/rust-lang/crates.io-index"
4707checksum = "36f0bbd478583f79edad978b407914f61b2972f5af6fa089686016be8f9af595"4565checksum = "2a59c17a5562d507e4b54960e8569ebee33bee890c70aa3fe7b97e85a9fd7851"
4708dependencies = [4566dependencies = [
4709 "displaydoc",4567 "displaydoc",
4710 "yoke",4568 "yoke",
47134571
4714[[package]]4572[[package]]
4715name = "zerovec"4573name = "zerovec"
4716version = "0.11.4"4574version = "0.11.5"
4717source = "registry+https://github.com/rust-lang/crates.io-index"4575source = "registry+https://github.com/rust-lang/crates.io-index"
4718checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b"4576checksum = "6c28719294829477f525be0186d13efa9a3c602f7ec202ca9e353d310fb9a002"
4719dependencies = [4577dependencies = [
4578 "serde",
4720 "yoke",4579 "yoke",
4721 "zerofrom",4580 "zerofrom",
4722 "zerovec-derive",4581 "zerovec-derive",
4723]4582]
47244583
4725[[package]]4584[[package]]
4726name = "zerovec-derive"4585name = "zerovec-derive"
4727version = "0.11.1"4586version = "0.11.2"
4728source = "registry+https://github.com/rust-lang/crates.io-index"4587source = "registry+https://github.com/rust-lang/crates.io-index"
4729checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f"4588checksum = "eadce39539ca5cb3985590102671f2567e659fca9666581ad3411d59207951f3"
4730dependencies = [4589dependencies = [
4731 "proc-macro2",4590 "proc-macro2",
4732 "quote",4591 "quote",
4733 "syn",4592 "syn",
4734]4593]
4594
4595[[package]]
4596name = "zmij"
4597version = "1.0.16"
4598source = "registry+https://github.com/rust-lang/crates.io-index"
4599checksum = "dfcd145825aace48cff44a8844de64bf75feec3080e0aa5cdbde72961ae51a65"
47354600
modifiedcmds/fleet/src/cmds/build_systems.rsdiffbeforeafterboth
73 let built = match build_task(config, hostname.clone(), &build_attr).await {73 let built = match build_task(config, hostname.clone(), &build_attr).await {
74 Ok(path) => path,74 Ok(path) => path,
75 Err(e) => {75 Err(e) => {
76 error!("failed to deploy host: {}", e);76 error!("failed to deploy host: {:?}", e);
77 return;77 return;
78 }78 }
79 };79 };
modifiedcmds/fleet/src/cmds/secrets/mod.rsdiffbeforeafterboth
1use std::{1use std::{
2 collections::{BTreeSet, HashSet},2 collections::{BTreeSet, HashSet},
3 io::{Read, Write, stdin, stdout},3 io::{Read, stdin},
4 path::PathBuf,4 path::PathBuf,
5};5};
66
7use anyhow::{Context, Result, bail, ensure};7use anyhow::{Result, bail, ensure};
8use clap::Parser;8use clap::Parser;
9use fleet_base::{host::Config, opts::FleetOpts};9use fleet_base::{host::Config, opts::FleetOpts};
10use fleet_shared::SecretData;10use fleet_shared::SecretData;
11use tabled::Tabled;
12use tokio::fs::read;11use tokio::fs::read;
13use tracing::{info, info_span, warn};12use tracing::{info, warn};
1413
15#[derive(Parser)]14#[derive(Parser)]
16pub enum Secret {15pub enum Secret {
17 AddManager,
18 /// Force load host keys for all defined hosts16 /// Force load host keys for all defined hosts
19 ForceKeys,17 ForceKeys,
20 /// Read secret from remote host, requires sudo on one of the owning hosts18 /// Read secret from remote host, requires sudo on one of the owning hosts
2927
30 /// Which private secret part to read28 /// Which private secret part to read
31 #[clap(short = 'p', long, default_value = "secret")]29 #[clap(short = 'p', long, default_value = "secret")]
32 part: String,30 part: Option<String>,
3331
34 /// Which host should we use to decrypt, in case if reencryption is required, without32 /// Which host should we use to decrypt, in case if reencryption is required, without
35 /// regeneration33 /// regeneration
36 #[clap(long)]34 #[clap(long)]
37 prefer_identities: Vec<String>,35 prefer_identities: Vec<String>,
38 },36 },
37 /// Prune (remove, mark for regeneration) secrets
38 Prune {
39 /// Secret to prune
40 name: String,
41
42 /// Machines to prune - if specified, only the choosen machines will be pruned
43 #[clap(short = 'm', long)]
44 machine: Vec<String>,
45 },
46 /// Ensure secret is generated and not expired
39 Regenerate {47 Ensure {
40 /// Which host should we use to decrypt, in case if reencryption is required, without48 /// Secret to ensure generated
41 /// regeneration49 name: String,
50
51 /// Machines to force secret for
42 #[clap(long)]52 #[clap(short = 'm', long)]
43 prefer_identities: Vec<String>,53 machine: Vec<String>,
44 /// Only regenerate shared secrets
45 #[clap(long)]
46 skip_hosts: bool,
47 },54 },
48 List {},55 List {},
49 Edit {56 Edit {
60 },67 },
61}68}
62
63/*
64#[allow(clippy::too_many_arguments)]
65#[tracing::instrument(skip(config, secret, definition, prefer_identities))]
66async fn maybe_regenerate_shared_secret(
67 secret_name: &str,
68 config: &Config,
69 mut secret: FleetSecretDistribution,
70 definition: SharedSecretDefinition,
71 prefer_identities: &[String],
72 expectations: &Expectations,
73) -> Result<FleetSecretDistribution> {
74 let reason = secret_needs_regeneration(&secret.secret, &secret.owners, expectations);
75 let value = definition.definition_value();
76
77 let (should_reencrypt, reason) = match reason {
78 Some(RegenerationReason::OwnersAdded(_)) => {
79 // Secret always needs to be reencrypted for new owners to be able to read it
80 (
81 true,
82 if nix_go_json!(value.regenerateOnOwnerAdded) {
83 reason
84 } else {
85 None
86 },
87 )
88 }
89 Some(RegenerationReason::OwnersRemoved(_)) => {
90 // No need to reencrypt, we can just leave stanzas in place.
91 if nix_go_json!(value.regenerateOnOwnerRemoved) {
92 (true, reason)
93 } else {
94 (false, None)
95 }
96 }
97 Some(_) => (true, reason),
98 None => (false, None),
99 };
100
101 if let Some(reason) = reason {
102 info!("secret needs to be regenerated: {reason}");
103 let generated = generate_shared(config, secret_name, definition, expectations).await?;
104 Ok(generated)
105 } else if should_reencrypt {
106 info!("secret needs to be reencrypted");
107 let identity_holder = if !prefer_identities.is_empty() {
108 prefer_identities
109 .iter()
110 .find(|i| secret.owners.iter().any(|s| s == *i))
111 } else {
112 secret.owners.first()
113 };
114 let Some(identity_holder) = identity_holder else {
115 bail!("no available holder found");
116 };
117
118 for (part_name, part) in secret.secret.parts.iter_mut() {
119 let _span = info_span!("part reencryption", part_name);
120 if !part.raw.encrypted {
121 continue;
122 }
123 let host = config.host(identity_holder).await?;
124 let encrypted = host
125 .reencrypt(
126 part.raw.clone(),
127 expectations.owners.iter().cloned().collect(),
128 )
129 .await?;
130 part.raw = encrypted;
131 }
132 secret.owners = expectations.owners.clone();
133 Ok(secret)
134 } else {
135 Ok(secret)
136 }
137}
138*/
139
140/*
141async fn generate_pure(
142 _config: &Config,
143 _display_name: &str,
144 _secret: Value,
145 _default_generator: Value,
146 _expectations: &Expectations,
147) -> Result<FleetSecretData> {
148 bail!("pure generators are broken for now")
149}
150async fn generate_impure(
151 config: &Config,
152 _display_name: &str,
153 secret: Value,
154 default_generator: Value,
155 expectations: &Expectations,
156) -> Result<FleetSecretData> {
157 let generator = nix_go!(secret.generator);
158 let on: Option<String> = nix_go_json!(default_generator.impureOn);
159
160 let nixpkgs = &config.nixpkgs;
161
162 let host = if let Some(on) = &on {
163 config.host(on).await?
164 } else {
165 config.local_host()
166 };
167 let on_pkgs = host.pkgs().await?;
168 let mk_secret_generators = nix_go!(on_pkgs.mkSecretGenerators);
169
170 let mut recipients = Vec::new();
171 for owner in &expectations.owners {
172 let key = config.key(owner).await?;
173 recipients.push(key);
174 }
175 let generators = nix_go!(mk_secret_generators(Obj { recipients }));
176 let pkgs_and_generators = on_pkgs.attrs_update(generators)?;
177
178 let call_package = nix_go!(nixpkgs.lib.callPackageWith(pkgs_and_generators));
179
180 let generator = nix_go!(call_package(generator)(Obj {}));
181
182 let generator = spawn_blocking(move || generator.build("out"))
183 .await
184 .expect("nix build shouldn't fail")?;
185 let generator = host.remote_derivation(&generator).await?;
186
187 let out_parent = host.mktemp_dir().await?;
188 let out = format!("{out_parent}/out");
189
190 let mut r#gen = host.cmd(generator).await?;
191 r#gen.env("out", &out);
192 if on.is_none() {
193 // This path is local, thus we can feed `OsString` directly to env var... But I don't think that's necessary to handle.
194 let project_path: String = config
195 .directory
196 .clone()
197 .into_os_string()
198 .into_string()
199 .map_err(|s| anyhow!("fleet project path is not utf-8: {s:?}"))?;
200 r#gen.env("FLEET_PROJECT", project_path);
201 }
202 r#gen.run().await.context("impure generator")?;
203
204 {
205 let marker = host.read_file_text(format!("{out}/marker")).await?;
206 ensure!(marker == "SUCCESS", "generation not succeeded");
207 }
208
209 let mut parts = BTreeMap::new();
210 for part in host.read_dir(&out).await? {
211 if part == "created_at" || part == "expires_at" || part == "marker" {
212 continue;
213 }
214 let contents: SecretData = host
215 .read_file_text(format!("{out}/{part}"))
216 .await?
217 .parse()
218 .map_err(|e| anyhow!("failed to decode secret {out:?} part {part:?}: {e}"))?;
219 parts.insert(part.to_owned(), FleetSecretPart { raw: contents });
220 }
221
222 let created_at = host.read_file_value(format!("{out}/created_at")).await?;
223 let expires_at = host.read_file_value(format!("{out}/expires_at")).await.ok();
224
225 let new_data = FleetSecretData {
226 created_at,
227 expires_at,
228 parts,
229 generation_data: expectations.generation_data.clone(),
230 };
231
232 if let Some(reason) = secret_needs_regeneration(&new_data, &expectations.owners, expectations) {
233 bail!("newly generated secret needs to be regenerated: {reason}")
234 }
235
236 Ok(new_data)
237}
238
239async fn generate(
240 config: &Config,
241 display_name: &str,
242 secret: Value,
243 expectations: &Expectations,
244) -> Result<FleetSecretData> {
245 let generator = nix_go!(secret.generator);
246 // Can't properly check on nix module system level
247 {
248 let gen_ty = generator.type_of();
249 if matches!(gen_ty, NixType::Null) {
250 bail!("secret has no generator defined, can't automatically generate it.");
251 }
252 if matches!(gen_ty, NixType::Attrs) {
253 if !generator.has_field("__functor")? {
254 bail!("generator should be functor, got {gen_ty:?}");
255 }
256 } else if matches!(gen_ty, NixType::Function) {
257 bail!("generator should be functor, got {gen_ty:?}");
258 }
259 }
260 let nixpkgs = &config.nixpkgs;
261 let default_pkgs = &config.default_pkgs;
262 let default_mk_secret_generators = nix_go!(default_pkgs.mkSecretGenerators);
263 // Generators provide additional information in passthru, to access
264 // passthru we should call generator, but information about where this generator is supposed to build
265 // is located in passthru... Thus evaluating generator on host.
266 //
267 // Maybe it is also possible to do some magic with __functor?
268 //
269 // I don't want to make modules always responsible for additional secret data anyway,
270 // so it should be in derivation, and not in the secret data itself.
271 let generators = nix_go!(default_mk_secret_generators(Obj {
272 recipients: <Vec<String>>::new(),
273 }));
274 let pkgs_and_generators = default_pkgs.clone().attrs_update(generators)?;
275
276 let call_package = nix_go!(nixpkgs.lib.callPackageWith(pkgs_and_generators));
277 let default_generator = nix_go!(call_package(generator)(Obj {}));
278
279 let kind: GeneratorKind = nix_go_json!(default_generator.generatorKind);
280
281 match kind {
282 GeneratorKind::Impure => {
283 generate_impure(
284 config,
285 display_name,
286 secret,
287 default_generator,
288 expectations,
289 )
290 .await
291 }
292 GeneratorKind::Pure => {
293 generate_pure(
294 config,
295 display_name,
296 secret,
297 default_generator,
298 expectations,
299 )
300 .await
301 }
302 }
303}
304*/
305/*
306async fn generate_shared(
307 config: &Config,
308 display_name: &str,
309 secret: SharedSecretDefinition,
310 expectations: &Expectations,
311) -> Result<FleetSecretDistribution> {
312 // let owners: Vec<String> = nix_go_json!(secret.expectedOwners);
313 Ok(FleetSecretDistribution {
314 managed: Some(true),
315 secret: generate(
316 config,
317 display_name,
318 secret.definition_value(),
319 expectations,
320 )
321 .await?,
322 owners: expectations.owners.clone(),
323 })
324}*/
32569
326async fn parse_public(70async fn parse_public(
327 public: Option<String>,71 public: Option<String>,
404impl Secret {148impl Secret {
405 pub async fn run(self, config: &Config, opts: &FleetOpts) -> Result<()> {149 pub async fn run(self, config: &Config, opts: &FleetOpts) -> Result<()> {
406 match self {150 match self {
407 Secret::AddManager => {
408 todo!("part of fleet-pusher")
409 }
410 Secret::ForceKeys => {151 Secret::ForceKeys => {
411 for host in config.list_hosts()? {152 for host in config.list_hosts()? {
412 if opts.should_skip(&host)? {153 if opts.should_skip(&host)? {
464 */205 */
465 todo!()206 todo!()
466 }207 }
467 Secret::Regenerate {
468 prefer_identities,
469 skip_hosts,
470 } => {
471 /*
472 info!("checking for secrets to regenerate");
473 let expected_shared_set = config
474 .list_configured_shared()
475 .await?
476 .into_iter()
477 .collect::<HashSet<_>>();
478 let stored_shared_set = config.list_secrets().into_iter().collect::<HashSet<_>>();
479 {
480 // Generate missing shared
481 let _span = info_span!("shared").entered();
482 for missing in expected_shared_set.difference(&stored_shared_set) {
483 let definition = config.shared_secret_definition(missing)?;
484 if !definition.is_managed()? {
485 info!("skipping unmanaged secret: {missing}");
486 continue;
487 }
488 let expectations = definition
489 .expectations()
490 .with_context(|| format!("expectations for shared {missing:?}"))?;
491 info!("generating secret: {missing}");
492 let shared = generate_shared(config, missing, definition, &expectations)
493 .in_current_span()
494 .await?;
495 config.replace_shared(missing.to_string(), shared)
496 }
497 }
498 if !skip_hosts {
499 for host in config.list_hosts().await? {
500 if opts.should_skip(&host).await? {
501 continue;
502 }
503
504 let _span = info_span!("host", host = host.name).entered();
505 let expected_set = host
506 .list_defined_secrets()?
507 .into_iter()
508 .collect::<HashSet<_>>();
509 let stored_set = config
510 .list_secrets_for_owner(&host.name)
511 .into_iter()
512 .collect::<HashSet<_>>();
513 for missing_secret in expected_set.difference(&stored_set) {
514 let secret = host.secret_definition(missing_secret)?;
515 if secret.is_shared()? {
516 continue;
517 }
518 info!("generating missing secret: {missing_secret}");
519 let expectations = secret.expectations().with_context(|| {
520 format!("expectations for {missing_secret:?} of {:?}", host.name)
521 })?;
522 let generated = match generate(
523 config,
524 missing_secret,
525 secret.definition_value()?,
526 &expectations,
527 )
528 .in_current_span()
529 .await
530 {
531 Ok(v) => v,
532 Err(e) => {
533 error!("{e:?}");
534 continue;
535 }
536 };
537 config.insert_secret(host.name, missing_secret.to_string(), generated)
538 }
539 for known_secret in stored_set.intersection(&expected_set) {
540 let secret = host.secret_definition(known_secret)?;
541 if secret.is_shared()? {
542 continue;
543 }
544 info!("updating secret: {known_secret}");
545 let data = config.host_secret(&host.name, known_secret)?;
546 let expectations = secret.expectations()?;
547 if let Some(regen_reason) = data.needs_regeneration(&expectations) {
548 info!("needs regeneration: {regen_reason}");
549 let generated = match generate(
550 config,
551 known_secret,
552 secret.definition_value()?,
553 &expectations,
554 )
555 .in_current_span()
556 .await
557 {
558 Ok(v) => v,
559 Err(e) => {
560 error!("{e:?}");
561 continue;
562 }
563 };
564 config.insert_secret(
565 &host.name,
566 known_secret.to_string(),
567 FleetLegacyHostSecret {
568 managed: Some(true),
569 secret: generated,
570 },
571 )
572 }
573 }
574 for removed_secret in stored_set.difference(&expected_set) {
575 let definition = host.secret_definition(removed_secret)?;
576 if definition.is_shared()? {
577 continue;
578 }
579 info!("removing secret: {removed_secret}");
580 config.remove_secret(&host.name, removed_secret);
581 }
582 }
583 }
584 for known_secret in stored_shared_set.intersection(&expected_shared_set) {
585 info!("updating shared secret: {known_secret}");
586 let data = config.shared_secret(known_secret)?.expect("exists");
587
588 let definition = config.shared_secret_definition(known_secret)?;
589 let expectations = definition.expectations()?;
590 config.replace_shared(
591 known_secret.to_owned(),
592 maybe_regenerate_shared_secret(
593 known_secret,
594 config,
595 data,
596 definition,
597 &prefer_identities,
598 &expectations,
599 )
600 .await?,
601 );
602 }
603 for removed_secret in stored_shared_set.difference(&expected_shared_set) {
604 info!("removing shared secret: {removed_secret}");
605 config.remove_shared(removed_secret);
606 }
607 */
608 todo!()
609 }
610 Secret::List {} => {208 Secret::List {} => {
611 /*209 /*
612 let _span = info_span!("loading secrets").entered();210 let _span = info_span!("loading secrets").entered();
665 };*/263 };*/
666 todo!()264 todo!()
667 }265 }
266 Secret::Prune { name, machine } => todo!(),
267 Secret::Ensure { name, machine } => todo!(),
668 }268 }
669 Ok(())269 Ok(())
670 }270 }
modifiedcmds/fleet/src/main.rsdiffbeforeafterboth
17 tf::Tf,17 tf::Tf,
18};18};
19use fleet_base::{host::Config, opts::FleetOpts};19use fleet_base::{host::Config, opts::FleetOpts};
20use futures::{TryStreamExt, future::LocalBoxFuture, stream::FuturesUnordered};20use futures::{TryStreamExt, stream::FuturesUnordered};
21// use host::Config;
22#[cfg(feature = "indicatif")]21#[cfg(feature = "indicatif")]
23use human_repr::HumanCount;22use human_repr::HumanCount;
24#[cfg(feature = "indicatif")]23#[cfg(feature = "indicatif")]
modifiedcrates/nixlike/Cargo.tomldiffbeforeafterboth
10itertools = "0.14.0"10itertools = "0.14.0"
11linked-hash-map = "0.5.6"11linked-hash-map = "0.5.6"
12peg = "0.8.5"12peg = "0.8.5"
13ron = "0.11.0"
14serde = { version = "1.0.219", features = ["derive"] }13serde = { version = "1.0.219", features = ["derive"] }
15serde-transcode = "1.1.1"14serde-transcode = "1.1.1"
16serde_json = "1.0.140"15serde_json = "1.0.140"