Skip to content

breaking: update execa from 1.0.0 to 4.1.0 #32238

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

Merged
merged 3 commits into from
Aug 18, 2025
Merged

Conversation

AtofStryker
Copy link
Contributor

@AtofStryker AtofStryker commented Aug 13, 2025

  • Closes N/A

Additional details

Updating execa from 1.0.0 to 4.x in the data-context and server packages, 1.0.0 was released on Nov 12, 2018.

The main breaking changes relevant to us:

Some of this code in the data-context package likely never functioned correctly. This exitCode does not exist on 1.0.0 of execa, it was added in 2.0.0, so I think this code path would never have run.

Screenshot 2024-09-23 at 11 43 38 AM

Also, since code changed to exitCode, this would be a breaking change to cy.exec() as the results object is now different.

Steps to test

How has the user experience changed?

PR Tasks

@AtofStryker AtofStryker force-pushed the breaking/update_execa branch 2 times, most recently from 36845c8 to 6b32754 Compare August 13, 2025 17:13
@AtofStryker AtofStryker force-pushed the breaking/update_execa branch from 6b32754 to 3f3cb40 Compare August 13, 2025 17:17
@AtofStryker AtofStryker changed the title DRAFT breaking: update execa from 1.0.0 to 4.1.0 breaking: update execa from 1.0.0 to 4.1.0 Aug 13, 2025
@AtofStryker AtofStryker self-assigned this Aug 13, 2025
@AtofStryker AtofStryker force-pushed the breaking/update_execa branch from 3f3cb40 to ae3ce33 Compare August 13, 2025 17:42
Copy link

cypress bot commented Aug 13, 2025

cypress    Run #64719

Run Properties:  status check failed Failed #64719  •  git commit 82c4726f1c: Update cli/CHANGELOG.md
Project cypress
Branch Review breaking/update_execa
Run status status check failed Failed #64719
Run duration 18m 07s
Commit git commit 82c4726f1c: Update cli/CHANGELOG.md
Committer Jennifer Shehane
View all properties for this run ↗︎

Test results
Tests that failed  Failures 1
Tests that were flaky  Flaky 2
Tests that did not run due to a developer annotating a test with .skip  Pending 28
Tests that did not run due to a failure in a mocha hook  Skipped 0
Tests that passed  Passing 787
View all changes introduced in this branch ↗︎
UI Coverage  61.84%
  Untested elements 27  
  Tested elements 47  
Accessibility  99%
  Failed rules  0 critical   3 serious   1 moderate   0 minor
  Failed elements 19  

Tests for review

Failed  cypress\e2e\config-warning.cy.ts • 1 failed test • launchpad-e2e

View Output

Test Artifacts
component testing dependency warnings > does not show warning for project that does not require bundler to be installed Test Replay Screenshots
Flakiness  cypress\e2e\cypress-origin-communicator.cy.ts • 1 flaky test • app-e2e

View Output

Test Artifacts
Cypress In Cypress Origin Communicator > primary origin memory leak prevention > cleans up the primaryOriginCommunicator events when navigating away from the /specs to /runs Test Replay Screenshots
Flakiness  cypress\e2e\specs_list_actual_git_repo.cy.ts • 1 flaky test • app-e2e

View Output

Test Artifacts
Spec List - Last updated with git info > shows correct git icons Test Replay Screenshots

@MikeMcC399
Copy link
Contributor

@MikeMcC399
Copy link
Contributor

@AtofStryker

cypress-io/cypress-example-kitchensink#984 has been merged and so now [email protected] has been released and the npm registry is showing it as published:

$ npm view cypress-example-kitchensink dist-tags
{ dev: '0.8.0', latest: '5.1.0' }

It probably makes sense to bump cypress-example-kitchensink to 5.1.0 in packages/example/package.json in this PR, so that the changes are synchronized.

