v0.92.0
n0-computer/irohv0.92.0Sep 18, 2025by github-actions[bot]
AI Summary
A major release introducing passive mDNS discovery mode and changing the discovery stream type to support expiry events.
Key Highlights
- Added passive mode for mDNS discovery (advertise flag).
- Changed Discovery::subscribe to return DiscoveryEvent instead of DiscoveryItem.
- Added mDNS expiry events.
- Added impl Deref for PublicKey.
- Added configurable TLS ticket limits.
Breaking Changes
- MdnsDiscovery::new signature changed to include 'advertise: bool'.
- Discovery::subscribe return type changed from BoxStream<DiscoveryItem> to BoxStream<DiscoveryEvent>.
New Features
- Passive mDNS discovery mode.
- mDNS expiry events.
- impl Deref for PublicKey.
- Configurable max TLS tickets.
Full Release Notes
## ⚠️ 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](https://github.com/n0-computer/iroh/issues/3401)) ([#3403](https://github.com/n0-computer/iroh/issues/3403)) - ([c5a623c](https://github.com/n0-computer/iroh/commit/c5a623c102490a92df0f9ece73f0b0c94ed68b2d))
- *(iroh)* [**breaking**] Emit mDNS expiry events ([#3409](https://github.com/n0-computer/iroh/issues/3409)) - ([150b841](https://github.com/n0-computer/iroh/commit/150b8411435c5f49c5242ae3018d7be15f263ba6))
- *(iroh-base)* Impl Deref for PublicKey ([#3438](https://github.com/n0-computer/iroh/issues/3438)) - ([fa1e946](https://github.com/n0-computer/iroh/commit/fa1e946c528d31ff305c675401e82747367ac5bd))
- Allow configuring the max number of TLS tickets ([#3442](https://github.com/n0-computer/iroh/issues/3442)) - ([d6f4fa9](https://github.com/n0-computer/iroh/commit/d6f4fa98ab60512830cb533d6f6f63dd80093ef8))
## 🐛 Bug Fixes
- *(iroh)* Add jitter to dns retry calls ([#3447](https://github.com/n0-computer/iroh/issues/3447)) - ([f3da758](https://github.com/n0-computer/iroh/commit/f3da7586b6d1c9a625ff3923ddff7c7ebd843ef1))
## 🚜 Refactor
- *(iroh)* Re-batch datagrams inside `RelayTransport` instead of the `ActiveRelayActor` ([#3421](https://github.com/n0-computer/iroh/issues/3421)) - ([b791123](https://github.com/n0-computer/iroh/commit/b791123fc6657167b02aa37e489321f3abf35ef9))
## 📚 Documentation
- *(iroh-relay)* Remove incorrect help text about default config file creation ([#3258](https://github.com/n0-computer/iroh/issues/3258)) ([#3446](https://github.com/n0-computer/iroh/issues/3446)) - ([4583b12](https://github.com/n0-computer/iroh/commit/4583b1280b8f5ab9d264940102382956ddbbb1a8))
## ⚙️ Miscellaneous Tasks
- *(github)* Update issue template ([#3450](https://github.com/n0-computer/iroh/issues/3450)) - ([5e185bd](https://github.com/n0-computer/iroh/commit/5e185bdd53086f2ee916fecfedf1ce7e9ccf77eb))
- Update some dependencies ([#3453](https://github.com/n0-computer/iroh/issues/3453)) - ([048001d](https://github.com/n0-computer/iroh/commit/048001d0362a6465101d66654a2e797e74f782ca))
- Make net reports serde ([#3454](https://github.com/n0-computer/iroh/issues/3454)) - ([e8eb1dd](https://github.com/n0-computer/iroh/commit/e8eb1dd9d9008874b0ad48c3d05f5ee8cb8ec2e3))
- Add `test-utils` cfg for `insecure_cert` call in the transfer example ([#3458](https://github.com/n0-computer/iroh/issues/3458)) - ([c81fe21](https://github.com/n0-computer/iroh/commit/c81fe21538b976d7bb3f900cfb0c452d55c77631))
## Cargo
- Add aarch64-linux-gnu-gcc linker ([#3441](https://github.com/n0-computer/iroh/issues/3441)) - ([fb37550](https://github.com/n0-computer/iroh/commit/fb37550c859cc87bb03256fbe1b3071b9c21b608))