Lintian ReportsBETA

empty-rust-library-declares-provides

For some time, Rust libraries used empty installation packages with long Provides lines in their control files to deal with peculiarities in Rust packaging. It is no longer considered acceptable because it strains our archive infrastructure.

Rust packages should not be empty and merely declare a Provides control field. Instead, please merge such packages into the main installation package. When using debcargo, this can usually be achieved by adding collapse_features = true to the debcargo.toml file.

You can see some examples here:

- https://sources.debian.org/src/rust-dbus/0.9.0-2/debian/control/
- https://sources.debian.org/src/rust-x11rb/0.7.0-1/debian/control/

The decision to burden the Rust packaging team with that extra step was made after weighing all possible alternatives.

For more information please consult:

The tag is present in Lintian version 2.114.163. That is the most recent version we know about.

We use semantic versions. The patch number is a commit step indicator relative to the 2.111.0 release tag in our Git repository.

You can find the detection logic for this version at commit ffc17eb. For merge requests, please use the latest version in the Lintian check languages/rust.

Visibility: error

The following 221 source packages in the archive triggered the tag 652 times (in any Lintian version).

We found 154 overrides. The tag performed 76% of the time.