Skip to content

refactor(iroh): gate net_report API behind unstable-net-report feature#4338

Merged
Frando merged 4 commits into
mainfrom
Frando/gate-net-report
Jun 15, 2026
Merged

refactor(iroh): gate net_report API behind unstable-net-report feature#4338
Frando merged 4 commits into
mainfrom
Frando/gate-net-report

Conversation

@Frando

@Frando Frando commented Jun 12, 2026

Copy link
Copy Markdown
Member

Description

We have a doc_hidden functions Endpoint::net_report and Endpoint::last_net_report. This PR put iroh::Endpoint::net_report behind a new feature unstable-net-report instead, together with the items exposed via these functions (i.e. NetReport and contained items).

Also marked the NetReport and Probe items as non_exhaustive, and removes iroh::Endpoint::last_net_report to keep the unstable API surface small (you can just call Endpoint::net_report().get() to get the latest net report).

Breaking Changes

None, because we don't consider the previous doc(hidden) API as public API.

Listing the changes nevertheless here (but not marking the PR as breaking):

  • changed: iroh::Endpoint::net_report is now gated behind unstable-net-report feature
  • removed: iroh::Endpoint::last_net_report. Use iroh::Endpoint::net_report().get() instead.
  • removed: iroh::NetReport. it is now available only with the unstable-net-report feature under iroh::unstable_net_report::NetReport

Notes & open questions

Change checklist

  • Self-review.
  • Documentation updates following the style guide, if relevant.
  • All breaking changes documented.

Comment thread iroh/src/net_report.rs
// exported primarily for use in documentation
defaults::timeouts::TIMEOUT,
metrics::Metrics,
probes::Probe,

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probe and RelayLatencies are accessible via Report::relay_latencies (only under unstable-custom-transports)

Comment thread iroh/src/net_report.rs
//! etc and reachability to the configured relays.
// Based on <https://github.com/tailscale/tailscale/blob/main/net/netcheck/netcheck.go>

#![cfg_attr(iroh_docsrs, feature(doc_cfg))]

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

unrelated to the PR, but we declare these at the root level already, I think these are oversights from when we moved net_report back into iroh

@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown

Netsim report & logs for this PR have been generated and is available at: LOGS
This report will remain available for 3 days.

Last updated for commit: c151832

@Frando Frando force-pushed the Frando/gate-net-report branch from 7855bd6 to d8e3b40 Compare June 12, 2026 11:13
@github-actions

github-actions Bot commented Jun 12, 2026

Copy link
Copy Markdown

Documentation for this PR has been generated and is available at: https://n0-computer.github.io/iroh/pr/4338/docs/iroh/

Last updated: 2026-06-15T07:54:35Z

@Frando Frando requested review from dignifiedquire and rklaehn June 15, 2026 07:22
@Frando Frando requested a review from matheus23 June 15, 2026 07:50
@Frando Frando merged commit 7e95ae7 into main Jun 15, 2026
37 checks passed
@github-project-automation github-project-automation Bot moved this from 🚑 Needs Triage to ✅ Done in iroh Jun 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: ✅ Done

Development

Successfully merging this pull request may close these issues.

2 participants