Licensing of Mercurial: "GPL" (any), "GPLv2" or "GPLV2 or later"?

Matt Mackall mpm at selenic.com
Mon Aug 4 22:13:20 CDT 2008


On Mon, 2008-08-04 at 21:26 -0400, Sean E. Russell wrote:
> Therefore, if parts of Mercurial are, as you state, GPLv2 and not GPLv2+; and 
> if those parts aren't entirely disjoint from the rest of Mercurial; then 
> *all* of Mercurial is GPLv2, regardless of what those other parts say.

That's correct. In fact the great majority of Mercurial is GPLv2.

> I think that's pretty clearly implied by the verbiage in the quote. Or does 
> hooking into those GPLv2+ parts with GPLv3 code somehow doesn't violate the 
> linking clause?

The only reason the GPLv2+ parts are meaningful is that you can pull
some of them out (like byterange.py) and use them in a different project
without bringing the rest of Mercurial along for the ride. Byterange.py
is a fine example because it didn't originate in Mercurial, so I
maintained the + to be polite.

-- 
Mathematics is the supreme nostalgia of our time.



More information about the Mercurial mailing list