Skip to content
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

fix: Chrome for Testing downloads have a new URL #11923

Merged
merged 2 commits into from
Feb 17, 2024
Merged

Conversation

OrKoN
Copy link
Collaborator

@OrKoN OrKoN commented Feb 15, 2024

See GoogleChromeLabs/chrome-for-testing#108

Closes #11925

To make the older releases of @puppeteer/browsers to work with the new endpoint: use the --base-url https://storage.googleapis.com/chrome-for-testing-public parameter on the command line or the baseUrl on the InstallOptions https://pptr.dev/browsers-api/browsers.installoptions.

Copy link
Member

@mathiasbynens mathiasbynens left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM once the tests pass (which would mean the old assets have been copied over to the new bucket)

Mrtenz added a commit to MetaMask/snaps that referenced this pull request Feb 15, 2024
Puppeteer is currently broken because Google Chrome moved to a new URL.

See puppeteer/puppeteer#11923.
@worenga
Copy link

worenga commented Feb 15, 2024

related #11925

@christian-bromann
Copy link
Contributor

@OrKoN is it possible to release this soonish? This is currently breaking all WebdriverIO tests for people that don't have a specific browser version defined. Also could you please backport this change to @puppeteer/browser@v1.x since we can't update @puppeteer/browser due to the fact that it dropped support for Node.js v16. WebdriverIO v8 can't drop Node.js v16 support.

@ngan
Copy link

ngan commented Feb 17, 2024

You can work around this for now, like so:

npx @puppeteer/browsers install chrome@stable --path /usr/local --base-url https://storage.googleapis.com/chrome-for-testing-public

@OrKoN
Copy link
Collaborator Author

OrKoN commented Feb 17, 2024

@christian-bromann tests do not pass yet, meaning the binaries are not back-filled at the new endpoint.

@mathiasbynens have you resumed dashboard updates before the sync was done?

@OrKoN OrKoN enabled auto-merge (squash) February 17, 2024 10:10
@OrKoN OrKoN merged commit f00a94a into main Feb 17, 2024
38 checks passed
@OrKoN OrKoN deleted the orkon/fix-download-urls branch February 17, 2024 10:17
@OrKoN
Copy link
Collaborator Author

OrKoN commented Feb 17, 2024

@mathiasbynens looks like it is been partially back-filled.

@renemadsen
Copy link

@OrKoN Will there be a new npm package soon, so we can fix all our broken ci/cd which uses WebdriverIO and in turn puppeteer?

@mathiasbynens
Copy link
Member

@mathiasbynens have you resumed dashboard updates before the sync was done?

The sync was completed last night, after which I resumed dashboard updates.

However, any existing software that uses the CfT API to get version numbers (e.g. “which version is the latest Canary?”) but hardcodes the old URL format instead of using the -with-downloads endpoints might now receive a version number for which the downloads are not available on the old host. This software must be updated.

Thanks for updating Puppeteer!

@christian-bromann
Copy link
Contributor

You can work around this for now, like so:

Thanks a lot, this will allow us to move forward without having to backport this change to v1.x.

gabrieldonadel added a commit to expo/expo that referenced this pull request Mar 15, 2024
# Why

Tests are failing to install node modules on the sdk-50 branch because
puppeteer never finishes building.


![image](https://github.com/expo/expo/assets/11707729/61dc0b50-a340-447a-aa70-90141a5df03a)

e.g.
https://github.com/expo/expo/actions/runs/8281262111/job/22679366958

It seems that there is some issue with the server not closing the
connection for the old download url after download is complete.
Puppeteer changed endpoints in
puppeteer/puppeteer#11923, which means that
versions puppeteer<22.1.0 are using the old URL. (Full details here
puppeteer/puppeteer#12094)

# How

- Updated puppeteer to  22.4.1
- Updated jest-puppeteer to 10.0.1

# Test Plan

CI should. be green

# Checklist

<!--
Please check the appropriate items below if they apply to your diff.
This is required for changes to Expo modules.
-->

- [ ] Documentation is up to date to reflect these changes (eg:
https://docs.expo.dev and README.md).
- [ ] Conforms with the [Documentation Writing Style
Guide](https://github.com/expo/expo/blob/main/guides/Expo%20Documentation%20Writing%20Style%20Guide.md)
- [ ] This diff will work correctly for `npx expo prebuild` & EAS Build
(eg: updated a module plugin).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug]: Reliable Browser Download Broken
6 participants