npm @angular/cli 13.0.0
v13.0.0

latest releases: 18.0.0-rc.2, 17.3.7, 18.0.0-rc.1...
2 years ago

13.0.0 (2021-11-03)

Breaking Changes

@schematics/angular

  • classlist.js and web-animations-js are removed from application polyfills and uninstalled from the package. These were only needed for compatibility with Internet Explorer, which is no longer needed now that Angular only supports evergreen browsers. See: https://angular.io/guide/browser-support.

Add the following to the polyfills file for an app to re-add these packages:

import 'classlist.js';
import 'web-animations-js';

And then run:

npm install classlist.js web-animations-js --save
  • We removed several deprecated @schematics/angular deprecated options.
  • lintFix have been removed from all schematics. ng lint --fix should be used instead.
  • legacyBrowsers have been removed from the application schematics since IE 11 is no longer supported.
  • configuration has been removed from the web-worker as it was unused.
  • target has been removed from the service-worker as it was unused.

@angular/cli

  • We drop support for Node.js versions prior to 12.20.

@angular-devkit/build-angular

  • Support for karma-coverage-instanbul-reporter has been dropped in favor of the official karma coverage plugin karma-coverage.

  • Support for node-sass has been removed. sass will be used by default to compile SASS and SCSS files.

  • NG_PERSISTENT_BUILD_CACHE environment variable option no longer have effect. Configure cli.cache in the workspace configuration instead.

{
  "$schema": "./node_modules/@angular/cli/lib/config/schema.json",
  "version": 1,
  "cli": {
    "cache": {
      "enabled": true,
      "path": ".custom-cache-path",
      "environment": "all"
    }
  }
  ...
}
  • The automatic inclusion of Angular-required ES2015 polyfills to support ES5 browsers has been removed. Previously when targetting ES5 within the application's TypeScript configuration or listing an ES5 requiring browser in the browserslist file, Angular-required polyfills were included in the built application. However, with Angular no longer supporting IE11, there are now no browsers officially supported by Angular that would require these polyfills. As a result, the automatic inclusion of these ES2015 polyfills has been removed. Any polyfills manually added to an application's code are not affected by this change.

  • With this change a number of deprecated dev-server builder options which proxied to the browser builder have been removed. These options should be configured in the browser builder instead.

The removed options are:

  • aot

  • sourceMap

  • deployUrl

  • baseHref

  • vendorChunk

  • commonChunk

  • optimization

  • progress

  • With this change we removed several deprecated builder options

  • extractCss has been removed from the browser builder. CSS is now always extracted.

  • servePathDefaultWarning and hmrWarning have been removed from the dev-server builder. These options had no effect.

  • Deprecated @angular-devkit/build-angular:tslint builder has been removed. Use https://github.com/angular-eslint/angular-eslint instead.

  • Differential loading support has been removed. With Angular no longer supporting IE11, there are now no browsers officially supported by Angular that require ES5 code. As a result, differential loading's functionality for creating and conditionally loading ES5 and ES2015+ variants of an application is no longer required.

  • TypeScript versions prior to 4.4 are no longer supported.

  • The dev-server now uses WebSockets to communicate changes to the browser during HMR and live-reloaded. If during your development you are using a proxy you will need to enable proxying of WebSockets.

  • We remove inlining of Google fonts in WOFF format since IE 11 is no longer supported. Other supported browsers use WOFF2.

@angular-devkit/build-webpack

Note: this change only affects users depending on @angular-devkit/build-webpack directly.

@angular-devkit/core

  • With this change we drop support for the deprecated behaviour to transform id in schemas. Use $id instead.

Note: this only effects schematics and builders authors.

  • The deprecated JSON parser has been removed from public API. jsonc-parser should be used instead.

@angular-devkit/schematics

  • isAction has been removed without replacement as it was unused.

  • With this change we remove the following deprecated APIs

  • TslintFixTask

  • TslintFixTaskOptions

Note: this only effects schematics developers.

@ngtools/webpack

  • Deprecated inlineStyleMimeType option has been removed from AngularWebpackPluginOptions. Use inlineStyleFileExtension instead.

  • Applications directly using the webpack-cli and not the Angular CLI to build must set the environment variable DISABLE_V8_COMPILE_CACHE=1. The @ngtools/webpack package now uses dynamic imports to provide support for the ESM @angular/compiler-cli package. The v8-compile-cache package used by the webpack-cli does not currently support dynamic import expressions and will cause builds to fail if the environment variable is not specified. Applications using the Angular CLI are not affected by this limitation.

Deprecations

  • @angular-devkit/build-optimizer

It's functionality has been included in @angular-devkit/build-angular so this package is no longer needed by the CLI and we will stop publishing the package soon. It has been an experimental (never hit 1.0.0) and internal (only used by Angular itself) package and should be not be used directly by others.

@angular-devkit/build-angular

  • NG_BUILD_CACHE environment variable option will be removed in the next major version. Configure cli.cache in the workspace configuration instead.

@schematics/angular

