Skip to content

refactor: Replace Changelog Data Source - #11455

Merged
wmontwe merged 22 commits into
thunderbird:mainfrom
shamim-emon:fix-issue-11438
Sep 8, 2026
Merged

wmontwe merged 22 commits into
thunderbird:mainfrom
shamim-emon:fix-issue-11438

Conversation

@shamim-emon

@shamim-emon shamim-emon commented Aug 26, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Completes the migration of the in-app changelog from the legacy ckChangeLog XML data source to the schema-validated JSON changelog system. Changelog data is now loaded exclusively from raw JSON resources. The de.cketti.library.changelog:ckchangelog-core dependency is removed from the changelog feature and the legacy UI module. Existing changelog and recent-changes screens keep the same behavior and appearance.

What Changes

  • Migrated historical changelog entries into schema-validated JSON.

  • Added ChangelogConfigProvider so each app flavor points at its own index resource:

    • K9ChangelogConfigProvider.
    • TbChangelogConfigProvider.
  • Added ChangelogProvider to read the index, resolve raw resources, and decode JSON with kotlinx.serialization.

  • Added DTOs (ChangelogIndex, ReleaseEntry, ChangelogRelease, ChangelogNote) and ReleaseItem.

  • Added ChangelogVersionHistory to replace ckChangeLog’s first-run / last-seen version tracking (still persisted under the existing ckChangeLog_* storage keys so upgrade behavior is preserved).

  • Added unit tests to verify core cabilities.

@github-actions

github-actions Bot commented Aug 26, 2026 •

Copy link
Copy Markdown
Contributor

✅ Validation Passed: All report and feature-flag labels are correctly set.

@shamim-emon
shamim-emon removed the request for review from rafaeltonholo August 26, 2026 09:41
@shamim-emon
shamim-emon requested a review from wmontwe August 26, 2026 09:41
@shamim-emon shamim-emon added the report: include Include changes in user-facing reports. label Aug 26, 2026
@shamim-emon
shamim-emon force-pushed the fix-issue-11438 branch 5 times, most recently from eb768bf to 0707728 Compare August 26, 2026 16:17
@shamim-emon
shamim-emon marked this pull request as draft August 26, 2026 16:31
@shamim-emon
shamim-emon marked this pull request as ready for review August 26, 2026 16:31

@wmontwe wmontwe left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The Android resource shrinker cannot detect the changelog_release_* resources and strips them from a release build. You need to define a keep rule to avoid them being removed.

Comment thread app-k9mail/src/main/kotlin/app/k9mail/provider/K9ChangelogConfigProvider.kt Outdated
@shamim-emon
shamim-emon force-pushed the fix-issue-11438 branch 2 times, most recently from 103cd09 to 97696af Compare September 5, 2026 00:15
@shamim-emon
shamim-emon requested a review from wmontwe September 5, 2026 05:33
Comment thread app-thunderbird/src/debug/res/raw/keep.xml Outdated

@wmontwe wmontwe left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changelog module is not backed by tests, despite it does parsing, resource lookup, state tracking etc.

Comment thread app-k9mail/src/release/res/raw/changelog_index.json
…in/res/raw/ to app-k9mail/src/release/res/raw/
…angelog jsons into app-k9mail/src/release/res/raw/ instead of app-k9mail/src/main/res/raw/

@wmontwe wmontwe left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! All issues resolved.

@wmontwe
wmontwe merged commit a2bf69a into thunderbird:main Sep 8, 2026
20 checks passed
@thunderbird-botmobile thunderbird-botmobile Bot added this to the Thunderbird 25 milestone Sep 8, 2026
@shamim-emon
shamim-emon deleted the fix-issue-11438 branch September 8, 2026 13:12

This branch was successfully deployed

1 active (outdated) and 1 inactive deployments
botmobile — 1015c8f7 Deployed Sep 8, 2026 by wmontwe via pr-merged #475
review — c47f8d39 Deployed Aug 26, 2026 by shamim-emon via label-tb-team #453
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

report: include Include changes in user-facing reports.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Replace Changelog Data Source

3 participants