#1099554 python3.13-{gdbm,tk} do not have any python dependencies

Package:
python3.13-gdbm
Source:
python3.13-gdbm
Description:
GNU dbm database support for Python (v3.13)
Submitter:
Adrian Bunk
Date:
2025-04-10 21:39:02 UTC
Severity:
normal
Tags:
#1099554#5
Date:
2025-03-04 22:48:04 UTC
From:
To:
Package: python3.13-gdbm
Depends: libc6 (>= 2.2.5), libgdbm6t64 (>= 1.16)

Package: python3.13-tk
Depends: libc6 (>= 2.2.5), libtcl8.6 (>= 8.6.0), libtk8.6 (>= 8.6.0)


Adding
  Depends: python3.13
should be correct, so that removing an old libpython3.*-minimal
will also remove them.


This might also be the root cause of the problem workarounded with
  * python3.x-tk: Make byte-compilation depend on the availability of
    the interpreter.


(Severity of this bug might be debatable, but it's trivial to fix.)

#1099554#12
Date:
2025-03-06 07:58:25 UTC
From:
To:
Control: severity -1 important
 > >

No, the root cause is with the proposed solution, you have hard coded
dependencies on all python3.x versions, forcing installation of these.
Which is not what I would like to have.

You should not directly depend on those packages, but instead using the
python3-gdbm and python3-tk packages as dependencies.

If people insist on having this dependency, then we'll have to build the
python3-{gdbm,tk} packages from a separate source again, and removing
the python3.XY-{gdbm,tk} packages.

Matthias

#1099554#19
Date:
2025-03-06 14:26:57 UTC
From:
To:
Hi Matthias (2025.03.06_03:58:25_-0400)

Let me expand on this a little:

tk and gdbm are stdlib modules that we make optional in Debian, shipping
them in separate binary packages.

Packages that need gdbm or tk depend on python3-gdbm and python3-tk, as
if they were 3rd party python libraries.

python3-gdbm (for example) depends on "python3.12-gdbm, python3.13-gdbm"
(before the 3.13-only transition).
This gives the same result as would be expected for a 3rd party python
library: the module is available for all supported python3 versions. It
just happens to have been achieved via binary packgages built in the
python3.12 and python3.13 source packages.

If we added the dependencies you propose, then installing python3-gdbm
would necessarily install all supported python versions. This isn't
desired.

Stefano