GithubHelp home page GithubHelp logo

Comments (10)

ian-kelling avatar ian-kelling commented on May 29, 2024 1

Unfortunately the GC cannot commit to future licenses, and should a situation arise where > GPL4.0 produces text that explicitly prevents the GC from using the license, we would have > to rescind the text.

I work at the Free Software Foundation, which wrote and maintains the GPL license. So please read what I have to say. As far as I can tell, did not read the link at the start of my issue, which was the most important part of the issue https://www.gnu.org/licenses/identify-licenses-clearly.html. Please go to that link, and read it. If you had read that, you would know that GPL 3.0 is actually one of 2 licenses when applied to software: "GPL 3.0 or later", or "GPL 3.0 only". If you don't state which one, the actual license you are using is ambiguous, and will cause problems. In the file publishing-open-source-code.md, that is the mistake you've made. If you take nothing else from this issue, please read https://www.gnu.org/licenses/identify-licenses-clearly.html !

Also, the license "GPL 3.0 or later" does not mean you are recommending using GPLv4 before its been written. The name of the license IS "GPL 3.0 or later", and that license will only ever include the GPLv3 text. The "or later" is a matter of license compatibility, allowing for whoever you distribute that software to, to then redistribute it under a later version of the GPL. You already endorse using the Apache license, and the MIT license, which both already grant that permission! So, your objection seems to be out of a misunderstanding. To learn about license compatibility please read https://www.gnu.org/licenses/license-compatibility.en.html

from open-source-logiciel-libre.

gcharest avatar gcharest commented on May 29, 2024

Thanks! We'll see how we can align with your recommendation!

from open-source-logiciel-libre.

ShadeWyrm avatar ShadeWyrm commented on May 29, 2024

Unfortunately the GC cannot commit to future licenses, and should a situation arise where GPL4.0 produces text that explicitly prevents the GC from using the license, we would have to rescind the text.

from open-source-logiciel-libre.

ian-kelling avatar ian-kelling commented on May 29, 2024

Also, as my last comment implies, please reopen this issue.

from open-source-logiciel-libre.

ShadeWyrm avatar ShadeWyrm commented on May 29, 2024

The issue of explicit language occurs.

While you are correct, individuals reading the text "GPL 3.0 or later" can take it to view that the GC has explicitly endorsed all future GNU licenses, which we simply cannot do.

On the other hand if we apply "GPL 3.0 Only" we remove the ability to upgrade the license.

The ambiguity is an unfortunate but pseudo intended side effect.

Happy to continue to discuss, but hopefully this clarifies my reasoning a little bit?

from open-source-logiciel-libre.

smellems avatar smellems commented on May 29, 2024

I understand GC cannot accept future licences, but it's not really the case. Code would still be licensed under GPL3 and we could relicence it to GPL4, or not. We decide, but we also leave it open for others to fork and relicence..

Seems like it would be ok to recommend the GPL3 licences "or later", so that it's clear and not left to individual projects to figure it out if they decide to use a reciprocal licence.

The ORE, uses the SPDX License identifiers: the only choices for GPL licences are -only or -or-later.

@ian-kelling how do you make the distinction for projects? Is the default GPL3 text the or-later version? I'm guessing it there was a notice in the readme it would be good:

Unless otherwise noted, the source code of this project is covered under Crown Copyright, Government of Canada, and is distributed under the General Public License (GPL) 3.0 or later.

from open-source-logiciel-libre.

smellems avatar smellems commented on May 29, 2024

Looking at GC projects that use GPL

https://github.com/nrc-cnrc/EGSnrc - AGPL3 - notice in readme does not specify version, only AGPL

https://framagit.org/metroprojects/metro - GPL2 - again notice only mentions GPL

This is a good way to do it, since the licence text says

If the Program does not specify a version number of the GNU GPL, you may choose any version ever published by the Free Software Foundation

But I guess you can only go forward..

from open-source-logiciel-libre.

smellems avatar smellems commented on May 29, 2024

Started a PR to work on the issue. I understand we need to be clear that we are recommending version 3 and not later versions. But also that the code should be licenced with the GPL3-or-later licences and not the GPL3-only licences.

from open-source-logiciel-libre.

ian-kelling avatar ian-kelling commented on May 29, 2024

@smellems the FSF's official recommendation is to distinguish "or later" vs "only" is by using the license header, as described in the section "How to Apply These Terms to Your New Programs" in the license itself, https://www.gnu.org/licenses/gpl-3.0.en.html. Beyond that, note I'm not able to speak on behalf of FSF because I'm a licensing nerd, but my title is sysadmin, and if you email [email protected], they will happily answer for free. However my understanding is that SPDX identifiers at the top of files are equivalent to directions in the license. Also, license headers are hard to remember, so its pretty well established that instead or in addition, many languages or package repositories like npm specify a manifest file that has a license field, generally taking an spdx identifier. And the next best is if the software does not have a manifest file like that for whatever reason, the readme file is a good place and an spdx identifier which specifies "or-later" vs "only" is the best way to identify the license.

from open-source-logiciel-libre.

ShadeWyrm avatar ShadeWyrm commented on May 29, 2024

@ian-kelling / @smellems - how is this?

"'GPL 3.0 or later', 'LGPL 3.0 or later' and 'AGPL 3.0 or later' refer to specific licenses, not a commitment to future licenses."

from open-source-logiciel-libre.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.