Skip to content

Ausgaben 1.10

Choose a tag to compare

@PerFermat PerFermat released this 16 Aug 07:22
· 287 commits to main since this release

Ausgaben 1.10 — mobile KMyMoney companion (phone + Wear OS).

This release is about the booking that fills itself in: where you are and how much you spend is often enough to name the payee and its category — and a correction to an exported booking finally reaches your .kmy file.

Highlights since 1.9

  • Nearby payees first. The six closest payees head the payee list with a bearing arrow, nearest first. Distance is measured from the booking's place — the current fix for a new booking, the stored GPS mark when editing, the hand-picked point after "Map". Without a mark there is no preamble: where you stand today says nothing about an old booking. Distances come from the coordinates in your bookings' notes and the learned places of the aliases; anything beyond 10 km drops out.
  • The amount tells payees apart. Where several payees share a place — petrol station and car wash, supermarket and baker — the location alone was a coin toss. Now the amount decides: each payee is compared against the rank band of its previous amounts (10th–90th percentile by default, so a single outlier cannot tear the band open). Fewer than five bookings means no judgement. The alias form got a two-handle "usual amounts" slider, labelled with the matching amounts.
  • The amount orders, it no longer sieves. Type an amount that fits nobody's band and you still get every candidate — ordered by how far off they are, measured as a ratio rather than in euros: 15 € is 1.5× above a 5–10 band but only 1.33× below a 20–100 one, so the large band wins. At 1 € the small one wins again. Everyone stays flickable.
  • Only the accounts you are looking at. When the app picks the payee itself, it now considers bookings and aliases of the displayed accounts. Booking in "Cash" no longer suggests a payee that only ever appeared on the current account.
  • Amount search can be switched off. New setting "take the amount into account in suggestions", off by default, right below the GPS switch. Off means the number pad shows the nearest name straight away and it stays put while you type. Pure voice input without a payee is unaffected — there is nothing to choose there.
  • The first category comes from the payee. With the payee settled, the first category row is prefilled from it — preferred aliases first, then this payee's bookings (newest first, split rows counted), then the remaining aliases, always of the selected booking type. Up to six further categories sit at the top of the picker under "For this payee".
  • And it follows when you change the payee. If the app guessed the payee wrong and you enter the right one, the category no longer keeps the wrong one's. An automatically set category follows the payee (and the booking type) until you touch the category rows — typing or picking a category, changing a part amount, removing a row. A saved booking, a scheduled booking and the read-only view are never touched.
  • Receipt photos on transfers. The receipt row used to be hidden for transfers, of all places, where there is a bank statement or transfer confirmation to attach. A transfer is two booking rows sharing one note, and the receipt hangs in that note — so both accounts show the same picture, and it can be added or changed from either side. Converting between booking and transfer takes the receipt along.
  • Booking status "edited". Changing an already exported booking only changed it inside the app; the export writes new transactions only, so the correction never reached the .kmy file. Such a booking is now marked edited (yellow in the list), and the next transfer replaces its transaction in place — same id, same position, counter untouched. The signature of the exported version is stored so the transaction is still found even if account, amount or date changed. If it cannot be found, nothing is inserted and the message says so — no duplicates.
  • Filter button "radius". Each tap steps on: off → 100 m → 500 m → 1 km → 10 km → off, keeping only bookings within that radius. Bookings without coordinates of their own fall back to the learned places of their payee's alias. Your position is frozen when applied, so the list does not wander as you walk.
  • Default place for a preset account and for transfers. Picking an account in the list and tapping "new booking" gave you the account but not its default place. Fixed, along with all four ways that preset an account. Transfers now prefill too: the from-place follows the from-account, the to-place the to-account.
  • The back-to-top button takes a second at most, not many: fixed duration (300 ms per screen height, capped at one second) instead of fixed speed, and long lists jump invisibly to row 30 first.
  • Manual editor. tools/handbuch-editor.py edits both language versions as one tree of blocks, so German and English can no longer drift apart. Plus a readable toolbar subtitle on the green bar, a deliberate page break, and image width belonging to the block rather than the single image.

Downloads

  • app-full-release.apk — phone app with Wear OS bridge (Google Play Services). Use this if you also install the watch app.
  • app-foss-release.apk — phone app without Google Play Services (same as the F-Droid build).
  • wear-release.apk — Wear OS watch app (requires Google Play Services; pair with the full phone build).

Trust / verification

The app is open source and reproducible from this tagged source. Verify your download with SHA-256:

27d5f1e9140b7ade21e4bafaa12e5ad9a9929d9ec95e9d740cad7336ee8c9048  app-full-release.apk
4919057e0414141f867a58882807497cf077a1e67a39a4a7967580141b02b750  app-foss-release.apk
ad20535133d99bf1542230543b9977552fb951ad35b10e5ae4feecf7ae11838a  wear-release.apk

Signing certificate: CN=Michael Spahr (SHA-256 571fd757540602812eb32fc43882d4abff32b8d02614451304834485404afc3c) — unchanged since 1.5.

🤖 Generated with Claude Code