
The metadata collector for View Engine compilations emits error symbols for static class members that have not been initialized, which prevents a library from building successfully when `strictMetadataEmit` is enabled, which is recommended for libraries to avoid issues in library consumers. This is troublesome for libraries that are adopting static members for the Ivy template type checker: these members don't need a value assignment as only their type is of importance, however this causes metadata errors. As such, a library used to be required to initialize the special static members to workaround this error, undesirably introducing a code-size overhead in terms of emitted JavaScript code. This commit modifies the collector logic to specifically ignore the special static members for Ivy's template type checker, preventing any errors from being recorded during the metadata collection. PR Close #34296
build: migrate references and scripts that set to build with ivy via compile=aot to use config=ivy (#33983)
build: migrate references and scripts that set to build with ivy via compile=aot to use config=ivy (#33983)
Angular
Angular is a development platform for building mobile and desktop web applications using TypeScript/JavaScript and other languages.
Quickstart
Changelog
Learn about the latest improvements.
Want to help?
Want to file a bug, contribute some code, or improve documentation? Excellent! Read up on our guidelines for contributing and then check out one of our issues in the hotlist: community-help.
Description
Languages
TypeScript
86.3%
JavaScript
8.5%
HTML
1.8%
Starlark
1.7%
CSS
1%
Other
0.6%