thunderbird / thunderbird/thunderbird-android
First moving, then deleting a message in offline mode won't delete the message from the server
Nobody has claimed this yet.
- Dominant language
- Kotlin
- Stars
- 14k
- Forks
- 2.8k
- Avg merge
- 3d 3h
- Merged PRs (30d)
- 57
Description
Checklist
- I have used the search function to see if someone else has already submitted the same bug report.
- I will describe the problem with as much detail as possible.
App
Thunderbird for Android
App version
8.1
Where did you get the app from?
None
Android version
doesn't matter
Device model
No response
Steps to reproduce
1.Make sure the device isn't able to connect to the incoming mail server, e.g. turn on airplane mode
2. Move a message from folder A to folder B
3. Open folder B
4. Delete the message that was moved there in step 2
5. Restore connectivity and sync the account to make sure pending commands are processed
Expected behavior
After the pending (remote) commands have been processed the message should have been deleted from folder B.
Actual behavior
The message is deleted locally, but not on the server. The app keeps a placeholder message in folder B. So syncing the folder doesn't download the message from the server and locally it appears as if the message is gone. However, the message is still on the server and other clients are able to see it.
This is another instance of the problem we tried to address with the "Cannot copy or move a message that is not synchronised with the server" message. In this case we don't display the message and perform only half of the operation instead. See https://github.com/thunderbird/thunderbird-android/issues/823#issuecomment-2501614162
Logs
No response
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.
Research direction
Reproduce the sequence in the issue: move a message while offline, delete it in the destination folder, then restore connectivity and sync. Trace the pending remote commands for the move and delete operations; done means the server no longer retains the message and syncing does not leave a placeholder in folder B.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- android, kotlin
- Domain
- mobile
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100