gwm/lib.rs
1//! gwm — git worktree manager (lib root).
2//!
3//! **Internal test seam — NOT a public API.** This library target exists for
4//! one reason: the binary (`src/main.rs`) and the integration tests under
5//! `tests/` share a single module tree, and Rust integration tests can only
6//! reach it through a `pub` lib. The whole crate is therefore `#![doc(hidden)]`
7//! and every `pub` item below carries **no SemVer guarantee** — signatures,
8//! modules, and types here are free to change in any release, major or not.
9//!
10//! Do not `cargo add gwm-cli` to build on `gwm::*`. The published crate ships
11//! this lib only as a byproduct of shipping the `gwm` binary; it is not a
12//! supported dependency. The contracts that *are* stable — the CLI, the
13//! `--format=json` / daemon payloads, and the `.gwm.toml` schema — are
14//! documented in `docs/6.development/3.stability.md` and frozen by
15//! `tests/contract_tests.rs`.
16#![doc(hidden)]
17
18pub mod aliases;
19pub mod bootstrap;
20pub mod clean;
21pub mod cli;
22pub mod command_log;
23pub mod config;
24pub mod config_cli;
25pub mod contract;
26pub mod daemon;
27pub mod doctor;
28pub mod error;
29pub mod exec;
30pub mod github;
31pub mod gitmoji;
32pub mod history;
33pub mod hooks;
34// `issue_templates` is reached only through `crate::issue_templates` from
35// `cli.rs`; no integration test imports it, so it need not be `pub` (#342).
36pub(crate) mod issue_templates;
37pub mod json_api;
38pub mod labels;
39pub mod launcher;
40pub mod lifecycle;
41pub mod milestones;
42pub mod multiplexer;
43pub mod naming;
44pub mod pr_templates;
45pub mod presets;
46pub mod review;
47pub mod statusline;
48pub mod sync;
49pub mod templating;
50pub mod trust;
51pub mod tui;
52pub mod workspace;
53pub mod worktree;