The release has the following notable improvements:
- New UI for managing bank sync
- Support for some additional languages
- Lots of bugfixes and maintenance work
danger
Starting this release, the actual-server
repository will no longer be updated. If you use a local install, please review these docs for how to migrate.
info
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 so we know about it!
Docker tag: 25.3.0
Features
- #4253 Add a UI for bank sync settings — thanks matt-fidd
- #4308 Foundations for the budget automations UI — thanks jfdoming
Enhancements
- #4213 useDisplayPayee hook to unify payee names in mobile and desktop. — thanks joel-jeremy
- #4257 Add percentage adjustments to schedule templates — thanks MattFaz
- #4294 Properly handle nynab hidden categories/groups on import — thanks youngcw
- #4372 Sync server development mode with react fast refresh — thanks lelemm
- #4380 Add button to go to current month in budget view on mobile — thanks adastx
- #4388 Add BANK_MILLENNIUM_BIGBPLPW, BNP_PL_PPABPLPK, MBANK_RETAIL_BREXPLPW to
BANKS_WITH_LIMITED_HISTORY
constant. — thanks michalgolab - #4403 Update bank sync mapping data for existing transactions on sync — thanks matt-fidd
- #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 Start the application with the browser's default language — thanks lelemm
- #4423 Added
ACTUAL_OPENID_ENFORCE=true
enviroment variable to enforce only OpenID auth. — thanks lelemm - #4427 Automatically adjust height of modals to fit the visible viewport when the keyboard is open on mobile — thanks andrew--r
- #4448 [Mobile] Change budget table colors when on non-current month — thanks joel-jeremy
- #4452 Sort upcoming schedules by date then amount so deposits come before payments — thanks matt-fidd
Bugfix
- #4224 Fix deleting rules considering the applied filters — thanks harrydigos
- #4241 Fix GoCardless transaction ID to fallback to it's own generated ID on sync — thanks NullScope
- #4293 Fix nynab importer failing on duplicate categories — thanks youngcw
- #4300 Fix tracking budget income templates — thanks youngcw
- #4322 Fix hard crash when closing cloud budget on Electron — thanks MikesGlitch
- #4336 Fix calendar interaction when editing reports dashboard — thanks ChickenSaysBak
- #4353 Correct link to translation setup for local install — thanks jfdoming
- #4354 Ensure SimpleFIN transactions are sorted by date — thanks matt-fidd
- #4356 Rule action templating now works with helpers with no arguments — thanks UnderKoen
- #4360 Fix "category is (nothing)" filter crashing the spending analysis report widget. — thanks MatissJanis
- #4375 Prevent the app getting stuck on the "Initializing the connection to the local database..." screen — thanks MikesGlitch
- #4382 Ignore CSV inOutMode during OFX imports — thanks langelgjm
- #4383 Ensure decimal separator is recognized independently of the configured number format. — thanks AntoineTA
- #4384 Provides a default fallback
payeeName
value ('undefined') for the CBC bank in case thepayeeName
is missing. — thanks MMichotte - #4397 Fix for User directory page that was calling the api every frame — thanks lelemm
- #4413 Fix crash during bank sync when the payee is not found — thanks matt-fidd
- #4417 Fix
On budget
/Off budget
underline with translated languages — thanks lelemm - #4439 Fix the default language init for electron — thanks lelemm
- #4453 Change i18n errors to info — thanks matt-fidd
- #4458 Fix row spacing on bank sync page — thanks matt-fidd
- #4461 Fixed bug where partially erasing search string would not reset search and result in incorrect search results. — thanks alecbakholdin
- #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 Add missing space in translation for bank sync — thanks jfdoming
- #4465 Fix crash when deleting child transactions from an errored split — thanks jfdoming
- #4468 Remove warning on cleanup templates if budget is already "clean" — thanks youngcw
- #4469 Fix category group deletion on mobile — thanks matt-fidd
- #4472 Add last bank sync tracking back in — thanks matt-fidd
- #566 Fix ESM bug on Windows when loading gocardless banks — thanks MikesGlitch
Maintenance
- #4145 Fix types of
send
function — thanks jfdoming - #4169 Introduce
@actual-app/components
- package with reusable components. — thanks MatissJanis - #4214 Make
loot-core
compatible withexactOptionalPropertyTypes
— thanks jfdoming - #4218 Convert playwright page models to TypeScript. — thanks joel-jeremy
- #4221 Move transactions related server handlers from main.ts to server/transactions/app.ts — thanks joel-jeremy
- #4227 Move accounts related server handlers from main.ts to server/accounts/app.ts — thanks joel-jeremy
- #4247 [TypeScript] Make
runQuery
generic to make it easy to type DB query results. — thanks joel-jeremy - #4258 Fix react-hooks/exhaustive-deps error on useSelected.tsx — thanks joel-jeremy
- #4259 Fix react-hooks/exhaustive-deps error on useProperFocus.tsx — thanks joel-jeremy
- #4260 Fix react-hooks/exhaustive-deps error on usePayees.ts — thanks joel-jeremy
- #4261 Fix react-hooks/exhaustive-deps error on useCategories.ts — thanks joel-jeremy
- #4262 Fix react-hooks/exhaustive-deps error on useAccounts.ts — thanks joel-jeremy
- #4268 Fix react-hooks/exhaustive-deps error on TransactionsTable.jsx — thanks joel-jeremy
- #4272 Fix react-hooks/exhaustive-deps error on TransactionList.jsx — thanks joel-jeremy
- #4273 Fix react-hooks/exhaustive-deps error on Titlebar.tsx — thanks joel-jeremy
- #4274 Fix react-hooks/exhaustive-deps error on table.tsx — thanks joel-jeremy
- #4306 Add an action to automatically generate release PRs — thanks jfdoming
- #4334 Moving the sync-server from the actual-server repository into the actual repository — thanks MikesGlitch
- #4343 Rename migrations to realign with the convention — thanks matt-fidd
- #4346 Move more reusable components to
@actual-app/components
. — thanks MatissJanis - #4347 Disallow importing
@actual-app/web
inloot-core
- circular dependencies. — thanks MatissJanis - #4348 Making Server related github actions run only when server files change — thanks MikesGlitch
- #4349 Replace
loot-core/src/*
imports withloot-core/*
— thanks MatissJanis - #4350 API: remove deprecated exports of methods. — thanks MatissJanis
- #4352 Updating the workflows to ignore directories properly — thanks MikesGlitch
- #4358 Updating some common component imports to the new component-lib path. — thanks MatissJanis
- #4363 Bring server in line with actual linting rules — thanks matt-fidd
- #4369 Adding typescript type for the global-store.json setting file — thanks MikesGlitch
- #4370 Update package name of sync server to be consistent with the rest of the workspace — thanks MikesGlitch
- #4385 Remove deprecated components in favour of components from actual-app library — thanks AlbertoCortina
- #4400 Fix new proxy middleware importing in production when only required in developement — thanks MikesGlitch
- #4407 Improving Electron logging to send logs created before startup to dev tools — thanks MikesGlitch
- #4409 [TypeScript] Add types for SpreadsheetProvider — thanks joel-jeremy
- #4410 Bump vitest to 1.6.1 — thanks matt-fidd
- #4411 Bump express version — thanks matt-fidd
- #4420 Extract preferences related server handlers from main.ts to server/preferences/app.ts — thanks joel-jeremy
- #4430 Prevent GitHub docker workflow from running on pushes to forks — thanks matt-fidd
- #4483 Publishing the docker images to the actual repo packages area in github — thanks MikesGlitch
- #557 Dynamically load GoCardless handlers — thanks matt-fidd
- #560 Updating readme regarding the consolidation of the Actual-Server and Actual repos — thanks MikesGlitch