Issues found
Based on crates you own that have been published to crates.io. The best way to monitor these issues is to subscribe to the atom feed in your RSS reader.
hyper-sse
Dependency base64 0.9.2 is significantly outdated
Upgrade to 0.22.1 to get all the fixes, and avoid causing duplicate dependencies in projects.
In Cargo, different 0.x versions are considered incompatible, so this is a semver-major upgrade.
Dependency futures 0.1 has issues
It may not be actively developed any more. Consider changing the dependency.
Dependency hyper 0.12 is significantly outdated
Upgrade to 1.6.0 to get all the fixes, and avoid causing duplicate dependencies in projects.
Easy way to bump dependencies:
cargo install cargo-edit; cargo upgrade -i
; Also check out Dependabot service on GitHub.Dependency tokio 0.1 has issues
It may not be actively developed any more. Consider changing the dependency.
Imprecise dependency requirement serde = 1
Cargo does not always pick latest versions of dependencies! Specify the version as
serde = "1.0.219"
. IfCargo.lock
ends up having an unexpectedly old version of the dependency, you might get a dependency that lacks features/APIs or important bugfixes that you depend on. This is most likely to happen when using theminimal-versions
flag, used by users of old Rust versions.This crate does not bump semver-minor when adding new features, so to be safe you get all the features/APIs/fixes that your crate depends on, require a more specific patch version.
Latest stable release is old
It's been over 6 years. Is this crate still maintained? Make a new release, either to refresh it, or to set
[badges.maintenance] status = "deprecated"
(or
"as-is"
,"passively-maintained"
).If the crate is truly stable, why not make a 1.0.0 release?
Dependency libhydrogen 0.1.1 is slightly outdated
Consider upgrading to 0.4.6 to get all the fixes and improvements.
License Apache-2.0/MIT is not in SPDX syntax
Use
OR
instead of/
.Missing keywords
Help users find your crates. Add
keywords = ["sse", "hyper", "server-sent-events", "message", "json"]
(up to 5) to theCargo.toml
. Best keywords are alternative terms or their spellings that aren't in the name or description. Also add a keyword that precisely categorizes this crate and groups it with other similar crates.
hdd_standby
Incorrect dependency requirement libc = *
We could not parse it. Please check the semver syntax.
Cargo used to be more forgiving about the semver syntax, so it's possible that an already-published crate doesn't satisfy the current rules.
Latest stable release is old
It's been over 8 years. Is this crate still maintained? Make a new release, either to refresh it, or to set
[badges.maintenance] status = "deprecated"
(or
"as-is"
,"passively-maintained"
).Missing categories
Categories improve browsing of lib.rs and crates.io. Add
categories = ["hardware-support"]
to theCargo.toml
.Even if there are no categories that fit precisely, pick one that is least bad. You can also propose new categories in crates.io issue tracker.
Missing keywords
Help users find your crates. Add
keywords = ["power", "hdd", "state", "check", "libray"]
(up to 5) to theCargo.toml
. Best keywords are alternative terms or their spellings that aren't in the name or description. Also add a keyword that precisely categorizes this crate and groups it with other similar crates.
cmdline-parser
Missing categories
Categories improve browsing of lib.rs and crates.io. Add
categories = ["…"]
to theCargo.toml
.Latest stable release is old
It's been over 8 years. Is this crate still maintained? Make a new release, either to refresh it, or to set
[badges.maintenance] status = "deprecated"
(or
"as-is"
,"passively-maintained"
).License MIT/Apache-2.0 is not in SPDX syntax
Use
OR
instead of/
.Missing keywords
Help users find your crates. Add
keywords = ["cmd-line", "parser", "shell", "building", "default"]
(up to 5) to theCargo.toml
. Best keywords are alternative terms or their spellings that aren't in the name or description. Also add a keyword that precisely categorizes this crate and groups it with other similar crates.
si7021
Dependency i2cdev 0.4.1 is outdated
Upgrade to 0.6.1 to get all the fixes, and avoid causing duplicate dependencies in projects.
Imprecise dependency requirement byteorder = 1
Cargo does not always pick latest versions of dependencies! Specify the version as
byteorder = "1.5.0"
. IfCargo.lock
ends up having an unexpectedly old version of the dependency, you might get a dependency that lacks features/APIs or important bugfixes that you depend on. This is most likely to happen when using theminimal-versions
flag, used by users of old Rust versions.If you want to keep using truly minimal dependency requirements, please make sure you test them in CI with
-Z minimal-versions
Cargo option, because it's very easy to accidentally use a feature added in a later version.Latest stable release is old
It's been over 5 years. Is this crate still maintained? Make a new release, either to refresh it, or to set
[badges.maintenance] status = "deprecated"
(or
"as-is"
,"passively-maintained"
).License Apache-2.0/MIT is not in SPDX syntax
Use
OR
instead of/
.Missing keywords
Help users find your crates. Add
keywords = ["thermometer", "driver", "i²c", "hygrometer", "i2c"]
(up to 5) to theCargo.toml
. Best keywords are alternative terms or their spellings that aren't in the name or description. Also add a keyword that precisely categorizes this crate and groups it with other similar crates.Using outdated edition for no reason
We estimate that this crate requires at least Rust 1.46, which is newer than the last 2015-edition compiler. You can upgrade without breaking any compatibility. Run
cargo fix --edition
and updateedition="…"
inCargo.toml
.Using the latest edition helps avoid old quirks of the compiler, and ensures Rust code has consistent syntax and behavior across all projects.
hdd_standby, cmdline-parser, hyper-sse
The Cargo package has no git commit information
Before publishing a package, make sure all packaged files are committed to the repository, and there are no "dirty" files. Push this commit to crate's public repository.
To protect against supply chain attacks similar to CVE-2024-3094, lib.rs will soon start flagging non-reproducible packages without public source code as suspicious. Currently only git repositories are supported (but may be hosted anywhere, not just GitHub). If you'd like a different SCM supported, please file a feature request.
If some of these crates are unmaintained and shouldn't be checked, yank them or add [badges.maintenance]
to their
status = "deprecated"Cargo.toml
.