2412
Comment:
|
3483
install-requires.txt
|
Deletions are marked like this. | Additions are marked like this. |
Line 18: | Line 18: |
=== For developers and packagers: Version constraints for Python packages === For all Python packages in the Sage distribution, `build/pkgs/SPKG/install-requires.txt` now encodes version constraints (such as lower and upper bounds) [[https://trac.sagemath.org/ticket/30719|#30719]]. The constraints are in the format of the `install_requires` key of [[https://setuptools.readthedocs.io/en/latest/userguide/declarative_config.html|setup.cfg]] or [[https://packaging.python.org/discussions/install-requires-vs-requirements/#id5|setup.py]]. The files may include comments (starting with `#`) that explain why a particular lower bound is warranted or why we wish to include or reject certain versions. For example: {{{ $ cat build/pkgs/sphinx/package-version.txt 3.1.2.p0 $ cat build/pkgs/sphinx/install-requires.txt # gentoo uses 3.2.1 sphinx >=3, <3.3 }}} The currently encoded version constraints are merely a starting point. Downstream packagers and developers are invited to refine the version constraints based on their experience and tests. |
Sage 9.3 Release Tour
in progress (2020)
Contents
Package upgrades, system packages
FLINT, Arb
GAP
Other package upgrades
System package information for OpenSUSE
In particular, users of OpenSUSE Tumbleweed will notice the information about system packages that the Sage distribution can use.
For developers and packagers: Version constraints for Python packages
For all Python packages in the Sage distribution, build/pkgs/SPKG/install-requires.txt now encodes version constraints (such as lower and upper bounds) #30719. The constraints are in the format of the install_requires key of setup.cfg or setup.py.
The files may include comments (starting with #) that explain why a particular lower bound is warranted or why we wish to include or reject certain versions. For example:
$ cat build/pkgs/sphinx/package-version.txt 3.1.2.p0 $ cat build/pkgs/sphinx/install-requires.txt # gentoo uses 3.2.1 sphinx >=3, <3.3
The currently encoded version constraints are merely a starting point. Downstream packagers and developers are invited to refine the version constraints based on their experience and tests.
For developers: Setting up Python packages from PyPI as Sage packages
Setting up Python packages from PyPI as Sage packages has become easier #30974.
$ ./sage -package create scikit_spatial --pypi Downloading tarball to /Users/mkoeppe/s/sage/sage-rebasing/worktree-algebraic-2018-spring/upstream/scikit-spatial-5.0.0.tar.gz [......................................................................] $ ls build/pkgs/scikit_spatial/ SPKG.rst dependencies package-version.txt type checksums.ini install-requires.txt spkg-install.in $ cat build/pkgs/scikit_spatial/SPKG.rst scikit_spatial ============== Description ----------- Spatial objects and computations based on NumPy arrays. License ------- BSD license Upstream Contact ---------------- https://pypi.org/project/scikit-spatial/
Note that this new command does not check the dependencies of the Python package; this still needs to be done manually.
Modularization and packaging of sagelib
Use of system Jupyter notebook / JupyterLab
Tickets
Availability of Sage 9.3 and installation help
Development of the Sage 9.3 series has begun.
See sage-devel for development discussions.