Closed greenkeeper[bot] closed 5 years ago
Update to this version instead 🚀
Starting with 16.1.0, we will no longer be publishing new releases on Bower. You can continue using Bower for old releases, or point your Bower configs to the React UMD builds hosted on unpkg that mirror npm releases and will continue to be updated.
React.Children
utilities. (@MatteoVH in #11378)render
method but doesn't extend a known base class. (@sw-yx in #11168)on
as a custom attribute for AMP. (@nuc in #11153)onMouseEnter
and onMouseLeave
firing on wrong elements. (@gaearon in #11164)null
showing up in a warning instead of the component stack. (@gaearon in #10915)tabIndex
not getting applied to SVG elements. (@gaearon in #11034)dangerouslySetInnerHTML
in IE. (@OriR in #11108)form.reset()
to respect defaultValue
on uncontrolled <select>
. (@aweary in #11057)<textarea>
placeholder not rendering on IE11. (@gaearon in #11177)<dialog>
element. (@gaearon in #11035)componentDidReceiveProps
method. (@iamtommcc in #11479)contentEditable
and children
. (@Ethan-Arrowood in #11208)select
gets null value
. (@Hendeca in #11141)suppressHydrationWarning
attribute for intentional client/server text mismatches. (@sebmarkbage in #11126)autoFocus
attribute into SSR markup. (@gaearon in #11192)setState()
calls in componentWillMount()
in shallow renderer. (@Hypnosphi in #11167)shouldComponentUpdate()
after forceUpdate()
. (@d4rky-pl in #11239 and #11439)forceUpdate()
and React.PureComponent
correctly. (@koba04 in #11440)package.json
dependency. (@gaearon in #11340)package.json
dependency. (@gaearon in #11341)react-art/Circle
, react-art/Rectangle
, and react-art/Wedge
. (@gaearon in #11343)Update to this version instead 🚀
capture
attribute. (@maxschmeling in #11424)ReactDOMServer
public API. (@travi in #11531)autoFocus={false}
attribute on the server. (@gaearon in #11543)Update to this version instead 🚀
Fragment
as named export to React. (@clemmy in #10783)React.Children
utilities. (@MatteoVH in #11422)onChange
event in some cases. (@jquense in #11028)setState()
callback firing too early when called from componentWillMount
. (@accordeiro in #11507)Update to this version instead 🚀
React.createRef()
API as an ergonomic alternative to callback refs. (@trueadm in #12162)React.forwardRef()
API to let components forward their refs to a child. (@bvaughn in #12346)React.Fragment
. (@XaveScor in #11823)React.unstable_AsyncComponent
with React.unstable_AsyncMode
. (@acdlite in #12117)setState()
on an unmounted component. (@sophiebits in #12347)getDerivedStateFromProps()
lifecycle and UNSAFE_
aliases for the legacy lifecycles. (@bvaughn in #12028)getSnapshotForUpdate()
lifecycle. (@bvaughn in #12404)<React.StrictMode>
wrapper to help prepare apps for async rendering. (@bvaughn in #12083)onLoad
and onError
events on the <link>
tag. (@roderickhsiao in #11825)noModule
boolean attribute on the <script>
tag. (@aweary in #11900)onKeyPress
in more browsers. (@nstraub in #10514)value
and defaultValue
to ignore Symbol values. (@nhunzaker in #11741)opera
with a null
value. @alisherdavronov in #11854)<option selected>
. (@watadarkstar in #11821)ReactDOM.unstable_createPortal()
in favor of ReactDOM.createPortal()
. (@prometheansacrifice in #11747)React.Component
. (@wyze in #11993)this.state
of different components getting mixed up. (@sophiebits in #12323)toTree()
. (@maciej-ka in #12107 and @gaearon in #12154)null
for components that don't set it. (@jwbay in #11965)contextTypes
. (@koba04 in #11922)ReactIs.isValidElementType()
to help higher-order components validate their inputs. (@jamesreggio in #12483)react-reconciler/persistent
for building renderers that use persistent data structures. (@gaearon in #12156)finalizeInitialChildren()
. (@jquense in #11970)useSyncScheduling
from the host config. (@acdlite in #11771)Update to this version instead 🚀
Fragment
. (@heikkilamarko in #12504)setState()
in constructor. (@gaearon in #12532)getDerivedStateFromProps()
not getting applied in some cases. (@acdlite in #12528)Update to this version instead 🚀
null
or undefined
to React.cloneElement
. (@nicolevy in #12534)<StrictMode>
. (@bvaughn in #12546)unstable_observedBits
API with nesting. (@gaearon in #12543)Update to this version instead 🚀
React.unstable_Profiler
component for measuring performance. (@bvaughn in #12745)getDerivedStateFromProps()
regardless of the reason for re-rendering. (@acdlite in #12600 and #12802)forwardRef()
on a deeper setState()
. (@gaearon in #12690)propTypes
on a context provider component. (@nicolevy in #12658)react-lifecycles-compat
in <StrictMode>
. (@bvaughn in #12644)forwardRef()
render function has propTypes
or defaultProps
. (@bvaughn in #12644)forwardRef()
and context consumers are displayed in the component stack. (@sophiebits in #12777)getDerivedStateFromProps()
support to match the new React DOM behavior. (@koba04 in #12676)testInstance.parent
crash when the parent is a fragment or another special node. (@gaearon in #12813)forwardRef()
components are now discoverable by the test renderer traversal methods. (@gaearon in #12725)setState()
updaters that return null
or undefined
. (@koba04 in #12756)
Version 16.0.0 of react-dom just got published.
The version 16.0.0 is not covered by your current version range.
Without accepting this pull request your project will work just like it did before. There might be a bunch of new features, fixes and perf improvements that the maintainers worked on for you though.
I recommend you look into these changes and try to get onto the latest version of react-dom. Given that you have a decent test suite, a passing build is a strong indicator that you can take advantage of these changes by merging the proposed change into your project. Otherwise this branch is a great starting point for you to work on the update.
Release Notes
v16.0.016.0.0 (September 26, 2017)
Learn more in the React 16.0 announcement post!
New JS Environment Requirements
New Features
render
. (Docs coming soon!)ReactDOM.createPortal()
. (Docs coming soon!)ReactDOMServer.renderToNodeStream()
andReactDOMServer.renderToStaticNodeStream()
. (@aickin in #10425, #10044, #10039, #10024, #9264, and others.)Breaking Changes
ReactDOM.render()
andReactDOM.unstable_renderIntoContainer()
now returnnull
if called from inside a lifecycle method.setState
behavior:setState
with null no longer triggers an update. This allows you to decide in an updater function if you want to re-render.setState
directly in render always causes an update. This was not previously the case. Regardless, you should not be callingsetState
from render.setState
callback (second argument) now fires immediately aftercomponentDidMount
/componentDidUpdate
instead of after all components have rendered.<A />
with<B />
,B.componentWillMount
now always happens beforeA.componentWillUnmount
. Previously,A.componentWillUnmount
could fire first in some cases.ref
to a component would always detach the ref before that component's render is called. Now, we change theref
later, when applying the changes to the DOM.ReactDOM.unmountComponentAtNode
. See this example.componentDidUpdate
lifecycle no longer receivesprevContext
param. (@bvaughn in #8631)componentDidUpdate()
because DOM refs are not available. This also makes it consistent withcomponentDidMount()
(which does not get called in previous versions either).unstable_batchedUpdates()
anymore.react/dist/react.js
→react/umd/react.development.js
react/dist/react.min.js
→react/umd/react.production.min.js
react-dom/dist/react-dom.js
→react-dom/umd/react-dom.development.js
react-dom/dist/react-dom.min.js
→react-dom/umd/react-dom.production.min.js
ReactDOM.hydrate
instead ofReactDOM.render
if you're reviving server rendered HTML. Keep usingReactDOM.render
if you're just doing client-side rendering.Removed Deprecations
react-with-addons.js
build anymore. All compatible addons are published separately on npm, and have single-file browser versions if you need them.React.createClass
is now available as create-react-class,React.PropTypes
as prop-types,React.DOM
as react-dom-factories, react-addons-test-utils as react-dom/test-utils, and shallow renderer as react-test-renderer/shallow. See 15.5.0 and 15.6.0 blog posts for instructions on migrating code and automated codemods.Not sure how things should work exactly?
There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html) and of course you may always [ask my humans](https://github.com/greenkeeperio/greenkeeper/issues/new).Your Greenkeeper Bot :palm_tree: