Apache Foundation bans use of Facebook BSD+Patents licensed libraries like React.js

The React.js Licensing has been a topic that pops up every once in a while. Now it seems that the Apache Foundation has taken a stance against using React.js and other popular software using this license.

Lastly the Facebook licensing that React is available under stirred controversy in July 2016. In short the license extends the common BSD license with some extensions that protect Facebook legally:

If you are using or considering using React in a project you might want to consult a lawyer. Because of the patent clause you are not allowed to do anything that constitutes as competing with Facebook. If you do take legal actions or in other ways challenge Facebook, your license to use React is immediately revoked.

-- Your license to use React.js can be revoked if you compete with Facebook

Now, a year after this the license is again making headlines on Hacker News. In a JIRA ticket discussing patents, the end game is that Apache Foundation Legal makes the following recommendations against the license:

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.

ASF projects not allowed to use Facebook licensed software

Category-X, is defined as "licenses that may not be included within Apache products", and currently lnclude GNU GPL, GNU LGPL, BCL, BSD-4-Clause, Microsoft Limited Public License and others. A comprehensive list of prohibited licenses is available on the Apache Foundation site: https://www.apache.org/legal/resolved.html#category-x

This specific ticket is addressing RocksDB, a database engine from Facebook. In fact, RocksDB is already in the process of changing licensing to Apache 2.0. React.js is a separate project and it seems that FB is intent on keeping the patent clause for it. For the interested, there is a separate ticket on ASF JIRA for Clarifying React.js usage.

While commercial entities are now comfortable with using React licensed code in products, it seems the open source communities still are weary of this peculiar licensing which Facebook has been defending and clarifying over time. Still, many popular open source projects like WordPress continue to promote React, even though WordPress has it's own share of patent controversy over MIT.

So in case you were looking for popular ASF projects like Solr or other Apache projects to use React for their UI, it might be a long time coming. Luckily React itself is no longer unique in itself, and project can use the ideas popularised by React with liberally licensed alternatives such as Preact or Inferno, which don't come with the Patent Rider of React.