cli: stop ignoring version ranges when templating dependencies on @types packages

Signed-off-by: MT Lewis <mtlewis@users.noreply.github.com>
This commit is contained in:
MT Lewis
2024-11-25 12:18:59 +00:00
parent 1e624ca627
commit 7dcff851e9
3 changed files with 10 additions and 7 deletions
+6
View File
@@ -0,0 +1,6 @@
---
'@backstage/cli': patch
---
Remove special-casing for `@types` packages when generating dependency entries
during templating
+4 -1
View File
@@ -66,6 +66,10 @@ describe('createPackageVersionProvider', () => {
expect(provider('c', '0.3.0-rc1')).toBe('0.3.0-rc1');
expect(provider('c', '0.3.0')).toBe('^0.3.0');
expect(provider('c', '0.3.6')).toBe('^0.3.4');
// No special handling for @types packages.
expect(provider('@types/t', '1.4.2')).toBe('^1.2.3');
const cliVersion = packageVersions['@backstage/cli'];
expect(provider('@backstage/cli')).toBe(
// If we're currently in pre-release we expect that to be picked instead
@@ -74,6 +78,5 @@ describe('createPackageVersionProvider', () => {
expect(provider('@backstage/core-plugin-api')).toBe(
`^${corePluginApiPkg.version}`,
);
expect(provider('@types/t', '1.4.2')).toBe('*');
});
});
-6
View File
@@ -90,12 +90,6 @@ export function createPackageVersionProvider(lockfile?: Lockfile) {
}
const lockfileEntries = lockfile?.get(name);
if (
name.startsWith('@types/') &&
lockfileEntries?.some(entry => entry.range === '*')
) {
return '*';
}
for (const specifier of ['^', '~', '*']) {
const range = `workspace:${specifier}`;