Skip to content

Commit 4ab64e4

Browse files
committed
fix: replace rimraf
1 parent cbe2a5f commit 4ab64e4

File tree

6 files changed

+13
-48
lines changed

6 files changed

+13
-48
lines changed

package.json

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,6 @@
6969
"ajv": "^8.0.0",
7070
"chalk": "^4.1.0",
7171
"prompts": "^2.4.0",
72-
"rimraf": "^3.0.0",
7372
"semver": "^7.3.5",
7473
"uuid": "^8.3.2",
7574
"yargs": "^16.0.0"
@@ -117,7 +116,6 @@
117116
"@types/mustache": "^4.0.0",
118117
"@types/node": "^16.0.0",
119118
"@types/prompts": "~2.0.0",
120-
"@types/rimraf": "^3.0.0",
121119
"@types/semver": "^7.3.6",
122120
"@types/uuid": "^8.3.1",
123121
"eslint": "^8.0.0",

scripts/configure.js

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ require("./link")(module);
66

77
const chalk = require("chalk");
88
const fs = require("fs");
9+
const fsp = require("fs/promises");
910
const path = require("path");
1011
const semver = require("semver");
1112

@@ -794,22 +795,9 @@ function isDestructive(packagePath, { files, oldFiles }) {
794795
* @returns {Promise<void[]>}
795796
*/
796797
function removeAllFiles(files, destination) {
797-
/** @type {(p: string, cb: (error?: Error | null) => void) => void} */
798-
const rimraf = require("rimraf");
798+
const options = { force: true, maxRetries: 3, recursive: true };
799799
return Promise.all(
800-
files.map(
801-
/** @type {(filename: string) => Promise<void>} */
802-
(filename) =>
803-
new Promise((resolve, reject) => {
804-
rimraf(path.join(destination, filename), (error) => {
805-
if (error) {
806-
reject(error);
807-
} else {
808-
resolve();
809-
}
810-
});
811-
})
812-
)
800+
files.map((filename) => fsp.rm(path.join(destination, filename), options))
813801
);
814802
}
815803

test/__mocks__/fs.js

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ fs.__toJSON = () => vol.toJSON();
1414

1515
fs.copyFile = (...args) => vol.copyFile(...args);
1616
fs.existsSync = (...args) => vol.existsSync(...args);
17-
fs.lstat = (...args) => vol.lstat(...args);
1817
fs.lstatSync = (...args) => vol.lstatSync(...args);
1918
fs.mkdir = (...args) => vol.mkdir(...args);
2019
fs.mkdirSync = (...args) => vol.mkdirSync(...args);
@@ -23,7 +22,6 @@ fs.readFileSync = (...args) => vol.readFileSync(...args);
2322
fs.readdir = (...args) => vol.readdir(...args);
2423
fs.readdirSync = (...args) => vol.readdirSync(...args);
2524
fs.statSync = (...args) => vol.statSync(...args);
26-
fs.unlink = (...args) => vol.unlink(...args);
2725
fs.writeFile = (...args) => vol.writeFile(...args);
2826

2927
module.exports = fs;

test/__mocks__/fs/promises.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
"use strict";
2+
3+
const fs = jest.createMockFromModule("fs/promises");
4+
5+
const { vol } = require("memfs");
6+
7+
fs.rm = (...args) => vol.promises.rm(...args);
8+
9+
module.exports = fs;

test/configure/removeAllFiles.test.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
"use strict";
33

44
jest.mock("fs");
5+
jest.mock("fs/promises");
56

67
const fs = require("fs");
78

yarn.lock

Lines changed: 0 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -2676,16 +2676,6 @@ __metadata:
26762676
languageName: node
26772677
linkType: hard
26782678

2679-
"@types/glob@npm:*":
2680-
version: 7.1.4
2681-
resolution: "@types/glob@npm:7.1.4"
2682-
dependencies:
2683-
"@types/minimatch": "*"
2684-
"@types/node": "*"
2685-
checksum: 6911a956448f5eddea1e4371f814bf92072e8ceedba83de6ce2a6745938a6f0327376e1c0072fa0d7b3b73d84e255aafda53c1dff148225cfe542a8cc5d54b02
2686-
languageName: node
2687-
linkType: hard
2688-
26892679
"@types/graceful-fs@npm:^4.1.2":
26902680
version: 4.1.5
26912681
resolution: "@types/graceful-fs@npm:4.1.5"
@@ -2737,13 +2727,6 @@ __metadata:
27372727
languageName: node
27382728
linkType: hard
27392729

2740-
"@types/minimatch@npm:*":
2741-
version: 3.0.5
2742-
resolution: "@types/minimatch@npm:3.0.5"
2743-
checksum: c41d136f67231c3131cf1d4ca0b06687f4a322918a3a5adddc87ce90ed9dbd175a3610adee36b106ae68c0b92c637c35e02b58c8a56c424f71d30993ea220b92
2744-
languageName: node
2745-
linkType: hard
2746-
27472730
"@types/minimist@npm:^1.2.0":
27482731
version: 1.2.2
27492732
resolution: "@types/minimist@npm:1.2.2"
@@ -2846,16 +2829,6 @@ __metadata:
28462829
languageName: node
28472830
linkType: hard
28482831

2849-
"@types/rimraf@npm:^3.0.0":
2850-
version: 3.0.2
2851-
resolution: "@types/rimraf@npm:3.0.2"
2852-
dependencies:
2853-
"@types/glob": "*"
2854-
"@types/node": "*"
2855-
checksum: b47fa302f46434cba704d20465861ad250df79467d3d289f9d6490d3aeeb41e8cb32dd80bd1a8fd833d1e185ac719fbf9be12e05ad9ce9be094d8ee8f1405347
2856-
languageName: node
2857-
linkType: hard
2858-
28592832
"@types/scheduler@npm:*":
28602833
version: 0.16.2
28612834
resolution: "@types/scheduler@npm:0.16.2"
@@ -10812,7 +10785,6 @@ fsevents@^2.3.2:
1081210785
"@types/mustache": ^4.0.0
1081310786
"@types/node": ^16.0.0
1081410787
"@types/prompts": ~2.0.0
10815-
"@types/rimraf": ^3.0.0
1081610788
"@types/semver": ^7.3.6
1081710789
"@types/uuid": ^8.3.1
1081810790
ajv: ^8.0.0
@@ -10827,7 +10799,6 @@ fsevents@^2.3.2:
1082710799
react-native: ^0.68.2
1082810800
react-native-macos: ^0.68.3
1082910801
react-native-windows: ^0.68.8
10830-
rimraf: ^3.0.0
1083110802
semantic-release: ^19.0.3
1083210803
semver: ^7.3.5
1083310804
suggestion-bot: ^1.0.0

0 commit comments

Comments
 (0)