Merge ~lucaskanashiro/ubuntu/+source/python-traceback2:fix-ftbfs into ubuntu/+source/python-traceback2:ubuntu/devel

Proposed by Lucas Kanashiro
Status: Merged
Merged at revision: 3e2815e4d7d9177b5965d924f2181967c99fe452
Proposed branch: ~lucaskanashiro/ubuntu/+source/python-traceback2:fix-ftbfs
Merge into: ubuntu/+source/python-traceback2:ubuntu/devel
Diff against target: 57 lines (+15/-3)
3 files modified
debian/changelog (+8/-0)
debian/control (+2/-3)
debian/rules (+5/-0)
Reviewer Review Type Date Requested Status
James Page (community) Approve
Bryce Harrington (community) Approve
Review via email: mp+381471@code.launchpad.net

Description of the change

This package currently FTBFS because it build-depends on two binary packages that are not available in Focal:

* python-fixtures
* python-testtools

My first idea initially was to remove the python-traceback2 binary package and consequentially all its python 2 dependencies but its removal would require changes in many other packages. Check part of dependencies' chain below:

$ reverse-depends python-traceback2
Reverse-Depends
* python-unittest2

Packages without architectures listed are reverse-dependencies in: amd64, arm64, armhf, i386, ppc64el, s390x
$ reverse-depends -b python-traceback2
Reverse-Build-Depends-Indep
* unittest2
$ reverse-depends python-unittest2
$ reverse-depends -b python-unittest2
Reverse-Testsuite-Triggers
* contextlib2
* python-debian
* webdis

Reverse-Build-Depends
* configobj
* contextlib2
* python-concurrent.futures
* python-debian
* python-oauthlib
* python-phabricator
* python-zipp
* webdis

Reverse-Build-Depends-Indep
* python-funcsigs
* python-future
* python-linecache2
* python-mock
* python-traceback2
* python-trollius

To avoid changes in many packages during beta freeze, my proposal is just to remove the build-dependency on those two binary packages (python-fixtures and python-testtools) because they are test dependencies and do not run build time tests.

Here is my PPA with the proposed package built:

https://launchpad.net/~lucaskanashiro/+archive/ubuntu/focal-python-traceback2-fix-ftbfs/+packages

To post a comment you must log in.
Revision history for this message
Bryce Harrington (bryce) wrote :

Good analysis and the approach to address the problem seems sensible. LGTM, +1.

review: Approve
Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote :

Could you sponsor this package for me Bryce? TIA.

Revision history for this message
James Page (james-page) wrote :

I think this might be worth the small amount of pain:

$ reverse-depends python-traceback2
Reverse-Depends
* python-unittest2

Packages without architectures listed are reverse-dependencies in: amd64, arm64, armhf, i386, ppc64el, s390x

$ reverse-depends python-unittest2

[NO OUTPUT]

yes we'd need to RM py2 versions of traceback2 and unittest2 but that's the extent of the work.

Revision history for this message
James Page (james-page) wrote :

Actually no you are probably right - I'd missed the BD's in my listings.

review: Approve
Revision history for this message
James Page (james-page) :
Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote :

Changelog is now updated to close the bug, thanks for catching that!

Revision history for this message
Lucas Kanashiro (lucaskanashiro) wrote :

Could someone sponsor this package for me?

Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

Yep, doing it.

Revision history for this message
Rafael David Tinoco (rafaeldtinoco) wrote :

$ git push pkg upload/1.4.0-5ubuntu1
Enumerating objects: 22, done.
Counting objects: 100% (22/22), done.
Delta compression using up to 8 threads
Compressing objects: 100% (17/17), done.
Writing objects: 100% (17/17), 2.22 KiB | 2.22 MiB/s, done.
Total 17 (delta 11), reused 0 (delta 0)
remote: Checking connectivity: 17, done.
To ssh://git.launchpad.net/~usd-import-team/ubuntu/+source/python-traceback2
 * [new tag] upload/1.4.0-5ubuntu1 -> upload/1.4.0-5ubuntu1

$ dput ubuntu python-traceback2_1.4.0-5ubuntu1_source.changes
Checking signature on .changes
gpg: /home/rafaeldtinoco/work/sources/general/python-traceback2_1.4.0-5ubuntu1_source.changes: Valid signature from A93E0E0AD83C0D0F
Checking signature on .dsc
gpg: /home/rafaeldtinoco/work/sources/general/python-traceback2_1.4.0-5ubuntu1.dsc: Valid signature from A93E0E0AD83C0D0F
Uploading to ubuntu (via ftp to upload.ubuntu.com):
  Uploading python-traceback2_1.4.0-5ubuntu1.dsc: done.
  Uploading python-traceback2_1.4.0.orig.tar.xz: done.
  Uploading python-traceback2_1.4.0-5ubuntu1.debian.tar.xz: done.
  Uploading python-traceback2_1.4.0-5ubuntu1_source.buildinfo: done.
  Uploading python-traceback2_1.4.0-5ubuntu1_source.changes: done.
Successfully uploaded packages.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/debian/changelog b/debian/changelog
2index d504802..3b42bee 100644
3--- a/debian/changelog
4+++ b/debian/changelog
5@@ -1,3 +1,11 @@
6+python-traceback2 (1.4.0-5ubuntu1) focal; urgency=medium
7+
8+ * d/control: Do not build-depend on python-fixtures and python-testtools.
9+ Those python 2 binary packages are not available in Focal (LP: #1870078).
10+ * d/rules: Do not run tests because some dependencies are missing
11+
12+ -- Lucas Kanashiro <lucas.kanashiro@canonical.com> Tue, 31 Mar 2020 16:10:00 -0300
13+
14 python-traceback2 (1.4.0-5build1) focal; urgency=medium
15
16 * No-change rebuild to generate dependencies on python2.
17diff --git a/debian/control b/debian/control
18index 87a8913..1ef7e33 100644
19--- a/debian/control
20+++ b/debian/control
21@@ -1,7 +1,8 @@
22 Source: python-traceback2
23 Section: python
24 Priority: optional
25-Maintainer: Debian OpenStack <openstack-devel@lists.alioth.debian.org>
26+Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
27+XSBC-Original-Maintainer: Debian OpenStack <openstack-devel@lists.alioth.debian.org>
28 Uploaders:
29 Thomas Goirand <zigo@debian.org>,
30 Build-Depends:
31@@ -16,10 +17,8 @@ Build-Depends:
32 python3-setuptools,
33 Build-Depends-Indep:
34 python-contextlib2,
35- python-fixtures,
36 python-linecache2,
37 python-six,
38- python-testtools,
39 python-unittest2,
40 python3-contextlib2,
41 python3-fixtures,
42diff --git a/debian/rules b/debian/rules
43index 12911c4..3ef9f8a 100755
44--- a/debian/rules
45+++ b/debian/rules
46@@ -30,6 +30,11 @@ override_dh_clean:
47 dh_clean -O--buildsystem=python_distutils
48 rm -rf build .testrepository
49
50+override_dh_auto_test:
51+ echo "Not running tests because python-fixture and python-testtools \
52+ were removed from Focal, and the removal of python-traceback2 \
53+ would require a bunch of other removals during beta freeze"
54+
55 # Disable unit tests until there's a way to do it properly.
56 #override_dh_auto_test:
57 #ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))

Subscribers

People subscribed via source and target branches