Skip to content

feat(iroh-dns): fall back to default resolver config on wasi - #1

Open
lann wants to merge 1 commit into
mainfrom
wasi-dns-config
Open

feat(iroh-dns): fall back to default resolver config on wasi#1
lann wants to merge 1 commit into
mainfrom
wasi-dns-config

Conversation

@lann

@lann lann commented Aug 7, 2026

Copy link
Copy Markdown
Owner

hickory-resolver cfg-gates system_conf::read_system_conf out on wasi, so system_config() does not compile for wasm32-wasip2. Use an empty ResolverConfig plus default ResolverOpts instead: resolver construction succeeds, lookups fail. Relay-only deployments — the current wasi consumers — never issue lookups.

Smallest of the wasi enablement set from polymorph-components/polymorph-iroh#25; staged here for eventual upstreaming. Siblings: the relay datagram-pipe seam and the net_report probe gate. Merged together into the long-lived polymorph-iroh branch that the component experiments consume.

hickory-resolver cfg-gates `system_conf::read_system_conf` out on wasi,
so `system_config()` does not compile there. Use an empty
`ResolverConfig` plus default options instead: resolver construction
succeeds, lookups fail. Relay-only deployments (the current wasi
consumers) never issue lookups.

Part of running iroh on wasm32-wasip2 components
(polymorph-components/polymorph-iroh#25).
lann added a commit to polymorph-components/polymorph-iroh that referenced this pull request Aug 7, 2026
The iroh/iroh-relay/iroh-dns deltas now live as reviewable PR branches
on the fork (lann/iroh#1 iroh-dns resolver-config fallback, #2 relay
connect over the datagram pipe, #3 net_report probe gate), merged into
its `polymorph-iroh` branch: upstream main at the same pinned rev
(735958f8) plus exactly the patches the vendor tree carried, verified
byte-identical before the swap. The three guests consume the branch as
a git dependency; iroh-base is patched to the same branch in the blobs
and ping-demo guests so iroh and iroh-blobs share one copy of its
types (crates-io iroh-base 1.0.3 otherwise coexists as a second,
type-incompatible instance).

netwatch stays vendored: its upstream is n0-computer/net-tools, not
the iroh repo, so it is out of scope for the fork.

Verified: all three guests build; iroh-relay-ws Node and browser runs
(migration 51ms, phase-2 p50 410-664us), iroh-blobs verified fetches
across the migration, and the full ping-demo Playwright suite pass.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant