# Changelog
## 0.18.6
* Fixes inheritance for actions #678
## 0.18.5
* Updates transmitter which fixes #665
## 0.18.4
* Upgrades babel and enables loose mode so IE10 can work again.
## 0.18.3
* Removes cannot push while pushing error from transmitter.
## 0.18.2
* Added jsnext:main so you can use [rollup](https://github.com/rollup/rollup/wiki/jsnext:main) to bundle Alt. [commit](https://github.com/goatslacker/alt/commit/cc1f1b6).
* Fix returning promises from an action. [commit](https://github.com/goatslacker/alt/commit/bff1f53).
## 0.18.0
### Breaking Changes
* Removed this.dispatch from Actions [commit](https://github.com/goatslacker/alt/commit/730db950c81bcc6e46d0f943becc2fb063d27365).
**Upgrade Guide**
- Use the included codemod to [convert your actions](https://github.com/goatslacker/alt/blob/master/scripts/this-dispatch-to-return.js).
- You will need jscodeshift to run the codemod.
- `npm install jscodeshift -g`
- `jscodeshift -t scripts/this-dispatch-to-return.js your_file.js`
- I recommend you use some source control like `git` this way you can `git diff` your changes and make sure everything is ok.
- You can manually upgrade by removing `this.dispatch` from your actions and instead return your payload directly.
- If you have an async action then you can return a function.
```js
// from this
class MyActions {
someAction() {
this.dispatch(13)
}
}
// to this
class MyActions {
someAction() {
return 13
}
}
```
or
```js
// from this
class MyActions {
asyncThings() {
xhr('foo', () => {
this.dispatch(42)
})
}
}
// to this
class MyActions {
asyncThings() {
return (dispatch) => {
xhr('foo', () => {
dispatch(42)
})
}
}
}
```
* Deleted all of `utils`, `mixins`, `components`, and `addons` from alt package.
**Upgrade Guide**
- Use the utils found [here](https://github.com/altjs).
- You can install these from npm.
### Changed
* isMutableObject checks for frozen Objects before updating them [commit](https://github.com/goatslacker/alt/commit/a279c1983295048730c9cbf2e462c6ad80a414c5).
## 0.17.9
### Changed
* Fixes multiple actions from registering to the same handler [commit](https://github.com/goatslacker/alt/commit/85226f7).
## 0.17.8
### Changed
* Fix FSA dispatching [commit](https://github.com/goatslacker/alt/commit/ec3ccd8)
* Stores created using an Object will now have a config. This gets rid of this [issue](https://github.com/goatslacker/alt-devtool/issues/20). [commit](https://github.com/goatslacker/alt/commit/d72eb9d)
## 0.17.7
### Changed
* isPojo renamed to isMutableObject. [commit](https://github.com/goatslacker/alt/commit/69c773e)
- This now checks if an object is frozen or not before attempting to delete keys from it.
## 0.17.6
### Added
* Can dispatch FSA actions directly through alt.dispatch. [commit](https://github.com/goatslacker/alt/commit/243828c)
## 0.17.5
### Added
* Makes alt FSA compliant. [commit](https://github.com/goatslacker/alt/commit/f4818db)
### Changed
* Removes the warning if nothing is dispatched. [commit](https://github.com/goatslacker/alt/commit/9dd8e09)
* Fix regression for not setting state if reduce returns undefined. [commit](https://github.com/goatslacker/alt/commit/cebd8e8)
## 0.17.4
### Added
* Allow dispatching action creators. [commit](https://github.com/goatslacker/alt/commit/cd54ed1)
* Warn if nothing is dispatched. [commit](https://github.com/goatslacker/alt/commit/3430d56)
* Pass store state to bootstrap lifecycle. [commit](https://github.com/goatslacker/alt/commit/b1a3f7a)
* setState now handles values. [commit](https://github.com/goatslacker/alt/commit/f6be9c3)
* ImmutableUtil supports bootstrapping Records and more. [commit](https://github.com/goatslacker/alt/commit/b1d6622)
### Changed
* contextTypes are now copied onto connectToStores. [commit](https://github.com/goatslacker/alt/commit/74f033a)
* better typescript definitions. [commit](https://github.com/goatslacker/alt/commit/2ef5792)
## 0.17.3
### Changed
* Moved hot load delete of stores up to remove the warning shown in console. [commit](https://github.com/goatslacker/alt/commit/d3befc5)
## 0.17.2
### Added
* Add `onMount` handler for AltContainer. [commit](https://github.com/goatslacker/alt/commit/189e009)
* Expose a reduce function for every store by default. [commit](https://github.com/goatslacker/alt/commit/ab19ceb)
If you're using reducers then this allows you to not ever use waitFor since you can just call store.reduce(store.getState(), payload) in order to derive data.
* Allow values for store state. [commit](https://github.com/goatslacker/alt/commit/5e18e9c)
this.state can now be any valid JS value rather than always being an object.
* Add some reducer utils. [commit](https://github.com/goatslacker/alt/commit/f672938)
These reducer utils can be used for easily working with reducer only stores
### Changed
* Return value from sources local method. [commit](https://github.com/goatslacker/alt/commit/3e8bb8a)
* Delete stores on hot reload. [commit](https://github.com/goatslacker/alt/commit/8485eee)
Working with react hot loader is now simpler.
* Make fp tools faster by pulling directly from state. [commit](https://github.com/goatslacker/alt/commit/2b5adb3)
* Throw if listen does not get a function. [commit](https://github.com/goatslacker/alt/commit/193206f)
* Change the connectToStores displayName. [commit](https://github.com/goatslacker/alt/commit/b2c0b31)
* Allow listening to same action with multiple methods. [commit](https://github.com/goatslacker/alt/commit/a57d062)
## 0.17.1
### Changed
* Returning a promise from action no longer makes the action dispatch by default. [commit](https://github.com/goatslacker/alt/commit/bcda4fb)
## 0.17.0
### Breaking Changes
* Removed Symbol
**Upgrade Guide**
- Remove all references to Symbol, Symbol.keyFor, etc.
- Get access to the action's unique id via `myAction.id`
* Removed `getEventEmitter()`
**Upgrade Guide**
- You can no longer access the internal event emitter to dispatch your own custom events. This is usually an anti-pattern.
- If you still need this behavior you can create your own event emitter in your store.
```js
class TodoStore {
constructor() {
this.eventEmitter = new EventEmitter()
this.exportPublicMethods({
getEventEmitter: () => this.eventEmitter
});
}
}
```
* Removed `_storeName`.
**Upgrade Guide**
- `_storeName` was an internal property to the store where the store's name was kept.
- You can now use `displayName` instead which is a public API.
* Removed `stateKey`. [commit](https://github.com/goatslacker/alt/commit/40830ea)
**Upgrade Guide**
- A `stateKey` property was configurable on stores as well as app level.
- This has now been removed.
- This key was mostly used so you can use the react-like API of `this.state`, now this is being supported first-class.
```js
// old behavior
class MyStore {
static config = { stateKey = 'state' }
constructor() {
this.state = {}
}
}
```
Now you can just use `this.state` directly. If it exists it'll be picked up.
```js
// old behavior
class MyStore {
constructor() {
this.state = {}
}
}
```
The old behavior of assigning state directly as instance properties will continue to be supported. However, this new behavior will be favored in the docs.
* Render.toString/toStaticMarkup now return an object rather than a string of html.
**Note: Render API is still in flux**
**Upgrade Guide**
```js
// old
Render.toString(App, props).then(markup => console.log(markup))
// new
Render.toString(App, props).then(obj => console.log(obj.html))
```
* Render.toDOM no longer locks by default.
**Upgrade Guide**
- Render.toDOM used to "lock" meaning it wouldn't perform the fetches on the client when it rendered.
- Now this is configurable and off by default in case you want to use Render to render client side only.
```js
// old
Render.toDOM(App, props, document.getElementById('react-root'))
// new
// the `true` is to not fetch client side.
Render.toDOM(App, props, document.getElementById('react-root'), true)
```
### Added
* A sweet new DispatcherDebugger react component which lets you debug your flux application on the browser. [commit](https://github.com/goatslacker/alt/commit/ad9c2bb)
* You may now return from actions directly in order to dispatch, no need to call `this.dispatch`.
* connectToStores can now be used where you specify the methods at the callsite. [commit](https://github.com/goatslacker/alt/commit/a117e30)
* statics addon lets you add your static methods to components that have been connected. [commit](https://github.com/goatslacker/alt/commit/537ec26)
* TypeScript definitions!. [commit](https://github.com/goatslacker/alt/commit/d4ce63a)
### Changed
* Made the promise resolution to then(success, failure) so errors will be properly rejected. [commit](https://github.com/goatslacker/alt/commit/6f6bb05)
## 0.16.10
### Added
* componentDidConnect for connectToStores. Allows you to specify data fetching in there. [commit](https://github.com/goatslacker/alt/commit/464bb26)
* Hot reload of stores using webpack. [commit](https://github.com/goatslacker/alt/commit/66c875c)
### Changed
* Reversed the then/catch in the promise resolution for data sources so the catch only handles data source failures. [commit](https://github.com/goatslacker/alt/commit/8e1418b)
* Throw when passing `undefined` to store.unlisten. [commit](https://github.com/goatslacker/alt/commit/4998c6a)
## 0.16.9
### Added
* `preventDefault` to stop a store from emitting a change. [commit](https://github.com/goatslacker/alt/commit/1635589)
* `observe()` a way for POJOs to observe for changes. [commit](https://github.com/goatslacker/alt/commit/1635589)
* `otherwise()` listen to all dispatches that have not been bound in your stores. [commit](https://github.com/goatslacker/alt/commit/1635589)
* `reduce()` listen to all dispatches in a store and return the new state. [commit](https://github.com/goatslacker/alt/commit/1635589)
* `output()` transform the output that is emitted from the stores. [commit](https://github.com/goatslacker/alt/commit/1635589)
* Proper server rendering resolving all data at the component level before rendering. [commit](https://github.com/goatslacker/alt/commit/4cf98e3)
* Batched dispatches to avoid having componentWillMount cause a cannot dispatch while dispatching error when it loses context. [commit](https://github.com/goatslacker/alt/commit/907c94c)
* Alt.debug for registering your alt instance with chrome dev tools. [commit](https://github.com/goatslacker/alt/commit/5b6d78c)
* Function utils for transforming store state. [commit](https://github.com/goatslacker/alt/commit/e3564d6)
## 0.16.7
### Added
* interceptResponse method to data sources [commit](https://github.com/goatslacker/alt/commit/6f074)
### Fixes
* Revert breaking change back to merge state. 0.17.0 will include bootstrap, recycle, and flush replace state instead of merge state. [commit](https://github.com/goatslacker/alt/commit/9bc87)
### Changed
* local method in data source must return null or undefined to trigger remote [commit](https://github.com/goatslacker/alt/commit/4152c)
## 0.16.6
### Fixes
* Fixes bug with recycle for keys that weren't set at the beginning. [commit](https://github.com/goatslacker/alt/commit/1f8da1)
* Fixes isLoading for multiple async calls. [commit](https://github.com/goatslacker/alt/commit/6e4ed23)
## 0.16.5
### Added
* @decorate(alt) to decorate your store and activate all @bind and @expose methods. [commit](https://github.com/goatslacker/alt/commit/3865214)
* getStores in conenctToStores decorator/wrapper function now receives props from a store. [commit](https://github.com/goatslacker/alt/commit/7003703)
* Solving the async debate. [commit](https://github.com/goatslacker/alt/commit/4962ac5)
## 0.16.4
### Added
* @bind and @expose decorators for binding actions and exporting public methods. [commit](https://github.com/goatslacker/alt/commit/9bf17f0)
* Made the lifecycles eventemitters so you can bind multiple. [commit](https://github.com/goatslacker/alt/commit/cf226f5)
### Fixes
* Bug with react-native. Stop using the Object.assign polyfill since react-native overrides it with a non-spec compliant one. [commit](https://github.com/goatslacker/alt/commit/5ccab76)
## 0.16.3
### Dependencies
* Updates es-symbol.
## 0.16.2
### Added
* Now passing more information through the dispatch about the action invoked. [commit](https://github.com/goatslacker/alt/commit/05398a6)
## 0.16.1
This release is a pretty big one and it also marks Alt's first breaking changes.
### Breaking Changes
> Upgrade guide is included with each bullet point.
* New method signatures for createStore, createActions, etc. [commit](https://github.com/goatslacker/alt/commit/06838e7)
**Upgrade Guide**
- Previously all constructors for stores and actions received the alt instance as its first argument.
- You now have to pass this in yourself.
```js
// old behavior
class MyStore {
constructor(alt) { }
}
```
```js
// allows you to pass in your own arguments to the constructors
class MyStore {
constructor(alt, one, two, three) { }
}
alt.createStore(MyStore, null, alt, 1, 2, 3)
```
* beforeEach/afterEach methods have been moved to lifecycle. [commit](https://github.com/goatslacker/alt/commit/81a4e24)
**Upgrade Guide**
- Previously the beforeEach and afterEach methods existed as a prototype method on the store.
- Now they are lifecycle methods.
```js
// the new way
class Store {
constructor() {
this.on('beforeEach', () => {
});
}
}
```
* withAltContext is now in decorator form. [commit](https://github.com/goatslacker/alt/commit/3d2df4f)
**Upgrade Guide**
- Previously withAltContext took two arguments. The flux and the component.
- Now it takes a single argument, flux. It returns a function which takes another argument, the component.
As a decorator:
```js
@withAltContext(alt)
export default class App extends React.Component {
render() {
return
{this.context.flux}
}
}
```
As a function:
```js
export default withAltContext(alt)(App);
```
* Lifecycle method serialize and deserialize have been renamed and moved. [commit](https://github.com/goatslacker/alt/commit/fb30bbc)
**Upgrade Guide**
- Rename serialize to onSerialize.
- Rename deserialize to onDeserialize.
- Move those methods to your Store's configuration.
```js
// new hotness
class TodoStore {
static config = {
onSerialize() {
},
onDeserialize() {
}
}
}
```
* atomicTransactions util has been renamed to just atomic. [commit](https://github.com/goatslacker/alt/commit/ff6c285)
**Upgrade Guide**
- Change all your import/require from `alt/util/atomicTransactions` to `alt/util/atomic`
* Removed `mixins` from browser-with-addons. [commit](https://github.com/goatslacker/alt/commit/ca2e40e)
Mixins are dead, all hail our new higher-order component overlords.
Please use AltContainer instead: http://alt.js.org/docs/components/altContainer/
* Method signature for beforeEach, afterEach, error lifecycle events have changed. [commit](https://github.com/goatslacker/alt/commit/0b4f3c6)
**Upgrade Guide**
- Previously the method signature looked like `fn(actionName, data, state)`.
- Now it has been simplified to `fn(payload, state)` where `payload` is an object.
- The payload object contains keys `action` and `data` which contain the information from before.
```js
class Store {
constructor() {
this.on('beforeEach', (payload, state) => {
console.log(payload.data);
});
}
}
```
### Added
* Time Traveling! [commit](https://github.com/goatslacker/alt/commit/013447d)
```js
@timetravel
class TodoStore { }
TodoStore.undo(3);
TodoStore.redo(1);
```
* connectToStores function which also works with decorators. [commit](https://github.com/goatslacker/alt/commit/aedabf4)
```js
@connectToStores
class TodoApp extends React.Component {
static getStores() {
return [TodoStoreStore]
}
static getPropsFromStores(props) {
return TodoStore.getState()
}
render() {
return (
{this.props.todos.map(todo => }
)
}
}
```
* ImmutableJS support, in an addon as a decorator. [commit](https://github.com/goatslacker/alt/commit/78ef8bf)
```js
@immutable
class TodoStore {
constructor() {
this.state = Immutable.Map({})
}
}
```
* Use store references to take snapshots. [commit](https://github.com/goatslacker/alt/commit/a25f2c8)
```js
alt.takeSnapshot(TodoStore); // returns only TodoStore's snapshot
```
* Use store references to recycle. [commit](https://github.com/goatslacker/alt/commit/0563352)
```js
alt.recycle(TodoStore); // recycles only TodoStore
```
* Simple decorators for creating stores and actions. [commit](https://github.com/goatslacker/alt/commit/c06147e)
```js
import { createStore } from 'alt/utils/decorators'
@createStore(alt)
export default class TodoStore {
constructor() {
}
}
```
* Apply transforms at the app level to modify each store before it is created. [commit](https://github.com/goatslacker/alt/commit/1a6f528)
```js
alt.stateTransforms.push(Store => {
// make every store atomic
return atomic(alt)(Store)
})
```
* Add specific configuration to your stores, like how getState and setState behave. [commit](https://github.com/goatslacker/alt/commit/1de5e95)
```js
class TodoStore {
static config = {
getState(state) {
// adds a new todo every time you getState
return states.todos.push({ 'Another todo!' });
}
}
}
```
* Create your actions inside the constructor by using instance properties. [commit](https://github.com/goatslacker/alt/commit/752995d)
```js
class FooActions {
constructor() {
this.myAction = function (x) {
this.dispatch(x);
};
}
}
```
* All actions created are now available in `alt.actions`. [commit](https://github.com/goatslacker/alt/commit/1d32ad9)
* `inject` prop to AltContainer. [commit](https://github.com/goatslacker/alt/commit/14b56aa)
```js
// inject lets you inject arbitrary props to your children
// div gets prop foo=7 and bar='hello'
```
* `component` prop to AltContainer. [commit](https://github.com/goatslacker/alt/commit/653cb29)
* alt has a `prepare` method which prepares a payload for bootstrapping. [commit](https://github.com/goatslacker/alt/commit/c56d0bf)
```js
// rather than rendering its children you can now pass in a component
// equivalent to
```
* Allow customizing where you assign your state as a key. [commit](https://github.com/goatslacker/alt/commit/ff9e4dd)
```js
// if you yearn for a react-like API you can now has
const alt = new Alt({ stateKey: 'state' });
class Store {
constructor() {
this.state = {
stateGoesHere: 1,
yay: 2
};
this.nowItsPrivate = true;
}
}
```
* An [ES5 guide](http://alt.js.org/guides/es5/) now exists. [commit](https://github.com/goatslacker/alt/commit/8d4ec48)
* Customizable setState and getState. [commit](https://github.com/goatslacker/alt/commit/60c11b6)
```js
// Customize the way getState and setState behave at the app level.
const alt = new Alt({
getState(state) {
// add fuzzlewuzzle to every state
state.fuzzlewuzzle = true;
return state;
},
setState(existingState, newState) {
// forget existingState, in with the new out with the old
return newState;
}
});
```
* Added `maxEvents` parameter to DispatcherRecorder. This allows you to specify how many events you wish to record. [commit](https://github.com/goatslacker/alt/commit/5237b69)
### Fixes
* Performance improvement when creating a really large number of actions. [commit](https://github.com/goatslacker/alt/commit/dca4e7a)
* finalStore is cached per alt instance so it only returns one. [commit](https://github.com/goatslacker/alt/commit/838d8cb)
* Override a store's name using `displayName`. [commit](https://github.com/goatslacker/alt/commit/c91bb1e)
* Fix context for nested components. [commit](https://github.com/goatslacker/alt/commit/21d4d6d)
* Fix AltContainer and AltNativeContainer's rendering. [commit](https://github.com/goatslacker/alt/commit/a155e7d)
* setState now emits a change immediately if the dispatcher is not dispatching. [commit](https://github.com/goatslacker/alt/commit/dd22c7e)
### Changes
* Internals were refactored. [commit](56ede21)
* Babel was upgraded to babel5. [commit](ff00128)
* Action symbols are now prefixed with `alt/`. [commit](7d0c3ec)
## 0.15.6
### Added
* Adding unlisten lifecycle method. [commit](91a67d4)
* AltContainer now takes in store listeners for functions. [commit](7083141)
* `listen` now returns the unlisten function. [commit](864d99c)
## 0.15.5
### Added
* setState has been batched, it emits a change event if there were changes. [commit](https://github.com/goatslacker/alt/commit/a7d98d7)
* Util for having atomic transactions in stores. [commit](https://github.com/goatslacker/alt/commit/868a9ac)
* AltNativeContainer for react-native. [commit](https://github.com/goatslacker/alt/commit/569b4c9)
* Add shouldComponentUpdate to AltContainer. [commit](https://github.com/goatslacker/alt/commit/edda162)
* Centralized error handling inside stores. [commit](https://github.com/goatslacker/alt/commit/1dfdd75)
* Creating single actions. [commit](https://github.com/goatslacker/alt/commit/63d3a72)
* You can now inject actions into your child React components using AltContainer. [commit](https://github.com/goatslacker/alt/commit/1bd3112)
* FinalStore now contains the payload as state. [commit](https://github.com/goatslacker/alt/commit/b8480ba)
## 0.15.4
### Added
* Chrome debugging exporter for devtool. [commit](https://github.com/goatslacker/alt/commit/d925db1)
## 0.15.3
### Added
* Define your actions as POJO. [commit](https://github.com/goatslacker/alt/commit/d99a872)
* Use generateActions with alt instances. [commit](https://github.com/goatslacker/alt/commit/06d07e1)
## 0.15.2
Added/### Fixed
* AltContainer can now receive new props and it'll change. [commit](https://github.com/goatslacker/alt/commit/07debf2)
## 0.15.1
### Fixed
* A bug with `AltContainer` where it was using ES6 syntax. [commit](https://github.com/goatslacker/alt/commit/accea51)
## 0.15.0
### Added
* `AltContainer` which is a react container component that facilitates listening to stores and managing data. [commit](https://github.com/goatslacker/alt/commit/efbd652)
* `beforeEach` and `afterEach` hooks in stores for extending. [commit](https://github.com/goatslacker/alt/commit/46daa25)
* Allow custom dispatcher to be specified. [commit](https://github.com/goatslacker/alt/commit/8f57b6c)
* Adds serialize/loadEvents to the DispatcherRecorder. You can now transfer events between different alt instances and machines. [commit](https://github.com/goatslacker/alt/commit/c18b7f2)
* You can now get a list of a store's bound listeners with `boundListeners`. [commit](https://github.com/goatslacker/alt/commit/e76ae26)
* Testing has been made even easier with access to the original store class with `StoreModel`. [commit](https://github.com/goatslacker/alt/commit/e76ae26)
* takeSnapshot now allows you to take a snapshot of a single store. [commit](https://github.com/goatslacker/alt/commit/98b3c04)
* `rollback`, `flush`, and `recycle` now emit change events. [commit](https://github.com/goatslacker/alt/commit/44ad1de), [commit](bda22be)
* Adds AltManagerUtil which lets you manage multiple instances of alt. [commit](https://github.com/goatslacker/alt/commit/a901e9c)
### Fixed
* Fixes build on Windows. [commit](https://github.com/goatslacker/alt/commit/42d8ca4)
* If a non-store is passed to bootstrap it no longer crashes. [commit](https://github.com/goatslacker/alt/commit/b458450)
* Added the `snapshot` method back in. [commit](https://github.com/goatslacker/alt/commit/5767ae6)
## 0.14.5
### Fixed
* Added react-native support. [commit](https://github.com/goatslacker/alt/commit/a2cb91c)
## 0.14.4
### Added
* Create stores with a POJO. [commit](https://github.com/goatslacker/alt/commit/c382b2840d7d24672d8ec1de400104a4c4dd174e)
* Add `serialize`/`deserialize` lifecycle listener methods. [commit](https://github.com/goatslacker/alt/commit/7a42f27de1cb8a5abd3013704be488df4dccd30d)
* Add isomorphic rendering util. [commit](https://github.com/goatslacker/alt/commit/543c28e8632114f0998596dd615c056828aa0fe0)
* `emitChange` method lets you emit directly from within a store without having to `getInstance` first. [commit](https://github.com/goatslacker/alt/commit/e6c0fffef857b3b88dc62079dda0df798bd2eff5)
Dev ### Dependencies
* Update babel to 4.7.13. [commit](https://github.com/goatslacker/alt/commit/53337890ad9450b17bddd6f9a62ccfba16a518fe)
* Update eslint to 0.17.1 and remove babel-eslint. [commit](https://github.com/goatslacker/alt/commit/a946020219ed74c73e28c46746cf2002f96da6cf).
## 0.14.3
### Added
* `exportPublicMethods` can be used within a store to export public getter methods from the store. [commit](https://github.com/goatslacker/alt/commit/0924093a177eb61b0c448cd7f057cd7499dec8c5)
### Fixed
* Future spec compliant change of making the derived store class call super before setting `this`. [commit](https://github.com/goatslacker/alt/commit/ae1b7bb4b4466fdf6a95c6e0f1ee7458edefbfb2)
## 0.14.2
### Added
* Browser builds for bower. [commit](https://github.com/goatslacker/alt/commit/be35c3fce2a86e94e7fbcba421cc8857cf72bcd1)
### Changed
* The store name generator is now more robust. [commit](https://github.com/goatslacker/alt/commit/504c3f6cfb226e73f3352f78488831f7b2f1fd8b)
## 0.14.1
### Dependencies
* es-symbol has been updated to 1.1.1 [commit](https://github.com/goatslacker/alt/commit/7a9ea4c0bf6b80b677e130ab67766801614d19e1)
## 0.14.0
### Changed
* createStore no longer throws when it encounters a store with the same name. Instead if generates a new name for you and warns you in the console. If a store name is not specified due to using anonymous functions then a warning is also logged. [commit](https://github.com/goatslacker/alt/commit/48c589f5dfd5e623a3c6ab5b490a44ef319fc9ad)
### Dependencies
* es-symbol has been updated to 1.1.0 for better IE8 compatibility. [commit](https://github.com/goatslacker/alt/commit/fcc1c91c9c511d527f6d2464b0ea141cdf6e4995)
## 0.13.11
### Added
* Added access to the internal EventEmitter used by the store. This can be access on the store instance by using `getEventEmitter()` and can be used for custom events. [commit](https://github.com/goatslacker/alt/commit/0bdb3a9a9eda43f99ebfcf5e127bf6570e045d50)
* Added a setState method for syntactic sugar which sets the state in the instance variables inside your store and then emits a change event. [commit](https://github.com/goatslacker/alt/commit/6e45ae49d23e83b3e1f67e5ef41295a09d4d097a)
* Added emitChange method. No more `this.getInstance().emitChange`, now you can just `this.emitChange()` from inside a store. [commit](https://github.com/goatslacker/alt/commit/6e45ae49d23e83b3e1f67e5ef41295a09d4d097a)
* Added syntactic sugar for waitFor. `waitFor` now takes in a splat or array of stores or dispatch tokens. [commit](https://github.com/goatslacker/alt/commit/05eb61887d2bb9ca54ae73d796743a60e6b127bc)
* The `alt` instance now gets passed to the store constructor as well as the actions constructor. [commit](https://github.com/goatslacker/alt/commit/f42b43af9afabfb56494015c0be33d9625d30284)
* ActionListener is a util that allows you to listen in on specific actions. Now it's even more lightweight if you want to listen in on a specific action but don't want the weight of a store. This comes as a util meaning it doesn't increase the size of core alt. Use it if you need it. [commit](https://github.com/goatslacker/alt/commit/ce5ddcac0e40747c6df27b3960961f8cbb854daf)
### Fixed
* addStore now has the `saveStore` parameter as well. [commit](https://github.com/goatslacker/alt/commit/8e654555d9088ba6241ce713dd41234190d2ddf8)
## 0.13.10
### Added
* DispatcherRecorder is a util that allows you to record and replay a series of actions. [commit](https://github.com/goatslacker/alt/commit/834ccf1718ccd6067dadbb286ca0fbbfd5510ecb)
* FinalStore is a util Store that emits a change once all other stores have emitted. [commit](https://github.com/goatslacker/alt/commit/c104fb73eedd61f4c1dbd4ac074ce8a2f4b818bf)
* Added a `saveStore` parameter to `alt.createStore`. This parameter controls whether we should save the store internally (for snapshots, bootstraps) or not. Default is true. [commit](https://github.com/goatslacker/alt/commit/c104fb73eedd61f4c1dbd4ac074ce8a2f4b818bf)
### Fixed
* All the mixins in the mixins folder don't make React complain about binding. [commit](https://github.com/goatslacker/alt/commit/1e5ca13d93f66f6839277dadf9eb3c62989f5569)
## 0.13.8
### Added
* Create context on `add` in `Subscribe` mixin. [commit](https://github.com/goatslacker/alt/commit/df952a22b1b785b719c82df602489cac3cb8d884)
### Fixed
* Change lifecycle hook for `Listener` mixin to `ComponentWillMount` so that it functions are identical
between server rendering and client rendering. [commit](https://github.com/goatslacker/alt/commit/a3a83b963c970e44db10f13afd0c20f74d01084b)
## 0.13.7
### Added
* Add `bindListeners` method to Store. This is the inverse of `bindActions`. [commit](https://github.com/goatslacker/alt/commit/3997f7960ac0b6c1f4fac00b33dc520b9816d70d)
* Create shorthand form of `createActions`, `generateActions`. [commit](https://github.com/goatslacker/alt/commit/84e6bc40f1d7d03dc51f4f68d76bcca5b2fae748)
* Add/update several helpful mixins: `FluxyMixin`, `ReactStateMagicMixin`, and `Subscribe`. [commit](https://github.com/goatslacker/alt/commit/c6acbf5deeee4aa60bd1e6bfcf590d4673926016)
## 0.13.4
### Added
* Add tests.
## 0.13.5
### Added
* Add `bower.json` to enable Alt with Bower. [commit](https://github.com/goatslacker/alt/commit/3f7fc4248c8bc8bd07c9d8f298dda5610af994b5)
* Initial mixin pack addition. [commit](https://github.com/goatslacker/alt/commit/1d5ed1ec06c675a8b85aa683930cc208e88ae60b)
* `ListenerMixin` updated to `listenTo` various stores. [commit](https://github.com/goatslacker/alt/commit/eb7ba8d86f96f5c809aa3787dd29619426c7be60)
## 0.13.3
### Dependencies
* Upgrade to Babel 4.0 (formerly 6to5). [commit](https://github.com/goatslacker/alt/commit/b7dd7795fb8e5b727f07ca578ca1fc930ed6c18b)
## 0.13.2
### Added
* Allow dispatching specific actions with any data. [commit](https://github.com/goatslacker/alt/commit/48efd697378d1b6f794270e0aa6bbad44f0036e5)
* Remove dispatcher symbol from actions. [commit](https://github.com/goatslacker/alt/commit/6a3a7c272d2d46cbb8fee5058aac0a8064a3ad07)
### Fixed
* Assure that store instances do not collide. [commit](https://github.com/goatslacker/alt/commit/6fa0e4a0e868eea4c0b91c7f630589619530f62b)
* Fix bug with defer where it is not variadic. [commit](https://github.com/goatslacker/alt/commit/eb4e3a01279c4e9d7a85d8adcce525e851d09ad9)
## 0.13.1
### Added
* Allow same action name on different Action Classes. [commit](https://github.com/goatslacker/alt/commit/b17d39209ed9e771adc267edc058cf5ef70bb44e)
## 0.13.0
### Added
* Allow unlimited bootstraps. [commit](https://github.com/goatslacker/alt/commit/0ba7b85a97df7dfef37d8f6c97ec48e5ee35b198)
## 0.12.0
### Added
* Replace lifecycle method API. [commit](https://github.com/goatslacker/alt/commit/4c76f7a54f3ceec028ca473b024fdc88ae34292f)
* Add lifecycle methods, `onBootstrapped` and `onRolledBack`. [commit](https://github.com/goatslacker/alt/commit/25dd191b3108fc3b1c73790b38f92000654658b6)
* Distribute Alt with 6to5 runtime. [commit](https://github.com/goatslacker/alt/commit/0147a2e4e072b9574e92a20687e9613c9da4b2c9)
* Allow creating many instances of Stores. [commit](https://github.com/goatslacker/alt/commit/7d9c255bb4f6923b1b17b5e2a6d65e2139636b3a)
## 0.11.0
### Dependencies
* Update es-symbol [commit](https://github.com/goatslacker/alt/commit/d2a1377357eff68c8512be2971228ab863751cba)
* Update 6to5. [commit](https://github.com/goatslacker/alt/commit/5facbbbc8d5fb8573e7edcf5b0dd76b20b37de32)
## 0.10.2
### Added
* Add a class to safeguard call checks. [commit](https://github.com/goatslacker/alt/commit/29012097425e5dc232897a957eb63f4488d5d2dd)
## 0.10.1
### Added
* Add `exportObj` argument to `createActions`. [commit](https://github.com/goatslacker/alt/commit/dc7c75d47866afe1e6d2a0f50e859c1df6b530c1)
## 0.10.0
### Added
* Allow recycling of specific stores. [commit](https://github.com/goatslacker/alt/commit/614843bd2cc84a651229f89a0f0bc749a0249537)
## 0.9.0
### Added
* Unlimited boostrapping on server. [commit](https://github.com/goatslacker/alt/commit/14601b4771afc01f5310c860c63a119bebc45ea9)
## 0.8.0
### Added
* Add `recycle` and `flush` methods. [commit](https://github.com/goatslacker/alt/commit/e3016347f41c14b019235c096415dfa29158d6f8)
* Make stores available in `alt.stores`. [commit](https://github.com/goatslacker/alt/commit/598624c2e281ffed6b5c6b4122930ce5a6a0d7be)