Explanation¶
Background and reasoning. Nothing here is needed to use the crate; it is here so that when the crate behaves in a way you did not expect, you can tell whether that is a decision or a defect.
| Page | Question it answers |
|---|---|
| Why release providers and git operations share one crate | What the two slices are, and why they are not two crates |
| Why backends register themselves at link time | What linkme buys, and what it costs |
| Why the write paths shell out to git | Where the "pure Rust git" claim stops being true |
| What rtb-forge does not do | The limits, stated as limits |
Where the design decisions are recorded¶
The original design records live in the rust-tool-base monorepo as point-in-time specs. They are not documentation and they are not maintained alongside the code — where a spec and this crate disagree, the crate is right. These pages restate the reasoning in their own words so you do not have to read a spec to understand the code.