@angular/cli 17.2.0-next.0 → 17.2.0-rc.0

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.
@@ -53,7 +53,8 @@
53
53
  "npm",
54
54
  "cnpm",
55
55
  "yarn",
56
- "pnpm"
56
+ "pnpm",
57
+ "bun"
57
58
  ]
58
59
  },
59
60
  "warnings": {
@@ -119,7 +120,8 @@
119
120
  "npm",
120
121
  "cnpm",
121
122
  "yarn",
122
- "pnpm"
123
+ "pnpm",
124
+ "bun"
123
125
  ]
124
126
  },
125
127
  "warnings": {
@@ -1574,7 +1576,8 @@
1574
1576
  "npm",
1575
1577
  "yarn",
1576
1578
  "pnpm",
1577
- "cnpm"
1579
+ "cnpm",
1580
+ "bun"
1578
1581
  ]
1579
1582
  },
1580
1583
  "standalone": {
@@ -1850,6 +1853,11 @@
1850
1853
  },
1851
1854
  "default": []
1852
1855
  },
1856
+ "clearScreen": {
1857
+ "type": "boolean",
1858
+ "default": false,
1859
+ "description": "Automatically clear the terminal screen during rebuilds."
1860
+ },
1853
1861
  "optimization": {
1854
1862
  "description": "Enables optimization of the build output. Including minification of scripts and styles, tree-shaking, dead-code elimination, inlining of critical CSS and fonts inlining. For more information, see https://angular.io/guide/workspace-config#optimization-configuration.",
1855
1863
  "default": true,
@@ -1934,6 +1942,13 @@
1934
1942
  }
1935
1943
  }
1936
1944
  },
1945
+ "define": {
1946
+ "description": "Defines global identifiers that will be replaced with a specified constant value when found in any JavaScript or TypeScript code including libraries. The value will be used directly. String values must be put in quotes. Identifiers within Angular metadata such as Component Decorators will not be replaced.",
1947
+ "type": "object",
1948
+ "additionalProperties": {
1949
+ "type": "string"
1950
+ }
1951
+ },
1937
1952
  "fileReplacements": {
1938
1953
  "description": "Replace compilation source files with other compilation source files in the build.",
1939
1954
  "type": "array",
@@ -3627,6 +3642,27 @@
3627
3642
  "type": "boolean",
3628
3643
  "description": "Force the development server to use the 'browser-esbuild' builder when building. This is a developer preview option for the esbuild-based build system.",
3629
3644
  "default": false
3645
+ },
3646
+ "prebundle": {
3647
+ "description": "Enable and control the Vite-based development server's prebundling capabilities. To enable prebundling, the Angular CLI cache must also be enabled. This option has no effect when using the 'browser' or other Webpack-based builders.",
3648
+ "oneOf": [
3649
+ {
3650
+ "type": "boolean"
3651
+ },
3652
+ {
3653
+ "type": "object",
3654
+ "properties": {
3655
+ "exclude": {
3656
+ "description": "List of package imports that should not be prebundled by the development server. The packages will be bundled into the application code itself.",
3657
+ "type": "array",
3658
+ "items": {
3659
+ "type": "string"
3660
+ }
3661
+ }
3662
+ },
3663
+ "additionalProperties": false
3664
+ }
3665
+ ]
3630
3666
  }
3631
3667
  },
3632
3668
  "additionalProperties": false,
