678 Commits

Author SHA1 Message Date
Alan Agius
f6e1fd84a2 refactor(@angular-devkit/schematics-cli): move @schematics/schematics into this package
This change removes the need for the `@schematics/schematics` package and moves it inside `@angular-devkit/schematics-cli`.
2021-04-02 08:09:07 +02:00
Alan Agius
14c8a09014 refactor(@angular/cli): remove Ivy Workspace from ng version
In version 12, only Ivy will be allowed to be used to compile an application.
2021-03-30 14:36:48 -06:00
Charles Lyding
2dd0cbd2e9 refactor(@angular/cli): inline @schematics/update:update schematic
This change removes the need for the `@schematics/update` package within the Angular tooling and removes the dependency from the `@angular/cli` package.
Only the `update` schematic from the `@schematics/update` package was used and this schematic's logic will eventually be folded into the update command logic directly.
2021-03-29 08:18:11 -06:00
Renovate Bot
6a3a7b020b build: update semver to version 7.3.5 2021-03-24 09:48:08 -04:00
Renovate Bot
decb05b2fe build: update pacote to version 11.3.1 2021-03-23 12:11:38 -04:00
Renovate Bot
caafc6923e build: update open to version 8.0.4 2021-03-21 21:08:41 -04:00
Renovate Bot
bc4c222ee4 build: update npm-pick-manifest to version 6.1.1 2021-03-19 18:36:19 -04:00
Renovate Bot
fbae26c87d build: update npm-package-arg to version 8.1.2 2021-03-19 10:53:50 -04:00
Renovate Bot
0931e37f30 build: update open to version 8.0.3 2021-03-19 10:53:19 -04:00
Renovate Bot
8862a9f07c build: update ora to version 5.4.0 2021-03-18 12:15:24 +01:00
Alan Agius
cc10302fd7 refactor(@angular/cli): add more actionable missing lint target message 2021-03-16 15:49:46 +01:00
Alan Agius
4b0223b64e build: automate @angular/cli schema.json generation
With this change we automate the generation of `@angular/cli/lib/config/schema.json`. While on paper we could use quicktype for this. Quicktype doesn't handle `patternProperties` and `oneOf` that well.

How does this works?
Relative `$ref` will be resolved and inlined as part of the root schema definitions.

Example
```json
"@schematics/angular:enum": {
    "$ref": "../../../../schematics/angular/enum/schema.json"
},
```

Will be parsed and transformed to
```json
"@schematics/angular:enum": {
  "$ref": "#/definitions/SchematicsAngularEnumSchema"
},
"definitions: {
  "SchematicsAngularEnumSchema": {
    "title": "Angular Enum Options Schema",
    "type": "object",
    "description": "Generates a new, generic enum definition for the given or default project.",
    "properties": {...}
   }
}
```
2021-03-11 21:51:37 +01:00
Alan Agius
d254d058f9 fix(@angular/cli): remove project from required properties in ng-packagr schema
Closes: #20246
2021-03-11 15:59:58 +01:00
Charles Lyding
985dc1a4c7 feat(@angular/cli): confirm ng add action before installation
BREAKING CHANGE:
The `ng add` command will now ask the user to confirm the package and version prior to installing and executing an uninstalled package.
This new behavior allows a user to abort the action if the version selected is not appropriate or if a typo occurred on the command line and an incorrect package would be installed.
A `--skip-confirmation` option has been added to skip the prompt and directly install and execute the package. This option is useful in CI and non-TTY scenarios such as automated scripts.
2021-03-11 08:54:07 +01:00
Alan Agius
988b05a8e5 refactor(@angular/cli): remove deprecated lazyModules option from schema 2021-03-10 12:44:04 -06:00
Renovate Bot
4fce9bf4a2 build: update pacote to version 11.3.0 2021-03-10 08:20:35 -06:00
Charles Lyding
06335515eb fix(@angular/cli): avoid exceptions for expected errors in architect commands
Errors caused by invalid options or workspace configuration will now be presented as fatal console messages and the CLI will exit gracefully with an exit code of 1.
2021-03-10 08:19:42 -06:00
Alan Agius
a5877bf917 feat(@angular/cli): deprecate --prod command line argument
With this change we deprecated the `--prod` command line argument. This argument is confusing especially to new users, since users expect that this builds an application in production mode. This however, is only an alias for `--configuration="production"`
2021-03-10 08:16:38 -06:00
Alan Agius
5f8155dc33 fix(@angular/cli): add ng-packagr builder schema in IDE schema 2021-03-08 08:55:18 -06:00
Alan Agius
f7e3e2335d feat(@angular/cli): add defaultConfiguration property to architect schema 2021-03-08 08:45:54 -06:00
Renovate Bot
9b100253e4 build: update open to version 8.0.2 2021-03-03 07:03:19 -05:00
Renovate Bot
d23e6cad20 build: update open to version 8.0.1 2021-03-02 12:17:14 -05:00
Alan Agius
dbce2a3f28 refactor(@angular/cli): remove dependency on universal-analytics
With this change we remove the dependency on the unmaintained universal-analytics package. We also solve several package deprecation warnings when creating a new workspace.

Closes #16952
2021-03-01 13:59:26 -05:00
Renovate Bot
598190ec73 build: update inquirer to version 8.0.0 2021-03-01 10:40:04 -05:00
Alan Agius
aa3ea885ed feat(@angular-devkit/build-angular): enable inlineCritical by default
BREAKING CHANGE:

Critical CSS inlining is now enabled by default. If you wish to turn this off set `inlineCritical` to `false`.

