The Mercurial license is GPLv2
Matt Mackall
mpm at selenic.com
Tue Aug 5 11:57:19 CDT 2008
On Tue, 2008-08-05 at 11:26 +0200, Peter Arrenbrecht wrote:
> On Tue, Aug 5, 2008 at 1:15 AM, Matt Mackall <mpm at selenic.com> wrote:
> >
> > On Mon, 2008-08-04 at 23:10 +0100, Paul Moore wrote:
> >> 2008/8/4 Germán Póo-Caamaño <gpoo at calcifer.org>:
> >> > Certainly, they can run it in a separate process. The thing is using
> >> > the API to communicate with Mercurial instead of parsing the output.
> >>
> >> So write a (GPL'd) extension to communicate with a persistent
> >> Mercurial process via an easily parseable format (or XML, if you
> >> prefer :-)). Best of both worlds. I assume that would be both in the
> >> letter and the spirit (ie, Matt would be OK with it) of the license.
> >
> > Obviously you could use something like a trivial XMLRPC or eval/pickle
> > wrapper to call all of Mercurial's APIs running in a separate process,
> > even on a separate continent. And the result is probably a derived work
> > of Mercurial, because copyright is more interested in intent than
> > technology.
> >
> > Copyright and the GPL both talk about protection of original and
> > "derived works". If your work is a derived work in the view of copyright
> > law, then it is covered by the GPL. Precisely what does and does not
> > constitute a derived work in software is something that currently can
> > only be answered in a court of law. One possible test is: if Alice's
> > code can't work in any useful sense without Bob's code, then Alice's
> > code is probably a derived work of Bob's.
>
> So, regardless of the interfacing technique, an Eclipse plugin for Hg
> has to be GPL.
Again, this is all very nebulously defined. The concensus seems to be
a) that using just a command line interface is definitely on the safe
side of the line and b) that using linking (aka importing) is on the
unsafe side. Everything in between is gray area that would require a
trip to court to clarify. But it's a safe bet that if you do something
that looks like an attempt to get around the license by technical
obfuscation, the court won't be impressed.
So I recommend people who are unsure of whether their license is
compatible stick to communicating with hg on the command line.
--
Mathematics is the supreme nostalgia of our time.
More information about the Mercurial
mailing list