On Wednesday, April 24, 2024 at 4:25:41 PM UTC-5 Dima Pasechnik wrote: On Wed, Apr 24, 2024 at 9:29 PM Nathan Dunfield wrote: > On a related note, the reason that CyPari2 and CyPari are still separate relates to what Marc mentioned earlier about tension between two models of installing software: the "Linux distro way" using a system-level package manager (where there is typically only one version of any given library on the system) and the "Python pip" way (where all needed libraries are statically linked into the wheel). CyPari2 follows the first, CyPari the second. (This story is further complicated by the fact that, from a user's perspective, conda is like "Python pip" in that it is orthogonal to any system libraries, but developing packages for conda is akin to building them for a Linux distro.)
There isn't a big problem to set up a GitHub wheel builder for CyPari2, so there is not really a sea of difference here in this sense. Dima, Good point, I had forgotten that Matthias did exactly that when he released the most recent CyPari2: https://github.com/sagemath/cypari2/blob/master/.github/workflows/dist.yml and the binary wheels for CyPari2 on PyPI are indeed statically linked and self-contained. So CyPari2 is a good example of a Python package the fully supports both modes. (Unlike CyPari, which only supports "Python pip", though unlike CyPari2 it does work on Windows.) Also, probably it should be mentioned that linux distro way/pip way can be very nicely combined using a python venv. So one can use system packages, but add up more packages, and, if needed, override system packages with other versions. Agreed! Best, Nathan -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/c9c1ac2d-2f04-4e36-97f6-dc43ff12a0b0n%40googlegroups.com.