@angular/cli 21.1.0-next.1 → 21.1.0-next.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/lib/code-examples.db +0 -0
  2. package/lib/config/schema.json +1 -2
  3. package/package.json +17 -17
  4. package/src/commands/add/cli.js +129 -87
  5. package/src/commands/add/cli.js.map +1 -1
  6. package/src/commands/mcp/cli.js +4 -1
  7. package/src/commands/mcp/cli.js.map +1 -1
  8. package/src/commands/mcp/{dev-server.d.ts → devserver.d.ts} +4 -4
  9. package/src/commands/mcp/{dev-server.js → devserver.js} +14 -14
  10. package/src/commands/mcp/devserver.js.map +1 -0
  11. package/src/commands/mcp/mcp-server.d.ts +30 -0
  12. package/src/commands/mcp/mcp-server.js +22 -7
  13. package/src/commands/mcp/mcp-server.js.map +1 -1
  14. package/src/commands/mcp/resources/ai-tutor.md +16 -15
  15. package/src/commands/mcp/tools/best-practices.js.map +1 -1
  16. package/src/commands/mcp/tools/build.js +2 -2
  17. package/src/commands/mcp/tools/build.js.map +1 -1
  18. package/src/commands/mcp/tools/devserver/{start-devserver.d.ts → devserver-start.d.ts} +6 -7
  19. package/src/commands/mcp/tools/devserver/{start-devserver.js → devserver-start.js} +26 -27
  20. package/src/commands/mcp/tools/devserver/devserver-start.js.map +1 -0
  21. package/src/commands/mcp/tools/devserver/{stop-devserver.d.ts → devserver-stop.d.ts} +6 -6
  22. package/src/commands/mcp/tools/devserver/{stop-devserver.js → devserver-stop.js} +13 -13
  23. package/src/commands/mcp/tools/devserver/{stop-devserver.js.map → devserver-stop.js.map} +1 -1
  24. package/src/commands/mcp/tools/devserver/{wait-for-devserver-build.d.ts → devserver-wait-for-build.d.ts} +6 -6
  25. package/src/commands/mcp/tools/devserver/{wait-for-devserver-build.js → devserver-wait-for-build.js} +16 -16
  26. package/src/commands/mcp/tools/devserver/{wait-for-devserver-build.js.map → devserver-wait-for-build.js.map} +1 -1
  27. package/src/commands/mcp/tools/modernize.js +1 -1
  28. package/src/commands/mcp/tools/modernize.js.map +1 -1
  29. package/src/commands/mcp/tools/projects.js +47 -8
  30. package/src/commands/mcp/tools/projects.js.map +1 -1
  31. package/src/commands/mcp/tools/tool-registry.d.ts +2 -2
  32. package/src/commands/mcp/tools/tool-registry.js.map +1 -1
  33. package/src/commands/update/cli.d.ts +0 -24
  34. package/src/commands/update/cli.js +39 -447
  35. package/src/commands/update/cli.js.map +1 -1
  36. package/src/commands/update/schematic/index.js +0 -12
  37. package/src/commands/update/schematic/index.js.map +1 -1
  38. package/src/commands/update/utilities/cli-version.d.ts +48 -0
  39. package/src/commands/update/utilities/cli-version.js +196 -0
  40. package/src/commands/update/utilities/cli-version.js.map +1 -0
  41. package/src/commands/update/utilities/constants.d.ts +12 -0
  42. package/src/commands/update/utilities/constants.js +16 -0
  43. package/src/commands/update/utilities/constants.js.map +1 -0
  44. package/src/commands/update/utilities/git.d.ts +36 -0
  45. package/src/commands/update/utilities/git.js +148 -0
  46. package/src/commands/update/utilities/git.js.map +1 -0
  47. package/src/commands/update/utilities/migration.d.ts +32 -0
  48. package/src/commands/update/utilities/migration.js +257 -0
  49. package/src/commands/update/utilities/migration.js.map +1 -0
  50. package/src/package-managers/error.d.ts +12 -0
  51. package/src/package-managers/host.js +7 -3
  52. package/src/package-managers/host.js.map +1 -1
  53. package/src/package-managers/package-manager-descriptor.d.ts +28 -4
  54. package/src/package-managers/package-manager-descriptor.js +24 -4
  55. package/src/package-managers/package-manager-descriptor.js.map +1 -1
  56. package/src/package-managers/package-manager.js +71 -8
  57. package/src/package-managers/package-manager.js.map +1 -1
  58. package/src/package-managers/parsers.d.ts +69 -4
  59. package/src/package-managers/parsers.js +231 -32
  60. package/src/package-managers/parsers.js.map +1 -1
  61. package/src/utilities/version.js +1 -1
  62. package/src/commands/mcp/dev-server.js.map +0 -1
  63. package/src/commands/mcp/tools/devserver/start-devserver.js.map +0 -1
