* Cython generated incorrect self-casts when directly calling final methods of subtypes. * Internal C names generated from C function signatures could become too long for MSVC. * The noexcept warnings could be misleading in some cases. * The @cython.ufunc implementation could generate incomplete C code. * The libcpp.complex declarations could result in incorrect C++ code. Patch by Raffi Enficiaud. * Several tests were adapted to work with both NumPy 1.x and 2.0. Patch by Matti Picus. * C compiler warnings when the freelist implementation is disabled (e.g. on PyPy) were fixed. It can now be disabled explicitly with the C macro guard CYTHON_USE_FREELISTS=0. * Some C macro guards for feature flags were missing from the NOGIL Python configuration. * Some recently added builtins were unconditionally looked up at module import time (if used by user code) that weren't available on all Python versions and could thus fail the import. * A performance hint regarding exported pxd declarations was improved. OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-Cython?expand=0&rev=198
2129 lines
104 KiB
Plaintext
2129 lines
104 KiB
Plaintext
-------------------------------------------------------------------
|
|
Tue Apr 2 09:50:48 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 3.0.10:
|
|
* Cython generated incorrect self-casts when directly calling
|
|
final methods of subtypes.
|
|
* Internal C names generated from C function signatures could
|
|
become too long for MSVC.
|
|
* The noexcept warnings could be misleading in some cases.
|
|
* The @cython.ufunc implementation could generate incomplete C
|
|
code.
|
|
* The libcpp.complex declarations could result in incorrect C++
|
|
code. Patch by Raffi Enficiaud.
|
|
* Several tests were adapted to work with both NumPy 1.x and
|
|
2.0. Patch by Matti Picus.
|
|
* C compiler warnings when the freelist implementation is
|
|
disabled (e.g. on PyPy) were fixed. It can now be disabled
|
|
explicitly with the C macro guard CYTHON_USE_FREELISTS=0.
|
|
* Some C macro guards for feature flags were missing from the
|
|
NOGIL Python configuration.
|
|
* Some recently added builtins were unconditionally looked up
|
|
at module import time (if used by user code) that weren't
|
|
available on all Python versions and could thus fail the
|
|
import.
|
|
* A performance hint regarding exported pxd declarations was
|
|
improved.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Mar 18 10:56:20 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 3.0.9:
|
|
* Assigning const values to non-const variables now issues a
|
|
warning.
|
|
* Using noexcept on a function returning Python objects now
|
|
issues a warning.
|
|
* Some C-API usage was updated for the upcoming CPython 3.13.
|
|
Patches by Victor Stinner et al.
|
|
* The deprecated Py_UNICODE type is no longer used, unless
|
|
required by user code.
|
|
* std::string.replace() declarations were added to
|
|
libcpp.string. Patch by Kieran Geary.
|
|
* Cython generates incorrect (but harmless) self-casts when
|
|
directly calling final methods of subtypes. Lacking a better
|
|
solution, the errors that recent gcc versions produce have
|
|
been silenced for the time being. Original patch by Michał
|
|
Górny.
|
|
* Unused variable warnings about clineno were fixed when C
|
|
lines in tracebacks are disabled.
|
|
* Subclass deallocation of extern classes could crash if the
|
|
base class uses GC. Original patch by Jason Fried.
|
|
* Type checks for Python memoryview could use an invalid C
|
|
function. Patch by Xenia Lu.
|
|
* Calling final fused functions could generate invalid C code.
|
|
* Declaring extern enums multiple times could generate invalid
|
|
C code.
|
|
* pyximport used relative paths incorrectly. Patch by Stefano
|
|
Rivera.
|
|
* Running Cython with globbing characters ([]*?) in the module
|
|
search path could fail.
|
|
* Literal strings that include braces could change the C code
|
|
indentation.
|
|
* The "enum class not importable" warning is now only issued
|
|
once per enum type.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Jan 14 15:30:24 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 3.0.8:
|
|
* Using const together with defined fused types could fail to
|
|
compile. (Github issue :issue:`5230`)
|
|
* A "use after free" bug was fixed in parallel sections.
|
|
(Github issue :issue:`5922`)
|
|
* Several types were not available as cython.* types in pure
|
|
Python code.
|
|
* The generated code is now correct C89 again, removing some
|
|
C++ style // comments and C99-style declaration-after-code
|
|
code ordering. This is still relevant for some ols C
|
|
compilers, specifically ones that match old Python 2.7
|
|
installations.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Jan 2 22:01:07 UTC 2024 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- require setuptools
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Dec 21 16:15:20 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 3.0.7:
|
|
* In the iterator of generator expressions, ``await`` and
|
|
``yield`` were not correctly analysed.
|
|
* ``cpdef`` enums with the same name cimported from different
|
|
modules could lead to invalid C code.
|
|
* Some declarations in ``cpython.unicode`` were fixed and
|
|
extended.
|
|
* Compiling fused types used in pxd files could crash Cython in
|
|
Python 3.11+.
|
|
* Source files with non-ASCII file names could crash Cython.
|
|
* Includes all bug-fixes and features from the 0.29 maintenance
|
|
branch
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Nov 27 08:49:57 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 3.0.6:
|
|
* Features added
|
|
* Fused def function dispatch is a bit faster.
|
|
* Declarations for the ``wchar`` PyUnicode API were added.
|
|
* The Python "nogil" fork is now also detected with the new
|
|
``Py_GIL_DISABLED`` macro.
|
|
* Patch by Hugo van Kemenade (Github issue :issue:`583652`)
|
|
* Bugs fixed
|
|
* Comparing dataclasses could give different results than
|
|
Python.
|
|
* ``float(std::string)`` generated invalid C code.
|
|
* Using ``cpdef`` functions with ``cimport_from_pyx`` failed.
|
|
* A crash was fixed when string-formatting a Python value
|
|
fails.
|
|
* On item access, Cython could try the sequence protocol before
|
|
the mapping protocol
|
|
* in some cases if an object supports both.
|
|
* A C compiler warning was resolved.
|
|
* Complex numbers failed to compile in MSVC with C11.
|
|
* Patch by Lysandros Nikolaou. (Github issue :issue:`5809`)
|
|
* Some issues with the Limited API and with PyPy were resolved.
|
|
* A C++ issue in Python 3.13 was resolved.
|
|
* Several directives are now also available (as no-ops) in
|
|
Python code.
|
|
* An error message was corrected.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Nov 20 12:09:27 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- avoid obsoletes on provides as we now had a version update
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Nov 10 13:13:54 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 3.0.5:
|
|
* Preliminary support for CPython 3.13a1 was added to allow
|
|
early testing.
|
|
* Bugs fixed
|
|
* A compiler crash was fixed.
|
|
* A typo in the ``always_allow_keywords`` directive for Python
|
|
code was fixed.
|
|
* Some C compiler warnings were resolved.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Oct 18 06:15:17 UTC 2023 - Daniel Garcia Moreno <daniel.garcia@suse.com>
|
|
|
|
- update to version 3.0.4:
|
|
* Features added
|
|
- A new compiler directive show_performance_hints was added to
|
|
disable the newly added performance hint output. (Github issue
|
|
:issue:`5748`)
|
|
* Bugs fixed
|
|
- `cythonize` required ``distutils even for operations that did not
|
|
build binaries. (Github issue :issue:`5751`)
|
|
- A regression in 3.0.3 was fixed that prevented calling inline
|
|
functions from another inline function in .pxd files. (Github
|
|
issue :issue:`5748`)
|
|
- Some C compiler warnings were resolved. Patch by Pierre Jolivet.
|
|
(Github issue :issue:`5756`)
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Oct 17 08:57:05 UTC 2023 - Daniel Garcia Moreno <daniel.garcia@suse.com>
|
|
|
|
- update to version 3.0.3:
|
|
* Features added
|
|
- More warnings were added to help users migrate and avoid bugs.
|
|
(Github issue #5650)
|
|
- A warning-like category for performance hints was added that
|
|
bypasses -Werror. (Github issue #5673)
|
|
- FastGIL now uses standard thread_local in C++. (Github issue
|
|
#5640)
|
|
- reference_wrapper was added to libcpp.functional. Patch by Vyas
|
|
Ramasubramani. (Github issue #5671)
|
|
- The cythonize command now supports the --cplus option known from
|
|
the cython command. (Github issue #5736)
|
|
* Bug fixed
|
|
- Performance regressions where the GIL was needlessly acquired
|
|
were fixed. (Github issues #5670, #5700)
|
|
- A reference leak for exceptions in Python 3.12 was resolved.
|
|
Patch by Eric Johnson. (Github issue #5724)
|
|
- fastcall calls with keyword arguments generated incorrect C
|
|
code. (Github issue #5665)
|
|
- Assigning the type converted result of a conditional (if-else)
|
|
expression to int or bool variables could lead to incorrect C
|
|
code. (Github issue #5731)
|
|
- Early (unlikely) failures in Python function wrappers no longer
|
|
set a traceback in order to simplify the C code flow. Being
|
|
mostly memory allocation errors, they probably would never have
|
|
created a traceback anyway. (Github issue #5681)
|
|
- Relative cimports from packages with __init__.py files could
|
|
fail. (Github issue #5715)
|
|
- Several issues with the Limited API support were resolved.
|
|
(Github issues #5641, #5648, #5689)
|
|
- The code generated for special-casing both Cython functions and
|
|
PyCFunctions was cleaned up to avoid calling C-API functions
|
|
that were not meant for the other type respectively. This could
|
|
previously trigger assertions in CPython debug builds and now
|
|
also plays better with the Limited API. (Github issues #4804,
|
|
#5739)
|
|
- Fix some C compiler warnings. Patches by Ralf Gommers, Oleksandr
|
|
Pavlyk, Sebastian Koslowski et al. (Github issues #5651, #5663,
|
|
#5668, #5717, #5726, #5734)
|
|
- Generating gdb debugging information failed when using generator
|
|
expressions. Patch by Oleksandr Pavlyk. (Github issue #5552)
|
|
- Passing a setuptools.Extension into cythonize() instead of a
|
|
distutils.Extension could make it miss the matching extensions.
|
|
- cython -M needlessly required distutils, which made it fail in
|
|
Python 3.12. (Github issue #5681)
|
|
* Other changes
|
|
- The visible deprecation warning for DEF was removed again since
|
|
it proved difficult for some users to migrate away from it. The
|
|
statement is still meant to be removed at some point (and thus,
|
|
like IF, should not be used in new code), but the time for
|
|
sunset is probably not around the corner. (Github issue #4310)
|
|
- The np_pythran option raise a DeprecationWarning if it receives
|
|
other values than True and False. This will eventually be
|
|
disallowed (in line with all other boolean options).
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Aug 27 21:37:49 UTC 2023 - Arun Persaud <arun@gmx.de>
|
|
|
|
- update to version 3.0.2:
|
|
* Bugs fixed
|
|
+ Using None as default value for arguments annotated as int could
|
|
crash Cython. (Github issue :issue:`5643`)
|
|
+ Default values of fused types that include complex could
|
|
generate invalid C code with -DCYTHON_CCOMPLEX=0. (Github issue
|
|
:issue:`5644`)
|
|
+ Using C++ enum class types in extension type method signatures
|
|
could generate invalid C code. (Github issue :issue:`5637`)
|
|
|
|
- changes from version 3.0.1:
|
|
* Features added
|
|
+ The error messages regarding exception declarations were
|
|
improved in order to give better help about possible reasons and
|
|
fixes. (Github issue :issue:`5547`)
|
|
* Bugs fixed
|
|
+ Memory view types in Python argument annotations no longer
|
|
accept None. They now require an explicit Optional[] or a None
|
|
default value in order to allow None to be passed. This was an
|
|
oversight in the 3.0.0 release and is a BACKWARDS INCOMPATIBLE
|
|
change. However, since it only applies to code using Python
|
|
syntax, it probably only applies to newly written code that was
|
|
written for Cython 3.0 and can easily be adapted. In most cases,
|
|
we expect that this change will avoid bugs in user code rather
|
|
than produce problems. (Github issue :issue:`5612`)
|
|
+ nogil functions using parallel code could freeze when called
|
|
with the GIL held. (Github issues :issue:`5564`, :issue:`5573`)
|
|
+ Relative cimports could end up searching globally and find the
|
|
same package installed elsewhere, potentially in another
|
|
version. (Github issue :issue:`5511`)
|
|
+ Attribute lookups on known standard library modules could
|
|
accidentally search in the module namespace instead. (Github
|
|
issue :issue:`5536`)
|
|
+ Using constructed C++ default arguments could generate invalid
|
|
C++ code. (Github issue :issue:`5553`)
|
|
+ libcpp.memory.make_unique() was lacking C++ exception
|
|
handling. (Github issue :issue:`5560`)
|
|
+ Some non-public and deprecated CAPI usages were replaced by
|
|
public (and thus more future proof) API code.
|
|
+ Many issues with the Limited API support were resolved. Patches
|
|
by Lisandro Dalcin et al. (Github issues :issue:`5549`,
|
|
:issue:`5550`, :issue:`5556`, :issue:`5605`, :issue:`5617`)
|
|
+ Some C compiler warnings were resolved. Patches by Matti Picus
|
|
et al. (Github issues :issue:`5557`, :issue:`5555`)
|
|
+ Large Python integers are now stored in hex instead of decimal
|
|
strings to work around security limits in Python and generally
|
|
speed up their Python object creation.
|
|
+ NULL could not be used as default for fused type pointer
|
|
arguments. (Github issue :issue:`5554`)
|
|
+ C functions that return pointer types now return NULL as default
|
|
exception value. Previously, calling code wasn't aware of this
|
|
and always tested for raised exceptions. (Github issue
|
|
:issue:`5554`)
|
|
+ Untyped literal default arguments in fused functions could
|
|
generate invalid C code. (Github issue :issue:`5614`)
|
|
+ C variables declared as const could generate invalid C code when
|
|
used in closures, generator expressions, ctuples, etc. (Github
|
|
issues :issue:`5558`, :issue:`5333`)
|
|
+ Enums could not refer to previously defined enums in their
|
|
definition. (Github issue :issue:`5602`)
|
|
+ The Python conversion code for anonymous C enums conflicted with
|
|
regular int conversion. (Github issue :issue:`5623`)
|
|
+ Using memory views for property methods (and other special
|
|
methods) could lead to refcounting problems. (Github issue
|
|
:issue:`5571`)
|
|
+ Star-imports could generate code that tried to assign to
|
|
constant C macros like PY_SSIZE_T_MAX and PY_SSIZE_T_MIN. Patch
|
|
by Philipp Wagner. (Github issue :issue:`5562`)
|
|
+ CYTHON_USE_TYPE_SPECS can now be (explicitly) enabled in PyPy.
|
|
+ The template parameter "delimeters" in the Tempita Template
|
|
class was corrected to "delimiters". The old spelling is still
|
|
available in the main template API but now issues a
|
|
DeprecationWarning. (Github issue :issue:`5608`)
|
|
+ The cython --version output is now less likely to reach both
|
|
stdout and stderr. Patch by Eli Schwartz. (Github issue
|
|
:issue:`5504`)
|
|
+ The sdist was missing the Shadow.pyi stub file.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jul 19 12:23:38 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
|
|
|
- Update to the official release of 3.0.0:
|
|
- The complete list is seriously long, so I would relegate you
|
|
to https://github.com/cython/cython/blob/master/CHANGES.rst
|
|
- The implemented PEPs are:
|
|
- PEP-3131: Supporting Non-ASCII Identifiers
|
|
- PEP-479: generator_stop (enabled by default for language_level=3)
|
|
- PEP-487: Simpler customisation of class creation
|
|
- PEP-563: Postponed Evaluation of Annotations
|
|
- PEP-570: Positional-Only Parameters
|
|
- PEP-572: Assignment Expressions (a.k.a. the walrus operator :=)
|
|
- PEP-590: Vectorcall protocol
|
|
- PEP-614: Relaxing Grammar Restrictions On Decorators
|
|
- Cython supports all released versions of Python from 2.7 to
|
|
3.11 (and some experimental parts of 3.12) inclusive.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jul 10 19:03:16 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
|
|
|
- Clean up SPEC file.
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Jul 8 20:26:51 UTC 2023 - Arun Persaud <arun@gmx.de>
|
|
|
|
- update to version 0.29.36:
|
|
* Async generators lost their return value in PyPy. (Github issue
|
|
:issue:`5465`)
|
|
* The outdated C macro _PyGC_FINALIZED() is no longer used in
|
|
Py3.9+.
|
|
* The deprecated Py_OptimizeFlag is no longer used in Python
|
|
3.9+. (Github issue :issue:`5343`)
|
|
* Using the global __debug__ variable but not assertions could lead
|
|
to compile errors.
|
|
* The broken HTML template support was removed from Tempita. (Github
|
|
issue :issue:`3309`)
|
|
|
|
-------------------------------------------------------------------
|
|
Sat May 27 21:05:03 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 0.29.35:
|
|
* A garbage collection enabled subtype of a non-GC extension
|
|
type could call into the deallocation function of the
|
|
super type with GC tracking enabled. This could lead
|
|
to crashes during deallocation if GC was triggered on the
|
|
type at the same time.
|
|
* Some C compile failures and crashes in CPython 3.12 were
|
|
resolved.
|
|
* ``except + nogil`` was syntactically not allowed.
|
|
* ``except +nogil`` (i.e. defining a C++ exception handling
|
|
function called ``nogil``) is now disallowed to prevent typos.
|
|
* A C compile failure in PyPy 3.10 was resolved.
|
|
* Cython modules now use PEP-489 multi-phase init by default in
|
|
PyPy 3.9 and later.
|
|
* API header files generated by different Cython versions can
|
|
now be included in the same C file.
|
|
* Function signatures containing a type like `tuple[()]` could
|
|
not be printed.
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Apr 21 12:20:26 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- add sle15_python_module_pythons (jsc#PED-68)
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Apr 13 22:40:49 UTC 2023 - Matej Cepl <mcepl@suse.com>
|
|
|
|
- Make calling of %{sle15modernpython} optional.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Apr 3 19:58:40 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 0.29.34:
|
|
* A refence leak of the for-loop list/tuple iterable was
|
|
resolved if the for-loop's ``else:`` branch executes
|
|
a ``break`` for an outer loop.
|
|
* Some C compile failures in CPython 3.12 were resolved.
|
|
* Some old usages of the deprecated Python ``imp`` module were
|
|
replaced with ``importlib``.
|
|
* Patch by Matúš Valo. (Github issue :issue:`5300`)
|
|
* Some issues with ``depfile`` generation were resolved.
|
|
* Patches by Eli Schwartz. (Github issues :issue:`5279`,
|
|
:issue:`5291`)
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Jan 7 12:27:04 UTC 2023 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 0.29.33:
|
|
* The ``cythonize`` and ``cython`` commands have a new option ``-M`` /
|
|
``--depfile`` to generate ``.dep`` dependency files for the
|
|
compilation unit. This can be used by external build tools to
|
|
track these dependencies.
|
|
* ``const`` fused types could not be used with memory views.
|
|
* ``wstr`` usage was removed in Python 3.12 and later (PEP-623).
|
|
* A type check assertion for Cython functions failed in debug Python
|
|
builds.
|
|
* Fixed various compiler warnings.
|
|
* Fixed error when calculating complex powers of negative numbers.
|
|
* Corrected a small mis-formatting of exception messages on Python 2.
|
|
* The ``PyUnicode_AsUTF8AndSize()`` C-API function was missing from the
|
|
CPython declarations.
|
|
* A performance problem in the compiler was resolved when nesting
|
|
conditional expressions.
|
|
* Test suite problems with recent NumPy and CPython versions were
|
|
resolved.
|
|
* Other changes
|
|
* The undocumented, untested and apparently useless syntax
|
|
``from somemodule cimport class/struct/union somename`` was deprecated
|
|
in anticipation of its removal in Cython 3. The type
|
|
modifier is not needed here and a plain ``cimport`` of the name will do.
|
|
* Properly disable generation of descriptor docstrings on PyPy since they
|
|
cause crashes.
|
|
It was previously disabled, but only accidentally via a typo.
|
|
* The ``cpow`` directive of Cython 3.0 is available as a no-op.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Oct 26 01:33:21 UTC 2022 - Steve Kowalik <steven.kowalik@suse.com>
|
|
|
|
- Remove leftover Python 2 gubbins.
|
|
- Stop using handrolled macros for install and update-alternatives,
|
|
switch to the provided ones.
|
|
- Update package names in rpmlintrc.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Aug 2 11:51:50 UTC 2022 - Otto Hollmann <otto.hollmann@suse.com>
|
|
|
|
- Update to 0.29.32:
|
|
- Bugs fixed:
|
|
* Revert "Using memoryview typed arguments in inner functions is now
|
|
rejected as unsupported."
|
|
* from module import * failed in 0.29.31 when using memoryviews
|
|
- Changes from 0.29.31:
|
|
- Features added:
|
|
* A new argument --module-name was added to the cython command to provide
|
|
the (one) exact target module name from the command line.
|
|
- Bugs fixed:
|
|
* Use importlib.util.find_spec() instead of the deprecated
|
|
importlib.find_loader() function when setting up the package path at
|
|
import-time.
|
|
* Require the C compiler to support the two-arg form of va_start on
|
|
Python 3.10 and higher.
|
|
* Make fused_type subscriptable in Shadow.py.
|
|
* Fix the incorrect code generation of the target type in bytearray loops.
|
|
* Atomic refcounts for memoryviews were not used on some GCC versions by
|
|
accident.
|
|
* Silence some GCC -Wconversion warnings in C utility code.
|
|
* Tuple multiplication was ignored in expressions such as [*(1,) * 2].
|
|
* Calling append methods on extension types could fail to find the method in
|
|
some cases.
|
|
* Ensure that object buffers (e.g. ndarray[object, ndim=1]) containing NULL
|
|
pointers are safe to use, returning None instead of the NULL pointer.
|
|
* Using memoryview typed arguments in inner functions is now rejected as
|
|
unsupported.
|
|
* Compilation could fail on systems (e.g. FIPS) that block MD5 checksums at
|
|
runtime.
|
|
* Experimental adaptations for the CPython "nogil" fork was added. Note that
|
|
there is no official support for this in Cython 0.x.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed May 18 08:35:39 UTC 2022 - Paolo Stivanin <info@paolostivanin.com>
|
|
|
|
- update to 0.29.30:
|
|
* Avoid acquiring the GIL at the end of nogil functions. This change
|
|
was backported in order to avoid generating wrong C code that
|
|
would trigger C compiler warnings with tracing support enabled.
|
|
* Function definitions in finally: clauses were not correctly generated.
|
|
* A case where C-API functions could be called with a live exception
|
|
set was fixed.
|
|
* Cython now correctly generates Python methods for both the provided
|
|
regular and reversed special numeric methods of extension types.
|
|
* The C union type in pure Python mode mishandled some field names.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Mar 20 20:33:02 UTC 2022 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 0.29.28:
|
|
* Due to backwards incompatible changes in CPython 3.11a4, the feature flags
|
|
``CYTHON_FAST_THREAD_STATE`` and ``CYTHON_USE_EXC_INFO_STACK`` are now disabled
|
|
in Python 3.11 and later. They are enabled again in Cython 3.0.
|
|
Patch by David Woods. (Github issue #4610)
|
|
* A C compiler warning in older PyPy versions was resolved.
|
|
Patch by Matti Picus. (Github issue #4236)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Feb 2 17:54:50 UTC 2022 - Matej Cepl <mcepl@suse.com>
|
|
|
|
- Make the running the test suite conditional (default
|
|
off). Seven hours of running it is just too much.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jan 31 20:31:01 UTC 2022 - Matej Cepl <mcepl@suse.com>
|
|
|
|
- Enable running of the test suite.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jan 31 13:46:21 UTC 2022 - Paolo Stivanin <info@paolostivanin.com>
|
|
|
|
- update to 0.29.27:
|
|
* The ``cythonize`` command has a new option ``-M`` to generate ``.dep`` dependency
|
|
files for the compilation unit. This can be used by external build tools to track
|
|
these dependencies.
|
|
* Calls to ``range()`` with more than three arguments did not fail.
|
|
* Some C compiler warnings about missing type struct initialisers in Py3.10 were resolved.
|
|
* Cython no longer warns about using OpenMP 3.0 features since they are now
|
|
considered generally available.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Jan 4 15:59:48 UTC 2022 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 0.29.26:
|
|
* An incompatibility with CPython 3.11.0a3 was resolved.
|
|
* The ``in`` operator failed on literal lists with starred
|
|
expressions.
|
|
* A C compiler warning in PyPy about a missing struct field
|
|
initialisation was resolved.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Dec 6 20:16:04 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 0.29.25:
|
|
* Several incompatibilities with CPython 3.11 were resolved.
|
|
* Some C compiler warnings were resolved.
|
|
* C++ ``std::move()`` should only be used automatically in MSVC versions that support it.
|
|
* The ``Py_hash_t`` type failed to accept arbitrary "index" values.
|
|
* Avoid copying unaligned 16-bit values since some platforms require them to be aligned.
|
|
Use memcpy() instead to let the C compiler decide how to do it.
|
|
* Cython crashed on invalid truthiness tests on C++ types without ``operator bool``.
|
|
* The declaration of ``PyUnicode_CompareWithASCIIString()`` in ``cpython.unicode`` was incorrect.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jul 14 08:28:08 UTC 2021 - Paolo Stivanin <info@paolostivanin.com>
|
|
|
|
- Update to 0.29.24:
|
|
* Inline functions in pxd files that used memory views could lead to invalid
|
|
C code if the module that imported from them does not use memory views.
|
|
* Several declarations in ``libcpp.string`` were added and corrected.
|
|
* Pickling unbound Cython compiled methods failed.
|
|
* The tracing code was adapted to work with CPython 3.10.
|
|
* The optimised ``in`` operator failed on unicode strings in Py3.9 and later
|
|
that were constructed from an external ``wchar_t`` source.
|
|
Also, related C compiler warnings about deprecated C-API usage were resolved.
|
|
* Some compiler crashes were resolved.
|
|
* An incorrect warning about 'unused' generator expressions was removed.
|
|
* The attributes ``gen.gi_frame`` and ``coro.cr_frame`` of Cython compiled
|
|
generators and coroutines now return an actual frame object for introspection,
|
|
instead of ``None``.
|
|
- Drop cython_use_imgmath.patch
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 21 21:19:17 UTC 2021 - Dirk Müller <dmueller@suse.com>
|
|
|
|
- update to 0.29.23:
|
|
* Some problems with Python 3.10 were resolved.
|
|
Patches by Victor Stinner and David Woods. (Github issues #4046, #4100)
|
|
* An incorrect "optimisation" was removed that allowed changes to a keyword
|
|
dict to leak into keyword arguments passed into a function.
|
|
Patch by Peng Weikang. (Github issue #3227)
|
|
* Multiplied str constants could end up as bytes constants with language_level=2.
|
|
Patch by Alphadelta14 and David Woods. (Github issue #3951)
|
|
* ``PY_SSIZE_T_CLEAN`` does not get defined any more if it is already defined.
|
|
Patch by Andrew Jones. (Github issue #4104)
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Feb 23 07:22:13 UTC 2021 - Paolo Stivanin <info@paolostivanin.com>
|
|
|
|
- Update to 0.29.22
|
|
* Some declarations were added to the provided pxd includes.
|
|
Patches by Zackery Spytz and John Kirkham.
|
|
(Github issues #3811, #3882, #3899, #3901)
|
|
* A crash when calling certain functions in Py3.9 and later was resolved.
|
|
(Github issue #3917)
|
|
* ``const`` memory views of structs failed to compile.
|
|
(Github issue #2251)
|
|
* ``const`` template declarations could not be nested.
|
|
Patch by Ashwin Srinath. (Github issue #1355)
|
|
* The declarations in the ``cpython.pycapsule`` module were missing their
|
|
``const`` modifiers and generated incorrect C code.
|
|
Patch by Warren Weckesser. (Github issue #3964)
|
|
* Casts to memory views failed for fused dtypes.
|
|
Patch by David Woods. (Github issue #3881)
|
|
* ``repr()`` was assumed to return ``str`` instead of ``unicode``
|
|
with ``language_level=3``
|
|
* Calling ``cpdef`` functions from cimported modules crashed the compiler.
|
|
Patch by David Woods. (Github issue #4000)
|
|
* Cython no longer validates the ABI size of the NumPy classes
|
|
it compiled against.
|
|
* A C compiler warning about enum value casting was resolved in GCC.
|
|
(Github issue #2749)
|
|
* Coverage reporting in the annotated HTML file failed in Py3.9.
|
|
Patch by Nick Pope. (Github issue #3865)
|
|
* The embedding code now reports Python errors as exit status.
|
|
* Long type declarations could lead to (harmless) random changes in the
|
|
C file when used in auto-generated Python wrappers or pickled classes.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jul 8 22:36:13 UTC 2020 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
- Update TO 0.29.21
|
|
* Fix a regression in 0.29.20 where __div__ failed to be found in extension types
|
|
* Fix a regression in 0.29.20 where a call inside of a finally clause could
|
|
fail to compile
|
|
* Zero-sized buffers could fail to validate as C/Fortran-contiguous.
|
|
* exec() did not allow recent Python syntax features in Py3.8+
|
|
due to https://bugs.python.org/issue35975
|
|
* Binding staticmethods of Cython functions were not behaving like
|
|
Python methods in Py3
|
|
* Pythran calls to NumPy methods no longer generate useless method lookup code.
|
|
* The PyUnicode_GET_LENGTH() macro was missing from the cpython.* declarations
|
|
* The deprecated PyUnicode_*() C-API functions are no longer used, except
|
|
for Unicode strings that contain lone surrogates. Unicode strings that
|
|
contain non-BMP characters or surrogate pairs now generate different C
|
|
code on 16-bit Python 2.x Unicode deployments (such as MS-Windows).
|
|
Generating the C code on Python 3.x is recommended in this case
|
|
* Some template parameters were missing from the C++ std::unordered_map declaration
|
|
* Several internal code generation issues regarding temporary variables were resolved
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jun 11 06:30:55 UTC 2020 - Paolo Stivanin <info@paolostivanin.com>
|
|
|
|
- Update to 0.29.20
|
|
* Nested try-except statements with multiple return statements
|
|
could crash due to incorrect deletion of the except as target variable.
|
|
* The @classmethod decorator no longer rejects unknown input from other decorators.
|
|
* Fused types could leak into unrelated usages. Patch by David Woods.
|
|
* Now uses Py_SET_SIZE() and Py_SET_REFCNT() in Py3.9+ to avoid
|
|
low-level write access to these object field
|
|
* The built-in abs() function could lead to undefined behaviour when used on
|
|
the negative-most value of a signed C integer type
|
|
* Usages of sizeof() and typeid() on uninitialised variables no longer produce a warning
|
|
* The C++ typeid() function was allowed in C mode
|
|
* The error position reported for errors found in f-strings was misleading
|
|
* The new c_api_binop_methods directive was added for forward compatibility,
|
|
but can only be set to True (the current default value). It can be disabled in Cython 3.0
|
|
|
|
|
|
-------------------------------------------------------------------
|
|
Thu May 21 15:16:20 UTC 2020 - Paolo Stivanin <info@paolostivanin.com>
|
|
|
|
- Update to 0.29.19
|
|
* Exception position reporting could run into race conditions on threaded code.
|
|
It now uses function-local variables again.
|
|
* Error handling early in the module init code could lead to a crash.
|
|
* Error handling in cython.array creation was improved to avoid calling C-API
|
|
functions with an error held.
|
|
* A memory corruption was fixed when garbage collection was triggered during
|
|
calls to PyType_Ready() of extension type subclasses. (Github issue #3603)
|
|
* Memory view slicing generated unused error handling code which could negatively
|
|
impact the C compiler optimisations for parallel OpenMP code etc.
|
|
Also, it is now helped by static branch hints. (Github issue #2987)
|
|
* Cython's built-in OpenMP functions were not translated inside of call arguments.
|
|
Original patch by Celelibi and David Woods. (Github issue #3594)
|
|
* Complex buffer item types of structs of arrays could fail to validate.
|
|
* Decorators were not allowed on nested async def functions.
|
|
* C-tuples could use invalid C struct casting. Patch by MegaIng.
|
|
* Optimised %d string formatting into f-strings failed on float values.
|
|
* Optimised aligned string formatting (%05s, %-5s) failed.
|
|
* Three missing timedelta access macros were added in cpython.datetime.
|
|
* The signature of the NumPy C-API function PyArray_SearchSorted() was fixed
|
|
|
|
-------------------------------------------------------------------
|
|
Mon May 4 07:29:52 UTC 2020 - Johannes Grassler <johannes.grassler@suse.com>
|
|
|
|
- update to 0.29.17
|
|
* std::move() is now available from libcpp.utility.
|
|
* The @cython.binding decorator is available in Python code.
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Apr 17 08:10:03 UTC 2020 - Marketa Calabkova <mcalabkova@suse.com>
|
|
|
|
- update to 0.29.16
|
|
* Temporary internal variables in nested prange loops could leak into other
|
|
threads. Patch by Frank Schlimbach. (Github issue #3348)
|
|
* Default arguments on fused functions could crash.
|
|
Patch by David Woods. (Github issue #3370)
|
|
* C-tuples declared in ``.pxd`` files could generate incomplete C code.
|
|
Patch by Kirk Meyer. (Github issue #1427)
|
|
* Fused functions were not always detected and optimised as Cython
|
|
implemented functions.
|
|
Patch by David Woods. (Github issue #3384)
|
|
* Valid Python object concatenation of (iterable) strings to non-strings
|
|
could fail with an exception.
|
|
Patch by David Woods. (Github issue #3433)
|
|
* Using C functions as temporary values lead to invalid C code.
|
|
Original patch by David Woods. (Github issue #3418)
|
|
* Fix an unhandled C++ exception in comparisons.
|
|
Patch by David Woods. (Github issue #3361)
|
|
* Fix deprecated import of "imp" module.
|
|
Patch by Matti Picus. (Github issue #3350)
|
|
* Fix compatibility with Pythran 0.9.6 and later.
|
|
Patch by Serge Guelton. (Github issue #3308)
|
|
* The ``_Py_PyAtExit()`` function in ``cpython.pylifecycle`` was misdeclared.
|
|
Patch by Zackery Spytz. (Github issue #3382)
|
|
* Several missing declarations in ``cpython.*`` were added.
|
|
Patches by Zackery Spytz. (Github issue #3452, #3421, #3411, #3402)
|
|
* A declaration for ``libc.math.fpclassify()`` was added.
|
|
Patch by Zackery Spytz. (Github issue #2514)
|
|
* Avoid "undeclared" warning about automatically generated pickle methods.
|
|
Patch by David Woods. (Github issue #3353)
|
|
* Avoid C compiler warning about unreachable code in ``prange()``.
|
|
* Some C compiler warnings in PyPy were resolved.
|
|
Patch by Matti Picus. (Github issue #3437)
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Feb 18 16:45:37 UTC 2020 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
- update to 0.29.15
|
|
* Crash when returning a temporary Python object from an async-def function.
|
|
* Crash when using **kwargs in generators.
|
|
* Double reference free in __class__ cell handling for super() calls.
|
|
* Compile error when using *args as Python class bases.
|
|
* Fixed C name collision in the auto-pickle code
|
|
* Deprecated import failed in Python 3.9
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Nov 16 16:44:06 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|
|
|
- update to version 0.29.14:
|
|
* Bugs fixed
|
|
+ The generated code failed to initialise the tp_print slot in
|
|
CPython 3.8. Patches by Pablo Galindo and Orivej Desh (Github
|
|
issues #3171, #3201).
|
|
+ ? for bool was missing from the supported NumPy dtypes. Patch by
|
|
Max Klein. (Github issue #2675)
|
|
+ await was not allowed inside of f-strings. Patch by Dmitro
|
|
Getz. (Github issue #2877)
|
|
+ Coverage analysis failed for projects where the code resides in
|
|
separate source sub-directories. Patch by Antonio
|
|
Valentino. (Github issue #1985)
|
|
+ An incorrect compiler warning was fixed in automatic C++ string
|
|
conversions. Patch by Gerion Entrup. (Github issue #3108)
|
|
+ Error reports in the Jupyter notebook showed unhelpful stack
|
|
traces. Patch by Matthew Edwards (Github issue #3196).
|
|
+ Python.h is now also included explicitly from public header
|
|
files. (Github issue #3133).
|
|
+ Distutils builds with --parallel did not work when using
|
|
Cython's deprecated build_ext command. Patch by Alphadelta14
|
|
(Github issue #3187).
|
|
* Other changes
|
|
+ The PyMemoryView_*() C-API is available in
|
|
cpython.memoryview. Patch by Nathan Manville. (Github issue
|
|
#2541)
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Jul 26 17:36:50 CEST 2019 - Matej Cepl <mcepl@suse.com>
|
|
|
|
- Update to 0.29.13:
|
|
- A reference leak for None was fixed when converting
|
|
a memoryview to a Python object. (Github issue #3023)
|
|
- The declaration of PyGILState_STATE in cpython.pystate was
|
|
unusable. Patch by Kirill Smelkov. (Github issue #2997)
|
|
- The declarations in posix.mman were extended. Patches by
|
|
Kirill Smelkov. (Github issues #2893, #2894, #3012)
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Jul 21 16:56:52 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|
|
|
- update to version 0.29.12:
|
|
* Fix compile error in CPython 3.8b2 regarding the PyCode_New()
|
|
signature. (Github issue #3031)
|
|
* Fix a C compiler warning about a missing int downcast. (Github
|
|
issue #3028)
|
|
* Fix reported error positions of undefined builtins and
|
|
constants. Patch by Orivej Desh. (Github issue #3030)
|
|
* A 32 bit issue in the Pythran support was resolved. Patch by Serge
|
|
Guelton. (Github issue #3032)
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Jul 6 21:26:09 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|
|
|
- update to version 0.29.11:
|
|
* Bugs fixed
|
|
+ Fix compile error in CPython 3.8b2 regarding the PyCode_New()
|
|
signature. Patch by Nick Coghlan. (Github issue #3009)
|
|
+ Invalid C code generated for lambda functions in cdef
|
|
methods. Patch by Josh Tobin. (Github issue #2967)
|
|
+ Support slice handling in newer Pythran versions. Patch by Serge
|
|
Guelton. (Github issue #2989)
|
|
+ A reference leak in power-of-2 calculation was fixed. Patch by
|
|
Sebastian Berg. (Github issue #3022)
|
|
+ The search order for include files was changed. Previously it
|
|
was include_directories, Cython/Includes, sys.path. Now it is
|
|
include_directories, sys.path, Cython/Includes. This was done to
|
|
allow third-party *.pxd files to override the ones in
|
|
Cython. Original patch by Matti Picus. (Github issue #2905)
|
|
+ Setting language_level=2 in a file did not work if
|
|
language_level=3 was enabled globally before. Patch by Jeroen
|
|
Demeyer. (Github issue #2791)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jun 12 09:42:55 UTC 2019 - Tomáš Chvátal <tchvatal@suse.com>
|
|
|
|
- Say goodbye to -doc subpackage as the documentation is online
|
|
and does not build with latest sphinx releases (even in master
|
|
at the moment).
|
|
- The testing in -doc spec was disabled anyway and if needed we
|
|
will reintroduce it as a multibuild
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jun 3 13:37:55 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
- update to 0.29.10
|
|
* Fix compile errors in CPython 3.8b1 due to the new "tp_vectorcall" slots.
|
|
* Remove an incorrect cast when using true-division in C++ operations.
|
|
* C compile errors with CPython 3.8 were resolved.
|
|
* Python tuple constants that compare equal but have different item types
|
|
could incorrectly be merged into a single constant.
|
|
* Non-ASCII characters in unprefixed strings could crash the compiler
|
|
when used with language level 3str
|
|
* Starred expressions in %-formatting tuples could fail to compile for unicode strings
|
|
* Passing Python class references through cython.inline() was broken.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Apr 16 09:26:50 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
- update to 0.29.7
|
|
* Crash when the shared Cython config module gets unloaded and another
|
|
Cython module reports an exceptions. Cython now makes sure it keeps
|
|
an owned reference to the module
|
|
* Resolved a C89 compilation problem when enabling the fast-gil sharing feature.
|
|
* Coverage reporting did not include the signature line of cdef functions
|
|
* Casting a GIL-requiring function into a nogil function now issues a warning
|
|
* Generators and coroutines were missing their return type annotation
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Apr 2 16:08:29 UTC 2019 - Todd R <toddrme2178@gmail.com>
|
|
|
|
- Add cython_use_imgmath.patch
|
|
The pngmath Sphinx extension has been removed. Use imgmath instead.
|
|
See: gh#cython/cython#2818
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Feb 28 15:30:08 UTC 2019 - Ondřej Súkup <mimi.vx@gmail.com>
|
|
|
|
- update to 0.29.6
|
|
* Fix a crash when accessing the __kwdefaults__ special attribute of fused functions.
|
|
* Fix the parsing of buffer format strings that contain numeric sizes, which
|
|
could lead to incorrect input rejections.
|
|
* Avoid a C #pragma in old gcc versions that was only added in GCC 4.6.
|
|
* Auto-encoding of Unicode strings to UTF-8 C/C++ strings failed in Python 3,
|
|
even though the default encoding there is UTF-8.
|
|
* Crash when defining a Python subclass of an extension type and repeatedly
|
|
calling a cpdef method on it.
|
|
* Compiler crash when prange() loops appear inside of with-statements.
|
|
* Some C compiler warnings were resolved.
|
|
* Python conversion of C++ enums failed in 0.29.
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Feb 5 22:17:38 UTC 2019 - Todd R <toddrme2178@gmail.com>
|
|
|
|
- Update to 0.29.4
|
|
* Division of numeric constants by a runtime value of 0 could fail to raise a
|
|
``ZeroDivisionError``. (Github issue #2820)
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Jan 20 04:34:42 UTC 2019 - Arun Persaud <arun@gmx.de>
|
|
|
|
- specfile:
|
|
* update copyright year
|
|
|
|
- update to version 0.29.3:
|
|
* Some C code for memoryviews was generated in a non-deterministic
|
|
order. Patch by Martijn van Steenbergen. (Github issue #2779)
|
|
* C89 compatibility was accidentally lost since 0.28. Patches by
|
|
gastineau and true-pasky. (Github issues #2778, #2801)
|
|
* A C compiler cast warning was resolved. Patch by Michael
|
|
Buesch. (Github issue #2774)
|
|
* An compilation failure with complex numbers under MSVC++ was
|
|
resolved. (Github issue #2797)
|
|
* Coverage reporting could fail when modules were moved around after
|
|
the build. Patch by Wenjun Si. (Github issue #2776)
|
|
|
|
- changes from version 0.29.2 :
|
|
* The code generated for deduplicated constants leaked some
|
|
references. (Github issue #2750)
|
|
* The declaration of sigismember() in libc.signal was
|
|
corrected. (Github issue #2756)
|
|
* Crashes in compiler and test runner were fixed. (Github issue
|
|
#2736, #2755)
|
|
* A C compiler warning about an invalid safety check was
|
|
resolved. (Github issue #2731)
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Dec 6 09:45:54 UTC 2018 - ncutler@suse.com
|
|
|
|
- revert to version 0.28.5 to restore support for subinterpreters
|
|
needed by Ceph - stopgap measure until issue can be addressed
|
|
upstream (bsc#1118611)
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Dec 1 18:24:55 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|
|
|
- update to version 0.29.1:
|
|
* Bugs fixed
|
|
+ Extensions compiled with MinGW-64 under Windows could
|
|
misinterpret integer objects larger than 15 bit and return
|
|
incorrect results. (Github issue #2670)
|
|
+ Cython no longer requires the source to be writable when copying
|
|
its data into a memory view slice. Patch by Andrey
|
|
Paramonov. (Github issue #2644)
|
|
+ Line tracing of try-statements generated invalid C code. (Github
|
|
issue #2274)
|
|
+ When using the warn.undeclared directive, Cython's own code
|
|
generated warnings that are now fixed. Patch by Nicolas
|
|
Pauss. (Github issue #2685)
|
|
+ Cython's memoryviews no longer require strides for setting the
|
|
shape field but only the PyBUF_ND flag to be set. Patch by John
|
|
Kirkham. (Github issue #2716)
|
|
+ Some C compiler warnings about unused memoryview code were
|
|
fixed. Patch by Ho Cheuk Ting. (Github issue #2588)
|
|
+ A C compiler warning about implicit signed/unsigned conversion
|
|
was fixed. (Github issue #2729)
|
|
+ Assignments to C++ references returned by operator[] could fail
|
|
to compile. (Github issue #2671)
|
|
+ The power operator and the support for NumPy math functions were
|
|
fixed in Pythran expressions. Patch by Serge Guelton. (Github
|
|
issues #2702, #2709)
|
|
+ Signatures with memory view arguments now show the expected type
|
|
when embedded in docstrings. Patch by Matthew Chan and Benjamin
|
|
Weigel. (Github issue #2634)
|
|
+ Some from ... cimport ... constructs were not correctly
|
|
considered when searching modified dependencies in cythonize()
|
|
to decide whether to recompile a module. Patch by Kryštof
|
|
Pilnáček. (Github issue #2638)
|
|
+ A struct field type in the cpython.array declarations was
|
|
corrected. Patch by John Kirkham. (Github issue #2712)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Oct 17 15:29:49 UTC 2018 - Arun Persaud <arun@gmx.de>
|
|
|
|
- update to version 0.29:
|
|
* Features added
|
|
+ PEP-489 multi-phase module initialisation has been enabled
|
|
again. Module reloads in other subinterpreters raise an
|
|
exception to prevent corruption of the static module state.
|
|
+ A set of mypy compatible PEP-484 declarations were added for
|
|
Cython's C data types to integrate with static analysers in
|
|
typed Python code. They are available in the Cython/Shadow.pyi
|
|
module and describe the types in the special cython module that
|
|
can be used for typing in Python code. Original patch by Julian
|
|
Gethmann. (Github issue #1965)
|
|
+ Memoryviews are supported in PEP-484/526 style type
|
|
declarations. (Github issue #2529)
|
|
+ @cython.nogil is supported as a C-function decorator in Python
|
|
code. (Github issue #2557)
|
|
+ Raising exceptions from nogil code will automatically acquire
|
|
the GIL, instead of requiring an explicit with gil block.
|
|
+ C++ functions can now be declared as potentially raising both
|
|
C++ and Python exceptions, so that Cython can handle both
|
|
correctly. (Github issue #2615)
|
|
+ cython.inline() supports a direct language_level keyword
|
|
argument that was previously only available via a directive.
|
|
+ A new language level name 3str was added that mostly corresponds
|
|
to language level 3, but keeps unprefixed string literals as
|
|
type 'str' in both Py2 and Py3, and the builtin 'str' type
|
|
unchanged. This will become the default in the next Cython
|
|
release and is meant to help user code a) transition more easily
|
|
to this new default and b) migrate to Python 3 source code
|
|
semantics without making support for Python 2.x difficult.
|
|
+ In CPython 3.6 and later, looking up globals in the module dict
|
|
is almost as fast as looking up C globals. (Github issue #2313)
|
|
+ For a Python subclass of an extension type, repeated method
|
|
calls to non-overridden cpdef methods can avoid the attribute
|
|
lookup in Py3.6+, which makes them 4x faster. (Github issue
|
|
#2313)
|
|
+ (In-)equality comparisons of objects to integer literals are
|
|
faster. (Github issue #2188)
|
|
+ Some internal and 1-argument method calls are faster.
|
|
+ Modules that cimport many external extension types from other
|
|
Cython modules execute less import requests during module
|
|
initialisation.
|
|
+ Constant tuples and slices are deduplicated and only created
|
|
once per module. (Github issue #2292)
|
|
+ The coverage plugin considers more C file extensions such as .cc
|
|
and .cxx. (Github issue #2266)
|
|
+ The cythonize command accepts compile time variable values (as
|
|
set by DEF) through the new -E option. Patch by Jerome
|
|
Kieffer. (Github issue #2315)
|
|
+ pyximport can import from namespace packages. Patch by Prakhar
|
|
Goel. (Github issue #2294)
|
|
+ Some missing numpy and CPython C-API declarations were
|
|
added. Patch by John Kirkham. (Github issues #2523, #2520,
|
|
#2537)
|
|
+ Declarations for the pylifecycle C-API functions were added in a
|
|
new .pxd file cpython.pylifecycle.
|
|
+ The Pythran support was updated to work with the latest Pythran
|
|
0.8.7. Original patch by Adrien Guinet. (Github issue #2600)
|
|
+ %a is included in the string formatting types that are optimised
|
|
into f-strings. In this case, it is also automatically mapped
|
|
to %r in Python 2.x.
|
|
+ New C macro CYTHON_HEX_VERSION to access Cython's version in the
|
|
same style as PY_HEX_VERSION.
|
|
+ Constants in libc.math are now declared as const to simplify
|
|
their handling.
|
|
+ An additional check_size clause was added to the ctypedef class
|
|
name specification to allow suppressing warnings when importing
|
|
modules with backwards-compatible PyTypeObject size
|
|
changes. Patch by Matti Picus. (Github issue #2627)
|
|
* Bugs fixed
|
|
+ The exception handling in generators and coroutines under
|
|
CPython 3.7 was adapted to the newly introduced exception
|
|
stack. Users of Cython 0.28 who want to support Python 3.7 are
|
|
encouraged to upgrade to 0.29 to avoid potentially incorrect
|
|
error reporting and tracebacks. (Github issue #1958)
|
|
+ Crash when importing a module under Stackless Python that was
|
|
built for CPython. Patch by Anselm Kruis. (Github issue #2534)
|
|
+ 2-value slicing of typed sequences failed if the start or stop
|
|
index was None. Patch by Christian Gibson. (Github issue #2508)
|
|
+ Multiplied string literals lost their factor when they are part
|
|
of another constant expression (e.g. 'x' * 10 + 'y' => 'xy').
|
|
+ String formatting with the '%' operator didn't call the special
|
|
__rmod__() method if the right side is a string subclass that
|
|
implements it. (Python issue 28598)
|
|
+ The directive language_level=3 did not apply to the first token
|
|
in the source file. (Github issue #2230)
|
|
+ Overriding cpdef methods did not work in Python subclasses with
|
|
slots. Note that this can have a performance impact on calls
|
|
from Cython code. (Github issue #1771)
|
|
+ Fix declarations of builtin or C types using strings in pure
|
|
python mode. (Github issue #2046)
|
|
+ Generator expressions and lambdas failed to compile in @cfunc
|
|
functions. (Github issue #459)
|
|
+ Global names with const types were not excluded from star-import
|
|
assignments which could lead to invalid C code. (Github issue
|
|
#2621)
|
|
+ Several internal function signatures were fixed that lead to
|
|
warnings in gcc-8. (Github issue #2363)
|
|
+ The numpy helper functions set_array_base() and get_array_base()
|
|
were adapted to the current numpy C-API recommendations. Patch
|
|
by Matti Picus. (Github issue #2528)
|
|
+ Some NumPy related code was updated to avoid deprecated API
|
|
usage. Original patch by jbrockmendel. (Github issue #2559)
|
|
+ Several C++ STL declarations were extended and corrected. Patch
|
|
by Valentin Valls. (Github issue #2207)
|
|
+ C lines of the module init function were unconditionally not
|
|
reported in exception stack traces. Patch by Jeroen
|
|
Demeyer. (Github issue #2492)
|
|
+ When PEP-489 support is enabled, reloading the module overwrote
|
|
any static module state. It now raises an exception instead,
|
|
given that reloading is not actually supported.
|
|
+ Object-returning, C++ exception throwing functions were not
|
|
checking that the return value was non-null. Original patch by
|
|
Matt Wozniski (Github Issue #2603)
|
|
+ The source file encoding detection could get confused if the
|
|
c_string_encoding directive appeared within the first two
|
|
lines. (Github issue #2632)
|
|
+ Cython generated modules no longer emit a warning during import
|
|
when the size of the NumPy array type is larger than what was
|
|
found at compile time. Instead, this is assumed to be a
|
|
backwards compatible change on NumPy side.
|
|
* Other changes
|
|
+ Cython now emits a warning when no language_level (2, 3 or
|
|
'3str') is set explicitly, neither as a cythonize() option nor
|
|
as a compiler directive. This is meant to prepare the transition
|
|
of the default language level from currently Py2 to Py3, since
|
|
that is what most new users will expect these days. The future
|
|
default will, however, not enforce unicode literals, because
|
|
this has proven a major obstacle in the support for both Python
|
|
2.x and 3.x. The next major release is intended to make this
|
|
change, so that it will parse all code that does not request a
|
|
specific language level as Python 3 code, but with str
|
|
literals. The language level 2 will continue to be supported for
|
|
an indefinite time.
|
|
+ The documentation was restructured, cleaned up and examples are
|
|
now tested. The NumPy tutorial was also rewritten to simplify
|
|
the running example. Contributed by Gabriel de
|
|
Marmiesse. (Github issue #2245)
|
|
+ Cython compiles less of its own modules at build time to reduce
|
|
the installed package size to about half of its previous
|
|
size. This makes the compiler slightly slower, by about 5-7%.
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Aug 11 16:12:10 UTC 2018 - arun@gmx.de
|
|
|
|
- update to version 0.28.5:
|
|
* The discouraged usage of GCC's attribute optimize("Os") was
|
|
replaced by the similar attribute cold to reduce the code impact
|
|
of the module init functions. (Github issue #2494)
|
|
* A reference leak in Py2.x was fixed when comparing str to unicode
|
|
for equality.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jul 12 03:33:30 UTC 2018 - arun@gmx.de
|
|
|
|
- update to version 0.28.4:
|
|
* Bugs fixed
|
|
+ Reallowing tp_clear() in a subtype of an @no_gc_clear extension
|
|
type generated an invalid C function call to the (non-existent)
|
|
base type implementation. (Github issue #2309)
|
|
+ Exception catching based on a non-literal (runtime) tuple could
|
|
fail to match the exception. (Github issue #2425)
|
|
+ Compile fix for CPython 3.7.0a2. (Github issue #2477)
|
|
|
|
-------------------------------------------------------------------
|
|
Sun May 27 16:30:35 UTC 2018 - arun@gmx.de
|
|
|
|
- update to version 0.28.3:
|
|
* Set iteration was broken in non-CPython since 0.28.
|
|
* UnicodeEncodeError in Py2 when %s formatting is optimised for
|
|
unicode strings. (Github issue #2276)
|
|
* Work around a crash bug in g++ 4.4.x by disabling the size
|
|
reduction setting of the module init function in this
|
|
version. (Github issue #2235)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 18 02:15:50 UTC 2018 - toddrme2178@gmail.com
|
|
|
|
- Version update to 0.28.2
|
|
+ Features added
|
|
* ``abs()`` is faster for Python long objects.
|
|
* The C++11 methods ``front()`` and ``end()`` were added to the declaration of
|
|
``libcpp.string``. Patch by Alex Huszagh. (Github issue #2123)
|
|
* The C++11 methods ``reserve()`` and ``bucket_count()`` are declared for
|
|
``std::unordered_map``. Patch by Valentin Valls. (Github issue #2168)
|
|
+ Bugs fixed
|
|
* The copy of a read-only memoryview was considered read-only as well, whereas
|
|
a common reason to copy a read-only view is to make it writable. The result
|
|
of the copying is now a writable buffer by default.
|
|
(Github issue #2134)
|
|
* The ``switch`` statement generation failed to apply recursively to the body of
|
|
converted if-statements.
|
|
* ``NULL`` was sometimes rejected as exception return value when the returned
|
|
type is a fused pointer type.
|
|
Patch by Callie LeFave. (Github issue #2177)
|
|
* Fixed compatibility with PyPy 5.11.
|
|
Patch by Matti Picus. (Github issue #2165)
|
|
+ Other changes
|
|
* The NumPy tutorial was rewritten to use memoryviews instead of the older
|
|
buffer declaration syntax.
|
|
Contributed by Gabriel de Marmiesse. (Github issue #2162)
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Mar 19 13:23:58 UTC 2018 - tchvatal@suse.com
|
|
|
|
- Version update to 0.28.1:
|
|
* PyFrozenSet_New() was accidentally used in PyPy where it is lacking
|
|
from the C-API.
|
|
* Assignment between some C++ templated types were incorrectly rejected
|
|
when the templates mix const with ctypedef. (Github issue #2148)
|
|
* Undeclared C++ no-args constructors in subclasses could make the
|
|
compilation fail if the base class constructor was declared without
|
|
nogil. (Github issue #2157)
|
|
* Bytes %-formatting inferred basestring (bytes or unicode) as result type
|
|
in some cases where bytes would have been safe to infer. (Github issue #2153)
|
|
* None was accidentally disallowed as typed return value of dict.pop().
|
|
|
|
-------------------------------------------------------------------
|
|
Sat Mar 17 00:30:56 UTC 2018 - arun@gmx.de
|
|
|
|
- update to version 0.28:
|
|
* Features added
|
|
+ Cdef classes can now multiply inherit from ordinary Python
|
|
classes. (The primary base must still be a c class, possibly
|
|
object, and the other bases must not be cdef classes.)
|
|
+ Type inference is now supported for Pythran compiled NumPy
|
|
expressions. Patch by Nils Braun. (Github issue #1954)
|
|
+ The const modifier can be applied to memoryview declarations to
|
|
allow read-only buffers as input. (Github issues #1605, #1869)
|
|
+ C code in the docstring of a cdef extern block is copied
|
|
verbatimly into the generated file. Patch by Jeroen
|
|
Demeyer. (Github issue #1915)
|
|
+ When compiling with gcc, the module init function is now tuned
|
|
for small code size instead of whatever compile flags were
|
|
provided externally. Cython now also disables some code
|
|
intensive optimisations in that function to further reduce the
|
|
code size. (Github issue #2102)
|
|
+ Decorating an async coroutine with @cython.iterable_coroutine
|
|
changes its type at compile time to make it iterable. While this
|
|
is not strictly in line with PEP-492, it improves the
|
|
interoperability with old-style coroutines that use yield from
|
|
instead of await.
|
|
+ The IPython magic has preliminary support for
|
|
JupyterLab. (Github issue #1775)
|
|
+ The new TSS C-API in CPython 3.7 is supported and has been
|
|
backported. Patch by Naotoshi Seo. (Github issue #1932)
|
|
+ Cython knows the new Py_tss_t type defined in PEP-539 and
|
|
automatically initialises variables declared with that type to
|
|
Py_tss_NEEDS_INIT, a value which cannot be used outside of
|
|
static assignments.
|
|
+ The set methods .remove() and .discard() are optimised. Patch by
|
|
Antoine Pitrou. (Github issue #2042)
|
|
+ dict.pop() is optimised. Original patch by Antoine
|
|
Pitrou. (Github issue #2047)
|
|
+ Iteration over sets and frozensets is optimised. (Github issue
|
|
#2048)
|
|
+ Safe integer loops (< range(2^30)) are automatically optimised
|
|
into C loops.
|
|
+ alist.extend([a,b,c]) is optimised into sequential list.append()
|
|
calls for short literal sequences.
|
|
+ Calls to builtin methods that are not specifically optimised
|
|
into C-API calls now use a cache that avoids repeated lookups of
|
|
the underlying C function. (Github issue #2054)
|
|
+ Single argument function calls can avoid the argument tuple
|
|
creation in some cases.
|
|
+ Some redundant extension type checks are avoided.
|
|
+ Formatting C enum values in f-strings is faster, as well as some
|
|
other special cases.
|
|
+ String formatting with the '%' operator is optimised into
|
|
f-strings in simple cases.
|
|
+ Subscripting (item access) is faster in some cases.
|
|
+ Some bytearray operations have been optimised similar to bytes.
|
|
+ Some PEP-484/526 container type declarations are now considered
|
|
for loop optimisations.
|
|
+ Indexing into memoryview slices with view[i][j] is now optimised
|
|
into view[i, j].
|
|
+ Python compatible cython.* types can now be mixed with type
|
|
declarations in Cython syntax.
|
|
+ Name lookups in the module and in classes are faster.
|
|
+ Python attribute lookups on extension types without instance
|
|
dict are faster.
|
|
+ Some missing signals were added to libc/signal.pxd. Patch by
|
|
Jeroen Demeyer. (Github issue #1914)
|
|
+ The warning about repeated extern declarations is now visible by
|
|
default. (Github issue #1874)
|
|
+ The exception handling of the function types used by CPython's
|
|
type slot functions was corrected to match the de-facto standard
|
|
behaviour, so that code that uses them directly benefits from
|
|
automatic and correct exception propagation. Patch by Jeroen
|
|
Demeyer. (Github issue #1980)
|
|
+ Defining the macro CYTHON_NO_PYINIT_EXPORT will prevent the
|
|
module init function from being exported as symbol, e.g. when
|
|
linking modules statically in an embedding setup. Patch by
|
|
AraHaan. (Github issue #1944)
|
|
* Bugs fixed
|
|
+ If a module name is explicitly provided for an Extension() that
|
|
is compiled via cythonize(), it was previously ignored and
|
|
replaced by the source file name. It can now be used to override
|
|
the target module name, e.g. for compiling prefixed accelerator
|
|
modules from Python files. (Github issue #2038)
|
|
+ The arguments of the num_threads parameter of parallel sections
|
|
were not sufficiently validated and could lead to invalid C
|
|
code. (Github issue #1957)
|
|
+ Catching exceptions with a non-trivial exception pattern could
|
|
call into CPython with a live exception set. This triggered
|
|
incorrect behaviour and crashes, especially in CPython 3.7.
|
|
+ The signature of the special __richcmp__() method was corrected
|
|
to recognise the type of the first argument as self. It was
|
|
previously treated as plain object, but CPython actually
|
|
guarantees that it always has the correct type. Note: this can
|
|
change the semantics of user code that previously relied on self
|
|
being untyped.
|
|
+ Some Python 3 exceptions were not recognised as builtins when
|
|
running Cython under Python 2.
|
|
+ Some async helper functions were not defined in the generated C
|
|
code when compiling simple async code. (Github issue #2075)
|
|
+ Line tracing did not include generators and coroutines. (Github
|
|
issue #1949)
|
|
+ C++ declarations for unordered_map were corrected. Patch by
|
|
Michael Schatzow. (Github issue #1484)
|
|
+ Iterator declarations in C++ deque and vector were
|
|
corrected. Patch by Alex Huszagh. (Github issue #1870)
|
|
+ The const modifiers in the C++ string declarations were
|
|
corrected, together with the coercion behaviour of string
|
|
literals into C++ strings. (Github issue #2132)
|
|
+ Some declaration types in libc.limits were corrected. Patch by
|
|
Jeroen Demeyer. (Github issue #2016)
|
|
+ @cython.final was not accepted on Python classes with an
|
|
@cython.cclass decorator. (Github issue #2040)
|
|
+ Cython no longer creates useless and incorrect PyInstanceMethod
|
|
wrappers for methods in Python 3. Patch by Jeroen
|
|
Demeyer. (Github issue #2105)
|
|
+ The builtin bytearray type could not be used as base type of
|
|
cdef classes. (Github issue #2106)
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Feb 20 11:25:47 UTC 2018 - tchvatal@suse.com
|
|
|
|
- Export fno-strict-aliasing to CFLAGS
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Jan 29 00:23:03 UTC 2018 - mimi.vx@gmail.com
|
|
|
|
- update to 0.27.3
|
|
- big list of changes since 0.26.1 please see CHANGES.txt
|
|
- Also fixes bsc#1062237
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Oct 2 22:02:54 UTC 2017 - jengelh@inai.de
|
|
|
|
- Ensure neutrality of description.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Dec 19 17:49:22 UTC 2016 - jmatejek@suse.com
|
|
|
|
- update for multipython build
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Oct 28 12:40:24 UTC 2016 - toddrme2178@gmail.com
|
|
|
|
- Update to version 0.25.1
|
|
+ Bugs fixed
|
|
* Fixes a bug with ``isinstance(o, Exception)`` (Github issue #1496).
|
|
* Fixes bug with ``cython.view.array`` missing utility code in some cases
|
|
(Github issue #1502).
|
|
+ Other changes
|
|
* The distutils extension ``Cython.Distutils.build_ext`` has been reverted,
|
|
temporarily, to be ``old_build_ext`` to give projects time to migrate.
|
|
The new build_ext is available as ``new_build_ext``.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Oct 26 14:55:49 UTC 2016 - toddrme2178@gmail.com
|
|
|
|
- Fix source URL.
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Oct 26 01:36:12 UTC 2016 - toddrme2178@gmail.com
|
|
|
|
- update to version 0.25:
|
|
+ Features added
|
|
* def/cpdef methods of cdef classes benefit from Cython's internal function
|
|
implementation, which enables introspection and line profiling for them.
|
|
Implementation sponsored by Turbostream (www.turbostream-cfd.com).
|
|
* The distutils extension ``Cython.Distutils.build_ext`` has now been updated
|
|
to use cythonize which properly handles dependencies. The old extension can
|
|
still be found in ``Cython.Distutils.old_build_ext`` and is now deprecated.
|
|
* Calls to Python functions are faster, following the recent "FastCall"
|
|
optimisations that Victor Stinner implemented for CPython 3.6.
|
|
See https://bugs.python.org/issue27128 and related issues.
|
|
* The new METH_FASTCALL calling convention for PyCFunctions is supported
|
|
in CPython 3.6. See https://bugs.python.org/issue27810
|
|
* C++ classes can now have typedef members. STL containers updated with
|
|
value_type.
|
|
* Support for bazel using a the pyx_library rule in //Tools:rules.bzl.
|
|
* Initial support for using Cython modules in Pyston. Patch by Daetalus.
|
|
* Dynamic Python attributes are allowed on cdef classes if an attribute
|
|
``cdef dict __dict__`` is declared in the class. Patch by empyrical.
|
|
* Cython implemented C++ classes can make direct calls to base class methods.
|
|
Patch by empyrical.
|
|
* New directive ``cython.no_gc`` to fully disable GC for a cdef class.
|
|
Patch by Claudio Freire.
|
|
* Buffer variables are no longer excluded from ``locals()``.
|
|
Patch by da-woods.
|
|
* Building f-strings is faster, especially when formatting C integers.
|
|
* for-loop iteration over "std::string".
|
|
* ``libc/math.pxd`` provides ``e`` and ``pi`` as alias constants to simplify
|
|
usage as a drop-in replacement for Python's math module.
|
|
* Speed up cython.inline().
|
|
* Binary lshift operations with small constant Python integers are faster.
|
|
* Some integer operations on Python long objects are faster in Python 2.7.
|
|
* Support for the C++ ``typeid`` operator.
|
|
+ Significant Bugs fixed
|
|
* Division of complex numbers avoids overflow by using Smith's method.
|
|
* Some function signatures in ``libc.math`` and ``numpy.pxd`` were incorrect.
|
|
Pach by Michael Seifert.
|
|
+ Other changes
|
|
* The "%%cython" IPython/jupyter magic now defaults to the language level of
|
|
the current jupyter kernel. The language level can be set explicitly with
|
|
"%%cython -2" or "%%cython -3".
|
|
- update to version 0.24.1:
|
|
* IPython cell magic was lacking a good way to enable Python 3 code
|
|
semantics. It can now be used as "%%cython -3".
|
|
* Follow a recent change in PEP 492 and CPython 3.5.1 that now
|
|
requires the __aiter__() method of asynchronous iterators to be a
|
|
simple def method instead of an async def method.
|
|
* Coroutines and generators were lacking the __module__ special
|
|
attribute.
|
|
* C++ std::complex values failed to auto-convert from and to Python
|
|
complex objects.
|
|
* Namespaced C++ types could not be used as memory view types due to
|
|
lack of name mangling. Patch by Ivan Smirnov.
|
|
* Assignments between identical C++ types that were declared with
|
|
differently typedefed template types could fail.
|
|
* Rebuilds could fail to evaluate dependency timestamps in C++
|
|
mode. Patch by Ian Henriksen.
|
|
* Macros defined in the distutils compiler option do not require
|
|
values anymore. Patch by Ian Henriksen.
|
|
* Minor fixes for MSVC, Cygwin and PyPy.
|
|
- specfile:
|
|
* changed to https for source url
|
|
* updated source url to files.pythonhosted.org
|
|
- update to version 0.24:
|
|
* Features added
|
|
+ PEP 498: Literal String Formatting (f-strings). Original patch
|
|
by Jelle Zijlstra. https://www.python.org/dev/peps/pep-0498/
|
|
+ PEP 515: Underscores as visual separators in number
|
|
literals. https://www.python.org/dev/peps/pep-0515/
|
|
+ Parser was adapted to some minor syntax changes in Py3.6,
|
|
e.g. https://bugs.python.org/issue9232
|
|
+ The embedded C code comments that show the original source code
|
|
can be discarded with the new directive
|
|
emit_code_comments=False.
|
|
+ Cpdef enums are now first-class iterable, callable types in
|
|
Python.
|
|
+ Ctuples can now be declared in pure Python code.
|
|
+ Posix declarations for DLL loading and stdio extensions were
|
|
added. Patch by Lars Buitinck.
|
|
+ The Py2-only builtins unicode(), xrange(), reduce() and long are
|
|
now also available in compile time DEF expressions when
|
|
compiling with Py3.
|
|
+ Exception type tests have slightly lower overhead. This fixes
|
|
ticket 868.
|
|
+ @property syntax fully supported in cdef classes, old syntax
|
|
deprecated.
|
|
+ C++ classes can now be declared with default template
|
|
parameters.
|
|
* Bugs fixed
|
|
+ C++ exceptions raised by overloaded C++ operators were not
|
|
always handled. Patch by Ian Henriksen.
|
|
+ C string literals were previously always stored as non-const
|
|
global variables in the module. They are now stored as global
|
|
constants when possible, and otherwise as non-const C string
|
|
literals in the generated code that uses them. This improves
|
|
compatibility with strict C compiler options and prevents
|
|
non-const strings literals with the same content from being
|
|
incorrectly merged.
|
|
+ Compile time evaluated str expressions (DEF) now behave in a
|
|
more useful way by turning into Unicode strings when compiling
|
|
under Python 3. This allows using them as intermediate values in
|
|
expressions. Previously, they always evaluated to bytes objects.
|
|
+ isinf() declarations in libc/math.pxd and numpy/math.pxd now
|
|
reflect the actual tristate int return value instead of using
|
|
bint.
|
|
+ Literal assignments to ctuples avoid Python tuple round-trips in
|
|
some more corner cases.
|
|
+ Iteration over dict(...).items() failed to get optimised when
|
|
dict arguments included keyword arguments.
|
|
+ cProfile now correctly profiles cpdef functions and methods.
|
|
- update to version 0.23.5:
|
|
* Compile errors and warnings in integer type conversion code. This
|
|
fixes ticket 877. Patches by Christian Neukirchen, Nikolaus Rath,
|
|
Ian Henriksen.
|
|
* Reference leak when "*args" argument was reassigned in closures.
|
|
* Truth-testing Unicode strings could waste time and memory in
|
|
Py3.3+.
|
|
* Return values of async functions could be ignored and replaced by
|
|
None.
|
|
* Compiler crash in CPython 3.6.
|
|
* Fix prange() to behave identically to range(). The end condition
|
|
was miscalculated when the range was not exactly divisible by the
|
|
step.
|
|
* Optimised all(genexpr)/any(genexpr) calls could warn about unused
|
|
code. This fixes ticket 876.
|
|
- Remove unneeded python-Cython-c++11.patch
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Feb 1 10:30:06 UTC 2016 - toddrme2178@gmail.com
|
|
|
|
- update to version 0.23.4:
|
|
* Memory leak when calling Python functions in PyPy.
|
|
* Compilation problem with MSVC in C99-ish mode.
|
|
* Warning about unused values in a helper macro.
|
|
- update to version 0.23.3:
|
|
* Invalid C code for some builtin methods. This fixes ticket 856
|
|
again.
|
|
* Incorrect C code in helper functions for PyLong conversion and
|
|
string decoding. This fixes ticket 863, ticket 864 and ticket
|
|
865. Original patch by Nikolaus Rath.
|
|
* Large folded or inserted integer constants could use too small C
|
|
integer types and thus trigger a value wrap-around.
|
|
* The coroutine and generator types of Cython now also register
|
|
directly with the Coroutine and Generator ABCs in the
|
|
backports_abc module if it can be imported. This fixes ticket 870.
|
|
- update to version 0.23.2:
|
|
* Compiler crash when analysing some optimised expressions.
|
|
* Coverage plugin was adapted to coverage.py 4.0 beta 2.
|
|
* C++ destructor calls could fail when '&' operator is overwritten.
|
|
* Incorrect C literal generation for large integers in compile-time
|
|
evaluated DEF expressions and constant folded expressions.
|
|
* Byte string constants could end up as Unicode strings when
|
|
originating from compile-time evaluated DEF expressions.
|
|
* Invalid C code when caching known builtin methods. This fixes
|
|
ticket 860.
|
|
* ino_t in posix.types was not declared as unsigned.
|
|
* Declarations in libcpp/memory.pxd were missing operator!(). Patch
|
|
by Leo Razoumov.
|
|
* Static cdef methods can now be declared in .pxd files.
|
|
- update to version 0.23.1:
|
|
* Invalid C code for generators. This fixes ticket 858.
|
|
* Invalid C code for some builtin methods. This fixes ticket 856.
|
|
* Invalid C code for unused local buffer variables. This fixes
|
|
ticket 154.
|
|
* Test failures on 32bit systems. This fixes ticket 857.
|
|
* Code that uses "from xyz import *" and global C struct/union/array
|
|
variables could fail to compile due to missing helper
|
|
functions. This fixes ticket 851.
|
|
* Misnamed PEP 492 coroutine property cr_yieldfrom renamed to
|
|
cr_await to match CPython.
|
|
* Missing deallocation code for C++ object attributes in certain
|
|
extension class hierarchies.
|
|
* Crash when async coroutine was not awaited.
|
|
* Compiler crash on yield in signature annotations and default
|
|
argument values. Both are forbidden now.
|
|
* Compiler crash on certain constructs in finally clauses.
|
|
* Cython failed to build when CPython's pgen is installed.
|
|
- update to version 0.23:
|
|
* Features added
|
|
+ PEP 492 (async/await) was implemented. See
|
|
https://www.python.org/dev/peps/pep-0492/
|
|
+ PEP 448 (Additional Unpacking Generalizations) was
|
|
implemented. See https://www.python.org/dev/peps/pep-0448/
|
|
+ Support for coverage.py 4.0+ can be enabled by adding the plugin
|
|
"Cython.Coverage" to the ".coveragerc" config file.
|
|
+ Annotated HTML source pages can integrate (XML) coverage
|
|
reports.
|
|
+ Tracing is supported in nogil functions/sections and module init
|
|
code.
|
|
+ When generators are used in a Cython module and the module
|
|
imports the modules "inspect" and/or "asyncio", Cython enables
|
|
interoperability by patching these modules during the import to
|
|
recognise Cython's internal generator and coroutine types. This
|
|
can be disabled by C compiling the module with "-D
|
|
CYTHON_PATCH_ASYNCIO=0" or "-D CYTHON_PATCH_INSPECT=0"
|
|
+ When generators or coroutines are used in a Cython module, their
|
|
types are registered with the Generator and Coroutine ABCs in
|
|
the collections or collections.abc stdlib module at import time
|
|
to enable interoperability with code that needs to detect and
|
|
process Python generators/coroutines. These ABCs were added in
|
|
CPython 3.5 and are available for older Python versions through
|
|
the backports_abc module on PyPI. See
|
|
https://bugs.python.org/issue24018
|
|
+ Adding/subtracting/dividing/modulus and equality comparisons
|
|
with constant Python floats and small integers are faster.
|
|
+ Binary and/or/xor/rshift operations with small constant Python
|
|
integers are faster.
|
|
+ When called on generator expressions, the builtins all(), any(),
|
|
dict(), list(), set(), sorted() and unicode.join() avoid the
|
|
generator iteration overhead by inlining a part of their
|
|
functionality into the for-loop.
|
|
+ Keyword argument dicts are no longer copied on function entry
|
|
when they are not being used or only passed through to other
|
|
function calls (e.g. in wrapper functions).
|
|
+ The PyTypeObject declaration in cpython.object was extended.
|
|
+ The builtin type type is now declared as PyTypeObject in source,
|
|
allowing for extern functions taking type parameters to have the
|
|
correct C signatures. Note that this might break code that uses
|
|
type just for passing around Python types in typed
|
|
variables. Removing the type declaration provides a backwards
|
|
compatible fix.
|
|
+ wraparound() and boundscheck() are available as no-ops in pure
|
|
Python mode.
|
|
+ Const iterators were added to the provided C++ STL declarations.
|
|
+ Smart pointers were added to the provided C++ STL
|
|
declarations. Patch by Daniel Filonik.
|
|
+ NULL is allowed as default argument when embedding
|
|
signatures. This fixes ticket 843.
|
|
+ When compiling with --embed, the internal module name is changed
|
|
to __main__ to allow arbitrary program names, including those
|
|
that would be invalid for modules. Note that this prevents reuse
|
|
of the generated C code as an importable module.
|
|
+ External C++ classes that overload the assignment operator can
|
|
be used. Patch by Ian Henriksen.
|
|
+ Support operator bool() for C++ classes so they can be used in
|
|
if statements.
|
|
* Bugs fixed
|
|
+ Calling "yield from" from Python on a Cython generator that
|
|
returned a value triggered a crash in CPython. This is now being
|
|
worked around. See https://bugs.python.org/issue23996
|
|
+ Language level 3 did not enable true division (a.k.a. float
|
|
division) for integer operands.
|
|
+ Functions with fused argument types that included a generic
|
|
'object' fallback could end up using that fallback also for
|
|
other explicitly listed object types.
|
|
+ Relative cimports could accidentally fall back to trying an
|
|
absolute cimport on failure.
|
|
+ The result of calling a C struct constructor no longer requires
|
|
an intermediate assignment when coercing to a Python dict.
|
|
+ C++ exception declarations with mapping functions could fail to
|
|
compile when pre-declared in .pxd files.
|
|
+ cpdef void methods are now permitted.
|
|
+ abs(cint) could fail to compile in MSVC and used sub-optimal
|
|
code in C++. Patch by David Vierra, original patch by Michael
|
|
Enßlin.
|
|
+ Buffer index calculations using index variables with small C
|
|
integer types could overflow for large buffer sizes. Original
|
|
patch by David Vierra.
|
|
+ C unions use a saner way to coerce from and to Python dicts.
|
|
+ When compiling a module foo.pyx, the directories in sys.path are
|
|
no longer searched when looking for foo.pxd. Patch by Jeroen
|
|
Demeyer.
|
|
+ Memory leaks in the embedding main function were fixed. Original
|
|
patch by Michael Enßlin.
|
|
+ Some complex Python expressions could fail to compile inside of
|
|
finally clauses.
|
|
+ Unprefixed 'str' literals were not supported as C varargs
|
|
arguments.
|
|
+ Fixed type errors in conversion enum types to/from Python. Note
|
|
that this imposes stricter correctness requirements on enum
|
|
declarations.
|
|
* Other changes
|
|
+ Changed mangling scheme in header files generated by cdef api
|
|
declarations.
|
|
+ Installation under CPython 3.3+ no longer requires a pass of the
|
|
2to3 tool. This also makes it possible to run Cython in Python
|
|
3.3+ from a source checkout without installing it first. Patch
|
|
by Petr Viktorin.
|
|
+ jedi-typer.py (in Tools/) was extended and renamed to
|
|
jedityper.py (to make it importable) and now works with and
|
|
requires Jedi 0.9. Patch by Tzer-jen Wei.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jan 28 12:09:56 UTC 2016 - rguenther@suse.com
|
|
|
|
- Add python-Cython-c++11.patch to fix complex math testcase compile
|
|
with GCC 6 defaulting to C++14. (bnc#963974)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Aug 26 17:11:12 UTC 2015 - ted.nokonechny@uregina.ca
|
|
|
|
- "mangle" tests/run/cpdef_extern_func.pyx to allow package to build
|
|
for SLE_11_SP3 and SLE_11_SP4.
|
|
* cpdef const char* strchr(const char *haystack, int needle);
|
|
does not seem to match any from /usr/include/string.h
|
|
and fails for cpp tests via python runtests.py -vv
|
|
* cpdef_extern_func.pyx was not present in 0.21.1
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Aug 19 15:23:19 UTC 2015 - bwiedemann@suse.com
|
|
|
|
- Require python-devel for Python.h (bnc#942385)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Jul 29 11:52:24 UTC 2015 - toddrme2178@gmail.com
|
|
|
|
- Remove unneeded numpy dependency to avoid dependency loop.
|
|
- create dummy alternative to avoid 13.1's post-build-check bug
|
|
- specfile:
|
|
* fixing update_alternatives
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Jul 10 21:59:38 UTC 2015 - termim@gmail.com
|
|
|
|
- Update to 0.22.1:
|
|
Bugs fixed
|
|
* Crash when returning values on generator termination.
|
|
* In some cases, exceptions raised during internal isinstance()
|
|
checks were not propagated.
|
|
* Runtime reported file paths of source files (e.g for profiling
|
|
and tracing) are now relative to the build root directory instead
|
|
of the main source file.
|
|
* Tracing exception handling code could enter the trace function with an
|
|
active exception set.
|
|
* The internal generator function type was not shared across modules.
|
|
* Comparisons of (inferred) ctuples failed to compile.
|
|
* Closures inside of cdef functions returning ``void`` failed to compile.
|
|
* Using ``const`` C++ references in intermediate parts of longer
|
|
expressions could fail to compile.
|
|
* C++ exception declarations with mapping functions could fail to compile
|
|
when pre-declared in .pxd files.
|
|
* C++ compilation could fail with an ambiguity error in recent MacOS-X
|
|
Xcode versions.
|
|
* C compilation could fail in pypy3.
|
|
* Fixed a memory leak in the compiler when compiling multiple modules.
|
|
* When compiling multiple modules, external library dependencies could
|
|
leak into later compiler runs. Fix by Jeroen Demeyer. This fixes
|
|
ticket 845.
|
|
- removed patch fix-32bit.patch as applied upstream
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 22 14:05:18 UTC 2015 - mcihar@suse.cz
|
|
|
|
- Use Source URL from cython.org
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 22 11:52:03 UTC 2015 - mcihar@suse.cz
|
|
|
|
- Add python-numpy as BuildRequires to have more complete test coverage
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 22 11:01:47 UTC 2015 - mcihar@suse.cz
|
|
|
|
- Fix doctests in 32-bit environment (fix-32bit.patch)
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 22 09:10:30 UTC 2015 - mcihar@suse.cz
|
|
|
|
- Update to 0.22:
|
|
Features added
|
|
* C functions can coerce to Python functions, which allows passing them
|
|
around as callable objects.
|
|
* C arrays can be assigned by value and auto-coerce from Python iterables
|
|
and to Python lists (and tuples).
|
|
* Extern C functions can now be declared as cpdef to export them to
|
|
the module's Python namespace. Extern C functions in pxd files export
|
|
their values to their own module, iff it exists.
|
|
* Anonymous C tuple types can be declared as (ctype1, ctype2, ...).
|
|
* PEP 479: turn accidental StopIteration exceptions that exit generators
|
|
into a RuntimeError, activated with future import "generator_stop".
|
|
See http://legacy.python.org/dev/peps/pep-0479/
|
|
* Looping over ``reversed(range())`` is optimised in the same way as
|
|
``range()``. Patch by Favian Contreras.
|
|
Bugs fixed
|
|
* Mismatching 'except' declarations on signatures in .pxd and .pyx files failed
|
|
to produce a compile error.
|
|
* Failure to find any files for the path pattern(s) passed into ``cythonize()``
|
|
is now an error to more easily detect accidental typos.
|
|
* The ``logaddexp`` family of functions in ``numpy.math`` now has correct
|
|
declarations.
|
|
* In Py2.6/7 and Py3.2, simple Cython memory views could accidentally be
|
|
interpreted as non-contiguous by CPython, which could trigger a CPython
|
|
bug when copying data from them, thus leading to data corruption.
|
|
See CPython issues 12834 and 23349.
|
|
Other changes
|
|
* Preliminary support for defining the Cython language with a formal grammar.
|
|
To try parsing your files against this grammar, use the --formal_grammar directive.
|
|
Experimental.
|
|
* ``_`` is no longer considered a cacheable builtin as it could interfere with
|
|
gettext.
|
|
* Cythonize-computed metadata now cached in the generated C files.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Feb 5 11:35:45 UTC 2015 - hpj@urpla.net
|
|
|
|
- fix update-alternatives handling in a distribution backwards compatible way
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Jan 9 15:20:31 UTC 2015 - dimstar@opensuse.org
|
|
|
|
- Re-enable test-suite.
|
|
- Add gcc-c++ BuildRequires: needed for the test-suite to be able
|
|
to pass.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jan 8 12:22:10 UTC 2015 - dimstar@opensuse.org
|
|
|
|
- Fix usage of update-alternatives.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Dec 18 10:48:28 UTC 2014 - p.drouand@gmail.com
|
|
|
|
- Improve update-alternatives.
|
|
- Remove Cython-fix-version-detection.patch
|
|
(got fixed upstream)
|
|
- update to version 0.21.1:
|
|
* Features added
|
|
- New cythonize option -a to generate the annotated HTML source view.
|
|
- Missing C-API declarations in cpython.unicode were added.
|
|
- Passing language='c++' into cythonize() globally enables C++ mode
|
|
for all modules that were not passed as Extension objects
|
|
(i.e. only source files and file patterns).
|
|
- Py_hash_t is a known type (used in CPython for hash values).
|
|
- PySlice_*() C-API functions are available from the cpython.slice module.
|
|
- Allow arrays of C++ classes.
|
|
* Bugs fixed
|
|
- Reference leak for non-simple Python expressions in boolean and/or expressions.
|
|
- To fix a name collision and to reflect availability on host
|
|
platforms, standard C declarations [ clock(), time(), struct tm
|
|
and tm* functions ] were moved from posix/time.pxd to a new
|
|
libc/time.pxd. Patch by Charles Blake.
|
|
- Rerunning unmodified modules in IPython's cython support
|
|
failed. Patch by Matthias Bussonier.
|
|
- Casting C++ std::string to Python byte strings failed when
|
|
auto-decoding was enabled.
|
|
- Fatal exceptions in global module init code could lead to
|
|
crashes if the already created module was used later on
|
|
(e.g. through a stale reference in sys.modules or elsewhere).
|
|
- cythonize.py script was not installed on MS-Windows.
|
|
* Other changes
|
|
- Compilation no longer fails hard when unknown compilation
|
|
options are passed. Instead, it raises a warning and ignores
|
|
them (as it did silently before 0.21). This will be changed back
|
|
to an error in a future release.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Nov 09 22:57:00 UTC 2014 - Led <ledest@gmail.com>
|
|
|
|
- fix bashisms in pre script
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Sep 12 10:52:18 UTC 2014 - toddrme2178@gmail.com
|
|
|
|
- Add Cython-fix-version-detection.patch
|
|
This is a patch from upstream that restores version information
|
|
whose removal is preventing several packages from correctly
|
|
detecting Cython's presence. It is already merged upstream and
|
|
so should be in the next release.
|
|
Note that despite what upstream says,
|
|
python-tables/python3-tables is NOT the only package affected by
|
|
this, which is why the patch is going here instead of
|
|
python-tables/python3-tables.
|
|
python-bcolz/python3-bcolz is an example of another package
|
|
affected.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Sep 11 09:30:20 UTC 2014 - toddrme2178@gmail.com
|
|
|
|
- Update to 0.21 (2014-09-10)
|
|
* Features added
|
|
* C (cdef) functions allow inner Python functions.
|
|
* Enums can now be declared as cpdef to export their values to
|
|
the module's Python namespace. Cpdef enums in pxd files export
|
|
their values to their own module, iff it exists.
|
|
* Allow @staticmethod decorator to declare static cdef methods.
|
|
This is especially useful for declaring "constructors" for
|
|
cdef classes that can take non-Python arguments.
|
|
* Taking a ``char*`` from a temporary Python string object is safer
|
|
in more cases and can be done inside of non-trivial expressions,
|
|
including arguments of a function call. A compile time error
|
|
is raised only when such a pointer is assigned to a variable and
|
|
would thus exceed the lifetime of the string itself.
|
|
* Generators have new properties ``__name__`` and ``__qualname__``
|
|
that provide the plain/qualified name of the generator function
|
|
(following CPython 3.5). See http://bugs.python.org/issue21205
|
|
* The ``inline`` function modifier is available as a decorator
|
|
``@cython.inline`` in pure mode.
|
|
* When cygdb is run in a virtualenv, it enables the same virtualenv
|
|
inside of the debugger. Patch by Marc Abramowitz.
|
|
* PEP 465: dedicated infix operator for matrix multiplication (A @ B).
|
|
* HTML output of annotated code uses Pygments for code highlighting
|
|
and generally received a major overhaul by Matthias Bussonier.
|
|
* IPython magic support is now available directly from Cython with
|
|
the command "%load_ext cython". Cython code can directly be
|
|
executed in a cell when marked with "%%cython". Code analysis
|
|
is available with "%%cython -a". Patch by Martín Gaitán.
|
|
* Simple support for declaring Python object types in Python signature
|
|
annotations. Currently requires setting the compiler directive
|
|
``annotation_typing=True``.
|
|
* New directive ``use_switch`` (defaults to True) to optionally disable
|
|
the optimization of chained if statement to C switch statements.
|
|
* Defines dynamic_cast et al. in ``libcpp.cast`` and C++ heap data
|
|
structure operations in ``libcpp.algorithm``.
|
|
* Shipped header declarations in ``posix.*`` were extended to cover
|
|
more of the POSIX API. Patches by Lars Buitinck and Mark Peek.
|
|
* Optimizations
|
|
* Simple calls to C implemented Python functions/methods are faster.
|
|
This also speeds up many operations on builtins that Cython cannot
|
|
otherwise optimise.
|
|
* The "and"/"or" operators try to avoid unnecessary coercions of their
|
|
arguments. They now evaluate the truth value of each argument
|
|
independently and only coerce the final result of the whole expression
|
|
to the target type (e.g. the type on the left side of an assignment).
|
|
This also avoids reference counting overhead for Python values during
|
|
evaluation and generally improves the code flow in the generated C code.
|
|
* The Python expression "2 ** N" is optimised into bit shifting.
|
|
See http://bugs.python.org/issue21420
|
|
* Cascaded assignments (a = b = ...) try to minimise the number of
|
|
type coercions.
|
|
* Calls to ``slice()`` are translated to a straight C-API call.
|
|
* Bugs fixed
|
|
* Crash when assigning memory views from ternary conditional expressions.
|
|
* Nested C++ templates could lead to unseparated ">>" characters being
|
|
generated into the C++ declarations, which older C++ compilers could
|
|
not parse.
|
|
* Sending SIGINT (Ctrl-C) during parallel cythonize() builds could
|
|
hang the child processes.
|
|
* No longer ignore local setup.cfg files for distutils in pyximport.
|
|
Patch by Martin Teichmann.
|
|
* Taking a ``char*`` from an indexed Python string generated unsafe
|
|
reference counting code.
|
|
* Set literals now create all of their items before trying to add them
|
|
to the set, following the behaviour in CPython. This makes a
|
|
difference in the rare case that the item creation has side effects
|
|
and some items are not hashable (or if hashing them has side effects,
|
|
too).
|
|
* Cython no longer generates the cross product of C functions for code
|
|
that uses memory views of fused types in function signatures (e.g.
|
|
``cdef func(floating[:] a, floating[:] b)``). This is considered the
|
|
expected behaviour by most users and was previously inconsistent with
|
|
other structured types like C arrays. Code that really wants all type
|
|
combinations can create the same fused memoryview type under different
|
|
names and use those in the signature to make it clear which types are
|
|
independent.
|
|
* Names that were unknown at compile time were looked up as builtins at
|
|
runtime but not as global module names. Trying both lookups helps with
|
|
globals() manipulation.
|
|
* Fixed stl container conversion for typedef element types.
|
|
* ``obj.pop(x)`` truncated large C integer values of x to ``Py_ssize_t``.
|
|
* ``__init__.pyc`` is recognised as marking a package directory
|
|
(in addition to .py, .pyx and .pxd).
|
|
* Syntax highlighting in ``cython-mode.el`` for Emacs no longer
|
|
incorrectly highlights keywords found as part of longer names.
|
|
* Correctly handle ``from cython.submodule cimport name``.
|
|
* Fix infinite recursion when using super with cpdef methods.
|
|
* No-args ``dir()`` was not guaranteed to return a sorted list.
|
|
* Other changes
|
|
* The header line in the generated C files no longer contains the
|
|
timestamp but only the Cython version that wrote it. This was
|
|
changed to make builds more reproducible.
|
|
* Removed support for CPython 2.4, 2.5 and 3.1.
|
|
* The licensing implications on the generated code were clarified
|
|
to avoid legal constraints for users.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jul 31 16:26:07 UTC 2014 - dimstar@opensuse.org
|
|
|
|
- Rename rpmlintrc to %{name}-rpmlintrc.
|
|
Follow the packaging guidelines.
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Jul 24 05:32:47 UTC 2014 - mcihar@suse.cz
|
|
|
|
- Update to version 0.20.2:
|
|
* Some optimisations for set/frozenset instantiation.
|
|
* Support for C++ unordered_set and unordered_map.
|
|
* Access to attributes of optimised builtin methods (e.g.
|
|
``[].append.__name__``) could fail to compile.
|
|
* Memory leak when extension subtypes add a memory view as attribute
|
|
to those of the parent type without having Python object attributes
|
|
or a user provided dealloc method.
|
|
* Compiler crash on readonly properties in "binding" mode.
|
|
* Auto-encoding with ``c_string_encoding=ascii`` failed in Py3.3.
|
|
* Crash when subtyping freelist enabled Cython extension types with
|
|
Python classes that use ``__slots__``.
|
|
* Freelist usage is restricted to CPython to avoid problems with other
|
|
Python implementations.
|
|
* Memory leak in memory views when copying overlapping, contiguous slices.
|
|
* Format checking when requesting non-contiguous buffers from
|
|
``cython.array`` objects was disabled in Py3.
|
|
* C++ destructor calls in extension types could fail to compile in clang.
|
|
* Buffer format validation failed for sequences of strings in structs.
|
|
* Docstrings on extension type attributes in .pxd files were rejected.
|
|
- add python-xml to build requirements for testsuite
|
|
|
|
-------------------------------------------------------------------
|
|
Thu May 8 11:40:51 UTC 2014 - toddrme2178@gmail.com
|
|
|
|
- Update to version 0.20.1
|
|
* List/Tuple literals multiplied by more than one factor were only multiplied
|
|
by the last factor instead of all.
|
|
* Lookups of special methods (specifically for context managers) could fail
|
|
in Python <= 2.6/3.1.
|
|
* Local variables were erroneously appended to the signature introspection
|
|
of Cython implemented functions with keyword-only arguments under Python 3.
|
|
* In-place assignments to variables with inferred Python builtin/extension
|
|
types could fail with type errors if the result value type was incompatible
|
|
with the type of the previous value.
|
|
* The C code generation order of cdef classes, closures, helper code,
|
|
etc. was not deterministic, thus leading to high code churn.
|
|
* Type inference could fail to deduce C enum types.
|
|
* Type inference could deduce unsafe or inefficient types from integer
|
|
assignments within a mix of inferred Python variables and integer
|
|
variables.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Feb 3 18:51:50 UTC 2014 - jengelh@inai.de
|
|
|
|
- Cython grew a dependency on saxutils (and since then, libplist
|
|
failed to build). Add python-xml as a Requires to avoid:
|
|
[...]
|
|
File "/usr/lib64/python2.7/site-packages/Cython/Compiler/Annotate.py",
|
|
line 6, in <module> from xml.sax.saxutils import escape as
|
|
html_escape.
|
|
ImportError: No module named xml.sax.saxutils
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Jan 31 10:19:40 UTC 2014 - speilicke@suse.com
|
|
|
|
- Update to version 0.20:
|
|
* Support for CPython 3.4.
|
|
* Support for calling C++ template functions.
|
|
* yield is supported in finally clauses.
|
|
* The C code generated for finally blocks is duplicated for each exit
|
|
case to allow for better optimisations by the C compiler.
|
|
* Cython tries to undo the Python optimisationism of assigning a bound
|
|
method to a local variable when it can generate better code for the
|
|
direct call.
|
|
* Constant Python float values are cached.
|
|
* String equality comparisons can use faster type specific code in
|
|
more cases than before.
|
|
* String/Unicode formatting using the '%' operator uses a faster
|
|
C-API call.
|
|
* bytearray has become a known type and supports coercion from and
|
|
to C strings. Indexing, slicing and decoding is optimised. Note that
|
|
this may have an impact on existing code due to type inference.
|
|
* Using cdef basestring stringvar and function arguments typed as
|
|
basestring is now meaningful and allows assigning exactly
|
|
str and unicode objects, but no subtypes of these types.
|
|
* Support for the __debug__ builtin.
|
|
* Assertions in Cython compiled modules are disabled if the running
|
|
Python interpreter was started with the "-O" option.
|
|
* Some types that Cython provides internally, such as functions and
|
|
generators, are now shared across modules if more than one Cython
|
|
implemented module is imported.
|
|
* The type inference algorithm works more fine granular by taking the
|
|
results of the control flow analysis into account.
|
|
* A new script in bin/cythonize provides a command line frontend
|
|
to the cythonize() compilation function (including distutils build).
|
|
* The new extension type decorator @cython.no_gc_clear prevents
|
|
objects from being cleared during cyclic garbage collection, thus
|
|
making sure that object attributes are kept alive until deallocation.
|
|
* During cyclic garbage collection, attributes of extension types that
|
|
cannot create reference cycles due to their type (e.g. strings) are
|
|
no longer considered for traversal or clearing. This can reduce the
|
|
processing overhead when searching for or cleaning up reference cycles.
|
|
* Package compilation (i.e. __init__.py files) now works, starting
|
|
with Python 3.3.
|
|
* The cython-mode.el script for Emacs was updated. Patch by Ivan Andrus.
|
|
* An option common_utility_include_dir was added to cythonize() to save
|
|
oft-used utility code once in a separate directory rather than as
|
|
part of each generated file.
|
|
* unraisable_tracebacks directive added to control printing of
|
|
tracebacks of unraisable exceptions.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Oct 21 12:13:57 UTC 2013 - dmueller@suse.com
|
|
|
|
- update to 0.19.2:
|
|
* Some standard declarations were fixed or updated, including the previously
|
|
incorrect declaration of PyBuffer_FillInfo() and some missing bits in
|
|
libc.math.
|
|
|
|
* Heap allocated subtypes of type used the wrong base type struct at the
|
|
C level.
|
|
|
|
* Calling the unbound method dict.keys/value/items() in dict subtypes could
|
|
call the bound object method instead of the unbound supertype method.
|
|
|
|
* "yield" wasn't supported in "return" value expressions.
|
|
|
|
* Using the "bint" type in memory views lead to unexpected results.
|
|
It is now an error.
|
|
|
|
* Assignments to global/closure variables could catch them in an illegal state
|
|
while deallocating the old value.
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Oct 11 17:06:20 UTC 2013 - p.drouand@gmail.com
|
|
|
|
- Implement update-alternatives
|
|
|
|
-------------------------------------------------------------------
|
|
Mon May 13 08:17:40 UTC 2013 - dmueller@suse.com
|
|
|
|
- update to 0.19.1:
|
|
* Completely empty C-API structs for extension type slots (protocols like
|
|
number/mapping/sequence) are no longer generated into the C code.
|
|
* Docstrings that directly follow a public/readonly attribute declaration
|
|
in a cdef class will be used as docstring of the auto-generated property.
|
|
This fixes ticket 206.
|
|
* The automatic signature documentation tries to preserve more semantics
|
|
of default arguments and argument types. Specifically, bint arguments
|
|
now appear as type bool.
|
|
* A warning is emitted when negative literal indices are found inside of
|
|
a code section that disables wraparound handling. This helps with
|
|
fixing invalid code that might fail in the face of future compiler
|
|
optimisations.
|
|
* Constant folding for boolean expressions (and/or) was improved.
|
|
* Added a build_dir option to cythonize() which allows one to place
|
|
the generated .c files outside the source tree.
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Apr 29 11:58:41 UTC 2013 - dmueller@suse.com
|
|
|
|
- Update to version 0.19:
|
|
+ Please see http://wiki.cython.org/ReleaseNotes-0.19
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Mar 27 12:17:42 UTC 2013 - speilicke@suse.com
|
|
|
|
- Update to version 0.18:
|
|
+ Please see http://wiki.cython.org/ReleaseNotes-0.18
|
|
|
|
-------------------------------------------------------------------
|
|
Thu Nov 22 15:32:14 UTC 2012 - saschpe@suse.de
|
|
|
|
- Update to version 0.17.2:
|
|
+ Please see http://wiki.cython.org/ReleaseNotes-0.17.2
|
|
- Drop excessive macro usage
|
|
- No need for "-fno-strict-aliasing" anymore
|
|
- One rpmlintrc is enough
|
|
|
|
-------------------------------------------------------------------
|
|
Fri May 25 07:47:16 UTC 2012 - toddrme2178@gmail.com
|
|
|
|
- Fix .py/.pyc issues
|
|
|
|
-------------------------------------------------------------------
|
|
Fri May 18 10:52:46 UTC 2012 - toddrme2178@gmail.com
|
|
|
|
- Add python 3 package
|
|
- Clean up spec file formatting
|
|
- Remove setbadness from rplintrc files
|
|
|
|
-------------------------------------------------------------------
|
|
Mon Apr 23 11:09:29 UTC 2012 - vdziewiecki@suse.com
|
|
|
|
-Update to 0.16:
|
|
http://wiki.cython.org/ReleaseNotes-0.16
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Feb 29 19:07:57 UTC 2012 - pascal.bleser@opensuse.org
|
|
|
|
- add rpmlintrc to mask false positives
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Sep 21 12:34:19 UTC 2011 - saschpe@suse.de
|
|
|
|
- Update to version 0.15.1:
|
|
* Please see http://wiki.cython.org/ReleaseNotes-0.15.1
|
|
|
|
-------------------------------------------------------------------
|
|
Tue Sep 6 13:25:54 UTC 2011 - saschpe@suse.de
|
|
|
|
- Add Provides/Obsoletes for python-cython
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Sep 2 11:03:40 UTC 2011 - saschpe@suse.de
|
|
|
|
- Fixed a typo
|
|
- Removed testsuite again, fixes SLE build
|
|
|
|
-------------------------------------------------------------------
|
|
Fri Sep 2 09:50:25 UTC 2011 - saschpe@suse.de
|
|
|
|
- Update to version 0.15:
|
|
* For loop docs fix and pointer iteration.
|
|
* Pure decorators now implemented.
|
|
* fix bug #707: optimised dict iteration over non-trivial expressions fail...
|
|
* optimise object.pop() for sets
|
|
* Py2.4 fix: PySet_Pop() appeared in Py2.5
|
|
* Py3.3 test fix
|
|
* Support module level control flow and Entry-level error on uninitialized
|
|
- Spec file cleanup:
|
|
- Fixed wrong EOL encodings and non-excutable scripts
|
|
- Set license to Apache-2.0
|
|
- Run testsuite
|
|
|
|
-------------------------------------------------------------------
|
|
Wed Apr 20 00:29:18 UTC 2011 - prusnak@opensuse.org
|
|
|
|
- updated to 0.14.1
|
|
- changes too numerous to list, see the following for more details:
|
|
* http://wiki.cython.org/ReleaseNotes-0.13
|
|
* http://wiki.cython.org/ReleaseNotes-0.14
|
|
* http://wiki.cython.org/ReleaseNotes-0.14.1
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Jun 6 21:21:32 UTC 2010 - dimstar@opensuse.org
|
|
|
|
- Use renewed python-macros, also for compatibility with other
|
|
build targets.
|
|
|
|
-------------------------------------------------------------------
|
|
Sun Jun 6 12:14:18 UTC 2010 - dimstar@opensuse.org
|
|
|
|
- Initial package of Cython 0.12.1
|