Current Matplotlib (3.10) supports Python 3.10, but the next release, still
some months away, will only claim support for 3.11+.

I'd say 3.9 (since that is working now) and then bump one, possibly two,
version(s) after the release.

BR Oscar

Den sön 13 apr. 2025 13:38Oscar Benjamin <oscar.j.benja...@gmail.com> skrev:

> Hi all,
>
> I think it is a good time to release SymPy 1.14. I was too busy in the
> last few months to do this.
>
> The main thing that needs to be decided before releasing is just what
> the minimum supported Python version should be.
>
> I bumped the minimum version from Python 3.8 to 3.9 because 3.8 is old
> and was causing problems for this PR:
> https://github.com/sympy/sympy/pull/27850
>
> There is spec 0 which attempts to coordinate Python and other version
> support in the scientific Python ecosystem:
> https://scientific-python.org/specs/spec-0000/
>
> Previous discussions about this are at:
> https://groups.google.com/g/sympy/c/VNz2xJ1Sywo/m/0H1-KmaJAgAJ
>
> In anticipation of the suggestion to write a policy/SymPEP about spec
> 0 or version support let me just point out that doing that before
> releasing SymPy 1.14 will delay the release which is already overdue.
> Right now we just need a quick decision about which versions SymPy
> 1.14 should support.
>
> Following spec 0 would mean dropping support for 3.9 and 3.10 right
> now meaning that the currently supported versions would be 3.11, 3.12
> and 3.13 (and 3.14). I don't know of any strong advantage that SymPy
> would get from dropping 3.9 or 3.10 in particular but there is a
> reason why spec 0 says to do this regardless.
>
> The problem with SymPy putting out a new release that would be
> installed on older Python versions is that it can break other packages
> that depend on SymPy but that no longer provide releases for those
> older Python versions. Most of the time it is correct that Python
> packages don't use upper version constraints like sympy<=1.13 but it
> makes it problematic if SymPy and those other packages don't support
> the same range of Python versions. This is basically why spec 0
> recommends that projects in the scientific Python ecosystem coordinate
> to support a common set of versions. Essentially part of the
> compatibility information between different packages is encoded by
> packages following a similar policy for Python version support.
>
> On the other hand spec 0 is not universally adopted and takes a
> somewhat aggressive approach to minimum supported Python versions.
> CPython itself says that versions 3.9 to 3.13 are still considered
> supported:
> https://devguide.python.org/versions/
>
> Two major dependents for SymPy are pytorch and SageMath. Currently
> SageMath claims to support 3.9 to 3.12 although I think a new release
> is coming soon that would support 3.13 and would perhaps drop some of
> the older versions:
> https://doc.sagemath.org/html/en/reference/spkg/python3.html
>
> The last release of pytorch was a couple of months ago and supports 3.9 to
> 3.13:
> https://pypi.org/project/torch/2.6.0/#files
>
> Potentially if SymPy 1.14 does not support the whole range of Python
> versions that e.g. torch does then that creates a problem for them
> because it means they have to straddle multiple SymPy versions.
> Ideally we don't break them in that situation but I think that every
> SymPy release does cause issues for both torch and Sage. Currently
> torch constrains sympy>=1.13.3 i.e. they only accept the absolutely
> newest release of SymPy. I think Sage constrains the sympy version in
> a similar way so it is useful for them if a SymPy release supports at
> least the Python versions that they want to support.
>
> For SymPy's own dependencies, mpmath's last release 1.3.0 was 2 years
> ago and does not list any particular Python version support. The
> current mpmath master branch has requires-python>=3.9 but I have no
> idea when there might be a full release of mpmath.
>
> Both gmpy2 and python-flint are optional dependencies. The last
> release of gmpy2 was almost a year ago and provides binaries for
> CPython 3.7 to 3.13. The latest release of python-flint only supports
> 3.11, 3.12 and 3.13.
>
> Other things like numpy, scipy, matplotlib etc generally follow spec 0
> so they currently only support 3.11-3.13.
>
> I don't have strong opinions about Python version support for SymPy
> 3.14 but it needs to be decided before we can put out a new release.
>
> --
> Oscar
>
> --
> You received this message because you are subscribed to the Google Groups
> "sympy" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to sympy+unsubscr...@googlegroups.com.
> To view this discussion visit
> https://groups.google.com/d/msgid/sympy/CAHVvXxQKm%3DVx3U53GN_GhRbAm-68c982NZtA1wfrk7G%2BAqEBww%40mail.gmail.com
> .
>

-- 
You received this message because you are subscribed to the Google Groups 
"sympy" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sympy+unsubscr...@googlegroups.com.
To view this discussion visit 
https://groups.google.com/d/msgid/sympy/CAFjzj-J1D89xr%2Bqb8QpFqvLhZF9DcFQTkNohb4JWOKFCPss%2BvA%40mail.gmail.com.

Reply via email to