Skip to content

Update dependency react-dom to v16.2.1 [SECURITY]#27

Open
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/npm-react-dom-vulnerability
Open

Update dependency react-dom to v16.2.1 [SECURITY]#27
renovate[bot] wants to merge 1 commit intomasterfrom
renovate/npm-react-dom-vulnerability

Conversation

@renovate
Copy link
Copy Markdown

@renovate renovate Bot commented Aug 8, 2024

This PR contains the following updates:

Package Change Age Confidence
react-dom (source) ^15.3.1^16.2.1 age confidence
react-dom (source) ^15.3.2^16.2.1 age confidence
react-dom (source) 16.2.016.2.1 age confidence
react-dom (source) ^15.6.1^16.0.0 age confidence
react-dom (source) ^15.5.4^16.0.0 age confidence

Cross-Site Scripting in react-dom

CVE-2018-6341 / GHSA-mvjj-gqq2-p4hw

More information

Details

Affected versions of react-dom are vulnerable to Cross-Site Scripting (XSS). The package fails to validate attribute names in HTML tags which may lead to Cross-Site Scripting in specific scenarios. This may allow attackers to execute arbitrary JavaScript in the victim's browser. To be affected by this vulnerability, the application needs to:

  • be a server-side React app
  • be rendered to HTML using ReactDOMServer
  • include an attribute name from user input in an HTML tag
Recommendation

If you are using react-dom 16.0.x, upgrade to 16.0.1 or later.
If you are using react-dom 16.1.x, upgrade to 16.1.2 or later.
If you are using react-dom 16.2.x, upgrade to 16.2.1 or later.
If you are using react-dom 16.3.x, upgrade to 16.3.3 or later.
If you are using react-dom 16.4.x, upgrade to 16.4.2 or later.

Severity

  • CVSS Score: 6.1 / 10 (Medium)
  • Vector String: CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

References

This data is provided by the GitHub Advisory Database (CC-BY 4.0).


Release Notes

facebook/react (react-dom)

v16.2.1

React DOM Server

v16.2.0

