Commit Graph

603 Commits

Author SHA1 Message Date
Adam Stone-Lord
a5ba8c497c internal: (studio) initialize cloud studio asynchronously (#31469)
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Matt Schile <mschile@cypress.io>
2025-04-29 09:37:44 -04:00
Bill Glesias
189bb9ee5f chore: remove experimental decorators from the repo (#31487) 2025-04-14 15:07:11 -04:00
Jennifer Shehane
6b28356878 chore: convert cache.js file within server to TypeScript (#31471)
* chore: convert cache.js file within server to TypeScript

* update cache calls and await them

* updates to imports and switching cache calls to await

* remove Partial from Allowed State

* change cache calls back to not await

* Remove dead code

* update memo.push return
2025-04-10 15:02:58 -04:00
renovate[bot]
a566242f7f dependency: update dependency semver to v7.7.1 (#31341)
* fix(deps): update dependency semver to v7.7.1

* changelog

* caret dep

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-20 13:58:02 -04:00
renovate[bot]
74ad53ab96 dependency: update dependency resolve to v1.22.10 (#31333)
* fix(deps): update dependency resolve to v1.22.10

* fix(deps): update dependency resolve to v1.22.10

* caret dep for resolve

* changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-20 11:29:01 -04:00
Sam Tsai
b303c4c6c5 fix: pass --no-experimental-require-module for node 20.19.0+ versions (#31308)
* fix: add new node 20 version

* docs: improve comments and update test node version

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-19 16:25:08 -04:00
renovate[bot]
e0efbd8599 dependency: update dependency micromatch to v4.0.8 (#31330)
* fix(deps): update dependency micromatch to v4.0.8

* caret dep

* changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-19 16:23:53 -04:00
Jennifer Shehane
60069bbd60 dependency: bump cross-fetch to 4.1.0 (#31327)
* dependency: bump cross-fetch to 4.1.0

* changelog entry
2025-03-19 13:07:30 -04:00
Ryan Manuel
9201d3280a chore: ensure that studio AI logic is disabled on non chromium based browsers (#31272)
* 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

* chore: ensure that studio llm logic is disabled on non chromium based browsers

* use canAccessStudioLLM in the component

* fix types

* fix types

* fix types

* PR comments

* fix types

* fix types

* revert type stuff

* refactor

* import type

* fix types

---------

Co-authored-by: Matthew Schile <mschile@cypress.io>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-03-14 14:20:40 -05: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
Ryan Manuel
bd4774fb57 chore: pass file preprocesor override to protocol as debug data (#31171)
* chore: set up sharing of react via module federation in studio

* chore: add ability to load types from the studio bundle

* fix build

* fix build

* fix build

* chore: pass file preprocesor override to protocol as debug data

* fix tests

* PR comments

* PR comment

* update types
2025-03-03 12:52:01 -06:00
renovate[bot]
78b372ae00 dependency: update dependency simple-git to v3.27.0 (#31198)
* fix(deps): update dependency simple-git to v3.27.0

* set dependency to caret

* yarn lock

* changelog entry

* new day, new cache

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2025-02-28 16:01:25 -05:00
Ryan Manuel
2dce6d5831 chore: add logic to dynamically load studio functionality (#31033)
* chore: add logic to dynamically load new studio functionality

* fix types

* fix tests

* fix

* fix tests

* fix tests

* additional changes to lock things down

* clean up code

* Update guides/studio-development.md

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

* Update protocol-development.md

* additional headers

* PR comments

* Update packages/server/lib/cloud/api/get_app_studio.ts

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

* Update packages/app/vite.config.mjs

* update studio/protocol development guides

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: Matt Schile <mschile@cypress.io>
2025-02-14 14:54:15 -06: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
Bill Glesias
5e7982d3d0 chore: automatically infer cypress major version from package.json version and error when no splash page exists for said major version (#30911) 2025-01-22 16:21:57 -05:00
Matt Schile
ab2f0c1fdb fix: update tsconfig files to match previous config (#30856) 2025-01-13 08:33:27 -07:00
Bill Glesias
c1a7467d7c chore: update welcome screen for Cypress 14 (#30845) 2025-01-09 15:23:10 -05:00
Jennifer Shehane
d656afa302 Merge branch 'develop' into release/14.0.0 2024-12-23 09:53:16 -05:00
Jennifer Shehane
68c5714f1a chore: Cleanup duplication across tsconfig files in packages (#30764)
* Cleanup duplication across tsconfig files in packages

* empty commit

* Add ts-ignore

* Add ts-ignore
2024-12-16 11:12:40 -05:00
Jennifer Shehane
2e5af1e624 merge develop 2024-12-11 11:09:56 -05:00
Ryan Manuel
73de0a8d4d fix: error loading config file with node 22.12.0 (#30730) 2024-12-10 19:36:17 -07:00
Matt Schile
ffefdb0f09 dependency: electron 33 upgrade (#30716) 2024-12-06 15:24:40 -07:00
Jennifer Shehane
636bed9cf7 merge develop 2024-12-02 09:42:47 -05:00
Bill Glesias
15c5761eb6 breaking: make JustInTimeCompile GA from experimentalJustInTimeCompile and default to true (#30641)
* pull support for JIT from vite since it doesn't have an affect for end users or performance (webpack only) [run ci]

rebase this

* remove the experimentalJIT flag and make it GA (default still false) [run ci]

* enable justInTimeCompile by default [run ci]

* chore: bump cache [run ci]
2024-11-21 15:25:59 -05:00
Bill Glesias
53b24b1be2 chore: update system tests to use react 18 and install latest dependencies for applicable system tests. use react18 harness before removal [run ci] (#30614) 2024-11-14 16:12:36 -05:00
Alex Schwartz
82f45c51d6 feat: added ability to specify the default browser in cypress config (#30517) 2024-11-14 12:49:32 -07:00
Bill Glesias
c695f5fa16 breaking: remove support for @vue/cli-serivce from Cypress Component Testing [run ci] (#30585) 2024-11-12 14:13:36 -05:00
Bill Glesias
37b944f9b4 breaking: remove support for create react app for component testing as it is no longer maintained [run ci] (#30558) 2024-11-07 18:02:04 -05:00
Bill Glesias
ccb6e28fe0 breaking: Cypress Component Testing no longer supports vue2 [run ci] (#30502) 2024-11-05 08:55:19 -05:00
Bill Glesias
bc39cb1103 breaking: remove nuxt2 support from Cypress Component Testing [run ci] (#30499) 2024-11-03 16:07:41 -05: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
e18e66ae0e breaking: Remove experimentalFetchPolyfill flag (#30466)
* remove experimentalFetchPolyfill

BREAKING: remove experimentalFetchPolyfill

* Add changelog entry
2024-10-28 15:07:25 -04: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 6d7ba97c25

* 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
renovate[bot]
619a9ab511 dependency: update dependency simple-git to v3.25.0 (#30076)
* empty commit

* fix(deps): update dependency simple-git to v3.25.0

* cli entry

* yarnlock

* mock out simple-git for failing unit tests

* fix yarn lock merge

* changelog

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Cacie Prins <cacie@cypress.io>
2024-10-02 10:02:22 -04:00
renovate[bot]
1228869198 fix(deps): update dependency launch-editor to v2.9.1 (#30247)
* fix(deps): update dependency launch-editor to v2.9.1

* add changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-09-18 12:43:57 -04:00
Raymond Greeley
efe577aa66 feat: Passing --browser flag alone will launch after test selection (#28538)
* Add localSettings field to OpenBrowser query

* Add wasBrowserSetInCLI as OpenBrowserList prop

* Emit launch on mount if --browser was passed

* Add entry to cli changelog

* Correct typo in changelog

* Add link to issue addressed

* Add pull request title

* Check if browser is already open before launch

* Moved features section to top of file

* Add reference to PR in changelog

* Correct unintended completion

* Add features to top of changelog

* Change prop name for convention

* Add isValidBrowser

checkes whether a cliBrowser is valid or not and
returns a boolean

* Add isValidBrowser to schema

* Use isValid browser

creates a function launchIfBrowserSetInCli that
will launch the browser if a valid browser flag
was passed to the cli

* Add to changelog.md

* Add global launch count to keep track project launch

* Make global count available to the launchPad

* Add description for globalLaunchCount

* Add globalCounnt to schema

* Remove unused import and remove unused prop

* Use launch function

* Import document and use query

* Add to changelog

* Add to existing features section

* Add to changelog

* Update changelog.md

* Add setter for launchCount and add tests

* Update changelog

* Remove extra bugfix title

* Update changelog

* Update changelog

* Update changelog

* Update changelog

* Update Changelog

* Update changelog

* Update Changelog

* Update changelog

* Fix changelog for line break error

* Update changelog

* Refactor to create single field for launching browser

* Update schema

* Refactor function to make use of single field

* Change launch count in beforeEach hook instead

* Clean up await in function

* Update changelog

* Add additional optional chaining for resiliency

* Use more precise browser launching query to fix silent bug

* Assert that launchProject hasn't been called when browser not found

* Update changelog

* Update cli/CHANGELOG.md

---------

Co-authored-by: Mark Noonan <mark@cypress.io>
Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: Matt Schile <mschile@cypress.io>
Co-authored-by: Jennifer Shehane <shehane.jennifer@gmail.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-08-27 10:22:40 -04:00
Bill Glesias
5a6b8c49cf fix: Typescript config invalid with node v22.7.0 with ESM (#30099)
* add failing system binary test [run ci]

* fix: leverage the --no-experimental-detect-module when node 22.7.0 and above is detected [run ci]

* Update cli/CHANGELOG.md

* use environment variable to mock stubbing out of typescript install in order to unit test as mocking the module seems near impossible to do correctly given the context [run ci]

* update changelog to include mention of experimental-detect-module

* make sure node version is set before comparing versions

* Revert "update changelog to include mention of experimental-detect-module"

This reverts commit 5ef8ef0e4c.

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-08-27 09:03:41 -04:00
renovate[bot]
507be6ce1b chore(deps): update babel monorepo (#30073)
* empty commit

* chore(deps): update babel monorepo

* empty commit

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* yarn

---------

Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2024-08-26 14:28:07 -04:00
Bill Glesias
57f6110d29 feat: implement JIT component experiment (#30049)
* feat: implement JIT component experiment [run ci]

* don't update the dev server unnecessarily if the run is cancelled [run ci]

* fix system test flake

* Update cli/types/cypress.d.ts

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* Update system-tests/projects/experimental-JIT/webpack/cypress/support/component-index.html

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* Update system-tests/projects/experimental-JIT/vite/cypress/support/component-index.html

Co-authored-by: Ryan Manuel <ryanm@cypress.io>

* chore: ignore node_modules for webpack dev server

* be sure to end span when throwing error

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>
2024-08-22 10:56:55 -04:00
boforetech
37394ce0c0 chore: fix some comments (#30053)
Signed-off-by: beforetech <mail@before.tech>
2024-08-19 10:28:46 -04:00
renovate[bot]
c2473c092b dependency: update dependency launch-editor to v2.8.0 (#29770)
* fix(deps): update dependency launch-editor to v2.8.0

* changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-06-28 15:05:26 -04:00
Bill Glesias
af2b764815 fix: chrome missing CRI client after browser relaunch (#29663)
* reprod browser cri crash chrome

* commit with the fix

* Add integration-like test that verifies the browser is launched with the correct arguments [run ci]
2024-06-21 13:27:06 -04:00
Bill Glesias
ee3ff8820a chore: update vite to version 5 inside the monorepo (#29617)
* chore: update babel to latest in packages and update vite to version 5, vite related vue plugins to version 5, and svg plugin to v5

update vitejs react to v5

updated vite plugins

updates unplugin-vue-components and unplugin-icons for vite

remove vite-plugin-copmponents as it is the same thing as unplugin-vue-components

update vue-i18n from beta package to released v9

get unplugin-vue-i18n to latest

add @babel/types to no rewrite [run ci]

fix typing errors [run ci]

* update snapshot [run ci]

* coerce type for compiled messages to bridge type compatibility between unplugin-vue-i18n and vue-i18n [run ci]

* chore: update babel to latest in packages and update vite to version … (#29634)

* fix vite

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

---------

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

* update other hard coded @babel/core

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

---------

Co-authored-by: Ryan Manuel <ryanm@cypress.io>
Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-06-12 16:51:50 -04:00
Bill Glesias
f3b67666a5 fix: update cypress to Typescript 5 (#29568)
* fix: update the monorepo to typescript 5

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* chore: updating v8 snapshot cache

* run ci to see problems [run ci]

* update vue-tsc and typings that conflict with update

* regen snapshot

* fix typescript errors ui test as stack trace behavior has changed

* fix server unit tests

* update cy.origin() spec based on stack traces and code frames

* update spec to include source map url

* run ci

* fix check-ts

* chore: fix system tests [run ci]

* add preprocessor tests to batteries included to exercise new logic

* run ci

* refactor unit tests to be a bit more dry

* pin typescript to ~5.4 and adjust config to ignroe deprecations but keep importsNotUsedAsValues

* add changelog entry

* add fixme issue to stack trace mismatches inside evaled context

* use import type webpack as webpack as a lib isn't actually invboked in the runner webpack config

* fix system test as adding 4 lines of comments impacts the stack trace line 4 lines (duh)

---------

Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
2024-06-04 19:17:38 -04:00
cadrake
2cf5cf89a2 chore(deps): Security upgrade micromatch from 4.0.4 to 4.0.6 (#29559)
* fix: packages/data-context/package.json to reduce vulnerabilities

The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-MICROMATCH-6838728

* yarn lock

---------

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-05-24 13:50:57 -04:00
renovate[bot]
5569da09e4 dependency: update dependency randomstring to v1.3.0 (#29503)
* fix(deps): update dependency randomstring to v1.3.0

* add changelog entry

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-05-13 11:57:54 -04:00
Matt Schile
555a9242ee fix: update firefox to close extra windows between specs (#29475) 2024-05-06 12:33:31 -06:00
cadrake
5ec744a0aa chore: Security upgrade ejs from 3.1.9 to 3.1.10 (#29439)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-EJS-6689533

Co-authored-by: snyk-bot <snyk-bot@snyk.io>
2024-04-30 16:11:43 -04:00
Bill Glesias
f14a11aecf chore: update eslint from version 7 to version 8 (#29355)
* chore: (for eslint-plugin-dev only is breaking) update eslint-plugin dev minimum to eslint 7. Remove support for coffeescript and reconfigured required peer deps

* correctly configure eslint-plugin-json-format for the monorepo and run linting on all json files (previously was not running)

* properly support no duplicate imports
2024-04-26 14:42:33 -04:00
Mike McCready
82536133a7 misc: use pnpm add for ct dependency scaffolding (#29056)
Co-authored-by: Jennifer Shehane <jennifer@cypress.io>
2024-03-12 12:59:54 -04:00