From 0529a26618ec23db628e997370c075c495795799 Mon Sep 17 00:00:00 2001 From: Jeremy Smith <145979804+JeremySNR@users.noreply.github.com> Date: Wed, 23 Sep 2026 07:33:59 +0100 Subject: [PATCH 1/3] Require release notes for every change and show them in the app MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - CI fails a pull request that changes the app without CHANGELOG [Unreleased] notes, unless labelled "no release notes". - The release workflow refuses to build a version with no notes, before spending build time, instead of publishing empty notes. - Settings → Updates shows an available update's notes before download and this version's notes on demand; "What's new" opens once after updating. Validation sections stay on GitHub only. - Contributing guide and PR template explain how to write notes for users. Co-Authored-By: Claude Opus 5.5 (1M context) --- .github/PULL_REQUEST_TEMPLATE.md | 8 ++ .github/workflows/ci.yml | 15 +++ .github/workflows/release.yml | 6 +- CHANGELOG.md | 1 + CONTRIBUTING.md | 23 +++++ scripts/changelog-section.mjs | 22 +++-- scripts/check-release-notes.mjs | 54 +++++++++++ src/main/index.ts | 6 ++ src/main/updates.ts | 2 + src/renderer/src/App.tsx | 2 + src/renderer/src/components/SettingsModal.tsx | 18 ++++ src/renderer/src/components/WhatsNew.tsx | 93 +++++++++++++++++++ src/shared/releaseNotes.ts | 41 ++++++++ src/shared/types.ts | 2 + tests/releaseNotes.test.ts | 50 ++++++++++ tests/updates.test.ts | 7 ++ 16 files changed, 340 insertions(+), 10 deletions(-) create mode 100644 scripts/check-release-notes.mjs create mode 100644 src/renderer/src/components/WhatsNew.tsx create mode 100644 src/shared/releaseNotes.ts create mode 100644 tests/releaseNotes.test.ts diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 6bed8ef..f61f65f 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -6,6 +6,14 @@ +## Release notes + + + ## How did you test it?