@jennifer-shehane jennifer-shehane self-requested a review August 15, 2025 16:00
@AtofStryker AtofStryker force-pushed the breaking/update_execa branch from 2a57abb to 4c0c949 Compare August 15, 2025 16:38
cursor[bot]

This comment was marked as outdated.

cursor[bot]

This comment was marked as outdated.

@MikeMcC399
Copy link
Contributor

MikeMcC399 commented Aug 15, 2025

@AtofStryker

It looks like you're running CircleCI against your closed PR

Probably you'll need to bump that one ... to test it properly against what is published.

@AtofStryker
Copy link
Contributor Author

@AtofStryker

It looks like you're running CircleCI against your closed PR

Probably you'll need to bump that one ... to test it properly against what is published.

ah thanks for reminding me! Going to make sure the windows jobs pass first

@AtofStryker
Copy link
Contributor Author

the non kitchensink ones obviously 😂

…y.exec() object from yielding property code and instead yields exitCode
@AtofStryker AtofStryker force-pushed the breaking/update_execa branch from 142b451 to d7079e3 Compare August 15, 2025 21:41
@MikeMcC399
Copy link
Contributor

@AtofStryker

Hopefully you'll be able to get the Windows tests running soon. If not, then I'd suggest putting in an interim PR which ties the kitchensink tests back to an earlier PR cypress-io/cypress-example-kitchensink#978 before the misc.cy.js was updated to be compatible with this PR. Currently all open PRs in this repo are failing kitchensink tests.

@AtofStryker
Copy link
Contributor Author

@MikeMcC399 the windows build are passing. Currently fixing a broken launchpad test which should now be passing. This likely will be merged in today

@AtofStryker AtofStryker merged commit f6e0744 into develop Aug 18, 2025
107 of 124 checks passed
@AtofStryker AtofStryker deleted the breaking/update_execa branch August 18, 2025 15:52
@MikeMcC399
Copy link
Contributor

@AtofStryker

I'd like to test the cy..exec() change using a Cypress pre-release in the Cypress Docker build process, however I'm getting a 404 on the binary for:

npm install https://cdn.cypress.io/beta/npm/15.0.0/linux-x64/develop-f6e0744e38f6b86af49ea3b036bedbe45a672008/cypress.tgz

npm error URL: https://cdn.cypress.io/beta/binary/15.0.0/linux-x64/develop-f6e0744e38f6b86af49ea3b036bedbe45a672008/cypress.zip
npm error Error: Failed downloading the Cypress binary.
npm error Response code: 404
npm error Response message: Not Found

Can you recommend a working linux-x64 pre-release I can use, or perhaps purge the Cloudflare cache?

@AtofStryker
Copy link
Contributor Author

@AtofStryker

I'd like to test the cy..exec() change using a Cypress pre-release in the Cypress Docker build process, however I'm getting a 404 on the binary for:

npm install https://cdn.cypress.io/beta/npm/15.0.0/linux-x64/develop-f6e0744e38f6b86af49ea3b036bedbe45a672008/cypress.tgz

npm error URL: https://cdn.cypress.io/beta/binary/15.0.0/linux-x64/develop-f6e0744e38f6b86af49ea3b036bedbe45a672008/cypress.zip
npm error Error: Failed downloading the Cypress binary.
npm error Response code: 404
npm error Response message: Not Found

Can you recommend a working linux-x64 pre-release I can use, or perhaps purge the Cloudflare cache?

@MikeMcC399 is the binary still 404ing for you?

@MikeMcC399
Copy link
Contributor

@AtofStryker

is the binary still 404ing for you?

Unfortunately yes. This issue also cropped up during the 14.5.3 release (non beta binary).

Cloudflare cache believes the file doesn't exist, but if I bust the cache by appending an arbitrary query to the URL then it is able to find the zip file.

$ curl -I https://cdn.cypress.io/beta/binary/15.0.0/linux-x64/develop-f6e0744e38f6b86af49ea3b036bedbe45a672008/cypress.zip

