Conversation
|
Claude finished @nicobytes's task in 3m 44s —— View job PR Review: RxJS v6 → v7 Migration
|
There was a problem hiding this comment.
Pull request overview
Migrates core-web from RxJS 6-style/deprecated APIs to RxJS 7-compatible patterns (operators and error creation), updating both production code and test suites to remove deprecated operators like pluck, switchMapTo, and legacy throwError signatures.
Changes:
- Upgraded RxJS dependency to
7.8.2and updated lockfile accordingly. - Replaced deprecated operators/usages (
pluck→map,switchMapTo→switchMap,toPromise()→lastValueFrom,throwError(value)→throwError(() => value)). - Updated a large set of unit/integration tests to use RxJS 7 error factory signatures.
Reviewed changes
Copilot reviewed 122 out of 123 changed files in this pull request and generated 11 comments.
Show a summary per file
| File | Description |
|---|---|
| core-web/yarn.lock | Locks RxJS 7.x and related dependency graph updates. |
| core-web/package.json | Bumps rxjs to 7.8.2 and records Yarn package manager metadata. |
| core-web/libs/ui/src/lib/services/dot-browsing/dot-browsing.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/ui/src/lib/components/dot-site/dot-site.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/ui/src/lib/components/dot-language-selector/dot-language-selector.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/ui/src/lib/components/dot-content-type/dot-content-type.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/ui/src/lib/components/dot-browser-selector/store/browser.store.test.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/ui/src/lib/components/dot-asset-search/store/dot-asset-search.store.ts | Replaces internal RxJS imports with public rxjs exports. |
| core-web/libs/ui/src/lib/components/dot-ai-image-prompt/store/ai-image-prompt.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/template-builder/src/lib/components/template-builder/template-builder.component.spec.ts | Replaces pluck usage with map in store VM assertions. |
| core-web/libs/template-builder/src/lib/components/template-builder/store/template-builder.store.spec.ts | Replaces pluck usage with map for VM-derived streams. |
| core-web/libs/portlets/edit-ema/ui/src/lib/dot-favorite-page/store/dot-favorite-page.store.ts | Updates throwError usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/ui/src/lib/dot-favorite-page/store/dot-favorite-page.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/ui/src/lib/dot-favorite-page/dot-favorite-page.component.spec.ts | Replaces internal RxJS imports with public rxjs exports. |
| core-web/libs/portlets/edit-ema/ui/src/lib/dot-content-compare/components/dot-content-compare-dialog/dot-content-compare-dialog.component.ts | Replaces pluck with map for event payload extraction. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/store/features/editor/withLock.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/store/features/editor/save/withSave.ts | Updates throwError usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/services/dot-page-api.service.ts | Replaces pluck with map for API response extraction. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/services/dot-action-url/dot-action-url.service.ts | Replaces pluck with map for API response extraction. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/services/dot-action-url/dot-action-url.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/edit-ema-editor/edit-ema-editor.component.spec.ts | Updates throwError test usage and modernizes expectation matching. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/edit-ema-editor/components/dot-uve-toolbar/dot-uve-toolbar.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/edit-ema-editor/components/dot-uve-palette/components/dot-uve-style-editor-form/dot-uve-style-editor-form.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/edit-ema-editor/components/dot-uve-palette/components/dot-uve-palette-list/store/store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/edit-ema/portlet/src/lib/components/dot-block-editor-sidebar/dot-block-editor-sidebar.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-usage/src/lib/dot-usage-shell/dot-usage-shell.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-tags/src/lib/dot-tags-list/store/dot-tags-list.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-tags/src/lib/dot-tags-import/dot-tags-import.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-locales/portlet/src/lib/dot-locales-list/store/dot-locales-list.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-experiments/portlet/src/lib/dot-experiments-list/store/dot-experiments-list-store.ts | Updates throwError usage within store effects. |
| core-web/libs/portlets/dot-experiments/portlet/src/lib/dot-experiments-configuration/store/dot-experiments-configuration-store.ts | Updates throwError usage within store effects. |
| core-web/libs/portlets/dot-experiments/portlet/src/lib/dot-experiments-configuration/store/dot-experiments-configuration-store.spec.ts | Updates throwError test usage to RxJS 7 factory form; minor formatting. |
| core-web/libs/portlets/dot-content-drive/portlet/src/lib/store/dot-content-drive.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-content-drive/portlet/src/lib/dot-content-drive-shell/dot-content-drive-shell.component.spec.ts | Updates throwError test usage to RxJS 7 factory form; minor typing adjustment. |
| core-web/libs/portlets/dot-content-drive/portlet/src/lib/components/dot-folder-list-context-menu/dot-folder-list-context-menu.component.ts | Replaces toPromise() with lastValueFrom for awaited HTTP observables. |
| core-web/libs/portlets/dot-content-drive/portlet/src/lib/components/dot-folder-list-context-menu/dot-folder-list-context-menu.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-content-drive/portlet/src/lib/components/dot-content-drive-toolbar/components/dot-content-drive-workflow-actions/dot-content-drive-workflow-actions.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-content-drive/portlet/src/lib/components/dot-content-drive-toolbar/components/dot-content-drive-content-type-field/dot-content-drive-content-type-field.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-content-drive/portlet/src/lib/components/dialogs/dot-content-drive-dialog-folder/dot-content-drive-dialog-folder.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/portlets/dot-analytics/portlet/src/lib/dot-analytics-search/store/dot-analytics-search.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/store/features/workflow/workflow.feature.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/store/features/user/user.feature.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/store/features/lock/lock.feature.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/store/features/history/history.feature.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/store/features/content/content.feature.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/store/features/activities/activities.feature.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/services/dot-edit-content.service.ts | Replaces pluck with map for API response extraction. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-relationship-field/components/dot-select-existing-content/store/existing-content.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-relationship-field/components/dot-select-existing-content/store/existing-content.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-relationship-field/components/dot-select-existing-content/components/search/components/site-field/site-field.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-relationship-field/components/dot-select-existing-content/components/search/components/language-field/language-field.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-file-field/store/file-field.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-file-field/components/dot-form-import-url/store/form-import-url.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-file-field/components/dot-file-field-preview/dot-file-field-preview.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/edit-content/src/lib/fields/dot-edit-content-category-field/services/categories.service.ts | Replaces pluck with map for API response extraction. |
| core-web/libs/edit-content-bridge/package.json | Bumps RxJS dependency to 7.8.2. |
| core-web/libs/dot-rules/src/lib/services/api/rule/Rule.it-spec.ts | Replaces deprecated static Observable.* and flatMap with from/merge + mergeMap. |
| core-web/libs/data-access/src/lib/ema-app-configuration/ema-app-configuration.service.ts | Replaces pluck with map for nested response extraction. |
| core-web/libs/data-access/src/lib/dot-workflows-actions/dot-workflows-actions.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-workflow/dot-workflow.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-workflow-actions-fire/dot-workflow-actions-fire.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-versionable/dot-versionable.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-upload-file/dot-upload-file.service.ts | Replaces pluck with map; updates throwError to factory signature. |
| core-web/libs/data-access/src/lib/dot-site/dot-site.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-resource-links/dot-resource-links.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-properties/dot-properties.service.ts | Replaces pluck with map for response entity/key extraction. |
| core-web/libs/data-access/src/lib/dot-page-workflows-actions/dot-page-workflows-actions.service.ts | Replaces pluck with map and tightens response typing. |
| core-web/libs/data-access/src/lib/dot-page-tools/dot-page-tools.service.ts | Replaces pluck with map for assets response extraction. |
| core-web/libs/data-access/src/lib/dot-page-state/dot-page-state.service.ts | Replaces pluck with map for locker message extraction. |
| core-web/libs/data-access/src/lib/dot-page-state/dot-page-state.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/data-access/src/lib/dot-messages/dot-messages.service.ts | Replaces pluck with map for message entity extraction. |
| core-web/libs/data-access/src/lib/dot-license/dot-license.service.ts | Replaces pluck with map for nested license extraction. |
| core-web/libs/data-access/src/lib/dot-field/dot-field.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-experiments/dot-experiments.service.ts | Replaces pluck with map for entity/health extraction. |
| core-web/libs/data-access/src/lib/dot-edit-page-resolver/dot-edit-page-resolver.service.ts | Updates throwError to RxJS 7 factory signature for resolver error responses. |
| core-web/libs/data-access/src/lib/dot-edit-page-resolver/dot-edit-page-resolver.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/libs/data-access/src/lib/dot-copy-content/dot-copy-content.service.ts | Replaces pluck with map after shareReplay. |
| core-web/libs/data-access/src/lib/dot-contentlet/dot-contentlet.service.ts | Replaces pluck with indexed map for language-specific versions. |
| core-web/libs/data-access/src/lib/dot-content-type/dot-content-type.service.ts | Replaces flatMap/pluck with mergeMap/map. |
| core-web/libs/data-access/src/lib/dot-content-search/dot-content-search.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-analytics-search/dot-analytics-search.service.ts | Replaces pluck with map for response entity extraction. |
| core-web/libs/data-access/src/lib/dot-ai/dot-ai.service.ts | Updates throwError to RxJS 7 factory signature; replaces pluck with map. |
| core-web/libs/block-editor/src/lib/shared/services/suggestions/suggestions.service.ts | Replaces pluck with map for nested response extraction. |
| core-web/libs/block-editor/src/lib/extensions/asset-form/components/dot-upload-asset/dot-upload-asset.component.ts | Updates throwError to RxJS 7 factory signature. |
| core-web/libs/block-editor/src/lib/elements/dot-bubble-menu/components/dot-link-editor-popover/dot-link-editor-popover.component.ts | Replaces pluck with map for nested response extraction. |
| core-web/apps/dotcms-ui/src/stories/primeng/overlay/SharedProducts.service.ts | Replaces toPromise() with lastValueFrom in demo service. |
| core-web/apps/dotcms-ui/src/app/view/components/login/reset-password-component/reset-password.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/view/components/login/main/dot-login-page.component.ts | Replaces pluck with map for login page state entity. |
| core-web/apps/dotcms-ui/src/app/view/components/login/forgot-password-component/forgot-password.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/view/components/login/dot-login-component/dot-login.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/view/components/dot-toolbar/components/dot-my-account/dot-my-account.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/view/components/dot-device-selector/dot-device-selector.component.ts | Replaces flatMap with mergeMap for device list flattening. |
| core-web/apps/dotcms-ui/src/app/view/components/dot-contentlet-editor/components/dot-create-contentlet/dot-create-contentlet.component.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/view/components/dot-add-persona-dialog/dot-add-persona-dialog.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/view/components/_common/iframe/iframe-porlet-legacy/iframe-porlet-legacy.component.ts | Replaces pluck with map for route/param/query extraction. |
| core-web/apps/dotcms-ui/src/app/view/components/_common/dot-workflows-actions-selector-field/services/dot-workflows-actions-selector-field.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/shared/interceptors/server-error.interceptor.ts | Updates throwError to RxJS 7 factory signature. |
| core-web/apps/dotcms-ui/src/app/portlets/shared/dot-content-types-listing/dot-content-types.component.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/portlets/shared/dot-content-types-listing/dot-content-type.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/shared/dot-content-types-edit/dot-content-types-edit.component.ts | Replaces pluck with map for delete-fields response extraction. |
| core-web/apps/dotcms-ui/src/app/portlets/shared/dot-content-types-edit/dot-content-types-edit.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/shared/dot-content-types-edit/components/fields/content-type-fields-properties-form/field-properties/dot-relationships-property/dot-edit-relationship/dot-edit-relationships.component.ts | Replaces flatMap with mergeMap for relationship flattening. |
| core-web/apps/dotcms-ui/src/app/portlets/shared/dot-content-types-edit/components/dot-block-editor-settings/dot-block-editor-settings.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/shared/dot-content-types-edit/components/dot-binary-settings/dot-binary-settings.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-templates/dot-template-create-edit/store/dot-template.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-templates/dot-template-create-edit/dot-template-props/dot-template-thumbnail-field/dot-template-thumbnail-field.component.ts | Updates throwError usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-templates/dot-template-create-edit/dot-template-props/dot-template-thumbnail-field/dot-template-thumbnail-field.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-pages/store/withFavorite/withFavorite.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-pages/store/store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-pages/services/dot-page-actions.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-pages/dot-pages-store/dot-pages.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-form-builder/dot-form-builder.component.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-containers/dot-container-create/dot-container-properties/store/dot-container-properties.store.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-containers/dot-container-create/dot-container-create.component.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-containers/container-list/store/dot-container-list.store.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-apps/dot-apps-import-export-dialog/store/dot-apps-import-export-dialog.store.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-apps/components/dot-apps-configuration/dot-apps-configuration.component.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/portlets/dot-apps/components/dot-apps-configuration-detail/dot-apps-configuration-detail.component.ts | Replaces pluck with map for route data extraction. |
| core-web/apps/dotcms-ui/src/app/app.component.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/api/services/dynamic-route-initializer.service.spec.ts | Updates throwError test usage to RxJS 7 factory form. |
| core-web/apps/dotcms-ui/src/app/api/services/dot-menu.service.ts | Replaces pluck/publishLast/refCount with map + shareReplay. |
| core-web/apps/dotcdn/src/app/dotcdn.component.store.ts | Replaces switchMapTo with switchMap. |
| .cursor/plans/rxjs_7_migration_plan_c65e7afc.plan.md | Adds a migration plan document for the RxJS 7 upgrade work. |
...s/portlet/src/lib/dot-experiments-configuration/store/dot-experiments-configuration-store.ts
Show resolved
Hide resolved
...s/portlet/src/lib/dot-experiments-configuration/store/dot-experiments-configuration-store.ts
Show resolved
Hide resolved
...ets/dot-experiments/portlet/src/lib/dot-experiments-list/store/dot-experiments-list-store.ts
Show resolved
Hide resolved
...ets/dot-experiments/portlet/src/lib/dot-experiments-list/store/dot-experiments-list-store.ts
Outdated
Show resolved
Hide resolved
...s/portlet/src/lib/dot-experiments-configuration/store/dot-experiments-configuration-store.ts
Show resolved
Hide resolved
core-web/libs/data-access/src/lib/dot-page-tools/dot-page-tools.service.ts
Outdated
Show resolved
Hide resolved
core-web/apps/dotcms-ui/src/app/api/services/dot-menu.service.ts
Outdated
Show resolved
Hide resolved
core-web/libs/portlets/edit-ema/portlet/src/lib/services/dot-page-api.service.ts
Show resolved
Hide resolved
...ets/dot-experiments/portlet/src/lib/dot-experiments-list/store/dot-experiments-list-store.ts
Outdated
Show resolved
Hide resolved
...s/portlet/src/lib/dot-experiments-configuration/store/dot-experiments-configuration-store.ts
Show resolved
Hide resolved
…mers for improved timing control
…Page stores by utilizing dotHttpErrorManagerService
| filterParams, | ||
| collapsedParam | ||
| collapsedParam, | ||
| , |
| DotCMSResponseExperiment<{ healthy: HealthStatusTypes }> | ||
| >('/api/v1/experiments/health') | ||
| .pipe(pluck('entity', 'health')); | ||
| .pipe(map((x) => x?.entity?.healthy)); |

