Bump cython from 3.0.12 to 3.2.3
Bumps cython from 3.0.12 to 3.2.3.
Release notes
Sourced from cython's releases.
3.2.2
No release notes provided.
3.2.1
No release notes provided.
3.2.0 (2025-11-05)
(Complete changelog for the 3.2.0 release, including pre-releases.)
Features added
Builtin exception types are now inferred. (Github issue :issue:
6908)The list of known, inferred and optimised Python builtins was updated.
rangeis now considered a type.ascii,bin,format,hex,octwere added as functions. (Github issue :issue:6931)The f-string syntax was extended according to PEP-701. (Github issue :issue:
5452)t-strings are implemented according to PEP-750. The implementation backports the template classes but prefers existing backports if installed separately. (Github issue :issue:
6811)Unknown return type annotations with
->are no longer rejected but produce warnings. This allows better integration with Python type hints that are not always usable for Cython.-> Noneis also allowed now. Patch by jpe. (Github issue :issue:6946)The runtime Python dispatch for fused functions is substantially faster. (Github issues :issue:
1385, :issue:6996)Freelists (via cdef class decorator and for internally used types such as
async) are now also used in the Limited API and with extension type specs enabled. (Github issue :issue:7151)Module imports now quickly check for an already imported module to speed up reimports. Patch by Lysandros Nikolaou. (Github issue :issue:
7035)Type checks on PEP-604 union types (
int | None) are optimised into separate checks. (Github issue :issue:6935)Assignments to the PEP-604 union type
float | Noneallow any suitable Python number as input and convert it to a Pythonfloatautomatically. (Github issue :issue:5750)
... (truncated)
Changelog
Sourced from cython's changelog.
3.2.3 (2025-12-14)
Features added
The C-API declarations were updated to include the new
PyList_*()functions. (Github issue :issue:7291)The
Py_mod_gilmodule setting can now be changed with a C macro, overriding thefreethreading_compatibledirective setting. (Github issue :issue:7404)Bugs fixed
t-strings lost the last element when compiled for the Limited API. (Github issue :issue:
7381)The
array.dataproperty of thecpython.arraydeclarations generated a useless exception check that degraded its use innogilcode. (Github issue :issue:7408)Parallel builds with the
cythonizecommand could request more processes than allowed by the platform, thus failing the build. (Github issue :issue:7384)A minor thread sanitizer issue was resolved. (Github issue :issue:
7383)3.2.2 (2025-11-30)
Features added
- The C-API declarations were updated to include the new
PyDict_*Ref()functions. (Github issue :issue:7291)Bugs fixed
Iteration over literal sequences and strings in generators generated invalid C code since 3.2.0. This was a regression due to the C array iteration optimisation in :issue:
6926, which is now disabled inside of generators. (Github issue :issue:7342)Calling special methods of known exception types failed with an
AttributeError. (Github issue :issue:7342)
... (truncated)
Commits
d03558dPrepare release of 3.2.3.f94cb4bUpdate changelog.b0484c5Fix thread access issue with fused function classobj (GH-7387)93fb6a1Update changelog.ce82a32Fix tstring call in Python 3.14+ Limited API (GH-7381)066da48Add a C macro to configure "Py_mod_gil" at C compile time (GH-7404)704b09cAdd new PyList_* C APIs to cpython.list (#7373)b288fe3Fix maximum number of ProcessPool workers (#7385)2a8ee41Prepare release of 3.2.2.de755acUpdate changelog.- Additional commits viewable in compare view
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot mergewill merge this PR after your CI passes on it@dependabot squash and mergewill squash and merge this PR after your CI passes on it@dependabot cancel mergewill cancel a previously requested merge and block automerging@dependabot reopenwill reopen this PR if it is closed@dependabot closewill close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)