- Recover from module errors on module level (#187)
- Silently ignore exports that raise an error when accessed (#114)
- Update
source-map
dependency
- Remove React from peerDependencies
- Update React Hot API to support React 0.14 beta 1
- Preserve CommonJS
exports
context in the wrapping closure (#124)
- Fix autobinding on newly added methods for
createClass
-style classes
- Fix “React is not defined” error
- Avoid updating each class twice in React 0.12
- Explicitly exclude
react/lib
files from processing. You should useexclude: /node_modules/
in configuration, but at least this doesn't blow up for those who don't.
- Fix crash on React 0.13. Now compatible!
- Don't try to flatten inheritance chains, as it causes problems with
super
- Instead, automatically opt custom base classes into hot reloading as long as they descend from
React.Component
(in React 0.13). If your custom base class doesn't do that but you'd still want to have hot reloading, you need to manually opt it in viamodule.makeHot
API.
- Support hot-reloading components without a base class (react-hot-api#5)
- Support hot-reloading inheritance chains (react-hot-api#10)
- Support using React 0.13 as an external
- Add React 0.13 RC2 to peerDeps
- Allow React 0.13 RC1
- Better support for ES6 inheritance
- Fix reloading for modules with null prototype chain (#82)
- Wrap user code in IEFF to prevent losing
"use strict"
. Fixes #75
- Fix crash when hot-reloading element factory. (Note: React discourages exporting factories.)
- Avoid warnings on React 0.13
- Compatibility with React 0.13.0-beta.1
- Fix edge cases by requiring
react/lib/ReactMount
in transformed source files - Add a warning if
ReactMount
doesn't return anything useful (e.g. when using external React)
- Skipping
node_modules
entirely wasn't the best idea. Instead, we now specifically skipnode_modules/react/
,node_modules/webpack/
andnode_modules/react-hot-loader/
. However you are still encouraged to addexclude: /node_modules/
to your loader config for best performance. - Now modules that don't export any valid React classes in
module.exports
or any its properties will not be auto-accepted. This prevents hot loader from trying to handle non-React updates and allows changes in plain JS files to propagate to components that can handle them. For example, this allows react-jss mixin to apply hot updates to JSS styles.
- Skip
node_modules
entirely. Fixes #54 on Windows.
- Add
require('react-hot-loader/Injection')
to override Hot Loader behavior. Now you can supply your own way of getting root component instances, so Hot Loader can also work in environment whererequire('react/lib/ReactMount')
is not available (for example, when React is used as standalone bundle and not NPM package).
- Fix stack overflow when hotifying same class twice (#52)
- Allow both
module.exports
and its properties be components (Fixes #50)
- In addition to hotifying
module.exports
by default, also hotify all its own properties
- Don't try to hot-replace
module.export
edReactElement
s
- Delay
require
ingReactMount
to avoid circular dependencies - Don't process React or Webpack internals to avoid potential issues
- Don't rely on
createClass
regex or any other regex - Only
module.exports
is hot by default - Supports ES6 classes when they land in React 0.13
- Supports dynamically created classes
- Manual mode
See what changed and how to migrate to 1.0.
- Adds source map support, contributed by Jake Riesterer
- Collapse all hot loader code in one line so it doesn't obscure beginning of file.
- Errors occuring in module definition (such as
ReferenceError
) should not disable further reloading (fixes #29)
- Support lowercase
react
reference name and usage with ES6 classes (createClass(MyComponent.prototype)
) via #27
- Catch errors in modules and log them instead of reloading (fixes #21)
- Use more precise
React.createClass
regex to avoid matching own code when hot loader is applied to all JS files.
- Ignore files that contain no
createClass
calls (fixes #17) - Remove the need for pitch loader (fixes #19)
- Improve performance by only using one loader instead of two
- Now that performance is acceptable, remove desktop notifications and
notify
option - It is now recommended that you use
devtool: 'eval'
because it's much faster and has no downsides anymore
- Avoid warnings on old browsers with missing
Notification
API - Errors don't cause page reload anymore
- Use React 0.11