Hello community,

here is the log from the commit of package python-cffi for openSUSE:Factory 
checked in at 2018-09-26 14:53:50
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-cffi (Old)
 and      /work/SRC/openSUSE:Factory/.python-cffi.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-cffi"

Wed Sep 26 14:53:50 2018 rev:22 rq:636994 version:1.11.5

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-cffi/python-cffi.changes  2018-03-05 
13:35:23.273305877 +0100
+++ /work/SRC/openSUSE:Factory/.python-cffi.new/python-cffi.changes     
2018-09-26 14:53:53.439063972 +0200
@@ -1,0 +2,22 @@
+Fri Sep 21 07:24:58 CEST 2018 - mc...@suse.com
+
+- Add 3184b0a675fc425b821b528d7fdf744b2f08dadf.patch as
+  a workardond against
+  https://bitbucket.org/cffi/cffi/issues/378/ (possible bug in
+  GCC, see https://bugzilla.redhat.com/1552724).
+
+-------------------------------------------------------------------
+Wed Sep 19 20:43:08 CEST 2018 - mc...@suse.com
+
+- Remove ignore-tests.patch -- testing what will happen
+- Add e2e324a2f13e3a646de6f6ff03e90ed7d37e2636.patch from
+  upstream to remove some warnings.
+
+-------------------------------------------------------------------
+Tue Sep 18 15:51:02 UTC 2018 - Matěj Cepl <mc...@suse.com>
+
+- Switch off falling tests with new patch
+  ignore-tests.patch instead of -k parameter for py.test.
+  https://bitbucket.org/cffi/cffi/issues/384/
+
+-------------------------------------------------------------------

New:
----
  3184b0a675fc425b821b528d7fdf744b2f08dadf.patch
  e2e324a2f13e3a646de6f6ff03e90ed7d37e2636.patch

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

Other differences:
------------------
++++++ python-cffi.spec ++++++
--- /var/tmp/diff_new_pack.S9UrKo/_old  2018-09-26 14:53:53.987063132 +0200
+++ /var/tmp/diff_new_pack.S9UrKo/_new  2018-09-26 14:53:53.995063120 +0200
@@ -12,7 +12,7 @@
 # license that conforms to the Open Source Definition (Version 1.9)
 # published by the Open Source Initiative.
 
-# Please submit bugfixes or comments via http://bugs.opensuse.org/
+# Please submit bugfixes or comments via https://bugs.opensuse.org/
 #
 
 
@@ -23,13 +23,18 @@
 Summary:        Foreign Function Interface for Python calling C code
 License:        MIT
 Group:          Development/Languages/Python
-Url:            http://cffi.readthedocs.org
+URL:            http://cffi.readthedocs.org
 Source0:        
https://files.pythonhosted.org/packages/source/c/cffi/cffi-%{version}.tar.gz
 Source1:        python-cffi-rpmlintrc
+# https://bitbucket.org/cffi/cffi/issues/384/
+Patch0:         e2e324a2f13e3a646de6f6ff03e90ed7d37e2636.patch
+# https://bitbucket.org/cffi/cffi/issues/378
+Patch1:         3184b0a675fc425b821b528d7fdf744b2f08dadf.patch
 BuildRequires:  %{python_module devel}
 BuildRequires:  %{python_module pycparser}
 BuildRequires:  %{python_module pytest}
 BuildRequires:  %{python_module setuptools}
+BuildRequires:  fdupes
 BuildRequires:  gcc-c++
 BuildRequires:  pkgconfig
 BuildRequires:  python-rpm-macros
@@ -43,6 +48,7 @@
 
 %prep
 %setup -q -n cffi-%{version}
+%autopatch -p1
 
 %build
 export CFLAGS="%{optflags}"
@@ -50,12 +56,13 @@
 
 %install
 %python_install
+%python_expand %fdupes %{buildroot}%{$python_sitearch}
 
 %check
-%python_expand PYTHONPATH=%{buildroot}%{$python_sitearch} 
py.test-%$python_bin_suffix -k "not test_init_once_multithread" c/ testing/
+%python_expand PYTHONPATH=%{buildroot}%{$python_sitearch} 
py.test-%$python_bin_suffix -W ignore::UserWarning c/ testing/
 
 %files %{python_files}
