App Suite Releases
  • 8.47
  • 8.35
  • 7.10.6
Imprint
  • 8.47
  • 8.35
  • 7.10.6
Imprint
  • Release 8.53
  • Release 8.52
  • Release 8.51
    • Noteworthy Changes
      • Important Changes
      • Self-check for on-premise administrators
      • App Suite Middleware
    • Changelogs
      • App Suite UI
      • App Suite Middleware
      • Additional Components
        • AI Service
        • OX Guard UI
        • Switchboard
        • UI Service
    • Helm Charts
      • AI-Service documentation
      • App Suite Stack Chart
      • Helm Chart core-cacheservice
      • Helm Chart core-documentconverter
      • Helm Chart core-imageconverter
      • core-mw
      • UI Service
      • Switchboard
  • Release 8.50
  • Release 8.49
  • Release 8.48
  • Release 8.47LTS
  • Release 8.46
Maintained. Older releases are best effort.
Upcoming
Not released yet
LTS
Long-term support branch

App Suite Middleware

8.51.202 - 2026-09-24

Fixed

  • ASB-251: Scan downloads through share links

8.51.201 - 2026-09-23

Fixed

  • ASB-251: Never hand session cookies, credentials or the request's own Content-Length to the anti-virus service

8.51.200 - 2026-09-23

Fixed

  • ASB-252: Copying a user fails for attachments that reference an external URI instead of a stored file

8.51.199 - 2026-09-23

Changed

  • SCR-1998: Run virtual threads on more carrier threads than CPU cores, so that threads loading classes cannot pin them all

Fixed

  • ASB-252: Copying a user fails for attachments that reference an external URI instead of a stored file

8.51.198 - 2026-09-22

