Note
This release was brought to you by the Shipyard team.
✨ Features
Broken ipfs:// addresses now stop at an explainer (#1380)
Some addresses were never going to work: a website name (which belongs under ipns://), a lowercased Qm… CID, or a typo. Companion used to rewrite or forward them silently, so broken links kept spreading. Now each one stops on a page that says what is wrong and, where it can, offers one click to the corrected address. Valid addresses, in any CID base or IPNS form, are untouched.
| Wrong namespace | Lowercased CIDv0 | Typo or truncated |
|---|---|---|
|
|
|
Upload whole folders in Quick Upload (#1381)
Quick Upload now has a Pick a folder button beside Pick a file, and dropping a folder works too. The folder tree is preserved and imported as one directory, so you get a single CID that mirrors your local layout. Files with the same name in different subfolders no longer overwrite each other.
Share native ipfs:// links, public gateways now optional (#1371)
You can copy native ipfs:// and ipns:// addresses instead of always routing people through a third-party gateway. Clear the gateway URLs, or turn off the new Use Public Gateways for Shareable Links toggle, and shared links switch to native addresses. Defaults are unchanged: ipfs.io and dweb.link stay prefilled.
Safer redirect defaults (#1378)
Companion now redirects only top-level navigation by default. Embedded subresources (images, scripts, iframes) are no longer sent to your local gateway unless you opt in, so Chrome stops asking for Local Network Access on IPFS pages and sites with a strict CSP no longer break. DNSLink is two clear toggles, and the first visit upgrades the tab on its own, so no more F5. The legacy X-Ipfs-Path value redirect is off by default.
Lighter background, reliable toolbar button (#1387)
Under Manifest V3 the background worker is torn down when idle, and the old timer stopped with it, so on Chrome and Firefox the toolbar button could get stuck showing inactive after the browser had been open a while, even with the node running fine. Status checks now run on an alarm that survives the worker being torn down, back off while you are away, and refresh the moment you interact. Companion checks the node far less often in the background and no longer double-requests, so it is light enough to leave enabled without a battery cost. The peer count is gone from the badge (the icon shows connection state on its own), and both poll intervals are adjustable in Preferences.
🛠 Fixes and Maintenance
- fix: honor
?x-ipfs-companion-no-redirectagain, and redirect service worker gateways to your local node under MV3/Chrome (#1382, closes #1299 #1152 #1336) - chore: modernize deps and overhaul build with rspack, vitest, Playwright and eslint 9; installed tree cut from 1745 to 1099 packages (#1365)
- chore(deps): take the safe dependabot bumps (#1372)
- fix(ci): repair release-please automation (#1383)
- docs: refresh outdated content and changelog title (#1385, #1386)
- chore(i18n): locale sync (#1354, #1357, #1359, #1360)
Installation
Alternative: use prebuilt artifacts attached to this release or build and install it manually.
Full Changelog: v3.3.0...v3.4.0







