Skip to content

Releases: n0-computer/iroh

v0.95.1

21 Nov 08:54

Choose a tag to compare

chore: Release iroh-base version 0.95.1

v0.95.0

04 Nov 19:07

Choose a tag to compare

⚠️ Breaking Changes

  • iroh-dns-server
    • upgraded to redb version 3 - you much run with version 0.93 at least once to upgrade the database
  • iroh
    • changed
      • All errors have changed from snafu errors to n0-error errors.
      • ConnectError::Connection - fields changed
      • AcceptError::Connection - fields changed
      • AcceptError::MissingRemoteEndpointId - fields changed
      • AcceptError::NotAllowed - fields changed
      • AcceptError::User - fields changed
      • Connecting::into_0rtt -> returns Result<OutgoingZeroRttConnection, Connecting>
    • removed
      • ProtocolHandler::on_connecting() removed - implement on_accepting() instead, which takes Accepting rather than Connecting
      • DynProtocolHandler::on_connecting() removed - implement on_accepting() instead
      • iroh::endpoint::IncomingFuture - use Accepting instead
      • iroh::endpoint::ZeroRttAccepted - replaced by explicit 0-RTT connection types

⛰️ Features

  • (iroh-relay) Allow for extension of RelayMaps (#3575) - (45e1f48)
  • Add new NA west default relay (#3599) - (828789a)
  • Make Connection::remote_id and Connection::alpn infallible (#3556) - (e2dc591)

🐛 Bug Fixes

🚜 Refactor

  • [breaking] Convert from snafu to n0-error (#3561) - (7b9c95b)

📚 Documentation

  • (iroh) Fix documentation on endpoint::Builder::empty (#3592) - (71d5136)
  • (iroh) Clarify ProtocolHandler::accept (#3567) - (406bfde)

⚙️ Miscellaneous Tasks

  • (iroh) Update wasm-bindgen version to fix CI (#3589) - (0f4c15c)
  • [breaking] Update redb to version 3 (#3562) - (b057b91)

v0.94.1

21 Nov 08:54

Choose a tag to compare

chore: Release iroh-base version 0.94.1

v0.94.0

21 Oct 17:42

Choose a tag to compare

⚠️ Breaking Changes

  • iroh
    • renamed
      • iroh_relay::RelayNode -> RelayConfig
      • iroh_base::NodeAddr -> EndpointAddr
      • iroh_base::NodeAddr.node_id -> endpoint_id
      • iroh_base::NodeId -> EndpointId
      • iroh_base::NodeTicket -> EndpointTicket
      • iroh::Endpoint::node_addr -> iroh::Endpoint::addr
      • iroh::Endpoint::watch_node_addr -> iroh::Endpoint::watchaddr
      • iroh::Endpoint::node_id -> iroh::Endpoint::id
      • iroh_relay::RelayMap::urls
      • iroh_relay::RelayMap::nodes
      • iroh_relay::RelayMap::get_node
      • direct_addresses are now called ip_addresses
      • EndpointAddr type is completely changed
        • Use EndpointAddr::ip_addrs to get a list of ip addresses for this endpoint
        • Use EndpointAddr::relay_urls to get a list of relay urls for this endpoint
          • currently, there will only be one relay url per endpoint, but in the future, beyond 1.0, we will potentially have multiple
      • APIs with addresse(s) are now normalized to addr(s) to be consistent in the code base
    • removed
      • iroh::Endpoint::add_node_addr_with_source is removed. Use a discovery service instead.
    • added
      • iroh_base::Signature which replaces ed25519_dalek::Signature in the public API of iroh_base
      • iroh::Endpoint::insert_relay
      • iroh::Endpoint::remove_relay
      • iroh::Endpoint::RelayMap::insert
      • iroh::Endpoint::RelayMap::remove
  • iroh-relay
    • wire-level breaking change
      • iroh-relay servers can no longer issue captive portal challenges to pre 0.93 iroh nodes
  • iroh-base
    • changed
      • iroh_base error types have changed
    • removed
      • Into and From conversions for PublicKey - ed25519_dalek::VerifyingKey
      • Into and From conversions for SecretKey - ed25519_dalek::SigningKey
      • removed ticket s from iroh-base , they are now in their own iroh-ticket crate

⛰️ Features

  • (iroh) Allow to override provenance for StaticProvider (#3527) - (3d92f6b)
  • (iroh) [breaking] Allow dynamic changing of the RelayMap of an endpoint (#3522) - (7a0644f)
  • (iroh) Introduce endpoint presets (#3523) - (2d367f9)
  • (iroh-base) [breaking] Reduce external types in the iroh-base API for keys (#3529) - (b45ae27)
  • (iroh-relay) [breaking] Remove support for legacy headers (#3539) - (f7692df)
  • [breaking] Transport generic EndpointAddr (#3554) - (9cb4020)

🐛 Bug Fixes

  • (iroh) Improve reusing of QAD reports (#3512) - (b2a55bf)
  • Flakey test simple_node_id_based_connection_transfer (#3534) - (0f86c38)

🚜 Refactor

  • (iroh) [breaking] Finish removal of add_node_addr from public api (#3528) - (c2fce51)
  • (iroh) Remove stun-rs (#3546) - (bafde6f)
  • (iroh-base) [breaking] Move tickets into their own crate (#3544) - (25cea67)
  • (iroh-relay) [breaking] Improve relay map api (#3563) - (a6b8456)
  • [breaking] Rename Node to Endpoint in all cases (#3542) - (bfc6ba0)

📚 Documentation

  • (iroh) Fix docstring for ProtocolHandler (#3558) - (b7baaeb)

🧪 Testing

  • (iroh) Fix flaky test_active_relay_inactive - (b29c158)

⚙️ Miscellaneous Tasks

v0.93.2

14 Oct 08:53

Choose a tag to compare

🐛 Bug Fixes

  • (iroh) Ensure initial addresses are published via discovery (#3525) - (ca85faa)

v0.93.1

13 Oct 09:41

Choose a tag to compare

📚 Documentation

v0.93.0

09 Oct 00:54

Choose a tag to compare

⚠️ Breaking Changes

  • iroh
    • removed

      • MdnsDiscovery::new is now private
      • MdnsDiscoveryBuilder::new is now private
        • Use MdnsDiscovery::builder() to create an MdnsDiscoveryBuilder
        • Use MdnsDiscoveryBuilder::default() to create an MdnsDiscoveryBuilder
      • iroh::Endpoint::direct_addresses
      • iroh::Endpoint::home_relay
      • iroh::Endpoint::add_node_addr
      • iroh::Endpoint::remote_info
      • iroh::Endpoint::remote_info_iter
      • iroh::RemoteInfo
      • iroh::discovery::DiscoveryItem
      • “examples” feature is removed, you no longer need to include it in the list of features to run an example
    • added

      • MdnsDiscoveryBuilder::service_name()
      • iroh::Endpoint::online
      • iroh::Endpoint::watch_node_addr
    • changed

      • API Changes
        • iroh::Endpoint::node_addr now returns synchronously the current addressing information

        • iroh::Endpoint::watch_node_addr now returns a watchable for NodeAddr not Option<NodeAddr>

        • iroh::discovery::mdns::DiscoveryItem

        • iroh::Endpoint::latency

        • iroh::PublicKey::fmt_short now returns a impl Display rather than a String

          To use it conveniently in tracing or logging precede the fmt_short() call with a %:

          tracing::info!(node_id = %node_id.fmt_short())
    • wire breaking changes

      • Default service name changed from iroh.local.swarm to irohv1
      • Provenance field name in DiscoveryItem changed from local.swarm.discovery to mdns
      • Switches to use X-Iroh headers for the captive portal challenges, this is currently backwards compatible and will remain so until the next release

⛰️ Features

🐛 Bug Fixes

🚜 Refactor

  • (iroh) [breaking] Remove Endpoint::add_node_addr (#3485) - (0ffadef)
  • Rename last two local_endpoints usages to direct_addresses (#3472) - (9c8540f)
  • [breaking] Switch to iroh headers for captive portal checks (#3488) - (d6f33f9)
  • [breaking] Move examples deps to non-wasm dev deps (#3509) - (81e340f)

📚 Documentation

  • (iroh) Add screening-connection example (#3360) - (797fae6)

⚙️ Miscellaneous Tasks

  • Bump some spans up to warn, to ensure they are logged (#3466) - (2e42085)
  • Enable dependabot for crates and docker (#3497) - (968a70b)

v0.92.0

18 Sep 19:40

Choose a tag to compare

⚠️ Breaking Changes

  • iroh
    • added
      • “passive” mode for mDNS discovery
        • MdnsDiscovery::new(node_id: NodeId) → MdnsDiscovery::new(node_id: NodeId, advertise: bool)
    • changed
      • The subscribe method for the Discovery trait now returns a stream of DiscoveryEvent rather than a DiscoveryItem. A discovery event now includes expiry events that notify you when a node that was passively discovered (usually by mDNS) can no longer be found.
        • fn subscribe(&self) -> Option<BoxStream<DiscoveryItem>>fn subscribe(&self) -> Option<BoxStream<DiscoveryEvent>>

⛰️ Features

  • (iroh) [breaking] Add passive mode for mdns discovery (#3401) (#3403) - (c5a623c)
  • (iroh) [breaking] Emit mDNS expiry events (#3409) - (150b841)
  • (iroh-base) Impl Deref for PublicKey (#3438) - (fa1e946)
  • Allow configuring the max number of TLS tickets (#3442) - (d6f4fa9)

🐛 Bug Fixes

🚜 Refactor

  • (iroh) Re-batch datagrams inside RelayTransport instead of the ActiveRelayActor (#3421) - (b791123)

📚 Documentation

  • (iroh-relay) Remove incorrect help text about default config file creation (#3258) (#3446) - (4583b12)

⚙️ Miscellaneous Tasks

Cargo

v0.91.2

25 Aug 16:38

Choose a tag to compare

chore: Release iroh-base version 0.91.2

v0.91.1

25 Aug 16:38

Choose a tag to compare

chore: Release iroh-base version 0.91.1