Skip to content

memfs no longer exports Volume — breaking builds that rely on named exports #93

@MarketingPip

Description

@MarketingPip

Problem

When resolving memfs@^4.20.0 (via package.json or CDN like esm.sh), the module no longer exports Volume as a named export. This causes builds or runtime scripts to fail with:

Uncaught SyntaxError: The requested module '/memfs@^4.20.0' does not provide an export named 'Volume'

Root Cause

The version resolver is pulling in memfs@^4.20.0, but starting in a recent update, Volume is no longer available as a named export — possibly moved or hidden behind a default export.

Impact

  • Scripts that rely on this previously valid syntax now break:
import { Volume } from 'memfs'; // ❌ fails
  • This issue occurs when building or running environments that depend on a shared package.json (e.g. workspaces, CDN builds).

Expected

One of the following should happen:

  • Either Volume is restored as a named export (as it was in ≤4.9.3), or
  • The documentation/update log clearly reflects the breaking change, and guidance is provided to access Volume correctly (e.g. via default export or subpath).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions