20 ms·
Apache Foundation disallows use of the Facebook “BSD+Patent” license
- jorgemf 9y agoCan someone explain how this can affect to projects using react, as in a part of a product of a company or personal projects? Thanks I found this [1]: > FB is not interested in pursuing the more draconian possibilities of the BSD+patents license. If that is true, there is actually very little difference between BSD+patents and the Apache license. As such, relicensing should make little if any pragmatic difference to Facebook. So what happens if Facebook doesn't change the license and in the future changes its mind? [1] https://github.com/facebook/react/issues/10191 https://github.com/facebook/react/issues/10191
- twunde 9y agoFacebook has reserved its rights with their license and they can decide to enforce it at any time. Personal projects should be ok, but commercial projects should involve a discussion with legal. If the company thinks it's possible that they end up in a lawsuit with FB, it won't be allowed. For those who get caught unawares, they will have to move off react if possible, or seriously consider settling.
- mikekchar 9y agoFor personal projects, my interest here is in whether or not the patents license is compatible with other free software licenses (say GPLV3). That might be a consideration for some people.
- jorgemf 9y agoAs far as I understood It is not compatible with other licenses, that is why the apache foundation doesn't allow it. (But don't ask me which licenses, I have no idea)
- kevin_b_er 9y agoSection 11 might be incompatible with the facebook Patent+BSD license.
- geofft 9y agoFrom Mark Thomas's comment on this bug: > My reading of that is if you use this code and Facebook infringes a completely unrelated patent that you own, you can't sue them for infringement without giving up this patent license. That is much broader than the language in the ALv2 which is limited to a single work. So it almost certainly doesn't affect personal projects unless you are the sort of person who files for patents as a hobby, but for a commercial project, the scenario, I think, is that if you own some patent (not even a software patent!) and you sue Facebook for it, you lose your patent rights to React. In effect, you may as well be granting Facebook a patent license to literally all your patents for use in any context, in exchange for using React. Also, it's not just Facebook: it also covers suing anyone for infringing your patent in their use of any other Facebook product or service, as well as "any party relating to" React -- so quite possibly, depending on how lawyers and judges read the license, you can't enforce your non-software patents against anyone who uses React.
- tomelders 9y agoI think this is misleading. In the event that you bring a patent infringement case against Facebook, you still have a license to use react, but you lose the patent rights that would cover you if you came up with something that infringed on a Facebook patent. Meaning that you now have to fight your case in court without any protection. You're safer with this license and the patent grant, than you are without it. The BSD license on it's own, and the MIT license don't give you any sort of patent grant at all.
- geofft 9y agoThat depends on whether you believe that the BSD license gives you an implied patent grant - it does, after all, just say "Redistribution and use...are permitted," without saying anything specific to copyright. See also http://en.swpat.org/wiki/Implicit_patent_licence http://en.swpat.org/wiki/Implicit_patent_licence If the concept of an implicit patent license is coherent and legally meaningful (it sounds like it is), then an explicit patent license, like Facebook's, would supersede it - and so losing your rights under the explicit license would leave you worse off than relying on the implicit one. In any case, this is why people like the Apache license and the GPLv3, so you don't have to think about whether a patent license is implied. Both of those have explicit patent licenses with significantly less draconian termination clauses than Facebook's. (Obviously I am not a lawyer, otherwise I'd know better than to comment on HN about unclear areas of IP law.)
- Xeoncross 9y ago> Does the additional patent grant in the Facebook BSD+Patents license terminate if I create a competing product? > No. > Does the additional patent grant in the Facebook BSD+Patents license terminate if I sue Facebook for something other than patent infringement? > No. https://code.facebook.com/pages/850928938376556 https://code.facebook.com/pages/850928938376556 Consider re-licensing to AL v2.0: https://github.com/facebook/react/issues/10191 https://github.com/facebook/react/issues/10191
- colejohnson66 9y ago> 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. https://github.com/facebook/react/blob/master/PATENTS https://github.com/facebook/react/blob/master/PATENTS The actual license text is what matters, not what some intern wrote on a page.
- charleslmunger 9y ago>Facebook or any of its subsidiaries or corporate affiliates files a lawsuit And then >against that party IANAL, but does that mean that if Facebook proper transfers a patent to a new subsidiary (wholly owned patent troll) they can sue you, and the only patent counterclaim you can make without terminating your ready license is against the troll subsidiary, not Facebook proper?
- softinio 9y agoI really have no idea why react is so popular with such a silly license. I agree with this move. There are plenty of OSS projects out there without patent thing attached to its license so no reason to use react.
- trumpownsyou 9y agoreact is great. sorry you're a salty bitch.
- TheAceOfHearts 9y agoConsidering almost every single large tech company is using React, presumably there's not much reason for concern? IANAL. But you're not wrong, preact is a great alternative to react and it comes with a permissive license.
- ageitgey 9y agoLots of large companies are not using React because of the licence. It's just that companies generally don't talk about legal matters like this openly. So you only hear about who is using it, not who isn't. Often the large companies that are using React have patent cross-licensing agreements with Facebook (or other special arrangements) that make the issue moot for them. Otherwise, getting your in-house council (or even your board, depending on the situation/risk) to approve of using React with the very broad patent restrictions can be an uphill battle indeed.
- reboog711 9y agoMy most recent 'big' fortune 500 company put me under very strict legal terms regarding what type of software I was allowed to use. Any code I didn't write 100% myself had to be approved by legal before it could be used in software I wrote for them. No, seriously, that is what the contract said. In reality, the bulk of developers used whatever they wanted with no consideration. I assume other contractors were under similar legal terms, but not sure about employees. I was seen as a pain when I kept asking for formal permission for stuff.
- geofft 9y agoAm I reading this right that Apache's unwillingness to use rocksdb under the custom license pressured Facebook into switching to Apache || GPLv2? That is pretty cool!
- MVorlm 9y agoI don't think Facebook has done anything yet. The ticket was only opened 4 hours ago.
- geofft 9y agoFacebook relicensed RocksDB to dual Apache and GPLv2 3 hours ago: https://github.com/facebook/rocksdb/pull/2589 https://github.com/facebook/rocksdb/pull/2589
- droidist2 9y agoYes! People are also now starting to pressure Facebook to change React's license. https://github.com/facebook/react/issues/10191 https://github.com/facebook/react/issues/10191
- jjirsa 9y agoThe issue came out of FB developing a RocksDB plugin for Apache Cassandra. If the Apache Cassandra can't take the plugin into its main repo (which was VP Legal's decision in that thread), I suspect FB would be (is? was?) incentivized to relicense to make that happen.
- TheAceOfHearts 9y agoIn the discussion they say RocksDB will be relicensed under dual license Apache 2 and GPL 2. There's already an issue [0] asking them to consider doing something similar for react, and Dan Abramov said he'd route the request internally on the next work day. I can't imagine they'd keep the existing license without harming their community image. But even if they keep the license, many applications should be able to easily migrate to preact [1] and preact-compat, which provides a react-compatible API. Hopefully they relicense the project. It seems like it's the first thing that gets brought up each time react gets mentioned. [0] https://github.com/facebook/react/issues/10191 https://github.com/facebook/react/issues/10191 [1] https://preactjs.com https://preactjs.com
- Lazare 9y agoWhat patents do you imagine Facebook might have on React's concepts that Preact would not also violate?
- pmontra 9y agoProbably any patent FB has on React. The point is, did FB enumerate the patents they have on React or they keep the list secret?
- Lazare 9y agoA React developer is on record some months ago as saying that as far as he personally is aware, no such patents exist. Further, patents are a matter of public record, and to date, nobody has identified a patent that might cover React. Of course, a random comment from a React dev on github carries no legal weight, and absence of evidence is not evidence of absence. But so far the picture being painted seems consistent with there being no list of patents at all, secret or otherwise.
- kevin_b_er 9y agoThen it will be relicened under "Apache 2+Patents" and "GPL 2+Patents" All licenses to "use" and "distribute" this software are now contingent upon a patent. The copyright license is secondary to an overriding control and use and distribution via patent.
- chx 9y agoRocksDB has fixed this https://github.com/facebook/rocksdb/commit/3c327ac2d0fd50bbd82fe1f1af5de909dad769e6 https://github.com/facebook/rocksdb/commit/3c327ac2d0fd50bbd... now and moved to Apache / GPL dual license.
- deleted 9y ago[deleted]
- sheeshkebab 9y agothey should fix it the same way in react and react-native repos (delete the PATENTS file).
- whatnotests 9y agoPR submitted. https://github.com/facebook/react/pull/10194 https://github.com/facebook/react/pull/10194
- sheeshkebab 9y agoNice try!
- lysium 9y agoThey did (?)
- rdslw 9y agoLOL facebook, move fast and break things. this one was FAST :)
- jjirsa 9y agoWell, I opened that issue quite some time ago, and opened it in response to a proposal by FB to use RocksDB in Cassandra, so it's a great change but not a single Fay turnaround
- j_s 9y agoSo push finally comes to shove. Glad the long-term legal implications will be given serious consideration publicly, rather than the "this is not the droid you're looking for" I've seen nearly everywhere so far!
- numair 9y agoFinally, people are beginning to realize the insanity of this entire PATENTS file situation! When I first brought up how misguided people were for embracing React and projects with this license, I was downvoted to hell on HN. But really, everyone, THINK ABOUT IT. This is a company that glorifies and celebrates IP theft from others, and lionizes their employees who successfully clone others’ projects. They’ve built their entire business on the back of open source software that wasn’t ever encumbered with the sort of nonsense they’ve attached to their own projects. And this industry is just going to let them have it, because the stuff they are putting out is shiny and “convenient” and free? Having known so many people involved with Facebook for so long, I have come up with a phrase to describe the cultural phenomenon I’ve witnessed among them – ladder kicking. Basically, people who get a leg up from others, and then do everything in their power to ensure nobody else manages to get there. No, it’s not “human nature” or “how it works.” Silicon Valley and the tech industry at large weren’t built by these sorts of people, and we need to be more active in preventing this mind-virus from spreading. By the way, the fact that Facebook is using this on their mostly-derivative nonsense isn’t what should concern you. It’s that Google has decided, as a defensive measure, to copy Facebook’s move. Take a look at the code repo for Fuschia and you’ll see what I mean. Imagine if using Kubernetes meant you could never sue Google?
- rhizome 9y agoWas Zuck taking some Business & Econ classes in his school days? This is from 2002: https://www.amazon.com/Kicking-Away-Ladder-Development-Perspective/dp/1843310279 https://www.amazon.com/Kicking-Away-Ladder-Development-Persp...
- rdtsc 9y ago> They’ve built their entire business on the back of open source software that wasn’t ever encumbered with the sort of nonsense they’ve attached to their own projects. So did Amazon apparently and others. At least Google have open sourced many interesting and useful projects so they have given back. Microsoft have been open sourcing things lately too. Others so so.
- blazespin 9y ago
- Steeeve 9y agoInteresting note from the discussion: > As noted earlier, the availability of a GPLv2 license does not preclude inclusion by an ASF project. If patent rights are not conferred by the 3-clause BSD and required by ASLv2 then would not these licenses be incompatible? --- > he has discussed the matter with FB's counsel and the word is that the FB license is intentionally incompatible. It is hard to make the argument that it is compatible after hearing that.
- rdtsc 9y agoI was wondering about a similar issue for zstd compression library. It has a similar BSD+Patentsfile thing. There is an issue with a related discussion about it going for more than a year: https://github.com/facebook/zstd/issues/335 https://github.com/facebook/zstd/issues/335 Last update is interesting. Someone did a search and looked for any patents FB filed for and couldn't find any in last year. So somehow based on that they decided things are "OK". To quote: --- US allows to patent up to a year after the publication, allowing to conclude that ZSTD remains free of patents (?) - suggesting this "The license granted hereunder will terminate, automatically and without notice (...)" from PATENTS file has no legal meaning (?) --- Anyone care to validate how true that statement is?
- geofft 9y agoIANAL but I have a couple of software patents (now assigned to Open Invention Network). The line "A year has passed, but searching patents with 'facebook compression' suggests no patent application regarding ZSTD has been filled" is not very convincing to me for a few reasons, primarily that the word "compression" may not show up at all in the patent document. When I got the text of the patent application back from the lawyers, after describing to them in engineering terms the thing we'd invented, I could hardly understand what it was talking about. Patentese is its own dialect of English, and there's no reason to assume that it'll say in straightforward terms that it's a compression algorithm.
- FRex 9y agoI have no idea but another case is RakNet (another Facebook property, via Occulus). It even uses the older, more controversial wording: https://github.com/facebookarchive/RakNet/blob/master/PATENTS https://github.com/facebookarchive/RakNet/blob/master/PATENT... And I'd find it highly unlikely it contains any patents too. Occulus was bought in March 2014 by Facebook and RakNet was bought in April 2014 by Occulus and there is only a handful of commits on GitHub that don't seem substantial at all and are just maintenance and cleaning up the repo. RakNet operated for years before that so it's unlikely they happen to have had a patent in it at the time of its purchase or they'd be nuked by Facebook before. Then again, there are/were patents for some bit tricks and Carmack's Reverse so anything is possible.
- jzelinskie 9y agoAs the other comments say, RocksDB is going to be dual licensed both GPLv2 and Apache. What's the advantage to doing so? If I choose to consume the library via the Apache license, I'd never have to contribute back code; doesn't this invalidate the copyleft of GPLv2?
- rdtsc 9y agoThe copyright owner gets to decide how to license their stuff. So my guess, is Apache and GPLv2 together makes sense if author wants to give the user the maximum choice in combining the library with other software. That because depending which lawyers you ask Apache and GPL are not always compatible. So say your code is Apache and you want to use RocksDB, you can pick to use the Apache license for it. Your code is GPL, then you can pick GPL.
- deleted 9y ago[deleted]
- somenewacc 9y agoFrom here: https://issues.apache.org/jira/browse/LEGAL-303 https://issues.apache.org/jira/browse/LEGAL-303 > Hi all, wanted to jump in here to let everyone know that the RocksDB team is adjusting the licensing such that it will be dual-licensed under the Apache 2 and GPL 2 (for MySQL compatibility) licenses.
- nsser 9y agoFacebook's open source projects are potential trojan horses.
- seattle_spring 9y agoThat's an interesting opinion you've got there, Alex Jones.
- 2_listerine_pls 9y agoHow can I downvote you?
- quickthrower 9y agoYou need 424 more karma points.
- tomelders 9y agoINAL - But this seems strange to me. The Apache license has what I see as being the same patent grant, with the same condition that if you make a claim against them, you lose the patent grant. Apache 2.0 > 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. The important bit being... > If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. But what people seem to be missing (as far as I can tell) is that you don't lose the licence to use the software. You just lose the patent grants. But with the BSD licence alone, you lose both the patent grand AND the licence. I really don't see how the Apache 2.0 License and Facebook's BSD+Patent Grant are any different.
- FRex 9y agoI'm neither and English isn't my first language (not that legalese is even close to any sane kind of English from last 200 years..) but due to my deep interest in Free and Open software, old games reimplementations, abandonware, reverse engineers and emulation I spent quite a while reading about legal stuff. The part you said is important sounds like you lose the right to use the patent in the given software if you attempt to sue someone over patents in that software which sounds absolutely sane. In facebook's case they terminate the patent grant given to you for you trying to sue them for any patent, except a counterclaim if they sue first: https://github.com/facebook/react/commit/b8ba8c83f318b84e42933f6928f231dc0918f864 https://github.com/facebook/react/commit/b8ba8c83f318b84e429... And even that is just few years ago, RakNet that Facebook owns via Occulus is still using the old wording: https://github.com/facebookarchive/RakNet/blob/master/PATENTS https://github.com/facebookarchive/RakNet/blob/master/PATENT... So basically the difference boils down to the CAPS part below: Apache 2.0: we grant you use of these patents, sue anyone over one of the patents we gave you and we take that grant away. Facebook's BSD: we grant you use of these patents, sue anyone over one of the patents we gave you OR SUE US OVER ANY PATENT AT ALL and we take that grant away. Another difference is what is covered. Apache is about suing, Facebook's BSD says you can't even 'take a direct financial interest in' any of the stuff they don't want you doing.
- tomelders 9y agoOk. With the BSD + patent grant Do you have a license to use Facebook's patents? Yes. Do you have a license to use Facebooks patents if Facebook brings a patent case against you? Yes. Do you have a license to use Facebooks patents if you bring a patent case against us? No. If you do not have a patent grant, can you still use React? YES! If you're going to down vote this, please say why. This is how I interpret the license plus patent grant. If I'm wrong, I'd like to know why.
- nsser 9y ago>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. Its not talking about terminating the patent grant, its talking about terminating the license to use.
- Lazare 9y ago> Its not talking about terminating the patent grant, its talking about terminating the license to use. This is totally incorrect, and has been debunked many time. "The license granted herein" is the patent grant, because that language occurs in the patent grant. The BSD license is totally separate. This has been stated, repeatedly, by representatives of Facebook and independent lawyers; the language is standard and unambiguous. They even answered it in a FAQ here[0]: Q: Does termination of the additional patent grant in the Facebook BSD+Patents license cause the copyright license to also terminate? A: No. [0]: https://code.facebook.com/pages/850928938376556 https://code.facebook.com/pages/850928938376556
- FRex 9y agoThe section you quite is under this one: >Facebook, Inc. ("Facebook") hereby grants to each recipient of the Software ("you") a perpetual, worldwide, royalty-free, non-exclusive, irrevocable (subject to the termination provision below) license under any Necessary Claims, to make, have made, use, sell, offer to sell, import, and otherwise transfer the Software. For avoidance of doubt, no license is granted under Facebook's rights in any patent claims that are infringed by (i) modifications to the Software made by you or any third party or (ii) the Software in combination with any software or other technology. Emphasis mine. So it seems to terminate just the patent grant. You can't terminate a BSD license so if you're in like France (no software patents) then you are fine to use React and sue Facebook for patent infringement.
- gedy 9y agoThis keeps coming up as a concern with back and forth "it's a big deal"/"it's not a big deal" - so if FB has no ill-intent from this, are there any simple, obvious changes they could/should make to the React license?
- erichocean 9y agoSure, Facebook could do what they did for RocksDB and use the Apache 2 license (and optionally, the GPLv2). People have been asking/telling Facebook to do just that for at least a year. The reason Facebook doesn't, I assume—and this is just my personal opinion—is because Facebook wants to do evil shit in the future that the Apache 2 wouldn't allow them to do. Otherwise, I just don't see any value for Facebook in all the negative publicity they've gotten over this idiotic patent grant crap they're trying to pull.
- alecco 9y agoThis is the major drawback of adoption for Zstandard, too.
- ouid 9y agoIf your landlord does something that they would normally be within their rights to do in retaliation to you enforcing some other provision in your agreement, then it is illegal. I'd bet that this was not the kind of statute that they could override in a lease agreement. I wonder if such a clause is actually enforceable. Are there any actual cases where this clause was invoked?
- ec109685 9y agoI don't understand how code with a bsd license without a patent grant is better for the apache foundation than facebook's bsd + patent license. With the former, the entity donating the source can sue you for patent infringement at any time. Clearly the apache 2 license would be preferable (and what rocks db did), but I am puzzled the foundation accepts bsd code in their products, given their worry about patents.
- 0xbear 9y agoEdit: Caffe2 is similarly afflicted. Torch and PyTorch are not. Some of Torch modules are, however.
- boulos 9y agoYou're right about Caffe2 [1], but Torch and PyTorch have existed for a long time and don't seem infected [2] and [3]. For completeness, both TensorFlow [4] and MXNET [5] are Apache 2. [1] https://github.com/caffe2/caffe2/blob/master/PATENTS https://github.com/caffe2/caffe2/blob/master/PATENTS [2] https://github.com/torch/torch7/blob/master/COPYRIGHT.txt https://github.com/torch/torch7/blob/master/COPYRIGHT.txt [3] https://github.com/pytorch/pytorch/blob/master/LICENSE https://github.com/pytorch/pytorch/blob/master/LICENSE [4] https://github.com/tensorflow/tensorflow/blob/master/LICENSE https://github.com/tensorflow/tensorflow/blob/master/LICENSE [5] https://github.com/dmlc/mxnet/blob/master/LICENSE https://github.com/dmlc/mxnet/blob/master/LICENSE
- learc83 9y agoIf Facebook has patents that cover React functionality. They almost certainly cover parts of other JavaScript frameworks. React is well executed, but it's conceptually simple. I don't think avoiding React makes you any safer. You don't know how broadly Facebook or the courts will interpret their patents.
- vbernat 9y agoHow did Facebook was able to change the license of RocksDB so easily? The CLA is not a copyright assignment and therefore all contributors have to agree for the change. Did they contact anyone who has signed up the CLA?
- khuey 9y agoOn purely copyright grounds, any BSD licensed code can be relicensed as Apache 2.0 code. And the patent grant was solely from Facebook so it can be modified at their discretion.
- vbernat 9y agoFirst paragraph of BSD license says: "Redistributions of source code must retain the above copyright-notice, this list of conditions and the following disclaimer". I agree you can add the Apache 2.0 license on top of that, but you cannot discard the BSD license unless you own the code.
- dchest 9y agoThis is incorrect. Here's the full text of BSD license: Copyright (c) 2011 The LevelDB Authors. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. View The first list item disproves your statement.
- didibus 9y agoWhat patent does React depends on?
- didibus 9y agoSo if I understand correctly, by using React, you agree that if you sue Facebook, you'll need to stop using React? And that goes no matter the reason why you're suing them for? So say Facebook was infringing on one of your patent, you could still sue them, but you'd have to give up React if you did. Is that correct?
- matthewmacleod 9y agoNo, this is not correct. If you sue Facebook for infringing on your patents, then you lose the rights to any patents which Facebook may or may not have on parts of React. Nobody has, to my knowledge, found one of these patents to date.
- weego 9y agoI'm sorry but I struggle to take anyone here seriously that thinks that having to not use a specific js framework would be grounds to be legally neutered in a patent litigation case
- fencepost 9y agoI was interested in React based on what I'd read and was figuring it'd be worth looking into, but this provides all the reason I need to avoid it - I don't forsee a situation where I would personally or as a small company be suing Facebook, but I could see developing something then selling/trying to sell it to a larger company. If my code comes with a big side of "oh, and if you buy this you won't be able to sue Facebook or its affiliated companies for patent infringement" that could significantly hurt sales chances.
- mlsarecmg 9y agoYou can't avoid react because it started a new paradigm. 9 out of 10 frameworks are based on the same principles and native follows suit where even big vendors are changing their strategies for mobile and desktop to align them with reacts principles (react-native, microsofts react-native-windows, reactxp and office fiber, googles kotlin for android, litho, componentkit, etc). Switching from react to something else is sometimes as simple as adding an alias in webpack. If you don't like the license, use preact, inferno, etc. But the idea itself is way too valuable to be in any way affected by petty licensing issues.
- Profragile 9y agoI don't think anyone is against the paradigm. They're against the "no patents against facebook" situation which you can avoid by using else.
- threatofrain 9y agoThe paradigm is everywhere, so just use another library that uses that paradigm, like Inferno or Preact, or even something slightly different like Vue if you want.
- chrisco255 9y agoThe point is those other libraries could be in violation of any patents that Facebook may or may not have with regards to React. Perhaps they have a patent on virtual DOM? That would mean your usage of Inferno, Preact, Vue, or Angular 2+ would violate the patent.
- captainmuon 9y agoI think this is an overreaction (pun accidental). There are two things here: The copyright license, and the patent grant. Copyright applies to the concrete implementation. You have to agree to the license to be subject to it, and to legally use the code. A potential patent applies to any implementation. Even if you write a clean-room clone of React, if it uses the same patent, Facebook has a patent claim. But that means the patent grant is not specific to the code; it doesn't even require consent, Facebook could allow you conditional patent usage even without your knowledge! A corollary is that you are strictly better off with the patent grant, it imposes no additional constraints on you. License with no patent grant: Facebook can sue you for infringing patents, even if you are using a clone! License with patent grant: Facebook cannot sue you for infringing patents, unless you do it first. ---- Second, I think the philosophy behind the patent grant is twofold: 1) that software patents are not legitimate. Enforcing a patent is not seen as a legitimate right, but an annoyance, like pissing on someones lawn. From that point of view, it seems not asked too much from somebody to refrain from doing that. (I don't know if that was the idea of the people who drafted that license, but it wouldn't surprise me.) ---- Another, unrelated observation (and please don't invalidate the first observations if this one is wrong as internet commentators are wont to do): I see nowhere in the license [1] that it requires you to take the patent grant. Is that true? It would be silly to refuse it, because you are strictly better off with it, of course. [1] https://github.com/facebook/react/blob/master/LICENSE https://github.com/facebook/react/blob/master/LICENSE
- discordianfish 9y agoThat's how I understand the patent grant too. Are people here really confusing a grant with some sort of restricting of their freedom or do we miss something? I frankly don't want to believe everyone, including apache foundation, believes this without getting their facts straight..?
- captainmuon 9y agoI think there is a legal layer, and an ideological layer. From the legal layer, this is a non-issue. You are not in any way worse off than if the license was public domain or BSD (as far as I understand it). From an ideological or appearances point of view, it seems a bit clumsy. People see it as a submarine to get access to their patents, rather than an insurance to prevent unnecessary patent litigation costs. I wonder what other companies do with their patent grants, e.g. Microsoft. I remember MS had one that said, you may use our patent for the Ribbon UI, as long as you follow our UI guidelines and don't make an Office competitor (which I find pretty restrictive). But maybe there are other options out there that people would find more agreeable. I think a unilateral patent grant for React in the license would be nice, but unrealistic. Maybe they should restrict the kinds of patent actions that trigger the invalidation of the grant, say only to certain patents, but it is hard to find a good compromise.
- guelo 9y agoI hate Facebook but I also hate patents so I like this license and wish more projects would use it because lawsuits impede progress, damage the economy, and no matter what the laws are curious smart people will always invent.
- Kiro 9y agoWhy would I care about patents if I'm outside the US? Software patents are not even valid where I live.
- ergo14 9y agoYou work in vacuum?
- floatboth 9y agoIn many many jurisdictions, software is not patentable https://en.wikipedia.org/wiki/Software_patent#Jurisdictions https://en.wikipedia.org/wiki/Software_patent#Jurisdictions You usually can get patents for "software-related inventions" but there's no huge "software patents" problem in most other places like there is in the US.
- ergo14 9y agoI'm perfectly aware of that software patents are not enforceable in country I live in as far as I can tell. At same time I work with companies across the globe so I have to at least think at possible implications of licenses.
- ballenf 9y agoActually that's an interesting point. Patents must be obtained in every country where you want to enforce them. So if you have a product that will never be sold or used in a country where React is patented, you might be ok. However, the license may still apply and you would need to determine whether you are agreeing to respect the patent regardless of it's validity in your country. So many of these questions would be easier to answer if anyone knew the patents FB actually has obtained on this technology.
- mixedbit 9y agoDoes this mean that a startup that uses React becomes un-buyable for any company that sells or plans to sell patent rights to Facebook?
- HappyTypist 9y agoNo, they can replace it with Preact pretty simply.
- vbernat 9y agoReading a bit more the thread, it's quite surprising. The assignee is Chris Mattmann. From his webpage, he is not a legal counsel. The only evidence of a problem they show is that BSD alone implies a patent grant but coupled with an explicit patent grant, this is not the case anymore. The other evidence is brought by Roy Fielding who does not appear to be a legal counsel either about a discussion (oral?) with Facebook's legal counsel that the license is incompatible with ASLv2. The whole decision seems to have been taken by "not-a-lawyer" people with their own interpretations. Doesn't the Apache Foundation have some software lawyers they can ask?
- maxsavin 9y agoAnd now, for a tinfoil hat moment: even though companies like Microsoft and Google are using Facebook's libraries, it is possible that they have some kind of private deal in regards to the patents clause.
- hocuspocus 9y agoI work at a fairly big company that has a good relationship with Facebook (they're a customer and partner) and we aren't allowed to use React or zstd. But MS and Google are big fish relative to Facebook, private deal or not.
- brooklyntribe 9y agoI'm a vue.js guy myself. Think it's far more cooler then React. And not every going to face this issue, me thinks. :-)
- d0100 9y agoUnless Facebook has a patent on some particular virtual-dom related tech that Vue uses. Then you got zero patent grants, and can be sued at any time.
- BucketSort 9y agoDing ding. Vue.JS wins.
- flushandforget 9y agoPlease can someone paraphrase the implications of this. It's hard for me to understand.
- jjirsa 9y agoI opened the issue, as a member of the Apache Cassandra PMC, because a committer employed at FB has a POC that uses RocksDB as a Cassandra storage engine, and wanted to gauge the viability of upstreaming it. LEGAL-303 (the issue linked here) was opened to ensure that we were legally clear to do that. The answer of "no" basically means that a project such as Cassandra: - Can create a pluggable storage engine that enables RocksDB - Can not have the RocksDB implementation of that plugin in an Apache repo There were about half a dozen other ASF projects (Kafka, Samza, etc) that had some reference to RocksDB in their source, that likely would have been impacted. There are about 50 ASF projects that seem to have some reference to React in their source, which (as this HN comment section clearly noticed) is much more heavily used, and seems to scare more people. The RocksDB team has already re-licensed the project to make it compatible. Whether or not that happens with React will determine the apache projects' reactions - a product like CouchDB, which uses react for its database user interface, may have to strip it out (or use a drop-in alternative) before their next release, which is probably a LOT of work for someone.
- anon335dtzbvc 9y agoI've made a pull request to fix that situation https://github.com/facebook/react/pull/10195 https://github.com/facebook/react/pull/10195
- dis-sys 9y agoalready closed.
- issa 9y agoI rejected using React in a project just for this reason. I'll be perfectly honest: I didn't (and still don't) completely understand the implications, but on it's face it sounds like trouble.
- snarfy 9y agoIs it any patent, or only patents pertaining to the "Software" as defined in the license (react)? I cannot sue Facebook for patents in react or lose my react license, but I could some other patent I own e.g. fizzbuzz that Facebook is violating. Is this correct or is it any patent? If it is any patent, I cannot believe that was the intent even if that's how Apache Foundation is interpreting it.
- known 9y agoSounds rational
- clarkevans 9y agoI'm not a lawyer, but perhaps Facebook's BSD+Patent license is not even open source. It's tempting to consider the BSD license independent of the additional patent license. However, the OSI has not approved CC0 as being open source precisely because it expressly reserves patent rights [0]. In the OSI's justification, permissive MIT and BSD licenses may provide implicit patent license, so by themselves they are open source. However, like CC0, BSD+Patents expressly exclude this possibility. Indeed, Facebook's licensing FAQ deems the combined work of the BSD+patents to be the license [1]. Further, recent court case has shown that these licenses are not simply copyright or patent statements, but can be actual contracts [2]. Hence, we have to consider the BSD text + the patents file text as the combined license. This license is not symmetric and hence may violate OSI license standards. I've made this comment in the facebook bug report, https://github.com/facebook/react/issues/10191 https://github.com/facebook/react/issues/10191 [0] https://opensource.org/faq#cc-zero https://opensource.org/faq#cc-zero [1] https://code.facebook.com/pages/850928938376556 https://code.facebook.com/pages/850928938376556 [2] https://perens.com/blog/2017/05/28/understanding-the-gpl-is-a-contract-court-case/ https://perens.com/blog/2017/05/28/understanding-the-gpl-is-...
- isaac_is_goat 9y agoIf you can't use React because of the license, use InfernoJS (MIT). In fact...you should probably use Inferno JS anyway.
- Waterluvian 9y agoI like having the alternative. But the problem is that 100% of your ecosystem needs to not use React. And that's the majority of the value I've gotten from using React: all the components I get from libraries like antd that save me a ton of prototyping time.
- ec109685 9y agoUsing InfernoJS doesn't mean you aren't infringing on Facebook patents.
- vxNsr 9y ago>> David Recordon Added Yesterday 21:10 Hi all, wanted to jump in here to let everyone know that the RocksDB team is adjusting the licensing such that it will be dual-licensed under the Apache 2 and GPL 2 (for MySQL compatibility) licenses. This should happen shortly and well ahead of August 31st. I'll leave the history and philosophy around licensing alone since it's generally a complex discussion to have and I'm not sure that it has actually been fully captured in this thread especially vis a vis Facebook's intent. Hopefully this morning's guidance to PMCs can be adjusted since I don't think any of us see a bunch of extra engineering effort as a desirable thing across the ASF projects which are already making use of RocksDB Thanks, --David Looks like they're working on amending this issue, could very well be a case of legal getting involved and the regular engineers not realizing the change or simply not paying attention. Alternatively, maybe this is just crisis management and they were just hoping this wouldn't happen.
- andrewalan 9y agoI am Andrew Alan a hacker who has built a very good reputation and undeniably one of the best hackers you can come across.i have got access to hack into any account and also get to generate passwords for accounts like Facebook,Instagram,Twitter,gmail,yahoo mail,whats-app,we-chat,etc..I also have logins for bank like BOA,welsfargo,chase,credit union,capital one, and many other different banks for transfers and credit card top ups,Retrieving hacked social media accounts,clearing criminal records,increase credit scores,CC hack,hacking computer systems,Website hack,Catch hacker scammers,Phishing emails, that's to mention a few.You can contact me on. ICQ ..........711574456 Email ....andrewalanhacks@gmail.com Text +13238351741
- luord 9y agoI've never liked react (and not only because of the sketchy licensing, in fact, that's fairly low among my qualms about react) so it's nice to see validation. I'm sticking with Vue, even if (and that's a big if) it might also infringe facebook patents.
- GoodInvestor 9y agoLuckily React itself is no longer unique in itself, and project can use the ideas popularized by React with liberally licensed alternatives such as Preact or Inferno.
- shams93 9y agoDo 3rd party implementations like inferno or preact have legal issues from being based off Facebook intellectual property?
- hordeallergy 9y agoWhen has Facebook ever demonstrated any integrity? Why anyone chooses to have any association with them is inexplicable to me.
- altotrees 9y agoI worked or a large company on several web-based apps right around the time React came out. There were some UI issues I thought could be sorted easily using React. After going to our lead dev, who in turn went to our project manager, we received an email from our legal department a few days later that simply stated we would not be using React due to "certain patent constraints." Having not done any prior research, I looked into what the problem might be and was pretty floored with what I found. At first I scoffed when they said no, but after reading about the patent situation I totally get it.
- elgfare 9y agoELI5?
- hellbanner 9y agoWhat will Facebook have to do now - they either have to opensource their infringing software or re-write them convincingly (Wasn't there an Oracle vs Google case about duplicate implementations of a function?)
- erichocean 9y agoWell, now I can use CockroachDB, so that's nice. :)
- erichocean 9y agoTo anyone concerned about React's virtual DOM and diff'ing stuff, and a potential Facebook patent thereof, in early 2012 I wrote and published (under a GLPv3 license) a virtual DOM implementation with efficient diff'ing when I forked SproutCore[0] to become Blossom.[1] So even if Facebook tries to patent that particular invention/innovation, it may not stand up to legal scrutiny depending on the filing date. AFAIK, Facebook didn't do a provisional patent for virtual DOM stuff before July 2012 (long after I released Blossom), because that patent filing would have become public AT THE LATEST on January 1st, 2016 and nothing has come to light that I'm aware of. So…you should be safe (IANAL). [0] Ironically given the subsequent popularity of React, the SproutCore team rejected my virtual DOM approach which is why I had to fork it. Live and learn. I actually came up with the specific virtual DOM + diff design in spring 2008, but didn't get around to writing the code for it until someone paid me to do it (I had asked Apple and they declined). Eventually, the copyright owner of SproutCore (Strobe, Inc.) got bought by Facebook, though I don't recall when… [1] https://github.com/erichocean/blossom https://github.com/erichocean/blossom
- Communitivity 9y agoThanks to David Recordon this has now been fixed and RocksDB is now dual licensed under Apache or GPL 2. The ball has been started to have the same change occur at React, which AFAIK is still under the old BSD+Patents license. Please click through the OP's link to get the current details.
- plastroltech 9y agoThere is so much FUD around this PATENTS file. If Facebook had not included this Patent grant and had released React under only the BSD license then any user would be in the exact situation which everyone is complaining so loudly about being in IF they decide to bring a patent action against Facebook. Specifically, you would be open to being sued by Facebook for violating a patent which they own. What this grant says is for one specific circumstance (you haven't brought a patent suit against them) and for one specific limited set of patents (those related to React), Facebook will not sue you. If you like that protection then don't sue them. If you decide that you do want to bring a patent suit against them then you're right back where you were to begin with. Your one small limited protection is removed and Facebook can once again sue you if you violate one of their patents - just like they could before you started using React in the first place. This business about it being asymmetrical is IMO a distraction. What would it mean for it to be symmetrical? That it would only trigger if you sue them for a patent violation related to React? What does that mean? You don't hold React patents, Facebook does. How would you sue them for a violation of a React patent? It makes no sense.
- kevin_b_er 9y ago> "Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met" We know this statement to be a lie. A deliberate falsehood. There are extra conditions by which you may use or distribute this software. It was never open source.
- webmink 9y agoTo put it concisely, “why is having a patent license until you commence litigation worse than not having one at all?” The answer is subtle. Many corporate lawyers operate on the assumption that all open source licenses that do not mention patents (BSD, MIT etc) implicitly grant a patent license. Clarifying this ambiguity is seen by them as harmful — that’s why approval of CC0 at OSI was abandoned[1], for example. Including an explicit patent grant removes the possibility this could be argued in court and is seen as an escalation of the patent conflict by Facebook. Given many voices at Apache are being quietly guided by corporate counsel, this seems the most likely underlying explanation for the antipathy that's been rationalised out into the open. [1] https://opensource.org/faq#cc-zero https://opensource.org/faq#cc-zero
- rmgraham 9y agoIANAL, but... People should be aware that Atom (the editor) uses React internally, so it's possible you face similar legal exposure without even shipping anything just because you agreed to the terms by installing an editor.
- zengid 9y agoTIL "IANAL" means I Am Not A Lawyer.