Expand description
The root CHANGELOG.md, read the way the roadmap shows it.
The roadmap’s release history titles each release with a headline, and its Next release block
lists what [Unreleased] has added so far. Both read the CHANGELOG through this module. It is
std-only: the web crate’s build.rs includes this file with #[path] and bakes [Unreleased]
into the page at build time, and the crate’s tests run the same code.
The headline rule is the one scripts/generate-roadmap.sh applies when it writes
roadmap_history.json (its clean_title), and tests/roadmap_page.rs holds the two readings
to the same answer on every release the CHANGELOG records.
Structs§
- Unreleased
- What
[Unreleased]holds: every addition’s headline, in order, and how many other entries there are.
Functions§
- headline
- One line’s headline. An entry’s is its first bold lead; a line with no bold text keeps its words, less one pair of wrapping parentheses. Backticks are dropped, runs of whitespace become one space, a trailing period goes, and a headline over 72 characters is cut back to its last whole word and ends in an ellipsis.
- release_
title - A release’s title, as the release history shows it: the headline of the section’s first line of content, which is its first entry or a prose preamble such as “First public release.”.
- section
- A release’s section of the CHANGELOG: the text between its
## [version]heading line and the next##heading.Nonewhen the CHANGELOG has no such release. - unreleased
- The
[Unreleased]section, read. A CHANGELOG with no[Unreleased]section has nothing in progress.