@@ -9,6 +9,16 @@
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
10
  exports.PACKAGE_MANAGER_PRECEDENCE = exports.SUPPORTED_PACKAGE_MANAGERS = void 0;
11
11
  const parsers_1 = require("./parsers");
12
+ /** A set of error codes that are known to indicate a "package not found" error. */
13
+ const NOT_FOUND_ERROR_CODES = new Set(['E404']);
14
+ /**
15
+ * A shared function to check if a structured error represents a "package not found" error.
16
+ * @param error The structured error to check.
17
+ * @returns True if the error code is a known "not found" code, false otherwise.
18
+ */
19
+ function isKnownNotFound(error) {
20
+ return NOT_FOUND_ERROR_CODES.has(error.code);
21
+ }
12
22
  /**
13
23
  * A map of supported package managers to their descriptors.
14
24
  * This is the single source of truth for all package-manager-specific
@@ -41,7 +51,9 @@ exports.SUPPORTED_PACKAGE_MANAGERS = {
41
51
  listDependencies: parsers_1.parseNpmLikeDependencies,
42
52
  getRegistryManifest: parsers_1.parseNpmLikeManifest,
43
53
  getRegistryMetadata: parsers_1.parseNpmLikeMetadata,
54
+ getError: parsers_1.parseNpmLikeError,
44
55
  },
56
+ isNotFound: isKnownNotFound,
45
57
  },
46
58
  yarn: {
47
59
  binary: 'yarn',
@@ -63,7 +75,9 @@ exports.SUPPORTED_PACKAGE_MANAGERS = {
63
75
  listDependencies: parsers_1.parseYarnModernDependencies,
64
76
  getRegistryManifest: parsers_1.parseNpmLikeManifest,
65
77
  getRegistryMetadata: parsers_1.parseNpmLikeMetadata,
78
+ getError: parsers_1.parseNpmLikeError,
66
79
  },
80
+ isNotFound: isKnownNotFound,
67
81
  },
68
82
  'yarn-classic': {
69
83
  binary: 'yarn',
@@ -82,12 +96,15 @@ exports.SUPPORTED_PACKAGE_MANAGERS = {
82
96
  getRegistryOptions: (registry) => ({ args: ['--registry', registry] }),
83
97
  versionCommand: ['--version'],
84
98
  listDependenciesCommand: ['list', '--depth=0', '--json'],
85
- getManifestCommand: ['info', '--json'],
99
+ getManifestCommand: ['info', '--json', '--verbose'],
100
+ requiresManifestVersionLookup: true,
86
101
  outputParsers: {
87
102
  listDependencies: parsers_1.parseYarnClassicDependencies,
88
- getRegistryManifest: parsers_1.parseYarnLegacyManifest,
89
- getRegistryMetadata: parsers_1.parseNpmLikeMetadata,
103
+ getRegistryManifest: parsers_1.parseYarnClassicManifest,
104
+ getRegistryMetadata: parsers_1.parseYarnClassicMetadata,
105
+ getError: parsers_1.parseYarnClassicError,
90
106
  },
107
+ isNotFound: isKnownNotFound,
91
108
  },
92
109
  pnpm: {
93
110
  binary: 'pnpm',
@@ -109,7 +126,9 @@ exports.SUPPORTED_PACKAGE_MANAGERS = {
109
126
  listDependencies: parsers_1.parseNpmLikeDependencies,
110
127
  getRegistryManifest: parsers_1.parseNpmLikeManifest,
111
128
  getRegistryMetadata: parsers_1.parseNpmLikeMetadata,
129
+ getError: parsers_1.parseNpmLikeError,
112
130
  },
131
+ isNotFound: isKnownNotFound,
113
132
  },
114
133
  bun: {
115
134
  binary: 'bun',
@@ -126,12 +145,13 @@ exports.SUPPORTED_PACKAGE_MANAGERS = {
126
145
  versionCommand: ['--version'],
127
146
  listDependenciesCommand: ['pm', 'ls', '--json'],
128
147
  getManifestCommand: ['pm', 'view', '--json'],
129
- viewCommandFieldArgFormatter: (fields) => [...fields],
130
148
  outputParsers: {
131
149
  listDependencies: parsers_1.parseNpmLikeDependencies,
132
150
  getRegistryManifest: parsers_1.parseNpmLikeManifest,
133
151
  getRegistryMetadata: parsers_1.parseNpmLikeMetadata,
152
+ getError: parsers_1.parseNpmLikeError,
134
153
  },
154
+ isNotFound: isKnownNotFound,
135
155
  },
136
156
  };
137
157
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager-descriptor.js","sourceRoot":"","sources":["package-manager-descriptor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-manager-descriptor.js","sourceRoot":"","sources":["package-manager-descriptor.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ exports.PackageManager = void 0;
18
18
  */
