- Prevent usage of deprecated React lifecycle methods
- Switch to
PureComponent
for small optimizations - Minor internal changes to improve iterators cancellation
- Fix exceptions throw in coroutines based on sync generators
- Update peer dependency range to support React versions higher than
16.2.0
- Prevent rejected promises swallowing in sync generators
- Remove
shallowequal
dependency, decreasing the lib size - Use
babel-preset-env
instead ofbabel-preset-es2015
for building the lib
- Remove
context
argument from coroutine signature (recommended to switch to the new Context API) Coroutine
is only an object withcreate()
factory method (breaking change forv2.0.0-alpha.2
)- Use
pkg.module
instead ofjsnext:main
- Build correct ES Module artifact
- Move
react
topeerDependencies
and update the range to~16.2.0
- Allow the use of sync generators that can yield possible Promise values
- Remove
getVariables
mechanism - Remove unused
Coroutine.render
component - Introduce
Coroutine
as a base React component - Fix the issue with stale props after receiving new
- Use latest
shallowequal
withoutlodash
dependency (–3kb of minified code)
- Fix the issue with redundant updates due to late props comparison
- Fix broken reference to the current props state
- Use
jsnext:main
instead ofpkg.module
because of Webpack 2 issue - Use
shallowequal
instead of React's internal tool
- Fix compatibility issue with polyfilled Promises
- Fix the usage of
contextTypes
for async functions
- Use Rollup to build smaller bundle
- Provide
pkg.module
property for bundling original sources - Prevent calls of
setState()
for unmounted components
- Fix
.npmignore
due to lost modules after previous release
- Provide
Coroutine.render
component to render async functions without wrapping them - Add an ability to provide custom component for the initial (empty) state
- Drop outdated promises if coroutine was updated before they are resolved
- Use
null
as default initial body and allow returning it from coroutines
- Fix
return
statement usage in async generators
- Use a better approach to check if component is mounted
- Fixed weird publish issue
- Drop outdated body before fetching new one
- Fixed incorrect props comparison
- Fixed re-render logic when new props are received
- Cancel async iterator when a component was unmounted or received new props
- Removed
invariant
dependency - Call
getVariables()
withprops
andcontext
passed in - Allowed the usage of async generators as components
- Set correct and transpiled main file
- Reduced amount of files on package install
Initial public version.