Hello community,

here is the log from the commit of package python-Cython for openSUSE:Factory 
checked in at 2014-09-18 07:12:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-Cython (Old)
 and      /work/SRC/openSUSE:Factory/.python-Cython.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-Cython"

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-Cython/python-Cython.changes      
2014-08-05 13:00:05.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.python-Cython.new/python-Cython.changes 
2014-09-18 07:12:20.000000000 +0200
@@ -1,0 +2,114 @@
+Fri Sep 12 10:52:18 UTC 2014 - [email protected]
+
+- 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 - [email protected]
+
+- 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.
+      
+-------------------------------------------------------------------

Old:
----
  Cython-0.20.2.tar.gz

New:
----
  Cython-0.21.tar.gz
  Cython-fix-version-detection.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-Cython.spec ++++++
--- /var/tmp/diff_new_pack.50OKGK/_old  2014-09-18 07:12:21.000000000 +0200
+++ /var/tmp/diff_new_pack.50OKGK/_new  2014-09-18 07:12:21.000000000 +0200
@@ -17,7 +17,7 @@
 
 
 Name:           python-Cython
-Version:        0.20.2
+Version:        0.21
 Release:        0
 Url:            http://www.cython.org
 Summary:        The Cython compiler for writing C extensions for the Python 
language
@@ -25,6 +25,8 @@
 Group:          Development/Languages/Python
 Source:         
http://pypi.python.org/packages/source/C/Cython/Cython-%{version}.tar.gz
 Source1:        python-Cython-rpmlintrc
+#PATCH-FIX-UPSTREAM Cython-fix-version-detection.patch 
https://github.com/cython/cython/commit/43342ab90704f5f850733544288485048160003d
+Patch0:         Cython-fix-version-detection.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 BuildRequires:  fdupes
 BuildRequires:  python-devel
@@ -55,11 +57,14 @@
 
 %prep
 %setup -q -n Cython-%{version}
+%patch0 -p1
 sed -i "s|^#!.*||" Cython/Debugger/{libpython,Cygdb}.py cython.py # Fix 
non-executable scripts
 sed -i "s|\r||" Demos/callback/{README.txt,cheesefinder.h} 
Demos/embed/Makefile.{unix,msc.static} Doc/primes.c # Fix EOL encoding
 mv bin/cython bin/cython-%{py_ver}
+mv bin/cythonize bin/cythonize-%{py_ver}
 mv bin/cygdb bin/cygdb-%{py_ver}
 sed -i "s|bin/cython|bin/cython-%{py_ver}|" setup.py
+sed -i "s|bin/cythonize|bin/cythonize-%{py_ver}|" setup.py
 sed -i "s|bin/cygdb|bin/cygdb-%{py_ver}|" setup.py
 
 %build
@@ -68,6 +73,7 @@
 %install
 python setup.py install --prefix=%{_prefix} --root=%{buildroot}
 ln -s  %{_bindir}/cython-%{py_ver} %{buildroot}%{_bindir}/cython
+ln -s  %{_bindir}/cythonize-%{py_ver} %{buildroot}%{_bindir}/cythonize
 ln -s  %{_bindir}/cygdb-%{py_ver} %{buildroot}%{_bindir}/cygdb
 %fdupes -s %{buildroot}%{python_sitearch} %{buildroot}%{_docdir}
 
@@ -75,12 +81,14 @@
 # Since /usr/bin/cython and /usr/bin/cygdb became ghosted to be used with 
update-alternatives, we have to get rid
 # of the old binary resulting from the non-update-alternativies-ified package:
 [[ ! -L %{_bindir}/cygdb ]] && rm -f %{_bindir}/cygdb
+[[ ! -L %{_bindir}/cythonize ]] && rm -f %{_bindir}/cythonize
 [[ ! -L %{_bindir}/cython ]] && rm -f %{_bindir}/cython
 exit 0
 
 %post
 update-alternatives \
    --install %{_bindir}/cython cython %{_bindir}/cython-%{py_ver} 30 \
+   --slave %{_bindir}/cythonize cythonize %{_bindir}/cythonize-%{py_ver} \
    --slave %{_bindir}/cygdb cygdb %{_bindir}/cygdb-%{py_ver}
 
 %preun
@@ -99,6 +107,8 @@
 %{_bindir}/cygdb-%{py_ver}
 %ghost %{_bindir}/cython
 %{_bindir}/cython-%{py_ver}
+%ghost %{_bindir}/cythonize
+%{_bindir}/cythonize-%{py_ver}
 %{python_sitearch}/Cython/
 %{python_sitearch}/Cython-%{version}-py%{py_ver}.egg-info
 %{python_sitearch}/cython.py*

++++++ Cython-0.20.2.tar.gz -> Cython-0.21.tar.gz ++++++
++++ 20011 lines of diff (skipped)

++++++ Cython-fix-version-detection.patch ++++++
From: [email protected]
Date: 2014-09-12 12:49:00 +0000
Subject: Restore version information
References: https://github.com/PyTables/PyTables/issues/386
Upstream: included

Restore version information for Cython.
Despite what the upstream header says, python-tables/python3-tables is NOT
the only package affected by this.


Original header below


>From 43342ab90704f5f850733544288485048160003d Mon Sep 17 00:00:00 2001
From: Stefan Behnel <[email protected]>
Date: Thu, 11 Sep 2014 19:35:52 +0200
Subject: [PATCH] provide "Cython.Compiler.Main.Version" to keep supporting old
 PyTables versions that import it from there

--HG--
extra : transplant_source : %B1%BC%5C%CD%A6%EEmr4B%0F%AF%1C%E0yq9%EA%ADX
---
 Cython/Compiler/Main.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/Cython/Compiler/Main.py b/Cython/Compiler/Main.py
index 21b7fe1..37662d6 100644
--- a/Cython/Compiler/Main.py
+++ b/Cython/Compiler/Main.py
@@ -22,10 +22,12 @@
 from .Scanning import PyrexScanner, FileSourceDescriptor
 from .Errors import PyrexError, CompileError, error, warning
 from .Symtab import ModuleScope
-from .. import __version__ as version
 from .. import Utils
 from . import Options
 
+from . import Version  # legacy import needed by old PyTables versions
+version = Version.version  # legacy attribute - use "Cython.__version__" 
instead
+
 module_name_pattern = 
re.compile(r"[A-Za-z_][A-Za-z0-9_]*(\.[A-Za-z_][A-Za-z0-9_]*)*$")
 
 verbose = 0
-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to