19
19
  const node_path_1 = require("node:path");
20
20
  const npm_package_arg_1 = __importDefault(require("npm-package-arg"));
21
+ const semver_1 = require("semver");
21
22
  const error_1 = require("./error");
22
23
  /**
23
24
  * The fields to request from the registry for package metadata.
@@ -120,12 +121,13 @@ class PackageManager {
120
121
  this.options.logger?.info(`[DRY RUN] Would execute in [${executionDirectory}]: ${this.descriptor.binary} ${finalArgs.join(' ')}`);
121
122
  return { stdout: '', stderr: '' };
122
123
  }
123
- return this.host.runCommand(this.descriptor.binary, finalArgs, {
124
+ const commandResult = await this.host.runCommand(this.descriptor.binary, finalArgs, {
124
125
  ...runOptions,
125
126
  cwd: executionDirectory,
126
127
  stdio: 'pipe',
127
128
  env: finalEnv,
128
129
  });
130
+ return { stdout: commandResult.stdout.trim(), stderr: commandResult.stderr.trim() };
129
131
  }
130
132
  /**
131
133
  * A private, generic method to encapsulate the common logic of running a command,
@@ -142,19 +144,50 @@ class PackageManager {
142
144
  }
143
145
  let stdout;
144
146
  let stderr;
147
+ let exitCode;
148
+ let thrownError;
145
149
  try {
146
150
  ({ stdout, stderr } = await this.#run(args, runOptions));
151
+ exitCode = 0;
147
152
  }
148
153
  catch (e) {
149
- if (e instanceof error_1.PackageManagerError && typeof e.exitCode === 'number' && e.exitCode !== 0) {
150
- // Some package managers exit with a non-zero code when the package is not found.
154
+ thrownError = e;
155
+ if (e instanceof error_1.PackageManagerError) {
156
+ stdout = e.stdout;
157
+ stderr = e.stderr;
158
+ exitCode = e.exitCode;
159
+ }
160
+ else {
161
+ // Re-throw unexpected errors
162
+ throw e;
163
+ }
164
+ }
165
+ // Yarn classic can exit with code 0 even when an error occurs.
166
+ // To ensure we capture these cases, we will always attempt to parse a
167
+ // structured error from the output, regardless of the exit code.
168
+ const getError = this.descriptor.outputParsers.getError;
169
+ const parsedError = getError?.(stdout, this.options.logger) ?? getError?.(stderr, this.options.logger) ?? null;
170
+ if (parsedError) {
171
+ this.options.logger?.debug(`[${this.descriptor.binary}] Structured error (code: ${parsedError.code}): ${parsedError.summary}`);
172
+ // Special case for 'not found' errors (e.g., E404). Return null for these.
173
+ if (this.descriptor.isNotFound(parsedError)) {
151
174
  if (cache && cacheKey) {
152
175
  cache.set(cacheKey, null);
153
176
  }
154
177
  return null;
155
178
  }
156
- throw e;
179
+ else {
180
+ // For all other structured errors, throw a more informative error.
181
+ throw new error_1.PackageManagerError(parsedError.summary, stdout, stderr, exitCode);
182
+ }
183
+ }
184
+ // If an error was originally thrown and we didn't parse a more specific
185
+ // structured error, re-throw the original error now.
186
+ if (thrownError) {
187
+ throw thrownError;
157
188
  }
189
+ // If we reach this point, the command succeeded and no structured error was found.
190
+ // We can now safely parse the successful output.
158
191
  try {
159
192
  const result = parser(stdout, this.options.logger);
160
193
  if (cache && cacheKey) {
@@ -164,7 +197,7 @@ class PackageManager {
164
197
  }
165
198
  catch (e) {
166
199
  const message = `Failed to parse package manager output: ${e instanceof Error ? e.message : ''}`;
167
- throw new error_1.PackageManagerError(message, stdout, stderr, 0);
200
+ throw new error_1.PackageManagerError(message, stdout, stderr, exitCode);
168
201
  }
169
202
  }
170
203
  /**
@@ -273,7 +306,16 @@ class PackageManager {
273
306
  commandArgs.push(...formatter(MANIFEST_FIELDS));
274
307
  }
275
308
  const cacheKey = options.registry ? `${specifier}|${options.registry}` : specifier;
276
- return this.#fetchAndParse(commandArgs, (stdout, logger) => this.descriptor.outputParsers.getRegistryManifest(stdout, logger), { ...options, cache: this.#manifestCache, cacheKey });
309
+ const manifest = await this.#fetchAndParse(commandArgs, (stdout, logger) => this.descriptor.outputParsers.getRegistryManifest(stdout, logger), { ...options, cache: this.#manifestCache, cacheKey });
310
+ // If the provided version was not a specific version, also cache the specific fetched version
311
+ if (manifest && manifest.version !== version) {
312
+ const manifestSpecifier = `${manifest.name}@${manifest.version}`;
313
+ const manifestCacheKey = options.registry
314
+ ? `${manifestSpecifier}|${options.registry}`
315
+ : manifestSpecifier;
316
+ this.#manifestCache.set(manifestCacheKey, manifest);
317
+ }
318
+ return manifest;
277
319
  }
278
320
  /**
279
321
  * Fetches the manifest for a package.
@@ -291,12 +333,33 @@ class PackageManager {
291
333
  switch (type) {
292
334
  case 'range':
293
335
  case 'version':
294
- case 'tag':
336
+ case 'tag': {
295
337
  if (!name) {
296
338
  throw new Error(`Could not parse package name from specifier: ${specifier}`);
297
339
  }
298
340
  // `fetchSpec` is the version, range, or tag.
299
- return this.getRegistryManifest(name, fetchSpec ?? 'latest', options);
341
+ let versionSpec = fetchSpec ?? 'latest';
342
+ if (this.descriptor.requiresManifestVersionLookup) {
343
+ if (type === 'tag' || !fetchSpec) {
344
+ const metadata = await this.getRegistryMetadata(name, options);
345
+ if (!metadata) {
346
+ return null;
347
+ }
348
+ versionSpec = metadata['dist-tags'][versionSpec];
349
+ }
350
+ else if (type === 'range') {
351
+ const metadata = await this.getRegistryMetadata(name, options);
352
+ if (!metadata) {
353
+ return null;
354
+ }
355
+ versionSpec = (0, semver_1.maxSatisfying)(metadata.versions, fetchSpec) ?? '';
356
+ }
357
+ if (!versionSpec) {
358
+ return null;
359
+ }
360
+ }
361
+ return this.getRegistryManifest(name, versionSpec, options);
362
+ }
300
363
  case 'directory': {
301
364
  if (!fetchSpec) {
302
365
  throw new Error(`Could not parse directory path from specifier: ${specifier}`);
@@ -1 +1 @@
1
- {"version":3,"file":"package-manager.js","sourceRoot":"","sources":["package-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"package-manager.js","sourceRoot":"","sources":["package-manager.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@
10
10
  * interpret the output of various package manager commands. Separating these
11
11
  * into their own file improves modularity and allows for focused testing.
12
12
  */
