|
|
|
@@ -1,3 +1,133 @@
|
|
|
|
|
-------------------------------------------------------------------
|
|
|
|
|
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
|
|
|
|
|
|
|
|
|
|