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

Dynamically search for plugin-proposal-async-generator-functions #25588

Merged
merged 3 commits into from
Sep 24, 2020

Conversation

chipsnyder
Copy link
Contributor

@chipsnyder chipsnyder commented Sep 23, 2020

Description

Fixes an error related to missing module @babel/plugin-proposal-async-generator-functions
Gutenberg-Mobile wordpress-mobile/gutenberg-mobile#2662

How has this been tested?

From gutenberg-mobile:

  • npm install
  • npm start
  • Check that the editor loads
  • Stop Metro
  • npm run core start
    Check that the editor loads

Screenshots

Types of changes

Bug fix

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.

@chipsnyder chipsnyder added the Mobile App - i.e. Android or iOS Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change) label Sep 23, 2020
@chipsnyder chipsnyder requested a review from etoledom September 23, 2020 20:48
@github-actions
Copy link

github-actions bot commented Sep 23, 2020

Size Change: -8 B (0%)

Total Size: 1.17 MB

Filename Size Change
build/block-editor/index.js 128 kB -8 B (0%)
ℹ️ View Unchanged
Filename Size Change
build/a11y/index.js 1.14 kB 0 B
build/annotations/index.js 3.52 kB 0 B
build/api-fetch/index.js 3.34 kB 0 B
build/autop/index.js 2.72 kB 0 B
build/blob/index.js 620 B 0 B
build/block-directory/index.js 8.53 kB 0 B
build/block-directory/style-rtl.css 943 B 0 B
build/block-directory/style.css 942 B 0 B
build/block-editor/style-rtl.css 11.1 kB 0 B
build/block-editor/style.css 11.1 kB 0 B
build/block-library/editor-rtl.css 8.56 kB 0 B
build/block-library/editor.css 8.56 kB 0 B
build/block-library/index.js 135 kB 0 B
build/block-library/style-rtl.css 7.6 kB 0 B
build/block-library/style.css 7.59 kB 0 B
build/block-library/theme-rtl.css 741 B 0 B
build/block-library/theme.css 741 B 0 B
build/block-serialization-default-parser/index.js 1.78 kB 0 B
build/block-serialization-spec-parser/index.js 3.1 kB 0 B
build/blocks/index.js 47.5 kB 0 B
build/components/index.js 167 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 9.42 kB 0 B
build/core-data/index.js 12 kB 0 B
build/data-controls/index.js 1.27 kB 0 B
build/data/index.js 8.43 kB 0 B
build/date/index.js 31.9 kB 0 B
build/deprecated/index.js 772 B 0 B
build/dom-ready/index.js 568 B 0 B
build/dom/index.js 4.42 kB 0 B
build/edit-navigation/index.js 10.4 kB 0 B
build/edit-navigation/style-rtl.css 868 B 0 B
build/edit-navigation/style.css 871 B 0 B
build/edit-post/index.js 306 kB 0 B
build/edit-post/style-rtl.css 6.24 kB 0 B
build/edit-post/style.css 6.23 kB 0 B
build/edit-site/index.js 19.7 kB 0 B
build/edit-site/style-rtl.css 3.3 kB 0 B
build/edit-site/style.css 3.3 kB 0 B
build/edit-widgets/index.js 17.5 kB 0 B
build/edit-widgets/style-rtl.css 2.8 kB 0 B
build/edit-widgets/style.css 2.8 kB 0 B
build/editor/editor-styles-rtl.css 492 B 0 B
build/editor/editor-styles.css 493 B 0 B
build/editor/index.js 45.5 kB 0 B
build/editor/style-rtl.css 3.8 kB 0 B
build/editor/style.css 3.8 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.49 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 1.74 kB 0 B
build/html-entities/index.js 621 B 0 B
build/i18n/index.js 3.55 kB 0 B
build/is-shallow-equal/index.js 709 B 0 B
build/keyboard-shortcuts/index.js 2.39 kB 0 B
build/keycodes/index.js 1.85 kB 0 B
build/list-reusable-blocks/index.js 3.02 kB 0 B
build/list-reusable-blocks/style-rtl.css 476 B 0 B
build/list-reusable-blocks/style.css 476 B 0 B
build/media-utils/index.js 5.12 kB 0 B
build/notices/index.js 1.69 kB 0 B
build/nux/index.js 3.27 kB 0 B
build/nux/style-rtl.css 671 B 0 B
build/nux/style.css 668 B 0 B
build/plugins/index.js 2.44 kB 0 B
build/primitives/index.js 1.34 kB 0 B
build/priority-queue/index.js 789 B 0 B
build/redux-routine/index.js 2.85 kB 0 B
build/rich-text/index.js 13.7 kB 0 B
build/server-side-render/index.js 2.61 kB 0 B
build/shortcode/index.js 1.7 kB 0 B
build/token-list/index.js 1.24 kB 0 B
build/url/index.js 4.06 kB 0 B
build/viewport/index.js 1.74 kB 0 B
build/warning/index.js 1.13 kB 0 B
build/wordcount/index.js 1.17 kB 0 B

compressed-size-action

Copy link
Contributor

@etoledom etoledom left a comment

Choose a reason for hiding this comment

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

Working great on my end 🎉

Thank you @chipsnyder for this fix 🙏

@hypest
Copy link
Contributor

hypest commented Sep 24, 2020

👋 @chipsnyder (or @etoledom ), wondering if you have some insight on what's the issue here and how the fix ends up fixing it? Curious whether we missing something here 🤔

@etoledom
Copy link
Contributor

etoledom commented Sep 24, 2020

@hypest - From what I understood, previously @babel/plugin-proposal-async-generator-functions was a direct dependency of gutenberg-mobile so babel was able to find it as @babel/plugin-proposal-async-generator-functions. Now it is a dependency of @wordpress/babel-preset-default.

I don't know why this change happened, but it seems to come from this PR: #25351 (It looks like a simple version update. Npm works on mysterious ways to me).

Even though we have @wordpress/babel-preset-default as a dependency, now Babel can't find @babel/plugin-proposal-async-generator-functions directly, so we tell it the path of where to find it.

This is roughly my understand and I can be wrong, but it kinds of make sense to me.

All this info can be seen in the diff on gutenberg-mobile/package-lock.json. It was autogenerated after npm install with an updated gutenberg reff.

@chipsnyder
Copy link
Contributor Author

Hey @hypest,
@etoledom's explanation is right on for everything I found as well. The only things I would add is "lookup" needs to provide enough hints in the form of ../ to be able to find the correct node_modules folder as it seems to matter if I'm running npm start, npm run core start or running as the e2e tests.

Npm works on mysterious ways to me

Same here 😄 We also considered adding the dependency directly to gutenberg-mobile, which also worked fine. However, I feel like this update is more in line with the change that sparked the need.

@chipsnyder chipsnyder merged commit cafb7ef into master Sep 24, 2020
@chipsnyder chipsnyder deleted the fix/dynamicBabelPath branch September 24, 2020 11:34
@github-actions github-actions bot added this to the Gutenberg 9.1 milestone Sep 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Mobile App - i.e. Android or iOS Native mobile impl of the block editor. (Note: used in scripts, ping mobile folks to change)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants