Skip to content

Commit

Permalink
chore: cross-platform rm -rf script (#49529)
Browse files Browse the repository at this point in the history
- Closes #42433
- Closes #43105
- Closes #49522
  • Loading branch information
styfle committed May 10, 2023
1 parent f02cc9f commit 11a7117
Show file tree
Hide file tree
Showing 11 changed files with 48 additions and 54 deletions.
7 changes: 3 additions & 4 deletions package.json
Expand Up @@ -8,7 +8,7 @@
"scripts": {
"new-error": "plop error",
"new-test": "plop test",
"clean": "lerna clean -y && lerna bootstrap && lerna run clean && lerna exec 'rm -rf ./dist'",
"clean": "lerna clean -y && lerna bootstrap && lerna run clean && lerna exec 'node ../../scripts/rm.mjs dist'",
"build": "turbo run build",
"lerna": "lerna",
"dev": "turbo run dev --parallel",
Expand Down Expand Up @@ -45,7 +45,7 @@
"next-with-deps": "./scripts/next-with-deps.sh",
"next": "cross-env NEXT_TELEMETRY_DISABLED=1 node --trace-deprecation --enable-source-maps packages/next/dist/bin/next",
"next-no-sourcemaps": "cross-env NEXT_TELEMETRY_DISABLED=1 node --trace-deprecation packages/next/dist/bin/next",
"clean-trace-jaeger": "rm -rf test/integration/basic/.next && TRACE_TARGET=JAEGER pnpm next build test/integration/basic",
"clean-trace-jaeger": "node scripts/rm.mjs test/integration/basic/.next && TRACE_TARGET=JAEGER pnpm next build test/integration/basic",
"debug": "cross-env NEXT_TELEMETRY_DISABLED=1 node --inspect packages/next/dist/bin/next",
"postinstall": "git config index.skipHash false && node scripts/install-native.mjs",
"version": "npx pnpm@7.24.3 install --no-frozen-lockfile && IS_PUBLISH=yes ./scripts/check-pre-compiled.sh && git add .",
Expand Down Expand Up @@ -198,11 +198,11 @@
"react": "18.2.0",
"react-17": "npm:react@17.0.2",
"react-builtin": "npm:react@18.3.0-canary-16d053d59-20230506",
"react-experimental-builtin": "npm:react@0.0.0-experimental-16d053d59-20230506",
"react-dom": "18.2.0",
"react-dom-17": "npm:react-dom@17.0.2",
"react-dom-builtin": "npm:react-dom@18.3.0-canary-16d053d59-20230506",
"react-dom-experimental-builtin": "npm:react-dom@0.0.0-experimental-16d053d59-20230506",
"react-experimental-builtin": "npm:react@0.0.0-experimental-16d053d59-20230506",
"react-server-dom-webpack": "18.3.0-canary-16d053d59-20230506",
"react-server-dom-webpack-experimental": "npm:react-server-dom-webpack@0.0.0-experimental-16d053d59-20230506",
"react-ssr-prepass": "1.0.8",
Expand All @@ -212,7 +212,6 @@
"release": "6.3.1",
"request-promise-core": "1.1.2",
"resolve-from": "5.0.0",
"rimraf": "3.0.2",
"sass": "1.54.0",
"satori": "0.4.4",
"scheduler-builtin": "npm:scheduler@0.24.0-canary-16d053d59-20230506",
Expand Down
4 changes: 2 additions & 2 deletions packages/create-next-app/helpers/git.ts
@@ -1,7 +1,7 @@
/* eslint-disable import/no-extraneous-dependencies */
import { execSync } from 'child_process'
import path from 'path'
import rimraf from 'rimraf'
import fs from 'fs'

function isInGitRepository(): boolean {
try {
Expand Down Expand Up @@ -40,7 +40,7 @@ export function tryGitInit(root: string): boolean {
} catch (e) {
if (didInit) {
try {
rimraf.sync(path.join(root, '.git'))
fs.rmSync(path.join(root, '.git'), { recursive: true, force: true })
} catch (_) {}
}
return false
Expand Down
2 changes: 1 addition & 1 deletion packages/create-next-app/helpers/make-dir.ts
Expand Up @@ -3,6 +3,6 @@ import fs from 'fs'
export function makeDir(
root: string,
options = { recursive: true }
): Promise<void> {
): Promise<string | undefined> {
return fs.promises.mkdir(root, options)
}
5 changes: 2 additions & 3 deletions packages/create-next-app/package.json
Expand Up @@ -22,7 +22,7 @@
],
"scripts": {
"dev": "ncc build ./index.ts -w -o dist/",
"prerelease": "rimraf ./dist/",
"prerelease": "node ../../scripts/rm.mjs dist",
"release": "ncc build ./index.ts -o ./dist/ --minify --no-cache --no-source-map-register",
"prepublishOnly": "cd ../../ && turbo run build",
"build": "pnpm release",
Expand All @@ -33,9 +33,8 @@
"@types/ci-info": "2.0.0",
"@types/cross-spawn": "6.0.0",
"@types/glob": "7.1.1",
"@types/node": "^12.6.8",
"@types/node": "^16.8.0",
"@types/prompts": "2.0.1",
"@types/rimraf": "3.0.0",
"@types/tar": "4.0.3",
"@types/validate-npm-package-name": "3.0.0",
"@vercel/ncc": "0.34.0",
Expand Down
2 changes: 1 addition & 1 deletion packages/font/package.json
Expand Up @@ -13,7 +13,7 @@
],
"license": "MIT",
"scripts": {
"build": "rimraf dist && pnpm ncc-fontkit && tsc -d -p tsconfig.json",
"build": "node ../../scripts/rm.mjs dist && pnpm ncc-fontkit && tsc -d -p tsconfig.json",
"prepublishOnly": "cd ../../ && turbo run build",
"dev": "pnpm ncc-fontkit && tsc -d -w -p tsconfig.json",
"typescript": "tsec --noEmit -p tsconfig.json",
Expand Down
5 changes: 2 additions & 3 deletions packages/next-env/package.json
Expand Up @@ -22,7 +22,7 @@
],
"scripts": {
"dev": "ncc build ./index.ts -w -o dist/",
"prerelease": "rimraf ./dist/",
"prerelease": "node ../../scripts/rm.mjs dist",
"types": "tsc index.ts --declaration --emitDeclarationOnly --declarationDir dist --esModuleInterop",
"release": "ncc build ./index.ts -o ./dist/ --minify --no-cache --no-source-map-register",
"build": "pnpm release && pnpm types",
Expand All @@ -31,7 +31,6 @@
"devDependencies": {
"@vercel/ncc": "0.34.0",
"dotenv": "10.0.0",
"dotenv-expand": "8.0.1",
"rimraf": "3.0.2"
"dotenv-expand": "8.0.1"
}
}
2 changes: 1 addition & 1 deletion packages/next-swc/package.json
Expand Up @@ -3,7 +3,7 @@
"version": "13.4.2-canary.4",
"private": true,
"scripts": {
"clean": "rm -rf ./native/*",
"clean": "node ../../scripts/rm.mjs native",
"build-native": "napi build --platform -p next-swc-napi --cargo-cwd ../../ --cargo-name next_swc_napi --features plugin,rustls-tls --js false native",
"build-native-woa": "napi build --platform -p next-swc-napi --cargo-cwd ../../ --cargo-name next_swc_napi --cargo-flags=--no-default-features --features plugin,native-tls --js false native",
"build-native-no-plugin": "napi build --platform -p next-swc-napi --cargo-cwd ../../ --cargo-name next_swc_napi --js false native",
Expand Down
2 changes: 1 addition & 1 deletion packages/react-dev-overlay/package.json
Expand Up @@ -12,7 +12,7 @@
"author": "Joe Haddad <timer@vercel.com>",
"license": "MIT",
"scripts": {
"build": "rimraf dist && tsc -d -p tsconfig.json",
"build": "node ../../scripts/rm.mjs dist && tsc -d -p tsconfig.json",
"prepublishOnly": "cd ../../ && turbo run build",
"dev": "tsc -d -w -p tsconfig.json",
"typescript": "tsec --noEmit -p tsconfig.json"
Expand Down
2 changes: 1 addition & 1 deletion packages/react-refresh-utils/package.json
Expand Up @@ -12,7 +12,7 @@
"author": "Joe Haddad <timer@vercel.com>",
"license": "MIT",
"scripts": {
"build": "rimraf dist && tsc -d -p tsconfig.json",
"build": "node ../../scripts/rm.mjs dist && tsc -d -p tsconfig.json",
"prepublishOnly": "cd ../../ && turbo run build",
"dev": "tsc -d -w -p tsconfig.json"
},
Expand Down
58 changes: 21 additions & 37 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

13 changes: 13 additions & 0 deletions scripts/rm.mjs
@@ -0,0 +1,13 @@
// @ts-check
import { rm } from 'fs/promises'
import { join } from 'path'

const args = process.argv.slice(2)
if (args.length === 0) {
throw new Error('rm.mjs: requires a least one parameter')
}
for (const arg of args) {
const path = join(process.cwd(), arg)
console.log(`rm.mjs: deleting path "${path}"`)
await rm(path, { recursive: true, force: true })
}

0 comments on commit 11a7117

Please sign in to comment.