TBH I'd rather we try to use SciPy's version anyway rather than have an implementation of unknown quality sitting around in the wrong module. It people want this feature (I don't know enough about it to have an opinion), then I can send a PR to your fork with necessary changes to special. I *think* this can be done in a portable way even though we can't use ISO_C_BINDING. (Or can we? It's from the 2003 standard but gfortran and ifort support it.) On Sun, Oct 23, 2016 at 3:00 AM, Ralf Gommers <ralf.gommers@gmail.com> wrote:
On Wed, Oct 12, 2016 at 6:38 PM, Dieter Werthmüller < dieter@werthmuller.org> wrote:
Everyone,
I have a response from Takuya Ooura, appended below. He has no problem with it either, I just don't know if his response is explicit enough (again).
What do you think, is this enough?
Hmm, it's slightly ambiguous. I would tend to say no, better to get a clear statement. It sounds like he's happy, so you just need to spell out exactly what you need him to say. Or you add a BSD-3 license and "Copyright Takuya Ooura" at the top of that file in your scipy fork, point him to it, and say "can you please agree to that exact text".
Cheers, Ralf
Regards, Dieter
========== START email correspondence with Takuya Ooura ========== Subject: Re: cdgamma - license From: Takuya Ooura <ooura@kurims.kyoto-u.ac.jp> Date: Wed, 12 Oct 2016 21:31:01 +0900 (JST) To: dieter@werthmuller.org
Dear Dieter Werthm üller,
Please use the modified version of cdgamma.f. The license of my code is similar to the BSD-3-Clause license at present.
-- Takuya Ooura Email : ooura@kurims.kyoto-u.ac.jp
Dear Takuya Ooura,
Firstly thank you very much for making your code available on your website.
I am writing to you regarding your cdgamma.f function. Andrew Hamilton used a modified version of it for his FFTLog, and got your written permission to distribute the modified version in his code.
We would like to include FFTLog in the scientific library of the python programming language, SciPy, and with it the modified version of cdgamma.f.
The copyright statement distributed with your code states
Copyright(C) 1996 Takuya OOURA (email: ooura@mmm.t.u-tokyo.ac.jp). You may use, copy, modify this code for any purpose and without fee. You may distribute this ORIGINAL package.
which makes it impossible for SciPy to include the modified version of cdgamma.f in FFTLog into their library, as the version in FFTLog is a MODIFIED version, and not the original version.
Would it be possible that you could give SciPy the permission to distribute cdgamma.f under a permissive license? My suggestion would be the BSD-3-Clause license, https://opensource.org/licenses/BSD-3-Clause But any other BSD or MIT compatible license would be fine as well.
Thank you for your time and for making cdgamma.f available on your website.
Best regards, Dieter Werthm üller
========== END email correspondence with Takuya Ooura ==========
On 08/10/16 15:04, Joshua Wilson wrote:
Dieter,
First, a warning: this is going to involve some fun. ;-) Before going too far you should probably check that the different versions of the complex Gamma functions use the same branch cuts, etc. Note that if you want this to work in your external git repo you'll need to build against scipy master.
Steps should be roughly: -- Write a Cython script that wraps the Cython version of SciPy's loggamma. See
https://scipy.github.io/devdocs/special.cython_special.html# module-scipy.special.cython_special <https://scipy.github.io/devdocs/special.cython_special.html #module-scipy.special.cython_special>
for info on cimporting loggamma. -- Export the wrapper as a C function using these steps:
http://docs.cython.org/en/latest/src/userguide/external_C_co de.html#using-cython-declarations-from-c <http://docs.cython.org/en/latest/src/userguide/external_C_c ode.html#using-cython-declarations-from-c>
-- Add the Cythonized C file to your setup and add an Interface block to your Fortran code letting it know how to call the C function.
On Sat, Oct 8, 2016 at 1:11 PM, Dieter Werthmüller <dieter@werthmuller.org <mailto:dieter@werthmuller.org>> wrote:
Joshua
Thanks for your input. How could I include the Cython loggamma function within my setup script, so that fftlog.f would pick it up?
Adjusting fftlog.f to pick up dfft*.f from scipy/fftpack/src/dfftpack worked without problems. So if I could do the same for loggamma, then the only new file would be fftlog.f, for which we have the permission.
Thanks, Dieter
On 07/10/16 21:18, Joshua Wilson wrote:
Re log gamma: under the hood the SciPy versions are in C (real version) and Cython (complex version), so linking them up with Fortran code is definitely doable.
On Fri, Oct 7, 2016 at 8:16 PM, Ralf Gommers <ralf.gommers@gmail.com <mailto:ralf.gommers@gmail.com> <mailto:ralf.gommers@gmail.com <mailto:ralf.gommers@gmail.com>>> wrote:
On Sat, Oct 8, 2016 at 1:58 PM, Dieter Werthmüller <dieter@werthmuller.org <mailto:dieter@werthmuller.org> <mailto:dieter@werthmuller.org <mailto:dieter@werthmuller.org>>> wrote:
Evening,
I wrote to Andrew Hamilton, and below is his answer. He has basically no problem with it at all, I just don't know if his response is explicit enough.
I think my email was quite extensive, and I assume that is as much as we will get from him. I also do not expect him to change his on "13 Mar 1999, 21:17" from TeX translated website...
What do you think, is this enough?
Yes, that's perfectly fine. Thanks for clarifying that Dieter.
Cheers, Ralf
I also wrote to Takuya Ooura, and will let you know of his response, if I get one. However, as there are other complex logarithmic double precision gamma functions around, one already in scipy, this piece is not mission critical.
Regards, Dieter
========== START email correspondence with Andrew Hamilton ========== Subject: Re: FFTLog - license From: Andrew Hamilton <andrew.hamilton@colorado.edu <mailto:andrew.hamilton@colorado.edu> <mailto:andrew.hamilton@colorado.edu <mailto:andrew.hamilton@colorado.edu>>> Date: 07/10/16 18:22 To: Dieter Werthmüller <dieter.werthmuller@gmx.ch <mailto:dieter.werthmuller@gmx.ch> <mailto:dieter.werthmuller@gmx.ch <mailto:dieter.werthmuller@gmx.ch>>> CC: Andrew.Hamilton@colorado.edu <mailto:Andrew.Hamilton@colorado.edu> <mailto:Andrew.Hamilton@colorado.edu
<mailto:Andrew.Hamilton@colorado.edu>>
Dieter,
I approve your adding the license language you suggest to FFTLog, and making available the resulting package for distribution.
Andrew
On 10/07/2016 03:42 PM, Dieter Werthmüller wrote: > Dear Andrew, > > Please apologize me bothering you again. > > After I published the code to wrap your FFTLog for Python I thought that > it would be much better if your FFTLog would make it straight into the > scientific library of Python. This would make your FFTLog available to a > much wider audience. > > I contacted the developers of SciPy (http://scipy.org), and they are > interested in including your code. However, there is one issue: > licensing. Code that is published on the web without a license file is > copyrighted under law, and SciPy can for this reason not include your > code into their library. > > All I ask for is if you could confirm to us by email that we are allowed > to distribute your FFTLog under the BSD-3-Clause license: > https://opensource.org/licenses/BSD-3-Clause <https://opensource.org/licenses/BSD-3-Clause> <https://opensource.org/licenses/BSD-3-Clause <https://opensource.org/licenses/BSD-3-Clause>> > > The license is just a suggestion, any other BSD or MIT compatible > license would be fine as well. (For the same, legal reasons we recommend > to publish a license file on your website too, but that is obviously > entirely up to you. It might, however, clarify things for future visitors.) > > It would only affect your fftlog.f file, and the changes you made to > cdgamma.f. I will write Takuya OOURA as well regarding the original > cdgamma.f-file, asking him the same favour. And the three drfft*.f are > already in the SciPy-library with the whole FFTPack. > > If you are interested why this issue arises, Jake Vanderplas, one of the > developers of SciPy, wrote an interesting article about the topic: >
http://www.astrobetter.com/blog/2014/03/10/the-whys-and-hows -of-licensing-scientific-code/ <http://www.astrobetter.com/blog/2014/03/10/the-whys-and-how s-of-licensing-scientific-code/>
<http://www.astrobetter.com/blog/2014/03/10/the-whys-and-how s-of-licensing-scientific-code/ <http://www.astrobetter.com/blog/2014/03/10/the-whys-and-how s-of-licensing-scientific-code/>> > > Thank you again for your time and for making FFTLog available! > Best regards, > Dieter > ========== END email correspondence with Andrew Hamilton ==========
On 07/10/16 15:13, Ralf Gommers wrote:
On Sat, Oct 8, 2016 at 9:11 AM, Ralf Gommers <ralf.gommers@gmail.com <mailto:ralf.gommers@gmail.com> <mailto:ralf.gommers@gmail.com <mailto:ralf.gommers@gmail.com>> <mailto:ralf.gommers@gmail.com <mailto:ralf.gommers@gmail.com> <mailto:ralf.gommers@gmail.com <mailto:ralf.gommers@gmail.com>>>> wrote:
On Sat, Oct 8, 2016 at 8:59 AM, Dieter Werthmüller <dieter@werthmuller.org <mailto:dieter@werthmuller.org> <mailto:dieter@werthmuller.org <mailto:dieter@werthmuller.org>> <mailto:dieter@werthmuller.org <mailto:dieter@werthmuller.org> <mailto:dieter@werthmuller.org <mailto:dieter@werthmuller.org>>>> wrote:
Jake,
Thanks for the clarification. I will try to get the permissions from the authors.
What is regarded as sufficient? Is an email from the author, granting me/SciPy to distribute their code with a specific, BSD-style license sufficient? Or do they necessarily have to change the websites where they host the code to include the license?
An email stating that the code can be distributed under a BSD license (or MIT or other compatible license) is enough.
Some delay on the line, missed Jake's answer. Email is enough, but a change in the repo would of course be even better.
Ralf
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org> <mailto:SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org>> https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev> <https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev>>
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org> <mailto:SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org>> https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev> <https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev>>
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org> <mailto:SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org>> https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev> <https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev>>
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org> https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev>
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org <mailto:SciPy-Dev@scipy.org> https://mail.scipy.org/mailman/listinfo/scipy-dev <https://mail.scipy.org/mailman/listinfo/scipy-dev>
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org https://mail.scipy.org/mailman/listinfo/scipy-dev
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org https://mail.scipy.org/mailman/listinfo/scipy-dev
_______________________________________________ SciPy-Dev mailing list SciPy-Dev@scipy.org https://mail.scipy.org/mailman/listinfo/scipy-dev