Bug#773699: python-zodb wrongly installs headers for persistent

Kirill Smelkov kirr at nexedi.com
Mon Dec 22 09:20:35 UTC 2014


Package: python-zodb
Version: 1:3.9.7-4
Severity: normal
Tags: patch

Dear Maintainer,

Starting from python-zodb_3.9.7-4 persistent module was completely
split to python-persistent. However some persistent headers were
still left installed in ZODB package:

$ dpkg -L python-zodb
...
/usr/include
/usr/include/python2.7
/usr/include/python2.7/ZODB3
/usr/include/python2.7/ZODB3/cPersistence.h
/usr/include/python2.7/ZODB3/py24compat.h
/usr/include/python2.7/ZODB3/ring.h


That's because besides shipping persistent, ZODB also used to provide
persistent headers in ZODB namespace.

Please find patch to zodb-3.9 debian packaging to fix it.

Thanks,
Kirill

---- 8< ----
diff --git a/debian/patches/persistent-module-4.x-no-headers.patch b/debian/patches/persistent-module-4.x-no-headers.patch
new file mode 100644
index 0000000..ee9ebe7
--- /dev/null
+++ b/debian/patches/persistent-module-4.x-no-headers.patch
@@ -0,0 +1,25 @@
+Description: Don't provide persistent headers in python-zodb
+ python-zodb now depends on separate python-persistent and to be compatible
+ with that in python-zodb, after building the package, we remove installed
+ persistent completely. However ZODB also used to install persistent headers in
+ ZODB namespace which were left and now correspond to nothing provided in
+ python-zodb and duplicate persistent headers in python-persistent.
+    After splitting persistent into separate package, upstream already removed
+ that 'headers install' in zodb package:
+    - 57dca750 (Fixed: An unneeded left-over setting in setup.py caused
+      installation with pip to fail).
+    - f5b98e96 (ZODB w/ externally-distributed 'persistent'.)
+ so do it here too.
+
+--- zodb-3.9.7.orig/setup.py
++++ zodb-3.9.7/setup.py
+@@ -188,9 +188,6 @@ setup(name="ZODB3",
+       packages = find_packages('src'),
+       package_dir = {'': 'src'},
+       ext_modules = exts,
+-      headers = ['src/persistent/cPersistence.h',
+-                 'src/persistent/py24compat.h',
+-                 'src/persistent/ring.h'],
+       license = "ZPL 2.1",
+       platforms = ["any"],
+       description = doclines[0],
diff --git a/debian/patches/series b/debian/patches/series
index 66b6283..a65e2ed 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,6 @@
 lp_135108.patch
 persistent-module-4.x-compat.patch
+persistent-module-4.x-no-headers.patch
 test-spurious-failure-under-python27.patch
 testUtils.patch
 new-transaction.patch
---- 8< ----

-- System Information:
Debian Release: 8.0
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

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

Versions of packages python-zodb depends on:
ii  libc6                  2.19-13
ii  python                 2.7.8-2
ii  python-persistent      4.0.8-3
ii  python-transaction     1.4.3-3
ii  python-zc.lockfile     1.0.0-6
ii  python-zconfig         2.8.0-1
ii  python-zdaemon         2.0.7-1
ii  python-zope.event      4.0.3-2
ii  python-zope.interface  4.1.1-3
ii  python-zope.proxy      4.1.4-2

python-zodb recommends no packages.

Versions of packages python-zodb suggests:
ii  python-zope.testing  4.1.3-2

-- no debconf information



More information about the pkg-zope-developers mailing list