Commit Description
feat - 7ff8c5350 add /.angular/cache to .gitignore
feat - 3ba13f467 add noImplicitOverride and noPropertyAccessFromIndexSignature to workspace tsconfig
feat - 268a03b63 add migration to update the workspace config
feat - 7bdcd7da1 create new projects with rxjs 7
feat - eac18aed7 drop polyfills required only for Internet Explorer now that support has been dropped for it
feat - 4f91816b2 migrate libraries to be published from ViewEngine to Ivy Partial compilation
feat - 5986befcd remove deprecated options
feat - 9fbd16655 remove IE 11 specific polyfills
feat - a7b2e6f51 update ngsw-config resources extensions
fix - 732ef7985 add browserslist configuration in library projects
fix - 585adacd0 don't add destroyAfterEach in newly generated spec files
fix - e58226ee9 don't export renderModuleFactory from server file
fix - 0ec0ad8a4 remove target and lib options for library tsconfig
fix - f227e145d updated Angular new project version to v13.0 prerelease

@angular/cli

Commit Description
feat - 9fe55752d officially support Node.js v16
fix - 5ad145722 error when updating Angular packages across multi-major migrations
fix - e4bc35e33 exclude packages from ng add that contain invalid peer dependencies
fix - e1b954d70 keep relative migration paths during update analysis
fix - c3acf3cc2 remove unused cli project options.
fix - 77fe6c4e6 update engines to require node 12.20.0
fix - 8795536a3 update ng update output for Angular packages
fix - d8c9f6eaf update the update command to fully support Node.js v16

Commit Description
docs - 5e435ff37 mark @angular-devkit/build-optimizer as deprecated.

@angular-devkit/architect

Commit Description
feat - 09e039500 include workspace extensions in project metadata

@angular-devkit/build-angular

Commit Description
feat - f53bf9dc2 add type=module to all scripts tags
feat - e95ecb8ab deprecate deployUrl
feat - 7dcfffaff drop support for karma-coverage-instanbul-reporter
feat - ac3fc2752 drop support for node-sass
feat - 5904afd1d enable disk cache by default and provide configurable options
feat - 22cd9edfa favor es2020 main fields
feat - 7576136b2 remove automatic inclusion of ES5 browser polyfills
feat - 000b0e51c remove deprecated dev-server options
feat - 20e48a33c remove deprecated options
feat - e78f6ab5d remove deprecated tslint builder
feat - 701214d17 remove differential loading support
feat - fb1ad7c5b support ESM proxy configuration files for the dev server
feat - 505438cc4 support TypeScript 4.4
feat - 32dbf659a update webpack-dev-server to version 4
fix - c1efaa17f calculate valid Angular versions from peerDependencies
fix - d7af4a7b5 enable custom es2020 and es2015 conditional exports
fix - f383f3201 ESM-interop loaded plugin creators of @angular/localize/tools not respected
fix - 7934becb5 generate unique webpack runtimes
fix - b14e0a547 improve sourcemaps fidelity when code coverage is enabled
fix - e19287453 move @angular/localize detection prior to webpack initialization
fix - 76d6d8826 set browserslist defaults
fix - 167eed465 update Angular peer dependencies to v13.0 prerelease
fix - 1d8cdf853 update esbuild to 0.13.12
fix - 884111ac0 update IE unsupported and deprecation messages
fix - 4be6537dd update TS/JS regexp checks to latest extensions
fix - 427a9ee97 update workspace tsconfig lib es2020
fix - ea926db25 use es2015 when generating server bundles
fix - 13cceab8e use URLs for absolute import paths with ESM
perf - 4e0743c8a change webpack hashing function to xxhash64
perf - cb7d156c2 use esbuild as a CSS optimizer for global styles
perf - 8e82263c5 use esbuild/terser combination to optimize global scripts
refactor - e82eef924 remove WOFF handling from inline-fonts processor

@angular-devkit/build-webpack

Commit Description
feat - a0b5897d5 update webpack-dev-server to version 4
fix - 9efcb32e3 better handle concurrent dev-servers

@angular-devkit/core

Commit Description
feat - 0c92ea5ca remove deprecated schema id handling
fix - 9874aff71 add missing option peer dependency on chokidar
fix - a54e5e065 support Node.js v16 with NodeJsSyncHost/NodeJsAsyncHost delete operation
refactor - d722fdf1f remove deprecated JSON parser

@angular-devkit/schematics

Commit Description
feat - 0565ed62e add UpdateBuffer2 based on magic-string
feat - 8954d1152 remove deprecated isAction
feat - 053b7d66c remove deprecated tslint APIs
fix - bdd89ae84 handle zero or negative length removals in update buffer

@ngtools/webpack

Commit Description
fix - d2a97f919 update Angular peer dependencies to v13.0 prerelease
perf - 7928b18ed reduce repeat path mapping analysis during resolution
refactor - 8ce8e4edc remove deprecated inlineStyleMimeType option
refactor - 7d98ab3df support an ESM-only @angular/compiler-cli package

Special Thanks

Alan Agius, Charles Lyding, Doug Parker, Douglas Parker, Joey Perrott, Kristiyan Kostadinov, Lukas Spirig and Paul Gschwendtner

Don't miss a new cli release

NewReleases is sending notifications on new releases.