[SciPy-Dev] pyproject.toml for scipy dependent project

Ralf Gommers ralf.gommers at gmail.com
Thu Apr 2 05:18:11 EDT 2020


On Wed, Apr 1, 2020 at 10:21 PM Roman Yurchak <rth.yurchak at gmail.com> wrote:

> Hello,
>
> a quick question: for a project that requires scipy at build time (e.g.
> because it using its the Cython BLAS API), how should the associated
> pyproject.toml look like? i.e.
>   a) is specifying scipy>=min_version enough
>   b) or does one need to pin minimal supported scipy for each python
> version as it's currently done e.g. for numpy
>
> https://github.com/scipy/scipy/blob/7ac26a178f385e4fa88d5c22951797a32ec8f38f/pyproject.toml#L6
> ?
>
> I think I have seen suggestions on conda-forge in the past that b) makes
> sense, in a similar situation. Can someone confirm that this is also
> something that should be done in `pyproject.toml`? Or would any
> supported version work?
>

I can't remember a discussion about this before. In SciPy we haven't made
changes that would prevent (a) I believe, however the question is whether
Cython preserves forwards ABI compatibility. My guess is it may have been
stable for quite a while, but it's not guaranteed. So (a) could work, but
(b) is healthier.

Would be good to know what happens if you built SciPy master with latest
Cython, built your project against it, then ran tests against an older
SciPy binary - have you tried?

Cheers,
Ralf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/scipy-dev/attachments/20200402/24cc7230/attachment.html>


More information about the SciPy-Dev mailing list