In this release Securo speaks Hungarian and Czech, the cash-flow report names the day your balance runs out, and the transaction form starts suggesting descriptions you have used before. The rest is a round of fixes, most of them from reports: a credit card's detail page no longer reads its utilisation from a stale balance, an amount typed with comma decimals keeps its cents when repeated as installments, the onboarding tour's buttons stay inside their card, and a bank sync can no longer return the same transaction on two pages while hiding another.
Features
- Hungarian. The whole interface, all 2572 strings. By @gergohajzer (#1123) ๐
- Czech. All of it too, with the plural forms the language needs. By @Ajtak with @jakub-klik-it (#1149) ๐
- Cash flow says when the balance runs out. The report now carries the lowest point of the projection and, when it crosses zero, the day it does. It is read off a day by day walk, so a dip inside a month still counts when the chart is drawn by month. By @rhuanbarreto (#1030) ๐
- The description field suggests what you have typed before. Picking one also fills in the category and payee it was last filed under, leaving anything you already chose alone. Closes #1127, by @rogeriocamorim (#1129) ๐
- Search your groups. The Groups page gained a search box, and the query and the status filter now live in the URL, so a reload or the back button keeps what you were looking at. Closes #1139, by @DannyFeliz (#1140) ๐
- Select or deselect every transaction in a manual import. The checkbox in the table header applies to all the filtered rows, not just the page you are on. Closes #1141, by @rogeriocamorim (#1152) ๐
- Macedonian denar. Closes #1080, by @shaynhornik (#1166) ๐
- Kazakhstani BIN and IIN. The fiscal pack for Kazakhstan now validates both document kinds. By @Alatau-AS (#1015) ๐
Fixes
- A credit card's detail page showed the wrong utilisation. The single-account endpoint serialised without a balance, so available credit fell back to the full limit. It now reports the same number the accounts list does. Closes #535, by @pspallini (#1064) ๐
- The onboarding tour's buttons hung outside the card on a narrow window, in languages with longer labels. Closes #1036, by @rogeriocamorim (#1132) ๐
- The asset transaction form priced everything in dollars. The total now reads in the holding's own currency, and shows a bare number while a new ticker has no currency yet. Closes #1142, by @shaynhornik (#1167) ๐
- "Repeat as installments" dropped the cents of an amount typed in a comma-decimal format, saving 50,25 as 50. By @mayuriphad (#1078) ๐
- The phantom-duplicate cleanup deleted a real transaction that happened twice on the same day and that the provider was still sending. Closes #1038, by @theluckystrike (#1122) ๐
- Paging through transactions could repeat one row and skip another. A sync writes its whole batch with the same timestamp, and without a unique last sort key the database was free to order them differently on each request. By @charlitosf (#1109) ๐
- A reopened passkey dialog could show the previous session's list when the earlier request landed late. By @ADolkun (#1089) ๐
- Recurring invoices could be generated a day early or late when the worker's own date differed from the workspace's near midnight. By @ADolkun (#1090) ๐
- An import stopped matching rules that look at the status, and a recurring placeholder lost its category and notes when the import upgraded it. By @ADolkun (#1087) ๐
- An asset could be attached to another workspace's group through a supplied group id, and that workspace's totals counted it. By @ADolkun (#1093) ๐
- A rule preview promised a category change that saving would skip, when the rule pointed at a hidden category. By @ADolkun (#1086) ๐
- A recurring transaction's next date was off by one west of UTC, because a date-only string was read as UTC. By @ADolkun (#1088) ๐
- The empty states on the Assets page floated loose, outside the card layout the rest of the app uses. By @DannyFeliz (#1138) ๐
Under the hood
No migration: a 0.16.3 database is already at the schema this release expects ยท the Hungarian locale landed six keys short of English, because four PRs added keys while it was open and its checks were green against the base it was written on (#1170) ยท the README's CI badge pointed at the newest run of any branch, so it read failing while main was green (#1102) ยท uv moved to 0.12.23 and then 0.13.0 (#1097, #1157) and the backend dependencies were refreshed (#1098, #1158)
Thanks @gergohajzer, @Ajtak, @jakub-klik-it, @rhuanbarreto, @rogeriocamorim, @DannyFeliz, @shaynhornik, @Alatau-AS, @pspallini, @mayuriphad, @theluckystrike, @charlitosf and @ADolkun for the code and the reviews, and @patouinparis, @KgbGaming, @velkovslav, @henriqueberlesi, @biwabel and @rafaelreis-r for the reports ๐
Full Changelog: v0.16.3...v0.16.4