Fixed

  • ASB-100: Report an unfinished search index as such instead of claiming the mailbox is in use
  • ASB-205: Remove the Dovecot Push registration when the owning session ends
    • SCR-1900: New lean configuration property com.openexchange.push.dovecot.unregisterOnMissingSession
  • ASB-209: Encapsulate a well-formed, terminated res-hdr in ICAP RESPMOD requests
  • ASB-212: Spell out the Gotenberg liveness and readiness probe timings
  • ASB-221: Drop quotes surrounding an address, as Outlook writes them, when they render it invalid
  • ASB-232: Keep the user's own signatures listed when a shared account's snippets are inaccessible
  • ASB-233: Name the time zone in scheduling and reminder mails after the event's daylight saving state
  • ASB-234: Walk the folder tree once when cascading Infostore permissions and let long cascades run as a job
  • ASB-235: Keep drive file checksums calculated before a sync is aborted
  • ASB-238: Let a file storage service that cannot state its accounts not fail the whole account and root folder listing
  • Skip the bcrypt check for a recently verified master password on provisioning calls and expose the authentication duration as a metric (core-gitlab-com#42)
    • SCR-1892: New configuration option for caching the master administrator's password verification on provisioning calls
  • Fail a schema dump loudly and refuse to re-point contexts to a schema that does not hold their data (support#1607)

8.51.197 - 2026-09-07

Fixed

  • ASB-199: CSV contact import drops columns whose name belongs to another CSV flavor
  • Skip the bcrypt check for a recently verified master password on provisioning calls and expose the authentication duration as a metric (core-gitlab-com#42)
    • SCR-1892: New configuration option for caching the master administrator's password verification on provisioning calls

8.51.196 - 2026-09-07

Fixed

  • ASB-197: Use the organizer's own address as sender of scheduling mails

8.51.195 - 2026-09-04

Added

  • Repeat cache invalidations and local-cache invalidation messages on remote Redis sites (core-gitlab-com#40)
    • SCR-1884: New configuration options for remote Redis sites
    • SCR-1885: Cache invalidations cross remote Redis sites

8.51.194 - 2026-09-04

Fixed

  • ASB-38: Refuse synchronization of ignored paths like the temporary .drive folder

8.51.193 - 2026-09-03

Fixed

  • Do not tear down the Dovecot mail push registration when a pns re-subscribe replaces its subscription (support#1606)

8.51.192 - 2026-09-03

Fixed

  • Drop the registration and release the cluster lock of an IMAP-IDLE listener that failed to start, was canceled after a severe error or is stopped on shutdown (core-gitlab-com#38)

8.51.191 - 2026-09-03

Fixed

  • Authenticate further IMAP connections with the session's current OAuth token instead of the one from connect time (core-gitlab-com#36)

8.51.190 - 2026-09-03

Changed

  • ASB-56: Cap autocomplete results and honor right_hand_limit for all sort orders
    • SCR-1877: New configuration option for contact auto-complete result limiting

8.51.189 - 2026-09-02

Fixed

  • ASB-25: Report the server's refusal when moving a mail folder into a shared mailbox is denied

8.51.188 - 2026-09-02

Added

  • ASB-65: Import parameter applyDefaultAlarms to apply the user's own reminders to imported appointments
    • SCR-1875: New optional parameter applyDefaultAlarms for the iCal import request

Fixed

  • ASB-21: Register late-looked-up mailboxes with their actual subscription state instead of LIST-only

8.51.187 - 2026-09-02

Added

  • ASB-65: Import parameter applyDefaultAlarms to apply the user's own reminders to imported appointments
    • SCR-1875: New optional parameter applyDefaultAlarms for the iCal import request

Fixed

  • ASB-190: Keep a user's SMS tokens in one cluster map entry instead of scanning the whole Redis key space to count them

8.51.186 - 2026-09-01

Fixed

  • ASB-22: Let the folder's create-objects permission suffice for importing iCal data

8.51.185 - 2026-09-01

Fixed

  • ASB-22: Let the folder's create-objects permission suffice for importing iCal data
  • ASB-148: Parse a multipart body that lost its start boundary instead of failing the whole mail
  • ASB-185: Let an attendee reply from the mail module to an appointment in an inaccessible public folder

8.51.184 - 2026-08-31

Fixed

  • ASB-119: Leave \Draft flags untouched when a draft is copied or moved into a foreign folder

8.51.183 - 2026-08-31

Fixed

  • ASB-180: Apply the configured batch sizes when moving a context and keep its idle connections alive
  • ASB-181: Drop the cached database assignment when a failed context move is reverted

8.51.182 - 2026-08-31

Fixed

  • ASB-179: Bind OXTaskManagement again so the jobcontrol CLI works

8.51.181 - 2026-08-30

Fixed

  • ASB-146: Isolate a failing mail account from account status and folder listing

8.51.180 - 2026-08-30

Fixed

  • ASB-175: ASB-175: Optionally use the configured no-reply address as From for internal calendar notifications
    • SCR-1854: New property com.openexchange.calendar.useNoReplyAddressForNotifications

8.51.179 - 2026-08-28

Fixed

  • ASB-171: Gate deputy modules on the sharing permission and keep permissions removable

8.51.178 - 2026-08-28

Fixed

  • Resolve image URLs independent of the configured dispatcher prefix

8.51.172 - 2026-08-26

Fixed

  • ASB-162: Parse mail filter rule metadata for non-IPv4 update sources and heal polluted rule names

8.51.171 - 2026-08-26

Added

  • SCR-1844: ASB-132: SCR-1844: Light-weight deputy action=reverseIds listing grantors, send-on-behalf-of and their addresses

8.51.170 - 2026-08-26

Added

  • SCR-1843: ASB-132: SCR-1843: Honor an explicitly configured read responses timeout for primary and secondary IMAP accounts

8.51.169 - 2026-08-25

Fixed

  • ASB-154: Replace a push subscription's topics within one transaction

8.51.168 - 2026-08-25

Fixed

  • ASB-147: Keep inline image references resolvable across composition spaces
  • Default to UTC when delivering a nested message as JSON (support#1598)

8.51.164 - 2026-08-19

Fixed

  • ASB-132: Serve the reverse deputy look-up from one cached server-wide sweep instead of one sweep and connection per grant

8.51.163 - 2026-08-18

Fixed

  • Take a snippet's identity from the database instead of stale file-storage headers (support#1329)

8.51.162 - 2026-08-17

Fixed

  • Honor the timezone parameter when converting a single mail outside the get action (support#1598)

8.51.161 - 2026-08-15

Added

  • SCR-1825: New configuration option for Redis Sentinel authentication

8.51.158 - 2026-08-14

Added

  • SCR-1822: Command-line tool threaddump for dumps covering virtual threads

Changed

  • Collect a virtual-thread-aware dump in oxsysreport
  • Cover virtual threads in the out-of-memory thread dump
  • Drop the thread dump from the uncaught-exception handlers
  • Dump virtual threads too when the graceful shutdown does not get through
  • State in showruntimestats that virtual threads are not listed

Fixed

  • ASB-130: Apply the best-effort invalidation to the mail account insert path as well

8.51.157 - 2026-08-14

Added

  • SCR-1822: Command-line tool threaddump for dumps covering virtual threads

Changed

  • Collect a virtual-thread-aware dump in oxsysreport
  • Cover virtual threads in the out-of-memory thread dump
  • Drop the thread dump from the uncaught-exception handlers
  • Dump virtual threads too when the graceful shutdown does not get through
  • State in showruntimestats that virtual threads are not listed

Fixed

  • ASB-130: Do not fail a stored mail account because its trailing cache invalidation could not reach Redis

8.51.156 - 2026-08-14

Fixed

  • Put the PBKDF2 library back on the crypto bundle's class path (support#1655)

8.51.155 - 2026-08-13

Fixed

  • Always evict grantee caches in the doveadm deputy revoke path too, matching the IMAP provider (support#1126)

8.51.154 - 2026-08-13

Fixed

  • Unsubscribe deputy from shared mailbox when aggressive ACL cleanup wipes the restored previous rights (support#1126)

8.51.153 - 2026-08-13

Fixed

  • Confirm absence of a calendar folder on master database before treating it as deleted, so stale replica reads or cache transients no longer surface as folder deletion (support#1599)

8.51.152 - 2026-08-13

Fixed

  • Fall back to database when the folder cache transiently returns null so folder look-ups keep their non-null-or-throw contract (support#1599)

8.51.151 - 2026-08-12

Changed

  • Update the documentation-properties plugin to 6.0.3 so the plugin classpath survives jackson 2.22.1 from plugin-bom 2.2.0

Fixed

  • Do not purge calendar data when a folder cannot be resolved (support#1599)

8.51.150 - 2026-08-12

Fixed

  • Invalidated grantee caches on shared-account/deputy revocation so revoked shared accounts and mailboxes no longer linger (support#1126)

8.51.149 - 2026-08-11

Fixed

  • Do not report a failed IMAP quota look-up as exceeded quota (support#1636)

8.51.148 - 2026-08-10

Fixed

  • Route getContextAdmin to the site owning the context instead of recursing into itself (support#1632)

8.51.147 - 2026-08-08

Fixed

  • Release the per-session JMAP trace appender when the access is retired - /appsuite/platform/middleware (core#11)

8.51.144 - 2026-08-07

Fixed

  • Keep writing a datamining report when a database schema is unreachable (support#1618)
  • Check attachment quota and max mail size against the spooled attachment size (support#1627)
  • Group search could pin a CPU core indefinitely on a crafted wild-card pattern (support#1628)

8.51.141 - 2026-08-06

Fixed

  • Make blocking submitters interruptible and keep the in-task finally leak-safe in the virtual-thread executor

8.51.140 - 2026-08-06

Fixed

  • Close the static service registry mock that leaked into other POP3 tests
  • Correct the misspelled mail capability cache idle time property, keeping the old name as a fallback
  • Expire a failed or degraded mail server capability probe instead of caching it forever

8.51.138 - 2026-08-05

Added

  • Documentation for the mail account property infixes
  • Honor the ".secondary" property infix alongside ".primary" for mail accounts

Fixed

  • Treat empty and whitespace-padded mail account property values correctly
  • Resolve allowFetchSingleHeaders per mail account in the conversation view

8.51.136 - 2026-08-04

Added

  • Documentation for the virtual-thread executor metrics

8.51.135 - 2026-08-04

Added

  • Documentation for the virtual-thread executor metrics
  • Micrometer meters and JMX MBean for the virtual-thread executor

8.51.134 - 2026-08-03

Fixed

  • Release the IMAP debug logger on every path that gives up an IMAP session (#5)

8.51.131 - 2026-08-01

Fixed

  • IMAP command injection through user flags and the headers request parameter

8.51.129 - 2026-07-31

Fixed

  • Resolve standard folders of shared accounts under the accessing user's perspective (support#1543)
    • Synthetic shared-account sessions carry no credentials by design, so config-tree settings that require an individually authenticated mail access are skipped for them now. Instead, a shared account's default folders are resolved through the session user's own view on the associated mail account, using stored full names first and a connected mail access as fallback.

8.51.128 - 2026-07-30

Added

  • Redirect reads to the master while a read replica reports broken or excessive replication lag (#4)

Fixed

  • Restore replica staleness check by tracking the replication monitor counter process-locally (support#1599)

8.51.127 - 2026-07-30

Changed

  • SCR-1749: Upgraded Grizzly to 5.0.2

8.51.126 - 2026-07-29

Fixed

  • Always provide the mail's display date, also for nested messages (support#1598)

8.51.123 - 2026-07-27

Fixed

  • Register the globaldb utf8mb4 package in the Liquibase custom-change manifest header

8.51.119 - 2026-07-23

Fixed

  • Report exact attachment sizes for composition space drafts (support#1585)

8.51.117 - 2026-07-23

Fixed

  • Do not queue messages for a second, delayed publication when message buffering is disabled (support#1584)

8.51.116 - 2026-07-23

Fixed

  • Do not queue messages for a second, delayed publication when message buffering is disabled (support#1584)

8.51.115 - 2026-07-23

Fixed

  • Obtain property "com.openexchange.imap.considerSubscribedInListExtended" via IIMAPProperties to gain config-cascade and per-account support (support#1543)

8.51.114 - 2026-07-23

Fixed

  • Propagate affected folders in folder map invalidation messages so remote nodes drop them for every user (support#1584)

8.51.113 - 2026-07-22

Fixed

  • Never skip sender validation when transmitting via action=new (support#1531)

8.51.112 - 2026-07-22

Fixed

  • Property "com.openexchange.imap.considerSubscribedInListExtended" (true/false/probe) to obtain subscription state from separate LSUB when the \Subscribed attribute of LIST-EXTENDED responses is untrustworthy (support#1543)

8.51.111 - 2026-07-22

Fixed

  • Repoint usm/eas checkout URLs to gitlab.com
  • Property "com.openexchange.imap.considerSubscribedInListExtended" (true/false/probe) to obtain subscription state from separate LSUB when the \Subscribed attribute of LIST-EXTENDED responses is untrustworthy (support#1543)

8.51.110 - 2026-07-22

Fixed

  • Repoint openapi plugins to gitlab.com registry and bump to latest

8.51.109 - 2026-07-22

Fixed

  • Tolerate missing parent folder during IMAP default folder check (support#1129)

8.51.108 - 2026-07-22

Fixed

  • Tolerate missing parent folder during IMAP default folder check (support#1129)
  • Single-pass, escaping URI token compression to keep proxy registrations round-trip safe (support#1582)

8.51.107 - 2026-07-22

Fixed

  • Throw FOLDER_NOT_FOUND instead of NPE for missing calendar folder (support#1577)
  • Guard composite LDAP filter construction against non-representable search term operands (support#1578)
  • Single-pass, escaping URI token compression to keep proxy registrations round-trip safe (support#1582)

8.51.106 - 2026-07-21

Fixed

  • Drop RFC 2965 $-prefixed framing cookies in servlet bridge (support#1560)

8.51.105 - 2026-07-21

Fixed

  • Await a concurrently running sibling bulk pre-cache instead of skipping it (support#1522)

8.51.104 - 2026-07-21

Fixed

  • Await a concurrently running sibling bulk pre-cache instead of skipping it (support#1522)

8.51.102 - 2026-07-21

Fixed

  • Reuse GETACL results across folder-tree rebuilds (support#1522)

8.51.99 - 2026-07-16

Added

  • MW translation updates 8.51

Changed

  • SCR-1793: Harden Redis connection lifecycle against stale/orphaned connected clients

Fixed

  • Correct case-insensitive match and quieten expected 'mailbox does not exist' on MYRIGHTS
  • Scoped Entity2ACL look-up caches to the requesting session and account
  • Keep emitting user_id 0 for non-user contacts to preserve HTTP-API compatibility (support#1438)
  • Populate internal user id consistently in results from LDAP contacts provider (support#1542)
    • The context id required to resolve a requested internal user id is fetched implicitly again throughout the search- and auto-complete flows, and the caching layer no longer exposes the internal 0 sentinel, no longer overrides live-resolved identifiers with unresolvable cached data, and yields complete fallback results.
  • Restored xs:date/nillable for SOAP birthday and anniversary (support#1551)
  • Bump About-box default copyright year to 2026 (support#1553)
  • Store DB-assignment and schema-update-state cache entries as plain per-context/per-schema keys instead of one global group hash (support#1562)

8.51.98 - 2026-07-09

Fixed

  • Avoided doomed GETMETADATA on virtual namespace placeholders (support#1543)

8.51.94 - 2026-07-07

Fixed

  • Preserved shared/deputy mailbox visibility with consolidated LIST-EXTENDED folder listing (support#1543)

8.51.93 - 2026-07-03

Fixed

  • Rename changesharedaccount CLI tool documentation and help text to updatesharedaccount

8.51.92 - 2026-07-02

Fixed

  • PBSR-1766: Indicate correct account prefix for folder ids in mail filter rules of non-primary accounts

8.51.91 - 2026-07-02

Fixed

  • Detect synthetic sessions by origin, not instanceof
    • A ServerSessionAdapter wrapping a GeneratedSession is not instanceof GeneratedSession, so scheduling transport skipped its no-reply fallback and tried to OAuth-authenticate a token-less session. Check Origin.SYNTHETIC.
    • Fixed: Detect synthetic sessions by origin, not instanceof 2f49794e @

8.51.89 - 2026-07-01

Added

  • INU-5112: Checktablelayout tool to reconcile schema layout against CreateTableService reference
  • PBSR-1688: Include 'Sensitivity' header in scheduling and notification mails if applicable
  • SCR-1583: Per-user Filters for LDAP Contacts Provider
  • SCR-1714: PBSR-1613: REST Interface to Retrieve Effective Shared Account Permissions
  • SCR-1726: Sanitize_css" parameter for /mail?action=get
  • Virtual threads for the Grizzly HTTP worker pool and request-driven fan-outs
  • Made user provisioning site-aware
    • This includes a grpc connection between sites
  • Return oidc id token to edge-auth
  • "replace_external_images" parameter for /mail?action=get
  • Documentation on outgoing calendar scheduling messages and notifications
  • Handle shares via external authentication service
  • Added new scopes for basic access and elevated access
    • Introduced the scopes "basic" which allow access to all basic functionality and "elevated" which allows access to everything including password changes and similar.
    • The basic scope is used as a fallback if no scope is defined for edge authentication.
  • External auth redeemToken action
  • GRPC implementation for listBytypes for OXUser
  • Oidc login handler, common bundle and new endpoint
  • Poc for external auth login servlet
    • Added: added oauth in flight implementation
    • Added in flight handler with basic auth impl
  • Register rmi services as Remote + some cleanup
    • Add o-x-reseller-grpc package to list
  • Translation updates 8.50
    • all languages but Latvian
  • Introduced cross site bundle and push routing (core#353)
    • introduced new bundle co.ox.multisite
    • introduced new MultiSiteService
    • implemented routing for dovecot push messages (mail and calendar)

Changed

  • Export com.openexchange.admin.rmi.exceptions from freshly introduced com.openexchange.rmi.common, adding new bundles to seperate (grpc) provisioning between 'admin' and 'non-admin' tools to establish a cleaner packaging and keep the option to disable the admin feature.
  • SCR-1724: Upgraded OSGi core library in target platform (com.openexchange.bundles)
  • External auth refactorings
    • Simplified the response json structure
    • Some code cleanup + renamings
    • Added missing javadoc
  • Make Grpc core bundles extensible
    • introduced extension interfaces which allows to separate bundles. This allows more flexible packaging
  • Require c.o.multisite.enabled for grpc based communication
    • To prevent excessive database load I adjusted the delegate logic with the AbstractSiteAwareService to check the c.o.multisite.enabled property first
  • Some renaming + javadoc + minor adjustments
  • Use correct redirect for shares with password
  • Bound OXWorker platform-pool default and enable DB pool waiter cap (core#520)
  • Add owner-trace diagnostic logging for filestore snippets (support#1329)

Removed

  • Deleted obsolet request analyzer test
  • Removed com.google.common.collect export that caused cyclic imports
  • Removed obsolet request analyzer framework

Fixed

  • CP-572: Avoid full Redis key-space scan when closing sessions by user/context filter
  • INU-5112: Utf8mb4 conversion skips columns inheriting their charset from the table default
  • IOL-2841: Reconnect mail access when attachment handling takes too long
  • Re-add UpdateTaskV2 import lost in rebase
  • Liquibase migration failed on MariaDB with "Unknown column 'EXPRESSION'"
  • Minor preparations before merging activeactive into main
  • Orderly determine existingUISettingsSecret checksum and document existing*Secret values
    • The existingUISettingsSecret was missing from core-mw.existingSecretsChecksum, so content changes to that secret did not trigger a rolling restart unlike the other existing* secrets. Added the missing block.
    • Also added a guide on the existing*Secret values to the chart README, clarified the additive-vs-replace behavior in the values.yaml comments, and bumped the chart version to 6.22.2.
  • Addressed some grpc converter issues
  • Adjusted packaging for removed request analyzer
  • Adjusted tests
    • Reduce wait time for no reply checks
    • Add timeout to avoid race condition for second precision checks
  • Did some grpc based refactoring/cleanup
    • Simplified the grpc based extension registration by removing all unnecessary trackers
  • Pin the JDOM SAX parser to Apache Xerces for deterministic XML parsing
    • JDOMParserImpl built its SAXBuilder via the default engine, i.e. SAXParserFactory.newInstance(). In the OSGi runtime that JAXP discovery resolves - depending on the thread-context classloader - to either the JDK built-in parser or the repackaged Apache Xerces (com.openexchange.xerces), which disagree on how a disabled-but-referenced external entity is handled. That non-determinism surfaced as a flaky DAV REPORT status (e.g. com.openexchange.dav.caldav.bugs.Bug30359Test intermittently getting 400 instead of 207). Pin the parser to Apache Xerces explicitly so the behavior is deterministic and independent of the JDK version; the XXE hardening (empty entity resolver, external entities and external DTD disabled) is unchanged.
  • Remove duplicate tracking
  • Remove legacy remote registration
    • fix: Breaking recursive calls of getService for optional gRPC services, some refactoring
    • Remove null==value check before setting valueSet bool flags
    • Fix unmarshalling of proto map for userAttributesMap in toRmiUser() converter
    • Adjust segmenter endpoint definition to match actual segmenter service
    • Remove old RMI registrations which shall be replaced by site-aware RMI
    • Make Site-Aware Services always start. Remove remaining Remote registrations
  • Some additional cleanup + refactoring
    • Remove session ids from response
    • Use login instead of formlogin
  • Some more hardening for edge authentication
    • Adjusted form login handling
  • Deny Write-Access for Guest Users in Public Calendar Folders (core#516)
    • SCR-1717: Deny Write-Access for Guest Users in Public Calendar Folders
    • SCR-1718: Update Task to Downscope Unsupported Guest Permissions
  • Normalize ACL rights before checking their equality (core#522)
  • Make del_user recovery-data insert idempotent via ON DUPLICATE KEY UPDATE to allow user deletion despite stale recovery rows (core#523)
  • Take over intermediate participation status from incoming COUNTER proposals (core#524)
  • Data: URL inline images rendered with empty src in display path (support#931)
  • Recover attachment file name truncated at first space (support#1148)
  • Calendar notifications not sent for delegate edits on shared calendars (support#1439)
  • Reply set wrong From/To for ambiguous alias on IDN domain (support#1440)
  • Merge schema lists in Java to avoid collation mismatch in update task listing (support#1467)
  • Skip non-applicable deputy modules on read instead of failing with DEPUTY-0006 (support#1474)
  • Recover from read-only replica after Redis Sentinel fail-over (support#1482)
  • Retry/back-off for retryable mail access errors when transporting scheduled mails (support#1495)
  • Stop DB heart-beat after a failed keep-alive instead of retrying on a dead connection (support#1501)
  • Mimic Browser access to external image protected by Akamai (support#1504)
  • Delete db_cluster child row before db_pool parent on database unregistration (support#1506)
  • Make a failed scheduled-mail failure-notification visible (support#1515)
  • Add opt-in overload protection for cache-outage DB stampedes (support#1517)
  • Quota retrieval fails on global DB due to missing committedFiles column (support#1518)
  • Clarify CLI error when provisioning credentials are missing (support#1519)
  • Timezone-dependent off-by-a-day in IMAP date search (support#1521)
  • Reuse one IMAP connection per endpoint when serializing folder counts (support#1522)
  • Task notification mail labels medium priority as "Normal" instead of "Medium" (support#1524)
  • Task notifications not sent for attachment changes (support#1527)
  • Validate From/Sender ownership on mail bounce (support#1531)
Prev
App Suite UI
Next
Additional Components