Packages

@ngtools/webpack

22.2.5 · 28 Oct 2026MIT3.7M / weekRepositorynpmAtom feed

Deprecated by its maintainers: Angular's Webpack support is deprecated. Use the esbuild and Vite-based "@angular/build" package instead.What to use instead
Your version

9.0.0

major6 Feb 2020Where it was published

9.1.15 is the newest release of 9.x.

In short

4 breaking

  • breaking

    EngineHost listSchematics has been removed in favour of listSchematicNames.

  • breaking

    FileSystemSink - Use the new virtualFs.Host classes from @angular-devkit/core.

  • breaking

    optimize function has been remove as trees are automaticlly optimized.

  • breaking

    DryRunSink deprecated constructor that allowed to provide a directory path has been removed. Provide a virtualFs.Host instead.

Release note

Commits

@angular-devkit/architect (0.900.0) Commit Description Notes

support multiple configs in WorkspaceNodeModulesArchitectHost

support accessing project metadata

clone workspace objects before builder use

@angular-devkit/benchmark (0.900.0) Commit Description Notes

Allows the CLI repo to be hosted in a directory with spaces. (#16073)

@angular-devkit/build-angular (0.900.0) Commit Description Notes

support TSLint 6.0+

support i18n localization for non-differential builds

support deprecated i18n options with new configuration

support parallel i18n localization

optimize i18n localize usage in source locale

initial support for i18n translation inlining

update peer dependency support

add experimentalRollupPass (#15690)

add support for i18n extraction with Ivy (#15796)

add analytics for ivy/non-ivy builds

set document locale when using i18nLocale

[Closes #8102]

deprecate `lazyModules` option

ignore express and hapi depedency expresstion (#15586)

enable bundleDependencies by default for server builder

expose webpack-dev-server's allowedHosts option

[Closes #13656]

update sass-loader to 8.0.0

exclude TSX test files from test coverage

collect test coverage from JSX/TSX files

resolve webdriver-manager from protractor location

provide supported browsers to babel

use translation file in bundle hash calculations

add crossorigin attribute to lazy chunks

[Closes #16801]

remove unneeded regex polyfills

when optimizing do not emit Ivy class metadata or module scope

ensure babel configurations are isolated

pass filename to `parseSync`

[Closes #16781]

reintroduce fast sourcemap path

ensure output is ASCII only

emit error when a script is not found

[Closes #16659]

change css optimizer from clean-css with cssnano

[Closes #16123]

[Closes #13854]

update tree-kill dependency to 1.2.2

improve quality of differential loading sourcemaps

replace istanbul-instrumenter-loader with coverage-istanbul-loader

[Closes #16576]

[Closes #7117]

update browserslist and caniuse-lite

[Closes #16560]

account for hashed and non hashed filesnames when having sourcemaps

prevent differential loading double sourcemap search

add sourceMappingURL comment for ES2015 during differential loading

[Closes #16522]

optimize web worker differential loading processing

[Closes #16441]

ensure source locale data is injected when localizing

[Closes #16389]

resolve `@babel/preset-env`

add symlinks option to resolveLoader

localize service worker base href

add notice when using bundleDependencies: none with Ivy

update budgets to check differential builds separately

[Closes #15792]

remove async files from `initial` bundle budget.

suppress duplicate 3rdpartylicenses.txt warning

add `externalDependencies` to server builders

allow `bundleDependencies` to be a boolean

augment base HREF when localizing

support differential loading for web workers

[Closes #16275]

ensure HTML lang attribute is set when localizing

make i18n translation files relative to workspace

add pattern validations for `browserTarget` and `serverTarget`

enable dynamic import parsing with serve localization

[Closes #16248]

cache localize results with development server

mocked context in single test transform matches webpack API

properly process es2016+ targets with differential loading

resolve lazy route Angular package from project base

[Closes #16219]

update link to update.angular.io

prevent webpack from adding suffixes to polyfills files

[Closes #15915]

allow new i18n options to work with VE

support global locale data with development server

ensure webpack loaders use this package's versions

ensure build-angular's webpack version is used

fix numberOfComponents in JIT mode

support XMB/XTB translation file parser

[Closes #16100]

ignore node modules when polling

prevent double sourcemap processing

silence internal webpack dev server logging

allow localization with development server (#16053)

temporarily disable global locale data injection

insert locale data when localizing

temporarily remove localize peer dependency

allow missing i18nFile option when using i18nLocale

temporarily disable localize for multiple locales

adjust translation parser import paths

augment with serviceworker during localization

i18n app shell with Ivy

enable locale data transform for single localization

don't emit CSS resources during a server build

[Closes #12878]

keep licenses if extraction is disabled

i18n with Ivy in universal builder

use project root as translation file base

remove @angular/localize from application if localizing

set locale identifier when localizing

sockPath for custom path

update sourcemaps during localization

normalize extract i18n format option

roll angular app test back to VE

change the `ngComponentDef` to `ɵcmp`

only copy assets outside of webpack when differential loading is needed in build builder

[Closes #15825]

avoid attempting to copy directories

re-introduce pure_getters

downlevel with non-loose ECMA compliance

[Closes #15673]

don't double process factory files

display accurate sizes for downlevelled files

[Closes #15425]

inject correct SRI values in downlevel bundles

[Closes #15468]

remove pure_getters

[Closes #14316]

workaround Node.js copyFile defect on macOS

[Closes #15544]

use manual sourcemap processing for large sourcemaps

always use ECMA 5 optimizations with terser

[Closes #15580]

fully optimize script bundles with bundle downleveling

[Closes #15507]

make app-shell work with Ivy

[Closes #15383]

disable extract comments for webpack terser plugin

fix permission errors for ES5 bundles

[Closes #15490]

several issues with optimization and bundleDependencies in universal

[Closes #15498]

remove deprecation of `baseUrl` in protractor builder

[Closes #13952]

disable top level variable and function name mangling

ensure generator polyfills are present for ES5

add sourcemap comment for ES2015 differential loading (#15461)

[Closes #15460]

update worker-plugin to 3.2.0 (#15456)

[Closes #15188]

[Closes #14582]

default poll value when not present (#15417)

@angular-devkit/build-ng-packagr (0.900.0) Commit Description Notes

limit support to version 9.0

add tsickle as optional peer dep

@angular-devkit/build-optimizer (0.900.0) Commit Description Notes

don't use getImportTslibTransformer

[Closes #15401]

scrub ɵsetClassMetadata and ɵɵsetNgModuleScope calls

revert to using TS 3.6

improve quality of sourcemaps

wrap classes which contain empty statements (#16538)

[Closes #16509]

update ɵsetClassMetadata call format

don't remove ɵɵsetNgModuleScope calls

remove deprecated testImportTslib

fix error when `__decorate` has no `__metadata`

remove unecessary scrub file checks

don't mark tslib helpers which are suffixed with `$` and a number as pure (#15451)

[Closes #15451]

[Closes #15392]

replace multiple tslib helpers (#15400)

@angular-devkit/build-webpack (0.900.0) Commit Description Notes

correct webpack typings issue

allow runWebpackDevServer to accept a webpackDevServerFactory

proxy config with windows authentication

[Closes #14595]

provide more complete compilation stats

@angular-devkit/core (9.0.0) Commit Description Notes

auto discover multiselect schema prompt types

retain order of types set in allOf, anyOf and oneOf when parsing schema

allow multiselect list defaults

[Closes #16104]

json visitors should only set writable properties

track workspace targets with no original collection (#15413)

[Closes #15403]

@angular-devkit/schematics (9.0.0) Commit Description Notes

fix the `isBinary` function

filters out non-NPM dependencies

[Closes #13059]

only commit to disk when contents of file changes

use error logger method when there is a workflow error

show spinner for package install

hide install output by default

use NodeWorkflow root to resolve collections

@angular/cli (9.0.0) Commit Description Notes

support using multiple configurations

[Closes #10612]

add support for ng-add packages that should not be saved as `dependencies`

[Closes #12003]

[Closes #15764]

[Closes #13237]

allow subclass to override default collection name

create commits per migration during update (#15611)

check/prompt for workspace level analytics configuration (#14264)

add support for custom npmrc paths

change the url for doc search

[Closes #16840]

ensure built-in Angular schematics package can be found

prevent postinstall script errors from blocking install

disable Browserslist old data warning

inform user and error if schematics package is in unreachable location (#16466)

migrate and inform users about @angular-devkit/[schematics, core] packages

inform user and error if schematics package is in unreachable location (#16466)

remove alias for deploy command

`ng version` should report if ivy is enabled

improve robustness of Node.js version check

fix package manager warnings when running temporary install

support running a single migration from a package

Renames final message to "Migration completed". (#16016)

clarify ng update outdated message

remove no-bin-links during npm/yarn install

[Closes #16133]

Prints out when a commit is made in `ng update`.

[Closes #16060]

add link to update guide post running Angular migrations

re-introduce install package using shell spawn (#16112)

disable update commit creation by default

[Closes #16013]

use spawned process error when it's available

handle null stderr during npm install

only show add/update package install output on errors

[Closes #16014]

[Closes #16027]

remove unneeded git HEAD update message

[Closes #16031]

add migration name to commit header

pass next option to all update logic

[Closes #16015]

verify package specifier when adding a package

[Closes #16029]

skip project analytics prompt when using update

[Closes #16012]

don't install using global command but rather install in a different folder

change analytics type to boolean or string

improve statues and description logs during update

updated CLI should not have analytics enabled

scoped project names

[Closes #14797]

return success in update execute migrations function

support prerelease CLI versions when bootstrapping update

logic to determine if the installed CLI is out of date

Determine relative paths correctly

ng update log messages printed twice

[Closes #15839]

initialize baseUrl variable

do not warn on multiple array option use

[Closes #15630]

add browser builder index option longhand form to schema

correctly account for linked packages in update

[Closes #15511]

[Closes #15294]

handle promise rejection on analytics install prompt (#15455)

@angular/pwa (0.900.0) Commit Description Notes

additional public schematic definition

@ngtools/webpack (9.0.0) Commit Description Notes

update peer dependency support

deprecate `discoverLazyRoutes`, `additionalLazyModules` and `additionalLazyModuleResources` options

don't elide imports for type references that are needed for decorator metadata

[Closes #16808]

control the presence of Ivy class metadata and module scope

correctly determine resource dependencies

[Closes #16569]

format Ivy diagnostics properly

invalidate ngcc processor cache

[Closes #16397]

report diagnostics the same way in type checker

fix rebuilds for transitive and global type deps

[Closes #15856]

don't warn on unused ngsummary

[Closes #15626]

[Closes #issuecomment-551632356]

recursive look up unused files

[Closes #15626]

also elide type references on transform (#16085)

[Closes #14617]

only remove decorators in VE (#16086)

[Closes #16070]

fix resource dep lookup on windows

[Closes #15863]

skip NGCC when file system is read only

don't set ngprogram to null

[Closes #15857]

don't delete virtual files for resources still on disk

[Closes #15453]

`exportLazyModuleMap` should not be executed in Ivy

don't warn on extra files in errored compilations

only add ctor params to decorated classes (#15416)

[Closes #15404]

@schematics/angular (9.0.0) Commit Description Notes

add packageManager option

[Closes #15875]

add tslib as a peerDependencies in library package.json

update @types/node for version 9

update to TypeScript 3.6

remove `@angular/pwa` from depedencies

[Closes #15764]

add migration to add new i18n options for Ivy

use ngcc on postinstall (#15801)

add type option to component generator (#15754)

add migration ensure that `tslib` is installed (#15800)

update browser output path when adding universal

use codelyzer@5.1.2

add generator for interceptor

support adding app-shell without specifying `clientProject`

augment universal/app-shell addition for `@angular/localize`

enable scripts optimization for server bundle

add strict compiler option to workspace tsconfig (#14905)

[Closes #14694]

remove dependency on tsickle (#15603)

add node types to universal tsconfig (#15594)

add migration to add missing exports in main server file

add export to `renderModuleFactory` in server main file

add export to `renderModule` in server main file

minimal=true should not create tests files when using `ng generate` command

run lazy loading migration for version 9

[Closes #15539]

replace deprecated `TestBed.get` with `TestBed.inject`

add migration for applications tsconfigs

feature PWA in CLI app

add migration to enable AOT by default

add migration for `ngsw-config.json` (#15443)

add migration for dependencies (#15421)

hide universal schematic

update workspace dev dependencies

ivy library migration

remove enableIvy option

introduce Ivy libraries for development

resolve windows paths in tsconfig migration

[Closes #16800]

update protractor version for new projects

add compliance with no-any lint rule

add compliance with call-signature lint rule

regression tsconfig.json #16708 (#16709)

[Closes #16709]

[Closes #16709]

[Closes #16709]

add `skipLibCheck` to workspace tsconfig

handle aliased or existing environment import (#16377)

blank root leads to wrong tsconfig.lib.prod.json path

workaround schematic/json AST issues in 9.0 i18n migration

improve i18n output path option migration

improve paths and exclude options

improve i18n baseHref migration support for direct localize usage

migrate localized base HREF options for 9.0

update @types/jasmine to 3.5 to match version of jasmine-core

when migrating do not set base localize option for builder

migrate project to use new i18n options

add new route before wildcard route

add CanDeactivate guard

[Closes #15668]

uniformize guard spec with service spec

only remove `tslib` from package.json when it's not a dependency

remove ngcc postinstall hook

return undefined instead of throw when file is not found

improve cli migration name and description (#16093)

only show `ngsw-config.json` file not find warning when `ngswConfigPath` is defined

migrate module compiler option

warn when target references a missing tsconfig

[Closes #16019]

`appendValueInAstArray` should not break JSON when using different formatting

tsconfig creates invalid file references

replace `'**/*.ts` file inclusion with `**/*.d.ts`

disable i18n migrations

universal add outputHashing to media

[Closes #15953]

remove unneeded debugElement in test

rename the `ivy-ngcc` command to `ngcc`

update ngcc postinstall command

scroll issue on new app (#15714)

[Closes #15596]

drop deprecated tslint rule

add strict option to ng-new

support adding app-shell after nguniversal schematics (#15606)

lazy loading module generation routing module lookup

open twitter link in new tab (#15446)

update tsickle to 0.37.0 (#15430)

[Closes #15428]

implements items type for guard schematics (#15412)

add twitter link icon (#15385)

handle existence of un-referenced library prod tsconfig

default interface for guard

@schematics/schematics (0.900.0) Commit Description Notes

move development depedencies to `devDependencies` section

@schematics/update (0.900.0) Commit Description Notes

handle peerDependenciesMeta

validate all peer dependencies

missing peer dependencies are now warnings instead of errors

include prerelease peer dependencies with next option

only update peer dependency if out of range


Breaking Changes

@angular-devkit/schematics: remove several deprecated APIs (341b18d) Removed several deprecated APIs:

  • breaking

    EngineHost listSchematics has been removed in favour of listSchematicNames.

  • breaking

    FileSystemSink - Use the new virtualFs.Host classes from @angular-devkit/core.

  • breaking

    optimize function has been remove as trees are automaticlly optimized.

  • breaking

    DryRunSink deprecated constructor that allowed to provide a directory path has been removed. Provide a virtualFs.Host instead.

@schematics/angular: remove deprecated `spec` and `styleext` options (e92c46a) Deprecated `styleext` and `spec` options have been removed. Use `style` and `skipTests` options instead.

@angular-devkit/build-angular: enable bundleDependencies by default for server builder (fb24f30) bundleDependencies default value has been changed from none to all. This will result in all of node_modules to be bundled in the final server bundle.

Under Ivy, if users choose to opt-out from bundling dependencies they will need to run NGCC binary manually to make non-bundled node_modules compatible with Ivy.

@schematics/angular: hide universal schematic (426c1da) universal schematic is now hidden and cannot be used with the `ng generate` command.

Users who want a working universal application should use ng add @nguniversal/express-engine or ng add @nguniversal/hapi-engine


Special Thanks

Alan Agius, Charles Lyding, Renovate Bot, Filipe Silva, vikerman, Minko Gechev, Keen Yee Liau, Doug Parker, Cédric Exbrayat, Judy Bogart, Joey Perrott, Vikram Subramanian, Greg Magolan, Alan, arturovt, Amadou Sall, Adam Vigneaux, Cyrille Tuzi, renovate[bot], Santosh Yadav, Pete Bacon Darwin, Daniele Morosinotto, Artur Androsovych, Smartin, Wataru.Kasahara, codingnuclei, FDIM, Igor Minar, timdeschryver, Douglas Parker, Kayla Altepeter, Eusen, Noopur, Michael, Tom Sullivan, George Kalpakas, Leon Radley, Michael Prentice, Muhammad Umair Khan, Nikita Potapenko, TinyMan, FG-33, Elvis Begovic, noeri, Christian Liebel, Wataru KASAHARA, Stefanie Fluin, Simon Jespersen