Angular CLI: 16.0.0 Release

Release date:
May 3, 2023
Previous version:
16.0.0-rc.4 (released April 28, 2023)
Magnitude:
1 Diff Delta
Contributors:
1 total committer
Data confidence:
Commits:

Top Contributors in 16.0.0

dgp1130

Directory Browser for 16.0.0

We haven't yet finished calculating and confirming the files and directories changed in this release. Please check back soon.

Release Notes Published

<a name="16.0.0"></a>

16.0.0 (2023-05-03)

@angular/cli

| Commit | Description | | -- | -- | | feat - 68024234e | remove deprecated defaultCollection from workspace configuration | | feat - d58428d3d | remove deprecated defaultProject from workspace configuration | | feat - 7cb5689e0 | show optional migrations during update process | | refactor - c29c8e18d | remove Node.js v14 support |

@schematics/angular

| Commit | Description | | -- | -- | | feat - c2d2da41b | add support to add service worker to standalone application | | feat - 22fdd7da9 | generate functional resolvers and guards by default | | feat - a832c2028 | Implement a standalone flag for new applications | | feat - 5ceedcb11 | remove deprecated CanLoad option for guards | | feat - c9e84d024 | remove generation of BrowserModule.withServerTransition | | feat - 50b9e59a5 | update app-shell schematic to support standalone applications | | feat - dc5cc893d | Update universal schematic to support standalone applications | | fix - f98c9de80 | add experimental message when using standalone application schematic. | | fix - a5cb46124 | add standalone option to library library | | fix - b2ed7bd10 | provide migration that disables build optimizer on dev server builds | | fix - ba4414b2c | reformat app.config.ts | | fix - 202e9a50f | remove compileComponents from component test schematic | | fix - 0d58f73c5 | rename app.server.module.ts to app.module.server.ts | | fix - de6d30102 | replace provideServerSupport with provideServerRendering | | fix - bff634fe0 | update private Components utilities to work with standalone project structure | | fix - 85fe820b0 | use same property order in standalone AppComponent |

| Commit | Description | | -- | -- | | build - 5a171ddff | update to TypeScript 5 and drop support for TypeScript 4.8 |

@angular-devkit/architect

| Commit | Description | | -- | -- | | fix - 48871381a | allow registered builder teardowns to execute |

@angular-devkit/build-angular

