Python 3.15 ships Oct 9 and we cap below it; 3.10 went EOL Oct 1
Maintainer thường phản hồi trong vòng 1 ngày
@dimitri-yatsenko đang làm issue này rồi.
Từ ngày 4/10/2026.
Đánh giá
Issue này chưa được đánh giá.
Mô tả
Two Python-version deadlines have arrived, one of them this week. They want different releases.
Python 3.15 lands Friday, 2026-10-09 — and we cap below it
PEP 790 puts 3.15.0 final on 2026-10-09; betas 1 through 4 shipped between May and July. We declare:
requires-python = ">=3.10,<3.15"
From the 9th, pip install datajoint on a fresh 3.15 fails to resolve. Not "installs and misbehaves" — refuses. Anyone whose base image tracks latest, or who upgrades early, hits a hard stop with no workaround but pinning Python back. The conda-forge recipe carries the same bound (python >={{ python_min }},<3.15), so that channel blocks too.
This is the time-sensitive half and it is small.
Python 3.10 reached EOL on 2026-10-01
It is out of support as of three days ago — no further security fixes. We still declare >=3.10, ship the 3.10 classifier, and test 3.10 as the floor of the matrix. 2.3.4 shipped supporting it.
Not urgent, but no longer a default — it is now a choice to keep carrying it.
| cycle | released | EOL |
|---|---|---|
| 3.10 | 2021-10-04 | 2026-10-01 — EOL |
| 3.11 | 2022-10-24 | 2027-10-31 |
| 3.12 | 2023-10-02 | 2028-10-31 |
| 3.13 | 2024-10-07 | 2029-10-31 |
| 3.14 | 2025-10-07 | 2030-10-31 |
| 3.15 | 2026-10-09 | ~2031-10 |
Proposal: raise the cap in 2.3.5, drop 3.10 in 2.4
2.3.5 — raise the ceiling. Additive, unblocks installs, breaks nothing:
requires-python = ">=3.10,<3.16"- add the
Programming Language :: Python :: 3.15classifier - add a
py315pixi feature and atest-py315environment, alongside the existingpy310/py314 - add 3.15 to the CI matrices, including the Windows job
- bump the conda-forge recipe bound to match
Test against an rc before the 9th rather than assuming. The cap is a claim that we work on 3.15, and nothing in the dependency set has been exercised there — numpy, pandas, pymysql, pydot, deepdiff and pydantic-settings all need wheels or a working build. If something is not ready, better to learn it now and either wait or pin that one dependency.
2.4 — drop 3.10. Breaking, so it belongs with the other breaking change already scheduled there (#1557):
requires-python = ">=3.11,<3.16"- remove the
3.10classifier - move the CI floor and the pixi environment from
py310topy311 target-version = "py311"for ruff (pyproject.toml:135)
Every place a version is pinned
| file | line | what |
|---|---|---|
pyproject.toml |
22 | requires-python = ">=3.10,<3.15" |
pyproject.toml |
60-64 | classifiers, 3.10 through 3.14 |
pyproject.toml |
135 | target-version = "py310" (ruff) |
pyproject.toml |
267-271 | pixi features py310, py314 |
pyproject.toml |
279-280 | pixi environments test-py310, test-py314 |
.github/workflows/test.yaml |
83 | Windows matrix ["3.10", "3.14"] |
.github/workflows/test.yaml |
34, 82 | comments restating the range |
| conda-forge feedstock | recipe/meta.yaml |
python_min, and python >={{ python_min }},<3.15 |
Open question
Whether anyone we support is still pinned to 3.10 — that decides how gently 2.4 has to handle the drop, and whether it needs a deprecation notice in 2.3.5 first.
- Ngôn ngữ chính
- Python
- Star
- 197
- Fork
- 98
- Merge trung bình
- 15 giờ 31 phút
- Pull request đã merge (30 ngày)
- 9
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của datajoint/datajoint-python
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
datajoint/datajoint-python#1581 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
datajoint/datajoint-python#1539 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
database.name should namespace schema names on MySQL, as it does on PostgreSQLCó thể đã có người làm @dimitri-yatsenko đã nhận 2 ngày trước. Đang mởfeature
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 15/100
datajoint/datajoint-python#1582 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 40/100
datajoint/datajoint-python#1580 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
A column copied by a foreign key loses the parent's core type (int32 becomes int)Có thể đã có người làm @dimitri-yatsenko đã nhận 2 ngày trước. Đang mở
Độ khó 3/5 Nửa ngày Mức phù hợp với người mới 25/100
datajoint/datajoint-python#1578 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của datajoint/datajoint-python
Issue tương tự
-
bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
lugassawan/swe-workbench#799 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
vllm-project/vllm#61131 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Non-string form field names raise AttributeError when files are attachedCó thể đã có người làm @nightcityblade đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
kubernetes-client/python#2735 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
desktop help wanted test
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
Maintainer thường phản hồi trong vòng 1 ngày