A release workflow is defined in .github/workflows/release.yml.
- Trigger: push that changes the
VERSIONfile. - Branch guard: jobs run only when that push is on the repository default branch.
- Tag: the workflow reads
VERSIONand creates/uses a git tag with that exact value. - Database source: each build job downloads the latest
tlcid_database.dbfrom the latest release ofreslp/tlcid-databasebefore running PyInstaller. - Artifacts: PyInstaller builds for Linux, Windows, macOS Intel (
macos-13), and macOS ARM (macos-14) are attached to the GitHub Release. - Release notes: generated from commits since the previous tag; if no prior tag exists, full history is used.
- Update
VERSIONwith the new release value (for example0.1.2). - Commit and push that change to the default branch.
- GitHub Actions will build all platforms using the latest external database release, ensure the matching tag exists, and create/update the release.