Closed slel closed 2 years ago
Changed keywords from none to upgrade, python
Description changed:
---
+++
@@ -1 +1,15 @@
+This is to support Python 3.10.
+Python 3.10.0 expected release: 2021-10-04.
+This ticket is for the patches necessary to support
+Python 3.10 in addition to 3.9, 3.8, 3.7, 3.6.
+
+It does not include the actual upgrade to Python 3.10.
+To test, see #30767.
+
+Related:
+
+- [PEP 619 -- Python 3.10 Release Schedule](https://www.python.org/dev/peps/pep-0619/)
+- #30184: Support Python 3.9
+- #30384: Adopt the “time window-based” policy for support of Python versions from NEP 29
+
Dependencies: #30768
Description changed:
---
+++
@@ -10,6 +10,8 @@
Related:
- [PEP 619 -- Python 3.10 Release Schedule](https://www.python.org/dev/peps/pep-0619/)
+- [What's new in Python 3.10](https://docs.python.org/3.10/whatsnew/3.10.html)
+- #30767: Test ticket: Python 3.10 development releases
- #30184: Support Python 3.9
- #30384: Adopt the “time window-based” policy for support of Python versions from NEP 29
Description changed:
---
+++
@@ -3,6 +3,8 @@
This ticket is for the patches necessary to support
Python 3.10 in addition to 3.9, 3.8, 3.7, 3.6.
+
+- needs Cython 0.29.23 (#31445)
It does not include the actual upgrade to Python 3.10.
To test, see #30767.
Changed dependencies from #30768 to #30768, #31445
Description changed:
---
+++
@@ -5,6 +5,7 @@
Python 3.10 in addition to 3.9, 3.8, 3.7, 3.6.
- needs Cython 0.29.23 (#31445)
+- `gmpy2` fails to build with Python 3.10: error: ‘_PyHASH_NAN’ undeclared - https://bugzilla.redhat.com/show_bug.cgi?id=1959010
It does not include the actual upgrade to Python 3.10.
To test, see #30767.
Branch: u/mkoeppe/support_python_3_10
Description changed:
---
+++
@@ -5,7 +5,7 @@
Python 3.10 in addition to 3.9, 3.8, 3.7, 3.6.
- needs Cython 0.29.23 (#31445)
-- `gmpy2` fails to build with Python 3.10: error: ‘_PyHASH_NAN’ undeclared - https://bugzilla.redhat.com/show_bug.cgi?id=1959010
+- `gmpy2` fails to build with Python 3.10: error: ‘_PyHASH_NAN’ undeclared - https://bugzilla.redhat.com/show_bug.cgi?id=1959010 ... patches at https://copr-dist-git.fedorainfracloud.org/cgit/@python/python3.10/python-gmpy2.git/tree/
It does not include the actual upgrade to Python 3.10.
To test, see #30767.
Description changed:
---
+++
@@ -5,7 +5,7 @@
Python 3.10 in addition to 3.9, 3.8, 3.7, 3.6.
- needs Cython 0.29.23 (#31445)
-- `gmpy2` fails to build with Python 3.10: error: ‘_PyHASH_NAN’ undeclared - https://bugzilla.redhat.com/show_bug.cgi?id=1959010 ... patches at https://copr-dist-git.fedorainfracloud.org/cgit/@python/python3.10/python-gmpy2.git/tree/
+- #31855 Patch/upgrade `gmpy2` to add python 3.10 support
It does not include the actual upgrade to Python 3.10.
To test, see #30767.
Changed dependencies from #30768, #31445 to #30768, #31445, #31855
Branch pushed to git repo; I updated commit sha1. New commits:
3321a59 | build/pkgs/python3/spkg-configure.m4: Accept system python 3.10.x |
Description changed:
---
+++
@@ -6,6 +6,7 @@
- needs Cython 0.29.23 (#31445)
- #31855 Patch/upgrade `gmpy2` to add python 3.10 support
+- pyzmq-19.0.2 `error: implicit declaration of function 'PyObject_AsWriteBuffer' is invalid in C99`
It does not include the actual upgrade to Python 3.10.
To test, see #30767.
Description changed:
---
+++
@@ -6,7 +6,7 @@
- needs Cython 0.29.23 (#31445)
- #31855 Patch/upgrade `gmpy2` to add python 3.10 support
-- pyzmq-19.0.2 `error: implicit declaration of function 'PyObject_AsWriteBuffer' is invalid in C99`
+- #31856 Upgrade pyzmq to fix `error: implicit declaration of function 'PyObject_AsWriteBuffer' is invalid in C99` with pyzmq-19.0.2
It does not include the actual upgrade to Python 3.10.
To test, see #30767.
Changed dependencies from #30768, #31445, #31855 to #30768, #31445, #31855, #31856
Changed dependencies from #30768, #31445, #31855, #31856 to #30768, #31445, #31855, #31856, #31008
Description changed:
---
+++
@@ -7,6 +7,8 @@
- needs Cython 0.29.23 (#31445)
- #31855 Patch/upgrade `gmpy2` to add python 3.10 support
- #31856 Upgrade pyzmq to fix `error: implicit declaration of function 'PyObject_AsWriteBuffer' is invalid in C99` with pyzmq-19.0.2
+- `babel`
+- `numpy`
It does not include the actual upgrade to Python 3.10.
To test, see #30767.
Branch pushed to git repo; I updated commit sha1. Last 10 new commits:
f720722 | build/pkgs/sagelib/src/tox.ini: Add factor nobuildisolation |
c451b31 | src/setup.cfg.m4 (install_requires): Add sage_conf |
6700223 | Merge tag '9.3.rc0' into t/30913/sagelib__add_setup_cfg__install_requires_ |
04da2c6 | build/pkgs/ipywidgets: Patch out declaring install-requires of nbformat and jupyterlab-widgets |
815c944 | Merge #30913 |
b06731c | Remove Python 3.6 support from metadata and documentation |
57338c1 | Update numpy to 1.20.2, scipy to 1.6.2, networkx to 2.5.1 |
ac49be0 | build/pkgs/numpy: Update to 1.20.3 |
02f6848 | build/pkgs/scipy: Update to 1.6.3 |
a661b6a | Merge #31008 |
Description changed:
---
+++
@@ -6,8 +6,7 @@
- needs Cython 0.29.23 (#31445)
- #31855 Patch/upgrade `gmpy2` to add python 3.10 support
-- #31856 Upgrade pyzmq to fix `error: implicit declaration of function 'PyObject_AsWriteBuffer' is invalid in C99` with pyzmq-19.0.2
-- `babel`
+- #31856 Upgrade `pyzmq`, `babel` - to fix `error: implicit declaration of function 'PyObject_AsWriteBuffer' is invalid in C99` with pyzmq-19.0.2
- `numpy`
It does not include the actual upgrade to Python 3.10.
Description changed:
---
+++
@@ -2,7 +2,7 @@
Python 3.10.0 expected release: 2021-10-04.
This ticket is for the patches necessary to support
-Python 3.10 in addition to 3.9, 3.8, 3.7, 3.6.
+Python 3.10 in addition to 3.9, 3.8, 3.7.
- needs Cython 0.29.23 (#31445)
- #31855 Patch/upgrade `gmpy2` to add python 3.10 support
Description changed:
---
+++
@@ -1,5 +1,6 @@
This is to support Python 3.10.
-Python 3.10.0 expected release: 2021-10-04.
+- Python 3.10.0rc1 released 2021-08-11.
+- Python 3.10.0 expected release: 2021-10-04.
This ticket is for the patches necessary to support
Python 3.10 in addition to 3.9, 3.8, 3.7.
Changed dependencies from #30768, #31445, #31855, #31856, #31008 to #30768, #31445, #31855
Changed dependencies from #30768, #31445, #31855 to #30768, #31445, #31855, #32105
Changed dependencies from #30768, #31445, #31855, #32105 to #32488, #30768, #31445, #31855, #32105
Changed dependencies from #32488, #30768, #31445, #31855, #32105 to #32488, #30768, #31855, #32105
Branch pushed to git repo; I updated commit sha1. This was a forced push. New commits:
bab5de7 | build/pkgs/python3/spkg-configure.m4: Accept system python 3.10.x |
033366c | build/pkgs/numpy: Update to 1.21.1 |
c6a3a39 | build/pkgs/numpy: Update to 1.21.2 |
d0ca161 | Merge #32488 |
eced0de | Merge #32372 |
edc435e | re-activate abc warnings |
f0cd750 | Merge #30768 |
41f7f4e | build/pkgs/gmpy2: Update to 2.1.0rc1 |
731ccf1 | Merge #31855 |
Branch pushed to git repo; I updated commit sha1. New commits:
2749e67 | pkgs/sage-setup/setup.cfg: Allow Python 3.10 |
[scipy-1.6.3] ERROR: Package 'scipy' requires a different Python: 3.10.0 not in '<3.10,>=3.7'
[pplpy-0.8.6] Copying package files from temporary location /Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/var/tmp/sage/build/pplpy-0.8.6/inst to /Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1
[pplpy-0.8.6] Running post-install script for pplpy-0.8.6.
[pplpy-0.8.6] Traceback (most recent call last):
[pplpy-0.8.6] File "/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/bin/sphinx-build", line 5, in <module>
[pplpy-0.8.6] from sphinx.cmd.build import main
[pplpy-0.8.6] File "/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/lib/python3.10/site-packages/sphinx/cmd/build.py", line 25, in <module>
[pplpy-0.8.6] from sphinx.application import Sphinx
[pplpy-0.8.6] File "/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/lib/python3.10/site-packages/sphinx/application.py", line 31, in <module>
[pplpy-0.8.6] from sphinx.config import Config
[pplpy-0.8.6] File "/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/lib/python3.10/site-packages/sphinx/config.py", line 21, in <module>
[pplpy-0.8.6] from sphinx.util import logging
[pplpy-0.8.6] File "/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/lib/python3.10/site-packages/sphinx/util/__init__.py", line 41, in <module>
[pplpy-0.8.6] from sphinx.util.typing import PathMatcher
[pplpy-0.8.6] File "/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/lib/python3.10/site-packages/sphinx/util/typing.py", line 37, in <module>
[pplpy-0.8.6] from types import Union as types_Union
[pplpy-0.8.6] ImportError: cannot import name 'Union' from 'types' (/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/lib/python3.10/types.py)
[pplpy-0.8.6] make[5]: *** [html] Error 1
[pplpy-0.8.6] cp: build/html/*: No such file or directory
Changed dependencies from #32488, #30768, #31855, #32105 to #32488, #30768, #31855, #32105, #32518
Replying to @mkoeppe:
[scipy-1.6.3] ERROR: Package 'scipy' requires a different Python: 3.10.0 not in '<3.10,>=3.7'
It does not look like a 1.6.4 is in preparation (https://github.com/scipy/scipy/commits/maintenance/1.6.x)... so I guess we'll have to do the update to 1.7.x in #32105
Workaround for the scipy
install problem: --ignore-requires-python
(new commits in #32492)
Replying to @mkoeppe:
[pplpy-0.8.6] from types import Union as types_Union [pplpy-0.8.6] ImportError: cannot import name 'Union' from 'types' (/Users/mkoeppe/s/sage/sage-rebasing/local/var/lib/sage/venv-python3.10.0rc1/lib/python3.10/types.py) [pplpy-0.8.6] make[5]: *** [html] Error 1 [pplpy-0.8.6] cp: build/html/*: No such file or directory
Fixed by the sphinx upgrade in #32518
Changed dependencies from #32488, #30768, #31855, #32105, #32518 to #32488, #30768, #31855, #32492, #32518
cvxopt
build fails, needs https://github.com/cvxopt/cvxopt/pull/190
Changed dependencies from #32488, #30768, #31855, #32492, #32518 to #32488, #30768, #31855, #32492, #32518, #32519
Replying to @mkoeppe:
cvxopt
build fails, needs https://github.com/cvxopt/cvxopt/pull/190
That's #32519
This is to support Python 3.10, which was released on 2021-10-04. https://docs.python.org/3.10/whatsnew/changelog.html#changelog
Thanks to the following tickets, Sage is mostly ready for Python 3.10 in addition to 3.9, 3.8, 3.7.
31855 Patch/upgrade
gmpy2
to add python 3.10 support31856 Upgrade
pyzmq
,babel
- to fixerror: implicit declaration of function 'PyObject_AsWriteBuffer' is invalid in C99
with pyzmq-19.0.232815
numpy
32837
cffi
: Update to 1.15.032852 Update
traitlets
to 5.1.1 (for python 3.9.8, 3.10)32671 Update
pip
to 21.3.1,distlib
to 0.3.331295 Meta-ticket: Replace imports from deprecated
distutils
32930 IPython/Jupyter upgrade for python 3.10 support
33013 Fix tests with Python 3.10
In this ticket, we enable use of system Python 3.10 but issue a warning regarding its experimental status for Sage.
The ticket does not include the upgrade of the
python3
SPKG to Python 3.10. Many systems already ship Python 3.10. To test, thanks to https://wiki.sagemath.org/ReleaseTours/sage-9.5#Separate_virtual_environment_for_Python_packages, a full rebuild of the Sage distribution is not necessary - only the Python packages will be built from scratch in a separate venv.Related:
30767: Upgrade to Python 3.10
30184: Support Python 3.9
30384: Adopt the “time window-based” policy for support of Python versions from NEP 29
Depends on #33013 Depends on #32930 Depends on #33040
CC: @mkoeppe @slel @kiwifb @tornaria @antonio-rojas
Component: packages: standard
Keywords: upgrade, python
Author: Matthias Koeppe, Gonzalo Tornaría
Branch:
df9f1d4
Reviewer: Antonio Rojas, Matthias Koeppe
Issue created by migration from https://trac.sagemath.org/ticket/30766