React
React DOM
React Test Renderer
React Reconciler
  • Expose react-reconciler/reflection with utilities useful to custom renderers. (@​rivenhk in #​11683)
Internal Changes

v16.1.2

React DOM Server

v16.1.1

Compare Source

React
React DOM
React DOM Server
React Reconciler

v16.1.0

Discontinuing Bower Releases

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.

All Packages
React
React DOM
React DOM Server
React Test Renderer and Test Utils
React ART
React Reconciler (Experimental)
React Call Return (Experimental)

v16.0.1

React DOM Server

v16.0.0

Compare Source

New JS Environment Requirements
New Features
  • Components can now return arrays and strings from render. (Docs coming soon!)
  • Improved error handling with introduction of "error boundaries". Error boundaries are React components that catch JavaScript errors anywhere in their child component tree, log those errors, and display a fallback UI instead of the component tree that crashed.
  • First-class support for declaratively rendering a subtree into another DOM node with ReactDOM.createPortal(). (Docs coming soon!)
  • Streaming mode for server side rendering is enabled with ReactDOMServer.renderToNodeStream() and ReactDOMServer.renderToStaticNodeStream(). (@​aickin in #​10425, #​10044, #​10039, #​10024, #​9264, and others.)
  • React DOM now allows passing non-standard attributes. (@​nhunzaker in #​10385, 10564, #​10495 and others)
Breaking Changes
  • There are several changes to the behavior of scheduling and lifecycle methods:
    • ReactDOM.render() and ReactDOM.unstable_renderIntoContainer() now return null if called from inside a lifecycle method.
    • Minor changes to setState behavior:
      • Calling setState with null no longer triggers an update. This allows you to decide in an updater function if you want to re-render.
      • Calling setState directly in render always causes an update. This was not previously the case. Regardless, you should not be calling setState from render.
      • setState callback (second argument) now fires immediately after componentDidMount / componentDidUpdate instead of after all components have rendered.
    • When replacing <A /> with <B />, B.componentWillMount now always happens before A.componentWillUnmount. Previously, A.componentWillUnmount could fire first in some cases.
    • Previously, changing the ref to a component would always detach the ref before that component's render is called. Now, we change the ref later, when applying the changes to the DOM.
    • It is not safe to re-render into a container that was modified by something other than React. This worked previously in some cases but was never supported. We now emit a warning in this case. Instead you should clean up your component trees using ReactDOM.unmountComponentAtNode. See this example.
    • componentDidUpdate lifecycle no longer receives prevContext param. (@​bvaughn in #​8631)
    • Non-unique keys may now cause children to be duplicated and/or omitted. Using non-unique keys is not (and has never been) supported, but previously it was a hard error.
    • Shallow renderer no longer calls componentDidUpdate() because DOM refs are not available. This also makes it consistent with componentDidMount() (which does not get called in previous versions either).
    • Shallow renderer does not implement unstable_batchedUpdates() anymore.
    • ReactDOM.unstable_batchedUpdates now only takes one extra argument after the callback.
  • The names and paths to the single-file browser builds have changed to emphasize the difference between development and production builds. For example:
    • react/dist/react.jsreact/umd/react.development.js
    • react/dist/react.min.jsreact/umd/react.production.min.js
    • react-dom/dist/react-dom.jsreact-dom/umd/react-dom.development.js
    • react-dom/dist/react-dom.min.jsreact-dom/umd/react-dom.production.min.js
  • The server renderer has been completely rewritten, with some improvements:
    • Server rendering does not use markup validation anymore, and instead tries its best to attach to existing DOM, warning about inconsistencies. It also doesn't use comments for empty components and data-reactid attributes on each node anymore.
    • Hydrating a server rendered container now has an explicit API. Use ReactDOM.hydrate instead of ReactDOM.render if you're reviving server rendered HTML. Keep using ReactDOM.render if you're just doing client-side rendering.
  • When "unknown" props are passed to DOM components, for valid values, React will now render them in the DOM. See this post for more details. (@​nhunzaker in #​10385, 10564, #​10495 and others)
  • Errors in the render and lifecycle methods now unmount the component tree by default. To prevent this, add error boundaries to the appropriate places in the UI.
Removed Deprecations
  • There is no react-with-addons.js build anymore. All compatible addons are published separately on npm, and have single-file browser versions if you need them.
  • The deprecations introduced in 15.x have been removed from the core package. 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.

v15.7.0

Compare Source

React

v15.6.2

Compare Source

All Packages
  • Switch from BSD + Patents to MIT license
React DOM
  • Fix a bug where modifying document.documentMode would trigger IE detection in other browsers, breaking change events. (@​aweary in #​10032)
  • CSS Columns are treated as unitless numbers. (@​aweary in #​10115)
  • Fix bug in QtWebKit when wrapping synthetic events in proxies. (@​walrusfruitcake in #​10115)
  • Prevent event handlers from receiving extra argument in development. (@​aweary in #​10115)
  • Fix cases where onChange would not fire with defaultChecked on radio inputs. (@​jquense in #​10156)
  • Add support for controlList attribute to allowed DOM properties (@​nhunzaker in #​9940)
  • Fix a bug where creating an element with a ref in a constructor did not throw an error in development. (@​iansu in #​10025)

v15.6.1

Compare Source

React DOM

v15.6.0

Compare Source

React
  • Downgrade deprecation warnings to use console.warn instead of console.error. (@​flarnie in #​9753)
  • Add a deprecation warning for React.createClass. Points users to create-react-class instead. (@​flarnie in #​9771)
  • Add deprecation warnings and separate module for React.DOM factory helpers. (@​nhunzaker in #​8356)
  • Warn for deprecation of React.createMixin helper, which was never used. (@​aweary in #​8853)
React DOM
React Addons

v15.5.4

Compare Source

React Addons
  • Critical Bugfix: Update the version of prop-types to fix critical bug. (@​gaearon in 545c87f)
  • Fix react-addons-create-fragment package to include loose-envify transform for Browserify users. (@​mridgway in #​9642)
React Test Renderer
  • Fix compatibility with Enzyme by exposing batchedUpdates on shallow renderer. (@​gaearon in 9382)

v15.5.3

Compare Source

Note: this release has a critical issue and was deprecated. Please update to 15.5.4 or higher.

React Addons
  • Fix react-addons-create-fragment package to export correct thing. (@​gaearon in #​9385)
  • Fix create-react-class package to include loose-envify transform for Browserify users. (@​mridgway in #​9642)

v15.5.2

Compare Source

Note: this release has a critical issue and was deprecated. Please update to 15.5.4 or higher.

React Addons

v15.5.1

Compare Source

Note: this release has a critical issue and was deprecated. Please update to 15.5.4 or higher.

React

v15.5.0

Compare Source

Note: this release has a critical issue and was deprecated. Please update to 15.5.4 or higher.

React
React DOM
React Test Renderer
  • Fixed bug where componentWillUnmount was not called for children. (@​gre in #​8512)
  • Added react-test-renderer/shallow, which exports the shallow renderer. (@​bvaughn)
React Addons
  • Last release for addons; they will no longer be actively maintained.
  • Removed peerDependencies so that addons continue to work indefinitely. (@​acdlite and @​bvaughn in 8a06cd7 and 67a8db3)
  • Updated to remove references to React.createClass and React.PropTypes (@​acdlite in 12a96b9)
  • react-addons-test-utils is deprecated. Use react-dom/test-utils and react-test-renderer/shallow instead. (@​bvaughn)

v15.4.2

Compare Source

React
React DOM
React Addons

v15.4.1

Compare Source

React
React DOM

v15.4.0

Compare Source

React
React DOM
React Perf
  • When ReactPerf is started, you can now view the relative time spent in components as a chart in Chrome Timeline. (@​gaearon in #​7549)
React Test Utils
  • If you call Simulate.click() on a <input disabled onClick={foo} /> then foo will get called whereas it didn't before. (@​nhunzaker in #​7642)
React Test Renderer
  • Due to packaging changes, it no longer crashes when imported together with React DOM in the same file. (@​sebmarkbage in #​7164 and #​7168)
  • ReactTestRenderer.create() now accepts {createNodeMock: element => mock} as an optional argument so you can mock refs with snapshot testing. (@​Aweary in #​7649, #​8261)

v15.3.2

Compare Source

React
  • Remove plain object warning from React.createElement & React.cloneElement. (@​spudly in #​7724)
React DOM
React Test Renderer
React Perf Add-on

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • ""
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate Bot force-pushed the renovate/npm-react-dom-vulnerability branch from e941dc2 to 6401083 Compare April 15, 2026 16:57
@renovate renovate Bot changed the title Update dependency react-dom to v16.2.1 [SECURITY] Update dependency react-dom [SECURITY] Apr 15, 2026
@renovate renovate Bot force-pushed the renovate/npm-react-dom-vulnerability branch from 6401083 to 1c44a7b Compare May 2, 2026 23:26
@renovate renovate Bot changed the title Update dependency react-dom [SECURITY] Update dependency react-dom to v16.2.1 [SECURITY] May 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants