We added the packages as optional "pip" packages (see https://deploy-livedoc--sagemath.netlify.app/html/en/developer/packaging#package-types for the terminology), each more than 1 year ago.
- https://deploy-livedoc--sagemath.netlify.app/html/en/reference/spkg/pytest#spkg-pytest (added in 2020) - https://deploy-livedoc--sagemath.netlify.app/html/en/reference/spkg/pytest_mock#spkg-pytest-mock (added in 2022) - https://deploy-livedoc--sagemath.netlify.app/html/en/reference/spkg/pytest_xdist#spkg-pytest-xdist (added in 2022) "pytest" is the current gold standard for running tests of Python packages. Various standard packages in the Sage distribution already declare pytest in "dependencies_check" as a conditional dependency for use when SAGE_CHECK=yes is set. The support for testing parts of the Sage library with pytest was from an effort largely stalled after 2022 -- and which has been completely broken since early 2024 with the arrival of pytest 8.x, which I have just fixed in https://github.com/sagemath/sage/pull/37999 (to be merged). I'll note that recent versions of pytest have added support for PEP-420 implicit namespace package, which the Sage library uses as part of the modularization effort. By making pytest a standard package, I would hope to help revive this effort, and thus the larger effort to "adopt mainstream Python testing/linting infrastructure" (see https://github.com/sagemath/sage/issues/28936). I'm proposing to make the packages (and their dependencies) standard (wheel) packages according to the procedures in our developer guide. - Reference to previous such proposals following our project's procedures: https://groups.google.com/g/sage-devel/c/EMeTJ6Hwgns/m/KyOOQzkzAAAJ - Link to our packaging documentation and explanation how making it a standard package compares to version pinning done for example using conda-lock: https://groups.google.com/g/sage-devel/c/MIU-xo9b7pc/m/N2vuKb-TAAAJ The other pytest_* packages are related technical packages. The PR that implements it: https://github.com/sagemath/sage/pull/37301 This is a redo of the 2nd part of my proposal https://groups.google.com/g/sage-devel/c/MIU-xo9b7pc/m/NsyUa7iXAgAJ from Feb 10, which was stalled. (The 1st part (on python_build) was redone in https://groups.google.com/g/sage-devel/c/EMeTJ6Hwgns/m/9_zh6usoAAAJ and approved.) I ask everyone to focus on the specifics of this proposal. -- 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/2c42bd41-24a3-467e-857f-aedc3966c107n%40googlegroups.com.