On Friday, February 16, 2024 at 3:57:06 PM UTC-8 Nils Bruin wrote:

As far as I understand, the proposal is to allow sage "packages" to be 
closer to more standard python prerequisites by letting them be resolved by 
pip packages.


No, we already have such Sage packages: This is just one of the 4 existing 
package "source types" (
https://deploy-livedoc--sagemath.netlify.app/html/en/developer/packaging#package-types)
 
- "normal", "wheel", "pip", "script".

Most of our Python packages come from PyPI already. The difference is 
really (1) when we determine the version to be installed, and (2) if and 
how we distribute the tarball.

- "normal" packages are built from an sdist (tarball) retrieved from PyPI. 
- The version is set in the file package-version.txt, and the PyPI download 
URL ("upstream_url") and checksums are recorded in checksums.ini; 
see https://github.com/sagemath/sage/tree/develop/build/pkgs/numpy for an 
example. 
- The release manager's scripts download the package from the upstream_url 
and put them on the Sage mirrors. 
- If the package is standard, it is also included in the big release 
tarball. 
- If the package is standard and a stable release is being made, a GH 
Actions workflow also uploads the tarball as a Release Asset to GitHub (see 
https://github.com/sagemath/sage/releases/tag/10.2). 
- When users install Sage from git, any normal package is first attempted 
to retrieve from the GitHub Release Assets, then from Sage mirrors, then 
from the upstream_url. 
- When users install Sage from the big release tarball, standard normal 
packages have their sdists already in upstream, and only 
optional/experimental normal packages need to be retrieved.

What Dima proposes here is to allow _standard_ Sage packages to be of 
"source type" "pip". 
 

By default the package content would be fetched, as pip does,


Not just as pip does, but by actually calling "pip" to contact PyPI.
 

and that would mean the default configuration for sage would require 
internet at install time.


That's right.
 

-- 
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/ac7bdb04-3a96-45a0-9c4c-0694000e4655n%40googlegroups.com.

Reply via email to