Skip to content

build: embed version string in all platform artifacts - #6

Merged
tlamy merged 1 commit into
mainfrom
release-refinement
Mar 1, 2026
Merged

build: embed version string in all platform artifacts#6
tlamy merged 1 commit into
mainfrom
release-refinement

Conversation

@tlamy

@tlamy tlamy commented Mar 1, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add determine-version CI job that runs semantic-release --dry-run on main (fallback: last git tag) and passes the resolved version to all build jobs
  • macOS: version embedded in CFBundleShortVersionString/CFBundleVersion via cmake bundle properties and bundle_macos.sh Info.plist generation
  • Linux/DEB: CPACK_PACKAGE_VERSION now uses APP_VERSION instead of the hardcoded 1.0.0
  • Windows: new src/P2ProViewer.rc.in template generates a resource file with VERSIONINFO (visible in Explorer → Properties → Details) and an embedded icon (converted from icon.png via ImageMagick in CI)

Test plan

  • Push to a feature branch → check determine-version logs show last git tag version
  • Push a fix:/feat: commit to main → verify determine-version outputs the next semver and all three build jobs use it
  • Windows: confirm exe Properties → Details tab shows correct version, and icon appears in Explorer/taskbar
  • macOS: confirm Get Info on .app shows correct version; check Info.plist contains CFBundleShortVersionString
  • Linux: run dpkg --info *.deb and verify the package version matches the release version

🤖 Generated with Claude Code

- Add APP_VERSION cmake variable (parsed from x.y.z into MAJOR/MINOR/PATCH)
- macOS: set CFBundleShortVersionString/CFBundleVersion via cmake bundle
  properties and bundle_macos.sh Info.plist generation
- Linux/DEB: CPACK_PACKAGE_VERSION now uses APP_VERSION instead of
  hardcoded 1.0.0
- Windows: generate P2ProViewer.rc from template (src/P2ProViewer.rc.in)
  with VERSIONINFO and icon resource; icon converted from icon.png in CI
- CI: add determine-version job that runs semantic-release --dry-run on
  main (fallback: last git tag) and passes the result to all build jobs

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@tlamy
tlamy merged commit f274271 into main Mar 1, 2026
9 checks passed
@tlamy
tlamy deleted the release-refinement branch March 1, 2026 10:50
@github-actions

github-actions Bot commented Mar 1, 2026

Copy link
Copy Markdown

🎉 This PR is included in version 1.1.1 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant