
In ngc is was valid to set the "flatModuleOutFile" option to "null". This is sometimes necessary if a tsconfig extends from another one but the "fatModuleOutFile" option needs to be unset (note that "undefined" does not exist as value in JSON) Now if ngtsc is used to compile the project, ngtsc will fail with an error because it tries to do string manipulation on the "flatModuleOutFile". This happens because ngtsc only skips flat module indices if the option is set to "undefined". Since this is not compatible with what was supported in ngc and such exceptions should be avoided, the flat module check is now aligned with ngc. ``` TypeError: Cannot read property 'replace' of null at Object.normalizeSeparators (/home/circleci/project/node_modules/@angular/compiler-cli/src/ngtsc/util/src/path.js:35:21) at new NgtscProgram (/home/circleci/project/node_modules/@angular/compiler-cli/src/ngtsc/program.js:126:52) ``` Additionally setting the `flatModuleOutFile` option to an empty string currently results in unexpected behavior. No errors is thrown, but the flat module index file will be `.ts` (no file name; just extension). This is now also fixed by treating an empty string similarly to `null`. PR Close #32235
build: rules_nodejs 0.26.0 & use @npm instead of @ngdeps now that downstream angular build uses angular bundles (#28871)
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%