Fwd: GMP license problem, anyone?

Bill Hart goodwillhart at googlemail.com
Fri May 30 15:53:15 CEST 2008


---------- Forwarded message ----------
From: Bill Hart <goodwillhart at googlemail.com>
Date: 29 May 2008 22:53
Subject: Re: GMP license problem, anyone?
To: Torbjorn Granlund <tg at swox.com>


On 29/05/2008, Torbjorn Granlund <tg at swox.com> wrote:
 > "Bill Hart" <goodwillhart at googlemail.com> writes:


>   Secondly, Microsoft Research are one of SAGE's customers. Microsoft
 >   has a policy of not even running software with v3.
 >
 >
 > I heard such a rumour, but I refused to believe it; Microsoft's money
 >  has dictated what license a project previously known to be free (as in
 >  freedom) will use.
 >


Well, in his post to this *unmoderated* list (which was submitted
 before mine, but is yet to appear), also viewable here:

 http://groups.google.co.uk/group/mpir-devel/browse_thread/thread/13b44a2d7ad4b48a#

 William Stein confirms the rumour.

 He also speaks on behalf of SAGE (he started the SAGE project) and
 answers your sepculation about the reasons for a fork, definitively in
 my opinion. Why speculate when you can get it from the horses mouth.


 >  There is a contract between Microsoft and SAGE stipulating that SAGE
 >  stay GPL 2.  Do you deny this?


I don't know. William Stein might know.

 I have been told SAGE will have an MSR special version which will be
 GPLv2+. As I have visited MSR and one of their researchers was very
 keen to use FLINT, I want FLINT to be in the MSR special version.


 >
 >  It is certainly in Microsoft's monopolistic interest to sabotage Free
 >  Software projects, and to cause forks to be created.  A Judas kiss
 >  from Microsoft.
 >


I don't see how a fork will sabotage GMP. Forking is one of the
 essential freedoms that GPL allows.

 When you see Microsoft allowing people to fork their operating system,
 that will be the day.

 Incidentally, Peter Montgomery, who just made a substantial
 contribution to GMP-ECM works at Microsoft Research. I spoke with him
 about this work when I was there.


 >   I like version 2 and license my code under v2+. I didn't need all
 >   the extra stuff in version 3, there was no pressing need for it, I
 >   didn't care for it when it came along. It just adds a whole load of
 >   extra stuff which I don't care about. In other words I feel v3 is
 >   overreaching for a general purpose software license.
 >
 >
 > You're still not very specific.  Hand on heart: Have you read the v3
 >  license text?


I have read v2 and I started to read version 3 some time ago. Once I
 got to all the bits that had been tacked on to a perfectly good
 license, i.e. stuff about patent agression, tivoisation, cryptographic
 keys, I stopped reading.

 Really, how is all that stuff actually relevant enough to GMP that you
 would choose to go against the trend of all these other projects using
 yours and make your future code v3+ instead of just leaving it as v2+.


 >
 >
 >   That's about 65000 USD short of the amount I was told someone was
 >   requested for merging of a patch by yourself into GMP.
 >
 >
 > Sorry, but what does "merge a patch by myself" mean?
 >


Someone else claimed, and I'm not stating it is fact, merely that they
 claimed, that they wrote a patch for GMP and you asked them for an
 inordinately large sum of money to merge it into GMP.

 Can you confirm that you have never asked for large sums of money to
 include patches into GMP?


 >
 >   Well apparently they didn't pay you. Again, good to have
 >   misconceptions dealt with.  There are some widespread misconceptions
 >   out there, and one of them is that you ask very high fees for
 >   merging patches.
 >
 >
 > I think this sort of insinuations is what spread them.
 >
 >  I think it's rather well-know that I am not making money of GMP.  On
 >  the contrary, I have volunteered about 5 years on it, instead of
 >  working for a salary.
 >


In that case, I am really confused why GMP is LGPL'd and not GPL'd. Do
 you like the big MA*'s selling your code back to you?

 Why don't you stop it and make GMP GPL'd?

 I thought they were paying you to keep it LGPL'd. Obviously I'm
 completely mistaken.

 The Free Software Foundation don't encourage the use of LGPL for
 libraries any more except in special circumstances (e.g. where there
 is a commercial library which already does the same thing). So please
 tell me, why is GMP still LGPL'd?


 >
 >   My question to you is, why did GMP change to v3+ and not remain with
 >   v2+. What extra freedoms does it give users of your code or what extra
 >   protections does it give you and how is that relevant specifically to
 >   GMP?
 >
 >
 > I will not reiterate known aspects of the v3.  But please read e.g.:
 >  http://www.gnu.org/licenses/quick-guide-gplv3.html
 >


I read this through carefully, and I see nothing much I care about.
 None of it is really relevant to my project.


 >
 >   What reason would I have for wanting to switch to v3+ on any of my
 >   code or any code I include.
 >
 >
 > If you're fundamentally sympathetic with the goals of the Free
 >  Software Movement, I think you should consider a switch.
 >


And likewise I think you should switch to GPL.


 >
 >   1) GMP has a slow release cycle. Patches are only considered for
 >   inclusion in the next major release of GMP, and that next major
 >   release is 5, which numerous places on your website you say is years
 >   off. This means we won't see decent assembly support for Core 2 or AMD
 >   64 for years.
 >
 >
 > You will find out.
 >


That's really helpful. Can you be more specific? So AMD are gonna give
 you some patches. Whoopdidoo. And will you break the established rule
 and release those in the GMP distribution before 5 comes out?


 >
 >   2) So far the GMP project has refused to accept patches which will
 >   allow GMP to build under [insert proprietry OS and compiler here].
 >
 >
 > This is X fork propaganda.  Your statement (made elsewhere) to "Make
 >  GMP build under Foo OS" doesn't perhaps say the "official" GMP doesn't
 >  build there, but it surely tries to gove the reader such an
 >  impression.
 >


If there's something incorrect in our official propaganda, please send
 me a short statement by email about what is incorrect, I will
 investigate and lobby to have it changed. I actually don't know what
 you are referring to here. Most of the propaganda was written by me
 with input from others, so it may just be a misunderstanding I have.

 By the way, you are welcome to submit anything to the X fork if you
 license it GPLv2+ or LGPL v2+ or something that is compatible with
 that. I'd even give you subversion access in a blink. As far as I'm
 concerned, you would be a trusted developer.


 >  I have rejected "project" files for Microsoft's IDE, but that doesn't
 >  mean GMP doesn't build under Windoze.
 >


I can get a 64 bit version of GMP working on Win 64? How?

 Why did you reject the project files from Brian? They extend the users
 of GMP to a very large and important group of people.


 >
 >   3) The development process for GMP is not transparent. What gets in is
 >   solely the maintainers decision.
 >
 >
 > Very true.  GMP is not everyone's dump.  But now there is a fork that
 >  will fill that role.  :-)


Please send them our way!

 We'll have some kind of process to eliminate unworthy code, just as
 SAGE now does. So I hardly think dump is quite the right word. But
 we'll see. In some respects I sympathise with your drive to reject
 almost everything and keep development cycles extremely long to
 guarantee the quality of the code. But in so many ways it's a policy
 that has hurt the mathematical software community quite a lot.

 I have a pending grant application in which I will do large
 computations relying fundamentally on GMP. I'd need approximately
 twice the computing time if I used vanilla GMP. I just can't sit
 around and wait for years for a single maintainer to catch up. Whilst
 I perfectly understand the demands on your time, it is precisely for
 that reason that I believe GMP development should be more open.


 Bill.


More information about the gmp-discuss mailing list