Skip to content

Commit 63a09b5

Browse files
committed
Make check-dependencies script handle the workspace protocol
1 parent 133f468 commit 63a09b5

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

scripts/check-dependencies.js

+16-5
Original file line numberDiff line numberDiff line change
@@ -56,10 +56,20 @@ function checkPeerDepedencies(packageJson) {
5656
continue;
5757
}
5858

59-
if (
60-
packageJson.peerDependencies[dependency] !==
61-
packageJson.devDependencies[dependency]
62-
) {
59+
const peerDep = packageJson.peerDependencies[dependency];
60+
if (peerDep.startsWith("workspace:")) {
61+
console.error(
62+
`${packageJson.name} uses the workspace protocol for ${dependency}, which is a peer dependency`
63+
);
64+
65+
success = false;
66+
}
67+
68+
const devDep = packageJson.devDependencies[dependency].replace(
69+
/^workspace:/,
70+
""
71+
);
72+
if (peerDep !== devDep) {
6373
console.error(
6474
`${packageJson.name} has different versions of ${dependency} as peerDependency and devDependency`
6575
);
@@ -76,7 +86,8 @@ function addDependencies(packageName, dependenciesToAdd, allDependenciesMap) {
7686
return;
7787
}
7888

79-
for (const [name, spec] of Object.entries(dependenciesToAdd)) {
89+
for (const [name, specWithWorspace] of Object.entries(dependenciesToAdd)) {
90+
const spec = specWithWorspace.replace(/^workspace:/, "");
8091
if (IGNORE_SAME_VERSION_FROM_ALL.includes(name)) {
8192
continue;
8293
}

0 commit comments

Comments
 (0)