Skip to content

Commit 63c9bcc

Browse files
authored
Merge pull request #31408 from cypress-io/release/15.0.0
breaking: 15.0.0 Release
2 parents 5fde494 + f2a381c commit 63c9bcc

File tree

888 files changed

+32664
-57893
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

888 files changed

+32664
-57893
lines changed

.circleci/cache-version.txt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,2 @@
11
# Bump this version to force CI to re-create the cache from scratch.
2-
3-
7-15-2025
2+
7-16-2025-cy-15

.circleci/workflows.yml

Lines changed: 21 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ mainBuildFilters: &mainBuildFilters
3838
- /^release\/\d+\.\d+\.\d+$/
3939
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
4040
- 'update-v8-snapshot-cache-on-develop'
41-
- 'update-chrome-stable-from-136.0.7103.113-beta-from-137.0.7151.40'
41+
- 'mabel/issue-10425-studio-redesign'
4242

4343
# usually we don't build Mac app - it takes a long time
4444
# but sometimes we want to really confirm we are doing the right thing
@@ -49,11 +49,9 @@ macWorkflowFilters: &darwin-workflow-filters
4949
- equal: [ develop, << pipeline.git.branch >> ]
5050
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
5151
- equal: [ 'update-v8-snapshot-cache-on-develop', << pipeline.git.branch >> ]
52-
- equal:
53-
[
54-
'update-chrome-stable-from-136.0.7103.113-beta-from-137.0.7151.40',
55-
<< pipeline.git.branch >>
56-
]
52+
- equal: [ 'feat/support_vite_7', << pipeline.git.branch >> ]
53+
- equal: [ 'chore/test_cypress_recipes_15', << pipeline.git.branch >> ]
54+
- equal: [ 'mabel/issue-31677-reporter-redesign', << pipeline.git.branch >> ]
5755
- matches:
5856
pattern: /^release\/\d+\.\d+\.\d+$/
5957
value: << pipeline.git.branch >>
@@ -64,11 +62,7 @@ linuxArm64WorkflowFilters: &linux-arm64-workflow-filters
6462
- equal: [ develop, << pipeline.git.branch >> ]
6563
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
6664
- equal: [ 'update-v8-snapshot-cache-on-develop', << pipeline.git.branch >> ]
67-
- equal:
68-
[
69-
'update-chrome-stable-from-136.0.7103.113-beta-from-137.0.7151.40',
70-
<< pipeline.git.branch >>
71-
]
65+
- equal: [ 'feat/support_vite_7', << pipeline.git.branch >> ]
7266
- matches:
7367
pattern: /^release\/\d+\.\d+\.\d+$/
7468
value: << pipeline.git.branch >>
@@ -91,11 +85,7 @@ windowsWorkflowFilters: &windows-workflow-filters
9185
- equal: [ develop, << pipeline.git.branch >> ]
9286
# use the following branch as well to ensure that v8 snapshot cache updates are fully tested
9387
- equal: [ 'update-v8-snapshot-cache-on-develop', << pipeline.git.branch >> ]
94-
- equal:
95-
[
96-
'update-chrome-stable-from-136.0.7103.113-beta-from-137.0.7151.40',
97-
<< pipeline.git.branch >>
98-
]
88+
- equal: [ 'feat/support_vite_7', << pipeline.git.branch >> ]
9989
- matches:
10090
pattern: /^release\/\d+\.\d+\.\d+$/
10191
value: << pipeline.git.branch >>
@@ -104,15 +94,15 @@ executors:
10494
# the Docker image with Cypress dependencies and Chrome browser
10595
cy-doc:
10696
docker:
107-
- image: cypress/base-internal:20.18.1-bullseye
97+
- image: cypress/base-internal:22.15.1-bullseye
10898
# by default, we use "medium" to balance performance + CI costs. bump or reduce on a per-job basis if needed.
10999
resource_class: medium
110100
environment:
111101
PLATFORM: linux
112102

