|
|
Subscribe / Log in / New account

Class action against GitHub Copilot

Class action against GitHub Copilot

Posted Nov 10, 2022 15:56 UTC (Thu) by q_q_p_p (guest, #131113)
Parent article: Class action against GitHub Copilot

All code generated by Copilot should have at least GPL license (if not AGPL).


to post comments

Class action against GitHub Copilot

Posted Nov 10, 2022 17:28 UTC (Thu) by zdzichu (subscriber, #17118) [Link] (26 responses)

I know that you trolling, but… some my code on Github is licensed ISC. Microsoft probably used my code to train the Copilot. If my code influenced the output, I do not want the output to be copyrighted under license like GPL or anything connected with FSF.

Class action against GitHub Copilot

Posted Nov 10, 2022 17:44 UTC (Thu) by q_q_p_p (guest, #131113) [Link]

Do you have any control over it now? Did setting copyright notice help you?

Class action against GitHub Copilot

Posted Nov 10, 2022 17:53 UTC (Thu) by fenncruz (subscriber, #81417) [Link] (24 responses)

Not that they'd want to as it would cut down the amount of training data, but I could see making multiples models, one per license, as a way to try and side step license issues. That way if you want a GPL code then you only use a model trained on GPL code.

Class action against GitHub Copilot

Posted Nov 10, 2022 18:50 UTC (Thu) by NYKevin (subscriber, #129325) [Link] (23 responses)

You can't do that unless you're prepared to comply with attribution requirements, or to claim that copyright is not infringed in the first place (in which case you don't need separate models).

Class action against GitHub Copilot

Posted Nov 12, 2022 23:02 UTC (Sat) by apoelstra (subscriber, #75205) [Link] (22 responses)

I'm curious if the attribution requirement would be satisfied if Copilot were to output a (perhaps 100s of MB) CONTRIBUTORS file listing every author listed in every attribution statement from the input corpus. Then Copilot-assisted code would just have to include this file. The result: a massively duplicated, never-read, list of github accounts from the time that any particular project was written.

This is clearly not in the spirit of the GPL but it's unclear to me whether it matches the letter.

Class action against GitHub Copilot

Posted Nov 12, 2022 23:29 UTC (Sat) by Wol (subscriber, #4433) [Link] (21 responses)

And what about all that BSD code? That CDDL code? That Mozilla Public Licence code? Those *licences* are NOT in the spirit of the GPL. (Some of them are also incompatible with the GPL, but that's beside the point ...)

Demanding that code - licenced under a non-GPL licence - be distributed "in the spirit of the GPL" is doing a major dis-service to the authors of that code!

What is this obsession with the GPL?! Who gave you the right to dictate to me what licence my code should be licenced under!

Cheers,
Wol

Class action against GitHub Copilot

Posted Nov 13, 2022 8:53 UTC (Sun) by milesrout (subscriber, #126894) [Link] (20 responses)

> Demanding that code - licenced under a non-GPL licence - be distributed "in the spirit of the GPL" is doing a major dis-service to the authors of that code!

But that's not the demand. The demand is that code derived from GPL-licensed code be distributed under the GPL. That's what the GPL requires.

> What is this obsession with the GPL?! Who gave you the right to dictate to me what licence my code should be licenced under!

Nobody is telling you what licence your code should be distributed under, unless your code is a derivative work of GPL-licensed code in which case YOU have told yourself to distribute it under the GPL by making it such.

Class action against GitHub Copilot

Posted Nov 13, 2022 12:59 UTC (Sun) by Wol (subscriber, #4433) [Link] (19 responses)

The original post said code output from Copilot should be GPL Which if a lot of the training code was not GPL, is a non sequitur.

Cheers,
Wol

Class action against GitHub Copilot

Posted Nov 13, 2022 14:11 UTC (Sun) by amacater (subscriber, #790) [Link]

Code output from Copilot which reproduces other code should be under those licences yes - and that may mean that a large amount of code would need to be under GPL. Code which does not have an explicit licence to distribute shouldn't be reproduced as distributable under any licence at all, of course - the fact that you've given GitHub a right to host it doesn't give them the right to choose a copyright licence for ALL code that they then publish (And a lot of GitHub code has no ascertainable licence: fine for the originator of the code, not fine for anyone else to use at all).

Class action against GitHub Copilot

Posted Nov 13, 2022 17:54 UTC (Sun) by q_q_p_p (guest, #131113) [Link] (7 responses)

Now Copilot is license laundering scheme under which original licenses don't matter.
If instead Copilot would produce only GPL code, this would make FOSS advocates happy and corporate (including open source) shills unhappy. That's win-win situation for me.

You don't have to agree with me and instead make your own top comment - which license should Copilot use?

Class action against GitHub Copilot

Posted Nov 13, 2022 18:16 UTC (Sun) by Wol (subscriber, #4433) [Link] (6 responses)

> Now Copilot is license laundering scheme under which original licenses don't matter.

> If instead Copilot would produce only GPL code, this would make FOSS advocates happy and corporate (including open source) shills unhappy. That's win-win situation for me.

Is that GPL2? GPL3? GPL 2 or 3? GPL2+? GPL3+?

Oh - and BSD, MIT, licenses like that are FLOSS. I'm pretty sure their advocates would be LESS than happy with Copilot laundering their code into GPL! If Copilot produces only GPL code, that's a lose-lose situation for a LOT of people. People who are fans of FLOSS ...

Please. Just stop trolling. Just because you're a GPL fanatic doesn't mean other FLOSS people agree with you that the GPL is a "good thing (tm)". GPL3 is a disaster ...

Cheers,
Wol

Class action against GitHub Copilot

Posted Nov 13, 2022 19:16 UTC (Sun) by q_q_p_p (guest, #131113) [Link] (2 responses)

>Is that GPL2? GPL3? GPL 2 or 3? GPL2+? GPL3+?

AGPL-3.0-or-later ideally, GPL-3.0-or-later realistically.

> Oh - and BSD, MIT, licenses like that are FLOSS. I'm pretty sure their advocates would be LESS than happy with Copilot laundering their code into GPL!

"(including open source)" was referring to them.

>Just because you're a GPL fanatic doesn't mean other FLOSS people agree with you that the GPL is a "good thing (tm)". GPL3 is a disaster ...

Imagine, I'm also a "people" and I don't think GPL3 to be a disaster.
Also again: you don't have to agree with me and instead make your own top comment - which license should Copilot use? How about proprietary with Commercial Use Only clause?

Class action against GitHub Copilot

Posted Nov 13, 2022 21:01 UTC (Sun) by NYKevin (subscriber, #129325) [Link] (1 responses)

> which license should Copilot use? How about proprietary with Commercial Use Only clause?

How about complying with the actual text of the GPL?

> If conditions are imposed on you (whether by court order, agreement or
> otherwise) that contradict the conditions of this License, they do not
> excuse you from the conditions of this License. If you cannot convey a
> covered work so as to satisfy simultaneously your obligations under this
> License and any other pertinent obligations, then as a consequence you may
> not convey it at all. For example, if you agree to terms that obligate you
> to collect a royalty for further conveying from those to whom you convey
> the Program, the only way you could satisfy both those terms and this
> License would be to refrain entirely from conveying the Program.

I express no opinion about whether the output of Copilot is actually a derivative work of its training materials. But *IF* it is, then it needs to comply with multiple incompatible copyleft licenses, so therefore it cannot be distributed at all. The GPL says this in black and white.

Class action against GitHub Copilot

Posted Nov 13, 2022 21:20 UTC (Sun) by q_q_p_p (guest, #131113) [Link]

> How about complying with the actual text of the GPL?

That's also an acceptable solution to me.

Class action against GitHub Copilot

Posted Nov 13, 2022 20:37 UTC (Sun) by mpr22 (subscriber, #60784) [Link] (1 responses)

Anyone who chooses BSD or MIT licences is choosing to allow their code to be fed into the point attractor that is a GPLed project.

Class action against GitHub Copilot

Posted Nov 13, 2022 21:49 UTC (Sun) by Wol (subscriber, #4433) [Link]

There's a big difference between *allowing* and *being happy*.

It's well known that Linus likes the *practicality* of the GPL2, and is very *unhappy* with the *spirit* of the GPL, which is why Linux has never been licenced 2+, and which is why that move is unlikely ever to be considered.

People apparently use BSD because they want their code to spread. If that code gets incorporated into GPL projects, those projects are *hindering* the spread of the code by adding extra restrictions. Hopefully, the GPL code points back at the original BSD, but if the GPL version out-evolves the BSD one then the wants of the original developers have clearly been trampled on.

What's LEGAL is not always MORAL. The best approach is respect - for the code, for the authors, for people in general.

Cheers,
Wol

Class action against GitHub Copilot

Posted Nov 14, 2022 9:41 UTC (Mon) by LtWorf (subscriber, #124958) [Link]

> I'm pretty sure their advocates would be LESS than happy with Copilot laundering their code into GPL!

Then they shouldn't have picked a license that allows to do it?

Class action against GitHub Copilot

Posted Nov 14, 2022 9:24 UTC (Mon) by LtWorf (subscriber, #124958) [Link] (9 responses)

If I copy paste a function from a MIT licensed file and another from a GPL licensed file, which licenses can I apply to my resulting file?

AFAIK It's only GPL and AGPL.

The authors of the MIT licensed file might not like the GPL but they did not restrict this kind of use.

It is however true that care should be taken to not mix code with incompatible licenses, so it's not so easy as "just license everything under AGPL".

By the way people say AGPL because it's the most restrictive of the famous ones.

Class action against GitHub Copilot

Posted Nov 14, 2022 14:29 UTC (Mon) by Wol (subscriber, #4433) [Link] (8 responses)

Neither? It's not your code?

The file is only *distributable* under the GPL, but you cannot apply any licence to code you did not write. The licence(s) that apply to the file are the licences the authors/owners applied. Any recipient can (if they know the history) copy the BSD function from that file, and distribute it under BSD.

Cheers,
Wol

Class action against GitHub Copilot

Posted Nov 14, 2022 21:07 UTC (Mon) by LtWorf (subscriber, #124958) [Link] (7 responses)

> Neither? It's not your code?

I know it's not my code but it seems I'm free to relicense MIT to GPL, and of course license the following mod

https://news.ycombinator.com/item?id=19489157

Class action against GitHub Copilot

Posted Nov 14, 2022 21:50 UTC (Mon) by sfeam (subscriber, #2841) [Link] (2 responses)

That very analysis you link to states the opposite: it is not possible to relicense code to GPL. It is possible to include MIT code with GPL code, but this does not have the effect of changing the MIT license to something else. The original copyright, and the original permission to distribute under MIT terms (not GPL) continues to exist. Whether any of that applies to the Copilot case is another matter. I am inclined to think that if the operation of Copilot is deemed to be permissible because it constitutes the training of an automated system, then its output is neither a compilation nor an original creative work and therefore is not subject to copyright at all. Thus the question of license becomes moot unless and until the output is re-worked as part of a larger whole that is copyrightable and could be licensed (or challenged) at that time.

Class action against GitHub Copilot

Posted Nov 15, 2022 9:44 UTC (Tue) by farnz (subscriber, #17727) [Link] (1 responses)

I disagree with your analysis of Copilot, by analogy to a human.

Letting a human read text is not, in and of itself, an infringing activity. Nor is the resulting brain state in the human, even if it includes literal copies of text code they read. But the output of a human can itself be infringing, if instead of using my training to inform what I do, I regurgitate memorised chunks of text.

I expect the same principles to apply to Copilot and similar systems; training Copilot is not infringing. The resulting model is not infringing in and of itself. The output from the system, can, however, be infringing, and the degree to which it is a legal problem depends on the degree of infringement, and the extent to which the system disguises the origins of the code (in terms of contributory infringement, if I tell you that I'm showing you sample code from a given source, and you copy it, that's a different case to if I give you code that I do not attribute).

Class action against GitHub Copilot

Posted Nov 17, 2022 10:25 UTC (Thu) by NRArnot (subscriber, #3033) [Link]

Exactly what I was thinking. Also, whereas a human *might* accidentally regurgitate variable names as well as a learned code structure, an AI can be explicitly required to use generic variable names. The question then becomes a hard one. At what point is a chunk of code a derived work, rather than created from scratch? Haven't we been here before, with arguments about copyright of header files and APIs which cannot ever be written any other way?

for obj in object_list: obj.do_stuff() is surely fair, however the AI arrived at it.

for sd5obj in sd5_get_blue_meanies(): sd5obj.frobnicate_from_sd4( ) is surely a verbatim copy of somebody's identifiable code, and should at the very least be attributed.

Class action against GitHub Copilot

Posted Nov 14, 2022 22:17 UTC (Mon) by Wol (subscriber, #4433) [Link] (3 responses)

" including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software,"

You clearly didn't read the thread you pointed at.

The MIT licence allows SUBlicencing, ie applying other terms on top. According to your thread, there is no such thing as relicencing, certainly I've never seen that in any legal document.

And as I understand English, RElicencing means throwing out the old licence, and replacing it with a new one. No open source licence I've come across allows any such thing. As I understand the meaning of the word "relicencing", in practice this has precious little difference from handing over the copyright.

And that's also why/how you can extract the original code under the original licence. If it had been RElicenced, you wouldn't be able to get the original licence back.

Cheers,
Wol

Class action against GitHub Copilot

Posted Nov 15, 2022 23:46 UTC (Tue) by NYKevin (subscriber, #129325) [Link] (2 responses)

I'm not sure "relicensing" is even a thing in legal terms. Let's clarify a few ideas. Suppose we have some software that was written by person A. A gives a copy to B, and B gives a copy to C. Then:

* With both the GPL and the MIT license, A automatically extends a license to each person who obtains a copy of the software, by whatever means. In our example, this means that A gives a license to B and to C.
* With the MIT license, B may optionally give a different license to C (or, in principle, the same license, but that would be kind of pointless). This is called a "sublicense." It does not extinguish the original license, so C can decide which license to comply with. However, as a general rule in most jurisdictions, the sublicense cannot be broader than the rights that B already enjoys under the MIT license in the first place - you can't give what you don't have.
* In the context where the sublicense is the GPL, C is still required to comply with the MIT license's formalities. Obviously, B is also required to comply with those formalities. In practice, this is usually done simply by copying the copyright and license into a comment at the top of the file, but there are other ways of complying. If you're distributing binaries, you might need to take additional measures to ensure a copy of the license is still visible somewhere.
* Under the GPL, sublicensing is forbidden - C can only get the license directly from A. A and C never need to communicate in order to do this. The license, as mentioned above, springs into being automatically as soon as C has a copy of the software, regardless of how A or B may feel about that. I'm pretty sure the FSF did this to prevent B from placing "additional restrictions" on the sublicense.
* In principle, we could imagine a license which does not have this automatic property, where all rights have to be conveyed by explicit sublicensing (sort of the inverse of how the GPL works). This is inconvenient, so nobody does it in the FOSS world, but I imagine it's more common in environments where permissions are more closely guarded.
* We could also imagine a license which terminates as soon as you accept a sublicense from somebody else. This would make sublicensing have the effect of extinguishing the original license, and allow intermediaries to restrict downstream users' rights via clickwrap licenses. Again, this is unheard of in the FOSS world, but to my understanding it is not unlawful. I suppose you could call that operation "relicensing," but in practice, I don't think this is really a thing that anyone does.

Class action against GitHub Copilot

Posted Nov 16, 2022 5:50 UTC (Wed) by unilynx (guest, #114305) [Link] (1 responses)

I’m not sure anything of this works this way for a sub license from B to C if B is just providing a copy

The license is a promise not to sue for copyright infringement providing you follow certain requirements.

C has the same rights as B in your case no matter what B said, as B has no standing to sue for copyright infringement as he does not have any copyright.

(Unless A specifically provided the product to B with the understanding that the MIT license would only be valid to B)

Class action against GitHub Copilot

Posted Nov 17, 2022 19:48 UTC (Thu) by NYKevin (subscriber, #129325) [Link]

As I mentioned, C can decide which license to comply with. In the scenario you describe, C would (probably) choose to comply with the license provided by A rather than the sublicense provided by B, so B's sublicense has no legal effect and may as well not exist. Thus, this is a distinction without a difference.

Class action against GitHub Copilot

Posted Nov 10, 2022 21:10 UTC (Thu) by developer122 (guest, #152928) [Link] (4 responses)

Just try that with the ZFS that's under the CDDL. OpenZFS may not come after you but there's a good chance Oracle will.

There's a good reason that OpenZFS is distributed as an nvidia-style module despite being copyleft.

Class action against GitHub Copilot

Posted Nov 10, 2022 21:28 UTC (Thu) by q_q_p_p (guest, #131113) [Link] (3 responses)

That's cool idea, if I were using Copilot I would try doing this: use Copilot to reproduce ZFS code, GPLv2 it and let Oracle fight Microsoft over the code generated by Copilot :-) What can go wrong?

Class action against GitHub Copilot

Posted Nov 11, 2022 0:43 UTC (Fri) by pabs (subscriber, #43278) [Link] (2 responses)

Oracle would probably sue you first, not Microsoft?

Class action against GitHub Copilot

Posted Nov 17, 2022 10:34 UTC (Thu) by NRArnot (subscriber, #3033) [Link] (1 responses)

Write an AI to use Codepilot to regenerate ZFS code? Then post the source code of that AI under a "no rights reserved, use at finder's risk" type license? (This isn't purely flippant. It's the sort of world we are heading into, and the law will get seriously left behind by the AIs).

Class action against GitHub Copilot

Posted Nov 27, 2022 16:19 UTC (Sun) by flussence (guest, #85566) [Link]

That's not much different than populating an open FTP server with a "windows11enterprisecracked.iso" containing an exact byte length of apparent random noise alongside a 1MB "teehee.xor".

Class action against GitHub Copilot

Posted Nov 17, 2022 13:04 UTC (Thu) by esemwy (guest, #83963) [Link]

Copilot should have as its input a desired license. There’s no legal way to blanket re-license someone else’s code.


Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds