Skip to content

Latest commit

 

History

History
10037 lines (7339 loc) · 248 KB

CHANGELOG.md

File metadata and controls

10037 lines (7339 loc) · 248 KB

13.0.0-next.6 (2021-09-22)

Breaking Changes

@ngtools/webpack

  • 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.

@angular-devkit/build-angular

Commit Type Description
0d76bf04b fix support WASM-based esbuild optimizer fallback

@angular-devkit/build-webpack

Commit Type Description
9efcb32e3 fix better handle concurrent dev-servers

@ngtools/webpack

Commit Type Description
7d98ab3df refactor support an ESM-only @angular/compiler-cli package

Special Thanks

Alan Agius and Charles Lyding

12.2.7 (2021-09-22)

@angular-devkit/build-angular

Commit Type Description
d856b4d23 fix support WASM-based esbuild optimizer fallback

Special Thanks

Alan Agius and Charles Lyding

13.0.0-next.5 (2021-09-15)

@angular/cli

Commit Type Description
d3fa202e9 fix handle FORCE_COLOR when stdout is not instance of WriteStream

@angular-devkit/build-angular

Commit Type Description
590c15664 fix add web-streams-polyfill to downlevel exclusion list
df8f909d8 fix handle FORCE_COLOR when stdout is not instance of WriteStream

Special Thanks

Alan Agius, Charles Lyding and Joey Perrott

12.2.6 (2021-09-15)

@angular/cli

Commit Type Description
8b21effad fix handle FORCE_COLOR when stdout is not instance of WriteStream

@angular-devkit/build-angular

Commit Type Description
ea60f0f52 fix handle FORCE_COLOR when stdout is not instance of WriteStream

Special Thanks

Alan Agius

13.0.0-next.4 (2021-09-08)

@angular-devkit/build-angular

Commit Type Description
decb1d14b fix improve Safari browserslist to esbuild target conversion

Special Thanks

Alan Agius, Charles Lyding and Doug Parker

12.2.5 (2021-09-08)

@angular-devkit/build-angular

Commit Type Description
0498768c5 fix disable dev-server response compression
367fce2e9 fix improve Safari browserslist to esbuild target conversion

Special Thanks:

Alan Agius and Charles Lyding

13.0.0-next.3 (2021-09-01)

Breaking Changes

@angular-devkit/build-angular

  • 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.

@angular-devkit/build-webpack

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

@ngtools/webpack

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

@schematics/angular

Commit Type Description
732ef7985 fix add browserslist configuration in library projects

@angular-devkit/build-angular

Commit Type Description
32dbf659a feat update webpack-dev-server to version 4
76d6d8826 fix set browserslist defaults

@angular-devkit/build-webpack

Commit Type Description
a0b5897d5 feat update webpack-dev-server to version 4

@ngtools/webpack

Commit Type Description
8ce8e4edc refactor remove deprecated inlineStyleMimeType option

Special Thanks

Alan Agius and Joey Perrott

12.2.4 (2021-09-01)

@angular-devkit/build-angular

Commit Type Description
aaadef026 fix update esbuild to 0.12.24
f8a9f4a01 fix update mini-css-extract-plugin to 2.2.1

Special Thanks

Alan Agius

13.0.0-next.2 (2021-08-26)

@schematics/angular

Commit Description
4f91816b2 feat(@schematics/angular): migrate libraries to be published from ViewEngine to Ivy Partial compilation

@angular-devkit/schematics

Commit Description
0565ed62e feat(@angular-devkit/schematics): add UpdateBuffer2 based on magic-string

@ngtools/webpack

Commit Description
7928b18ed perf(@ngtools/webpack): reduce repeat path mapping analysis during resolution

Special Thanks:

Alan Agius, Charles Lyding, Doug Parker, Lukas Spirig and Trevor Karjanis

12.2.3 (2021-08-26)

@angular-devkit/build-angular

Commit Type Description
3e3321857 fix RGBA converted to hex notation in component styles breaks IE11

Special Thanks:

Alan Agius and Trevor Karjanis

13.0.0-next.1 (2021-08-18)

@angular-devkit/build-angular

Commit Description
aba54ae78 fix(@angular-devkit/build-angular): provide supported browsers to esbuild
9eb599da2 fix(@angular-devkit/build-angular): handle undefined entrypoints when marking async chunks

Breaking Changes

@angular-devkit/core

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

Special Thanks:

Alan Agius, Charles Lyding, Douglas Parker, Joey Perrott and Simon Primetzhofer

12.2.2 (2021-08-18)

@angular-devkit/build-angular

Commit Description
a55118a75 fix: provide supported browsers to esbuild
81baa4f95 fix: update Angular peer dependencies to 12.2 stable
297410ae8 fix: handle undefined entrypoints when marking async chunks

@ngtools/webpack

Commit Description
b7199f366 fix: update Angular peer dependencies to 12.2 stable

Special Thanks:

Alan Agius, Charles Lyding, Joey Perrott and Simon Primetzhofer

13.0.0-next.0 (2021-08-11)

@angular/cli

Commit Description
77fe6c4e6 fix(@angular/cli): update engines to require node 12.20.0
c0f1b5ea5 fix(@angular/cli): show error when using non-TTY terminal without passing --skip-confirmation during ng add
259e26979 fix(@angular/cli): merge npmrc files values

@schematics/angular

Commit Description
3ba13f467 feat(@schematics/angular): add noImplicitOverride and noPropertyAccessFromIndexSignature to workspace tsconfig
a7b2e6f51 feat(@schematics/angular): update ngsw-config resources extensions
f227e145d fix(@schematics/angular): updated Angular new project version to v13.0 prerelease
268a03b63 feat(@schematics/angular): add migration to update the workspace config
5986befcd feat(@schematics/angular): remove deprecated options
9fbd16655 feat(@schematics/angular): remove IE 11 specific polyfills

@angular-devkit/schematics-cli

Commit Description
b9e7f8958 fix(@angular-devkit/schematics-cli): log when in debug and/or dry run modes

@angular-devkit/build-angular

Commit Description
d67e7ad2f fix(@angular-devkit/build-angular): ensure native async is downlevelled in third-party libraries
8e82263c5 perf(@angular-devkit/build-angular): use esbuild/terser combination to optimize global scripts
e95ecb8ab feat(@angular-devkit/build-angular): deprecate deployUrl
cb7d156c2 perf(@angular-devkit/build-angular): use esbuild as a CSS optimizer for global styles
cdfaeee08 fix(@angular-devkit/build-angular): support both pure annotation forms for static properties
2aa6f579d fix(@angular-devkit/build-angular): do not consume inline sourcemaps when vendor sourcemaps is disabled.
167eed465 fix(@angular-devkit/build-angular): update Angular peer dependencies to v13.0 prerelease
7dcfffaff feat(@angular-devkit/build-angular): drop support for karma-coverage-instanbul-reporter
f5d019f9d fix(@angular-devkit/build-angular): avoid attempting to optimize copied JavaScript assets
8758e4415 fix(@angular-devkit/build-angular): handle null maps in JavaScript optimizer worker
f53bf9dc2 feat(@angular-devkit/build-angular): add type=module to all scripts tags
20e48a33c feat(@angular-devkit/build-angular): remove deprecated options
7576136b2 feat(@angular-devkit/build-angular): remove automatic inclusion of ES5 browser polyfills
701214d17 feat(@angular-devkit/build-angular): remove differential loading support
e78f6ab5d feat(@angular-devkit/build-angular): remove deprecated tslint builder
ac3fc2752 feat(@angular-devkit/build-angular): drop support for node-sass
c1efaa17f fix(@angular-devkit/build-angular): calculate valid Angular versions from peerDependencies
d750c686f fix(@angular-devkit/build-angular): add priority to copy-webpack-plugin patterns

@angular-devkit/build-webpack

Commit Description
615353022 fix(@angular-devkit/build-webpack): emit result when webpack is closed

@angular-devkit/core

Commit Description
0c92ea5ca feat(@angular-devkit/core): remove deprecated schema id handling

