angular/packages
Alan Agius e9fcbb8af1 fix(compiler): remove TypeScript from linker (#61618)
This commit removes the direct dependency on TypeScript within the linker, addressing a performance overhead that was adding between 500ms to 1s to compilation times for applications.

The primary cause of this overhead was the linker's direct reliance on TypeScript's which was caused by importing from barrel files. While convenient, barrel files are detrimental to code splitting and code motion. They force the bundling of all exported modules, even if only a subset is actually used.

By removing the usage of this barrel file and restructuring the imports to be more granular, we can avoid unnecessary TypeScript imports.
 Furthermore, TypeScript has now been changed to an optional peer dependency as using only the linker does not require TypeScript.

PR Close #61618
2025-05-26 08:46:00 +00:00
..
animations fix(core): update min Node.js support to 20.19, 22.12, and 24.0 (#61499) 2025-05-20 14:15:13 +00:00
bazel fix(core): update min Node.js support to 20.19, 22.12, and 24.0 (#61499) 2025-05-20 14:15:13 +00:00
benchpress build: migrate benchpress to use rules_js (#61486) 2025-05-20 08:44:53 +00:00
common feat(common): accept undefined inputs in NgTemplateOutlet (#61404) 2025-05-25 14:26:42 -07:00
compiler refactor(core): remove attribute interpolation instructions (#61557) 2025-05-21 15:13:47 +00:00
compiler-cli fix(compiler): remove TypeScript from linker (#61618) 2025-05-26 08:46:00 +00:00
core build: migrate platform-browser and platform-browser-dynamic package to use rules_js (#61623) 2025-05-23 15:14:00 -07:00
docs/di docs: remove outdated/unsupported webworker doc (#49856) 2023-04-17 14:01:41 +00:00
elements refactor(platform-browser): replace platform-browser-dynamic with platform-browser (#61498) 2025-05-21 14:01:49 +00:00
examples refactor(platform-browser): replace platform-browser-dynamic with platform-browser (#61498) 2025-05-21 14:01:49 +00:00
forms fix(forms): Allow ControlState as reset arguments for FormGroup/FormRecord (#55860) 2025-05-21 17:26:23 +00:00
language-service build: add comment explaining path maps (#61584) 2025-05-21 17:27:18 +00:00
localize build: update all esbuild target to node20 (#61606) 2025-05-22 13:02:03 -07:00
misc/angular-in-memory-web-api build: migrate angular-in-memory-web-api to use rules_js (#61524) 2025-05-20 16:53:20 +00:00
platform-browser build: migrate platform-browser and platform-browser-dynamic package to use rules_js (#61623) 2025-05-23 15:14:00 -07:00
platform-browser-dynamic build: migrate platform-browser and platform-browser-dynamic package to use rules_js (#61623) 2025-05-23 15:14:00 -07:00
platform-server build: migrate platform-server to rules_js (#61589) 2025-05-22 11:35:55 -07:00
private/testing build: move private testing helpers outside platform-browser/testing (#61472) 2025-05-20 10:00:43 +00:00
router refactor(platform-browser): replace platform-browser-dynamic with platform-browser (#61498) 2025-05-21 14:01:49 +00:00
service-worker build: update all esbuild target to node20 (#61606) 2025-05-22 13:02:03 -07:00
ssr refactor(core): add REQUEST, RESPONSE_INIT and REQUEST_CONTEXT tokens (#58669) 2024-11-14 14:21:21 -08:00
upgrade fix(core): update min Node.js support to 20.19, 22.12, and 24.0 (#61499) 2025-05-20 14:15:13 +00:00
zone.js release: cut the zone.js-0.15.1 release (#61632) 2025-05-22 14:53:15 -07:00
BUILD.bazel build: use common macro to define tsconfig for service worker (#61341) 2025-05-14 10:43:25 -07:00
circular-deps-test.conf.js build: remove circular deps goldens (#60021) 2025-02-19 21:01:31 +00:00
empty.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00
goog.d.ts refactor: update license text to point to angular.dev (#57901) 2024-09-24 15:33:00 +02:00
license-banner.txt docs: update license year (#59883) 2025-03-04 19:36:47 +00:00
package.json build: prepare for compiler-cli to be using ts_project (#61181) 2025-05-09 15:59:46 +00:00
README.md docs: fix links to docs (#57391) 2024-08-19 09:20:15 -07:00
system.d.ts refactor: update packages/core:{core,src} to ts_project (#61275) 2025-05-14 12:01:51 +00:00
tsconfig-build.json build: migrate angular-in-memory-web-api to use rules_js (#61524) 2025-05-20 16:53:20 +00:00
tsconfig-legacy-saucelabs.json feat(core): support TypeScript 5.5 (#56096) 2024-05-29 15:33:33 +02:00
tsconfig-test.json
tsconfig-tsec-base.json refactor(compiler): remove empty empty string suffix from interpolation instructions (#60066) 2025-03-10 16:31:34 -07:00
tsconfig.json build: use es2022 lib (#61441) 2025-05-21 12:06:40 -07:00
tsec-exemption.json
types.d.ts build: move private testing helpers outside platform-browser/testing (#61472) 2025-05-20 10:00:43 +00:00

Angular

The sources for this package are in the main Angular repo. Please file issues and pull requests against that repo.

Usage information and reference details can be found in Angular documentation.

License: MIT