- Was an idiot. Forgot to re-build - see martyjs/marty-lib#15
- Add a temporary fix for react-hot-loader issue (Will properly be fixed when gaearon/react-hot-api#16 is merged)
- Re-added htmlBody/htmlState, parseJSON and specification (Resolves martyjs/marty-express#10)
New features
- marty-native
- No singleton
- ES7 features
- Improved testing
- DevTools supports marty-native
Deprecations
- Due to API incompatibility issues
parseJSON
will be removed by default in future versions. Instead you should callthis.json()
from within your state source.
Removed
Marty.register()
is no longer needed, just return the type- You will no longer be able to pass in a store or an object hash of stores into
Marty.createStateMixin
- Rollbacks have been removed entirely
- Store handler values can only be either a string or an array of strings. You cannot do complex object queries any more.
Marty.registry
is no longer supported. Use applications instead.Marty.createContext()
is no longer supported. Use applications instead.Marty.renderToString()
is no longer supported. UseApplication#renderToString()
insteadStore#rollback()
is no longer supported. You should instead dispatch an error action..for(this)
has been removed. Use applications instead.- You no longer to specify
id
's in the type. Instead define the Id on theApplication#register()
require('marty').Dispatcher
is no longer supported. Create an application and access the dispatcher.require('marty/http/hooks')
is no longer supported. Userequire('marty').hooks
insteadrequire('marty/environment')
is no longer supported. Userequire('marty').environment
require('marty/fetch')
is no longer supported. Userequire('marty').fetch
require('marty/when')
is no longer supported. Userequire('marty').when
require('marty/autoDispatch')
is no longer supported. Userequire('marty').autoDispatch
require('marty').Diagnostics
is no longer supported. Userequire('marty').diagnostics
- Return individual parts of html
htmlBody
andhtmlState
to solve #288
- Remove try/catch around when to improve stack traces #313.
- Make HTTP methods upper case to conform to Fetch spec #318
- Update Marty.renderToString so that it will continue re-rendering until no new fetches are made. Resolves #314.
- Updated isomorphic-fetch to v2.0.0
- Add optional
throwError
hook that replicates Marty v0.8 behavior of throwing an error if http response is not OK
- Pass finished fetches into a containers
pending
handler to resolve #300
- Allow you to extend contexts to resolve #276
- Update definition of React peer dependency
- Fix for parsing JSON in Chrome 43 #268
- Do not setState in container unless component is mounted #265
- Generate lifecycle methods at container creation #263
- Make it easier to use with webpack #259
- Fix bug where single instance of observer per container #248
- Allow you to pass in component life style hooks (componentWillReceiveProps, componentWillUpdate, componentDidUpdate, componentDidMount, componentWillUnmount and componentWillMount) #249
- Use latest props when container is updating fetches #244
- Don't swallow errors when fetching
locally
orremotely
#238
- Add
Container#getInnerComponent
- Allow you to specify your own contextTypes on the container #234
- Allow you to extend containers with your own functions #224
- Correctly listening to
componentWillReceiveProps
and passing props #229
- Fix issue where Marty would not work with window object #219, #216
New features
- Isomorphism #13
- CookieStateSource
- LocationStateSource
- ES6 Classes #89
- Add dataType option to http state source #161
- Lodash v3 instead of underscore #136
- Simplify action creators #163, #93
- replaceState and setState #126
- HttpStateSource hooks #118
- FetchResult#toPromise #131
- Clear fetch history in Store#clear #149
- Batch store change events #112
- Allow you to specify when function context #76
- Marty.createContainer #204
- Set request credentials to 'same-origin' #209
Bugs
- dependsOn doesn't update when dependent store updates #113
- Don't auto set content-type if using FormData #140
- Fetch API compatibility #133
- Add reactify as a dependency so you dont have to explicitly add it to parent project
- Remove dependency on Babel
- Hotfix for fetch incomaptibility in Chrome Canary #133
- Added improved error logging #129