diff --git a/Cargo.lock b/Cargo.lock index 4d6c25b..298c572 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -827,7 +827,7 @@ dependencies = [ [[package]] name = "ant-cli" -version = "0.1.2-rc.2" +version = "0.1.2-rc.14" dependencies = [ "ant-core", "anyhow", @@ -870,7 +870,7 @@ dependencies = [ "saorsa-pqc 0.5.1", "self-replace", "self_encryption", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_json", "serial_test", @@ -901,8 +901,8 @@ dependencies = [ [[package]] name = "ant-node" -version = "0.10.0-rc.1" -source = "git+https://github.com/WithAutonomi/ant-node?rev=6dfc7178a940fc842ab3c6542265d9750a08b060#6dfc7178a940fc842ab3c6542265d9750a08b060" +version = "0.10.0-rc.13" +source = "git+https://github.com/WithAutonomi/ant-node?branch=rc-2026.4.1#b7b4d427025c9dcb547c390ec7f3ee56b1419129" dependencies = [ "aes-gcm-siv", "blake3", @@ -931,7 +931,7 @@ dependencies = [ "saorsa-pqc 0.5.1", "self-replace", "self_encryption", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_json", "sha2", @@ -1251,6 +1251,18 @@ version = "1.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" +[[package]] +name = "attohttpc" +version = "0.30.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16e2cdb6d5ed835199484bb92bb8b3edd526effe995c61732580439c1a67e2e9" +dependencies = [ + "base64", + "http", + "log", + "url", +] + [[package]] name = "auto_impl" version = "1.3.0" @@ -1633,6 +1645,17 @@ dependencies = [ "cpufeatures 0.2.17", ] +[[package]] +name = "chacha20" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f8d983286843e49675a4b7a2d174efe136dc93a18d69130dd18198a6c167601" +dependencies = [ + "cfg-if", + "cpufeatures 0.3.0", + "rand_core 0.10.0", +] + [[package]] name = "chacha20poly1305" version = "0.10.1" @@ -1640,7 +1663,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "10cd79432192d1c0f4e1a0fef9527696cc039165d729fb41b3f4f4f354c2dc35" dependencies = [ "aead", - "chacha20", + "chacha20 0.9.1", "cipher", "poly1305", "zeroize", @@ -2457,9 +2480,9 @@ dependencies = [ [[package]] name = "fastrand" -version = "2.3.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" +checksum = "a043dc74da1e37d6afe657061213aa6f425f855399a11d3463c6ecccc4dfda1f" [[package]] name = "fastrlp" @@ -2779,6 +2802,7 @@ dependencies = [ "cfg-if", "libc", "r-efi 6.0.0", + "rand_core 0.10.0", "wasip2", "wasip3", ] @@ -3259,6 +3283,26 @@ dependencies = [ "icu_properties", ] +[[package]] +name = "igd-next" +version = "0.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bac9a3c8278f43b4cd8463380f4a25653ac843e5b177e1d3eaf849cc9ba10d4d" +dependencies = [ + "attohttpc", + "bytes", + "futures", + "http", + "http-body-util", + "hyper", + "hyper-util", + "log", + "rand 0.10.0", + "tokio", + "url", + "xmltree", +] + [[package]] name = "impl-codec" version = "0.6.0" @@ -4440,6 +4484,17 @@ dependencies = [ "serde", ] +[[package]] +name = "rand" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bc266eb313df6c5c09c1c7b1fbe2510961e5bcd3add930c1e31f7ed9da0feff8" +dependencies = [ + "chacha20 0.10.0", + "getrandom 0.4.2", + "rand_core 0.10.0", +] + [[package]] name = "rand_chacha" version = "0.3.1" @@ -4479,6 +4534,12 @@ dependencies = [ "serde", ] +[[package]] +name = "rand_core" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c8d0fd677905edcbeedbf2edb6494d676f0e98d54d5cf9bda0b061cb8fb8aba" + [[package]] name = "rand_xorshift" version = "0.4.0" @@ -4820,7 +4881,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" dependencies = [ - "semver 1.0.27", + "semver 1.0.28", ] [[package]] @@ -4986,8 +5047,7 @@ dependencies = [ [[package]] name = "saorsa-core" version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad51589091bdbfbf8c42b5db37428a1cad0febd0af616ef3fe3a0f38dc921b24" +source = "git+https://github.com/grumbach/saorsa-core.git?branch=fix%2Fclock-skew-tolerance#3183f1d4f412d79974dc2325fc90a7009b68a0a0" dependencies = [ "anyhow", "async-trait", @@ -5100,8 +5160,7 @@ dependencies = [ [[package]] name = "saorsa-transport" version = "0.31.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e33412e61b0cb630410981a629f967a858b1663be8f71b75eadb66c9588ef26" +source = "git+https://github.com/grumbach/saorsa-transport.git?branch=round4-combined#2cabf2b5e00d00650283265a915ab690d1529183" dependencies = [ "anyhow", "async-trait", @@ -5115,6 +5174,7 @@ dependencies = [ "dirs 5.0.1", "futures-util", "hex", + "igd-next", "indexmap 2.13.1", "keyring", "libc", @@ -5312,9 +5372,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.27" +version = "1.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d767eb0aabc880b29956c35734170f26ed551a859dbd361d140cdbeca61ab1e2" +checksum = "8a7852d02fc848982e0c167ef163aaff9cd91dc640ba85e263cb1ce46fae51cd" [[package]] name = "semver-parser" @@ -6539,7 +6599,7 @@ dependencies = [ "bitflags", "hashbrown 0.15.5", "indexmap 2.13.1", - "semver 1.0.27", + "semver 1.0.28", ] [[package]] @@ -7146,7 +7206,7 @@ dependencies = [ "id-arena", "indexmap 2.13.1", "log", - "semver 1.0.27", + "semver 1.0.28", "serde", "serde_derive", "serde_json", @@ -7209,6 +7269,21 @@ dependencies = [ "rustix", ] +[[package]] +name = "xml-rs" +version = "0.8.28" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ae8337f8a065cfc972643663ea4279e04e7256de865aa66fe25cec5fb912d3f" + +[[package]] +name = "xmltree" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7d8a75eaf6557bb84a65ace8609883db44a29951042ada9b393151532e41fcb" +dependencies = [ + "xml-rs", +] + [[package]] name = "xor_name" version = "5.0.0" diff --git a/Cargo.toml b/Cargo.toml index f3978b2..5d69905 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,3 +1,23 @@ [workspace] members = ["ant-core", "ant-cli"] resolver = "2" + +# NAT traversal fixes: patch saorsa-core and saorsa-transport to branches +# with proven fixes (tested via Mac upload to NAT testnet, 3/3 success). +# +# saorsa-core fix/clock-skew-tolerance: +# - MAX_FUTURE_SECS: 30 -> 300 (tolerate real-world clock drift) +# +# saorsa-transport round4-combined (8 fixes): +# - send_ack_timeout 500ms -> 5s +# - accept loop dedup keeps newer connection +# - scope-aware reachability model +# - relay fallback rotation + session reuse + cleanup +# - quality-aware coordinator selection +# +# Once these branches are merged into rc-2026.4.1, remove this patch section. +[patch."https://github.com/saorsa-labs/saorsa-core.git"] +saorsa-core = { git = "https://github.com/grumbach/saorsa-core.git", branch = "fix/clock-skew-tolerance" } + +[patch."https://github.com/saorsa-labs/saorsa-transport.git"] +saorsa-transport = { git = "https://github.com/grumbach/saorsa-transport.git", branch = "round4-combined" } diff --git a/ant-cli/Cargo.toml b/ant-cli/Cargo.toml index 4728bfe..7da5498 100644 --- a/ant-cli/Cargo.toml +++ b/ant-cli/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "ant-cli" -version = "0.1.2-rc.2" +version = "0.1.2-rc.14" edition = "2021" [[bin]] diff --git a/ant-core/Cargo.toml b/ant-core/Cargo.toml index 6d3aa04..61adc05 100644 --- a/ant-core/Cargo.toml +++ b/ant-core/Cargo.toml @@ -38,7 +38,7 @@ tracing = "0.1" bytes = "1" lru = "0.16" rand = "0.8" -ant-node = { git = "https://github.com/WithAutonomi/ant-node", rev = "6dfc7178a940fc842ab3c6542265d9750a08b060" } +ant-node = { git = "https://github.com/WithAutonomi/ant-node", branch = "rc-2026.4.1" } saorsa-pqc = "0.5" tracing-subscriber = { version = "0.3", features = ["env-filter"] }