Skip to content

Releases: n0-computer/iroh

v0.12.0 - Derp Regions are dead, long live the derpers

20 Dec 20:30
Compare
Choose a tag to compare

⛰️ 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

πŸ§ͺ 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)

Ref

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

v0.11.0 - Making CLI life a little easier

17 Nov 22:01
Compare
Choose a tag to compare

⛰️ 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

🚜 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

v0.10.0

08 Nov 10:54
Compare
Choose a tag to compare

⛰️ 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

🚜 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)

v0.9.0 - Stabilized Connections

31 Oct 10:50
Compare
Choose a tag to compare

Bug Fixes

Features

  • 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)

v0.8.0 - Better sync, faster blobs

23 Oct 18:10
Compare
Choose a tag to compare

Breaking API Changes

  • iroh::baomap is now iroh_bytes::store.
  • Doc opening and closing is now more complete
    • iroh::client::Doc.leave() will stop listening to changes
    • iroh::client::DocsClient.drop_doc() will delete a doc

Bug Fixes

Features

Performance Improvements

v0.7.0 - syncing intensifies

11 Oct 19:10
Compare
Choose a tag to compare

Bug Fixes

Features

Performance Improvements

v0.6.0 - Let that sync in

25 Sep 21:06
Compare
Choose a tag to compare

v0.6.0 is a big step toward iroh 1.0. It introduces documents. See our docs pages for a detailed look at the new iroh.

Introducing documents

Documents are mutable key-value stores that authors read from, write to, and sync with, subscribing to live updates in real time. For more on documents, see the documents, uh, documentation

Iroh console is here to help

this release includes iroh console an admin, debugging, and API exploration tool. It's a REPL that can give live feedback as documents change, users sync, etc. For a detailed rundown on console commands, see the iroh command documentation

Bug Fixes

Features

v0.6.0-alpha.1 - Better Sync

05 Sep 11:20
Compare
Choose a tag to compare
Pre-release

This release includes important fixes and improvements based on recent testing. Document sync is now more correct and faster!

Bug Fixes

Features

  • get list of ConnectionInfos or an individual node's ConnectionInfo (#1435) (bdf966e)
  • iroh-sync: validate timestamps and move validation up (#1439) (4e8ff56)

v0.6.0-alpha.0 - Sync the world

28 Aug 20:36
Compare
Choose a tag to compare
Pre-release

This is the first alpha preview of iroh v0.6.0. iroh v0.6.0 is targeting a Sept 25th release date.

v0.6.0 is a big step toward iroh 1.0. It introduces documents, see our docs pages for a detailed look at the new iroh.

Introducing documents

Documents are mutable key-value stores that authors read from, write to, and sync with, subscribing to live updates in real time. For more on documents, see the docmuents, uh, documentation

iroh console is here to help

This release includes iroh console an admin, debugging, and API exploration tool. It's a REPL that can give live feedback as documents change, users sync, etc. For a detailed rundown on console commands, see the iroh command documentation

v0.5.1 - Connectivity Intensifies

18 Jul 11:40
Compare
Choose a tag to compare

First you have to find one another, before you can interact.

This release is all about finding and connecting with your peers. Before iroh could only connect with peers that were directly reachable, eg. static IP address or local LAN peers. Thanks to NATs and the various complications of IPv4 and IPv6 these are not that many machines in the world, and especially mobile devices are hard to discover.

So we are proud to present the first version of iroh with builtin NAT traversal, hole punching and automatic relaying when everything fails.

If you want to find out the details on how all of this works, header over to the [Iroh Hole Punching](https://www.notion.so/Iroh-Hole-Punching-b9a38cc228fb47328a73e71d10520418?pvs=21).

Of course that is not all, we have also fixed some pesky bugs, as well added some more features, like generic collections and pluggable authentication.

On a practical side, iroh is now split into multiple crates:

  • iroh - The CLI and main library entry point.
  • iroh-bytes - The core data transfer protocol, including resume.
  • iroh-net - Nat traversal, peer management and general networking tools.
  • iroh-metrics - Metrics collection using prometheus

This should open up more possibilities when integrating just the pieces you need from iroh into your app.

[Note: this ended up being 0.5.1 for iroh and iroh-net due to a publish issue with [email protected]]