v4.0.0-beta.1
Pre-releaseIt's time to bump the major version on Redux! 🎉
This is the first beta release of 4.0.0. Despite the version bump, the changes are relatively minor. Most of it was covered in the 4.0 tracking issue: #1342.
The largest amount of work was done with our Typescript definitions. They have been completely overhauled, so they should work better and take advantage of all the new stuff in TS 2.x.
The other big change is we are now bundling our CommonJS and ES builds like React has done recently. This means direct, private imports (import createStore from 'redux/lib/createStore'
) will no longer work. This ensures our modules are maintaining a consistent contract with your apps and that any reorganization we choose to do internally has no effect on your usage of Redux.
We've also tightened up some behavior quirks and dropped support for IE < 11. The vast majority of apps should require no changes. But we will run through a standard RC process to gradually release this out to the world and ensure no big headaches for everyone during the holiday season.
Enjoy!
Changes
- Tons of docs updates. Thanks @markerikson and the Redux community for all your PRs!
- Make middleware API dispatch pass through all call arguments (#2560 by @Asvarox)
- Refactor applyMiddleware to reduce confusion around createStore args (#2201 by @jimbolla)
- Make bindActionCreators transparently pass
this
(#2641 by @Parakleta) - Remove @Private flag on AnyAction type definition (#2510 by @alexmngn)
- Fixed quote types inconsistency in a warning message (#2297 by @Andarist)
- Move ActionTypes to a private export (b62248b by @timdorr)
- Throw if getState, subscribe, or unsubscribe called while dispatching (#1569 by @mjw56)
- Warn when dispatching during Middleware setup (#1485 by @timdorr)
- Mapped type for combineReducers in index.d.ts (#2182 by @mkusher)
- Remove legacy jsnext entry (#2284 by @TrySound)
- Revamp TypeScript typing with more type safety (#2563 by @pelotom)
- Fix TS definitions test for new Dispatch typing (#2674 by @pelotom)
- Add DeepPartial type for preloaded state (#2679 by @aikoven)
- Bundle cjs and es formats (#2358 by @TrySound)
- REPLACE action for replaceReducers (#2673 by @timdorr)
- Update build to use babel-preset-env (#2696 by @hmillison)
- Optimize dispatch plain object check (#2599 by @timdorr)