forked from pool/python-Cython
Compare commits
218 Commits
| Author | SHA256 | Date | |
|---|---|---|---|
| e5d0365f27 | |||
| 5d774b528c | |||
| f77b215438 | |||
| 03eea65b28 | |||
| c0f9297ee9 | |||
| ae7ff4d3bb | |||
| 52462dbb95 | |||
| 9d6d9196fe | |||
| 620f2792c4 | |||
| ba90c67515 | |||
| 08803193cc | |||
| 92f3edd7b6 | |||
| de9caa3162 | |||
| 8f7ab15707 | |||
| 434359dfe6 | |||
| 361316a835 | |||
| bcd8e00c85 | |||
| 13ff1f1bb7 | |||
| 9cd3340913 | |||
| 92d163182f | |||
| 02874d0f03 | |||
| e429bbc379 | |||
| 3b37702235 | |||
| 9feb72ee1a | |||
| 1026f0dcff | |||
| fce4b999ef | |||
| 54d399ed01 | |||
| 96cfd3be7f | |||
| cd41119c98 | |||
| 14fd7c5fdb | |||
| 1742305aed | |||
| 646ad4a192 | |||
| 75be73394b | |||
| b53fae658f | |||
| 88b3f8546e | |||
| d6e027f033 | |||
| 37f8eb9db2 | |||
| a22fc45760 | |||
| c01689c958 | |||
| 45716b9fbb | |||
| 14ebf6b4b9 | |||
| 383cff38e3 | |||
| 9e67f24bdb | |||
| f68cef8e19 | |||
| 355022f76b | |||
| 6d56146e29 | |||
| 685688d439 | |||
| 32b27c556b | |||
| d8c2bde919 | |||
| aedce87cb7 | |||
| 1185ccd190 | |||
| 49ad510bed | |||
| 8d973359e6 | |||
| b44054076c | |||
| b93742ab13 | |||
| 3717b6e1cf | |||
| 2b5f314710 | |||
| f33b1d66ca | |||
| d66d57bce2 | |||
| ecb4cd5d28 | |||
| 937c342025 | |||
| 8d586f6db6 | |||
| 2346705dab | |||
| e001dfa8b5 | |||
| bcbb9374bd | |||
| d2b5b14043 | |||
| 5498509ec7 | |||
| f969a890d8 | |||
| a671183dc7 | |||
|
|
1bac3d7c44 | ||
| 12e7ee5829 | |||
| 67be7bad4c | |||
| 7c6453c6b5 | |||
| 9d1cfdc796 | |||
|
|
085d85a441 | ||
| 9a2eeeed08 | |||
|
|
f3688c2e2d | ||
| 48d76acf54 | |||
|
|
2f609cd28c | ||
| f8696bb1e6 | |||
|
|
3e37c33994 | ||
| 6b387bc3aa | |||
| 79aa5001cf | |||
| e21a1f8030 | |||
|
|
bb0ba6f5ac | ||
| 70c4265051 | |||
| ffe6501201 | |||
| de1c863be4 | |||
|
|
4e962cd503 | ||
| f3be1d72d3 | |||
|
|
0675101280 | ||
| 86e2b57224 | |||
| 354ad337c6 | |||
| 85ac2280ed | |||
| 4cd47c6314 | |||
|
|
6c016720d7 | ||
| e91722c391 | |||
| 9a978ca19a | |||
|
|
fd9a9086d9 | ||
|
|
c458b3497f | ||
|
|
4bd44452a1 | ||
|
|
e4c4fed7a1 | ||
|
|
33519db3aa | ||
| bd980bd029 | |||
|
|
8efdf70ffc | ||
|
|
7fa27c8f5c | ||
| dd69764bff | |||
| c95ce20d51 | |||
| 7e476f2deb | |||
|
|
8cf5d1c7c5 | ||
| 4d4f64fe7b | |||
|
|
255e7a0b85 | ||
| c57c794ee8 | |||
|
|
e9564b4f98 | ||
| 8d3d231e8f | |||
|
|
5fe8d1ca06 | ||
| 61920ce6b5 | |||
|
|
295d20cec4 | ||
| d0795534e3 | |||
|
|
f437e5c6ba | ||
|
|
1c2528247d | ||
|
|
c6d7938e1c | ||
|
|
23d7cbd371 | ||
| aed9248dfe | |||
|
|
180d6ce062 | ||
|
|
bedfd71b59 | ||
| 77d1e3f366 | |||
| f5174e97ef | |||
| 9edcdc523d | |||
|
|
a1c384c9b6 | ||
| e332c65843 | |||
| c26f220f6a | |||
|
|
19f88cba8e | ||
|
|
cb2a07f45e | ||
| 78a27051fe | |||
|
|
49ee5a5bf0 | ||
|
|
5ad2b90285 | ||
| fff88db8f9 | |||
|
|
40181cd7ca | ||
|
|
5a56a41baa | ||
|
|
3aba650e1e | ||
|
|
8a5f6adc10 | ||
|
|
e98449099b | ||
|
|
9ba2c48f9a | ||
|
|
146da5fdd7 | ||
|
|
521fcba4f1 | ||
|
|
ecd2f53298 | ||
|
|
34fb6d9284 | ||
|
|
eb5cea46ba | ||
|
|
7c01b6e534 | ||
| 6a7257cf96 | |||
|
|
089e5b78c5 | ||
|
|
01513e7952 | ||
|
|
5433779bba | ||
|
|
5608cb2d78 | ||
| c6a213093c | |||
|
|
98d6e3b378 | ||
| c2c51b6e5c | |||
|
|
888bd2a4a3 | ||
|
|
23073e6890 | ||
|
|
f2c4dec55e | ||
|
|
4cbbcbaf4f | ||
|
|
6e06866e8f | ||
| b114e647e8 | |||
|
|
25ef40c3e4 | ||
| 679551f9df | |||
|
|
1c4cb116ce | ||
| aba9006a3b | |||
|
|
7d36b8f501 | ||
|
|
8ce693d54d | ||
|
|
c6bdb0a00f | ||
|
|
b4fe873312 | ||
|
|
c8517a2137 | ||
|
|
020a354f00 | ||
|
|
c7cb2a9034 | ||
|
|
5f28f99795 | ||
|
|
29c85af785 | ||
|
|
dacbbcda86 | ||
|
|
2a471dbfd5 | ||
|
|
28f914af16 | ||
|
|
32f780db18 | ||
|
|
ad2c8f1f12 | ||
|
|
96a481b360 | ||
|
|
f7dc769406 | ||
|
|
32706eaef3 | ||
|
|
b5c9e2e40b | ||
|
|
5cc4f775eb | ||
|
|
6ffb825556 | ||
|
|
b6983bc4bf | ||
|
|
b5de299fa5 | ||
|
|
f09e2076b8 | ||
|
|
74e6b4489b | ||
|
|
ce0497cdad | ||
|
|
e5ade195df | ||
|
|
6bdab78bea | ||
|
|
d29d6f4022 | ||
|
|
8033bab7fb | ||
|
|
8ff621abd2 | ||
|
|
6d6909968a | ||
|
|
5782b223e3 | ||
|
|
71d069d577 | ||
|
|
3760a92d5e | ||
|
|
8e62ae3dca | ||
|
|
1e3e6df1c4 | ||
|
|
5886714208 | ||
|
|
78b05d04fc | ||
|
|
7df235766e | ||
|
|
7bbff47556 | ||
|
|
d5a19efafe | ||
|
|
230dfcd571 | ||
|
|
e977c66557 | ||
|
|
c6d57254ea | ||
|
|
f1770ec712 | ||
|
|
b1fa3fd210 | ||
|
|
5e3f83032e | ||
|
|
91b4a55b50 | ||
|
|
3582dcf231 | ||
|
|
40eef20fb9 |
@@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:dcc96739331fb854dcf503f94607576cfe8488066c61ca50dfd55836f132de99
|
|
||||||
size 2751764
|
|
||||||
BIN
cython-3.0.11.tar.gz
LFS
BIN
cython-3.0.11.tar.gz
LFS
Binary file not shown.
3
cython-3.2.2.tar.gz
Normal file
3
cython-3.2.2.tar.gz
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:c3add3d483acc73129a61d105389344d792c17e7c1cee24863f16416bd071634
|
||||||
|
size 3275797
|
||||||
@@ -1,3 +1,568 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Dec 12 10:31:50 UTC 2025 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
- update to 3.2.2:
|
||||||
|
* The C-API declarations were updated to include the new
|
||||||
|
PyDict_*Ref() functions. (Github issue :issue:`7291`)
|
||||||
|
* 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`)
|
||||||
|
* Calling the unbound __mul__ special method of builtin
|
||||||
|
collections with subtypes failed. (Github issue
|
||||||
|
:issue:`7340`)
|
||||||
|
* C string literals could generate invalid "const to non-const"
|
||||||
|
casts in the C code. (Github issue :issue:`7346`)
|
||||||
|
* yield is no longer allowed inside of a
|
||||||
|
cython.critical_section, but is now allowed while holding a
|
||||||
|
cython.pymutex. (Github issue :issue:`7317`)
|
||||||
|
* Under lock congestion, acquiring the GIL could crash in
|
||||||
|
Python 3.11, part 2. This bug was introduced in Cython 3.2.0.
|
||||||
|
(Github issue :issue:`7312`)
|
||||||
|
* The new py_safe_* functions in libc.threads triggered C
|
||||||
|
compiler warnings. (Github issue :issue:`7356`)
|
||||||
|
* Cython now leaves markers about its utility code dependencies
|
||||||
|
in the generated C code to help debugging "unused function" C
|
||||||
|
compiler warnings. (Github issue :issue:`7294`)
|
||||||
|
* Relative imports could fail if the shared utility module is
|
||||||
|
used. This bug was introduced in Cython 3.2.0. (Github issue
|
||||||
|
:issue:`7290`)
|
||||||
|
* Under lock congestion, acquiring the GIL could crash in
|
||||||
|
Python 3.11. This bug was introduced in Cython 3.2.0. (Github
|
||||||
|
issue :issue:`7312`)
|
||||||
|
* Using the shared utility module left an unused C function in
|
||||||
|
user modules with memoryviews. To make debugging this kind of
|
||||||
|
issue easier, Cython now leaves "used by …" markers in the
|
||||||
|
generated C files that indicate why a specific piece of
|
||||||
|
utility code was included. This bug was introduced in Cython
|
||||||
|
3.2.0. (Github issue :issue:`7293`)
|
||||||
|
* Code using the pre-import scope failed with an undefined
|
||||||
|
name. This bug was introduced in Cython 3.2.0. (Github issue
|
||||||
|
:issue:`7304`)
|
||||||
|
* Includes all fixes as of Cython 3.1.7.
|
||||||
|
* Builtin exception types are now inferred. (Github issue
|
||||||
|
:issue:`6908`)
|
||||||
|
* The list of known, inferred and optimised Python builtins was
|
||||||
|
updated. range is now considered a type. ascii, bin, format,
|
||||||
|
hex, oct were 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.
|
||||||
|
-> None is 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 | None allow any
|
||||||
|
suitable Python number as input and convert it to a Python
|
||||||
|
float automatically. (Github issue :issue:`5750`)
|
||||||
|
* Item type inference was improved for looping over literals.
|
||||||
|
(Github issue :issue:`6912`)
|
||||||
|
* Looping over literal sequences and strings now uses efficient
|
||||||
|
C array looping if possible. (Github issue :issue:`6926`)
|
||||||
|
* Releasing the GIL from an unknown lock state is more
|
||||||
|
efficient. (Github issue :issue:`6847`)
|
||||||
|
* cython.critical_section(PyMutex) now works, as with Python
|
||||||
|
objects. (Github issue :issue:`6847`)
|
||||||
|
* bool(c_int/float/ptr) avoid passing through Python objects.
|
||||||
|
(Github issue :issue:`7015`)
|
||||||
|
* Variables assigned inside of prange loops can now be
|
||||||
|
initialised outside of the loop. (Github issue :issue:`7178`)
|
||||||
|
* Unused exceptions in except clauses are detected in some more
|
||||||
|
cases to avoid their normalisation. (Github issue
|
||||||
|
:issue:`7021`)
|
||||||
|
* Mixed operations on C integers with Python ints use less code
|
||||||
|
and are more streamlined for Py3.12+. (Github issue
|
||||||
|
:issue:`7244`)
|
||||||
|
* Some object constants are now marked as immortal to speed up
|
||||||
|
their reference counting in recent CPython versions. This
|
||||||
|
can be configured with the CYTHON_IMMORTAL_CONSTANTS C macro.
|
||||||
|
(Github issue :issue:`7118`)
|
||||||
|
* Further improvements were made to reduce the size of the
|
||||||
|
resulting extension modules. (Github issue :issue:`6983`,
|
||||||
|
:issue:`7199`, :issue:`7220`, :issue:`7238`, :issue:`7255`,
|
||||||
|
:issue:`7265`)
|
||||||
|
* Several improvements were made in freethreaded Python code.
|
||||||
|
(Github issues :issue:`6936`, :issue:`6939`, :issue:`6949`,
|
||||||
|
:issue:`6984`, :issue:`7011`, :issue:`7066`, :issue:`7114`,
|
||||||
|
:issue:`7200`)
|
||||||
|
* Several improvements were made for the Limited API. (Github
|
||||||
|
issues :issue:`6959`, :issue:`6991`)
|
||||||
|
* Several improvements were made for the GraalPython support.
|
||||||
|
Patch by Michael Šimáček. (Github issue :issue:`7074`)
|
||||||
|
* Some GIL-safe C-API wrappers were added to the libc/libcpp
|
||||||
|
declarations. (Github issue :issue:`6829`, :issue:`6993`)
|
||||||
|
* String and number constants use less storage space in the
|
||||||
|
module. (Github issues :issue:`6971`, :issue:`6978`,
|
||||||
|
:issue:`6986`)
|
||||||
|
* The managed dict/weakref support in CPython 3.12+ is used for
|
||||||
|
internal types to benefit from future CPython optimisations
|
||||||
|
here. (Github issue :issue:`6891`)
|
||||||
|
* Using NaN as exception return value is supported. (Github
|
||||||
|
issues :issue:`6900`, :issue:`6903`)
|
||||||
|
* Declarations for C++ condition variables were added. (Github
|
||||||
|
issue :issue:`6836`)
|
||||||
|
* The annotated source HTML page shows alternating +/− markers
|
||||||
|
to open/close lines. Patch by Kamil Monicz. (Github issue
|
||||||
|
:issue:`7099`)
|
||||||
|
* cython --embed gained a new option --embed-modules=… to list
|
||||||
|
further extension modules that will be statically linked into
|
||||||
|
the generated extension module, to get them initialised on
|
||||||
|
application start. (Github issue :issue:`2849`)
|
||||||
|
* The setup.py script of Cython now allows passing the desired
|
||||||
|
Limited API version like --cython-limited-api=3.11. (Github
|
||||||
|
issue :issue:`7228`)
|
||||||
|
* Unicode 16.0.0 is used to parse identifiers. (Github issue
|
||||||
|
:issue:`6836`)
|
||||||
|
* Special float exception values could generate invalid C code.
|
||||||
|
(Github issues :issue:`6900`, :issue:`6903`)
|
||||||
|
* References to the Python bool type could generate invalid C
|
||||||
|
code. (Github issue :issue:`6902`)
|
||||||
|
* Using cython.pymutex in an extension type declared as public
|
||||||
|
or api generated invalid C code missing the required PyMutex
|
||||||
|
declarations. (Github issues :issue:`6992`, :issue:`6995`)
|
||||||
|
* Cython's type sharing across modules suffered from race
|
||||||
|
conditions if multiple modules tried to initialise and share
|
||||||
|
their types concurrently. This is due to an underlying
|
||||||
|
CPython issue and cannot easily be worked around completely.
|
||||||
|
In the common case that module dicts are plain Python dict
|
||||||
|
objects, however, Cython now uses a .setdefault() equivalent
|
||||||
|
for thread-safe type sharing. See
|
||||||
|
https://github.com/python/cpython/issues/137422 (Github issue
|
||||||
|
:issue:`7076`)
|
||||||
|
* Cython incorrectly called PyList_GetItemRef() in PyPy and
|
||||||
|
GraalPython before Py3.13. (Github issue :issue:`7269`)
|
||||||
|
* Iterating over temporary memoryviews could crash Cython.
|
||||||
|
(Github issue :issue:`7005`)
|
||||||
|
* Type casts on constants as part of numeric expressions could
|
||||||
|
crash Cython. (Github issue :issue:`6779`)
|
||||||
|
* Long code bodies in with statements could crash Cython.
|
||||||
|
(Github issue :issue:`7122`)
|
||||||
|
* Vectorcalls could use needless temp assignments for self.
|
||||||
|
(Github issue :issue:`6909`)
|
||||||
|
* Indexing bytes failed to optimise in some cases. (Github
|
||||||
|
issue :issue:`6997`)
|
||||||
|
* Optimised C integer formatting in f-strings failed to apply
|
||||||
|
to typedef types. (Github issue :issue:`7170`)
|
||||||
|
* In auto-pickling, trying to unpickle an object that has no
|
||||||
|
__dict__ from object pickle data that includes instance dict
|
||||||
|
state is now an error. (Github issue :issue:`7222`)
|
||||||
|
* The type objects of heap types were not always correctly
|
||||||
|
decrefed on deallocation. (Github issue :issue:`7145`)
|
||||||
|
* Pure mode type aliases like p_int or ulong leaked into some C
|
||||||
|
type contexts, risking to conflict with user declarations.
|
||||||
|
(Github issues :issue:`6922`, :issue:`6339`)
|
||||||
|
* Boolean (emptyness) tests on builtin containers could fail to
|
||||||
|
handle (unlikely) errors. (Github issue :issue:`7090`)
|
||||||
|
* The return type of bytes.join() was sometimes inferred as
|
||||||
|
plain object. (Github issue :issue:`6987`)
|
||||||
|
* Type inference could fail to understand prange() arguments.
|
||||||
|
(Github issue :issue:`6974`)
|
||||||
|
* embedsignatures failed if lambda was used in function default
|
||||||
|
arguments. (Github issue :issue:`6880`)
|
||||||
|
* An internal C function was not marked as static and leaked a
|
||||||
|
linker symbol. (Github issue :issue:`6957`)
|
||||||
|
* PyType_FromModuleAndSpec was incorrectly used in Limited API
|
||||||
|
code before Py3.10. (Github issue :issue:`7181`)
|
||||||
|
* Conversion code for memoryview dtypes from and to Python
|
||||||
|
objects generated C warnings about incorrect const / non-
|
||||||
|
const casting code. (Github issue :issue:`7219`)
|
||||||
|
* Cython's tools and frontend scripts now use python3 instead
|
||||||
|
of just python in their shebang line. Patch by Matti Picus.
|
||||||
|
(Github issue :issue:`7053`)
|
||||||
|
* Extension arguments defined for the shared code module were
|
||||||
|
ignored in cythonize(). (Github issue :issue:`7251`)
|
||||||
|
* Failures while following package attributes in import
|
||||||
|
pkg.module as … were not handled.
|
||||||
|
* Trying to instantiate internal types used by Cython is now
|
||||||
|
prohibited. (Github issue :issue:`7263`)
|
||||||
|
* The setup.py script in the Demos/ subdirectory failed to
|
||||||
|
build. (Github issue :issue:`7228`)
|
||||||
|
* The cygdb program failed to work with virtualenvs on Windows.
|
||||||
|
Patch by Merlin. (Github issue :issue:`7268`)
|
||||||
|
* Includes all fixes as of Cython 3.1.6.
|
||||||
|
* Some lesser used platforms (Windows ARM/i686, macOS x86_64,
|
||||||
|
Linux i686, musllinux) now use Py3.9 abi3 binary wheels
|
||||||
|
instead of Python version specific wheels. We also added an
|
||||||
|
abi3 wheel for armv7l. (Github issues :issue:`7227`,
|
||||||
|
:issue:`7248`, :issue:`7250`)
|
||||||
|
* Usages of Py_TPFLAGS_HAVE_FINALIZE were removed. The
|
||||||
|
constant remains available as cimport from cpython.object for
|
||||||
|
legacy reasons. (Github issue :issue:`6423`)
|
||||||
|
* Using cython.pymutex in an extension type declared as public
|
||||||
|
or api generated invalid C code missing the required PyMutex
|
||||||
|
declarations. (Github issues :issue:`6992`, :issue:`6995`)
|
||||||
|
* 3.2.0b2 generated incorrect pointer casts in the cimport
|
||||||
|
importing code. (Github issue :issue:`7268`)
|
||||||
|
* Cython's type sharing across modules suffered from race
|
||||||
|
conditions if multiple modules tried to initialise and share
|
||||||
|
their types concurrently. This is due to an underlying
|
||||||
|
CPython issue and cannot easily be worked around completely.
|
||||||
|
In the common case that module dicts are plain Python dict
|
||||||
|
objects, however, Cython now uses a .setdefault() equivalent
|
||||||
|
for thread-safe type sharing. See
|
||||||
|
https://github.com/python/cpython/issues/137422 (Github issue
|
||||||
|
:issue:`7076`)
|
||||||
|
* Cython incorrectly called PyList_GetItemRef() in PyPy and
|
||||||
|
GraalPython before Py3.13. (Github issue :issue:`7269`)
|
||||||
|
* The code generated for importing and exporting cimports
|
||||||
|
across modules uses less space. (Github issues :issue:`7255`,
|
||||||
|
:issue:`7265`)
|
||||||
|
* Iteration over memoryviews could loop indefinitely in 3.2b1
|
||||||
|
when encountering a continue statement. (Github issue
|
||||||
|
:issue:`7259`)
|
||||||
|
* Extension arguments defined for the shared code module were
|
||||||
|
ignored in cythonize(). (Github issue :issue:`7251`)
|
||||||
|
* Failures while following package attributes in import
|
||||||
|
pkg.module as … were not handled.
|
||||||
|
* Trying to instantiate internal types used by Cython is now
|
||||||
|
prohibited. (Github issue :issue:`7263`)
|
||||||
|
* Includes all fixes as of Cython 3.1.6.
|
||||||
|
* The musllinux platform is now served with an abi3 Cython
|
||||||
|
wheel instead of Python specific ones. (Github issue
|
||||||
|
:issue:`7250`)
|
||||||
|
* Builtin exception types are now inferred. (Github issue
|
||||||
|
:issue:`6908`)
|
||||||
|
* The list of known, inferred and optimised Python builtins was
|
||||||
|
updated. range is now considered a type. ascii, bin, format,
|
||||||
|
hex, oct were 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.
|
||||||
|
-> None is 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 | None allow any
|
||||||
|
suitable Python number as input and convert it to a Python
|
||||||
|
float automatically. (Github issue :issue:`5750`)
|
||||||
|
* Item type inference was improved for looping over literals.
|
||||||
|
(Github issue :issue:`6912`)
|
||||||
|
* Looping over literal sequences and strings now uses efficient
|
||||||
|
C array looping if possible. (Github issue :issue:`6926`)
|
||||||
|
* Releasing the GIL from an unknown lock state is more
|
||||||
|
efficient. (Github issue :issue:`6847`)
|
||||||
|
* cython.critical_section(PyMutex) now works, as with Python
|
||||||
|
objects. (Github issue :issue:`6847`)
|
||||||
|
* bool(c_int/float/ptr) avoid passing through Python objects.
|
||||||
|
(Github issue :issue:`7015`)
|
||||||
|
* Variables assigned inside of prange loops can now be
|
||||||
|
initialised outside of the loop. (Github issue :issue:`7178`)
|
||||||
|
* Unused exceptions in except clauses are detected in some more
|
||||||
|
cases to avoid their normalisation. (Github issue
|
||||||
|
:issue:`7021`)
|
||||||
|
* Mixed operations on C integers with Python ints use less code
|
||||||
|
and are more streamlined for Py3.12+. (Github issue
|
||||||
|
:issue:`7244`)
|
||||||
|
* Some object constants are now marked as immortal to speed up
|
||||||
|
their reference counting in recent CPython versions. This
|
||||||
|
can be configured with the CYTHON_IMMORTAL_CONSTANTS C macro.
|
||||||
|
(Github issue :issue:`7118`)
|
||||||
|
* Further improvements were made to reduce the size of the
|
||||||
|
resulting extension modules. (Github issue :issue:`6983`,
|
||||||
|
:issue:`7199`, :issue:`7220`, :issue:`7238`)
|
||||||
|
* Several improvements were made in freethreaded Python code.
|
||||||
|
(Github issues :issue:`6936`, :issue:`6939`, :issue:`6949`,
|
||||||
|
:issue:`6984`, :issue:`7011`, :issue:`7066`, :issue:`7114`,
|
||||||
|
:issue:`7200`)
|
||||||
|
* Several improvements were made for the Limited API. (Github
|
||||||
|
issues :issue:`6959`, :issue:`6991`)
|
||||||
|
* Several improvements were made for the GraalPython support.
|
||||||
|
Patch by Michael Šimáček. (Github issue :issue:`7074`)
|
||||||
|
* Some GIL-safe C-API wrappers were added to the libc/libcpp
|
||||||
|
declarations. (Github issue :issue:`6829`, :issue:`6993`)
|
||||||
|
* String and number constants use less storage space in the
|
||||||
|
module. (Github issues :issue:`6971`, :issue:`6978`,
|
||||||
|
:issue:`6986`)
|
||||||
|
* The managed dict/weakref support in CPython 3.12+ is used for
|
||||||
|
internal types to benefit from future CPython optimisations
|
||||||
|
here. (Github issue :issue:`6891`)
|
||||||
|
* Using NaN as exception return value is supported. (Github
|
||||||
|
issues :issue:`6900`, :issue:`6903`)
|
||||||
|
* Declarations for C++ condition variables were added. (Github
|
||||||
|
issue :issue:`6836`)
|
||||||
|
* The annotated source HTML page shows alternating +/− markers
|
||||||
|
to open/close lines. Patch by Kamil Monicz. (Github issue
|
||||||
|
:issue:`7099`)
|
||||||
|
* cython --embed gained a new option --embed-modules=… to list
|
||||||
|
further extension modules that will be statically linked into
|
||||||
|
the generated extension module, to get them initialised on
|
||||||
|
application start. (Github issue :issue:`2849`)
|
||||||
|
* The setup.py script of Cython now allows passing the desired
|
||||||
|
Limited API version like --cython-limited-api=3.11. (Github
|
||||||
|
issue :issue:`7228`)
|
||||||
|
* Unicode 16.0.0 is used to parse identifiers. (Github issue
|
||||||
|
:issue:`6836`)
|
||||||
|
* Special float exception values could generate invalid C code.
|
||||||
|
(Github issues :issue:`6900`, :issue:`6903`)
|
||||||
|
* References to the Python bool type could generate invalid C
|
||||||
|
code. (Github issue :issue:`6902`)
|
||||||
|
* Unicode characters formatted from C integers with
|
||||||
|
f"{value:c}" could result in invalid Python string objects
|
||||||
|
since Cython 3.1.0. (Github issue :issue:`7240`)
|
||||||
|
* Vectorcalls could use needless temp assignments for self.
|
||||||
|
(Github issue :issue:`6909`)
|
||||||
|
* Iterating over temporary memoryviews could crash Cython.
|
||||||
|
(Github issue :issue:`7005`)
|
||||||
|
* Type casts on constants as part of numeric expressions could
|
||||||
|
crash Cython. (Github issue :issue:`6779`)
|
||||||
|
* Long code bodies in with statements could crash Cython.
|
||||||
|
(Github issue :issue:`7122`)
|
||||||
|
* Indexing bytes failed to optimise in some cases. (Github
|
||||||
|
issue :issue:`6997`)
|
||||||
|
* Optimised C integer formatting in f-strings failed to apply
|
||||||
|
to typedef types. (Github issue :issue:`7170`)
|
||||||
|
* In auto-pickling, trying to unpickle an object that has no
|
||||||
|
__dict__ from object pickle data that includes instance dict
|
||||||
|
state is now an error. (Github issue :issue:`7222`)
|
||||||
|
* The type objects of heap types were not always correctly
|
||||||
|
decrefed on deallocation. (Github issue :issue:`7145`)
|
||||||
|
* Pure mode type aliases like p_int or ulong leaked into some C
|
||||||
|
type contexts, risking to conflict with user declarations.
|
||||||
|
(Github issues :issue:`6922`, :issue:`6339`)
|
||||||
|
* Boolean (emptyness) tests on builtin containers could fail to
|
||||||
|
handle (unlikely) errors. (Github issue :issue:`7090`)
|
||||||
|
* The return type of bytes.join() was sometimes inferred as
|
||||||
|
plain object. (Github issue :issue:`6987`)
|
||||||
|
* Type inference could fail to understand prange() arguments.
|
||||||
|
(Github issue :issue:`6974`)
|
||||||
|
* embedsignatures failed if lambda was used in function default
|
||||||
|
arguments. (Github issue :issue:`6880`)
|
||||||
|
* An internal C function was not marked as static and leaked a
|
||||||
|
linker symbol. (Github issue :issue:`6957`)
|
||||||
|
* PyType_FromModuleAndSpec was incorrectly used in Limited API
|
||||||
|
code before Py3.10. (Github issue :issue:`7181`)
|
||||||
|
* Conversion code for memoryview dtypes from and to Python
|
||||||
|
objects generated C warnings about incorrect const / non-
|
||||||
|
const casting code. (Github issue :issue:`7219`)
|
||||||
|
* cythonize (program and function) now uses
|
||||||
|
concurrent.futures.ProcessPoolExecutor instead of
|
||||||
|
multiprocessing.Pool to fix a hang on build failures in
|
||||||
|
parallel builds. A possible work-around is to disable
|
||||||
|
parallel builds. Patch by Sviatoslav Sydorenko. (Github
|
||||||
|
issue :issue:`7183`)
|
||||||
|
* Cython's tools and frontend scripts now use python3 instead
|
||||||
|
of just python in their shebang line. Patch by Matti Picus.
|
||||||
|
(Github issue :issue:`7053`)
|
||||||
|
* The setup.py script in the Demos/ subdirectory failed to
|
||||||
|
build. (Github issue :issue:`7228`)
|
||||||
|
* Includes all fixes as of Cython 3.1.5.
|
||||||
|
* Some lesser used platforms (Windows ARM/i686, macOS x86_64,
|
||||||
|
Linux i686) now use Py3.9 abi3 binary wheels instead of
|
||||||
|
Python version specific wheels. We also added a abi3 wheel
|
||||||
|
for armv7l. (Github issues :issue:`7227`, :issue:`7248`)
|
||||||
|
* Usages of Py_TPFLAGS_HAVE_FINALIZE were removed. The
|
||||||
|
constant remains available as cimport from cpython.object for
|
||||||
|
legacy reasons. (Github issue :issue:`6423`)
|
||||||
|
* Some internal C symbols were not declared as static,
|
||||||
|
preventing static linking of multiple modules. Patch by Yury
|
||||||
|
Popov. (Github issue :issue:`7310`)
|
||||||
|
* Accidentally using except + in C mode did not raise a compile
|
||||||
|
error but generated invalid C code leading to obscure error
|
||||||
|
messages. Patch by user202729. (Github issue :issue:`6560`)
|
||||||
|
* Unicode characters formatted from C integers with padding, as
|
||||||
|
in f"{value:XXc}", could result in invalid Python string
|
||||||
|
objects since Cython 3.1.0. Also, lone surrogates failed to
|
||||||
|
format in this way. (Github issue :issue:`7298`)
|
||||||
|
* Assigning nested structs from a list of structs (item by
|
||||||
|
item) could crash Cython. (Github issue :issue:`7308`)
|
||||||
|
* Cython incorrectly called PyList_GetItemRef() in PyPy and
|
||||||
|
GraalPython before Py3.13. (Github issue :issue:`7269`)
|
||||||
|
* Trying to instantiate internal types used by Cython is now
|
||||||
|
prohibited. (Github issue :issue:`7263`)
|
||||||
|
* Unicode characters formatted from C integers with
|
||||||
|
f"{value:c}" could result in invalid Python string objects
|
||||||
|
since Cython 3.1.0. (Github issue :issue:`7240`)
|
||||||
|
* cythonize (program and function) now uses
|
||||||
|
concurrent.futures.ProcessPoolExecutor instead of
|
||||||
|
multiprocessing.Pool to fix a hang on build failures in
|
||||||
|
parallel builds. A possible work-around is to disable
|
||||||
|
parallel builds. Patch by Sviatoslav Sydorenko. (Github
|
||||||
|
issue :issue:`7183`)
|
||||||
|
* Conversion from C++ strings longer than PY_SSIZE_T_MAX did
|
||||||
|
not validate the length.
|
||||||
|
* Some non-Limited API code was incorrectly used in generated
|
||||||
|
header files. (Github issue :issue:`7157`)
|
||||||
|
* Optimised unpacking of Python integers in expressions uses a
|
||||||
|
slightly safer scheme. (Github issue :issue:`7134`)
|
||||||
|
* Empty return statements were not always reported when
|
||||||
|
tracing. (Github issue :issue:`7022`)
|
||||||
|
* Value conversion errors when tracing C return statements no
|
||||||
|
longer fail the trace but fall back to reporting None returns
|
||||||
|
instead. (Github issue :issue:`6503`)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Sep 22 12:31:13 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
- Update to 3.1.4
|
||||||
|
* Declarations for the new PyUnstable_*() refcounting C-API functions in Py3.14
|
||||||
|
were added.
|
||||||
|
* The monitoring code could crash on tracing.
|
||||||
|
* Initialising the monitoring code could fail with a CPython exception.
|
||||||
|
* Optimised integer shifting triggered undefined behaviour in C.
|
||||||
|
* Deallocating objects that inherit from external types defined in pxd files
|
||||||
|
could run into an infinite loop.
|
||||||
|
* A reference to metaclasses could be leaked on instantiation.
|
||||||
|
* (Unlikely) error handling during empty builtin container tests was ineffective.
|
||||||
|
* Generated *_api.h files used potentially unknown Cython configuration macros.
|
||||||
|
* cythonize() avoids parallel compiler runs on systems using spawn() in
|
||||||
|
multiprocessing.
|
||||||
|
* The @cython.ufunc decorator was missing in type checker stubs.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Aug 13 12:01:11 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
- Update to 3.1.3
|
||||||
|
* Some method calls with 0 or 1 argument failed to use PyObject_VectorCallMethod().
|
||||||
|
* Walrus assignments of literal Python integers could generate invalid C code.
|
||||||
|
* cython.pythread_type_lock (also used as fallback for cython.pymutex) could stall
|
||||||
|
on heavily contended locks.
|
||||||
|
* C string arrays (not pointers) always coerced to the Python default string type,
|
||||||
|
even on explicit casts to other string types.
|
||||||
|
* Unterminated \N{} character escapes in strings could unrail the parser.
|
||||||
|
* An internal C function was not marked as static and leaked a linker symbol.
|
||||||
|
* Some Unicode letters were not recognised as lexically valid name parts.
|
||||||
|
* Compatibility with PyPy3.8 was lost by accident.
|
||||||
|
* The Linux binary wheels of 3.1.2 used SSSE3 CPU instructions which are not
|
||||||
|
available on some CPUs.
|
||||||
|
- Convert to libalternatives on SLE-16-based and newer systems only
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Mon Jul 14 10:19:55 UTC 2025 - ecsos <ecsos@opensuse.org>
|
||||||
|
|
||||||
|
- Update top 3.1.2
|
||||||
|
* Attribute lookups failed on the ``bool`` builtin type.
|
||||||
|
(Github issue :issue:`6905`)
|
||||||
|
* Type checks on or-ed union types could incorrectly return false.
|
||||||
|
(Github issue :issue:`6420`)
|
||||||
|
* Negative list indexing could accidentally wrap around twice in PyPy and the Limited API.
|
||||||
|
* Iterating over literal sequences with starred (unpacked) items could infer a wrong
|
||||||
|
type for the loop variable and fail to assign the values.
|
||||||
|
(Github issue :issue:`6924`)
|
||||||
|
* Calls to C functions taking exception types failed to check for a `None` argument.
|
||||||
|
(Github issue :issue:`6420`)
|
||||||
|
* Fused functions had an incorrect ``__module__`` attribute.
|
||||||
|
(Github issue :issue:`6897`)
|
||||||
|
* The type of Cython implemented functions had an incorrect ``__module__`` attribute.
|
||||||
|
(Github issue :issue:`6841`)
|
||||||
|
* Errors while indexing into ``bytearray`` or ``str`` in ``nogil`` sections could crash.
|
||||||
|
(Github issue :issue:`6947`)
|
||||||
|
* ``bytearray.append()`` could silently accept some invalid character numbers.
|
||||||
|
* The C++11 ``<type_traits>`` header was included regardless of the C++ version.
|
||||||
|
(Github issue :issue:`6896`)
|
||||||
|
* ``PyDict_GetItemStringRef()`` was accidentally used in older Limited API versions.
|
||||||
|
(Github issue :issue:`6914`)
|
||||||
|
* ``abort()`` was used but not always available in the Limited API.
|
||||||
|
(Github issue :issue:`6918`)
|
||||||
|
* Some dependencies were missing from the ``depfile``.
|
||||||
|
(Github issue :issue:`6938`)
|
||||||
|
* Embedded function signatures were not always separated from the existing docstring.
|
||||||
|
(Github issue :issue:`6904`)
|
||||||
|
* ``numpy.math`` was missing from ``Cython/Includes/`` and could not be cimported.
|
||||||
|
(Github issue :issue:`6859`)
|
||||||
|
* Some tests were adapted for NumPy 2.x.
|
||||||
|
(Github issue :issue:`6898`)
|
||||||
|
* Some C compiler warnings were fixed.
|
||||||
|
(Github issue :issue:`6870`)
|
||||||
|
* ``Cython.Build`` was not officially exposing the ``cythonize`` function.
|
||||||
|
(Github issue :issue:`6934`)
|
||||||
|
- Changes from 3.1.1
|
||||||
|
* A reference leak in the async delegation code was fixed.
|
||||||
|
(Github issues :issue:`6850`, :issue:`6878`)
|
||||||
|
* Conditional if-else expressions mixing Python and C (numeric) types could end up
|
||||||
|
inferring an overly tight result type, thus leading to unexpected type conversions,
|
||||||
|
runtime exceptions on assignment, or incorrect "temporary assignment" compile errors.
|
||||||
|
(Github issue :issue:`6854`)
|
||||||
|
* Some Limited API issues were resolved.
|
||||||
|
(Github issue :issue:`6862`)
|
||||||
|
* Large C ``long long`` values could be truncated when passed into PyPy.
|
||||||
|
(Github issue :issue:`6890`)
|
||||||
|
* ``callable()`` incorrectly reported ``False`` in PyPy for classes with metaclasses.
|
||||||
|
Patch by Anatolii Aniskovych. (Github issue :issue:`6892`)
|
||||||
|
* The signature of fused functions was no longer introspectable in Cython 3.1.0.
|
||||||
|
(Github issue :issue:`6855`)
|
||||||
|
* Coroutines could generate invalid C with line tracing enabled.
|
||||||
|
(Github issue :issue:`6865`)
|
||||||
|
* Code using ``complex()`` could generate invalid C code missing type declarations.
|
||||||
|
(Github issue :issue:`6860`)
|
||||||
|
* Code using e.g. ``list[int | None]`` outside of variable/argument annotations failed to compile.
|
||||||
|
(Github issue :issue:`6856`)
|
||||||
|
* Code using ctuples in a ``const`` context could generate invalid C.
|
||||||
|
(Github issue :issue:`6864`)
|
||||||
|
* Accessing special methods on cpdef enums failed to compile.
|
||||||
|
* Some C compiler warnings were resolved.
|
||||||
|
Patches by Daniel Larraz. (Github issues :issue:`6876`, :issue:`3172`, :issue:`6873`, :issue:`6877`)
|
||||||
|
* Re-establish support for PyPy 3.8.
|
||||||
|
(Github issue :issue:`6867`)
|
||||||
|
- Changes from 3.1.0
|
||||||
|
- See https://github.com/cython/cython/releases/tag/3.1.0-1
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Apr 1 11:44:25 UTC 2025 - Markéta Machová <mmachova@suse.com>
|
||||||
|
|
||||||
|
- Make the dist-info name case-insensitive
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue Mar 25 01:11:31 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
|
||||||
|
|
||||||
|
- Lowercase metadata directory name.
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Wed Feb 19 09:54:43 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
|
||||||
|
|
||||||
|
- Update to 3.0.12
|
||||||
|
* Release 3.0.11 introduced some incorrect ``noexcept`` warnings.
|
||||||
|
(Github issue :issue:`6335`)
|
||||||
|
* Conditional assignments to variables using the walrus operator
|
||||||
|
could crash. (Github issue :issue:`6094`)
|
||||||
|
* Dict assignments to struct members with reserved C names could generate
|
||||||
|
invalid C code.
|
||||||
|
* Fused ctuples with the same entry types but different sizes could
|
||||||
|
fail to compile. (Github issue :issue:`6328`)
|
||||||
|
* In Py3, `pyximport` was not searching `sys.path` when looking for
|
||||||
|
importable source files. (Github issue :issue:`5615`)
|
||||||
|
* Using `& 0` on integers produced with `int.from_bytes()` could read
|
||||||
|
invalid memory on Python 3.10. (Github issue :issue:`6480`)
|
||||||
|
* Modules could fail to compile in PyPy 3.11 due to missing CPython
|
||||||
|
specific header files. Patch by Matti Picus. (Github issue :issue:`6482`)
|
||||||
|
* Minor fix in C++ ``partial_sum()`` declaration.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sat Aug 31 11:48:36 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
Sat Aug 31 11:48:36 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package python-Cython
|
# spec file for package python-Cython
|
||||||
#
|
#
|
||||||
# Copyright (c) 2024 SUSE LLC
|
# Copyright (c) 2025 SUSE LLC and contributors
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@@ -17,29 +17,39 @@
|
|||||||
|
|
||||||
|
|
||||||
%bcond_with test
|
%bcond_with test
|
||||||
|
%if 0%{?suse_version} > 1500
|
||||||
|
%bcond_without libalternatives
|
||||||
|
%else
|
||||||
|
%bcond_with libalternatives
|
||||||
|
%endif
|
||||||
%{?sle15_python_module_pythons}
|
%{?sle15_python_module_pythons}
|
||||||
Name: python-Cython
|
Name: python-Cython
|
||||||
Version: 3.0.11
|
Version: 3.2.2
|
||||||
Release: 0
|
Release: 0
|
||||||
Summary: The Cython compiler for writing C extensions for the Python language
|
Summary: The Cython compiler for writing C extensions for the Python language
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
URL: https://cython.org/
|
URL: https://cython.org/
|
||||||
# SourceRepository: https://github.com/cython/cython
|
# SourceRepository: https://github.com/cython/cython
|
||||||
Source: https://files.pythonhosted.org/packages/source/C/Cython/cython-%{version}.tar.gz
|
Source: https://files.pythonhosted.org/packages/source/c/cython/cython-%{version}.tar.gz
|
||||||
Source1: python-Cython-rpmlintrc
|
Source1: python-Cython-rpmlintrc
|
||||||
BuildRequires: %{python_module devel}
|
BuildRequires: %{python_module devel >= 3.8}
|
||||||
BuildRequires: %{python_module pip}
|
BuildRequires: %{python_module pip}
|
||||||
BuildRequires: %{python_module setuptools}
|
BuildRequires: %{python_module setuptools}
|
||||||
BuildRequires: %{python_module wheel}
|
BuildRequires: %{python_module wheel}
|
||||||
BuildRequires: fdupes
|
BuildRequires: fdupes
|
||||||
BuildRequires: gcc-c++
|
BuildRequires: gcc-c++
|
||||||
BuildRequires: python-rpm-macros
|
BuildRequires: python-rpm-macros
|
||||||
Requires: python-devel
|
Requires: python-devel >= 3.8
|
||||||
Requires(post): update-alternatives
|
|
||||||
Requires(postun): update-alternatives
|
|
||||||
Conflicts: python-Cython < 3
|
Conflicts: python-Cython < 3
|
||||||
Provides: python-Cython3 = %{version}
|
Provides: python-Cython3 = %{version}
|
||||||
Obsoletes: python-Cython3 < %{version}
|
Obsoletes: python-Cython3 < %{version}
|
||||||
|
%if %{with libalternatives}
|
||||||
|
BuildRequires: alts
|
||||||
|
Requires: alts
|
||||||
|
%else
|
||||||
|
Requires(post): update-alternatives
|
||||||
|
Requires(postun): update-alternatives
|
||||||
|
%endif
|
||||||
%python_subpackages
|
%python_subpackages
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@@ -66,6 +76,7 @@ export CFLAGS="%{optflags} -fno-strict-aliasing"
|
|||||||
for p in cython cythonize cygdb ; do
|
for p in cython cythonize cygdb ; do
|
||||||
%python_clone -a %{buildroot}%{_bindir}/$p
|
%python_clone -a %{buildroot}%{_bindir}/$p
|
||||||
done
|
done
|
||||||
|
%python_group_libalternatives cython cythonize cygdb
|
||||||
|
|
||||||
%{python_expand chmod a+x %{buildroot}%{$python_sitearch}/Cython/Build/Cythonize.py
|
%{python_expand chmod a+x %{buildroot}%{$python_sitearch}/Cython/Build/Cythonize.py
|
||||||
sed -i "s|^#!%{_bindir}/env python$|#!%{__$python}|" %{buildroot}%{$python_sitearch}/Cython/Build/Cythonize.py
|
sed -i "s|^#!%{_bindir}/env python$|#!%{__$python}|" %{buildroot}%{$python_sitearch}/Cython/Build/Cythonize.py
|
||||||
@@ -81,6 +92,9 @@ $python runtests.py -v
|
|||||||
}
|
}
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%pre
|
||||||
|
%python_libalternatives_reset_alternative cython
|
||||||
|
|
||||||
%post
|
%post
|
||||||
%python_install_alternative cython cythonize cygdb
|
%python_install_alternative cython cythonize cygdb
|
||||||
|
|
||||||
@@ -94,7 +108,7 @@ $python runtests.py -v
|
|||||||
%python_alternative %{_bindir}/cython
|
%python_alternative %{_bindir}/cython
|
||||||
%python_alternative %{_bindir}/cythonize
|
%python_alternative %{_bindir}/cythonize
|
||||||
%{python_sitearch}/Cython/
|
%{python_sitearch}/Cython/
|
||||||
%{python_sitearch}/Cython-%{version}.dist-info
|
%{python_sitearch}/[cC]ython-%{version}.dist-info
|
||||||
%{python_sitearch}/cython.py*
|
%{python_sitearch}/cython.py*
|
||||||
%pycache_only %{python_sitearch}/__pycache__/cython*.py*
|
%pycache_only %{python_sitearch}/__pycache__/cython*.py*
|
||||||
%{python_sitearch}/pyximport/
|
%{python_sitearch}/pyximport/
|
||||||
|
|||||||
Reference in New Issue
Block a user