Bug#1029727: python-debian: please depend on zstd

Stuart Prescott stuart at debian.org
Thu Mar 2 06:42:07 GMT 2023


Hi folks

On 27/01/2023 06:17, Jelmer Vernooij wrote:
> On Thu, Jan 26, 2023 at 07:49:28PM +0100, Gianfranco Costamagna wrote:
>> Hello, I see dh-cmake FTBFS in Ubuntu due to this:

An update from the python-debian side - in git, all the packages that 
were in Recommends were moved to Suggests. Libraries recommending 
packages has always been something I thought was odd - a library is 
always being driven by some calling code that knows whether it needs 
certain features and so it needs to take responsibility for ensuring 
that optional dependencies are present.

In the case of dh-cmake, it feels to me like dh-cmake knows that it is 
going to manipulate .deb files and for that, the optional dependencies 
to do so should be installed too (zstd). In the same way something that 
knows it wants to check gpg signatures on Release files should ask for 
gpgv to be installed so that the deb822 module can oblige.

Asking dpkg to do the decompression rather than zstd would also be 
plausible (based on dpkg-deb --fsys-tarfile and --ctrl-tarfile). 
However, I think that would be a substantial rewrite of the way the 
DebPart class is built and, for the purposes of portability, we'd want 
the pure python methods to still work (except Ubuntu deb files). I'd be 
happy to see a patch that tried but I suspect it would be too invasive 
for bookworm at this stage.

It's hard to see a way of avoiding a delta somewhere between Debian and 
Ubuntu, either by having dh-cmake or python3-debian drag in zstd. My 
suggestion is that it should be with dh-cmake since that is what needs 
zstd, not all the myriad other uses of python3-debian.

cheers
Stuart

-- 
Stuart Prescott   http://www.nanonanonano.net/ stuart at nanonanonano.net
Debian Developer  http://www.debian.org/       stuart at debian.org
GPG fingerprint   90E2 D2C1 AD14 6A1B 7EBB 891D BBC1 7EBB 1396 F2F7



More information about the pkg-python-debian-maint mailing list