Skip to content

Commit 05d1f58

Browse files
authored
[fix]: Determine the correct package name for GitHub dependencies (#2801)
* prepare changelog for beta * allow to install github urls too * add to docs * fix the validation log * trim output from npm view * fix linter * listInstalledNodeModules now returns correct name also for GitHub dependencies
1 parent 5e59f9f commit 05d1f58

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
## __WORK IN PROGRESS__
55
-->
66

7-
## 6.0.2 (2024-06-11) - Kiera
7+
## __WORK IN PROGRESS__ - Kiera
88

99
**Breaking changes**
1010
* Support for Node.js 16 is dropped!

packages/adapter/src/lib/adapter/utils.ts

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,10 @@ import {
1010
import { SUPPORTED_FEATURES, type SupportedFeature } from '@/lib/adapter/constants.js';
1111
import path from 'node:path';
1212
import fs from 'fs-extra';
13+
import { createRequire } from 'node:module';
14+
15+
// eslint-disable-next-line unicorn/prefer-module
16+
const require = createRequire(import.meta.url || 'file://' + __filename);
1317

1418
interface EncryptArrayOptions {
1519
/** The objects whose values should be en/decrypted */
@@ -114,14 +118,15 @@ export async function listInstalledNodeModules(namespace: string): Promise<strin
114118
};
115119
const dependencies: string[] = [];
116120

117-
for (const [dependency, versionInfo] of Object.entries(packJson.dependencies)) {
121+
for (const dependency of Object.keys(packJson.dependencies)) {
118122
if (!dependency.startsWith(`@${appNameLowerCase}-${namespace}/`)) {
119123
continue;
120124
}
121125

122-
// remove npm: and version after last @
123-
const realDependencyName = versionInfo.substring(4, versionInfo.lastIndexOf('@'));
124-
dependencies.push(realDependencyName);
126+
const packPath = require.resolve(`${dependency}/package.json`);
127+
const packJson = await fs.readJson(packPath);
128+
129+
dependencies.push(packJson.name);
125130
}
126131

127132
return dependencies;

0 commit comments

Comments
 (0)