packager: introducing async/await, return of the yarn

Summary:
The first time I tried to commit this changeset, it was causing many new packages to be installed, because the dependency would depend on newer versions that what we have installed. So, I had made a diff so upgrade all the babel packages. Unfortunately this caused some problem as the newer versions of Babel are more strict on some syntaxes. Of course, these have to be addressed, but I don't want this changeset to be coupled with Babel upgrades and the issues that arise from it.

So instead, I decided to install the slightly older version of the async-to-generator module. At first I tried with just doing:

    yarn add babel-plugin-transform-async-to-generator@6.16.0

But, `yarn` is stubborn: because this module depends on a caret version of `babel-helper-remap-async-to-generator`, it installs the very last version of it, that itself needs more recent versions of other Babel modules. So, instead, I add to install a slightly older version of the dependency manually, then then the plugin:

    yarn add babel-helper-remap-async-to-generator@6.16.0
    yarn add babel-plugin-transform-async-to-generator@6.16.0

This allows us to have a `yarn.lock` with only a minimal amount of changes, and uncouple this change from any Babel upgrades. Because we only have a few new modules, the `node_modules` folder also stays the same, 133M, and it gives us confidence this will not cause significant startup time regressions.

Reviewed By: cpojer

Differential Revision: D4578733

fbshipit-source-id: deb0f720b895b7196aaf432adec3e56f18663940
This commit is contained in:
Jean Lauliac 2017-02-20 08:35:57 -08:00 committed by Facebook Github Bot
parent 6ac6bf007a
commit 1a5b56d070
2 changed files with 2 additions and 0 deletions

View File

@ -128,6 +128,7 @@
"babel-generator": "^6.21.0", "babel-generator": "^6.21.0",
"babel-plugin-external-helpers": "^6.18.0", "babel-plugin-external-helpers": "^6.18.0",
"babel-plugin-syntax-trailing-function-commas": "^6.20.0", "babel-plugin-syntax-trailing-function-commas": "^6.20.0",
"babel-plugin-transform-async-to-generator": "6.16.0",
"babel-plugin-transform-flow-strip-types": "^6.21.0", "babel-plugin-transform-flow-strip-types": "^6.21.0",
"babel-plugin-transform-object-rest-spread": "^6.20.2", "babel-plugin-transform-object-rest-spread": "^6.20.2",
"babel-polyfill": "^6.20.0", "babel-polyfill": "^6.20.0",

View File

@ -26,6 +26,7 @@ function config(onlyList) {
'transform-flow-strip-types', 'transform-flow-strip-types',
'syntax-trailing-function-commas', 'syntax-trailing-function-commas',
'transform-object-rest-spread', 'transform-object-rest-spread',
'transform-async-to-generator',
], ],
only: _only, only: _only,
retainLines: true, retainLines: true,