@angular-devkit/schematics

Commit Description
8954d1152 feat(@angular-devkit/schematics): remove deprecated isAction
053b7d66c feat(@angular-devkit/schematics): remove deprecated tslint APIs

@ngtools/webpack

Commit Description
d2a97f919 fix(@ngtools/webpack): update Angular peer dependencies to v13.0 prerelease

Breaking Changes

@schematics/angular

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. 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.

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.

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.

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

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

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

@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.

@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.

Special Thanks:

Alan Agius, Charles Lyding, Doug Parker, Joey Perrott and originalfrostig

12.2.1 (2021-08-11)

@angular/cli

Commit Description
8dc3c895a fix(@angular/cli): show error when using non-TTY terminal without passing --skip-confirmation during ng add

@angular-devkit/schematics-cli

Commit Description
eded01270 fix(@angular-devkit/schematics-cli): log when in debug and/or dry run modes

@angular-devkit/build-angular

Commit Description
22e0208a9 fix(@angular-devkit/build-angular): ensure native async is downlevelled in third-party libraries
9b4b86fb0 fix(@angular-devkit/build-angular): support both pure annotation forms for static properties
cea028090 fix(@angular-devkit/build-angular): do not consume inline sourcemaps when vendor sourcemaps is disabled.
e7ec0346e fix(@angular-devkit/build-angular): avoid attempting to optimize copied JavaScript assets
4f757c2bc fix(@angular-devkit/build-angular): handle null maps in JavaScript optimizer worker

Special Thanks:

Alan Agius and Charles Lyding

12.2.0 (2021-08-04)

@angular/cli

Commit Description
259e26979 fix(@angular/cli): merge npmrc files values
c1eddbdc9 fix(@angular/cli): handle YARN_ environment variables during ng update and ng add
6b00d1270 fix(@angular/cli): handle NPM_CONFIG environment variables during ng update and ng add
88ee85c41 fix(@angular/cli): disable update notifier when retrieving package manager version during ng version

@angular-devkit/build-angular

Commit Description
d750c686f fix(@angular-devkit/build-angular): add priority to copy-webpack-plugin patterns
4bcd1dc9e fix(@angular-devkit/build-angular): allow classes with pure annotated static properties to be optimized
ceade0c27 fix(@angular-devkit/build-angular): dasherize disable-host-check suggestion
8383c6b42 fix(@angular-devkit/build-angular): silence Sass compiler warnings from 3rd party stylesheets
07763702f fix(@angular-devkit/build-angular): force linker sourceMapping option to false.
a5c69722f fix(@angular-devkit/build-angular): ensure NG_PERSISTENT_BUILD_CACHE always creates a cache in the specified cache directory
c65b04999 fix(@angular-devkit/build-angular): fail browser build when index generation fails
3d71c63b3 fix(@angular-devkit/build-angular): fix issue were @media all causing critical CSS inling to fail
9a04975a2 fix(@angular-devkit/build-angular): extractLicenses didn't have an effect when using server builder
2ac8e9c0e fix(@angular-devkit/build-angular): display incompatibility errors
2c2b49919 fix(@angular-devkit/build-angular): limit advanced terser passes to two
1be3b0783 fix(@angular-devkit/build-angular): exclude outputPath from persistent build cache key
fefd6d042 perf(@angular-devkit/build-angular): use esbuild as a CSS optimizer for component styles
18cfa0431 feat(@angular-devkit/build-angular): add support to inline Adobe Fonts
9a751f0f8 fix(@angular-devkit/build-angular): handle ENOENT and ENOTDIR errors when deleting outputs
41e645792 fix(@angular-devkit/build-angular): downlevel for await...of when targetting ES2018+
070a13364 fix(@angular-devkit/build-angular): configure webpack target in common configuration
da32daa75 perf(@angular-devkit/build-angular): use combination of esbuild and terser as a JavaScript optimizer
6a2b11906 perf(@angular-devkit/build-angular): cache JavaScriptOptimizerPlugin results
ab17b1721 fix(@angular-devkit/build-angular): handle ng-packagr errors more gracefully.
d4c5f8518 fix(@angular-devkit/build-angular): control linker template sourcemapping via builder sourcemap options
06181c2fb fix(@angular-devkit/build-angular): parse web-workers in tests when webWorkerTsConfig is defined

@angular-devkit/build-webpack

Commit Description
615353022 fix(@angular-devkit/build-webpack): emit result when webpack is closed

@ngtools/webpack

Commit Description
dbbcf5c8c fix(@ngtools/webpack): only track file dependencies
7536338e0 fix(@ngtools/webpack): allow generated assets of Angular component resources
720feee34 fix(@ngtools/webpack): avoid non-actionable template type-checker syntax diagnostics
6a7bcf330 fix(@ngtools/webpack): encode component style data
12c14b565 fix(@ngtools/webpack): remove no longer needed component styles workaround

@schematics/angular

Commit Description
20fd33f6d feat(@schematics/angular): destroy test module after every test
5b10d4f54 fix(@schematics/angular): remove unsafe any usage in application spec file
1b5e18e7b fix(@schematics/angular): replace interactive div with button in application component template
0907b6941 fix(@schematics/angular): use stricter semver for karma-jasmine-html-reporter
8ad1539c5 fix(@schematics/angular): add 'none' value for the 'style' option of the component schematic
e5ba29c7d fix(@schematics/angular): display warning during migrations when using third-party builders
a44dc02fe fix(@schematics/angular): add devtools to ng new

Special Thanks:

Alan Agius, Charles Lyding, David Scourfield, Doug Parker, hien-pham, Joey Perrott, LeonEck, Mike Jancar, twerske, Vaibhav Singh and originalfrostig

12.2.0-rc.0 (2021-07-28)

@angular/cli

Commit Description
259e26979 fix(@angular/cli): merge npmrc files values

@angular-devkit/build-angular

Commit Description
d750c686f fix(@angular-devkit/build-angular): add priority to copy-webpack-plugin patterns

@angular-devkit/build-webpack

Commit Description
615353022 fix(@angular-devkit/build-webpack): emit result when webpack is closed

Special Thanks:

Alan Agius, Charles Lyding, Joey Perrott and originalfrostig

12.1.4 (2021-07-28)

@angular/cli

Commit Description
e02c97dd0 fix(@angular/cli): merge npmrc files values

@schematics/angular

Commit Description
cfc267426 fix(@schematics/angular): ensure valid SemVer range for new project Angular packages

@angular-devkit/build-angular

Commit Description
55c0bddc8 fix(@angular-devkit/build-angular): add priority to copy-webpack-plugin patterns

@angular-devkit/build-webpack

Commit Description
b3736a3c0 fix(@angular-devkit/build-webpack): emit result when webpack is closed

Special Thanks:

Alan Agius, Charles Lyding, Joey Perrott and originalfrostig

12.2.0-next.3 (2021-07-21)

@angular/cli

Commit Description
c1eddbdc9 fix(@angular/cli): handle YARN_ environment variables during ng update and ng add
6b00d1270 fix(@angular/cli): handle NPM_CONFIG environment variables during ng update and ng add

@angular-devkit/build-angular

Commit Description
4bcd1dc9e fix(@angular-devkit/build-angular): allow classes with pure annotated static properties to be optimized
ceade0c27 fix(@angular-devkit/build-angular): dasherize disable-host-check suggestion

Special Thanks:

Alan Agius, Charles Lyding, Joey Perrott, LeonEck and Mike Jancar

12.1.3 (2021-07-21)

@angular/cli

Commit Description
eaa2378b6 fix(@angular/cli): handle YARN_ environment variables during ng update and ng add
4b9a41bde fix(@angular/cli): handle NPM_CONFIG environment variables during ng update and ng add

@angular-devkit/build-angular

Commit Description
04e9ffe4f fix(@angular-devkit/build-angular): allow classes with pure annotated static properties to be optimized
6ae17e265 fix(@angular-devkit/build-angular): dasherize disable-host-check suggestion

Special Thanks:

