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

Scripts: Upgrade puppeteer dependency #20268

Closed
wants to merge 2 commits into from
Closed

Conversation

gziolo
Copy link
Member

@gziolo gziolo commented Feb 17, 2020

Description

I have some trouble with upgrading Puppeteer in #20215 so I want to do it in smaller steps.

The bundled puppeteer dependency has been updated from requiring ^2.0.0 to requiring ^2.1.1. It uses Chromium v80 instead of Chromium v79. See the full list of changes.

@gziolo
Copy link
Member Author

gziolo commented Feb 17, 2020

There are the same errors reported as in #20215

 adding inline tokens › should insert inline image
1025
1026    TimeoutError: waiting for selector ".media-modal li[aria-label="44d63e16-126e-4a32-8fe2-4e153365622e"]" failed: timeout 30000ms exceeded
1027
1028      44 | 		const filename = uuid();
1029      45 | 		const tmpFileName = path.join( os.tmpdir(), filename + '.png' );
1030    > 46 | 		fs.copyFileSync( testImagePath, tmpFileName );
1031         | 		             ^
1032      47 | 		await inputElement.uploadFile( tmpFileName );
1033      48 | 
1034      49 | 		// Wait for upload.
FAIL packages/e2e-tests/specs/editor/blocks/classic.test.js (38.322s)
1016  Classic
1017    ✓ should be inserted (3942ms)
1018    ✕ should insert media, convert to blocks, and undo in one step (33686ms)
1019
1020  ● Classic › should insert media, convert to blocks, and undo in one step
1021
1022    TimeoutError: waiting for selector ".media-modal li[aria-label="2a200fd2-818c-4545-b2c0-67a8dc03da8d"]" failed: timeout 30000ms exceeded
1023
1024      60 | 			'assets',
1025      61 | 			'10x10_e2e_test_image_z9T8jK.png'
1026    > 62 | 		);
1027         | 		  ^
1028      63 | 		const filename = uuid();
1029      64 | 		const tmpFileName = path.join( os.tmpdir(), filename + '.png' );
1030      65 | 		fs.copyFileSync( testImagePath, tmpFileName );
FAIL packages/e2e-tests/specs/editor/various/manage-reusable-blocks.test.js (30.795s)
1038  Managing reusable blocks
1039    ✕ Should import reusable blocks (30064ms)
1040
1041  ● Managing reusable blocks › Should import reusable blocks
1042
1043    TimeoutError: waiting for selector ".notice-success" failed: timeout 30000ms exceeded
1044
1045      43 | 			'..',
1046      44 | 			'assets',
1047    > 45 | 			'greeting-reusable-block.json'
1048         | 			            ^
1049      46 | 		);
1050      47 | 		const input = await page.$( '.list-reusable-blocks-import-form input' );
1051      48 | 		await input.uploadFile( testReusableBlockFile );

@gziolo
Copy link
Member Author

gziolo commented Feb 17, 2020

It's a known issue in Puppeteer, related issues: puppeteer/puppeteer#5363, puppeteer/puppeteer#5420. We will have to wait for 2.1.2 to be rolled out.

@gziolo gziolo added the [Status] Blocked Used to indicate that a current effort isn't able to move forward label Feb 17, 2020
@aduth
Copy link
Member

aduth commented Feb 26, 2020

Feel free to request my review once the fixed version of Puppeteer is released and this pull request is updated.

@aduth
Copy link
Member

aduth commented Mar 11, 2020

Looking at the install script code, if the issue is caused by newer version of Chromium, I wonder if we could pin it to a revision from an earlier version (e.g. the version we're currently on).

PUPPETEER_CHROMIUM_REVISION=722234 node install.js

@gziolo
Copy link
Member Author

gziolo commented Mar 13, 2020

Looking at the install script code, if the issue is caused by newer version of Chromium, I wonder if we could pin it to a revision from an earlier version (e.g. the version we're currently on).

PUPPETEER_CHROMIUM_REVISION=722234 node install.js

Interesting idea. Trying with 3e7f08c.

@github-actions
Copy link

Size Change: 0 B

Total Size: 856 kB

ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1.01 kB 0 B
build/annotations/index.js 3.43 kB 0 B
build/api-fetch/index.js 3.39 kB 0 B
build/autop/index.js 2.58 kB 0 B
build/blob/index.js 620 B 0 B
build/block-directory/index.js 6.02 kB 0 B
build/block-directory/style-rtl.css 760 B 0 B
build/block-directory/style.css 760 B 0 B
build/block-editor/index.js 100 kB 0 B
build/block-editor/style-rtl.css 10.7 kB 0 B
build/block-editor/style.css 10.7 kB 0 B
build/block-library/editor-rtl.css 7.23 kB 0 B
build/block-library/editor.css 7.24 kB 0 B
build/block-library/index.js 111 kB 0 B
build/block-library/style-rtl.css 7.38 kB 0 B
build/block-library/style.css 7.39 kB 0 B
build/block-library/theme-rtl.css 669 B 0 B
build/block-library/theme.css 671 B 0 B
build/block-serialization-default-parser/index.js 1.65 kB 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/blocks/index.js 57.7 kB 0 B
build/components/index.js 191 kB 0 B
build/components/style-rtl.css 15.5 kB 0 B
build/components/style.css 15.5 kB 0 B
build/compose/index.js 5.76 kB 0 B
build/core-data/index.js 10.6 kB 0 B
build/data-controls/index.js 1.04 kB 0 B
build/data/index.js 8.21 kB 0 B
build/date/index.js 5.37 kB 0 B
build/deprecated/index.js 772 B 0 B
build/dom-ready/index.js 568 B 0 B
build/dom/index.js 3.06 kB 0 B
build/edit-post/index.js 91.3 kB 0 B
build/edit-post/style-rtl.css 8.64 kB 0 B
build/edit-post/style.css 8.64 kB 0 B
build/edit-site/index.js 4.64 kB 0 B
build/edit-site/style-rtl.css 2.48 kB 0 B
build/edit-site/style.css 2.48 kB 0 B
build/edit-widgets/index.js 4.45 kB 0 B
build/edit-widgets/style-rtl.css 2.58 kB 0 B
build/edit-widgets/style.css 2.58 kB 0 B
build/editor/editor-styles-rtl.css 381 B 0 B
build/editor/editor-styles.css 382 B 0 B
build/editor/index.js 43.8 kB 0 B
build/editor/style-rtl.css 3.97 kB 0 B
build/editor/style.css 3.96 kB 0 B
build/element/index.js 4.45 kB 0 B
build/escape-html/index.js 733 B 0 B
build/format-library/index.js 7.09 kB 0 B
build/format-library/style-rtl.css 502 B 0 B
build/format-library/style.css 502 B 0 B
build/hooks/index.js 1.92 kB 0 B
build/html-entities/index.js 621 B 0 B
build/i18n/index.js 3.49 kB 0 B
build/is-shallow-equal/index.js 710 B 0 B
build/keyboard-shortcuts/index.js 2.3 kB 0 B
build/keycodes/index.js 1.68 kB 0 B
build/list-reusable-blocks/index.js 2.99 kB 0 B
build/list-reusable-blocks/style-rtl.css 226 B 0 B
build/list-reusable-blocks/style.css 226 B 0 B
build/media-utils/index.js 4.85 kB 0 B
build/notices/index.js 1.57 kB 0 B
build/nux/index.js 3.01 kB 0 B
build/nux/style-rtl.css 616 B 0 B
build/nux/style.css 613 B 0 B
build/plugins/index.js 2.54 kB 0 B
build/primitives/index.js 1.49 kB 0 B
build/priority-queue/index.js 779 B 0 B
build/redux-routine/index.js 2.84 kB 0 B
build/rich-text/index.js 14.3 kB 0 B
build/server-side-render/index.js 2.55 kB 0 B
build/shortcode/index.js 1.7 kB 0 B
build/token-list/index.js 1.27 kB 0 B
build/url/index.js 4.01 kB 0 B
build/viewport/index.js 1.61 kB 0 B
build/warning/index.js 1.14 kB 0 B
build/wordcount/index.js 1.18 kB 0 B

compressed-size-action

@gziolo
Copy link
Member Author

gziolo commented Mar 13, 2020

Unfortunately, it still fails even though it downloads Chromium pinned to Puppeteer 2.0:

https://travis-ci.com/github/WordPress/gutenberg/jobs/297678868#L327

Chromium downloaded to /home/travis/build/WordPress/gutenberg/node_modules/puppeteer/.local-chromium/linux-722234

Update 1:

Something went wrong, it's the latest version 🙃

Only the following works:

PUPPETEER_CHROMIUM_REVISION=706915 npm install

I will try with the original PR.

Update 2:

puppeteer-core doesn't support PUPPETEER_CHROMIUM_REVISION at all 🙃

@gziolo
Copy link
Member Author

gziolo commented Apr 17, 2020

It looks like we can do the upgrade together with switching to puppeteer-core. Closing in favor of #20215.

@gziolo gziolo closed this Apr 17, 2020
@gziolo gziolo deleted the update/puppeteer-upgrade branch April 17, 2020 11:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Package] Scripts /packages/scripts [Status] Blocked Used to indicate that a current effort isn't able to move forward [Type] Enhancement A suggestion for improvement.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants