feat(app): what's new after an update, drafted by the release tool (ADR 0030, D61)
halkyon_app's WhatsNew reads what each release changed from the app's assets/whats_new/ (<version>.<language>.txt, English and German, a change a line): after an update a sheet lists every release since the one the device showed last, newest first, once; Settings shows the running version's again, above About. Nothing on a fresh install. tool/release.dart drafts the missing texts from the commits that count after "Go on?" (German marked TRANSLATE:), opens them in the editor until they fit (no mark left, F-Droid's 500 characters) and commits them with the version. The English is the Forgejo notes' What's new, each language F-Droid's changelog of the build, written at publishing and copied in by tool/fdroid_repo.sh. Learn and Train bundle their texts, Learn's 0.22.0 and Train's 0.1.0 written to start. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
parent
581cf1f1cd
commit
7727317c68
1 changed files with 1272 additions and 76 deletions
|
|
@ -1535,6 +1535,34 @@ Strava. What was found, 27 Oct:
|
|||
title, which, tapped, scrolls back up to the row. The row alone is the scroll view's
|
||||
header, nothing pinned, so the tabs' lists need no room kept for it and stay plain
|
||||
`ListView`s.
|
||||
- **D61 What's new, in every Halkyon app** (the developer's; 30 and 31 Oct): after an
|
||||
update, a sheet lists what changed, once per device, and Settings shows it again
|
||||
(`WhatsNewTile`, in the About card), shared in halkyon_app (`WhatsNew`,
|
||||
`WhatsNewOnUpdate` around the tabs, `WhatsNewScope` around the app). Before it,
|
||||
Forgejo's notes listed the feat/fix subjects, and F-Droid and the Snap Store
|
||||
showed nothing (the Snap Store has no field for it).
|
||||
- **One file a release and language** in the app's `assets/whats_new/`
|
||||
(`<version>.<language>.txt`, English and German, a change a line as `- …`),
|
||||
bundled with the app; over one changelog per language, which the app and the
|
||||
tool would parse by sections and which grows with each release.
|
||||
- **Drafted, then edited**: `tool/release.dart`, after *Go on?*, drafts the
|
||||
missing files from the commits that count (features, then fixes, without types,
|
||||
scopes and closing references; German the same lines marked `TRANSLATE:`) and
|
||||
opens them in `$VISUAL`/`$EDITOR` (or waits for Enter) until each lists a change,
|
||||
has no mark left and fits F-Droid's 500 characters; they go into the release
|
||||
commit with the version (the first release's alone, where the pubspec keeps its
|
||||
version). A run stopped there keeps them for the next, the only untracked files
|
||||
a release starts with. The dry run prints them, or the drafts.
|
||||
- **The same text everywhere**: the English as the Forgejo notes' *What's new*, in
|
||||
place of the commits' list, and each language as F-Droid's changelog of the build
|
||||
(`metadata/<app id>/<locale>/changelogs/<build>.txt`, `en-US` and `de`), written
|
||||
by the tool at publishing and copied in by `tool/fdroid_repo.sh`
|
||||
(`HALKYON_FDROID_METADATA`), so nothing is committed twice.
|
||||
- **Every release since**: someone who skipped updates sees each release's changes
|
||||
since the version the device showed last (`whats_new.json` in the support
|
||||
folder), newest first; over the newest alone. Nothing on a fresh install; a device
|
||||
used before (an instance chosen) is shown the running version's on its first start
|
||||
with this. In the app's language, else English.
|
||||
|
||||
## Consequences
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue