thunderbird / thunderbird/thunderbird-android
Global Database 0.1.5 - Add mail database module
Open
@wmontwe is already working on this.
Since Jul 22, 2026.
tb-team
type: enhancement
- Dominant language
- Kotlin
- Stars
- 14k
- Forks
- 2.8k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 57
Description
Implement the internal mail database module that provides one global, legacy-compatible mail store for the application. It is the persistence implementation used by the global repository implementations.
The module owns mail schema, mappings, local data sources, and attachment access. core:database owns the domain-neutral Room 3 backend. Migration, validation, and cutover are separate work.
Acceptance criteria
- The module provides one global mail store for the application.
- It represents every durable mail record, queued operation, and downloaded attachment in the legacy table inventory.
- Account scope remains explicit and global identifiers are available where repository contracts require them.
- Downloaded attachment content remains file-backed.
- Mail schema and storage implementation types remain internal and do not escape repository contracts.
- The implementation supports Android and JVM desktop.
- Tests cover schema creation, migrations, transactions, and restart recovery.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.