From acdf26d8cd9b801e2353b4daf8d191acbc428479 Mon Sep 17 00:00:00 2001 From: v1rtl Date: Sun, 26 Jan 2025 12:44:40 +0200 Subject: [PATCH] refactor: replace `strip-ansi` with built-in `util.stripVTControlCharacters` (#9009) --- .changeset/pink-ties-roll.md | 12 +++++++++ cli/default-reporter/package.json | 3 +-- .../test/reportingUpdateCheck.ts | 2 +- dedupe/issues-renderer/package.json | 3 +-- dedupe/issues-renderer/test/index.ts | 2 +- lockfile/plugin-commands-audit/package.json | 1 - lockfile/plugin-commands-audit/test/index.ts | 2 +- package.json | 1 - packages/render-peer-issues/package.json | 3 +-- packages/render-peer-issues/test/index.ts | 2 +- pnpm-lock.yaml | 27 ------------------- pnpm-workspace.yaml | 1 - pnpm/package.json | 1 - pnpm/src/main.ts | 2 +- renovate.json | 4 --- .../plugin-commands-licenses/package.json | 3 +-- .../plugin-commands-licenses/test/index.ts | 2 +- .../plugin-commands-listing/package.json | 1 - .../plugin-commands-listing/test/index.ts | 2 +- .../plugin-commands-listing/test/recursive.ts | 2 +- reviewing/plugin-commands-listing/test/why.ts | 2 +- .../plugin-commands-outdated/package.json | 3 +-- .../plugin-commands-outdated/src/outdated.ts | 2 +- .../plugin-commands-outdated/test/index.ts | 2 +- .../test/recursive.ts | 2 +- 25 files changed, 29 insertions(+), 58 deletions(-) create mode 100644 .changeset/pink-ties-roll.md diff --git a/.changeset/pink-ties-roll.md b/.changeset/pink-ties-roll.md new file mode 100644 index 0000000000..554794e79a --- /dev/null +++ b/.changeset/pink-ties-roll.md @@ -0,0 +1,12 @@ +--- +"@pnpm/plugin-commands-licenses": patch +"@pnpm/plugin-commands-outdated": patch +"@pnpm/plugin-commands-listing": patch +"@pnpm/plugin-commands-audit": patch +"@pnpm/render-peer-issues": patch +"@pnpm/dedupe.issues-renderer": patch +"@pnpm/default-reporter": patch +"pnpm": patch +--- + +Replace `strip-ansi` with the built-in `util.stripVTControlCharacters` [#9009](https://github.com/pnpm/pnpm/pull/9009). diff --git a/cli/default-reporter/package.json b/cli/default-reporter/package.json index 9578ed0125..5d34c775fe 100644 --- a/cli/default-reporter/package.json +++ b/cli/default-reporter/package.json @@ -62,8 +62,7 @@ "@types/semver": "catalog:", "ghooks": "catalog:", "load-json-file": "catalog:", - "normalize-newline": "catalog:", - "strip-ansi": "catalog:" + "normalize-newline": "catalog:" }, "homepage": "https://github.com/pnpm/pnpm/blob/main/cli/default-reporter#readme", "funding": "https://opencollective.com/pnpm", diff --git a/cli/default-reporter/test/reportingUpdateCheck.ts b/cli/default-reporter/test/reportingUpdateCheck.ts index b6b8f66092..b726643870 100644 --- a/cli/default-reporter/test/reportingUpdateCheck.ts +++ b/cli/default-reporter/test/reportingUpdateCheck.ts @@ -3,7 +3,7 @@ import { updateCheckLogger } from '@pnpm/core-loggers' import { toOutput$ } from '@pnpm/default-reporter' import { createStreamParser } from '@pnpm/logger' import { take } from 'rxjs/operators' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' test('does not print update if latest is less than current', (done) => { const output$ = toOutput$({ diff --git a/dedupe/issues-renderer/package.json b/dedupe/issues-renderer/package.json index 616195a0d1..f0b2815bff 100644 --- a/dedupe/issues-renderer/package.json +++ b/dedupe/issues-renderer/package.json @@ -35,8 +35,7 @@ }, "devDependencies": { "@pnpm/dedupe.issues-renderer": "workspace:*", - "@types/archy": "catalog:", - "strip-ansi": "catalog:" + "@types/archy": "catalog:" }, "exports": { ".": "./lib/index.js" diff --git a/dedupe/issues-renderer/test/index.ts b/dedupe/issues-renderer/test/index.ts index 9aa938e196..c6249cc440 100644 --- a/dedupe/issues-renderer/test/index.ts +++ b/dedupe/issues-renderer/test/index.ts @@ -1,5 +1,5 @@ import { renderDedupeCheckIssues } from '@pnpm/dedupe.issues-renderer' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' describe('renderDedupeCheckIssues', () => { test('prints removed packages and updated resolutions', () => { diff --git a/lockfile/plugin-commands-audit/package.json b/lockfile/plugin-commands-audit/package.json index 75e98c42bb..c39083c6cd 100644 --- a/lockfile/plugin-commands-audit/package.json +++ b/lockfile/plugin-commands-audit/package.json @@ -38,7 +38,6 @@ "@types/zkochan__table": "catalog:", "load-json-file": "catalog:", "nock": "catalog:", - "strip-ansi": "catalog:", "tempy": "catalog:" }, "dependencies": { diff --git a/lockfile/plugin-commands-audit/test/index.ts b/lockfile/plugin-commands-audit/test/index.ts index fff330a375..a496b51671 100644 --- a/lockfile/plugin-commands-audit/test/index.ts +++ b/lockfile/plugin-commands-audit/test/index.ts @@ -4,7 +4,7 @@ import { audit } from '@pnpm/plugin-commands-audit' import { install } from '@pnpm/plugin-commands-installation' import { AuditEndpointNotExistsError } from '@pnpm/audit' import nock from 'nock' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' import * as responses from './utils/responses' const f = fixtures(path.join(__dirname, 'fixtures')) diff --git a/package.json b/package.json index a50f2235d7..c56cda9c34 100644 --- a/package.json +++ b/package.json @@ -151,7 +151,6 @@ "ps-list", "sort-keys", "string-length", - "strip-ansi", "strip-bom", "tempy", "unique-string", diff --git a/packages/render-peer-issues/package.json b/packages/render-peer-issues/package.json index 76d06d54a2..f93e13f1b0 100644 --- a/packages/render-peer-issues/package.json +++ b/packages/render-peer-issues/package.json @@ -41,8 +41,7 @@ "devDependencies": { "@pnpm/render-peer-issues": "workspace:*", "@types/archy": "catalog:", - "@types/semver": "catalog:", - "strip-ansi": "catalog:" + "@types/semver": "catalog:" }, "exports": { ".": "./lib/index.js" diff --git a/packages/render-peer-issues/test/index.ts b/packages/render-peer-issues/test/index.ts index da5b993218..424c146305 100644 --- a/packages/render-peer-issues/test/index.ts +++ b/packages/render-peer-issues/test/index.ts @@ -1,5 +1,5 @@ import { renderPeerIssues } from '@pnpm/render-peer-issues' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' test('renderPeerIssues()', () => { expect(stripAnsi(renderPeerIssues({ diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 44f0c53d85..71895b1330 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -588,9 +588,6 @@ catalogs: string-length: specifier: ^4.0.2 version: 4.0.2 - strip-ansi: - specifier: ^6.0.1 - version: 6.0.1 strip-bom: specifier: ^4.0.0 version: 4.0.0 @@ -1364,9 +1361,6 @@ importers: normalize-newline: specifier: 'catalog:' version: 3.0.0 - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 cli/parse-cli-args: dependencies: @@ -1752,9 +1746,6 @@ importers: '@types/archy': specifier: 'catalog:' version: 0.0.33 - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 dedupe/types: devDependencies: @@ -3413,9 +3404,6 @@ importers: nock: specifier: 'catalog:' version: 13.3.4 - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 tempy: specifier: 'catalog:' version: 1.0.1 @@ -4034,9 +4022,6 @@ importers: '@types/semver': specifier: 'catalog:' version: 7.5.3 - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 packages/types: devDependencies: @@ -6070,9 +6055,6 @@ importers: split-cmd: specifier: 'catalog:' version: 1.1.0 - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 symlink-dir: specifier: 'catalog:' version: 6.0.4 @@ -6989,9 +6971,6 @@ importers: '@types/zkochan__table': specifier: 'catalog:' version: '@types/table@6.0.0' - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 reviewing/plugin-commands-listing: dependencies: @@ -7050,9 +7029,6 @@ importers: execa: specifier: 'catalog:' version: safe-execa@0.1.2 - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 write-yaml-file: specifier: 'catalog:' version: 5.0.0 @@ -7113,9 +7089,6 @@ importers: render-help: specifier: 'catalog:' version: 1.0.3 - strip-ansi: - specifier: 'catalog:' - version: 6.0.1 devDependencies: '@pnpm/constants': specifier: workspace:* diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 2fe7904d02..49d302d402 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -235,7 +235,6 @@ catalog: ssri: 10.0.5 stacktracey: ^2.1.8 string-length: ^4.0.2 - strip-ansi: ^6.0.1 strip-bom: ^4.0.0 strip-comments-strings: 1.2.0 symlink-dir: ^6.0.4 diff --git a/pnpm/package.json b/pnpm/package.json index 6c9c336ad9..ed32aac396 100644 --- a/pnpm/package.json +++ b/pnpm/package.json @@ -113,7 +113,6 @@ "render-help": "catalog:", "semver": "catalog:", "split-cmd": "catalog:", - "strip-ansi": "catalog:", "symlink-dir": "catalog:", "tempy": "catalog:", "tree-kill": "catalog:", diff --git a/pnpm/src/main.ts b/pnpm/src/main.ts index 3bd3298b38..8626ea53f9 100644 --- a/pnpm/src/main.ts +++ b/pnpm/src/main.ts @@ -22,7 +22,7 @@ import chalk from 'chalk' import { isCI } from 'ci-info' import path from 'path' import isEmpty from 'ramda/src/isEmpty' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' import { checkForUpdates } from './checkForUpdates' import { pnpmCmds, rcOptionsTypes, skipPackageManagerCheckForCommand } from './cmd' import { formatUnknownOptionsError } from './formatError' diff --git a/renovate.json b/renovate.json index 6faf04f8d6..e3ce58429c 100644 --- a/renovate.json +++ b/renovate.json @@ -111,10 +111,6 @@ "packageNames": ["p-defer"], "allowedVersions": "^3.0.0" }, - { - "packageNames": ["strip-ansi"], - "allowedVersions": "^6.0.0" - }, { "packageNames": ["escape-string-regexp"], "allowedVersions": "^4.0.0" diff --git a/reviewing/plugin-commands-licenses/package.json b/reviewing/plugin-commands-licenses/package.json index d8d1c5e3fd..d136c3c1a5 100644 --- a/reviewing/plugin-commands-licenses/package.json +++ b/reviewing/plugin-commands-licenses/package.json @@ -40,8 +40,7 @@ "@pnpm/workspace.filter-packages-from-dir": "workspace:*", "@types/ramda": "catalog:", "@types/semver": "catalog:", - "@types/zkochan__table": "catalog:", - "strip-ansi": "catalog:" + "@types/zkochan__table": "catalog:" }, "dependencies": { "@pnpm/cli-utils": "workspace:*", diff --git a/reviewing/plugin-commands-licenses/test/index.ts b/reviewing/plugin-commands-licenses/test/index.ts index cbdacd29f8..b8142b3202 100644 --- a/reviewing/plugin-commands-licenses/test/index.ts +++ b/reviewing/plugin-commands-licenses/test/index.ts @@ -6,7 +6,7 @@ import { licenses } from '@pnpm/plugin-commands-licenses' import { install } from '@pnpm/plugin-commands-installation' import { tempDir } from '@pnpm/prepare' import { fixtures } from '@pnpm/test-fixtures' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' import { DEFAULT_OPTS } from './utils' import { filterPackagesFromDir } from '@pnpm/workspace.filter-packages-from-dir' diff --git a/reviewing/plugin-commands-listing/package.json b/reviewing/plugin-commands-listing/package.json index 472e0d12f2..578b53ae29 100644 --- a/reviewing/plugin-commands-listing/package.json +++ b/reviewing/plugin-commands-listing/package.json @@ -39,7 +39,6 @@ "@pnpm/workspace.filter-packages-from-dir": "workspace:*", "@types/ramda": "catalog:", "execa": "catalog:", - "strip-ansi": "catalog:", "write-yaml-file": "catalog:" }, "dependencies": { diff --git a/reviewing/plugin-commands-listing/test/index.ts b/reviewing/plugin-commands-listing/test/index.ts index ff17eabee1..d528ab0c31 100644 --- a/reviewing/plugin-commands-listing/test/index.ts +++ b/reviewing/plugin-commands-listing/test/index.ts @@ -6,7 +6,7 @@ import { list, why } from '@pnpm/plugin-commands-listing' import { prepare, preparePackages } from '@pnpm/prepare' import execa from 'execa' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' import { sync as writeYamlFile } from 'write-yaml-file' const pnpmBin = path.join(__dirname, '../../../pnpm/bin/pnpm.cjs') diff --git a/reviewing/plugin-commands-listing/test/recursive.ts b/reviewing/plugin-commands-listing/test/recursive.ts index 7d573a9980..233b0f7afc 100644 --- a/reviewing/plugin-commands-listing/test/recursive.ts +++ b/reviewing/plugin-commands-listing/test/recursive.ts @@ -6,7 +6,7 @@ import { install } from '@pnpm/plugin-commands-installation' import { list, why } from '@pnpm/plugin-commands-listing' import { prepare, preparePackages } from '@pnpm/prepare' import { addDistTag } from '@pnpm/registry-mock' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' import { sync as writeYamlFile } from 'write-yaml-file' import { DEFAULT_OPTS } from './utils' diff --git a/reviewing/plugin-commands-listing/test/why.ts b/reviewing/plugin-commands-listing/test/why.ts index 0a1519c22f..03b9a9f497 100644 --- a/reviewing/plugin-commands-listing/test/why.ts +++ b/reviewing/plugin-commands-listing/test/why.ts @@ -4,7 +4,7 @@ import { why } from '@pnpm/plugin-commands-listing' import { prepare } from '@pnpm/prepare' import { REGISTRY_MOCK_PORT } from '@pnpm/registry-mock' import execa from 'execa' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' const pnpmBin = path.join(__dirname, '../../../pnpm/bin/pnpm.cjs') diff --git a/reviewing/plugin-commands-outdated/package.json b/reviewing/plugin-commands-outdated/package.json index a23a69c9e1..750b356161 100644 --- a/reviewing/plugin-commands-outdated/package.json +++ b/reviewing/plugin-commands-outdated/package.json @@ -58,8 +58,7 @@ "@zkochan/table": "catalog:", "chalk": "catalog:", "ramda": "catalog:", - "render-help": "catalog:", - "strip-ansi": "catalog:" + "render-help": "catalog:" }, "funding": "https://opencollective.com/pnpm", "exports": { diff --git a/reviewing/plugin-commands-outdated/src/outdated.ts b/reviewing/plugin-commands-outdated/src/outdated.ts index e7377b618a..a628c2bf83 100644 --- a/reviewing/plugin-commands-outdated/src/outdated.ts +++ b/reviewing/plugin-commands-outdated/src/outdated.ts @@ -20,7 +20,7 @@ import chalk from 'chalk' import pick from 'ramda/src/pick' import sortWith from 'ramda/src/sortWith' import renderHelp from 'render-help' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' import { DEFAULT_COMPARATORS, NAME_COMPARATOR, diff --git a/reviewing/plugin-commands-outdated/test/index.ts b/reviewing/plugin-commands-outdated/test/index.ts index 0627af5078..a8a073f0c0 100644 --- a/reviewing/plugin-commands-outdated/test/index.ts +++ b/reviewing/plugin-commands-outdated/test/index.ts @@ -7,7 +7,7 @@ import { outdated } from '@pnpm/plugin-commands-outdated' import { prepare, tempDir } from '@pnpm/prepare' import { REGISTRY_MOCK_PORT } from '@pnpm/registry-mock' import { fixtures } from '@pnpm/test-fixtures' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' const f = fixtures(__dirname) const hasOutdatedDepsFixture = f.find('has-outdated-deps') diff --git a/reviewing/plugin-commands-outdated/test/recursive.ts b/reviewing/plugin-commands-outdated/test/recursive.ts index 7aaa23d9fd..ef4ec2b4ec 100644 --- a/reviewing/plugin-commands-outdated/test/recursive.ts +++ b/reviewing/plugin-commands-outdated/test/recursive.ts @@ -3,7 +3,7 @@ import { filterPackagesFromDir } from '@pnpm/workspace.filter-packages-from-dir' import { install } from '@pnpm/plugin-commands-installation' import { outdated } from '@pnpm/plugin-commands-outdated' import { preparePackages } from '@pnpm/prepare' -import stripAnsi from 'strip-ansi' +import { stripVTControlCharacters as stripAnsi } from 'util' import { DEFAULT_OPTS, DEFAULT_OUTDATED_OPTS } from './utils' test('pnpm recursive outdated', async () => {