Commit Graph

364 Commits

Author SHA1 Message Date
Bill Glesias 3c79d12b38 chore: update firefox docs to exclude CDP (#32272) 2025-08-18 17:29:24 -04:00
Bill Glesias d1667d7d63 Merge branch 'release/15.0.0' into merge_develop_15 2025-08-07 15:49:56 -04:00
Bill Glesias 9ef239e68b fix: update bidi automation client to handle unspecified cookie option in firefox and keep behavior for firefox 139 and under as the 'default' sameSite value does not exist in this version 2025-08-06 16:04:55 -04:00
Bill Glesias a3924071c1 Merge branch 'develop' into merge_develop_15 2025-08-05 16:23:25 -04:00
Bill Glesias d18f66006e chore: fix AUT discovery if frame name is not present (#32154)
* chore: fix issues with AUT discovery if for any reason the name is not present

* Update packages/server/lib/browsers/cdp_automation.ts

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-08-05 13:45:36 -04:00
Jennifer Shehane 788dfd1c0b chore: bump firefox version we test against to 141 (#32078)
* chore: bump firefox version we test against to 141

* account for unspecified sameSite which is now available in firefox 140

* fix expected error string for invalid cookie

* override FORCE_FIREFOX_CDP firefox 141

* fix cdp override in ff 141+

* maybe fix cookeie system tests? seem to time out locally

* set family as well as name

* fix system tests fore ff 141

* fix ff deprecation

* rm erroneous err param

* assume firefox is modern in cookies driver e2e test

* Update system-tests/lib/system-tests.ts

* we do still run tests against firefox 134

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
Co-authored-by: Cacie Prins <cacie@cypress.io>
2025-08-05 13:00:30 -04:00
Bill Glesias 9f48e243a4 fix: allow localhost hijacking and treat as secure if proxyServer is present (thanks to @mozfreddybmozfreddyb in https://github.com/cypress-io/cypress/pull/32056) (#32065) 2025-07-23 11:27:00 -04:00
Jennifer Shehane 3eaf7400ad Merge branch 'develop' into release/15.0.0 2025-06-26 12:25:20 -04:00
Bill Glesias 40c81d0ec8 fix: proxy spec flake in firefox due to improper sweeping and correlation (#31651)
* fix: don't automatically remove requests when cdpRequestWillBeSentReceivedTimestamp is set to 0. Also, do not ass hashes to prerequest url as the urls do not have hashes when coming through the middleware

* Update packages/server/lib/browsers/bidi_automation.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-24 15:33:38 -04:00
Bill Glesias b75850e37b feat: rework window bound commands to use automation clients (#31862)
* spike: cut over cy.url(), cy.hash(), cy.location(), cy.reload(), cy.go(), and cy.title() all to use the automation client to subvert the cross-origin boundary

refactor backend client

* chore: add unit tests for cy url, hash, location, title, reload, and go changes to make it easier to test minor behavior changes

bump cache

* fix issues with cy in cy tests. refactor aut discovery code as the frame tree gets stale on reload

* update comments from code review

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-06-17 16:33:56 -04:00
Jennifer Shehane 74daed48b7 Merge branch 'develop' into release/15.0.0 2025-05-21 11:57:04 -04:00
renovate[bot] ff559dfd3a dependency: update dependency webdriver to v9.14.0 (#31689)
* fix(deps): update dependency webdriver to v9.13.0

* empty commit

* changelog entry

* update webdriver to 9.14.0 and update patches

* Update packages/server/patches/@wdio+protocols+9.14.0.patch

Co-authored-by: Matt Schile <mschile@cypress.io>

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: Matt Schile <mschile@cypress.io>
2025-05-16 16:59:42 -04:00
Bill Glesias 713575b548 misc: throw error when chrome 137 branded is used when the @cypress/puppeteer is used in headed mode or if --load-extension is added to launch options via a user testing an extension (#31709) 2025-05-16 09:23:23 -04:00
Jennifer Shehane a43873832a merge develop 2025-05-14 09:59:16 -04:00
Mike McCready b68232c87f fix: find webkit version for playwright-webkit@1.52.0 (#31700)
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-05-13 13:56:12 -04:00
Bill Glesias 9b3b023aa0 feat: replace ts-node with tsx for parsing user configuration (#31520)
* feat: replace tsnode with tsx for parsing user configuration in all cases

* bump ubuntu images from node 18 to 20 as node 18 is not supported in cypress 15 and allows us to not include the 18.19.0 workaround to use --import with tsx inside the ProjectConfigIpc

* fix: issues finding tsx on windows as it needs the file:// protocol as absolute drive paths are not recognized as a file protocol in the node context

* make sure to filter out stack code correctly for windows

* fix: fix flake from windows on reporter menu not expanding (unrelated to this PR and should be merged into develop)

* chore: update changelog with all issues tsx cutover closes

* fix merge conflicts

* chore: add regression tests for cypress projects that previously did not work but now do with tsx

* build all binaries

* chore: address issues from code review

* update changelog

* remove todo comment on testing legacy migration with tsx

* refactor codeFrame calculation into a util function and add a unit test

* updated node versions in project config ipc tests to remove 18 and test threshold / latest values. Removed redundant comments on ts-node.
2025-04-29 13:31:28 -04:00
Bill Glesias 0a51e6d209 chore: cut over web extension methods to use webdriver BiDi to automate cookie behavior similar to CDP client (#31209) 2025-04-17 20:15:01 -04:00
AtofStryker 3b5879fbca Merge branch 'develop' of github.com:cypress-io/cypress into chore/merge_dev_15 2025-04-14 22:01:43 -04:00
Cacie Prins 9a51a0ff45 fix: activate main tab before detecting iframe focus in firefox/bidi implementation of cy.press() (#31481)
* activate main window before attempting to detect aut iframe active element

* add todo about refactor

* changelog

* system test for issue 31466

* no infinite max depth

* changelog

* changelog

* simplify

* additional test, better window switching logic
2025-04-14 16:13:13 -04:00
Bill Glesias 346e80110a chore: merge develop into cypress release 15 branch (#31464)
* dependency: upgrade mocha to 7.2.0 (#31423)

* dependency: upgrade mocha to 7.2.0

* changelog entry

* remove the it.only from the mocha patch changelog that is triggering our stop-only check from passing

* skip patches folder with stop-only check

* remove extra bracket

* Update protocol_spec to reflect new mocha line number for error stack trace

* chore: updating v8 snapshot cache (#31424)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: updating v8 snapshot cache (#31425)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: updating v8 snapshot cache (#31426)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: migrates plugin system test to a v3 extension (#31434)

* chore: Update Chrome (stable) to 135.0.7049.52 (#31428)

* chore: Update Chrome (stable) to 135.0.7049.52

* empty commit

---------

Co-authored-by: cypress-bot[bot] <41898282+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>

* chore: bump Firefox to 137 (#31431)

* chore: bump Firefox to 137

* use 137 version? weird.

* just kidding, major version only has 1 zero after it................

* dependency: update server to mocha 7.2.0 (#31432)

* dependency: update server to mocha 7.2.0

* Add PR to changelog

* chore: updating v8 snapshot cache (#31437)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: updating v8 snapshot cache (#31438)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: updating v8 snapshot cache (#31439)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: Update Chrome (beta) to 136.0.7103.17 (#31448)

* chore: Update Chrome (beta) to 136.0.7103.17

* empty commit

---------

Co-authored-by: cypress-bot[bot] <41898282+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* refactor: lifts toPosix to its own file, removes circular dependency between stack_utils and source_map_utils (#30983)

* refactor: lifts toPosix to remove circular dependency between stack_utils and source_map_utils

* camelCase to snake_case

* rm duplicated file

* internal: (studio) make the protocol database accessible to studio (#31443)

* internal: (studio) make the protocol database accessible to studio

* PR comment

* chore(deps): update dependency patch-package to v8 (#31451)

* chore(deps): update dependency patch-package to v8

* empty commit

* add types to handle json-stable-stringify dep change

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* chore: fix deprecation warnings and refactor react reporter to use functional components and hooks (#31284)

* chore: fix deprecation warnings and refactor react reporter to use functional components with hooks

* chore: update code to reflect feedback from code review

* fix issues with scrollIntoView() on updated component and refactor isOpen logic in collapsible to not attempt to sync state

* fix issues with tests after refactor

* see if event registration fixes windows flake

* chore: update snap-shot-core patch package file to match version (#31449)

* chore: update snap-shot-core patch package file to match version

* update circle cache

* experiment with removing .md from yarnclean

* add .md back to yarnclean

* bust circle cache

* remove .md files being cleaned from yarn to get around patch-package issue

* print size of cache

* try out the size of the .md

* remove md from yarnclean

* UPdate to version without removal of markdown files

* chore: updating v8 snapshot cache (#31460)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: updating v8 snapshot cache (#31462)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* chore: updating v8 snapshot cache (#31461)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* feat: cy.press() (#31398)

* wip - cy.press() command

* cy command for dispatching key press/down/up events

* unit tests and failure cases for cy.press()

* Cypress.Keyboard.Keys definition; fix command log message

* add keys to the internal keyboard type

* auto-focus in cdp

* ensure aut iframe is focused before dispatching key events in bidi browsers

* update tests for cdp focus

* fixed tests for bidi

* lint

* fix type ref in .d.ts

* linting

* skip press() driver test in ff below v135

* try all contexts for frame before failing due to missing/invalid context id

* ensure error is error before accessing props

* skip press driver test in webkit

* changelog

* debug automation middleware invocation for firefox flake

* debug

* cache update

* use bidi automation middleware from connectToNewSpec rather than constructor

* more comprehensive logging

* debug socket base, additional debug in automation

* install firefox automation middleware on setup as well as connectToNewSpec

* unit tests for firefox-utils

* proper calledWith

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* docs: update contributing requirements for corepack (#31463)

* chore: remove `du` check (#31465)

* chore: use different args for `du` in win

* rm du command for build

* chore: release 14.3.0 (#31467)

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Cacie Prins <cacieprins@users.noreply.github.com>
Co-authored-by: cypress-bot[bot] <41898282+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Mike McCready <66998419+MikeMcC399@users.noreply.github.com>
2025-04-08 14:46:30 -04:00
Cacie Prins cfdeb7af14 feat: cy.press() (#31398)
* wip - cy.press() command

* cy command for dispatching key press/down/up events

* unit tests and failure cases for cy.press()

* Cypress.Keyboard.Keys definition; fix command log message

* add keys to the internal keyboard type

* auto-focus in cdp

* ensure aut iframe is focused before dispatching key events in bidi browsers

* update tests for cdp focus

* fixed tests for bidi

* lint

* fix type ref in .d.ts

* linting

* skip press() driver test in ff below v135

* try all contexts for frame before failing due to missing/invalid context id

* ensure error is error before accessing props

* skip press driver test in webkit

* changelog

* debug automation middleware invocation for firefox flake

* debug

* cache update

* use bidi automation middleware from connectToNewSpec rather than constructor

* more comprehensive logging

* debug socket base, additional debug in automation

* install firefox automation middleware on setup as well as connectToNewSpec

* unit tests for firefox-utils

* proper calledWith

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-04-08 09:23:18 -04:00
Bill Glesias 25f0fd0a11 breaking: remove CDP from firefox with Cypress 15 (#31200)
* chore: updating v8 snapshot cache (#31422)

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>

* breaking: remove CDP from firefox with Cypress 15 [run ci]

* chore: code review updates

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2025-04-03 13:42:04 -04:00
Ryan Manuel b6a64604ba fix: workaround for the electron animation bug (#31391)
* fix: workaround for the electron animation bug

* fix bug

* Update packages/server/test/unit/browsers/electron_spec.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* try something

* try something

* try something

* try something

* fix

* fix

* fix

* refactor and ensure still broken

* and the fix

* Update packages/server/test/unit/browsers/electron_spec.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update packages/server/lib/browsers/electron.ts

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* Update CHANGELOG.md

* refactor

* Update cli/CHANGELOG.md

* Update cli/CHANGELOG.md

Co-authored-by: Matt Schile <mschile@cypress.io>

* fix build

* Update packages/server/test/unit/browsers/electron_spec.js

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Matt Schile <mschile@cypress.io>
2025-03-31 08:50:14 -05:00
Bill Glesias 45da70a4e2 fix: set cdpRequestWillBeSentReceivedTimestamp within firefox bidi to avoid downstream impacts (#31377)
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-26 14:03:23 -04:00
Cacie Prins 5d8bf8570a misc: automation implementation / prerequisite for cy.press() (#31366)
* cdp command impl for tab dispatch

* misc: add automation command to cdp for forthcoming tab key

* changelog

* skip non chromium browsers for press() driver test

* fix test

* misc: bidi automation impl for key press

* amend types

* log, but do not fail, if key:press is not supported

* rm extraneous debugs

* rm more debug

* changelog

* comments

* revert to keyDown from rawKeyDown, remove delay

* expand changelog to include bidi

* changelog

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-26 11:42:59 -04:00
Bill Glesias fc964b94b8 fix: remove prerequests from automation client when bidi continue request errors (#31328)
* fix: make sure to remove prerequests when bidi interceptor is removed and requests are still in flight from the previous spec/tab [run ci]

* fix changelog
2025-03-20 22:38:24 -04:00
Ryan Manuel 0daf7e639f chore: support studio lifecycle in protocol (#31239)
* update url with studio params

* updates

* spec updates

* adding tests

* updating changelog

* skip adding visit log during start

* update url support

* cy origin tests

* fix tests

* updates

* update origin test

* chore: support studio lifecycle in protocol

* merge changes

* fix types

* fix tests

* fix tests

* fix tests

* fix more tests

* fix more tests

* fix more tests

* fix test

* fix bugs

* fix tests

* attempt to fix test

* further fixes

* improve cloud studio enablement

* refactoring

* remove new dom link

* fix last test

* Update packages/app/cypress/e2e/studio/studio.cy.ts

* Update packages/server/lib/project-base.ts

* Update packages/proxy/lib/http/request-middleware.ts

Co-authored-by: Matt Schile <mschile@cypress.io>

* PR comments

* fix build

* fix build

* update

* Update packages/server/lib/project-base.ts

Co-authored-by: Matt Schile <mschile@cypress.io>

* fix unit test

* rework save logic

---------

Co-authored-by: Matthew Schile <mschile@cypress.io>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-13 20:30:29 -05:00
Cacie Prins 843b188d65 refactor: enhance ts definitions for automation (#31231)
* refactor: enhance ts definitions for automation

* revert `automationValve` to returning bluebird promises, for now

* bump circle cache
2025-03-11 10:30:43 -04:00
Bill Glesias f0df912f39 chore: add websocket url to capabilities for firefox (#31226)
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-10 11:35:18 -04:00
Cacie Prins bbd7efc0dd refactor: begin to use axios for cloud api requests (#31041)
* patch axios for v8 snapshots

* export httpsAgent and httpAgent discretely

* set up axios interceptors for logging and error response transformation

* use unified error transform fn

* create instance api reqs, timeouts, tests

* move axios middleware to its own dir & refactor

* refactor error handling, enable retries in createInstance

* fix invocation of createInstance - not caught by ts because record.js is js

* retry on 500 - according to system test, this is expected behavior

* resolve snapshots, report retries to stdout

* fix cdp connection usage of shouldRetry due to newly unknown error type

* axios doesnt fully follow RequestOptions shape when adding request to https agent

* note why uri is treated as optional

* hail mary on getting axios to work with v8 snapshots

* update lockfile, force no-rewrite on more axios files

* attempt to fix v8 snapshots

* add verbose debugging to api request logging

* enable verbose api debugging on server unit tests

* fix nock pattern for createInstance

* remove request logging unit test - sinon/mocha does not assert correctly

* fix a few unit tests

* use runAllAsync rather than waiting an arbitrary time for sinon fake timer

* move create_instance spec to ts file, remove redundant test

* rm debug on ci

* clarify comment on change inpackages/network

* correct .uri property on patched RequestOptions to be optional

* rm unused log_requests.ts, DRY error messages

* resolve types with record.ts migration

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2025-03-10 10:58:09 -04:00
Bill Glesias 5da0995531 feat: implement webdriver BiDi for Firefox versions 135 and greater (#30870)
* feat: implement BiDi automation client base (without full extension cutover). [run ci]

* chore: implement suggestions from code review. [run ci]

* update error text to be in line with documentation

* address comments from code review

* address comments from code review

* make bidi, cdp, and both active protocols object enumerations to make the code easier to read

* address additional comments from code review

* fix errors from refactor

* update firefox warning
2025-02-24 13:17:44 -05:00
Bill Glesias 760f60026d chore: update wdio dependencies to latest for firefox [run ci] (#31078) 2025-02-12 09:48:18 -05:00
Bill Glesias 66bf74f5b2 chore: Revert "chore: update wdio dependencies to latest for firefox (#30822)" (#31074)
This reverts commit 33eb6c818e.
2025-02-11 12:57:28 -05:00
Bill Glesias 33eb6c818e chore: update wdio dependencies to latest for firefox (#30822)
* chore: update wdio dependencies to latest and update patches [run ci]

* chore: update webdriver
2025-02-10 16:27:22 -05:00
Jennifer Shehane f920dcbd0d chore: enforce 'no-implicit-dependencies' on tslint (#31022)
* chore: enforce 'no-implicit-dependencies' on tslint

* downgrade chalk version for errors package
2025-02-06 17:33:05 -05:00
Jennifer Shehane f14fd12350 merge develop 2024-12-10 11:00:16 -05:00
Matt Schile dcd0e92ced fix: update userChrome.css to correctly hide the toolbox in firefox (#30728) 2024-12-10 07:38:09 -07:00
Matt Schile e96593bb1e fix: hang when Network.enable is not implemented for a target (#30727) 2024-12-09 09:44:05 -07:00
Ryan Manuel 9fda261dde chore: upgrade electron to 32.2.0 (#30394)
* chore: upgrade electron to 32.2.0 -- run ci

* fix node versions

* fix build

* fix evil-dns

* various fixes

* fix srcdoc

* various fixes

* update package.json

* update yarn.lock

* various fixes

* fix integrity check

* fix binary verification

* various fixes

* update yarn.lock

* fix typo

* fix lock file

* fix tests

* fix tests

* various fixes

* various fixes

* various fixes

* fix stuff

* fix things

* try to fix errors

* fix

* updates

* add yarn berry

* upgrade electron

* attempt with gcc

* blank

* update arm64 executor

* try to fix the arm64 issue

* fix arm64

* bump cache

* attempt to fix arm64 again

* attempt to fix arm64 again

* fix darwin problems

* merge release/14.0.0

* update yarn.lock

* blank -- run ci

* blank

* blank

* blank

* try something

* try something

* clean up

* blank

* try to fix sessions issue

* fixes

* get more info

* get more info

* try something

* fix

* try something

* try something

* try something

* tweak

* one more thing

* let us see if this works

* blank

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* Apply suggestions from code review

* Apply suggestions from code review

* Update cli/CHANGELOG.md

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* Update cli/CHANGELOG.md

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* Update CHANGELOG.md

* Update cache-version.txt

* fix nx (maybe)

* Update package.json

* try something

* Update packages/app/src/runner/aut-iframe.ts

* bump version

* try to bust cache

* try to invalidate cache

* Update cli/CHANGELOG.md

* suppress benign warnings

* Apply suggestions from code review

* PR comments

* PR comment

* Apply suggestions from code review

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* Update cli/CHANGELOG.md

Co-authored-by: Matt Schile <mschile@cypress.io>

* update debug scenario 4 regex

* Update scripts/binary/trigger-publish-binary-pipeline.js

---------

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Matt Schile <mschile@cypress.io>
2024-10-29 14:55:26 -05:00
Jennifer Shehane 7f6e0309a0 breaking: remove deprecated before:browser:launch signature code that allowed Arrays (#30460)
* chore: release 13.15.1 (#30454)

* chore: Update Chrome (beta) to 131.0.6778.13 (#30451)

Co-authored-by: cypress-bot[bot] <41898282+cypress-bot[bot]@users.noreply.github.com>

* remove deprecated before:browser:launch signature code

* Update changelog

* Update snapshots & failing tests

BREAKING: remove deprecated before:browser:launch signature code that allowed Arrays

* Add back options

* update test spec to use non deprecated before:browser:launch signature

* removed test for deprecated before:browser:launch signature

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: cypress-bot[bot] <41898282+cypress-bot[bot]@users.noreply.github.com>
2024-10-28 10:18:09 -04:00
Ryan Manuel 81aee0e184 Merge branch 'develop' into release/14.0.0 2024-10-22 08:22:25 -05:00
Bill Glesias aafac6a610 chore: add graphql schema update and wrap process.kill to swallow esrch error [run ci] (#30434) 2024-10-21 15:26:40 -04:00
Bill Glesias 05333076c6 chore: gracefully handle CDP address not returning from webdriver capabilities, prompting a browser relaunch (#30393)
* chore: gracefully handle CDP address not returning from webdriver capabilities, prompting a browser relaunch

Update packages/server/lib/browsers/firefox.ts

add inline comment to github comment thread [run ci]

strongly type errors more consistently [run ci]

* add test for firefox cdp error for visual snapshot [run ci]
2024-10-18 23:37:37 -04:00
Ryan Manuel ce67a9eaf5 fix merge 2024-10-18 14:08:52 -05:00
Ryan Manuel 23904b63d3 chore: merge develop 2024-10-18 13:13:40 -05:00
Bill Glesias 0e316966af misc: implement webdriver on top of geckodriver in order to reduce overhead maintenance and code (#30324)
* misc: implement webdriver npm package as the client for the webdriver specification

* misc: go back to xulstore to save browser preferences [run ci]

* add changelog [run ci]

* chore: fix screenshot resolution [run ci]

* fix check-ts issues [run ci]

* run windows ci [run ci]

* run ci

* add comments [run ci]

* build binaries for webdriver impl [run ci]

* fix Cypress namespace missing issue. see https://github.com/cypress-io/cypress/pull/30331/commits/6d7ba97c2562054e11983e8bfed576f0fa3ee37b

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* patch edgedriver and preserve dependency paths for webdriver so they are included in the binary [run ci]

* fix issues with firefox profile not being created in open mode when old profile exists from previous cypress versions where they are no longer compatible [run ci]

* address comments that came up in review [run ci]

* see if this fixes extension test [run ci]

* make sure process kill emits the exit event [run ci]

* update geckodriver to include contribution patch to types [run ci]

* fix misapplication of geckodriver package (accidentally deleted) [run ci]

* empty commit to trigger ci [run ci]

* address comments from code review [run ci]

---------

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2024-10-15 11:18:14 -04:00
Jennifer Shehane 93e53837a4 breaking: remove log:memory:pressure and firefox:force:gc APIs (#30331)
* remove foxdriver and force:gc/log:memory:pressure APIs

* Add changelog entry

* remove patched foxdriver file

* define types/spec FoundSpec without ref to Cypress namespace

* args

* chore: update unit test to still throw firefox cannot connect error if CDP fails to connect instead of the rtrying socket, which is no longer used when connecting to firefox

* Remove firefox-memory system test

---------

Co-authored-by: Cacie Prins <cacie@cypress.io>
Co-authored-by: AtofStryker <bglesias@gmail.com>
2024-10-03 15:11:36 -04:00
Bill Glesias af3839d990 misc: replace marionette-client with geckodriver as b2g marionette client is no longer supported (#30250)
* misc: replace marionette-client with geckodriver as b2g marionette client is no longer supported [run ci]

* install pump [run ci]

* refactor to have geckodriver launch the browser and split out webdriver to own class [run ci]

fix other failing tests [run ci]

fix other failing tests [run ci]

pass env variables to firefox

* fix sigkill / treekill issues on windows with firefox binary being a dangling process [run ci]

* fix issue where browser in headed mode was not starting maximized [run ci]

* stub firefox_spec added deps different to get type inference

* add comment to geckodriver patch

* move capabilities to verbose debug statement

* update changelog

* address comments from code review

* add pending for changelog

* update with suggestions from code review

* remove debug enable as the process needs to be bound to stderr and stdout

* add comment on why we need to bind

* add comments from code review

* address comments from code review

* make sure sessionId is set
2024-09-30 12:19:03 -04:00
Bill Glesias c17d1ffbf3 fix: update chrome to 128 firefox to 130 inside Cypress tests in CircleCI (#30245)
* update docker image to chrome 128 and firefox 130 [run ci]

* fix: fix checkbox click events for firefox 129 and up [run ci]

* Update system-tests/lib/normalizeStdout.ts

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

* Update system-tests/lib/normalizeStdout.ts

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-09-17 17:42:44 -04:00
Cacie Prins bbe53286cb fix: WebSocket Connection Closed crashing from BrowserCriClient (#30174)
* catch Fetch.enable errors on extra target in browser CRI

* changelog

* changelog

* changelog

* Update packages/server/test/unit/browsers/browser-cri-client_spec.ts

Co-authored-by: Bill Glesias <bglesias@gmail.com>

* use try/catch instead of .catch for wider unit test support

---------

Co-authored-by: Bill Glesias <bglesias@gmail.com>
2024-09-03 18:25:40 -04:00