v4.4.0-beta.0
Pre-release
Pre-release
This is primarily a maintenance release that is fully backwards compatible with 4.3.1 while also improving compatibility with React 16 and preparing for the future.
The main features of this release are:
- Removed the single-child restriction in
<Router>
so you can have multiple children, provided you're using React 16 - Migrated our underlying infrastructure to use React's new context API. A HUGE thank-you to @timdorr who provided the initial work required to migrate the codebase to React's new context API (see #5908)
- Removed all traces of the deprecated
componentWillMount
andcomponentWillReceiveProps
🚨 If you were accessing our private context API your code will break. If you need stuff on context, use a <Route>
or withRouter
instead. It's all the same stuff, and that's our public API 🚨
Other housekeeping that was done:
- Migrated to use
babel-preset-env
+ a custom list of proposal plugins we use instead of the deprecatedbabel-preset-es2015
+babel-preset-stage-1
- Improved testing infrastructure. Now, instead of running a build when you're working on e.g.
react-router-dom
and you need some changes inreact-router
, you don't have to go and rebuild it to test things out. This should make the repo easier to work with - Added some more warnings in dev mode
As always, you can try everything out using the next
tag:
yarn add react-router@next
yarn add react-router-dom@next
yarn add react-router-config@next
We will be paying close attention to the feedback on this release and hope to release 4.4.0 final soon!
Enjoy 😅