Maintenance: Upgrade to React 16.7, add RollbarErrorBoundary #2397
Who is this PR for?
What problem does this PR fix?
We don't have good visibility into certain kinds of errors within React components.
What does this PR do?
Upgrades React-related dependencies from 15.4 to 16.7. Adds
Also upgrades a bunch of libraries in the process (eg, babel versions).
Which features or pages does this PR touch?
Does this PR use tests to help verify we can deploy these changes quickly and confidently?
Okay, so this does a few other things now. Updates to Babel 7, to resolve problems with the Jest config that didn't surface locally but did in Travis. In the process of trying to understand why the Travis config was different, I made three changes to the build config.
First, I updated the build to split the JS and Ruby tests, and parallelize them across VMs. Second, I updated the way the build cache works for yarn. These speed things up a minute or two, but not much. I tried unsuccessfully to get Travis to cache Ruby gems, since those take 2.5min to install, but can't get this to work with
This also surfaced that the Travis env set a timezone different than in production, and so I updated tests to all run in UTC to match the production deployment. This updates specs that were written to run in