curl -I https://cdn.cypress.io/beta/binary/15.0.0/linux-x64/develop-f6e0744e38f6b86af49ea3b036bedbe45a672008/cypress.zip?cache_bust=0
HTTP/2 404
date: Tue, 19 Aug 2025 15:04:31 GMT
content-type: text/html
content-length: 145
cf-ray: 971a8b3f6ce1eeb1-WAW
last-modified: Mon, 17 Aug 2020 20:44:06 GMT
x-amz-version-id: O7wYu3k8MISp4p_IZsFDHoAPVN3qn3tW
etag: "bffd99065e12d4ea9130af82fac8b3d0"
x-amz-error-code: NoSuchKey
x-amz-error-message: The specified key does not exist.
x-amz-error-detail-key: beta/binary/15.0.0/linux-x64/develop-f6e0744e38f6b86af49ea3b036bedbe45a672008/cypress.zip
x-amz-request-id: G3M298N0Z1G2WS3R
x-amz-id-2: z2iaFPACuJ7oRfNkrQtyXKf8HhkY709pAagowrYSBtB+6bC9JCdvl4rnIpX//3q3rfC227vxDxc=
age: 30017
cache-control: max-age=31536000
cf-cache-status: HIT
server: cloudflare

HTTP/2 200
date: Tue, 19 Aug 2025 15:04:32 GMT
content-type: application/zip
content-length: 211127906
cf-ray: 971a8b40a810b61a-WAW
x-amz-id-2: 6TbSwDUR5tu3H5gWjIdeYIwdHZG8C9kLqanycG331urBD+mdF6eZM9AZdwWH9xZ6+AIH9O4quTvdChbbnFT+Spi7/xEYbZwa
x-amz-request-id: CX8JYJY86K8WQMPM
x-amz-meta-checksum: 5f0d7e879e54e65a09c464fc7be6f8bf073f9ae236ff889b50e7621937c33b460014a04dbb303a266376b660e1e22e5a38e8981b4c834b12b3f5ebd0af1a9c3e
x-amz-meta-size: 211127906
last-modified: Mon, 18 Aug 2025 16:22:51 GMT
x-amz-expiration: expiry-date="Sat, 18 Oct 2025 00:00:00 GMT", rule-id="Purge old beta files"
x-amz-version-id: KxpJN.IxQq9M8QsuK0.AhUXwOzcyPLgj
etag: "e83f1513e3d6ab4114febcb121a613f9"
cache-control: max-age=31536000
cf-cache-status: MISS
server: cloudflare

@AtofStryker
Copy link
Contributor Author

@MikeMcC399 I just purged the zip url from the Cloudflare cache. Are you able to try now?

@MikeMcC399
Copy link
Contributor

@AtofStryker

Many thanks for the cache purge! I was able to load this into a Cypress Docker image and successfully test with it in a Cypress Docker repo clone. So I'd expect a Cypress 15 release also to pass the test-project tests when that event happens.

BTW: All of the newer beta linux-x64 zip files give 404. I don't actually need them, but I just wanted to mention it. If you think I should open a separate issue for this please let me know.

@AtofStryker
Copy link
Contributor Author

@MikeMcC399 this is unfortunately a persistent problem. We've talked about it as a team and would like to automate the cache clearing at some point. I can't remember if there is an issue for it or not, but it is on our radar.

MikeMcC399 added a commit to MikeMcC399/cypress-docker-images that referenced this pull request Aug 20, 2025
@AtofStryker AtofStryker mentioned this pull request Aug 20, 2025
39 tasks
@cypress-bot
Copy link
Contributor

cypress-bot bot commented Aug 20, 2025

Released in 15.0.0.

This comment thread has been locked. If you are still experiencing this issue after upgrading to
Cypress v15.0.0, please open a new issue.

@cypress-bot cypress-bot bot locked as resolved and limited conversation to collaborators Aug 20, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants