- content/ + scripts/build-content.py produce content.json for every app
- stable lesson IDs with one-time progress migration (Swift, Kotlin)
- shared answer-check tests (tests/answers.json) for Kotlin and Swift
- android/desktop: Compose app with updater, speech and GTK progress import
- CI packages AppImage and Windows zip with ProGuard, runs the tests
Co-authored-by: Cursor <cursoragent@cursor.com>
Point the CI mirror at edu/, force-push both branches, refresh README/changelog, and add make smoke for installer and builds checks.
Co-authored-by: Cursor <cursoragent@cursor.com>
Use Basic auth headers and treat an empty FORGEJO_USER secret as oauth2 so pushes no longer build https://@host.
Co-authored-by: Cursor <cursoragent@cursor.com>
CI stopped publishing when the iOS job outgrew the macos-14 Xcode, so
the builds branch froze; the iOS job now runs on macos-26 and publish
keeps the previous package for any platform that failed, with
VERSION-<platform> markers naming the commit each package came from.
APKs are signed with a committed sideload key instead of the runner's
random debug key, so Android accepts them as updates, and the version
code grows with every CI run. The updater explains the unknown-sources
step, keeps the Update button after errors and checks the download is
this app.
Co-authored-by: Cursor <cursoragent@cursor.com>
Releases and version numbers are gone. CI now rebuilds all three platforms
on every change to main and commits the packages to the `builds` branch,
so what anyone downloads is the current state of the repository. The
branch is rewritten from scratch each time rather than added to, so the
repository keeps one copy of the packages instead of a ~70 MB set per
commit.
Without tags there is no version to compare, so a build carries the
commit it was made from and the branch carries a VERSION file naming the
same commit. The updater fetches those few bytes and treats any
difference as being behind; commits are not ordered, and the branch only
ever holds the current build.
The installers fetch from the branch over raw.githubusercontent.com for
the same reason.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-17 15:40:47 +02:00
Renamed from .github/workflows/release.yml (Browse further)