Releases: n0-computer/iroh
Releases · n0-computer/iroh
v0.95.1
v0.95.0
⚠️ 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
snafuerrors ton0-errorerrors. ConnectError::Connection- fields changedAcceptError::Connection- fields changedAcceptError::MissingRemoteEndpointId- fields changedAcceptError::NotAllowed- fields changedAcceptError::User- fields changedConnecting::into_0rtt-> returnsResult<OutgoingZeroRttConnection, Connecting>
- All errors have changed from
removedProtocolHandler::on_connecting()removed - implementon_accepting()instead, which takesAcceptingrather thanConnectingDynProtocolHandler::on_connecting()removed - implementon_accepting()insteadiroh::endpoint::IncomingFuture- useAcceptinginsteadiroh::endpoint::ZeroRttAccepted- replaced by explicit 0-RTT connection types
- changed
⛰️ Features
- (iroh-relay) Allow for extension of
RelayMaps (#3575) - (45e1f48) - Add new NA west default relay (#3599) - (828789a)
- Make
Connection::remote_idandConnection::alpninfallible (#3556) - (e2dc591)
🐛 Bug Fixes
- Remove "https" from NA west url (#3600) - (c2bdbe2)
- Stop relay actor on endpoint close (#3601) - (30c23e8)
🚜 Refactor
📚 Documentation
- (iroh) Fix documentation on endpoint::Builder::empty (#3592) - (71d5136)
- (iroh) Clarify ProtocolHandler::accept (#3567) - (406bfde)
⚙️ Miscellaneous Tasks
v0.94.1
chore: Release iroh-base version 0.94.1
v0.94.0
⚠️ Breaking Changes
iroh- renamed
iroh_relay::RelayNode->RelayConfigiroh_base::NodeAddr->EndpointAddriroh_base::NodeAddr.node_id->endpoint_idiroh_base::NodeId->EndpointIdiroh_base::NodeTicket->EndpointTicketiroh::Endpoint::node_addr->iroh::Endpoint::addriroh::Endpoint::watch_node_addr->iroh::Endpoint::watchaddriroh::Endpoint::node_id->iroh::Endpoint::idiroh_relay::RelayMap::urlsiroh_relay::RelayMap::nodesiroh_relay::RelayMap::get_nodedirect_addressesare now calledip_addressesEndpointAddrtype is completely changed- Use
EndpointAddr::ip_addrsto get a list of ip addresses for this endpoint - Use
EndpointAddr::relay_urlsto 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
- Use
- APIs with
addresse(s)are now normalized toaddr(s)to be consistent in the code base
- removed
iroh::Endpoint::add_node_addr_with_sourceis removed. Use a discovery service instead.
- added
iroh_base::Signaturewhich replacesed25519_dalek::Signaturein the public API ofiroh_baseiroh::Endpoint::insert_relayiroh::Endpoint::remove_relayiroh::Endpoint::RelayMap::insertiroh::Endpoint::RelayMap::remove
- renamed
iroh-relay- wire-level breaking change
iroh-relayservers can no longer issue captive portal challenges to pre0.93iroh nodes
- wire-level breaking change
iroh-base- changed
iroh_baseerror types have changed
- removed
IntoandFromconversions forPublicKey-ed25519_dalek::VerifyingKeyIntoandFromconversions forSecretKey-ed25519_dalek::SigningKey- removed
tickets fromiroh-base, they are now in their owniroh-ticketcrate
- changed
⛰️ Features
- (iroh) Allow to override provenance for StaticProvider (#3527) - (3d92f6b)
- (iroh) [breaking] Allow dynamic changing of the
RelayMapof 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
🧪 Testing
- (iroh) Fix flaky test_active_relay_inactive - (b29c158)
⚙️ Miscellaneous Tasks
v0.93.2
v0.93.1
v0.93.0
⚠️ Breaking Changes
- iroh
-
removed
MdnsDiscovery::newis now privateMdnsDiscoveryBuilder::newis now private- Use
MdnsDiscovery::builder()to create anMdnsDiscoveryBuilder - Use
MdnsDiscoveryBuilder::default()to create anMdnsDiscoveryBuilder
- Use
iroh::Endpoint::direct_addressesiroh::Endpoint::home_relayiroh::Endpoint::add_node_addriroh::Endpoint::remote_infoiroh::Endpoint::remote_info_iteriroh::RemoteInfoiroh::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::onlineiroh::Endpoint::watch_node_addr
-
changed
- API Changes
-
iroh::Endpoint::node_addrnow returns synchronously the current addressing information -
iroh::Endpoint::watch_node_addrnow returns a watchable forNodeAddrnotOption<NodeAddr> -
iroh::discovery::mdns::DiscoveryItem -
iroh::Endpoint::latency -
iroh::PublicKey::fmt_shortnow returns aimpl Displayrather than aStringTo use it conveniently in
tracingorloggingprecede thefmt_short()call with a%:tracing::info!(node_id = %node_id.fmt_short())
-
- API Changes
-
wire breaking changes
- Default service name changed from
iroh.local.swarmtoirohv1 - Provenance field name in
DiscoveryItemchanged fromlocal.swarm.discoverytomdns - Switches to use
X-Irohheaders for the captive portal challenges, this is currently backwards compatible and will remain so until the next release
- Default service name changed from
-
⛰️ Features
- (iroh) [breaking] Add
MdnsDiscoveryBuilder::service_namemethod (#3482) - (9a88cc5) - (iroh) [breaking] Introduce
onlinemethod (#3467) - (d815cae) - (iroh) [breaking] Make direct_addresses always be initialised (#3505) - (33aca18)
- Make fmt_short return an impl Display so we can avoid an allocation. (#3460) - (5285cc0)
- Upgrade redb to v3 compatible format (#3483) - (2b36b77)
- Add a DNS resolver trait (#3473) - (7bd657e)
- Add a builder for DnsResolver (#3475) - (1fb68ef)
- Upgrade to [email protected] (#3465) - (78649a3)
- Congestion metrics (#3491) - (b6c60d3)
🐛 Bug Fixes
- (iroh) Convert to canonical IP address in IpSender (#3506) - (44c3c27)
- (iroh) Updated relays, and transfer example fixes (#3510) - (da311a6)
- (relay) Respect enable_relay flag (#3481) - (427fcad)
- Force reqwest to always use rustls backend (#3486) - (60d5310)
impl<T: Discovery> Discovery for Arc<T>(#3495) - (f5381bc)- 0rtt flakes (#3496) - (9e61af5)
🚜 Refactor
- (iroh) [breaking] Remove Endpoint::add_node_addr (#3485) - (0ffadef)
- Rename last two
local_endpointsusages todirect_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
⚙️ Miscellaneous Tasks
v0.92.0
⚠️ Breaking Changes
iroh- added
- “passive” mode for mDNS discovery
MdnsDiscovery::new(node_id: NodeId)→MdnsDiscovery::new(node_id: NodeId, advertise: bool)
- “passive” mode for mDNS discovery
- changed
- The
subscribemethod for theDiscoverytrait now returns a stream ofDiscoveryEventrather than aDiscoveryItem. 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>>
- The
- added
⛰️ 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
📚 Documentation
- (iroh-relay) Remove incorrect help text about default config file creation (#3258) (#3446) - (4583b12)
⚙️ Miscellaneous Tasks
- (github) Update issue template (#3450) - (5e185bd)
- Update some dependencies (#3453) - (048001d)
- Make net reports serde (#3454) - (e8eb1dd)
- Add
test-utilscfg forinsecure_certcall in the transfer example (#3458) - (c81fe21)
Cargo
v0.91.2
chore: Release iroh-base version 0.91.2
v0.91.1
chore: Release iroh-base version 0.91.1