@@ -66,6 +66,7 @@ export declare enum Environment {
66
66
  * The package manager used to install dependencies.
67
67
  */
68
68
  export declare enum PackageManager {
69
+ Bun = "bun",
69
70
  Cnpm = "cnpm",
70
71
  Npm = "npm",
71
72
  Pnpm = "pnpm",
@@ -19,6 +19,7 @@ var Environment;
19
19
  */
20
20
  var PackageManager;
21
21
  (function (PackageManager) {
22
+ PackageManager["Bun"] = "bun";
22
23
  PackageManager["Cnpm"] = "cnpm";
23
24
  PackageManager["Npm"] = "npm";
24
25
  PackageManager["Pnpm"] = "pnpm";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@angular/cli",
3
- "version": "17.2.0-next.0",
3
+ "version": "17.2.0-rc.0",
4
4
  "description": "CLI tool for Angular",
5
5
  "main": "lib/cli/index.js",
6
6
  "bin": {
@@ -25,14 +25,14 @@
25
25
  },
26
26
  "homepage": "https://github.com/angular/angular-cli",
27
27
  "dependencies": {
28
- "@angular-devkit/architect": "0.1702.0-next.0",
29
- "@angular-devkit/core": "17.2.0-next.0",
30
- "@angular-devkit/schematics": "17.2.0-next.0",
31
- "@schematics/angular": "17.2.0-next.0",
28
+ "@angular-devkit/architect": "0.1702.0-rc.0",
29
+ "@angular-devkit/core": "17.2.0-rc.0",
30
+ "@angular-devkit/schematics": "17.2.0-rc.0",
31
+ "@schematics/angular": "17.2.0-rc.0",
32
32
  "@yarnpkg/lockfile": "1.1.0",
33
33
  "ansi-colors": "4.1.3",
34
34
  "ini": "4.1.1",
35
- "inquirer": "9.2.12",
35
+ "inquirer": "9.2.14",
36
36
  "jsonc-parser": "3.2.1",
37
37
  "npm-package-arg": "11.0.1",
38
38
  "npm-pick-manifest": "9.0.0",
@@ -40,20 +40,20 @@
40
40
  "ora": "5.4.1",
41
41
  "pacote": "17.0.6",
42
42
  "resolve": "1.22.8",
43
- "semver": "7.5.4",
43
+ "semver": "7.6.0",
44
44
  "symbol-observable": "4.0.0",
45
45
  "yargs": "17.7.2"
46
46
  },
47
47
  "ng-update": {
48
48
  "migrations": "@schematics/angular/migrations/migration-collection.json",
49
49
  "packageGroup": {
50
- "@angular/cli": "17.2.0-next.0",
51
- "@angular/ssr": "17.2.0-next.0",
52
- "@angular-devkit/architect": "0.1702.0-next.0",
53
- "@angular-devkit/build-angular": "17.2.0-next.0",
54
- "@angular-devkit/build-webpack": "0.1702.0-next.0",
55
- "@angular-devkit/core": "17.2.0-next.0",
56
- "@angular-devkit/schematics": "17.2.0-next.0"
50
+ "@angular/cli": "17.2.0-rc.0",
51
+ "@angular/ssr": "17.2.0-rc.0",
52
+ "@angular-devkit/architect": "0.1702.0-rc.0",
53
+ "@angular-devkit/build-angular": "17.2.0-rc.0",
54
+ "@angular-devkit/build-webpack": "0.1702.0-rc.0",
55
+ "@angular-devkit/core": "17.2.0-rc.0",
56
+ "@angular-devkit/schematics": "17.2.0-rc.0"
57
57
  }
58
58
  },
59
59
  "engines": {
@@ -7,7 +7,7 @@
7
7
  * found in the LICENSE file at https://angular.io/license
8
8
  */
9
9
  Object.defineProperty(exports, "__esModule", { value: true });
10
- const path_1 = require("path");
10
+ const node_path_1 = require("node:path");
11
11
  const architect_command_module_1 = require("../../command-builder/architect-command-module");
12
12
  class DeployCommandModule extends architect_command_module_1.ArchitectCommandModule {
13
13
  // The below choices should be kept in sync with the list in https://angular.io/guide/deployment
@@ -24,10 +24,6 @@ class DeployCommandModule extends architect_command_module_1.ArchitectCommandMod
24
24
  name: 'Netlify',
25
25
  value: '@netlify-builder/deploy',
26
26
  },
27
- {
28
- name: 'NPM',
29
- value: 'ngx-deploy-npm',
30
- },
31
27
  {
32
28
  name: 'GitHub Pages',
33
29
  value: 'angular-cli-ghpages',
@@ -35,7 +31,7 @@ class DeployCommandModule extends architect_command_module_1.ArchitectCommandMod
35
31
  ];
36
32
  multiTarget = false;
37
33
  command = 'deploy [project]';
38
- longDescriptionPath = (0, path_1.join)(__dirname, 'long-description.md');
34
+ longDescriptionPath = (0, node_path_1.join)(__dirname, 'long-description.md');
39
35
  describe = 'Invokes the deploy builder for a specified project or for the default project in the workspace.';
40
36
  }
41
37
  exports.default = DeployCommandModule;
@@ -44,6 +44,7 @@ export interface Schema {
44
44
  * The preferred package manager configuration files to use for registry settings.
45
45
  */
46
46
  export declare enum PackageManager {
47
+ Bun = "bun",
47
48
  Cnpm = "cnpm",
48
49
  Npm = "npm",
49
50
  Pnpm = "pnpm",
@@ -8,6 +8,7 @@ exports.PackageManager = void 0;
8
8
  */
9
9
  var PackageManager;
10
10
  (function (PackageManager) {
11
+ PackageManager["Bun"] = "bun";
11
12
  PackageManager["Cnpm"] = "cnpm";
12
13
  PackageManager["Npm"] = "npm";
13
14
  PackageManager["Pnpm"] = "pnpm";
@@ -57,7 +57,7 @@
57
57
  "description": "The preferred package manager configuration files to use for registry settings.",
58
58
  "type": "string",
59
59
  "default": "npm",
60
- "enum": ["npm", "yarn", "cnpm", "pnpm"]
60
+ "enum": ["npm", "yarn", "cnpm", "pnpm", "bun"]
61
61
  }
62
62
  },
63
63
  "required": []
@@ -113,6 +113,14 @@ class PackageManagerUtils {
113
113
  prefix: '--prefix',
114
114
  noLockfile: '--no-lockfile',
115
115
  };
116
+ case workspace_schema_1.PackageManager.Bun:
117
+ return {
118
+ saveDev: '--development',
119
+ install: 'add',
120
+ installAll: 'install',
121
+ prefix: '--cwd',
122
+ noLockfile: '',
123
+ };
116
124
  default:
117
125
  return {
118
126
  saveDev: '--save-dev',
@@ -175,12 +183,13 @@ class PackageManagerUtils {
175
183
  const hasNpmLock = this.hasLockfile(workspace_schema_1.PackageManager.Npm);
176
184
  const hasYarnLock = this.hasLockfile(workspace_schema_1.PackageManager.Yarn);
177
185
  const hasPnpmLock = this.hasLockfile(workspace_schema_1.PackageManager.Pnpm);
186
+ const hasBunLock = this.hasLockfile(workspace_schema_1.PackageManager.Bun);
178
187
  // PERF NOTE: `this.getVersion` spawns the package a the child_process which can take around ~300ms at times.
179
188
  // Therefore, we should only call this method when needed. IE: don't call `this.getVersion(PackageManager.Pnpm)` unless truly needed.
180
189
  // The result of this method is not stored in a variable because it's memoized.
181
190
  if (hasNpmLock) {
182
191
  // Has NPM lock file.
183
- if (!hasYarnLock && !hasPnpmLock && this.getVersion(workspace_schema_1.PackageManager.Npm)) {
192
+ if (!hasYarnLock && !hasPnpmLock && !hasBunLock && this.getVersion(workspace_schema_1.PackageManager.Npm)) {
184
193
  // Only NPM lock file and NPM binary is available.
185
194
  return workspace_schema_1.PackageManager.Npm;
186
195
  }
@@ -195,17 +204,25 @@ class PackageManagerUtils {
195
204
  // PNPM lock file and PNPM binary is available.
196
205
  return workspace_schema_1.PackageManager.Pnpm;
197
206
  }
207
+ else if (hasBunLock && this.getVersion(workspace_schema_1.PackageManager.Bun)) {
208
+ // Bun lock file and Bun binary is available.
209
+ return workspace_schema_1.PackageManager.Bun;
210
+ }
198
211
  }
199
212
  if (!this.getVersion(workspace_schema_1.PackageManager.Npm)) {
200
213
  // Doesn't have NPM installed.
201
214
  const hasYarn = !!this.getVersion(workspace_schema_1.PackageManager.Yarn);
202
215
  const hasPnpm = !!this.getVersion(workspace_schema_1.PackageManager.Pnpm);
203
- if (hasYarn && !hasPnpm) {
216
+ const hasBun = !!this.getVersion(workspace_schema_1.PackageManager.Bun);
217
+ if (hasYarn && !hasPnpm && !hasBun) {
204
218
  return workspace_schema_1.PackageManager.Yarn;
205
219
  }
206
- else if (!hasYarn && hasPnpm) {
220
+ else if (hasPnpm && !hasYarn && !hasBun) {
207
221
  return workspace_schema_1.PackageManager.Pnpm;
208
222
  }
223
+ else if (hasBun && !hasYarn && !hasPnpm) {
224
+ return workspace_schema_1.PackageManager.Bun;
225
+ }
209
226
  }
210
227
  // TODO: This should eventually inform the user of ambiguous package manager usage.
211
228
  // Potentially with a prompt to choose and optionally set as the default.
@@ -220,6 +237,9 @@ class PackageManagerUtils {
220
237
  case workspace_schema_1.PackageManager.Pnpm:
221
238
  lockfileName = 'pnpm-lock.yaml';
222
239
  break;
240
+ case workspace_schema_1.PackageManager.Bun:
241
+ lockfileName = 'bun.lockb';
242
+ break;
223
243
  case workspace_schema_1.PackageManager.Npm:
224
244
  default:
225
245
  lockfileName = 'package-lock.json';
@@ -25,5 +25,5 @@ class Version {
25
25
  }
26
26
  }
27
27
  // TODO(bazel): Convert this to use build-time version stamping after flipping the build script to use bazel
28
- // export const VERSION = new Version('17.2.0-next.0');
28
+ // export const VERSION = new Version('17.2.0-rc.0');
29
29
  exports.VERSION = new Version(JSON.parse((0, fs_1.readFileSync)((0, path_1.resolve)(__dirname, '../../package.json'), 'utf-8')).version);