fix(nx): validate peer dependency versions

This commit is contained in:
4gray committed 2026-08-02 11:55:33 +02:00
1 parent 7ac7f8ae20
commit 8742089ad5
2 files changed
+26

No files matched your search

@@ -26,6 +26,7 @@ export function validateNxVersionSync({ packageJson, lockfile }) {
'dependencies',
'devDependencies',
'optionalDependencies',
'peerDependencies',
]) {
const section = packageJson[sectionName] ?? {};
for (const [packageName, specifier] of Object.entries(section)) {
@@ -85,6 +85,31 @@ test('rejects a direct official Nx package mismatch', async (t) => {
);
});
test('rejects a direct official Nx peer dependency mismatch', async (t) => {
const rootDir = await createFixture(t, {
packageJson: {
devDependencies: {
nx: '22.7.2',
},
peerDependencies: {
'@nx/angular': '22.7.1',
},
},
packages: {
'@nx/angular@22.7.2': {},
'nx@22.7.2': {},
},
});
const result = runValidator(rootDir);
assert.equal(result.status, 1);
assert.match(
result.stderr,
/peerDependencies\["@nx\/angular"\] must match nx@22\.7\.2, found "22\.7\.1"/
);
});
test('rejects a non-exact root Nx version', async (t) => {
const rootDir = await createFixture(t, {
packageJson: {