#io #query #information #version #flags #set

bin+lib kdeets

Query crates.io for information about a crate

4 releases

new 0.1.4 Jan 4, 2025
0.1.3 Dec 28, 2024
0.1.2 Dec 28, 2024
0.1.1 Dec 22, 2024

#1805 in Parser implementations

Download history 116/week @ 2024-12-18 217/week @ 2024-12-25

333 downloads per month

MIT license

8MB
1.5K SLoC

kdeets

Crates.io MIT licensed Build Status Rust 1.81+ Docs BuyMeaCoffee GitHubSponsors

A utility to query crates.io for information about a crate.

Feature set

  • Versions for a crate
  • Rust versions for dependencies
  • Setup limited clone for testing

Installation

Install the CLI using cargo install.

cargo install kdeets

Check program is available and the version installed.

$ kdeets --version
kdeets 0.1.4

Usage

The available commands can be seen by running the command with the help flag.

$ kdeets --help
Query crates.io for information about a crate.

Usage: kdeets [OPTIONS] <COMMAND>

Commands:
  crate  Query crates.io for information about a crate
  rust   Query crates.io for maximum Rust version for a crate
  setup  Setup local registry for a crate
  help   Print this message or the help of the given subcommand(s)

Options:
  -v, --verbose...  Increase logging verbosity
  -q, --quiet...    Decrease logging verbosity
  -h, --help        Print help
  -V, --version     Print version

Versions for a crate (cmd: crate)

Display the key versions for the crate.

$ kdeets crate -h
Query crates.io for information about a crate

Usage: kdeets crate [OPTIONS] <CRATE>

Arguments:
  <CRATE>  The name of the crate

Options:
  -v, --verbose...  More output per occurrence
  -q, --quiet...    Less output per occurrence
  -e, --earliest    First version ever published. May be yanked
  -n, --normal      Returns crate version with the highest version number according to semver, but excludes pre-release and yanked versions
  -t, --top         The highest version as per semantic versioning specification
  -r, --recent      The last release by date, even if it’s yanked or less than highest version
  -l, --list        List all versions of the crate
  -k, --key         List key values (equivalent to `-entr`)
  -a, --all         List all versions and key values (equivalent to `-entrl`)
  -h, --help        Print help
  -V, --version     Print version

This command queries crates.io for information about a crate and reports based on the options selected.

Crates.io tracks for each crate the following versions:

  • earliest: The first version ever published. May be yanked.
  • normal: Returns crate version with the highest version number according to semver, but excludes pre-release and yanked versions.
  • top: The highest version as per semantic versioning specification.
  • recent: The last release by date, even if it’s yanked or less than highest version.

The key option lists all of these versions (equivalent to -entr).

The command can create a table listing the yank status and version for all versions of the crate.

The all option lists all versions and key values (equivalent to -entrl).

$ kdeets --no-colour crate -entrl some_crate

 Crate versions for some_crate.
 🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶🭶
   Earliest version: 0.1.0
   Highest normal version: 0.2.1
   Highest version: 0.2.1
   Most recent version: 0.2.1
    Yanked  Version 
       No     0.1.0
       No     0.1.1
       No     0.1.3
       No     0.2.1


License

Licensed under the MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT).

Dependencies

~10–23MB
~339K SLoC