Skip to content

Commit 56a64c5

Browse files
authored
fix: allow tags in npm:x-deps (#194)
1 parent 7ef91be commit 56a64c5

File tree

3 files changed

+23
-0
lines changed

3 files changed

+23
-0
lines changed

.changeset/chatty-pillows-enjoy.md

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"@manypkg/cli": patch
3+
---
4+
5+
fix: allow tags in `npm:x`-deps

packages/cli/src/checks/INTERNAL_MISMATCH.ts

+2
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,10 @@ export default makeCheck<ErrorType>({
2222
for (let depName in deps) {
2323
let range = deps[depName];
2424
let dependencyWorkspace = allWorkspaces.get(depName);
25+
2526
if (
2627
dependencyWorkspace !== undefined &&
28+
!range.startsWith("npm:") &&
2729
!semver.satisfies(dependencyWorkspace.packageJson.version, range)
2830
) {
2931
errors.push({

packages/cli/src/checks/__tests__/INTERNAL_MISMATCH.ts

+16
Original file line numberDiff line numberDiff line change
@@ -85,4 +85,20 @@ describe("internal mismatch", () => {
8585
]
8686
`);
8787
});
88+
89+
// regression test for https://github.com/Thinkmill/manypkg/issues/193
90+
it.each(["npm:pkg-1@sometag", "npm:@someorg/pkg-1@sometag"])(
91+
"should not error when using tag %s",
92+
(range) => {
93+
let ws = getWS();
94+
let dependsOnOne = getFakeWS("depends-on-one");
95+
dependsOnOne.packageJson.dependencies = {
96+
"pkg-1": range,
97+
};
98+
ws.set("depends-on-one", dependsOnOne);
99+
let errors = makeCheck.validate(dependsOnOne, ws, rootWorkspace, {});
100+
expect(errors.length).toEqual(0);
101+
}
102+
);
103+
88104
});

0 commit comments

Comments
 (0)