See: https://angular.io/guide/workspace-config#optimization-configuration
2021-02-26 13:22:58 -05:00
Charles Lyding
ce4d59fee3 refactor(@angular/cli): remove v1 postinstall update check
This postinstall script was put in place during the v6.0 timeframe to aid users migrating from the v1.x configuration file format by displaying a message instructing the user to run `ng update`.
The `ng update` migration is still functional and users can still use it to migrate from a v1.x project.  However, the postinstall script will no longer be run for every install of the Angular CLI.
2021-02-26 07:22:29 -05:00
Charles Lyding
065ac4546f fix(@angular/cli): remove npm 7 incompatibility notification
npm 7.5.6 contains several fixes that allow it to work successfully with the Angular CLI.
The minimum npm engine value is now set to support npm versions greater than 7.5.6 (npm 6 support remains unchanged).
A warning will be shown to users with npm 7 versions less than 7.5.6 when used with the new, add, or update commands.
2021-02-24 18:19:54 +01:00
Renovate Bot
55859d7713 build: update pacote to version 11.2.7 2021-02-19 13:02:36 +01:00
Renovate Bot
a1b7c3939e build: update npm-package-arg to version 8.1.1 2021-02-19 09:51:37 +01:00
Renovate Bot
c222fd0c11 build: update open to version 7.4.2 2021-02-17 12:43:49 -06:00
Charles Lyding
3d99468b45 fix(@angular/cli): support update migration packages with no entry points
Some schematic only packages may not have entry points defined (`main`/`exports`).  These type of packages will now be correctly resolved when attempting to locate update migrations.

Fixes #20032
2021-02-17 12:43:13 -06:00
Renovate Bot
b2ef3c2330 build: update open to version 7.4.1 2021-02-15 14:49:19 -06:00
Charles Lyding
b179a70482 fix(@angular/cli): ensure odd number Node.js version message is a warning
Fixes: #20050
2021-02-15 14:47:40 -06:00
Aravind V Nair
a408aeeaa6 docs(@angular/cli): switching angular.io URL from HTTP to HTTPS
Signed-off-by: Aravind V Nair <22199259+aravindvnair99@users.noreply.github.com>
2021-02-15 14:46:40 -06:00
Renovate Bot
2818fc4cdd build: update resolve to version 1.20.0 2021-02-12 08:33:25 -06:00
Charles Lyding
9a44bf4aaf fix(@angular/cli): improve error logging when resolving update migrations
Failure to resolve a migration package from the workspace root will now not crash and instead error with a message.  Verbose logging (`--verbose`) is also added to provide more details regarding the resolution process.
2021-02-11 14:25:55 -05:00
Alan Agius
fb2d7ee903 refactor(@angular-devkit/build-angular): remove experimental rollup pass
The experimental rollup pass has significant issues with the new Ivy webpack plugin. It also, didn't produce as well as we hoped in real world scenarios infact in many cases this caused build to fail.

REAKING CHANGE:

The experimental rollup pass `--experimental-rollup-pass` option has been removed.

Closes #15836
2021-02-09 08:50:00 -05:00
Charles Lyding
52aaa8c167 fix(@angular/cli): update NPM 7 guidance
Update NPM 7 behavior based on https://github.com/angular/angular-cli/issues/19957#issuecomment-775407654
2021-02-08 19:48:42 -05:00
Alan Agius
088891b16e refactor(@angular-devkit/build-angular): refactor NodeJsAsyncHost to use FS promises 2021-02-08 14:07:24 -05:00
Alan Agius
aedfcc1862 build: update to @types/node version 12 2021-02-08 14:07:24 -05:00
Bruno Baia
d64dc76d7e docs: update ESLint migration link 2021-02-08 09:34:25 -05:00
Charles Lyding
d1f616930d build: set minimum Node.js version to 12.13
This change provides an improved performance baseline as well as access to newer Node.js APIs and Javascript language features which the Angular CLI will now be able to leverage.

BREAKING CHANGE:
Node.js version 10 will become EOL on 2021-04-30.
Angular CLI 12 will require Node.js 12.13+ or 14.15+. Node.js 12.13 and 14.15 are the first LTS releases for their respective majors.
2021-02-08 09:23:46 -05:00
Renovate Bot
e00f6c9b0b build: update pacote to version 11.2.6 2021-02-08 09:23:08 -05:00
Alan Agius
cae2209ca8 fix(@angular/cli): only show incompatible NPM error when NPM is used as package manager 2021-02-05 12:40:47 -05:00
Renovate Bot
798b13ce9a build: update pacote to version 11.2.5 2021-02-05 07:07:29 -05:00
Charles Lyding
331f628139 fix(@angular/cli): temporarily limit npm to version 6
This change will display an error message if using npm 7 (or versions earlier than 6). This is a temporarily change while npm 7 usability concerns are addressed.
2021-02-04 14:59:40 -08:00
Charles Lyding
30758d1cc4 fix(@angular/cli): resolve migration collections from containing package
This change ensures that migration collections defined in a package's `ng-update` metadata are resolved from the containing package.  This avoids issues that may arise from package manager hoisting behavior which can result in the wrong migration collection being chosen.  The `--migrate-only` option already contained this resolution logic and now the full update contains it as well.
2021-02-03 12:21:52 -05:00
Renovate Bot
3aaf6a49fa build: update pacote to version 11.2.4 2021-02-02 09:16:58 +01:00
Alan Agius
b8336b2c94 refactor(@angular/cli): use ES6 imports instead of require
Main benefit is to use type definitions.
2021-02-02 07:46:32 +01:00
Renovate Bot
7513170459 build: update open to version 7.4.0 2021-02-01 15:11:29 +01:00