react-router just published its new version 2.0.0, which is not covered by your current version range.
If this pull request passes your tests you can publish your software with the latest version of react-router – otherwise use this branch to work on adaptions and fixes.
Clear up the coupling between History and Router with simpler APIs.
Provide cleaner integrations with other libraries like Redux, Relay, Async Props etc.
Stop providing API that conceals usage of context. It is now a documented feature of React so developers using Router can implement their own opinions on how best to use context: Mixins, higher-order components, decorators, etc. React Router no longer has an opinion, but instead uses the lowest level feature of React. This project wants to be an incredibly useful routing library and doesn't want to get hung up on best-practice patterns for getting stuff from up top to down low.
Draw a clean line between what goes to Route Components as props and what goes on context.
For a lot of apps this upgrade might look like API churn. Underneath the hood there are significant differences that make integrating with the rest of the React ecosystem more straightforward. Thanks for your continued patience and support as we all build this tool together. It's hard to imagine the top-level API changing much after this. But if it does, rest assured we are committed to ...
Backwards Compatibility and Deprecation Warnings
This has been a community project from the start, we need your help making the upgrade as smooth as possible for everybody!
We have done our best to provide backwards compatibility with deprecated APIs. If you drop in v2.x into a v1.x application and it doesn't run, then there is a bug. Please open an issue when you discover what the problem is so we can get a fix out.
The deprecation warnings should also lead you to the relevant part of this document. If one doesn't, please open a pull request with a fix. Also, if any part of this document could be improved, please let us know how. Confound it, our bias is often inescapable!
A codemod is much like Babel, but instead of converting your ES2015 code to ES5 compatible syntax, it does a limited set of transformations on function names, arguments, common patterns and more. One way to think of jscodeshift (the underlying tool) is "jQuery for code". These codemods aren't bulletproof, so be sure to test your code after you run them. But they can help with upgrading a large codebase to remove deprecation warnings you're now triggering.
Hello :wave:
:rocket::rocket::rocket:
react-router just published its new version 2.0.0, which is not covered by your current version range.
If this pull request passes your tests you can publish your software with the latest version of react-router – otherwise use this branch to work on adaptions and fixes.
Happy fixing and merging :palm_tree:
GitHub Release
Read the Full Upgrade Guide
Goals
You might enjoy reading this issue: #2646
Clear up the coupling between History and Router with simpler APIs.
Provide cleaner integrations with other libraries like Redux, Relay, Async Props etc.
Stop providing API that conceals usage of
context
. It is now a documented feature of React so developers using Router can implement their own opinions on how best to use context: Mixins, higher-order components, decorators, etc. React Router no longer has an opinion, but instead uses the lowest level feature of React. This project wants to be an incredibly useful routing library and doesn't want to get hung up on best-practice patterns for getting stuff from up top to down low.Draw a clean line between what goes to Route Components as
props
and what goes oncontext
.For a lot of apps this upgrade might look like API churn. Underneath the hood there are significant differences that make integrating with the rest of the React ecosystem more straightforward. Thanks for your continued patience and support as we all build this tool together. It's hard to imagine the top-level API changing much after this. But if it does, rest assured we are committed to ...
Backwards Compatibility and Deprecation Warnings
This has been a community project from the start, we need your help making the upgrade as smooth as possible for everybody!
We have done our best to provide backwards compatibility with deprecated APIs. If you drop in v2.x into a v1.x application and it doesn't run, then there is a bug. Please open an issue when you discover what the problem is so we can get a fix out.
The deprecation warnings should also lead you to the relevant part of this document. If one doesn't, please open a pull request with a fix. Also, if any part of this document could be improved, please let us know how. Confound it, our bias is often inescapable!
Upgrade Automatically with Codemods
Using a tool called jscodeshift, we have made available some codemods for upgrading your code to the new APIs automatically: https://github.com/rackt/rackt-codemod
A codemod is much like Babel, but instead of converting your ES2015 code to ES5 compatible syntax, it does a limited set of transformations on function names, arguments, common patterns and more. One way to think of jscodeshift (the underlying tool) is "jQuery for code". These codemods aren't bulletproof, so be sure to test your code after you run them. But they can help with upgrading a large codebase to remove deprecation warnings you're now triggering.
Changes since rc6
match
(#3054)The new version differs by 353 commits .
2edf474
Version 2.0.0
6f1a7b7
put the release script back to normal
fb192a7
move all the guides into just “guides”
a759887
Merge pull request #3054 from rackt/server-basename
d4a925a
Add back basename support in match()
1a81557
Clarify catch-all route usage
cc63adb
Update CHANGES.md
05f8084
Version 2.0.0-rc6
a577990
remove while doing release candidates
1fb4f7a
Merge pull request #3031 from karenliu1/karenliu1-warning-loop
2c559b3
Prevent infinite warning loops.
fa5beda
Merge pull request #3030 from taion/use-history-2
2525fda
Use history v2 final
273c887
Merge pull request #3027 from timdorr/server-stuff
f9ea1a9
Just make it a handler function.
There are 250 commits in total. See the full diff.
This pull request was created by greenkeeper.io. It keeps your software, up to date, all the time.
Tired of seeing this sponsor message? Upgrade to the supporter plan! You'll also get your pull requests faster :zap: