angular/packages/compiler/test
Kristiyan Kostadinov 4eb0165750 fix(compiler): remove support for unassignable expressions in two-way bindings (#55342)
Two-way bindings are meant to represent a property binding to an input and an event binding to an output, e.g. `[(ngModel)]="foo"` represents `[ngModel]="foo" (ngModelChange)="foo = $event"`. Previously due to a quirk in the template parser, we accidentally supported unassignable expressions in two-way bindings.

In #54154 the quirk was fixed, but we kept support or some common expression because of internal usages. Now the internal usages have been cleaned up so the backwards-compatibility code can be deleted.

Externally a migration was added in #54630 that will automatically fix any places that depended on the old behavior.

BREAKING CHANGE:
Angular only supports writable expressions inside of two-way bindings.

PR Close #55342
2024-04-16 17:26:09 +02:00
..
expression_parser refactor(compiler): preserve expression in two-way listeners (#54154) 2024-02-01 14:39:32 +00:00
i18n fix(compiler): produce placeholder for blocks in i18n bundles (#52958) 2023-11-20 08:59:24 -08:00
ml_parser refactor: standardize doctype declaration to <!DOCTYPE html> (#51052) 2024-02-01 19:29:46 +00:00
output build: replace base64-js package with Node.js Buffer usage (#53464) 2023-12-11 14:04:06 -08:00
render3 fix(compiler): remove support for unassignable expressions in two-way bindings (#55342) 2024-04-16 17:26:09 +02:00
schema Revert "refactor(compiler): add support for the new search element (#54945)" (#55127) 2024-03-29 12:56:31 -07:00
selector test(core): clean up unnecessary nesting in old tests (#52239) 2023-10-19 09:26:15 -07:00
shadow_css feat(compiler): scope selectors in @starting-style (#53943) 2024-01-17 09:14:11 -08:00
BUILD.bazel build: replace base64-js package with Node.js Buffer usage (#53464) 2023-12-11 14:04:06 -08:00
compiler_facade_interface_spec.ts refactor(core): clean-up duplicate interface for input metadata in facade (#53521) 2023-12-13 15:44:00 -08:00
integration_spec.ts test(core): clean up unnecessary nesting in old tests (#52239) 2023-10-19 09:26:15 -07:00
security_spec.ts fix(core): hardening attribute and property binding rules for <iframe> elements (#47964) 2022-11-09 00:47:56 -08:00
style_url_resolver_spec.ts refactor(compiler): make template preparser null-safe (#44411) 2022-01-04 15:54:10 -08:00
util_spec.ts test(core): clean up unnecessary nesting in old tests (#52239) 2023-10-19 09:26:15 -07:00