@angular/language-service
Advanced tools
Changelog
17.3.6 (2024-04-25)
| Commit | Type | Description |
| -- | -- | -- |
| 826861b1fa | fix | DeferBlockFixture.render should not wait for stability (#55271) |
| 5cf14da35c | fix | make ActivatedRoute
inject correct instance inside @defer
blocks (#55374) |
| 8979fba2c5 | fix | skip defer timers on the server (#55480) |
<a name="18.0.0-next.5"></a>
Changelog
18.0.0-next.5 (2024-04-17)
isPlatformWorkerUi
and isPlatformWorkerApp
have been removed without replacement, as they serve no purpose since the removal of the WebWorker platform.Angular will ensure change detection runs, even when the state update originates from outside the zone, tests may observe additional rounds of change detection compared to the previous behavior.
This change will be more likely to impact existing unit tests.
This should usually be seen as more correct and the test should be updated,
but in cases where it is too much effort to debug, the test can revert to the old behavior by adding
provideZoneChangeDetection({schedulingMode: NgZoneSchedulingMode.NgZoneOnly})
to the TestBed
providers.
Similarly, applications which may want to update state outside the zone
and not trigger change detection can add
provideZoneChangeDetection({schedulingMode: NgZoneSchedulingMode.NgZoneOnly})
to the providers in bootstrapApplication
or add
schedulingMode: NgZoneSchedulingMode.NgZoneOnly
to the
BootstrapOptions
of bootstrapModule
.
Testability methods increasePendingRequestCount
,
decreasePendingRequestCount
and getPendingRequestCount
have been
removed. This information is tracked with zones.
| Commit | Type | Description |
| -- | -- | -- |
| 3b0de30b37 | refactor | remove deprecated isPlatformWorkerApp
and isPlatformWorkerUi
API (#55302) |
| Commit | Type | Description | | -- | -- | -- | | 7d5bc1c628 | fix | remove container index from conditional instruction (#55190) | | 4eb0165750 | fix | remove support for unassignable expressions in two-way bindings (#55342) |
| Commit | Type | Description |
| -- | -- | -- |
| fdd560ea14 | feat | Add ability to configure zone change detection to use zoneless scheduler (#55252) |
| bce5e2344f | feat | Add build target for jsaction contract binary. (#55319) |
| f09c5a7bc4 | feat | Add zoneless change detection provider as experimental (#55329) |
| d28614b90e | feat | Modify EventType from an enum to an object. (#55323) |
| 1ee9f32621 | feat | Synchronize changes from internal JSAction codebase. (#55182) |
| de7447d15e | fix | Angular should not ignore changes that happen outside the zone (#55102) |
| 0cec9e4f9a | fix | Fix null dereference error addEvent
(#55353) |
| 6534c035c0 | fix | Remove deprecated Testability methods (#53768) |
| Commit | Type | Description |
| -- | -- | -- |
| 3bc63eaaf3 | fix | avoid running CDs on controllerchange
(#54222) |
<a name="17.3.5"></a>
Changelog
17.3.5 (2024-04-17)
<!-- CHANGELOG SPLIT MARKER --><a name="18.0.0-next.4"></a>
Changelog
18.0.0-next.4 (2024-04-10)
| Commit | Type | Description | | -- | -- | -- | | 2a6f809507 | fix | invalid ImageKit quality parameter (#55193) | | 11705f58a7 | fix | skip transfer cache on client (#55012) |
| Commit | Type | Description | | -- | -- | -- | | 39624c6b12 | fix | output input flags as a literal (#55215) |
| Commit | Type | Description | | -- | -- | -- | | bd236cc150 | fix | implement getDefinitionAtPosition for Angular templates (#55269) |
<!-- CHANGELOG SPLIT MARKER --><a name="17.3.4"></a>
Changelog
17.3.4 (2024-04-10)
| Commit | Type | Description | | -- | -- | -- | | 53427d875d | fix | invalid ImageKit quality parameter (#55193) | | 766548c3ec | fix | skip transfer cache on client (#55012) |
<!-- CHANGELOG SPLIT MARKER --><a name="18.0.0-next.3"></a>
Changelog
18.0.0-next.3 (2024-04-03)
RouterOutlet
. This means that providers available only to the
component that defines the RouterOutlet
will no longer be available to
route components in any circumstances. This was already the case
whenever routes defined providers, either through lazy loading an
NgModule
or through explicit providers
on the route config.| Commit | Type | Description |
| -- | -- | -- |
| f824911510 | fix | For FatalDiagnosticError
, hide the message
field without affecting the emit (#55160) |
| Commit | Type | Description | | -- | -- | -- | | c04ffb1fa6 | fix | use switch statements to narrow Angular switch blocks (#55168) |
| Commit | Type | Description |
| -- | -- | -- |
| 666d646575 | feat | Add event delegation library to queue up events and replay them when the application is ready (#55121) |
| 146306a141 | feat | add support for i18n hydration (#54823) |
| 840c375255 | fix | do not save point-in-time setTimeout
and rAF
references (#55124) |
| 231e0a3528 | fix | handle ChainedInjector
s in injector debug utils (#55144) |
| a5fa279b6e | fix | prevent i18n hydration from cleaning projected nodes (#54823) |
| f44a5e4604 | fix | support content projection and VCRs in i18n (#54823) |
| 914e4530b0 | fix | test cleanup should not throw if Zone is not present (#55096) |
| a99cb7ce5b | fix | zoneless scheduler should check if Zone is defined before accessing it (#55118) |
| Commit | Type | Description | | -- | -- | -- | | 1c736dc3b2 | feat | Unified Control State Change Events (#54579) |
| Commit | Type | Description | | -- | -- | -- | | a48afe0d94 | fix | avoid generating TS syntactic diagnostics for templates (#55091) |
| Commit | Type | Description | | -- | -- | -- | | 0c20c4075a | fix | avoid conflicts with some greek letters in control flow migration (#55113) |
| Commit | Type | Description | | -- | -- | -- | | 45ae7a6b60 | feat | add withI18nSupport() in developer preview (#55130) |
| Commit | Type | Description |
| -- | -- | -- |
| 87f3f27f90 | feat | Allow resolvers to return RedirectCommand
(#54556) |
| 3839cfbb18 | fix | Routed components never inherit RouterOutlet
EnvironmentInjector
(#54265) |
<a name="18.0.0-next.2"></a>
Changelog
18.0.0-next.2 (2024-03-28)
ComponentFixture.whenStable
now matches the
ApplicationRef.isStable
observable. Prior to this change, stability
of the fixture did not include everything that was considered in
ApplicationRef
. whenStable
of the fixture will now include unfinished
router navigations and unfinished HttpClient
requests. This will cause
tests that await
the whenStable
promise to time out when there are
incomplete requests. To fix this, remove the whenStable
,
instead wait for another condition, or ensure HttpTestingController
mocks responses for all requests. Try adding HttpTestingController.verify()
before your await fixture.whenStable
to identify the open requests.
Also, make sure your tests wait for the stability promise. We found many
examples of tests that did not, meaning the expectations did not execute
within the test body.
In addition, ComponentFixture.isStable
would synchronously switch to
true in some scenarios but will now always be asynchronous.
UrlTree
as a redirect, the
redirecting navigation will now use replaceUrl
if the initial
navigation was also using the replaceUrl
option. If this is not
desirable, the redirect can configure new NavigationBehaviorOptions
by
returning a RedirectCommand
with the desired options instead of UrlTree
.| Commit | Type | Description | | -- | -- | -- | | 7fc7f3f05f | fix | capture all control flow branches for content projection in if blocks (#54921) | | a369f43fbd | fix | capture switch block cases for content projection (#54921) | | eb625d3783 | fix | declare for loop aliases in addition to new name (#54942) | | bfd0bd574e | fix | invoke method-based tracking function with context (#54960) | | e1650e3b13 | fix | throw error if item name and context variables conflict (#55045) |
| Commit | Type | Description | | -- | -- | -- | | 5bd188a394 | feat | add partial compilation support for deferred blocks (#54908) | | b02b31a915 | feat | drop support for TypeScript older than 5.4 (#54961) | | 78188e877a | fix | add diagnostic if initializer API is used outside of an initializer (#54993) | | 694ba79cbf | fix | report cases where initializer APIs are used in a non-directive class (#54993) | | 6219341d26 | fix | report errors when initializer APIs are used on private fields (#54981) |
| Commit | Type | Description |
| -- | -- | -- |
| a600a39d0c | feat | add support for fallback content in ng-content (#54854) |
| 658cf8c384 | fix | ComponentFixture
stability should match ApplicationRef
(#54949) |
| 2fc11eae9e | fix | account for re-projected ng-content elements with fallback content (#54854) |
| 1c0ec56c46 | fix | correctly project single-root content inside control flow (#54921) |
| 86a359b399 | fix | establish proper injector resolution order for @defer
blocks (#55079) |
| e02bcf89cf | fix | Fix clearing of pending task in zoneless cleanup implementation (#55074) |
| Commit | Type | Description | | -- | -- | -- | | cf73983fdc | fix | include transferCache when cloning HttpRequest (#54939) | | 13554f9637 | fix | manage different body types for caching POST requests (#54980) |
| Commit | Type | Description | | -- | -- | -- | | 6d1b82df32 | fix | allow external projects to use provided compiler options (#55035) | | 4166dfc1b6 | fix | prevent underlying TS Service from handling template files (#55003) |
| Commit | Type | Description | | -- | -- | -- | | 63688714ae | fix | account for variables in imports initializer (#55081) |
| Commit | Type | Description | | -- | -- | -- | | 60f1d681e0 | fix | preserve replaceUrl when returning a urlTree from CanActivate (#54042) | | eae75ff3f9 | fix | RouterLinkActive will always remove active classes when links are not active (#54982) |
<!-- CHANGELOG SPLIT MARKER --><a name="17.3.2"></a>
Changelog
17.3.2 (2024-03-28)
| Commit | Type | Description | | -- | -- | -- | | 2b7bad5151 | fix | invoke method-based tracking function with context (#54960) |
| Commit | Type | Description | | -- | -- | -- | | b478dfbfda | fix | report errors when initializer APIs are used on private fields (#55070) |
| Commit | Type | Description |
| -- | -- | -- |
| 708ba8115f | fix | establish proper injector resolution order for @defer
blocks (#55079) |
| Commit | Type | Description | | -- | -- | -- | | cb433af0e1 | fix | include transferCache when cloning HttpRequest (#54939) | | 64f202cab9 | fix | manage different body types for caching POST requests (#54980) |
| Commit | Type | Description | | -- | -- | -- | | 2f9d94bc4a | fix | account for variables in imports initializer (#55081) |
| Commit | Type | Description | | -- | -- | -- | | 365fd50407 | fix | RouterLinkActive will always remove active classes when links are not active (#54982) |
<!-- CHANGELOG SPLIT MARKER --><a name="18.0.0-next.1"></a>