Facebook to relicense React, Jest, Flow, and Immutable.js under MIT license
© Shutterstock / Inked Pixels
The React.js licensing drama recently resurfaced when the Apache Foundation recommended against using React.js and other software using the Facebook BSD+patents license and WordPress stopped using Facebook’s React.js library. The tech giant decided to relicense React, Jest, Flow, and Immutable.js under the MIT license.
Last week, Adam Wolff, Engineering Director at Facebook announced in a blog post that Facebook will relicense React, Jest, Flow, and Immutable.js under the MIT license.
We’re relicensing these projects because React is the foundation of a broad ecosystem of open source software for the web, and we don’t want to hold back forward progress for nontechnical reasons.
Facebook has received intense backlash from developers after Apache Foundation Legal recommended against using React.js and other software using the Facebook BSD+patents license and WordPress stopped using Facebook’s React.js library. Wolff revealed that the company still believes that the BSD + Patents license offers some benefits to those who use their projects, but acknowledged that they “failed to decisively convince this community.”
In the wake of uncertainty about our license, we know that many teams went through the process of selecting an alternative library to React. We’re sorry for the churn. We don’t expect to win these teams back by making this change, but we do want to leave the door open. Friendly cooperation and competition in this space pushes us all forward, and we want to participate fully.
Despite the decision to relicense the four projects, Facebook’s Engineering Director emphasized that many of the company’s popular projects “will keep the BSD + Patents license for now.”
Read more about React’s (soon-to-be former) license here.
July 17, 2017
Apache Foundation recommends against using Facebook BSD+patents licensed artifacts
The React.js Licensing issue comes back to haunt us. In a JIRA ticket about patents, Apache Foundation Legal recommends against using React.js and other software using the Facebook BSD+patents license.
The ticket is actually about RocksDB, a database engine from Facebook which is now dual-licensed under GPL 2.0 and Apache 2.0, according to Craig L Russell.
— John Ahlroos (@jatwitt) March 3, 2017
Uncomplicating the Facebook BSD+patents license discussion
Chris Mattmann, Principal Data Scientist in the Engineering Administrative Office and the Program Manager of the Open Source Projects and Applications and NSF Offices at the Jet Propulsion Laboratory(JPL) wrote in the JIRA ticket that he sent all Apache PMC a notice with the following content:
- No new project, sub-project or codebase, which has not used Facebook BSD+patents licensed jars (or similar), are allowed to use them. In other words, if you haven’t been using them, you aren’t allowed to start. It is Cat-X.
- If you have been using it, and have done so in a *release*, you have a temporary exclusion from the Cat-X classification thru August 31, 2017. At that point in time, ANY and ALL usage of these Facebook BSD+patents licensed artifacts are DISALLOWED. You must either find a suitably licensed replacement or do without. There will be NO exceptions.
- Any situation not covered by the above is an implicit DISALLOWAL of usage.
Read the entire thread here.
React patent rights
Facebook patents: React — just a quick reminder:
The license granted hereunder will terminate, automatically and without notice, if you (or any of your subsidiaries, corporate affiliates or agents) initiate directly or indirectly, or take a direct financial interest in, any Patent Assertion: (i) against Facebook or any of its subsidiaries or corporate affiliates, (ii) against any party if such Patent Assertion arises in whole or in part from any software, technology, product or service of Facebook or any of its subsidiaries or corporate affiliates, or (iii) against any party relating to the Software. Notwithstanding the foregoing, if Facebook or any of its subsidiaries or corporate affiliates files a lawsuit alleging patent infringement against you in the first instance, and you respond by filing a patent infringement counterclaim in that lawsuit against that party that is unrelated to the Software, the license granted hereunder will not terminate under section (i) of this paragraph due to such counterclaim.
Facebook uses a standard BSD license paired with an additional patent grant for most of their open source projects — the combination is called the Facebook BSD+Patents license.
The conversation around the license has moved to Reddit. There are over 150 comments right now about the BSD+ license especially regarding the differences between how patents work in the US versus how things work in the European Union. According to a Redditor, “it’s pretty much this: if you use the code, you have to give the author(s) credit in your documentation.”
The tech giant has compiled some answers to common questions about the additional patent grant:
For more information about the BSD license, see this post.
To find out more about the licensing of React, check out this post by the Open Source Initiative.
Does this open the door for alternatives? Use the comments section to tell us what you think.