angular-docs-cn/packages/compiler-cli
JoostK 9d9c9e43e5 feat(ivy): static evaluation of TypeScript's `__spread` helper (#30492)
The usage of array spread syntax in source code may be downleveled to a
call to TypeScript's `__spread` helper function from `tslib`, depending
on the options `downlevelIteration` and `emitHelpers`. This proves
problematic for ngcc when it is processing ES5 formats, as the static
evaluator won't be able to interpret those calls.

A custom foreign function resolver is not sufficient in this case, as
`tslib` may be emitted into the library code itself. In that case, a
helper function can be resolved to an actual function with body, such
that it won't be considered as foreign function. Instead, a reflection
host can now indicate that the definition of a function corresponds with
a certain TypeScript helper, such that it becomes statically evaluable
in ngtsc.

Resolves #30299

PR Close #30492
2019-06-10 23:53:04 +00:00
..
integrationtest fix(core): require 'static' flag on queries in typings (#30639) 2019-05-24 16:55:00 -04:00
ngcc feat(ivy): static evaluation of TypeScript's `__spread` helper (#30492) 2019-06-10 23:53:04 +00:00
src feat(ivy): static evaluation of TypeScript's `__spread` helper (#30492) 2019-06-10 23:53:04 +00:00
test refactor(ivy): inherently call ɵɵselect(0) (#30830) 2019-06-07 08:48:31 -07:00
BUILD.bazel build: update rules_nodejs and clean up bazel warnings (#30370) 2019-05-14 10:08:45 -07:00
index.ts feat(compiler-cli): export tooling definitions (#29929) 2019-04-17 17:23:01 -07:00
ngtools2.ts refactor(compiler-cli): expose ngtools api separately (#18978) 2017-08-31 14:37:13 -07:00
package.json build: upgrade yargs package to 13.1.0 (#29722) 2019-04-26 16:29:29 -07:00
tsconfig-build.json build(compiler-cli): enable full TypeScript strictness (#29436) 2019-03-21 12:14:39 -04:00
tsconfig.json build(compiler-cli): enable full TypeScript strictness (#29436) 2019-03-21 12:14:39 -04:00