Skip to content

Commit

Permalink
clean speed improvement
Browse files Browse the repository at this point in the history
  • Loading branch information
arietrouw committed Mar 8, 2024
1 parent f4aa4dc commit e96febe
Show file tree
Hide file tree
Showing 7 changed files with 61 additions and 67 deletions.
2 changes: 1 addition & 1 deletion packages/eslint-config-base/package.json
Expand Up @@ -38,7 +38,7 @@
"description": "ESLint Config used throughout XY Labs TypeScript/JavaScript libraries and react projects",
"devDependencies": {
"@swc/cli": "^0.3.10",
"@swc/core": "^1.4.5",
"@swc/core": "^1.4.6",
"@types/node": "^20.11.25",
"@xylabs/ts-scripts-yarn3": "workspace:~",
"@xylabs/tsconfig": "workspace:~",
Expand Down
2 changes: 1 addition & 1 deletion packages/eslint-config/package.json
Expand Up @@ -39,7 +39,7 @@
"description": "ESLint Config used throughout XY Labs TypeScript/JavaScript libraries and react projects",
"devDependencies": {
"@swc/cli": "^0.3.10",
"@swc/core": "^1.4.5",
"@swc/core": "^1.4.6",
"@types/node": "^20.11.25",
"@xylabs/ts-scripts-yarn3": "workspace:~",
"@xylabs/tsconfig": "workspace:~",
Expand Down
7 changes: 3 additions & 4 deletions packages/ts-scripts-yarn3/src/actions/clean.ts
@@ -1,6 +1,5 @@
import { runSteps, runStepsAsync } from '../lib'
import { cleanDocs } from './clean-docs'
import { cleanESLint } from './clean-eslint'
import { runStepsAsync } from '../lib'


export interface CleanParams {
pkg?: string
Expand All @@ -22,5 +21,5 @@ export const cleanPackage = ({ pkg }: CleanPackageParams) => {

export const cleanAll = ({ verbose }: CleanParams) => {
const verboseOptions = verbose ? ['--verbose'] : ['--no-verbose']
return cleanESLint() + cleanDocs() + runSteps('Clean', [['yarn', ['workspaces foreach', '-pA', ...verboseOptions, 'run', 'package-clean']]])
return runStepsAsync('Clean', [['yarn', ['workspaces foreach', '-pA', '--jobs 64', ...verboseOptions, 'run', 'package-clean']]])
}
10 changes: 4 additions & 6 deletions packages/ts-scripts-yarn3/src/actions/package/clean-outputs.ts
@@ -1,17 +1,15 @@
import { rmSync } from 'node:fs'
import { rm } from 'node:fs/promises'
import path from 'node:path'

import chalk from 'chalk'

export const packageCleanOutputs = () => {
export const packageCleanOutputs = async () => {
const pkg = process.env.INIT_CWD ?? '.'
const pkgName = process.env.npm_package_name
const folders: string[] = [path.join(pkg, 'dist'), path.join(pkg, 'build'), path.join(pkg, 'docs')]
console.log(chalk.green(`Cleaning Outputs [${pkgName}]`))

const dist = path.join(pkg, 'dist')
rmSync(dist, { force: true, recursive: true })
await Promise.all(folders.map((folder) => rm(folder, { force: true, recursive: true })))

const build = path.join(pkg, 'build')
rmSync(build, { force: true, recursive: true })
return 0
}
@@ -1,18 +1,15 @@
import { rm } from 'node:fs/promises'
import path from 'node:path'

import chalk from 'chalk'
import { rimrafSync } from 'rimraf'

export const packageCleanTypescript = () => {
export const packageCleanTypescript = async () => {
const pkg = process.env.INIT_CWD ?? '.'
const pkgName = process.env.npm_package_name
console.log(chalk.green(`Cleaning Typescript [${pkgName}]`))
const files: string[] = [path.join(pkg, '*.tsbuildinfo'), path.join(pkg, '.tsconfig.*'), path.join(pkg, '.eslintcache')]

const buildInfo = path.join(pkg, '*.tsbuildinfo')
rimrafSync(buildInfo, { glob: true })

const tsConfig = path.join(pkg, '.tsconfig.*')
rimrafSync(tsConfig, { glob: true })
await Promise.all(files.map((file) => rm(file, { force: true, recursive: true })))

return 0
}
4 changes: 2 additions & 2 deletions packages/ts-scripts-yarn3/src/actions/package/clean.ts
@@ -1,6 +1,6 @@
import { packageCleanOutputs } from './clean-outputs'
import { packageCleanTypescript } from './clean-typescript'

export const packageClean = () => {
return packageCleanOutputs() + packageCleanTypescript()
export const packageClean = async () => {
return (await Promise.all([packageCleanOutputs(), packageCleanTypescript()])).reduce((prev, value) => prev + value, 0)
}
92 changes: 46 additions & 46 deletions yarn.lock
Expand Up @@ -2672,90 +2672,90 @@ __metadata:
languageName: node
linkType: hard

"@swc/core-darwin-arm64@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-darwin-arm64@npm:1.4.5"
"@swc/core-darwin-arm64@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-darwin-arm64@npm:1.4.6"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard

"@swc/core-darwin-x64@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-darwin-x64@npm:1.4.5"
"@swc/core-darwin-x64@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-darwin-x64@npm:1.4.6"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard

"@swc/core-linux-arm-gnueabihf@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-linux-arm-gnueabihf@npm:1.4.5"
"@swc/core-linux-arm-gnueabihf@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-linux-arm-gnueabihf@npm:1.4.6"
conditions: os=linux & cpu=arm
languageName: node
linkType: hard

"@swc/core-linux-arm64-gnu@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-linux-arm64-gnu@npm:1.4.5"
"@swc/core-linux-arm64-gnu@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-linux-arm64-gnu@npm:1.4.6"
conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node
linkType: hard

"@swc/core-linux-arm64-musl@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-linux-arm64-musl@npm:1.4.5"
"@swc/core-linux-arm64-musl@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-linux-arm64-musl@npm:1.4.6"
conditions: os=linux & cpu=arm64 & libc=musl
languageName: node
linkType: hard

"@swc/core-linux-x64-gnu@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-linux-x64-gnu@npm:1.4.5"
"@swc/core-linux-x64-gnu@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-linux-x64-gnu@npm:1.4.6"
conditions: os=linux & cpu=x64 & libc=glibc
languageName: node
linkType: hard

"@swc/core-linux-x64-musl@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-linux-x64-musl@npm:1.4.5"
"@swc/core-linux-x64-musl@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-linux-x64-musl@npm:1.4.6"
conditions: os=linux & cpu=x64 & libc=musl
languageName: node
linkType: hard

"@swc/core-win32-arm64-msvc@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-win32-arm64-msvc@npm:1.4.5"
"@swc/core-win32-arm64-msvc@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-win32-arm64-msvc@npm:1.4.6"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard

"@swc/core-win32-ia32-msvc@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-win32-ia32-msvc@npm:1.4.5"
"@swc/core-win32-ia32-msvc@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-win32-ia32-msvc@npm:1.4.6"
conditions: os=win32 & cpu=ia32
languageName: node
linkType: hard

"@swc/core-win32-x64-msvc@npm:1.4.5":
version: 1.4.5
resolution: "@swc/core-win32-x64-msvc@npm:1.4.5"
"@swc/core-win32-x64-msvc@npm:1.4.6":
version: 1.4.6
resolution: "@swc/core-win32-x64-msvc@npm:1.4.6"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard

"@swc/core@npm:^1.4.5":
version: 1.4.5
resolution: "@swc/core@npm:1.4.5"
"@swc/core@npm:^1.4.6":
version: 1.4.6
resolution: "@swc/core@npm:1.4.6"
dependencies:
"@swc/core-darwin-arm64": 1.4.5
"@swc/core-darwin-x64": 1.4.5
"@swc/core-linux-arm-gnueabihf": 1.4.5
"@swc/core-linux-arm64-gnu": 1.4.5
"@swc/core-linux-arm64-musl": 1.4.5
"@swc/core-linux-x64-gnu": 1.4.5
"@swc/core-linux-x64-musl": 1.4.5
"@swc/core-win32-arm64-msvc": 1.4.5
"@swc/core-win32-ia32-msvc": 1.4.5
"@swc/core-win32-x64-msvc": 1.4.5
"@swc/core-darwin-arm64": 1.4.6
"@swc/core-darwin-x64": 1.4.6
"@swc/core-linux-arm-gnueabihf": 1.4.6
"@swc/core-linux-arm64-gnu": 1.4.6
"@swc/core-linux-arm64-musl": 1.4.6
"@swc/core-linux-x64-gnu": 1.4.6
"@swc/core-linux-x64-musl": 1.4.6
"@swc/core-win32-arm64-msvc": 1.4.6
"@swc/core-win32-ia32-msvc": 1.4.6
"@swc/core-win32-x64-msvc": 1.4.6
"@swc/counter": ^0.1.2
"@swc/types": ^0.1.5
peerDependencies:
Expand Down Expand Up @@ -2784,7 +2784,7 @@ __metadata:
peerDependenciesMeta:
"@swc/helpers":
optional: true
checksum: 9f10e63a71cf6bc9b41a196c598e8757b414d4c438ed7da201e702bc67935905c2d97b8e594fe2518a712eb220b22f63de81b249139b9f32988164b89acf985d
checksum: d7e41f9dd6264bcf731aa0f4536221dfb3e9d1874d45231e88a3255d12ba4988d1bbf24c552fd2a026ab21e6274a93c8da4e33f4d4e414f413638b5a0f519913
languageName: node
linkType: hard

Expand Down Expand Up @@ -3600,7 +3600,7 @@ __metadata:
resolution: "@xylabs/eslint-config-base@workspace:packages/eslint-config-base"
dependencies:
"@swc/cli": ^0.3.10
"@swc/core": ^1.4.5
"@swc/core": ^1.4.6
"@types/node": ^20.11.25
"@typescript-eslint/eslint-plugin": ^7.1.1
"@typescript-eslint/parser": ^7.1.1
Expand Down Expand Up @@ -3710,7 +3710,7 @@ __metadata:
resolution: "@xylabs/eslint-config@workspace:packages/eslint-config"
dependencies:
"@swc/cli": ^0.3.10
"@swc/core": ^1.4.5
"@swc/core": ^1.4.6
"@types/node": ^20.11.25
"@typescript-eslint/eslint-plugin": ^7.1.1
"@typescript-eslint/parser": ^7.1.1
Expand Down

0 comments on commit e96febe

Please sign in to comment.