[PATCH 1 of 6 A2 series] pathencode: add _lowerencode function

Laurens Holst laurens.nospam at grauw.nl
Tue Oct 9 06:59:11 CDT 2012


Op 09-10-12 13:42, Adrian Buehlmann schreef:
> On 2012-10-09 13:04, Laurens Holst wrote:
>> I "own" the code as much as you or Facebook do.
>> No, not really; there is a significant difference between owning the
>> copyright and being licensed by the copyright owner to modify the code
>> under the conditions of the GPL. GPL does not reassign copyright (in
>> fact in many countries copyright always belongs to the author or his
>> employer and can not be reassigned).
> LOL. In particular when I wrote the original code in Python, which Bryan
> now writes a new version in C of it. I don't doubt he has a copyright in
> that C code he writes!
>
> And the original Python code was all based on ideas published by Matt
> Mackall on this very list here (the hybridencode strategy). So it's
> likely all based on prior art (FWIW).

Doesn’t change the fact that Facebook owns the copyright of the C code 
that Bryan wrote, and you don’t. Copyright doesn’t have a concept of 
“prior art” (that’s patents). And algorithms can’t be copyrighted.

I’m just pointing out the legal differences here, since you raised that 
topic. No need to “LOL” at me.

>> Having the patch’s author reflect the author of the code makes it easier
>> to determine who authored it. Of course you do attribute in the
>> description, however that is less obvious and can’t be easily used to
>> perform queries such as “retrieve all changesets by author X” or
>> “retrieve a list of source code contributors” or “find all lines touched
>> by author X that have not been modified since”.
> I am perfectly fine with attributing this patch to Bryan if he likes.
>
> What I do not like is if someone tells me what I have to do and what I
> don't have to do. I do not have to ask for permission of Bryan to split
> his patch.

Fine, be that way :). Mercurial development isn’t a social, 
collaborative effort, after all.

>> These queries are useful in various situations. E.g. if the Mercurial
>> code base would need to be relicensed, they need to contact all
>> individual copyright owners to agree to it. Or if person X contributed
>> code even if his employer never gave permission for that, and all code
>> authored by that person would need to be removed.
>>
>> So although technically you are permitted to create a derived work under
>> the terms of the GPL, there are advantages to “version controlling”
>> these modifications or asking the original author to make these
>> modifications in a code review. As an additional benefit, this will also
>> probably be appreciated by the original author, rather than someone
>> taking your code and running away with it.
> We are not in Kindergarten here. You don't have to explain to me how
> version control is useful. What we are talking about here is a way to
> collaborate about things that are not yet under version control in the
> mercurial main repo.
>

Patches include author information, are submitted in a sequence and 
eventually applied as commits. So there’s your “version control” (note: 
quoted) that I was referring to. You can submit a patch on top of 
Bryan’s patches, or ask Bryan to make the desired modifications, and 
that way the author attribution in the author field will stay intact.

~Laurens



More information about the Mercurial-devel mailing list