GoogleChrome / GoogleChrome/ripunzip

Split cli and lib somehow

Open
#100 1 comment 1 reaction 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.