| Commit | Description | | -- | -- | | feat - ff5ebf9b1 | add CSP support for inline styles | | feat - ee8013f66 | display build output table with esbuild | | feat - 0eac98f61 | implement progress option for esbuild builder | | feat - f04859d16 | initial autoprefixer support for CSS in esbuild builder | | feat - 8c550302c | initial development server for esbuild-based builder | | feat - 52969db6b | initial tailwindcss support for CSS in esbuild builder | | feat - ce46ecae0 | support module resolution with less stylesheets in esbuild builder | | feat - 584b51907 | support scripts option with esbuild builder | | feat - e4883b0ee | support SSL options with esbuild development server | | feat - 290802060 | support standalone app-shell generation | | fix - 766c14698 | add sourcemap x_google_ignoreList support for esbuild builder | | fix - cdfa7ca88 | allow multiple polyfills with esbuild-based builder | | fix - e690b7cbd | always enable looseEnums build optimizer rule | | fix - 135ab4c36 | avoid double sourcemap comments with esbuild dev-server | | fix - dcf60d2be | correctly filter lazy global styles in esbuild builder | | fix - 342a4ea30 | correctly show initial files in stat table with esbuild builder | | fix - 107851ae4 | display warning when preserveWhitespaces is set in the tsconfig provided to the server builder | | fix - ff8a89cbf | ensure all build resources are served in esbuild dev server | | fix - f76a8358e | ensure directories are properly ignored in esbuild builder | | fix - 005ba4276 | ensure empty component styles compile with esbuild | | fix - f74151baa | exclude @angular/platform-server/init from unsafe optimizations | | fix - f72155bc7 | fully remove third-party sourcemaps when disabled in esbuild builder | | fix - 26dced95c | JIT support for standalone applications | | fix - 4822b3ba5 | keep esbuild server active until builder fully stops | | fix - adbf2c8a1 | normalize long-form asset option output to relative path | | fix - 67670b612 | pass listening port in result for esbuild dev server | | fix - 1a8833b21 | provide option to run build-optimizer on server bundles | | fix - b8c9667f9 | remove unintended files in esbuild output stats table | | fix - 04274afc1 | set public class fields as properties (#24849) | | fix - a778fe6c2 | show lazy files in stat table correctly with esbuild | | fix - 955b493b1 | support CSP on critical CSS link tags. | | fix - c272172c8 | update esbuild builder complete log | | fix - 0b450578a | update list of known tailwind configuration files | | fix - 759ae92aa | update peer dependencies to support version 16 | | fix - eca366a84 | use preserveSymlinks option for tsconfigs in esbuild builder | | perf - 28c27567c | asynchronously delete output path in esbuild builder | | perf - 458400b7b | avoid unnessary iterations | | perf - a710a262a | cache Sass in memory with esbuild watch mode | | perf - e1398d333 | do not inline sourcemap when using vite dev-server | | perf - b2ece91b7 | enhance Sass package resolution in esbuild builder | | perf - aae34fc02 | fully lazy load sass in esbuild builder | | perf - 9ea3e8e34 | only import esbuild watcher when in watch mode | | perf - f88ac6fdf | skip Angular linker in JIT mode with esbuild | | refactor - a99018cd7 | remove deprecated outputPaths and outputPath Builder output |

@angular-devkit/core

| Commit | Description | | -- | -- | | feat - f6624b974 | update SchemaRegistry compile to return Promise | | refactor - 0ad81cdbc | remove deprecated exceptions |

@angular-devkit/schematics

| Commit | Description | | -- | -- | | refactor - d2ef386f4 | remove UpdateBuffer and rename UpdateBuffer2 to UpdateBuffer |

@ngtools/webpack

| Commit | Description | | -- | -- | | refactor - c8ac660d8 | remove NGCC integration |

Breaking Changes

@schematics/angular

  • ng g resolver and ng g guard now generate a functional resolver or guard by default. It is still possible to generate a (deprecated) class-based resolver or guard by using ng g resolver --no-functional or ng g guard --no-functional.
  • The CLI no longer allows to generate CanLoad guards. Use CanMatch instead. ### @angular/cli
  • The deprecated defaultCollection workspace option has been removed. Use schematicCollections instead.

Before json "defaultCollection": "@angular/material"

After json "schematicCollections": ["@angular/material"] - The deprecated defaultProject workspace option has been removed. The project to use will be determined from the current working directory. - Node.js v14 support has been removed

Node.js v14 is planned to be End-of-Life on 2023-04-30. Angular will stop supporting Node.js v14 in Angular v16. Angular v16 will continue to officially support Node.js versions v16 and v18.

  • * TypeScript 4.8 is no longer supported. ### @angular-devkit/build-angular
  • Deprecated outputPath and outputPaths from the server and browser builder have been removed from the builder output. Use outputs instead.

Note: this change does not effect application developers.

@angular-devkit/core

  • Several changes to the SchemaRegistry.
    • compile method now returns a Promise.
    • Deprecated flatten has been removed without replacement.
  • - ContentHasMutatedException, InvalidUpdateRecordException, UnimplementedException and MergeConflictException API from @angular-devkit/core have been removed in favor of the API from @angular-devkit/schematics.
    • UnsupportedPlatformException - A custom error exception should be created instead. ### @angular-devkit/schematics
  • The depracated UpdateBuffer has been removed and UpdateBuffer2 is renamed to UpdateBuffer. With this change the related and deprecated symbols ContentCannotBeRemovedException and Chunk have also been removed. ### @ngtools/webpack
  • NGCC integration has been removed and as a result Angular View Engine libraries will no longer work.