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

Puppeteer E2E test: Download latest stable-channel Chromium #25395

Merged
merged 4 commits into from
Feb 2, 2023

Conversation

LeviPesin
Copy link
Contributor

Related issue: #25386 (comment)

Description

Make Puppeteer download the Chromium revision got from OmahaProxy.

@LeviPesin LeviPesin marked this pull request as draft February 1, 2023 11:36
@LeviPesin
Copy link
Contributor Author

It fails 🤷‍♂️

@LeviPesin
Copy link
Contributor Author

LeviPesin commented Feb 1, 2023

As an example...
For Linux-x64 OmahaProxy tells that the latest revisions are 1097306 (dev), 1084008 (beta), and 1070088 (stable). Chromium Browser Snapshots doesn't know any of them.
The proper stable revision seems to be 1083080 - and I can't find it in OmahaProxy data.

};
const OMAHA_PROXY = 'https://omahaproxy.appspot.com/all.json';

const chromiumChannel = 'dev'; // stable -> beta -> dev -> canary (Mac and Windows) -> canary_asan (Windows)
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@mrdoob @epreston This option is configurable -- it can be configured to be latest stable, beta, or dev version.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

From https://www.chromium.org/getting-involved/dev-channel/:

The release channels for chrome range from the most stable and tested (Stable channel) to completely untested and likely least stable (Canary channel). You can run all channels alongside all others, as they do not share profiles with one another. This allows you to play with our latest code, while still keeping a tested version of Chrome around.

  • Stable channel: This channel has gotten the full testing and blessing of the Chrome test team, and is the best bet to avoid crashes and other issues. It's updated roughly every two-three weeks for minor releases, and every 6 weeks for major releases.
  • Beta channel: If you are interested in seeing what's next, with minimal risk, Beta channel is the place to be. It's updated every week roughly, with major updates coming every six weeks, more than a month before the Stable channel will get them.
  • Dev channel: If you want to see what's happening quickly, then you want the Dev channel. The Dev channel gets updated once or twice weekly, and it shows what we're working on right now. There's no lag between major versions, whatever code we've got, you will get. While this build does get tested, it is still subject to bugs, as we want people to see what's new as soon as possible.
  • Canary build: Canary builds are the bleeding edge. Released daily, this build has not been tested or used, it's released as soon as it's built.
  • Other builds: If you're extra brave, you can download the latest working (and that's a very loose definition of working) build from download-chromium.appspot.com. You can also look for a more specific recent build by going to the Chromium continuous build waterfall, looking at the number near the top under "LKGR", and then going to this Google Storage bucket and downloading the corresponding build.
    Note: Early access releases (Canary builds and Dev and Beta channels) will be only partly translated into languages other than English. Text related to new features may not get translated into all languages until the feature is released in the Stable channel.

Copy link
Contributor

@epreston epreston Feb 1, 2023

Choose a reason for hiding this comment

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

That looks like its for people doing developing for chromium. Not people wanting to use the latest release chromium.

Unless there's some goal that requires it. Please consider configuring it to use latest release instead of Dev or Canary. It might be a lot of work debugging mystery chromium beta builds that break and fix them selves 3 times a day.

I haven't looked at this sort of thing in a while but, I wasn't sourcing development binaries for the chromium component. I think I just used a node package that was updated each release to match the browser environment shipped to users.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Ok, I will change it to stable.

@LeviPesin LeviPesin marked this pull request as ready for review February 1, 2023 12:12
@LeviPesin LeviPesin changed the title Puppeteer E2E test: Download latest dev-channel Chromium Puppeteer E2E test: Download latest stable-channel Chromium Feb 1, 2023
@mrdoob mrdoob added this to the r150 milestone Feb 2, 2023
@mrdoob mrdoob merged commit 311f464 into mrdoob:dev Feb 2, 2023
@LeviPesin LeviPesin deleted the patch-3 branch February 2, 2023 06:18
@marcofugaro
Copy link
Contributor

@LeviPesin is the canary chromium build able to generate the WebGPU examples screenshots?

@LeviPesin
Copy link
Contributor Author

No -- in Chromium WebGPU currently does not work with SwiftShader which currently is the only option in the headless mode.

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.

4 participants