pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/devel/py-cython Why did I commit that, I wonder.



details:   https://anonhg.NetBSD.org/pkgsrc/rev/b3d975d9336f
branches:  trunk
changeset: 639526:b3d975d9336f
user:      wiz <wiz%pkgsrc.org@localhost>
date:      Mon Sep 15 06:47:10 2014 +0000

description:
Why did I commit that, I wonder.

diffstat:

 devel/py-cython/log |  141 ----------------------------------------------------
 1 files changed, 0 insertions(+), 141 deletions(-)

diffs (145 lines):

diff -r 6a3e7d2188d8 -r b3d975d9336f devel/py-cython/log
--- a/devel/py-cython/log       Mon Sep 15 06:26:33 2014 +0000
+++ /dev/null   Thu Jan 01 00:00:00 1970 +0000
@@ -1,141 +0,0 @@
-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.



Home | Main Index | Thread Index | Old Index