chore: asyncStartup for pure webpack/rspack examples only#4412
Merged
ScriptedAlchemy merged 166 commits intomasterfrom Feb 1, 2026
Merged
chore: asyncStartup for pure webpack/rspack examples only#4412ScriptedAlchemy merged 166 commits intomasterfrom
ScriptedAlchemy merged 166 commits intomasterfrom
Conversation
Completes the migration of all example projects to use Playwright for E2E testing, ensuring consistent testing infrastructure across the monorepo and leveraging Playwright's improved performance and debugging capabilities.
- Migrate final set of projects to Playwright (quasar, react-storybook, redux-reducer-injection, rspack-webpack-interop) - Update pnpm lockfiles after dependency changes
Change the path from index.mjs to dist/index.js to reflect the new build output location
…er, fix imports, build pretest)
* fix: stabilize federated-css e2e * merge: bring branch up to date with mass-conversion; regen lockfiles
- federated-css-mono: use Playwright fixtures; wait for federated button; longer wait - nextjs-ssr: exclude Cypress spec via testMatch to avoid duplicate @playwright/test load - vue3-demo/typescript-monorepo: remove runAll aggregators to prevent duplicate/recursive tests - typescript-project-references: swap cypress->playwright imports - rust-wasm: relax post-stop console log assertion (tolerate <=1) - typescript: run webServer with build+serve for CI stability
- nextjs-ssr: use local @playwright/test (drop shared fixtures), add helper openLocalhost - federated-css-react-ssr: switch to Playwright selectors/constants; wait for federated button
…in migrated projects - Remove *.cy.ts and cypress.env from nextjs-ssr and federated-css-react-ssr - Switch specs to playwright fixtures/constants/selectors - Inline TypeScript app test data; drop CommonTestData and cypress-e2e deps - Add playwright-e2e/types/cssAttr to replace Cypress cssAttr
- vue3-demo: make test titles unique per app to avoid duplicates - vue2-in-vue3: add BaseMethods.checkCounterFunctionality to match Cypress helper - federated-css-mono: serve exposes on 400x; wait for Next on 8081 - typescript-project-references: correct imports to ../../../playwright-e2e - typescript: start both servers reliably with bash wait - rust-wasm: relax pre-stop log assertion to tolerate stragglers - typescript-monorepo: adjust package.json assertion for pnpm workspace
| import { BasePage } from './basePage'; | ||
| import { expect, test as base } from './playwright'; |
Check notice
Code scanning / CodeQL
Unused variable, import, function or class Note test
Show autofix suggestion
Hide autofix suggestion
Copilot Autofix
AI 3 months ago
In general, to fix an unused import, remove the unused symbol from the import statement (or the whole import if nothing from it is used). This improves readability and avoids confusion.
Here, on line 2 in playwright-e2e/common/testFixtures.ts, only test as base is used, while expect is not. The best fix is to modify the import so it only imports test as base and drops expect. No additional methods, imports, or definitions are needed.
Concretely, change:
import { expect, test as base } from './playwright';to:
import { test as base } from './playwright';leaving the rest of the file unchanged.
Suggested changeset
1
playwright-e2e/common/testFixtures.ts
| @@ -1,5 +1,5 @@ | ||
| import { BasePage } from './basePage'; | ||
| import { expect, test as base } from './playwright'; | ||
| import { test as base } from './playwright'; | ||
|
|
||
| export const test = base.extend<{ basePage: BasePage }>({ | ||
| basePage: async ({ page }, use) => { |
Copilot is powered by AI and may make mistakes. Always verify output.
The default 'version-first' shareStrategy causes a runtime deadlock when used with asyncStartup + webpack because initializeSharing tries to resolve best versions from remote containers before they are loaded, creating a circular dependency. Using 'loaded-first' avoids this by skipping remote version negotiation at startup. Also suppresses webpack-dev-server warning overlays for examples that use external script remotes (async/await triggers a false warning), and reverts bi-directional to use 'pnpm start' instead of 'pnpm dev'. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
…react CI
- Revert comprehensive-demo-react16/18 entry points from static
`import './bootstrap'` back to dynamic `import('./bootstrap')` —
asyncStartup with static imports breaks federation in multi-app
rspack setups
- Switch loadable-react-16/18 MF import from `@module-federation/enhanced/webpack`
to `@module-federation/enhanced` — the /webpack subpath causes silent
build failures in pnpm 10 CI
- Revert loadable-react-16 e2e:ci and playwright.config.ts to master
(build-during-serve flow)
- Revert loadable-react-18 playwright.config.ts to `pnpm run serve`
(separate build step in e2e:ci) and restore original start.js
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
The lockfile incorrectly had 12.5.0 for the 12.1.0 specifier, causing frozen-lockfile failure in CI. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
3a47e14 to
c5a852a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR reverts the asyncStartup sweep changes for ModernJS + Rsbuild-based examples (including clo + react-manifest-example), keeping the asyncStartup changes only for pure webpack/rspack examples.
Follow-up: close PR #4411 once this replaces it.