Releases: dannymcc/may
Releases · dannymcc/may
Release list
v0.27.1
What's Changed
Bug Fixes
- Fresh installs no longer crash on startup — new databases were being stamped at an old migration checkpoint and then replaying historical migrations over an already-complete schema, crashing with
CircularDependencyErrorin theis_sharedmigration. Fresh databases now stamp at head, the affected migration is guarded, and installs already stuck in the bad state upgrade cleanly (#278) - The vehicle consumption and fuel price charts now label their Y axis with the active unit (#276)
v0.27.0
What's Changed
New Features
- Global search — find expenses, fuel logs, documents, notes, trips and charging sessions by text and date range, from the new search icon in the nav (#112)
- Price per unit everywhere — a column on the Fuel Logs page, on each vehicle's fuel card, and a collapsible Fuel Price Trend chart next to the consumption chart (#249, #145)
- Expenses by Category chart and Total Cost stat on the dashboard (#145)
- Carbon emissions — estimated lifetime CO₂ from your logged fuel (per-fuel-type DEFRA factors, dual-fuel aware) and a total Fuel Used stat on the vehicle page (#218)
- Vendor tracking — the expense form now suggests previously used vendors, and the Expenses page gains a Spend by Vendor report (#213)
- Link expenses to maintenance — creating an expense can mark a maintenance schedule as performed, stamping the date and odometer and recalculating the next due point (#86)
- Number formatting preferences — choose a thousand separator (none, space, comma, or period with European decimal-comma) and optionally round costs to whole numbers (#134)
Bug Fixes
- Two French interface strings that displayed in English (follow-up to #266)
Other
- One new database migration, applied automatically on startup
v0.26.0
What's Changed
New Features
- PostgreSQL support — set
DATABASE_URL=postgresql://...and it works; psycopg2 now ships in the image, and legacypostgres://URLs are normalised (#239) - km/L consumption unit joins L/100km, MPG (UK) and MPG (US) (#212)
- Default trip type per vehicle — set the purpose pre-selected when logging trips, so personal-use vehicles no longer default to Business (#272)
- Completion date for maintenance — choose the date when marking maintenance performed, applied to both the schedule and the created expense (#220)
- ntfy access tokens — self-hosted ntfy servers with authentication now work; the token is sent as a Bearer header, never over plain HTTP, and is never echoed back into the settings page (#90)
- Exact fuel-log link on price history — price rows now reference their fuel log directly instead of heuristic date/price matching, with a backfill migration (#254)
Translations
- Three new languages: Turkish, Russian, and Arabic (with right-to-left layout) (#198, #118, #150)
- All 18 language catalogs are now 100% translated — previously 13 languages had hundreds of entries silently falling back to English (#266)
- Page titles, expense categories, fuel types, vehicle spec labels and chart labels are now translated (#266)
Bug Fixes
- Comma decimal separators (e.g.
2,179) no longer truncate to whole numbers in the live form calculators (#267, #269) - The Monthly Costs chart now buckets by real calendar months — no more duplicated month bars (#270)
- Marking maintenance performed with a £0 cost now creates the expense entry when requested (#271)
Other
- CodeRabbit review configuration
- Three new database migrations run automatically on startup
v0.25.0
v0.24.5
What's Changed
Bug Fixes
- Deleting a fuel station no longer 500s when it has price history entries — they're removed with the station (#256)
- "Auto-create expense when due" on recurring expenses now works: due expenses are generated hourly in the background (#257)
- Biannual recurring expenses now advance their next-due date correctly (#257)
Upgrade note
Recurring expenses with auto-create enabled and an overdue next-due date will catch up on the first run after upgrading — one expense per elapsed period, capped at 60. Untick auto-create first if you'd rather not back-fill.
v0.24.4
What's Changed
Bug Fixes
- CSV import honours your date format preference for ambiguous dates like
12/01/2026(#250) - CSV import and the JSON API accept comma decimal separators —
9,99no longer imports as999(#244) - Quick Fuel Log entries now appear in the station chart view, with a migration backfilling existing logs (#252)
- Station usage counters decrease on fuel log deletion and follow station reassignment (#252)
- Station price charts show a separate line per fuel type (#252)
- Tessie-tracked vehicles report their odometer in the vehicle's own unit, fixing maintenance schedules for miles-unit Teslas (#245)
v0.24.3
What's Changed
Bug Fixes
- Average consumption is now calculated across full-tank-to-full-tank spans, excluding only spans that contain a missed fill-up (#251). Previously one missed fill-up anywhere in a vehicle's history disabled the average permanently.
v0.24.2
v0.24.1
What's Changed
Bug Fixes
- Blank optional fields (tank capacity, odometer, etc.) no longer render as the literal text "None" when editing a record, which blocked saving with a validation error (#241). The fix applies to every form in the app.
v0.24.0
What's Changed
New Features
- Support
PUID/PGIDenvironment variables for runtime UID/GID, improving Unraid and non-standard host compatibility (#165, #226)
Bug Fixes
- Recurring reminders no longer create duplicate entries when re-completed (#232)
- Maintenance next-due odometer corrected for miles-interval schedules — the interval is now converted into the vehicle's odometer unit, and a migration recomputes existing schedules (#230)
- Fuel logs on the same date now sort consistently using the odometer as a tiebreaker, across the UI, API and exports (#236)
- Quick Fuel Log pre-selects your default vehicle (#233)
- Average consumption now explains why a figure isn't available instead of showing a bare dash (#214)
- Expense edits no longer lost when the odometer field is empty (#217)
- Numeric inputs accept a comma as the decimal separator, both client-side and server-side (e.g.
9,99and1.234,56) (#237) - Calendars start the week according to the user's locale — Monday for de-DE, en-GB and most of Europe; Sunday for en-US (#238)
- Long reminder content no longer breaks the mobile layout on the vehicle page (#215)
Translations
- 153 additional UI strings wrapped for translation across 14 templates; French catalogue completed (#172)