GoogleChrome / GoogleChrome/ripunzip
Split cli and lib somehow
- Dominant language
- Rust
- Stars
- 294
- Forks
- 30
- PR merge metrics
- No merged PRs in 30d
Description
For anyone using the library, they have to pull in `clap`, `env_logger`, etc.
Options
- Separate packages
- `cli`feature (on or off by default)
See also https://blog.rust-lang.org/inside-rust/2024/02/13/this-development-cycle-in-cargo-1-77/#when-to-use-packages-or-workspaces which discusses some of the trade offs
For context, I noticed this when reading [a blog post](https://vincents.dev/blog/rust-dependencies-scare-me/) complaining about dependency counts and tried to reproduce their setup.
Contributor guide
Research direction
Start by inspecting the current package and dependency setup, then read the linked Cargo guidance on packages, workspaces, and optional features. The issue does not name files or tests; completion would mean library users no longer pull in CLI dependencies such as clap and env_logger, using one of the proposed designs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli, developer-experience
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100