[Pkg-middleware-maintainers] Bug#806795: debdiff for Py3 support & upgrading to 0.10

Thomas Goirand zigo at debian.org
Tue Dec 1 20:34:36 UTC 2015


Dear maintainers,

Feel free to use the atteched debdiff (or not) to add support for Py3
and upgrading to version 0.10. Note that it only contains the packaging
diff, and doesn't include upstream diffs which was too big (and probably
useless to attach since you can download yourself).

Cheers,

Thomas Goirand (zigo)
-------------- next part --------------
diff -u -N -r qpid-proton-0.7/debian/changelog qpid-proton-0.10/debian/changelog
--- qpid-proton-0.7/debian/changelog	2014-11-17 10:25:04.000000000 +0000
+++ qpid-proton-0.10/debian/changelog	2015-12-01 14:19:22.072661252 +0000
@@ -1,3 +1,16 @@
+qpid-proton (0.10-0.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * New upstream release (Closes: #806794):
+    - Fixed *-examples.install so that it pickups the folder in
+      usr/share/proton-0.10/examples and not usr/share/proton/examples.
+  * Switch build-depends from python (>= version) and python-dev (>= version)
+    to python-all and python-dev-all.
+  * Ran wrap-and-sort -t -a.
+  * Added Python3 support.
+
+ -- Thomas Goirand <zigo at debian.org>  Tue, 01 Dec 2015 14:00:53 +0000
+
 qpid-proton (0.7-2) unstable; urgency=low
 
   * Change dependency from libsslcommon2-dev to libssl-dev. (Closes: #768617)
diff -u -N -r qpid-proton-0.7/debian/control qpid-proton-0.10/debian/control
--- qpid-proton-0.7/debian/control	2014-11-17 10:24:19.000000000 +0000
+++ qpid-proton-0.10/debian/control	2015-12-01 14:10:32.002200134 +0000
@@ -2,18 +2,21 @@
 Section: libs
 Priority: optional
 Maintainer: Debian Middleware Maintainers <pkg-middleware-maintainers at lists.alioth.debian.org>
-Uploaders: Darryl L. Pierce <dpierce at redhat.com>, Daniel Pocock <daniel at pocock.pro>
-Build-Depends: debhelper (>= 9.0.0~),
-               cmake,
-	       swig,
-	       pkg-config,
-	       doxygen,
-	       uuid-dev,
-	       libssl-dev,
-	       dh-python,
-	       python-epydoc,
-	       python (>=2.6.6-3~),
-	       python-dev (>=2.6.6-3~)
+Uploaders: Darryl L. Pierce <dpierce at redhat.com>,
+           Daniel Pocock <daniel at pocock.pro>,
+Build-Depends: cmake,
+               debhelper (>= 9.0.0~),
+               dh-python,
+               doxygen,
+               libssl-dev,
+               pkg-config,
+               python-all,
+               python-all-dev,
+               python-epydoc,
+               python3-all,
+               python3-all-dev,
+               swig,
+               uuid-dev,
 Standards-Version: 3.9.6
 Homepage: http://qpid.apache.org/proton
 Vcs-Browser: http://git.debian.org/?p=pkg-middleware/qpid-proton.git
@@ -21,7 +24,9 @@
 
 Package: qpid-proton-dump
 Architecture: any
-Depends: libqpid-proton2 (>= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}
+Depends: libqpid-proton2 (>= ${binary:Version}),
+         ${misc:Depends},
+         ${shlibs:Depends},
 Description: Qpid Proton messaging tools
  Qpid Proton is a high-performance, lightweight messaging library. It can be
  used in the widest range of messaging applications, including brokers, client
@@ -33,8 +38,9 @@
 
 Package: libqpid-proton2
 Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}
-Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+Pre-Depends: ${misc:Pre-Depends},
 Description: C libraries for Qpid Proton
  Qpid Proton is a high-performance, lightweight messaging library. It can be
  used in the widest range of messaging applications, including brokers, client
@@ -47,7 +53,8 @@
 Package: libqpid-proton2-dev
 Architecture: any
 Section: libdevel
-Depends: libqpid-proton2 (= ${binary:Version}), ${misc:Depends}
+Depends: libqpid-proton2 (= ${binary:Version}),
+         ${misc:Depends},
 Description: Development libraries for writing messaging apps with Qpid Proton
  Qpid Proton is a high-performance, lightweight messaging library. It can be
  used in the widest range of messaging applications, including brokers, client
@@ -60,7 +67,8 @@
 Package: libqpid-proton2-dev-examples
 Architecture: all
 Section: libdevel
-Depends: libqpid-proton2-dev (>= ${binary:Version}), ${misc:Depends}
+Depends: libqpid-proton2-dev (>= ${binary:Version}),
+         ${misc:Depends},
 Description: Example applications for writign messaging apps with Qpid Proton
  Qpid Proton is a high-performance, lightweight messaging library. It can be
  used in the widest range of messaging applications, including brokers, client
@@ -73,7 +81,7 @@
 Package: libqpid-proton2-dev-doc
 Architecture: all
 Section: doc
-Depends: ${misc:Depends}
+Depends: ${misc:Depends},
 Description: Developer documentation for Qpid Proton
  Qpid Proton is a high-performance, lightweight messaging library. It can be
  used in the widest range of messaging applications, including brokers, client
@@ -86,21 +94,41 @@
 Package: python-qpid-proton
 Architecture: any
 Section: python
-Depends: libqpid-proton2, ${python:Depends}, ${shlibs:Depends}, ${misc:Depends}
-Provides: ${python:Provides}
-Description: Python language bindings for Qpid Proton messaging framework
+Depends: libqpid-proton2,
+         ${misc:Depends},
+         ${python:Depends},
+         ${shlibs:Depends},
+Provides: ${python:Provides},
+Description: language bindings for Qpid Proton messaging framework - Python 2.7.
  Qpid Proton is a high-performance, lightweight messaging library. It can be
  used in the widest range of messaging applications, including brokers, client
  libraries, routers, bridges, proxies, and more. Proton makes it trivial to
  integrate with the AMQP 1.0 ecosystem from any platform, environment, or
  language.
  .
- This package provides Python language bindings for Qpid Proton.
+ This package provides Python 2.7 language bindings for Qpid Proton.
+
+Package: python3-qpid-proton
+Architecture: any
+Section: python
+Depends: libqpid-proton2,
+         ${misc:Depends},
+         ${python3:Depends},
+         ${shlibs:Depends},
+Provides: ${python3:Provides},
+Description: language bindings for Qpid Proton messaging framework - Python 3.x
+ Qpid Proton is a high-performance, lightweight messaging library. It can be
+ used in the widest range of messaging applications, including brokers, client
+ libraries, routers, bridges, proxies, and more. Proton makes it trivial to
+ integrate with the AMQP 1.0 ecosystem from any platform, environment, or
+ language.
+ .
+ This package provides Python 3.x language bindings for Qpid Proton.
 
 Package: python-qpid-proton-doc
 Architecture: all
 Section: doc
-Depends: ${misc:Depends}
+Depends: ${misc:Depends},
 Description: Documentation for the Python language bindings for Qpid Proton
  Qpid Proton is a high-performance, lightweight messaging library. It can be
  used in the widest range of messaging applications, including brokers, client
diff -u -N -r qpid-proton-0.7/debian/copyright qpid-proton-0.10/debian/copyright
--- qpid-proton-0.7/debian/copyright	2014-11-17 09:24:05.000000000 +0000
+++ qpid-proton-0.10/debian/copyright	2015-12-01 14:05:25.465960844 +0000
@@ -10,7 +10,7 @@
  license agreements. The ASF licenses this work to You under the Apache License,
  Version 2.0 (the "License"); you may not use this work except in compliance
  with the License.  You may obtain a copy of the License at
- . 
+ .
  http://www.apache.org/licenses/LICENSE-2.0
  .
  On Debian systems, the complete text of the Apache License Version 2.0
diff -u -N -r qpid-proton-0.7/debian/libqpid-proton2-dev-doc.install qpid-proton-0.10/debian/libqpid-proton2-dev-doc.install
--- qpid-proton-0.7/debian/libqpid-proton2-dev-doc.install	2014-06-03 08:48:51.000000000 +0000
+++ qpid-proton-0.10/debian/libqpid-proton2-dev-doc.install	2015-12-01 14:21:14.905809596 +0000
@@ -1 +1 @@
-usr/share/proton-0.7/docs/api-c
+usr/share/proton-0.10/docs/api-c
diff -u -N -r qpid-proton-0.7/debian/libqpid-proton2-dev-doc.lintian-overrides qpid-proton-0.10/debian/libqpid-proton2-dev-doc.lintian-overrides
--- qpid-proton-0.7/debian/libqpid-proton2-dev-doc.lintian-overrides	2014-11-17 09:24:05.000000000 +0000
+++ qpid-proton-0.10/debian/libqpid-proton2-dev-doc.lintian-overrides	2015-12-01 14:21:57.044746290 +0000
@@ -1,2 +1,2 @@
 # this is not from the source tarball
-libqpid-proton2-dev-doc: embedded-javascript-library usr/share/proton-0.7/docs/api-c/jquery.js
+libqpid-proton2-dev-doc: embedded-javascript-library usr/share/proton-0.10/docs/api-c/jquery.js
diff -u -N -r qpid-proton-0.7/debian/libqpid-proton2-dev-examples.install qpid-proton-0.10/debian/libqpid-proton2-dev-examples.install
--- qpid-proton-0.7/debian/libqpid-proton2-dev-examples.install	2014-06-03 08:48:51.000000000 +0000
+++ qpid-proton-0.10/debian/libqpid-proton2-dev-examples.install	2015-12-01 14:18:53.017396769 +0000
@@ -1 +1 @@
-usr/share/proton/examples
\ No newline at end of file
+usr/share/proton-0.10/examples
diff -u -N -r qpid-proton-0.7/debian/libqpid-proton2-dev.install qpid-proton-0.10/debian/libqpid-proton2-dev.install
--- qpid-proton-0.7/debian/libqpid-proton2-dev.install	2014-11-17 09:24:05.000000000 +0000
+++ qpid-proton-0.10/debian/libqpid-proton2-dev.install	2015-12-01 14:05:25.465960844 +0000
@@ -1,2 +1,2 @@
-usr/lib/*/libqpid-proton.so
 usr/include/proton
+usr/lib/*/libqpid-proton.so
diff -u -N -r qpid-proton-0.7/debian/libqpid-proton2-doc.install qpid-proton-0.10/debian/libqpid-proton2-doc.install
--- qpid-proton-0.7/debian/libqpid-proton2-doc.install	2014-06-03 08:48:51.000000000 +0000
+++ qpid-proton-0.10/debian/libqpid-proton2-doc.install	2015-12-01 14:21:42.909102887 +0000
@@ -1 +1 @@
-usr/share/proton-0.7/docs
+usr/share/proton-0.10/docs
diff -u -N -r qpid-proton-0.7/debian/python3-qpid-proton.install qpid-proton-0.10/debian/python3-qpid-proton.install
--- qpid-proton-0.7/debian/python3-qpid-proton.install	1970-01-01 00:00:00.000000000 +0000
+++ qpid-proton-0.10/debian/python3-qpid-proton.install	2015-12-01 20:08:55.418648194 +0000
@@ -0,0 +1,4 @@
+usr/lib/python3/dist-packages/*.so
+usr/lib/python3/dist-packages/cproton.py
+usr/lib/python3/dist-packages/proton
+usr/lib/python3/dist-packages/*.egg-info
diff -u -N -r qpid-proton-0.7/debian/python-qpid-proton-doc.install qpid-proton-0.10/debian/python-qpid-proton-doc.install
--- qpid-proton-0.7/debian/python-qpid-proton-doc.install	2014-06-03 08:48:51.000000000 +0000
+++ qpid-proton-0.10/debian/python-qpid-proton-doc.install	2015-12-01 14:22:08.764450709 +0000
@@ -1 +1 @@
-usr/share/proton-0.7/docs/api-py
+usr/share/proton-0.10/docs/api-py
diff -u -N -r qpid-proton-0.7/debian/python-qpid-proton-examples.install qpid-proton-0.10/debian/python-qpid-proton-examples.install
--- qpid-proton-0.7/debian/python-qpid-proton-examples.install	2014-06-03 08:48:51.000000000 +0000
+++ qpid-proton-0.10/debian/python-qpid-proton-examples.install	2015-12-01 14:14:37.659888466 +0000
@@ -1 +1 @@
-usr/share/proton/examples
\ No newline at end of file
+usr/share/proton-0.10/examples
diff -u -N -r qpid-proton-0.7/debian/python-qpid-proton.install qpid-proton-0.10/debian/python-qpid-proton.install
--- qpid-proton-0.7/debian/python-qpid-proton.install	2014-06-03 08:48:51.000000000 +0000
+++ qpid-proton-0.10/debian/python-qpid-proton.install	2015-12-01 14:30:38.919627786 +0000
@@ -1,3 +1,3 @@
 usr/lib/python2.7/dist-packages/_cproton.so
 usr/lib/python2.7/dist-packages/cproton.py
-usr/lib/python2.7/dist-packages/proton.py
+usr/lib/python2.7/dist-packages/proton
diff -u -N -r qpid-proton-0.7/debian/qpid-proton.install qpid-proton-0.10/debian/qpid-proton.install
--- qpid-proton-0.7/debian/qpid-proton.install	2014-06-03 08:48:51.000000000 +0000
+++ qpid-proton-0.10/debian/qpid-proton.install	2015-12-01 14:05:25.469960744 +0000
@@ -1,2 +1,2 @@
+usr/bin/proton
 usr/bin/proton-dump
-usr/bin/proton
\ No newline at end of file
diff -u -N -r qpid-proton-0.7/debian/rules qpid-proton-0.10/debian/rules
--- qpid-proton-0.7/debian/rules	2014-11-17 10:16:22.000000000 +0000
+++ qpid-proton-0.10/debian/rules	2015-12-01 20:12:07.853857586 +0000
@@ -21,8 +21,11 @@
 export DH_OPTIONS
 export DH_ALWAYS_EXCLUDE=LICENSE
 
+PYTHONS:=$(shell pyversions -vr)
+PYTHON3S:=$(shell py3versions -vr)
+
 %:
-	dh $@ --with python2
+	dh $@ --with python2,python3
 
 override_dh_auto_configure:
 	dh_auto_configure -- -DPROTON_DISABLE_RPATH=true -DNOBUILD_RUBY=on -DSYSINSTALL_BINDINGS=on
@@ -33,6 +36,14 @@
 override_dh_auto_test:
 	# TODO enable them when they work again
 
+override_dh_auto_clean:
+	dh_auto_clean
+	rm -rf	proton-c/bindings/python/build \
+		proton-c/bindings/python/cproton.py \
+		proton-c/bindings/python/cproton_wrap.c
+	find proton-c -iname '*.pyc' -delete
+	find proton-c -iname '*.pyo' -delete
+
 # Hack for multiarch
 # CMake doesn't really support libdir so we just manually
 # move /usr/lib/* to a proper multi-arch location
@@ -40,4 +51,10 @@
 	dh_auto_install
 	mkdir -p debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)
 	mv debian/tmp/usr/lib/lib*.so* debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)
-
+	set -e ; cd proton-c/bindings/python ; \
+		for pyvers in $(PYTHONS); do \
+			python$$pyvers setup.py install --install-layout=deb --root $(CURDIR)/debian/tmp ; \
+		done ; \
+		for pyvers in $(PYTHON3S); do \
+			python$$pyvers setup.py install --install-layout=deb --root $(CURDIR)/debian/tmp ; \
+		done


More information about the Pkg-middleware-maintainers mailing list