react v16.5.0 Release Notes

Release Date: 2018-09-05 // over 5 years ago
  • React

    • ➕ Add a warning if React.forwardRef render function doesn't take exactly two arguments (@bvaughn in #13168)
    • 👌 Improve the error message when passing an element to createElement by mistake (@DCtheTall in #13131)
    • Don't call profiler onRender until after mutations (@bvaughn in #13572)

    React DOM

    • ➕ Add support for React DevTools Profiler (@bvaughn in #13058)
    • ➕ Add react-dom/profiling entry point alias for profiling in production (@bvaughn in #13570)
    • ➕ Add onAuxClick event for browsers that support it (@jquense in #11571)
    • ➕ Add movementX and movementY fields to mouse events (@jasonwilliams in #9018)
    • ➕ Add tangentialPressure and twist fields to pointer events (@motiz88 in #13374)
    • 👍 Minimally support iframes (nested browsing contexts) in selection event handling (@acusti in #12037)
    • 👌 Support passing booleans to the focusable SVG attribute (@gaearon in #13339)
    • Ignore <noscript> on the client when hydrating (@Ephem in #13537)
    • 🛠 Fix gridArea to be treated as a unitless CSS property (@mgol in #13550)
    • 🛠 Fix incorrect data in compositionend event when typing Korean on IE11 (@crux153 in #12563)
    • 🛠 Fix a crash when using dynamic children in the <option> tag (@Slowyn in #13261, @gaearon in #13465)
    • 🛠 Fix the checked attribute not getting initially set on the input (@dilidili in #13114)
    • 🛠 Fix hydration of dangerouslySetInnerHTML when __html is not a string (@gaearon in #13353)
    • 🛠 Fix a warning about missing controlled onChange to fire on falsy values too (@nicolevy in #12628)
    • 🛠 Fix submit and reset buttons getting an empty label (@ellsclytn in #12780)
    • 🛠 Fix the onSelect event not being triggered after drag and drop (@gaearon in #13422)
    • 🛠 Fix the onClick event not working inside a portal on iOS (@aweary in #11927)
    • 🛠 Fix a performance issue when thousands of roots are re-rendered (@gaearon in #13335)
    • 🛠 Fix a performance regression that also caused onChange to not fire in some cases (@gaearon in #13423)
    • 🖐 Handle errors in more edge cases gracefully (@gaearon in #13237 and @acdlite in #13269)
    • Don't use proxies for synthetic events in development (@gaearon in #12171)
    • Warn when "false" or "true" is the value of a boolean DOM prop (@motiz88 in #13372)
    • Warn when this.state is initialized to props (@veekas in #11658)
    • 💅 Don't compare style on hydration in IE due to noisy false positives (@mgol in #13534)
    • Include StrictMode in the component stack (@gaearon in #13240)
    • Don't overwrite window.event in IE (@ConradIrwin in #11696)
    • 👌 Improve component stack for the folder/index.js naming convention (@gaearon in #12059)
    • 👌 Improve a warning when using getDerivedStateFromProps without initialized state (@flxwu in #13317)
    • 👌 Improve a warning about invalid textarea usage (@raunofreiberg in #13361)
    • Treat invalid Symbol and function values more consistently (@raunofreiberg in #13362 and #13389)
    • 👍 Allow Electron <webview> tag without warnings (@philipp-spiess in #13301)
    • 0️⃣ Don't show the uncaught error addendum if e.preventDefault() was called (@gaearon in #13384)
    • Warn about rendering Generators (@gaearon in #13312)
    • ✂ Remove irrelevant suggestion of a legacy method from a warning (@zx6658 in #13169)
    • ⚡️ Remove unstable_deferredUpdates in favor of unstable_scheduleWork from schedule (@gaearon in #13488)
    • 🛠 Fix unstable asynchronous mode from doing unnecessary work when an update takes too long (@acdlite in #13503)

    React DOM Server

    • 🛠 Fix crash with nullish children when using dangerouslySetInnerHtml in a selected <option> (@mridgway in #13078)
    • 🛠 Fix crash when setTimeout is missing (@dustinsoftware in #13088)

    ✅ React Test Renderer and Test Utils

    • 🛠 Fix this in a functional component for shallow renderer to be undefined (@koba04 in #13144)
    • ✅ Deprecate a Jest-specific ReactTestUtils.mockComponent() helper (@bvaughn in #13193)
    • ✅ Warn about ReactDOM.createPortal usage within the test renderer (@bvaughn in #12895)
    • 👌 Improve a confusing error message (@gaearon in #13351)

    React ART

    ⏱ Schedule (Experimental)

    • 🆕 New package for cooperatively scheduling work in a browser environment. It's used by React internally, but its public API is not finalized yet. (@flarnie in #12624)