w3name icon indicating copy to clipboard operation
w3name copied to clipboard

Please upgrade internal multiformats dependency to ^11.x for bundler compatibility

Open humuhimi opened this issue 9 months ago • 0 comments

Summary

We are using w3name in a project that includes @web3-storage/w3up-client, which imports multiformats/link. This causes a build failure when using modern bundlers like esbuild or webpack 5+, due to strict enforcement of the "exports" field in [email protected].

The root cause is that multiformats/link is not exported in [email protected], and cannot be resolved during bundling:

✘ [ERROR] Could not resolve "multiformats/link"

node_modules/@web3-storage/w3up-client/dist/src/proof.js:4:22: 4 │ import * as Link from 'multiformats/link'; ╵ ~~~~~~~~~~~~~~~~~~~

The path "./link" is not exported by package "multiformats"

What's happening

[email protected] depends on multiformats@^9.9.0. This blocks downstream consumers from upgrading multiformats to ^11.x, which is required for compatibility with strict bundlers.

$ npm info [email protected] dependencies
{ multiformats: '^9.9.0' }

[email protected] is required by newer libraries in w3up-client [email protected] is enforced by w3name Result: bundling fails unless workarounds like external, patch-package, or npm-force-resolutions are used so please upgrade the multiformats dependency in w3name to:

"multiformats": "^11.0.0"

I'm happy to help test or submit a PR to update this dependency if needed. Thank you for the great library!

related: https://github.com/web3-storage/w3up-client

humuhimi avatar Mar 21 '25 15:03 humuhimi