Skip to content

v3.0.10

Choose a tag to compare

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

What's Fixed

🐛 Bug Fix: Exrate Tab Processing

  • Root cause: User workbooks contain Exrate USD and Exrate EUR tabs with non-standard headers (Exchange Rates of US DOLLAR). These tabs were not skipped, causing both the COM engine (Windows) and openpyxl engine (macOS) to try processing them as data sheets — leading to failures.
  • Fix: Expanded SKIP_SHEET_NAMES in both engine.py and com_engine.py to include Exrate USD / Exrate EUR.

🔧 Hardened File Handle Cleanup

  • Added explicit del wb + gc.collect() after workbook close to guarantee file handles are released immediately
  • Added os.path.normcase() for case-insensitive path comparison on Windows
  • Added time.sleep(0.1) COM cleanup delay to prevent Windows file lock conflicts

✅ Verified

  • Both .xlsx and .xls process successfully (450 ExRate rows each)
  • 140/140 tests pass, 0 lint errors

Full Changelog: v3.0.9...v3.0.10