Skip to content

New tag#10

Merged
shaygol merged 7 commits into
mainfrom
new_tag
Mar 31, 2026
Merged

New tag#10
shaygol merged 7 commits into
mainfrom
new_tag

Conversation

@shaygol

@shaygol shaygol commented Mar 31, 2026

Copy link
Copy Markdown
Owner

No description provided.

Shay Goldshmit and others added 7 commits January 31, 2026 03:07
This commit includes major cleanup and improvements across the codebase:

Core Changes:
- Remove settings.json persistence mechanism (simplified configuration)
- Remove window geometry save/restore feature (simpler startup)
- Fix error reporter to ignore KeyboardInterrupt and SystemExit
- Keep dashboard.xlsx template in repo for deployment

Code Changes:
- config.py: Removed settings file functions (load/save/get/set_setting)
- gui_app.py: Removed window geometry persistence imports and logic
- error_reporter.py: Added filtering for KeyboardInterrupt/SystemExit

Documentation Updates:
- README.md: Removed references to Window Persistence
- roadmap.md: Added (replaces IMPROVEMENTS.md) with updated features list
- IMPROVEMENTS.md: Deleted (replaced by roadmap.md)

Tests:
- Added test_category_manager_robustness.py
- Added test_duplicate_detection.py
- Added test_file_deletion.py
- Removed tests/smoke/test_smoke.py (obsolete)

Git Tracking Cleanup:
- Removed UserFiles/categories.json from tracking (user's personal data)
- Removed UserFiles/backups/ from tracking (backup files)
- Removed output/budget.log from tracking (runtime logs)
- Kept UserFiles/dashboard.xlsx for deployment workflow

The application now starts with default window size (1200x800) and
focuses on core functionality without unnecessary persistence overhead.
Allow text-based credit card PDFs to go through the same import flow as Excel files, and harden statement parsing so imported merchant data is usable without manual cleanup.
Prevent noisy PDF parser debug logs from flooding the application output and clean up the GUI log handler before Qt teardown to avoid shutdown crashes.
State truthfulness fixes:
- Record hashes only after successful dashboard write
- Move TRANSACTIONS_DIR to appdata/pending (staging area)
- Archive files to backups/transactions only on success
- Show success popup only when dashboard write succeeds
- Reload full dashboard data after write instead of partial batch
- Single open-save cycle in dashboard writer (atomic writes)
- Lazy error directory creation
- Fix premature archive during file loading
- Fix flaky duplicate detection tests
- Fix empty string conflict detection and subcategory mapping
- Validate stale category mappings against template before write
- Remove duplicate ALLOWED_FILE_EXTENSIONS constant

Versioning and release:
- Add VERSION file (0.1.0) and APP_VERSION in config
- Show version in GUI window title
- Release workflow: version input, git tag, GitHub Release with exe
- Dashboard backups named with date suffix (.xlsx instead of .backup)
@shaygol
shaygol merged commit c41c636 into main Mar 31, 2026
1 check passed
@shaygol
shaygol deleted the new_tag branch March 31, 2026 09:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant