Commit graph

107 commits

Author SHA1 Message Date
Anish Sarkar
a5103da3d7 chore: ran linting 2026-01-24 04:36:34 +05:30
Anish Sarkar
97d7207bd4 fix: update Google Drive indexer to use SQLAlchemy casting for metadata queries
- Modified the Google Drive indexer to use SQLAlchemy's cast function for querying document metadata, ensuring proper type handling for file IDs.
- Improved the consistency of metadata queries across the indexing functions, enhancing reliability in document retrieval and processing.
2026-01-24 04:33:10 +05:30
Anish Sarkar
5cf6fb15ed fix: improve error logging for indexing tasks across multiple connectors
- Updated error handling in the indexing functions for BookStack, Confluence, Google Calendar, Jira, Linear, and Luma connectors to log specific error messages when failures occur.
- Enhanced logging for cases where no pages or events are found, providing clearer informational messages instead of treating them as critical errors.
- Ensured consistent error reporting across all connector indexers, improving debugging and user feedback during indexing operations.
2026-01-24 03:59:17 +05:30
Anish Sarkar
c48ba36fa4 feat: improve indexing logic and duplicate handling in connectors
- Enhanced Google Calendar and Composio connector indexing to track and log duplicate content, preventing re-indexing of already processed events.
- Implemented robust error handling during final commits to manage integrity errors gracefully, ensuring successful indexing despite potential duplicates.
- Updated notification service to differentiate between actual errors and warnings for duplicate content, improving user feedback.
- Refactored date handling to ensure valid date ranges and adjusted end dates when necessary for better indexing accuracy.
2026-01-23 23:36:14 +05:30
Anish Sarkar
d20bb385b5 feat: enhance date handling and indexing logic across connectors
- Added normalization for "undefined" strings to None in date parameters to prevent parsing errors.
- Improved date range validation to ensure start_date is strictly before end_date, adjusting end_date if necessary.
- Updated Google Calendar and Composio connector indexing logic to handle duplicate content more effectively, logging warnings for skipped events.
- Enhanced error handling during final commits to manage integrity errors gracefully.
- Refactored date handling in various connector indexers for consistency and reliability.
2026-01-23 23:03:29 +05:30
Anish Sarkar
8d8f69545e feat: improve Google Calendar and Gmail connectors with enhanced error handling
- Added user-friendly re-authentication messages for expired or revoked tokens in both Google Calendar and Gmail connectors.
- Updated error handling in indexing tasks to log specific authentication errors and provide clearer feedback to users.
- Enhanced the connector UI to handle indexing failures more effectively, improving overall user experience.
2026-01-23 18:57:10 +05:30
Manoj Aggarwal
49d51ba569 merge 2026-01-22 20:57:48 -08:00
DESKTOP-RTLN3BA\$punk
8b81507739 refactor: remove unused COMPOSIO_CONNECTOR migration and linting 2026-01-22 16:43:08 -08:00
Manoj Aggarwal
4b60a2b805 nit 2026-01-22 13:01:10 -08:00
Manoj Aggarwal
f0760c14e9 Merge dev into feature/obsidian - resolved conflicts keeping both Obsidian and Composio connectors 2026-01-22 11:43:18 -08:00
DESKTOP-RTLN3BA\$punk
12b825bff0 Merge branch 'dev' of https://github.com/MODSetter/SurfSense into dev 2026-01-21 22:58:48 -08:00
DESKTOP-RTLN3BA\$punk
8c625d4237 feat: composio connector 2026-01-21 22:57:58 -08:00
Manoj Aggarwal
88a9a5bef2 format 2026-01-21 22:54:09 -08:00
Manoj Aggarwal
8a83424be5 Add support for obsidian to surfsense 2026-01-21 15:21:06 -08:00
Anish Sarkar
35888144eb refactor: Update GitHub connector to use gitingest CLI
- Refactored GitHubConnector to utilize gitingest CLI via subprocess, improving performance and avoiding async issues with Celery.
- Updated ingestion method to handle repository digests more efficiently, including error handling for subprocess execution.
- Adjusted GitHub indexer to call the new synchronous ingestion method.
- Clarified documentation regarding the optional nature of the Personal Access Token for public repositories.
2026-01-20 23:24:33 +05:30
Anish Sarkar
49b8a46d10 feat: Integrate gitingest for GitHub repository ingestion
- Added gitingest as a dependency to streamline the ingestion of GitHub repositories.
- Refactored GitHubConnector to utilize gitingest for efficient repository digest generation, reducing API calls.
- Updated GitHub indexer to process entire repository digests, enhancing performance and simplifying the indexing process.
- Modified GitHub connect form to indicate that the Personal Access Token is optional for public repositories.
2026-01-20 21:52:32 +05:30
Anish Sarkar
e0be1b9133 chore: ran backend and frontend linting 2026-01-17 16:30:07 +05:30
Anish Sarkar
f538d59ca3 feat: enhance Google Drive file metadata handling
- Updated Google Drive API calls to include md5Checksum in file metadata retrieval for improved content tracking.
- Added logic to check for rename-only updates based on md5Checksum, optimizing document processing by preventing unnecessary ETL operations for unchanged content.
- Enhanced existing document update logic to handle renaming and metadata updates more effectively, particularly for Google Drive files.
2026-01-17 16:24:53 +05:30
Anish Sarkar
6550c378b2 feat: enhance Google Drive document handling and UI integration
- Implemented support for both new file_id-based and legacy filename-based hash schemes in document processing.
- Added functions to generate unique identifier hashes and find existing documents with migration support.
- Improved existing document update logic to handle content changes and metadata updates, particularly for Google Drive files.
- Enhanced UI components to display appropriate file icons based on file types in the Google Drive connector.
- Updated document processing functions to accommodate the new connector structure and ensure seamless integration.
2026-01-17 14:57:31 +05:30
Anish Sarkar
7af3d1bc1a feat: improve Google Drive connector handling and UI feedback
- Added logic to refresh connector and notification attributes after indexing to ensure up-to-date information.
- Enhanced periodic sync configuration to disable the option when no folders or files are selected for Google Drive, providing user feedback through a message.
- Updated the connector edit view to reflect the new disabled state for periodic sync based on selected items.
- Implemented validation in the connector dialog to prevent enabling periodic sync without selected items, improving user experience.
2026-01-17 12:59:18 +05:30
Anish Sarkar
a3112a24fe feat: enhance Google Drive indexing with new options
- Updated the Google Drive indexing functionality to include indexing options such as max files per folder, incremental sync, and inclusion of subfolders.
- Modified the API to accept a new 'indexing_options' parameter in the request body.
- Enhanced the UI to allow users to configure these options when selecting folders and files for indexing.
- Updated related components and tasks to support the new indexing options, ensuring a more flexible and efficient indexing process.
2026-01-17 12:33:57 +05:30
DESKTOP-RTLN3BA\$punk
8aad15d392 Reapply "Merge pull request #686 from AnishSarkar22/feat/replace-logs"
This reverts commit 3418c0e026.
2026-01-16 11:32:06 -08:00
DESKTOP-RTLN3BA\$punk
3418c0e026 Revert "Merge pull request #686 from AnishSarkar22/feat/replace-logs"
This reverts commit 5963a1125e, reversing
changes made to 0d2a2f8ea1.
2026-01-16 00:49:33 -08:00
Anish Sarkar
7023223213 chore: ran backend linting 2026-01-14 13:28:50 +05:30
Anish Sarkar
1ea0475f73 refactor: Improve indexing notification handling and return values
- Enhanced error handling in the indexing process to differentiate between actual failures and cases where no new documents are processed.
- Updated notification messages to reflect the status accurately, including a message for when no new items are synced.
- Standardized return values across various indexer tasks to return `None` on success, simplifying logging and error management.
2026-01-14 13:16:11 +05:30
Rohan Verma
383592ce63
Merge pull request #680 from AnishSarkar22/fix/index-future-date
feat: Index future dates for calendar based connectors & bug fixes
2026-01-10 14:00:29 -08:00
Manoj Aggarwal
8b735a492a lint 2026-01-09 13:53:09 -08:00
Manoj Aggarwal
62d0d8b6db ruff lint 2026-01-09 13:38:49 -08:00
Manoj Aggarwal
18035b3728 Add MS Teams connector 2026-01-09 13:20:47 -08:00
Manoj Aggarwal
fa35b71522 Add teams connector similar to slack 2026-01-09 13:20:30 -08:00
Manoj Aggarwal
786fd63e5b
Revert "Add Microsoft Teams Connector" 2026-01-09 12:33:26 -08:00
Anish Sarkar
e21bc8086a Merge remote-tracking branch 'upstream/dev' into fix/index-future-date 2026-01-09 13:24:38 +05:30
Anish Sarkar
4aeb05e2e5 feat: allow future dates for Google Calendar and Luma connectors
- Updated date handling in indexing functions to permit future dates for Google Calendar and Luma connectors.
- Enhanced UI components to support future date selection, including a new button for selecting the next 30 days.
- Adjusted documentation and descriptions to clarify date range options for users.
2026-01-09 13:20:12 +05:30
Manoj Aggarwal
ba7e4f0ceb Add MS Teams connector 2026-01-08 17:13:19 -08:00
Manoj Aggarwal
73a9dccefc Add teams connector similar to slack 2026-01-07 15:15:49 -08:00
Anish Sarkar
86af9b5a21 feat: implement ClickUp OAuth integration and connector support
- Added ClickUp OAuth authentication flow with new environment variables for client ID, client secret, and redirect URI.
- Introduced ClickUpHistoryConnector to manage OAuth-based authentication and token refresh for ClickUp API access.
- Created ClickUp connector routes for OAuth flow, including authorization and callback handling.
- Updated indexing logic to utilize the new ClickUpHistoryConnector, supporting both OAuth and legacy API token methods.
- Enhanced frontend components to reflect the new ClickUp integration and removed legacy API token forms.
2026-01-07 15:15:25 +05:30
Anish Sarkar
f2724ea162 feat: enhance Airtable integration with OAuth support and date validation
- Introduced AirtableHistoryConnector to manage OAuth-based authentication and token refresh for Airtable API access.
- Added date string validation in AirtableConnector to ensure valid date inputs before processing.
- Updated indexing logic to utilize the new AirtableHistoryConnector, improving credential management and token handling.
2026-01-07 03:00:56 +05:30
Anish Sarkar
c7c5caf559 chore: ran both frontend and backend linting 2026-01-06 15:49:31 +05:30
Anish Sarkar
3dc04f906d Merge remote-tracking branch 'upstream/dev' into feat/atlassian-oauth 2026-01-06 15:05:14 +05:30
Anish Sarkar
0f5bf93f68 feat: implement JiraHistoryConnector for OAuth and legacy authentication
- Introduced JiraHistoryConnector to handle OAuth-based authentication and automatic token refresh for Jira API access.
- Refactored Jira indexing logic to utilize the new connector, simplifying credential management and enhancing token refresh capabilities.
- Removed legacy token handling code from the Jira indexer, streamlining the integration process.
- Ensured compatibility with both OAuth 2.0 and legacy API token methods for improved flexibility.
2026-01-06 14:36:51 +05:30
Anish Sarkar
5d363b8a60 feat: implement Confluence OAuth integration and connector routes
- Added support for Confluence OAuth with new environment variables for client ID, client secret, and redirect URI.
- Implemented Confluence connector routes for OAuth flow, including authorization and callback handling.
- Enhanced Confluence connector to support both OAuth 2.0 and legacy API token authentication methods.
- Updated Confluence indexing logic to utilize OAuth credentials with auto-refresh capabilities.
- Removed outdated Confluence UI components and adjusted frontend logic to reflect the new integration.
2026-01-06 13:20:22 +05:30
DESKTOP-RTLN3BA\$punk
aac0432023 refactor: update Discord message indexing logic
- Enhanced the indexing process for Discord messages to treat each message as an individual document, improving metadata handling and content management.
- Replaced the announcement banner component and related state management with a more streamlined approach, removing unnecessary files and simplifying the dashboard layout.
- Updated logging messages for clarity and accuracy regarding processed messages.
2026-01-05 22:18:25 -08:00
Anish Sarkar
bf8c3bfcf7 feat: add Atlassian OAuth support for Jira and Confluence
- Introduced a shared schema for Atlassian OAuth 2.0 credentials, accommodating both Jira and Confluence.
- Updated Jira connector routes to utilize the new AtlassianAuthCredentialsBase for handling OAuth tokens.
- Enhanced configuration to include new environment variables for Jira OAuth integration.
- Refactored token handling in Jira indexing logic to support the new shared credential structure.
2026-01-06 01:27:29 +05:30
Anish Sarkar
982b9ceb76 feat: implement Jira OAuth integration and connector routes
- Added support for Jira OAuth with new environment variables for client ID, client secret, and redirect URI.
- Implemented Jira connector routes for OAuth flow, including authorization and callback handling.
- Enhanced Jira connector to support both OAuth 2.0 and legacy API token authentication methods.
- Updated Jira indexing logic to utilize OAuth credentials with auto-refresh capabilities.
- Removed outdated Jira UI components and adjusted frontend logic to reflect the new integration.
2026-01-06 01:01:04 +05:30
Anish Sarkar
f236110a08 Revert "feat: implement Jira OAuth integration and connector routes"
This reverts commit bfed9a31f8.
2026-01-06 00:09:08 +05:30
Anish Sarkar
bfed9a31f8 feat: implement Jira OAuth integration and connector routes
- Added support for Jira OAuth with new environment variables for client ID, client secret, and redirect URI.
- Implemented Jira connector routes for OAuth flow, including authorization and callback handling.
- Enhanced Jira connector to support both OAuth 2.0 and legacy API token authentication.
- Updated Jira indexing logic to utilize OAuth credentials with auto-refresh capabilities.
- Removed outdated Jira UI components and adjusted frontend logic to reflect the new integration.
2026-01-05 23:59:16 +05:30
Anish Sarkar
df23813f1c feat: add Discord OAuth integration and connector routes
- Introduced Discord OAuth support with new environment variables for client ID, client secret, and redirect URI.
- Implemented Discord connector routes for OAuth flow, including authorization and callback handling.
- Enhanced Discord connector to support both OAuth-based authentication and legacy bot token usage.
- Updated Discord indexing logic to utilize OAuth credentials with auto-refresh capabilities.
- Removed outdated Discord UI components and adjusted frontend logic to reflect the new integration.
2026-01-05 14:21:39 +05:30
Anish Sarkar
1862732913 refactor: improve error handling for Slack token refresh logic
- Updated SlackHistory class to enforce the use of session and connector_id for token refresh, raising a ValueError for legacy token usage.
- Simplified conditional checks for client initialization in SlackHistory.
- Cleaned up unnecessary comments and whitespace in the codebase.
2026-01-04 02:47:50 +05:30
Anish Sarkar
81e4a4ada0 feat: database driven refresh tokens for slack oauth connector 2026-01-04 02:38:19 +05:30
Anish Sarkar
0fe94bfcf3 feat: add Slack OAuth integration and connector routes
- Introduced Slack OAuth support with new environment variables for client ID, client secret, and redirect URI.
- Implemented Slack connector routes for OAuth flow, including authorization and callback handling.
- Updated configuration to support both new OAuth format and legacy token handling.
- Enhanced the Slack indexer to decrypt tokens when necessary, ensuring compatibility with existing encrypted credentials.
- Removed outdated Slack connector UI components and adjusted frontend logic to reflect the new integration.
2026-01-04 02:30:00 +05:30