News for hackers. Stuff that matters.
Re:Explaining React's license by antoncohen on Saturday August 19, 2017 @12:02AM (#15051593)
Facebook's license is no more dangerous than regular MIT or BSD-style licenses. If you are OK with using MIT or BSD licensed software you should be OK with using Facebook's BSD + Patents software.

Here is why:

MIT and BSD licenses don't have any patent grants, unlike the Apache 2.0 license. If you use MIT/BSD open source software, and some functionality of that software is patented by the author, you could be sued for patent infringement.

If you use software licensed under Facebook's BSD + Patents license, and the author of the software (Facebook) has patented technology in the software (which AFAIK they don't), the author CANNOT sue you.

Now if you turn around and use the author for patent infringement for something else, you lose the patent grant that came with the software, and you are back to a normal plain old BSD license.

The BSD + Patents license is strictly better than the regular BSD/MIT licenses. You lose no rights, you may gain some patent protection.

Major software like Ruby (BSD), Rails (MIT), and FreeBSD (BSD) use licenses without patent grants. Entire businesses are built on top of these pieces of software, e.g., GitHub (Ruby and Rails) and a lot of commercial hardware built on FreeBSD (https://en.wikipedia.org/wiki/List_of_products_based_on_Free...).

Read the patent grant for yourself:

https://github.com/facebook/react/blob/master/PATENTS

Re:Explaining React's license by DannyBee on Saturday August 19, 2017 @12:41AM (#15051717)
"MIT and BSD licenses don't have any patent grants, unlike the Apache 2.0 license. If you use MIT/BSD open source software, and some functionality of that software is patented by the author, you could be sued for patent infringement. " Every single lawyer i've ever spoken to strongly believes implied licenses will protect you very well here. Like, among us open source lawyers, it's pretty much the one thing people agree on.

"If you use software licensed under Facebook's BSD + Patents license, and the author of the software (Facebook) has patented technology in the software (which AFAIK they don't), the author CANNOT sue you."

This is just flat out false, and i'm not sure why you believe this. The termination is broader than the grant. The grant is for patents in a given piece of software, the termination crosses all software.

Concretely: if you use react, and they sue you over patents in notreact, and you countersue, you do not lose your react patent license. They are still welcome to sue you over notreact, there is nothing in this license that will prevent that from happening. It only gave you patent rights to react.

(It also says that if you sue them over notreact, you will lose all patent licenses in all software that use this license, which is why the termination is broader than the grant).

"The BSD + Patents license is strictly better than the regular BSD/MIT licenses. You lose no rights, you may gain some patent protection."

This is also an incorrect legal statement.

Once their is an explicit grant, any implicit grant you would have gotten is extinguished. In this case, the terms of the implied grant were much better for people than the terms of the explicit one. So you are, in fact, losing something

Re:Explaining React's license by chrisco255 on Saturday August 19, 2017 @03:20AM (#15052150)
The problem is that your MIT licensed open source library is not guaranteed to not be in violation of any software patents that may exist in the wild. If Company A publishes an open source library that happens to violate Company B's patents...then Company A's MIT license is not going to protect you against Company B's patent.
Re:Explaining React's license by slavik81 on Saturday August 19, 2017 @04:09AM (#15052296)
Nor would Facebook's patent grant protect you if React were found to violate someone else's patents. That sort of scenario is no different for either licence.
Re:Explaining React's license by IanKelling on Saturday August 19, 2017 @05:56AM (#15052582)
> Once their is an explicit grant, any implicit grant you would have gotten is extinguished.

Citation needed. And if you aren't planning to sue over software patents, then the author is clearly correct that this is strictly better than BSD/MIT alone.

Re:Explaining React's license by DannyBee on Saturday August 19, 2017 @11:34AM (#15053937)
"Citation needed."

Seriously? This is basic IP law 101. No license can be implied if there is an explicit license.

I actually started gathering cite lists for you like I normally do, but instead, i'm not going to in this case. If you really want to argue this point, please go to google scholar and spend the 2 minutes it will take to pull up 100 cases on this.

I don't feel it's fair to argue about a thing without taking the very small amount of time to familiarize yourself with it.

If you find cases that say otherwise, awesome, let's talk about it!

Otherwise, this is like arguing about baseball and asking someone to cite rules because you want to argue that swinging at the ball and missing isn't a strike.

"then the author is clearly correct that this is strictly better than BSD/MIT alone."

They actually are not, as the scope of the implied license is much broader than the scope of the explicit grant here.

Re:Explaining React's license by IanKelling on Saturday August 19, 2017 @04:05PM (#15055298)
Edit: afaik, implicit patent license for free software licenses are unproven in court. It's an interesting idea, and I actually hope it's the case that everyone is getting an implied patent license that will hold up in court. Thanks for the information, I wish I had incorporated it in my original comment.
Re:Explaining React's license by yladiz on Saturday August 19, 2017 @10:54AM (#15053704)
> sue over software patents

The grant isn't specifically about software patents, it's about all patents.

Re:Explaining React's license by IanKelling on Saturday August 19, 2017 @04:29PM (#15055415)
Fair enough.
Re:Explaining React's license by antoncohen on Saturday August 19, 2017 @12:51AM (#15051746)
> Once their is an explicit grant, any implicit grant you would have gotten is extinguished.

The BSD license grants explicit rights to use the software, thereby granting implicit rights to use the patents in the software while using the software as it is intended to be used.

The sentence "redistribution and use in source and binary forms, with or without modification, are permitted" doesn't go away because there is an "additional grant of patent rights".

Re:Explaining React's license by DannyBee on Saturday August 19, 2017 @11:35AM (#15053941)
Actually, it does! Courts will not find implied licenses when there is an explicit one. That's the whole definition of implied vs explicit!
Re:Explaining React's license by mcbits on Saturday August 19, 2017 @12:19AM (#15051647)
I've read it, and I'm pretty sure it says that if you initiate a patent lawsuit against Facebook, you lose the license to use React at all. It doesn't revert to BSD. (EDIT: Apparently that's wrong although the license could certainly be more clear about it.)

