Require Python 3.12 or newer; remove outdated workarounds#40936
Require Python 3.12 or newer; remove outdated workarounds#40936vbraun merged 5 commits intosagemath:developfrom
Conversation
|
Documentation preview for this PR (built with commit 6bb49a8; changes) is ready! 🎉 |
|
Failure in the pdf docs seems to be unrelated (so are the other CI failures) |
|
You should delete 3.11 conda ci |
I think I did this already, but might have missed something. What do you mean precisely? |
In |
You need to delete |
This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
will --- a/.github/workflows/ci-meson.yml
+++ b/.github/workflows/ci-meson.yml
@@ -35,7 +35,7 @@ jobs:
include:
# One run for oldest supported Python
- os: 'ubuntu'
- python: '3.11'
+ python: '3.12'
tests: 'all'
# Test only changed files
- os: 'ubuntu'do? |
yes. Because in this PR, all conda lock files about python 3.11 are deleted. It is failed. |
|
also, how about removing |
I do not know this. I think these files are not useful. But I can not confirm |
|
there is also build/pkgs/exceptiongroup/ overdue to remove, as it's only installed for Python version <3.11, see |
|
also to remove: according to |
typing_extensions is a dependency for newer version of beatifulsoup4. We can not remove this |
|
it might be listed in our settings as a dependency, but it's not even installed with python 3.12+, as far as I can see |
Because in sage-distro We use a old version bs4. You can download the tar ball and look the pyproject.toml |
I just checked this - sorry, you are right. Indeed they still use |
sagemathgh-41116: bump cysignals to 1.12.6, cypari to 2.2.4 This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
sagemathgh-41116: bump cysignals to 1.12.6, cypari to 2.2.4 This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
sagemathgh-41116: bump cysignals to 1.12.6, cypari to 2.2.4 This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
sagemathgh-41116: bump cysignals to 1.12.6, cypari to 2.2.4 This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
sagemathgh-41116: bump cysignals to 1.12.6, cypari to 2.2.4 This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
sagemathgh-41116: bump cysignals to 1.12.6, cypari to 2.2.4 This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
sagemathgh-41116: bump cysignals to 1.12.6, cypari to 2.2.4 This provides support for Python 3.14, and drops Python 3.11 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#40936: needed for CI to pass URL: sagemath#41116 Reported by: Dima Pasechnik Reviewer(s): Chenxin Zhong
|
@tobiasdiez Reslove conflict and merge the lastest develop please. |
|
|
||
| #if PY_VERSION_HEX >= 0x030e0000 | ||
| // Python 3.14+: atexit uses a PyList | ||
| static PyObject* get_atexit_callbacks_list(PyObject *self) { |
There was a problem hiding this comment.
This change is not correct
There was a problem hiding this comment.
is this (correct) change something already merged?
There was a problem hiding this comment.
is this (correct) change something already merged?
I have fixed it last time. to make it run in python 3.14
There was a problem hiding this comment.
should be fixed by a70ec5a - I've put the author as you; this is basically the diff of this file with the 10.8.beta9 version
|
change in |
You forget this @dimpase You just delete this. because we already have python3.12 Ubuntu test |
Removed configuration for Python 3.11 from CI workflow.
|
I have made a PR to this branch. Besides, can we remove check update-menson workflow? |
Remove Python 3.11 from CI configuration
|
Then wait for CI agree this |
|
now I'm not 100% sure that |
|
Tests are passing now, modulo the known random failures. |
|
I think the instructions from tools/update_meson should mention that they apply to Conda venvs only. |
|
Can we add python 3.14 support before the 10.8 stable version? |
It's not conda specific. But the test that |
perhaps I'm not well-informed on the current coding practices, but are you saying that tools/update_meson must be run on every potential PR which changes a |
If you add a python/cython file, it needs to be added to the meson file. This test is there to check that this was done. |
sagemathgh-40936: Require Python 3.12 or newer; remove outdated workarounds <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> In line with [Spec 0](https://scientific- python.org/specs/spec-0000/#drop-schedule), we remove support for Python 3.11. Many outdated patches/workarounds for these older (or even older) Python versions are removed, but I cannot guarantee that I've found all obsolete ones. Also CI tests for systems using Python 3.11 are removed. For next years cleaning job: - Change version in `pyproject.toml` and `build/pkgs/python3/spkg- configure.m4` - Search for `3.12`, `312`,`3,12`, `PY_VERSION`, `PY_MINOR_VERSION` and `sys.version_info` Similar PRs: - sagemath#39251 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] The title is concise and informative. - [ ] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#39163 URL: sagemath#40936 Reported by: Tobias Diez Reviewer(s): Chenxin Zhong, Dima Pasechnik
sagemathgh-40936: Require Python 3.12 or newer; remove outdated workarounds <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> In line with [Spec 0](https://scientific- python.org/specs/spec-0000/#drop-schedule), we remove support for Python 3.11. Many outdated patches/workarounds for these older (or even older) Python versions are removed, but I cannot guarantee that I've found all obsolete ones. Also CI tests for systems using Python 3.11 are removed. For next years cleaning job: - Change version in `pyproject.toml` and `build/pkgs/python3/spkg- configure.m4` - Search for `3.12`, `312`,`3,12`, `PY_VERSION`, `PY_MINOR_VERSION` and `sys.version_info` Similar PRs: - sagemath#39251 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] The title is concise and informative. - [ ] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - sagemath#39163 URL: sagemath#40936 Reported by: Tobias Diez Reviewer(s): Chenxin Zhong, Dima Pasechnik
In line with Spec 0, we remove support for Python 3.11. Many outdated patches/workarounds for these older (or even older) Python versions are removed, but I cannot guarantee that I've found all obsolete ones. Also CI tests for systems using Python 3.11 are removed.
For next years cleaning job:
pyproject.tomlandbuild/pkgs/python3/spkg-configure.m43.12,312,3,12,PY_VERSION,PY_MINOR_VERSIONandsys.version_infoSimilar PRs:
📝 Checklist
⌛ Dependencies