-
Notifications
You must be signed in to change notification settings - Fork 8.3k
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
babel 6 upgrade #9702
babel 6 upgrade #9702
Conversation
Can one of the admins verify this patch? |
d1e8cf8
to
d9a0628
Compare
Thanks @coverslide! I'll take a look at this soon |
ed1bf96
to
b5bbc34
Compare
@spalger rebased to fix a conflict |
jenkins, test this |
2ec807e
to
b04c97b
Compare
@spalger made a few fixes, I ran locally and fails 1 selenium test, but that same test was failing on master so it may just be my machine, could we re-run jenkins on this? |
3b3e518
to
017e731
Compare
@spalger I found the issue, and now all tests pass for me! Could we check this again? Sorry, hopefully third time is the charm! It looks like the way we require ui/notifier from kbn_chrome.js still has the require(...).default bug, but I don't see the issue anywhere else. |
9732765
to
4544a20
Compare
@spalger fixed a merge conflict, any chance we can re-check this? |
4544a20
to
0eebcb5
Compare
@epixa I see the tests passed here: https://kibana-ci.elastic.co/job/elastic-kibana-pull-request/3668/ but the kibana-ci check didn't update. I think I pushed up the latest update after the check had already started. There will be no more pushes. |
jenkins, test this |
[babel] Use WIP babel-6-fix branch of babel-preset-kibana
bf49ac6
to
94c2054
Compare
@spalger awesome. I noticed one of the scripts did not run properly when tested. Looking into it. |
jenkins, test this |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
src/optimize/babel/helpers.js
Outdated
} | ||
|
||
if (!env.WEBPACK_BABEL_CACHE_DIR) { | ||
env.WEBPACK_BABEL_CACHE_DIR = fromRoot('optimize/.webpack.babelcache'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this file doesn't seem to be generating, if it's supposed to be can we add it here to play nice with package permissions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, I enabled it in dev, but it's disabled in the distributable because it creates a directory and we won't be able to ensure all of it's files are chown
ed
LGTM for core, can we make sure plugins are updated too? |
* [npm] upgrade babel The upgrade to babel 6 requires an upgrade to all of the associated modules, which meant that a few other things changed at the same time. The most notable is the way that we handle our babel-options, which is now done with an npm module and includes using the babel-loader's "presets" query string param. This meant changes to the babel_options.js module and extending it to help setting up the "babel-register" module, which was previously copy-pasted in several places. * [mtodules] upgrade to support babel6 module semantics * [eslint] fix lint errors * [babel] ignoer massive fixture files * [cli/errors] use Object.setPrototypeOf since subclassing Error is broken * [babel] Upgrading core babel libraries [babel] Use WIP babel-6-fix branch of babel-preset-kibana * Fix broken test * [babel] Reverse unnecessary module.exports changes * Fix notifier * Use babel presets and plugins directly * [babel/options] resolve preset/plugins paths for better plugin compatibility * [babel/options] use babel-preset-env for correct node settings * [babel] cache babel compilation in webpack like we thought we were
* [npm] upgrade babel The upgrade to babel 6 requires an upgrade to all of the associated modules, which meant that a few other things changed at the same time. The most notable is the way that we handle our babel-options, which is now done with an npm module and includes using the babel-loader's "presets" query string param. This meant changes to the babel_options.js module and extending it to help setting up the "babel-register" module, which was previously copy-pasted in several places. * [mtodules] upgrade to support babel6 module semantics * [eslint] fix lint errors * [babel] ignoer massive fixture files * [cli/errors] use Object.setPrototypeOf since subclassing Error is broken * [babel] Upgrading core babel libraries [babel] Use WIP babel-6-fix branch of babel-preset-kibana * Fix broken test * [babel] Reverse unnecessary module.exports changes * Fix notifier * Use babel presets and plugins directly * [babel/options] resolve preset/plugins paths for better plugin compatibility * [babel/options] use babel-preset-env for correct node settings * [babel] cache babel compilation in webpack like we thought we were
Note this is mostly piggybacking off of @spalger 's work on PR #7010 in reference to issue #5822
I rebased that branch onto master and made the necessary changes to get it working properly.
Some notes on the changes:
This PR has been linted and tested from the latest master.