diff options
author | wiz <wiz@pkgsrc.org> | 2015-08-14 17:47:54 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2015-08-14 17:47:54 +0000 |
commit | d694b10161610e660de26d48ae9e44fe65020050 (patch) | |
tree | f303b919e844941d25ca40e64d07eb03d853bc93 /devel | |
parent | 0268a6f06fb74e2f82933e252cffe60341f9599f (diff) | |
download | pkgsrc-d694b10161610e660de26d48ae9e44fe65020050.tar.gz |
Update to 0.23:
0.23 (2015-08-08)
=================
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.
Diffstat (limited to 'devel')
-rw-r--r-- | devel/py-cython/Makefile | 4 | ||||
-rw-r--r-- | devel/py-cython/PLIST | 12 | ||||
-rw-r--r-- | devel/py-cython/distinfo | 8 |
3 files changed, 16 insertions, 8 deletions
diff --git a/devel/py-cython/Makefile b/devel/py-cython/Makefile index 6f06f263dfa..a8e65c35eb9 100644 --- a/devel/py-cython/Makefile +++ b/devel/py-cython/Makefile @@ -1,6 +1,6 @@ -# $NetBSD: Makefile,v 1.27 2015/07/01 09:55:42 wiz Exp $ +# $NetBSD: Makefile,v 1.28 2015/08/14 17:47:54 wiz Exp $ -DISTNAME= Cython-0.22.1 +DISTNAME= Cython-0.23 PKGNAME= ${PYPKGPREFIX}-${DISTNAME:S/Cy/cy/} CATEGORIES= lang python MASTER_SITES= http://cython.org/release/ diff --git a/devel/py-cython/PLIST b/devel/py-cython/PLIST index 30958a38209..bc661a7e072 100644 --- a/devel/py-cython/PLIST +++ b/devel/py-cython/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.16 2015/02/17 14:00:01 wiz Exp $ +@comment $NetBSD: PLIST,v 1.17 2015/08/14 17:47:54 wiz Exp $ bin/cygdb${PYVERSSUFFIX} bin/cython${PYVERSSUFFIX} bin/cythonize${PYVERSSUFFIX} @@ -147,6 +147,9 @@ ${PYSITELIB}/Cython/Compiler/Symtab.pyo ${PYSITELIB}/Cython/Compiler/Tests/TestBuffer.py ${PYSITELIB}/Cython/Compiler/Tests/TestBuffer.pyc ${PYSITELIB}/Cython/Compiler/Tests/TestBuffer.pyo +${PYSITELIB}/Cython/Compiler/Tests/TestCmdLine.py +${PYSITELIB}/Cython/Compiler/Tests/TestCmdLine.pyc +${PYSITELIB}/Cython/Compiler/Tests/TestCmdLine.pyo ${PYSITELIB}/Cython/Compiler/Tests/TestMemView.py ${PYSITELIB}/Cython/Compiler/Tests/TestMemView.pyc ${PYSITELIB}/Cython/Compiler/Tests/TestMemView.pyo @@ -200,6 +203,9 @@ ${PYSITELIB}/Cython/Compiler/Visitor.so ${PYSITELIB}/Cython/Compiler/__init__.py ${PYSITELIB}/Cython/Compiler/__init__.pyc ${PYSITELIB}/Cython/Compiler/__init__.pyo +${PYSITELIB}/Cython/Coverage.py +${PYSITELIB}/Cython/Coverage.pyc +${PYSITELIB}/Cython/Coverage.pyo ${PYSITELIB}/Cython/Debugger/Cygdb.py ${PYSITELIB}/Cython/Debugger/Cygdb.pyc ${PYSITELIB}/Cython/Debugger/Cygdb.pyo @@ -337,6 +343,7 @@ ${PYSITELIB}/Cython/Includes/libcpp/complex.pxd ${PYSITELIB}/Cython/Includes/libcpp/deque.pxd ${PYSITELIB}/Cython/Includes/libcpp/list.pxd ${PYSITELIB}/Cython/Includes/libcpp/map.pxd +${PYSITELIB}/Cython/Includes/libcpp/memory.pxd ${PYSITELIB}/Cython/Includes/libcpp/pair.pxd ${PYSITELIB}/Cython/Includes/libcpp/queue.pxd ${PYSITELIB}/Cython/Includes/libcpp/set.pxd @@ -444,8 +451,10 @@ ${PYSITELIB}/Cython/Tests/xmlrunner.pyo ${PYSITELIB}/Cython/Utility/Buffer.c ${PYSITELIB}/Cython/Utility/Builtins.c ${PYSITELIB}/Cython/Utility/CConvert.pyx +${PYSITELIB}/Cython/Utility/CMath.c ${PYSITELIB}/Cython/Utility/Capsule.c ${PYSITELIB}/Cython/Utility/CommonTypes.c +${PYSITELIB}/Cython/Utility/Coroutine.c ${PYSITELIB}/Cython/Utility/CppConvert.pyx ${PYSITELIB}/Cython/Utility/CppSupport.cpp ${PYSITELIB}/Cython/Utility/CythonFunction.c @@ -453,7 +462,6 @@ ${PYSITELIB}/Cython/Utility/Embed.c ${PYSITELIB}/Cython/Utility/Exceptions.c ${PYSITELIB}/Cython/Utility/ExtensionTypes.c ${PYSITELIB}/Cython/Utility/FunctionArguments.c -${PYSITELIB}/Cython/Utility/Generator.c ${PYSITELIB}/Cython/Utility/ImportExport.c ${PYSITELIB}/Cython/Utility/MemoryView.pyx ${PYSITELIB}/Cython/Utility/MemoryView_C.c diff --git a/devel/py-cython/distinfo b/devel/py-cython/distinfo index 1d1f0747f74..7c593a4cf1b 100644 --- a/devel/py-cython/distinfo +++ b/devel/py-cython/distinfo @@ -1,7 +1,7 @@ -$NetBSD: distinfo,v 1.19 2015/07/01 09:55:42 wiz Exp $ +$NetBSD: distinfo,v 1.20 2015/08/14 17:47:54 wiz Exp $ -SHA1 (Cython-0.22.1.tar.gz) = 85c0494968e49f4aa3d20c58c314b5dffed47886 -RMD160 (Cython-0.22.1.tar.gz) = b4e5b28c2e3af0465eb639f16a6102ed0d61d3d6 -Size (Cython-0.22.1.tar.gz) = 1581021 bytes +SHA1 (Cython-0.23.tar.gz) = 5a49123b39d89a20fb88bdc7886210c39cdff695 +RMD160 (Cython-0.23.tar.gz) = 250f6400c8c1265daa5d1eb2e2ab5e1fa82e4fd0 +Size (Cython-0.23.tar.gz) = 1621481 bytes SHA1 (patch-ac) = d0e06dd9e4b5a34d0614ec17f51c129eb7724323 SHA1 (patch-runtests.py) = 788ff593da9ce447af368957f1a8be562e2d40da |