Skip to main content
Moderne OnlyThis recipe is proprietary to Moderne and runs on the Moderne platform or CLI — it isn’t part of the open-source catalog. Available with a Moderne subscription.Contact Sales

Replace fs-extra copy with fs.cp

Recipe IDorg.openrewrite.node.migrate.fs-extra.replace-fs-extra-copy
Artifact@openrewrite/recipes-nodejs

Replaces fs-extra's copy(src, dest[, options]) and copySync with cp/cpSync from node:fs/promises and node:fs, adding recursive: true and mapping overwrite/clobber to force; errorOnExist, dereference, preserveTimestamps and filter carry over unchanged. The callback form maps to the callback cp from node:fs. Calls whose options aren't an object literal of known options are left alone. Note that fs.cp is experimental before Node.js 22.3 (it emits an ExperimentalWarning on 16.7–22.2), and that copying a file onto an existing directory copies it into that directory where fs-extra throws.

Single recipeOpenRewriteModerne Proprietary License
Try in PlatformTry this recipe in the Moderne platform. Not a user yet? You’ll get a no-setup demo environment, with nothing to install or configure.

Usage​

Run this recipe

In order to run JavaScript recipes, you will need to use the Moderne CLI. For JavaScript specific configuration instructions, please see our configuring JavaScript guide.

Once the CLI is installed, you can install this JavaScript recipe package by running the following command:

Install the recipe package
mod config recipes npm install @openrewrite/recipes-nodejs

Then, you can run the recipe via:

Run the recipe
mod run . --recipe org.openrewrite.node.migrate.fs-extra.replace-fs-extra-copy