Skip to content

[RNMobile] Fix random React Native E2E Tests failures with errno 134#23452

Merged
hypest merged 15 commits intomasterfrom
rnmobile/fix-macos-ci
Jun 26, 2020
Merged

[RNMobile] Fix random React Native E2E Tests failures with errno 134#23452
hypest merged 15 commits intomasterfrom
rnmobile/fix-macos-ci

Conversation

@ceyhun
Copy link
Copy Markdown
Member

@ceyhun ceyhun commented Jun 25, 2020

Description

This PR tries to fix random CI failures while bundling JS on:

  • React Native E2E Tests (iOS): example
  • React Native E2E Tests (Android): example

with the error:

info Done copying assets
 
Assertion failed: (!uv__is_closing(handle)), function uv_close, file ../deps/uv/src/unix/core.c, line 118.
 
sh: line 1:  3127 Abort trap: 6           react-native bundle --reset-cache --platform=ios --dev=false --minify false --entry-file=index.js --bundle-output=./gutenberg/packages/react-native-editor/ios/build/gutenberg/Build/Products/Release-iphonesimulator/GutenbergDemo.app/main.jsbundle --assets-dest=./gutenberg/packages/react-native-editor/ios/build/gutenberg/Build/Products/Release-iphonesimulator/GutenbergDemo.app
 
npm ERR! code ELIFECYCLE
 
npm ERR! errno 134
  • Installing watchman before bundling seems to fix the issue.
  • Removed maxWorkers: 2 parameter from metro config as well to utilize all cores when bundling and speed up the process
  • Removed DependencyGraph.js patch for metro that was introduced in Hack: patch Metro to not watch files when bundling wordpress-mobile/gutenberg-mobile#873 as a hack to patch metro to not watch files when bundling. Current 0.58.0 version of metro that we are using now automatically checks if it's running on CI via ci-info npm package and doesn't enable watch.
  • Modified React Native E2E tests runners to run on pull_request instead of push to decrease number of builds in the queue
  • Remove non-working npm run cache clean command. It should've been npm cache clean but that also throws an error with this message: As of npm@5, the npm cache self-heals from corruption issues and data extracted from the cache is guaranteed to be valid. If you want to make sure everything is consistent, use 'npm cache verify' instead. On the other hand, if you're debugging an issue with the installer, you can use 'npm install --cache /tmp/empty-cache' to use a temporary cache instead of nuking the actual one. If you're sure you want to delete the entire cache, rerun this command with --force.

How has this been tested?

On CI I was able to consistently reproduce the issue by running clean and bundle commands 25 times in a row using this script:

for i in $(seq 1 25); do npm run native clean && npm run native clean:runtime && npm run native test:e2e:bundle:ios zsh -i -c exit; done

  1. With watchman installed: https://github.com/WordPress/gutenberg/runs/804394303. Passed ✅
  2. Without watchman: https://github.com/WordPress/gutenberg/runs/806522353. Failed ❌
  3. Again with watchman installed: https://github.com/WordPress/gutenberg/runs/806756546. Passed ✅
  4. Again without watchman: https://github.com/WordPress/gutenberg/runs/807124034. Failed ❌

Screenshots

Types of changes

Bug fix (non-breaking change which fixes an issue)

Checklist:

  • My code is tested.
  • My code follows the WordPress code style.
  • My code follows the accessibility standards.
  • My code has proper inline documentation.
  • I've included developer documentation if appropriate.
  • I've updated all React Native files affected by any refactorings/renamings in this PR.

@WordPress WordPress deleted a comment from github-actions bot Jun 25, 2020
ceyhun added 2 commits June 25, 2020 13:57
This was introduced in wordpress-mobile/gutenberg-mobile#873
as hack to patch metro to not watch files when bundling. Current 0.58.0 version of
metro that we are using now automatically checks if it's running on CI via 'ci-info'
npm package and doesn't enable watch.

See: https://www.npmjs.com/package/ci-info
See: https://github.com/facebook/metro/blob/v0.58.0/packages/metro/src/node-haste/DependencyGraph.js#L96
@WordPress WordPress deleted a comment from github-actions bot Jun 25, 2020
@WordPress WordPress deleted a comment from github-actions bot Jun 25, 2020
@github-actions
Copy link
Copy Markdown

github-actions bot commented Jun 25, 2020

Size Change: +198 B (0%)

Total Size: 1.13 MB