If React doesn't implement any of their patents, the patent clause offers nothing extra. If it does, it would be damned nice to know which one(s). Do other libraries (other virtual DOMs, perhaps) infringe?

Re:Explaining React's license by antoncohen on Saturday August 19, 2017 @12:26AM (#15051672)
No, you lose the patent license, not the copyright license.

From Facebook's blog post:

> 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.

https://code.facebook.com/posts/112130496157735/explaining-r...

Re:Explaining React's license by fhrow4484 on Saturday August 19, 2017 @12:33AM (#15051696)
Which one has more value? A file included in the repo, written in legalese, on which Every single source code file's copyright headers point to (and the README file as well), or an ambigous blog post?

Reading the file in its current form (https://github.com/facebook/react/blob/b8ba8c83f318b84e42933...), You lose the license to make, have made, use, sell, offer to sell, import, and otherwise transfer the [React] Software.

Re:Explaining React's license by yorwba on Saturday August 19, 2017 @02:33AM (#15052002)
You lose the license granted in the PATENTS file, but you might not lose the license granted in the LICENSE file. (IANAL, so no idea whether that's true.)
Re:Explaining React's license by chrisco255 on Saturday August 19, 2017 @03:15AM (#15052136)
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.

Does the additional patent grant in the Facebook BSD+Patents license terminate if Facebook sues me for patent infringement first, and then I respond with a patent counterclaim against Facebook?

No, unless your patent counterclaim is related to Facebook's software licensed under the Facebook BSD+Patents license.

Does termination of the additional patent grant in the Facebook BSD+Patents license cause the copyright license to also terminate?

No.

From: https://code.facebook.com/pages/850928938376556

Re:Explaining React's license by mcbits on Saturday August 19, 2017 @12:34AM (#15051698)
My reading must be off, then. Is "under any Necessary Claims" the magic phrase?
Re:Explaining React's license by antoncohen on Saturday August 19, 2017 @12:42AM (#15051721)
Yeah, it is defined at the bottom of the file:

> A "Necessary Claim" is a claim of a patent owned by Facebook that is necessarily infringed by the Software standing alone.

So when they say "license under any Necessary Claims" they are granting a patent license, the copyright license in the LICENSE file is separate.

The FAQ link provided by silentstreet makes it very clear:

> Does termination of the additional patent grant in the Facebook BSD+Patents license cause the copyright license to also terminate? > > No.

https://code.facebook.com/pages/850928938376556

Re:Explaining React's license by silentstreet on Saturday August 19, 2017 @12:35AM (#15051701)
https://code.facebook.com/license-faq which they published a year or so ago explicitly says you keep the BSD license.
Re:Explaining React's license by robocat on Saturday August 19, 2017 @01:53AM (#15051908)
"Does termination of the additional patent grant in the Facebook BSD+Patents license cause the copyright license to also terminate?"

"No."

Above from bottom of page to be clear to agree!

Re:Explaining React's license by quickben on Saturday August 19, 2017 @01:31AM (#15051851)
It's deeper than that.

Say you are a company A, and have product P that uses react.

You find out that company B infringed on a patent in your other product Q.

You sue B.

It turns out B is owned by FB.

Your product P is in trouble.

Re:Explaining React's license by robocat on Saturday August 19, 2017 @01:50AM (#15051902)
"If you are OK with using MIT or BSD licensed software you should be OK with using Facebook's BSD + Patents software." (From GP)

I.e. patent grant nullifies, and you are left with a BSD only license.

Re:Explaining React's license by slavik81 on Saturday August 19, 2017 @03:09AM (#15052117)
The main BSD license file says plainly that Facebook grants you the right to use the software. Nowhere does it say that it is merely a grant of copyrights. While the Facebook Additional Grant of Patent Rights purports to be purely additive, its mere existence changes how I would interpret the scope of that main license file. As such, I find the meaning and implications of Facebook's contract to be unclear. I would not want to depend on it, personally.

The feeling is a bit like stepping into a restaurant that offers lead-free burgers for only $0.99 extra. Theoretically, declining the upcharge is no different than eating anywhere else. Yet...

I am not a lawyer. This is not legal advice.

Re:Explaining React's license by coldtea on Saturday August 19, 2017 @06:40AM (#15052684)
Because you can't just rewrite it in another framework if such a totally contrived case arrive?
Re:Explaining React's license by quickben on Saturday August 19, 2017 @09:50AM (#15053323)
The way I'm reading some related discussions, it seems their main problem is being suddenly open to patent lawsuit.
Re:Explaining React's license by fhrow4484 on Saturday August 19, 2017 @12:30AM (#15051682)
> Now if you turn around and use the author for patent infringement for something else, you lose the patent grant that came with the software, and you are back to a normal plain old BSD license.

> The BSD + Patents license is strictly better than the regular BSD/MIT licenses. You lose no rights, you may gain some patent protection.

Could you provide a citation backing up your claims?

if you read the patent grant for yourself:

https://github.com/facebook/react/blob/master/PATENTS

There's no mention of any patent grant coming with the software

>> "The license granted hereunder will terminate"

"The license" here is the one defined as:

>> 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

and the "Sofware" here is the one defined as :

>> "Software" means the React software distributed by Facebook, Inc.

Re:Explaining React's license by delinka on Saturday August 19, 2017 @08:13AM (#15052962)
You left out the definition of "Necessary Claims":

> > A "Necessary Claim" is a claim of a patent owned by Facebook that is necessarily infringed by the Software standing alone.

Re:Explaining React's license by fhrow4484 on Saturday August 19, 2017 @03:10PM (#15055046)
Ok I see. But if you loose the license to any of those patents, you are infringing those patents by merely using React, aren't you?

I understand the followup question other people have now: What are those patents?

Re:Explaining React's license by hajile on Saturday August 19, 2017 @12:12AM (#15051624)
They have implicit patent grants while Facebook's does not.

http://en.swpat.org/wiki/Implicit_patent_licence

Re:Explaining React's license by antoncohen on Saturday August 19, 2017 @12:23AM (#15051659)
I don't see how that changes anything. If you sue Facebook you lose the explicit patent grant, but you are still left with a BSD license that allows "redistribution and use in source and binary forms", so you still have the implicit patent grant.
Re:Explaining React's license by rockdoe on Saturday August 19, 2017 @05:04AM (#15052446)
This doesn't work if there's an explicit grant. You can't pretend the PATENTS file isn't there.
Re:Explaining React's license by saghm on Saturday August 19, 2017 @12:13AM (#15051633)
I don't do any webdev, so I have no horse in this race, but I find it plausible that some developers would be more worried about Facebook infringing their patents than the respective organizations that develop Ruby, Rails, and FreeBSD.
Re:Explaining React's license by jancsika on Saturday August 19, 2017 @12:35AM (#15051700)
> Now if you turn around and use the author for patent infringement for something else, you lose the patent grant that came with the software, and you are back to a normal plain old BSD license.

I see no reason to assume that it reverts "back to a normal plain old BSD license" in such a case.

The article linked by Stallman's response that this is a nonfree license doesn't make that assumption, either:

https://lists.gnu.org/archive/html/directory-discuss/2017-01...

Re:Explaining React's license by CodeWriter23 on Saturday August 19, 2017 @06:21AM (#15052636)
> Now if you turn around and use the author for patent infringement for something else, you lose the patent grant that came with the software, and you are back to a normal plain old BSD license.

Um, no. Let's say you own patent A and Facebook has granted you rights to patents B and C. Then let's say Facebook infringes your patent A and you sue them. You lose the license to use patents B and C. That's what the PATENTS file says. Read it. What it doesn't say is because Facebook is publicly traded, it has a fiduciary duty to shareholders to defend all of its intellectual property so if you continue using anything covered by a Facebook PATENTS grant, you better be prepared to be sued for patent infringement. There is no implicit patent grant in the BSD license. Nothing in the BSD license shields the user of BSD-licensed software from patent litigation brought by any party.

Re:Explaining React's license by pdfernhout on Saturday August 19, 2017 @01:41PM (#15054581)
From a lawyer: https://www.elcaminolegal.com/single-post/2016/10/04/Faceboo... "True, the BSD License does not explicitly state that the licensee receives the right to use the licensed software under the licensor’s patents.* But I’ve never heard any lawyer postulate that that document does not grant a license to fully exploit the licensed software under all of the licensor’s intellectual property. Anyone who pushes that view is thinking too hard."
Re:Explaining React's license by CodeWriter23 on Wednesday August 23, 2017 @04:26PM (#15084755)
The PATENTS file doesn't explicitly state "litigants may continue to use the IP under the BSD license". What it does explicitly say is "litigants lose the patent rights", which in essence serves to revoke the BSD license. Can't have it both ways.
Re:Explaining React's license by tomelders on Saturday August 19, 2017 @07:40AM (#15052835)
The problem is that the descision to use react is not longer a descision for the developers in an organisation. It's now a descision for the legal team. And thats not good.

This is the situation I now find myself in. The next few months will be spent removing react and immutable from the project I'm working on because th legal department say so.

This is quite frankly, bullshit.

Re:Explaining React's license by jnbiche on Saturday August 19, 2017 @08:49AM (#15053072)
Have you looked into preact? For most projects, it's just a few lines in webpack. Immutable js is different, but shouldn't be that much work.
Re:Explaining React's license by tomelders on Saturday August 19, 2017 @05:13PM (#15055645)
Yeah. And found it difficult to work with. The DOM seems to disconnect from the VDOM leading to oprhaned elements hanging around and no way to rectify it. Inferno is probably what we'll go with. But either way, it's a massive and undersireable compromise.
Re:Explaining React's license by k__ on Saturday August 19, 2017 @06:39AM (#15052683)
That's how far the framework war has come. FUD about licensing when they can't win with technical finesse anymore.
Re:Explaining React's license by whipoodle on Saturday August 19, 2017 @10:37AM (#15053604)
That is my sense as well.