Skip to main content

Release 26.8.0

· 11 min read
Matiss Janis Aboltins
Actual Budget Maintainer

This release promotes Age of Money and Payee Locations to stable features, improves onboarding and mobile bank sync setup, and adds day-level date ranges to reports, as well as numerous other fixes.

  • Age of Money report released as a first-party feature
  • Payee Locations released as a first-party feature
  • Redesigned onboarding screens and a smoother first-account setup
  • Add account reconciliation on mobile
  • Set up bank sync providers and link accounts from the mobile Bank Sync page
  • Day-level date range selection in reports
  • Export Budget Analysis reports as CSV
  • The @actual-app/api package can now be used in browser context; allowing to build your own UI for Actual or custom tools - demo - financial analysis

Docker Tag: 26.8.0

Features

  • #8540 Promote the Age of Money report to a stable feature — thanks youngcw
  • #8511 Promote Payee Locations to a stable feature. — thanks MatissJanis

Enhancements

  • #7952 Restore budget table scroll position when navigating back from the spent transactions view. — thanks clintharris
  • #8245 Improve formula editors with visual badges and context-aware completions for queries, variables, budget fields, categories, and timeframes — thanks lelemm
  • #8316 Allow bank sync credentials to be stored globally or for a specific budget file (currently only supported for Pluggy.ai). — thanks lelemm
  • #8380 Add corrected installment dates for Pluggy credit card transactions, available as a mappable date field in bank sync settings. — thanks lelemm
  • #8436 Added "4Rules Blurple - Dark" to the custom theme catalog; renamed "You Need A Dark Mode" to "4Rules Cyan - Dark". — thanks distantvapor
  • #8447 Add Dracula and Alucard to the custom theme catalog. — thanks lelemm
  • #8414 Add importBudget and exportBudget functions to the API for importing and exporting budget files directly — thanks MatissJanis
  • #8470 Add a tooltip to the cleared column header explaining the transaction status icons — thanks rtwfroody
  • #8384 Add ability to reconcile accounts on mobile — thanks matt-fidd
  • #8344 Added button to mobile transaction edit to allow easier access to # in mobile, and added tags to demo budget — thanks alecbakholdin
  • #8295 Add Thyrium to the custom theme catalog. — thanks Carlisle96
  • #8396 Add Zero Dark to the custom theme catalog. — thanks Deathblade666
  • #8440 Add tooltips to the theme, privacy, and server status icons in the top bar — thanks tabedzki
  • #8163 Budget Analysis reports can now be exported as CSV — thanks tabedzki
  • #8164 Budget analysis report: add "show hidden categories" option, group options into dropdown — thanks tabedzki
  • #8410 The API can now read a budget's formatting preferences, such as its number and currency format. — thanks MatissJanis
  • #8515 Use a month picker instead of a full date picker when choosing months in budget automations — thanks matt-fidd
  • #8496 Improve the process to add a first account — thanks matt-fidd
  • #8356 Shows label name of hovered stacked bar chart group even if the label would have been hidden in compact mode — thanks dsmaugy
  • #8495 Redesign onboarding screens — thanks matt-fidd
  • #8106 Improved context menu ergonomics under the hood — thanks alecbakholdin
  • #8552 Update the iOS and Android app icons and launch screens to match the PWA — thanks jfdoming
  • #8497 Allow setting up bank sync providers and linking accounts from the mobile Bank Sync page — thanks matt-fidd
  • #8427 Add day-level date range selection to reports: the new date range picker lets you switch between picking whole months or exact days, and works the same in every browser — thanks tabedzki, rznn7, & MatissJanis
  • #8318 Add Pluggy.ai settings support for configuring credentials on a specific budget file. — thanks lelemm
  • #8317 Use per-budget-file credentials for Pluggy.ai bank sync. — thanks lelemm
  • #8391 Support clicking on category groups in reports to see the filtered transactions — thanks matt-fidd
  • #8415 Simplify the getCategories API to always return a flat list of categories. — thanks MatissJanis
  • #8437 Common API failures now include a stable code so apps built on the API can show their own clear message for each kind of failure. — thanks MatissJanis
  • #8335 Add performance indices for transactions table — thanks alecbakholdin

