Skip to content

Commit 1542365

Browse files
alan-agius4clydin
authored andcommitted
refactor(@angular/cli): add package manager in command context
1 parent 7ab22ed commit 1542365

File tree

3 files changed

+8
-9
lines changed

3 files changed

+8
-9
lines changed

packages/angular/cli/src/command-builder/architect-base-command-module.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { json } from '@angular-devkit/core';
1212
import { existsSync } from 'fs';
1313
import { resolve } from 'path';
1414
import { isPackageNameSafeForAnalytics } from '../analytics/analytics';
15-
import { getPackageManager } from '../utilities/package-manager';
1615
import {
1716
CommandModule,
1817
CommandModuleError,
@@ -100,7 +99,7 @@ export abstract class ArchitectBaseCommandModule<T>
10099
builderDesc = await architectHost.resolveBuilder(builderConf);
101100
} catch (e) {
102101
if (e.code === 'MODULE_NOT_FOUND') {
103-
await this.warnOnMissingNodeModules();
102+
this.warnOnMissingNodeModules();
104103
throw new CommandModuleError(`Could not find the '${builderConf}' builder's node package.`);
105104
}
106105

@@ -114,7 +113,7 @@ export abstract class ArchitectBaseCommandModule<T>
114113
);
115114
}
116115

117-
private async warnOnMissingNodeModules(): Promise<void> {
116+
private warnOnMissingNodeModules(): void {
118117
const basePath = this.context.workspace?.basePath;
119118
if (!basePath) {
120119
return;
@@ -134,9 +133,8 @@ export abstract class ArchitectBaseCommandModule<T>
134133
return;
135134
}
136135

137-
const packageManager = await getPackageManager(basePath);
138136
this.context.logger.warn(
139-
`Node packages may not be installed. Try installing with '${packageManager} install'.`,
137+
`Node packages may not be installed. Try installing with '${this.context.packageManager} install'.`,
140138
);
141139
}
142140
}

packages/angular/cli/src/command-builder/command-runner.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import { UpdateCommandModule } from '../commands/update/cli';
2828
import { VersionCommandModule } from '../commands/version/cli';
2929
import { colors } from '../utilities/color';
3030
import { AngularWorkspace } from '../utilities/config';
31+
import { getPackageManager } from '../utilities/package-manager';
3132
import { CommandContext, CommandModuleError, CommandScope } from './command-module';
3233
import { addCommandModuleToYargs, demandCommandFailureMessage } from './utilities/command';
3334
import { jsonHelpUsage } from './utilities/json-help';
@@ -72,6 +73,7 @@ export async function runCommand(
7273
logger,
7374
currentDirectory: process.cwd(),
7475
root: workspace?.basePath ?? process.cwd(),
76+
packageManager: await getPackageManager(workspace?.basePath ?? process.cwd()),
7577
args: {
7678
positional: positional.map((v) => v.toString()),
7779
options: {

packages/angular/cli/src/commands/version/cli.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import { resolve } from 'path';
1212
import { Argv } from 'yargs';
1313
import { CommandModule, CommandModuleImplementation } from '../../command-builder/command-module';
1414
import { colors } from '../../utilities/color';
15-
import { getPackageManager } from '../../utilities/package-manager';
1615

1716
interface PartialPackageInfo {
1817
name: string;
@@ -126,7 +125,7 @@ export class VersionCommandModule extends CommandModule implements CommandModule
126125
`
127126
Angular CLI: ${ngCliVersion}
128127
Node: ${process.versions.node}${unsupportedNodeVersion ? ' (Unsupported)' : ''}
129-
Package Manager: ${await this.getPackageManagerVersion()}
128+
Package Manager: ${this.getPackageManagerVersion()}
130129
OS: ${process.platform} ${process.arch}
131130
132131
Angular: ${angularCoreVersion}
@@ -194,9 +193,9 @@ export class VersionCommandModule extends CommandModule implements CommandModule
194193
return '<error>';
195194
}
196195

197-
private async getPackageManagerVersion(): Promise<string> {
196+
private getPackageManagerVersion(): string {
198197
try {
199-
const manager = await getPackageManager(this.context.root);
198+
const manager = this.context.packageManager;
200199
const version = execSync(`${manager} --version`, {
201200
encoding: 'utf8',
202201
stdio: ['ignore', 'pipe', 'ignore'],

0 commit comments

Comments
 (0)