Synchronize all subscribed mailboxes in the frontend
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 1k
- Forks
- 348
- Avg merge
- 12h 28m
- Merged PRs (30d)
- 91
Description
Steps to reproduce
- Use Nextcloud mail with Zimbra as IMAP server
- Use sub-folders and some filtering rules that automatically put messages in certain folders
- Open the Nextcloud mail client
- Enable
SubscribesandSync in backgroundfor the folder - Receive a message in a sub-folder
Expected behavior
The mail client loads the new email and shows that there is an unread email.
Actual behavior
The new e-mail isn't loaded and the user is unaware of the new message in the sub-folder.
Mail app version
5.1.2
Nextcloud version
30.0.11
Mailserver or service
Zimbra
Operating system
Docker image on Kubernetes
PHP engine version
PHP 8.2
Nextcloud memory caching
config.php: 'memcache.local' => '\\OC\\Memcache\\APCu'
config.php: 'memcache.distributed' => '\\OC\\Memcache\\Redis'
config.php: 'memcache.locking' => '\\OC\\Memcache\\Redis'
Web server
Apache (supported)
Database
PostgreSQL
Additional info
From my debugging it seems that the front-end only sends a request to /apps/mail/api/mailboxes/xx/sync for the INBOX and the currently opened sub-folder. I guess that if you send this request for every sub-folder, the issue would be solved.
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
Start by tracing the frontend flow that sends requests to /apps/mail/api/mailboxes/xx/sync, comparing the INBOX and currently opened sub-folder behavior. Reproduce with subscribed sub-folders and background sync enabled, then verify that new messages in each subscribed folder are loaded and shown as unread.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100