Filename Size Change
build/autop/index.js 2.82 kB -1 B
build/block-directory/index.js 7.37 kB -1 B
build/block-editor/index.js 109 kB +371 B (0%)
build/block-editor/style-rtl.css 10.7 kB -161 B (1%)
build/block-editor/style.css 10.7 kB -159 B (1%)
build/block-library/index.js 130 kB +184 B (0%)
build/blocks/index.js 48.2 kB +2 B (0%)
build/components/index.js 197 kB +7 B (0%)
build/components/style-rtl.css 15.8 kB -20 B (0%)
build/components/style.css 15.7 kB -19 B (0%)
build/compose/index.js 9.62 kB -1 B
build/data/index.js 8.44 kB -1 B
build/edit-post/index.js 303 kB -3 B (0%)
build/edit-post/style-rtl.css 5.51 kB +3 B (0%)
build/edit-post/style.css 5.5 kB +2 B (0%)
build/edit-site/index.js 16.6 kB +1 B
build/edit-widgets/index.js 9.32 kB -1 B
build/editor/index.js 44.9 kB -2 B (0%)
build/keyboard-shortcuts/index.js 2.51 kB +1 B
build/list-reusable-blocks/index.js 3.13 kB -1 B
build/plugins/index.js 2.56 kB -1 B
build/rich-text/index.js 14 kB -2 B (0%)
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1.14 kB 0 B
build/annotations/index.js 3.62 kB 0 B
build/api-fetch/index.js 3.4 kB 0 B
build/blob/index.js 620 B 0 B
build/block-directory/style-rtl.css 941 B 0 B
build/block-directory/style.css 942 B 0 B
build/block-library/editor-rtl.css 7.59 kB 0 B
build/block-library/editor.css 7.6 kB 0 B
build/block-library/style-rtl.css 8.04 kB 0 B
build/block-library/style.css 8.04 kB 0 B
build/block-library/theme-rtl.css 730 B 0 B
build/block-library/theme.css 732 B 0 B
build/block-serialization-default-parser/index.js 1.88 kB 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/core-data/index.js 11.4 kB 0 B
build/data-controls/index.js 1.29 kB 0 B
build/date/index.js 5.47 kB 0 B
build/deprecated/index.js 772 B 0 B
build/dom-ready/index.js 569 B 0 B
build/dom/index.js 3.19 kB 0 B
build/edit-navigation/index.js 9.87 kB 0 B
build/edit-navigation/style-rtl.css 1.02 kB 0 B
build/edit-navigation/style.css 1.02 kB 0 B
build/edit-site/style-rtl.css 3.02 kB 0 B
build/edit-site/style.css 3.02 kB 0 B
build/edit-widgets/style-rtl.css 2.42 kB 0 B
build/edit-widgets/style.css 2.42 kB 0 B
build/editor/editor-styles-rtl.css 537 B 0 B
build/editor/editor-styles.css 539 B 0 B
build/editor/style-rtl.css 3.81 kB 0 B
build/editor/style.css 3.81 kB 0 B
build/element/index.js 4.65 kB 0 B
build/escape-html/index.js 733 B 0 B
build/format-library/index.js 7.73 kB 0 B
build/format-library/style-rtl.css 547 B 0 B
build/format-library/style.css 548 B 0 B
build/hooks/index.js 2.13 kB 0 B
build/html-entities/index.js 622 B 0 B
build/i18n/index.js 3.56 kB 0 B
build/is-shallow-equal/index.js 710 B 0 B
build/keycodes/index.js 1.94 kB 0 B
build/list-reusable-blocks/style-rtl.css 450 B 0 B
build/list-reusable-blocks/style.css 451 B 0 B
build/media-utils/index.js 5.29 kB 0 B
build/notices/index.js 1.79 kB 0 B
build/nux/index.js 3.4 kB 0 B
build/nux/style-rtl.css 663 B 0 B
build/nux/style.css 660 B 0 B
build/primitives/index.js 1.5 kB 0 B
build/priority-queue/index.js 789 B 0 B
build/redux-routine/index.js 2.85 kB 0 B
build/server-side-render/index.js 2.68 kB 0 B
build/shortcode/index.js 1.7 kB 0 B
build/token-list/index.js 1.28 kB 0 B
build/url/index.js 4.06 kB 0 B
build/viewport/index.js 1.85 kB 0 B
build/warning/index.js 1.14 kB 0 B
build/wordcount/index.js 1.17 kB 0 B

compressed-size-action

@ceyhun ceyhun marked this pull request as ready for review June 25, 2020 14:14
@ceyhun ceyhun requested review from cameronvoell and hypest June 25, 2020 14:14
@hypest
Copy link
Copy Markdown
Contributor

hypest commented Jun 25, 2020

Removed DependencyGraph.js patch for metro

Yay!!

@hypest
Copy link
Copy Markdown
Contributor

hypest commented Jun 25, 2020

Headsup, I'm going to restart the jobs now just for the sake of testing. Edit: all finished green ✅

@hypest hypest mentioned this pull request Jun 26, 2020
6 tasks
@ceyhun ceyhun requested a review from hypest June 26, 2020 12:38
Copy link
Copy Markdown
Contributor

@hypest hypest left a comment

Choose a reason for hiding this comment

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

LGTM!

@hypest hypest merged commit 02c8326 into master Jun 26, 2020
@hypest hypest deleted the rnmobile/fix-macos-ci branch June 26, 2020 13:40
@github-actions github-actions bot added this to the Gutenberg 8.5 milestone Jun 26, 2020
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.

2 participants