Commit Graph
98 Commits
Author SHA1 Message Date
rustmailer 5edbebfbf3 chore(disk cache): limit total cache items to 10000 2025-09-10 16:35:58 +08:00
rustmailer ee7f0673c7 fix: normalize URL-safe base64 to standard base64 when decoding 2025-09-09 04:18:51 +08:00
rustmailer 9d612ad81d Adapt Gmail API accounts: fetch email content & attachments, webhook for new emails, and frontend support 2025-09-08 11:03:00 +08:00
rustmailer b5fba610d9 feat(search): unify search interface with Gmail API compatibility 2025-09-05 04:38:39 +08:00
rustmailer a849c20d97 feat: add support for creating reply drafts in Gmail API accounts 2025-09-04 04:22:50 +08:00
rustmailer 7926ba7a46 feat(gmail): add list_threads & get_thread_message support 2025-09-04 02:20:52 +08:00
rustmailer 54c6227114 chore(periodic-task): skip missed ticks on long executions 2025-09-04 01:24:00 +08:00
rustmailer 20e1a1cc4e refactor(gmail): update account sync logic and related files 2025-09-03 20:17:30 +08:00
rustmailer 21f4b05495 refactor(account): change deletion from async to sync 2025-09-03 20:16:26 +08:00
rustmailer 7411233b48 feat: Add Gmail API sync workflow and integrate related data models 2025-09-01 23:50:00 +08:00
rustmailer 4b44a38f80 fix: Use EventHooksKey::account_id instead of EventHooksKey::id in delete_impl 2025-09-01 23:48:26 +08:00
rustmailer 5851ef8e9b fix: Sync newly detected IMAP mailboxes according to configured time range 2025-09-01 23:46:47 +08:00
rustmailer 8b23ac1644 chore: increase OAuth2 token refresh interval from 15m to 45m 2025-08-30 12:58:07 +08:00
rustmailer 76d7d73f3f fix: skip mailbox sync when uid_validity is None 2025-08-29 14:32:38 +08:00
rustmailer 7a1e8547c0 Merge branch 'main' of https://github.com/rustmailer/rustmailer 2025-08-28 20:34:55 +08:00
rustmailer 5fd9084e8d fix(account): open correct edit modal based on mailer_type (ImapSmtp / GmailApi) 2025-08-28 20:34:48 +08:00
rustmailer 6d45838e3e Update README.md 2025-08-28 20:24:56 +08:00
rustmailer 60b133d4d3 Update README.md 2025-08-28 20:23:51 +08:00
rustmailer 0dc9daeb6f fix(accounts): start sync task for IMAP/SMTP accounts 2025-08-28 15:38:58 +08:00
rustmailer d050fd2d98 update 2025-08-28 15:31:00 +08:00
rustmailer cad320564b chore: fix minor text and punctuation in UI 2025-08-28 15:29:54 +08:00
rustmailer 9b630d0a6f feat(accounts): add Gmail API account creation UI 2025-08-28 15:28:58 +08:00
rustmailer c8dcbc4f86 fix(ui): disable automatic retry for account state and oauth2 tokens 2025-08-28 04:05:39 +08:00
rustmailer a31ba582b1 fix(ui): ensure mailer_type is set on account creation 2025-08-28 04:04:22 +08:00
rustmailer 694f6f412c fix(account): make incremental_sync_interval_sec required 2025-08-28 04:03:00 +08:00
rustmailer fd64acc24f feat(account): add MailerType to support Gmail API and other mailers
- Introduced `MailerType` enum in Account model
- Enables selection of different mailer backends (e.g., Gmail API)
2025-08-28 03:20:49 +08:00
rustmailer a9ef330418 feat(http-client): add shared HTTP client for reuse across the application 2025-08-26 15:32:28 +08:00
rustmailer c4a0ca80b3 bump version 2025-08-26 13:43:39 +08:00
rustmailer 311a7ed8ff bump to version 1.4.1 1.4.1 2025-08-24 23:55:06 +08:00
rustmailer 8942f9518e fix: allow set license when license expired 2025-08-24 23:53:52 +08:00
rustmailer df4f715d70 add some tests 2025-08-24 23:53:25 +08:00
rustmailer 40f0f0786a bump url crate version 2025-08-24 23:53:00 +08:00
rustmailer 823f3d482f fix(docker): # Install ca-certificates to ensure HTTPS certificate verification works correctly 2025-08-22 13:45:36 +08:00
rustmailer 4164b73bce bump version 2025-08-22 13:45:15 +08:00
rustmailer 07f7ebc0ed docs: fix misleading comment for use_proxy field 2025-08-21 00:30:51 +08:00
rustmailer 135a78a86a bump to 1.4.0 1.4.0 2025-08-19 03:41:36 +08:00
rustmailer eed988292a feat(auth): update login flow and add root password reset API & UI
- Changed login implementation to use plaintext password
- Added reset root password API endpoint integration
- Implemented UI for resetting root password with validation
2025-08-19 03:30:41 +08:00
rustmailer dbaf478328 fix(ui): fix bugs when changing date since 2025-08-19 01:08:48 +08:00
rustmailer f838e66018 feat(email): add thread_id field to EmailAddedToFolder 2025-08-18 00:54:41 +08:00
rustmailer 1b8fc39037 fix(template): correct secondary index type 2025-08-18 00:36:07 +08:00
rustmailer 4c47bfe42c fix(mailbox): rebuild cache with early mailbox availability and error handling
- Batch insert remote mailboxes before full synchronization so that
  mailbox metadata is queryable as soon as possible.
- If synchronization of a mailbox fails, remove it to prevent
  stale or inconsistent local data.
2025-08-18 00:35:26 +08:00
rustmailer 071f2929f0 feat(oauth2): support external OAuth2 token upsert with optional refresh token
- Add `ExternalOAuth2Request` validation to ensure mutual dependency between
  `oauth2_id` and `refresh_token`.
- Upsert external OAuth2 tokens for an account:
  - If only `access_token` is provided, RustMailer stores it directly.
  - If both `oauth2_id` and `refresh_token` are provided, RustMailer can refresh
    the access token using stored client credentials.
- Update REST API endpoint to `configure_external_oauth2` with proper OpenAPI docs.
- Add gRPC `ExternalOAuth2Request` message and corresponding `UpsertExternalOAuth2Token` RPC.
2025-08-18 00:33:50 +08:00
rustmailer d9d0aa336d feat: add a system config item 'rustmailer_oauth2_success_redirect' 2025-08-13 15:59:00 +08:00
rustmailer 383c59c33d feat: add quick-fill buttons to prepopulate Gmail and Outlook OAuth2 configuration fields 2025-08-13 13:35:17 +08:00
rustmailer 53db0a5de4 fix(ui): change default option value 2025-08-13 10:44:53 +08:00
rustmailer 472cbea2f7 Merge branch 'main' of https://github.com/rustmailer/rustmailer 2025-08-12 21:31:16 +08:00
rustmailer c2996d9e39 feat(api): add HTTP and gRPC endpoints for appending a reply draft email
- Added REST endpoint `POST /append-reply-to-draft/:account_id` that creates a reply draft linked to the original email thread with appropriate headers (`References`, `In-Reply-To`).
- Added equivalent gRPC method for creating and appending reply drafts.
2025-08-12 21:31:06 +08:00
rustmailer fd327cf3a3 Update README.md 2025-08-12 03:16:04 +08:00
rustmailer 593faf8842 add excalidraw file 1.3.0 2025-08-11 17:51:36 +08:00
rustmailer 25e3000b46 fix: modify Dockerfile to resolve permission issues 2025-08-11 17:48:30 +08:00