radio/iroh-willow/CHANGELOG.md

Changelog

All notable changes to iroh will be documented in this file.

0.28.1 - 2024-11-04

πŸ› Bug Fixes

Switch to correctly patched quic-rpc and iroh-quinn - (d925da4)

πŸ“š Documentation

Fixup changelog - (5066102)

βš™οΈ Miscellaneous Tasks

Release - (134a93b)

0.28.0 - 2024-11-04

⛰️ Features

(iroh-dns-server) [breaking] Make http rate limit configurable (#2772) - (fe684c2)

(iroh-net) Add StaticDiscovery to provide static info to endpoints (#2825) - (c9d1ba7)

(iroh-net) More Quinn re-exports (#2838) - (9495c21)

(iroh-net) Send HTTP/1.1 HOST header on requests to relay (#2881) - (4bfa58e)

[breaking] Introduce iroh-router crate (#2832) - (8f75005)

Collect metrics for direct connections & add opt-in push metrics (#2805) - (86b494a)

πŸ› Bug Fixes

(ci) Better error reporting on netsim fails (#2886) - (e1aab51)

(iroh-net) When switching to a direct path reset the mtu (#2835) - (93f7900)

(iroh-relay) Respect enable_stun setting in iroh-relay::Config (#2879) - (2507e62)

(metrics) Allow external crates to encode their metrics (#2885) - (362076e)

(portmapper) Enforce timeouts for upnp (#2877) - (00a3f88)

🚜 Refactor

(iroh) Move protocol relevant impls into node/protocols (#2831) - (67df1c1)

(iroh) Move ProtocolHandler impl to iroh-gossip (#2849) - (6c6827d)

(iroh) Move blobs protocol to iroh-blobs (#2853) - (30f3e03)

(iroh) [breaking] Remove gossip rpc types (#2834) - (a55529b)

(iroh-net) Portmapper and network monitor are crates (#2855) - (fad3e24)

Move iroh-gossip to external repo (#2826) - (e659405)

Move iroh-docs to external repo (#2830) - (3e17210)

Remove iroh-blobs and use crates.io dependency (#2829) - (d29537d)

[breaking] Remove iroh_base::rpc (#2840) - (bfba7a4)

Move ProtocolHandler docs to iroh-docs (#2859) - (61acd96)

πŸ“š Documentation

(iroh-net) Link to Endpoint in the first few paragraphs (#2875) - (f0590be)

πŸ§ͺ Testing

(iroh-net) Give this a longer timeout (#2857) - (ed13453)

(iroh-net) Make dht_discovery_smoke test less flaky (#2884) - (ce8d94d)

(netwatch) Simplify dev-deps - (029830f)

βš™οΈ Miscellaneous Tasks

(ci) Identify which repository the flakes are reported for (#2824) - (b2e587d)

(iroh-net) Fixup portmapper version - (37f620d)

Add iroh-router to crates list (#2850) - (2d17636)

Release - (860b90f)

Release - (8bae5c3)

Release - (d6c39c9)

Release - (2073bf4)

Upgrade 0.28 iroh-net - (13da047)

Release - (5751521)

Release - (5437dbb)

Upgrade 0.28 iroh-router - (297b874)

Update 0.28 iroh-docs, iroh-gossip, iroh-blobs - (7e80a92)

Release - (fa926be)

Release - (4c58bd8)

0.27.0 - 2024-10-21

⛰️ Features

(iroh-net) Export the Ticket trait (#2765) - (e9f98a6)

(iroh-net) [breaking] Allow using a NodeId directly in connect. (#2774) - (bd5e4fa)

(iroh-net) Log the crate version number (#2746) - (12f74e2)

(iroh-net) Add helper fn to enable n0 discovery publishing and resolving (#2775) - (ed903ae)

πŸ› Bug Fixes

(cfg) [breaking] Make sure we use correct relays (#2778) - (844b146)

(ci) Add cleanup workflow to retain generated-docs-preview for only the last 25 PRs (#2758) - (8420674)

(ci) Netsim commenting fixes (#2766) - (97be9e3)

(ci) Netsim does not interact with PR comments on forks (#2777) - (9902b2d)

(ci) Make sure logs get uploaded on netsim failure (#2807) - (1436389)

(deps) Update postcard to get rid of yanked critical-section (#2810) - (62e4bd4)

(iroh-net) Keep the relay connection alive on read errors (#2782) - (383f1f9)

(iroh-net) Emit the call-me-maybe.sent event in all cases (#2792) - (43f5fed)

(iroh-net) Use try_send rather than send so we dont block the local swarm discovery service (#2794) - (2d04306)

(iroh-net) [breaking] DiscoveredDirectAddrs need to update the timestamp (#2808) - (85bd8b7)

🚜 Refactor

(iroh-base) [breaking] No Result for creating new NodeTicket (#2771) - (f536789)

(iroh-net) Log the pkarr relay when publishing (#2770) - (d514859)

(iroh-net) Add tracing span context to spawned tasks (#2769) - (66549bf)

(iroh-net) Keep connection name, remove connection count (#2779) - (6b1186f)

(iroh-net) Optimise present nodes in ActiveRelay (#2781) - (c7ac982)

(iroh-net) Failing to bind is not a Warning log (#2815) - (f08011a)

(iroh-net) Attach Relay URL to a connecting client span (#2817) - (a0ce00e)

(iroh-net) No portmapper is not a warning (#2816) - (f32f3f9)

(iroh-net) Debug logging should not be per packet set (#2818) - (c82ada5)

Display the socket addr and relay for a ConnectionType::Mixed (#2793) - (c349c43)

πŸ“š Documentation

()* Document cargo features in docs (#2761) - (4d41a69)

(iroh) Enable iroh_docsrs feature (#2780) - (234a856)

(iroh-base) Clarify AddrInfoOptions a little (#2813) - (a36970a)

(iroh-net) Add examples to discovery (#2786) - (ab3afef)

(iroh-net) Add examples to the module docs (#2785) - (39d4bd9)

(iroh-net) Some more example tweaking (#2811) - (af8c474)

(iroh-net) Document cfg(test) items as well (#2819) - (a03a08e)

(relay) Fix typos in map.rs (#2773) - (73ca58a)

πŸ§ͺ Testing

(iroh) Mark test_blob_delete_mem as flaky (#2784) - (730f717)

βš™οΈ Miscellaneous Tasks

(iroh-net) Upgrade igd-next, remove hyper 0.14 (#2804) - (5e40fe1)

Format imports using rustfmt (#2812) - (8808a36)

Increase version numbers and update (#2821) - (71b5903)

Release - (3f5b778)

Deps

()* Update futures-util (#2790) - (75d8019)

0.26.0 - 2024-09-30

⛰️ Features

(iroh) Disable docs by default (#2748) - (eb4c4a6)

(iroh) [breaking] Make blobs::read_at more flexible (#2756) - (33dc559)

(iroh) Allow setting a custom quinn::TransportConfig (#2760) - (253f4f1)

(iroh-cli) Improve ergonomics of iroh gossip subscribe CLI cmd (#2751) - (90fd6f0)

Set derive_more to 1.0.0 (no beta!) (#2736) - (2d863a9)

πŸ› Bug Fixes

(ci) Make netsim work on forks (#2757) - (0953263)

(examples) Make collection-provide, hello-world-provide and rpc work again (#2749) - (25c8305)

(iroh-blobs) Preserve tracing subscriber in the LocalPool (#2735) - (5dd8bd3)

(iroh-blobs) Remove debugging logs & more cleanup (#2690) - (857e513)

(iroh-net) Clear the recent pong time when pong is lost (#2743) - (8fb92f3)

🚜 Refactor

(ci) Redo netsim CI (#2737) - (443139d)

(iroh-net) Various logging improvements (#2744) - (2262fd5)

(iroh-net) Remove PathState::recent_pong() (#2745) - (cafdc08)

πŸ“š Documentation

(iroh-net) Document default relay servers a bit more (#2740) - (10025bd)

(iroh-net) Improve last_pong field docs (#2747) - (19c8fd3)

(iroh-net) Improve pkarr discovery docs (#2722) - (a0a8d56)

(iroh-net) Document cargo features needed for APIs (#2759) - (5d92f49)

βš™οΈ Miscellaneous Tasks

Release - (01c2bac)

0.25.0 - 2024-09-16

⛰️ Features

(iroh-base) Implement From & Into between NodeAddr and NodeTicket (#2717) - (8a4bb09)

Allow to bind to a specific address (#2694) - (2e5188a)

πŸ› Bug Fixes

(ci) Fix docker builds on release & release rebuilds (#2712) - (21d75c7)

(iroh) Handle out of bounds requests for blobs read_at (#2729) - (28cf153)

(iroh-blobs) Unconditionally delete blobs (#2692) - (567577d)

(iroh-net) Fix a hot-loop when the probes time out (#2699) - (874030a)

Put --with-relay feature in iroh-net bench behind local-relay feature flag (#2700) - (b8c0513)

🚜 Refactor

(iroh) Remove custom impl of SharedAbortingJoinHandle (#2715) - (098b11f)

(iroh-gossip) Make use of Endpoint::direct_addresses in iroh_gossip::net (#2731) - (9583729)

(iroh-net) [breaking] Make netcheck::Client !Clone (#2716) - (ce2cfee)

[breaking] Migrate to tokio's AbortOnDropHandle (#2701) - (35e9873)

πŸ“š Documentation

(iroh-cli) Add docs to entrypoint (#2697) - (c6e2f05)

(iroh-cli) Udpate doctor command documentation (#2710) - (93b400a)

(iroh-cli) Update authors command documentation (#2702) - (2c199a0)

(iroh-cli) Update console command documentation (#2705) - (4964ee3)

(iroh-cli) Update net command documentation (#2707) - (8c321a2)

(iroh-cli) Update start command documentation (#2708) - (2636be8)

(iroh-cli) Update rpc command documentation (#2711) - (518d439)

(iroh-cli) Update gossip command documentation (#2706) - (bdaeba1)

(iroh-cli) Update tags command documentation (#2709) - (7510a59)

(iroh-cli) Update blobs command documentation (#2704) - (76b1473)

(iroh-cli) Update docs command documentation (#2703) - (7b6c974)

(iroh-cli) Fix typo (#2718) - (d2ecbdb)

βš™οΈ Miscellaneous Tasks

(ci) Move mac builds over to arm box (#2675) - (1df0813)

(iroh-net) Remove direct dependency on rand_core (#2719) - (b6a64e0)

Fix clippy@1.81.0 and cargo deny (#2714) - (52422cd)

Remove double spellchecks (#2720) - (a733143)

Release - (285101e)

0.24.0 - 2024-09-02

⛰️ Features

(bench) Add --with-relay option to allow testing relay throughput (#2664) - (5c09013)

(bench) Add --metrics option printing iroh-net library metrics (#2668) - (4f83c43)

(iroh-net) [breaking] Upgrade to Quinn 0.11 and Rustls 0.23 (#2595) - (34ec5e2)

πŸ› Bug Fixes

(iroh-blobs) Demote warn! to trace! logs (#2689) - (6181455)

(iroh-blobs) Turn println! into tracing::debug! (#2686) - (5bbcb60)

(iroh-blobs) Timeout based on correct max_write_duration option (#2688) - (2347565)

(iroh-net) Document the keylog environment variable correctly (#2655) - (c70caaf)

(iroh-net) Magic sock recv_data_ipv4 and recv_data_ipv6 metrics numbers (#2667) - (cb1650a)

(iroh-net) Also check the last packet in MagicSock::poll_recv (#2650) - (54ca9c9)

(iroh-net) Reduce noise in swarm discovery due to republish (#2685) - (fd56763)

Docker CI performance & release builds (#2659) - (d567231)

🚜 Refactor

(iroh, iroh-blobs, iroh-net) [breaking] Remove deprecated items (#2652) - (060bf83)

πŸ§ͺ Testing

(iroh-gossip) Wait for the relay to make gossip_net_smoke faster. (#2663) - (1d3f3fa)

βš™οΈ Miscellaneous Tasks

(iroh-net) Do not add the NodeId in the magicsock span field (#2679) - (05fff6a)

Release - (a029d89)

Deps

(iroh-gossip) Do not depend directly on Quinn (#2678) - (6296964)

0.23.0 - 2024-08-20

⛰️ Features

(ci) Notify discord of successfull flaky runs (#2623) - (94cee34)

(iroh) [breaking] Blob batch PR, attempt 3 (#2545) - (9a55122)

(iroh-blobs) Add outboard creation progress to the mem store (#2625) - (47c8528)

(iroh-net) Upgrade to new swarm-discovery api (#2605) - (a9c96a9)

(iroh-net) Add PkarrNodeDiscovery to iroh-net (#2628) - (9facd5a)

(iroh-net) Allow customizing republish delay for the pkarr publisher (#2637) - (134dbee)

Allow custom blob providing event handling (#2583) - (bcc87a2)

πŸ› Bug Fixes

(ci) Report flaky outupt only on success and failure (#2627) - (8b6245e)

(iroh-blobs) Do not skip empty partial blobs in migration (#2604) - (1c86dac)

(iroh-cli) cli_provide_addresses to use the correct iroh status command (#2649) - (717b3cd)

(iroh-gossip) Clarify docs and semantics of gossip joined event (#2597) - (5d98a5c)

(tests) For DNS discovery only use a local DNS server (#2598) - (5eee643)

🚜 Refactor

(iroh) [breaking] Convert node to net module (#2642) - (6354e04)

(iroh,iroh-net) [breaking] Prefer remote to connection in api (#2610) - (9d06888)

(iroh-blobs) Use oneshot channel from oneshot crate (#2624) - (2e01d47)

(iroh-blobs) [breaking] Expand docs (#2638) - (217ac06)

(iroh-blobs, iroh) [breaking] Deprecate flat stores (#2629) - (168fa5b)

(iroh-bytes) [breaking] Remove flume dependency (#2622) - (e9c5088)

(iroh-cli) [breaking] Metrics-addr cli arg, metrics off by default (#2631) - (4df1c91)

(iroh-net) [breaking] Remove async channel (#2620) - (74a527b)

(iroh-net) [breaking] Rename the local-swarm-discovery feature to discovery-local-network (#2634) - (d1578ee)

(iroh-net) Move all timeouts into one file (#2641) - (bb808b4)

(iroh-net,iroh) Rename to remote_info_iter, fixup some docs (#2645) - (b17bf1d)

Normalize feature names (#2633) - (d02c21f)

πŸ“š Documentation

(iroh-cli) Fix help text for incomplete blobs (#2615) - (ceb94da)

Also list iroh-gossip as a re-export (#2606) - (3b7881c)

πŸ§ͺ Testing

(iroh) Reduce entry amount in sync_gossip_bulk (#2608) - (a2d2ec6)

(iroh) Re-enable some flaky tests to see if they are still flaky (#2458) - (b8f2b3f)

(iroh-cli) Replace cli_provide_one_file_large with a faster test (#2607) - (7494566)

βš™οΈ Miscellaneous Tasks

(ci) Use nextests groups to isolate some tests (#2617) - (a5072c3)

Fix deps issues (#2643) - (83f6fcc)

Release - (855e1bb)

Ref

(iroh-net) Move PathState to its own module (#2587) - (2e937a8)

0.22.0 - 2024-08-05

⛰️ Features

(iroh) Improve documentation and canonicalize docs in iroh::client (#2553) - (d937234)

Override to staging relays (#2551) - (ed4420b)

πŸ› Bug Fixes

(iroh) Do not set low max streams in builder (#2593) - (215cd1d)

(iroh-blobs) Use async_channel instead of flume for local_pool (#2533) - (9052905)

(iroh-blobs) Do not hit the network when downloading blobs which are complete (#2586) - (0784403)

(iroh-cli) [breaking] Improve cli and configuration file (#2532) - (0fc3794)

(iroh-gossip) Connection loop misuses tokio::select! leading to read errors (#2572) - (32bb0f3)

(iroh-net) Fix a compiler error with newer derive_more versions (#2578) - (3f3fec5)

(iroh-net) Make a single direct address in NodeAddr instant (#2580) - (f5b3918)

Docker image builds (#2530) - (5c60a52)

Disable docs preview on forks (#2558) - (741b42f)

Force CI to use staging relays (#2560) - (ffeb1a9)

Pin derive_more to avoid sudden breakages (#2584) - (1ba033c)

🚜 Refactor

(iroh) Remove flume from iroh gossip (#2542) - (2964569)

(iroh) Remove flume from iroh-cli and iroh (#2543) - (347d45c)

(iroh-docs) Replace flume with async_channel in docs (#2540) - (e7a7552)

(iroh-net) Replace flume in iroh-net with async_channel (#2539) - (22314a1)

(iroh-net) Move more server code behind iroh-relay feature flag (#2566) - (1dda2f7)

(iroh-net) [breaking] Improve server modules structure & rename structs (#2568) - (29d2e82)

(iroh-net) Switch to (now stable) IpAddr::to_canonical (#2569) - (7fdd6cb)

πŸ“š Documentation

(iroh) Add documentations and examples for the iroh::node::Client (#2582) - (55836fa)

(iroh-cli) Point to the configuration refernce from each iroh subcommand (#2571) - (8e4e586)

Fix typos discovered by codespell (#2534) - (8435a45)

Update description in cargo.toml - (7259ab5)

πŸ§ͺ Testing

(iroh-blobs) Comment out ignored test (that is not a flaky test) (#2559) - (15f36b3)

(iroh-cli) Update to new api (#2549) - (f97c1c0)

(iroh-cli) Remove flaky mark from 5 tests and improve logs (#2562) - (14fccee)

(iroh-cli) Reduce flakyness of cli_provide_file_resume (#2563) - (f085e63)

(iroh-cli) Make cli resumption tests not flaky (#2564) - (9e6b1e0)

(iroh-net) Increase timeout for local swarm discovery test (#2574) - (605a85d)

βš™οΈ Miscellaneous Tasks

(iroh-net) Remove need for relay info in best_addr (#2579) - (d662bfc)

Fix clippy warnings (#2550) - (73de21b)

Generate docs for each PR (#2547) - (0812333)

Release - (d54a5de)

Ref

(iroh-net) Don't write the match as fully exhaustive (#2585) - (43ef8b6)

0.21.0 - 2024-07-22

⛰️ Features

(ci) Publish docker images (#2520) - (c0fa1f4)

(iroh-cli) [breaking] Realign cli commands with library (#2522) - (4c11c58)

(iroh-net) Add holepunching events (#2495) - (8685222)

(iroh-net) [breaking] Remove fs based peers storage (#2510) - (0a8cb8a)

(iroh-net) Update netdev to 0.30 (#2528) - (214bb0c)

(iroh-relay) Add more context to iroh-relay errors (#2506) - (04df203)

πŸ› Bug Fixes

(iroh-blobs) Properly handle Drop in local pool during shutdown (#2517) - (b4506b2)

(iroh-docs) Do not dial invalid peers (#2470) - (7579caa)

(iroh-metrics) Add the bind addr in errors for bind failures (#2511) - (50a8b5c)

🚜 Refactor

(iroh) Make use of quic-rpc-derive macros to prettify the rpc declarations (#2508) - (026baaa)

(iroh-net) [breaking] Move relay implemention in iroh-net behind iroh-relay cfg flag (#2516) - (f37d9f9)

(iroh-net) Switch to new iroh-relay route /relay instead of /derp (#2489) - (b7b493d)

(iroh-net) More renaming of endpoint to direct address (#2515) - (0c03f6e)

(iroh-net) Remove random choice of direct addr (#2509) - (c1c3539)

[breaking] Metrics (#2464) - (09e9746)

πŸ“š Documentation

(iroh-net) Fix broken HTTP/3 link (#2485) - (a5a2324)

(iroh-net) Improve Endpoint::accept docs (#2492) - (79a2768)

πŸ§ͺ Testing

(iroh-cli) Improve bao_store_migration test logging (#2483) - (d17ffa3)

βš™οΈ Miscellaneous Tasks

(bytes) Bytes v1.6.0 was yanked so upgrade to bytes v1.6.1 (#2503) - (ecfbed3)

Add a flaky tests failure report to our discord notification (#2496) - (f84c06e)

Keep GitHub Actions up to date with GitHub's Dependabot (#2498) - (538efbf)

Release - (1145b34)

Deprecation

(iroh) [breaking] Remove deprecated type aliases (#2467) - (0102b05)

0.20.0 - 2024-07-09

⛰️ Features

(iroh) Add rpc request to add an AddrInfo (#2433) - (59e2719)

(iroh) Gossip client (#2258) - (b0d5413)

(iroh) Add missing gossip reexports (#2479) - (af36c2f)

(iroh-net) Implement websocket protocol upgrade in iroh-relay (#2387) - (17c654e)

(iroh-net) [breaking] Make relay protocol configurable on ClientBuilder instead of defined by the relay url scheme (#2446) - (ab2c7ea)

(iroh-net) [breaking] Add PkarrResolver and publish direct addresses in PkarrPublisher when relay is disabled (#2417) - (5ba6855)

(iroh-net) Local swarm discovery (#2376) - (3866b6f)

[breaking] Split relay configuration between production and staging (#2425) - (d421ece)

Add Asia Pacific relay url to the default relay url list in production (#2469) - (23790cb)

Docker images for iroh (#2404) - (debc4fb)

πŸ› Bug Fixes

(cli) Always respect the --metrics-port disabled option (#2459) - (2c40984)

(iroh-bytes) Fix off-by-one error in Collection::load (#2473) - (3002deb)

(iroh-docs) Ensure docs db write txn gets closed regularly under all circumstances (#2474) - (235c69c)

(iroh-docs) [breaking] Add flush_store and use it to make sure the default author is persisted (#2471) - (b88dfa5)

(iroh-gossip) Gossip dispatcher: reliable events on join, allow dropping sinks or streams (#2482) - (998d29f)

(iroh-net) Delays of non-stun probes for subsequent relays (#2445) - (b34587f)

(iroh-net) Use staging URL for pkarr publish in dev mode (#2466) - (fe1d17f)

(iroh-net) Unexpected cfg condition values / possible fix on netbsd (#2476) - (aff8152)

🚜 Refactor

(iroh) Log inner errors (#2423) - (da3f84b)

(iroh) [breaking] Attempt make naming more consistent (#2434) - (6b4435d)

(iroh) Modularize protocol (#2454) - (5aa3fb6)

(iroh) [breaking] Remove server channel type parameter (#2461) - (f4d1e71)

(iroh-relay) [breaking] Remove relay_endpoint config option & rename /derp route to /relay (#2419) - (d4fe155)

πŸ“š Documentation

(iroh) Expand module level documentation in iroh (#2463) - (74e8a6a)

(iroh-net) Update discovery and dialing docs, signatures (#2472) - (e53714c)

Pass Doc instead of Iroh in example (#2432) - (975124c)

Example requires example feature to run (#2451) - (623dcc6)

Reference rust doc style guide in contributing guidelines (#2452) - (32b23e6)

πŸ§ͺ Testing

(iroh-cli) Also test for "minutes" in transfer time regex :grimacing: (#2475) - (9dddafc)

(iroh-net) Make some tests less flaky (#2457) - (bc0b397)

Increase timeout test_run_rpc_lock_file (#2439) - (efececb)

Increase timeouts for tests that are flaky on slow CI (#2450) - (cc30743)

βš™οΈ Miscellaneous Tasks

(ci) Deny aws-lc backend to sneak in (#2436) - (6aef6aa)

(ci) Separate out android builds & disable netbsd (#2435) - (002f5d5)

(ci) Use pre-compiled binary on CI (#2429) - (cdad25a)

(docs) Update readme (#2465) - (61f3f7e)

(iroh) Improve and document custom-protocol example (#2468) - (203f9e7)

Introduce crate-ci/typos (#2430) - (c58f744)

Release - (264848c)

Deps

(iroh-net) Bump netdev (#2447) - (b5dc795)

0.19.0 - 2024-06-27

⛰️ Features

(iroh) Allow to disable docs engine completely (#2390) - (0e6d441)

(iroh) Allow setting the logging directory via config file (#2391) - (600ba8c)

(iroh) [breaking] Expand ability to connect to RPC (#2398) - (d30ed19)

πŸ› Bug Fixes

(iroh) Do not double-close docs on drop (#2383) - (55a0c0b)

(iroh) Use two stage accept from quic-rpc (#2416) - (83b01ad)

(iroh-net) [breaking] ALPNs can be bytes, not just strings (#2377) - (f57c34f)

(iroh-net) Prevent adding addressing info that points back to us (#2333) - (b2e8557)

(iroh-net) poll_send should drop transmits that we dont have a dest for (#2393) - (aba70ea)

Properly wait for docs engine shutdown (#2389) - (eb74cf6)

Do not panic on blobs db IO error (#2400) - (38e8ce0)

🚜 Refactor

(iroh) [breaking] Use ref-cast instead of fields to get the subsystem clients (#2374) - (be3e16e)

(iroh) Allow to register custom protocols (#2358) - (13ded84)

(iroh) Move code from builder to node and make things nicer (#2386) - (08f1fe0)

(iroh) Use boxed client to get rid of the C type parameter (#2353) - (abc7f5e)

(iroh) [breaking] Eliminate the type parameter for the rpc service type (#2405) - (52c96ba)

(iroh-net) [breaking] Rename Endpoint::my_relay to home_relay (#2361) - (100d27d)

(iroh-net) [breaking] Rename Endpoint::my_addr to Endpoint::node_addr (#2362) - (61d5109)

(iroh-net) [breaking] Do not use &NodeId in APIs as this is Copy (#2363) - (e9075f3)

(iroh-net) [breaking] Rename Endpoint::local_addr to bound_sockets (#2366) - (a5e5939)

(iroh-net) [breaking] Rename Endpoint::local_endpoints to direct_addresses (#2369) - (2ac3d01)

(iroh-net) Improve magicsock module visibility (#2371) - (3b0bb51)

(iroh-net) [breaking] Rework relay-server binary, more configurable, reverse-proxy support (#2341) - (4ff1ec4)

(iroh_net) [breaking] Remove Endpoint::my_addr_with_endpoints (#2359) - (3a2faea)

πŸ“š Documentation

(iroh-net) Update NodeAddr docs (#2365) - (53dfed1)

(iroh-net) A few small fixes from PR review (#2375) - (ea7e654)

Fix spelling in new protocol handler docs (#2385) - (f73c506)

πŸ§ͺ Testing

(iroh-net) Remove a flaky test (#2379) - (d37a4a4)

βš™οΈ Miscellaneous Tasks

Deny openssl (#2372) - (ac72938)

Release - (3659628)

Deps

Bump curve25519-dalek (#2382) - (96081e5)

0.18.0 - 2024-06-07

⛰️ Features

(iroh-gossip) Configure the max message size (#2340) - (7153a38)

πŸ› Bug Fixes

(docs) Prevent deadlocks with streams returned from docs actor (#2346) - (98914ee)

(iroh-net) Fix extra delay (#2330) - (77f92ef)

(iroh-net) Return Poll::Read(Ok(n)) when we have no relay URL or direct addresses in poll_send (#2322) - (b2f0b0e)

🚜 Refactor

(iroh) [breaking] Replace public fields in iroh client with accessors and use ref-cast to eliminate them entirely (#2350) - (35ce780)

(iroh) [breaking] Remove tags from downloader (#2348) - (82aa93f)

(iroh-blobs) [breaking] Make TempTag non-Clone (#2338) - (d0662c2)

(iroh-blobs) [breaking] Implement some collection related things on the client side (#2349) - (b047b28)

Move docs engine into iroh-docs (#2343) - (3772889)

πŸ“š Documentation

(iroh-net) Update toplevel module documentation (#2329) - (4dd69f4)

(iroh-net) Update endpoint docs (#2334) - (8d91b10)

πŸ§ͺ Testing

Disable a flaky tests (#2332) - (23e8c7b)

βš™οΈ Miscellaneous Tasks

(ci) Update clippy (#2351) - (7198cd0)

Release - (ea50b94)

0.17.0 - 2024-05-24

⛰️ Features

(cli) Add metrics server to iroh doctor (#2292) - (d635d93)

(iroh) [breaking] Remove node events (#2274) - (b412927)

(iroh) Add node wide default author for documents (#2299) - (c8690a2)

(iroh-base) Wasm compatability (#2305) - (ab18eae)

(iroh-net) Watch relay changes (#2291) - (9d71fd8)

(iroh-net) [breaking] Implement http proxy support (#2298) - (6d1a6dd)

(iroh-net) [breaking] Improve dns behaviour by staggering requests (#2313) - (d813089)

Emit PendingContentReady event (#2302) - (fc73502)

Import and subscribe to a document in a single call (#2303) - (370075c)

Iroh-perf (#2186) - (98d45f3)

[breaking] New quic-rpc, simlified generics, bump MSRV to 1.76 (#2268) - (1e31dcf)

Support {Free|Net|Open}BSD (#2311) - (cd65470)

πŸ› Bug Fixes

(iroh) Make client::docs::ImportProgress public (#2288) - (acd859b)

(iroh-gossip) Do not drop existing connection on incoming one (#2318) - (e41d1d9)

Do not bind a mainline DHT socket (#2296) - (491012c)

🚜 Refactor

(iroh-net) [breaking] Rename MagicEndpoint -> Endpoint (#2287) - (f4d6ca1)

(iroh-net) Small improvements to dns code (#2301) - (b93dd34)

Do not use gossip subscribe_all in iroh sync engine (#2265) - (eebf6d1)

πŸ“š Documentation

(iroh-net) Minor tweaks in the public iroh_net::dns module (#2289) - (3f6b8e7)

πŸ§ͺ Testing

(iroh-gossip) Fix net smoke test (#2314) - (8ad6ff1)

βš™οΈ Miscellaneous Tasks

Minimize use of raw base32 in examples (#2304) - (1fafc9e)

Release - (5ad15c8)

0.16.0 - 2024-05-13

⛰️ Features

(doctor) Report connection type changes in rolling fashion (#2251) - (9a050a9)

(iroh) [breaking] Unify node api (#2275) - (6ed6b34)

(iroh-base) Allow the addr info of tickets to be empty (#2254) - (5502c5a)

(iroh-cli) Make ticket-inspect print full node ids (#2261) - (f099dab)

(iroh-cli) Add doctor plot (#2206) - (4f1d8b0)

(iroh-net) Expose DNS resolver (#2262) - (6504727)

(iroh-net) [breaking] Improve initial connection latency (#2234) - (ec48b0d)

(iroh-net) Own the public QUIC API (#2279) - (b62e904)

Update from default-net to rebranded netdev (#2264) - (302fea4)

πŸ› Bug Fixes

(iroh-net) Reconfirm best addr when receiving data on it (#2255) - (6fbf4a9)

(iroh-net) Do not log as error if client disconnects from relay (#2259) - (cdedc43)

🚜 Refactor

(iroh) [breaking] Cleanup public API (#2263) - (d41f433)

(iroh-net) [breaking] Make the interfaces module private (#2266) - (38bdaef)

Renames iroh-sync & iroh-bytes (#2271) - (26d718f)

πŸ§ͺ Testing

(iroh) Test sync with restarting node (#2146) - (ec1e1d2)

(iroh-net) Fix relay's codec proptesting (#2283) - (5343cea)

Disable flaky tests on windowns again (#2267) - (6cc12d8)

βš™οΈ Miscellaneous Tasks

Release - (531829d)

0.15.0 - 2024-04-29

⛰️ Features

(iroh-bytes) Add more context to errors (#2196) - (d3fec78)

(iroh-bytes) [breaking] Refactor downloader queue and add progress reporting (#2085) - (93290e3)

(iroh-bytes) Add copy fallback for Export::TryReference (#2233) - (ec7de88)

(iroh-dns-server) [breaking] Add dht fallback option (#2188) - (0b0508b)

(iroh-net) Extend discovery NodeInfo to allow direct addrs (#2201) - (2c49ee8)

Release automation (#2214) - (b5f8277)

[breaking] Implement improved address sharing options (#2230) - (a26a350)

πŸ› Bug Fixes

(ci) Typo in semver rev check (#2213) - (2a6ae17)

(ci) Minor corrections for manual release runs (#2215) - (3a74d89)

(ci) Fix for windows release runs (#2216) - (2dfd0ae)

(ci) Release builds (#2219) - (ba7317d)

(deps) Update rustls (#2218) - (f508830)

(iroh-bytes) Do not log redundant file delete error (#2199) - (1e84ae0)

(iroh-bytes) Reduce log level from info to debug for most uncritical operations (#2202) - (6d36d00)

(iroh-cli) Avoid using debug formatting for rpc errors (#2203) - (508a812)

(iroh-dns-server) Fix bug in pkarr name parsing (#2200) - (2bb7bd5)

(iroh-gossip) Do not enable "metrics" feature for iroh-net by default (#2235) - (2693ec5)

(iroh-net) Suppress HostUnreachable network error as well (#2197) - (600393b)

(iroh-net) Better logging for pkarr publish (#2208) - (0f624cc)

(iroh-net) [breaking] Improve magicsock's shutdown story (#2227) - (265e284)

(iroh-net) [breaking] Only call quinn_connect if a send addr is available (#2225) - (e913051)

(iroh-net) Do not persist invalid node addresses (#2209) - (18b301a)

(iroh_net) Less agressive best_addr clearing on pong timeout (#2238) - (5329927)

(iroh_net) Track recv_data_ipv4 & recv_data_ipv6 (#2243) - (f8ff3bc)

Better logging for iroh-dns-server (#2195) - (075737d)

Semver check on main (#2212) - (5873a55)

🚜 Refactor

(iroh-net) [breaking] Rename endpoint for nodes to node_state (#2222) - (26e4564)

(iroh-net) Merge related fields regarding incoming pings (#2236) - (0f370ad)

(iroh-net) [breaking] Remove the magicsock module from the public api (#2247) - (06e0b7b)

(iroh-sync) Doc store batching (#2172) - (9b3165b)

Happy clippy (#2220) - (d6ff0cf)

Improve content downloading in docs (#2127) - (1432d61)

[breaking] Avoid using futures crate directly (#2117) - (b91b684)

πŸ“š Documentation

Improve breaking change handling (#2207) - (d55b782)

πŸ§ͺ Testing

(iroh_net) Mark test_icmpk_probe_eu_relayer as flaky on windows (#2240) - (ea8e047)

Remove flaky label from windows-DNS affected tests (#2223) - (93bcaa5)

Mark iroh::sync_big flaky (#2245) - (297fd1a)

βš™οΈ Miscellaneous Tasks

Rename derper > iroh-relay (#2211) - (ebe7196)

Release - (13a0bbc)

Deps

(iroh-blake3) Upgrade to version fixing more symbol collions (#2246) - (0c336c4)

0.14.0 - 2024-04-15

⛰️ Features

(iroh) Implement basic author api (#2132) - (5e1a71f)

(iroh-cli) Add file logging by default for start commands (#2175) - (b80b338)

(iroh-cli) Simplify config loading (#2171) - (2cfa055)

(iroh-net) Add MagicEndpoint::conn_type_stream returns a stream that reports connection type changes for a node_id (#2161) - (7986394)

Mark iroh-cli's iroh binary as workspace default (#2160) - (aeb04d8)

Update redb to v2 (#2120) - (ceaf168)

Node discovery via DNS (#2045) - (72384ce)

Add discovery option to doctor (#2182) - (2c1eca9)

πŸ› Bug Fixes

(iroh) Shutdown sync engine on iroh node shutdown (#2131) - (35a1cdd)

(iroh) Do not shut down node on internal rpc error (#2158) - (fcdc299)

(iroh-cli) Doctor relay-urls, correct connection logic (#2163) - (314c883)

(iroh-cli) Fix printing of doctor connect/accept output (#2166) - (5d4ac52)

(iroh-net) Avoid double connections to relays (#2148) - (aa1cf66)

(tests) Disable the metrics port of all cli tests (#2154) - (1d51caa)

Remove redundant imports (#2159) - (43038df)

🚜 Refactor

(iroh-bytes) Update bao-tree to 0.12 and adjust code (#2153) - (bfb7560)

(iroh-bytes) Use even newer bao-tree (#2168) - (fe6dcac)

(iroh-net) Remove incremental state from reportgen actor (#2180) - (d22c1cd)

(metrics) Metrics on by default (#2129) - (ff88f65)

Rustc beta is stricter again wrt imports and unused code (#2185) - (d6f336c)

πŸ“š Documentation

(gossip) Add comment about message uniqueness (#2140) - (9fc1266)

⚑ Performance

(iroh-net) Simplify relay handshake (#2164) - (70db5fb)

(iroh-sync) Avoid allocating a full range of values during sync (#2152) - (13e83f3)

πŸ§ͺ Testing

(iroh-net) Expose run_relay_server and option to skip cert verification to tests (#2145) - (fb4703a)

βš™οΈ Miscellaneous Tasks

(ci) Upload iroh-dns-server binaries (#2189) - (d1f946e)

Move metrics init into CLI (#2136) - (319e9cc)

Remove unused dependencies (#2170) - (b07547b)

Release - (406280c)

Deps

(iroh-next) Move from igd to igd-next (#2134) - (6417816)

Update h2 (#2147) - (c85bf3d)

0.13.0 - 2024-03-25

⛰️ Features

(deps) Update from trust-dns-resolver to hickory-resolver (#2033) - (af7783e)

(iroh) Add blobs.create_collection api endpoint - (1f6153b)

(iroh) Add more rpc methods (#1962) - (4910df1)

(iroh) Add --log-fd flag on unix (#2011) - (8e60d1b)

(iroh) Expose ExportMode in client API (#2031) - (ac667bb)

(iroh) Add Sync bound and Stream impl for BlobReader (#2063) - (09e3e52)

(iroh) Improved node builder (#2087) - (2364329)

(iroh) Expose GetSyncPeers (#2054) - (0b94992)

(iroh) Improve various aspects of the api (#2094) - (c776478)

(iroh-bytes) Bring back validation (#2107) - (50b3e47)

(iroh-net) DNS queries: lookup ipv6 & ipv4 in parallel (#2019) - (4615915)

(iroh-net) ICMPv6 probe support in netcheck (#2057) - (bbb55a8)

(iroh-net) Combine discovery services and add heuristics when to start discovery (#2056) - (f4d3fab)

(iroh-net) Use the local endpoints info when closing derps (#2082) - (8d86ffc)

Release artifacts & windows builds (#1987) - (13a3fe6)

Split CLI implementation into a new iroh-cli crate (#2076) - (5c70cd2)

πŸ› Bug Fixes

(ci) Cleanup and fix bugs (#1926) - (cced7f1)

(ci) Stop reusing concurrency labels across jobs (#1937) - (02ead0a)

(ci) Also test iroh-cli for cargo features (#2122) - (a136b1d)

(console) Prevent deadlock in author new --switch (#2032) - (fea92ac)

(derp) Restore ClientInfo mesh_key field (#2090) - (75a8590)

(examples) Adjust and add examples (#1968) - (9f10152)

(iroh) Add timestamp method to Entry RPC struct (#1949) - (0084b5f)

(iroh) Do not establish connection if content already exists locally (#1969) - (f7264ff)

(iroh) Improve and test blob share (#1979) - (5db247f)

(iroh) Do not remove the rpc lockfile if an iroh node is already running (#2013) - (a5c0db3)

(iroh) Properly shut down the store on control-c (#2100) - (7cc9efa)

(iroh-bytes) Print hashes as hex in validation (#2118) - (9d40459)

(iroh-net) Improve connectivity (#1983) - (4b58de5)

(iroh-net) Improve direct connectivity establishment speed and reliablity (#1984) - (b173520)

(iroh-net) Correctly report sent transmits in poll_send (#2025) - (b0afd40)

(iroh-net) Race ipv4 and ipv6 dns resolution (#2026) - (19553ed)

(iroh-net) Ensure netcheck finishes once it has results (#2027) - (c62950e)

(iroh-net) Fix in detecting globally routable IPv6 addresses (#2030) - (c3aa17e)

(iroh-net) Handle unreachable IPv6 networks better (#2029) - (436121f)

(iroh-net) Fix some flaky magicsock tests (#2034) - (df57623)

(iroh-net) Trigger netcheck on a magicsock rebind (#2042) - (890d019)

(iroh-net) Work around broken windows DNS configuration (#2075) - (3747a09)

(iroh-net) Improve backpressure handling (#2105) - (b98ed9d)

(iroh-sync) Dl policies exists only if doc exists (#1921) - (de7f603)

(iroh-sync) Sync peers exists only if doc exists (#1920) - (2835f62)

Allow some dead code for the nightly compiler (#1934) - (ca20102)

Build successfully from cargo vendor tarball (#1932) - (2337cb2)

Ci windows releases - (ed23c43)

Ci release builds (#1988) - (4abb782)

Update deps to avoid cargo-deny warning (#2059) - (bc1af2e)

Properly shutdown sync actor (#2067) - (e96a0c1)

Remove dead code detected by the rust beta compiler (#2121) - (2c59d7d)

Do not allow connecting to ourself (#2123) - (a2af124)

Comment about grease_quic_bit (#2124) - (8407907)

🚜 Refactor

(iroh) Move rpc handling into its own module (#2078) - (e7690b9)

(iroh-bytes) Take advantage of impl T in trait, update bao-tree and iroh-io (#2018) - (a942973)

(iroh-bytes) Simplify store traits (#2023) - (27a8ef1)

(iroh-bytes) Async bao store (#2043) - (5398479)

(iroh-bytes) Rewrite the blob store to use redb (#2051) - (980b53d)

(iroh-bytes) Further reduce surface area (#2102) - (953a768)

(iroh-bytes) Make module name and feature flags consistent with docs db (#2110) - (918fca6)

(iroh-bytes) Get rid of meta dir (#2111) - (cbc5906)

(iroh-net) Log best addr on debug if not changed (#1958) - (db41c5e)

(iroh-net) A bunch of logging improvements (#1982) - (9dd77fa)

(iroh-net) Introduce a minimal DerpUrl (#1993) - (7844577)

(iroh-net) Remove manual struct logging (#2009) - (315032a)

(iroh-net) Rename CallMeMaybe field (#2012) - (c0637d0)

(iroh-net) Delete some unused testing infrastructure (#2028) - (e7af74d)

(iroh-net) Improve API to retrieve local endpoints (#2041) - (540fd88)

(iroh-net) Avoid using .unwrap() calls (#2046) - (827aa8d)

(iroh-net) Remove unneeded async interactions with the magicsock actor (#2058) - (a42c1b2)

(iroh-net) Clean up peer_map, node_map and endpoint names (#2060) - (6578d2c)

(iroh-net) Bump netcheck DNS timeout to 3s (#2077) - (24b38c8)

(iroh-net) Remove rebinding (#2083) - (484e5e8)

(iroh-net) Generalize derp naming to relay to prepare for future refactors (#2091) - (07c29f0)

(iroh-net) Allow to set a custom DNS resolver on the magic endpoint (#2116) - (8dcb196)

(iroh-sync) Rip out the mem implementation of the doc store (#2112) - (cdfde7d)

(redb-store) Optimization for small file import in redb store (#2062) - (8dd2c8c)

Use common helper function (#1933) - (63eecd9)

Move Dialer from iroh-gossip to iroh-net (#1998) - (90a5160)

Cleanup ProgressSliceWriter (#2000) - (7edd7ab)

Move downloader from iroh to iroh-bytes (#1999) - (aeee718)

Download and export structure and progress events (#2003) - (1838c17)

Fallible store traits (#2005) - (1ad6510)

Move iroh_net base types to iroh_base (#2053) - (8bdb0a0)

Remove derp meshing (#2079) - (29065fd)

Make export a seperate operation from download (#2113) - (488be5b)

πŸ“š Documentation

(derper) Display the correct port number in the derper --dev help message (#2048) - (e1c9fda)

(iroh-gossip) Fix typo in proto.rs (#1927) - (7965836)

πŸ§ͺ Testing

(iroh) Sort output in test for download policies (#1918) - (c65b7de)

(iroh-net) Make derp connect loop test more reliable (#2064) - (9e7605d)

(iroh-net) Re-enable icmp probe test (#2065) - (2eb06d0)

(iroh-net) Disable test_icmp_probe_eu_derper as flaky on windows (#2068) - (3a33c24)

(iroh-net) Ignore save_load_peers test as flaky on windows (#2070) - (a542f76)

(iroh-net) Mark some DNS tests as flaky as well (#2073) - (aeb0067)

(iroh-net) Bring back another disabled test (#2081) - (d0b6dde)

Mark a bunch of flaky tests (#1936) - (6aa77ae)

βš™οΈ Miscellaneous Tasks

(ci) Set up a separate workflow for flaky tests (#1922) - (940b78d)

(ci) Add name to tests step (#1938) - (51cf6ed)

(ci) Run non-flaky tests again (#1948) - (41f056b)

(ci) Do not test nightly rust on every PR (#1940) - (eab55bf)

(ci) Run tests from the PR branch, not main (#1971) - (f22cbf5)

(ci) Update outdated actions (#1997) - (c69ef60)

(ci) Notify our discord channel for flaky failures (#2036) - (869ab7d)

(ci) Warn in our discord channel on failure (#2044) - (6f1e13f)

(iroh) Update quic-rpc (#2072) - (bab35c5)

(iroh-bytes) Increase redb version (#2095) - (7bb4bfc)

(iroh-bytes) Update bao-tree dependency (#2119) - (bed14d4)

(iroh-bytes) Increase iroh-bytes ALPN (#2125) - (bd57656)

(netsim) Disable netsim prometheus reports (#1923) - (b49314e)

Update dependencies in Cargo.lock (#1960) - (d5502b1)

Fix typos (#1964) - (c2359e8)

Add conventional-commit-checker (#2020) - (983edcc)

Update Cargo.lock (#2106) - (77df843)

Release - (024a9b8)

Deps

(iroh) Update quic-rpc (#2016) - (c04307e)

Upgrade away from yanked bumpalo version (#2035) - (b90508a)

Example

(iroh-net) Minimal use of unreliable datagram (#1967) - (12e42b3)

0.12.0 - 2023-12-20

⛰️ Features

(bytes) Switch to a single directory for the flat store (#1855) - (adc88f3)

(net) Add Magicsock::network_change (#1845) - (3952b04)

Usage metrics reporting (#1862) - (7ec4d92)

Remove derp regions in favor of direct urls (#1831) - (4002c46)

Additional public get utils - (1389857)

πŸ› Bug Fixes

(ci) Enable forks to run netsim manually (#1834) - (54acfcb)

(iroh) Check output for blob get (#1898) - (52f17a3)

(iroh) Do not exit after commands (#1899) - (53ab3b0)

(iroh-net) Fix display of mixed type connections (#1882) - (9d047e0)

(iroh-net) Do not prune addrs that are just added (#1916) - (4b18e67)

(sync) Handle migration 004 in the empty case (#1852) - (860563f)

Use path_to_key helper function in iroh doc import (#1811) - (64b668e)

Do not block on network change (#1885) - (54d5efc)

Fix abort on ctrl-c in console (#1909) - (712b45e)

🚜 Refactor

(iroh) Remove the addr arg from start (#1830) - (e03de38)

(iroh) Remove request token (#1828) - (1dfb7ac)

(iroh) Remove rpc port option (#1842) - (d1fcfca)

(iroh-bytes) Remove explicitly passing the runtime to the flat store (#1829) - (3d2e118)

(iroh-net) Make ControlMsg public (#1895) - (c6bc3c2)

(logging) Reduce loglevel of blob GC (#1866) - (3b1652c)

(tests) Slow down a hot loop (#1910) - (9ac88ef)

Upgrade to hyper 1.0 (#1858) - (b8aa5d6)

Streamline local endpoint discovery (#1847) - (cb20bb8)

Client Entry with methods to read content (#1854) - (690e2aa)

πŸ§ͺ Testing

(iroh-net) Try fix flaky udp_blocked test - (0418af6)

(net) Use actual derp hostname and reduce iteration count (#1886) - (62ac4d8)

βš™οΈ Miscellaneous Tasks

(ci) Run cargo build for android platforms (#1843) - (227f0e8)

(ci) Configure sccache to use local caches (#1865) - (4b07c2d)

(ci) Split jobs so they do not stomp over target directory (#1871) - (b9709ef)

(ci) Pin clippy to specific nightly version (#1874) - (6433a66)

(ci) Windows sccache (#1873) - (0d9ebea)

(ci) Split release builds from regular CI flows (#1883) - (ce97cee)

(ci) Test derper deploy flow (#1884) - (a1c5b56)

(ci) Use TRACE logging for tests run by nextest (#1902) - (b789a1f)

(clippy) Fix some warnings (#1861) - (57bb691)

(docs) Update derp IP for EU region (#1880) - (5c43b1d)

(iroh,iroh-bytes) Fix manifest keywords (#1881) - (b4da5f4)

Add BSD3 license note for code derived from tailscale (#1889) - (876a0f5)

Release - (deec1d6)

Ref

(iroh-net) Improve how STUN probes are run (#1642) - (b95eb86)

0.11.0 - 2023-11-17

⛰️ Features

(iroh) Store rpc port in iroh data dir (#1783) - (d471477)

(iroh) Make out argument required for iroh get (#1786) - (0e0f641)

(iroh) Allow full and short hash printing in the cli (#1795) - (018772c)

Add Doc::import_file and Doc::export_file (#1793) - (fe7fc50)

πŸ› Bug Fixes

(iroh-sync) Ensure the authors table exists (#1807) - (39ed64e)

Drop temp tag after doc insert (#1810) - (a608fe8)

Netsim should fail on all failed tests (#1816) - (199a677)

🚜 Refactor

(iroh) Restructure cli modules to match command structure (#1799) - (c1aeeb1)

(iroh) Add --start option to CLI commands (#1802) - (10af401)

(logging) Log hairpin results at debug level (#1809) - (ca8a983)

Common base library (#1780) - (de58d71)

More renaming of the term peer id to node id (#1789) - (53f1b61)

βš™οΈ Miscellaneous Tasks

Update dependencies (#1787) - (697b80c)

Release - (0773e30)

0.10.0 - 2023-11-08

⛰️ Features

(iroh-sync) Read only replicas (#1770) - (c1ebea8)

(iroh-sync) Queries and "views" (#1766) - (899768a)

Add ability to connect just by node id - (5ee69a4)

πŸ› Bug Fixes

(console) Blob download args (#1729) - (a916d4c)

(iroh-bytes) Ensure to flush file to disk (#1778) - (0987022)

(iroh-sync) Fix panic in send (#1773) - (c36cc6d)

(iroh-sync) Prevent panic in namespace migration (#1775) - (84ae95a)

🚜 Refactor

()* Rename Peer to Node in peer_map related code (#1771) - (fbeeab7)

(iroh-net) Remove cli ping (#1764) - (2b70426)

(iroh-net) Rename PeerAddr to NodeAddr, introduce NodeId alias (#1765) - (215953f)

βš™οΈ Miscellaneous Tasks

(iroh-net) Demote 'pong not received in timeout' message to debug (#1769) - (56e92ca)

Switch to git-cliff for changelog generation - (bcdccb3)

Release - (c4514aa)

0.9.0 - 2023-10-31

⛰️ Features

(ci) CI improvements (#1737) - (10f5982)

(console) Blob share ticket (#1746) - (fa9fa83)

(iroh) Add ticket prefixes and a doctor ticket-inspect command (#1711) - (2d292e3)

(iroh) Pass a runtime to Doc client to spawn close task on drop (#1758) - (0c145d5)

πŸ› Bug Fixes

(ci) Avoid sccache on linux aarch64 builds (#1762) - (054020b)

(console) Remove ticket separator to improve usability (#1754) - (f6c6932)

(deps) Iroh-sync - (261debf)

(iroh) Handle rpc args in any position (#1739) - (0ca61ad)

(iroh-net) Correctly set the time in which a probe is created (#1722) - (d44a7dc)

(net) Do not dial regions in parallel (#1736) - (c851fe1)

Update ahash (#1708) - (118c1d7)

Do not block on netcheck (#1745) - (8e6f5a9)

Do not wait_idle on endpoint close (#1753) - (f4735c6)

Do not block on dropping UDP sockets (#1755) - (cadb89b)

Release builds (#1763) - (c90b78d)

🚜 Refactor

(iroh-net) Split endpoint module and reduce PeerMap surface (#1718) - (eb99d0f)

(iroh-net) Improve PeerMap and Endpoint abstractions (#1724) - (e1cfe50)

(iroh-net) Call-me-maybe improvements (no more tasks for queue, better logic on recv) (#1752) - (376748c)

πŸ§ͺ Testing

Disable sync_big (#1760) - (f68d55d)

βš™οΈ Miscellaneous Tasks

Makes SyncReason public (as expected) (#1756) - (dff946c)

Split test and check steps into workspace and per crate (#1761) - (eb2f73a)

Match iroh-net-bench version number - (f0a1b2c)

Changelog v0.9.0 - (f851b8b)

Release - (eba3c33)

Clippy

Warn on unsused async fn (#1743) - (7068f33)

Example

(magic) Make arguments to connect named - (232a4ee)

0.8.0 - 2023-10-23

⛰️ Features

(console) Improve the output of node connections and node connection (#1683) - (d0c7cac)

(iroh-net) Cache for crypto keys (#1677) - (f8f08a0)

(iroh-sync) Sync propagation (#1613) - (d07e225)

Update dependencies (#1661) - (133ca8a)

πŸ› Bug Fixes

(iroh) Do not exit on ctrl+c (#1691) - (a658d4a)

(iroh) Cleanly exit on Eof (#1695) - (196ad7a)

(iroh-bytes) Handle case of 0 sent bytes in send stats (#1625) - (550303c)

(iroh-net) Enforce storing a single derp region per peer (#1607) - (bfcce3d)

(iroh-net) Ping via relay, enable relay ping in derp only mode (#1632) - (eec5425)

(iroh-net) Bring the doctor command up to date (#1656) - (16773b0)

(iroh-net) Direct address management (#1653) - (90f73f7)

(iroh-net) Temp fix for progress bar when downloading a hash seq (#1658) - (1b5760d)

(net) Correct packet math for poll_recv (#1698) - (c603a9e)

(net) Correctly track dial errors (#1706) - (92bb5b4)

doc export exports the latest entry at a given key (#1629) - (b815576)

Actually transfer newer entries for identical keys (#1630) - (ef8c64b)

Avoid FuturesUnordered (#1647) - (5813e09)

Dependency updates - (2323114)

🚜 Refactor

(iroh-net) Don't send pings over the actor channel (#1678) - (0cbab51)

(iroh-net) Proper abstraction around best_addr (#1675) - (7baff93)

(iroh-sync) Add actor to iroh-sync, remove deadlocks (#1612) - (a70c6f1)

(iroh-sync) Remove generic from SyncEngine (#1648) - (53b0bb0)

(net) Improve derp client handling (#1674) - (56d4d3f)

πŸ“š Documentation

test_run_mesh_client documentation (#1697) - (d5aef12)

⚑ Performance

Improve derp connection establishment (#1631) - (615381c)

No more channels for UDP send/recv (#1579) - (d6657bd)

πŸ§ͺ Testing

(iroh-net) Do not use fixed ports (#1689) - (8dd0509)

βš™οΈ Miscellaneous Tasks

()* Update tracing to fix audit failure (#1684) - (0a5a8e8)

()* Remove unused deps (#1699) - (3006791)

(derp) Update default derpers (#1622) - (d187827)

Release - (7fcb174)

Iroh-bytes

Get api improvements (#1660) - (6a630d9)

Show connection status in doctor accept / connect GUI (#1666) - (215c5fc)

Iroh-net

Doctor improvements (#1663) - (8169053)

Use BTreeSet for AddrInfo (#1672) - (a93e89e)

Release

Add changelog for v0.8.0 - (e972d53)

0.7.0 - 2023-10-11

⛰️ Features

()* Log me (#1561) - (7e79227)

(iroh) Export path and config related tooling (#1570) - (c284793)

(iroh) Improve displaying content in the repl (#1577) - (2fd31b7)

(iroh) Use reflink if possible (#1581) - (e2ee678)

(iroh) Show content as hex when utf8 fails (#1596) - (872f3b1)

(iroh-sync) Store peers per doc (#1564) - (31f08bb)

(sync) Implement prefix deletion (#1535) - (e7fc8be)

Use BlobFormat and properly support adding raw blobs (#1518) - (f3ed0ba)

Add blobs from byte streams (#1550) - (e138400)

Leave and drop docs (#1589) - (d7a3dd3)

doc import & doc export commands (#1563) - (3c0195c)

πŸ› Bug Fixes

(iroh::downloader) Remove hash from providers in two missed cases (#1584) - (068f0bd)

(cli,console) Default to 'hash' mode for the keys command (#1617) - (c3571e1)

(derper) Update config to auto generate keys (#1599) - (8fb46d4)

(iroh-net) Do not unwrap sending on response channel (#1529) - (974b66e)

(iroh-net) Dialer bug (#1533) - (16939c8)

(iroh-net) Reverse ip-port mapping stores only direct addresses in the peermap (#1606) - (176d632)

(metrics) Labels need to be lowercase underscore format (#1574) - (81c6f04)

(net) Avoid deadlock on stayin_alive calls (#1537) - (34fa30a)

(net) Stop deleting endpoints we want to keep (#1567) - (96cd106)

Mark initially created endpoints inactive (#1539) - (9b61ab7)

Actually allow to disable DERP (#1560) - (cf9abc0)

Avoid blockage in endpoint handling (#1569) - (ccdf0c9)

Feature flags for iroh-io dependency (#1588) - (c1c7d15)

🚜 Refactor

(iroh-net) Store a single pong (#1601) - (0d17e81)

πŸ“š Documentation

(changelog) V0.7.0 - (f3fe93d)

(iroh) Fix broken docs for tags subcommand... (#1573) - (bb74e2c)

Tune up docs before release (#1614) - (af06677)

⚑ Performance

(iroh-net) Simplify stun::is check (#1580) - (0b28d15)

πŸ§ͺ Testing

(iroh-net) E2e saving and loading of peer data (#1523) - (e7e70e4)

(iroh-sync) Fix test_content_hashes_iterator_memory (#1565) - (07fa983)

βš™οΈ Miscellaneous Tasks

()* Make clippy happy (#1582) - (2e5e464)

(baomap) Drop all baomap logging to debug or lower (#1562) - (06b4ac7)

Add release.toml for tags - (45fa784)

Release - (0090eee)

0.6.0 - 2023-09-25

⛰️ Features

(iroh) Downloader (#1420) - (c217283)

(iroh-net) Implement network monitoring (#1472) - (a89078f)

(iroh-net) Persist known peer info (#1488) - (2e3516d)

(sync) Track incoming sync requests, allow subscriptions without sync, close inactive replicas (#1491) - (6c07ad3)

Streaming blob reads over RPC (#1477) - (6397d46)

Content hashes iterator for sync store (#1501) - (8fe3f71)

Improve content propagation in sync (#1480) - (49bde4f)

πŸ› Bug Fixes

(iroh) Do not log full messages for rpc (#1453) - (d4983c5)

(sync) Fix PeerData encoding, neighbor events, better & predictable tests (#1513) - (779e470)

Debug for BlobReader (#1479) - (c6935bd)

Print enum variant name for RPC debug logs (#1503) - (39a3a33)

Avoid double conns, better state tracking (#1505) - (d8cc9df)

No-default-features builds (#1522) - (ff6fc4c)

🚜 Refactor

()* Rework NodeAddr (#1506) - (f16e439)

(iroh) Leverage strum for IrohPaths (#1507) - (95dce40)

(iroh,iroh-bytes) Replace currrent with current (#1467) - (4f4d8e5)

(iroh-net) Remove unused expired field from Endpoint (#1484) - (f2f3ead)

(iroh-net) Remove iroh-net::config::Node since limited to its used fields it's redundant (#1486) - (00d0150)

Extend Iroh client, improve API consistency (#1478) - (5380cd5)

Use iroh_net::PeerAddr more (#1493) - (2b4b27c)

πŸ“š Documentation

Fix grammar in README (#1465) - (1df9255)

Fix link to install URL in README (#1476) - (156ce07)

Update instructions for running rust examples (#1511) - (1bf55db)

βš™οΈ Miscellaneous Tasks

(iroh, iroh-sync) Fill licence info (#1471) - (75fcf12)

Release v0.6.0 - (76d3fdc)

Release - (0b126b1)

Deps

(iroh-net) Use minimum safe version of quinn-proto (#1510) - (adbfe65)

0.6.0-alpha.1 - 2023-09-05

⛰️ Features

(iroh-sync) Validate timestamps and move validation up (#1439) - (4e8ff56)

Get list of ConnectionInfos or an individual node's ConnectionInfo (#1435) - (bdf966e)

πŸ› Bug Fixes

(iroh) Update example to use correct subscription API (#1452) - (2522fca)

(iroh-net) Dns fallback to default config (#1438) - (b89f4e1)

🚜 Refactor

(iroh-net) Remove NetworkMap (#1447) - (bc26321)

(iroh-sync) RangeEntry trait, byte newtypes for author/namestamp, timestamp into record (#1445) - (1bcc765)

πŸ“š Documentation

(changelog) V0.6.0-alpha.1 - (4671387)

πŸ§ͺ Testing

(iroh-net) Removed unused stun_test_ip field from DerpNode (#1450) - (4ef3611)

(iroh-sync) Initial batch of property based tests for the ranger and store (#1428) - (9db3694)

βš™οΈ Miscellaneous Tasks

Release - (729aa41)

0.6.0-alpha.0 - 2023-08-28

⛰️ Features

(iroh-bytes) Remove unneeded u64 length prefix (#1408) - (6d9eac7)

(iroh-net) PCP mappings (#1261) - (84e2f72)

(iroh-net) Nat-PMP probes and mappings (#1283) - (5c38730)

(iroh-net) Add DEV_DERP_ONLY env variable for testing the derp relay (#1378) - (34c97bb)

(tests) Improve test_utils to warn about mutli-runtime tests (#1280) - (62522dc)

Iroh-gossip (#1149) - (7f8463f)

Methods to check if a hash is complete or partial (#1359) - (8006629)

Add iroh-sync and integrate into iroh node (#1333) - (3f141be)

Iroh console (REPL) and restructured CLI (#1356) - (b73d950)

πŸ› Bug Fixes

(ci) Correctly detect forks (#1327) - (80c54aa)

(iroh) Atomically write keyfile - (7752b5a)

(iroh) Pass derp map when setting up provider (#1347) - (391db92)

(iroh) Try to fix flaky test_token_passthrough test (#1419) - (a1d4a4d)

(iroh-bytes) Hash should be serialized as array not bytes (#1410) - (116eea9)

(iroh-bytes) Range spec seq identification of single blobs (#1421) - (c3e701f)

(iroh-gossip) Specify version for iroh-net dependency - (c21a2d1)

(iroh-net) Do not panic on RIB issues (#1313) - (8ede947)

(iroh-net) Portmapper priority follows described priority strategy (#1324) - (f60101a)

(iroh-net) Remove transparent attribute from mapping debug + log bump (#1339) - (2878e79)

(iroh-net) Split packets on send (#1380) - (57a2dee)

(iroh-net) Use base32 encoding in the derper config for SecretKey (#1385) - (b8a1de8)

(iroh-net) Allow compiling without default-features - (0f412ed)

(netcheck) Build test ProbePlan from fake interface data (#1266) - (f671aa5)

(tests) Bring back MagicEndpoint connect-close test (#1282) - (4b1f79c)

Enable derp metrics (#1268) - (faad31a)

Remove obsolete and unused module (#1279) - (4c67385)

🚜 Refactor

(iroh-net) Remove unused hostinfo - (0c277b7)

(iroh-net) Always attach tracing spans to spawned tasks (#1299) - (73cac23)

(iroh-net) Keep DerpMap fixed (#1329) - (f764517)

(iroh-net) Unify key handling (#1373) - (8b73323)

(iroh-net) Remove pub(self) visibility specifier (#1395) - (03339f1)

(iroh-net) Use tokio-util::codec for derp protocol implementation (#1386) - (fe98c8d)

(iroh-net) Store DerpNodes as Arcs inside DerpMap (#1379) - (bcce8a0)

(iroh-net) Make derp_map not an option in MagicEndpoint (#1363) - (93147ac)

(iroh-net/magicsock) Remove usused Arc (#1301) - (0991b13)

Move iroh bytes get handlers out of node into module (#1343) - (ce4cb57)

Improve path handling in iroh dir (#1345) - (1c3a3f1)

Improve client sync api (#1417) - (2c6ab29)

Reduce amount of info logging (#1418) - (0277b31)

πŸ“š Documentation

(iroh-bytes) Improve range-spec docs (#1372) - (2076bfb)

πŸ§ͺ Testing

(flaky) Add timeouts to gossip smoke test (#1364) - (28b1d14)

(iroh) Only use flat db when enabled - (5bc9c04)

(iroh-net) Ignore MagicEndpoint test again (#1300) - (c6314ff)

Introduce iroh-test with common logging infrastructure (#1365) - (411e20b)

βš™οΈ Miscellaneous Tasks

()* Contributors guide (#1198) - (52ee997)

(ci) Ensure external contributors don't fail CI on report dumps (#1304) - (854c242)

Update license field following SPDX 2.1 license expression standard - (6c01938)

Enable CI on merge_group trigger (#1298) - (d11de73)

Update README.md (#1360) - (cf50c91)

Improve code style of tracing calls (#1390) - (e0daeb2)

Specify resolver 2 for entire workspace (#1406) - (38b06b0)

Release - (29b011e)

Deps

Switch back to derive_more og - (d97721e)

Allow old ed25519-dalek crate in cargo-deny for now (#1361) - (3384f3e)

Update webpki to rustls-webpki and webpki-roots to latest (#1389) - (a2fc0c1)

Ref

(iroh-net) More Conn -> MagicSock renaming (#1294) - (66ec54d)

(iroh-net) Use a short format for node PublicKey logging (#1296) - (af52b51)

0.5.1 - 2023-07-18

βš™οΈ Miscellaneous Tasks

Release - (b2b60da)

iroh-net-v0.5.1 - 2023-07-18

⛰️ Features

(ci) Record dump uploads (#1101) - (e289465)

(ci) Allow running netsim from another branch (#1186) - (0f77e4e)

(conn) Improve shutdown of IO loop - (dbe0228)

(docs) Check rustdoc more strictly (#1185) - (6a58800)

(iroh) Pass a callback to subscribe (#1219) - (c325603)

(iroh-net) Add more details to tracked endpoints - (dfd946e)

(iroh-net) Implement HomeRouter detection - (b14049e)

(iroh-net) Upnp port mapping (#1117) - (701e9b7)

(iroh-net) PCP probe - (659a54a)

(loging) Improve logging output of provider and get (#932) - (6ae709e)

(provider) Add 'CollectionAdded' Provider event (#1131) - (8b6a5bc)

Implement ICMP pings - (6c19faa)

Metrics collection (#900) - (d4a01f7)

Remove AuthToken - (96d9378)

Print local endpoints on provide - (b3c22bd)

Add configuration for derp regions - (96903e7)

Prefer configured port to be used for ipv4 - (3a292e5)

Add iroh doctor utility (#986) - (4fc70f5)

Reduce dependency bloat for derper - (07d7205)

Add api to list collections - (7b0a7c7)

Integration metrics and viz dump (#1089) - (2f65bc1)

hp::derp::http::server::Server & TLS in the derper! (#1077) - (6f40e14)

Allow node to accept different ALPNs - (34e02d0)

Derp mesh network & derper cli & config cleanup (#1130) - (3dca612)

Add MagicEndpoint to iroh-net - (4597cb3)

Make get-ticket just a way to use get (#1168) - (2291ef4)

Impl From for DerpMap - (01641a7)

Specify a DERP region for the peer you are trying to connect to (#1222) - (456f963)

Disable bailing out when temp dir is missing (#1251) - (eae79e8)

Add metrics to the derp server (#1260) - (d1b4e18)

Unify MSRV to 1.66 - (090f6d8)

πŸ› Bug Fixes

(ci) Also run doc tests (#1095) - (97d24a6)

(ci) Move chuck out of the workspace - (0b8d22d)

(clippy) Clean up clippy again (#1061) - (4e1ba3e)

(database) Handle finding beetle data directory (#960) - (909ea9a)

(derp) Remove client cleanup bug - (f6287c1)

(derp) Filter DNS results by address family (#1227) - (b6f9df3)

(derper) Small derper fixes (#1083) - (4fb925a)

(iroh) Error when path does not exist (#1146) - (c1b674f)

(iroh) Pass derp-map on get-options - (b7fd889)

(iroh-net) Allow derp only connections to upgrade - (25b35a3)

(iroh-net) Better logic for initial derp connection - (6e6b97e)

(iroh-net) No * deps - (b1ff368)

(iroh-net) Handle non git environments in build - (a645cbe)

(netcheck) Do not read from main Conn sockets (#1017) - (5e997a4)

(netcheck) If no STUN sockets supplied allow bind to fail (#1041) - (726cace)

(netcheck) Make ICMP ping optional (#1137) - (ac6bb1a)

(netcheck) Integrate https and icmp probes in probeplan (#1220) - (a0ae228)

(netcheck) Stable derp-region sorting (#1250) - (899efd2)

Fetch PR details on issue comment (#931) - (9272adb)

Avoid polling future after completion - (1f812fd)

Remove derp route on peergone - (cefc8ba)

Do not use magicsock for rpc - (7717243)

Show all listening addrs - (b84ed59)

Use correct endpoint for derp connections - (07d919f)

Checkout correct branch on netsim comment (#934) - (fa2ae68)

Correct ref on checkout (#936) - (f58df87)

Avoid using tokio::block_in_place - (db5ad3e)

Correct ipv4 and ipv6 port mappings on rebind and endpoints - (6a1e405)

Store udpstate - (f0bde56)

Handle multiple transmit destinations - (050e49f)

Allow dialing by peer id only - (6fb17d1)

Endpoint update scheduler - (93ca0e4)

Cleanup ping sending logic - (7896d37)

Send early ping if needed - (d0755c7)

Improve local addr output and start fixing cli tests - (f76d650)

Process incoming IP packets in a seperate task (#1020) - (96b882a)

Format socket addr so that it does not need to be escaped (#1019) - (7c87b94)

Ensure provider building waits for an endpoint update - (c858f36)

Ensure endpoints are always discovered or timeout - (58538e0)

Better handling of ipv4 only setups - (547662b)

Avoid dualstack bindings - (34322a6)

Use listen_addresses instead of local_address (#1044) - (c4a1890)

Add entry in peer_map for unknown ping sender - (648210c)

Handle hairpining timeout properly (#1049) - (3867b72)

Make sure to use the config by default in iroh doctor report (#1057) - (fcc74b8)

Use simulated time in timer tests - (b80ef52)

Online stun test (#1065) - (bec1bbe)

Update integration tests (#1082) - (36cd904)

Release netsim should ignore some tests (#1096) - (9b981c4)

Update bao-tree dependency to get rid of ouroboros in dependency tree (#1104) - (7840e1c)

Don't crash the derper (#1110) - (e1752bc)

Don't spam re-connect attempts if something goes wrong connecting to a derp server (#1113) - (92e8fc3)

Improve connectivity - (8e2d947)

Remove build-data dependency - (26e9937)

Cross builds (#1174) - (739ee07)

Netsim branch CI default (#1205) - (a8435eb)

Default netsim branch (#1208) - (01da61d)

Switch to derive_more_preview - (a0392c6)

Make sure to clean up any lingering processes (#1214) - (f782fef)

🚜 Refactor

(iroh-bytes) Remove handshake and rely on ALPN only for protocol negotiation - (e321d9f)

(iroh-net) Make region ids always be u16 - (685b9aa)

(iroh-net) Expand use of default values (#1160) - (0905155)

(iroh-net) Move Conn toplevel - (72a4bc9)

(iroh-net) Rename Conn to MagicSock - (810f9f3)

Move keys out of the mutex - (caf7ebb)

Update connection logic to for magicsock - (e13f663)

Move derp receiving into the derp actor - (ff28875)

Remove BlobOrCollection (#1078) - (63a2529)

Remove ouroboros and replace it with self_cell (#1102) - (a4077f4)

Strip down the iroh runtime and use tokio_util::task::LocalPoolHandle instead (#1114) - (80e8eca)

Move code into workspace package - (0fb0a17)

Split main networking code into iroh-net - (ba95ba3)

Move byte specific pieces into iroh-bytes - (8bb3524)

Move rpc and provider setup into iroh - (620a904)

Split metrics of into its own crate - (f2afe47)

Move connection issue into iroh-net - (1b28c72)

Replace warp with axum for the test server (#1124) - (0345f2e)

Move cli functionality into library format - (92fd3c6)

Change default bind port to iroh leet port: 11204 (#1147) - (2901b97)

Use newtype to avoid derp magic ips - (8a2aab1)

Pluggable metrics (#1173) - (b0ccea5)

Get rid of Blake3Cid (#1204) - (cf0573a)

Move dialing utils into iroh from iroh-bytes (#1226) - (54630b9)

Flatten iroh_net::hp module - (6f9e7c0)

πŸ“š Documentation

(bytes) Add more about text to README.md (#1255) - (f9a49c5)

(iroh-net) Deny missing docs and broken links in the crate, except the derp mod - (b9715ea)

Fixup cargo doc - (d3f4a26)

Iroh-net toplevel (#1175) - (136483f)

Fill out derp documentation (#1171) - (b98851c)

Deny missing docs (#1156) - (d299092)

Add docs to RPC protocol (#1234) - (316c185)

Iroh examples (#1237) - (1cfa183)

Fill in the iroh-net README a little - (c5e4c1b)

Update root, iroh, iroh-metrics readmes (#1258) - (33464a7)

Nits in the derp docs - (4a4dd46)

πŸ§ͺ Testing

(derp) Fix test - (10782be)

(ipv6) Do not run IPv6 tests if the host doesn't support IPv6 (#1059) - (e27cc77)

(iroh-net) Disable flaky MagicEndpoint tests (#1184) - (6fa891a)

(netcheck) Assume udp packets get lost (#1094) - (daa7c0c)

Check that no packets have been lost - (fd7e0fe)

All 10 rounds - (4e8625a)

Fix cli addr test - (a2a711c)

Cli fixes - (05474df)

Add logging to flaky google stun test (#1053) - (b29fbf7)

Add test utilities to configure logging (#1060) - (8448cb6)

Bring back tests (#1126) - (de43b59)

Add tests for the main derper endpoints - (895a41e)

Change some tests to no longer access the disk (#1232) - (58d42ba)

βš™οΈ Miscellaneous Tasks

(Conn/PeerMap) Introduce QuicMappedAddress (#1001) - (2f8aeb9)

(build) Sort dependencies in Cargo.toml (#1081) - (d9e3b7b)

(ci) Do not use fail-fast strategy (#1076) - (e0b2a9b)

(ci) Do not output clippy in json format (#1080) - (a89fccf)

(ci) Deny warnings again (#1075) - (6df66f4)

(ci) Do not run cargo check separately and test all features (#1079) - (dd6eccb)

(ci) Bring back release builds (#1243) - (1dadcf5)

(iroh-net) Fix warnings and errors due to incompatible deps after underlying dep update (#1225) - (cf13398)

(logging) Use nested tracing spans (#1228) - (84c6f77)

(reportgen) Improve logging to e less confusing (#1244) - (7557a91)

Update deps - (532873f)

Do not fail fast for cross - (5e15c03)

Move CI to self hosted runners (#1040) - (fba572d)

Try latest cross (#1069) - (71dcab1)

Update dependencies (#1107) - (23baf7d)

Delete unused file - (0fb684f)

Add explict parity acknowledgement on cert & verifier files, clarify codebase copyright is assigned to n0, inc. (#1167) - (04c7247)

Change module structure and visibility and require docs (#1176) - (81a0b1e)

Add PR template (#1194) - (a3826c4)

Pause release builds (#1206) - (69649ba)

Cancel workflows when a new commit is pushed (#1233) - (ca133a2)

Add metric readme and description - (e2f55b1)

Use version numbers for iroh deps - (acf2d16)

Update deny.toml - (d4c1a0f)

Release - (cc01495)

Release - (947e0e3)

Feat

Request Tokens (#1109) - (dbd7bfb)

Change

Use DERP port from host_name URL (#1143) - (fbeec14)

Deper

Ensure upgrades are allowed on derp - (4f9cc86)

Deps

Update to released quic-rpc - (0861b9f)

Update ed25519 and friends to released versions - (a9ecbe2)

Update (#1161) - (a0df682)

Derp

Wait for connection - (6c2f592)

Derper

Refactor serving content & derp - (05480a0)

Cleanup - (e60dc7f)

Add stun logs - (f9175ca)

Stun improvements (#1091) - (e191500)

Endpoint

Fix ping pong timings - (e2f2bce)

Key

Remove dead code - (8ef66f8)

Magicsock

:conn docs - (a98ce77)

Metrics

(netcheck) Add the basic netcheck metrics (#1048) - (a548371)

Netcheck

Split up probe code - (f832736)

Ref

(cli) Declare args consistently, use defaults (#970) - (e7eebb0)

(clippy) Let's keep it clippy clean (#1009) - (034492c)

(derp) Default DNS name rooted at the DNS root (#1231) - (8116345)

(metrics) Document metrics and remove macro_use (#1045) - (55d0211)

(netcheck) Statically declare udp bind addresses (#1007) - (541fb87)

(netcheck) Log and shut down stun listeners (#1022) - (252a04b)

(netcheck) Bring back the ActorMessage (#1023) - (4437d7e)

(netcheck) Make netcheck a long-running actor (#1028) - (5f03510)

(netcheck) Simplify and fix hairpinning (#1051) - (b1fb4a6)

(netcheck) Turn ReportState into more of an actor (#1103) - (fbea8df)

(tests) Clean up various bits in tests (#1145) - (da85f49)

(tests) Consisten test module naming (#1181) - (05a39a4)

Change how a collection is created (#939) - (ce21952)

Rename Request.name to Request.hash (#951) - (ca1a091)

Naming heartbeats (#982) - (4a745ec)

Disable to unused code (#992) - (49dbaea)

Shut up clippy (#1002) - (8df032b)

Move packet building into conn (#1016) - (3142912)

0.4.1 - 2023-04-03

🚜 Refactor

Cleanup and move network related impls to the net module - (3a442fa)

πŸ“š Documentation

(changelog) Prepare 0.4.1 - (357d763)

βš™οΈ Miscellaneous Tasks

Release iroh version 0.4.1 - (4ebafa2)

0.4.0 - 2023-03-29

⛰️ Features

(ci) Push data to metro (#794) - (1a68106)

(get-ticket) Contact provider on all listening addrs (#893) - (adbb2bf)

(net) Implement local address detection (#822) - (9323e10)

(provider) Emit events about outgoing transfers - (f05ec8c)

(ticket) Ensure a ticket always has at least one address (#892) - (0c17958)

Show more numbers in human readable form (#790) - (a0b7c26)

Use chunk groups feature (#798) - (d68f05d)

Begin impl Server side of derp, starting with the server side of the client connection (#826) - (94590ae)

Custom configs for netsim (#862) - (1078762)

Release builds (#863) - (7b91c9a)

Set multiple addrs in the ticket (#820) - (9ac4cf6)

Ci netsim integration tests (#877) - (8fe1d81)

Cmd to list provide addrs (#859) - (2c0663a)

Add run_ticket to dial all addresses stored in a Ticket (#888) - (91c7e2a)

πŸ› Bug Fixes

(ci) Move from sendme to iroh (#788) - (6a5c13e)

(ci) Format output as table (#791) - (7fb888d)

(netcheck) Reduce locking and improved task tracking - (5a733ff)

(provider) Ensure postcard buffers are appropriately sized - (c28e0a8)

Avoid other output between contents when printing (#786) - (9076443)

Improve listening addr output (#789) - (33c0482)

Output writing (#804) - (eb18a89)

Do not send duplicate NotFound responses (#802) - (c0d4984)

Compile on linux - (02d8803)

Update Cargo.lock after rebase - (56fd099)

Update to new default-net - (e2584c0)

Improve binding and rebinding of sockets - (156560a)

Use absolute paths everywhere (#836) - (b2730ee)

Fix netsim bin paths (#881) - (3291291)

🚜 Refactor

Move timer to own file - (1c0a763)

πŸ“š Documentation

(changelog) Prepare for 0.4.0 - (005d0b1)

Fix typo (#792) - (a12de97)

Add some missing comments about android default route (#828) - (1fedf46)

πŸ§ͺ Testing

Cli integration test for provide-get loop (#781) - (61ba002)

Add failing test for large collections - (bdab174)

βš™οΈ Miscellaneous Tasks

(android) Use the real android targets (#880) - (f198944)

Add cargo-deny (#810) - (96bb61b)

Ci - replace actions-rs with dtolnay/rust-toolchain (#884) - (bf22ee2)

Update netsim sims (#887) - (59babe1)

Release iroh version 0.4.0 - (5401321)

πŸ›‘οΈ Security

New version of tempfile to avoid security issue (#819) - (55a4c3a)

Deps

(default-net) Bump version (#879) - (887c128)

Updated from yanked version (#890) - (80ee3db)

Derp

Fix missing server - (75b6cee)

Implement first pass at client dialing - (a37b3dc)

Derper

Implement manual certificate loading - (283eab9)

Fix hostname test - (3a87872)

Impl

Client and Clients, how the server manages the different connected clients (#846) - (c502e57)

Magicsock

Some cleanup - (c0118d0)

Magiscock

New - (080672b)

Magisock

Split into multiple files - (0cff7b1)

More splitting - (cbdda92)

Netcheck

Get main check logic to compile - (e0748de)

Fix first basic test - (687f829)

Ref

Rename --token to --auth-token for get (#785) - (d9aed3c)

Remove duplicate read_lp implementation (#801) - (e80051e)

Micro-optimise by reserving buffer size (#803) - (fe97e4d)

Bring back testdir for integration tests (#811) - (b0ade88)

Improve error for connection timeout (#818) - (9f2b486)

Clean up public API regarding bound/local/listening addresses (#891) - (bbf4869)

0.3.0 - 2023-02-22

⛰️ Features

(ci) Add MSRV check - (2a62263)

(ci) Add MSRV check - (2894143)

(cli) Improve the output of collections (#69) - (733e533)

(provider) Add ProviderBuilder - (bf01702)

(provider) Add persistent identity - (6073054)

(provider) Add events (#87) - (e7ce384)

Add clap and server and client options - (e46d460)

Limit length prefixed message size - (d99007e)

Add handshake and reduce allocations - (6403bd1)

Limit number of active connections and streams - (1dd46e9)

Connect based on PeerIds - (c57fa4f)

Rework client api to emit content - (03e1f93)

Write to temporary file during transfer - (1f39a57)

Add STDIN and STDOUT support (#39) - (c121094)

Add authentication token to protocol handshake - (58a2c2a)

Add authentication token to protocol handshake - (bf08478)

Transfer multiple files - (bc040ea)

Improve CLI - (57dd758)

Create a Builder for the Provider - (41e05ed)

Create a Builder for the Provider - (bf087b6)

Incrementally compute outboard - (bf86837)

Provide a single ticket to fetch a hash - (5b979ab)

Provide a single ticket to fetch a hash - (aa269ab)

Remove varints (#71) - (35cb4bd)

Looser dependencies as it is a library - (a846ea2)

Looser dependencies as it is a library - (eb07ca9)

Add bao slice decoder - (08ad6db)

Step 1 - change from outboard+data to encoded - (c5be9f5)

Step 2 - use SyncIoBridge when writing - (4d3b384)

Step 3 actually add AsyncSliceDecoder and friends - (ff39ef2)

Step 4 make use of the AsyncSliceDecoder - (80b9cff)

Pass in custom names for blobs using DataSource::NamedFile (#97) - (9b2ad04)

Add method read_size - (bcc66f9)

Use read_size() to enforce that we don't download oversized files - (cb6651e)

Ensure we are not being lied to about total_blobs_size - (6d66fc5)

Switch printing from hex to base64 - (891004d)

Introduce custom Hash type (#115) - (c1eaf28)

Switch from s2n-quic to quinn (#112) - (3eff210)

Add newtype wrapper for Hash that is compatible with Cid - (9db0937)

Allow shutdown of Provider (#121) - (13f703f)

Do not error when the provider closes the connection (#124) - (5bd545d)

Add generic progress emitter utility (#141) - (d09a786)

Add option to use SSLKEYLOGFILE env var (#153) - (d64d12d)

Use our own ALPN (#155) - (2991cbb)

Netsim CI (#135) - (3a3fc46)

Rename to iroh - (e3012f0)

Move --keylog to common flags (#776) - (feeefa9)

Make get work on IPv6 network (#777) - (c28a378)

Remove MAX_DATA_LIMIT (#780) - (42a6235)

Remove Request.id from the protocol (#782) - (fd37cab)

πŸ› Bug Fixes

(bin) Ensure progressbar works for stdout (#81) - (93107e3)

(ci) Run clippy directly (#140) - (fc8fbeb)

(cli) Only write progress if TTY and write it stderr only - (55ff6ed)

(main) Remove stderr tty check - (588dbe7)

Ensure data is flushed to disk - (9f9292d)

Keep reading and respect EOF - (ae51187)

Keep reading and respect EOF - (dbbf510)

Windows multi_client tests (#66) - (4befae2)

Ensure CI runs on main (#100) - (43a6ed5)

Catch ctrl-c to allow a normal shutdown & clean up any tempfiles that are created (#122) - (82e2f56)

Display CIDs in the CLI for the Collection (#131) - (b3ee39f)

Fail if an on_blob function does not read all the content (#139) - (c266ab5)

MSRV in CI (#145) - (2edb528)

Ensure we emit TransferAborted event if anything goes wrong during the transfer (#150) - (19e2b05)

🚜 Refactor

Make code library based - (1c3373c)

Cleanup and improve address options - (ba59337)

Rename server & client - (de34409)

Use genawaiter instead of async-stream - (5c48f5e)

Switch to callbacks instead of events - (ea94e98)

Named closures for the 3 callbacks - (6617d39)

Remove size from found - (bd9d860)

Remove size from FoundCollection as well - (7faf4bf)

Add debug instances for public types - (b0cdec1)

Make AsyncSliceDecoder pub(crate) - (6bc00b3)

Make a few obvious things private - (d63fea1)

More privatization - (5994474)

Move Blake3Cid to main for now - (7158bc0)

Make on_collection take a reference - (34aa8e1)

Use multi threading when computing outboards - (34cf223)

πŸ“š Documentation

Add readme and license - (b37c135)

Add lots of doc comments and enable deny(missing_docs) - (8255467)

Add docs for the 4 prefix bytes - (838fa5c)

Add some comments - (a4a3d54)

Updates for release - (70f9912)

πŸ§ͺ Testing

Avoid file system - (dc2fe24)

Use differnt ports - (4cb1a5a)

Use multithread runtime - (48acbe8)

Different port - (40a60c7)

Different sizes - (a1d6927)

Add test to make sure that - (14d8554)

Use random free port to avoid collisions (#104) - (1abd7ec)

βš™οΈ Miscellaneous Tasks

Remove unused dependency - (1cf338d)

Update MSRV to 1.64 - (e2cd922)

Remove duplicate tokio dependency (#137) - (8e42874)

Improve safety of BytesMut buffer usage (#778) - (7fbeb4f)

Add changelog for 0.3.0 - (c8855f8)

Release iroh version 0.3.0 - (7923829)

Fix

Duplicate serde_hash implementation & some spelling errors (#72) - (53ab719)

Ref

Take the collection hash from the db creation (#93) - (f60ce6f)

Pub api tweaks (#114) - (eb48132)

On_collection doesn't need to be FnMut (#136) - (eac7b65)

Allow older rust version (#142) - (f3086a9)

Use our own bao crate - (659d2d2)

Synonyms

space-pussy/CHANGELOG
Change Log [Unreleased](https://github.com/cybercongress/go-cyber/tree/HEAD) [Full Changelog](https://github.com/cybercongress/go-cyber/compare/v0.1.6...HEAD) **Closed issues:** Disable karma calculations [\#552](https://github.com/cybercongress/go-cyber/issues/552) Upgrade to Launchpad…
radio/CHANGELOG
Changelog All notable changes to iroh will be documented in this file. [0.96.1](https://github.com/n0-computer/iroh/compare/v0.96.0..0.96.1) - 2026-02-06 πŸ› Bug Fixes *(iroh)* Use latest portmapper to avoid duplicate dependencies ([#3903](https://github.com/n0-computer/iroh/issues/3903)) -…
trident/CHANGELOG
Changelog Kelvin versioning: versions count down toward 0K (frozen forever). Lower is colder. Colder is more stable. 0.1.0 / 512K β€” Smelt (2026-02-26) First public release. Hot, experimental, not production ready. Compiler Full pipeline: source β†’ lexer β†’ parser β†’ AST β†’ typecheck β†’ TIR β†’ optimizer →…
go-cyber/CHANGELOG
Change Log [Unreleased](https://github.com/cybercongress/go-cyber/tree/HEAD) [Full Changelog](https://github.com/cybercongress/go-cyber/compare/v0.1.6...HEAD) **Closed issues:** Disable karma calculations [\#552](https://github.com/cybercongress/go-cyber/issues/552) Upgrade to Launchpad…
cyberia-token/CHANGELOG
Changelog All notable changes to the Cyberia (CAP) Token project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). [Unreleased] [1.3.1] -…
bostrom-mcp/CHANGELOG
Changelog [0.8.3] - 2026-03-19 Changed Made `li_mine_proof` tool always available β€” removed `#[cfg(feature = "mining")]` conditional compilation gates Made `uhash-prover` and `uhash-core` non-optional dependencies (mining is always built-in) Removed `[features]` section from Cargo.toml Fixed…
radio/iroh-ffi/CHANGELOG
v0.0.6 (2023-08-28) Initial Release, mainly to test package consumption flow across different platforms. Only a subset of the [commands api](https://iroh.computer/docs/commands) is supported. Features add 'set_log_level' to control iroh logging from other languages…
radio/iroh-docs/CHANGELOG
Changelog All notable changes to iroh-docs will be documented in this file. [0.96.0](https://github.com/n0-computer/iroh-docs/compare/v0.95.0..0.96.0) - 2026-01-29 βš™οΈ Miscellaneous Tasks Upgrade to `iroh` 0.96 -…
radio/iroh-gossip/CHANGELOG
Changelog All notable changes to iroh-gossip will be documented in this file. [0.96.0](https://github.com/n0-computer/iroh-gossip/compare/v0.95.0..0.96.0) - 2026-01-29 ⛰️ Features Add `neighbors()` method to `GossipTopic` ([#124](https://github.com/n0-computer/iroh-gossip/issues/124)) -…
radio/iroh-blobs/CHANGELOG
Changelog All notable changes to iroh-blobs will be documented in this file. [0.35.0](https://github.com/n0-computer/iroh-blobs/compare/v0.34.1..0.35.0) - 2025-05-12 ⛰️ Features [**breaking**] Allow configuring the downloader when creating a blobs protocol handler…
cyber-ts/packages/cyber-ts/CHANGELOG
Change Log All notable changes to this project will be documented in this file. See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. 0.1.3 (2024-08-22) **Note:** Version bump only for package @cybercongress/cyber-ts 0.1.2 (2024-08-22) **Note:** Version bump only for…

Neighbours