Release 25.12.0
· 9 min read
This release contains the following notable improvements, along with numerous fixes:
- Experimental: Crossover report for tracking progress towards financial independence.
- Experimental: Add force reload button to settings to force update the budget client.
- Add ability to quickly create single instance schedules from the account ledger.
- Add running balance on mobile account view.
- Add CTRL/CMD+Enter keyboard command for entering only a single new transaction on desktop.
Docker Tag: v25.12.0
Features
- #5554 Add a Crossover Report for tracking progress towards financial independence. — thanks sjones512
- #5955 Adds currency support to templates and goals — thanks misu-dev
- #6050 Allow prefilling input fields on mobile new transaction page via HTTP GET parameters — thanks diktomat
- #6065 Add prompt to convert future transactions to single time schedules — thanks matt-fidd
- #6195 Adds Malaysian Ringgit (MYR) currency — thanks voidranjer
Enhancements
- #5513 Add back mobile running balance functionality — thanks youngcw & joel-jeremy
- #5874 Mobile payees: add edit payee functionality — thanks MatissJanis
- #5879 Add support for trimming footer lines in CSV imports — thanks StephenBrown2
- #5984 Make bank sync account linking modal mobile responsive — thanks matt-fidd
- #5988 Allow entering amount when covering overspent/overbudgeted — thanks joel-jeremy
- #6037 Add CTRL/CMD + Enter as keyboard shortcut to only add single transaction — thanks matt-fidd
- #6045 Add tilde(~) separator to CSV parser — thanks ishanjain28
- #6054 Auto-select country in GoCardless bank sync based on browser timezone and locale — thanks henricook
- #6084 Add support for GTQ and DKK currencies — thanks Charlisim
- #6090 Add "Force reload app" button to Advanced settings section to clear cached app version and load a fresh one — thanks MatissJanis
- #6092 Custom reports now include hidden categories and uncategorized transactions by default — thanks MatissJanis
- #6110 Allow categories to be added via a plus button in the group header — thanks NikxDa
- #6115 Add COP (Colombian Peso) to Currencies — thanks brasilikum
- #6173 Adds IDR currency — thanks misu-dev
- #6178 Improve schedule edit form responsitivity for mobile support (soon) — thanks MatissJanis
- #6204 Enhance the PWA icon to be in line with desktop — thanks MikesGlitch
- #6220 Changes and clarifies wording of "Done reconciling" button to "Lock transactions" when All reconciled! or "Exit reconciliation if leaving unbalanced. — thanks Juulz & matt-fidd
- #6252 Add Belarusian Ruble currency — thanks gopstr
Bugfix
- #5811 Fix automations not saving on modal close — thanks jfdoming
- #5946 Removes dollar symbol from template string examples. — thanks stefanedwards
- #6000 Prevent duplicate filters from being applied — thanks parapsychic
- #6025 Fix scheduled transfers not linking when payee account is imported first — thanks MatissJanis
- #6042 Include the current week in Net Worth report when viewing by Weekly interval. — thanks Jayant-Jeet
- #6046 Prevent notes input field from clearing when action.op is changed — thanks ishanjain28
- #6061 fix: openId.issuer config not loading from env vars — thanks lwschan
- #6067 Fix mac desktop app hotkeys — thanks MikesGlitch
- #6077 Fix failing import of removed Stack component — thanks matt-fidd
- #6079 Fix GitHub workflows in the compare sizes action — thanks matt-fidd
- #6082 Prefer the incoming transaction's cleared status when importing from file/bank sync — thanks Brostash
- #6086 Fix style issues after Stack migration — thanks jfdoming
- #6094 Disabled fontSizeChanged to prevent undo stack exceeding limit after dashboard reset — thanks pyfisssh
- #6098 Fix mobile layout to ensure full-width rendering for BankSyncCheckboxOptions component. — thanks MatissJanis
- #6100 Prevent the settings page from overflowing horizontally on mobile — thanks MatissJanis
- #6119 ForceReload: change web update logic from .reload() to .applyAppUpdate() — thanks MatissJanis
- #6130 Fix OpenID token expiration to correctly use seconds from config — thanks dnitros
- #6145 On iOS 26 Safari,
<input type="date">could render taller than expected. This has been fixed by disabling native appearance to enforce consistent box-sizing. — thanks pyfisssh - #6162 Force reload: update logic for service worker data refresh — thanks MatissJanis
- #6169 Fix rare schedules page crash — thanks matt-fidd
- #6175 Fix rule page crashing when many actions added — thanks MatissJanis
- #6194 Prevent reports from rerendering when re-entering the viewport — thanks matt-fidd
- #6198 Fixes the balance rule action templating variable for uncategorised transactions — thanks sys044
- #6200 Change merge keyboard shortcut to "G" to prevent confusion with amount shortcut — thanks matt-fidd
- #6227 Fix typechecker - update mismatched type — thanks MatissJanis
- #6241 Fix mobile running balance on accounts with many transactions — thanks youngcw
- #6261 Add left margin to separator between "Average" and "Filter" buttons in Spending report. — thanks Juulz
- #6269 Fix split transaction button on desktop — thanks matt-fidd
Maintenance
- #5795 Re-implement useDisplayPayee to use context to minimize SQL queries — thanks joel-jeremy
- #5961 Convert BudgetCategories component to TypeScript. — thanks MatissJanis
- #5976 Convert GenericInput component to TypeScript with generic types — thanks MatissJanis
- #5997 TypeScript: ported BudgetTable component to TS — thanks MatissJanis
- #5998 TypeScript: moving TransactionEdit component to TS — thanks MatissJanis
- #6014 Bump GitHub action versions — thanks matt-fidd
- #6022 Update types for budget table components + new hooks to reduce prop drilling — thanks joel-jeremy
- #6026 TypeScript: make component-library strict ts compliant (almost) — thanks MatissJanis
- #6029 Merge documentation into the main repository — thanks matt-fidd
- #6039 Refactored all
Stackcomponent usages toSpaceBetweencomponent across the codebase for better consistency and simplified API. — thanks MatissJanis - #6060 Upgrade vitest to v4 — thanks matt-fidd
- #6076 Add 512x512 image to binary icons file for Linux and Mac Icons — thanks MikesGlitch
- #6085 Remove unneeded property from Flathub app info description — thanks MikesGlitch
- #6091 TypeScript: refactor FiltersMenu to TS — thanks MatissJanis
- #6095 Initial cleanup following the docs repository merge — thanks matt-fidd
- #6101 Update bundle size stats and comparison to run in one workflow and summarize in a single PR comment. — thanks MatissJanis
- #6109 API: add missing TypeScript types — thanks MatissJanis
- #6114 Fix broken GitHub Action version resolutions — thanks matt-fidd
- #6121 TypeScript: make vite config files strict TS compliant — thanks MatissJanis
- #6122 Remove release note check for documentation changes — thanks matt-fidd
- #6125 Fix error in feature request workflow — thanks matt-fidd
- #6126 Fix VRT workflow artifact download — thanks matt-fidd
- #6127 Amend the contributor points calculation logic to handle the docs merge — thanks matt-fidd
- #6138 Change terminology used in points counting script — thanks matt-fidd
- #6148 Update feedback link for experimental crossover report — thanks tabedzki
- #6150 Extract schedules form into a separate component — thanks MatissJanis
- #6152 Fix bundle stats comment - broken markdown in some places — thanks MatissJanis
- #6159 Bump various dependencies — thanks matt-fidd
- #6174 Bump js-yaml from 3.14.1 to 3.14.2 — thanks MatissJanis
- #6193 Fix flaky charts VRT tests — thanks matt-fidd
- #6208 Stabilize VRT tests for cashflow report — thanks MatissJanis
- #6216 Exclude test files from build artifacts in TypeScript configuration for two packages. — thanks MatissJanis
- #6217 Revert changes to Merkle test, restoring previous key ordering and helper function usage. — thanks MatissJanis
- #6230 Remove automated PR maintainer assignment workflow and script for comments and reviews. — thanks MatissJanis
- #6231 Updating the release notes workflow to not run when docs related config have changed — thanks MikesGlitch
- #6242 Add a workflow for building a nightly signed desktop app — thanks MikesGlitch
- #6246 Nightly & PR builds now provide individual desktop app installers for smaller, faster downloads. — thanks MikesGlitch
- #6260 Bump
node-forgeto 1.3.2 — thanks matt-fidd