113103
kitchensink-executor:
114104
docker:
115-
- image: cypress/base-internal:20.18.1-bullseye
105+
- image: cypress/base-internal:22.15.1-bullseye
116106
# by default, we use "medium" to balance performance + CI costs. bump or reduce on a per-job basis if needed.
117107
resource_class: medium
118108
environment:
@@ -121,7 +111,7 @@ executors:
121111
# Docker image with non-root "node" user
122112
non-root-docker-user:
123113
docker:
124-
- image: cypress/base-internal:20.18.1-bullseye
114+
- image: cypress/base-internal:22.15.1-bullseye
125115
user: node
126116
environment:
127117
PLATFORM: linux
@@ -169,7 +159,7 @@ commands:
169159
name: Set environment variable to determine whether or not to persist artifacts
170160
command: |
171161
echo "Setting SHOULD_PERSIST_ARTIFACTS variable"
172-
echo 'if ! [[ "$CIRCLE_BRANCH" != "develop" && "$CIRCLE_BRANCH" != "release/"* && "$CIRCLE_BRANCH" != "update-chrome-stable-from-136.0.7103.113-beta-from-137.0.7151.40" ]]; then
162+
echo 'if ! [[ "$CIRCLE_BRANCH" != "develop" && "$CIRCLE_BRANCH" != "release/"* && "$CIRCLE_BRANCH" != "mabel/issue-10425-studio-redesign" ]]; then
173163
export SHOULD_PERSIST_ARTIFACTS=true
174164
fi' >> "$BASH_ENV"
175165
# You must run `setup_should_persist_artifacts` command and be using bash before running this command
@@ -637,24 +627,24 @@ commands:
637627
version: << parameters.google-chrome-for-testing-version >>
638628
install_chromedriver: false
639629

640-
# This code builds better-sqlite3 on Debian 10 (Buster). This is necessary because Debian 10 has the oldest glibc version (2.28) that we support.
630+
# This code builds better-sqlite3 on Debian 11 (Bullseye). This is necessary because Debian 10 has the oldest glibc version (2.31) that we support.
641631
#
642632
# Since this is running Docker remote (because the job running the command may not be using an executor with the appropriate glibc version), we need to
643633
# copy the project into the container, and copy the built plugin out of the container because the host running docker does not have access to the
644634
# project directory so volume mounts are not possible. The built plugin is copied to the project directory so it can be injected into the final binary.
645635
build-better-sqlite3:
646-
description: Build better-sqlite3 for glibc 2.28
636+
description: Build better-sqlite3 for glibc 2.31
647637
steps:
648638
- setup_remote_docker
649639
- run:
650-
name: Build better-sqlite3 for glibc 2.28
640+
name: Build better-sqlite3 for glibc 2.31
651641
command: |
652642
if [[ ! -f better_sqlite3.node ]]; then
653643
set -x
654644
apt update && apt install -y docker.io
655-
docker run -d --name better-sqlite3-builder cypress/base-internal:20.15.0-buster-python3.8-gcc-10.5 /bin/bash -c "sleep 1000000000"
645+
docker run -d --name better-sqlite3-builder cypress/base-internal:22.15.1-glibc2.31 /bin/bash -c "sleep 1000000000"
656646
docker cp ~/cypress/node_modules/better-sqlite3 better-sqlite3-builder:/better-sqlite3
657-
docker exec -it better-sqlite3-builder /bin/bash -c "cd /better-sqlite3 && source /root/.bashrc && chown -R root:root . && npm install --ignore-scripts && npx --no-install prebuild -r electron -t 33.2.1 --include-regex 'better_sqlite3.node$'"
647+
docker exec -it better-sqlite3-builder /bin/bash -c "cd /better-sqlite3 && source /root/.bashrc && chown -R root:root . && npm install --ignore-scripts && npx --no-install prebuild -r electron -t 36.4.0 --include-regex 'better_sqlite3.node$'"
658648
docker cp better-sqlite3-builder:/better-sqlite3/build/Release/better_sqlite3.node ~/cypress/node_modules/better-sqlite3/build/Release/better_sqlite3.node
659649
docker rm -f better-sqlite3-builder
660650
cp ~/cypress/node_modules/better-sqlite3/build/Release/better_sqlite3.node ~/cypress/better_sqlite3.node
@@ -688,11 +678,6 @@ commands:
688678
description: run subset of tests with injectDocumentDomain config enabled
689679
type: boolean
690680
default: false
691-
is-firefox-cdp:
692-
description: whether or not the group should be associated to the firefox CDP
693-
run or not. This is determined by the browser version.
694-
type: boolean
695-
default: false
696681

697682
steps:
698683
- restore_cached_workspace
@@ -733,9 +718,6 @@ commands:
733718
if << parameters.inject-document-domain >> ; then
734719
YARN_CMD="cypress:run:inject-document-domain"
735720
PARALLEL="--parallel --group 5x-driver-inject-document-domain-<<parameters.browser>>"
736-
elif << parameters.is-firefox-cdp >> ; then
737-
YARN_CMD="cypress:run"
738-
PARALLEL="--parallel --group 5x-driver-cdp-<<parameters.browser>>"
739721
else
740722
YARN_CMD="cypress:run"
741723
PARALLEL="--parallel --group 5x-driver-<<parameters.browser>>"
@@ -1201,23 +1183,6 @@ commands:
12011183
CYPRESS_INSTALL_BINARY=~/cypress/cypress.zip npm install --legacy-peer-deps ~/cypress/cypress.tgz
12021184
fi
12031185
working_directory: /tmp/<<parameters.repo>>
1204-
- run:
1205-
name: Scaffold new config file
1206-
working_directory: /tmp/<<parameters.repo>>
1207-
environment:
1208-
CYPRESS_INTERNAL_FORCE_SCAFFOLD: "1"
1209-
command: |
1210-
if [[ -f cypress.json ]]; then
1211-
rm -rf cypress.json
1212-
echo 'module.exports = { e2e: {} }' > cypress.config.js
1213-
fi
1214-
- run:
1215-
name: Rename support file
1216-
working_directory: /tmp/<<parameters.repo>>
1217-
command: |
1218-
if [[ -f cypress/support/index.js ]]; then
1219-
mv cypress/support/index.js cypress/support/e2e.js
1220-
fi
12211186
- run:
12221187
name: Print Cypress version
12231188
working_directory: /tmp/<<parameters.repo>>
@@ -1933,7 +1898,7 @@ jobs:
19331898
working_directory: ~/cypress
19341899
docker:
19351900
# we need an image with yarn 4 berry installed on it to run this test
1936-
- image: cypress/base-internal:20.18.1-yarn-berry
1901+
- image: cypress/base-internal:22.15.1-yarn-berry
19371902
environment:
19381903
# needed to inform the bootstrap-docker-container.sh script to link the binary in the system-test project directory
19391904
REPO_DIR: /root/cypress
@@ -1967,7 +1932,7 @@ jobs:
19671932
parallelism: 1
19681933
working_directory: ~/cypress
19691934
docker:
1970-
- image: cypress/base-internal:20.18.1-bullseye
1935+
- image: cypress/base-internal:22.15.1-bullseye
19711936
environment:
19721937
# needed to inform the bootstrap-docker-container.sh script to link the binary in the system-test project directory
19731938
REPO_DIR: /root/cypress
@@ -2170,18 +2135,6 @@ jobs:
21702135
- run-driver-integration-tests:
21712136
browser: firefox
21722137

2173-
# Runs the driver tests using firefox 134, which does NOT use WebDriver BiDi
2174-
# This is to test and make sure there aren't regressions with the old CDP driver
2175-
driver-integration-tests-firefox-cdp:
2176-
<<: *defaults
2177-
resource_class: medium+
2178-
parallelism: 5
2179-
steps:
2180-
- run-driver-integration-tests:
2181-
browser: firefox
2182-
firefox-version: "134.0.2"
2183-
is-firefox-cdp: true
2184-
21852138
driver-integration-tests-electron:
21862139
<<: *defaults
21872140
parallelism: 5
@@ -2633,7 +2586,7 @@ jobs:
26332586
<<: *defaults
26342587
resource_class: small
26352588
docker:
2636-
- image: cypress/base-internal:18.17.1
2589+
- image: cypress/base-internal:22.15.1
26372590
steps:
26382591
- maybe_skip_binary_jobs
26392592
- restore_workspace_binaries
@@ -2757,6 +2710,7 @@ jobs:
27572710
steps:
27582711
- test-binary-against-repo:
27592712
repo: cypress-example-recipes
2713+
pull_request_id: 921
27602714
command: npm run test:ci:firefox
27612715
browser: firefox
27622716

@@ -2765,6 +2719,7 @@ jobs:
27652719
steps:
27662720
- test-binary-against-repo:
27672721
repo: cypress-example-recipes
2722+
pull_request_id: 921
27682723
command: npm run test:ci:chrome
27692724
browser: chrome
27702725

