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.
salvo-cli
Dependency ansi_term 0.12 has issues
It may not be actively developed any more. Consider changing the dependency.
Imprecise dependency requirement anyhow = 1
Cargo does not always pick latest versions of dependencies! Specify the version as
anyhow = "1.0.98"
. 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.
Dependency strum 0.26 is outdated
Consider upgrading to 0.27.1 to get all the fixes and improvements.
In Cargo, different 0.x versions are considered incompatible, so this is a semver-major upgrade.
Missing categories
Categories improve browsing of lib.rs and crates.io. Add
categories = ["template-engine"]
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.
salvo_core
docs.rs build failed
docs.rs site failed to build the crate, so users will have trouble finding the documentation. Docs.rs supports multiple platforms and custom configurations, so you can make the build work even if normal crate usage has special requirements.
Docs.rs doesn't need to run or even link any code, so system dependencies can simply be skipped. You can also set
cfg()
flags just for docs.rs and use them to hide problematic code.Dependency brotli 7 is outdated
Upgrade to 8.0.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 nix 0.29 is outdated
Upgrade to 0.30.1 to get all the fixes, and avoid causing duplicate dependencies in projects.
Dependency serde-xml-rs 0.6 is outdated
Upgrade to 0.8.0 to get all the fixes, and avoid causing duplicate dependencies in projects.
Imprecise dependency requirement flate2 = 1
Cargo does not always pick latest versions of dependencies! Specify the version as
flate2 = "1.1.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.Optional dependency 'anyhow' exposed as an implicit feature
Cargo automatically makes publicly-available crate features for every optional dependency, unless the dependencies are referenced using
dep:
syntax. Features 'anyhow', 'eyre' may have been unintentional.
salvo
Optional dependency 'salvo-proxy' exposed as an implicit feature
Cargo automatically makes publicly-available crate features for every optional dependency, unless the dependencies are referenced using
dep:
syntax. Features 'salvo-proxy', 'salvo_extra' may have been unintentional.
salvo-csrf
Imprecise dependency requirement serde_json = 1
Cargo does not always pick latest versions of dependencies! Specify the version as
serde_json = "1.0.140"
. 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.
salvo-cors, salvo-cache
Imprecise dependency requirement bytes = 1
Cargo does not always pick latest versions of dependencies! Specify the version as
bytes = "1.10.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.
salvo-proxy
Imprecise dependency requirement fastrand = 2
Cargo does not always pick latest versions of dependencies! Specify the version as
fastrand = "2.3.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.
ikigai
Crate contains junk files
The crate contains boilerplate Rust files with no real functionality.
README missing from crate tarball
Cargo sometimes fails to package the
README
file. Ensure the path to theREADME
inCargo.toml
is valid, and points to a file inside the crate's directory.
If some of these crates are unmaintained and shouldn't be checked, yank them or add [badges.maintenance]
to their
status = "deprecated"Cargo.toml
.