Bug#1067674: library package (arch any) depending on a "common" package with too strict version constraint

Matthias Klose doko at debian.org
Mon Mar 25 12:32:51 GMT 2024


Package: src:folks
Version: 0.15.9-1
Severity: important
Tags: patch

This is a bad packaging practice which happens way to often within all 
the GTK/Gnome packaging (cloning for mutter as well).  The scenario goes 
as follows:

  - upload a new package

  - build fails on "all", not building the "common" package.

  - build succeeds on other architectures, in most cases
    because the packagers don't run the tests, or ignore test
    results.

  - the packages then are not installable anymore until the
    uploads are in sync, blocking any other builds depending
    on these packages.  This can take a long, if the uploader
    goes to vacation, or a new package build takes ages (yes,
    LLVM had that issue as well, and LLVM builds take days).

proposed patch attached. Note that (>= ${source:Version}) has the same 
problem, and doesn't help either. Feel free to use some other version 
constraint than the upstream version.

diff -Nru folks-0.15.9/debian/control folks-0.15.9/debian/control
--- folks-0.15.9/debian/control	2024-03-23 12:41:20.000000000 +0100
+++ folks-0.15.9/debian/control	2024-03-24 22:06:08.000000000 +0100
@@ -31,7 +31,7 @@

  Package: libfolks26
  Architecture: any
-Depends: folks-common (= ${source:Version}),
+Depends: folks-common (>= ${upstream:Version}),
           ${misc:Depends},
           ${shlibs:Depends}
  Recommends: libfolks-eds26
diff -Nru folks-0.15.9/debian/rules folks-0.15.9/debian/rules
--- folks-0.15.9/debian/rules	2024-03-23 12:41:20.000000000 +0100
+++ folks-0.15.9/debian/rules	2024-03-24 22:06:08.000000000 +0100
@@ -35,3 +35,8 @@
  	dh_auto_test --no-parallel -- --timeout-multiplier 3

  override_dh_gnome_clean:
+
+
+override_dh_gencontrol:
+	dh_gencontrol -- \
+	  -Vupstream:Version=$(shell dpkg-parsechangelog -S Version | sed 
's/-[^-]*$$//')



More information about the pkg-gnome-maintainers mailing list