Skip to main content

Release 25.5.0

· 5 min read
Julian Dominguez-Schatz

This release has many notable improvements. Some highlights:

  • Download custom reports as an image
  • Merge different transactions into a single transaction
  • Run Actual outside of a Docker container without building from source—for more information, please check out the docs
  • Use Cloudflare Access tunnels to connect to an Actual instance (newly fixed)

Docker tag: 25.5.0

Features

  • #4219 Add functionality to download custom reports as an image. — thanks ADRROE
  • #4593 Add option to control whether notes are imported during transaction imports — thanks iaewing
  • #4739 added ability to merge transactions — thanks alecbakholdin
  • #4798 Add new sync-server CLI tool to allow users to run the server with one command — thanks MikesGlitch
  • #4807 Adds a feature to resize the category names in the budget table. — thanks misu-dev

Enhancements

  • #4421 Added ACTUAL_USER_CREATION_MODE=login enviroment variable to create users on login — thanks lelemm
  • #4446 OpenID first login changed to confirm password — thanks lelemm
  • #4484 [Mobile] Drag and drop to reorder expense categories in budget page (only supports for Chromium-based browsers for now) — thanks joel-jeremy
  • #4567 Don't include hidden categories or groups in totals in tracking budget. — thanks psybers, lelemm, & youngcw
  • #4584 Show closed accounts on mobile Accounts page. — thanks alcroito
  • #4599 [Mobile] Drag and drop to reorder expense category groups in budget page (only supports for Chromium-based browsers for now). — thanks joel-jeremy
  • #4692 Add previous/next month buttons to the MonthPicker — thanks misu-dev
  • #4714 You can now unlink accounts from bank sync settings — thanks Triscal
  • #4743 Add KBCBE (KBC_KREDBEBB) to banks with limited history — thanks bddvlpr
  • #4770 Missing translations [rules and to budget] — thanks lelemm
  • #4847 Allowing the UI to call internal sync server commands when running in the Desktop app — thanks MikesGlitch
  • #4857 Flip transaction amounts for Strawberry credit cards — thanks vincegio

Bugfix

  • #4715 Reworked import to accept all amount options at the same time to fix UI lockout when using In/Out mode with existing split columns. — thanks Gmanicus
  • #4719 Fixed issue where early-posted scheduled transactions used the scheduled future date instead of today's date. — thanks Bhautik2902
  • #4724 Persist filters in Custom Report on interval or date range change — thanks tostasmistas
  • #4733 Fixed issue where sidebar wouldn't persist pinning preference on page reload — thanks alecbakholdin
  • #4735 Got rid of unnecessary warning when developing Actual — thanks alecbakholdin
  • #4749 Fix template goals not being removed in certain conditions — thanks youngcw
  • #4756 Gocardless bank sync: improved error handling for initial account linking. — thanks MatissJanis
  • #4769 Fixed issue with close account flow not properly validating transfer or category — thanks alecbakholdin
  • #4774 [Mobile] Fix income categories not changing colors based on active month — thanks joel-jeremy
  • #4780 Add support for longer running SimpleFIN transaction requests — thanks matt-fidd
  • #4812 Fix crash on transactions table with new transaction popup open — thanks jfdoming
  • #4825 Fix CLI issue where ACTUAL_DATA_DIR env variable was not being respected when no config is present — thanks MikesGlitch
  • #4836 Fix for returnUrl in OpenID auth — thanks lelemm
  • #4837 Fixed saving falsy values in saveGlobalPrefs — thanks alecbakholdin
  • #4838 Fix HTML bug in ofx2json logic — thanks jfdoming
  • #4844 Reload on all redirects to handle Cloudflare Access expiration. — thanks rgoldfinger
  • #4845 Escape Payee for Commerzbank RegExp — thanks misu-dev
  • #4853 Fix load backup modal giving a blank screen when opened in the desktop app — thanks MikesGlitch
  • #4860 Fix some desktop app menu links — thanks MikesGlitch
  • #4875 [Mobile] Fix overspent banner showing previously active month's overspent categories. — thanks joel-jeremy
  • #4880 [Mobile] Fix hidden category groups not being hidden — thanks joel-jeremy
  • #4881 Fix running balance on split schedule previews — thanks youngcw
  • #4902 Fix OpenID first login using config.json or ENV vars — thanks lelemm

Maintenance

  • #4544 Use AQL query to query category groups in loot-core server handlers and add a new categories query option for category_groups table to include/exclude querying of associated categories i.e. q('category_groups').options({ categories: 'all' }).select('*') — thanks joel-jeremy
  • #4547 Extract budget file related server handlers from main.ts to server/budgetfiles/app.ts — thanks joel-jeremy
  • #4660 Extract auth related server handlers from main.ts to server/auth/app.ts — thanks joel-jeremy
  • #4662 Extract encryption related server handlers from main.ts to server/encryption/app.ts — thanks joel-jeremy
  • #4672 Converted IndexedDB files to strict TypeScript. — thanks MatissJanis
  • #4674 Added initial Playwright tests for Electron — thanks MikesGlitch
  • #4700 Upgrade to React v19 — thanks MatissJanis
  • #4710 improving typechecker and lint local performance — thanks MatissJanis
  • #4740 Fix bump versions script behaviour — thanks jfdoming
  • #4752 Added Electron Playwright test fixture — thanks MikesGlitch
  • #4757 add eslint auto-fixer to lint-staged — thanks MatissJanis
  • #4767 Fix loot core resolution for electron in dev mode — thanks MikesGlitch
  • #4768 Remove ngrok from electron. In future we'll move to a plugin. — thanks MikesGlitch
  • #4816 Move loot-core/client codes over to desktop-client package — thanks joel-jeremy
  • #4824 Slow improvements to Account.tsx (1/many) — thanks jfdoming
  • #4832 Bump http-proxy-middleware from 3.0.3 to 3.0.5 — thanks jfdoming
  • #4833 Bump vite from 5.4.8 to 5.4.18 — thanks jfdoming
  • #4834 Bump nanoid from 3.3.7 to 3.3.11 — thanks jfdoming
  • #4840 Move sync-server to vitest — thanks jfdoming
  • #4851 Move crdt to vitest — thanks jfdoming
  • #4856 Move api/desktop-client/eslint-plugin-actual to the newest vitest — thanks jfdoming
  • #4859 Move loot-core to vitest — thanks jfdoming
  • #4862 Move some .d.ts files to .ts — thanks jfdoming