Skip to main content

update-changelog

Update docs/CHANGELOG.md with every commit since the last release notes update, one user-facing line per change linking to the GitHub commit. Use when the user asks to "update the changelog", "update the release notes", or add recent commits to docs/CHANGELOG.md.

Zur Installation springen

Quellinformationen

Repository
Xpra-org/xpra
Letzte Quellaktivität
14. September 2026 um 12:18
Erkannte Sprache von SKILL.md
Englisch
Sterne
2.975
Forks
237

Installationsoptionen

Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.

Quelldateien prüfen

Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.

SKILL.md wird angezeigt

SKILL.md
Quellanweisungen · Schreibgeschützte Vorschau
name
update-changelog
description
Update docs/CHANGELOG.md with every commit since the last release notes update, one user-facing line per change linking to the GitHub commit. Use when the user asks to "update the changelog", "update the release notes", or add recent commits to docs/CHANGELOG.md.
# update-changelog Adds the commits made since the last changelog update to the top (unreleased) section of `docs/CHANGELOG.md`. Readers use these notes to decide whether a release is relevant to them. ## Steps ### 1. Find the commits to add ```sh git log --oneline -5 -- docs/CHANGELOG.md # last "update the release notes" commit git log --oneline <last-update>..HEAD # new commits git diff docs/CHANGELOG.md # uncommitted edits already made by the user - keep them ``` Earlier updates sometimes missed commits, so also check every commit since the last release tag. A commit counts as covered if the changelog already links its hash, its `(cherry picked from commit ...)` origin, or the commit named in a "Port of ..." body: ```sh tag=$(git describe --tags --abbrev=0) for h in $(git log --format=%H $tag..HEAD); do grep -q "$h" docs/CHANGELOG.md && continue o=$(git log -1 --format=%b $h | sed -n 's/.*cherry picked from commit \([0-9a-f]*\).*/\1/p') [ -n "$o" ] && grep -q "$o" docs/CHANGELOG.md && continue git log -1 --format='%h %ad %s' --date=short $h done ``` Skip only housekeeping commits: `update the release notes`, `bump version`, and changelog-only doc commits. Everything else goes in, including branch-specific test changes (put those under Cosmetic). Add the missed older commits too, and tell the user which ones were missed. ### 2. Understand what each commit fixes Read `git show <hash>`: the body, the diff, and any new tests. Tests often show the real bug best. Work out what the user saw: which clients or servers, which options, and whether the code path is on by default (check `xpra/scripts/config.py`). That decides both the wording and the category. ### 3. Write the entries Format, under the right category in the top section: ``` * [description of the problem](https://github.com/Xpra-org/xpra/commit/<full 40-char hash>) ``` - **Describe the problem, not the code change.** Say what broke and for whom, e.g. "GTK clients fail to restack a window above or below another window", not "pass GdkWindow instead of ClientWindow". Mention the option or platform when the bug depends on it, e.g. "with `modal-windows` enabled, ...". - **One commit per line.** A fixup or a very closely related commit goes on the same line: ` * [main change](url) + [fixup](url)`. Other short forms already in the file also work, such as `[... ](url) [and ...](url)` and `+ [on macOS](url)`. - **Which hash to link:** - a `git cherry-pick -x` commit links the master commit named in `(cherry picked from commit ...)` - a manual port (e.g. body says "Port of <hash>") links the **branch commit**, not master - everything else links the branch commit - Always use full hashes: `git rev-parse <short>`. ### 4. Categories Use the categories already in the top section, keeping their emoji. The usual ones are: `🔧 Platforms, build and packaging`, `⚠️ Major`, `🌈 Encodings`, `Minor`, `*️⃣ Keyboard`, `📋 Clipboard`, `🎥 Recorder / replay`, `🖧 Network`, `💄 Cosmetic`. Some are subsystem-specific, e.g. `Wayland backend`, `CUDA and NVENC`, `macOS`, `MS Windows`. - Add a **new category** only when more than 4 commits refer to the same subsystem. Move the related existing entries into it. - **Major**: crashes, broken features, sessions or windows unusable, on default settings. - **Minor**: real bugs with a narrow trigger, like a non-default option or an unusual setup. - **Cosmetic**: logging errors, spurious warnings, unit tests, CI, type checks. ### 5. Finish - Change the date on the top section header (`## [x.y.z] YYYY-MM-DD`) to today. - Check coverage again with the loop from step 1. Only the housekeeping commits should be left. - Only edit `docs/CHANGELOG.md`. Do not commit unless asked. - Report what was added and where, which older commits had been missed, and anything left out and why.
Auf GitHub ansehen