Summary:
`flow check` runs a complete Flow check.
This is good for CI, but it means every re-check after edit is as slow as first check.
I'm changing local `yarn flow` to use a Flow server instead. This should speed up rechecks locally somewhat. Still won't save us from large recheck cycles, but at least we're not starting from a clean slate every time.
I'm adding `yarn flow-ci` with old behavior for the CI.
Finally, I replaced `--merge-timeout` with an equivalent recently added config option. This ensures it's respected both for the server and for the full check. Without it, the server dies.
Pull Request resolved: https://github.com/facebook/prepack/pull/2245
Differential Revision: D8891234
Pulled By: gaearon
fbshipit-source-id: 2c309a1718ed00ca5839cb3a586386e3e779f029
Summary:
Release note: fix test262 to fail CircleCI test if not enough tests pass
The check for the number of tests that pass returned 1 to its caller, who just ignored it and then returned 0. Instead of that, now just call process.exit(1) when the check fails.
Also updated the expected number of ES6 tests that pass. It appears that updating Babel had a positive effect on those. Possibly it also causes one more ES5 test to fail when running locally (but not on Circle). That might be because of an ES5 test that now times out and an ES6 test that now does not. I have not investigated this as it seems of little importance right now.
Pull Request resolved: https://github.com/facebook/prepack/pull/2263
Reviewed By: trueadm
Differential Revision: D8859210
Pulled By: hermanventer
fbshipit-source-id: 724dcde05927cc914f6f9517f14dc230b8b0ad2e
Summary:
Release notes: upgrades Prepack to use Babel 7.0.0-beta.53
This is a big PR that updates all of Prepack to Babel 7. Babylon is now `babel/parser` and pretty much all of the the previous Babel packages are now located in scoped packages. I had to make a bunch of changes around Jest/Flow/Webpack to get this all working. The build times of building Prepack itself seem considerably faster (easily twice as fast locally). I followed most of the Babel 6 -> 7 upgrade guide from the Babel site in terms of changing nodes and type definitions to match the new ones.
Pull Request resolved: https://github.com/facebook/prepack/pull/2256
Differential Revision: D8850583
Pulled By: trueadm
fbshipit-source-id: 2d2aaec25c6a1ccd1ec0c08c5e7e2a71f78ac2d8
Summary:
This will fail CI if we forgot to run `yarn prettier` before committing.
We do the same in React repo. It prevents committing stale files that later cause unexpected changes.
Pull Request resolved: https://github.com/facebook/prepack/pull/2212
Differential Revision: D8784406
Pulled By: gaearon
fbshipit-source-id: ca948b8e088be8886c8ba865f280ba8d72750f69
Summary:
Release note: Added --expectedCounts parameter to test262-runner so that success can depend on the value of the time-out and the version of the test suite that is used.
Pull Request resolved: https://github.com/facebook/prepack/pull/2228
Differential Revision: D8775828
Pulled By: hermanventer
fbshipit-source-id: 284bdb3526467f634f41a151e3995719af751e49
Summary:
Release note: Migrate to CircleCI 2.0
Hey everyone,
If you don't know, CircleCI 1.0 [is being EOL'd](https://circleci.com/blog/sunsetting-1-0/) at the end of August. I noticed that this project uses CircleCI 1.0 and so in the spirit of open source I wanted to submit a PR to do the migration.
The **TL:DR;** of this PR is that it converts the CircleCI 1.0 configuration file into the equivalent CircleCI 2.0 configuration file. I'd say that the new config file is 99% the same software-wise. Here's the two changes:
- the Yarn version was bumped from v1.1.0 to the current version on the Docker Library Node images, which is v1.3.
- I split the running of tests and checks from a single, sequential build into 3 separate jobs.
For that latter point, I noticed that if you averaged the CircleCI 1.0 build time for this project for the last 3 passing `master` builds, the average build time is **32m 49s**. I ran this PR on CircleCI 2.0 and the average build time for the last 3 passing builds is **13m 22s**.
Basically, this PR allows this project to migrate to CircleCI 2.0 before the August 2018 EOL of 1.0 as well as decrease build times by 49%.
I'm happy to answer any questions or help with any tweaks to get this PR merged if you choose to do so.
Closes https://github.com/facebook/prepack/pull/2094
Differential Revision: D8324655
Pulled By: NTillmann
fbshipit-source-id: 239410c21fa035923ffb81f53d094c542837ab77