On Thursday, June 6, 2024 at 5:56:15 AM UTC-5 Dima Pasechnik wrote:

Yet, pytest, a pip package, is installed and used rather regularly in Sage, 
and nobody gets hurt. It is found to be safe to install this particular 
package this way ("pip install pytest" does not affect anything in the Sage 
venv, that's why).


Yet because the version of pytest wasn't pinned, things broke when pytest 
8.* came out.  This would not have happened if pytest had been installed as 
a wheel package.  (As you say, pip packages can also be pinned to a 
particular version, though for a pure-Python package the only difference 
between wheel and a pinned pip is whether dependencies also have to be 
included.)

Dima, under your proposal that "standard packages can be pip packages", 
what criteria would be used to decide whether (and how narrowly) to pin a 
particular pip package?  Also, what criteria would be used to determine 
whether (and which) dependencies would be explicitly made Sage packages?

Personally, I support allowing Sage to use upstream binary wheels from PyPI 
rather than building from things source, but feel it is a mistake not to 
pin everything and explicitly list all dependencies, at least at first.

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/fa7c82aa-ce78-471d-b5e2-35ff3a682b27n%40googlegroups.com.

Reply via email to