Skip to content

v3.0.8

Choose a tag to compare

@github-actions github-actions released this 24 Mar 02:07
· 153 commits to main since this release

✨ V3.0.8 — Dynamic Version Display & Check for Updates Button

Changes

🔄 Dynamic Version (No More Hardcoded Strings)

The app previously displayed V3.0.0 regardless of the actual release — a hardcoded string that was never updated. Now:

  • Single source of truth: new core/version.py module with __version__ = "3.0.8"
  • Title bar & header dynamically show the real version
  • Pre-push hook now reads from core/version.py and auto-syncs pyproject.toml + README.md
  • Future releases will never have stale version displays again

🔔 Check for Updates Button

A new "Check for Updates" button has been added to the Settings modal:

  • Pings GitHub Releases API in the background
  • Shows ✓ Up to date (V3.0.8) if current
  • If a newer version exists: transforms into a "Download VX.Y.Z" button that opens the GitHub release page in your browser

🔐 File Locking Fixes (from V3.0.7)

  • Memory-buffered xlrd reads (bypass OS mmap locking)
  • AutomationSecurity = 3 to bypass Windows "Protected View" on downloaded files

📋 QA Summary

  • ✅ Ruff: 0 lint errors
  • ✅ Pytest: 140/140 tests passed
  • ✅ Real file integration test: Sale Report 2026.xls processed end-to-end successfully
  • ✅ Pre-push version audit: all files synced at v3.0.8

📦 Downloads

Platform Download
Windows BOT-ExRate-Windows.zip
macOS BOT-ExRate-macOS.zip
Linux BOT-ExRate-Linux.tar.gz