[Python-modules-team] Bug#845178: FTBFS with super-fresh cython -- seems to carry pre-cythoned sources which get rebuilt during clean

Yaroslav Halchenko debian at onerussian.com
Mon Nov 21 05:23:45 UTC 2016


Source: python-aiohttp
Version: 1.1.5-1
Severity: serious
Justification: fails to build from source (but built successfully in the past)

While preparing for upload of fresh cython (0.25.2~b0-1) and running build of
rdepends python-aiohttp failed to build with

dh_auto_clean
I: pybuild base:184: python3.5 setup.py clean 
Compiling aiohttp/_websocket.pyx because it depends on /usr/lib/python3/dist-packages/Cython/Includes/libc/string.pxd.
[1/1] Cythonizing aiohttp/_websocket.pyx
running clean
removing '/build/python-aiohttp-1.1.5/.pybuild/pythonX.Y_3.5/build' (and everything under it)
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-3.5' does not exist -- can't clean it
I: pybuild base:184: python3.5-dbg setup.py clean 
running clean
removing '/build/python-aiohttp-1.1.5/.pybuild/pythonX.Y-dbg_3.5/build' (and everything under it)
setup.py:65: ResourceWarning: unclosed file <_io.TextIOWrapper name='README.rst' mode='r' encoding='ANSI_X3.4-1968'>
  return open(os.path.join(os.path.dirname(__file__), f)).read().strip()
setup.py:65: ResourceWarning: unclosed file <_io.TextIOWrapper name='CHANGES.rst' mode='r' encoding='ANSI_X3.4-1968'>
  return open(os.path.join(os.path.dirname(__file__), f)).read().strip()
'build/bdist.linux-x86_64' does not exist -- can't clean it
'build/scripts-3.5' does not exist -- can't clean it
make[1]: Leaving directory '/build/python-aiohttp-1.1.5'
   dh_clean -O--buildsystem=pybuild
 dpkg-source -b python-aiohttp-1.1.5
dpkg-source: info: using source format '3.0 (quilt)'
dpkg-source: info: building python-aiohttp using existing ./python-aiohttp_1.1.5.orig.tar.gz
dpkg-source: info: local changes detected, the modified files are:
 python-aiohttp-1.1.5/aiohttp/_websocket.c
dpkg-source: error: aborting due to unexpected upstream changes, see /tmp/python-aiohttp_1.1.5-1.diff.8c7_89
dpkg-source: info: you can integrate the local changes with dpkg-source --commit


so you can see that clean does recythonizing, which modifies shipped with
upstream tarball python-aiohttp-1.1.5/aiohttp/_websocket.c

as a quick&dirty solution (besides cleansing the sources pkg) I think you
could make use of  dh_autoreconf so it memorizes changed files

Cheers,

-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (900, 'testing'), (600, 'unstable'), (300, 'experimental'), (100, 'unstable-debug')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.6.0-1-amd64 (SMP w/4 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)



More information about the Python-modules-team mailing list