python3-script-but-no-python3-dep

Packages with Python3 scripts should depend on the package python3. Those with scripts that specify a specific version of Python3 must depend, recommend or suggest on that version of Python3 (exactly).

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 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 /usr/bin/python3.8 binary.

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 correct dependency.

In some cases a weaker relationship, such as Suggests or Recommends, will be more appropriate.

If the script is not meant to be executable, but meant to be consumed by other programs or are reserved for specific use, for instance, apport hooks that are installed in /usr/share/apport/package-hooks, the script should be made non-executable.

Severity: error
Experimental: false

See also