angular/packages
Pete Bacon Darwin 393efa54e6 fix(compiler): ensure that partially compiled queries can handle forward references (#44113)
When a partially compiled component or directive is "linked" in JIT mode, the body
of its declaration is evaluated by the JavaScript runtime. If a class is referenced
in a query (e.g. `ViewQuery` or `ContentQuery`) but its definition is later in the
file, then the reference must be wrapped in a `forwardRef()` call.

Previously, query predicates were not wrapped correctly in partial declarations
causing the code to crash at runtime. In AOT mode, this code is never evaluated
but instead transformed as part of the build, so this bug did not become apparent
until Angular Material started running JIT mode tests on its distributable output.

This change fixes this problem by noting when queries are wrapped in `forwardRef()`
calls and ensuring that this gets passed through to partial compilation declarations
and then suitably stripped during linking.

See https://github.com/angular/components/pull/23882 and https://github.com/angular/components/issues/23907

PR Close #44113
2021-11-10 18:25:16 +00:00
..
animations docs(animations): update developers on state of package (#44014) 2021-11-08 17:03:28 +00:00
bazel build: update all non-major dependencies (#43974) 2021-11-09 21:00:17 +00:00
benchpress build: update angular (#44024) 2021-11-03 15:06:36 -07:00
common feat(http): add has() method to HttpContext class (#43887) 2021-11-04 18:52:18 +00:00
compiler fix(compiler): ensure that partially compiled queries can handle forward references (#44113) 2021-11-10 18:25:16 +00:00
compiler-cli fix(compiler): ensure that partially compiled queries can handle forward references (#44113) 2021-11-10 18:25:16 +00:00
core fix(compiler): ensure that partially compiled queries can handle forward references (#44113) 2021-11-10 18:25:16 +00:00
docs docs: remove/update broken links in resources appearing on aio (#42232) 2021-05-26 14:21:12 -07:00
elements fix(elements): remove incorrect @angular/platform-browser peer dependency (#43975) 2021-10-29 15:43:55 -07:00
examples docs(core): apply minor improvements to the InjectionToken's api docs (#43693) 2021-10-13 16:46:26 +00:00
forms docs(forms): fix typo in toInteger() function (#44075) 2021-11-08 16:59:08 +00:00
language-service refactor(language-service): Move language service code out of ivy/ folder (#44064) 2021-11-10 01:20:04 +00:00
localize refactor(localize): ensure schematic code runs as commonjs (#44016) 2021-11-04 18:54:54 +00:00
misc/angular-in-memory-web-api build: update angular (#44024) 2021-11-03 15:06:36 -07:00
platform-browser fix(platform-browser): use correct parent in animation removeChild callback (#44033) 2021-11-10 01:21:56 +00:00
platform-browser-dynamic feat(core): update node version support range to support v16 (#43740) 2021-10-06 10:55:44 -07:00
platform-server build: remove "ivy-only" bazel tag (#43862) 2021-10-19 10:06:55 -07:00
private/testing docs: convert the last my-app components to app-root (#42256) 2021-05-25 22:13:36 +00:00
router Revert "refactor(router): restore history in a consistent way on canceled navigations (#43651)" (#44006) 2021-11-01 09:25:36 -07:00
service-worker refactor(service-worker): avoid unnecessary writes to cache when version fails (#43680) 2021-10-21 14:20:50 +00:00
upgrade feat(upgrade): support NgModule class as an argument of the downgradeModule function (#43973) 2021-11-04 18:54:00 +00:00
zone.js build: lock file maintenance (#44111) 2021-11-10 18:22:57 +00:00
BUILD.bazel build: Auto-gen tsec tsconfig files (#43440) 2021-09-17 17:17:34 +00:00
circular-deps-test.conf.js fix(platform-webworker): remove platform-webworker and platform-webworker-dynamic (#38846) 2020-09-30 09:13:59 -04:00
empty.ts build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
goog.d.ts refactor(core): replace references to goog.LOCALE with goog.getLocale() (#43089) 2021-08-10 10:35:26 -07:00
license-banner.txt docs: update year (#40925) 2021-02-22 12:37:40 -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: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
tsconfig-build.json build: enable esModuleInterop in TypeScript compilations (#43431) 2021-10-01 18:28:45 +00:00
tsconfig-legacy-saucelabs.json build: update tsconfigs to use ES2020 as target and module (#43431) 2021-10-01 18:28:42 +00:00
tsconfig-test.json refactor: fix typescript strict flag failures in all tests (#30993) 2019-07-18 14:21:26 -07:00
tsconfig-tsec-base.json build: update tsconfigs to use ES2020 as target and module (#43431) 2021-10-01 18:28:42 +00:00
tsconfig.json refactor(language-service): Remove View Engine code from language service package (#44064) 2021-11-10 01:20:04 +00:00
tsec-exemption.json build: Enable tsec checks for critical packages. (#43108) 2021-09-13 14:45:57 -07:00
types.d.ts build: replace @types/trusted-types dep with minimal type defs (#39211) 2020-10-15 09:08:00 -07: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