Skip to content

v1.1.0 — Portfolio Manager: Update

Choose a tag to compare

@mbirrell66 mbirrell66 released this 03 Jul 23:19

Portfolio Manager 1.1.0
This release focuses on making the Personal Finance module fully functional, plus a major reduction in installer size.

New Features

  • Category management — Income, expense, and budget categories can now be created directly from the UI. Each category dropdown in the Income, Expenses, and Budgets tabs has a + New button that opens a creation dialog (expense categories support an optional monthly budget limit). Duplicate names are rejected with a clear message.

  • Recurring transactions — Incomes and expenses marked as Recurring now actually recur. They act as monthly templates: on startup, any elapsed months are posted automatically as linked transactions. Posting dates are anchored to the original day of month and clamped for shorter months (a 31st template posts Feb 28, then Mar 31 again). Re-launching the app never duplicates entries.

  • Goal progress tracking — The Goals tab has a new Update Progress button to record the current saved amount for a goal. Progress percentage updates live, and completion toggles automatically when the target is reached.

Fixes

  • Fixed a crash (DetachedInstanceError) that occurred when displaying income/expense records with their categories

  • Fixed monthly summary totals including the first days of the following month

  • Summary tab now shows real income/expense/net figures instead of placeholder values, with color-coded net

  • Budget status now compares actual spending against the limit per category and month ("Over/Under Budget" with amount spent) instead of a hardcoded value

  • Data now refreshes when switching between Personal Finance sub-tabs, so new categories and records appear everywhere immediately

  • Added validation: transactions require a category, goals require a title, and calendar dates are stored consistently

Build & Packaging

  • Installer size reduced from ~1.6GB to ~150–200MB. The previous build bundled ~4.7GB of unused ML libraries (PyTorch, transformers, spaCy, OpenCV and others) picked up from the global Python environment. New build_clean.ps1 script builds from an isolated venv containing only runtime dependencies, with spec-level excludes as a safety net

  • New database migration adds parent_id to incomes/expenses (non-destructive, runs automatically on first launch)

  • Updated requirements.txt with previously missing runtime dependencies (scipy, requests, feedparser, python-dateutil)