Skip to main content

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 clipboard;
23pub mod command_log;
24pub mod config;
25pub mod config_cli;
26pub mod contract;
27pub mod daemon;
28pub mod doctor;
29pub mod error;
30pub mod exec;
31pub mod github;
32pub mod gitmoji;
33pub mod history;
34pub mod hooks;
35// `issue_templates` is reached only through `crate::issue_templates` from
36// `cli.rs`; no integration test imports it, so it need not be `pub` (#342).
37pub(crate) mod issue_templates;
38pub mod json_api;
39pub mod labels;
40pub mod launcher;
41pub mod lifecycle;
42pub mod milestones;
43pub mod multiplexer;
44pub mod naming;
45pub mod pr_templates;
46pub mod presets;
47pub mod review;
48pub mod statusline;
49pub mod sync;
50pub mod templating;
51pub mod trust;
52pub mod tui;
53pub mod workspace;
54pub mod worktree;