diff --git a/CHANGELOG.md b/CHANGELOG.md
index dc9ea17..caa2df4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -5,6 +5,15 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
+## [2.20.2] — 2026-09-12
+
+### Fixed
+- **Crash reports are filed in English.** Reporting a crash from a phone set to
+ another language prefilled the issue — title and body — in that language, so
+ a French crash arrived on Codeberg as a French issue ([#297], [#298]). The
+ text that is *posted* is now English for everyone; the dialog that asks you
+ to send it, and everything else you see in the app, is still translated.
+
## [2.20.1] — 2026-09-07
### Fixed
@@ -1672,3 +1681,5 @@ automatically, with zero telemetry and no internet permission.
[#146]: https://codeberg.org/jlmakiola/calendula/issues/146
[#267]: https://codeberg.org/jlmakiola/calendula/issues/267
[#239]: https://codeberg.org/jlmakiola/calendula/issues/239
+[#297]: https://codeberg.org/jlmakiola/calendula/issues/297
+[#298]: https://codeberg.org/jlmakiola/calendula/issues/298
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 80e35f6..d90ef81 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -28,8 +28,8 @@ android {
// which builds this version and then creates the matching vX.Y.Z tag +
// release itself (versionCode is pinned to MAJOR*10000 + MINOR*100 +
// PATCH from versionName, e.g. 2.7.2 -> 20702). See docs/RELEASING.md.
- versionCode = 22001
- versionName = "2.20.1"
+ versionCode = 22002
+ versionName = "2.20.2"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
diff --git a/app/src/main/java/de/jeanlucmakiola/calendula/CalendulaApp.kt b/app/src/main/java/de/jeanlucmakiola/calendula/CalendulaApp.kt
index e705be3..3f9b88c 100644
--- a/app/src/main/java/de/jeanlucmakiola/calendula/CalendulaApp.kt
+++ b/app/src/main/java/de/jeanlucmakiola/calendula/CalendulaApp.kt
@@ -32,13 +32,15 @@ class CalendulaApp : Application() {
// respecting, on-device; the user submits the report by hand). The
// capture/loop-detection/report machinery lives in floret-kit's
// core-crash; only the app label + issue-tracker URLs are app-specific.
+ // The prefilled issue's own title and body are the kit's, in English:
+ // they are posted to the tracker, so they don't follow the device
+ // language the way the dialog around them does.
CrashReporter.install(
this,
CrashConfig(
appLabel = getString(R.string.app_name),
newIssueUrl = getString(R.string.report_issue_url),
chooseIssueUrl = getString(R.string.report_issue_choose_url),
- issueTitle = getString(R.string.crash_report_issue_title),
),
)
reconcileAutoBackup()
diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml
index 50f48fb..a46feab 100644
--- a/app/src/main/res/values-ar/strings.xml
+++ b/app/src/main/res/values-ar/strings.xml
@@ -361,7 +361,6 @@
دَعم التطوير
الإصدار %1$s
رمز تطبيق Calendula
- شكرًا لإبلاغ عن عطل في %1$s. يُرجى إضافة أي شيء تتذكره حول ما كنت تفعله، ثم إرسال.\n\n### ماذا حدث\n\n\n### تقرير العطل\n%2$s\n
حول
الإبلاغ عن مشكلة
أرسل تقرير الأعطال أو افتح متعقب المشكلات
@@ -502,9 +501,7 @@
ليس الآن
تم نسخ التقرير إلى حافظتك
تعذّر فتح متتبع المشكلات. التقرير موجود في حافظتك.
- تقرير العطل
%1$s تقرير العطل
- _(كان التقرير طويلًا جدًا لهذا الرابط — الصقه من حافظتك هنا.)_
أعياد الميلاد
التواريخ الخاصة
هذه القاعدة لا تتكرر أبدًا
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index a4eb7e7..03762cf 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -382,12 +382,9 @@
%1$s wurde beim letzten Mal unerwartet beendet. Du kannst bei der Behebung helfen, indem du diesen Bericht als Issue sendest. Er bleibt auf deinem Gerät, bis du ihn teilst, und enthält keine persönlichen Daten oder Kalenderinhalte — nur die technischen Angaben unten.
Melden
Nicht jetzt
- Absturzbericht
%1$s-Absturzbericht
Bericht in die Zwischenablage kopiert
Der Issue-Tracker konnte nicht geöffnet werden. Der Bericht ist in deiner Zwischenablage.
- Danke, dass du einen Absturz in %1$s meldest. Bitte ergänze, was du gerade getan hast, und sende dann ab.\n\n### Was ist passiert\n\n\n### Absturzbericht\n%2$s\n
- _(Der Bericht war zu lang für diesen Link — füge ihn aus deiner Zwischenablage hier ein.)_
Verwaltet durch “%1$s” — der Titel, das Datum und Wiederholungen werden synchron mit deinen Kontakten gehalten. Erinnerungen, Ort und Beschreibung kannst du frei bearbeiten.
- %d Tag
diff --git a/app/src/main/res/values-es/strings.xml b/app/src/main/res/values-es/strings.xml
index a429555..10acfda 100644
--- a/app/src/main/res/values-es/strings.xml
+++ b/app/src/main/res/values-es/strings.xml
@@ -405,12 +405,9 @@
%1$s se cerro de forma inesperada la ultima vez. Puedes ayudar a solucionarlo enviando un reporte del problema. Este permanece en tu dispositivo hasta que decidas enviarlo, y no contiene información personal o contenido de tu calendario — solo los detalles técnicos de mas abajo.
Reportar
No por ahora
- Reporte de error
Reporte de error de %1$s
Reporte copiado a tu porta papeles
No se pudo abrir el sistema de seguimiento de errores. El reporte es en tu portapapeles.
- Gracias por reportar un error en %1$s. Por favor añade todo lo que recuerdas sobre lo que estabas haciendo y luego publicalo.\n\n### que sucedió\n\n\n### reporte de error\n%2$s\n
- _(el reporte es demasiado largo para este link — pegalo aquí desde su portapeles.)_
Recurso
Acerca de
%1$s, %2$d veces
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 50d4a72..6f2818d 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -486,12 +486,9 @@
%1$s a été fermé de manière inattendue la dernière fois. Vous pouvez aider à le corriger en envoyant ce rapport en tant que problème. Il reste sur votre appareil jusqu’à ce que vous choisissiez de le partager, et n’inclut aucune donnée personnelle ni contenu de calendrier — seuls les détails techniques ci-dessous.
rapport
pas maintenant
- rapport de plantage
%1$s rapport de plantage
Rapport copié dans votre presse-papiers
Impossible d’ouvrir le suivi des problèmes. Le rapport se trouve dans votre presse-papiers.
- Merci d’avoir signalé un plantage dans %1$s. Veuillez ajouter tout ce dont vous vous souvenez sur ce que vous faisiez, puis soumettez-le.\n\n### Que s’est-il passé\n\n\n### Rapport de plantage\n%2$s\n
- _(Le rapport était trop long pour ce lien — collez-le depuis votre presse-papiers ici.)_
anniversaires
Anniversaires
dates spéciales
diff --git a/app/src/main/res/values-it/strings.xml b/app/src/main/res/values-it/strings.xml
index e32f955..5adb742 100644
--- a/app/src/main/res/values-it/strings.xml
+++ b/app/src/main/res/values-it/strings.xml
@@ -394,12 +394,9 @@
%1$s si è chiuso inaspettatamente l\'ultima volta. Puoi contribuire allo sviluppo inviando questo report, che rimane sul tuo dispositivo finchè non scegli di inviarlo e non include informazioni personali o sui tuoi calendari: solo le informazioni tecniche qui sotto.
Report
Non ora
- Crash report
%1$s crash report
Report copiato negli Appunti
Impossibile aprire il gestore dei problemi. Il report è negli Appunti.
- Grazie per segnalare un crash di %1$s. Per favore, aggiungi ogni informazione che ricordi in merito a quello che stavi facendo, quindi invia\n\n### Cosa è successo\n\n\n###Crash report\n%2$s\n
- _(Il report era troppo lungo per questo link - copialo qui dai tuoi Appunti.)_
Ricorrenza
Evento ricorrente
%1$s da %2$s
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index 3c869f9..d25f979 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -495,12 +495,9 @@
Aplikacja %1$s została nieoczekiwanie zamknięta przy ostatnim uruchomieniu. Możesz pomóc nam to naprawić, wysyłając zgłoszenie o błędzie. Pozostanie ono na Twoim urządzeniu, dopóki nie zdecydujesz się go udostępnić, i nie zawiera żadnych danych osobowych ani treści z kalendarza — jedynie poniższe szczegóły techniczne.
Zgłoś
Nie teraz
- Raport o awarii
Raport o awarii %1$s
Raport skopiowany do schowka
Nie udało się otworzyć systemu zgłoszeń. Raport znajduje się w Twoim schowku.
- Dziękujemy za zgłoszenie awarii w aplikacji %1$s. Prosimy o dodanie wszelkich zapamiętanych szczegółów na temat wykonywanych czynności, a następnie przesłanie zgłoszenia.\n\n### Co się wydarzyło\n\n\n### Raport o awarii\n%2$s\n
- _(Raport był zbyt długi dla tego linku — wklej go tutaj ze schowka)._
Szczególne daty
Urodziny {name} ({year})
Rocznica {name} ({year})
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index cda4ec4..2dc5bde 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -636,12 +636,9 @@
%1$s fechou inesperadamente da última vez. Você pode ajudar a consertar enviando este reporte como um problema. Ele fica no seu dispositivo até que decida enviá-lo, e não inclui dados pessoais ou conteúdo de calendário — somente os detalhes técnicos abaixo.
Reportar
Agora não
- Reportar quebra
%1$s relatório de quebra
Relatório copiado para a área de transferência
Não foi possível abrir o tracker de problemas. O relatório está na área de transferência.
- Obrigado por reportar uma quebra em %1$s. Por favor, escreva o que estava fazendo, depois envie. \n### O que aconteceu \n\n\n### Relatório de quebra \n%2$s\n
- _(O reporte era muito longo para este link — cole da área de transferência aqui.)_
Aniversários
Aniversários de relacionamento
Datas especiais
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 06a9fbc..7c8bc3c 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -598,12 +598,9 @@
%1$s 上次意外关闭。您可以将此报告作为问题发送以帮助修复。报告在您选择共享之前仅保留在设备上,不含任何个人数据或日历内容——仅包含以下技术细节。
报告
暂不
- 崩溃报告
%1$s 崩溃报告
报告已复制到剪贴板
无法打开问题追踪器。报告已在剪贴板中。
- 感谢您报告 %1$s 的崩溃。请补充您记得的操作内容,然后提交。\n\n### 发生了什么\n\n\n### 崩溃报告\n%2$s\n
- _(报告太长,无法通过此链接附带——请从剪贴板粘贴。)_
生日
纪念日
特殊日期
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 40e9971..bdc610f 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -774,12 +774,9 @@
%1$s closed unexpectedly last time. You can help fix it by sending this report as an issue. It stays on your device until you choose to share it, and includes no personal data or calendar content — only the technical details below.
Report
Not now
- Crash report
%1$s crash report
Report copied to your clipboard
Couldn\'t open the issue tracker. The report is on your clipboard.
- Thanks for reporting a crash in %1$s. Please add anything you remember about what you were doing, then submit.\n\n### What happened\n\n\n### Crash report\n%2$s\n
- _(The report was too long for this link — paste it from your clipboard here.)_
https://codeberg.org/jlmakiola/calendula/issues/new
https://codeberg.org/jlmakiola/calendula/issues/new/choose
diff --git a/fastlane/metadata/android/en-US/changelogs/22002.txt b/fastlane/metadata/android/en-US/changelogs/22002.txt
new file mode 100644
index 0000000..b0b347a
--- /dev/null
+++ b/fastlane/metadata/android/en-US/changelogs/22002.txt
@@ -0,0 +1,2 @@
+Fixed
+• Crash reports are now filed in English. On a phone set to another language, the prefilled issue's title and text came out in that language, which nobody on the project could read. What gets posted is English for everyone; the dialog asking you to send it stays in your language.
diff --git a/floret-kit b/floret-kit
index ad440e8..14c13ba 160000
--- a/floret-kit
+++ b/floret-kit
@@ -1 +1 @@
-Subproject commit ad440e8cac3c54fad1cb7a897c00efe98eecde9a
+Subproject commit 14c13bae6d846845791e8b32eca6d016d2524364