angular/packages
George Kalpakas ca25c957bf fix(ngcc): correctly detect imported TypeScript helpers (#36284)
The `NgccReflectionHost`s have logic for detecting certain known
declarations (such as `Object.assign()` and TypeScript helpers), which
allows the `PartialEvaluator` to evaluate expressions it would not be
able to statically evaluate otherwise.

In #36089, `DelegatingReflectionHost` was introduced, which delegates to
a TypeScript `ReflectionHost` when reflecting on TypeScript files, which
for ngcc's case means `.d.ts` files of dependencies. As a result, ngcc
lost the ability to detect TypeScript helpers imported from `tslib`,
because `DelegatingReflectionHost` was not able to apply the known
declaration detection logic while reflecting on `tslib`'s `.d.ts` files.

This commit fixes this by ensuring `DelegatingReflectionHost` calls the
`NgccReflectionHost`'s `detectKnownDeclaration()` method as necessary,
even when using the TypeScript `ReflectionHost`.

NOTE:
The previous commit exposed a bug in ngcc that was hidden due to the
tests' being inconsistent with how the `ReflectionHost`s are used in the
actual program. The changes in this commit are verified by ensuring the
failing tests are now passing (hence no new tests are added).

PR Close #36284
2020-04-03 11:08:46 -07:00
..
animations build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
bazel build: update to rules_nodejs 1.5.0 (#36307) 2020-03-30 11:25:16 -07:00
benchpress fix(benchpress): update dependencies (#36205) 2020-04-01 13:19:33 -07:00
common fix(common): let KeyValuePipe accept type unions with null (#36093) 2020-03-24 14:41:41 -07:00
compiler fix(compiler): avoid undefined expressions in holey array (#36343) 2020-04-01 13:31:14 -07:00
compiler-cli fix(ngcc): correctly detect imported TypeScript helpers (#36284) 2020-04-03 11:08:46 -07:00
core fix(benchpress): fix typings in lview_debug.ts (#36236) 2020-04-03 11:06:07 -07:00
docs refactor(core): remove deprecated Renderer (#33019) 2019-10-08 09:23:00 -07:00
elements fix(elements): correctly handle setting inputs to undefined (#36140) 2020-03-24 10:29:33 -07:00
examples docs: changes AoT to AOT for consistency (#35112) 2020-02-04 10:43:33 -08:00
forms build: enable forms tests on IE (#35971) 2020-03-13 08:01:22 -07:00
http build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
language-service fix(language-service): infer type of elements of array-like objects (#36312) 2020-04-01 13:24:53 -07:00
localize build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
platform-browser build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
platform-browser-dynamic build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
platform-server fix(platform-server): update xhr2 dependency (#36366) 2020-04-01 13:31:38 -07:00
platform-webworker build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
platform-webworker-dynamic build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
private/testing fix(core): adhere to bootstrap options for JIT compiled components (#35534) 2020-03-19 08:57:39 -07:00
router build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
service-worker build: enable service-worker tests on saucelabs (#36129) 2020-04-01 15:37:47 -07:00
upgrade build: provide full paths to ts_api_guardian_test_npm_package and ts_api_guardian_test (#36034) 2020-03-12 09:49:00 -07:00
zone.js fix(zone.js): UNPATCHED_EVENTS and PASSIVE_EVENTS should be string[] not boolean (#36258) 2020-04-01 13:20:00 -07:00
BUILD.bazel build: reference zone.js from source directly instead of npm. (#33046) 2019-11-06 00:48:34 +00:00
circular-deps-test.conf.js build: allow custom module resolution for ts-circular-deps tests (#36226) 2020-03-27 11:14:49 -07:00
empty.ts
goog.d.ts fix(ivy): use goog.LOCALE for Closure Compiler to define default LOCALE_ID (#31519) 2019-07-16 13:02:10 -04:00
license-banner.txt build: bump year (#34651) 2020-01-13 07:21:43 -08:00
README.md docs: add doc reference to npm package readme (#33911) 2019-11-20 14:46:23 -08:00
system.d.ts build: no longer run tslint from within gulp task (#35800) 2020-03-03 09:20:49 -08:00
tsconfig-build-no-strict.json refactor(core): ensure compatibility with typescript strict flag (#30993) 2019-07-18 14:21:25 -07:00
tsconfig-build.json refactor(core): ensure compatibility with typescript strict flag (#30993) 2019-07-18 14:21:25 -07:00
tsconfig-test.json refactor: fix typescript strict flag failures in all tests (#30993) 2019-07-18 14:21:26 -07:00
tsconfig.json build: enable IDE type checking of $localize code (#35711) 2020-02-28 07:09:50 -08:00
types.d.ts build: reference zone.js from source directly instead of npm. (#33046) 2019-11-06 00:48:34 +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