Skip to main content

Changelog

Every improvement, automatically tracked from our commit history.

Subscribe via Atom feed
← Prev Page 60 of 127 Next →
February 22, 2026
patch Finance

Fix runtime crash in CategoryManagementView type resolution

Finance 3.2.0 → 3.2.1 | 2a24b31e
Details

The compiled binding cast syntax ((vm:CategoryManagementViewModel)DataContext)

in DataTemplate contexts caused a runtime ArgumentException because the XAML

type resolver could not find the VM type in the plugin assembly's search path.

Replaced with RelativeSource FindAncestor bindings which avoid the runtime type

cast entirely and resolve the parent DataContext via the visual tree instead.

Finance v3.2.1.

patch Tasks

Fix CS1998 warning in Tasks quick action save handler

Tasks 1.18.4 → 1.18.5 | 0fbb2b80
Details

Removed unnecessary async from OnQuickTaskSave — the method contains no

await calls, so async void was generating a compiler warning. The method

is a synchronous event handler that creates and updates tasks via the

service directly. Tasks v1.18.5.

patch DataFilesFinance.TestRunnerHabits

Fix all build warnings across Data, Files, Habits, and Finance plugins

Data 1.20.3 → 1.20.4 | Files 1.10.3 → 1.10.4 | Habits 1.2.0 → 1.2.1 | f52c3d6c
Details

CS0108: Dispose() methods in Data and Files ViewModels now properly override

Dispose(bool) instead of hiding the base ViewModelBase.Dispose().

CS8670/CS8602: PathFigure.Segments and PathGeometry.Figures in Habits controls

now use explicit collection constructors instead of implicit null dereference.

CS1998: Removed async keyword from synchronous methods in HabitsViewModel,

HabitsPlugin.Intents, and Finance.TestRunner, using Task.FromResult/

Task.CompletedTask where needed.

Data v1.20.4, Files v1.10.4, Habits v1.2.1.

minor Finance

Fix Finance plugin UI rendering and runtime crashes (v3.2.0)

Finance 3.1.1 → 3.2.0 | c61632f8
Details

Fixed critical runtime crash on Reconcile tab where CalendarDatePicker

bound to DateOnly instead of DateTimeOffset, causing InvalidCastException.

Fixed Reports tab where all four report panels were invisible due to

ObjectConverters.Equal comparing boxed int to string ConverterParameter.

Replaced with boolean properties for reliable visibility toggling.

Added account type selector (Checking, Savings, CreditCard, Cash, Asset,

Liability) to the Accounts creation form — previously all accounts

silently defaulted to Checking. Added auto-creation of default budget,

4 category groups (Essentials, Lifestyle, Savings & Goals, Debt Payments),

and 15 starter categories on first navigation when no budget exists.

Also creates Income and Expense internal accounts for double-entry.

Improved Register tab with column headers (Date, Payee, Amount, Status,

Category), category selector in the add-transaction form, and actual

category name resolution instead of truncated GUIDs. Added empty state

messages across all tabs guiding users on what to do when no data exists.

Fixed Summary tab using raw SystemAccentColor instead of proper brush

resource, and replaced hardcoded white foreground with theme-aware

DynamicResource for dark mode compatibility.

patch Finance

Clamp ZBB iteration floor to January 2000 instead of 2000 months back

← Prev Page 60 of 127 Next →

Get notified about new releases