From a36b6026bb582feacf9e9a69148a9f2ee2c8c2af Mon Sep 17 00:00:00 2001 From: Zoltan Kochan Date: Wed, 16 Mar 2022 23:01:54 +0200 Subject: [PATCH] feat(core): pruneLockfileImporters is true by default --- .changeset/giant-forks-trade.md | 5 +++++ packages/core/src/install/extendInstallOptions.ts | 2 +- packages/core/test/install/multipleImporters.ts | 3 +++ packages/core/test/lockfile.ts | 7 ++++++- packages/core/test/uninstall.ts | 1 + 5 files changed, 16 insertions(+), 2 deletions(-) create mode 100644 .changeset/giant-forks-trade.md diff --git a/.changeset/giant-forks-trade.md b/.changeset/giant-forks-trade.md new file mode 100644 index 0000000000..9284b7f9e3 --- /dev/null +++ b/.changeset/giant-forks-trade.md @@ -0,0 +1,5 @@ +--- +"@pnpm/core": major +--- + +pruneLockfileImporters is true by default. diff --git a/packages/core/src/install/extendInstallOptions.ts b/packages/core/src/install/extendInstallOptions.ts index f778ba27eb..4a4f428771 100644 --- a/packages/core/src/install/extendInstallOptions.ts +++ b/packages/core/src/install/extendInstallOptions.ts @@ -141,7 +141,7 @@ const defaults = async (opts: InstallOptions) => { preferFrozenLockfile: true, preferWorkspacePackages: false, preserveWorkspaceProtocol: true, - pruneLockfileImporters: false, + pruneLockfileImporters: true, pruneStore: false, rawConfig: {}, registries: DEFAULT_REGISTRIES, diff --git a/packages/core/test/install/multipleImporters.ts b/packages/core/test/install/multipleImporters.ts index 913c16b884..b69e69b9c2 100644 --- a/packages/core/test/install/multipleImporters.ts +++ b/packages/core/test/install/multipleImporters.ts @@ -249,6 +249,7 @@ test('dependencies of other importers are not pruned when installing for a subse dir: path.resolve('project-1'), lockfileDir: process.cwd(), modulesCacheMaxAge: 0, + pruneLockfileImporters: false, })) await projects['project-1'].has('is-positive') @@ -313,10 +314,12 @@ test('dependencies of other importers are not pruned when (headless) installing dir: path.resolve('project-1'), lockfileDir: process.cwd(), lockfileOnly: true, + pruneLockfileImporters: false, })) await mutateModules(importers.slice(0, 1), await testDefaults({ frozenLockfile: true, modulesCacheMaxAge: 0, + pruneLockfileImporters: false, })) await projects['project-1'].has('is-positive') diff --git a/packages/core/test/lockfile.ts b/packages/core/test/lockfile.ts index 7ebe7d9be0..f9ac3855bb 100644 --- a/packages/core/test/lockfile.ts +++ b/packages/core/test/lockfile.ts @@ -842,7 +842,12 @@ test('lockfile file has correct format when lockfile directory does not equal th process.chdir('project-2') - await addDependenciesToPackage(manifest, ['is-positive'], await testDefaults({ save: true, lockfileDir: path.resolve('..'), storeDir })) + await addDependenciesToPackage(manifest, ['is-positive'], await testDefaults({ + save: true, + lockfileDir: path.resolve('..'), + storeDir, + pruneLockfileImporters: false, + })) { const lockfile = await readYamlFile(path.join('..', WANTED_LOCKFILE)) diff --git a/packages/core/test/uninstall.ts b/packages/core/test/uninstall.ts index f94eb764fb..31bafe909d 100644 --- a/packages/core/test/uninstall.ts +++ b/packages/core/test/uninstall.ts @@ -317,6 +317,7 @@ test('uninstalling a dependency from package that uses shared lockfile', async ( ], await testDefaults({ lockfileDir: process.cwd(), store, + pruneLockfileImporters: false, })) await projects['project-1'].hasNot('is-positive')