You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As #30913 makes sage-conf both (a) a PEP517/518 build_systemrequires and (b) an install-requires of sagelib (sagemath-standard), also a version of sage-conf must be made available on PyPI.
This version of sage-conf includes a copy of SAGE_ROOT and SAGE_ROOT/build/** in its source distribution. On installation (or wheel building) it establishes a python-less SAGE_LOCAL hierarchy (#31362) in ~/.sage/ by running configure and make build-local; and then installs the configured sage_conf.py (#29038) as a Python module (and sage-config, sage-env-config).
There are no changes to how the Sage distribution is built. This ticket only provides an alternative and strictly optional way of installing (the non-Python bits of) Sage-the-distribution. It may be useful for some users who wish to use pip to install everything they need.
This test using tox uses .sage in an isolated directory within .tox instead of in your home directory. At the end of the tox run, the installed sage-config script is executed; it prints the configuration variables:
Make SAGE_ROOT configurable by the user (by passing --prefix to setup.py).
Optionally, it would create a venv that is used for building wheels.
sage-conf_pypi: API for incremental builds #30036: Make the build more incremental: On installation of sage-conf, only run configure but do not install anything; rather, a Python entry point can be used by Python distribution packages such as sagemath-standard to install packages if present.
As #30913 makes sage-conf both (a) a PEP517/518
build_systemrequiresand (b) aninstall-requiresof sagelib (sagemath-standard), also a version of sage-conf must be made available on PyPI.This version of sage-conf includes a copy of
SAGE_ROOTandSAGE_ROOT/build/**in its source distribution. On installation (or wheel building) it establishes a python-less SAGE_LOCAL hierarchy (#31362) in~/.sage/by runningconfigureandmake build-local; and then installs the configuredsage_conf.py(#29038) as a Python module (andsage-config,sage-env-config).There are no changes to how the Sage distribution is built. This ticket only provides an alternative and strictly optional way of installing (the non-Python bits of) Sage-the-distribution. It may be useful for some users who wish to use
pipto install everything they need.To test:
This test using
toxuses.sagein an isolated directory within.toxinstead of in your home directory. At the end of the tox run, the installedsage-configscript is executed; it prints the configuration variables:To build a source distribution:
(The source distribution has been uploaded to https://pypi.org/project/sage-conf/)
Follow-up steps:
--prefixtosetup.py).configurebut do not install anything; rather, a Python entry point can be used by Python distribution packages such as sagemath-standard to install packages if present.CC: @jhpalmieri @dimpase @kiwifb @vbraun
Component: build
Keywords: sd111
Author: Matthias Koeppe
Branch:
2a4a323Reviewer: Dima Pasechnik, François Bissey
Issue created by migration from https://trac.sagemath.org/ticket/29039