BM-23417 : Fixes: The status bar of the rich text editor overlaps the footer of the composer while editing.
BM-23443 : Fixes: mailto links now open a full webmail window in addition to any existing one.
Fix: The link now simply opens the composer.
BM-23484 : Fix: Treat built-in PDF files as attachments to prevent the webmail viewer from selecting the wrong "part" and attempting to display the content within the email.
BM-23507 : Fixes: Suggestions are now sorted based on interactions during autocomplete in the composer fields.
Fixed a major issue with calendars accessed via Outlook: an incorrectly propagated internal error was previously reported as an unhandled exception; it is now reported as a folder not found error code that Outlook can understand.
BM-23521 : Fixes: The focus on the search box in Preferences only works the first time the window is opened.
BM-23527 : Fixes: A folder name is truncated in the preferences dialogs when it is too long.
Fix: A tooltip now appears when you hover over the text to clear up any potential confusion.
BM-23539 : Fixes: The "My tags" section overlaps with the preceding "Domain tags" section.
BM-23508 : Fixes: An event created in a shared mailbox from Outlook is saved in the calendar of the user who created it.
BM-23610 : Fixes: Unable to display a shared mailbox in Outlook; a SharedContainersService Doesnt have role Visible error is thrown when repairing the mailbox — No more NullPointerException when checking for a potentially deleted folder in the mail hierarchy.
FEATBL-2495: The PCLCache cache retained the value from the very first import (a insert-or-ignore semantics inherited from the MapDB → PostgreSQL migration). Consequence: false synchronization conflicts in Outlook, with, in some cases, an up-to-date server version being replaced by an older local version (events that "roll back"). The correct semantics (upsert) are restored, and a remediation upgrader is included: it forces a resynchronization cycle on all items that have already been migrated so that Outlook rewrites the correct ChangeKey.
Fixed an issue where saving an email with an attachment failed: the RopGetPropertiesSpecific sequence did not allow a zero attachIdx, even though this is a valid condition as long as the attachment has not yet been saved.
Fix: Prevent multiple calls to JdbcTestHelper.beforeTest from being executed simultaneously when the previous test fails due to @RuleTimeout. This could cause the message ERROR: duplicate key value violates unique constraint "pg_type_typname_nsp_index" to appear in the Jenkins logs.
Ktables and kstreams are no longer cleared when the system is shut down: a clean state can be restored upon restart.
Exclude bodies.store from the topics index build (less unnecessary work at startup).
No longer use parallelStream() on mailbox lists: on servers hosting more than 100,000 accounts, this could cause the fork/join pool to fail at startup.
Revert of a kstream topology change that could have blocked rolling upgrade updates.
Fake objects created by hot-upgraders are ignored when an in-place upgrade has already been performed on the Kafka leader, to prevent duplicate processing.
Fixed an oversight where the existence of itemId was not checked during the restoration of MailboxRecords.
BM-23519: Tighter access controls for mmap chunks (read via a dedicated stream), fixes in the Cyrus spool migration upgrader, in the resync-cyrus-spool command, in the Nginx hook, and in the CLI session management.
BM-23606: Protection against concurrent writes to composite chunks (the mechanism now correctly prevents concurrent writes without prohibiting legitimate multithreading).
Fixes: Continuous overflow of /var/mmap-pool following the upgrade to 5.5.6
Improving the reliability of error handling on the S3 and Scality client side: ensuring that no memory chunks or zstd threads are left orphaned in the event of a failure, and better management of internal retries in the AWS S3 SDK.
Memory allocation improvements: when the required chunk size exceeds the composite threshold, sub-chunks are now allocated lazily (avoiding unnecessary memory spikes for very large objects).