Skip to content

build(deps): replace fs-extra with native node:fs#1564

Open
roli-lpci wants to merge 1 commit intosequelize:mainfrom
roli-lpci:chore/remove-fs-extra
Open

build(deps): replace fs-extra with native node:fs#1564
roli-lpci wants to merge 1 commit intosequelize:mainfrom
roli-lpci:chore/remove-fs-extra

Conversation

@roli-lpci
Copy link

@roli-lpci roli-lpci commented Feb 28, 2026

Summary

  • Replace fs-extra dependency with native node:fs equivalents
  • All replacement APIs are available in Node.js 10+, matching the project's minimum engine requirement
  • Removes fs-extra and its transitive dependencies (at-least-node, jsonfile, universalify) from the dependency tree

Changes

  • src/helpers/asset-helper.js — Replace fs-extra import with fs; copySync with a recursive copy helper using fs.copyFileSync/fs.readdirSync/fs.mkdirSync; mkdirpSync with fs.mkdirSync({ recursive: true })
  • test/support/helpers.js — Replace fs-extra import with fs; copy with fs.copyFile; mkdirpSync with fs.mkdirSync({ recursive: true })
  • package.json — Remove fs-extra from dependencies
  • package-lock.json — Regenerated without fs-extra and its transitive deps

Testing

  • npm run lint passes
  • npm run build passes
  • All 326 tests pass (1 pre-existing failure in model:create with complex enum attributes, unrelated to this change)

Part of the e18e ecosystem cleanup initiative.

Replace fs-extra dependency with native Node.js fs module equivalents:
- fs-extra copySync → recursive copy using fs.copyFileSync + fs.readdirSync
- fs-extra copy → fs.copyFile (callback-based)
- fs-extra mkdirpSync → fs.mkdirSync with { recursive: true }

All replacement APIs are available in Node.js 10+, matching the
project's minimum engine requirement.

Part of the e18e ecosystem cleanup initiative.
See e18e/ecosystem-issues#33

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@roli-lpci roli-lpci force-pushed the chore/remove-fs-extra branch from 3d273e7 to 9fcb4e2 Compare February 28, 2026 00:54
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