fix: override peerDependencies in pnpm.overrides (#6955)

сlose #6759
This commit is contained in:
Nacho Aldama
2023-08-17 18:47:49 +02:00
committed by GitHub
parent bf21c9bf3a
commit 64bf3c860a
3 changed files with 29 additions and 1 deletions

View File

@@ -0,0 +1,6 @@
---
"@pnpm/hooks.read-package-hook": patch
"pnpm": patch
---
Override peerDependencies in `pnpm.overrides` [#6759](https://github.com/pnpm/pnpm/issues/6759).

View File

@@ -81,6 +81,7 @@ function overrideDepsOfPkg (
if (manifest.dependencies != null) overrideDeps(versionOverrides, genericVersionOverrides, manifest.dependencies, dir)
if (manifest.optionalDependencies != null) overrideDeps(versionOverrides, genericVersionOverrides, manifest.optionalDependencies, dir)
if (manifest.devDependencies != null) overrideDeps(versionOverrides, genericVersionOverrides, manifest.devDependencies, dir)
if (manifest.peerDependencies != null) overrideDeps(versionOverrides, genericVersionOverrides, manifest.peerDependencies, dir)
}
function overrideDeps (

View File

@@ -382,4 +382,25 @@ test('createVersionsOverrider() matches intersections', () => {
).toStrictEqual({
dependencies: { foo: '>=1.2.4' },
})
})
})
test('createVersionsOverrider() overrides peerDependencies of another dependency', () => {
const overrider = createVersionsOverrider({
'react-dom>react': '18.1.0',
}, process.cwd())
expect(
overrider({
name: 'react-dom',
version: '18.2.0',
peerDependencies: {
react: '18.2.0',
},
})
).toStrictEqual({
name: 'react-dom',
version: '18.2.0',
peerDependencies: {
react: '18.1.0',
},
})
})