13
+ import { ErrorInfo } from './error';
13
14
  import { Logger } from './logger';
14
15
  import { PackageManifest, PackageMetadata } from './package-metadata';
15
16
  import { InstalledPackage } from './package-tree';
@@ -38,7 +39,7 @@ export declare function parseNpmLikeDependencies(stdout: string, logger?: Logger
38
39
  * Parses the output of `yarn list` (classic).
39
40
  *
40
41
  * The expected output is a JSON stream (JSONL), where each line is a JSON object.
41
- * The relevant object has a `type` of `'tree'`.
42
+ * The relevant object has a `type` of `'tree'` with a `data` property.
42
43
  * Yarn classic does not provide a path, so the `path` property will be `undefined`.
43
44
  *
44
45
  * ```json
@@ -84,9 +85,73 @@ export declare function parseNpmLikeManifest(stdout: string, logger?: Logger): P
84
85
  */
85
86
  export declare function parseNpmLikeMetadata(stdout: string, logger?: Logger): PackageMetadata | null;
86
87
  /**
87
- * Parses the output of `yarn info` (classic).
88
+ * Parses the output of `yarn info` (classic) to get a package manifest.
89
+ *
90
+ * When `yarn info --verbose` is used, the output is a JSONL stream. This function
91
+ * iterates through the lines to find the object with `type: 'inspect'` which contains
92
+ * the package manifest.
93
+ *
94
+ * For non-verbose output, it falls back to parsing a single JSON object.
95
+ *
88
96
  * @param stdout The standard output of the command.
89
97
  * @param logger An optional logger instance.
90
- * @returns The package manifest object.
98
+ * @returns The package manifest object, or `null` if not found.
99
+ */
100
+ export declare function parseYarnClassicManifest(stdout: string, logger?: Logger): PackageManifest | null;
101
+ /**
102
+ * Parses the output of `yarn info` (classic) to get package metadata.
103
+ * @param stdout The standard output of the command.
104
+ * @param logger An optional logger instance.
105
+ * @returns The package metadata object.
106
+ */
107
+ export declare function parseYarnClassicMetadata(stdout: string, logger?: Logger): PackageMetadata | null;
108
+ /**
109
+ * Parses the `stdout` or `stderr` output of npm, pnpm, modern yarn, or bun to extract structured error information.
110
+ *
111
+ * This parser uses a multi-stage approach. It first attempts to parse the entire `output` as a
112
+ * single JSON object, which is the standard for modern tools like pnpm, yarn, and bun. If JSON
113
+ * parsing fails, it falls back to a line-by-line regex-based approach to handle the plain
114
+ * text output from older versions of npm.
115
+ *
116
+ * Example JSON output (pnpm):
117
+ * ```json
118
+ * {
119
+ * "code": "E404",
120
+ * "summary": "Not Found - GET https://registry.npmjs.org/@angular%2fnon-existent - Not found",
121
+ * "detail": "The requested resource '@angular/non-existent@*' could not be found or you do not have permission to access it."
122
+ * }
123
+ * ```
124
+ *
125
+ * Example text output (npm):
126
+ * ```
127
+ * npm error code E404
128
+ * npm error 404 Not Found - GET https://registry.npmjs.org/@angular%2fnon-existent - Not found
129
+ * ```
130
+ *
131
+ * @param output The standard output or standard error of the command.
132
+ * @param logger An optional logger instance.
133
+ * @returns An `ErrorInfo` object if parsing is successful, otherwise `null`.
134
+ */
135
+ export declare function parseNpmLikeError(output: string, logger?: Logger): ErrorInfo | null;
136
+ /**
137
+ * Parses the `stdout` or `stderr` output of yarn classic to extract structured error information.
138
+ *
139
+ * This parser first attempts to find an HTTP status code (e.g., 404, 401) in the verbose output.
140
+ * If found, it returns a standardized error code (`E${statusCode}`).
141
+ * If no HTTP status code is found, it falls back to parsing generic JSON error lines.
142
+ *
143
+ * Example verbose output (with HTTP status code):
144
+ * ```json
145
+ * {"type":"verbose","data":"Request \"https://registry.npmjs.org/@angular%2fnon-existent\" finished with status code 404."}
146
+ * ```
147
+ *
148
+ * Example generic JSON error output:
149
+ * ```json
150
+ * {"type":"error","data":"Received invalid response from npm."}
151
+ * ```
152
+ *
153
+ * @param output The standard output or standard error of the command.
154
+ * @param logger An optional logger instance.
155
+ * @returns An `ErrorInfo` object if parsing is successful, otherwise `null`.
91
156
  */
92
- export declare function parseYarnLegacyManifest(stdout: string, logger?: Logger): PackageManifest | null;
157
+ export declare function parseYarnClassicError(output: string, logger?: Logger): ErrorInfo | null;