github n0-computer/iroh v0.94.0

latest release: v0.94.1
2 days ago

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

Don't miss a new iroh release

NewReleases is sending notifications on new releases.