Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

misc: Connect WebDriver BiDi client to Firefox inside Cypress to replace CDP / Classic WebDriver #30220

Open
AtofStryker opened this issue Sep 11, 2024 · 1 comment

Comments

@AtofStryker
Copy link
Contributor

AtofStryker commented Sep 11, 2024

What would you like?

With the implementation of #30219 finished, I would like to connect the newly written BiDi client to Firefox to replace CDP and Classic Webdriver for Firefox versions 130 and up.

Why is this needed?

CDP is planned on being removed from Firefox at the end of 2024. Moving forward, WebDriver BiDi needs to be the automation client Firefox uses.

Other

This should look something like a new BiDiAutomation class being used to wire the prerequest behavior and common behaviors ( in grey) outlined in the State of Automation spreadsheet.

This ticket does NOT include work to port over methods from the @packages/extension and only should contain relevant prerequest / service worker implementations for Firefox that are currently handled by CDP. The extension replacement work is captured in #30221

We also need to gate this behavior behind some type of configuration option that allows users to turn BiDi on or off to override the default of enabling Bidi for Firefox 130+. This can be an escape hatch if there are issues with our implementation until we can release a fix.

@AtofStryker
Copy link
Contributor Author

This has been spiked into in BIDI_AUTOMATION_CLIENT_NO_RESOURCE_TYPE, which cuts over from CDP to BiDi doing the minimum cutover (still uses the cypress web extension) and is all on commit cb2d6e2. The CI job can be found here. The failures I can see seem to all be related to lack of resourceType support in the BiDi network events. This is the main blocker for us for adoption. Here is the bugzilla to support it. It is currently blocking Cypress adoption to BiDi and is blocking removal of CDP from firefox.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant