-
Notifications
You must be signed in to change notification settings - Fork 2.1k
feat: Add frontend for email connector #5008
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
- imaplib.IMAP4_SSL is supposed to be treated as an ephemeral object
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PR Summary
This PR implements the frontend configuration flow for the IMAP email connector, enabling email integration as a new Personal category data source.
- Error handling in
backend/onyx/connectors/imap/connector.py
needs improvement: missing proper IMAP connection cleanup, using print statements instead of logger, and incorrect type checking for 'name' vs 'value' - Memory optimization needed for HTML email parsing with BeautifulSoup in the connector implementation to handle large emails
- 'TODO!' testing section needs to be completed before merging, particularly for frontend connector configuration flows
- The email connector is placed in the Personal category unlike other messaging connectors (Gmail, Slack) which are in Messaging - consider if this categorization makes sense
- IMAP connector is not included in validAutoSyncSources, suggesting future work needed for auto-sync support
13 files reviewed, 4 comments
Edit PR Review Bot Settings | Greptile
web/src/app/admin/connectors/[connector]/pages/DynamicConnectorCreationForm.tsx
Show resolved
Hide resolved
* Add basic structure for frontend email connector * Update names of credentials-json keys * Fix up configurations workflow * Edit logic on how `mail_client` is used - imaplib.IMAP4_SSL is supposed to be treated as an ephemeral object * Edit helper name and add docs * Fix invalid mailbox selection error * Implement greptile suggestions * Make recipients optional and add sender to primary-owners * Add sender to external-access too; perform dedupe-ing of emails * Simplify logic
Description
This PR enables a frontend configuration flow for the new email connector.
Addresses: https://linear.app/danswer/issue/DAN-2167/add-imap-frontend.
How Has This Been Tested?
Mainly UI change; existing IMAP connector tests still passing.