Extend gitlog2changelog to report start/end commits and allow to tweak them; allow to disable generation of changelog formats or completely#3019
Merged
jimklimov merged 13 commits intonetworkupstools:masterfrom Jul 17, 2025
Conversation
…rategy-plugin Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…ut.dict: introduce option to "configure --enable-docs-changelog" (or not) Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…onfgure option to customize git log starting point Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…nerate and embed a @GITLOG_START_POINT@ value to consider Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
… exists If a recipe iteration is written incorrectly, make can skip work on some rules (evaluating them as true without writing outputs we need) Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…not empty before moving to final name (else delete and bail out) Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…NPUT Actually saw it with two tokens recently, for the text and .prep-src-docs touch-file Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…eport it in text Technically a step to multi-section changelogs, covering each release separately as a range between git tags, regardless of timestamp overlap (with much older prepared commits going into much newer release later on). Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…onfgure option to customize git log ending point [networkupstools#3019] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…NPUT Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…not a suffix rule Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
jimklimov
added a commit
that referenced
this pull request
Jul 17, 2025
Member
Author
|
NOTE: This spectacularly misfired when trying to release v2.8.4, because many CI agents do not have doc tools but the |
jimklimov
added a commit
that referenced
this pull request
Aug 8, 2025
…, #3053] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
A massive part of developer iteration time when docs are enabled is repetitive re-generation of the
ChangeLogdocument (export from git to text, by default sincev2.6.0) and especially generation of HTML and PDF variants from that, as git index changes and there is reason to re-generate these documents.This PR allows to disable change log completely, or select just some of many formats (text, adoc, html-single, html-chunked, pdf), or reduce its size (e.g. since most-recent release till HEAD) when we do want docs recipes challenged but not wasting a lot of time on that.
For (pre-)release builds, or as fallback, it should by default enable the same scope as before (
v2.6.0..HEAD).This change still allows to explicitly
make Changelogor(cd docs && make -j ChangeLog.{pdf,html,chunked})(if needed tools are available) - just that it is not among dependencies by default.It also does not prevent building a
ChangeLogfile as required byEXTRA_DISTformake dist(check), however its starting/ending points are now subject to new options, whose defaults (auto) vary depending on developer vs. release build.The generated document now adds a notice about commits it covers:
This potentially allows generation of multiple sections per release (as ranges between neighboring git tags), so that changes are represented not only by author timestamp, but also grouped by when they show up in the released product (we have old branches getting merged years after they were written). Recipes for this part should be straightforward, but not addressed yet.