doiget_cli/lib.rs
1//! Library half of the `doiget-cli` crate.
2//!
3//! The binary entry point lives in `main.rs`; this `lib.rs` re-exports the
4//! subcommand orchestrators (`commands::*`) so integration tests under
5//! `tests/` can drive them in-process without spawning a child binary.
6//! Production users invoke the binary directly via `doiget fetch ...` —
7//! `commands::fetch::run` is the single async entry point for that path.
8//!
9//! # Stability
10//!
11//! `doiget-cli`'s public API is **not** semver-locked (per
12//! `docs/PUBLIC_API.md` — only `doiget-core` is). The surface here exists
13//! solely to support integration tests; downstream crates should depend on
14//! `doiget-core` instead.
15
16#![warn(missing_docs)]
17#![forbid(unsafe_code)]
18
19pub mod commands;