angular/packages
Andrew Kushnir 1bc53eb303 fix(forms): more precise control cleanup (#39623)
Currently when an instance of the `FormControlName` directive is destroyed, the Forms package invokes
the `cleanUpControl` to clear all directive-specific logic (such as validators, onChange handlers,
etc) from a bound control. The logic of the `cleanUpControl` function should revert all setup
performed by the `setUpControl` function. However the `cleanUpControl` is too aggressive and removes
all callbacks related to the onChange and disabled state handling. This is causing problems when
a form control is bound to multiple FormControlName` directives, causing other instances of that
directive to stop working correctly when the first one is destroyed.

This commit updates the cleanup logic to only remove callbacks added while setting up a control
for a given directive instance.

The fix is needed to allow adding `cleanUpControl` function to other places where cleanup is needed
(missing this function calls in some other places causes memory leak issues).

PR Close #39623
2020-11-12 09:38:19 -08:00
..
animations docs: remove IE10 references from comments in the code (#39090) 2020-10-13 15:51:49 -07:00
bazel docs(bazel): Mention Alex Eagle's article on migration doc (#39507) 2020-11-02 13:34:35 -08:00
benchpress build: add wombot proxy for publish config for @angular/benchpress (#37752) 2020-06-25 17:08:18 -07:00
common fix(common): change the week-numbering year format from r -> Y (#39495) 2020-10-30 10:24:43 -07:00
compiler fix(compiler): skipping leading whitespace should not break placeholder source-spans (#39486) 2020-11-06 09:01:37 -08:00
compiler-cli fix(compiler-cli): avoid duplicate diagnostics about unknown pipes (#39517) 2020-11-06 15:27:38 -08:00
core fix(forms): more precise control cleanup (#39623) 2020-11-12 09:38:19 -08:00
docs docs(di): fix typo in advanced di doc (#36634) 2020-05-01 09:50:28 -07:00
elements fix(elements): update the view of an OnPush component when inputs change (#39452) 2020-11-06 09:31:46 -08:00
examples docs: update forwardRef example (#39519) 2020-11-02 11:40:17 -08:00
forms fix(forms): more precise control cleanup (#39623) 2020-11-12 09:38:19 -08:00
language-service refactor(language-service): Use compiler APIs in Ivy to get definitions for external resources (#39476) 2020-11-06 09:17:33 -08:00
localize fix(localize): render placeholder types in extracted XLIFF files (#39398) 2020-10-27 10:42:15 -07:00
misc/angular-in-memory-web-api feat(core): update reference and doc to change async to waitAsync. (#37583) 2020-08-03 12:54:13 -07:00
platform-browser fix(core): handle !important in style property value (#39603) 2020-11-12 09:11:18 -08:00
platform-browser-dynamic feat(core): update reference and doc to change async to waitAsync. (#37583) 2020-08-03 12:54:13 -07:00
platform-server fix(core): handle !important in style property value (#39603) 2020-11-12 09:11:18 -08:00
private/testing build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04:00
router fix(router): Ensure all outlets are used when commands have a prefix (#39456) 2020-10-30 16:23:03 -07:00
service-worker feat(service-worker): add the option to prefer network for navigation requests (#38565) 2020-09-22 09:29:20 -07:00
upgrade docs: remove IE10 references from comments in the code (#39090) 2020-10-13 15:51:49 -07:00
zone.js feat(zone.js): monkey patches queueMicrotask() (#38904) 2020-11-05 11:23:33 -08:00
BUILD.bazel build: replace @types/trusted-types dep with minimal type defs (#39211) 2020-10-15 09:08:00 -07: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 build: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -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: update license headers to reference Google LLC (#37205) 2020-05-26 14:26:58 -04: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 fix(platform-webworker): remove platform-webworker and platform-webworker-dynamic (#38846) 2020-09-30 09:13:59 -04: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