Remix.run Logo
joshka 17 hours ago

I think you're saying that you don't believe in the freedoms to use the GPL licensed test suite for certain purposes which are explicitly allowed by the GPL.

You don't get to choose a license and then add extra terms to it when you don't feel like it's up to scratch. That's something explicitly not allowed by the GPL license.

MBCook 17 hours ago | parent [-]

Where does the GPL say you have the freedom to relicense code or derivatives under MIT by fiat?

Isn’t having to stay under the GPL a very big part of the GPL license?

joshka 17 hours ago | parent [-]

> Where does the GPL say you have the freedom to relicense code or derivatives under MIT by fiat?

The first part of this sentence (where in the GPL) is unreached if the second part of it is unmet (relicense code or derivatives) which I contend it likely is. You're begging the question.

However:

> The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work

earlier:

> A “covered work” means either the unmodified Program or a work based on the Program.

It's that element that would be difficult to prove "work based on the Program"

trumpdong 16 hours ago | parent [-]

Asking an LLM "here's a thing, rewrite it in Rust" is pretty clearly creating either a derivative work or a different form of the same work, just like asking a transpiler would.

joshka 16 hours ago | parent [-]

There's no evidence that "here's a thing, rewrite it in Rust" is the technique Scott used here.

"here's a test suite, write code in rust that makes that suite pass" is reasonably supported by the article. That would likely not be a derivative work.

joshka 16 hours ago | parent | next [-]

It's actually murkier than I suggest here. https://github.com/gitbutlerapp/grit/blob/main/AGENTS.md#sou...

MBCook 15 hours ago | parent [-]

Ew. So it tells the LLM where the git source is for the thing they’re duplicating, but I don’t see instructions saying not to read or copy those files or algorithms.

I could have missed them. I didn’t read everything. I did some quick searches.

But the fact they’re not obvious is kind of troubling. Or that they didn’t just copy the tests and documentation for the LLM and not the source to prevent it from looking would hurt any case they had for clean-room privileges in my eyes, ignoring my other comment with concerns about using the tests at all.

MBCook 16 hours ago | parent | prev [-]

If we assume an u licensed or MIT licensed test suite, an LLM could develop from that and documentation and you’d get something you could license MIT.

IMO, IANAL, etc.

And we’ll ignore the question of what the fact the LLM has certainly seen the git code during training means.

But the test suite would have to stay under the original license. And if you use a GPL test suite as they kernel to develop a program from can you license it non-GPL? I’d question that personally. Same acronyms above apply.

joshka 15 hours ago | parent [-]

This is the exact thing I'm not sure about. See https://news.ycombinator.com/item?id=48470397 where I posit a simpler question: if a `test_sum()` function is copyrighted, does writing a `sum(a, b)` function infringe on the copyright of the software product that `test_sum()` is a part of. I'd say no. There's another part of the GPL that applies here:

> A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate.

So assuming that sum(a, b) is non-infringing and not combined to form a larger program (i.e. the tests aren't compiled into the grit code), then the GPL explicitly doesn't apply to this use

MBCook 15 hours ago | parent [-]

test_sum is assumedly relatively trivial. So as a lay person I’d expect some sort of obviousness test to apply. Like so much of the stuff in the Google/Oracle lawsuit.

But if you take all the individual tests used to test git as a whole, that seems far more unique. Seems like at that point you’re really having to duplicate the actual git internals, and that seems like it should be covered.

joshka 15 hours ago | parent [-]

> test_sum is assumedly relatively trivial. So as a lay person I’d expect some sort of obviousness test to apply. Like so much of the stuff in the Google/Oracle lawsuit.

Feel free to extrapolate to the threshold where it's not and at that point apply.

> you’re really having to duplicate the actual git internals

Copyright covers the expression, not the method. So the Rust function:

    fn sum(a: u8, b: u8) {
        a + b
    }
is distinct from the C function:

    int sum(int a, int b) 
    {
        return a + b;
    }
trumpdong 6 hours ago | parent [-]

That's not copyrightable because it's trivial.