So Apache has decided that the PATENTS grant in the ReactJS license is incompatible with the Apache license. The ReactJS PATENTS grant is mutually exclusive: you are granted use of patents that may be used by ReactJS but the moment you sue Facebook for any patent infringement your grant to the ReactJS patents is revoked.
The PATENTS grant seems both fairly innocuous, reasonable but also understandable how this could be interpreted as being incompatible with the Apache license.
Apparently what started this discussion is a question about the user of RocksDB, some sort of persistent key-value storage (of which I had never heard before all of this). Some good news: the RocksDB team has already merged a pull request that makes the project dual-licensed: GPL 2.0 or Apache licensed.
There is an open issue in the ReactJS Github to consider making the same change. Here’s hoping they do.
This is particularly relevant to me because I’ve been planning to use ReactJS with Django for the upcoming new PGA implementation for Apache Airavata. If this PATENTS situation isn’t resolved what options would we have in Airavata?
- Preact or some other React compatible library. That would allow us to use the React API and if the PATENTS situation gets eventually resolved then perhaps we could even move back to use React.
- VueJS. I’ve heard great things about VueJS and from what I’ve seen it looks good. Like React it keeps things simple, indeed it is probably simpler and easier for newcomers. This would be another good alternative.
More discussion on HN.