-
Notifications
You must be signed in to change notification settings - Fork 294
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
Update Puppeteer #5862
Comments
@tofumatt @aaemnnosttv could you please check AC and notes in IB and give me your thumb up if it looks good to you? |
@eugene-manuilov SGTM, let's give it a try 👍 |
After testing this it's definitely not simple to jump straight to the latest version of puppeteer. However splitting the E2E infrastructure unlocks the upgrade pathway. I suggest we take the approach of #6357, by creating tickets to upgrade to the next version only, and once finishing each version upgrade, opening a new ticket to work on the next major version upgrade. Merging the attached PR, will get us to these versions:
It also adds the ability to set a new node version in |
I think this ticket will be addressed when we work on the #10013. Perhaps we should close this one or priorities that one to complete first and then decide whether to close this one. |
Hey @eugene-manuilov, based on the comment on the IB, the test PR #10020 does successfully split the E2E package to it's own package.json and updates the E2E workflow to be able to switch node versions and install it's own packages and run tests in this location. If we close this issue I suggest linking the PR #10020 in a comment or the description as this could shortcut some of the requirements in that ticket. Also in the experimentation in this ticket I found that with a separate package.json we can upgrade the packages as follows without all E2E tests failing:
So we could do that there then create work as we are doing in #6357 by creating a string of follow up issues "Upgrade puppeteer to the next major version". |
Feature Description
While working with #5154, we noticed that the Puppeteer version being used is quite outdated. As a result, we're not able to use new methods like
waitForNetworkIdle
which were introduced in the newer versions. We should try to update Puppeteer (and preferably its related packages) to the latest version without breaking anything.Do not alter or remove anything below. The following sections will be managed by moderators only.
Acceptance criteria
Implementation Brief
Some thoughts to IB author:
Since we use puppeteer as a direct dependency for e2e tests only, we can probably decouple e2e related scripts and dependencies and put them within e2e tests folder as a separate package.json file. In this case, these dependencies won't conflict with the dependencies that we need for development and storybook stories and upgrade can go smoother. Of course, this will require updating e2e workflows to account for the new location of e2e node modules.
Review and merge the draft PR.
Ignore the
tests/e2e
directory from thenpm run lint:js
command using the.eslintignore
, create a new lint script within thetests/e2e
directory and add a new action within.github/workflows/js-css-lint-test.yml
to run this lint check remembering to switch node version before running this lint.Create a follow up issue to investigate upgrading to the next puppeteer version ~v12
Test Coverage
QA Brief
Changelog entry
The text was updated successfully, but these errors were encountered: