Skip to content

Commit 33223b6

Browse files
authored
Merge branch 'develop' into issue-28123
2 parents 5dd3010 + e96593b commit 33223b6

File tree

27 files changed

+374
-225
lines changed

27 files changed

+374
-225
lines changed

.github/workflows/update_v8_snapshot_cache.yml

+8-2
Original file line numberDiff line numberDiff line change
@@ -118,11 +118,17 @@ jobs:
118118
echo "BRANCH_NAME=update-v8-snapshot-cache-on-${{ env.BASE_BRANCH }}-${{ env.PLATFORM }}" >> $GITHUB_ENV
119119
echo "BRANCH_EXISTS=$(git show-ref --verify --quiet refs/remotes/origin/update-v8-snapshot-cache-on-${{ env.BASE_BRANCH }}-${{ env.PLATFORM }} && echo 'true')" >> $GITHUB_ENV
120120
shell: bash
121+
- name: Check number of existing prs
122+
id: check-number-of-existing-prs
123+
run: |
124+
echo "number_of_prs_for_branch=$(gh api '/repos/cypress-io/cypress/pulls?head=cypress-io:${{ env.BRANCH_NAME }}' --jq length)" >> $GITHUB_OUTPUT
125+
env:
126+
GH_TOKEN: ${{ secrets.BOT_GITHUB_ACTION_TOKEN }}
127+
shell: bash
121128
- name: Check need for PR or branch update
122129
id: check-need-for-pr
123130
run: |
124-
echo "number_of_prs_for_branch=$(gh api '/repos/cypress-io/cypress/pulls?head=cypress-io:${{ env.BRANCH_NAME }}' --jq length)" >> $GITHUB_OUTPUT
125-
echo "needs_pr=${{ steps.check-for-v8-snapshot-cache-changes.outputs.has_changes == 'true' && env.BRANCH_NAME != env.BASE_BRANCH && steps.check-need-for-pr.outputs.number_of_prs_for_branch == '0' }}" >> $GITHUB_OUTPUT
131+
echo "needs_pr=${{ steps.check-for-v8-snapshot-cache-changes.outputs.has_changes == 'true' && env.BRANCH_NAME != env.BASE_BRANCH && steps.check-number-of-existing-prs.outputs.number_of_prs_for_branch == '0' }}" >> $GITHUB_OUTPUT
126132
echo "needs_branch_update=${{ steps.check-for-v8-snapshot-cache-changes.outputs.has_changes == 'true' && env.BRANCH_EXISTS == 'true' }}" >> $GITHUB_OUTPUT
127133
env:
128134
GH_TOKEN: ${{ secrets.BOT_GITHUB_ACTION_TOKEN }}

browser-versions.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"chrome:beta": "131.0.6778.33",
3-
"chrome:stable": "131.0.6778.69",
2+
"chrome:beta": "132.0.6834.32",
3+
"chrome:stable": "131.0.6778.108",
44
"chrome:minimum": "64.0.3282.0"
55
}

cli/CHANGELOG.md

+17-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,23 @@
11
<!-- See the ../guides/writing-the-cypress-changelog.md for details on writing the changelog. -->
2+
## 13.16.2
3+
4+
_Released 12/17/2024 (PENDING)_
5+
6+
**Bugfixes:**
7+
8+
- Fixed an issue where targets may hang if `Network.enable` is not implemented for the target. Addresses [#29876](https://github.com/cypress-io/cypress/issues/29876).
9+
10+
## 13.16.1
11+
12+
_Released 12/03/2024_
13+
14+
**Bugfixes:**
15+
16+
- During recorded or parallel runs, execution will fail if Cypress is unable to confirm the creation of an instance instead of skipping the spec. Addresses [#30628](https://github.com/cypress-io/cypress/issues/30628).
17+
218
## 13.16.0
319

4-
_Released 11/19/2024 (PENDING)_
20+
_Released 11/19/2024_
521

622
**Features:**
723

guides/writing-the-cypress-changelog.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -57,4 +57,4 @@ At the time of the release, the releaser will:
5757
- ensure the change sections are in the correct order
5858
- ensure that the entries are ordered by impact
5959

60-
Each Cypress release results in an update to the [changelog.mdx](https://github.com/cypress-io/cypress-documentation/blob/main/docs/guides/references/changelog.mdx) file in the [cypress-documentation](https://github.com/cypress-io/cypress-documentation) repository to be published on the [doc site](https://docs.cypress.io/guides/references/changelog). See [Example pull request](https://github.com/cypress-io/cypress-documentation/pull/5874) adding a new changelog section to the repository.
60+
Each Cypress release results in an update to the [changelog.mdx](https://github.com/cypress-io/cypress-documentation/blob/main/docs/app/references/changelog.mdx) file in the [cypress-documentation](https://github.com/cypress-io/cypress-documentation) repository to be published on the [doc site](https://docs.cypress.io/guides/references/changelog). See [Example pull request](https://github.com/cypress-io/cypress-documentation/pull/5965) adding a new changelog section to the repository.

npm/grep/README.md

+5-14
Original file line numberDiff line numberDiff line change
@@ -51,14 +51,10 @@ Table of Contents
5151
- [Debugging in the plugin](#debugging-in-the-plugin)
5252
- [Debugging in the browser](#debugging-in-the-browser)
5353
- [Examples](#examples)
54-
- [See also](#see-also)
5554
- [Migration guide](#migration-guide)
5655
- [from v1 to v2](#from-v1-to-v2)
5756
- [from v2 to v3](#from-v2-to-v3)
58-
- [Videos & Blog Posts](#videos--blog-posts)
59-
- [Blog posts](#blog-posts)
6057
- [Small print](#small-print)
61-
- [MIT License](#mit-license)
6258

6359
<!-- /MarkdownTOC -->
6460

@@ -117,7 +113,7 @@ registerCypressGrep()
117113
}
118114
```
119115

120-
Installing the plugin via `setupNodeEvents()` is required to enable the [grepFilterSpecs](#grepfilterspecs) feature.
116+
Installing the plugin via `setupNodeEvents()` is required to enable the [grepFilterSpecs](#pre-filter-specs-grepfilterspecs) feature.
121117

122118
## Usage Overview
123119

@@ -320,7 +316,7 @@ describe('block with config tag', { tags: '@smoke' }, () => {})
320316
--env grepTags=-@smoke
321317
```
322318

323-
See the [cypress/integration/describe-tags-spec.js](./cypress/integration/describe-tags-spec.js) file.
319+
See the [cypress/e2e/describe-tags-spec.js](./cypress/e2e/describe-tags-spec.js) file.
324320

325321
**Note:** global function `describe` and `context` are aliases and both supported by this plugin.
326322

@@ -424,7 +420,7 @@ it('runs on deploy', { tags: 'smoke' }, () => {
424420
This package comes with [src/index.d.ts](./src/index.d.ts) definition file that adds the property `tags` to the Cypress test overrides interface. Include this file in your specs or TS config settings. For example, you can load it using a reference comment
425421

426422
```js
427-
// cypress/integration/my-spec.js
423+
// cypress/e2e/my-spec.js
428424
/// <reference types="@cypress/grep" />
429425
```
430426

@@ -559,11 +555,6 @@ To see how to debug this plugin, watch the video [Debug @cypress/grep Plugin](ht
559555
- [cypress-grep-example](https://github.com/bahmutov/cypress-grep-example)
560556
- [todo-graphql-example](https://github.com/bahmutov/todo-graphql-example)
561557

562-
## See also
563-
564-
- [cypress-select-tests](https://github.com/bahmutov/cypress-select-tests)
565-
- [cypress-skip-test](https://github.com/cypress-io/cypress-skip-test)
566-
567558
## Migration guide
568559

569560
### from v1 to v2
@@ -599,5 +590,5 @@ Version >= 3 of @cypress/grep _only_ supports Cypress >= 10.
599590

600591
License: MIT - do anything with the code, but don't blame me if it does not work.
601592

602-
Support: if you find any problems with this module, email / tweet /
603-
[open issue](https://github.com/cypress-io/cypress/issues) on Github.
593+
Support: if you find any problems with this module,
594+
[open issue](https://github.com/cypress-io/cypress/issues) on GitHub.

npm/vite-dev-server/CHANGELOG.md

+7
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
# [@cypress/vite-dev-server-v5.2.1](https://github.com/cypress-io/cypress/compare/@cypress/vite-dev-server-v5.2.0...@cypress/vite-dev-server-v5.2.1) (2024-11-19)
2+
3+
4+
### Bug Fixes
5+
6+
* ensure that each js file served up by vite dev server has an inline sourcemap ([#30606](https://github.com/cypress-io/cypress/issues/30606)) ([4bf8e58](https://github.com/cypress-io/cypress/commit/4bf8e585cd68e0f5bb879a960073ed30791ebc37))
7+
18
# [@cypress/vite-dev-server-v5.2.0](https://github.com/cypress-io/cypress/compare/@cypress/vite-dev-server-v5.1.1...@cypress/vite-dev-server-v5.2.0) (2024-08-27)
29

310

npm/vite-plugin-cypress-esm/CHANGELOG.md

+7
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,10 @@
1+
# [@cypress/vite-plugin-cypress-esm-v1.1.2](https://github.com/cypress-io/cypress/compare/@cypress/vite-plugin-cypress-esm-v1.1.1...@cypress/vite-plugin-cypress-esm-v1.1.2) (2024-12-03)
2+
3+
4+
### Bug Fixes
5+
6+
* support multiple imports of one module with multiple lines ([#30314](https://github.com/cypress-io/cypress/issues/30314)) ([12df40e](https://github.com/cypress-io/cypress/commit/12df40ed8c1101c5c4053a1fe63c06fcd2809bc7))
7+
18
# [@cypress/vite-plugin-cypress-esm-v1.1.1](https://github.com/cypress-io/cypress/compare/@cypress/vite-plugin-cypress-esm-v1.1.0...@cypress/vite-plugin-cypress-esm-v1.1.1) (2024-05-10)
29

310

npm/vite-plugin-cypress-esm/cypress/component/fixtures/kitchenSink.ts

+6
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,12 @@ export const export1 = 'export1'
22

33
export const export2 = 'export2'
44

5+
export const export3 = 'export3'
6+
7+
export const export4 = 'export4'
8+
9+
export const export5 = 'export5'
10+
511
// @ts-expect-error
612
window.sideEffect = 'Side Effect'
713

npm/vite-plugin-cypress-esm/cypress/component/importSyntax.cy.ts

+63-2
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,17 @@ import { default as alias } from './fixtures/kitchenSink'
99
import defaultExport2, { export2 } from './fixtures/kitchenSink'
1010
import defaultExport3, * as name2 from './fixtures/kitchenSink'
1111
import { export1 as e1, export2 as e2 } from './fixtures/kitchenSink'
12+
import {
13+
export3,
14+
export4,
15+
} from './fixtures/kitchenSink'
16+
import {
17+
export3 as alias3,
18+
export4 as alias4,
19+
} from './fixtures/kitchenSink'
20+
import defaultExport4, {
21+
export5,
22+
} from './fixtures/kitchenSink'
1223
import './fixtures/kitchenSink'
1324

1425
// Examples for all syntax
@@ -19,6 +30,9 @@ describe('supports every combination of import syntax in a single file', () => {
1930
expect(defaultExport1).to.deep.eq({
2031
export1: 'export1',
2132
export2: 'export2',
33+
export3: 'export3',
34+
export4: 'export4',
35+
export5: 'export5',
2236
default: {
2337
export1: 'export1',
2438
export2: 'export2',
@@ -30,6 +44,9 @@ describe('supports every combination of import syntax in a single file', () => {
3044
expect(name1).to.deep.eq({
3145
export1: 'export1',
3246
export2: 'export2',
47+
export3: 'export3',
48+
export4: 'export4',
49+
export5: 'export5',
3350
default: {
3451
export1: 'export1',
3552
export2: 'export2',
@@ -38,7 +55,7 @@ describe('supports every combination of import syntax in a single file', () => {
3855
})
3956

4057
it('Import { export1 } from "./kitchenSink"', () => {
41-
expect(export1).to.deep.eq(export1)
58+
expect(export1).to.eq('export1')
4259
})
4360

4461
it('Import { export1 as alias1 } from "./kitchenSink"', () => {
@@ -56,19 +73,25 @@ describe('supports every combination of import syntax in a single file', () => {
5673
expect(defaultExport2).to.deep.eq({
5774
export1: 'export1',
5875
export2: 'export2',
76+
export3: 'export3',
77+
export4: 'export4',
78+
export5: 'export5',
5979
default: {
6080
export1: 'export1',
6181
export2: 'export2',
6282
},
6383
})
6484

65-
expect(export2).to.eq(export2)
85+
expect(export2).to.eq('export2')
6686
})
6787

6888
it('Import defaultExport3, * as name2 from "./kitchenSink"', () => {
6989
expect(defaultExport3).to.deep.eq({
7090
export1: 'export1',
7191
export2: 'export2',
92+
export3: 'export3',
93+
export4: 'export4',
94+
export5: 'export5',
7295
default: {
7396
export1: 'export1',
7497
export2: 'export2',
@@ -80,6 +103,9 @@ describe('supports every combination of import syntax in a single file', () => {
80103
expect(name2).to.deep.eq({
81104
export1: 'export1',
82105
export2: 'export2',
106+
export3: 'export3',
107+
export4: 'export4',
108+
export5: 'export5',
83109
default: {
84110
export1: 'export1',
85111
export2: 'export2',
@@ -92,6 +118,41 @@ describe('supports every combination of import syntax in a single file', () => {
92118
expect(e2).to.deep.eq(export2)
93119
})
94120

121+
it(`import {
122+
export3,
123+
export4,
124+
} from './fixtures/kitchenSink'`, () => {
125+
expect(export3).to.deep.eq('export3')
126+
expect(export4).to.deep.eq('export4')
127+
})
128+
129+
it(`import {
130+
export3 as alias3,
131+
export4 as alias4,
132+
} from './fixtures/kitchenSink'`, () => {
133+
expect(alias3).to.deep.eq(export3)
134+
expect(alias4).to.deep.eq(export4)
135+
})
136+
137+
it(`import defaultExport4, {
138+
export5,
139+
} from './fixtures/kitchenSink'`, () => {
140+
console.log(defaultExport4)
141+
expect(defaultExport4).to.deep.eq({
142+
export1: 'export1',
143+
export2: 'export2',
144+
export3: 'export3',
145+
export4: 'export4',
146+
export5: 'export5',
147+
default: {
148+
export1: 'export1',
149+
export2: 'export2',
150+
},
151+
})
152+
153+
expect(export5).to.eq('export5')
154+
})
155+
95156
it('Import "./kitchenSink"', () => {
96157
// @ts-expect-error
97158
expect(window.sideEffect).to.eq('Side Effect')

npm/vite-plugin-cypress-esm/src/index.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ export const CypressEsm = (options?: CypressEsmOptions): Plugin => {
120120

121121
// Ensure import comes at start of line *or* is prefixed by a space so we don't capture things like
122122
// `Refresh.__hmr_import('')
123-
const importRegex = /(?<=^|\s)import (.+?) from ['"](.*?)['"]/g
123+
const importRegex = /(?<=^|\s)import ([^;'"]+?) from ['"](.*?)['"]/g
124124

125125
return code.replace(
126126
importRegex,

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "cypress",
3-
"version": "13.15.2",
3+
"version": "13.16.1",
44
"description": "Cypress is a next generation front end testing tool built for the modern web",
55
"private": true,
66
"scripts": {

packages/errors/__snapshot-html__/CLOUD_CANNOT_PROCEED_IN_PARALLEL.html

+1-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/errors/__snapshot-html__/CLOUD_CANNOT_PROCEED_IN_SERIAL.html

+3-1
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/errors/src/errors.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ export const AllCypressErrors = {
175175
176176
${fmt.highlightSecondary(arg1.response)}
177177
178-
Because you passed the ${fmt.flag(`--parallel`)} flag, this run cannot proceed because it requires a valid response from our servers.
178+
Because you passed the ${fmt.flag(`--parallel`)} flag, this run cannot proceed since it requires a valid response from our servers.
179179
180180
${fmt.listFlags(arg1.flags, {
181181
group: '--group',
@@ -188,6 +188,8 @@ export const AllCypressErrors = {
188188
189189
${fmt.highlightSecondary(arg1.response)}
190190
191+
Because you passed the ${fmt.flag(`--record`)} flag, this run cannot proceed since it requires a valid response from our servers.
192+
191193
${fmt.listFlags(arg1.flags, {
192194
group: '--group',
193195
ciBuildId: '--ciBuildId',

packages/example/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
},
1616
"devDependencies": {
1717
"cross-env": "6.0.3",
18-
"cypress-example-kitchensink": "3.1.1",
18+
"cypress-example-kitchensink": "3.1.2",
1919
"gh-pages": "5.0.0",
2020
"gulp": "4.0.2",
2121
"gulp-clean": "0.4.0",

0 commit comments

Comments
 (0)