Skip to content

Commit c828c42

Browse files
committed
fix(@angular/cli): update bun package manager descriptor fields
1 parent 8c7784c commit c828c42

File tree

3 files changed

+10
-7
lines changed

3 files changed

+10
-7
lines changed

packages/angular/cli/src/package-managers/package-manager-descriptor.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ import {
2020
parseNpmLikeManifest,
2121
parseNpmLikeMetadata,
2222
parseYarnClassicDependencies,
23-
parseYarnLegacyManifest,
23+
parseYarnClassicManifest,
2424
parseYarnModernDependencies,
2525
} from './parsers';
2626

@@ -168,7 +168,7 @@ export const SUPPORTED_PACKAGE_MANAGERS = {
168168
getManifestCommand: ['info', '--json'],
169169
outputParsers: {
170170
listDependencies: parseYarnClassicDependencies,
171-
getRegistryManifest: parseYarnLegacyManifest,
171+
getRegistryManifest: parseYarnClassicManifest,
172172
getRegistryMetadata: parseNpmLikeMetadata,
173173
},
174174
},
@@ -202,14 +202,13 @@ export const SUPPORTED_PACKAGE_MANAGERS = {
202202
forceFlag: '--force',
203203
saveExactFlag: '--exact',
204204
saveTildeFlag: '', // Bun does not have a flag for tilde, it defaults to caret.
205-
saveDevFlag: '--development',
205+
saveDevFlag: '--dev',
206206
noLockfileFlag: '', // Bun does not have a flag for this.
207207
ignoreScriptsFlag: '--ignore-scripts',
208208
getRegistryOptions: (registry: string) => ({ args: ['--registry', registry] }),
209209
versionCommand: ['--version'],
210210
listDependenciesCommand: ['pm', 'ls', '--json'],
211211
getManifestCommand: ['pm', 'view', '--json'],
212-
viewCommandFieldArgFormatter: (fields) => [...fields],
213212
outputParsers: {
214213
listDependencies: parseNpmLikeDependencies,
215214
getRegistryManifest: parseNpmLikeManifest,

packages/angular/cli/src/package-managers/package-manager.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,12 +156,14 @@ export class PackageManager {
156156
return { stdout: '', stderr: '' };
157157
}
158158

159-
return this.host.runCommand(this.descriptor.binary, finalArgs, {
159+
const commandResult = await this.host.runCommand(this.descriptor.binary, finalArgs, {
160160
...runOptions,
161161
cwd: executionDirectory,
162162
stdio: 'pipe',
163163
env: finalEnv,
164164
});
165+
166+
return { stdout: commandResult.stdout.trim(), stderr: commandResult.stderr.trim() };
165167
}
166168

167169
/**

packages/angular/cli/src/package-managers/parsers.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -274,7 +274,7 @@ export function parseNpmLikeMetadata(stdout: string, logger?: Logger): PackageMe
274274
* @param logger An optional logger instance.
275275
* @returns The package manifest object.
276276
*/
277-
export function parseYarnLegacyManifest(stdout: string, logger?: Logger): PackageManifest | null {
277+
export function parseYarnClassicManifest(stdout: string, logger?: Logger): PackageManifest | null {
278278
logger?.debug(`Parsing yarn classic manifest...`);
279279
logStdout(stdout, logger);
280280

@@ -287,5 +287,7 @@ export function parseYarnLegacyManifest(stdout: string, logger?: Logger): Packag
287287
const data = JSON.parse(stdout);
288288

289289
// Yarn classic wraps the manifest in a `data` property.
290-
return data.data ?? data;
290+
const manifest = data.data as PackageManifest;
291+
292+
return manifest;
291293
}

0 commit comments

Comments
 (0)