Bugfixes

  • #8032 Skip Enable Banking PSU headers when the detected client IP is local or private. — thanks Nustinua
  • #8244 Fix Formula card query sliding-window timeframes to use the same live range calculation as reports. — thanks lelemm
  • #8351 avoid the full-page reset and scroll jump when editing crossover report filters — thanks lucasboebel
  • #8505 Fix OIDC login on iPad and harden the OIDC callback on all browsers — thanks MikesGlitch
  • #8526 Fix login issue that happens after signing out of a server with OIDC on Electron. — thanks MikesGlitch
  • #8397 Fix using a custom data directory in the browser version of the API, and show the real error message when something goes wrong in the background — thanks MatissJanis
  • #8289 api: the browser version of the API now works out of the box in any web app, with no extra setup. — thanks MatissJanis
  • #8457 Fix app becoming unresponsive on Android when reopening after being in the background for a while. — thanks martin-lukas
  • #8503 Fix Age of Money account filters so transfers between included and filtered-out on-budget accounts count as money entering or leaving the filtered accounts. — thanks saahiljaffer
  • #8467 Fixed a crash when converting a regular transaction into a split via the API. — thanks aturzone
  • #8365 Allow previously linked bank-sync accounts to be selected again when reconnecting the same provider. — thanks mooons
  • #8448 Fetch the latest custom theme CSS when installing themes from the catalog. — thanks lelemm
  • #8510 Fix GoCardless account linking in the desktop app — thanks matt-fidd
  • #8301 Fix deleting categories and category groups with transactions on mobile — thanks edwei06
  • #8421 Fix mobile swipe-to-delete gesture not working on payees, rules, and schedules — thanks youngcw
  • #8525 Fix relinking a bank account that had been unlinked. — thanks youngcw
  • #8339 Fix some SimpleFIN setup tokens failing to claim and link accounts — thanks matt-fidd
  • #8479 Fix the split transaction popover sometimes not rendering at full height — thanks matt-fidd
  • #8549 Fix budget templates/automations with a priority not allocating funds properly in tracking budgets — thanks youngcw
  • #8402 Fix Query Manager hints for QUERY and QUERY_COUNT to show double-quoted query names, matching the syntax formulas actually require. — thanks lelemm
  • #8383 Recognise GoCardless responses advising that the EUA has expired as relink requests — thanks matt-fidd
  • #8392 Prevent Pluggy bank sync from repeatedly rewriting uncategorized and transfer transactions — thanks lelemm
  • #8490 Refresh running balances after editing a transaction — thanks tianrking
  • #8360 When a rule action sets payee_name, resolve it to the actual payee ID immediately during rule execution instead of waiting until finalization. — thanks julienvincent
  • #8424 Stop the nYNAB importer from creating an unused duplicate payee for each linked transfer account. — thanks claude
  • #8478 Translate budget template action notifications. — thanks DarthAmk97
  • #8516 Respect reduced motion settings in the new onboarding screen — thanks matt-fidd

Maintenance

  • #7829 Switch from bcrypt to argon2id hashing algorithm — thanks matt-fidd
  • #8100 Add scoped error boundaries around the mobile budget, account, and transaction edit pages so a rendering error in one of them no longer crashes the entire app. — thanks BIGSUS24
  • #8369 Refactor formula autocomplete metadata to share a single catalog for report and rule formula suggestions. — thanks lelemm
  • #8545 Migrate api/app/query to TypeScript — thanks shahidsarker
  • #8398 Add a Claude skill for writing release notes — thanks MatissJanis
  • #8477 Add an agent skill documenting how to run and update visual regression tests — thanks MatissJanis
  • #8493 Allow null in database query parameter types via a shared SqlParam type — thanks MatissJanis
  • #8528 Tweak testing framework for templates/automations — thanks matt-fidd
  • #8462 Make Codex-based agent harnesses (ChatGPT desktop app, Codex CLI/IDE) run the repo agent hooks and discover the shared skills — thanks MatissJanis
  • #8456 E2E test fixes for easier local runs — thanks StephenBrown2
  • #8535 Fix maintainer points counting script PR categorisation — thanks matt-fidd
  • #8533 Bump various dependencies — thanks matt-fidd
  • #8534 Bump playwright — thanks matt-fidd
  • #8337 Speed up desktop app builds in CI — thanks matt-fidd
  • #8446 Enforce in CI that shipped database migration files are never edited or deleted, and warn on migrations that look destructive — thanks MatissJanis
  • #8381 Prevent duplicate draft releases being created by the Electron release job — thanks matt-fidd
  • #8331 Prefix agent-authored GitHub comments, reviews and issues with the robot emoji 🤖. — thanks MatissJanis
  • #8388 Update build configuration to support mobile app — thanks jfdoming
  • #8387 Check in basic structure for mobile app PWA wrapper — thanks jfdoming
  • #8547 Wrap the mobile schedules, payees, and bank sync pages in scoped error boundaries, so a rendering error in one of these sections shows a recoverable fallback instead of crashing the whole app. — thanks BasilTh
  • #8536 Dont add duplicate labels to bug and feature issues when there is already a type set — thanks youngcw
  • #8330 Clarify nYNAB export options when the third-party web exporter is unavailable. — thanks archit-goyal
  • #8463 Enable React Compiler for all monorepo packages with React code instead of only desktop-client — thanks MatissJanis
  • #8368 Fix release note generation script to resolve links in cherry-picked changes — thanks matt-fidd
  • #8393 Replace adm-zip with fflate and safe wrappers for zip handling. — thanks StephenBrown2
  • #8362 Reorganise the SimpleFIN key saving logic — thanks matt-fidd
  • #8461 Migrate node version validation to TypeScript — thanks Ehtasham-Yasin