Facebook Isn’t Budging on React’s BSD + Patents License

Last month React users petitioned Facebook to relicense the project (and its other open source projects) after the Apache Software Foundation (ASF) added Facebook’s BSD+Patents license to its Category X list of disallowed licenses for Apache PMC members. Participants and subscribers to the GitHub thread waited weeks for a decision on re-licensing while Facebook’s engineering directors discussed the matter internally. The request has now formally been denied.

“I’d like to apologize for the amount of thrash, confusion, and uncertainty this has caused the React and open source communities,” Facebook engineer Adam Wolff said. “We know this is painful, especially for teams that feel like they’re going to need to rewrite large parts of their project to remove React or other dependencies. We’ve been looking for ways around this and have reached out to ASF to see if we could try to work with them, but have come up empty.”

The request for re-licensing had received 851 “thumbs-up” reactions on GitHub and many developers commented to say that the ASF’s policy disallowing the BSD+Patents license affects their organizations’ ability to continue using React and other open source projects from Facebook. Others said they would like to use React but the licensing makes it impossible for their companies.

Facebook Cites “Meritless Patent Litigation” as the Reason Behind Adopting the BSD + Patents License

Wolff’s post announcing Facebook’s decision said that the team has not done a good job of communicating the reasons behind its BSD + Patents license and offered a more in-depth explanation:

As our business has become successful, we’ve become a larger target for meritless patent litigation. This type of litigation can be extremely costly in terms of both resources and attention. It would have been easy for us to stop contributing to open source, or to do what some other large companies do and only release software that isn’t used in our most successful products, but we decided to take a different approach. We decided to add a clear patent grant when we release software under the 3-clause BSD license, creating what has come to be known as the BSD + Patents license. The patent grant says that if you’re going to use the software we’ve released under it, you lose the patent license from us if you sue us for patent infringement. We believe that if this license were widely adopted, it could actually reduce meritless litigation for all adopters, and we want to work with others to explore this possibility.

The ASF’s decision to disallow the BSD+Patents license was for policy reasons, not a legal decision based on incompatibility. Greg Stein, commenting on behalf of ASF on a separate GitHub issue, said that the ASF didn’t want downstream users of Apache code to be surprised by the PATENTS grant that was previously in RocksDB and is still in React. The organization wanted users to have no further constraints other than following the ALv2.

“While we respect this decision, it hurts to see so many great ASF projects get churned for policy reasons after using this license for years,” Wolff said in Facebook’s announcement. The company made it clear that they will not be re-licensing React or any other projects simply to satisfy ASF’s policy requirements.

“We have considered possible changes carefully, but we won’t be changing our default license or React’s license at this time,” Wolff said. “We recognize that we may lose some React community members because of this decision. We are sorry for that, but we need to balance our desire to participate in open source with our desire to protect ourselves from costly litigation. We think changing our approach would inhibit our ability to continue releasing meaningful open source software and increase the amount of time and money we have to spend fighting meritless lawsuits.”

Many from the OSS community expressed disappointment and frustration in their initial reactions on Twitter:

The issue requesting re-licensing has been closed on GitHub and is now locked and limited to collaborators.

It’s not clear how this decision will affect WordPress, as the project has yet to announce which JS framework it will be adopting for core. Automattic is heavily invested in React, having built Calypso and Jetpack’s admin interface with it. WordPress’ new Gutenberg editor is also built using React, as the project’s chief contributors are employed by Automattic. The company’s legal counsel has said in the past that they are comfortable using React for its products under the current license, but other companies in the WordPress ecosystem may not be as amenable to having the framework included in core.