On Mon, 1 Jul 2024 at 18:04, Aaron Meurer <[email protected]> wrote: > > On Mon, Jul 1, 2024 at 4:38 AM Oscar Benjamin > <[email protected]> wrote: > > > > I think my preference is: > > > > 1. Use python-flint >= 0.6.0, < 1.0 automatically. > > 2. Don't use python-flint < 0.5.0 or >= 1.0 and don't give any warning > > about it. > > 3. Unless the SYMPY_GROUND_TYPES=flint variable is set in which case > > use python-flint regardless of the version. > > 4. Keep future versions of python-flint compatible with SymPy 1.13 > > until python-flint 1.0. > > 5. Once SymPy 1.13 is released add a job in python-flint CI to test > > against SymPy 1.13. > > > > Does anyone have any views on this? > > I guess the most ideal would be if we could synchronize with the > upstream and have them promise that any release with a breaking change > would bump, say, the major version number. That we we could pin <1.0 > and be sure that will be the right thing. > > Also presumably if an issue does arise we can release a patch release > that adds a pin, so maybe it isn't a huge deal as long as we are able > to stay on top of it.
It can be hard to say sometimes what exactly is a "breaking change" vs a bug fix. Ultimately if sympy depends on some behaviour of python-flint then we won't know if a change causes problems without at least running the test suite somewhere. It is unreasonable though for python-flint to promise that all future releases will be fully tested against all future releases of sympy in perpetuity. The way that numpy and scipy do it is that they guarantee some range so scipy is compatible with numpy 2.n to 2.n+2 which I think can also work here. If sympy uses python-flint 0.n to say 0.n+3 then python-flint can test older versions of sympy for as long as they are "supported" and sympy can just not use newer versions. Then we can say that sympy now accepts 0.6.0-0.9.0 and python-flint can test against sympy 1.13 until version 0.10.0. I don't want to go back and make point releases for old sympy versions for this kind of thing if possible. There are all kinds of other things like new numpy versions, new Python versions etc that break old releases of sympy. Backporting fixes for all of those opens a whole bunch of questions about how long "support" is supposed to last for old releases. Maybe that is where SPEC 0 comes in but SPEC 0 is time based and neither sympy nor python-flint have regular release schedules. -- 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 [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/sympy/CAHVvXxTRyUfZWpCPqKJ6ARW25Q5dXZ0qST8mQKE0ObUiVYL0Nw%40mail.gmail.com.
