Releases: Roblox/rodux
3.0.0
2.0.0
1.1.0
1.0.0
Initial official release!! 🎉 🎉 🎉
Rodux has been stable for a long time, so this release is more of a formality than an indicator of new functionality.
Prelease 2018-12-03
This is the first release in awhile. The next release should hopefully be v1.0.0!
This prerelease should contain no breaking changes, only bugfixes. We're publishing it to make the latest version of Rodux more accessible, since not all users are using Rojo.
Prerelease 2018-06-11
This is a slightly different prerelease approach leading up to Rodux 1.0, alongside Roact 1.0.
This release rolls up all of the changes since prerelease 2 a couple months ago:
- Added
combineReducers
utility, mirroring Redux's (#9) - Added
createReducer
utility, similar toredux-create-reducer
(#10) type
is now required as a field on all actions- Introduced middleware (#13)
- Thunks are no longer enabled by default, use
Rodux.thunkMiddleware
to add them back. - Added
Rodux.loggerMiddleware
as a simple debugger - The middleware API changed in #29 in a backwards-incompatible way!
- Middleware now run left-to-right instead of right-to-left!
- Thunks are no longer enabled by default, use
- Errors thrown in
changed
event now have correct stack traces (#27)
The next release should hopefully be 1.0!
v1.0.0 Prerelease 2
There was a release earlier today that was missing a couple of important commits. I've re-released this version to make sure those changes are in this release.
Notable Breaking Changes
- Thunks are no longer enabled by default. If you use thunks, just change the way you create your store:
-- Previously, with 1.0.0-pre1:
local store = Store.new(reducer, initialState)
-- Now, with 1.0.0-pre2:
local middlewares = {Rodux.thunkMiddleware}
local store = Store.new(reducer, initialState, middlewares)
-- If you don't use thunks, this change isn't necessary.
- Actions are now required to have a
type
field, in order to support utilities likecreateReducer
. This was already convention in both Redux and Rodux, but was never documented.
All Changes from 1.0.0 Prerelease 1
- Added concept of middleware, an optional third argument to
Store.new
. Docs coming soon! - Added
Rodux.loggerMiddleware
, for debugging actions as they're dispatched - Added
Rodux.createReducer
, which makes reducers that respond to several kinds of actions much easier to follow. It works just like theredux-create-reducer
package from npm for Redux. - Added
Rodux.combineReducers
, which works just like Redux'scombineReducers
. It makes creating a reducer that just combines a bunch of other reducers much easier and less error-prone. - Added
Rodux.thunkMiddleware
, which replaces the thunk functionality that used to be enabled by default.
Installation
Either download the source from this release and copy the lib
folder into your project (like if you're using Rojo), or insert the attached rbxmx
file into your game's place!
v1.0.0 Prerelease 1
This is the first prerelease of Rodux!
To install it into Studio, either:
- Download the source and use the
lib
directory - Download the
installer.lua
script from this release page and run it using Roblox Studio's "Run Script" menu.