Updated June 17, 2023
Introduction to React Versions
React js is a javascript library used for frontend development. It was first introduced publicly in the year 2013. A Facebook software engineer named Jordan Walker designed and developed it. In 2015 react came up with React native concept, which allows the developer to create an app for android and IOS. Their recent releases were in October 2019, for bug fixing for mouseenter double call in react nested containers.
Versions of React
To date, react has released its various versions; let us discuss each version of react js individually.
1. Version 0.3.0
Version 0.3.0 marked the initial public release and open-source availability of the project. It was introduced on 29 May 2013.
2. Version 0.4.0
This version came with some new features and bug fixing. Its main feature is to start allowing us to comment, for example <span>{/* */}</span>. They made slight improvements in server-side rendering to API. It introduced the keyword called prop (it allows the parent component to send data to the child component ). This version was introduced on 20 July 2013.
3. Version 0.5.0
This version mainly focused on memory management and a few new support. In this version, we got support for important events like selection and composition. It also introduced getInitialState (set any state at components loading) and getDefaultProps. They improve their compatibility with Windows by introducing React.isvalidClass.This version was released on 20 October 2013.
4. Version 0.8.0
Released on 20 December 2013, they introduced a few multimedia improvements like audio and video loops support in this version. Improve the jstransform and esprima-fb tools .few new attributes like:
- autoCorrect
- onContextMenu events
5. Version 0.9.0
Release on 20 February 2014, they added a few important support they are:
- crossOrigin: Allow to communicate with other domains.
- download and hrefLang
- MediaGroup: For media like and video
- Muted: Mutating of video
- Seamless: Related to integration, allow for seamless integration
- srcDoc: Mostly used for iframes
- scope attributes
- arrayOf: Used for an array
- Component: This was a significant change as they introduced the component concept in react js.
- oneOfType: For checking types
- Renderable: checking if renderable or not
- PropTypes: Used for validation
- onMouseOver: For mouse events.
- onMouseOut: This is also for mouse events
- onLoad: Do something on the component load
- onError: Provide a way to do something on error.
6. Version 0.10.0
Released on 21 March 2014, it added a few new functions like
- srcSet: This attribute is used for images; it allows the browser to decide which picture needs to show to end-user
- textAnchor: Also provided an update function for any immutable data.
7. Verizon 0.11.0
Released on 17 July 2014, it comes with the improved performance of SVG and its Normalized view events. It also added a new function called transform with details.
8. Version 0.12.0
They released a new version with added features and fixes for previous issues on 21 November 2014. It introduced spread operators like ({…})
9. Version 0.13.0
Released on 10 March 2015, it did several changes they are:
- They removed the property called _pendingState and this._rootNodeID
- One good change was they started supporting the es6 classes.
We have deprecated some attributes like React.addons.classSet.
10. Version 0.14.1
This version was released on 29 October 2015; it comes with several changes, which are given below:
- Introduced sercLang
- For color, it added a color attribute
- Ability to access props on Dom
- Little fixing in scryRenderedDOMComponentsWithClass
11. Version 15.3.1
They released this version on 19 August 2016; in this version, they fixed the performance issue with the development build. They also fixed a few more issues like a memory leak, server rendering, etc.
12. Version 15.6.0
This version came with a nice feature to support CSS variables. It allows us to define a variable, write all CSS in that variable, and use it where we want. Also removed and deprecated a few things like React.createClass and React.DOM.This version was released on 13 June 2017.
13. Version 16.0.0
This version was released on 26 September 2017; It comes with below changes:
- Better error handling as it introduced the concept of “error boundaries.”
- Little changes in setState behavior
- It also stops a react-with-addons.js build
- Addition of React.create class
- Changing in react js lifecycle and it’s a scheduling mechanism
14. Version 16.1.0
Released on 09 November 2017, it added and removed a few things, which are given below:
- Stopping to support of Browser releases
- A global variable name UML builds came with a mistake, so they removed it.
- They also optimized the code in this version
- Little fixing was done with textarea
- Added react devtools
15. Version 16.3.0
It was released on 29 March 2018; it added a few new features like:
- Allowed to context API
- packagePrevent: Preventing from the infinite loop in case of rendering Portals(along with SSR)
16. Version 16.3.1
This version was released on 03 April 2018; it fixed performance and error handling for development.
17. Version 16.3.2
The version, which resolved a crash issue in Internet Explorer and introduced the UMD build, was released on 16 April 2019.
18. Version 16.4.0
Release on 24 May 2018, they added and fixed a few items with this version; they are given below:
- Provided a pointer Event
- Given a valuable ability to define a prototype
- Few bugs with the function getDerivedStateFromProps()
- Fix a few crashes happening like testInstance.parent
- To measure the performance, they introduced the function called React.unstable_Profiler
19. Version 16.5.0
Today we are using the React DevTool profile; it was introduced in this version. Able to handle errors gracefully (Without impacting the application). The latest version introduces new features, such as utilizing onAuxClick for browser events.
This release also introduced several mouse-related functions, including movementX and movementY. This release happened on 05 September 2018.
20. Version 16.6.0
Introduced on 23 October 2018 with a few new functions and supports, they are:
- contextType: Able to share value without sending props to child components.
- Priority levels: Allow us to set the priority for the components update
- and fallback mechanism improvement in this version
- lazy(): Call when it renders. This feature is not available for server-side rendering.
21. Version 16.7.0
They fixed some of the previously released functions in this release, like React.lazy for loading on rendering. They also fixed some bugs for SSR. In this version, they fix some regression performances. This release happened on 20 December 2018.
22. Version 16.8.0
In this version, they improve features like React.lazy(they made it synchronous thenable). In this version, the team made improvements to the useReducer function. Additionally, they introduced a couple of new features, namely ReactTestRenderer.act and ReactTestUtils.act(); these functions are suitable for batching updates. The team introduced this version on 06 February 2019.
23. Version 16.8.6
They fixed some bugs for the functions like useReduce()(bailout problem solved). Fix bugs on Safari and Devtool for iframes.
24. Version 16.10.0
Released in September 2019, it comes with some bug fixes. In React, this version found that the hook released previously was not showing good performance, so they improved its performance. There was some updation in the heuristic. They improve memory performance by clearing extra fiber attributes when unmounting.
25. Version 16.11.0
22 October 2019 Fix mouseenter handlers from firing twice inside nested React containers. Remove unstable_createRoot and unstable_createSyncRoot experimental APIs. (These are available in the Experimental channel as createRoot and createSyncRoot.)
Recommended Articles
This is a guide to React Versions. Here we discuss how and what the newly introduced features in React are from the start to the current version. You may also look at the following articles to learn more –