diff --git a/Cargo.lock b/Cargo.lock index e484886..a1077fb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -727,10 +727,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" [[package]] -name = "base32" -version = "0.5.1" +name = "base16ct" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "022dfe9eb35f19ebbcb51e0b40a5ab759f46ad60cadf7297e0bd085afb50e076" +checksum = "fd307490d624467aa6f74b0eabb77633d1f758a7b25f12bceb0b22e08d9726f6" [[package]] name = "base64" @@ -817,9 +817,9 @@ dependencies = [ [[package]] name = "block-buffer" -version = "0.11.0" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96eb4cdd6cf1b31d671e9efe75c5d1ec614776856cefbe109ca373554a6d514f" +checksum = "d2f6c7dbe95a6ed67ad9f18e57daf93a2f034c524b99fd2b76d18fdfeb6660aa" dependencies = [ "hybrid-array", ] @@ -835,19 +835,13 @@ dependencies = [ [[package]] name = "built" -version = "0.7.7" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56ed6191a7e78c36abdb16ab65341eefd73d64d303fffccdbb00d51e4205967b" +checksum = "f4ad8f11f288f48ca24471bbd51ac257aaeaaa07adae295591266b792902ae64" dependencies = [ "cargo-lock", ] -[[package]] -name = "built" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4ad8f11f288f48ca24471bbd51ac257aaeaaa07adae295591266b792902ae64" - [[package]] name = "bumpalo" version = "3.20.2" @@ -978,6 +972,17 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" +[[package]] +name = "chacha20" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d524456ba66e72eb8b115ff89e01e497f8e6d11d78b70b1aa13c0fbd97540a81" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.0", + "rand_core 0.10.1", +] + [[package]] name = "charset" version = "0.1.5" @@ -1088,6 +1093,12 @@ dependencies = [ "cc", ] +[[package]] +name = "cmov" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c9ea0ac24bc397ab3c98583a3c9ba74fa56b09a4449bbe172b9b1ddb016027a" + [[package]] name = "cobs" version = "0.3.0" @@ -1520,6 +1531,15 @@ dependencies = [ "cipher", ] +[[package]] +name = "ctutils" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d5515a3834141de9eafb9717ad39eea8247b5674e6066c404e8c4b365d2a29e" +dependencies = [ + "cmov", +] + [[package]] name = "curve25519-dalek" version = "4.1.3" @@ -1538,16 +1558,16 @@ dependencies = [ [[package]] name = "curve25519-dalek" -version = "5.0.0-pre.1" +version = "5.0.0-rc.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f9200d1d13637f15a6acb71e758f64624048d85b31a5fdbfd8eca1e2687d0b7" +checksum = "4f359e08ca85e7bd759e1fd933ff2bccd81864c60a8fba0e259c7f822b0924bf" dependencies = [ "cfg-if", - "cpufeatures 0.2.17", + "cpufeatures 0.3.0", "curve25519-dalek-derive", - "digest 0.11.0-rc.10", + "digest 0.11.3", "fiat-crypto 0.3.0", - "rand_core 0.9.5", + "rand_core 0.10.1", "rustc_version", "serde", "subtle", @@ -1675,6 +1695,26 @@ version = "2.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a4ae5f15dda3c708c0ade84bfee31ccab44a3da4f88015ed22f63732abe300c8" +[[package]] +name = "data-encoding-macro" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3259c913752a86488b501ed8680446a5ed2d5aeac6e596cb23ba3800768ea32c" +dependencies = [ + "data-encoding", + "data-encoding-macro-internal", +] + +[[package]] +name = "data-encoding-macro-internal" +version = "0.1.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ccc2776f0c61eca1ca32528f85548abd1a4be8fb53d1b21c013e4f18da1e7090" +dependencies = [ + "data-encoding", + "syn 2.0.117", +] + [[package]] name = "datum-connect" version = "0.1.0" @@ -1682,10 +1722,10 @@ dependencies = [ "async-trait", "clap", "dotenv", - "hickory-proto", + "hickory-proto 0.25.2", "hickory-server", "humantime", - "iroh-base 0.97.0", + "iroh-base", "lib", "n0-error", "rand 0.9.4", @@ -1714,7 +1754,7 @@ dependencies = [ "hex", "image", "iroh", - "iroh-base 0.97.0", + "iroh-base", "iroh-metrics", "iroh-quinn", "lib", @@ -1890,12 +1930,11 @@ dependencies = [ [[package]] name = "digest" -version = "0.11.0-rc.10" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afa94b64bfc6549e6e4b5a3216f22593224174083da7a90db47e951c4fb31725" +checksum = "f1dd6dbb5841937940781866fa1281a1ff7bd3bf827091440879f9994983d5c2" dependencies = [ - "block-buffer 0.11.0", - "const-oid 0.10.2", + "block-buffer 0.12.1", "crypto-common 0.2.1", ] @@ -2183,7 +2222,7 @@ dependencies = [ "url", "wasm-bindgen", "wasm-bindgen-futures", - "wasm-streams", + "wasm-streams 0.4.2", "web-sys", "xxhash-rust", ] @@ -2471,7 +2510,7 @@ dependencies = [ "tracing", "wasm-bindgen", "wasm-bindgen-futures", - "wasm-streams", + "wasm-streams 0.4.2", "web-sys", ] @@ -2540,17 +2579,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "dlopen2" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09b4f5f101177ff01b8ec4ecc81eead416a8aa42819a2869311b3420fa114ffa" -dependencies = [ - "libc", - "once_cell", - "winapi", -] - [[package]] name = "dlopen2" version = "0.8.2" @@ -2668,13 +2696,13 @@ dependencies = [ [[package]] name = "ed25519" -version = "3.0.0-rc.4" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6e914c7c52decb085cea910552e24c63ac019e3ab8bf001ff736da9a9d9d890" +checksum = "29fcf32e6c73d1079f83ab4d782de2d81620346a5f38c6237a86a22f8368980a" dependencies = [ - "pkcs8 0.11.0-rc.11", - "serde", - "signature 3.0.0-rc.10", + "pkcs8 0.11.0", + "serdect", + "signature 3.0.0", ] [[package]] @@ -2693,16 +2721,16 @@ dependencies = [ [[package]] name = "ed25519-dalek" -version = "3.0.0-pre.1" +version = "3.0.0-rc.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad207ed88a133091f83224265eac21109930db09bedcad05d5252f2af2de20a1" +checksum = "b011170fe4f04665565b4110afef66774fe9ffff278f3eb5b81cc73d26e27d60" dependencies = [ - "curve25519-dalek 5.0.0-pre.1", - "ed25519 3.0.0-rc.4", - "rand_core 0.9.5", + "curve25519-dalek 5.0.0-rc.0", + "ed25519 3.0.0", + "rand_core 0.10.1", "serde", - "sha2 0.11.0-rc.2", - "signature 3.0.0-rc.10", + "sha2 0.11.0", + "signature 3.0.0", "subtle", "zeroize", ] @@ -2719,7 +2747,7 @@ version = "0.13.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" dependencies = [ - "base16ct", + "base16ct 0.2.0", "crypto-bigint", "digest 0.10.7", "ff", @@ -2862,13 +2890,13 @@ dependencies = [ [[package]] name = "fastbloom" -version = "0.14.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e7f34442dbe69c60fe8eaf58a8cafff81a1f278816d8ab4db255b3bef4ac3c4" +checksum = "ef975e30683b2d965054bb0a836f8973857c4ebf6acf274fe46617cd285060d8" dependencies = [ - "getrandom 0.3.4", + "foldhash 0.2.0", "libm", - "rand 0.9.4", + "portable-atomic", "siphasher 1.0.2", ] @@ -3388,6 +3416,7 @@ dependencies = [ "js-sys", "libc", "r-efi 6.0.0", + "rand_core 0.10.1", "wasip2", "wasip3", "wasm-bindgen", @@ -3691,21 +3720,15 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.16.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" +checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" dependencies = [ "allocator-api2", "equivalent", "foldhash 0.2.0", ] -[[package]] -name = "hashbrown" -version = "0.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f467dd6dccf739c208452f8014c75c18bb8301b050ad1cfb27153803edb0f51" - [[package]] name = "headers" version = "0.4.1" @@ -3762,6 +3785,35 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hickory-net" +version = "0.26.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2295ed2f9c31e471e1428a8f88a3f0e1f4b27c15049592138d1eebe9c35b183" +dependencies = [ + "async-trait", + "bytes", + "cfg-if", + "data-encoding", + "futures-channel", + "futures-io", + "futures-util", + "h2", + "hickory-proto 0.26.1", + "http 1.4.0", + "idna", + "ipnet", + "jni 0.22.4", + "rand 0.10.2", + "rustls", + "thiserror 2.0.18", + "tinyvec", + "tokio", + "tokio-rustls", + "tracing", + "url", +] + [[package]] name = "hickory-proto" version = "0.25.2" @@ -3769,47 +3821,67 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8a6fe56c0038198998a6f217ca4e7ef3a5e51f46163bd6dd60b5c71ca6c6502" dependencies = [ "async-trait", - "bytes", "cfg-if", "data-encoding", "enum-as-inner", "futures-channel", "futures-io", "futures-util", - "h2", - "http 1.4.0", "idna", "ipnet", "once_cell", "rand 0.9.4", "ring", - "rustls", "serde", "thiserror 2.0.18", "tinyvec", "tokio", - "tokio-rustls", + "tracing", + "url", +] + +[[package]] +name = "hickory-proto" +version = "0.26.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bab31817bfb44672a252e97fe81cd0c18d1b2cf892108922f6818820df8c643" +dependencies = [ + "data-encoding", + "idna", + "ipnet", + "jni 0.22.4", + "once_cell", + "prefix-trie 0.8.4", + "rand 0.10.2", + "ring", + "thiserror 2.0.18", + "tinyvec", "tracing", "url", ] [[package]] name = "hickory-resolver" -version = "0.25.2" +version = "0.26.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc62a9a99b0bfb44d2ab95a7208ac952d31060efc16241c87eaf36406fecf87a" +checksum = "f0d58d28879ceecde6607729660c2667a081ccdc082e082675042793960f178c" dependencies = [ "cfg-if", "futures-util", - "hickory-proto", + "hickory-net", + "hickory-proto 0.26.1", "ipconfig", + "ipnet", + "jni 0.22.4", "moka", + "ndk-context", "once_cell", "parking_lot", - "rand 0.9.4", + "rand 0.10.2", "resolv-conf", "rustls", "smallvec", + "system-configuration", "thiserror 2.0.18", "tokio", "tokio-rustls", @@ -3828,9 +3900,9 @@ dependencies = [ "data-encoding", "enum-as-inner", "futures-util", - "hickory-proto", + "hickory-proto 0.25.2", "ipnet", - "prefix-trie", + "prefix-trie 0.7.0", "serde", "thiserror 2.0.18", "time", @@ -4202,11 +4274,10 @@ dependencies = [ [[package]] name = "igd-next" -version = "0.16.2" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "516893339c97f6011282d5825ac94fc1c7aad5cad26bdc2d0cee068c0bf97f97" +checksum = "de7238d487a9aff61f81b5ab41c0a841532a115a398b5fa92a2fadd0885e2581" dependencies = [ - "async-trait", "attohttpc", "bytes", "futures", @@ -4215,7 +4286,7 @@ dependencies = [ "hyper", "hyper-util", "log", - "rand 0.9.4", + "rand 0.10.2", "tokio", "url", "xmltree", @@ -4371,22 +4442,25 @@ dependencies = [ [[package]] name = "iroh" -version = "0.97.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "feb56e7e4b0ec7fba7efa6a236b016a52b5d927d50244aceb9e20566159b1a32" +checksum = "5fca9b4b462c343ff88fc0af4096c186f939b602a0bc08723536ef2c31c93971" dependencies = [ "backon", + "blake3", "bytes", "cfg_aliases", + "ctutils", "data-encoding", "derive_more 2.1.1", - "ed25519-dalek 3.0.0-pre.1", + "ed25519-dalek 3.0.0-rc.0", "futures-util", - "getrandom 0.3.4", + "getrandom 0.4.2", "hickory-resolver", "http 1.4.0", "ipnet", - "iroh-base 0.97.0", + "iroh-base", + "iroh-dns", "iroh-metrics", "iroh-relay", "n0-error", @@ -4398,20 +4472,16 @@ dependencies = [ "noq-udp", "papaya", "pin-project", - "pkarr", - "pkcs8 0.11.0-rc.11", "portable-atomic", "portmapper", - "rand 0.9.4", - "reqwest 0.12.28", + "rand 0.10.2", + "reqwest 0.13.3", "rustc-hash 2.1.2", "rustls", "rustls-pki-types", - "rustls-webpki", "serde", "smallvec", - "strum 0.28.0", - "sync_wrapper", + "strum", "time", "tokio", "tokio-stream", @@ -4419,75 +4489,57 @@ dependencies = [ "tracing", "url", "wasm-bindgen-futures", - "webpki-roots", -] - -[[package]] -name = "iroh-base" -version = "0.95.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25a8c5fb1cc65589f0d7ab44269a76f615a8c4458356952c9b0ef1c93ea45ff8" -dependencies = [ - "curve25519-dalek 5.0.0-pre.1", - "data-encoding", - "derive_more 2.1.1", - "ed25519-dalek 3.0.0-pre.1", - "n0-error", - "rand_core 0.9.5", - "serde", - "url", - "zeroize", - "zeroize_derive", ] [[package]] name = "iroh-base" -version = "0.97.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55a354e3396b62c14717ee807dfee9a7f43f6dad47e4ac0fd1d49f1ffad14ef0" +checksum = "830a582cd54410dc1aa71d4786a82c3297d7b0165accd8b6dbbb3b240b48140d" dependencies = [ - "curve25519-dalek 5.0.0-pre.1", + "curve25519-dalek 5.0.0-rc.0", "data-encoding", + "data-encoding-macro", "derive_more 2.1.1", - "digest 0.11.0-rc.10", - "ed25519-dalek 3.0.0-pre.1", + "ed25519-dalek 3.0.0-rc.0", + "getrandom 0.4.2", "n0-error", - "rand_core 0.9.5", + "rand 0.10.2", "serde", - "sha2 0.11.0-rc.2", "url", "zeroize", - "zeroize_derive", ] [[package]] name = "iroh-blobs" -version = "0.99.0" +version = "0.103.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51b06914e77bd07bc1b3600096be66e2a63d391e8f4a901f61771630e20f2116" +checksum = "5be50b0e2d0a9ba65cee4e0dfb708b3704e02ad12bd4c14c6307e94245943126" dependencies = [ "arrayvec", "bao-tree", "bytes", "cfg_aliases", "chrono", + "constant_time_eq", "data-encoding", "derive_more 2.1.1", - "futures-lite", "genawaiter", + "getrandom 0.4.2", "hex", "iroh", - "iroh-base 0.97.0", + "iroh-base", "iroh-io", "iroh-metrics", - "iroh-tickets 0.4.0", + "iroh-tickets", + "iroh-util", "irpc", "n0-error", "n0-future", "nested_enum_utils", "noq", "postcard", - "rand 0.9.4", + "rand 0.10.2", "range-collections", "redb", "ref-cast", @@ -4499,6 +4551,30 @@ dependencies = [ "tracing", ] +[[package]] +name = "iroh-dns" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "516e4eedc38e33ab69a6bd325520332dc3d67b25454e2d590ebb84a25240dd9a" +dependencies = [ + "arc-swap", + "cfg_aliases", + "derive_more 2.1.1", + "hickory-resolver", + "iroh-base", + "n0-error", + "n0-future", + "ndk-context", + "portable-atomic", + "rand 0.10.2", + "rustls", + "simple-dns", + "strum", + "tokio", + "tracing", + "url", +] + [[package]] name = "iroh-io" version = "0.6.2" @@ -4514,15 +4590,14 @@ dependencies = [ [[package]] name = "iroh-metrics" -version = "0.38.3" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "761b45ba046134b11eb3e432fa501616b45c4bf3a30c21717578bc07aa6461dd" +checksum = "291065721ad7c477b972e581bbc528df031dc8eb5e39fe1ff3300ae5dfb157ef" dependencies = [ "iroh-metrics-derive", "itoa", "n0-error", "portable-atomic", - "postcard", "ryu", "serde", "tracing", @@ -4530,9 +4605,9 @@ dependencies = [ [[package]] name = "iroh-metrics-derive" -version = "0.4.1" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab063c2bfd6c3d5a33a913d4fdb5252f140db29ec67c704f20f3da7e8f92dbf" +checksum = "1ae5f0c4405d1fbc9fb16ff422ca40620e93dc36c30ecaba0c2aee3992b7bd48" dependencies = [ "heck 0.5.0", "proc-macro2", @@ -4542,9 +4617,9 @@ dependencies = [ [[package]] name = "iroh-proxy-utils" -version = "0.1.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "250d4c136ea9b2226f7f50abc774129e8c59328eede75396d9dc618ec5548150" +checksum = "04b6b153517f13e1e6e935d431b598f585aff67d7bb81a1891719780ce1c2e0b" dependencies = [ "bytes", "derive_more 2.1.1", @@ -4555,12 +4630,12 @@ dependencies = [ "hyper", "hyper-util", "iroh", - "iroh-blobs", "iroh-metrics", + "iroh-util", "n0-error", "n0-future", "pin-project", - "reqwest 0.12.28", + "reqwest 0.13.3", "tokio", "tokio-util", "tracing", @@ -4623,22 +4698,23 @@ dependencies = [ [[package]] name = "iroh-relay" -version = "0.97.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d786b260cadfe82ae0b6a9e372e8c78949096a06c857d1c3521355cefced0f55" +checksum = "8149bb6a57126225a07d6928846d82dcedfd24ea0f863ef7b2eb475e1d726354" dependencies = [ "blake3", "bytes", "cfg_aliases", "data-encoding", "derive_more 2.1.1", - "getrandom 0.3.4", + "getrandom 0.4.2", "hickory-resolver", "http 1.4.0", "http-body-util", "hyper", "hyper-util", - "iroh-base 0.97.0", + "iroh-base", + "iroh-dns", "iroh-metrics", "lru", "n0-error", @@ -4647,15 +4723,14 @@ dependencies = [ "noq-proto", "num_enum", "pin-project", - "pkarr", "postcard", - "rand 0.9.4", - "reqwest 0.12.28", + "rand 0.10.2", + "reqwest 0.13.3", "rustls", "rustls-pki-types", "serde", "serde_bytes", - "strum 0.28.0", + "strum", "tokio", "tokio-rustls", "tokio-util", @@ -4665,36 +4740,37 @@ dependencies = [ "vergen-gitcl", "webpki-roots", "ws_stream_wasm", - "z32", ] [[package]] name = "iroh-services" -version = "0.12.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "983bab90919b719b2f0c73277c78f7d77c9eccb5e9fdcbab4383be97a233c489" +checksum = "a1a88cd95fbd20abd9eadc4df91c722915dc943412b964e915f35b0b0a46a1fd" dependencies = [ "anyhow", - "built 0.7.7", + "base64 0.22.1", + "built", "bytes", + "data-encoding", "derive_more 2.1.1", - "ed25519-dalek 3.0.0-pre.1", + "ed25519-dalek 3.0.0-rc.0", "futures-buffered", - "getrandom 0.3.4", + "getrandom 0.4.2", "iroh", "iroh-metrics", - "iroh-tickets 0.4.0", + "iroh-tickets", "irpc", "irpc-iroh", "n0-error", "n0-future", "portmapper", "postcard", - "rand 0.9.4", + "rand 0.10.2", "rcan", "serde", "serde_json", - "strum 0.27.2", + "strum", "thiserror 2.0.18", "tokio", "tracing", @@ -4704,37 +4780,37 @@ dependencies = [ [[package]] name = "iroh-tickets" -version = "0.2.0" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a322053cacddeca222f0999ce3cf6aa45c64ae5ad8c8911eac9b66008ffbaa5" +checksum = "da53233419ca36bf521ed45683b7748366f9b233032891eefc2d70567a84ac54" dependencies = [ "data-encoding", "derive_more 2.1.1", - "iroh-base 0.95.1", + "iroh-base", "n0-error", "postcard", "serde", ] [[package]] -name = "iroh-tickets" -version = "0.4.0" +name = "iroh-util" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab64bac4bb573b9cfd2142bd2876ed65ca792efbc4398361a4ee51a0f9afbed6" +checksum = "20e41eb982f15230c55f0a70a74a514360e1f565b07861924fd0e8db172b3d00" dependencies = [ - "data-encoding", "derive_more 2.1.1", - "iroh-base 0.97.0", + "iroh", "n0-error", - "postcard", - "serde", + "n0-future", + "tokio", + "tracing", ] [[package]] name = "irpc" -version = "0.13.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f47b7c52662d673df377b5ac40c121c7ff56eb764e520fae6543686132f7957" +checksum = "3623d6ff582b415904b29bbe6ebcb4a4f9a262ccdee05a45fdd003ef0950c386" dependencies = [ "futures-buffered", "futures-util", @@ -4754,9 +4830,9 @@ dependencies = [ [[package]] name = "irpc-derive" -version = "0.10.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "83c1a4b460634aeed6dc01236a0047867de70e30562d91a0ad031dcb3ac33fb4" +checksum = "35c254013736de16472140d26904e6ac98e8f3887284dcf4af40f88c77411b56" dependencies = [ "proc-macro2", "quote", @@ -4765,13 +4841,13 @@ dependencies = [ [[package]] name = "irpc-iroh" -version = "0.13.0" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd882f8cc059ac28ff54195a4933226807206c939c14680281c0ddb8434b3a8" +checksum = "2342daed629b312f61e57e452b0750a59da162f261b97f260a6354de61d4fb0e" dependencies = [ "getrandom 0.3.4", "iroh", - "iroh-base 0.97.0", + "iroh-base", "irpc", "n0-error", "n0-future", @@ -5152,14 +5228,14 @@ dependencies = [ "hyper", "hyper-util", "iroh", - "iroh-base 0.97.0", + "iroh-base", "iroh-blobs", "iroh-metrics", "iroh-proxy-utils", "iroh-quinn", "iroh-relay", "iroh-services", - "iroh-tickets 0.2.0", + "iroh-tickets", "k8s-openapi", "kube", "log", @@ -5168,7 +5244,6 @@ dependencies = [ "n0-tracing-test", "open", "openidconnect", - "pkcs8 0.11.0-rc.11", "postcard", "rand 0.9.4", "reqwest 0.12.28", @@ -5369,11 +5444,11 @@ dependencies = [ [[package]] name = "lru" -version = "0.16.4" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f66e8d5d03f609abc3a39e6f08e4164ebf1447a732906d39eb9b99b7919ef39" +checksum = "8a860605968fce16869fd239cf4237a82f3ac470723415db603b0e8b6c8d4fb9" dependencies = [ - "hashbrown 0.16.1", + "hashbrown 0.17.0", ] [[package]] @@ -5664,9 +5739,9 @@ dependencies = [ [[package]] name = "n0-error" -version = "0.1.3" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af4782b4baf92d686d161c15460c83d16ebcfd215918763903e9619842665cae" +checksum = "c37e81176a83a77d2514528b91bdafc70ef88aab428f0e1b91aebb8d99888895" dependencies = [ "anyhow", "n0-error-macros", @@ -5675,9 +5750,9 @@ dependencies = [ [[package]] name = "n0-error-macros" -version = "0.1.3" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03755949235714b2b307e5ae89dd8c1c2531fb127d9b8b7b4adf9c876cd3ed18" +checksum = "e2acd8b070213b0299282f884b4beba4e7b52d624fdcd504a3ad3665390c11e1" dependencies = [ "proc-macro2", "quote", @@ -5728,9 +5803,9 @@ dependencies = [ [[package]] name = "n0-watcher" -version = "0.6.1" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38795f7932e6e9d1c6e989270ef5b3ff24ebb910e2c9d4bed2d28d8bae3007dc" +checksum = "bbc618745ad0b7414b149d0517ad8b5573b2fb4d4e2717add3d2446ce1fdd826" dependencies = [ "derive_more 2.1.1", "n0-error", @@ -5798,24 +5873,29 @@ dependencies = [ [[package]] name = "netdev" -version = "0.40.1" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b0a0096d9613ee878dba89bbe595f079d373e3f1960d882e4f2f78ff9c30a0a" +checksum = "569dfbdd2efd771b24ec9bb57f956e04d4fbfc72f62b2f11961723f9b3f4b020" dependencies = [ "block2", "dispatch2", - "dlopen2 0.5.0", + "dlopen2", "ipnet", + "jni 0.21.1", "libc", "mac-addr", + "ndk-context", "netlink-packet-core", "netlink-packet-route", "netlink-sys", + "objc2", "objc2-core-foundation", + "objc2-core-wlan", + "objc2-foundation", "objc2-system-configuration", "once_cell", "plist", - "windows-sys 0.59.0", + "windows-sys 0.61.2", ] [[package]] @@ -5829,9 +5909,9 @@ dependencies = [ [[package]] name = "netlink-packet-route" -version = "0.29.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df9854ea6ad14e3f4698a7f03b65bce0833dd2d81d594a0e4a984170537146b6" +checksum = "e2288fcb784eb3defd5fb16f4c4160d5f477de192eac730f43e1d11c24d9a007" dependencies = [ "bitflags 2.11.1", "libc", @@ -5868,14 +5948,15 @@ dependencies = [ [[package]] name = "netwatch" -version = "0.15.0" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b1b27babe89ef9f2237bc6c028bea24fa84163a1b6f8f17ff93573ebd7d861f" +checksum = "4d9cbe01741347ef750d743d6690603f5eed8341e679fb51c8e629337aa11976" dependencies = [ "atomic-waker", "bytes", "cfg_aliases", "derive_more 2.1.1", + "ipnet", "js-sys", "libc", "n0-error", @@ -5962,12 +6043,13 @@ checksum = "0676bb32a98c1a483ce53e500a81ad9c3d5b3f7c920c28c24e9cb0980d0b5bc8" [[package]] name = "noq" -version = "0.17.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8df966fb44ac763bc86da97fa6c811c54ae82ef656575949f93c6dae0c9f09bf" +checksum = "4bf95190af1bd4a00a10e8255ca0c8ddd9e9a9f5e79151d7a7eb6d56aff5dc89" dependencies = [ "bytes", "cfg_aliases", + "derive_more 2.1.1", "noq-proto", "noq-udp", "pin-project-lite", @@ -5983,24 +6065,25 @@ dependencies = [ [[package]] name = "noq-proto" -version = "0.16.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c61b72abd670eebc05b5cf720e077b04a3ef3354bc7bc19f1c3524cb424db7b" +checksum = "aa6c890013591e709a3e45dd53501351b7e27e7ff3c7e9fc3dce43e300e7e9d3" dependencies = [ "aes-gcm", "bytes", "derive_more 2.1.1", "enum-assoc", "fastbloom", - "getrandom 0.3.4", + "getrandom 0.4.2", "identity-hash", "lru-slab", - "rand 0.9.4", + "rand 0.10.2", + "rand_pcg 0.10.2", "ring", "rustc-hash 2.1.2", "rustls", "rustls-pki-types", - "rustls-platform-verifier 0.6.2", + "rustls-platform-verifier 0.7.0", "slab", "sorted-index-buffer", "thiserror 2.0.18", @@ -6011,9 +6094,9 @@ dependencies = [ [[package]] name = "noq-udp" -version = "0.9.0" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb9be4fedd6b98f3ba82ccd3506f4d0219fb723c3f97c67e12fe1494aa020e44" +checksum = "3137a52df66c20090a889828d1c655f21f52294cba64e5c4fbb04fc83eee7c8e" dependencies = [ "cfg_aliases", "libc", @@ -6022,21 +6105,6 @@ dependencies = [ "windows-sys 0.61.2", ] -[[package]] -name = "ntimestamp" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c50f94c405726d3e0095e89e72f75ce7f6587b94a8bd8dc8054b73f65c0fd68c" -dependencies = [ - "base32", - "document-features", - "getrandom 0.2.17", - "httpdate", - "js-sys", - "once_cell", - "serde", -] - [[package]] name = "nu-ansi-term" version = "0.50.3" @@ -6314,6 +6382,20 @@ dependencies = [ "objc2-io-surface", ] +[[package]] +name = "objc2-core-wlan" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c71e34919aba0d701380d911702455038a8a3587467fe0141d6a71501e7ffe48" +dependencies = [ + "bitflags 2.11.1", + "objc2", + "objc2-core-foundation", + "objc2-foundation", + "objc2-security", + "objc2-security-foundation", +] + [[package]] name = "objc2-encode" version = "4.1.0" @@ -6376,6 +6458,16 @@ dependencies = [ "objc2-core-foundation", ] +[[package]] +name = "objc2-security-foundation" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef76382e9cedd18123099f17638715cc3d81dba3637d4c0d39ab69df2ef345a5" +dependencies = [ + "objc2", + "objc2-foundation", +] + [[package]] name = "objc2-system-configuration" version = "0.3.2" @@ -6940,25 +7032,6 @@ version = "0.2.17" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a89322df9ebe1c1578d689c92318e070967d1042b512afbe49518723f4e6d5cd" -[[package]] -name = "pkarr" -version = "5.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d7bfb9143bbba379f246211eb68074d78db9cc048e4c5701f3b0e6cb1ec67ca2" -dependencies = [ - "base32", - "bytes", - "cfg_aliases", - "document-features", - "ed25519-dalek 3.0.0-pre.1", - "getrandom 0.4.2", - "ntimestamp", - "self_cell", - "serde", - "simple-dns", - "thiserror 2.0.18", -] - [[package]] name = "pkcs1" version = "0.7.5" @@ -6982,9 +7055,9 @@ dependencies = [ [[package]] name = "pkcs8" -version = "0.11.0-rc.11" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12922b6296c06eb741b02d7b5161e3aaa22864af38dfa025a1a3ba3f68c84577" +checksum = "451913da69c775a56034ea8d9003d27ee8948e12443eae7c038ba100a4f21cb7" dependencies = [ "der 0.8.0", "spki 0.8.0", @@ -7064,23 +7137,22 @@ dependencies = [ [[package]] name = "portmapper" -version = "0.15.0" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74748bc706fa6b6aebac6bbe0bbe0de806b384cb5c557ea974f771360a4e3858" +checksum = "eb3713e4977408279158444a18c1a01ac9bf2e7eaf1fbfd1a19ac9cd18d90721" dependencies = [ "base64 0.22.1", "bytes", "derive_more 2.1.1", - "futures-lite", - "futures-util", "hyper-util", "igd-next", "iroh-metrics", "libc", "n0-error", + "n0-future", "netwatch", "num_enum", - "rand 0.9.4", + "rand 0.10.2", "serde", "smallvec", "socket2 0.6.3", @@ -7167,6 +7239,17 @@ dependencies = [ "num-traits", ] +[[package]] +name = "prefix-trie" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cf6e3177f0684016a5c209b00882e15f8bdd3f3bb48f0491df10cd102d0c6e7" +dependencies = [ + "either", + "ipnet", + "num-traits", +] + [[package]] name = "prettyplease" version = "0.2.37" @@ -7383,6 +7466,7 @@ version = "0.11.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "434b42fec591c96ef50e21e886936e66d3cc3f737104fdb9b737c40ffb94c098" dependencies = [ + "aws-lc-rs", "bytes", "getrandom 0.3.4", "lru-slab", @@ -7444,7 +7528,7 @@ dependencies = [ "rand_chacha 0.2.2", "rand_core 0.5.1", "rand_hc", - "rand_pcg", + "rand_pcg 0.2.1", ] [[package]] @@ -7468,6 +7552,17 @@ dependencies = [ "rand_core 0.9.5", ] +[[package]] +name = "rand" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7f5fa3a058cd35567ef9bfa5e75732bee0f9e4c55fa90477bef2dfcdbc4be80" +dependencies = [ + "chacha20", + "getrandom 0.4.2", + "rand_core 0.10.1", +] + [[package]] name = "rand_chacha" version = "0.2.2" @@ -7525,6 +7620,12 @@ dependencies = [ "getrandom 0.3.4", ] +[[package]] +name = "rand_core" +version = "0.10.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "63b8176103e19a2643978565ca18b50549f6101881c443590420e4dc998a3c69" + [[package]] name = "rand_hc" version = "0.2.0" @@ -7543,6 +7644,15 @@ dependencies = [ "rand_core 0.5.1", ] +[[package]] +name = "rand_pcg" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "caa0f4137e1c0a72f4c651489402276c8e8e1cf081f3b0ba156d2cbeef09e86a" +dependencies = [ + "rand_core 0.10.1", +] + [[package]] name = "range-collections" version = "0.4.6" @@ -7569,7 +7679,7 @@ dependencies = [ "av-scenechange", "av1-grain", "bitstream-io", - "built 0.8.0", + "built", "cfg-if", "interpolate_name", "itertools 0.14.0", @@ -7640,20 +7750,18 @@ dependencies = [ [[package]] name = "rcan" -version = "0.3.0" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "725eb86d019799495be1164a962cbaf8f8cd1553e0f1e602d8fd6671fc619498" +checksum = "12a624a4a4742f8c6e58fba99712e606cea0491b76f5b2345f06af5802101027" dependencies = [ "anyhow", - "blake3", "derive_more 2.1.1", - "ed25519-dalek 3.0.0-pre.1", - "getrandom 0.3.4", + "ed25519-dalek 3.0.0-rc.0", "hex", "n0-future", "postcard", - "rand 0.9.4", "serde", + "serdect", ] [[package]] @@ -7672,9 +7780,9 @@ dependencies = [ [[package]] name = "redb" -version = "2.6.3" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8eca1e9d98d5a7e9002d0013e18d5a9b000aee942eb134883a82f06ebffb6c01" +checksum = "8e925444704b5f17d32bf42f5b6e2df050bceebc3dcd6e71cc73dafe8092e839" dependencies = [ "libc", ] @@ -7822,7 +7930,7 @@ dependencies = [ "url", "wasm-bindgen", "wasm-bindgen-futures", - "wasm-streams", + "wasm-streams 0.4.2", "web-sys", "webpki-roots", ] @@ -7851,18 +7959,24 @@ dependencies = [ "native-tls", "percent-encoding", "pin-project-lite", + "quinn", + "rustls", "rustls-pki-types", + "rustls-platform-verifier 0.6.2", "serde", "serde_json", "sync_wrapper", "tokio", "tokio-native-tls", + "tokio-rustls", + "tokio-util", "tower", "tower-http", "tower-service", "url", "wasm-bindgen", "wasm-bindgen-futures", + "wasm-streams 0.5.0", "web-sys", ] @@ -8075,6 +8189,27 @@ dependencies = [ "windows-sys 0.61.2", ] +[[package]] +name = "rustls-platform-verifier" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d1e2536ce4f35f4846aa13bff16bd0ff40157cdb14cc056c7b14ba41233ba0" +dependencies = [ + "core-foundation 0.10.1", + "core-foundation-sys", + "jni 0.22.4", + "log", + "once_cell", + "rustls", + "rustls-native-certs", + "rustls-platform-verifier-android", + "rustls-webpki", + "security-framework", + "security-framework-sys", + "webpki-root-certs 1.0.7", + "windows-sys 0.61.2", +] + [[package]] name = "rustls-platform-verifier-android" version = "0.1.1" @@ -8178,7 +8313,7 @@ version = "0.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" dependencies = [ - "base16ct", + "base16ct 0.2.0", "der 0.7.10", "generic-array", "pkcs8 0.10.2", @@ -8600,6 +8735,16 @@ dependencies = [ "version_check", ] +[[package]] +name = "serdect" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "66cf8fedced2fcf12406bcb34223dffb92eaf34908ede12fed414c82b7f00b3e" +dependencies = [ + "base16ct 1.0.0", + "serde", +] + [[package]] name = "servo_arc" version = "0.2.0" @@ -8621,6 +8766,12 @@ dependencies = [ "digest 0.10.7", ] +[[package]] +name = "sha1_smol" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbfa15b3dddfee50a0fff136974b3e1bde555604ba463834a7eb7deb6417705d" + [[package]] name = "sha2" version = "0.10.9" @@ -8634,13 +8785,13 @@ dependencies = [ [[package]] name = "sha2" -version = "0.11.0-rc.2" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1e3878ab0f98e35b2df35fe53201d088299b41a6bb63e3e34dada2ac4abd924" +checksum = "446ba717509524cb3f22f17ecc096f10f4822d76ab5c0b9822c5f9c284e825f4" dependencies = [ "cfg-if", - "cpufeatures 0.2.17", - "digest 0.11.0-rc.10", + "cpufeatures 0.3.0", + "digest 0.11.3", ] [[package]] @@ -8690,9 +8841,9 @@ dependencies = [ [[package]] name = "signature" -version = "3.0.0-rc.10" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f1880df446116126965eeec169136b2e0251dba37c6223bcc819569550edea3" +checksum = "28d567dcbaf0049cb8ac2608a76cd95ff9e4412e1899d389ee400918ca7537f5" [[package]] name = "simd-adler32" @@ -8956,34 +9107,13 @@ version = "0.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" -[[package]] -name = "strum" -version = "0.27.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af23d6f6c1a224baef9d3f61e287d2761385a5b88fdab4eb4c6f11aeb54c4bcf" -dependencies = [ - "strum_macros 0.27.2", -] - [[package]] name = "strum" version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9628de9b8791db39ceda2b119bbe13134770b56c138ec1d3af810d045c04f9bd" dependencies = [ - "strum_macros 0.28.0", -] - -[[package]] -name = "strum_macros" -version = "0.27.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7695ce3845ea4b33927c055a39dc438a45b059f7c1b3d91d38d10355fb8cbca7" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "syn 2.0.117", + "strum_macros", ] [[package]] @@ -9143,7 +9273,7 @@ dependencies = [ "core-graphics 0.25.0", "crossbeam-channel", "dispatch2", - "dlopen2 0.8.2", + "dlopen2", "dpi", "gdkwayland-sys", "gdkx11-sys", @@ -9420,20 +9550,21 @@ dependencies = [ [[package]] name = "tokio-websockets" -version = "0.12.3" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1b6348ebfaaecd771cecb69e832961d277f59845d4220a584701f72728152b7" +checksum = "d52efb639344a7c6adb8e62c6f3d2c19c001ff1b79a5041ba1c6ed42e19c6aa5" dependencies = [ "base64 0.22.1", "bytes", "futures-core", "futures-sink", - "getrandom 0.3.4", + "getrandom 0.4.2", "http 1.4.0", "httparse", - "rand 0.9.4", + "rand 0.10.2", "ring", "rustls-pki-types", + "sha1_smol", "simdutf8", "tokio", "tokio-rustls", @@ -9913,32 +10044,21 @@ dependencies = [ "anyhow", "derive_builder", "rustversion", - "vergen-lib 9.1.0", + "vergen-lib", ] [[package]] name = "vergen-gitcl" -version = "1.0.8" +version = "9.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9dfc1de6eb2e08a4ddf152f1b179529638bedc0ea95e6d667c014506377aefe" +checksum = "77ff3b5300a085d6bcd8fc96a507f706a28ae3814693236c9b409db71a1d15b9" dependencies = [ "anyhow", "derive_builder", "rustversion", "time", "vergen", - "vergen-lib 0.1.6", -] - -[[package]] -name = "vergen-lib" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b07e6010c0f3e59fcb164e0163834597da68d1f864e2b8ca49f74de01e9c166" -dependencies = [ - "anyhow", - "derive_builder", - "rustversion", + "vergen-lib", ] [[package]] @@ -10125,6 +10245,19 @@ dependencies = [ "web-sys", ] +[[package]] +name = "wasm-streams" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d1ec4f6517c9e11ae630e200b2b65d193279042e28edd4a2cda233e46670bbb" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + [[package]] name = "wasmparser" version = "0.244.0" @@ -11147,18 +11280,18 @@ dependencies = [ [[package]] name = "zeroize" -version = "1.8.2" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b97154e67e32c85465826e8bcc1c59429aaaf107c1e4a9e53c8d8ccd5eff88d0" +checksum = "e13c156562582aa81c60cb29407084cdb54c4164760106ab78e6c5b0858cf64e" dependencies = [ "zeroize_derive", ] [[package]] name = "zeroize_derive" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85a5b4158499876c763cb03bc4e49185d3cccbabb15b33c627f7884f43db852e" +checksum = "3c50655cbb0fe3fc43170059e702f1ce5e19b84cec58dc87b037a09935c2f328" dependencies = [ "proc-macro2", "quote", diff --git a/Cargo.toml b/Cargo.toml index 2dd41a1..be58d65 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -8,7 +8,7 @@ exclude = ["n0des-local"] resolver = "2" [workspace.dependencies] -iroh-proxy-utils = "0.1.0" +iroh-proxy-utils = "0.3" lib = { path = "lib" } # n0-snafu 0.2.2 requires ^0.7.0 but color-backtrace 0.7.3 removed # `is_dependency_code` which n0-snafu uses. This constraint intersects with @@ -26,12 +26,12 @@ hex = "0.4.3" http = "1" hyper = "1" hyper-util = { version = "0.1.19", features = ["full"] } -iroh = { version = "0.97", default-features = false } -iroh-base = { version = "0.97" } -iroh-tickets = "0.2" -iroh-metrics = "0.38" -iroh-services = { version = "0.12", features = ["net_diagnostics", "client_host"] } -iroh-relay = { version = "0.97" } +iroh = { version = "1.0", default-features = false } +iroh-base = { version = "1.0" } +iroh-tickets = "1.0" +iroh-metrics = "1.0" +iroh-services = { version = "1.0" } +iroh-relay = { version = "1.0" } log = "0.4" open = "5" openidconnect = "4.0.1" @@ -51,7 +51,7 @@ tracing = "0.1.40" tracing-subscriber = { version = "0.3.20", features = ["env-filter"] } tracing-appender = "0.2" data-encoding = "2.9.0" -n0-error = { version = "0.1", features = ["anyhow"] } +n0-error = { version = "1.0", features = ["anyhow"] } n0-future = "0.3" uuid = { version = "1.18.1", features = ["v4"] } url = "2" diff --git a/lib/Cargo.toml b/lib/Cargo.toml index b2ab55c..a2bfc4d 100644 --- a/lib/Cargo.toml +++ b/lib/Cargo.toml @@ -46,20 +46,13 @@ tracing-subscriber.workspace = true tracing.workspace = true url.workspace = true uuid.workspace = true -iroh-blobs = "0.99.0" +iroh-blobs = "0.103.0" httparse = "1.10.1" ttl_cache = "0.5.1" k8s-openapi = { version = "0.26.1", features = ["v1_30"] } kube = { version = "2.0.1", default-features = false, features = ["client", "derive", "rustls-tls"] } gateway-api = "0.19.0" gethostname = "1.1.0" -# Pin transitive: pkcs8 0.11.0-rc.12 (released 2026-04-27) made -# Error::KeyMalformed a tuple variant, breaking both ed25519 3.0.0-rc.4 and -# ed25519-dalek 3.0.0-pre.1 (used via iroh*) which still treat it as a unit -# variant. Bundle CI runs `cargo generate-lockfile`, so the constraint must -# live in the manifest, not just the lock. Remove once iroh upgrades to an -# ed25519/dalek release that targets pkcs8 rc.12+. -pkcs8 = "=0.11.0-rc.11" [dev-dependencies] http-body-util = "0.1.3" diff --git a/lib/src/node.rs b/lib/src/node.rs index 2d43425..5de8b53 100644 --- a/lib/src/node.rs +++ b/lib/src/node.rs @@ -3,6 +3,7 @@ use std::{fmt::Debug, net::SocketAddr, str::FromStr, sync::Arc, time::Duration}; use iroh::{ Endpoint, EndpointId, SecretKey, address_lookup::dns::DnsAddressLookup, + dns::{DnsProtocol, DnsResolver}, endpoint::{default_relay_mode, presets}, protocol::Router, }; @@ -15,7 +16,6 @@ use iroh_proxy_utils::{ downstream::{DownstreamProxy, EndpointAuthority, ProxyMode}, upstream::{AuthError, AuthHandler, UpstreamProxy}, }; -use iroh_relay::dns::{DnsProtocol, DnsResolver}; use iroh_relay::{RelayConfig, RelayMap}; use iroh_services::CLIENT_HOST_ALPN; use n0_error::{Result, StdResultExt}; @@ -310,7 +310,7 @@ impl OutboundProxyHandle { pub(crate) async fn build_endpoint(secret_key: SecretKey, common: &Config) -> Result { let relay_mode = relay_mode_from_env_or_build().await?; let mut builder = match common.discovery_mode { - crate::config::DiscoveryMode::Dns => Endpoint::empty_builder() + crate::config::DiscoveryMode::Dns => Endpoint::builder(presets::Empty) .relay_mode(relay_mode) .secret_key(secret_key), crate::config::DiscoveryMode::Default | crate::config::DiscoveryMode::Hybrid => { diff --git a/lib/src/repo.rs b/lib/src/repo.rs index c3975ab..1f960e7 100644 --- a/lib/src/repo.rs +++ b/lib/src/repo.rs @@ -129,7 +129,7 @@ impl Repo { } async fn create_key(&self, key_file_path: &PathBuf) -> Result { - let key = SecretKey::generate(&mut rand::rng()); + let key = SecretKey::generate(); tokio::fs::write(key_file_path, key.to_bytes()).await?; Ok(key) } diff --git a/lib/src/state.rs b/lib/src/state.rs index ca656b8..c428fe8 100644 --- a/lib/src/state.rs +++ b/lib/src/state.rs @@ -269,18 +269,18 @@ impl FromStr for AdvertismentTicket { type Err = ParseError; fn from_str(s: &str) -> Result { - iroh_tickets::Ticket::deserialize(s) + Self::decode_string(s) } } impl Ticket for AdvertismentTicket { const KIND: &'static str = "datum"; - fn to_bytes(&self) -> Vec { + fn encode_bytes(&self) -> Vec { postcard::to_allocvec(&self).expect("serialize should work") } - fn from_bytes(bytes: &[u8]) -> Result { + fn decode_bytes(bytes: &[u8]) -> Result { let ticket: Self = postcard::from_bytes(bytes)?; Ok(ticket) } diff --git a/n0des-local/Cargo.toml b/n0des-local/Cargo.toml index ffb4264..63e00ef 100644 --- a/n0des-local/Cargo.toml +++ b/n0des-local/Cargo.toml @@ -7,8 +7,8 @@ publish = false [dependencies] iroh = { workspace = true } iroh-n0des = "0.10" -irpc = "0.13" -irpc-iroh = "0.13" +irpc = "0.17" +irpc-iroh = "0.17" n0-error = { workspace = true } rand = { workspace = true } tokio = { workspace = true } diff --git a/n0des-local/src/lib.rs b/n0des-local/src/lib.rs index 3cb749f..451dab0 100644 --- a/n0des-local/src/lib.rs +++ b/n0des-local/src/lib.rs @@ -27,7 +27,7 @@ pub fn start(endpoint: Endpoint) -> Result<(ApiSecret, Router)> { .spawn(); // Create an ApiSecret ticket string that clients can put into N0DES_API_SECRET. - let api_secret_key = SecretKey::generate(&mut rand::rng()); + let api_secret_key = SecretKey::generate(); let api_secret = ApiSecret::new(api_secret_key, endpoint.addr()); Ok((api_secret, router))