10 ms·
The first thing I do now on each Facebook open-source reveal, is to check the PATENTS file for the toxic second paragraph, to see if they've changed it. Sadly,
by zellyn 12y ago
The first thing I do now on each Facebook open-source reveal, is to check the PATENTS file for the toxic second paragraph, to see if they've changed it. Sadly, no. I can't imagine being able to use this at any decent-sized company with lawyers. :-( https://github.com/facebook/react-native/blob/master/PATENTS https://github.com/facebook/react-native/blob/master/PATENTS
See for example the discussions at https://news.ycombinator.com/item?id=9111849 https://news.ycombinator.com/item?id=9111849 (eg. https://news.ycombinator.com/item?id=9113515 https://news.ycombinator.com/item?id=9113515)
Full disclosure: I work at Google, where many are sad to not be able to use recent Facebook code.
- kendallpark 12y agoWhat would you suggest as a solution to this? What should Facebook do?
- benologist 12y agoIt's a near-certainty that any tech giant is going to have patent issues with any other tech giant, not bundling the consequences of this with their open source licenses would be a good start.
- deleted 12y ago[deleted]
- deleted 12y ago[deleted]
- andrea_sdl 12y agoI'm curious too. :)
- anfedorov 12y agoI am not a lawyer, but perhaps they could just skip the second paragraph? I understand the motivation behind discouraging people from suing you, but putting "you will not sue us for patent infringement" into a software license is a bit weird.
- matthewmacleod 12y agoI've raised this many times before, but you shall not sue us is emphatically not part of the software license. It's a separate grant of patent rights.
- anfedorov 12y agoAre you nitpicking legal semantics (including something in one agreement or another), or saying it's possible to legally use React-Native while suing Facebook for completely unrelated patent infringement?
- realityking 12y agoINAL. You have to differentiate between copyright and patents. From the perspective of copyright you're perfectly in the clear, the grant of rights that's part of the BSD license will not be revoked. What will be revoked is the right to Facebook's patents insofar they apply to React.js. First of all that that requires, that Facebook actually has patents that apply to React.js. It also means you're no worse off than without a patent grant. I prefer the Apache 2.0 wording, but this seems to be blown widely out of proportion.
- magicalist 12y ago> It also means you're no worse off than without a patent grant. No, see discussion above re: implicit and explicit patent grants. You don't fall back to an implicit grant when an explicit one is revoked.
- matthewmacleod 12y agoThe latter. It is absolutely possible to legally use React while going ahead and suing Facebook. You do not lose your license to React by suing Facebook. What you do lose is an explicit grant of additional patent rights - the grant given in the PATENTS file. Note that there is no specification therein regarding what patents might be covered; it's completely possible that none of Facebook's patents have anything to do with React. I haven't looked. in any case, patents are totally distinct from you license to use React.
- danschumann 12y agoIt says if you get into a patent disagreement with their company you can no longer use react, whether they sue you, or you sue them. I'm not planning on suing facebook, but if they sue me, suddenly I have 2 problems, the lawsuit, and not being able to use react anymore. It should only regard to react. If the clause is to protect their right to develop react, it should only pertain to such.
- mbrock 12y agoPlease don't spread fear and uncertainty based on incorrect understanding of licensing. Suing Facebook does not void your license to use React. It voids your additional patent grant. That's different.
- kendallpark 12y agoSo what does the additional patent grant actually grant?
- realityking 12y agoThe guarantee that Facebook won't sue you if they have patents that apply to React.js. To put it simple, without the patent grant you'd be worse off. But with the Apache 2.0 version you'd be better off.
- nostrademons 12y agoNot quite - there's an implied patent license that comes with licenses that mention nothing about patents, because otherwise nobody could use the code. Once the license explicitly gives a patent grant, it replaces that implied patent license. Think of it like C++ default constructors. https://news.ycombinator.com/item?id=9113515 https://news.ycombinator.com/item?id=9113515
- jonhester 12y agoSo I guess you don't use any Apache licensed products at work either? Since the only reason Facebook added the PATENTS file is to keep the new BSD license in line with their old Apache license. http://www.apache.org/licenses/ http://www.apache.org/licenses/
- plorkyeran 12y agoApache 2.0's license clause does not have an equivalent to "The license granted hereunder will terminate, automatically and without notice, for anyone that makes any claim (including by filing any lawsuit, assertion or other action) alleging [...] that any right in any patent claim of Facebook is invalid or unenforceable."), which is the problematic part as it means that you can't even defend yourself if Facebook sues you.
- DougBTX 12y agoThe Apache version is: > 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. This seems equivalent to me, is the Facebook one broader?
- plorkyeran 12y agoThat says that if you claim that the thing being licensed violates your patents, your grant to their patents covering the thing is terminated. Facebook's patent grant has that, but also invalidates the patent grant if you claim that any of their patents are invalid (which you are likely to do if Facebook sues you for violating one of their patents).
- capkutay 12y agoSo what if Apache committed something that is infringing on your patents and you sue? Does that mean you would have to stop using that specific apache licensed software (e.g. hadoop, maven, etc)
- burke 12y ago> The license… will terminate… for anyone that [claims] infringement of any patent… by Facebook… whether or not such claim is related to the Software. > The license… will terminate… for anyone that [claims] infringement of any patent… by any party if such claim arises… from any software, product or service of Facebook. > The license… will terminate… for anyone that [claims] infringement of any patent… by any party relating to the Software. > The license… will terminate… for anyone that [claims] that any right in any patent claim of Facebook is invalid or unenforceable. Wow.
- MollyR 12y agoThat is a big excitement killer
- iheart2code 12y agoSo, basically, if you sue Facebook on grounds of patent/copyright infringement for any reason, you don't get to use their software?
- burke 12y agoYes, and the license could easily be construed to imply that your license is immediately revoked if you tweet "Facebook infringes on patents".
- krschultz 12y agoThat plus you accept that all of Facebook's patents are valid.
- matthewmacleod 12y agoNo, it doesn't mean that. It means that you lose the additional license to use any of Facebook's patents that may cover React. These may or may not exist.
- emodendroket 12y agoThen why say "whether or not such claim is related to the Software?" That would imply just the opposite to me.
- matthewmacleod 12y agoAs with the other discussions on this matter, I remain sceptical that this clause is a problem. The general argument is made that there is an implicit patent license granted when an open-source license is applied to a software product, and that this explicit patent license somehow overrides the implicit patent license (despite not being part of the license itself). I've received different advice on the matter, so YMMV. But at the Google level, I'd imagine there'd be channels to negotiate an acceptable solution to this issue…
- deleted 12y ago[deleted]
- serve_yay 12y agoYes, it strikes me as a fig leaf for something else. I'm not sure what, though.
- liviu 12y agoDon't be sad, you will use Angular 2.x when will come out.
- aikah 12y agoWell, potentially, if Angular 2.x adopts the virtual DOM like React , Angular directives could be used in native Apps,just like React Native. There is no reason why it can be done.Any framework that isn't tightly coupled with the DOM can be "ported" to plateforms outside the browser.
- laurencerowe 12y agoAre you be able to use BSD licensed code without additional patents grants?
- chrisdevereux 12y agoAny idea what there is in React that Facebook have or are likely to have Patents over? Presumably, using another React-like framework might open you up to issues with these without the (limited) protection of the patent grant.
- deleted 12y ago[deleted]
- chrisdevereux 12y agoI'm interpreting the "this license will revoke" as referring to the additional patent grant, not the BSD license for use of the software.
- guscost 12y agoI don't think anyone has been able to answer this (and I suspect anyone at Facebook who might know is not allowed to bring it up). But I think you've made a very good point. If you're not going to avoid all component-based and/or virtual-DOM view engines, picking an alternative to React may not give you any advantage in a legal situation.
- dustingetz 12y agoThere is prior art, the first time I saw vdom was at Clojure Conj 2012, six months before React was publicly released. Project was called "webfui" by Conrad Barski, https://m.youtube.com/watch?v=HeI5-D7SQe8 https://m.youtube.com/watch?v=HeI5-D7SQe8
- kibibu 12y agoYou just terminated all of your Facebook patent licenses, just then, by your assertion alleging that any right in any patent claim of Facebook is invalid or unenforceable.
- peterjmag 12y agoThat's a good point actually. Regardless of your personal opinion on the applicability of the clause, if your company's lawyers say you can't use FB's software, you're pretty much out of luck. I wonder how many companies and developers have been effectively blocked out of the ecosystem as a result.
- mrinterweb 12y agoI guess lawyers like run-on sentences. That second paragraph is one sentence, and is one of the longest I have seen. I guess the more complicated a sentence is composed, the more opportunity for legal interpretation.
- Fishkins 12y agoYahoo and Netflix are using React, right? Do you (or anyone) know why they consider the license acceptable, but Google wouldn't?
- neilk 12y agoMutually assured destruction. If Facebook sued Yahoo, Yahoo could sue Facebook right back. I'm not really sure what Facebook thinks they are gaining with this clause. They aren't going to stop patent trolls, because they are non-practicing entities. Maybe they want to guard against someone making improvements to React and then suing Facebook if they do something similar later.
- Fishkins 12y ago> Mutually assured destruction Wouldn't that apply to Google as well?
- fspeech 12y agoIf you think you can dominate your opponent then MAD is not the most desirable outcome.
- nutate 12y agoPre Mayer Yahoo did sue Facebook over patents. They settled. As far as I could see the fact that the only big patent fight fb has been in ended with a company with a boatload of lawyers being cool with these terms should bode well for anyone else. If you have patents they shouldn't rely explicitly on open source library x y z, but I am not a lawyer either.
- haberman 12y ago> Full disclosure: I work at Google, where many are sad to not be able to use recent Facebook code. I'm confused. The Facebook PATENTS stuff seems no worse than MIT-licensed code that includes no patent grant at all. In other words, if the PATENTS termination clause takes effect, then the software essentially reverts to being plain MIT, instead of MIT + patent grant, right? EDIT: Appears the issue is implicit vs explicit patent grant, and the Facebook PATENTS stuff can indeed be worse than no patent grant. https://news.ycombinator.com/item?id=9113515 https://news.ycombinator.com/item?id=9113515
- bryanlarsen 12y agoIANAL, but the argument seems to be that there is an implicit patent grant in the MIT license. MIT gives you a license to use the software, and you can't use the software without a patent grant, therefore you have an implicit patent grant. The existence of an explicit patent grant means that you can use React without an implicit patent grant, so you don't just automatically get one if you lose the explicit patent grant.
- teamhappy 12y agoWouldn't that implicit patent grant be in every other BSD-style license as well? As far as I understand it, the patent grand terminates when you end up in court with Facebook and then you're effectively distributing software that may or may not be covered by patents you don't own/have a license for.
- jsprogrammer 12y agoNo, being in court with Facebook is only one place where the termination can happen: >anyone that makes any claim (including by filing any lawsuit, assertion or other action) Even just stating that a Facebook patent is invalid terminates your license. >any right in any patent claim of Facebook is invalid or unenforceable Even just stating your belief that software patents are invalid or unenforceable terminates your license. However, if you read closely, the last paragraph starts out with: >The license granted hereunder There isn't actually any license granted after that clause (it occurs before this clause), so I'd argue the entire last paragraph is meaningless puffery.
- bucky 12y agoThanks for bringing this up. I'm now waiting to hear from our lawyers to know if we should avoid using this.
- guelo 12y agoThis license is great since it reduces the chance of patent litigation in general.
- azakai 12y agoIf all companies issued code under these terms, and they all used each others' code, it would certainly make patent lawsuits impossible between them. That might or might not be Facebook's goal in the license, but regardless, it seems like a great outcome. Likewise, avoiding that outcome might or might not be Google's reason for not using this code, but since other companies are, it seems in need of explanation.
- magicalist 12y ago> it would certainly make patent lawsuits impossible between them Or they sue each other anyways and it takes another 5-10 years to figure that situation out, hobbling any OS development under those licenses while there are very clear and widely used and accepted patent grants available. There's a reason the FSF recommends Apache 2.0 if you aren't going to go GPL.
- azakai 12y agoI get that Apache and GPL are well-established (perhaps not GPL3 yet though?), and that encourages stability to use them. But this new patent license is stronger. If it would make the industry safer from patent armageddon in the long term, it might be worth the effort to popularize yet another license.
- magicalist 12y agoThe reason is not just that Apache is well established, it's that it's sane in its extent. Let's say 10 years from now Facebook decides to go on the warpath over fairly bogus patents. The EFF puts the headline patent on their Most Bogus patent busting list and then puts out the cry for "who is with us?" No company using any Facebook open source code answers. How does that make the industry safer?
- kriro 12y agoCan anyone tell me how this clause is interpreted when I use React in Germany? German law (simplified) claims that no software patent is valid unless it solves a technical problem (in the physical problems sense). Does this mean since I accept German law as valid by being a citizen of the country I implicitly claim some (ergo any) Facebook patents are invalid and the clause triggers automatically? Is living in such a country enough or do I have to actively state "Facebook patents..invalid IMO"? What about the German government itself using React? I'm mostly interested in the interpretation since it's a curious use case. The actual grant you'd lose is pretty much useless in that scenario either way (as it can't really be granted due to the software not patentable issue).
- teamhappy 12y agoI'm pretty sure you're not making any claims in other jurisdictions implicitly — that would be somewhat terrifying. Whether the clause is triggered or not shouldn't matter if the patents aren't valid in your jurisdiction. You don't have to state your rights — you just have them (there might be exceptions to this). --- I'd love to get an answer to the bigger question as well.
- zaroth 12y ago> (there might be exceptions to this) Are there ever! For example, right against self-incrimination must now be invoked explicitly. Refusing to answer a question (they will say "being evasive") can be used against you unless you affirmatively state you are exercising your right to remain silent. [1] [1] - http://www.abajournal.com/news/article/chemerinsky_silence_is_not_golden_supreme_court_says/ http://www.abajournal.com/news/article/chemerinsky_silence_i...
- teamhappy 12y agoFortunately we germans don't have these kind of problems (yet.)
- pluma 12y agoI'm fairly certain that interpretation is bogus. Facebook holds patents granted in the US. Those patents to do not apply to all other jurisdictions. German law doesn't consider US software patents invalid, they just don't apply under German jurisdiction. Basically, if Facebook can't sue you for patent infringement in the first place, the clause doesn't apply. If you use React in a product that enters the US market (or any market that is subject to US patent law), that's a different story. That said, I'm suspicious that the entire thing is not enforceable in Germany in the first place (to clarify: I'm not claiming it's invalid, just speculating that it may not be enforceable in German courts). German contract law is actually pretty restrictive when it comes to what may or may not be in implicit agreements like software licenses. Case in point: WhatsApp was told off in Germany because it blocked the accounts of users who used third-party clients. Using third-party clients was explicitly forbidden in the WhatsApp ToS, but the clause was considered "surprising" and therefore invalid. The ruling argued that using third-party clients was accepted by most popular similar apps and losing access (not just in the third-party client, but in WhatsApp proper) because of doing that could not reasonably be expected by users. There are also serious restrictions to what rights you can waive. Not only doesn't the public domain exist in German law (you can grant a universal unrestricted non-exclusive license, but you can't waive your ownership completely), nor can you completely disclaim responsibility (e.g. you can still be sued for intentional harm even if you give something away for free). Another example was Walmart in Germany trying to prohibit employees from entering romantic relationships with each other (and failing, resulting in lots of bad PR). There's a reason contracts in Germany typically include a clause stating that even if any single clause is legally invalid the other clauses (or even "the spirit of those clauses" in so far as it can be enforced otherwise) still remain in effect. I'm not sure whether this is actually required, but the idea is that it prevents contracts from becoming invalid because of any single clause being ruled invalid.
- WimLeers 12y agoIf they're serious about open source, they should just Unlicense it. http://unlicense.org/ http://unlicense.org/
- rrubmo 12y agoI'm quite a noob concerning law stuff, can you please provide a little explanation about its patent? Thank you for your attention.
- dmihal 12y agoI'm not very familiar with the specific details of software licencing, can someone explain this situation to me?
- runn1ng 12y agoWell, you can make a pull request editing it. /s
- albemuth 12y agoThat trick did work on Elon Musk.
- Dewie 12y ago> Full disclosure: I work at Google, Good for you buddy.
- xanderjanz 12y agoI asked the FB Engineers that were manning the Open Source booth at F8 today about this. They assured me that it wasn't a threat, or any change in ideology on their end as open source contributors. That they were also concerned with the community, and that their lawyers were looking into it currently. Not really an answer, but at least they awknowleged the criticisms.
- allworknoplay 12y agoYeah, it'll be nice when the license actually reflects this. Until then I wouldn't build my business on it, ever.
- jballer 12y agoI wrote about something similar with VP8, which is highly patent-encumbered. Google was like: 1. You have a license to our related patents 2. You're on your own if someone else claims that your use of our stuff infringes their patents 2a. But if the party suing is also a licensee, they lose their license. 3. You lose your license if you come after us for anything. These kinds of licenses have network effects, and are only really effective in a mutually-assured destruction scenario. http://ipjournal.law.wfu.edu/2011/03/googles-afraid-its-free-beer-may-have-a-price-tag/ http://ipjournal.law.wfu.edu/2011/03/googles-afraid-its-free...
- magicalist 12y agoThis is quite an out of date article and your #3 is totally wrong. Not only did the call for patents never actually materialize anything (12 supposed but never named companies in a press release four years ago), Google bought out the MPEG LA's claims anyway[1]. Meanwhile the VP8 patent grant[2] is exactly the kind of thing being contrasted here: you lose your license to the VP8 patents only if you sue over patent infringement in VP8 itself. [1] http://arstechnica.com/information-technology/2013/03/google-mpeg-la-agree-to-royalty-free-terms-for-vp8-video-codec/ http://arstechnica.com/information-technology/2013/03/google... [2] http://www.webmproject.org/license/additional/ http://www.webmproject.org/license/additional/
- josteink 12y ago> The first thing I do now on each Facebook open-source reveal, is to check the PATENTS file for the toxic second paragraph, to see if they've changed it. Sadly, no If I'm reading this right, any fork of this code is not covered by the patent-protection can be sued into oblivion, by Facebook themselves if they feel threatened. Wow. Ability to fork is crucial for real life open-source projects, so having a clause like that pretty much nulls out any open-source benefit which may have been there in the first place.