# READ CAREFULLY THEN REMOVE
Remove bullet points that are not relevant.
PLEASE REFRAIN FROM USING AI TO WRITE YOUR CODE AND PR DESCRIPTION. IF YOU DO USE AI TO WRITE YOUR CODE PLEASE PROVIDE A DESCRIPTION AND REVIEW IT CAREFULLY. MAKE SURE YOU UNDERSTAND THE CODE YOU ARE SUBMITTING USING AI.
- Pull requests that do not follow these guidelines will be closed without review or comment.
- If you use AI to write your PR description your pr will be close without review or comment.
- If you are unsure about anything, feel free to ask for clarification.
## Description
Please provide a clear description of your changes.
---
## Type of Change
Please delete options that are not relevant.
- [ ] 🐛 Bug fix (non-breaking change which fixes an issue)
- [ ] ✨ New feature (non-breaking change which adds functionality)
- [ ] 💥 Breaking change (fix or feature with breaking changes)
- [ ] 📝 Documentation update
- [ ] 🎨 UI/UX improvement
- [ ] 🔒 Security enhancement
- [ ] ⚡ Performance improvement
## Areas Affected
Please check all that apply:
- [ ] Email Integration (Gmail, IMAP, etc.)
- [ ] User Interface/Experience
- [ ] Authentication/Authorization
- [ ] Data Storage/Management
- [ ] API Endpoints
- [ ] Documentation
- [ ] Testing Infrastructure
- [ ] Development Workflow
- [ ] Deployment/Infrastructure
## Testing Done
Describe the tests you've done:
- [ ] Unit tests added/updated
- [ ] Integration tests added/updated
- [ ] Manual testing performed
- [ ] Cross-browser testing (if UI changes)
- [ ] Mobile responsiveness verified (if UI changes)
## Security Considerations
For changes involving data or authentication:
- [ ] No sensitive data is exposed
- [ ] Authentication checks are in place
- [ ] Input validation is implemented
- [ ] Rate limiting is considered (if applicable)
## Checklist
- [ ] I have read the [CONTRIBUTING](https://github.com/Mail-0/Zero/blob/staging/.github/CONTRIBUTING.md) document
- [ ] My code follows the project's style guidelines
- [ ] I have performed a self-review of my code
- [ ] I have commented my code, particularly in complex areas
- [ ] I have updated the documentation
- [ ] My changes generate no new warnings
- [ ] I have added tests that prove my fix/feature works
- [ ] All tests pass locally
- [ ] Any dependent changes are merged and published
## Additional Notes
Add any other context about the pull request here.
## Screenshots/Recordings
Add screenshots or recordings here if applicable.
---
_By submitting this pull request, I confirm that my contribution is made under the terms of the project's license._
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
* **New Features**
* Improved email thread synchronization for enhanced performance and reliability.
* Added support for advanced search and label filtering when listing email threads.
* **Bug Fixes**
* Refined cache invalidation logic to ensure up-to-date thread and message lists in the user interface.
* **Chores**
* Updated environment variables and documentation to reflect new sync options and configuration changes.
* Enhanced internal sync tracking and reduced redundant synchronization operations.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
* draft fixes:
- added cc and bcc when saving drafts
- save drafts less aggresively
* some fixes for saving attachments to draft
* fix for empty draft loading
* fix draft list recipient name/address
* also show 'No Recipient' if empty
* remove comments
* switch to mimetext for draft saving to keep formatting consistent
* add message title to draft list
* feat: single api for oauth connections
* fix: add extra error handling
* chore: simplify and fix the dev env
* Ai generate security (#706)
* Create prompts with XML formatting
* Include XML formatted prompts in generate func
* remove unused regex and add helper functions/warnings
* error handling
* Update apps/mail/lib/prompts.ts
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* lint issues
* Update prompts.ts
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650081
Coderabbit fix 1
* erabbitai bot 3 days ago ⚠️ Potential issue errorOccurred state is stale inside finally React state setters (setErrorOccurred) are asynchronous; the errorOccurred value captured at render time will not yet reflect changes made earlier in the same event loop. Consequently, the logic deciding whether to collapse/expand may run with an outdated flag. - } finally { - setIsLoading(false); - if (!errorOccurred || isAskingQuestion) { - setIsExpanded(true); - } else { - setIsExpanded(false); // Collapse on errors - } - } + } finally { + setIsLoading(false); + // Use a local flag to track errors deterministically + const hadError = isAskingQuestion ? false : !!errorFlagRef.current; + setIsExpanded(!hadError); + } You can create const errorFlagRef = useRef(false); and update errorFlagRef.current = true every time an error is detected, ensuring reliable behaviour irrespective of React batching. Committable suggestion skipped: line range outside the PR's diff.
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650112
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650106
* https://github.com/Mail-0/Zero/pull/706#discussion_r2049650097
---------
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Add a new Vietnamese translation file to support Vietnamese language users (#726)
* feat(i18n): add Vietnamese language support
Add Vietnamese ('vi') to the list of supported languages in the
i18n configuration and JSON file to expand language options.
* Add a new Vietnamese translation file to support Vietnamese language users.
* Clear Vietnamese translation strings
* Update es.json (#710)
Co-authored-by: needle <122770437+needleXO@users.noreply.github.com>
* Update app manifest and add new icons for PWA (#739)
* feat: allow sending from email aliases added through gmail (#743)
* Refactor IP handling in early-access routes
* Add unauthorized error handling in sign out function
---------
Co-authored-by: Ahmet Kilinc <akx9@icloud.com>
Co-authored-by: BlankParticle <blankparticle@gmail.com>
Co-authored-by: grim <75869731+ripgrim@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Chánh Đại <dai@chanhdai.com>
Co-authored-by: Dani B. <danibaldomirm@gmail.com>
Co-authored-by: needle <122770437+needleXO@users.noreply.github.com>
Co-authored-by: Humber Nieto <56887259+humbernieto@users.noreply.github.com>
Co-authored-by: Atharva Deosthale <atharva.deosthale17@gmail.com>
* fix(ui): Fixes "isThinking is not defined" on the landing page
* Update README.md (#396)
* docs: more documentation on database environment setup
* docs: added note for more clarity on db env
* docs: details on where the .env should be copied at
* docs: removed unnecessary phrase
* docs: added contributing md link in readme (#399)
* feat(ui): Design Improvements (Landing page & AI Summary)
* fix(ui): Fix MailCategoryTabs tooltip showing when "iconsOnly" is false
* minor
* minor
* fix(UI): black bars for mobile
* Update LICENSE to MIT
* Update LICENSE
* remove license from apps folder. MIT license applies to whole app
---------
Co-authored-by: hsp4m <sp4m787@gmail.com>
Co-authored-by: nizzy <140507264+nizzyabi@users.noreply.github.com>
Co-authored-by: nyzs <oknakoca@gmail.com>
Co-authored-by: Aj Wazzan <x_1337@outlook.com>
Co-authored-by: user12224 <122770437+user12224@users.noreply.github.com>
Co-authored-by: Nizzy <nizabizaher@gmail.com>