Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Rollback PDL to stable and update fetcher to match #245

Merged
merged 4 commits into from
Oct 24, 2024

Conversation

Sytten
Copy link
Contributor

@Sytten Sytten commented Oct 24, 2024

Couple of important changes:

  • We can rely on puppeteer anymore to find our revisions, we must bruteforce it. I added a test to help us do that
  • I had to roll-back the PDL to a stable version (< r1356013), otherwise it will break everybody. Let's be careful on that, there is really no reason to be agressive on that update.
  • I added documentation on how to pick the CDP and fetcher revisions

Copy link
Owner

@mattsse mattsse left a comment

Choose a reason for hiding this comment

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

lgtm!

any additional things that should go in?

otherwise I'd do a new release with this

Comment on lines +3 to +4
// Check if the chosen revision has a build available for all platforms.
// That not always the case, that is why we need to make sure of it.
Copy link
Owner

Choose a reason for hiding this comment

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

ty

Comment on lines +6 to 23
// The chromium revision is hard to get right and the relation to the CDP revision
// even more so, so here are some guidances.
//
// We used to use the revision of Puppeteer, but they switched to chrome-for-testing.
// This means we have to check things ourself. The chromium revision should at least
// as great as the CDP revision otherwise they won't be compatible.
// Not all revisions of chromium have builds for all platforms.
//
// This is essentially a bruteforce process. You can use the test `find_revision_available`
// to find a revision that is available for all platforms. We recommend setting the `min`
// to the current CDP revision and the max to max revision of stable chromium.
// See https://chromiumdash.appspot.com/releases for the latest stable revision.
//
// In general, we should also try to ship as close as a stable version of chromium if possible.
// The CDP should also be a bit older than that stable version.
// To map a revision to a chromium version you can use the site https://chromiumdash.appspot.com/commits.

/// Currently downloaded chromium revision
Copy link
Owner

Choose a reason for hiding this comment

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

ty!

@mattsse mattsse merged commit 6f2392f into mattsse:main Oct 24, 2024
7 checks passed
@Sytten
Copy link
Contributor Author

Sytten commented Oct 24, 2024

@mattsse Just #206, it probably works as is but its kinda ugly. I wanted to write a proper deserialize method and remove the FromStr.

@Sytten
Copy link
Contributor Author

Sytten commented Oct 24, 2024

I will do a rewrite tomorrow and some testing. If you can do a pass same time tomorrow everything should be ready.

@Sytten Sytten mentioned this pull request Oct 24, 2024
@GUIpsp
Copy link

GUIpsp commented Dec 12, 2024

To me it seems like chrome-for-testing would be the most useful version to most users - specially since puppeteer switched to it.

Is there any reason chrome-for-testing can't be used by default? Licensing?
Similarly, is there a way to ask the fetcher to use chrome-for-testing?

Thanks

@Sytten
Copy link
Contributor Author

Sytten commented Dec 12, 2024

@GUIpsp There is no reason in particular, I just wrote the fetcher before it was a thing.
I am planning to add that option, I just didn't have time yet.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants