Packages

@angular-devkit/schematics

22.2.5 · 28 Oct 2026MIT27.1M / weekRepositorynpmAtom feed

Your version

21.0.0

major19 Nov 2025Where it was published

21.2.29 is the newest release of 21.x.

In short

3 breaking

  • breaking

    The ng commands will no longer automatically detect and use cnpm as the package manager. As an alternative use the .npmrc file to ensure npm uses the cnpm registry.

  • breaking

    TypeScript versions older than 5.9 are no longer supported.

  • breaking

    The javascriptEnabled option for Less is no longer supported. Projects relying on inline JavaScript within Less files will need to refactor their stylesheets to remove this dependency.

Release note

@angular/cli

CommitDescription
feat - 58d101d5eadd --json output to ng version
feat - d014630faadd advanced filtering to MCP example search
feat - 6d3a3c579add ai-tutor mcp tool
feat - 1c06b16a9add builder info to list_projects MCP tool
feat - 301b50da4add fallback support for packages without direct ng add functionality
feat - 3040b777eadd style language detection to list_projects tool
feat - 45024e836add unit test framework detection to list_projects tool
feat - 104c90768enhance ng version output with more details
feat - 286b6204cmake documentation search tool version-aware
feat - 406315d09make find_examples tool version-aware
feat - 68e711307make get_best_practices tool version-aware
feat - 50453fdeeoverhaul ng version command output
feat - 1ee9ce3c9promote MCP find_examples tool to a stable tool
feat - 0d53e82d5provide detailed peer dependency conflict errors in ng add
feat - f513089e2remove direct support for cnpm
fix - c17d7a929add schema versioning and metadata to example database
fix - dbf1aaf70add snippet support to example search MCP tool
fix - dfb4242b3add vitest to version command output
fix - 11cee1acbcorrect boolean parsing in MCP example front matter
fix - 122a8c0e2correct frontmatter parsing in MCP examples tool
fix - 431106559correct query in find_examples to prevent runtime error
fix - def412a55enhance find_examples MCP tool with structured output
fix - 0922a033fimprove JSON schema parsing for command options
fix - f099c9157improve list_projects MCP tool to find all workspaces in monorepos
fix - 1be35b343promote zoneless migration MCP tool to stable
fix - e5aed6d65show planned actions in ng add dry run
fix - 4deac3ec7support multi-database search in find_examples MCP tool
perf - aeb49dd52cache dependency lookups during ng add
perf - 5e534090eparallelize peer dependency checks in ng add

@schematics/angular

CommitDescription
feat - e417c89f9Add addTypeToClassName option to relevant schematics
feat - ede5e52bcadd include option to jasmine-to-vitest schematic
feat - c119910f4add AGENTS.md support to ai-config schematic
feat - d0d2a17b8add Jasmine spy API transformations to jasmine-to-vitest schematic
feat - e7d955bedadd matcher transformations to jasmine-to-vitest schematic
feat - 629f5cb18add misc transformations to jasmine-to-vitest schematic
feat - 4912f3990add Tailwind CSS option to application schematic and ng new
feat - 2a518016dApplications are zoneless by default
feat - 2ffc527b1configure Vitest for new projects and allow runner choice
feat - 58474ec7dintroduce initial jasmine-to-vitest unit test refactor schematic
feat - 9f255f2b3set packageManager in package.json on new projects
feat - 4e6c94f21support different file name style guides in ng new
fix - 77741f5eeadd 'update-typescript-lib' migration
fix - f89750b27add addImports option to jasmine-vitest schematic
fix - 9dab5780aadd fixture.whenStable in spec files when zoneless apps
fix - 8f0f6a5f1add migration to update moduleResolution to bundler
fix - e8feba9eeadd missing typeSeparator to main.ts.template file
fix - 515b09c4fadd Vitest config generation and runner checks
fix - 0e83fe1a8add warnings and improve Karma config generation
fix - b91fa31f2align Karma project generation with unified unit-test builder
fix - c967a447ccorrect spacing in application spec tsconfig
fix - 00d941c43correct style guide paths for standalone components
fix - e33e77d12flag '--file-name-style-guide=2016' - wrong import in main.ts
fix - f35b9f331improve comment preservation in jasmine-to-vitest
fix - 6615fcf03issues in apps generated with '--file-name-style-guide=2016' flag
fix - e304821d5make ai-config schematic non-destructive
fix - 512ad282apreserve blank lines in jasmine-to-vitest schematic
fix - b524ba426remove empty i18n-extract target for new projects
fix - 8e6e0a293remove explicit flag for host bindings
fix - afb4d3e37remove extra space before async in spec templates
fix - b983ea8e5respect skip-install for tailwind schematic
fix - 54c4eae2atransform Jasmine type annotations in jasmine-to-vitest schematic
perf - 14c0a9bacoptimize AST traversal utilities

@angular-devkit/build-angular

CommitDescription
fix - 6e395fc0censure vitest code coverage handles virtual files correctly
fix - 53899511aexpand jest and jest-environment-jsdom to allow version 30
fix - 7a8c94615make zone.js optional in server and app-shell builders

@angular/build

CommitDescription
feat - 00426e315add --list-tests flag to unit-test builder
feat - a908bf3d4add 'filter' option to unit-test builder
feat - 3e0209d0aadd browserViewport option for vitest browser tests
feat - 3b7dabbf1add advanced coverage options to unit-test builder
feat - c0b00d78eadd reporter output file option for unit-test
feat - 66dd6dd83allow options for unit test reporters
feat - a90bea5b5support .test.ts files by default in unit test builder
fix - b2f048773add --ui option for Vitest runner
fix - 530d9270eadd define option to dev-server
fix - b554bd73aadd temporary directory cleanup for Vitest executor
fix - c6176f6dfadd upfront dependency validation for unit-test runners
fix - 63c98741aadd webcontainer support for Vitest browser provider
fix - fcdbf6c19allow globals to be set to false
fix - 542d52868allow custom runner configuration file for unit-test
fix - 0505f954dallow unit-test progress option passthrough for building
fix - 931c62d20allow unit-test runner config with absolute path
fix - a11dd31f0configure Vitest cache to use Angular cache
fix - abf003268correct Vitest builder watch mode execution
fix - f05ffd104correct Vitest coverage include handling for virtual files
fix - cd5c92b99correct Vitest coverage reporting for test files
fix - 07f712253correctly handle absolute paths and casing in test discovery
fix - bf468e1ebdirect check include file exists in unit-test discovery
fix - 50e330d33disable glob directory expansion when finding tests
fix - 49b65aba8disable Vitest test isolation by default
fix - 1529595d4drop support for TypeScript 5.8
fix - a44f8fa94dynamically select Vitest DOM environment
fix - ae35543afenhance Vitest config merging and validation
fix - fec106b60enhance Vitest dependency externalization and pre-bundling
fix - f7c4a4c1denhance Vitest resolution for optimal package loading
fix - ee5e127d5ensure ɵgetOrCreateAngularServerApp is always defined after errors
fix - 0830f4fb5ensure TestBed cleanup hooks are always registered
fix - 41b12509aensure TestBed setup is robust in non-isolated Vitest
fix - 55145f582ensure Vitest setup files are executed in order
fix - 3478aa332exclude .angular from coverage instrumentation
fix - 7c529c1bcexternalize Angular dependencies in Vitest runner
fix - 69c3b1226improve error handling in unit-test builder
fix - bab5806c2introduce vitest-base.config for test configuration
fix - 73621998fnormalize paths for Vitest runner output files
fix - fa5c92346prioritize string type for runnerConfig schema
fix - d0787c11dprovide default excludes for vitest coverage
fix - ac10f323erelax requirement for files to be in TS compilation
fix - 139758586remove deprecated javascriptEnabled option for Less
fix - 6576bb598remove explicit test isolation configuration
fix - 9132e6af9resolve browser provider packages using project resolver
fix - 26127bd3bresolve PostCSS plugins relative to config file
fix - dae732059serve build assets and styles in vitest
fix - 705af2278set coverage report directory to coverage/project-name
fix - 0851d2eaeshow full aggregate errors from vitest
fix - cc2668f57simplify SSL handling for ng serve with SSR (#31723)
fix - 907eabdd3support ESM PostCSS plugins
fix - 62938e799update vitest to 4.0.6 and remove coverage workaround

Breaking Changes

@angular/cli

  • breaking

    The ng commands will no longer automatically detect and use cnpm as the package manager. As an alternative use the .npmrc file to ensure npm uses the cnpm registry.

@angular/build

  • breaking

    TypeScript versions older than 5.9 are no longer supported.

  • breaking

    The javascriptEnabled option for Less is no longer supported. Projects relying on inline JavaScript within Less files will need to refactor their stylesheets to remove this dependency.