Package: python-bootstrapform
Version: 3.1.0-3
Severity: wishlist
Tags: patch

Dear Maintainer,

Plinth, a UI for Freedombox uses python-bootstrapform. We are looking to move
to Python 3 to use some python3 only packages. Bootstrapfrom is the last
dependency that needs Python3 support. It would be very nice to have Python 3
support for bootstrapform. Upstream already supports Python 3 so generating a
binary of Python 3 in debian package is all that is left.

The attached patch takes care of generating the Python3 binary package. It
moves the build system to pybuild (recommended) to make this easy. I have done
the following to tests on my changes:

- Checked that test cases are running for python2 and python3 during build
- Verified that the binary and sources generated after the changes are
identical to those before the patch (except where changes are intentional).

Hoping for an upload with Python 3 support.

Thank you,

--
Sunil Mohan Adapa



-- System Information:
Debian Release: jessie/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.14-2-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_IN, LC_CTYPE=en_IN (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages python-bootstrapform depends on:
ii  dpkg           1.17.13
ii  python         2.7.8-1
ii  python-django  1.6.6-1

python-bootstrapform recommends no packages.

python-bootstrapform suggests no packages.

-- no debconf information
>From 8c75a9ca80d1c27c6559203addf6b1bbae53b16d Mon Sep 17 00:00:00 2001
From: Sunil Mohan Adapa <[email protected]>
Date: Fri, 12 Sep 2014 20:43:30 +0530
Subject: [PATCH] Build python3 binary also

- Migrate to pybuild as it is easy to build python2 and python3 simultaneously
  with it

- Remove special test target as pybuild automatically runs tests for all python
  versions

- Remove .install file as it is no longer needed for pybuild

- Add -doc package in Suggests header as this seems to be the norm
---
 .gitignore                          |  1 +
 debian/control                      | 20 ++++++++++++++++++--
 debian/python-bootstrapform.install |  1 -
 debian/rules                        | 19 ++++++-------------
 4 files changed, 25 insertions(+), 16 deletions(-)
 delete mode 100644 debian/python-bootstrapform.install

diff --git a/.gitignore b/.gitignore
index 9ea5d28..b688a29 100644
--- a/.gitignore
+++ b/.gitignore
@@ -4,5 +4,6 @@
 docs/_build
 /build
 /dist
+/.pybuild
 
 >>>>>>> aee2b719b27498f1b3dcbb1909a8443ff6d1cf9f
diff --git a/debian/control b/debian/control
index 993f4a7..ac582c7 100644
--- a/debian/control
+++ b/debian/control
@@ -9,7 +9,11 @@ Build-Depends: debhelper (>= 9),
                python-all (>= 2.6.6-3~),
                python-setuptools,
                python-sphinx (>= 1.0.7+dfsg),
-               python-django
+               python-django,
+               python3-all,
+               python3-setuptools,
+               python3-sphinx,
+               python3-django
 Standards-Version: 3.9.5
 Vcs-Browser: http://anonscm.debian.org/gitweb/?p=openstack/python-django-bootstrap-form.git
 Vcs-Git: git://anonscm.debian.org/openstack/python-django-bootstrap-form.git
@@ -19,12 +23,24 @@ Package: python-bootstrapform
 Architecture: all
 Pre-Depends: dpkg (>= 1.15.6~)
 Depends: ${misc:Depends}, ${python:Depends}
-Description: generate twitter-bootstrap form output for django form
+Suggests: python-bootstrapfrom-doc
+Description: generate twitter-bootstrap form output for django form (Python 2)
  Django bootstrap form generates twitter-bootstrap form output for django form.
  A simple Django template tag to work with twitter bootstrap.
  .
  This package contains the Python 2.x module.
 
+Package: python3-bootstrapform
+Architecture: all
+Pre-Depends: dpkg (>= 1.15.6~)
+Depends: ${misc:Depends}, ${python3:Depends}
+Suggests: python-bootstrapfrom-doc
+Description: generate twitter-bootstrap form output for django form (Python 3)
+ Django bootstrap form generates twitter-bootstrap form output for django form.
+ A simple Django template tag to work with twitter bootstrap.
+ .
+ This package contains the Python 3.x module.
+
 Package: python-bootstrapform-doc
 Section: doc
 Architecture: all
diff --git a/debian/python-bootstrapform.install b/debian/python-bootstrapform.install
deleted file mode 100644
index 47e0ed4..0000000
--- a/debian/python-bootstrapform.install
+++ /dev/null
@@ -1 +0,0 @@
-/usr/lib/python*
diff --git a/debian/rules b/debian/rules
index 08363a1..bdb05f8 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,25 +1,18 @@
 #!/usr/bin/make -f
 
-PYTHONS:=$(shell pyversions -vr)
-#PYTHON3S:=$(shell py3versions -vr)
+#export DH_VERBOSE=1
+export PYBUILD_NAME=bootstrapform
 
 UPSTREAM_GIT = git://github.com/tzangms/django-bootstrap-form.git
 -include /usr/share/openstack-pkg-tools/pkgos.make
 
 %:
-	dh $@ --buildsystem=python_distutils --with python2,sphinxdoc
+	dh $@ --buildsystem=pybuild --with python2,python3,sphinxdoc
 
 override_dh_sphinxdoc:
 	PYTHONPATH=$(CURDIR) sphinx-build docs debian/python-bootstrapform-doc/usr/share/doc/python-bootstrapform-doc
-	dh_sphinxdoc -O--buildsystem=python_distutils
+	dh_sphinxdoc -O--buildsystem=pybuild
 
 override_dh_install:
-	rm -r $(CURDIR)/debian/tmp/usr/lib/python*/dist-packages/tests/
-	dh_install -O--buildsystem=python_distutils
-
-ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
-override_dh_auto_test:
-	set -e && for pyvers in $(PYTHONS); do \
-		python$$pyvers setup.py test ; \
-	done
-endif
+	rm -r $(CURDIR)/debian/python*-bootstrapform/usr/lib/python*/dist-packages/tests/
+	dh_install -O--buildsystem=pybuild
-- 
2.1.0

Reply via email to