deb-scrub-obsolete(1)

NAME
deb-scrub-obsolete - scrub a Debian package of no longer necessary configuration

SYNOPSIS
deb-scrub-obsolete [OPTIONS]

DESCRIPTION
Scrub a Debian source package from unnecessary versioned depends, conflicts and maintscripts.

Specifically, it makes the following categories of changes:

•   obsolete maintscript entries for upgrades from versions older than that in $compat_release

•   depends on packages that are essential since $compat_release

•   build-depends on packages that are build-essential since $compat_release

•   replacing dependencies on "transitional dummy packages" with the real thing (if satisfiable since $compat_release)

•   conflicts with packages that are gone since before $compat_release

•   version constraints in build-depends or depends that are met by the package in $compat_release

This tool is separate from lintian-brush since unlike lintian-brush, it needs to take an archive-wide view of the package. It is safe to run alongside lintian-brush and will only make changes when it finds constraints that are genuinely obsolete.

  optional arguments:

-h, --help
    Show this help message and exit.

--version
    Show program's version number and exit.

-d, --directory DIR
    Directory to run in. Defaults to the current directory.

--no-update-changelog
    Do not update the changelog.

--update-changelog
    Always update the changelog.

-u, --upgrade-release RELEASE
    Don't remove any constraints that are necessary for upgrading from RELEASE or newer releases. This can either be a codename ("bookworm"), or an alias ("unstable", "old-old-stable"). Defaults to "oldstable". For a full list of options, see distro-info(1).

-c, --compat-release RELEASE
    Don't remove any constraints that are necessary for building on RELEASE or newer releases. This can either be a codename ("bookworm"), or an alias ("unstable", "old-old-stable"). For a full list of options, see distro-info(1).

--identity
    Print the identity (name and e-mailaddress) that deb-scrub-obsolete will use when committing changes, and exit.

--debug
    Print debugging information.

--keep-minimum-depends-versions
    Keep minimum version constraints in dependencies, even when the constraint is satisfied by the package version in $compat_release and thus technically unnecessary.

    Some teams deliberately maintain minimum version constraints to document upstream requirements, track which dependency versions are needed for backporting, or to express a semantic dependency on a specific feature introduced in a particular version. In such cases, using this option avoids accidentally removing constraints that carry intentional meaning beyond mere historical necessity.

ENVIRONMENT

DEB_UPDATE_CHANGELOG
    Used to control whether the changelog should be updated, depending on whether it is set to "leave", "update" or "auto". The --update-changelog and --no-update-changelog arguments override this.

COMPAT_RELEASE
    Oldest Debian release to stay compatible with. Overridden by --compat-release.

SEE ALSO
lintian-brush.conf(5) lintian-brush(1)

AUTHORS
Jelmer Vernooij <jelmer@debian.org>