Alan Agius, Charles Lyding, Joey Perrott, LeonEck and Mike Jancar

v12.2.0-next.2 (2021-07-14)

Commits

@angular-devkit/build-angular (12.2.0-next.2)

Commit Description Notes
silence Sass compiler warnings from 3rd party stylesheets [Closes #21235]
force linker `sourceMapping` option to false. [Closes #21271]
ensure `NG_PERSISTENT_BUILD_CACHE` always creates a cache in the specified cache directory
fail browser build when index generation fails
fix issue were `@media all` causing critical CSS inling to fail [Closes #20804]
`extractLicenses` didn't have an effect when using server builder
display incompatibility errors [Closes #21322]
limit advanced terser passes to two
exclude `outputPath` from persistent build cache key [Closes #21275]
use `esbuild` as a CSS optimizer for component styles

@ngtools/webpack (12.2.0-next.2)

Commit Description Notes
only track file dependencies [Closes #21228]
allow generated assets of Angular component resources
avoid non-actionable template type-checker syntax diagnostics

@schematics/angular (12.2.0-next.2)

Commit Description Notes
destroy test module after every test [Closes #21280]
remove unsafe any usage in application spec file
replace interactive `div` with `button` in application component template
use stricter semver for `karma-jasmine-html-reporter`


Special Thanks

Alan Agius, Charles Lyding, Joey Perrott

v12.1.2 (2021-07-14)

Commits

@angular-devkit/build-angular (12.1.2)

Commit Description Notes
silence Sass compiler warnings from 3rd party stylesheets [Closes #21235]
ensure `NG_PERSISTENT_BUILD_CACHE` always creates a cache in the specified cache directory
force linker `sourceMapping` option to false. [Closes #21271]
fail browser build when index generation fails
`extractLicenses` didn't have an effect when using server builder
fix issue were `@media all` causing critical CSS inling to fail [Closes #20804]
display incompatibility errors [Closes #21322]
exclude `outputPath` from persistent build cache key [Closes #21275]

@ngtools/webpack (12.1.2)

Commit Description Notes
only track file dependencies [Closes #21228]
allow generated assets of Angular component resources
avoid non-actionable template type-checker syntax diagnostics

@schematics/angular (12.1.2)

Commit Description Notes
remove unsafe any usage in application spec file
replace interactive `div` with `button` in application component template
use stricter semver for `karma-jasmine-html-reporter`


Special Thanks

Alan Agius, Charles Lyding, Joey Perrott, Terence D. Honles

v12.1.1 (2021-07-01)

Commits

@angular-devkit/build-angular (12.1.1)

Commit Description Notes
handle `ENOENT` and `ENOTDIR` errors when deleting outputs [Closes #21202]
downlevel `for await...of` when targetting ES2018+ [Closes #21196]
configure webpack target in common configuration [Closes #21239]
update `mini-css-extract-plugin` to `1.6.2`
update `webpack` to `5.41.1`

@angular/cli (12.1.1)

Commit Description Notes
disable update notifier when retrieving package manager version during `ng version` [Closes #21172]

@ngtools/webpack (12.1.1)

Commit Description Notes
encode component style data [Closes #21236]


Special Thanks

Alan Agius, Charles Lyding, Doug Parker

v12.2.0-next.1 (2021-07-01)

Commits

@angular-devkit/build-angular (12.2.0-next.1)

Commit Description Notes
add support to inline Adobe Fonts [Closes #21186]
handle `ENOENT` and `ENOTDIR` errors when deleting outputs [Closes #21202]
downlevel `for await...of` when targetting ES2018+ [Closes #21196]
configure webpack target in common configuration [Closes #21239]
use combination of `esbuild` and `terser` as a JavaScript optimizer
cache JavaScriptOptimizerPlugin results

@angular/cli (12.2.0-next.1)

Commit Description Notes
disable update notifier when retrieving package manager version during `ng version` [Closes #21172]

@ngtools/webpack (12.2.0-next.1)

Commit Description Notes
encode component style data [Closes #21236]


Special Thanks

Alan Agius, Charles Lyding, Doug Parker

v12.2.0-next.0 (2021-06-24)

Commits

@angular-devkit/build-angular (12.1.0)

Commit Description Notes
handle ng-packagr errors more gracefully.
control linker template sourcemapping via builder sourcemap options
parse web-workers in tests when webWorkerTsConfig is defined

@ngtools/webpack (12.1.0)

Commit Description Notes
remove no longer needed component styles workaround

@schematics/angular (12.1.0)

Commit Description Notes
add 'none' value for the 'style' option of the component schematic
display warning during migrations when using third-party builders
add devtools to ng new


Special Thanks

Alan Agius, Charles Lyding, Doug Parker, Vaibhav Singh, Joey Perrott, twerske, David Scourfield, hien-pham

v12.1.0 (2021-06-24)

Commits

@angular-devkit/build-angular (12.1.0)

Commit Description Notes
enable webpack Trusted Types support
deprecate protractor builder
suppport using TypeScript 4.3
revert open to 8.0.2 [Closes #20807]
correctly ignore inline styles during i18n extraction
use the name as chunk filename instead of id
handle ng-packagr errors more gracefully.
control linker template sourcemapping via builder sourcemap options
parse web-workers in tests when webWorkerTsConfig is defined
use CSS optimization plugin that leverages workers
enable opt-in usage of file system cache

@angular/cli (12.1.0)

Commit Description Notes
show Node.js version support status in version command [Closes #20879]
handle unscoped authentication details in `.npmrc` files
don't resolve `.npmrc` from parent directories

@ngtools/webpack (12.1.0)

Commit Description Notes
support using TypeScript 4.3
remove redundant inline style cache
ensure plugin provided Webpack instance is used
disable caching for ngcc synchronous Webpack resolver
remove no longer needed component styles workaround

@schematics/angular (12.1.0)

Commit Description Notes
create new projects with TypeScript 4.3
add migration to replace deprecated `--prod` [Closes #21036]
add 'none' value for the 'style' option of the component schematic
display warning during migrations when using third-party builders
add devtools to ng new


Special Thanks

Alan Agius, Charles Lyding, Doug Parker, Joey Perrott, Bjarki, Vaibhav Singh, twerske, David Scourfield, hien-pham, Alberto Calvo, Paul Gschwendtner, Keen Yee Liau

v12.1.0-next.6 (2021-06-17)

Commits

@angular-devkit/build-angular (12.1.0-next.6)

Commit Description Notes
don't parse `new Worker` syntax when `webWorkerTsConfig` is not defined in karma builder [Closes #21108]
explicitly set compilation target in test configuration [Closes #21111]
use the name as chunk filename instead of id
enable opt-in usage of file system cache

@angular/cli (12.1.0-next.6)

Commit Description Notes
handle unscoped authentication details in `.npmrc` files
don't resolve `.npmrc` from parent directories

@schematics/angular (12.1.0-next.6)

Commit Description Notes
add migration to replace deprecated `--prod` [Closes #21036]


Special Thanks

Alan Agius, Joey Perrott, Alberto Calvo, Charles Lyding

v12.0.5 (2021-06-17)

Commits

@angular-devkit/build-angular (12.0.5)

Commit Description Notes
don't parse `new Worker` syntax when `webWorkerTsConfig` is not defined in karma builder [Closes #21108]
explicitly set compilation target in test configuration [Closes #21111]

@angular/cli (12.0.5)

Commit Description Notes
handle unscoped authentication details in .npmrc files


Special Thanks

Alan Agius, Joey Perrott

v12.1.0-next.5 (2021-06-10)

Commits

@angular-devkit/build-angular (12.1.0-next.5)

Commit Description Notes
suppport using TypeScript 4.3
ensure all Webpack Stats assets are present on rebuilds [Closes #21038]
dispose Sass worker resources on Webpack shutdown [Closes #20985]
show progress during re-builds
correctly mark async chunks as non initial in dev-server
add web-workers in lazy chunks in stats output [Closes #21059]
styles CSS files not available in unit tests [Closes #21054]
reduce memory usage by cleaning output directory before emitting

@angular-devkit/schematics (12.1.0-next.5)

Commit Description Notes
handle updating renamed files [Closes #14255]
[Closes #21083]

@angular/cli (12.1.0-next.5)

Commit Description Notes
avoid shell exec when bootstrapping update command
correctly redirect nested Angular schematic dependency requests [Closes #21075]

@ngtools/webpack (12.1.0-next.5)

Commit Description Notes
support using TypeScript 4.3
ensure plugin provided Webpack instance is used
disable caching for ngcc synchronous Webpack resolver

@schematics/angular (12.1.0-next.5)

Commit Description Notes
create new projects with TypeScript 4.3
added webWorkerTsConfig into test option
working with formatting


Special Thanks

Charles Lyding, Alan Agius, Doug Parker, Santosh Mahto, Joey Perrott

v12.0.4 (2021-06-09)

Commits

@angular-devkit/build-angular (12.0.4)

Commit Description Notes
ensure all Webpack Stats assets are present on rebuilds [Closes #21038]
dispose Sass worker resources on Webpack shutdown [Closes #20985]
show progress during re-builds
correctly mark async chunks as non initial in dev-server
add web-workers in lazy chunks in stats output [Closes #21059]
styles CSS files not available in unit tests [Closes #21054]
reduce memory usage by cleaning output directory before emitting

@angular-devkit/schematics (12.0.4)

Commit Description Notes
handle updating renamed files [Closes #14255]
[Closes #21083]

@angular/cli (12.0.4)

Commit Description Notes
avoid shell exec when bootstrapping update command
correctly redirect nested Angular schematic dependency requests [Closes #21075]

@ngtools/webpack (12.0.4)

Commit Description Notes
ensure plugin provided Webpack instance is used

@schematics/angular (12.0.4)

Commit Description Notes
added webWorkerTsConfig into test option
working with formatting


Special Thanks

Alan Agius, Charles Lyding, Santosh Mahto, Joey Perrott, Doug Parker

v12.0.3 (2021-06-02)

Commits

@angular-devkit/build-angular (12.0.3)

Commit Description Notes
do not resolve web-workers in server builds [Closes #20877]
provided earlier build feedback in console [Closes #20957]
correctly ignore inline styles during i18n extraction [Closes #20968]
update `license-webpack-plugin` to `2.3.19`

@angular-devkit/build-webpack (0.1200.3)

Commit Description Notes
include only required stats in webpackStats

@angular-devkit/core (12.0.3)

Commit Description Notes
show allowed enum values when validation on enum fails
handle complex smart defaults in schemas
handle async schema validations
transform path using getSystemPath for NodeJsAsyncHost's `exists` method

@angular/cli (12.0.3)

Commit Description Notes
update supported range of node versions to be less restrictive [Closes #20796]

@ngtools/webpack (12.0.3)

Commit Description Notes
normalize paths when adding file dependencies [Closes #20891]
remove redundant inline style cache

@schematics/angular (12.0.3)

Commit Description Notes
make version 12 workspace config migration idempotent [Closes #20979]
show better error when non existing project is passed to the component schematic


Special Thanks

Alan Agius, Doug Parker, Charles Lyding, why520crazy

v12.1.0-next.4 (2021-06-02)

Commits

@angular-devkit/build-angular (12.1.0-next.4)

Commit Description Notes
do not resolve web-workers in server builds [Closes #20877]
provided earlier build feedback in console [Closes #20957]
correctly ignore inline styles during i18n extraction

@angular-devkit/build-webpack (0.1201.0-next.4)

Commit Description Notes
include only required stats in webpackStats

@angular-devkit/core (12.1.0-next.4)

Commit Description Notes
show allowed enum values when validation on enum fails
handle complex smart defaults in schemas
handle async schema validations
transform path using getSystemPath for NodeJsAsyncHost's `exists` method

@angular/cli (12.1.0-next.4)

Commit Description Notes
update supported range of node versions to be less restrictive [Closes #20796]

@ngtools/webpack (12.1.0-next.4)

Commit Description Notes
normalize paths when adding file dependencies [Closes #20891]
remove redundant inline style cache

@schematics/angular (12.1.0-next.4)

Commit Description Notes
make version 12 workspace config migration idempotent [Closes #20979]
show better error when non existing project is passed to the component schematic


Special Thanks

Alan Agius, Doug Parker, Charles Lyding, why520crazy

v12.1.0-next.3 (2021-05-26)

Commits

@angular-devkit/build-angular (12.1.0-next.3)

Commit Description Notes
enable webpack Trusted Types support
deprecate protractor builder
ensure Sass worker implementation supports Node.js 12.14
don't add `.hot-update.js` script tags [Closes #20855]
correctly generate ServiceWorker config on Windows [Closes #20894]
ensure latest inline stylesheet data is used during rebuilds
allow i18n extraction on application that uses web-workers [Closes #20930]
hide stacktraces from dart-sass errors
resolve absolute outputPath properly [Closes #20935]
show `--disable-host-check` warning only when not using `disableHostCheck` [Closes #20951]
disable CSS optimization parallelism for components styles [Closes #20883]
load postcss-preset-env configuration once

@angular/cli (12.1.0-next.3)

Commit Description Notes
show Node.js version support status in version command [Closes #20879]
ng update on windows to allow path

@ngtools/webpack (12.1.0-next.3)

Commit Description Notes
re-emit component stylesheet assets [Closes #20882]


Special Thanks

Alan Agius, Charles Lyding, Doug Parker, Bjarki, Hassan Sani, JoostK, George Kalpakas, Joey Perrott

v12.0.2 (2021-05-26)

Commits

@angular-devkit/build-angular (12.0.2)

Commit Description Notes
ensure Sass worker implementation supports Node.js 12.14
don't add `.hot-update.js` script tags [Closes #20855]
correctly generate ServiceWorker config on Windows [Closes #20894]
ensure latest inline stylesheet data is used during rebuilds
allow i18n extraction on application that uses web-workers [Closes #20930]
hide stacktraces from dart-sass errors
resolve absolute outputPath properly [Closes #20935]
show `--disable-host-check` warning only when not using `disableHostCheck` [Closes #20951]
update PostCSS to 8.3
disable CSS optimization parallelism for components styles [Closes #20883]
load postcss-preset-env configuration once

@angular/cli (12.0.2)

Commit Description Notes
ng update on windows to allow path

@ngtools/webpack (12.0.2)

Commit Description Notes
re-emit component stylesheet assets [Closes #20882]


Special Thanks

Alan Agius, Charles Lyding, Doug Parker, Hassan Sani, JoostK, George Kalpakas, Joey Perrott

v12.0.1 (2021-05-19)

Commits

@angular-devkit/build-angular (12.0.1)

Commit Description Notes
add experimental web-assembly [Closes #20762]
fix error with inline styles when running extract-i18n
add `NG_BUILD_MAX_WORKERS` settimgs to control maximum number of workers
non injected styles should not count as initial [Closes #20781]
revert open to 8.0.2 [Closes #20807]
correctly resolve babel runtime helpers [Closes #20800]
compile schema in synchronously [Closes #20847]
execute dart-sass in a worker
reduce JSON stats
use CSS optimization plugin that leverages workers
render Sass using a pool of workers
clean no-longer used assets during builds

@angular/cli (12.0.1)

Commit Description Notes
cannot locate bin for temporary package
clean node modules directory prior to updating
improve `--prod` deprecation warning [Closes #20806]

@ngtools/webpack (12.0.1)

Commit Description Notes
reduce non-watch mode TypeScript diagnostic analysis overhead

@schematics/angular (12.0.1)

Commit Description Notes
remove --prod option from README template
don't add `skipTest` option to module schematic options [Closes #20811]
add migration to remove `skipTests` from `@schematics/angular:module` [Closes #20848]


Special Thanks

Alan Agius, Charles Lyding, Joey Perrott, Keen Yee Liau, Luca Vazzano, Pankaj Patil, Ryan Lester, Terence D. Honles, Alan Cohen

v12.1.0-next.2 (2021-05-19)

Commits

@angular-devkit/build-angular (12.1.0-next.2)

Commit Description Notes
add experimental web-assembly [Closes #20762]
add `NG_BUILD_MAX_WORKERS` settimgs to control maximum number of workers
non injected styles should not count as initial [Closes #20781]
revert open to 8.0.2 [Closes #20807]
correctly resolve babel runtime helpers [Closes #20800]
compile schema in synchronously [Closes #20847]
execute dart-sass in a worker
reduce JSON stats
use CSS optimization plugin that leverages workers
render Sass using a pool of workers
clean no-longer used assets during builds

@angular/cli (12.1.0-next.2)

Commit Description Notes
cannot locate bin for temporary package
clean node modules directory prior to updating
improve `--prod` deprecation warning [Closes #20806]

@ngtools/webpack (12.1.0-next.2)

Commit Description Notes
reduce non-watch mode TypeScript diagnostic analysis overhead

@schematics/angular (12.1.0-next.2)

Commit Description Notes
remove --prod option from README template
don't add `skipTest` option to module schematic options [Closes #20811]
add migration to remove `skipTests` from `@schematics/angular:module` [Closes #20848]


Special Thanks

Alan Agius, Charles Lyding, Joey Perrott, Keen Yee Liau, Luca Vazzano, Pankaj Patil, Ryan Lester, Alan Cohen, Paul Gschwendtner

v12.0.0 (2021-05-12)

Commits

@angular-devkit/architect (0.1200.0)

Commit Description Notes
add implementation for defaultConfiguration

@angular-devkit/build-angular (12.0.0)

Commit Description Notes
add `postcss-preset-env` with stage 3 features
drop support for karma version 5.2
drop support for ng-packagr version 11
enable inlineCritical by default
show warning during build when project requires IE 11 support
expose legacy-migrate message format
integrate JIT mode linker [Closes #20281]
upgrade to Webpack 5 throughout the build system
support processing component inline CSS styles
support specifying stylesheet language for inline component styles
remove left-over `experimentalRollupPass` option
support writing large Webpack stat outputs
ensure output directory is present before writing stats JSON
remove deprecated View Engine support for i18n extraction
remove usage of deprecated View Engine compiler
remove deprecated i18nLocale and i18nFormat options from i18n-extract
update karma builder to use non-deprecated API
disable webpack cache when using `NG_BUILD_CACHE`
remove duplicate application bundle generation complete message
mark programmatic builder execution functions as experimental
avoid double build optimizer processing
replace Webpack 4 `hashForChunk` hook usage
use new Webpack watch API in karma webpack plugin
recover from CSS optimization errors
disable Webpack 5 automatic public path support
always inject live reload client when using live reload
change several builder options defaults
show warning when using stylus
avoid triggering file change after file build
remove left-over `forkTypeChecker` option
disable CSS declaration sorting optimizations [Closes #20693]
disable `showCircularDependencies` by default
use Webpack's GC memory caching in watch mode
improve incremental time during Karma tests
avoid async downlevel for known ES2015 code

@angular-devkit/build-optimizer (0.1200.0)

Commit Description Notes
support Webpack 5

@angular-devkit/build-webpack (0.1200.0)

Commit Description Notes
provide output path in builder results
support Webpack 5

@angular-devkit/core (12.0.0)

Commit Description Notes
add handling for `defaultConfiguration` target definition property
update schema validator
ensure job input values are processed in order
improve handling of set schema values [Closes #20594]

@angular/cli (12.0.0)

Commit Description Notes
add `defaultConfiguration` property to architect schema
deprecate `--prod` command line argument
confirm ng add action before installation
support TypeScript 4.2
ensure odd number Node.js version message is a warning
remove npm 7 incompatibility notification
avoid exceptions for expected errors in architect commands
ensure update migrations are fully executed
exclude deprecated packages with removal migrations from update
add message update updating from non LTS versions of the CLI
ignore `tsickle` during updates
run all migrations when updating from or between prereleases
add package manager name and version in `ng version` output
Support XDG Base Directory Specfication
don't display options multiple times in schematics help output
change package installation to async
infer schematic defaults correctly when using `--project` [Closes #20666]
propagate update's force option to package managers
allow unsetting config when value is `undefined`
allow config object to be of JSON.
disallow additional properties in builders sections

@ngtools/webpack (12.0.0)

Commit Description Notes
support Webpack 5
drop support for string based lazy loading
support multiple plugin instances per compilation
support generating data URIs for inline component styles in JIT
support processing inline component styles in AOT
remove Webpack 5 deprecation warning in resource loader
use correct Webpack asset stage in resource loader
remove Webpack plugin for deprecated ViewEngine compiler
only track actual resource file dependencies
avoid adding transitive dependencies to Webpack's dependency graph
use precalculated dependencies in unused file check
only check affected files for Angular semantic diagnostics
cache results of processed inline resources
rebuild Angular required files asynchronously
reduce source file and Webpack module iteration

@schematics/angular (12.0.0)

Commit Description Notes
add migration to remove deprecated options from 'angular.json'
strict mode by default
use new zone.js entry-points
add migration to use new zone.js entry-points
add migration to remove emitDecoratorMetadata
augment `universal` schematics to import `platform-server` shims [Closes #40559]
update new project dependencies version [Closes #20106]
production builds by default
deprecate `legacyBrowsers` application and ng-new option
add migration to remove `lazyModules` configuration option
add migration to update lazy loading string syntax to use dynamic imports
update several TypeScript compilation target (Syntax)
remove tslint and codelyzer from new projects [Closes #20105]
[Closes #18465]
add production by default optional migration
update new workspaces to use Karma 6.3
remove `entryComponent` from `component` schematic
configure new libraries to be published in Ivy partial mode
update `jasmine-spec-reporter` to version 7
migrate web workers to support Webpack 5
only update removed v12 options in migration
add `additionalProperties` to all schemas
remove references to the prod flag
only show legacy browsers deprecation warning when option is used
remove leftover workspace tslint config
correctly handle adding multi-line strings to `@NgModule` metadata
run update-i18n migration for server builder
update web-worker to support Webpack 5
set `inlineStyleLanguage` when application `style` option is used
set `inlineStyleLanguage` for universal if present in build options
remove jasmine-spec-reporter and ts-node from default workspace
remove Protractor from home page
remove lint command from package.json [Closes #20618]
fix migration for namedChunks and option
add "type" option in enum schematic
only run `emitDecoratorMetadata` removal migration in safe workspaces
replace `clientProject` with `project`

 

Breaking Changes

@schematics/angular: remove `stylus` from `style` options (fd729ac)

`styl` (Stylus) is no longer a supported value as `style` in `application`, `component`, `ng-new` schematics. Stylus is not actively maintained and only 0.3% of the Angular CLI users use it.

(cherry picked from commit 0272fc55b67d1a3f986b996c8eb21aea31eedf51)

@angular-devkit/build-angular: change several builder options defaults (656f8d7)

A number of browser and server builder options have had their default values changed. The aim of these changes is to reduce the configuration complexity and support the new "production builds by default" initiative.

Browser builder

Option Previous default value New default value
optimization false true
aot false true
buildOptimizer false true
sourceMap true false
extractLicenses false true
namedChunks true false
vendorChunk true false

Server builder

Option Previous default value New default value
optimization false true
sourceMap true false

(cherry picked from commit 0a74d0d28daf68510459ed73ef048c91bfcabbbc)

@angular-devkit/core: update schema validator (0875313)

support for JSON Schema draft-04 and draft-06 is removed. If you have schemas using the `id` keyword replace them with `$id`. For an interim period we will auto rename any top level `id` keyword to `$id`.

NB: This change only effects schematics and builders authors.

@angular-devkit/build-angular: upgrade to Webpack 5 throughout the build system (d883ce5)

Webpack 5 lazy loaded file name changes Webpack 5 generates similar but differently named files for lazy loaded JavaScript files in development configurations (when the `namedChunks` option is enabled). For the majority of users this change should have no effect on the application and/or build process. Production builds should also not be affected as the `namedChunks` option is disabled by default in production configurations. However, if a project's post-build process makes assumptions as to the file names then adjustments may need to be made to account for the new naming paradigm. Such post-build processes could include custom file transformations after the build, integration into service-side frameworks, or deployment procedures. Example development file name change: `lazy-lazy-module.js` --> `src_app_lazy_lazy_module_ts.js`

Webpack 5 now includes web worker support. However, the structure of the URL within the Worker constructor must be in a specific format that differs from the current requirement. Web worker usage should be updated as shown below (where ./app.worker should be replaced with the actual worker name): Before: new Worker('./app.worker', ...) After: new Worker(new URL('./app.worker', import.meta.url), ...)

@ngtools/webpack: remove Webpack plugin for deprecated ViewEngine compiler (160102a)

Removal of View Engine support from application builds With the removal of the deprecated View Engine compiler in Angular version 12 for applications, the View Engine Webpack plugin has been removed. The Ivy-based Webpack plugin is the default used within the Angular CLI. If using a custom standalone Webpack configuration, the removed `AngularCompilerPlugin` should be replaced with the Ivy-based `AngularWebpackPlugin`.

@angular-devkit/build-angular: remove deprecated i18n options from server and browser builder (5cf9a08)

Removal of deprecated browser and server command options. - `i18nFile`, use `locales` object in the project metadata instead. - `i18nFormat`, No longer needed as the format will be determined automatically. - `i18nLocale`, use `localize` option instead.

@angular-devkit/build-angular: remove deprecated i18nLocale and i18nFormat options from i18n-extract (eca5a01)

Removal of deprecated `extract-i18n` command options The deprecated `i18nLocale` option has been removed and the `i18n.sourceLocale` within a project's configuration should be used instead. The deprecated `i18nFormat` option has been removed and the `format` option should be used instead.

@angular-devkit/build-angular: remove usage of deprecated View Engine compiler (677913f)

Removal of View Engine support from application builds With the removal of the deprecated View Engine compiler in Angular version 12 for applications, Ivy-based compilation will always be used when building an application. The default behavior for applications is to use the Ivy compiler when building and no changes are required for these applications. For applications that have opted-out of Ivy, a warning will be shown and an Ivy-based build will be attempted. If the build fails, the application may need to be updated to become Ivy compatible.

@schematics/angular: remove `entryComponent` from `component` schematic (8582ddc)

`entryComponent` option has been removed from the `component` schematic as this was intended to be used with the the now no longer supported ViewEngine rendering engine.

@angular-devkit/build-angular: remove view engine app-shell generation (1c2aeeb)

App-shell builder now only supports generation using Ivy

@angular-devkit/build-angular: remove deprecated View Engine support for i18n extraction (012700a)

Removal of View Engine support from i18n extraction With the removal of the deprecated View Engine compiler in Angular version 12 for applications, the `ng extract-i18n` command will now always use the Ivy compiler. The `--ivy` option has also been removed as Ivy-based extraction is always enabled. The default behavior for applications is to use the Ivy compiler for building/extraction and no changes are required for these applications. For applications that have opted-out of Ivy, a warning will be shown and Ivy-based extraction will be attempted. If the extraction fails, the application may need to be updated to become Ivy compatible.

@angular/cli: confirm ng add action before installation (985dc1a)

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.

@angular-devkit/build-angular: remove deprecated `lazyModules` option (8d66912)

Server and Browser builder `lazyModules` option has been removed without replacement.

@ngtools/webpack: drop support for string based lazy loading (0dc7327)

With this change we drop support for string based lazy loading `./lazy.module#LazyModule` use dynamic imports instead.

The following options which were used to support the above syntax were removed without replacement.

  • discoverLazyRoutes
  • additionalLazyModules
  • additionalLazyModuleResources
  • contextElementDependencyConstructor

@angular-devkit/build-angular: enable inlineCritical by default (aa3ea88)

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

@angular-devkit/build-angular: drop support for zone.js 0.10 (f309516)

Minimum supported `zone.js` version is `0.11.4`

@angular-devkit/build-angular: drop support for ng-packagr version 11 (44e75be)

Minimum supported `ng-packagr` version is `12.0.0-next`

@angular-devkit/build-angular: drop support for karma version 5.2 (fa5cf53)

Minimum supported `karma` version is `6.0.0`

set minimum Node.js version to 12.13 (d1f6169)

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.

@angular-devkit/build-angular: remove file-loader dependency (6732294)

The unsupported/undocumented, Webpack specific functionality to `import`/`require()` a non-module file has been removed.

Before

import img from './images/asset.png';

After

<img src="images/asset.png" />

Special Thanks

Alan Agius, Charles Lyding, Keen Yee Liau, Joey Perrott, Doug Parker, Cédric Exbrayat, Douglas Parker, George Kalpakas, Sam Bulatov, Joshua Chapman, Santosh Yadav, David Shevitz, Kristiyan Kostadinov

v12.0.0-rc.3 (2021-05-10)

Commits

@angular/cli (12.0.0-rc.3)

Commit Description Notes
propagate update's force option to package managers
allow unsetting config when value is `undefined`
allow config object to be of JSON.
disallow additional properties in builders sections

Special Thanks

Alan Agius, Charles Lyding, Joey Perrott

v12.0.0-rc.2 (2021-05-05)

Commits

@angular-devkit/build-angular (12.0.0-rc.2)

Commit Description Notes
disable CSS declaration sorting optimizations [Closes #20693]

@angular/cli (12.0.0-rc.2)

Commit Description Notes
don't display options multiple times in schematics help output
change package installation to async
infer schematic defaults correctly when using `--project` [Closes #20666]

@ngtools/webpack (12.0.0-rc.2)

Commit Description Notes
rebuild Angular required files asynchronously
reduce source file and Webpack module iteration

@schematics/angular (12.0.0-rc.2)

Commit Description Notes
add "type" option in enum schematic
only run `emitDecoratorMetadata` removal migration in safe workspaces
replace `clientProject` with `project`


Special Thanks

Alan Agius, Charles Lyding, Keen Yee Liau, Sam Bulatov, Doug Parker

v12.0.0-rc.1 (2021-04-28)

Commits

@angular-devkit/build-angular (12.0.0-rc.1)

Commit Description Notes
remove left-over `forkTypeChecker` option
output webpack-dev-server and webpack-dev-middleware errors
improve incremental time during Karma tests
avoid async downlevel for known ES2015 code

@angular-devkit/core (12.0.0-rc.1)

Commit Description Notes
improve handling of set schema values [Closes #20594]

@angular/cli (12.0.0-rc.1)

Commit Description Notes
add package manager name and version in `ng version` output
Support XDG Base Directory Specfication

@schematics/angular (12.0.0-rc.1)

Commit Description Notes
remove jasmine-spec-reporter and ts-node from default workspace
remove Protractor from home page
remove lint command from package.json [Closes #20618]
avoid unuse imports for canLoad guard generation
fix migration for namedChunks and option

@angular-devkit/schematics-cli (12.0.0-rc.1)

Commit Description Notes
accept windows like paths for schematics


Special Thanks

Alan Agius, Charles Lyding, Joey Perrott, Cédric Exbrayat, Doug Parker, Joshua Chapman, Billy Lando, Santosh Yadav, mzocateli

v12.0.0-rc.0 (2021-04-21)

Commits

@angular-devkit/build-angular (12.0.0-rc.0)

Commit Description Notes
avoid double build optimizer processing
replace Webpack 4 `hashForChunk` hook usage
use new Webpack watch API in karma webpack plugin
recover from CSS optimization errors
disable Webpack 5 automatic public path support
always inject live reload client when using live reload
change several builder options defaults
show warning when using stylus
set Tailwind CSS mode when using Tailwind
avoid triggering file change after file build
use Webpack's GC memory caching in watch mode

@angular/cli (12.0.0-rc.0)

Commit Description Notes
ignore `tsickle` during updates
run all migrations when updating from or between prereleases

@ngtools/webpack (12.0.0-rc.0)

Commit Description Notes
only track actual resource file dependencies
cache results of processed inline resources

@schematics/angular (12.0.0-rc.0)

Commit Description Notes
set `inlineStyleLanguage` when application `style` option is used
set `inlineStyleLanguage` for universal if present in build options

Breaking Changes

@schematics/angular: remove `stylus` from `style` options (fd729ac)

`styl` (Stylus) is no longer a supported value as `style` in `application`, `component`, `ng-new` schematics. Stylus is not actively maintained and only 0.3% of the Angular CLI users use it.

(cherry picked from commit 0272fc55b67d1a3f986b996c8eb21aea31eedf51)

@angular-devkit/build-angular: change several builder options defaults (656f8d7)

A number of browser and server builder options have had their default values changed. The aim of these changes is to reduce the configuration complexity and support the new "production builds by default" initiative.

Browser builder

Option Previous default value New default value
optimization false true
aot false true
buildOptimizer false true
sourceMap true false
extractLicenses false true
namedChunks true false
vendorChunk true false

Server builder

Option Previous default value New default value
optimization false true
sourceMap true false

(cherry picked from commit 0a74d0d28daf68510459ed73ef048c91bfcabbbc)


Special Thanks

Alan Agius, Charles Lyding, Keen Yee Liau, Joey Perrott, David Shevitz

v12.0.0-next.9 (2021-04-14)

Commits

@angular-devkit/build-angular (12.0.0-next.9)

Commit Description Notes
upgrade to Webpack 5 throughout the build system
support processing component inline CSS styles
support specifying stylesheet language for inline component styles
update karma builder to use non-deprecated API
disable webpack cache when using `NG_BUILD_CACHE`
remove duplicate application bundle generation complete message
mark programmatic builder execution functions as experimental

@angular-devkit/build-webpack (0.1200.0-next.9)

Commit Description Notes
support Webpack 5

@angular-devkit/core (12.0.0-next.9)

Commit Description Notes
update schema validator

@angular/cli (12.0.0-next.9)

Commit Description Notes
add message update updating from non LTS versions of the CLI

@ngtools/webpack (12.0.0-next.9)

Commit Description Notes
support multiple plugin instances per compilation
support generating data URIs for inline component styles in JIT
support processing inline component styles in AOT

@schematics/angular (12.0.0-next.9)

Commit Description Notes
configure new libraries to be published in Ivy partial mode
update `jasmine-spec-reporter` to version 7
migrate web workers to support Webpack 5
update web-worker to support Webpack 5

Breaking Changes

@angular-devkit/core: update schema validator (0875313)

support for JSON Schema draft-04 and draft-06 is removed. If you have schemas using the `id` keyword replace them with `$id`. For an interim period we will auto rename any top level `id` keyword to `$id`.

NB: This change only effects schematics and builders authors.

@angular-devkit/build-angular: upgrade to Webpack 5 throughout the build system (d883ce5)

Webpack 5 generates similar but differently named files for lazy loaded JavaScript files in development configurations (when the `namedChunks` option is enabled). For the majority of users this change should have no effect on the application and/or build process. Production builds should also not be affected as the `namedChunks` option is disabled by default in production configurations. However, if a project's post-build process makes assumptions as to the file names then adjustments may need to be made to account for the new naming paradigm. Such post-build processes could include custom file transformations after the build, integration into service-side frameworks, or deployment procedures. Example development file name change: `lazy-lazy-module.js` --> `src_app_lazy_lazy_module_ts.js`

@angular-devkit/build-angular: upgrade to Webpack 5 throughout the build system (d883ce5)

Webpack 5 now includes web worker support. However, the structure of the URL within the `Worker` constructor must be in a specific format that differs from the current requirement. Web worker usage should be updated as shown below (where `./app.worker` should be replaced with the actual worker name):

Before:

new Worker('./app.worker', ...)

After:

new Worker(new URL('./app.worker', import.meta.url), ...)

Special Thanks

Alan Agius, Charles Lyding, Keen Yee Liau, Doug Parker, Douglas Parker

v12.0.0-next.8 (2021-04-07)

Commits

@angular-devkit/build-angular (0.1200.0-next.8)

Commit Description Notes
remove deprecated i18nLocale and i18nFormat options from i18n-extract

@ngtools/webpack (12.0.0-next.8)

Commit Description Notes
remove Webpack plugin for deprecated ViewEngine compiler

@schematics/angular (12.0.0-next.8)

Commit Description Notes
run update-i18n migration for server builder

Breaking Changes

@ngtools/webpack: remove Webpack plugin for deprecated ViewEngine compiler (160102a)

Removal of View Engine support from application builds With the removal of the deprecated View Engine compiler in Angular version 12 for applications, the View Engine Webpack plugin has been removed. The Ivy-based Webpack plugin is the default used within the Angular CLI. If using a custom standalone Webpack configuration, the removed `AngularCompilerPlugin` should be replaced with the Ivy-based `AngularWebpackPlugin`.

@angular-devkit/build-angular: remove deprecated i18n options from server and browser builder (5cf9a08)

Removal of deprecated browser and server command options. - `i18nFile`, use `locales` object in the project metadata instead. - `i18nFormat`, No longer needed as the format will be determined automatically. - `i18nLocale`, use `localize` option instead.

@angular-devkit/build-angular: remove deprecated i18nLocale and i18nFormat options from i18n-extract (eca5a01)

Removal of deprecated `extract-i18n` command options The deprecated `i18nLocale` option has been removed and the `i18n.sourceLocale` within a project's configuration should be used instead. The deprecated `i18nFormat` option has been removed and the `format` option should be used instead.

Special Thanks

Charles Lyding, Renovate Bot, Alan Agius, Doug Parker, Joey Perrott

v12.0.0-next.7 (2021-04-02)

Commits

@angular-devkit/build-angular (0.1200.0-next.7)

Commit Description Notes
validate scripts and styles bundleName [Closes #20360]
remove deprecated View Engine support for i18n extraction
remove usage of deprecated View Engine compiler

@angular/cli (12.0.0-next.7)

Commit Description Notes
ensure update migrations are fully executed
exclude deprecated packages with removal migrations from update

@ngtools/webpack (12.0.0-next.7)

Commit Description Notes
use correct Webpack asset stage in resource loader
only check affected files for Angular semantic diagnostics

@schematics/angular (12.0.0-next.7)

Commit Description Notes
remove `entryComponent` from `component` schematic
correctly handle adding multi-line strings to `@NgModule` metadata
explicitly specify ServiceWorker registration strategy

Breaking Changes

@angular-devkit/build-angular: remove usage of deprecated View Engine compiler (677913f)

Removal of View Engine support from application builds With the removal of the deprecated View Engine compiler in Angular version 12 for applications, Ivy-based compilation will always be used when building an application. The default behavior for applications is to use the Ivy compiler when building and no changes are required for these applications. For applications that have opted-out of Ivy, a warning will be shown and an Ivy-based build will be attempted. If the build fails, the application may need to be updated to become Ivy compatible.

@schematics/angular: remove `entryComponent` from `component` schematic (8582ddc)

`entryComponent` option has been removed from the `component` schematic as this was intended to be used with the the now no longer supported ViewEngine rendering engine.

@angular-devkit/build-angular: remove view engine app-shell generation (1c2aeeb)

App-shell builder now only supports generation using Ivy

@angular-devkit/build-angular: remove deprecated View Engine support for i18n extraction (012700a)

Removal of View Engine support from i18n extraction With the removal of the deprecated View Engine compiler in Angular version 12 for applications, the `ng extract-i18n` command will now always use the Ivy compiler. The `--ivy` option has also been removed as Ivy-based extraction is always enabled. The default behavior for applications is to use the Ivy compiler for building/extraction and no changes are required for these applications. For applications that have opted-out of Ivy, a warning will be shown and Ivy-based extraction will be attempted. If the extraction fails, the application may need to be updated to become Ivy compatible.

Special Thanks

Charles Lyding, Alan Agius, Renovate Bot, George Kalpakas, Joey Perrott, Keen Yee Liau

v12.0.0-next.6 (2021-03-24)

Commits

@angular-devkit/build-angular (0.1200.0-next.6)

Commit Description Notes
ensure output directory is present before writing stats JSON

@schematics/angular (12.0.0-next.6)

Commit Description Notes
add production by default optional migration
update new workspaces to use Karma 6.3
remove leftover workspace tslint config


Special Thanks

Renovate Bot, Alan Agius, Charles Lyding, Keen Yee Liau

v12.0.0-next.5 (2021-03-18)

Commits

@angular-devkit/build-angular (0.1200.0-next.5)

Commit Description Notes
expose legacy-migrate message format
integrate JIT mode linker [Closes #20281]
display correct filename for bundles that are ES2016+
don't load an input sourcemap from file when using Babel
support writing large Webpack stat outputs
skip FESM2015 from `async` transformation
remove Webpack Stats.toJson usage in analytics plugin
remove Webpack Stats.toJson usage in karma plugin
enforce Babel not to load sourcemaps from file
disable `showCircularDependencies` by default

@angular-devkit/build-webpack (0.1200.0-next.5)

Commit Description Notes
provide output path in builder results

@angular/cli (12.0.0-next.5)

Commit Description Notes
confirm ng add action before installation
support TypeScript 4.2
remove `project` from required properties in ng-packagr schema

@ngtools/webpack (12.0.0-next.5)

Commit Description Notes
remove Webpack 5 deprecation warning in resource loader
avoid adding transitive dependencies to Webpack's dependency graph
use precalculated dependencies in unused file check

@schematics/angular (12.0.0-next.5)

Commit Description Notes
update several TypeScript compilation target (Syntax)
remove tslint and codelyzer from new projects [Closes #20105]
[Closes #18465]
remove references to the prod flag
fix youtube icon margin
only show legacy browsers deprecation warning when option is used
remove Native value from viewEncapsulation option
use title for svg on home page

Breaking Changes

@angular/cli: confirm ng add action before installation (985dc1a)

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.

Special Thanks

Alan Agius, Charles Lyding, Renovate Bot, Doug Parker, Cédric Exbrayat, Kristiyan Kostadinov, Mouad Ennaciri, Omar Hasan

v12.0.0-next.4 (2021-03-10)

Commits

@angular-devkit/architect (0.1200.0-next.4)

Commit Description Notes
add implementation for defaultConfiguration

@angular-devkit/build-angular (0.1200.0-next.4)

Commit Description Notes
show warning during build when project requires IE 11 support
only remove nomodule and defer attributes empty values [Closes #20207]

@angular-devkit/core (12.0.0-next.4)

Commit Description Notes
add handling for `defaultConfiguration` target definition property

@angular/cli (12.0.0-next.4)

Commit Description Notes
deprecate `--prod` command line argument
add `defaultConfiguration` property to architect schema
avoid exceptions for expected errors in architect commands
add ng-packagr builder schema in IDE schema

@ngtools/webpack (12.0.0-next.4)

Commit Description Notes
drop support for string based lazy loading

@schematics/angular (12.0.0-next.4)

Commit Description Notes
add migration to update lazy loading string syntax to use dynamic imports
add migration to remove `lazyModules` configuration option
deprecate `legacyBrowsers` application and ng-new option
production builds by default
add `additionalProperties` to all schemas

Breaking Changes

@angular-devkit/build-angular: remove deprecated `lazyModules` option (8d66912)

Server and Browser builder `lazyModules` option has been removed without replacement.

@ngtools/webpack: drop support for string based lazy loading (0dc7327)

With this change we drop support for string based lazy loading `./lazy.module#LazyModule` use dynamic imports instead.

The following options which were used to support the above syntax were removed without replacement.

  • discoverLazyRoutes
  • additionalLazyModules
  • additionalLazyModuleResources
  • contextElementDependencyConstructor

Special Thanks

Alan Agius, Charles Lyding, Renovate Bot, Joey Perrott

v12.0.0-next.3 (2021-03-03)

Commits

@angular-devkit/build-angular (0.1200.0-next.3)

Commit Description Notes
enable inlineCritical by default
remove left-over `experimentalRollupPass` option
inline critical font-face rules when using crittical css inlining

@schematics/angular (12.0.0-next.3)

Commit Description Notes
update ng new links

Breaking Changes

@angular-devkit/build-angular: enable inlineCritical by default (aa3ea88)

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


Special Thanks

Renovate Bot, Charles Lyding, Alan Agius, Keen Yee Liau, Douglas Parker, twerske

v12.0.0-next.2 (2021-02-24)

Commits

@angular-devkit/build-angular (0.1200.0-next.2)

Commit Description Notes
only show index and service worker status once
disable declaration and declarationMap [Closes #20103]

@angular/cli (12.0.0-next.2)

Commit Description Notes
remove npm 7 incompatibility notification

@schematics/angular (12.0.0-next.2)

Commit Description Notes
update new project dependencies version [Closes #20106]
augment `universal` schematics to import `platform-server` shims [Closes #40559]
add migration to remove emitDecoratorMetadata


Special Thanks

Renovate Bot, Charles Lyding, Alan Agius, Doug Parker, Joey Perrott, Jefiozie, George Kalpakas, Keen Yee Liau

v12.0.0-next.1 (2021-02-17)

Commits

@angular-devkit/build-angular (0.1200.0-next.1)

Commit Description Notes
drop support for ng-packagr version 11
drop support for karma version 5.2

@angular-devkit/build-optimizer (0.1200.0-next.1)

Commit Description Notes
support Webpack 5

@angular/cli (12.0.0-next.1)

Commit Description Notes
support update migration packages with no entry points [Closes #20032]
ensure odd number Node.js version message is a warning
improve error logging when resolving update migrations

@ngtools/webpack (12.0.0-next.1)

Commit Description Notes
support Webpack 5
normalize paths when pruning AOT rebuild requests

@schematics/angular (12.0.0-next.1)

Commit Description Notes
add migration to use new zone.js entry-points
use new zone.js entry-points

Breaking Changes

@angular-devkit/build-angular: drop support for zone.js 0.10 (f309516)

Minimum supported `zone.js` version is `0.11.4`

@angular-devkit/build-angular: drop support for ng-packagr version 11 (44e75be)

Minimum supported `ng-packagr` version is `12.0.0-next`

@angular-devkit/build-angular: drop support for karma version 5.2 (fa5cf53)

Minimum supported `karma` version is `6.0.0`

Special Thanks

Renovate Bot, Alan Agius, Charles Lyding, Keen Yee Liau, Aravind V Nair

v12.0.0-next.0 (2021-02-11)

Commits

@angular-devkit/build-angular (0.1200.0-next.0)

Commit Description Notes
add `postcss-preset-env` with stage 3 features
ensure i18n extraction sourcemaps are fully configured
the root Tailwind configuration file is always picked
fixed ignoring of karma plugins config [Closes #19993]

@angular-devkit/core (12.0.0-next.0)

Commit Description Notes
ensure job input values are processed in order

@angular/cli (12.0.0-next.0)

Commit Description Notes
update NPM 7 guidance

@ngtools/webpack (12.0.0-next.0)

Commit Description Notes
reduce overhead of Angular compiler rebuild requests

@schematics/angular (12.0.0-next.0)

Commit Description Notes
strict mode by default
add migration to remove deprecated options from 'angular.json'
only update removed v12 options in migration

Breaking Changes

set minimum Node.js version to 12.13 (d1f6169)

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.

@angular-devkit/build-angular: remove file-loader dependency (6732294)

The unsupported/undocumented, Webpack specific functionality to `import`/`require()` a non-module file has been removed.

Before

import img from './images/asset.png';

After

<img src="images/asset.png" />

Special Thanks

Renovate Bot, Charles Lyding, Alan Agius, Doug Parker, Bruno Baia, Amadou Sall, S. Iftekhar Hossain


Note: For release notes prior to this CHANGELOG see release notes.