This pull request focuses on migrating the codebase away from deprecated RxJS 6 patterns to be fully compatible with RxJS 7.8.2. The changes are primarily aimed at replacing deprecated operators like
pluck,switchMapTo, andpublishLastwith their recommended alternatives, as well as updating test code to align with newer RxJS error handling APIs. The refactor touches a wide range of files, particularly in thedotcms-uiapp, and ensures improved maintainability and future compatibility.RxJS Operator Refactoring:
pluckoperator withmapacross all usages in the codebase, updating selector logic accordingly [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12].switchMapTowithswitchMapin all affected streams, updating function signatures where necessary [1] [2] [3].publishLast/refCountcombo withshareReplayfor caching HTTP responses [1] [2].pluckin service methods tomap, ensuring type safety and clarity.Test and Error Handling Updates:
throwError(error)to the RxJS 7+ patternthrowError(() => error)in tests and services for proper error emission [1] [2] [3] [4] [5].Testing Utilities Modernization:
fakeAsync/tickusage with Jest timer mocks (jest.useFakeTimers,jest.advanceTimersByTime,jest.useRealTimers) in component tests for more robust async testing [1] [2] [3] [4].Documentation:
.cursor/plans/rxjs_7_migration_plan_c65e7afc.plan.mdto document the migration plan and provide an overview of the categories and scope of changes.This PR fixes: #33073