quarto-dev / quarto-actions

GNU General Public License v2.0
227 stars 53 forks source link

Update License #117

Open zchandler opened 1 month ago

zchandler commented 1 month ago

Hi All, there is a discrepancy in your website and the code repo, just wanted to point that out to help all of us downstream of you have a clear signal about that. The website states Quarto v.1.3 and earlier is GPL, and as of 1.4 it is now MIT License. (https://quarto.org/license.html), but this repo, and maybe some others? are still GPLv.2 (and I thought I saw some Affero somewhere else). Anyhow, clearing this up would be a big help, and a small fix. Thank you!

cscheid commented 1 month ago

Hi All, there is a discrepancy in your website and the code repo, just wanted to point that out to help all of us downstream of you have a clear signal about that.

Why does the license for our CI actions affect your ability to use them? We can consider changing them, but I'd like to understand the situation first.

zchandler commented 1 month ago

Thanks @cscheid . We have some downstream projects that use quarto-actions that would prefer to use the MIT license. If they have significant portions of Quarto and/or quarto-actions as dependencies, it is not clear that they can do that. If you update your LICENSE file to MIT, then that removes all ambiguity. (Thank you!)

cscheid commented 1 month ago

We have some downstream projects

Which projects?

If you update your LICENSE file to MIT, then that removes all ambiguity. (Thank you!)

Noted. But the same change adds ambiguity to the projects that would prefer GPL.

zchandler commented 1 month ago

Which projects?

https://github.com/langcog/experimentology ... for starters. It's a free textbook, so you know, the good guys. :) And we have 4-5 other similar projects just getting started that we want to model on this one. Free textbooks in computer science, statistics, and energy systems engineering.

Noted. But the same change adds ambiguity to the projects that would prefer GPL.

I beg to differ on that one. GPL is unambiguous: derivative works must be licensed with GPL. MIT-licensed code can go into a GPL project, but it can't go the other way (GPL->MIT), because of the nature of copyleft. I totally get that some folks are ardently pro-GPL, and I get why. No arguments about that. All I am asking for is a clear signal from Quarto as to which one you are using. (Thanks!)

cscheid commented 1 month ago

I beg to differ on that one. GPL is unambiguous: derivative works must be licensed with GPL. MIT-licensed code can go into a GPL project, but it can't go the other way (GPL->MIT), because of the nature of copyleft. I totally get that some folks are ardently pro-GPL, and I get why. No arguments about that. All I am asking for is a clear signal from Quarto as to which one you are using. (Thanks!)

This is not a matter of ambiguity, though, it's a matter of how the licenses work. (And to be clear, I'm not ardently pro or against GPL. I am ardently against making changes that are hard to communicate and break user expectations).

Are you concerned that our actions will cause your book to become GPL-licensed? Although I'm not a lawyer and this is not legal advice, I will say that's almost certainly not the case, in the same way that even before Quarto itself was MIT-licensed, generating content with Quarto didn't cause the content to become GPL licensed. (This is an instance of the classical GPL example where compiling code with gcc doesn't mean that the code you shipped becomes GPL.)

The main difference is in how derivative works of the CI workflows themselves end up licensed, not the byproducts of using the actions.

zchandler commented 1 month ago

Thanks Carlos, and yep, IANAL also! (So swear we all! LOL) On this page https://github.com/quarto-dev it lists the Affero License as applicable, which does have copyleft implications for services over a server (tbh, I am not 100% clear on that one still but want to default to a compliant position that respects the original contributors), and in the main quarto repo, there is no license file at all at the docroot. Taken together with the public facing statement about MIT license v.1.4+ on your website, I think that's where I'm struggling to understand the terms of the license of Quarto and its component parts. I should have mentioned that our projects also have other code of yours as a dependency, not just the CI stuff. I really appreciate you taking the time to think about this. Much obliged! Appreciatively, ~Zach

cscheid commented 1 month ago

I need to ask you to be a bit more specific in your claims so that we don't make issues worse:

On this page https://github.com/quarto-dev it lists the Affero License as applicable

Sorry, but what are you talking about? Here's what I see:

image

and in the main quarto repo, there is no license file at all at the docroot

What repo do you mean here? https://github.com/quarto-dev/quarto? That is a "monorepo", a repository with source code for many different projects. It shouldn't have a single license file because different projects there will have different licenses (and that is by design, and we will not change all of those to a single license).

What makes you describe it as the "main quarto repo", and what does that have to do with this repo, which is quarto-dev/quarto-actions? If you don't mind me being frank, it looks to me like there's some confusion on your part about what licenses apply to what parts of Quarto.

Taken together with the public facing statement about MIT license v.1.4+ on your website

Again, can you please link to the specific pages that are causing you to make these claims? The website describes quarto-cli, the command line tool, which is MIT licensed.

I should have mentioned that our projects also have other code of yours as a dependency, not just the CI stuff

Please file separate issues for discussion in the repositories that you're referring to. It's very hard to have a discussion like this when you're not making precise claims. We really do want to help, but we really need you to be precise about this stuff.

zchandler commented 1 month ago

Thank you for your patience, I will be more precise. And I 100% own that the confusion is mine, I didn't mean to offend. I am going to try to keep this together in one thread tho, as I think that multiples might be worse.

Here goes: On your screenshot above, in the list of repositories (not the pinned ones) the repo for quarto is the 4th one down. Screenshot from 2024-09-24 11-44-46

the license metadata there for the quarto reposity saysAGPL-3.0 , which is Affero.

You asked for the link to the webpage that I was referring to, here you go: https://quarto.org/license.html

Just seeking clarity. Respectfully, ~Zach

cderv commented 1 month ago

@zchandler the repo you screenshot is https://github.com/quarto-dev/quarto and if you click and open it, you will be in the mono repo mentioned above. There is no single licence in this repo and no shown on the page. image

So I don't know why Github UI is showing AGPL-3.0 for this one. 🤷‍♂️

zchandler commented 1 month ago

Thanks @cderv , I appreciate the follow up! Weird about that AGPL cruft ... Ghost in the machine? :) I realize that I didn't exactly file this issue in the right place, so appreciate you guys helping me anyway. Cheers, ~Zach