Hi mentors,
I was previously instructed to remove python3 from my package’s suggests
because it is always installed.¹ However when doing this and now trying
to package a new version, Lintian is upset:
E: rumur: python3-script-but-no-python3-dep python3 (does not satisfy
python3:any | python3-minimal:any) [usr/bin/rumur-run]
N:
N: Packages with Python3 scripts should depend on the package
python3. Those with scripts that specify a specific version of Python3
must depend, recommend
N: or suggest on that version of Python3 (exactly).
N:
N: For example, if a script in the package uses #!/usr/bin/python3,
the package needs a dependency on python3. If a script uses
#!/usr/bin/python3.8, the
N: package needs a dependency on python3.8. A dependency on python
(>= 3.8) is not correct, since later versions of Python may not provide the
N: /usr/bin/python3.8 binary.
N:
N: If you are using debhelper, adding ${python3:Depends} to the
Depends field and ensuring dh_python3 is run during the build should
take care of adding the
N: correct dependency.
N:
N: In some cases a weaker relationship, such as Suggests or
Recommends, will be more appropriate.
N:
N: Visibility: error
N: Show-Always: no
N: Check: scripts
The Lintian advice appears to contradict mentor instructions. What is
the right approach here? Is python3 meant to appear somewhere else as a
weak dep?
Thanks,
Matt
¹ https://lists.debian.org/debian-mentors/2025/01/msg00052.html