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 emptyDir with mkdir and rm of each entry

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

Replaces fs-extra's emptyDir/emptyDirSync with a recursive mkdir of the directory followed by an rm of each entry readdir returns. Emptying the directory rather than replacing it is what fs-extra does, and it keeps the directory's own inode and permissions, which removing and recreating it would not. mkdir runs first so a missing directory is created, as emptyDir does when readdir fails. A path that isn't safe to evaluate twice is hoisted into a const first; since both need a statement to sit in, a call in expression position is left alone, as are callback-form calls.

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-empty-dir