Skip to content
This repository was archived by the owner on Nov 18, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
117 changes: 117 additions & 0 deletions blog/2025-03-01-release-25-3-0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
---
title: Release 25.3.0
description: New release of Actual.
date: 2025-03-05T10:00
slug: release-25.3.0
tags: [announcement, release]
hide_table_of_contents: false
authors: jfdoming
---

The release has the following notable improvements:

- New UI for managing bank sync
- Support for some additional languages
- Lots of bugfixes and maintenance work

**Important notes**
- Starting this release, the `actual-server` repository will no longer be updated. If you use a local install, please review [these docs](https://actualbudget.org/docs/actual-server-repo-move) for how to migrate.
- Starting next release, we plan on deprecating the `@actual-app/web` NPM package. This should not impact any standard deployment methods, but if you have a use-case for this package, please [create an issue](https://github.com/actualbudget/actual/issues/new/choose) so we know about it!

<!--truncate-->

**Docker tag: 25.3.0**

#### Features

- [#4253](https://github.com/actualbudget/actual/pull/4253) Add a UI for bank sync settings — thanks @matt-fidd
- [#4308](https://github.com/actualbudget/actual/pull/4308) Foundations for the budget automations UI — thanks @jfdoming

#### Enhancements

- [#4213](https://github.com/actualbudget/actual/pull/4213) useDisplayPayee hook to unify payee names in mobile and desktop. — thanks @joel-jeremy
- [#4257](https://github.com/actualbudget/actual/pull/4257) Add percentage adjustments to schedule templates — thanks @MattFaz
- [#4294](https://github.com/actualbudget/actual/pull/4294) Properly handle nynab hidden categories/groups on import — thanks @youngcw
- [#4372](https://github.com/actualbudget/actual/pull/4372) Sync server development mode with react fast refresh — thanks @lelemm
- [#4380](https://github.com/actualbudget/actual/pull/4380) Add button to go to current month in budget view on mobile — thanks @adastx
- [#4388](https://github.com/actualbudget/actual/pull/4388) Add BANK\_MILLENNIUM\_BIGBPLPW, BNP\_PL\_PPABPLPK, MBANK\_RETAIL\_BREXPLPW to `BANKS_WITH_LIMITED_HISTORY` constant. — thanks @michalgolab

Check failure on line 37 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[BIGBPLPW](#security-tab) is not a recognized word. \(unrecognized-spelling\)

Check failure on line 37 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[PPABPLPK](#security-tab) is not a recognized word. \(unrecognized-spelling\)

Check failure on line 37 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[MBANK](#security-tab) is not a recognized word. \(unrecognized-spelling\)

Check failure on line 37 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[BREXPLPW](#security-tab) is not a recognized word. \(unrecognized-spelling\)
- [#4403](https://github.com/actualbudget/actual/pull/4403) Update bank sync mapping data for existing transactions on sync — thanks @matt-fidd
- [#4408](https://github.com/actualbudget/actual/pull/4408) Extending translations for components: Account, SidebarCategory, TotalsList, MobileNavTabs, AccountTransactions (Mobile), Accounts (Mobile), BudgetTable (Mobile), TransactionEdit (Mobile), TransactionList (Mobile), TransactionListItem (Mobile), CategoryMenuModal, CreateLocalAccountModal, ImportModal, ReportSideBar, CustomReport, Spending, Export, TransactionsTable — thanks @lelemm
- [#4415](https://github.com/actualbudget/actual/pull/4415) Start the application with the browser's default language — thanks @lelemm
- [#4423](https://github.com/actualbudget/actual/pull/4423) Added `ACTUAL_OPENID_ENFORCE=true` enviroment variable to enforce only OpenID auth. — thanks @lelemm
- [#4427](https://github.com/actualbudget/actual/pull/4427) Automatically adjust height of modals to fit the visible viewport when the keyboard is open on mobile — thanks @andrew--r
- [#4448](https://github.com/actualbudget/actual/pull/4448) [Mobile] Change budget table colors when on non-current month — thanks @joel-jeremy
- [#4452](https://github.com/actualbudget/actual/pull/4452) Sort upcoming schedules by date then amount so deposits come before payments — thanks @matt-fidd

#### Bugfix

- [#4224](https://github.com/actualbudget/actual/pull/4224) Fix deleting rules considering the applied filters — thanks @harrydigos
- [#4241](https://github.com/actualbudget/actual/pull/4241) Fix GoCardless transaction ID to fallback to it's own generated ID on sync — thanks @NullScope
- [#4293](https://github.com/actualbudget/actual/pull/4293) Fix nynab importer failing on duplicate categories — thanks @youngcw
- [#4300](https://github.com/actualbudget/actual/pull/4300) Fix tracking budget income templates — thanks @youngcw
- [#4322](https://github.com/actualbudget/actual/pull/4322) Fix hard crash when closing cloud budget on Electron — thanks @MikesGlitch
- [#4336](https://github.com/actualbudget/actual/pull/4336) Fix calendar interaction when editing reports dashboard — thanks @ChickenSaysBak
- [#4353](https://github.com/actualbudget/actual/pull/4353) Correct link to translation setup for local install — thanks @jfdoming
- [#4354](https://github.com/actualbudget/actual/pull/4354) Ensure SimpleFIN transactions are sorted by date — thanks @matt-fidd
- [#4356](https://github.com/actualbudget/actual/pull/4356) Rule action templating now works with helpers with no arguments — thanks @UnderKoen
- [#4360](https://github.com/actualbudget/actual/pull/4360) Fix "category is (nothing)" filter crashing the spending analysis report widget. — thanks @MatissJanis
- [#4375](https://github.com/actualbudget/actual/pull/4375) Prevent the app getting stuck on the "Initializing the connection to the local database..." screen — thanks @MikesGlitch
- [#4382](https://github.com/actualbudget/actual/pull/4382) Ignore CSV inOutMode during OFX imports — thanks @langelgjm
- [#4383](https://github.com/actualbudget/actual/pull/4383) Ensure decimal separator is recognized independantly of the configured number format. — thanks @AntoineTA

Check failure on line 60 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[independantly](#security-tab) is not a recognized word. \(unrecognized-spelling\)
- [#4384](https://github.com/actualbudget/actual/pull/4384) Provides a default fallback payeename value ('undefined') for the CBC bank in case the payeename is missing. — thanks @MMichotte

Check failure on line 61 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[payeename](#security-tab) is not a recognized word. \(unrecognized-spelling\)

Check failure on line 61 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[payeename](#security-tab) is not a recognized word. \(unrecognized-spelling\)
- [#4397](https://github.com/actualbudget/actual/pull/4397) Fix for User directory page that was calling the api every frame — thanks @lelemm
- [#4413](https://github.com/actualbudget/actual/pull/4413) Fix crash during bank sync when the payee is not found — thanks @matt-fidd
- [#4417](https://github.com/actualbudget/actual/pull/4417) Fix `On budget` / `Off budget` underline with translated languages — thanks @lelemm
- [#4439](https://github.com/actualbudget/actual/pull/4439) Fix the default language init for electron — thanks @lelemm
- [#4453](https://github.com/actualbudget/actual/pull/4453) Change i18n errors to info — thanks @matt-fidd
- [#4458](https://github.com/actualbudget/actual/pull/4458) Fix row spacing on bank sync page — thanks @matt-fidd
- [#4461](https://github.com/actualbudget/actual/pull/4461) Fixed bug where partially erasing search string would not reset search and result in incorrect search results. — thanks @alecbakholdin
- [#4462](https://github.com/actualbudget/actual/pull/4462) Fixed bug where navigating to payees page by clicking "manage payees" with an empty payee from a transaction would result in a crash. — thanks @alecbakholdin
- [#4463](https://github.com/actualbudget/actual/pull/4463) Add missing space in translation for bank sync — thanks @jfdoming
- [#4465](https://github.com/actualbudget/actual/pull/4465) Fix crash when deleting child transactions from an errored split — thanks @jfdoming
- [#4468](https://github.com/actualbudget/actual/pull/4468) Remove warning on cleanup templates if budget is already "clean" — thanks @youngcw
- [#4469](https://github.com/actualbudget/actual/pull/4469) Fix category group deletion on mobile — thanks @matt-fidd
- [#4472](https://github.com/actualbudget/actual/pull/4472) Add last bank sync tracking back in — thanks @matt-fidd
- [#566](https://github.com/actualbudget/actual/pull/566) Fix ESM bug on Windows when loading gocardless banks — thanks @MikesGlitch

#### Maintenance

- [#4145](https://github.com/actualbudget/actual/pull/4145) Fix types of `send` function — thanks @jfdoming
- [#4169](https://github.com/actualbudget/actual/pull/4169) Introduce `@actual-app/components` - package with reusable components. — thanks @MatissJanis
- [#4214](https://github.com/actualbudget/actual/pull/4214) Make `loot-core` compatible with `exactOptionalPropertyTypes` — thanks @jfdoming
- [#4218](https://github.com/actualbudget/actual/pull/4218) Convert playwright page models to TypeScript. — thanks @joel-jeremy
- [#4221](https://github.com/actualbudget/actual/pull/4221) Move transactions related server handlers from main.ts to server/transactions/app.ts — thanks @joel-jeremy
- [#4227](https://github.com/actualbudget/actual/pull/4227) Move accounts related server handlers from main.ts to server/accounts/app.ts — thanks @joel-jeremy
- [#4247](https://github.com/actualbudget/actual/pull/4247) [TypeScript] Make `runQuery` generic to make it easy to type DB query results. — thanks @joel-jeremy
- [#4258](https://github.com/actualbudget/actual/pull/4258) Fix react-hooks/exhaustive-deps error on useSelected.tsx — thanks @joel-jeremy
- [#4259](https://github.com/actualbudget/actual/pull/4259) Fix react-hooks/exhaustive-deps error on useProperFocus.tsx — thanks @joel-jeremy
- [#4260](https://github.com/actualbudget/actual/pull/4260) Fix react-hooks/exhaustive-deps error on usePayees.ts — thanks @joel-jeremy
- [#4261](https://github.com/actualbudget/actual/pull/4261) Fix react-hooks/exhaustive-deps error on useCategories.ts — thanks @joel-jeremy
- [#4262](https://github.com/actualbudget/actual/pull/4262) Fix react-hooks/exhaustive-deps error on useAccounts.ts — thanks @joel-jeremy
- [#4268](https://github.com/actualbudget/actual/pull/4268) Fix react-hooks/exhaustive-deps error on TransactionsTable.jsx — thanks @joel-jeremy
- [#4272](https://github.com/actualbudget/actual/pull/4272) Fix react-hooks/exhaustive-deps error on TransactionList.jsx — thanks @joel-jeremy
- [#4273](https://github.com/actualbudget/actual/pull/4273) Fix react-hooks/exhaustive-deps error on Titlebar.tsx — thanks @joel-jeremy
- [#4274](https://github.com/actualbudget/actual/pull/4274) Fix react-hooks/exhaustive-deps error on table.tsx — thanks @joel-jeremy
- [#4306](https://github.com/actualbudget/actual/pull/4306) Add an action to automatically generate release PRs — thanks @jfdoming
- [#4334](https://github.com/actualbudget/actual/pull/4334) Moving the sync-server from the actual-server repository into the actual repostiory — thanks @MikesGlitch

Check failure on line 96 in blog/2025-03-01-release-25-3-0.md

View check run for this annotation

GitHub Advanced Security / check-spelling

Unrecognized Spelling

[repostiory](#security-tab) is not a recognized word. \(unrecognized-spelling\)
- [#4343](https://github.com/actualbudget/actual/pull/4343) Rename migrations to realign with the convention — thanks @matt-fidd
- [#4346](https://github.com/actualbudget/actual/pull/4346) Move more reusable components to `@actual-app/components`. — thanks @MatissJanis
- [#4347](https://github.com/actualbudget/actual/pull/4347) Disallow importing `@actual-app/web` in `loot-core` - circular dependencies. — thanks @MatissJanis
- [#4348](https://github.com/actualbudget/actual/pull/4348) Making Server related github actions run only when server files change — thanks @MikesGlitch
- [#4349](https://github.com/actualbudget/actual/pull/4349) Replace `loot-core/src/*` imports with `loot-core/*` — thanks @MatissJanis
- [#4350](https://github.com/actualbudget/actual/pull/4350) API: remove deprecated exports of methods. — thanks @MatissJanis
- [#4352](https://github.com/actualbudget/actual/pull/4352) Updating the workflows to ignore directories properly — thanks @MikesGlitch
- [#4358](https://github.com/actualbudget/actual/pull/4358) Updating some common component imports to the new component-lib path. — thanks @MatissJanis
- [#4363](https://github.com/actualbudget/actual/pull/4363) Bring server in line with actual linting rules — thanks @matt-fidd
- [#4369](https://github.com/actualbudget/actual/pull/4369) Adding typescript type for the global-store.json setting file — thanks @MikesGlitch
- [#4370](https://github.com/actualbudget/actual/pull/4370) Update package name of sync server to be consistent with the rest of the workspace — thanks @MikesGlitch
- [#4385](https://github.com/actualbudget/actual/pull/4385) Remove deprecated components in favour of components from @actual-app library — thanks @AlbertoCortina
- [#4400](https://github.com/actualbudget/actual/pull/4400) Fix new proxy middleware importing in production when only required in developement — thanks @MikesGlitch
- [#4407](https://github.com/actualbudget/actual/pull/4407) Improving Electron logging to send logs created before startup to dev tools — thanks @MikesGlitch
- [#4409](https://github.com/actualbudget/actual/pull/4409) [TypeScript] Add types for SpreadsheetProvider — thanks @joel-jeremy
- [#4410](https://github.com/actualbudget/actual/pull/4410) Bump vitest to 1.6.1 — thanks @matt-fidd
- [#4411](https://github.com/actualbudget/actual/pull/4411) Bump express version — thanks @matt-fidd
- [#4420](https://github.com/actualbudget/actual/pull/4420) Extract preferences related server handlers from main.ts to server/preferences/app.ts — thanks @joel-jeremy
- [#4430](https://github.com/actualbudget/actual/pull/4430) Prevent GitHub docker workflow from running on pushes to forks — thanks @matt-fidd
- [#557](https://github.com/actualbudget/actual/pull/557) Dynamically load GoCardless handlers — thanks @matt-fidd
- [#560](https://github.com/actualbudget/actual/pull/560) Updating readme regarding the consolidation of the Actual-Server and Actual repos — thanks @MikesGlitch
Loading
Loading