Ships the first community translations: German (98%) and Brazilian Portuguese (100%), both from Weblate, plus the translation infrastructure and the Codeberg forge move that had accumulated under Unreleased. A minor bump rather than a patch: two new user-facing languages is a feature, the way 0.3.0 was cut for Reminders. versionCode is the derived 400 (MAJOR*10000 + MINOR*100 + PATCH), and scripts/sync_changelog_to_fastlane.sh generated changelogs/400.txt so the official F-Droid listing shows this version's "What's New". At 908 chars it exceeds the script's 500-char advisory and may be truncated in-client — consistent with past feature releases (0.2.0 ran 1811, 0.3.0 692). Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0146mhMLZ5AqJSZkADDc92Jz
6.0 KiB
6.0 KiB
Changelog
All notable changes to this project are documented here. The format follows
Keep a Changelog; the versionName committed in
app/build.gradle.kts is the source of truth for a release (see
docs/RELEASING.md), and the vX.Y.Z tag is minted by the pipeline.
[Unreleased]
[0.4.0] - 2026-08-31
Added
- Agendula now speaks German and Brazilian Portuguese, the first community translations. Pick one under Settings → App language, or in Android's own per-app language settings; leave it on System default and Agendula follows your phone. Anything not yet translated falls back to English.
- Agendula can now be translated. Pick or request a language on Weblate and translate in the browser — the link sits at the top of the language picker in Settings → App language. Partial translations are fine; anything untranslated falls back to English.
Changed
- Agendula's home is now Codeberg (
jlmakiola/agendula) — that's where the source, issues, pull requests and releases live. The Source and License links in Settings, the issue-reporting link and the F-Droid metadata all point there now. The self-hosted Gitea instance stays as build infrastructure.
[0.3.2] - 2026-07-20
Fixed
- Releases reach the Codeberg download channel again. 0.3.1 published to F-Droid but never appeared on Codeberg, so if you install from there — or through Obtainium — this is the release that finally carries 0.3.0's launch-crash fix. The app itself is unchanged from 0.3.1.
[0.3.1] - 2026-07-20
Fixed
- Agendula no longer crashes on launch. Every 0.3.0 install was affected: the release build stripped a constructor that the background-work scheduler needs to open its database, and that happens before the app draws anything.
[0.3.0] - 2026-07-19
Added
- Reminders: Agendula now delivers your due reminders itself. A one-time setup step explains this and asks for notification access, and a master switch in Settings turns the whole thing off again.
- A Settings screen, from the gear on the overview: appearance and theme, which fields the task form shows, your default list, and reminder defaults.
- The overview leads with Today — a progress ring showing how much of today you've finished — followed by a live preview of what's coming up next.
- Search across every task, open or completed, from the top bar.
- A proper app icon.
Changed
- A tidier top bar: no app title, with search and settings pinned to the right.
[0.2.2] - 2026-07-19
Fixed
- Release automation now reliably mirrors each release to the Codeberg mirror (signed APK + SHA-256 checksum). The 0.2.1 attempt failed when the release tag had already been synced to Codeberg.
[0.2.1] - 2026-07-19
Added
- Releases are now also published to the Codeberg mirror as a direct download: each release carries the signed APK plus a SHA-256 checksum, for users who don't use F-Droid.
[0.2.0] - 2026-06-27
Added
- M2 Material 3 Expressive UI — the app is fully navigable now: the provider/permission onboarding gate, the lists overview (smart lists + user lists grouped by account), and the task list (swipe-to-complete / -delete, inline add, smart-list section headers), detail, and create/edit screens, all wired to the M1 ViewModels.
- M3 detail/edit polish: a "Progress" slider (percent-complete, 5% detents,
written to
Tasks.PERCENT_COMPLETE) and conflict-safe saves —updateTaskre-checks the provider'slast_modifiedagainst the value captured when the form loaded and surfaces an overwrite-or-cancel prompt instead of clobbering an external change (e.g. a DAVx5 sync). - M4 subtasks (UI): reparent — a full-width, searchable "Parent task" sheet on the edit form, with candidates grouped by due-date section, files a task under any active top-level task in its list (or "None" to promote it); switching list clears the now-invalid parent. Tapping a subtask in the detail screen opens its own detail, which shows a "Part of …" parent card. On the task list a parent has a dedicated expand button that reveals its children as a nested grouped run, ending with an inline "add a subtask" row (an opt-out toggle is planned for the M6 settings screen).
- Priority is coloured by level (green / amber / red pastels) on the list, detail, and edit screens.
Fixed
- Overview open-counts now count top-level tasks only, so subtasks — and especially open subtasks under a completed parent — no longer inflate a list's "N open" or the smart-list counts.
- Swipe-to-delete now reveals its red background + icon as you drag (tracking the live direction, not just the settled target), and a floating "Deleted · Undo" chip defers the actual delete so it can be restored.
[0.1.0] - 2026-06-18
Added
- M1 data layer + logic ("backoffice"): the full non-visual stack over the
OpenTasks
TaskContractprovider (authority resolved at runtime —org.tasks.opentasksfor tasks.org,org.dmfs.tasksfor OpenTasks).- Vendored
TaskContractsubset,ProviderResolver,ColumnReader, mappers,AndroidTasksDataSource(Instances query + ContentObserver), andTasksRepositoryexposing live Flows of lists/tasks/detail. - Domain models, smart-list filtering (Today/Upcoming/Overdue/No-date/All/
Completed), sorting, form validation, sub-tasks via
parent_id. - Self-scheduled due-reminder engine (AlarmManager + boot/provider-change re-sync), notifications, DataStore prefs.
- Render-only ViewModels + UiState for every screen (lists, task list, detail, edit, settings, permission) so the UI is build-only.
- 24 JVM unit tests (mappers, filtering, sorting, form, value mapping, day
windows).
RootScreenis a functional scaffold over the real data, to be replaced screen-by-screen with the Material 3 Expressive design.
- Vendored
- M0 skeleton: project scaffolding copied from Calendula (Gradle, version catalog, Hilt, Material 3 Expressive theme, Gitea CI/release workflows), reseeded to a warm-mauve palette. Builds and shows a themed placeholder.