Repository navigation
Conversation
|
GOOD TO GO at A Sonnet cross-review confirmed:
I'll add |
|
Coverage: 91.54% (unit tier, Python 3.15,
Per-file detail: the |
ebb5566 to
e2d2af9
Compare
|
GOOD TO GO at The 3.15 failure in
A Sonnet re-review of the delta confirmed:
That the pin stayed put while the run exited 0 is a separate, pre-existing gap, filed on its own. |
|
Ordering check, since the "Plain unittest ordering" job is skipped on PRs. I ran every leg of it, sequentially and with CI's own command, on
The KTLO legs report 0 failing test ids across 15 legs. |
- python-versions.toml: 3.14t is supported. util/python_versions.py lets a free-threaded build be supported beside its default build (hand-kept, after the computed versions) and keeps it out of pypi, conda and engine-tests via builds(): 3.14's pure-Python wheel is the one it installs. - unit-tests.yml: 3.14t joins `test` and `integration` (out of experimental.yml) with PYTHON_GIL=0, and its install uninstalls lxml, which needs the GIL on lxml 6. - tests/_gil_guard.py + conftest: on a free-threaded build under Actions, fail the first teardown that finds the GIL on. - python-compatibility.yml: `Compat Python 3.14t`; Verify package fails where importing pcapkit turns the GIL on. - update_python_versions.py keeps hand-kept lines whatever their tier; the Compat rows and spans cover 3.14t, the classifiers do not. - Docs: workflows.rst describes the promotion; unit-tests.yml citations re-derived. Tests: new tests/project/test_free_threaded_supported_1958.py; tier, matrix and prose pins updated.
e2d2af9 to
8695757
Compare
|
#2006 landed as |
|
Closing per the 02:05Z ruling on #1967: 3.14t stays experimental, and lxml may turn the GIL on there. That removes every part of this PR: the promotion, the GIL guard, the lxml uninstall, |
Please follow the guide below
You will be asked some questions, please read them carefully and answer honestly
Put an
xinto all the boxes [ ] relevant to your pull request (like that [x])Use Preview tab to see how your pull request will actually look like
Searched for similar pull requests
Followed the coding style (
make pylint,make mypy,make isort)make testpasses, and a test case covers the changeAdded a changelog entry under
docs/source/changelog/and regeneratedCHANGELOG.md, if the change is user-visible — N/A — centralised in docs(changelog): shared 1.5.0 changelog — long-lived, merges last (#610, #616, #617, #618, #620) #657What is the purpose of your pull request?
fix— corrects a defectfeat— adds a featureperf— changes performance, not behaviourrefactor— changes neither behaviour nor performancetest— tests onlydocs— documentation onlyci— workflows or build toolingrelease— bumps the version or rolls up a distributionchore— anything elseDescription of your pull request and other information
#1958 phase 4. Stacked on #2006, so it lands after that one. GraalPy stays experimental, and this does not close #1958.
supported.load()accepts a supported free-threaded build only when its default build is also supported.builds()keeps 3.14t out of pypi, conda and engine-tests, because the cp314 wheel is pure Python and installs on 3.14t.testandintegrationand gainsCompat Python 3.14t. The ruleset must add that context.PYTHON_GIL=0and uninstall lxml. lxml 6 declares noPy_mod_gil, and its maintainer reports crashes without the GIL (LP#2111289).tests/_gil_guard.pyand a conftest hook fail the first teardown that finds the GIL on, on a free-threaded build under Actions. The Compat leg fails ifimport pcapkitturns the GIL on.tests/project/test_free_threaded_supported_1958.py. The existing tier and prose pins are updated, and theunit-tests.ymlcitations are re-derived.