diff --git a/Cargo.lock b/Cargo.lock index 859c6cf97..c4d9025c1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -169,7 +169,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "synstructure", ] @@ -181,7 +181,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -204,7 +204,7 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -215,7 +215,7 @@ checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -267,7 +267,7 @@ dependencies = [ "serde_json", "serde_path_to_error", "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper 1.0.2", "tokio", "tower", "tower-layer", @@ -290,7 +290,7 @@ dependencies = [ "mime", "pin-project-lite", "rustversion", - "sync_wrapper 1.0.1", + "sync_wrapper 1.0.2", "tower-layer", "tower-service", "tracing", @@ -345,12 +345,6 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - [[package]] name = "base64" version = "0.22.1" @@ -369,15 +363,6 @@ version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "597bb81c80a54b6a4381b23faba8d7774b144c94cbd1d6fe3f1329bd776554ab" -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - [[package]] name = "bit-set" version = "0.5.3" @@ -474,9 +459,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.31" +version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2e7962b54006dcfcc61cb72735f4d89bb97061dd6a7ed882ec6b8ee53714c6f" +checksum = "fd9de9f2205d5ef3fd67e685b0df337994ddd4495e2a28d185500d0e1edfea47" dependencies = [ "shlex", ] @@ -564,10 +549,10 @@ version = "4.5.18" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" dependencies = [ - "heck 0.5.0", + "heck", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -660,9 +645,9 @@ checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" [[package]] name = "cpufeatures" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ca741a962e1b0bff6d724a1a0958b686406e853bb14061f218562e1896f95e6" +checksum = "16b80225097f2e5ae4e7179dd2266824648f3e2f49d9134d584b76389d31c4c3" dependencies = [ "libc", ] @@ -767,16 +752,17 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] name = "dashmap" -version = "5.5.3" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" dependencies = [ "cfg-if", + "crossbeam-utils", "hashbrown 0.14.5", "lock_api", "once_cell", @@ -822,7 +808,7 @@ checksum = "8034092389675178f570469e6c3b0465d3d30b4505c294a6550db47f3c17ad18" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -852,7 +838,7 @@ checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "unicode-xid", ] @@ -882,7 +868,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1024,10 +1010,10 @@ version = "0.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" dependencies = [ - "heck 0.5.0", + "heck", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1040,7 +1026,7 @@ dependencies = [ "num-traits", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1060,7 +1046,7 @@ checksum = "de0d48a183585823424a4ce1aa132d174a6a81bd540895822eb4c8373a8e49e8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1080,9 +1066,9 @@ dependencies = [ [[package]] name = "erased_set" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76a5aa24577083f8190ad401e376b55887c7cd9083ae95d83ceec5d28ea78125" +checksum = "a02a5d186d7bf1cb21f1f95e1a9cfa5c1f2dcd803a47aad454423ceec13525c5" [[package]] name = "errno" @@ -1307,7 +1293,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1428,14 +1414,15 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "governor" -version = "0.6.3" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68a7f542ee6b35af73b06abc0dad1c1bae89964e4e253bc4b587b91c9637867b" +checksum = "0746aa765db78b521451ef74221663b57ba595bf83f75d0ce23cc09447c8139f" dependencies = [ "cfg-if", "dashmap", - "futures", + "futures-sink", "futures-timer", + "futures-util", "no-std-compat", "nonzero_ext", "parking_lot", @@ -1459,9 +1446,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +checksum = "ccae279728d634d083c00f6099cb58f01cc99c145b84b8be2f6c74618d79922e" dependencies = [ "atomic-waker", "bytes", @@ -1487,9 +1474,9 @@ dependencies = [ [[package]] name = "hashbrown" -version = "0.15.1" +version = "0.15.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a9bfc1af68b1726ea47d3d5109de126281def866b33970e10fbab11b5dafab3" +checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289" [[package]] name = "hashlink" @@ -1500,12 +1487,6 @@ dependencies = [ "hashbrown 0.14.5", ] -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - [[package]] name = "heck" version = "0.5.0" @@ -1631,6 +1612,17 @@ dependencies = [ "winapi", ] +[[package]] +name = "hostname" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9c7c7c8ac16c798734b8a24560c1362120597c40d5e1459f09498f8f6c8f2ba" +dependencies = [ + "cfg-if", + "libc", + "windows 0.52.0", +] + [[package]] name = "hostname-validator" version = "1.1.1" @@ -1696,9 +1688,9 @@ checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" [[package]] name = "hyper" -version = "1.5.0" +version = "1.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbbff0a806a4728c99295b254c8838933b5b082d75e3cb70c8dab21fdfbcfa9a" +checksum = "97818827ef4f364230e16705d4706e2897df2bb60617d6ca15d598025a3c481f" dependencies = [ "bytes", "futures-channel", @@ -1890,7 +1882,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -1962,7 +1954,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" dependencies = [ "equivalent", - "hashbrown 0.15.1", + "hashbrown 0.15.2", ] [[package]] @@ -2026,49 +2018,92 @@ checksum = "ddc24109865250148c2e0f3d25d4f0f479571723792d3802153c60922a4fb708" [[package]] name = "iroh" version = "0.28.1" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" +source = "git+https://github.com/n0-computer/iroh?branch=main#f7764ef130a0f2fd4938339178372a7176bd5def" dependencies = [ "anyhow", - "async-channel", + "axum", + "backoff", + "base64", "bytes", - "cc", + "der", "derive_more", + "futures-buffered", + "futures-concurrency", "futures-lite 2.5.0", + "futures-sink", "futures-util", + "genawaiter", + "governor", + "hex", + "hickory-proto 0.25.0-alpha.2", + "hickory-resolver", + "hostname 0.4.0", + "http 1.1.0", + "http-body-util", + "hyper", + "hyper-util", + "igd-next", "iroh-base", - "iroh-io", "iroh-metrics", - "iroh-net", - "iroh-node-util", + "iroh-net-report", "iroh-quinn", + "iroh-quinn-proto", + "iroh-quinn-udp", "iroh-relay", - "iroh-router", - "nested_enum_utils", - "num_cpus", + "libc", + "netdev", + "netlink-packet-core", + "netlink-packet-route 0.19.0", + "netlink-packet-route 0.21.0", + "netlink-sys", + "netwatch", + "num_enum", + "once_cell", "parking_lot", + "pin-project", + "pkarr", + "portmapper", "postcard", - "quic-rpc", - "quic-rpc-derive", - "ref-cast", + "rand", + "rcgen 0.13.1", + "reqwest", + "ring", + "rtnetlink 0.13.1", + "rtnetlink 0.14.1", + "rustls", + "rustls-webpki", "serde", - "serde-error", - "strum 0.25.0", - "tempfile", - "thiserror 1.0.69", + "smallvec", + "socket2", + "strum", + "stun-rs", + "surge-ping", + "swarm-discovery", + "thiserror 2.0.3", + "time", "tokio", + "tokio-rustls", + "tokio-stream", + "tokio-tungstenite 0.24.0", + "tokio-tungstenite-wasm", "tokio-util", "tracing", "url", + "watchable", + "webpki-roots", + "windows 0.58.0", + "wmi", + "x509-parser", + "z32", ] [[package]] name = "iroh-base" version = "0.28.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" +source = "git+https://github.com/n0-computer/iroh?branch=main#f7764ef130a0f2fd4938339178372a7176bd5def" dependencies = [ "aead", "anyhow", - "cc", "crypto_box", "data-encoding", "derive_more", @@ -2083,7 +2118,7 @@ dependencies = [ "redb 2.2.0", "serde", "ssh-key", - "thiserror 1.0.69", + "thiserror 2.0.3", "ttl_cache", "url", "zeroize", @@ -2126,9 +2161,7 @@ dependencies = [ "iroh-base", "iroh-io", "iroh-metrics", - "iroh-net", "iroh-quinn", - "iroh-router", "iroh-test", "nested_enum_utils", "num_cpus", @@ -2153,7 +2186,7 @@ dependencies = [ "serde_json", "serde_test", "smallvec", - "strum 0.26.3", + "strum", "tempfile", "testdir", "testresult", @@ -2182,7 +2215,7 @@ dependencies = [ [[package]] name = "iroh-metrics" version = "0.28.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" +source = "git+https://github.com/n0-computer/iroh?branch=main#f7764ef130a0f2fd4938339178372a7176bd5def" dependencies = [ "anyhow", "erased_set", @@ -2199,93 +2232,10 @@ dependencies = [ "tracing", ] -[[package]] -name = "iroh-net" -version = "0.28.1" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" -dependencies = [ - "anyhow", - "axum", - "backoff", - "base64 0.22.1", - "bytes", - "cc", - "der", - "derive_more", - "duct", - "futures-buffered", - "futures-concurrency", - "futures-lite 2.5.0", - "futures-sink", - "futures-util", - "genawaiter", - "governor", - "hex", - "hickory-proto 0.25.0-alpha.2", - "hickory-resolver", - "hostname", - "http 1.1.0", - "http-body-util", - "hyper", - "hyper-util", - "igd-next", - "iroh-base", - "iroh-metrics", - "iroh-net-report", - "iroh-quinn", - "iroh-quinn-proto", - "iroh-quinn-udp", - "iroh-relay", - "libc", - "netdev", - "netlink-packet-core", - "netlink-packet-route", - "netlink-sys", - "netwatch", - "num_enum", - "once_cell", - "parking_lot", - "pin-project", - "pkarr", - "portmapper", - "postcard", - "rand", - "rcgen 0.13.1", - "reqwest", - "ring", - "rtnetlink", - "rustls", - "rustls-webpki", - "serde", - "smallvec", - "socket2", - "strum 0.26.3", - "stun-rs", - "surge-ping", - "swarm-discovery", - "thiserror 1.0.69", - "time", - "tokio", - "tokio-rustls", - "tokio-stream", - "tokio-tungstenite", - "tokio-tungstenite-wasm", - "tokio-util", - "tracing", - "tungstenite", - "url", - "watchable", - "webpki-roots", - "windows 0.51.1", - "wmi", - "x509-parser", - "z32", -] - [[package]] name = "iroh-net-report" version = "0.28.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" +source = "git+https://github.com/n0-computer/iroh?branch=main#f7764ef130a0f2fd4938339178372a7176bd5def" dependencies = [ "anyhow", "bytes", @@ -2309,25 +2259,6 @@ dependencies = [ "url", ] -[[package]] -name = "iroh-node-util" -version = "0.28.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" -dependencies = [ - "anyhow", - "futures-lite 2.5.0", - "iroh-net", - "nested_enum_utils", - "quic-rpc", - "quic-rpc-derive", - "serde", - "serde-error", - "strum 0.26.3", - "tempfile", - "tokio", - "tracing", -] - [[package]] name = "iroh-quinn" version = "0.12.0" @@ -2380,10 +2311,10 @@ dependencies = [ [[package]] name = "iroh-relay" version = "0.28.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" +source = "git+https://github.com/n0-computer/iroh?branch=main#f7764ef130a0f2fd4938339178372a7176bd5def" dependencies = [ "anyhow", - "base64 0.22.1", + "base64", "bytes", "clap", "derive_more", @@ -2396,7 +2327,7 @@ dependencies = [ "hex", "hickory-proto 0.25.0-alpha.2", "hickory-resolver", - "hostname", + "hostname 0.4.0", "http 1.1.0", "http-body-util", "hyper", @@ -2421,37 +2352,21 @@ dependencies = [ "smallvec", "socket2", "stun-rs", - "thiserror 1.0.69", + "thiserror 2.0.3", "time", "tokio", "tokio-rustls", "tokio-rustls-acme", - "tokio-tungstenite", + "tokio-tungstenite 0.24.0", "tokio-tungstenite-wasm", "tokio-util", "toml", "tracing", "tracing-subscriber", - "tungstenite", "url", "webpki-roots", ] -[[package]] -name = "iroh-router" -version = "0.28.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" -dependencies = [ - "anyhow", - "futures-buffered", - "futures-lite 2.5.0", - "futures-util", - "iroh-net", - "tokio", - "tokio-util", - "tracing", -] - [[package]] name = "iroh-test" version = "0.28.0" @@ -2472,9 +2387,9 @@ checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" [[package]] name = "itoa" -version = "1.0.11" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" +checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674" [[package]] name = "jni" @@ -2516,9 +2431,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.164" +version = "0.2.166" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "433bfe06b8c75da9b2e3fbea6e5329ff87748f0b144ef75306e674c3f6f7c13f" +checksum = "c2ccc108bbc0b1331bd061864e7cd823c0cab660bbe6970e66e2c0614decde36" [[package]] name = "libm" @@ -2540,9 +2455,9 @@ checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" [[package]] name = "litemap" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" +checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104" [[package]] name = "litrs" @@ -2641,12 +2556,6 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "490cc448043f947bae3cbee9c203358d62dbee0db12107a74be5c30ccfd09771" -[[package]] -name = "memalloc" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df39d232f5c40b0891c10216992c2f250c054105cb1e56f0fc9032db6203ecc1" - [[package]] name = "memchr" version = "2.7.4" @@ -2709,15 +2618,15 @@ dependencies = [ [[package]] name = "netdev" -version = "0.30.0" +version = "0.31.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7516ad2c46cc25da098ed7d6b9a0cbe9e1fbffbd04b1596148b95f2841179c83" +checksum = "f901362e84cd407be6f8cd9d3a46bccf09136b095792785401ea7d283c79b91d" dependencies = [ "dlopen2", + "ipnet", "libc", - "memalloc", "netlink-packet-core", - "netlink-packet-route", + "netlink-packet-route 0.17.1", "netlink-sys", "once_cell", "system-configuration", @@ -2749,6 +2658,35 @@ dependencies = [ "netlink-packet-utils", ] +[[package]] +name = "netlink-packet-route" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74c171cd77b4ee8c7708da746ce392440cb7bcf618d122ec9ecc607b12938bf4" +dependencies = [ + "anyhow", + "byteorder", + "libc", + "log", + "netlink-packet-core", + "netlink-packet-utils", +] + +[[package]] +name = "netlink-packet-route" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "483325d4bfef65699214858f097d504eb812c38ce7077d165f301ec406c3066e" +dependencies = [ + "anyhow", + "bitflags 2.6.0", + "byteorder", + "libc", + "log", + "netlink-packet-core", + "netlink-packet-utils", +] + [[package]] name = "netlink-packet-utils" version = "0.5.2" @@ -2792,29 +2730,32 @@ dependencies = [ [[package]] name = "netwatch" version = "0.1.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" +source = "git+https://github.com/n0-computer/iroh?branch=main#f7764ef130a0f2fd4938339178372a7176bd5def" dependencies = [ "anyhow", + "atomic-waker", "bytes", "derive_more", "futures-lite 2.5.0", "futures-sink", "futures-util", + "iroh-quinn-udp", "libc", "netdev", "netlink-packet-core", - "netlink-packet-route", + "netlink-packet-route 0.19.0", "netlink-sys", "once_cell", - "rtnetlink", + "rtnetlink 0.13.1", + "rtnetlink 0.14.1", "serde", "socket2", - "thiserror 1.0.69", + "thiserror 2.0.3", "time", "tokio", "tokio-util", "tracing", - "windows 0.51.1", + "windows 0.58.0", "wmi", ] @@ -2829,6 +2770,17 @@ dependencies = [ "libc", ] +[[package]] +name = "nix" +version = "0.27.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2eb04e9c688eff1c89d72b407f168cf79bb9e867a9d3323ed6c01519eb9cc053" +dependencies = [ + "bitflags 2.6.0", + "cfg-if", + "libc", +] + [[package]] name = "no-std-compat" version = "0.4.1" @@ -2967,7 +2919,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3113,7 +3065,7 @@ version = "3.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" dependencies = [ - "base64 0.22.1", + "base64", "serde", ] @@ -3163,7 +3115,7 @@ dependencies = [ "pest_meta", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3194,7 +3146,7 @@ checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3274,7 +3226,7 @@ dependencies = [ "proc-macro2", "quote", "regex", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3311,17 +3263,17 @@ dependencies = [ [[package]] name = "portable-atomic" -version = "1.9.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" +checksum = "280dc24453071f1b63954171985a0b0d30058d287960968b9b2aca264c8d4ee6" [[package]] name = "portmapper" version = "0.1.0" -source = "git+https://github.com/n0-computer/iroh?branch=main#4e3b4312381350de5ac29a79ce4df2ebf433744a" +source = "git+https://github.com/n0-computer/iroh?branch=main#f7764ef130a0f2fd4938339178372a7176bd5def" dependencies = [ "anyhow", - "base64 0.22.1", + "base64", "bytes", "derive_more", "futures-lite 2.5.0", @@ -3335,7 +3287,7 @@ dependencies = [ "serde", "smallvec", "socket2", - "thiserror 1.0.69", + "thiserror 2.0.3", "time", "tokio", "tokio-util", @@ -3355,9 +3307,9 @@ dependencies = [ [[package]] name = "postcard" -version = "1.0.10" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f7f0a8d620d71c457dd1d47df76bb18960378da56af4527aaa10f515eee732e" +checksum = "f63d01def49fc815900a83e7a4a5083d2abc81b7ddd569a3fa0477778ae9b3ec" dependencies = [ "cobs", "embedded-io 0.4.0", @@ -3478,9 +3430,9 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.89" +version = "1.0.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f139b0662de085916d1fb67d2b4169d1addddda1919e696f3252b740b629986e" +checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0" dependencies = [ "unicode-ident", ] @@ -3505,7 +3457,7 @@ checksum = "440f724eba9f6996b75d63681b0a92b06947f1457076d503a4d2e2c8f56442b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3550,7 +3502,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dc623a188942fc875926f7baeb2cb08ed4288b64f29072656eb051e360ee7623" dependencies = [ "anyhow", - "bincode", "derive_more", "educe", "flume", @@ -3558,12 +3509,10 @@ dependencies = [ "futures-sink", "futures-util", "hex", - "iroh-quinn", "pin-project", "serde", "slab", "tokio", - "tokio-serde", "tokio-util", "tracing", ] @@ -3786,7 +3735,7 @@ checksum = "bcc303e793d3734489387d205e9b186fac9c6cfacedd98cbb2e8a5943595f3e6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -3856,7 +3805,7 @@ version = "0.12.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a77c62af46e79de0a562e1a9849205ffcb7fc1238876e9bd743357570e04046f" dependencies = [ - "base64 0.22.1", + "base64", "bytes", "futures-core", "futures-util", @@ -3880,7 +3829,7 @@ dependencies = [ "serde", "serde_json", "serde_urlencoded", - "sync_wrapper 1.0.1", + "sync_wrapper 1.0.2", "tokio", "tokio-rustls", "tower-service", @@ -3898,7 +3847,7 @@ version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "52e44394d2086d010551b14b53b1f24e31647570cd1deb0379e2c21b329aba00" dependencies = [ - "hostname", + "hostname 0.3.1", "quick-error", ] @@ -3929,9 +3878,9 @@ dependencies = [ [[package]] name = "rsa" -version = "0.9.6" +version = "0.9.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc" +checksum = "47c75d7c5c6b673e58bf54d8544a9f432e3a925b0e80f7cd3602ab5c50c55519" dependencies = [ "const-oid", "digest", @@ -3957,11 +3906,29 @@ dependencies = [ "futures", "log", "netlink-packet-core", - "netlink-packet-route", + "netlink-packet-route 0.17.1", + "netlink-packet-utils", + "netlink-proto", + "netlink-sys", + "nix 0.26.4", + "thiserror 1.0.69", + "tokio", +] + +[[package]] +name = "rtnetlink" +version = "0.14.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b684475344d8df1859ddb2d395dd3dac4f8f3422a1aa0725993cb375fc5caba5" +dependencies = [ + "futures", + "log", + "netlink-packet-core", + "netlink-packet-route 0.19.0", "netlink-packet-utils", "netlink-proto", "netlink-sys", - "nix", + "nix 0.27.1", "thiserror 1.0.69", "tokio", ] @@ -4011,9 +3978,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.18" +version = "0.23.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c9cc1d47e243d655ace55ed38201c19ae02c148ae56412ab8750e8f0166ab7f" +checksum = "934b404430bb06b3fae2cba809eb45a1ab1aecd64491213d7c3301b88393f8d1" dependencies = [ "log", "once_cell", @@ -4254,7 +4221,7 @@ checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4426,9 +4393,9 @@ checksum = "fad6c857cbab2627dcf01ec85a623ca4e7dcb5691cbaa3d7fb7653671f0d09c9" [[package]] name = "socket2" -version = "0.5.7" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8" dependencies = [ "libc", "windows-sys 0.52.0", @@ -4536,7 +4503,7 @@ dependencies = [ "proc-macro2", "quote", "struct_iterable_internal", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4545,35 +4512,13 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e9426b2a0c03e6cc2ea8dbc0168dbbf943f88755e409fb91bcb8f6a268305f4a" -[[package]] -name = "strum" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" -dependencies = [ - "strum_macros 0.25.3", -] - [[package]] name = "strum" version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" dependencies = [ - "strum_macros 0.26.4", -] - -[[package]] -name = "strum_macros" -version = "0.25.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0" -dependencies = [ - "heck 0.4.1", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.87", + "strum_macros", ] [[package]] @@ -4582,11 +4527,11 @@ version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" dependencies = [ - "heck 0.5.0", + "heck", "proc-macro2", "quote", "rustversion", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4595,7 +4540,7 @@ version = "0.1.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b79cc624c9a747353810310af44f1f03f71eb4561284a894acc0396e6d0de76e" dependencies = [ - "base64 0.22.1", + "base64", "bounded-integer", "byteorder", "crc", @@ -4663,9 +4608,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.87" +version = "2.0.89" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25aa4ce346d03a6dcd68dd8b4010bcb74e54e62c90c573f394c46eae99aba32d" +checksum = "44d46482f1c1c87acd84dea20c1bf5ebff4c757009ed6bf19cfd36fb10e92c4e" dependencies = [ "proc-macro2", "quote", @@ -4691,9 +4636,9 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" [[package]] name = "sync_wrapper" -version = "1.0.1" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +checksum = "0bf256ce5efdfa370213c1dabab5935a12e49f2c58d15e9eac2870d3b4f27263" dependencies = [ "futures-core", ] @@ -4706,7 +4651,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4803,7 +4748,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4814,7 +4759,7 @@ checksum = "f077553d607adc1caf65430528a576c757a71ed73944b66ebb58ef2bbd243568" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4909,7 +4854,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -4925,48 +4870,32 @@ dependencies = [ [[package]] name = "tokio-rustls-acme" -version = "0.4.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e4ee7cbca7da86fa030e33b0deac55bad0e0bf8ab909f1a84666f04447f6339b" +checksum = "3184e8e292a828dd4bca5b2a60aba830ec5ed873a66c9ebb6e65038fa649e827" dependencies = [ "async-trait", - "base64 0.21.7", + "base64", "chrono", "futures", "log", "num-bigint", "pem", "proc-macro2", - "rcgen 0.12.1", + "rcgen 0.13.1", "reqwest", "ring", "rustls", "serde", "serde_json", - "thiserror 1.0.69", + "thiserror 2.0.3", "time", "tokio", "tokio-rustls", - "url", "webpki-roots", "x509-parser", ] -[[package]] -name = "tokio-serde" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "911a61637386b789af998ee23f50aa30d5fd7edcec8d6d3dedae5e5815205466" -dependencies = [ - "bincode", - "bytes", - "educe", - "futures-core", - "futures-sink", - "pin-project", - "serde", -] - [[package]] name = "tokio-stream" version = "0.1.16" @@ -4987,7 +4916,19 @@ dependencies = [ "futures-util", "log", "tokio", - "tungstenite", + "tungstenite 0.21.0", +] + +[[package]] +name = "tokio-tungstenite" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" +dependencies = [ + "futures-util", + "log", + "tokio", + "tungstenite 0.24.0", ] [[package]] @@ -5003,7 +4944,7 @@ dependencies = [ "js-sys", "thiserror 1.0.69", "tokio", - "tokio-tungstenite", + "tokio-tungstenite 0.21.0", "wasm-bindgen", "web-sys", ] @@ -5088,9 +5029,9 @@ checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" [[package]] name = "tracing" -version = "0.1.40" +version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ "log", "pin-project-lite", @@ -5100,20 +5041,20 @@ dependencies = [ [[package]] name = "tracing-attributes" -version = "0.1.27" +version = "0.1.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] name = "tracing-core" -version = "0.1.32" +version = "0.1.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" dependencies = [ "once_cell", "valuable", @@ -5192,6 +5133,24 @@ dependencies = [ "utf-8", ] +[[package]] +name = "tungstenite" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" +dependencies = [ + "byteorder", + "bytes", + "data-encoding", + "http 1.1.0", + "httparse", + "log", + "rand", + "sha1", + "thiserror 1.0.69", + "utf-8", +] + [[package]] name = "typenum" version = "1.17.0" @@ -5227,9 +5186,9 @@ checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893" [[package]] name = "unicode-ident" -version = "1.0.13" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" +checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83" [[package]] name = "unicode-normalization" @@ -5280,7 +5239,7 @@ version = "2.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b74fc6b57825be3373f7054754755f03ac3a8f5d70015ccad699ba2029956f4a" dependencies = [ - "base64 0.22.1", + "base64", "log", "once_cell", "rustls", @@ -5405,7 +5364,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "wasm-bindgen-shared", ] @@ -5439,7 +5398,7 @@ checksum = "26c6ab57572f7a24a4985830b120de1594465e5d500f24afe89e16b4e833ef68" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5484,9 +5443,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.26.6" +version = "0.26.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" +checksum = "5d642ff16b7e79272ae451b7322067cdc17cadf68c23264be9d94a32319efe7e" dependencies = [ "rustls-pki-types", ] @@ -5550,12 +5509,12 @@ dependencies = [ [[package]] name = "windows" -version = "0.51.1" +version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca229916c5ee38c2f2bc1e9d8f04df975b4bd93f9955dc69fabb5d91270045c9" +checksum = "e48a53791691ab099e5e2ad123536d0fff50652600abaf43bbf952894110d0be" dependencies = [ - "windows-core 0.51.1", - "windows-targets 0.48.5", + "windows-core 0.52.0", + "windows-targets 0.52.6", ] [[package]] @@ -5568,15 +5527,6 @@ dependencies = [ "windows-targets 0.52.6", ] -[[package]] -name = "windows-core" -version = "0.51.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1f8cf84f35d2db49a46868f947758c7a1138116f7fac3bc844f43ade1292e64" -dependencies = [ - "windows-targets 0.48.5", -] - [[package]] name = "windows-core" version = "0.52.0" @@ -5607,7 +5557,7 @@ checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -5618,7 +5568,7 @@ checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] @@ -5820,9 +5770,9 @@ dependencies = [ [[package]] name = "wmi" -version = "0.13.4" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff00ac1309d4c462be86f03a55e409509e8bf4323ec296aeb4b381dd9aabe6ec" +checksum = "70df482bbec7017ce4132154233642de658000b24b805345572036782a66ad55" dependencies = [ "chrono", "futures", @@ -5888,9 +5838,9 @@ dependencies = [ [[package]] name = "yoke" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40" dependencies = [ "serde", "stable_deref_trait", @@ -5900,13 +5850,13 @@ dependencies = [ [[package]] name = "yoke-derive" -version = "0.7.4" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "synstructure", ] @@ -5934,27 +5884,27 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] [[package]] name = "zerofrom" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" +checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e" dependencies = [ "zerofrom-derive", ] [[package]] name = "zerofrom-derive" -version = "0.1.4" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" +checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", "synstructure", ] @@ -5983,5 +5933,5 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.87", + "syn 2.0.89", ] diff --git a/Cargo.toml b/Cargo.toml index b24cb3de0..64b37a02c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -41,8 +41,7 @@ indicatif = { version = "0.17.8", optional = true } iroh-base = { version = "0.28.0", features = ["redb"] } iroh-io = { version = "0.6.0", features = ["stats"] } iroh-metrics = { version = "0.28.0", default-features = false } -iroh-net = { version = "0.28.1" } -iroh-router = "0.28.0" +iroh = { version = "0.28.1" } nested_enum_utils = { version = "0.1.0", optional = true } num_cpus = "1.15.0" oneshot = "0.1.8" @@ -76,13 +75,12 @@ tracing-futures = "0.2.5" walkdir = { version = "2.5.0", optional = true } # Examples -iroh = { version = "0.28", optional = true } console = { version = "0.15.8", optional = true } [dev-dependencies] http-body = "1.0" iroh-test = { version = "0.28" } -iroh-net = { version = "0.28", features = ["test-utils"] } +iroh = { version = "0.28", features = ["test-utils"] } futures-buffered = "0.2.4" proptest = "1.0.0" serde_json = "1.0.107" @@ -116,7 +114,12 @@ rpc = [ "downloader", ] -example-iroh = ["dep:iroh", "dep:clap", "dep:indicatif", "dep:console"] +example-iroh = [ + "dep:clap", + "dep:indicatif", + "dep:console", + "iroh/discovery-local-network" +] [package.metadata.docs.rs] all-features = true @@ -177,8 +180,6 @@ panic = 'abort' incremental = false [patch.crates-io] -iroh-router = { git = "https://github.com/n0-computer/iroh", branch = "main" } -iroh-net = { git = "https://github.com/n0-computer/iroh", branch = "main" } iroh-metrics = { git = "https://github.com/n0-computer/iroh", branch = "main" } iroh-base = { git = "https://github.com/n0-computer/iroh", branch = "main" } iroh = { git = "https://github.com/n0-computer/iroh", branch = "main" } diff --git a/deny.toml b/deny.toml index 050bf2b46..c903f9260 100644 --- a/deny.toml +++ b/deny.toml @@ -18,7 +18,6 @@ allow = [ "ISC", "MIT", "OpenSSL", - "Unicode-DFS-2016", "Zlib", "MPL-2.0", # https://fossa.com/blog/open-source-software-licenses-101-mozilla-public-license-2-0/ "Unicode-3.0" diff --git a/examples/custom-protocol.rs b/examples/custom-protocol.rs index d285f23c5..5d92c687c 100644 --- a/examples/custom-protocol.rs +++ b/examples/custom-protocol.rs @@ -44,15 +44,12 @@ use anyhow::Result; use clap::Parser; use futures_lite::future::Boxed as BoxedFuture; use iroh::{ - net::{ - endpoint::{get_remote_node_id, Connecting}, - Endpoint, NodeId, - }, - router::ProtocolHandler, + endpoint::{get_remote_node_id, Connecting}, + protocol::{ProtocolHandler, Router}, + Endpoint, NodeId, }; use iroh_base::hash::Hash; use iroh_blobs::{net_protocol::Blobs, rpc::client::blobs::MemClient, util::local_pool::LocalPool}; -use iroh_router::Router; use tracing_subscriber::{prelude::*, EnvFilter}; #[derive(Debug, Parser)] diff --git a/examples/hello-world-fetch.rs b/examples/hello-world-fetch.rs index 9466d373e..0741a5cd9 100644 --- a/examples/hello-world-fetch.rs +++ b/examples/hello-world-fetch.rs @@ -6,10 +6,9 @@ use std::{env, str::FromStr}; use anyhow::{bail, ensure, Context, Result}; -use iroh::base::ticket::BlobTicket; +use iroh::{protocol::Router, Endpoint}; +use iroh_base::ticket::BlobTicket; use iroh_blobs::{net_protocol::Blobs, util::local_pool::LocalPool, BlobFormat}; -use iroh_net::Endpoint; -use iroh_router::Router; use tracing_subscriber::{prelude::*, EnvFilter}; // set the RUST_LOG env var to one of {debug,info,warn} to see logging info diff --git a/examples/hello-world-provide.rs b/examples/hello-world-provide.rs index 3fdfb8cf5..96fa028c2 100644 --- a/examples/hello-world-provide.rs +++ b/examples/hello-world-provide.rs @@ -3,10 +3,9 @@ //! This is using an in memory database and a random node id. //! run this example from the project root: //! $ cargo run --example hello-world-provide +use iroh::{protocol::Router, Endpoint}; use iroh_base::{node_addr::AddrInfoOptions, ticket::BlobTicket}; use iroh_blobs::{net_protocol::Blobs, util::local_pool::LocalPool}; -use iroh_net::Endpoint; -use iroh_router::Router; use tracing_subscriber::{prelude::*, EnvFilter}; // set the RUST_LOG env var to one of {debug,info,warn} to see logging info diff --git a/examples/local-swarm-discovery.rs b/examples/local-swarm-discovery.rs index f02f47897..fd84a8f56 100644 --- a/examples/local-swarm-discovery.rs +++ b/examples/local-swarm-discovery.rs @@ -10,14 +10,13 @@ use std::path::PathBuf; use anyhow::ensure; use clap::{Parser, Subcommand}; use iroh::{ - base::{hash::Hash, key::SecretKey}, - net::{discovery::local_swarm_discovery::LocalSwarmDiscovery, key::PublicKey, NodeAddr}, + discovery::local_swarm_discovery::LocalSwarmDiscovery, key::PublicKey, protocol::Router, + Endpoint, NodeAddr, RelayMode, }; +use iroh_base::{hash::Hash, key::SecretKey}; use iroh_blobs::{ net_protocol::Blobs, rpc::client::blobs::WrapOption, util::local_pool::LocalPool, }; -use iroh_net::{Endpoint, RelayMode}; -use iroh_router::Router; use tracing_subscriber::{prelude::*, EnvFilter}; use self::progress::show_download_progress; diff --git a/src/cli.rs b/src/cli.rs index 131cbb718..57c99697e 100644 --- a/src/cli.rs +++ b/src/cli.rs @@ -15,8 +15,8 @@ use indicatif::{ HumanBytes, HumanDuration, MultiProgress, ProgressBar, ProgressDrawTarget, ProgressState, ProgressStyle, }; +use iroh::{key::PublicKey, relay::RelayUrl, NodeAddr}; use iroh_base::{node_addr::AddrInfoOptions, ticket::BlobTicket}; -use iroh_net::{key::PublicKey, relay::RelayUrl, NodeAddr}; use tokio::io::AsyncWriteExt; use crate::{ diff --git a/src/downloader.rs b/src/downloader.rs index b9cd2df19..5cc46e653 100644 --- a/src/downloader.rs +++ b/src/downloader.rs @@ -43,9 +43,9 @@ use std::{ use futures_lite::{future::BoxedLocal, Stream, StreamExt}; use hashlink::LinkedHashSet; +use iroh::{endpoint, Endpoint, NodeAddr, NodeId}; use iroh_base::hash::{BlobFormat, Hash, HashAndFormat}; use iroh_metrics::inc; -use iroh_net::{endpoint, Endpoint, NodeAddr, NodeId}; use tokio::{ sync::{mpsc, oneshot}, task::JoinSet, @@ -354,7 +354,7 @@ impl Downloader { { let me = endpoint.node_id().fmt_short(); let (msg_tx, msg_rx) = mpsc::channel(SERVICE_CHANNEL_CAPACITY); - let dialer = iroh_net::dialer::Dialer::new(endpoint); + let dialer = iroh::dialer::Dialer::new(endpoint); let create_future = move || { let getter = get::IoGetter { @@ -1492,7 +1492,7 @@ impl Queue { } } -impl Dialer for iroh_net::dialer::Dialer { +impl Dialer for iroh::dialer::Dialer { type Connection = endpoint::Connection; fn queue_dial(&mut self, node_id: NodeId) { diff --git a/src/downloader/get.rs b/src/downloader/get.rs index 1be8cd39a..c4a17d18c 100644 --- a/src/downloader/get.rs +++ b/src/downloader/get.rs @@ -1,9 +1,9 @@ //! [`Getter`] implementation that performs requests over [`Connection`]s. //! -//! [`Connection`]: iroh_net::endpoint::Connection +//! [`Connection`]: iroh::endpoint::Connection use futures_lite::FutureExt; -use iroh_net::endpoint; +use iroh::endpoint; use super::{progress::BroadcastProgressSender, DownloadKind, FailureAction, GetStartFut, Getter}; use crate::{ @@ -27,7 +27,7 @@ impl From for FailureAction { /// [`Getter`] implementation that performs requests over [`Connection`]s. /// -/// [`Connection`]: iroh_net::endpoint::Connection +/// [`Connection`]: iroh::endpoint::Connection pub(crate) struct IoGetter { pub store: S, } diff --git a/src/downloader/test.rs b/src/downloader/test.rs index eee6f39cc..12659efb0 100644 --- a/src/downloader/test.rs +++ b/src/downloader/test.rs @@ -6,7 +6,7 @@ use std::{ use anyhow::anyhow; use futures_util::future::FutureExt; -use iroh_net::key::SecretKey; +use iroh::key::SecretKey; use super::*; use crate::{ diff --git a/src/get.rs b/src/get.rs index 38ef92377..7c1190f34 100644 --- a/src/get.rs +++ b/src/get.rs @@ -20,7 +20,7 @@ use std::{ use anyhow::Result; use bao_tree::{io::fsm::BaoContentItem, ChunkNum}; -use iroh_net::endpoint::{self, RecvStream, SendStream}; +use iroh::endpoint::{self, RecvStream, SendStream}; use serde::{Deserialize, Serialize}; use tracing::{debug, error}; @@ -66,8 +66,8 @@ pub mod fsm { BaoTree, ChunkRanges, TreeNode, }; use derive_more::From; + use iroh::endpoint::Connection; use iroh_io::{AsyncSliceWriter, AsyncStreamReader, TokioStreamReader}; - use iroh_net::endpoint::Connection; use tokio::io::AsyncWriteExt; use super::*; diff --git a/src/get/db.rs b/src/get/db.rs index 769dd57da..8731e01ed 100644 --- a/src/get/db.rs +++ b/src/get/db.rs @@ -9,9 +9,9 @@ use genawaiter::{ rc::{Co, Gen}, GeneratorState, }; +use iroh::endpoint::Connection; use iroh_base::hash::Hash; use iroh_io::AsyncSliceReader; -use iroh_net::endpoint::Connection; use serde::{Deserialize, Serialize}; use tokio::sync::oneshot; use tracing::trace; diff --git a/src/get/error.rs b/src/get/error.rs index 8980d04a9..95f6beefc 100644 --- a/src/get/error.rs +++ b/src/get/error.rs @@ -1,6 +1,6 @@ //! Error returned from get operations -use iroh_net::endpoint; +use iroh::endpoint; use crate::util::progress::ProgressSendError; diff --git a/src/get/request.rs b/src/get/request.rs index 871b8501e..54a52f2b8 100644 --- a/src/get/request.rs +++ b/src/get/request.rs @@ -3,7 +3,7 @@ use std::sync::Arc; use bao_tree::{ChunkNum, ChunkRanges}; use bytes::Bytes; -use iroh_net::endpoint::Connection; +use iroh::endpoint::Connection; use rand::Rng; use super::{fsm, Stats}; diff --git a/src/net_protocol.rs b/src/net_protocol.rs index c9ef43606..996d6ea1c 100644 --- a/src/net_protocol.rs +++ b/src/net_protocol.rs @@ -11,9 +11,8 @@ use std::{ use anyhow::{anyhow, Result}; use futures_lite::future::Boxed as BoxedFuture; +use iroh::{endpoint::Connecting, protocol::ProtocolHandler, Endpoint, NodeAddr}; use iroh_base::hash::{BlobFormat, Hash}; -use iroh_net::{endpoint::Connecting, Endpoint, NodeAddr}; -use iroh_router::ProtocolHandler; use serde::{Deserialize, Serialize}; use tracing::{debug, warn}; diff --git a/src/protocol.rs b/src/protocol.rs index da0995f5f..5dddace25 100644 --- a/src/protocol.rs +++ b/src/protocol.rs @@ -339,7 +339,7 @@ //! keep a connection open and reuse it for multiple requests. use bao_tree::{ChunkNum, ChunkRanges}; use derive_more::From; -use iroh_net::endpoint::VarInt; +use iroh::endpoint::VarInt; use serde::{Deserialize, Serialize}; mod range_spec; pub use range_spec::{NonEmptyRequestRangeSpecIter, RangeSpec, RangeSpecSeq}; @@ -432,8 +432,8 @@ pub enum Closed { /// [`RecvStream::stop`]. We don't use this explicitly but this is here as /// documentation as to what happened to `0`. /// - /// [`RecvStream`]: iroh_net::endpoint::RecvStream - /// [`RecvStream::stop`]: iroh_net::endpoint::RecvStream::stop + /// [`RecvStream`]: iroh::endpoint::RecvStream + /// [`RecvStream::stop`]: iroh::endpoint::RecvStream::stop StreamDropped = 0, /// The provider is terminating. /// diff --git a/src/provider.rs b/src/provider.rs index 44cb793ff..9ae9c02fc 100644 --- a/src/provider.rs +++ b/src/provider.rs @@ -7,11 +7,11 @@ use bao_tree::io::{ EncodeError, }; use futures_lite::future::Boxed as BoxFuture; +use iroh::endpoint::{self, RecvStream, SendStream}; use iroh_io::{ stats::{SliceReaderStats, StreamWriterStats, TrackingSliceReader, TrackingStreamWriter}, AsyncSliceReader, AsyncStreamWriter, TokioStreamWriter, }; -use iroh_net::endpoint::{self, RecvStream, SendStream}; use serde::{Deserialize, Serialize}; use tracing::{debug, debug_span, info, trace, warn}; use tracing_futures::Instrument; diff --git a/src/rpc/client/blobs.rs b/src/rpc/client/blobs.rs index 2f45357f1..3d8e1e182 100644 --- a/src/rpc/client/blobs.rs +++ b/src/rpc/client/blobs.rs @@ -70,7 +70,7 @@ use bytes::Bytes; use futures_lite::{Stream, StreamExt}; use futures_util::SinkExt; use genawaiter::sync::{Co, Gen}; -use iroh_net::NodeAddr; +use iroh::NodeAddr; use portable_atomic::{AtomicU64, Ordering}; use quic_rpc::{ client::{BoxStreamSync, BoxedConnector}, @@ -991,8 +991,8 @@ pub struct DownloadOptions { mod tests { use std::{path::Path, time::Duration}; + use iroh::{key::SecretKey, test_utils::DnsPkarrServer, NodeId, RelayMode}; use iroh_base::{node_addr::AddrInfoOptions, ticket::BlobTicket}; - use iroh_net::{key::SecretKey, test_utils::DnsPkarrServer, NodeId, RelayMode}; use node::Node; use rand::RngCore; use testresult::TestResult; @@ -1005,8 +1005,7 @@ mod tests { //! An iroh node that just has the blobs transport use std::{path::Path, sync::Arc}; - use iroh_net::{Endpoint, NodeAddr, NodeId}; - use iroh_router::Router; + use iroh::{protocol::Router, Endpoint, NodeAddr, NodeId}; use tokio_util::task::AbortOnDropHandle; use super::RpcService; @@ -1023,7 +1022,7 @@ mod tests { /// An iroh node that just has the blobs transport #[derive(Debug)] pub struct Node { - router: iroh_router::Router, + router: iroh::protocol::Router, client: RpcClient, _local_pool: LocalPool, _rpc_task: AbortOnDropHandle<()>, @@ -1034,7 +1033,7 @@ mod tests { pub struct Builder { store: S, events: EventSender, - endpoint: Option, + endpoint: Option, } impl Builder { @@ -1047,7 +1046,7 @@ mod tests { } /// Set an endpoint builder - pub fn endpoint(self, endpoint: iroh_net::endpoint::Builder) -> Self { + pub fn endpoint(self, endpoint: iroh::endpoint::Builder) -> Self { Self { endpoint: Some(endpoint), ..self @@ -1866,13 +1865,13 @@ mod tests { #[tokio::test] async fn test_download_via_relay() -> Result<()> { let _guard = iroh_test::logging::setup(); - let (relay_map, relay_url, _guard) = iroh_net::test_utils::run_relay_server().await?; + let (relay_map, relay_url, _guard) = iroh::test_utils::run_relay_server().await?; - let endpoint1 = iroh_net::Endpoint::builder() + let endpoint1 = iroh::Endpoint::builder() .relay_mode(RelayMode::Custom(relay_map.clone())) .insecure_skip_relay_cert_verify(true); let node1 = Node::memory().endpoint(endpoint1).spawn().await?; - let endpoint2 = iroh_net::Endpoint::builder() + let endpoint2 = iroh::Endpoint::builder() .relay_mode(RelayMode::Custom(relay_map.clone())) .insecure_skip_relay_cert_verify(true); let node2 = Node::memory().endpoint(endpoint2).spawn().await?; @@ -1897,11 +1896,11 @@ mod tests { #[ignore = "flaky"] async fn test_download_via_relay_with_discovery() -> Result<()> { let _guard = iroh_test::logging::setup(); - let (relay_map, _relay_url, _guard) = iroh_net::test_utils::run_relay_server().await?; + let (relay_map, _relay_url, _guard) = iroh::test_utils::run_relay_server().await?; let dns_pkarr_server = DnsPkarrServer::run().await?; let secret1 = SecretKey::generate(); - let endpoint1 = iroh_net::Endpoint::builder() + let endpoint1 = iroh::Endpoint::builder() .relay_mode(RelayMode::Custom(relay_map.clone())) .insecure_skip_relay_cert_verify(true) .dns_resolver(dns_pkarr_server.dns_resolver()) @@ -1909,7 +1908,7 @@ mod tests { .discovery(dns_pkarr_server.discovery(secret1)); let node1 = Node::memory().endpoint(endpoint1).spawn().await?; let secret2 = SecretKey::generate(); - let endpoint2 = iroh_net::Endpoint::builder() + let endpoint2 = iroh::Endpoint::builder() .relay_mode(RelayMode::Custom(relay_map.clone())) .insecure_skip_relay_cert_verify(true) .dns_resolver(dns_pkarr_server.dns_resolver()) diff --git a/src/util/fs.rs b/src/util/fs.rs index 6095bc768..f87532201 100644 --- a/src/util/fs.rs +++ b/src/util/fs.rs @@ -126,20 +126,20 @@ pub fn relative_canonicalized_path_to_string(path: impl AsRef) -> anyhow:: canonicalized_path_to_string(path, true) } -/// Loads a [`iroh_net::key::SecretKey`] from the provided file, or stores a newly generated one +/// Loads a [`iroh::key::SecretKey`] from the provided file, or stores a newly generated one /// at the given location. #[cfg(feature = "rpc")] #[cfg_attr(iroh_docsrs, doc(cfg(feature = "rpc")))] -pub async fn load_secret_key(key_path: PathBuf) -> anyhow::Result { +pub async fn load_secret_key(key_path: PathBuf) -> anyhow::Result { use tokio::io::AsyncWriteExt; if key_path.exists() { let keystr = tokio::fs::read(key_path).await?; let secret_key = - iroh_net::key::SecretKey::try_from_openssh(keystr).context("invalid keyfile")?; + iroh::key::SecretKey::try_from_openssh(keystr).context("invalid keyfile")?; Ok(secret_key) } else { - let secret_key = iroh_net::key::SecretKey::generate(); + let secret_key = iroh::key::SecretKey::generate(); let ser_key = secret_key.to_openssh()?; // Try to canonicalize if possible