chore(deps): update dependency react-scripts to v2 #52
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
1.1.5->2.0.4Release Notes
facebook/create-react-app
v2.0.4Compare Source
🐛 Bug Fix
react-scriptsGENERATE_SOURCEMAPenv not working for css sourcemap (@crux153)babel-preset-react-app💅 Enhancement
create-react-appreact-scripts.mjssupport back to webpack (@Timer)📝 Documentation
react-scripts🏠 Internal
Committers: 11
v2.0.3Compare Source
Inside any created project that has not been ejected, run:
or
If you previously ejected but now want to upgrade, one common solution is to find the commits where you ejected (and any subsequent commits changing the configuration), revert them, upgrade, and later optionally eject again. It’s also possible that the feature you ejected for (maybe Sass or CSS Modules?) is now supported out of the box. You can find a list of notable new features in the Create React App 2.0 blog post.
Breaking Changes
Like any major release,
react-scripts@2.0contains a few breaking changes. We expect that they won't affect every user, but we recommend to scan over these sections to see if something is relevant to you. If we missed something, please file a new issue.Node 6 is no longer supported
Please upgrade to Node 8 (LTS) or later.
Polyfills for IE 9, IE 10, and IE 11 are no longer included by default (but you can opt in!)
We have dropped default support for Internet Explorer 9, 10, and 11. If you still need to support these browsers, follow the instructions below.
First, install
react-app-polyfill:or
Next, place one of the following lines at the very top of
src/index.js:You can read more about these polyfills here.
Dynamic
import()of a CommonJS module now has a.defaultpropertyWebpack 4 changed the behavior of
import()to be closer in line with the specification.Previously, importing a CommonJS module did not require you specify the default export. In most cases, this is now required.
If you see errors in your application about
... is not a function, you likely need to update your dynamic import, e.g.:require.ensure()is superseded by dynamicimport()We previously allowed code splitting with a webpack-specific directive,
require.ensure(). It is now disabled in favor ofimport(). To switch toimport(), follow the examples below:Single Module
Multiple Module
The default Jest environment was changed to
jsdomLook at the
testentry in thescriptssection of yourpackage.json.Here's a table how to change it from "before" and "after", depending on what you have there:
react-scripts test --env=jsdomreact-scripts testreact-scripts testreact-scripts test --env=nodeObject
proxyconfiguration is superseded bysrc/setupProxy.jsTo check if action is required, look for the
proxykey inpackage.jsonand follow this table:proxykey inpackage.jsonproxyis a string (e.g.http://localhost:5000)proxyis an objectIt's worth highlighting: if your
proxyfield is astring, e.g.http://localhost:5000, or you don't have it, skip this section. This feature is still supported and has the same behavior.If your
proxyis an object, that means you are using the advanced proxy configuration. It has become fully customizable so we removed the limited support for the object-style configuration. Here's how to recreate it.First, install
http-proxy-middlewareusing npm or Yarn:or
Next, create
src/setupProxy.jsand place the following contents in it:Now, migrate each entry in your
proxyobject one by one, e.g.:Place entries into
src/setupProxy.jslike so:You can also use completely custom logic there now! This wasn't possible before.
.mjsfile extension support is removedChange the extension of any files in your project using
.mjsto just.js.It was removed because of inconsistent support from underlying tools. We will add it back after it stops being experimental, and Jest gets built-in support for it.
PropTypesdefinitions are now removed in productionNormally, this shouldn't affect your logic and should make the resulting bundle smaller. However, you may be relying on PropTypes definition for production logic. This is not recommended, and will break now. If a library does it, one possible solution is to file an issue in it with a proposal to use a different field (not
propTypes) to signal that the declaration needs to be retained.Anything missing?
This was a large release, and we might have missed something.
Please file an issue and we will try to help.
Renovate configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻️ Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "
rebase!".🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Renovate Bot. View repository job log here.