-%doc LICENSE
+%license LICENSE
 %{python_sitearch}/*
 
 %changelog

++++++ 3184b0a675fc425b821b528d7fdf744b2f08dadf.patch ++++++
# HG changeset patch
# User Armin Rigo <ar...@tunes.org>
# Date 1536839482 -7200
# Node ID 3184b0a675fc425b821b528d7fdf744b2f08dadf
# Parent  97a61f7b0bcd48eb74f136280ffd8733e829f153
Issue 378

Workaround for a GCC bug

diff --git a/c/_cffi_backend.c b/c/_cffi_backend.c
--- a/c/_cffi_backend.c
+++ b/c/_cffi_backend.c
@@ -892,11 +892,21 @@
     return 0;
 }
 
+#ifdef __GNUC__
+/* This is a workaround for what I think is a GCC bug on several
+   platforms.  See issue #378. */
+__attribute__((noinline))
+#endif
+void _cffi_memcpy(char *target, const void *src, size_t size)
+{
+    memcpy(target, src, size);
+}
+
 #define _write_raw_data(type)                           \
     do {                                                \
         if (size == sizeof(type)) {                     \
             type r = (type)source;                      \
-            memcpy(target, &r, sizeof(type));           \
+            _cffi_memcpy(target, &r, sizeof(type));           \
             return;                                     \
         }                                               \
     } while(0)
@@ -970,8 +980,8 @@
         if (size == 2*sizeof(type)) {                      \
             type r = (type)source.real;                    \
             type i = (type)source.imag;                    \
-            memcpy(target, &r, sizeof(type));              \
-            memcpy(target+sizeof(type), &i, sizeof(type)); \
+            _cffi_memcpy(target, &r, sizeof(type));              \
+            _cffi_memcpy(target+sizeof(type), &i, sizeof(type)); \
             return;                                        \
         }                                                  \
     } while(0)
++++++ e2e324a2f13e3a646de6f6ff03e90ed7d37e2636.patch ++++++
# HG changeset patch
# User Armin Rigo <ar...@tunes.org>
# Date 1537369554 -7200
# Node ID e2e324a2f13e3a646de6f6ff03e90ed7d37e2636
# Parent  8076f2ac1bd2b68b7015fb1fb936bd6907946756
Issue #384

Un-ignore the warnings when testing for them, in case someone runs
py.test with the PYTHONWARNINGS environment variable set

diff --git a/c/test_c.py b/c/test_c.py
--- a/c/test_c.py
+++ b/c/test_c.py
@@ -3968,6 +3968,7 @@
     z3 = cast(BVoidP, 0)
     z4 = cast(BUCharP, 0)
     with warnings.catch_warnings(record=True) as w:
+        warnings.simplefilter("always")
         newp(new_pointer_type(BIntP), z1)    # warn
         assert len(w) == 1
         newp(new_pointer_type(BVoidP), z1)   # fine
diff --git a/testing/cffi0/backend_tests.py b/testing/cffi0/backend_tests.py
--- a/testing/cffi0/backend_tests.py
+++ b/testing/cffi0/backend_tests.py
@@ -1386,6 +1386,7 @@
         ffi = FFI(backend=self.Backend())
         ffi.cdef("enum foo;")
         with warnings.catch_warnings(record=True) as log:
+            warnings.simplefilter("always")
             n = ffi.cast("enum foo", -1)
             assert int(n) == 0xffffffff
         assert str(log[0].message) == (
++++++ python-cffi-rpmlintrc ++++++
--- /var/tmp/diff_new_pack.S9UrKo/_old  2018-09-26 14:53:54.055063028 +0200
+++ /var/tmp/diff_new_pack.S9UrKo/_new  2018-09-26 14:53:54.059063021 +0200
@@ -1,4 +1,4 @@
 # cffi specifically installs C headers in site-packages, so :
 addFilter("devel-file-in-non-devel-package 
.*/site-packages/cffi/parse_c_type.h")
-addFilter("devel-file-in-non-devel-package 
.*/site-packages/cffi/_cffi_include.h")
+addFilter("devel-file-in-non-devel-package 
.*/site-packages/cffi/_cffi_(include|errors).h")
 addFilter("devel-file-in-non-devel-package .*/site-packages/cffi/_embedding.h")


Reply via email to