From 7f81da30b8689e1910eb4832080117ade72d937f Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Fri, 31 Jul 2026 02:03:04 +0200 Subject: [PATCH] refactor(default-reporter): drop the runtime dependency on config.reader (#13517) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every import was type-only, so the declared dependency shipped the whole config-reader tree to reporter consumers for nothing — Bit's mirror-constrained installs were pulling config.env-replace@4.x through it. The reporter now declares ReporterPnpmConfig, the structural slice of the config it actually reads; the pnpm CLI's full Config satisfies it unchanged. --- .changeset/reporter-own-config-type.md | 6 + pnpm-lock.yaml | 161 +++++++++--------- pnpm11/cli/default-reporter/package.json | 1 - .../src/ReporterPnpmConfig.ts | 24 +++ pnpm11/cli/default-reporter/src/index.ts | 6 +- .../cli/default-reporter/src/reportError.ts | 8 +- .../src/reporterForClient/index.ts | 6 +- .../reporterForClient/reportIgnoredBuilds.ts | 5 +- .../src/reporterForClient/reportMisc.ts | 4 +- .../src/reporterForClient/reportSummary.ts | 6 +- pnpm11/cli/default-reporter/test/index.ts | 48 +++--- .../default-reporter/test/reporterRenderer.ts | 9 +- .../test/reportingDeprecations.ts | 4 +- .../test/reportingLockfileVerification.ts | 13 +- .../test/reportingProgress.ts | 22 +-- .../default-reporter/test/reportingScope.ts | 11 +- .../test/reportingUpdateCheck.ts | 9 +- pnpm11/cli/default-reporter/tsconfig.json | 3 - 18 files changed, 187 insertions(+), 159 deletions(-) create mode 100644 .changeset/reporter-own-config-type.md create mode 100644 pnpm11/cli/default-reporter/src/ReporterPnpmConfig.ts diff --git a/.changeset/reporter-own-config-type.md b/.changeset/reporter-own-config-type.md new file mode 100644 index 0000000000..f478d895b1 --- /dev/null +++ b/.changeset/reporter-own-config-type.md @@ -0,0 +1,6 @@ +--- +"@pnpm/cli.default-reporter": patch +"pnpm": patch +--- + +The default reporter no longer depends on `@pnpm/config.reader` at runtime: it declares its own minimal `ReporterPnpmConfig` type for the config fields it reads. Hosts that embed the reporter no longer pull in the config-reader dependency tree. diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 109a515e4d..67d62e4399 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1395,7 +1395,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/cli.utils': specifier: workspace:* version: link:../../cli/utils @@ -1688,7 +1688,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/building.after-install': specifier: workspace:* version: link:../after-install @@ -2122,9 +2122,6 @@ importers: '@pnpm/cli.meta': specifier: workspace:* version: link:../meta - '@pnpm/config.reader': - specifier: workspace:* - version: link:../../config/reader '@pnpm/core-loggers': specifier: workspace:* version: link:../../core/core-loggers @@ -2764,14 +2761,14 @@ importers: version: link:../../fetching/types openpgp: specifier: 'catalog:' - version: 6.3.1(@openpgp/web-stream-tools@0.3.1(@types/node@22.20.1)(typescript@6.0.3)) + version: 6.3.1(@openpgp/web-stream-tools@0.3.1(@types/node@26.1.2)(typescript@6.0.3)) devDependencies: '@jest/globals': specifier: 'catalog:' version: 30.4.1(supports-color@10.2.2) '@openpgp/web-stream-tools': specifier: 'catalog:' - version: 0.3.1(@types/node@22.20.1)(typescript@6.0.3) + version: 0.3.1(@types/node@26.1.2)(typescript@6.0.3) '@pnpm/crypto.shasums-file': specifier: workspace:* version: 'link:' @@ -2838,7 +2835,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/cli.command': specifier: workspace:* version: link:../../../cli/command @@ -3829,7 +3826,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/bins.linker': specifier: workspace:* version: link:../../../bins/linker @@ -4153,7 +4150,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/bins.resolver': specifier: workspace:* version: link:../../bins/resolver @@ -5184,7 +5181,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/building.after-install': specifier: workspace:* version: link:../../building/after-install @@ -5590,7 +5587,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/bins.linker': specifier: workspace:* version: link:../../bins/linker @@ -7414,7 +7411,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/cli.utils': specifier: workspace:* version: link:../../cli/utils @@ -8141,7 +8138,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/cli.utils': specifier: workspace:* version: link:../../cli/utils @@ -8226,7 +8223,7 @@ importers: dependencies: '@inquirer/prompts': specifier: 'catalog:' - version: 8.5.2(@types/node@22.20.1) + version: 8.5.2(@types/node@26.1.2) '@pnpm/bins.resolver': specifier: workspace:* version: link:../../bins/resolver @@ -9598,7 +9595,7 @@ importers: version: link:../store/index '@rushstack/worker-pool': specifier: 'catalog:' - version: 0.7.22(@types/node@22.20.1) + version: 0.7.22(@types/node@26.1.2) is-windows: specifier: 'catalog:' version: 1.0.2 @@ -17887,48 +17884,48 @@ snapshots: '@inquirer/ansi@2.0.7': {} - '@inquirer/checkbox@5.2.1(@types/node@22.20.1)': + '@inquirer/checkbox@5.2.1(@types/node@26.1.2)': dependencies: '@inquirer/ansi': 2.0.7 - '@inquirer/core': 11.2.1(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/confirm@6.1.1(@types/node@22.20.1)': + '@inquirer/confirm@6.1.1(@types/node@26.1.2)': dependencies: - '@inquirer/core': 11.2.1(@types/node@22.20.1) - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/core@11.2.1(@types/node@22.20.1)': + '@inquirer/core@11.2.1(@types/node@26.1.2)': dependencies: '@inquirer/ansi': 2.0.7 '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/type': 4.0.7(@types/node@26.1.2) cli-width: 4.1.0 fast-wrap-ansi: 0.2.2 mute-stream: 3.0.0 signal-exit: 4.1.0 optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/editor@5.2.2(@types/node@22.20.1)': + '@inquirer/editor@5.2.2(@types/node@26.1.2)': dependencies: - '@inquirer/core': 11.2.1(@types/node@22.20.1) - '@inquirer/external-editor': 3.0.3(@types/node@22.20.1) - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) + '@inquirer/external-editor': 3.0.3(@types/node@26.1.2) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/expand@5.1.1(@types/node@22.20.1)': + '@inquirer/expand@5.1.1(@types/node@26.1.2)': dependencies: - '@inquirer/core': 11.2.1(@types/node@22.20.1) - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 '@inquirer/external-editor@1.0.3(@types/node@22.20.1)': dependencies: @@ -17937,81 +17934,81 @@ snapshots: optionalDependencies: '@types/node': 22.20.1 - '@inquirer/external-editor@3.0.3(@types/node@22.20.1)': + '@inquirer/external-editor@3.0.3(@types/node@26.1.2)': dependencies: chardet: 2.2.0 iconv-lite: 0.7.3 optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 '@inquirer/figures@1.0.15': {} '@inquirer/figures@2.0.7': {} - '@inquirer/input@5.1.2(@types/node@22.20.1)': + '@inquirer/input@5.1.2(@types/node@26.1.2)': dependencies: - '@inquirer/core': 11.2.1(@types/node@22.20.1) - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/number@4.1.1(@types/node@22.20.1)': + '@inquirer/number@4.1.1(@types/node@26.1.2)': dependencies: - '@inquirer/core': 11.2.1(@types/node@22.20.1) - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/password@5.1.1(@types/node@22.20.1)': + '@inquirer/password@5.1.1(@types/node@26.1.2)': dependencies: '@inquirer/ansi': 2.0.7 - '@inquirer/core': 11.2.1(@types/node@22.20.1) - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/prompts@8.5.2(@types/node@22.20.1)': + '@inquirer/prompts@8.5.2(@types/node@26.1.2)': dependencies: - '@inquirer/checkbox': 5.2.1(@types/node@22.20.1) - '@inquirer/confirm': 6.1.1(@types/node@22.20.1) - '@inquirer/editor': 5.2.2(@types/node@22.20.1) - '@inquirer/expand': 5.1.1(@types/node@22.20.1) - '@inquirer/input': 5.1.2(@types/node@22.20.1) - '@inquirer/number': 4.1.1(@types/node@22.20.1) - '@inquirer/password': 5.1.1(@types/node@22.20.1) - '@inquirer/rawlist': 5.3.1(@types/node@22.20.1) - '@inquirer/search': 4.2.1(@types/node@22.20.1) - '@inquirer/select': 5.2.1(@types/node@22.20.1) + '@inquirer/checkbox': 5.2.1(@types/node@26.1.2) + '@inquirer/confirm': 6.1.1(@types/node@26.1.2) + '@inquirer/editor': 5.2.2(@types/node@26.1.2) + '@inquirer/expand': 5.1.1(@types/node@26.1.2) + '@inquirer/input': 5.1.2(@types/node@26.1.2) + '@inquirer/number': 4.1.1(@types/node@26.1.2) + '@inquirer/password': 5.1.1(@types/node@26.1.2) + '@inquirer/rawlist': 5.3.1(@types/node@26.1.2) + '@inquirer/search': 4.2.1(@types/node@26.1.2) + '@inquirer/select': 5.2.1(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/rawlist@5.3.1(@types/node@22.20.1)': + '@inquirer/rawlist@5.3.1(@types/node@26.1.2)': dependencies: - '@inquirer/core': 11.2.1(@types/node@22.20.1) - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/search@4.2.1(@types/node@22.20.1)': + '@inquirer/search@4.2.1(@types/node@26.1.2)': dependencies: - '@inquirer/core': 11.2.1(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/select@5.2.1(@types/node@22.20.1)': + '@inquirer/select@5.2.1(@types/node@26.1.2)': dependencies: '@inquirer/ansi': 2.0.7 - '@inquirer/core': 11.2.1(@types/node@22.20.1) + '@inquirer/core': 11.2.1(@types/node@26.1.2) '@inquirer/figures': 2.0.7 - '@inquirer/type': 4.0.7(@types/node@22.20.1) + '@inquirer/type': 4.0.7(@types/node@26.1.2) optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 - '@inquirer/type@4.0.7(@types/node@22.20.1)': + '@inquirer/type@4.0.7(@types/node@26.1.2)': optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 '@isaacs/cliui@9.0.0': {} @@ -18348,9 +18345,9 @@ snapshots: '@npmcli/redact@4.0.0': {} - '@openpgp/web-stream-tools@0.3.1(@types/node@22.20.1)(typescript@6.0.3)': + '@openpgp/web-stream-tools@0.3.1(@types/node@26.1.2)(typescript@6.0.3)': optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 typescript: 6.0.3 '@pkgr/core@0.3.6': {} @@ -19530,9 +19527,9 @@ snapshots: optionalDependencies: '@types/node': 22.20.1 - '@rushstack/worker-pool@0.7.22(@types/node@22.20.1)': + '@rushstack/worker-pool@0.7.22(@types/node@26.1.2)': optionalDependencies: - '@types/node': 22.20.1 + '@types/node': 26.1.2 '@sec-ant/readable-stream@0.4.1': {} @@ -23544,9 +23541,9 @@ snapshots: is-docker: 2.2.1 is-wsl: 2.2.0 - openpgp@6.3.1(@openpgp/web-stream-tools@0.3.1(@types/node@22.20.1)(typescript@6.0.3)): + openpgp@6.3.1(@openpgp/web-stream-tools@0.3.1(@types/node@26.1.2)(typescript@6.0.3)): optionalDependencies: - '@openpgp/web-stream-tools': 0.3.1(@types/node@22.20.1)(typescript@6.0.3) + '@openpgp/web-stream-tools': 0.3.1(@types/node@26.1.2)(typescript@6.0.3) opt-cli@1.5.1: dependencies: diff --git a/pnpm11/cli/default-reporter/package.json b/pnpm11/cli/default-reporter/package.json index 720df4ba94..135affac2a 100644 --- a/pnpm11/cli/default-reporter/package.json +++ b/pnpm11/cli/default-reporter/package.json @@ -38,7 +38,6 @@ }, "dependencies": { "@pnpm/cli.meta": "workspace:*", - "@pnpm/config.reader": "workspace:*", "@pnpm/core-loggers": "workspace:*", "@pnpm/deps.inspection.peers-issues-renderer": "workspace:*", "@pnpm/error": "workspace:*", diff --git a/pnpm11/cli/default-reporter/src/ReporterPnpmConfig.ts b/pnpm11/cli/default-reporter/src/ReporterPnpmConfig.ts new file mode 100644 index 0000000000..e95cd402d4 --- /dev/null +++ b/pnpm11/cli/default-reporter/src/ReporterPnpmConfig.ts @@ -0,0 +1,24 @@ +import type * as logs from '@pnpm/core-loggers' + +/** + * The slice of pnpm's resolved config the reporter reads. Structural on + * purpose: the pnpm CLI passes its full `Config`, while other hosts (for + * example Bit, which drives the engine through `@pnpm/napi`) can pass just + * the fields they have without depending on `@pnpm/config.reader`. + */ +export interface ReporterPnpmConfig { + dir?: string + workspaceDir?: string + global?: boolean + recursive?: boolean + production?: boolean + dev?: boolean + optional?: boolean + saveDev?: boolean + strictDepBuilds?: boolean + authConfig?: Record + cliOptions?: Record + hooks?: { + filterLog?: Array<(log: logs.Log) => boolean> + } +} diff --git a/pnpm11/cli/default-reporter/src/index.ts b/pnpm11/cli/default-reporter/src/index.ts index e21094a453..caa2624361 100644 --- a/pnpm11/cli/default-reporter/src/index.ts +++ b/pnpm11/cli/default-reporter/src/index.ts @@ -1,4 +1,3 @@ -import type { Config, ConfigContext } from '@pnpm/config.reader' import type * as logs from '@pnpm/core-loggers' import type { LogLevel, StreamParser } from '@pnpm/logger' import createDiffer from 'ansi-diff' @@ -10,6 +9,7 @@ import { mergeOutputs } from './mergeOutputs.js' import { reporterForClient } from './reporterForClient/index.js' import type { FilterPkgsDiff } from './reporterForClient/reportSummary.js' import { formatWarn } from './reporterForClient/utils/formatWarn.js' +import type { ReporterPnpmConfig } from './ReporterPnpmConfig.js' export { formatWarn } @@ -38,7 +38,7 @@ export function initDefaultReporter ( } context: { argv: string[] - config?: Config & ConfigContext + config?: ReporterPnpmConfig env?: NodeJS.ProcessEnv process?: NodeJS.Process } @@ -139,7 +139,7 @@ export function toOutput$ ( } context: { argv: string[] - config?: Config & ConfigContext + config?: ReporterPnpmConfig env?: NodeJS.ProcessEnv process?: NodeJS.Process } diff --git a/pnpm11/cli/default-reporter/src/reportError.ts b/pnpm11/cli/default-reporter/src/reportError.ts index 424dacd47d..ac8fdfa93b 100644 --- a/pnpm11/cli/default-reporter/src/reportError.ts +++ b/pnpm11/cli/default-reporter/src/reportError.ts @@ -1,4 +1,3 @@ -import type { Config } from '@pnpm/config.reader' import type { Log } from '@pnpm/core-loggers' import { renderPeerIssues } from '@pnpm/deps.inspection.peers-issues-renderer' import type { PnpmError } from '@pnpm/error' @@ -10,6 +9,7 @@ import { equals } from 'ramda' import StackTracey from 'stacktracey' import { EOL } from './constants.js' +import type { ReporterPnpmConfig } from './ReporterPnpmConfig.js' StackTracey.maxColumnWidths = { callee: 25, @@ -20,7 +20,7 @@ StackTracey.maxColumnWidths = { const highlight = chalk.yellow const colorPath = chalk.gray -export function reportError (logObj: Log, config?: Config): string | null { +export function reportError (logObj: Log, config?: ReporterPnpmConfig): string | null { const errorInfo = getErrorInfo(logObj, config) if (!errorInfo) return null let output = formatErrorSummary(errorInfo.title, (logObj as LogObjWithPossibleError).err?.code) @@ -50,7 +50,7 @@ interface ErrorInfo { body?: string } -function getErrorInfo (logObj: Log, config?: Config): ErrorInfo | null { +function getErrorInfo (logObj: Log, config?: ReporterPnpmConfig): ErrorInfo | null { if ('err' in logObj && logObj.err) { const err = logObj.err as (PnpmError & { stack: object }) switch (err.code) { @@ -426,7 +426,7 @@ To fix this issue, install the required Node version.` function reportAuthError ( err: Error, msg: { hint?: string }, - config?: Config + config?: ReporterPnpmConfig ): ErrorInfo { const foundSettings = [] as string[] for (const [key, value] of Object.entries(config?.authConfig ?? {})) { diff --git a/pnpm11/cli/default-reporter/src/reporterForClient/index.ts b/pnpm11/cli/default-reporter/src/reporterForClient/index.ts index 8e3af0bd18..3e0b0a86cb 100644 --- a/pnpm11/cli/default-reporter/src/reporterForClient/index.ts +++ b/pnpm11/cli/default-reporter/src/reporterForClient/index.ts @@ -1,9 +1,9 @@ -import type { Config, ConfigContext } from '@pnpm/config.reader' import type * as logs from '@pnpm/core-loggers' import type { LogLevel } from '@pnpm/logger' import type * as Rx from 'rxjs' import { throttleTime } from 'rxjs/operators' +import type { ReporterPnpmConfig } from '../ReporterPnpmConfig.js' import { reportBigTarballProgress } from './reportBigTarballsProgress.js' import { reportContext } from './reportContext.js' import { reportDeprecations } from './reportDeprecations.js' @@ -62,13 +62,13 @@ export function reporterForClient ( opts: { appendOnly?: boolean cmd: string - config?: Config + config?: ReporterPnpmConfig env: NodeJS.ProcessEnv filterPkgsDiff?: FilterPkgsDiff process: NodeJS.Process isRecursive: boolean logLevel?: LogLevel - pnpmConfig?: Config & ConfigContext + pnpmConfig?: ReporterPnpmConfig streamLifecycleOutput?: boolean aggregateOutput?: boolean throttleProgress?: number diff --git a/pnpm11/cli/default-reporter/src/reporterForClient/reportIgnoredBuilds.ts b/pnpm11/cli/default-reporter/src/reporterForClient/reportIgnoredBuilds.ts index 13f1f91a76..e7329d8a52 100644 --- a/pnpm11/cli/default-reporter/src/reporterForClient/reportIgnoredBuilds.ts +++ b/pnpm11/cli/default-reporter/src/reporterForClient/reportIgnoredBuilds.ts @@ -1,16 +1,17 @@ -import type { Config, ConfigContext } from '@pnpm/config.reader' import type { IgnoredScriptsLog } from '@pnpm/core-loggers' import { lexCompare } from '@pnpm/util.lex-comparator' import boxen from 'boxen' import * as Rx from 'rxjs' import { map } from 'rxjs/operators' +import type { ReporterPnpmConfig } from '../ReporterPnpmConfig.js' + export function reportIgnoredBuilds ( log$: { ignoredScripts: Rx.Observable }, opts: { - pnpmConfig?: Config & ConfigContext + pnpmConfig?: ReporterPnpmConfig // This is used by Bit CLI approveBuildsInstructionText?: string } diff --git a/pnpm11/cli/default-reporter/src/reporterForClient/reportMisc.ts b/pnpm11/cli/default-reporter/src/reporterForClient/reportMisc.ts index b7b1af1c5c..1ba8b7b5b1 100644 --- a/pnpm11/cli/default-reporter/src/reporterForClient/reportMisc.ts +++ b/pnpm11/cli/default-reporter/src/reporterForClient/reportMisc.ts @@ -1,11 +1,11 @@ import os from 'node:os' -import type { Config } from '@pnpm/config.reader' import type { Log, RegistryLog } from '@pnpm/core-loggers' import type { LogLevel } from '@pnpm/logger' import * as Rx from 'rxjs' import { filter, map } from 'rxjs/operators' +import type { ReporterPnpmConfig } from '../ReporterPnpmConfig.js' import { reportError } from '../reportError.js' import { formatWarn } from './utils/formatWarn.js' import { autozoom } from './utils/zooming.js' @@ -30,7 +30,7 @@ export function reportMisc ( appendOnly: boolean cwd: string logLevel?: LogLevel - config?: Config + config?: ReporterPnpmConfig zoomOutCurrent: boolean } ): Rx.Observable> { diff --git a/pnpm11/cli/default-reporter/src/reporterForClient/reportSummary.ts b/pnpm11/cli/default-reporter/src/reporterForClient/reportSummary.ts index 0aa6817f0c..a1b4c6e6bc 100644 --- a/pnpm11/cli/default-reporter/src/reporterForClient/reportSummary.ts +++ b/pnpm11/cli/default-reporter/src/reporterForClient/reportSummary.ts @@ -1,6 +1,5 @@ import path from 'node:path' -import type { Config } from '@pnpm/config.reader' import type { DeprecationLog, PackageManifestLog, @@ -13,6 +12,7 @@ import { map, take } from 'rxjs/operators' import semver from 'semver' import { EOL } from '../constants.js' +import type { ReporterPnpmConfig } from '../ReporterPnpmConfig.js' import { ADDED_CHAR, REMOVED_CHAR, @@ -45,7 +45,7 @@ export function reportSummary ( cwd: string env: NodeJS.ProcessEnv filterPkgsDiff?: FilterPkgsDiff - pnpmConfig?: Config + pnpmConfig?: ReporterPnpmConfig } ): Rx.Observable> { const pkgsDiff$ = getPkgsDiff(log$, { prefix: opts.pnpmConfig?.global ? undefined : opts.cwd }) @@ -91,7 +91,7 @@ function printDiffs ( opts: { cmd: string prefix: string - pnpmConfig?: Config + pnpmConfig?: ReporterPnpmConfig }, pkgsDiff: PackageDiff[], depType: string diff --git a/pnpm11/cli/default-reporter/test/index.ts b/pnpm11/cli/default-reporter/test/index.ts index 5f5281afe8..a779819324 100644 --- a/pnpm11/cli/default-reporter/test/index.ts +++ b/pnpm11/cli/default-reporter/test/index.ts @@ -3,7 +3,6 @@ import path from 'node:path' import { expect, test } from '@jest/globals' import { toOutput$ } from '@pnpm/cli.default-reporter' -import type { Config, ConfigContext } from '@pnpm/config.reader' import { deprecationLogger, hookLogger, @@ -26,6 +25,7 @@ import { firstValueFrom } from 'rxjs' import { map, skip, take } from 'rxjs/operators' import { formatWarn } from '../src/reporterForClient/utils/formatWarn.js' +import type { ReporterPnpmConfig } from '../src/ReporterPnpmConfig.js' const formatErrorCode = (code: string) => chalk.bgRed.red('[') + chalk.bgRed.black(code) + chalk.bgRed.red(']') const formatError = (code: string, message: string) => { @@ -44,7 +44,7 @@ test('prints summary (of current package only)', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -236,7 +236,7 @@ test('prints summary without the filtered out entries', async () => { argv: ['install'], config: { dir: prefix, - } as Config & ConfigContext, + } as ReporterPnpmConfig, }, streamParser: createStreamParser(), filterPkgsDiff: (diff) => diff.name !== 'bar', @@ -308,7 +308,7 @@ test('does not print "(X is available)" when latest equals the installed version const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -348,7 +348,7 @@ test('does not print deprecation message when log level is set to error', async const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, reportingOptions: { logLevel: 'error', @@ -406,7 +406,7 @@ test('prints summary for global installation', async () => { config: { dir: prefix, global: true, - } as Config & ConfigContext, + } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -463,7 +463,7 @@ test('prints added peer dependency', async () => { argv: ['install'], config: { dir: prefix, - } as Config & ConfigContext, + } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -504,7 +504,7 @@ test('prints summary correctly when the same package is specified both in option argv: ['install'], config: { dir: prefix, - } as Config & ConfigContext, + } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -566,7 +566,7 @@ test('in the installation summary report which dependency types are skipped', as production: true, dev: false, optional: false, - } as Config & ConfigContext, + } as ReporterPnpmConfig, env: { NODE_ENV: 'production', }, @@ -627,7 +627,7 @@ ${h1('devDependencies:')} skipped test('prints summary when some packages fail', async () => { const output$ = toOutput$({ - context: { argv: ['run'], config: { recursive: true } as Config & ConfigContext }, + context: { argv: ['run'], config: { recursive: true } as ReporterPnpmConfig }, streamParser: createStreamParser(), }) @@ -866,7 +866,7 @@ test('prints added/removed stats and warnings during recursive installation', as const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: rootPrefix, recursive: true } as Config & ConfigContext, + config: { dir: rootPrefix, recursive: true } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -925,7 +925,7 @@ test('recursive installation: prints only the added stats if nothing was removed const output$ = toOutput$({ context: { argv: ['recursive'], - config: { dir: '/home/jane/repo' } as Config & ConfigContext, + config: { dir: '/home/jane/repo' } as ReporterPnpmConfig, }, reportingOptions: { outputMaxWidth: 60 }, streamParser: createStreamParser(), @@ -944,7 +944,7 @@ test('recursive installation: prints only the removed stats if nothing was added const output$ = toOutput$({ context: { argv: ['recursive'], - config: { dir: '/home/jane/repo' } as Config & ConfigContext, + config: { dir: '/home/jane/repo' } as ReporterPnpmConfig, }, reportingOptions: { outputMaxWidth: 60 }, streamParser: createStreamParser(), @@ -963,7 +963,7 @@ test('recursive installation: prints at least one remove sign when removed !== 0 const output$ = toOutput$({ context: { argv: ['recursive'], - config: { dir: '/home/jane/repo' } as Config & ConfigContext, + config: { dir: '/home/jane/repo' } as ReporterPnpmConfig, }, reportingOptions: { outputMaxWidth: 62 }, streamParser: createStreamParser(), @@ -982,7 +982,7 @@ test('recursive installation: prints at least one add sign when added !== 0', as const output$ = toOutput$({ context: { argv: ['recursive'], - config: { dir: '/home/jane/repo' } as Config & ConfigContext, + config: { dir: '/home/jane/repo' } as ReporterPnpmConfig, }, reportingOptions: { outputMaxWidth: 62 }, streamParser: createStreamParser(), @@ -1001,7 +1001,7 @@ test('recursive uninstall: prints removed packages number', async () => { const output$ = toOutput$({ context: { argv: ['remove'], - config: { dir: '/home/jane/repo', recursive: true } as Config & ConfigContext, + config: { dir: '/home/jane/repo', recursive: true } as ReporterPnpmConfig, }, reportingOptions: { outputMaxWidth: 62 }, streamParser: createStreamParser(), @@ -1019,7 +1019,7 @@ test('install: print hook message', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/home/jane/repo' } as Config & ConfigContext, + config: { dir: '/home/jane/repo' } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -1041,7 +1041,7 @@ test('recursive: print hook message', async () => { const output$ = toOutput$({ context: { argv: ['recursive'], - config: { dir: '/home/jane/repo' } as Config & ConfigContext, + config: { dir: '/home/jane/repo' } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -1064,7 +1064,7 @@ test('prints skipped optional dependency info message', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -1093,7 +1093,7 @@ test('logLevel=default', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -1116,7 +1116,7 @@ test('logLevel=warn', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, reportingOptions: { logLevel: 'warn', @@ -1141,7 +1141,7 @@ test('logLevel=error', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, reportingOptions: { logLevel: 'error', @@ -1165,7 +1165,7 @@ test('warnings are collapsed', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, reportingOptions: { logLevel: 'warn', @@ -1197,7 +1197,7 @@ test('warnings are not collapsed when append-only is true', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, reportingOptions: { appendOnly: true, diff --git a/pnpm11/cli/default-reporter/test/reporterRenderer.ts b/pnpm11/cli/default-reporter/test/reporterRenderer.ts index d8bf0557ce..44e0dcbf59 100644 --- a/pnpm11/cli/default-reporter/test/reporterRenderer.ts +++ b/pnpm11/cli/default-reporter/test/reporterRenderer.ts @@ -2,7 +2,6 @@ import { stripVTControlCharacters as stripAnsi } from 'node:util' import { expect, test } from '@jest/globals' import { initDefaultReporter } from '@pnpm/cli.default-reporter' -import type { Config, ConfigContext } from '@pnpm/config.reader' import type * as logs from '@pnpm/core-loggers' import { lockfileVerificationLogger, @@ -14,6 +13,8 @@ import { import type { StreamParser } from '@pnpm/logger' import { createStreamParser } from '@pnpm/logger' +import type { ReporterPnpmConfig } from '../src/ReporterPnpmConfig.js' + const ERASE_TO_END_OF_DISPLAY = '\x1b[0J' const LOCKFILE_TEXT = 'Lockfile passes supply-chain policies' @@ -61,7 +62,7 @@ test('differential renderer does not reprint unchanged sticky blocks', async () reportingOptions: { throttleProgress: 0 }, context: { argv: ['install'], - config: { dir: cwd } as Config & ConfigContext, + config: { dir: cwd } as ReporterPnpmConfig, process: mockProcess as unknown as NodeJS.Process, }, }) @@ -124,7 +125,7 @@ test('each write clears external output below the frame', async () => { reportingOptions: { throttleProgress: 0 }, context: { argv: ['install'], - config: { dir: cwd } as Config & ConfigContext, + config: { dir: cwd } as ReporterPnpmConfig, process: mockProcess as unknown as NodeJS.Process, }, }) @@ -172,7 +173,7 @@ test('holds frame redraws while an interactive prompt owns the terminal', async reportingOptions: { throttleProgress: 0 }, context: { argv: ['install'], - config: { dir: cwd } as Config & ConfigContext, + config: { dir: cwd } as ReporterPnpmConfig, process: mockProcess as unknown as NodeJS.Process, }, }) diff --git a/pnpm11/cli/default-reporter/test/reportingDeprecations.ts b/pnpm11/cli/default-reporter/test/reportingDeprecations.ts index 6143605e5e..63fb9172ed 100644 --- a/pnpm11/cli/default-reporter/test/reportingDeprecations.ts +++ b/pnpm11/cli/default-reporter/test/reportingDeprecations.ts @@ -1,6 +1,5 @@ import { expect, test } from '@jest/globals' import { toOutput$ } from '@pnpm/cli.default-reporter' -import type { Config, ConfigContext } from '@pnpm/config.reader' import { deprecationLogger, stageLogger, @@ -12,13 +11,14 @@ import { firstValueFrom } from 'rxjs' import { map, take } from 'rxjs/operators' import { formatWarn } from '../src/reporterForClient/utils/formatWarn.js' +import type { ReporterPnpmConfig } from '../src/ReporterPnpmConfig.js' test('prints summary of deprecated subdependencies', async () => { const prefix = '/home/jane/project' const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) diff --git a/pnpm11/cli/default-reporter/test/reportingLockfileVerification.ts b/pnpm11/cli/default-reporter/test/reportingLockfileVerification.ts index 8afaa3b4e3..2a7479dd1f 100644 --- a/pnpm11/cli/default-reporter/test/reportingLockfileVerification.ts +++ b/pnpm11/cli/default-reporter/test/reportingLockfileVerification.ts @@ -3,17 +3,18 @@ import { stripVTControlCharacters as stripAnsi } from 'node:util' import { expect, test } from '@jest/globals' import { toOutput$ } from '@pnpm/cli.default-reporter' -import type { Config, ConfigContext } from '@pnpm/config.reader' import { lockfileVerificationLogger } from '@pnpm/core-loggers' import { createStreamParser } from '@pnpm/logger' import { firstValueFrom, take, toArray } from 'rxjs' +import type { ReporterPnpmConfig } from '../src/ReporterPnpmConfig.js' + test('prints lockfile verification in-progress and completion messages', async () => { const cwd = '/repo' const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: cwd } as Config & ConfigContext, + config: { dir: cwd } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -62,7 +63,7 @@ test('prints relative path when lockfile lives outside the workspace root', asyn const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: cwd, workspaceDir } as Config & ConfigContext, + config: { dir: cwd, workspaceDir } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -90,7 +91,7 @@ test('does not print path when running from workspace subdir and lockfile is at const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: cwd, workspaceDir } as Config & ConfigContext, + config: { dir: cwd, workspaceDir } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -112,7 +113,7 @@ test('suppresses path when workspaceDir has a trailing separator', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: cwd, workspaceDir } as Config & ConfigContext, + config: { dir: cwd, workspaceDir } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -134,7 +135,7 @@ test('prints a previously-verified line when the cached verdict is reused', asyn const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: cwd } as Config & ConfigContext, + config: { dir: cwd } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) diff --git a/pnpm11/cli/default-reporter/test/reportingProgress.ts b/pnpm11/cli/default-reporter/test/reportingProgress.ts index ccb23519cf..14f43c66ea 100644 --- a/pnpm11/cli/default-reporter/test/reportingProgress.ts +++ b/pnpm11/cli/default-reporter/test/reportingProgress.ts @@ -1,6 +1,5 @@ import { expect, test } from '@jest/globals' import { toOutput$ } from '@pnpm/cli.default-reporter' -import type { Config, ConfigContext } from '@pnpm/config.reader' import { fetchingProgressLogger, progressLogger, @@ -17,6 +16,7 @@ import { firstValueFrom } from 'rxjs' import { map, skip, take, toArray } from 'rxjs/operators' import { formatWarn } from '../src/reporterForClient/utils/formatWarn.js' +import type { ReporterPnpmConfig } from '../src/ReporterPnpmConfig.js' const hlValue = chalk.cyanBright @@ -26,7 +26,7 @@ test('prints progress beginning', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/project' } as Config & ConfigContext, + config: { dir: '/src/project' } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -51,7 +51,7 @@ test('prints progress without added packages stats', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/project' } as Config & ConfigContext, + config: { dir: '/src/project' } as ReporterPnpmConfig, }, reportingOptions: { hideAddedPkgsProgress: true, @@ -79,7 +79,7 @@ test('prints all progress stats', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/project' } as Config & ConfigContext, + config: { dir: '/src/project' } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -120,7 +120,7 @@ test('prints progress beginning of node_modules from not cwd', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/projects' } as Config & ConfigContext, + config: { dir: '/src/projects' } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -145,7 +145,7 @@ test('prints progress beginning of node_modules from not cwd, when progress pref const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/projects' } as Config & ConfigContext, + config: { dir: '/src/projects' } as ReporterPnpmConfig, }, streamParser: createStreamParser(), reportingOptions: { @@ -173,7 +173,7 @@ test('prints progress beginning when appendOnly is true', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/project' } as Config & ConfigContext, + config: { dir: '/src/project' } as ReporterPnpmConfig, }, reportingOptions: { appendOnly: true, @@ -204,7 +204,7 @@ test('prints progress beginning during recursive install', async () => { config: { dir: '/src/project', recursive: true, - } as Config & ConfigContext, + } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -231,7 +231,7 @@ test('prints progress on first download', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/project' } as Config & ConfigContext, + config: { dir: '/src/project' } as ReporterPnpmConfig, }, reportingOptions: { throttleProgress: 0 }, streamParser: createStreamParser(), @@ -265,7 +265,7 @@ test('moves fixed line to the end', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: prefix } as Config & ConfigContext, + config: { dir: prefix } as ReporterPnpmConfig, }, reportingOptions: { throttleProgress: 0 }, streamParser: createStreamParser(), @@ -327,7 +327,7 @@ test('prints progress of big files download', async () => { const output$ = toOutput$({ context: { argv: ['install'], - config: { dir: '/src/project' } as Config & ConfigContext, + config: { dir: '/src/project' } as ReporterPnpmConfig, }, reportingOptions: { throttleProgress: 0 }, streamParser: createStreamParser(), diff --git a/pnpm11/cli/default-reporter/test/reportingScope.ts b/pnpm11/cli/default-reporter/test/reportingScope.ts index 8e518023f4..c0ea2a6b5c 100644 --- a/pnpm11/cli/default-reporter/test/reportingScope.ts +++ b/pnpm11/cli/default-reporter/test/reportingScope.ts @@ -2,11 +2,12 @@ import { setTimeout } from 'node:timers/promises' import { expect, test } from '@jest/globals' import { toOutput$ } from '@pnpm/cli.default-reporter' -import type { Config, ConfigContext } from '@pnpm/config.reader' import { scopeLogger } from '@pnpm/core-loggers' import { createStreamParser } from '@pnpm/logger' import { firstValueFrom } from 'rxjs' +import type { ReporterPnpmConfig } from '../src/ReporterPnpmConfig.js' + const NO_OUTPUT = Symbol('test should not log anything') test('does not print scope of non-recursive install in a workspace', async () => { @@ -34,7 +35,7 @@ test('prints scope of recursive install in a workspace when not all packages are const output$ = toOutput$({ context: { argv: ['install'], - config: { recursive: true } as Config & ConfigContext, + config: { recursive: true } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -55,7 +56,7 @@ test('prints scope of recursive install in a workspace when all packages are sel const output$ = toOutput$({ context: { argv: ['install'], - config: { recursive: true } as Config & ConfigContext, + config: { recursive: true } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -76,7 +77,7 @@ test('prints scope of recursive install not in a workspace when not all packages const output$ = toOutput$({ context: { argv: ['install'], - config: { recursive: true } as Config & ConfigContext, + config: { recursive: true } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) @@ -96,7 +97,7 @@ test('prints scope of recursive install not in a workspace when all packages are const output$ = toOutput$({ context: { argv: ['install'], - config: { recursive: true } as Config & ConfigContext, + config: { recursive: true } as ReporterPnpmConfig, }, streamParser: createStreamParser(), }) diff --git a/pnpm11/cli/default-reporter/test/reportingUpdateCheck.ts b/pnpm11/cli/default-reporter/test/reportingUpdateCheck.ts index 89c7e4c9e9..e55a90ad36 100644 --- a/pnpm11/cli/default-reporter/test/reportingUpdateCheck.ts +++ b/pnpm11/cli/default-reporter/test/reportingUpdateCheck.ts @@ -3,11 +3,12 @@ import { stripVTControlCharacters as stripAnsi } from 'node:util' import { expect, test } from '@jest/globals' import { toOutput$ } from '@pnpm/cli.default-reporter' -import type { Config, ConfigContext } from '@pnpm/config.reader' import { updateCheckLogger } from '@pnpm/core-loggers' import { createStreamParser } from '@pnpm/logger' import { firstValueFrom } from 'rxjs' +import type { ReporterPnpmConfig } from '../src/ReporterPnpmConfig.js' + const NO_OUTPUT = Symbol('test should not log anything') test('does not print update if latest is less than current', async () => { @@ -36,7 +37,7 @@ test('print update notification if the latest version is greater than the curren const output$ = toOutput$({ context: { argv: ['install'], - config: { recursive: true } as Config & ConfigContext, + config: { recursive: true } as ReporterPnpmConfig, env: {}, }, streamParser: createStreamParser(), @@ -57,7 +58,7 @@ test('print update notification for Corepack if the latest version is greater th const output$ = toOutput$({ context: { argv: ['install'], - config: { recursive: true } as Config & ConfigContext, + config: { recursive: true } as ReporterPnpmConfig, env: { COREPACK_ROOT: '/usr/bin/corepack', }, @@ -80,7 +81,7 @@ test('print update notification that suggests to use the standalone scripts for const output$ = toOutput$({ context: { argv: ['install'], - config: { recursive: true } as Config & ConfigContext, + config: { recursive: true } as ReporterPnpmConfig, env: { PNPM_HOME: '/home/user/.local/share/pnpm', }, diff --git a/pnpm11/cli/default-reporter/tsconfig.json b/pnpm11/cli/default-reporter/tsconfig.json index 034f726185..981ec6b418 100644 --- a/pnpm11/cli/default-reporter/tsconfig.json +++ b/pnpm11/cli/default-reporter/tsconfig.json @@ -10,9 +10,6 @@ "../../__typings__/**/*.d.ts" ], "references": [ - { - "path": "../../config/reader" - }, { "path": "../../core/core-loggers" },