@@ -2774,6 +2729,7 @@ jobs:
27742729
steps:
27752730
- test-binary-against-repo:
27762731
repo: cypress-example-recipes
2732+
pull_request_id: 921
27772733
# Split the specs up across 4 different machines to run in parallel
27782734
command: npm run test:ci -- --chunk $CIRCLE_NODE_INDEX --total-chunks
27792735
$CIRCLE_NODE_TOTAL
@@ -2922,7 +2878,6 @@ linux-x64-workflow: &linux-x64-workflow
29222878
- run-webpack-dev-server-integration-tests
29232879
- run-vite-dev-server-integration-tests
29242880
- driver-integration-tests-firefox
2925-
- driver-integration-tests-firefox-cdp
29262881
- driver-integration-tests-chrome
29272882
- driver-integration-tests-chrome-inject-document-domain
29282883
- driver-integration-tests-chrome-beta-inject-document-domain
@@ -2998,10 +2953,6 @@ linux-x64-workflow: &linux-x64-workflow
29982953
context: test-runner:cypress-record-key
29992954
requires:
30002955
- build
3001-
- driver-integration-tests-firefox-cdp:
3002-
context: test-runner:cypress-record-key
3003-
requires:
3004-
- build
30052956
- driver-integration-tests-electron:
30062957
context: test-runner:cypress-record-key
30072958
requires:
@@ -3148,7 +3099,6 @@ linux-x64-workflow: &linux-x64-workflow
31483099
- linux-lint
31493100
- percy-finalize
31503101
- driver-integration-tests-firefox
3151-
- driver-integration-tests-firefox-cdp
31523102
- driver-integration-tests-chrome
31533103
- driver-integration-tests-chrome-beta
31543104
- driver-integration-tests-chrome-inject-document-domain
@@ -3404,10 +3354,6 @@ linux-x64-contributor-workflow: &linux-x64-contributor-workflow
34043354
context: test-runner:cypress-record-key
34053355
requires:
34063356
- contributor-pr
3407-
- driver-integration-tests-firefox-cdp:
3408-
context: test-runner:cypress-record-key
3409-
requires:
3410-
- contributor-pr
34113357
- driver-integration-tests-electron:
34123358
context: test-runner:cypress-record-key
34133359
requires:
@@ -3553,7 +3499,6 @@ linux-x64-contributor-workflow: &linux-x64-contributor-workflow
35533499
- linux-lint
35543500
- percy-finalize
35553501
- driver-integration-tests-firefox
3556-
- driver-integration-tests-firefox-cdp
35573502
- driver-integration-tests-chrome
35583503
- driver-integration-tests-chrome-beta
35593504
- driver-integration-tests-electron

.github/ISSUE_TEMPLATE/1-bug-report.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ body:
4343
attributes:
4444
label: Node version
4545
description: What version of node.js are you using to run Cypress?
46-
placeholder: ex. v20.18.1
46+
placeholder: ex. v22.14.0
4747
validations:
4848
required: true
4949
- type: input

.github/ISSUE_TEMPLATE/2-memory-issue.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ body:
5151
attributes:
5252
label: Node version
5353
description: What version of node.js are you using to run Cypress?
54-
placeholder: ex. v20.18.1
54+
placeholder: ex. v22.14.0
5555
validations:
5656
required: true
5757
- type: input

.github/ISSUE_TEMPLATE/3-install-issue.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ body:
3838
attributes:
3939
label: Node version
4040
description: What version of node.js are you using to run Cypress?
41-
placeholder: ex. v20.18.1
41+
placeholder: ex. v22.14.0
4242
validations:
4343
required: true
4444
- type: dropdown

.github/workflows/snyk_sca_scan.yaml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,15 @@ on:
1111
pull_request:
1212
branches:
1313
- develop
14+
- release/*
1415
jobs:
1516
Snyk_SCA_Scan:
1617
# Skip this job on PRs from forks
1718
if: github.event.pull_request.head.repo.full_name == github.repository
1819
runs-on: ubuntu-latest
1920
strategy:
2021
matrix:
21-
node-version: [20.x]
22+
node-version: [22.x]
2223
steps:
2324
- name: Checkout
2425
uses: actions/checkout@v4
@@ -28,7 +29,7 @@ jobs:
2829
- name: Set up Node.js
2930
uses: actions/setup-node@v4
3031
with:
31-
node-version: 20
32+
node-version: 22
3233
cache: 'yarn'
3334
- name: Run yarn
3435
run: yarn

.github/workflows/snyk_static_analysis_scan.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ on:
77
pull_request:
88
branches:
99
- develop
10+
- release/*
1011
jobs:
1112
Snyk_SAST_Scan:
1213
# Skip this job on PRs from forks
@@ -21,7 +22,7 @@ jobs:
2122
- name: Set up Node.js
2223
uses: actions/setup-node@v4
2324
with:
24-
node-version: 20
25+
node-version: 22
2526
cache: 'yarn'
2627
- name: Run yarn
2728
run: yarn

.github/workflows/update_v8_snapshot_cache.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ jobs:
8989
- name: Set up Node.js
9090
uses: actions/setup-node@v4
9191
with:
92-
node-version: 20
92+
node-version: 22
9393
cache: 'yarn'
9494
- name: Run yarn
9595
# set the timeout here to try and deal with Windows slowness

.node-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
20.18.1
1+
22.15.1

.nvmrc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
22.15.1

0 commit comments

Comments
 (0)