ripgrep: Please don't use a ~ dependency on clap

ripgrep depends on clap = "~2.18.0", which prevents building it with clap 2.19 or newer. Clap does not break backward compatibility in minor versions; it only introduces new APIs. The README for clap does mention using ~ dependencies, but as discussed in https://github.com/kbknapp/clap-rs/issues/765 , that only applies if you need to work with even older versions of Rust than clap’s backward-compatibility requirement, which means older than stable-2. Unless ripgrep has a requirement to run on ancient versions of Rust, please consider using a “compatible” version instead, such as clap = "2.18".

This change would make it much easier to package ripgrep for Linux distributions, by not requiring multiple versions of clap 2.x simultaneously. (In a Linux distribution, the packaged version of a library will always work with the packaged versions of Rust and Cargo.)

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Comments: 15 (15 by maintainers)

Commits related to this issue

Most upvoted comments

@kbknapp I am watching the clap repo. But otherwise, CI will at least catch it on my end.

I don’t plan on bumping the minimum version of rust prior to claps next major version bump, but if it ever does happen I don’t mind pinging you directly before it happens 😉

Thank you!