Slashdot Mirror


Facebook Petitioned To Change License For ReactJS (github.com)

mpol writes: The Apache Software Foundation issued a notice last weekend indicating that it has added Facebook's BSD+Patents [ROCKSDB] license to its Category X list of disallowed licenses for Apache Project Management Committee members. This is the license that Facebook uses for most of its open source projects. The RocksDB software project from Facebook already changed its license to a dual Apache 2 and GPL 2. Users are now petitioning on GitHub to have Facebook change the license of React.JS as well.

React.JS is a well-known and often used JavaScript Framework for frontend development. It is licensed as BSD + Patents. If you use React.JS and agreed to its license, and you decide to sue Facebook for patent issues, you are no longer allowed to use React.JS or any Facebook software released under this license.

43 comments

  1. Actual License: https://github.com/facebook/react/ by Antique+Geekmeister · · Score: 1

    The actual license is at https://github.com/facebook/re... .

    The license would seem reasonable on the face of it, but it is not a standard BSD or other well-established license. The third clause is Facebook specific. It's just the sort of customized and confusing additions that the Open Source Initiative and the Apache projects leadership try to avoid.

  2. Re:Actual License: https://github.com/facebook/rea by Antique+Geekmeister · · Score: 3, Informative

    I'm afraid I'm going to have to retract part of my note. The ReactJS license if fine: it was the patent encumbered RocksDB license, which that was the issue.

    RocksDB has already corrected the issue on their end, their new license file is at https://github.com/facebook/ro.... It was corrected a week ago today.

  3. Re:Actual License: https://github.com/facebook/rea by Anonymous Coward · · Score: 1

    So in other words there is no point in commenting here except for trolling purposes, because the story itself is a non-story.

  4. so ? by martiniturbide · · Score: 1

    People that request the change of license of ReactJS want to sue Facebook? That is not a good explanation on why they request a license change. It will be better if the slashdot post explains better the reassons (real reassons) why there are people requesting the change of license.

    1. Re:so ? by martiniturbide · · Score: 1

      This was better explained on the petition "As a user of React.JS in an ASF top-level project (Apache CouchDB), please consider re-licensing React.JS under similar terms. Otherwise, many ASF projects such as our own will have to stop relying on and building with React."

  5. Re:Actual License: https://github.com/facebook/rea by Anonymous Coward · · Score: 2, Insightful

    What's really odd about this whole situation is that this FB license and the associated patent grant are still more comprehensible to an average person than any of the GPL licenses are.

    I've done a very quick check, and if my counting of words is right then the GPLv2 has nearly 3000 words, and GPLv3 appears to have over 5500 words in it. The license and patent grant in question here have just over 500!

    Something is pretty fucked up with the GPL family licenses if they need 6x to 10x the number of words than this FB license and patent grant require.

    Now the Apache license seems to be around 1500 words, so it's not as bad of a situation as the GPLv2 or GPLv3 situation is, but it's still not good when it requires 3x the number of words.

    Freedom is inherently a simple concept. It shouldn't require 3000 or more words to describe. The MIT and BSD licenses do it just fine with a few hundred words.

  6. Re: Actual License: https://github.com/facebook/re by Anonymous Coward · · Score: 0

    GPL should just die. Yes whatever version.

    Apache, LGPL, BSD is enough.

  7. Re:Actual License: https://github.com/facebook/rea by GrumpySteen · · Score: 1

    This is a ridiculous argument. The number of words in a document does not indicate how comprehensible that document is.

  8. Shouldn't be using Faceware by Anonymous Coward · · Score: 0

    All faceware has spyware for the zuck.

    1. Re:Shouldn't be using Faceware by Anonymous Coward · · Score: 0

      Faceware is actually pretty good stuff. No spyware, and the zuck isn't writing it.

  9. The Anonymous Coward License: by Anonymous Coward · · Score: 0

    "ACL License V1.0

    You may use this software for whatever you want, for free, for whatever purpose, forever, but you may not file a lawsuit against, or murder the contributors to this software, or any entity claiming to have created this software, or you will be forbidden from using it forever. Any and all problems resulting from use of this software are your own fault as a result of not examining the code. You can choose to not use this software. You can contribute code to this software."

    1. Re: The Anonymous Coward License: by Paul+Fernhout · · Score: 1

      And your AC license has the same issue. If you build your business around such AC software, and AC does something nasty to you like pollute your water supply or infringe your patents, and you sue over that harm, you lose the right to use the AC software in your business. It is a Trojan Horse license in that sense. See.also my comments on this starting in 2015: https://github.com/Automattic/...

      --
      A 21st century issue: the irony of technologies of abundance in the hands of those still thinking in terms of scarcity.
  10. Stupid by Gravis+Zero · · Score: 0

    Stop using bloated frameworks for webpages. If you want to make an application, WRITE A GODDAMNED APPLICATION!

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:Stupid by hord · · Score: 3

      From what I have seen, React is actually pretty streamlined. You can dump HTML straight into a rendering function. Angular (especially 2) is a horrible nightmare that requires a PhD in Angular just to understand. And when you talk about bloat... write an application on which platform? I'd like to be O/S ambivalent solution which is what? Good luck with any dynamic language. What's left... Java? Bloat? HAHAHAHA.

      Face it. We're all doomed.

    2. Re:Stupid by Anonymous Coward · · Score: 1

      Here's a nickel, kid. Buy yourself a clue.

    3. Re:Stupid by Anonymous Coward · · Score: 0

      Hey, man, most of us decided to stop building mud huts in favor of bricked and framed structures. If we want to take our tools to make a metropolis, just try and stop us.

    4. Re:Stupid by tlhIngan · · Score: 1

      Stop using bloated frameworks for webpages. If you want to make an application, WRITE A GODDAMNED APPLICATION!

      And what language and platform should one do this? Windows? Seems pretty reasonable - after all, no one uses macOS or Linux, right? Or Android or iOS.

      Or maybe we do Android, and ignore iOS and Windows and people who use desktops?

      The reality is - the web browser has become the universal platform. With very little code, you can write an application in a web browser that runs on practically all platforms, even ones you think no one cares about (hello Windows Phone). It's the universal runtime, something you can consider that practically everyone who will use your application has access to.

      Oh, and people are writing applications as applications. Thanks to stuff like NodeJS, what's happening is the "application" is really a web browser hard coded to a specific web site.

    5. Re:Stupid by Gravis+Zero · · Score: 1

      And what language and platform should one do this? Windows? Seems pretty reasonable - after all, no one uses macOS or Linux, right? Or Android or iOS.

      Or maybe we do Android, and ignore iOS and Windows and people who use desktops?

      C++ with Qt works on all of those platforms and more.

      --
      Anons need not reply. Questions end with a question mark.
  11. Re: There is only one open source license. by Anonymous Coward · · Score: 0

    That's called public domain. You're welcome to put any code you write in the public domain.

  12. Re:Actual License: https://github.com/facebook/rea by Antique+Geekmeister · · Score: 3, Insightful

    > This is a ridiculous argument. The number of words in a document does not indicate how comprehensible that document is.

    Or how safe. In many contracts, the devil is in the details. GPL has evolved to a longer license, and explicitly included patents in GPLv3, because various companies and individuals have tried to legally and illegally violate its stated goals. The more explicit license of GPL has helped protect us from monopoly control of media and of data, and is now helping protect developers and computer users from patent abuse.

  13. Re:Actual License: https://github.com/facebook/rea by Anonymous Coward · · Score: 1

    It sure does in this case. Read the BSD license and the patent grant in question. The read the GPLv3. The BSD license and patent grant are far easier to comprehend than the GPLv3.

    Since you seem to be having trouble with this pretty basic concept, let's describe it a different way that you may be able to comprehend better. Let's say that we have a directory containing some text files, and we'd like to perform some basic manipulation on each of them.

    One programmer, when given this task, writes a 6 line Perl script in 5 minutes. The script runs quickly, and gets the job done perfectly in under a second.

    Another programmer takes a week to write a 600 line enterprise-style program in Java. It supports dependency injection, XML configuration files, and uses as many GoF design patterns as is possible. It takes 35 seconds to start up, and doesn't actually complete the job because it fails part-way through due to a InputTextFileFactory class not being able to dynamically load a InputTextFileLineComponentVisitor class due to an incorrect classpath.

    You're basically saying that the much longer Java program that took a week to develop and that doesn't actually work is better than the Perl script that was finished in minutes and ran perfectly.

    Here's an even shorter way of describing your argument: wrong.

  14. Re:Actual License: https://github.com/facebook/rea by Anonymous Coward · · Score: 0

    That BSD 3-clause license is not the problem, the problem is the PATENTS file alongside it. This is a one sided agreement - Facebook promises not to assert any patents it may hold over the ReactJS code against you for using the said opensource code, and in return you and all your company's subsidiaries and associated companies must promise not to assert any patents against Facebook for anything ever.

  15. Re:I use the Trump license for all my software nee by Z00L00K · · Score: 1

    The workaround would be to have one patent holding company and another company using the software. That way you have different entities involved and the problem with the license is solved.

    --
    If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
  16. Re:Actual License: https://github.com/facebook/rea by hord · · Score: 3, Insightful

    GNU and the FSF have their own version of "Freedom" that is used as the philosophical basis for their licensing. It's a completely different mindset from the people that use MIT/BSD licensing.

  17. Re:Actual License: https://github.com/facebook/rea by Anonymous Coward · · Score: 0

    > Read the BSD license and the patent grant in question. The read the GPLv3. The BSD license and patent grant are far easier to comprehend than the GPLv3.
    That depends upon your definition of "comprehend". The BSD+Patents licence leaves many questions completely unanswered, where the GPLv3 at least partially answers them.

  18. "Bill of Rights: TL/DR"? by Anonymous Coward · · Score: 0

    You've got it backwards. It takes a lot fewer words to say "you have no rights" than it takes to enumerate the rights you have.

    Don't you think the US would be in much better shape if it's Bill of Rights contained 20-30% more words than it did?

    1. Re:"Bill of Rights: TL/DR"? by Anonymous Coward · · Score: 0

      Words that include "only in times of war can the populace arm themselves"?

    2. Re:"Bill of Rights: TL/DR"? by Anonymous Coward · · Score: 0

      aaand since we are at war with abstract nouns forever, we get all the guns we want!

    3. Re: "Bill of Rights: TL/DR"? by Anonymous Coward · · Score: 0

      Guess what - you are wrong. In fact, during the constitutional convention where the bill of rights was debated, some of the delegates were worried about putting any rights on paper, in case "some fool in the future" (actual quote from the Georgia delegates) takes these as a list of enumerated rights, leaving any unstated rights withheld.

      Short version: see the 9th and 10th amendment that specifically say anything that isn't granted to the federal government in the constitution are the inherent rights of the states or the people.

  19. Who cares? by Anonymous Coward · · Score: 0

    Ignoring the fact that it's from Facebook, this thing is just yet another Javascript UI framework. Web front-end developers have the attention span of a fruit fly. It will be replaced by the next hot framework in 6 months or so. Ignore it and you can be the first on the new, cool bandwagon with a better license.

  20. Re:I use the Trump license for all my software nee by Anonymous Coward · · Score: 0

    What does this have to do with the comment you were "replying" to?

    Oh, wait... absolutely nothing, and you just posted an unrelated reply to the "fr1st ps0t" so your comment would get more prominence than everyone else's. Because you're more important, right?

  21. Bad Move, Apache by bill_mcgonigle · · Score: 2

    Apache 2.0 could be tweaked like this to incorporate what Facebook is trying to do. They really should do it - it's an oversight and does not do enough to squash the patent trolls. Facebook is doing the right thing for the industry, even if the wording needs help. Apache Legal might forget what these licenses are for in a misguided quest for purity.

    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 and copyright licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

    --
    My God, it's Full of Source!
    OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    1. Re:Bad Move, Apache by Anonymous Coward · · Score: 1

      This language and concept of preventing or punishing possibly justifiable legal action in a license for an open programming framework is beyond misguided, it's downright dangerous and could set a terrible precedent.

      BSD+Patents should have never been created in the first place.

    2. Re:Bad Move, Apache by Anonymous Coward · · Score: 0

      To be equitable, Facebook, and Apache by the looks of that license, needs to agree not to assert any patent claims against me ever. As it stands, they only agree not to assert patent claims against my use of ReactJS, or whatever Apache software falls under that license but I have to agree not to assert any patent claims against them, and also to prevent any affiliates from asserting patent claims against them for anything, ever.

      It is less of a problem for Apache, as everything they release is under that license (but can you rely on that for the future, without the license explicitly protecting you?) For Facebook though, they clearly have other software that is not open sourced under a similar license, and they most likely hold patents over it. The same goes for Google with all the opensource Android code they release under Apache license, and any other company using Apache and other patently viral licenses.

  22. Re: Actual License: https://github.com/facebook/re by Anonymous Coward · · Score: 0

    The purpose of the GPL is to establish computer user rights by using copyright against itself. Sometimes that takes more words than the average person would consider necessary. Considering it's a legal document, wouldn't you rather have a well-clarified license that holds up to legal scrutiny and protects your users? I'll sacrifice a few KB in my repositories to ensure the reader knows exactly what they can do with my work.

  23. Re: There is only one open source license. by Anonymous Coward · · Score: 0

    If we're being candid, any code with open source is in the public domain. Agreements for attribution and the like are simply formalities. They ultimately become recommendations without enforcement. And a lot of times, enforcement harms all parties. When the code is available for all eyes, disagreements over it looks more like children fighting over an imaginary ball, rather than anything tangible.

  24. Re:I use the Trump license for all my software nee by Anonymous Coward · · Score: 0

    This. And I just ran out of mod points to mod him down, too. Sad.