You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by rc...@apache.org on 2024/04/16 03:19:01 UTC

(james-project) branch postgresql-backup updated (b18ca30f2c -> 4720ef72f6)

This is an automated email from the ASF dual-hosted git repository.

rcordier pushed a change to branch postgresql-backup
in repository https://gitbox.apache.org/repos/asf/james-project.git


 discard b18ca30f2c JAMES-2586 - JMAP Upload - Fix unstable UploadService test
 discard 50c3de82ab JAMES-3925 - JMAP Upload - Update current usage only when delete succeed
 discard 34dc0ba650 JAMES-3925 - JMAP Upload - Method delete of Upload Repository should return Boolean value when applied
    omit 0d75d20651 JAMES-2586 Remove opensearch in PostgresWebPushTest
    omit b3275a5133 JAMES-2586 remove redundant import in PostgresPushSubscriptionSetMethodTest
    omit 3ea70f0020 JAMES-2586 Fix PostgresMailboxSetMethodTest
    omit bdf92d37b0 JAMES-2586 Fix PostgresEmailQueryMethodTest
    omit b71b7e0a99 JAMES-2586 Fix PostgresEmailGetMethodTest
    omit 7c538ce49c JAMES-2586 Optimize AttachmentLoader
    omit 843aa8463e JAMES-2586 Bind PostgresMessageFastViewProjection
    omit b0334068c6 JAMES-2586 Add PostgresAttachmentMapper to PostgresMessageIdMapper
    omit 8b4f355688 JAMES-2586 Reduce repeat count for some JMAP integration tests
    omit e8dd1d4f26 Add sslMode to require in PostgresqlConnectionConfiguration (#2109)
    omit f5ca047cfe Provision Current Quota when MailboxAdded event
    omit 6d2c565812 JAMES 2586 Try forkCount=2 to see if the tests are faster
    omit 2132e540c9 JAMES 2586 Increase timeout to 1 hour for postgres-jmap-integration-test module
    omit e37d3e1ae3 JAMES-2586 Replace drop by truncate in PostgresMessageFastViewProjection
    omit 37d12539dc JAMES-2586 Fix PostgresPushSubscriptionSetMethodTest, PostgresThreadGetTest
    omit 12da8afd15 [Build] Use tmpfs for Postgres db test container
    omit 3d69dc9fdc JAMES-2586 [Postgres] FIXUP when query with IN - should pre-check collection size (#2103)
    omit 29c85f3fe2 JAMES 2586 PostgresPushSubscriptionRepository: rely on Postgres unique constraint for deviceClientId (#2094)
    omit 159806c86a JAMES-2586 Fix PostgresAuthenticationTest
    omit bbf0ef8264 JAMES-2586 Disable some tests in Integration tests JMAP postgres
    omit 5e2bc8ab72 JAMES-2586 Integration tests for JMAP postgres
    omit cefca128d7 JAMES-2586 - Postgres push subscription - expires value should be stored Offset time
    omit e1beb6150d JAMES-2586 Implement PostgresEmailQueryView (#2007)
    omit dd346e3e25 JAMES-2586 Implement PostgresEventStore
    omit d51f6326d4 JAMES-2586 Move some files from event-store-cassandra to event-store-api
    omit 7239b59a79 JAMES-2586 Avoid Using COUNT() in SQL When You Could Use EXISTS()
    omit 5f8f5bf161 JAMES-3981 Remove double logs upon closed channels
    omit 91594e0921 JAMES-3981 Warn upon invalid RCPT
    omit b69d11dbc5 JAMES-3981 Lower log level of closed connections
    omit 310fbcce44 JAMES-2586 [Documentation] Using pg_stat_statements extension for track the stats of the SQL statement execution
    omit 24947d762b JAMES-2586 Fix contract test NotificationRegistryContract::registerShouldNotPersistWhenExpiryDateIsPresent
    omit 9282cb6840 JAMES-2586 Guice binding for PostgresNotificationRegistry
    omit 442305327a JAMES-2586 SQL script to clean outdated vacation notifications
    omit 7dc4891429 JAMES-2586 Implement PostgresNotificationRegistry
    omit 7fe663814e JAMES-2586 Add Index for Postgres Mailbox table
    omit 1a0be7116c JAMES-2586 Optimize query increase/decrease for Quota Current Value
    omit 5358cec299 JAMES-2586 Temporarily disable a flaky PostgresUploadService test
    omit dadd591cb2 JAMES-2586 Improve PostgresVacationRepository
    omit 18c7b91edb JAMES-2586 Guice binding PostgresVacationRepository
    omit e9f1a69063 JAMES-2586 Implement PostgresVacationRepository
    omit ba7abd395d JAMES-2586 More flexible on comparing Vacation's ZonedDateTime
    omit f4efc92ef9 JAMES-2586 Handle case when Postgres index/constraint already exists
    omit e58f7311b4 JAMES-2586 Implement PostgresCustomIdentityDAO
    omit 72227cda18 JAMES-2586 Implement PostgresFilteringProjection
    omit 1a96bbfd82 JAMES-2586 Guice binding PostgresMailboxChangeRepository
    omit 53e92ede2c JAMES-2586 Implement PostgresMailboxChangeRepository
    omit 1ac910c8e6 JAMES-2586 Implement PostgresThreadIdGuessingAlgorithm (#1941)
    omit 3bb9feafbb JAMES-2586 Introduce sql script to clean up PGSL data
    omit 553868f628 JAMES-2586 Implement Postgres Push subscription
    omit b912aca11e JAMES-2586 Disable row-level security by default in postgres.properties
    omit 20392b7801 JAMES-2586: Guice binding JmapUploadCleanupModule for Postgres webadmin
    omit 22f544c99c JAMES-2586: The UploadRepositoryCleanupTask should rely on the UploadRepository interface
    omit 58d68faf06 JAMES-2586 Guice binding for Postgres upload
    omit b8e17bf992 JAMES-2586 Implement Postgres upload usage repository
    omit 50cfa66223 JAMES-2586 Implement Postgres upload repository
    omit b4f5d855c9 JAMES-2586 Implement PostgresEmailChangeRepository - Fixup Guice binding
    omit 1d4ba1a19f JAMES-2586 - Fixbug hanging issue when Jooq execute delete and return list
    omit e4f011c70c JAMES-2586 - Fixbug - Delete Message Listener - Fix hanging issue
    omit 68f65ab2c5 JAMES-2586 - Delete Message Listener - add test case when delete mailbox has a lot of messages
    omit 8ca4c41ab8 JAMES-2586 Implement PostgresEmailChangeRepository
    omit 1d2df3d316 JAMES-2586 Webadmin integration tests for postgres
    omit 2e8dacb72f JAMES-2586 - Delete attachment in DeleteMessageListener
    omit 0c072806ae JAMES-2586 Implement Postgres Attachment Blob reference source
    omit 3243752f86 JAMES-2586 Implement PostgresAttachmentMapper, DAO and binding
    omit b092ea3591 fixup! JAMES-2586 JMAP Guice bindings modules to pg-app
    omit 25721620e6 fixup! JAMES-2586 JMAP Guice bindings modules to pg-app
    omit fc37dddac3 JAMES-2586 JMAP Guice bindings modules to pg-app
    omit f10d4a442c JAMES-2586 Little refactoring around DeleteMessageListener binding in posgres mailbox tests
    omit 3fbe2c7179 JAMES-2586 Wire StoreMessageIdManager on top of the PostgresMessageIdMapper + tests
    omit 8065b31abf JAMES-2586 Moving Managers out of the mail package
    omit 1ddd299f8c JAMES-2586 Implement PostgresMessageFastViewProjection
    omit 96f245cea3 JAMES-2586 - CLEAN CODE -  Guice binding for Postgres User Repository modules
    omit 199cf8d3e7 JAMES-2586 Jenkinsfile: run tests for `server/data/data-jmap-postgres` module
    omit c40afa00ee JAMES-2586 DeleteMessageListener: better concurrency control upon mailbox deletion
    omit 84aab1f734 JAMES-2586 Introduce data-jmap-postgres module
    omit 17b5e2bd2f JAMES-2586 Implement PostgresMessageIdMapper
    omit 5abe1b002e JAMES-2586 add mailbox para for generateMessageUid method in MapperProvider
    omit 35bd908641 JAMES-2586 Implement BlobReferenceSource(s) for postgres-app
    omit 26259e43ee JAMES-2586 - Set blobStorage implementation is postgres by default
    omit 320bc007c3 JAMES-2586 Plug PreDeletionHooks
    omit 7053bb8143 JAMES-2586 PostgresDeletedMessageVaultIntegrationTest
    omit bc6b5eff50 JAMES-2586 Plug DeletedMessageVaultDeletionCallback into DeleteMessageListener
    omit 617a3d3b58 JAMES-2586 Guice binding + module chooser + sample config for Postgres DeletedMessageVault
    omit 4d139f6a25 JAMES-2586 Implement PostgresDeletedMessageMetadataVault
    omit 79291445a3 JAMES-2586 Refactor the way initPostgres of PostgresTableManager
    omit bab9bbe1ea Guice InitializationOperation support priority when init module
    omit 8dabcacd42 JAMES-2586 - Fix BUG - DeleteMessageListener - not work correctly when enabling RLS
    omit 839c1e0995 JAMES-2586 - Update test cases for Delete message listener - when enabling Row level security
    omit 749c69bb49 JAMES-2586 Bump r2dbc-postgresql to 1.0.3.RELEASE
    omit 701fa0db77 JAMES-2586 Bump jOOQ to 3.16.23
    omit 0b458d8d89 JAMES-3777 [FIX] ReadProjection was not correctly used (#1899)
    omit 680b3bb077 JAMES-2586 Adopt Postgres 16.1 (#1897)
    omit 1a1e5fe3a2 JAMES-2586 [PGSQL] Guice binding Postgres BlobStore & Adapt to BlobStoreModulesChooser
    omit 5dc7bd77c4 JAMES-2586 Disable concurrent test of PostgresBlobStoreDAO
    omit d4011ecd93 JAMES-2586 Implement PostgresBlobStoreDAO
    omit 5840dbe903 JAMES-2586 Add a health check integration test
    omit 5e88a16e9d JAMES-2586 Add missing license
    omit 5cb0036ed2 JAMES-2586 Fix flaky test DistributedPostgresJamesServerTest.guiceServerShouldUpdateQuota
    omit 133dbe675e JAMES-2586 Implement PostgresEventDeadLetters
    omit 959f4a16a8 JAMES-2586 Fixup search overrides - Using Postgres Factory Executor replace to invoke DAO directly (#1880)
    omit 4936eadc55 JAMES-2586 Implement DeleteMessageListener for postgres (#1869)
    omit d5ea5b6eb2 JAMES-2586 Plug RabbitMQ EventBus into Postgres-app
    omit acc74a131b JAMES-2586 Moving RabbitMQExtension from distributed-app to queue-rabbitmq-guice
    omit 88e5638818 JAMES-2586 Unnecessary join on deleted uid search queries in postgresql
    omit 5d73c3dd3a JAMES-2586 Refactor search overrides tests for postgresql
    omit ba5591e225 JAMES-2586 Correct search overrides documentation in opensearch.properties
    omit d7b0da3f35 JAMES-2586 Implement UnseenSearchOverrideTest for Postgresql
    omit 7c742d0a47 JAMES-2586 Implement UidSearchOverride for Postgresql
    omit 9a6c242aee JAMES-2586 Implement NotDeletedWithRangeSearchOverride for Postgresql
    omit 5283b13b68 JAMES-2586 Implement DeletedWithRangeSearchOverride for Postgresql
    omit 8fce1eb347 JAMES-2586 Implement DeletedSearchOverride for Postgresql
    omit 9ba5d0a8bd JAMES-2586 Implement AllSearchOverride for Postgresql
    omit dc5d2a61e3 JAMES-2586 Remove james-server-cassandra-app direct dependency (#1875)
    omit fd1fe3562d JAMES-2586 Message body deduplication (#1873)
    omit c5f0cea5ce JAMES-2586 Module chooser: S3, file blobStore
    omit 55bd624ee5 JAMES-2586 Rework README for Postgres-app and rework the docker compose with only Postgresql after adding search module chooser
    omit 1a6dc5684e JAMES-2586 Add docker compose distributed with OpenSearch for postgres app
    omit a037884397 JAMES-2586 Add search module chooser for Postgres app
    omit 2d6211dcd8 [PGSQL] ADR on PGSQL flags update concurrency control mechanism (#1867)
    omit b2b92ed6f7 JAMES-2586 Fix [PGSQL] Concurrency control for flags updates (#1858)
    omit 295e435013 JAMES-2586 Add an Id for SieveScript (#1863)
    omit c74ee55e1f JAMES-2586 add missing RLS tests
    omit 9c278ffa07 JAMES-2586 Fix repositoryPath in postgres-app mailetcontainer.xml
    omit 231a9ba1dc JAMES-2586 Fix compilation errors
    omit 962c6f845f JAMES-2586 Add an `addAdditionalAlterQueries` option when declaring Postgres table
    omit 974640eb1c JAMES-2586 Finally remove the rest of JPA in postgres-app
    omit 8050e015d0 JAMES-2586 Updating postgres-app default configuration to PostgresMailRepository
    omit 3fa7d49e36 JAMES-2586 Documentation for PostgresMailRepository
    omit fb8e8cc607 JAMES-2586 Guice binding for PostgresMailRepository + remove related JPA code
    omit 0923eeda52 JAMES-2586 Implement PostgresMailRepository
    omit 5d91717e2b JAMES-2586 Guice binding for PostgresSieveScriptDAO
    omit 0e1e1c5577 JAMES-2586 Delete JPASieveScript.java
    omit 826d3f8366 JAMES-2586 Implement PostgresSieveScriptDAO + PostgresSieveRepository
    omit 6f28b22155 JAMES-2586 ADR for Posgres mailbox tables structure (#1857)
    omit 7ba0914bd9 JAMES-3967 Store mails when relay is exceeded
    omit 697886b33a JAMES-2586 Implement and bind PostgresHealthCheck
    omit 96371967af JAMES-2586 Remove JPAMailRepositoryUrlStore.java
    omit 8600abedea JAMES-2586 Implement PostgresMailRepositoryUrlStore
    omit 4640351088 JAMES-2586 Remove JPAHealthCheck.java
    omit e33e472361 JAMES-2586 PostgresDelegationStore (#1851)
    omit f1edd181ef JAMES-2586 Fixup compile error after merge master
    omit 96c2a6c621 JAMES-2586 PostgresRecipientRewriteTableDAO and PostgresRecipientRewriteTable
    omit 6656e7e585 JAMES-2586 PostgresTableManager - Cleanup
    omit 0479e46221 JAMES-2586 PostgresTableManager - Check the existence of RLS column/policy before alter the table
    omit ea53cb9598 JAMES-2586 PostgresExecutor: better recognize prepared statement conflict
    omit eb1d5d3d39 JAMES-2586 Add a unit test for recreate RLS column should not fail
    omit abcf6a3172 JAMES-2586 Rename JPAAttachmentContentLoader to PostgresAttachmentContentLoader
    omit 4395e4b763 JAMES-2586 Postgres app – Remove server test for authentication database sql validation
    omit 7ae08f0787 JAMES-2586 Fixup - Postgres app - Use junit 5 (replace to junit 4)
    omit b779c03d8b JAMES-2586 Fix missing guice binding for Postgres quota module
    omit 542e495631 JAMES-2586 [PGSQL] Improve PostresMessageManager::getMetadata method
    omit f414eba135 JAMES-2586 [PGSQL] Optimize getMailboxCounter method
    omit f096f54407 JAMES-2586 [PGSQL] Implement correctly FetchType
    omit a7b87fcd4f JAMES-2586 Fully drop JPA within mailbox-postgresql
    omit d71da17a74 JAMES-2586 Enable PostgresMailboxManager annotation tests
    omit 7f99f10ede JAMES-2586 Enable UniqueID support for PostgresMailboxManager
    omit b898f148f8 JAMES-2586 Remove unused method in MessageManager
    omit 38f0659204 JAMES-2586 Remove unused class MessageUtils.java
    omit 98c83ce092 JAMES-2586 Enable ACL support for PG
    omit fcad76e023 JAMES-2586 [PGSQL] Initialization to configure users repository
    omit 3780f0ee8e JAMES-2586 Implement PostgresPerUserMaxQuotaManager (#1839)
    omit b1875b3728 JAMES-2586 PostgresExecutor: Retry only upon PreparedStatement conflict exception
    omit 734f0f6545 JAMES-2586 PostgresExecutor: Retry upon PreparedStatement conflicts
    omit dd4ff12c1e JAMES-2586 Rework ConnectionThreadSafetyTest -> PostgresExecutorThreadSafetyTest
    omit ce783bf0ea JAMES-2586 Fix Postgres Mailbox Annotation mpt imap test
    omit a809cc0834 JAMES-2586 Guide binding Postgres Message/Mailbox mapper
    omit 80990d9e0a JAMES-2586 - Introduce PostgresMailboxSessionMapperFactoryTODO and using it to mpt imap test
    omit 2d3755c241 JAMES-2586 - Postgres MailboxAnnotation DAO - Fix null pointer
    omit 078ec58ca1 JAMES-2586 - Postgres Mailbox DAO -  Fix rename deadlock
    omit cb9f703c28 JAMES-2586 - Fixup PostgresMailboxMessageDAO
    omit cffb676ac5 JAMES-2586 - Fixup PostgresMessageMapper updateFlags method - apply single new modSeq for all messages
    omit 52034b6058 JAMES-2586 - Fixup PostgresMessageMapper findMailbox method - ensuring the message was sorted
    omit f61e2b397a JAMES-2586 - MailboxMessage table - Remove FK key to mailbox table
    omit cbcd3a75b0 JAMES-2586 postgres-app should run tests against Postgresql container for both JPA and Postgres r2dbc
    omit 59c699c8c6 JAMES-2586 Fix Guice bindings between PostgresDomainList and PostgresTableManager
    omit e89b92a2be JAMES-2586 DomainList Should throw when insert duplicate or delete not found domain
    omit b84b641a40 JAMES-2586 Guice bindings and package renaming for domain postgres implementation
    omit 3feadb463d JAMES-2586 Implement PostgresDomainList
    omit 20ce82321b JAMES-2586 Remove unused method in PostgresExecutor
    omit f35eb140c4 JAMES-2586 postgres mailbox annotation dao and mapper (#1822)
    omit 6bc2792bcb JAMES-2586 Implement Postgres Current Quota manager
    omit 3cd1ed5249 JAMES-2586 Implement PostgresMailboxMessageDAO (#1812)
    omit bea6b9d591 JAMES-2586 Guice binding for SieveQuotaRepository backed by Postgres
    omit e0e1793e9c JAMES-2586 Implement SieveQuotaRepository backed by Postgres
    omit d8af3d3ead JAMES-2586 Clean Code – the using PostgresExecutor.Factory (#1816)
    omit 01ed9c9780 JAMES-2586 Implement PostgresQuotaLimitDAO
    omit ce1279f46b JAMES-2586 Implement PostgresQuotaCurrentValueDAO (#1813)
    omit c4d3acbdbd JAMES-2586 postgres users dao and repository (#1803)
    omit 3bf5656e76 JAMES-2586 Create hstore extension if needed upon James startup
    omit cce5f98746 JAMES-2586 Implement MailboxACL support for PostgresMailboxMapper
    omit eda31672af JAMES-2586 Implement PostgresExecutor Factory and Mailbox Aggregate Module
    omit cafd28ab02 JAMES-2586 Implement PostgresModSeqProvider
    omit 1d75e52137 JAMES-2586 Implement PostgresUidProvider
    omit 804c855190 JAMES-2586 Parameterize MailboxSession for getUidProvider/getModSeqProvider methods in MailboxSessionMapperFactory
    omit 61c7a27d17 JAMES-2586 Clean-up the provision.sh file of postgres-app
    omit c7857a876a JAMES-2586 LOGGER when choice implementation of Postgresql connection factory
    omit 26e23a9c91 JAMES-2586 Introduce Single postgres connection factory when disable row level security
    omit 289e86471e JAMES-2586 Rename SimpleJamesPostgresConnectionFactory -> DomainImplPostgresConnectionFactory
    omit aa6e334d8c JAMES-2586 mpt-imapmailbox-postgres - update maven build, increase memory and disable reuseForks
    omit 67c3d85cbd JAMES-2586 SimpleJamesPostgresConnectionFactory – set empty attribute value when without domain
    omit e10085b27c JAMES-2586 mpt-imapmailbox-postgres: bindings and setup in PGHostSystem
    omit cb44ee01eb JAMES-2586 Introduce apache-james-mpt-imapmailbox-postgres
    omit cea451f9cc JAMES-2586 Postgres app performance test materials (#1794)
    omit cdc4115f04 JAMES-2586 implement postgres mailbox mapper (#1791)
    omit a83acfc7ca JAMES-2586 implement dao for mailbox table (#1786)
    omit 41b4ef8cbe JAMES-2586 Fix row-level security implementation
    omit ab6a795f18 JAMES-2586 Small codestyle refactorings
    omit d7e807b9d9 JAMES-2586 PostgresExtension: favor factory methods to constructor
    omit 4165320c42 JAMES-2586 Document (link) varchar underlying maximum lengths
    omit 00ad65a2e4 JAMES-2586 Implement (failing) tests for Row Level Security applied on Subscriptions
    omit 273e292e73 JAMES-2586 Drop unused class: JPASubscription
    omit d224f90f79 JAMES-2586 Drop unused class: EncryptDecryptHelper
    omit 757726a3e3 JAMES-2586 Drop reporting-site.xml
    omit 778c8a2fcd JAMES-2586 Drop Spring files for mailbox-postgres
    omit 4977c6c358 JAMES-2586 Merge PostgresSubscriptionTable and PostgresSubscriptionModule
    omit 302b712da0 JAMES-2586 Polish code style: PostgresSubscriptionMapper
    omit ab85e99053 JAMES-2586 Use prepared statements by default
    omit 6a16a4cb45 JAMES-2586 postgres mailbox - drop JPAStreamingMailboxMessage, JPAEncryptedMailboxMessage, JPAMailboxMessageWithAttachmentStorage
    omit db658a2502 JAMES-2586 Rename mailbox postgres package
    omit 701ad53656 JAMES-2586 Rename Postgres Subscription
    omit 4a6f974a11 JAMES-2586 Guice binding for Postgres subscription module
    omit 3c0e6c9b88 JAMES-2586 Fix review comments
    omit c27919bdb9 JAMES-2586 Sample docker configuration for postgres.properties
    omit c6cd4c1297 JAMES-2586 PostgresTableManager should only create RLS column when general RLS configuration enabled
    omit 2a3593f40d JAMES-2586 Guice binding for PostgresTableManager
    omit f8b920e815 JAMES-2586 Guice binding for JamesPostgresConnectionFactory
    omit ca315c7bd7 JAMES-2586 Guice binding for PostgresConfiguration
    omit b40c3b418d JAMES-2586 Rename postgres-app tests' name: JPA -> Postgres
    omit d0870b8d06 JAMES-2586 Introduce PostgresConfiguration
    omit 525735b115 JAMES-2586 implement pg connection factory (#1774)
    omit da72c5f9a1 JAMES-2586 Postgres Subscription mapper (#1775)
    omit 82fa876823 JAMES-2586 Introduce PostgresExtension
    omit e97ac61b10 [CI] Maven runs test on only postgres modules (postgresql branch)
    omit 2b07a8519c JAMES-2586 PostgresTableManager support create table when enable row level security
    omit d9380e90a2 JAMES-2586 - Implement PostgresTableManager
    omit 1ad2132ca8 JAMES-2586 - Postgres - Init james-serrver-guice-mailbox-postgres
    omit aff9605ed4 JAMES-2586 - Postgres - Init james-server-postgres-common-guice
    omit 6f0e1e8b3f JAMES-2586 - Postgres - Init james-server-data-postgres
    omit 0c7deb07c0 JAMES-2586 - Postgres - Init postgres app server
    omit 616ac7eb6e JAMES-2586 - Postgres - Init postgres mailbox module
    omit e2e5bd0ea3 JAMES-2586 - Postgres - Init backend common module for postgres
     add 767b9a36d4 JAMES-3968 Fix mail loss due to RabbitMQ ack failure
     add ae02d90e0b [Documentation] Fix sample configuration directory link in jpa guice app README
     add fe455a99e6 JAMES-3777 [FIX] ReadProjection was not correctly used
     add d99592f9a6 JAMES 3897: CrowdsecImapConnectionCheck
     add ce11441019 JAMES 3897: Integration test for CrowdsecImapConnectionCheck
     add 530401749b JAMES-3788 [FIX] MDC IP upon proxy
     add f79e4aca14 JAMES 3897: Add connectionCheckFactory bean into imapserver-context.xml
     add 891dab7819 [BUILD] - Upgrade scalafix-maven-plugin version 0.1.6_0.9.34 -> 0.1.8_0.11.0
     add bb01c8a9f2 [FIX] OpenSearch should normalize base subject (#1910)
     add 14e916467b [FIX] /changes handling of \Deleted flag updates
     add 04aaad4a5a [FIX] Refactoring for MailboxAndEmailChange
     add a0133276fd [FIX] Better handle COPY / MOVE
     add 721b19eb43 [FIX] Adapt integration tests accordingly
     add da89d2e0b6 [BUILD] Do not display info/debug log while running tests
     add 651364a19e [DOC] Documentation fallback value capability for environment variable configuration
     add 92b34b89da Fix for NoSuchElement in SPFHandler (#1931)
     add 8efc69f0bd [RSpamD] AuditTrail for RspamdScanner
     add b3d5e4e1d0 [RSpamD] Audit trail for ClamAV
     add 47577d5cd0 [SpamAssassin] Audit trail for SpamAssassin
     add 987571715b Fix for GUICE configuration and wiring the SPFHandler. Apparently the DNSService isn't properly registered resulting in an error when wiring up the SPFHandler.
     add bdfb80fb62 JAMES-3953 Performance enhancements (#1906)
     add 00c51c98ae [FIX] Enable dynamic translation of LDAP entries (#1932)
     add 3445c5a1f0 [FIX] SMTP stack should recompute relaying rights upon PROXY message (#1933)
     add 090cd634c9 JAMES-3971 Fix startup errors for jpa-smtp-app
     add 02bf0074a0 JAMES-3970 Need to compile JPA SMTP application
     add bc280654f6 Bump com.jayway.jsonpath:json-path from 2.8.0 to 2.9.0
     add 8a7d259a1e JAMES-3897 Fix POP3 PassCmdHandler IP address log
     add aafa984366 JAMES-3897 Extract common methods to CrowdsecUtils
     add 4238e67ca5 JAMES-3897 CrowdSec support for POP3
     add 49e2ba5c45 JAMES-3897 Add `crowdsec` prefix to package name
     add 36d2c6d47a JAMES-3897 Enhance some error messages
     add caa5074f4f JAMES-3897 Fine tuning for CrowdSec client timeout
     add a8d39d8836 JAMES-3688 [DOC] Add git clone command to documentation
     add 69e45e4ddf [UPDATE] Update spark version: Jetty update
     add 73cda2c2c5 [UPDATE] BouncyCastle 1.70 -> 1.77 (fixes multiple minor CVEs)
     add 775ab6fcb9 [boyscout] fixes missing mdc values in smtp audit logs (#1952)
     add d944e153d7 [DOC] Improve distributed-app README instructions
     add 57fddebdd5 Revert "[UPDATE] Update spark version: Jetty update"
     add 403b958ebe Revert "[UPDATE] BouncyCastle 1.70 -> 1.77 (fixes multiple minor CVEs)"
     add c691fec744 [FIX] IMAP FETCH was pulling all messages into memory
     add e5efdcb4e2 [IMPROVMENT] MDC audit trail format
     add d910ab53e0 JAMES-3909 Deleting userdata: Bypass user existence check (#1938)
     add c5863e50d2 JAMES-3976 Email/import should accept empty keywords (#1962)
     add 410a278a45 JAMES-2086 Improve COPY error message when OverQuota
     add 9254c46d4b [ENHANCEMENT] Allow customizing sortOrder
     add 15a8fb7688 [JAMES-2086] FIX: Handle OverQuotaException instead of more generic MailboxException (#1948)
     add 1af8b57273 EmailBodyPart.scala use ISO_8859_1 as a default charset
     add aeb9456679 [Fix] Fix tag for Minio testing image (#1978)
     add e14857d90b [ENHANCEMENT] Add SSL information into SMTP header
     add 74bf59448b [FIX] Prevent creation of multiline mailbox names (#1973)
     add 97045993d3 [ENHANCEMENT] Add Hostname header onto RspamD client
     add c92d90d455 [IMPROVEMENT] SPF mailet: add missing private network "192.168.0.0/16" and use correct CIDR for private range "172.16.0.0/12"
     add 2c6bd97ab1 [UPDATE] BouncyCastle 1.70 -> 1.77 (fixes multiple minor CVEs)
     add 6813b9de80 [Fix] BouncyCastle 1.70 -> 1.77 (fixes multiple minor CVEs)
     add 1d62e6ab84 [FIX] MailReceptionCheck should not call sink concurrently
     add 7536d45ada [UPDATE] Update OpenSearch driver (fixes minor CVEs and drop code)
     add b02a0a80e8 [JAMES-3978] initial setup of develocity for james build
     add 6a48b9d2cf JAMES-2372 Fixing multiple accounts with Fetchmail (#1951)
     add b14a35d162 JAMES-3981 Lower log level of closed connections
     add 6fdf498793 JAMES-3981 Warn upon invalid RCPT
     add 087a257230 JAMES-3981 Remove double logs upon closed channels
     add fa1abcf84b upgraded_activemq_from_5.18.2_to_5.18.3 (#1989)
     add e2f5d19a1b [JAMES-3978] capture build and test output in develocity
     add 7654c46791 [JAMES-3978] prevent javadoc plugin from forking maven goals
     add 2ec58019a2 [scout] adds missing jacoco version
     add 475e89558e [scout] removes duplicate dependency declaration
     add 3497d97d49 [scout] drops felix bundle plugin
     add 39a5019422 [JAMES-3978] activate flaky tests detection
     add f4a4ad36ad [FIX] Apply RFC-5321 syntax validation for EHLO (#1979)
     add 357781540e [ENHANCEMENT] More context for SMTP logs (#1969)
     add ba70de1fad [JAMES-3978] adds some tags to build scans
     add 07c3a4ba5a [JAMES-3897] implements a crowdsec based SMTP connect handler
     add a6617039ab [JAMES-3897] refactors ehlo hook to use crowdsec service
     add 1edda804a8 JAMES-3986 AttachmentFileNameIs should be decently tested (#1991)
     add a471160588 [FIX] Lower log level of SSL handshake exceptions (#1998)
     add 5cdf3fbf07 JAMES-3991 Vacation handling should be case insensitive
     add 2c5c9b771d JAMES-3775 Pass SSL information to RspamD scanner mailet
     add fa5581f5d5 [FIX] Add tests for multipart/alternative in OpenSearch test suite
     add a9cbc58604 [FIX] Do not double index multipart/alternative
     add 4aebc71754 [FIX] multipart/alternative with attachment had no text value indexed
     add 452efc9390 [FIX] Email/set should allow creating an email with attachment of a destroyed message
     add f0f8aec934 Feature/fixing tupo truststoretype (#1999)
     add 88e1ae8bef [JAMES-3978] improves git-commit-id performance
     add e9aafc53a8 [JAMES-3978] improves remote-resource-plugin setup for performance
     add 1bfc514e07 [FIX] LOG JMAP errors
     add 02e74a57f0 [FIX] IMAP LEAK: CLOSE, UNSELECT
     add 97375c295c JAMES-4001 File buffering for message storage (#2019)
     add beb23d48e3 Reactor blocking call fixes (#2016)
     add 49255f7a77 [UPDATE] sslcontext-kickstart-for-pem to match BC version in #1975
     add 74e17d08ae [RABBITMQ] Prevent some class cast
     add d4bf925441 [RABBITMQ] Reactify some RabbitMQ related health checks
     add 05b72736a0 Bump org.postgresql:postgresql in /server/apps/scaling-pulsar-smtp
     add e2c5d512c1 Fixed issue with incorrect JPA properties values set for openjpa.Multithreaded and attachmentStorage.enabled
     add 6bfe5be6bc [FIX] Use Netty dns async resolvers
     add a732257b6c Fix push attachements in parallel (#2020)
     add 437141eec6 [FIX] Apply batch size to prefetch
     add 56532ee0c5 JAMES-3995 Add a max number of items for EmailGet full reads (#2024)
     add b6de3cb3d9 JAMES-4004 [FIX] Allow retries for S3 saves (#2025)
     add 530f2626a0 JAMES-3998 Empty password should not lead to worrying error (#2026)
     add e09a085b8f JAMES-3730 Upgraded from Legacy JavaMail to Jakarta Mail 2.0.1/Activation 2.0.1;   https://github.com/eclipse-ee4j/mail/releases   https://github.com/eclipse-ee4j/jaf/releases
     add 1c8ef7d3ee JAMES-3730 Remove unecessary comments
     add 54fbb11de2 JAMES-3730 Excluse geronimo deps from apache-jdkim-library import
     add cc4d5a6aa2 JAMES-3730 Post rebase fixes
     add 8eb044b723 JAMES-3730 CR fixes
     add bff7274cd8 JAMES-3730 Additional formatting fixes
     add 2b39a1d2d9 JAMES-3730 subethasmtp updated to latest to support Jakarta Mail
     add de13a8310c JAMES-3730 Upgrade to Angus Mail
     add f36c7b8268 JAMES-3730 Minor fix
     add 75e5b1e2ea JAMES-4006 Bouncer should pass DSN to bounce processor
     add dd788291b5 [FIX] Mime parsing on parallel scheduler (#2039)
     add fa6ec2db42 [FIX] More jmap logs (#2037)
     add 8a9a9d38de [SITE] Blog post for 3.7.5 release
     add fd767d9da5 [SITE] Blog post for 3.8.1 release
     add e9232deaac [SITE] Downloads for 3.8.1 James release
     add 924ce3c29c [SITE] Downloads for 3.7.5 James release
     add f8cd3b0596 [SITE] Downloads for 0.8.10 MIME4J release
     add 701f46bdac [SITE] s/3.8.0/3.8.1
     add d40376550c [SITE] Release notes
     add b0ad23fb06 [SITE] Update upgrade instructions
     add 9cb4bcf949 [SITE] Mime4J 0.8.10 release
     add 169ae5b8e8 JMAP - EmailSubmission/set - Should not invoke onSuccessDestroyEmail/onSuccessUpdateEmail when not created (#2041)
     add 232adec907 [FIX] MailReceptionCheck do not send the mail before we actively listen to the results (#2038)
     add 9ac709336e [CHANGELOG] Mention 3.7.5 and 3.8.1 releases (#2045)
     add 01f39e7ba7 Document new CVEs (#2046)
     add 3897ad9b99 Update site plugin
     add 7fd6b27741 Update rat plugin
     add 487d9faeea [DOCUMENTATION] CVE-2023-51518 CVE-2023-51747 CVE-2024-21742 (#2047)
     add 915bcc33f2 JAMES-3997 Netty backpressure for IMAP FETCH (#2031)
     add 667c27e6b9 JAMES-4010 Do not index body (#2018)
     add 7a300ed824 JAMES-4009 StripAttachment should explicitly handle duplicates
     add aee6550277 JAMES-3995 Optimize Email/get
     add 66426a8005 JAMES-4002 AES blob store tuning to reduce memory pressure (#2021)
     add a2583d4e8a JAMES-4008 JMAP - Email/set - Should be able to save a draft with invalid email address (#2040)
     add ba34e7242c JAMES-4007 ImapChannelUpstreamHandler should always cleanup INBOUND message
     add 8b9cbf1385 JAMES-4007 Prevent channel inactivity to clear literal while IMAP APPEND is in progress
     add 4f38296f28 MailSizeEsmtpExtension - change log level when Quota exceeded (#2053)
     add 4f064d3ee3 JAMES-3885 Webadmin route to change of username - support `force` parameter  - do not require old user to exist (#2054)
     add fc1966682f [UPGRADE] MIME4J 0.8.9 -> 0.8.10 (#2058)
     add 4f77aab13a JAMES-4011 Use MIME4J to decode filename
     add 326b892ac1 JAMES-4013 Relay MDN/send
     add e48f8fcde7 [BUILD] RemoteDeliveryErrorHandlingTest was unstable
     add f7a898ad36 [FIX] Drop unused code in DeletedMessageVaultDeletionCallback
     add 80b88e42ee [FIX] Lower log message in MaybeSender
     add df87f0b4b1 [FIX] java.util.NoSuchElementException: requestDecoder
     add a63d257f2c JAMES-4012 Lenient MDN parsing for human readable part (#2057)
     add 7c95b0c086 JAMES-1717 Notification Registry - handle case Ints.checkedCast throws out of range when expireDate too far (#2051)
     add 6b1ad6d413 JAMES-4007 Flush data before close
     add 7bdf6f4585 JAMES-4007 Quietly delete IMAP litteral
     add 802c18e907 JAMES-4007 Avoid leaking litteral flux
     add a1440fc7dd JAMES-4007 Avoid a callback
     add dc560803d4 JAMES-4007 Remove subscription once data is all received
     add 752b2c01b5 JAMES-4007 ImapRequestFrameDecoder: use concurrentHashMap
     add 1fb2e4b4f7 JAMES-4007 Manage IMAP litteral with Leak aware
     add cf16dbea09 [FIX] Avoid forwarding bounces
     add abecfe9a0b fixup! [FIX] Avoid forwarding bounces
     add d3ec938e0a Update server/mailet/mailets/src/main/java/org/apache/james/transport/mailets/RecipientRewriteTableProcessor.java
     add 99eab22747 JAMES-3925 - JMAP Upload - Method delete of Upload Repository should return Boolean value when applied
     add d30aa3b7ff JAMES-3925 - JMAP Upload - Update current usage only when delete succeed
     add f8095a4e9f JAMES-3925 - JMAP Upload - Cleanup UploadUsageRepositoryContract
     add bb54e356cb JAMES-3925 - JMAP Upload - Optimize resetSpace method - do nothing when newUsage is equal currentUsage
     add a5fcf50acf [FIX] Notify eventbus outside of the lock
     add 5b60e158e1 [FIX] -openjpa.Multithreaded => -Dopenjpa.Multithreaded
     add 966f1e6597 JAMES-4008 Fix EmailSubmissionSetMethod with named address
     add e19468667e JAMES-4007 Mono.using in storeAttachments
     add 468383ebbe JAMES-4007 AESBlobStoreDAO: cleanup resources on error
     add 082c84187e JAMES-4007 MessageParser: cleanup resources on error
     add ac002dc64a JAMES-4007 FileBufferedBodyFactory: add a handy JVM option
     add 060039df27 JAMES-4007 Reset DelegateCloseableByteSource upon errors
     add e104a123fb JAMES-4007 Document james.mime4j.buffered.body.factory.file.threshold
     add 569a5b3047 JAMES-4014 Failing test MessageIdManager::deleteMessageShouldSupportDuplicatedEntries
     add 23fcc29845 JAMES-4014 MessageIdManager::delete should take a set as an input
     add 2cf04ef188 [ENHANCEMENT] Remove a redundant log
     add 429e838b8f JMAP - Delete/destroy should take a set as an input
     add d6218c20ec [IMPROVEMENT] Allow Email/set create to override attachment charset
     add d13aab4696 [FIX] Calendar parsing: be less verbose
     add 1dcfac3332 [FIX] Modified server set identities may not be deletes (#2083)
     add 1bf699dc92 Upgrade git-commit-id-maven-plugin to 8.0.0
     add aba90e1b8b Update JamesServerExtension
     add 23c4ef489c [ENHANCEMENT] Fix warning in AvoidBinaryBodyBufferingBodyFactory
     add c0ecbcbaca [ENHANCEMENT] AESBlobStoreDAO: carry over the size
     add 9785c573fb [ENHANCEMENT] Computing preview: avoid decoding base64
     add 3c86f6dc0d [ENHANCEMENT] Message content extractor: pre-size strings
     add 008923d001 [ENHANCEMENT] JsoupHtmlTextExtractor: The use of concurrent structures is not needed
     add b0a1f2a54b [FIX] IMAP session should allow cancelling ongoing processing
     add 9813526db4 [FIX] ImapIdleStateHandler should cancel ongoing requests first
     add 6cfa01a4e2 [FIX] cancel ongoing processing for inactive channels
     add ae27e2ca44 [FIX] Refactor slightly ImapChannelUpstreamHandler::manageUnknownError
     add a6567ed4ba [FIX] DefaultImapDecoder: INFO log on invalid command parsing
     add bbe97c5c6f [FIX] DefaultImapDecoder: improve bad command handling
     add b2a4e250b6 JAMES-3419 JMAP EmailBodyPart individual headers - Fix test cases
     add c274b412e1 [IMPROVE] SelectedMailboxImpl: extract isFromOtherSession
     add 59323cb54a [IMPROVE] SelectedMailboxImpl: remove double space
     add 10b6197c07 [IMPROVE] SelectedMailboxImpl: remove unused method
     add 6cf53137d5 [IMPROVE] SelectedMailboxImpl: simplify RECENT flag event handling
     add da97a137f4 [IMPROVE] SelectedMailboxImpl: checkExpungedRecents should avoid a data copy
     add 9bafec0227 [IMPROVE] SelectedMailboxImpl: simplify RECENT flag event handling upon addition
     add 9698d580d7 [IMPROVE] SelectedMailboxImpl: IMAP session is not needed
     add 4db213893c [IMPROVE] Remove unused class SingleMessageResultIterator
     add 5c40b2dd72 [FIX] SelectedMailboxImpl: using Mono defer to avoid eager invoke idleEventListener
     add 956cf750ba [FIX] Enforce a separate keyspace for blob store cache (#2060)
     add 831c6c7433 JAMES-2644 Add back tests
     add 4c5085975e JAMES-2644 ContentTypeCleaner Decrease log level
     add d1bfeddc7e JAMES-2644 ContentTypeCleaner: add a test with a parameter
     add 35fa8040ff JAMES-3534 Fixbug - Identity response alway return mayDelete=false when server set identity
     add 09e3803613 [FIX] RSpamD should not fail when reporting empty body
     add ed1c2e3d52 [FIX] Try recover invalid ascii character in filename
     add e858bad711 [UPDATE] commons-compress 1.24.0 -> 1.26.0 (#2089)
     add 17a2857b75 [FIX] Ship mail over web webadmin routes into more apps (#2099)
     add cc48c303f3 JAMES-4018 SMTP RCPT TO should parse parameters once
     add b8ddca505c [ENHANCEMENT] Decrease log level for "NotSslRecordException"
     add 0b313a0dde [REFACTORING] Improve AuthCmdHandler code style
     add 96c87d0d67 [REFACTORING] AuthCmdHandler: INFO logs on invalid input
     add 71c2faf7d9 [REFACTORING] AuthCmdHandler: Use isEmpty()
     add f8ddb7a7a5 [REFACTORING] AuthCmdHandler: LineHandler line is never null
     add f14a1ecb69 [REFACTORING] AuthCmdHandler: Avoid returning null
     add ded3f58851 [REFACTORING] AuthCmdHandler: Add a missing diagnostic log
     add 9c4a58d5e7 JAMES-4019 ReactiveThrottler should handle better cancellation (#2104)
     add d413f8fcc4 [FIX] JMAP: Set configurable limits for /get /set objects (#2096)
     add cc5332158a [SITE] MIME4J 0.8.10 => 0.8.11
     add 4c0c565b04 [SITE] MIME4J 0.8.11 blog post
     add 29111de943 [FIX] OpenSearchListeningMessageSearchIndex should not fail on missing mailbox
     add 3a493d38a0 [FIX] MailboxChangeListener should not warn on deleted mailbox
     add 96288d51c7 [UPDATE] MIME4J 0.8.10 -> 0.8.11 (#2120)
     add 950134a56f [FIX] AbstractValidRcptHandler fix error handling on invalid username (#2122)
     add 15b0b0fffa ENHANCEMENT + DOCUMENTATION Performance / reliability setting for RabbitMQ quorum queues (#2121)
     add c7e8170754 JAMES-4021 Relay for "abc@def"@domain.com
     add 3bb549a593 Provision Current Quota when MailboxAdded event
     add 482ac366e3 [LOGGING] Aborting JMAP upload is too verbose (#2125)
     add 7222019643 JAMES-4020 Fully comply with RFC-3501 Section 6.4.5 (#2123)
     add 77d195f8a5 [FIX] IMAP linearization can be simplified
     add f5d1b73559 [FIX] IMAP FETCH backpressure propagate cancel
     add a9c9f02ac5 [FIX] FETCH: do not reuse FetchResponseBuilder
     add 019dabb517 [FIX] FETCH: flatten reactor operations
     add 8c7fe1ef73 [Fixup] Fix imap and smtp deployment test after mime4j upgrade to 0.8.11
     add 14f28d2dc6 JAMES-3961 Switch to Java 21
     add 454d82ea11 JAMES-3961 Upgrade maven-plugin-plugin in order to work with Java 21
     add d496df7104 JAMES-3961 Enfoce Maven 3.8.1+ usage
     add b56204abb6 JAMES-3961 Upgrade mockito: 5.2.0 -> 5.10.0
     add 7995f1dcaa JAMES-3961 Update xbean-asm9 to make JPA work with Java 21
     add 99d1d0432d JAMES-3961 Fix LeakAware test suite
     add 7f2fca77ed JAMES-3961 Relax Java modules
     add 8dab7eb842 JAMES-3691 Exception message change with Java 21
     add fdc9fbb9ec JAMES-3691 Update Cucumber to 7.15.0
     add 7c471f0967 JAMES-3961 AssertJ bean introspection
     add 6ea766d82a JAMES-3961 Mockito can no longer Mock EnumSet
     add 021cc5df44 JAMES-3961 Java 21 error message change
     add 65acac3d2c JAMES-3961 Cucumber update for JMAP draft integration tests
     add f659e241ae JAMES-3961 Fix PushSubscriptionSetMethodContract for Java 21
     add f0a7aeaf88 JAMES-3961 README: Java 11 -> 21
     add e63283960f JAMES-3961 Adopt eclipse-temurin:21-jre-jammy as a base docker image
     add 0f5d30525d JAMES-3961 Target jdk 11 for JPA modules
     add 1afab21248 JAMES-3961 Cucumber tests should not fail the unstable test phase
     add 4fc08925d7 JAMES-2586 - Postgres - Init backend common module for postgres
     add 1c0229265d JAMES-2586 - Postgres - Init postgres mailbox module
     add 876aed3105 JAMES-2586 - Postgres - Init postgres app server
     add 4f89fd5276 JAMES-2586 - Postgres - Init james-server-data-postgres
     add 0df0ec14a1 JAMES-2586 - Postgres - Init james-server-postgres-common-guice
     add 32f2137dac JAMES-2586 - Postgres - Init james-serrver-guice-mailbox-postgres
     add fc1f1a44c6 JAMES-2586 - Implement PostgresTableManager
     add 7cc6e133d8 JAMES-2586 PostgresTableManager support create table when enable row level security
     add 002bcd6587 [CI] Maven runs test on only postgres modules (postgresql branch)
     add 26d58e1168 JAMES-2586 Introduce PostgresExtension
     add fd9cf8eee1 JAMES-2586 Postgres Subscription mapper (#1775)
     add a2988076d4 JAMES-2586 implement pg connection factory (#1774)
     add 8db9167e06 JAMES-2586 Introduce PostgresConfiguration
     add 419f4c4922 JAMES-2586 Rename postgres-app tests' name: JPA -> Postgres
     add c4594f8f68 JAMES-2586 Guice binding for PostgresConfiguration
     add c07590328d JAMES-2586 Guice binding for JamesPostgresConnectionFactory
     add b282e99668 JAMES-2586 Guice binding for PostgresTableManager
     add fb91a3fe5d JAMES-2586 PostgresTableManager should only create RLS column when general RLS configuration enabled
     add d3d1a78810 JAMES-2586 Sample docker configuration for postgres.properties
     add f3297bf54e JAMES-2586 Fix review comments
     add 8bed2ada0f JAMES-2586 Guice binding for Postgres subscription module
     add 50e3a0c2d6 JAMES-2586 Rename Postgres Subscription
     add 465f12ba8b JAMES-2586 Rename mailbox postgres package
     add 684d5cac19 JAMES-2586 postgres mailbox - drop JPAStreamingMailboxMessage, JPAEncryptedMailboxMessage, JPAMailboxMessageWithAttachmentStorage
     add 8dbf8a7dda JAMES-2586 Use prepared statements by default
     add d154c45799 JAMES-2586 Polish code style: PostgresSubscriptionMapper
     add 6ccf9e4592 JAMES-2586 Merge PostgresSubscriptionTable and PostgresSubscriptionModule
     add a2b13bffc3 JAMES-2586 Drop Spring files for mailbox-postgres
     add f1a3e79a10 JAMES-2586 Drop reporting-site.xml
     add d6cbb1ee0f JAMES-2586 Drop unused class: EncryptDecryptHelper
     add 106e319a15 JAMES-2586 Drop unused class: JPASubscription
     add feca599d54 JAMES-2586 Implement (failing) tests for Row Level Security applied on Subscriptions
     add 0f17322464 JAMES-2586 Document (link) varchar underlying maximum lengths
     add 165ad98565 JAMES-2586 PostgresExtension: favor factory methods to constructor
     add 70912b049e JAMES-2586 Small codestyle refactorings
     add b3db23c3e9 JAMES-2586 Fix row-level security implementation
     add 0da42d2749 JAMES-2586 implement dao for mailbox table (#1786)
     add 55cce04bfa JAMES-2586 implement postgres mailbox mapper (#1791)
     add 21f26e4e88 JAMES-2586 Postgres app performance test materials (#1794)
     add d658541ab4 JAMES-2586 Introduce apache-james-mpt-imapmailbox-postgres
     add 4d80b74392 JAMES-2586 mpt-imapmailbox-postgres: bindings and setup in PGHostSystem
     add 585c10720c JAMES-2586 SimpleJamesPostgresConnectionFactory – set empty attribute value when without domain
     add 3e890d0564 JAMES-2586 mpt-imapmailbox-postgres - update maven build, increase memory and disable reuseForks
     add cc7c3de28b JAMES-2586 Rename SimpleJamesPostgresConnectionFactory -> DomainImplPostgresConnectionFactory
     add 6da80c9334 JAMES-2586 Introduce Single postgres connection factory when disable row level security
     add 6af2ec6db1 JAMES-2586 LOGGER when choice implementation of Postgresql connection factory
     add 9830a2922f JAMES-2586 Clean-up the provision.sh file of postgres-app
     add 9732f87344 JAMES-2586 Parameterize MailboxSession for getUidProvider/getModSeqProvider methods in MailboxSessionMapperFactory
     add 49171db6a7 JAMES-2586 Implement PostgresUidProvider
     add 5602e57ae8 JAMES-2586 Implement PostgresModSeqProvider
     add d35ba6bf41 JAMES-2586 Implement PostgresExecutor Factory and Mailbox Aggregate Module
     add 6e16dec357 JAMES-2586 Implement MailboxACL support for PostgresMailboxMapper
     add 15ce3c15b2 JAMES-2586 Create hstore extension if needed upon James startup
     add 6832ce4cd0 JAMES-2586 postgres users dao and repository (#1803)
     add b5dd1582b9 JAMES-2586 Implement PostgresQuotaCurrentValueDAO (#1813)
     add 7227198854 JAMES-2586 Implement PostgresQuotaLimitDAO
     add f96805c8b3 JAMES-2586 Clean Code – the using PostgresExecutor.Factory (#1816)
     add 19192ad7f5 JAMES-2586 Implement SieveQuotaRepository backed by Postgres
     add 24cad72b07 JAMES-2586 Guice binding for SieveQuotaRepository backed by Postgres
     add 06a5af3178 JAMES-2586 Implement PostgresMailboxMessageDAO (#1812)
     add c1203dde9b JAMES-2586 Implement Postgres Current Quota manager
     add 31baebb891 JAMES-2586 postgres mailbox annotation dao and mapper (#1822)
     add 369469bc58 JAMES-2586 Remove unused method in PostgresExecutor
     add d630397f0e JAMES-2586 Implement PostgresDomainList
     add 786fc66dff JAMES-2586 Guice bindings and package renaming for domain postgres implementation
     add 36aaf48a9e JAMES-2586 DomainList Should throw when insert duplicate or delete not found domain
     add 1e30317681 JAMES-2586 Fix Guice bindings between PostgresDomainList and PostgresTableManager
     add 2fcd4181c2 JAMES-2586 postgres-app should run tests against Postgresql container for both JPA and Postgres r2dbc
     add fcc24b50b2 JAMES-2586 - MailboxMessage table - Remove FK key to mailbox table
     add 1fc9e09a3b JAMES-2586 - Fixup PostgresMessageMapper findMailbox method - ensuring the message was sorted
     add 765e7e3c89 JAMES-2586 - Fixup PostgresMessageMapper updateFlags method - apply single new modSeq for all messages
     add 8f2736db80 JAMES-2586 - Fixup PostgresMailboxMessageDAO
     add 03e4b36340 JAMES-2586 - Postgres Mailbox DAO -  Fix rename deadlock
     add 85a8cab235 JAMES-2586 - Postgres MailboxAnnotation DAO - Fix null pointer
     add 6e82dbdfcb JAMES-2586 - Introduce PostgresMailboxSessionMapperFactoryTODO and using it to mpt imap test
     add 78e168cf4a JAMES-2586 Guide binding Postgres Message/Mailbox mapper
     add aa7aba11d2 JAMES-2586 Fix Postgres Mailbox Annotation mpt imap test
     add 69ec86f105 JAMES-2586 Rework ConnectionThreadSafetyTest -> PostgresExecutorThreadSafetyTest
     add 95ccd02146 JAMES-2586 PostgresExecutor: Retry upon PreparedStatement conflicts
     add 1cda389040 JAMES-2586 PostgresExecutor: Retry only upon PreparedStatement conflict exception
     add f9c66c7a51 JAMES-2586 Implement PostgresPerUserMaxQuotaManager (#1839)
     add 0081069c68 JAMES-2586 [PGSQL] Initialization to configure users repository
     add e0abb86ef0 JAMES-2586 Enable ACL support for PG
     add a697aa05f0 JAMES-2586 Remove unused class MessageUtils.java
     add f9c717aec2 JAMES-2586 Remove unused method in MessageManager
     add 127bd767ac JAMES-2586 Enable UniqueID support for PostgresMailboxManager
     add 893a8ad415 JAMES-2586 Enable PostgresMailboxManager annotation tests
     add 270677e3b9 JAMES-2586 Fully drop JPA within mailbox-postgresql
     add 6321edc9ae JAMES-2586 [PGSQL] Implement correctly FetchType
     add d8bac3bf9c JAMES-2586 [PGSQL] Optimize getMailboxCounter method
     add 24b33fb4eb JAMES-2586 [PGSQL] Improve PostresMessageManager::getMetadata method
     add c881922029 JAMES-2586 Fix missing guice binding for Postgres quota module
     add c2d326bbca JAMES-2586 Fixup - Postgres app - Use junit 5 (replace to junit 4)
     add 8230834853 JAMES-2586 Postgres app – Remove server test for authentication database sql validation
     add 5744592ea3 JAMES-2586 Rename JPAAttachmentContentLoader to PostgresAttachmentContentLoader
     add 6aa618ea21 JAMES-2586 Add a unit test for recreate RLS column should not fail
     add 29dc7ebc15 JAMES-2586 PostgresExecutor: better recognize prepared statement conflict
     add 5841fbadcb JAMES-2586 PostgresTableManager - Check the existence of RLS column/policy before alter the table
     add 012d1d0bbf JAMES-2586 PostgresTableManager - Cleanup
     add 5ce2f89b8c JAMES-2586 PostgresRecipientRewriteTableDAO and PostgresRecipientRewriteTable
     add 32e893770a JAMES-2586 Fixup compile error after merge master
     add 8721bf288a JAMES-2586 PostgresDelegationStore (#1851)
     add c6f3404024 JAMES-2586 Remove JPAHealthCheck.java
     add a2411cbb62 JAMES-2586 Implement PostgresMailRepositoryUrlStore
     add 7cc7117899 JAMES-2586 Remove JPAMailRepositoryUrlStore.java
     add f1277e60c9 JAMES-2586 Implement and bind PostgresHealthCheck
     add 609d9a577b JAMES-3967 Store mails when relay is exceeded
     add 2c23b766ed JAMES-2586 ADR for Posgres mailbox tables structure (#1857)
     add 67f2b9aeb5 JAMES-2586 Implement PostgresSieveScriptDAO + PostgresSieveRepository
     add 811faf577e JAMES-2586 Delete JPASieveScript.java
     add a95496ecaf JAMES-2586 Guice binding for PostgresSieveScriptDAO
     add 8e480b422c JAMES-2586 Implement PostgresMailRepository
     add abbfe1081d JAMES-2586 Guice binding for PostgresMailRepository + remove related JPA code
     add 002743b024 JAMES-2586 Documentation for PostgresMailRepository
     add e5b8aebe05 JAMES-2586 Updating postgres-app default configuration to PostgresMailRepository
     add 77a83b1299 JAMES-2586 Finally remove the rest of JPA in postgres-app
     add 2f56fe193b JAMES-2586 Add an `addAdditionalAlterQueries` option when declaring Postgres table
     add e94fb21ebd JAMES-2586 Fix compilation errors
     add 94aa586b64 JAMES-2586 Fix repositoryPath in postgres-app mailetcontainer.xml
     add 6918c60c12 JAMES-2586 add missing RLS tests
     add cc5306f95f JAMES-2586 Add an Id for SieveScript (#1863)
     add 3b922dd82d JAMES-2586 Fix [PGSQL] Concurrency control for flags updates (#1858)
     add a2d25f0af9 [PGSQL] ADR on PGSQL flags update concurrency control mechanism (#1867)
     add 7a72bbbfc3 JAMES-2586 Add search module chooser for Postgres app
     add 6df80f4326 JAMES-2586 Add docker compose distributed with OpenSearch for postgres app
     add 021e10e851 JAMES-2586 Rework README for Postgres-app and rework the docker compose with only Postgresql after adding search module chooser
     add 8f6bd79d80 JAMES-2586 Module chooser: S3, file blobStore
     add 563fc67158 JAMES-2586 Message body deduplication (#1873)
     add b707c754e1 JAMES-2586 Remove james-server-cassandra-app direct dependency (#1875)
     add eedaef98d2 JAMES-2586 Implement AllSearchOverride for Postgresql
     add 5f6548611b JAMES-2586 Implement DeletedSearchOverride for Postgresql
     add eceed9b56f JAMES-2586 Implement DeletedWithRangeSearchOverride for Postgresql
     add b5fe2c9ff6 JAMES-2586 Implement NotDeletedWithRangeSearchOverride for Postgresql
     add f36f8ab0ce JAMES-2586 Implement UidSearchOverride for Postgresql
     add 00869ec042 JAMES-2586 Implement UnseenSearchOverrideTest for Postgresql
     add e25af24da6 JAMES-2586 Correct search overrides documentation in opensearch.properties
     add 19fbb8334b JAMES-2586 Refactor search overrides tests for postgresql
     add c27e5a516d JAMES-2586 Unnecessary join on deleted uid search queries in postgresql
     add ac30dd00b0 JAMES-2586 Moving RabbitMQExtension from distributed-app to queue-rabbitmq-guice
     add 7035f01076 JAMES-2586 Plug RabbitMQ EventBus into Postgres-app
     add bf659efe5a JAMES-2586 Implement DeleteMessageListener for postgres (#1869)
     add eabe60817f JAMES-2586 Fixup search overrides - Using Postgres Factory Executor replace to invoke DAO directly (#1880)
     add 5bf701cdfe JAMES-2586 Implement PostgresEventDeadLetters
     add 357fb9fdec JAMES-2586 Fix flaky test DistributedPostgresJamesServerTest.guiceServerShouldUpdateQuota
     add c2613fcc9d JAMES-2586 Add missing license
     add 3457452f21 JAMES-2586 Add a health check integration test
     add 86337cadbf JAMES-2586 Implement PostgresBlobStoreDAO
     add 12e6df2f0a JAMES-2586 Disable concurrent test of PostgresBlobStoreDAO
     add c3203effc8 JAMES-2586 [PGSQL] Guice binding Postgres BlobStore & Adapt to BlobStoreModulesChooser
     add d871fa8c14 JAMES-2586 Adopt Postgres 16.1 (#1897)
     add 2ba14d7ce0 JAMES-2586 Bump jOOQ to 3.16.23
     add 9a2827d455 JAMES-2586 Bump r2dbc-postgresql to 1.0.3.RELEASE
     add 3a2290963e JAMES-2586 - Update test cases for Delete message listener - when enabling Row level security
     add 28dcdf1224 JAMES-2586 - Fix BUG - DeleteMessageListener - not work correctly when enabling RLS
     add f7917a19fc Guice InitializationOperation support priority when init module
     add 9c88c4f085 JAMES-2586 Refactor the way initPostgres of PostgresTableManager
     add 3819cec09f JAMES-2586 Implement PostgresDeletedMessageMetadataVault
     add 966c462773 JAMES-2586 Guice binding + module chooser + sample config for Postgres DeletedMessageVault
     add 61f31ed10b JAMES-2586 Plug DeletedMessageVaultDeletionCallback into DeleteMessageListener
     add 3be09cf15d JAMES-2586 PostgresDeletedMessageVaultIntegrationTest
     add 31e5c8c99c JAMES-2586 Plug PreDeletionHooks
     add e60d86f83b JAMES-2586 - Set blobStorage implementation is postgres by default
     add 63dfb403f1 JAMES-2586 Implement BlobReferenceSource(s) for postgres-app
     add 210eeb72e7 JAMES-2586 add mailbox para for generateMessageUid method in MapperProvider
     add e17d994bac JAMES-2586 Implement PostgresMessageIdMapper
     add 985dd936ce JAMES-2586 Introduce data-jmap-postgres module
     add 11771d3305 JAMES-2586 DeleteMessageListener: better concurrency control upon mailbox deletion
     add 5d61fa29b6 JAMES-2586 Jenkinsfile: run tests for `server/data/data-jmap-postgres` module
     add 4e546dd402 JAMES-2586 - CLEAN CODE -  Guice binding for Postgres User Repository modules
     add 275e6341a6 JAMES-2586 Implement PostgresMessageFastViewProjection
     add ddd0d57823 JAMES-2586 Moving Managers out of the mail package
     add 32247a298f JAMES-2586 Wire StoreMessageIdManager on top of the PostgresMessageIdMapper + tests
     add 207265ffca JAMES-2586 Little refactoring around DeleteMessageListener binding in posgres mailbox tests
     add 1a5c47314b JAMES-2586 JMAP Guice bindings modules to pg-app
     add 60f617f1d6 fixup! JAMES-2586 JMAP Guice bindings modules to pg-app
     add 388fe68630 fixup! JAMES-2586 JMAP Guice bindings modules to pg-app
     add 979fbe18d3 JAMES-2586 Implement PostgresAttachmentMapper, DAO and binding
     add cb51d52b8f JAMES-2586 Implement Postgres Attachment Blob reference source
     add 1121e47088 JAMES-2586 - Delete attachment in DeleteMessageListener
     add dbd3d6bc4d JAMES-2586 Webadmin integration tests for postgres
     add 10f0a77cdc JAMES-2586 Implement PostgresEmailChangeRepository
     add c4ad8961a6 JAMES-2586 - Delete Message Listener - add test case when delete mailbox has a lot of messages
     add 1302b50fbf JAMES-2586 - Fixbug - Delete Message Listener - Fix hanging issue
     add 6120919f10 JAMES-2586 - Fixbug hanging issue when Jooq execute delete and return list
     add d80eaeba47 JAMES-2586 Implement PostgresEmailChangeRepository - Fixup Guice binding
     add 913cce9eaf JAMES-2586 Implement Postgres upload repository
     add c8e27707e2 JAMES-2586 Implement Postgres upload usage repository
     add 8cd9459196 JAMES-2586 Guice binding for Postgres upload
     add b8a5e72520 JAMES-2586: The UploadRepositoryCleanupTask should rely on the UploadRepository interface
     add ff4162e220 JAMES-2586: Guice binding JmapUploadCleanupModule for Postgres webadmin
     add ff44505fb6 JAMES-2586 Disable row-level security by default in postgres.properties
     add 905827e66c JAMES-2586 Implement Postgres Push subscription
     add f3e349029b JAMES-2586 Introduce sql script to clean up PGSL data
     add bd110e13f9 JAMES-2586 Implement PostgresThreadIdGuessingAlgorithm (#1941)
     add 3212d88434 JAMES-2586 Implement PostgresMailboxChangeRepository
     add a8a5764c30 JAMES-2586 Guice binding PostgresMailboxChangeRepository
     add 88a3deb0ef JAMES-2586 Implement PostgresFilteringProjection
     add 21819e90e7 JAMES-2586 Implement PostgresCustomIdentityDAO
     add cc1e4dfdf0 JAMES-2586 Handle case when Postgres index/constraint already exists
     add eb314e0b57 JAMES-2586 More flexible on comparing Vacation's ZonedDateTime
     add 2bb265b637 JAMES-2586 Implement PostgresVacationRepository
     add d272684c06 JAMES-2586 Guice binding PostgresVacationRepository
     add 95d5167484 JAMES-2586 Improve PostgresVacationRepository
     add 1af2c5dea9 JAMES-2586 Temporarily disable a flaky PostgresUploadService test
     add 5110d9634f JAMES-2586 Optimize query increase/decrease for Quota Current Value
     add ce3afd3a7b JAMES-2586 Add Index for Postgres Mailbox table
     add d29b174cfc JAMES-2586 Implement PostgresNotificationRegistry
     add c0e5349682 JAMES-2586 SQL script to clean outdated vacation notifications
     add 3e0c813cb7 JAMES-2586 Guice binding for PostgresNotificationRegistry
     add 0e3e94b8c6 JAMES-2586 Fix contract test NotificationRegistryContract::registerShouldNotPersistWhenExpiryDateIsPresent
     add 6b189b8ef6 JAMES-2586 [Documentation] Using pg_stat_statements extension for track the stats of the SQL statement execution
     add 1a27e75a80 JAMES-2586 Avoid Using COUNT() in SQL When You Could Use EXISTS()
     add 78aa40b2c7 JAMES-2586 Move some files from event-store-cassandra to event-store-api
     add 5f11625d07 JAMES-2586 Implement PostgresEventStore
     add a720d79441 JAMES-2586 Implement PostgresEmailQueryView (#2007)
     add 5b7c08255a JAMES-2586 - Postgres push subscription - expires value should be stored Offset time
     add ee61f47a43 JAMES-2586 Integration tests for JMAP postgres
     add c9a7c04d63 JAMES-2586 Disable some tests in Integration tests JMAP postgres
     add 4061dbcf7b JAMES-2586 Fix PostgresAuthenticationTest
     add df95f44035 JAMES 2586 PostgresPushSubscriptionRepository: rely on Postgres unique constraint for deviceClientId (#2094)
     add 1c2d23977f JAMES-2586 [Postgres] FIXUP when query with IN - should pre-check collection size (#2103)
     add eb3fed4398 [Build] Use tmpfs for Postgres db test container
     add d4eefe6b28 JAMES-2586 Fix PostgresPushSubscriptionSetMethodTest, PostgresThreadGetTest
     add 96dd7dfd9f JAMES-2586 Replace drop by truncate in PostgresMessageFastViewProjection
     add 1f23bd37a4 JAMES 2586 Increase timeout to 1 hour for postgres-jmap-integration-test module
     add 15dfed6c16 JAMES 2586 Try forkCount=2 to see if the tests are faster
     add 769f5dcdd9 Add sslMode to require in PostgresqlConnectionConfiguration (#2109)
     add 775a9ddc05 JAMES-2586 Reduce repeat count for some JMAP integration tests
     add 956243faf3 JAMES-2586 Add PostgresAttachmentMapper to PostgresMessageIdMapper
     add e9f908e066 JAMES-2586 Bind PostgresMessageFastViewProjection
     add e5ffaaf57d JAMES-2586 Optimize AttachmentLoader
     add cc4257b726 JAMES-2586 Fix PostgresEmailGetMethodTest
     add 680b26ecad JAMES-2586 Fix PostgresEmailQueryMethodTest
     add aac185bf53 JAMES-2586 Fix PostgresMailboxSetMethodTest
     add 2a84c75a07 JAMES-2586 remove redundant import in PostgresPushSubscriptionSetMethodTest
     add ffa48cca27 JAMES-2586 Remove opensearch in PostgresWebPushTest
     add 58a2f41033 JAMES-3925 - JMAP Upload - Method delete of Upload Repository should return Boolean value when applied
     add c74ef8a827 JAMES-2586 - JMAP Upload - Fix unstable UploadService test
     add 648b218a7d JAMES-2586 Fix Postgres build after rebase on master
     add 90cf6e09fa JAMES-2586 JMAP Upload - fix precision of uploadDate field
     add 7118cc5606 JAMES-2586 Fix EmailSetMethod.emailGetShouldReturnUncheckedMailAddressValueWhenDraftEmail test
     add bb2f9079c5 JAMES-3534 Update IdentityGetContract - fix failing when running with Distributed test
     add f45cc5c1af JAMES-2586 Refactor the handle way duplicate value on constraint index to avoid noise log (Mailbox and User table)
     add 7622770cb6 JAMES-2586 [REFACTORING] - PostgresTableManager - fix incorrect log
     add ef3003a756 JAMES-2586 Avoid sorting PG messages
     add f8b5e8c0a2 JAMES-2586 [REFACTORING] - Extract dedicated class for retrieving Postgres Message
     add e9dc71cf97 JAMES-2586 Fix MailboxSetMethodContract
     add 617d6e1035 JAMES-2586 Avoid declare jooq and r2dbc-postgresql version in multiple places
     add 990446c65c JAMES-2586 Bump jOOQ to 3.19.6
     add c19bcb378b JAMES-2586 Bump r2dbc-postgresql to 1.0.4
     add e4ddaf88e2 JAMES-2586 Adapt jooq 3.19.6 change
     add d7a19ef054 JAMES-2586 Postgres RewriteTablesTest should not fail unstable test phase
     add 1dd1b147ee JAMES-2586 Create AttachmentIdFactory
     add 156bf4a071 JAMES-2586 Add UuidBackedAttachmentIdFactory
     add a2d5bc41a0 JAMES-2586 Unbind AttachmentBlobResolver
     add 989dafb1cf JAMES-2586 Update Guice binding Postgres (#2154)
     add 09c79655f4 Duplicated the QuotaDTO event and related classes from quota-mailing-cassandra to quota-mailing module
     add a10affd115 Refactor cassandra-quota-mailing: using the QuotaDTO event and related classes from quota-mailing module
     add 1eecbf0a4c JAMES-2586 Postgres - Binding QuotaMailing module for postgres app Tung Tran 10 minutes ago
     add 5451f5430e JAMES-2586 Postgres - Guice binding EventDTO for DLP Configuration
     add 5edf1cd828 JAMES-2586 Postgres - Guice binding EventDTO for FilteringRuleSetDefine
     add e4d5ae4009 JAMES-2586 - [Revert] Optimize query increase/decrease for Quota Current Value
     add 3c1baddb08 Revert "Provision Current Quota when MailboxAdded event"
     add b6fedefea9 JAMES-2586 Introduce module task-postgres
     add 392ece628f JAMES-2586 Implement PostgresTaskExecutionDetailsProjection
     add d519f7b9ac JAMES-2586 Relax TaskExecutionDetailsProjectionContract: can compare ZonedDateTime(s) with different timezones
     add e531cf98bc JAMES-2586 Guice binding Distributed TaskManager for postgres-app
     add 65a92c33f2 JAMES-2586 Disable DistributedTaskSerializationModule
     add 73a585944e JAMES-2586 Add missing cleanup task webadmin routes
     add f1c144d328 JAMES-2586 Do not use ActiveMQ mail queue when distributed mode
     add 62f81aca1c JAMES-2586 Add binding for DKIMMailetModule
     add b85422b985 JAMES-2586 - Postgres - Bind DistributedTaskSerializationModule into postgres-app
     add 66feefa93b JAMES-2586 Move some class related to ACLUpdated event from apache-james-mailbox-cassandra -> apache-james-mailbox-event-json
     add 12c6604d98 JAMES-2586 - Postgres - Binding ACLUpdated Event DTO
     add 366bfd0f4d JAMES-2586 PopulateEmailQueryViewTask should not hang for postgres-app (#2179)
     add 45201b9e32 JAMES-2586 Fix flaky tests in EmailQueryMethodTest
     add ef70127175 JAMES-2586 Enable flaky tests in PostgresEmailQueryMethodTest
     add f35b9085b8 JAMES-2586 Apply reactor timeout for jOOQ
     add 81a8d903b9 JAMES-2586 Mitigate fix for https://github.com/jOOQ/jOOQ/issues/16556
     add 4720ef72f6 JAMES-2586 Create metrics for PostgresExecutor

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (b18ca30f2c)
            \
             N -- N -- N   refs/heads/postgresql-backup (4720ef72f6)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

No new revisions were added by this update.

Summary of changes:
 .gitignore                                         |   3 +-
 .mvn/extensions.xml                                |  22 +
 .mvn/gradle-enterprise-custom-user-data.groovy     |   6 +
 .mvn/gradle-enterprise.xml                         |  59 ++
 CHANGELOG.md                                       |  16 +-
 Jenkinsfile                                        |   3 +-
 README.adoc                                        |   7 +-
 backends-common/cassandra/pom.xml                  |   5 +
 .../cassandra/init/ResilientClusterProvider.java   |  12 +-
 backends-common/opensearch/pom.xml                 |   4 +-
 .../james/backends/opensearch/ClientProvider.java  |   2 +-
 .../opensearch/json/JsonpDeserializerBase.java     | 397 ----------
 .../backends/opensearch/json/JsonpMapperBase.java  | 102 ---
 .../james/backends/opensearch/json/JsonpUtils.java | 207 -----
 .../json/UnexpectedJsonEventException.java         |  40 -
 .../json/jackson/JacksonJsonProvider.java          | 298 -------
 .../json/jackson/JacksonJsonpGenerator.java        | 374 ---------
 .../json/jackson/JacksonJsonpLocation.java         |  54 --
 .../json/jackson/JacksonJsonpMapper.java           | 123 ---
 .../json/jackson/JacksonJsonpParser.java           | 313 --------
 .../opensearch/json/jackson/JsonValueParser.java   | 108 ---
 .../backends/opensearch/json/package-info.java     |  29 -
 backends-common/postgres/pom.xml                   |   8 +-
 .../james/backends/postgres/PostgresCommons.java   |   4 +
 .../backends/postgres/PostgresConfiguration.java   |  29 +-
 .../james/backends/postgres/PostgresIndex.java     |   3 +-
 .../james/backends/postgres/PostgresTable.java     |   3 +-
 .../backends/postgres/PostgresTableManager.java    |  59 +-
 .../quota/PostgresQuotaCurrentValueDAO.java        |  54 +-
 .../backends/postgres/utils/PostgresExecutor.java  | 105 ++-
 .../james/backends/postgres/PostgresExtension.java |  31 +-
 .../postgres/PostgresTableManagerTest.java         |  10 +-
 .../james/backends/rabbitmq/QueueArguments.java    |   5 +
 .../backends/rabbitmq/RabbitMQConfiguration.java   |  29 +-
 .../rabbitmq/RabbitMQConnectionFactory.java        |   3 +
 .../rabbitmq/RabbitMQConnectionFactoryTest.java    |   4 +-
 checkstyle.xml                                     |   2 +-
 core/pom.xml                                       |  12 +-
 .../java/org/apache/james/core/MailAddress.java    |   8 +-
 .../java/org/apache/james/core/MaybeSender.java    |   4 +-
 .../main/java/org/apache/james/core/Username.java  |   2 +-
 .../james/core/builder/MimeMessageBuilder.java     |  26 +-
 .../james/core/builder/MimeMessageWrapper.java     |   8 +-
 .../org/apache/james/core/MailAddressTest.java     |  10 +-
 .../org/apache/james/core/MaybeSenderTest.java     |   2 +-
 .../james/core/builder/MimeMessageBuilderTest.java |   2 +-
 .../james/core/builder/MimeMessageWrapperTest.java |   4 +-
 docs/antora.yml                                    |   2 +-
 event-bus/cassandra/pom.xml                        |   5 +
 .../events/RabbitEventBusConsumerHealthCheck.java  |   2 -
 event-sourcing/event-store-cassandra/pom.xml       |   5 +
 .../listeners/SetCustomFlagOnBigMessages.java      |   3 +-
 .../listeners/SetCustomFlagOnBigMessagesTest.java  |   2 +-
 .../custom/mailets/IsDelayedForMoreThan.java       |   2 +-
 .../examples/custom/mailets/SendPromotionCode.java |   4 +-
 examples/pom.xml                                   |   2 +
 javax-mail-extension/pom.xml                       |  12 +-
 .../java/org/apache/james/javax/AddressHelper.java |   2 +-
 .../apache/james/javax/MimeMultipartReport.java    |  10 +-
 .../java/org/apache/james/javax/MultipartUtil.java |   6 +-
 .../apache/james/JsonSerializationVerifier.java    |  22 +-
 mailbox/api/pom.xml                                |   8 +-
 .../james/mailbox/ApplicableFlagBuilder.java       |   2 +-
 .../apache/james/mailbox/AttachmentIdFactory.java  |   9 +-
 .../org/apache/james/mailbox/FlagsBuilder.java     |   2 +-
 .../org/apache/james/mailbox/MessageIdManager.java |   7 +-
 .../org/apache/james/mailbox/MessageManager.java   |   4 +-
 .../mailbox/StringBackedAttachmentIdFactory.java   |  15 +-
 .../mailbox/UuidBackedAttachmentIdFactory.java     |  15 +-
 .../apache/james/mailbox/model/AttachmentId.java   |  59 +-
 .../model/ComposedMessageIdWithMetaData.java       |   2 +-
 .../apache/james/mailbox/model/DeleteResult.java   |   1 +
 .../apache/james/mailbox/model/MailboxPath.java    |   2 +-
 .../james/mailbox/model/MessageMetaData.java       |   2 +-
 .../apache/james/mailbox/model/MessageResult.java  |   2 +-
 .../apache/james/mailbox/model/SearchQuery.java    |   2 +-
 ...chmentId.java => StringBackedAttachmentId.java} |  18 +-
 .../apache/james/mailbox/model/UpdatedFlags.java   |  11 +-
 ...tachmentId.java => UuidBackedAttachmentId.java} |  35 +-
 .../apache/james/mailbox/probe/MailboxProbe.java   |   2 +-
 .../james/mailbox/ApplicableFlagBuilderTest.java   |   2 +-
 .../java/org/apache/james/mailbox/EventTest.java   |   2 +-
 .../apache/james/mailbox/MailboxListenerTest.java  |   2 +-
 .../apache/james/mailbox/MailboxManagerTest.java   |   2 +-
 .../mailbox/manager/ManagerTestProvisionner.java   |   2 +-
 .../manager/QuotaMessageManagerContract.java       |   2 +-
 .../apache/james/mailbox/mock/DataProvisioner.java |   2 +-
 .../mailbox/model/AttachmentMetadataTest.java      |   6 +-
 .../model/ComposedMessageIdWithMetaDataTest.java   |   4 +-
 .../james/mailbox/model/MailboxPathTest.java       |   6 +
 .../model/MessageAttachmentMetadataTest.java       |  12 +-
 ...Test.java => StringBackedAttachmentIdTest.java} |  14 +-
 .../james/mailbox/model/UpdatedFlagsTest.java      |   2 +-
 .../james/mailbox/backup/MessageArchiveEntry.java  |   2 +-
 .../james/mailbox/backup/zip/FlagsExtraField.java  |   2 +-
 .../james/mailbox/backup/FlagExtraFieldTest.java   |   2 +-
 .../mailbox/backup/MailboxMessageFixture.java      |   2 +-
 mailbox/cassandra/pom.xml                          |  13 +-
 .../CassandraMailboxSessionMapperFactory.java      |   3 +-
 .../mailbox/cassandra/CassandraMessageManager.java |   2 +-
 .../mailbox/cassandra/mail/CassandraACLMapper.java |   4 +-
 .../cassandra/mail/CassandraApplicableFlagDAO.java |   3 +-
 .../cassandra/mail/CassandraAttachmentDAOV2.java   |   3 +-
 .../cassandra/mail/CassandraAttachmentMapper.java  |  10 +-
 .../cassandra/mail/CassandraIndexTableHandler.java |   3 +-
 .../cassandra/mail/CassandraMessageDAOV3.java      |   4 +-
 .../cassandra/mail/CassandraMessageIdDAO.java      |  13 +-
 .../cassandra/mail/CassandraMessageIdMapper.java   |   7 +-
 .../mail/CassandraMessageIdToImapUidDAO.java       |   5 +-
 .../cassandra/mail/CassandraMessageMapper.java     |   9 +-
 .../cassandra/mail/CassandraMessageMetadata.java   |   2 +-
 .../mailbox/cassandra/mail/FlagsExtractor.java     |   2 +-
 .../mail/MessageAttachmentRepresentation.java      |  12 +-
 .../mail/eventsourcing/acl/ACLModule.java          |   8 +-
 .../mail/eventsourcing/acl/AclV2DAOSubscriber.java |   4 +-
 .../eventsourcing/acl/DeleteMailboxCommand.java    |   1 +
 .../eventsourcing/acl/MailboxACLAggregate.java     |   2 +
 .../mail/eventsourcing/acl/SetACLCommand.java      |   1 +
 .../mail/eventsourcing/acl/UpdateACLCommand.java   |   1 +
 .../eventsourcing/acl/UserRightsDAOSubscriber.java |   4 +-
 .../mail/task/MailboxMergingTaskRunner.java        |   5 +
 .../mail/task/RecomputeMailboxCountersService.java |   3 +-
 .../task/SolveMessageInconsistenciesService.java   |   3 +-
 .../cassandra/search/DeletedSearchOverride.java    |   3 +-
 .../search/DeletedWithRangeSearchOverride.java     |   3 +-
 .../search/NotDeletedWithRangeSearchOverride.java  |   3 +-
 .../cassandra/search/UnseenSearchOverride.java     |   3 +-
 .../apache/james/mailbox/cassandra/table/Flag.java |   2 +-
 .../cassandra/CassandraMailboxManagerProvider.java |   3 +-
 .../cassandra/CassandraMailboxManagerTest.java     |  25 +-
 .../TestCassandraMailboxSessionMapperFactory.java  |   9 +-
 .../cassandra/mail/AttachmentLoaderTest.java       |  12 +-
 .../mail/CassandraApplicableFlagDAOTest.java       |   2 +-
 .../mail/CassandraAttachmentDAOV2Test.java         |   8 +-
 .../mail/CassandraIndexTableHandlerTest.java       |   2 +-
 .../cassandra/mail/CassandraMessageDAOV3Test.java  |   2 +-
 .../cassandra/mail/CassandraMessageIdDAOTest.java  |   2 +-
 .../mail/CassandraMessageIdMapperTest.java         |   2 +-
 .../mail/CassandraMessageIdToImapUidDAOTest.java   |   2 +-
 .../cassandra/mail/CassandraMessageMapperTest.java |   2 +-
 .../MessageAttachmentRepresentationByIdTest.java   |  10 +-
 .../mail/eventsourcing/acl/ACLUpdatedDTOTest.java  |   2 +
 ...omputeMailboxCountersTaskSerializationTest.java |   4 +-
 .../SolveMailboxInconsistenciesServiceTest.java    |   5 +-
 ...essageInconsistenciesTaskSerializationTest.java |   8 +-
 .../mail/utils/FlagsUpdateStageResultTest.java     |   2 +-
 .../mailbox/cassandra/mail/utils/GuiceUtils.java   |   5 +-
 .../cassandra/search/AllSearchOverrideTest.java    |   2 +-
 .../search/DeletedSearchOverrideTest.java          |   4 +-
 .../search/DeletedWithRangeSearchOverrideTest.java |   4 +-
 .../NotDeletedWithRangeSearchOverrideTest.java     |   4 +-
 .../cassandra/search/UidSearchOverrideTest.java    |   2 +-
 .../cassandra/search/UnseenSearchOverrideTest.java |   2 +-
 mailbox/event/json/pom.xml                         |   4 +
 .../apache/james/event}/MailboxAggregateId.java    |  21 +-
 .../java/org/apache/james/event}/acl/ACLDTO.java   |   2 +-
 .../org/apache/james/event}/acl/ACLDiffDTO.java    |   3 +-
 .../org/apache/james/event}/acl/ACLUpdated.java    |   7 +-
 .../org/apache/james/event}/acl/ACLUpdatedDTO.java |  29 +-
 .../scala/org/apache/james/event/json/DTOs.scala   |   4 +-
 .../james/event/json/AddedSerializationTest.java   |   2 +-
 .../event/json/ExpungedSerializationTest.java      |   2 +-
 .../event/json/FlagsUpdatedSerializationTest.java  |   2 +-
 .../apache/james/event/json/dtos/FlagsTest.java    |   2 +-
 mailbox/jpa/pom.xml                                |  25 +-
 .../mailbox/jpa/mail/JPAAttachmentMapper.java      |  13 +-
 .../james/mailbox/jpa/mail/JPAMessageMapper.java   |   3 +-
 .../james/mailbox/jpa/mail/MessageUtils.java       |   2 +-
 .../mailbox/jpa/mail/model/JPAAttachment.java      |   4 +-
 .../model/openjpa/AbstractJPAMailboxMessage.java   |   9 +-
 .../model/openjpa/JPAEncryptedMailboxMessage.java  |   3 +-
 .../jpa/mail/model/openjpa/JPAMailboxMessage.java  |   3 +-
 .../JPAMailboxMessageWithAttachmentStorage.java    |   3 +-
 .../model/openjpa/JPAStreamingMailboxMessage.java  |   3 +-
 .../mailbox/jpa/openjpa/OpenJPAMessageFactory.java |   2 +-
 .../mailbox/jpa/openjpa/OpenJPAMessageManager.java |   4 +-
 .../mailbox/jpa/mail/JpaMessageMapperTest.java     |   2 +-
 .../james/mailbox/jpa/mail/MessageUtilsTest.java   |   2 +-
 .../jpa/mail/TransactionalMessageMapper.java       |   2 +-
 mailbox/lucene/pom.xml                             |   8 +-
 .../lucene/search/LuceneMessageSearchIndex.java    |   5 +-
 .../LuceneMailboxMessageSearchIndexTest.java       |   4 +-
 mailbox/memory/pom.xml                             |  10 +-
 .../mailbox/inmemory/InMemoryMessageManager.java   |   2 +-
 .../inmemory/mail/InMemoryAttachmentMapper.java    |  25 +-
 .../inmemory/mail/InMemoryMessageIdMapper.java     |   2 +-
 .../inmemory/mail/InMemoryMessageMapper.java       |   4 +-
 mailbox/opensearch/pom.xml                         |   8 +-
 .../apache/james/mailbox/opensearch/IndexBody.java |   8 +-
 .../opensearch/OpenSearchMailboxConfiguration.java |  37 +-
 .../DisabledListeningMessageSearchIndex.java       |   3 +-
 .../OpenSearchListeningMessageSearchIndex.java     |  20 +-
 .../mailbox/opensearch/json/HeaderCollection.java  |   3 +-
 .../mailbox/opensearch/json/IndexableMessage.java  |  17 +-
 .../opensearch/json/MessageToOpenSearchJson.java   |  17 +-
 .../mailbox/opensearch/json/MessageUpdateJson.java |   2 +-
 .../james/mailbox/opensearch/json/MimePart.java    |  14 +-
 .../mailbox/opensearch/json/MimePartParser.java    |  10 +-
 .../opensearch/query/CriterionConverter.java       |   2 +-
 .../opensearch/OpenSearchIntegrationTest.java      |  44 ++
 .../OpenSearchMailboxConfigurationTest.java        |  97 ++-
 .../OpenSearchNoIndexBodyIntegrationTest.java      | 197 +++++
 .../OpenSearchListeningMessageSearchIndexTest.java |  20 +-
 .../opensearch/json/HeaderCollectionTest.java      |  10 +
 .../opensearch/json/IndexableMessageTest.java      |   7 +-
 .../json/MessageToOpenSearchJsonTest.java          |  48 +-
 .../src/test/resources/eml/alternative.eml         |  45 ++
 .../src/test/resources/eml/alternative.json        |  48 ++
 .../src/test/resources/eml/alternative_simple.eml  |  22 +
 .../src/test/resources/eml/alternative_simple.json |  37 +
 .../deleted-messages-vault-cassandra/pom.xml       |   5 +
 .../DeletedMessageVaultDeletionCallback.java       |   9 -
 ...etedMessageWithStorageInformationConverter.java |   3 +-
 .../james/vault/dto/query/QueryTranslator.java     |   3 +-
 .../james/vault/DeletedMessageConverterTest.java   |   4 +-
 .../james/vault/DeletedMessageVaultHookTest.java   |   5 +-
 ...eletedMessageWithStorageInformationDTOTest.java |   2 +-
 mailbox/plugin/quota-mailing-cassandra/pom.xml     |   5 +
 .../james/mailbox/quota/cassandra/dto/DTOTest.java |   5 +-
 ...sandraQuotaMailingListenersIntegrationTest.java |   4 +-
 .../quota/mailing/events}/HistoryEvolutionDTO.java |  48 +-
 .../mailbox/quota/mailing/events}/QuotaDTO.java    |  28 +-
 .../mailing/events}/QuotaEventDTOModules.java      |   4 +-
 .../events}/QuotaThresholdChangedEventDTO.java     |  77 +-
 .../mailing/subscribers/QuotaThresholdMailer.java  |   2 +-
 mailbox/postgres/pom.xml                           |  14 +-
 .../mailbox/postgres/PostgresMessageManager.java   |   2 +-
 .../mailbox/postgres/mail/AttachmentLoader.java    |  86 --
 .../postgres/mail/PostgresAttachmentMapper.java    |   3 +-
 .../postgres/mail/PostgresAttachmentModule.java    |   2 +-
 .../postgres/mail/PostgresMailboxModule.java       |   5 +-
 .../postgres/mail/PostgresMessageIdMapper.java     |  41 +-
 .../postgres/mail/PostgresMessageMapper.java       |  43 +-
 .../postgres/mail/PostgresMessageRetriever.java    | 142 ++++
 .../postgres/mail/dao/PostgresAttachmentDAO.java   |   7 +-
 .../postgres/mail/dao/PostgresMailboxDAO.java      |  14 +-
 .../mail/dao/PostgresMailboxMessageDAO.java        |   3 +-
 .../mail/dao/PostgresMailboxMessageDAOUtils.java   |   2 +-
 .../mailbox/postgres/mail/dto/AttachmentsDTO.java  |   3 +-
 .../mail/eventsourcing/acl/ACLModule.java          |  11 +-
 .../postgres/search/DeletedSearchOverride.java     |   3 +-
 .../search/DeletedWithRangeSearchOverride.java     |   3 +-
 .../search/NotDeletedWithRangeSearchOverride.java  |   3 +-
 .../postgres/search/UnseenSearchOverride.java      |   3 +-
 ...stgresAnnotationMapperRowLevelSecurityTest.java |   4 +-
 .../PostgresAttachmentBlobReferenceSourceTest.java |   5 +-
 .../PostgresMailboxMapperRowLevelSecurityTest.java |   5 +-
 .../PostgresMessageBlobReferenceSourceTest.java    |   2 +-
 .../PostgresMessageMapperRowLevelSecurityTest.java |   6 +-
 .../postgres/search/AllSearchOverrideTest.java     |   2 +-
 .../postgres/search/DeletedSearchOverrideTest.java |   6 +-
 .../search/DeletedWithRangeSearchOverrideTest.java |   6 +-
 .../NotDeletedWithRangeSearchOverrideTest.java     |   4 +-
 .../postgres/search/SearchOverrideFixture.java     |   2 +-
 .../postgres/search/UidSearchOverrideTest.java     |   2 +-
 .../postgres/search/UnseenSearchOverrideTest.java  |   4 +-
 ...gresSubscriptionMapperRowLevelSecurityTest.java |   4 +-
 mailbox/store/pom.xml                              |   8 +-
 .../james/mailbox/store/FlagsUpdateCalculator.java |   2 +-
 .../apache/james/mailbox/store/MessageFactory.java |   2 +-
 .../james/mailbox/store/MessageResultImpl.java     |   2 +-
 .../apache/james/mailbox/store/MessageStorer.java  |  12 +-
 .../apache/james/mailbox/store/ResultUtils.java    |  33 +-
 .../james/mailbox/store/StoreMailboxManager.java   |  18 +-
 .../james/mailbox/store/StoreMessageIdManager.java |  17 +-
 .../james/mailbox/store/StoreMessageManager.java   |  16 +-
 .../mailbox/store/StoreMessageResultIterator.java  |   2 +-
 .../james/mailbox/store/StoreRightManager.java     |   3 +-
 .../mailbox/store/mail/AbstractMessageMapper.java  |   2 +-
 .../james/mailbox/store/mail/MessageIdMapper.java  |   2 +-
 .../james/mailbox/store/mail/MessageMapper.java    |   4 +-
 .../store/mail/model/DelegatingMailboxMessage.java |   2 +-
 .../mailbox/store/mail/model/FlagsFactory.java     |   2 +-
 .../mailbox/store/mail/model/FlagsFilter.java      |   2 +-
 .../mailbox/store/mail/model/MailboxMessage.java   |   2 +-
 .../mail/model/impl/FileBufferedBodyFactory.java   | 439 +++++++++++
 .../store/mail/model/impl/MessageParser.java       |  12 +-
 .../mail/model/impl/SimpleMailboxMessage.java      |   2 +-
 .../store/mail/utils/ApplicableFlagCalculator.java |   2 +-
 .../store/quota/ListeningCurrentQuotaUpdater.java  |  22 +-
 .../store/search/LazyMessageSearchIndex.java       |   2 +-
 .../store/search/ListeningMessageSearchIndex.java  |  23 +-
 .../mailbox/store/search/MessageSearches.java      |   2 +-
 .../store/AbstractCombinationManagerTest.java      |   7 +-
 .../AbstractMailboxManagerAttachmentTest.java      |   2 +-
 .../store/AbstractMessageIdManagerQuotaTest.java   |   2 +-
 .../AbstractMessageIdManagerSideEffectTest.java    |   4 +-
 .../store/AbstractMessageIdManagerStorageTest.java |   2 +-
 .../mailbox/store/FlagsUpdateCalculatorTest.java   |   2 +-
 .../apache/james/mailbox/store/MessageBuilder.java |   2 +-
 .../mailbox/store/MessageIdManagerTestSystem.java  |   2 +-
 .../james/mailbox/store/PreDeletionHooksTest.java  |   2 +-
 .../mailbox/store/StoreAttachmentManagerTest.java  |   4 +-
 .../StoreMailboxMessageResultIteratorTest.java     |   2 +-
 .../james/mailbox/store/StoreRightManagerTest.java |   2 +-
 .../store/ThreadIdGuessingAlgorithmContract.java   |   2 +-
 .../store/mail/model/AttachmentMapperTest.java     |  15 +-
 .../mailbox/store/mail/model/FlagsFactoryTest.java |   4 +-
 .../mailbox/store/mail/model/FlagsFilterTest.java  |   2 +-
 .../store/mail/model/ListMessageAssertTest.java    |   2 +-
 .../store/mail/model/MailboxMessageAssertTest.java |   2 +-
 .../mailbox/store/mail/model/MessageAssert.java    |   2 +-
 .../store/mail/model/MessageIdMapperTest.java      |   4 +-
 .../store/mail/model/MessageMapperTest.java        |   4 +-
 .../mailbox/store/mail/model/MessageMoveTest.java  |   2 +-
 .../model/MessageWithAttachmentMapperTest.java     |   2 +-
 .../store/mail/model/MetadataMapAssertTest.java    |   2 +-
 .../mail/model/impl/SimpleMailboxMessageTest.java  |   6 +-
 .../mail/utils/ApplicableFlagCalculatorTest.java   |   4 +-
 .../quota/ListeningCurrentQuotaUpdaterTest.java    |  40 +-
 .../search/AbstractMessageSearchIndexTest.java     |   2 +-
 .../ListeningMessageSearchIndexContract.java       |   2 +-
 .../mailbox/store/search/SearchUtilsTest.java      |   2 +-
 mailbox/store/src/test/resources/eml/htmlMail.json |   2 +-
 .../store/src/test/resources/eml/james-3901.json   |   9 +-
 .../src/test/resources/eml/pgpSignedMail.json      |   2 +-
 mailbox/store/src/test/resources/eml/spamMail.json |   2 +-
 .../src/test/resources/eml/spamMailNoHeaders.json  |   2 +-
 .../mailbox/tools/copier/MailboxCopierImpl.java    |   2 +-
 .../mailbox/tools/indexer/ReIndexerPerformer.java  |   3 +-
 ...rorRecoveryIndexationTaskSerializationTest.java |   7 +-
 .../FullReindexingTaskSerializationTest.java       |   7 +-
 ...ngleMailboxReindexingTaskSerializationTest.java |   7 +-
 .../UserReindexingTaskSerializationTest.java       |   8 +-
 .../RecomputeCurrentQuotasServiceContract.java     |   5 +-
 ...ecomputeCurrentQuotasTaskSerializationTest.java |   7 +-
 mailet/ai/pom.xml                                  |   8 +-
 .../apache/james/ai/classic/BayesianAnalysis.java  |   5 +-
 .../james/ai/classic/BayesianAnalysisFeeder.java   |  13 +-
 mailet/amqp/pom.xml                                |   8 +-
 .../mailets/AmqpForwardAttributeTest.java          |   2 +-
 mailet/api/pom.xml                                 |   4 +-
 .../main/java/org/apache/mailet/DsnParameters.java |   2 +-
 .../main/java/org/apache/mailet/HostAddress.java   |   4 +-
 .../api/src/main/java/org/apache/mailet/Mail.java  |   6 +-
 .../main/java/org/apache/mailet/MailAddress.java   |   4 +-
 .../src/main/java/org/apache/mailet/Mailet.java    |   2 +-
 .../main/java/org/apache/mailet/MailetContext.java |   4 +-
 .../java/org/apache/mailet/MailetException.java    |   2 +-
 .../src/main/java/org/apache/mailet/Matcher.java   |   2 +-
 .../java/org/apache/mailet/StorageDirective.java   |   2 +-
 mailet/base/pom.xml                                |   8 +-
 .../appended-resources/supplemental-models.xml     |  28 +-
 .../mailet/base/AutomaticallySentMailDetector.java |   2 +-
 .../java/org/apache/mailet/base/Converter7Bit.java |   8 +-
 .../org/apache/mailet/base/FlowedMessageUtils.java |   6 +-
 .../java/org/apache/mailet/base/GenericMailet.java |   6 +-
 .../org/apache/mailet/base/GenericMatcher.java     |   4 +-
 .../mailet/base/GenericRecipientMatcher.java       |   2 +-
 .../java/org/apache/mailet/base/MailetUtil.java    |   2 +-
 .../org/apache/mailet/base/MatcherInverter.java    |   2 +-
 .../org/apache/mailet/base/Converter7BitTest.java  |   6 +-
 .../org/apache/mailet/base/GenericMailetTest.java  |   2 +-
 .../org/apache/mailet/base/MailetUtilTest.java     |   2 +-
 .../apache/mailet/base/MatcherInverterTest.java    |   2 +-
 mailet/crypto/pom.xml                              |  10 +-
 .../appended-resources/supplemental-models.xml     |  47 +-
 .../java/org/apache/james/transport/InitJCE.java   |   4 +-
 .../java/org/apache/james/transport/KeyHolder.java |   6 +-
 .../org/apache/james/transport/KeyStoreHolder.java |   2 +-
 .../org/apache/james/transport/SMIMEKeyHolder.java |   6 +-
 .../james/transport/mailets/AbstractSign.java      |  19 +-
 .../transport/mailets/SMIMECheckSignature.java     |  10 +-
 .../james/transport/mailets/SMIMEDecrypt.java      |   6 +-
 .../apache/james/transport/mailets/SMIMESign.java  |   8 +-
 .../org/apache/james/transport/mailets/Sign.java   |   8 +-
 .../james/transport/matcher/IsSMIMEEncrypted.java  |   4 +-
 .../james/transport/matcher/IsSMIMESigned.java     |   4 +-
 .../matcher/IsX509CertificateSubject.java          |   2 +-
 .../james/transport/mailets/ICALToHeader.java      |   4 +-
 .../transport/mailets/ICALToJsonAttribute.java     |  10 +-
 .../james/transport/mailets/ICSSanitizer.java      |  14 +-
 .../james/transport/mailets/ICalendarParser.java   |  14 +-
 .../james/transport/mailets/ICALToHeadersTest.java |   2 +-
 .../transport/mailets/ICALToJsonAttributeTest.java |   2 +-
 .../james/transport/mailets/ICSSanitizerTest.java  |   4 +-
 .../transport/mailets/ICalendarParserTest.java     |   2 +-
 .../mailet/constructor/ConstructorMailet.java      |   2 +-
 .../excluded/ExcludedFromDocumentationMailet.java  |   2 +-
 .../NotExcludedFromDocumentationMailet.java        |   2 +-
 .../mailet/experimental/ExperimentalMailet.java    |   2 +-
 .../mailet/experimental/NonExperimentalMailet.java |   2 +-
 mailet/standard/LICENSE.txt                        |   8 +-
 mailet/standard/pom.xml                            |   8 +-
 .../appended-resources/supplemental-models.xml     |  28 +-
 .../transport/mailets/AddDeliveredToHeader.java    |   2 +-
 .../apache/james/transport/mailets/AddFooter.java  |  10 +-
 .../transport/mailets/AddHabeasWarrantMark.java    |   6 +-
 .../james/transport/mailets/AddSubjectPrefix.java  |   4 +-
 .../james/transport/mailets/ClassifyBounce.java    |  10 +-
 .../james/transport/mailets/ContactExtractor.java  |  12 +-
 .../james/transport/mailets/ContentReplacer.java   |   6 +-
 .../apache/james/transport/mailets/Expires.java    |   5 +-
 .../james/transport/mailets/HeadersToHTTP.java     |   4 +-
 .../apache/james/transport/mailets/LogMessage.java |   4 +-
 .../mailets/MailAttributesListToMimeHeaders.java   |   4 +-
 .../mailets/MailAttributesToMimeHeaders.java       |   4 +-
 .../transport/mailets/MimeDecodingMailet.java      |   4 +-
 .../apache/james/transport/mailets/OnlyText.java   |  10 +-
 .../james/transport/mailets/PostmasterAlias.java   |   2 +-
 .../james/transport/mailets/PropagateError.java    |   2 +-
 .../transport/mailets/RecipientToLowerCase.java    |   4 +-
 .../james/transport/mailets/RecoverAttachment.java |   8 +-
 .../transport/mailets/RemoveAllMailAttributes.java |   2 +-
 .../transport/mailets/RemoveMailAttribute.java     |   2 +-
 .../james/transport/mailets/RemoveMimeHeader.java  |   4 +-
 .../mailets/RemoveMimeHeaderByPrefix.java          |   4 +-
 .../james/transport/mailets/SerialiseToHTTP.java   |   4 +-
 .../apache/james/transport/mailets/ServerTime.java |   9 +-
 .../james/transport/mailets/SetErrorMessage.java   |   2 +-
 .../james/transport/mailets/SetMailAttribute.java  |   2 +-
 .../james/transport/mailets/SetMimeHeader.java     |   4 +-
 .../james/transport/mailets/StripAttachment.java   |  59 +-
 .../james/transport/mailets/ToProcessor.java       |   2 +-
 .../apache/james/transport/mailets/UnwrapText.java |   2 +-
 .../transport/mailets/UseHeaderRecipients.java     |   8 +-
 .../apache/james/transport/mailets/WrapText.java   |   2 +-
 .../transport/mailets/debug/DumpSystemErr.java     |   4 +-
 .../mailets/debug/ExceptionThrowingMailet.java     |   2 +-
 .../mailets/utils/MimeMessageModifier.java         |   4 +-
 .../transport/mailets/utils/MimeMessageUtils.java  |   6 +-
 .../apache/james/transport/matchers/AtMost.java    |   2 +-
 .../transport/matchers/AttachmentFileNameIs.java   |  26 +-
 .../transport/matchers/CommandForListserv.java     |   2 +-
 .../transport/matchers/CommandListservMatcher.java |   2 +-
 .../matchers/CompareNumericHeaderValue.java        |   4 +-
 .../james/transport/matchers/FetchedFrom.java      |   4 +-
 .../james/transport/matchers/FileRegexMatcher.java |   2 +-
 .../transport/matchers/GenericRegexMatcher.java    |   4 +-
 .../james/transport/matchers/HasAttachment.java    |   8 +-
 .../james/transport/matchers/HasException.java     |   2 +-
 .../transport/matchers/HasHabeasWarrantMark.java   |   4 +-
 .../apache/james/transport/matchers/HasHeader.java |   4 +-
 .../transport/matchers/HasHeaderWithPrefix.java    |   4 +-
 .../james/transport/matchers/HasMailAttribute.java |   2 +-
 .../matchers/HasMailAttributeWithValue.java        |   2 +-
 .../matchers/HasMailAttributeWithValueRegex.java   |   2 +-
 .../james/transport/matchers/HasMimeType.java      |   6 +-
 .../transport/matchers/HasMimeTypeAnySubPart.java  |   6 +-
 .../transport/matchers/HasMimeTypeParameter.java   |   8 +-
 .../james/transport/matchers/HostIsLocal.java      |   2 +-
 .../transport/matchers/IsFromMailingList.java      |   3 +-
 .../james/transport/matchers/NESSpamCheck.java     |   2 +-
 .../james/transport/matchers/RecipientIs.java      |   4 +-
 .../james/transport/matchers/RecipientIsLocal.java |   2 +-
 .../james/transport/matchers/RecipientIsRegex.java |   4 +-
 .../james/transport/matchers/RelayLimit.java       |   8 +-
 .../james/transport/matchers/SMTPAuthUserIs.java   |   4 +-
 .../james/transport/matchers/SenderDomainIs.java   |   2 +-
 .../apache/james/transport/matchers/SenderIs.java  |   4 +-
 .../james/transport/matchers/SenderIsRegex.java    |   2 +-
 .../james/transport/matchers/SizeGreaterThan.java  |   2 +-
 .../apache/james/transport/matchers/SubjectIs.java |   5 +-
 .../transport/matchers/SubjectStartsWith.java      |   4 +-
 .../james/transport/matchers/TooManyLines.java     |   2 +-
 .../transport/matchers/TooManyRecipients.java      |   2 +-
 .../apache/james/transport/matchers/UserIs.java    |   2 +-
 .../utils/MailAddressCollectionReader.java         |   2 +-
 .../james/transport/mailets/AddFooterTest.java     |   2 +-
 .../transport/mailets/AddSubjectPrefixTest.java    |   4 +-
 .../transport/mailets/ContactExtractorTest.java    |   4 +-
 .../transport/mailets/ContentReplacerTest.java     |   2 +-
 .../james/transport/mailets/ExpiresTest.java       |   4 +-
 .../james/transport/mailets/HeadersToHTTPTest.java |   2 +-
 .../james/transport/mailets/LogMessageTest.java    |   4 +-
 .../MailAttributesListToMimeHeadersTest.java       |   2 +-
 .../mailets/MailAttributesToMimeHeadersTest.java   |   2 +-
 .../transport/mailets/MappingArgumentTest.java     |   2 +-
 .../transport/mailets/MimeDecodingMailetTest.java  |   2 +-
 .../apache/james/transport/mailets/NullTest.java   |   2 +-
 .../james/transport/mailets/OnlyTextTest.java      |  10 +-
 .../transport/mailets/PropagateErrorTest.java      |   2 +-
 .../mailets/RemoveAllMailAttributesTest.java       |   2 +-
 .../transport/mailets/RemoveMailAttributeTest.java |   2 +-
 .../mailets/RemoveMimeHeaderByPrefixTest.java      |   2 +-
 .../transport/mailets/RemoveMimeHeaderTest.java    |   2 +-
 .../transport/mailets/ReplaceContentTest.java      |   4 +-
 .../transport/mailets/SerialiseToHTTPTest.java     |   2 +-
 .../transport/mailets/SetMailAttributeTest.java    |   2 +-
 .../james/transport/mailets/SetMimeHeaderTest.java |   4 +-
 .../transport/mailets/StripAttachmentTest.java     | 145 +++-
 .../james/transport/mailets/ToProcessorTest.java   |   2 +-
 .../mailets/utils/MimeMessageModifierTest.java     |   2 +-
 .../mailets/utils/MimeMessageUtilsTest.java        |   4 +-
 .../matchers/AbstractHasMailAttributeTest.java     |   2 +-
 .../apache/james/transport/matchers/AllTest.java   |   2 +-
 .../james/transport/matchers/AtMostTest.java       |   2 +-
 .../matchers/AttachmentFileNameIsTest.java         | 586 ++++++++++++++
 .../james/transport/matchers/FetchedFromTest.java  |   2 +-
 .../transport/matchers/HasAttachmentTest.java      |   6 +-
 .../james/transport/matchers/HasExceptionTest.java |  18 +-
 .../james/transport/matchers/HasHeaderTest.java    |   4 +-
 .../matchers/HasHeaderWithPrefixTest.java          |   2 +-
 .../HasMailAttributeWithValueRegexTest.java        |   2 +-
 .../matchers/HasMailAttributeWithValueTest.java    |   2 +-
 .../matchers/HasMimeTypeAnySubPartTest.java        |   2 +-
 .../matchers/HasMimeTypeParameterTest.java         |   2 +-
 .../james/transport/matchers/HasMimeTypeTest.java  |   2 +-
 .../james/transport/matchers/HostIsLocalTest.java  |   2 +-
 .../james/transport/matchers/HostIsTest.java       |   2 +-
 .../transport/matchers/IsFromMailingListTest.java  |   2 +-
 .../transport/matchers/IsSingleRecipientTest.java  |   2 +-
 .../james/transport/matchers/NESSpamCheckTest.java |   2 +-
 .../transport/matchers/RecipientDomainIsTest.java  |   2 +-
 .../transport/matchers/RecipientIsRegexTest.java   |   2 +-
 .../james/transport/matchers/RecipientIsTest.java  |   2 +-
 .../james/transport/matchers/RelayLimitTest.java   |   4 +-
 .../transport/matchers/SMTPAuthUserIsTest.java     |   2 +-
 .../transport/matchers/SenderHostIsLocalTest.java  |   2 +-
 .../james/transport/matchers/SenderHostIsTest.java |   2 +-
 .../transport/matchers/SenderIsLocalTest.java      |   2 +-
 .../transport/matchers/SenderIsRegexTest.java      |   2 +-
 .../james/transport/matchers/SenderIsTest.java     |   2 +-
 .../transport/matchers/SizeGreaterThanTest.java    |   2 +-
 .../james/transport/matchers/SubjectIsTest.java    |   4 +-
 .../transport/matchers/SubjectStartsWithTest.java  |   4 +-
 .../james/transport/matchers/TooManyLinesTest.java |   2 +-
 .../transport/matchers/TooManyRecipientsTest.java  |   2 +-
 .../james/transport/matchers/UserIsTest.java       |   2 +-
 mailet/standard/src/test/resources/mime/space.eml  |  24 +
 mailet/standard/src/test/resources/nested.zip      | Bin 0 -> 613 bytes
 mailet/standard/src/test/resources/sonde.zip       | Bin 0 -> 487 bytes
 mailet/test/pom.xml                                |   4 +-
 .../org/apache/mailet/base/MailAddressFixture.java |   2 +-
 .../java/org/apache/mailet/base/test/FakeMail.java |  10 +-
 .../apache/mailet/base/test/FakeMailContext.java   |   6 +-
 .../java/org/apache/mailet/base/test/MailUtil.java |   4 +-
 .../org/apache/mailet/base/test/FakeMailTest.java  |   4 +-
 mdn/pom.xml                                        |  16 +-
 mdn/src/main/java/org/apache/james/mdn/MDN.java    |  81 +-
 .../test/java/org/apache/james/mdn/MDNTest.java    |  90 ++-
 mpt/core/pom.xml                                   |  26 +-
 mpt/impl/imap-mailbox/cassandra/pom.xml            |   5 +
 .../imap/scripts/FetchMultipartBodyStructure.test  |   2 +-
 .../james/imap/scripts/FetchRFC822Header.test      |  52 ++
 .../imap/scripts/FetchSimpleBodyStructure.test     |   2 +-
 .../james/imap/scripts/FetchStructureComplex.test  |   8 +-
 .../james/imap/scripts/FetchStructureEmbedded.test |   2 +-
 .../org/apache/james/imap/scripts/Quota.test       |   5 +-
 .../james/imap/scripts/UidSearchAtomsIndexer.test  |   8 +-
 .../SelectThenFetchWithExistingMessages.test       |   2 +-
 mpt/impl/managesieve/cassandra/pom.xml             |   5 +
 .../smtp/cassandra-rabbitmq-object-storage/pom.xml |   5 +
 mpt/impl/smtp/cassandra/pom.xml                    |   5 +
 pom.xml                                            | 234 ++++--
 protocols/imap/pom.xml                             |   8 +-
 .../org/apache/james/imap/api/ConnectionCheck.java |  10 +-
 .../james/imap/api/ConnectionCheckFactory.java     |  13 +-
 .../imap/api/DefaultConnectionCheckFactory.java    |  23 +-
 .../apache/james/imap/api/ImapConfiguration.java   |  24 +-
 .../james/imap/api/display/HumanReadableText.java  |   2 +-
 .../james/imap/api/message/MessageFlags.java       |   4 +-
 .../imap/api/message/response/StatusResponse.java  |   2 +-
 .../apache/james/imap/api/process/ImapSession.java |  17 +
 .../james/imap/api/process/SelectedMailbox.java    |   2 +-
 .../org/apache/james/imap/decode/DecoderUtils.java |   2 +-
 .../james/imap/decode/ImapRequestLineReader.java   |   2 +-
 .../james/imap/decode/main/DefaultImapDecoder.java |   9 +-
 .../imap/decode/parser/AppendCommandParser.java    |   3 +-
 .../imap/decode/parser/ReplaceCommandParser.java   |   2 +-
 .../imap/decode/parser/StoreCommandParser.java     |   3 +-
 .../james/imap/encode/FetchResponseEncoder.java    |   4 +-
 .../james/imap/encode/FlagsResponseEncoder.java    |   2 +-
 .../james/imap/encode/ImapResponseComposer.java    |   2 +-
 .../imap/encode/base/ImapResponseComposerImpl.java |   2 +-
 .../james/imap/message/request/AppendRequest.java  |   2 +-
 .../james/imap/message/request/ReplaceRequest.java |   2 +-
 .../james/imap/message/request/StoreRequest.java   |   2 +-
 .../james/imap/message/response/FetchResponse.java |   2 +-
 .../james/imap/message/response/FlagsResponse.java |   2 +-
 .../imap/processor/AbstractMailboxProcessor.java   |   7 +-
 .../processor/AbstractMessageRangeProcessor.java   |  11 +
 .../imap/processor/AbstractSelectionProcessor.java |   2 +-
 .../james/imap/processor/AppendProcessor.java      |   5 +-
 .../james/imap/processor/ReplaceProcessor.java     |   2 +-
 .../james/imap/processor/SearchProcessor.java      |   3 +-
 .../james/imap/processor/StatusProcessor.java      |   3 +-
 .../james/imap/processor/StoreProcessor.java       |   3 +-
 .../imap/processor/base/SelectedMailboxImpl.java   |  77 +-
 .../james/imap/processor/base/UidMsnConverter.java |  13 +-
 .../imap/processor/fetch/EnvelopeBuilder.java      |   2 +-
 .../james/imap/processor/fetch/FetchProcessor.java |  91 ++-
 .../imap/processor/fetch/FetchResponseBuilder.java |   2 +-
 .../apache/james/imap/decode/DecoderUtilsTest.java |   2 +-
 .../imap/decode/parser/StoreCommandParserTest.java |   2 +-
 .../FetchResponseEncoderNoExtensionsTest.java      |   2 +-
 .../imap/encode/FetchResponseEncoderTest.java      |   2 +-
 .../james/imap/processor/SearchProcessorTest.java  |   4 +-
 .../james/imap/processor/SelectProcessorTest.java  |   4 +-
 .../processor/base/MailboxEventAnalyserTest.java   |  41 +-
 .../processor/base/SelectedMailboxImplTest.java    |  22 +-
 .../netty/BasicChannelInboundHandler.java          |  22 +-
 .../apache/james/protocols/netty/NettyServer.java  |   2 +
 protocols/smtp/pom.xml                             |   8 +-
 .../apache/james/protocols/smtp/MailAddress.java   |   4 +-
 .../james/protocols/smtp/SMTPSessionImpl.java      |  15 +-
 .../james/protocols/smtp/core/HeloCmdHandler.java  |  29 +
 .../james/protocols/smtp/core/MailCmdHandler.java  |   3 +-
 .../james/protocols/smtp/core/RcptCmdHandler.java  |  16 +-
 .../smtp/core/ReceivedDataLineFilter.java          |  10 +-
 .../protocols/smtp/core/esmtp/AuthCmdHandler.java  |  85 +-
 .../protocols/smtp/core/esmtp/EhloCmdHandler.java  |  31 +-
 .../smtp/core/esmtp/MailSizeEsmtpExtension.java    |   8 +-
 .../core/fastfail/AbstractValidRcptHandler.java    |   8 +-
 .../protocols/smtp/core/log/HookResultLogger.java  |   6 +-
 .../smtp/netty/NettyStartTlsSMTPServerTest.java    |  11 +-
 server/README.crypto                               |   2 +-
 server/apps/cassandra-app/README.adoc              |   2 +-
 server/apps/cassandra-app/pom.xml                  |   7 +-
 .../sample-configuration/jvm.properties            |   6 +-
 .../src/assemble/license-for-binary.txt            |   4 +-
 .../apps/cli/src/assemble/license-for-binary.txt   |   4 +-
 server/apps/distributed-app/README.adoc            |  91 +--
 server/apps/distributed-app/docs/antora.yml        |   2 +-
 .../modules/ROOT/pages/configure/blobstore.adoc    |  26 +
 .../docs/modules/ROOT/pages/configure/imap.adoc    |   2 +
 .../docs/modules/ROOT/pages/configure/jmap.adoc    |   9 +
 .../modules/ROOT/pages/configure/opensearch.adoc   |   3 +
 .../modules/ROOT/pages/configure/rabbitmq.adoc     |  19 +
 .../docs/modules/ROOT/pages/extending/imap.adoc    |  23 +-
 .../docs/modules/ROOT/pages/operate/security.adoc  |  35 +
 .../docs/modules/ROOT/pages/operate/webadmin.adoc  |   2 +-
 .../docs/modules/ROOT/pages/run/k8s-values.adoc    |   2 +-
 .../docs/modules/ROOT/pages/run/run-docker.adoc    |   4 +-
 .../ROOT/partials/RecipientRewriteTable.adoc       |   5 +-
 .../docs/modules/ROOT/partials/RemoteDelivery.adoc |   4 +-
 server/apps/distributed-app/pom.xml                |   7 +-
 .../sample-configuration/jvm.properties            |  19 +
 .../src/assemble/license-for-binary.txt            |   4 +-
 .../org/apache/james/CassandraCacheQueryTest.java  |   4 +-
 server/apps/distributed-pop3-app/README.adoc       |   2 +-
 server/apps/distributed-pop3-app/pom.xml           |   7 +-
 server/apps/jpa-app/README.adoc                    |   4 +-
 server/apps/jpa-app/pom.xml                        |   6 +-
 .../jpa-app/src/assemble/license-for-binary.txt    |   4 +-
 .../java/org/apache/james/JPAJamesServerMain.java  |   4 +-
 server/apps/jpa-smtp-app/README.adoc               |   6 +-
 server/apps/jpa-smtp-app/pom.xml                   |   7 +-
 .../src/assemble/license-for-binary.txt            |   4 +-
 .../java/org/apache/james/JPAJamesServerMain.java  |   4 +-
 server/apps/memory-app/pom.xml                     |   6 +-
 .../memory-app/sample-configuration/jvm.properties |   5 +-
 .../memory-app/src/assemble/license-for-binary.txt |   4 +-
 .../org/apache/james/MemoryJamesServerMain.java    |   4 +-
 .../java/org/apache/james/LmtpIntegrationTest.java |   4 +-
 .../sample-configuration/postgres.properties       |   5 +-
 .../org/apache/james/PostgresJamesServerMain.java  |  78 +-
 .../java/org/apache/james/PostgresJmapModule.java  |   9 +
 server/apps/scaling-pulsar-smtp/pom.xml            |  13 +-
 .../src/main/java/org/apache/james/Main.java       |  75 +-
 server/apps/spring-app/README.crypto               |   2 +-
 server/apps/spring-app/pom.xml                     |  94 +--
 .../appended-resources/supplemental-models.xml     |   4 +-
 .../src/main/licensing/app/license-for-binary.txt  |   4 +-
 .../src/main/licensing/app/licensing.xml           |  15 +-
 .../src/main/licensing/app/notice-for-binary.txt   |   3 +-
 .../apps/spring-app/src/main/licensing/war/LICENSE |   4 +-
 .../apps/spring-app/src/main/licensing/war/NOTICE  |   3 +-
 .../src/main/licensing/war/licensing.xml           |  15 +-
 server/blob/blob-aes/pom.xml                       |   4 +
 .../org/apache/james/blob/aes/AESBlobStoreDAO.java | 114 ++-
 .../org/apache/james/blob/api/BlobStoreDAO.java    |  26 +
 server/blob/blob-cassandra/pom.xml                 |   5 +
 .../blob/cassandra/cache/CachedBlobStoreTest.java  |   2 +-
 .../main/java/org/apache/james/blob/api/Store.java |  10 +-
 .../file/LocalFileBlobExportMechanismTest.java     |   4 +-
 .../apache/james/blob/file/FileBlobStoreDAO.java   |  63 +-
 server/blob/blob-postgres/pom.xml                  |  20 -
 server/blob/blob-s3/pom.xml                        |   4 +
 .../aws/S3BlobStoreConfiguration.java              |  34 +-
 .../blob/objectstorage/aws/S3BlobStoreDAO.java     |  14 +-
 .../blob/objectstorage/aws/S3BlobStoreDAOTest.java |   5 +
 .../james/blob/objectstorage/aws/S3MinioTest.java  |  10 +-
 .../deduplication/DeDuplicationBlobStore.scala     |   1 +
 .../BlobGCTaskAdditionalInformationDTOTest.java    |   4 +-
 .../deduplication/BlobGCTaskSerializationTest.java |   5 +-
 .../apache/james/blob/mail/MimeMessageStore.java   |   5 +-
 .../james/blob/mail/MimeMessageStoreTest.java      |   2 +-
 server/container/core/pom.xml                      |  13 +-
 .../james/server/core/ContentTypeCleaner.java      |   4 +-
 .../org/apache/james/server/core/Envelope.java     |   2 +-
 .../server/core/InternetHeadersInputStream.java    |   2 +-
 .../org/apache/james/server/core/MailHeaders.java  |   4 +-
 .../org/apache/james/server/core/MailImpl.java     |  12 +-
 .../james/server/core/MimeMessageInputStream.java  |   4 +-
 .../server/core/MimeMessageInputStreamSource.java  |   8 +-
 .../apache/james/server/core/MimeMessageUtil.java  |  10 +-
 .../james/server/core/MimeMessageWrapper.java      |  14 +-
 .../james/server/core/ContentTypeCleanerTest.java  |   8 +
 .../apache/james/server/core/MailHeadersTest.java  |   2 +-
 .../org/apache/james/server/core/MailImplTest.java |   4 +-
 .../core/MimeMessageFromMimeMessageTest.java       |   2 +-
 .../core/MimeMessageFromSharedStreamTest.java      |   2 +-
 .../server/core/MimeMessageFromStreamTest.java     |   4 +-
 .../core/MimeMessageInputStreamSourceTest.java     |   2 +-
 .../apache/james/server/core/MimeMessageTest.java  |  12 +-
 .../james/server/core/MimeMessageUtilTest.java     |   6 +-
 .../james/server/core/MimeMessageWrapperTest.java  |  26 +-
 .../james/healthcheck/MailReceptionCheck.java      |  82 +-
 .../S3BlobStoreConfigurationReader.java            |  16 +
 .../mailbox/CassandraCacheSessionModule.java       |  11 +-
 .../modules/mailbox/CassandraMailboxModule.java    |   3 +
 .../mailbox/CassandraQuotaMailingModule.java       |   2 +-
 .../apache/james/MailsShouldBeWellReceived.java    |  12 +-
 .../james/utils/FileConfigurationProviderTest.java |  11 +-
 .../guice/common/src/test/resources/test.xml       |   1 +
 server/container/guice/configuration/pom.xml       |   4 +-
 .../james/modules/plugins/QuotaMailingModule.java} |  11 +-
 .../james/modules/data/JPAEntityManagerModule.java |  11 +-
 .../james/modules/mailbox/JPAMailboxModule.java    |   3 +
 .../modules/mailbox/PostgresMailboxModule.java     |  14 +
 .../org/apache/james/modules/MailboxProbeImpl.java |   3 +-
 .../org/apache/james/utils/GuiceMailetLoader.java  |   2 +-
 .../org/apache/james/utils/GuiceMatcherLoader.java |   2 +-
 .../apache/james/utils/GuiceMailetLoaderTest.java  |   2 +-
 .../apache/james/utils/GuiceMatcherLoaderTest.java |   2 +-
 .../org/apache/james/FakeMessageSearchIndex.java   |   2 +-
 .../james/modules/mailbox/MemoryMailboxModule.java |   3 +
 .../java/org/apache/james/SearchModuleChooser.java |   2 +-
 server/container/guice/postgres-common/pom.xml     |   4 +
 .../james/modules/data/PostgresCommonModule.java   |   7 +-
 .../data/PostgresDLPConfigurationStoreModule.java  |   9 +
 .../modules/data/PostgresEventStoreModule.java     |   9 -
 .../modules/task/DistributedTaskManagerModule.java | 109 +++
 ...TaskExecutionDetailsProjectionGuiceModule.java} |  21 +-
 .../protocols/ConnectionCheckFactoryImpl.java      |  50 +-
 .../james/modules/protocols/IMAPServerModule.java  |   7 +-
 .../james/modules/protocols/ImapGuiceProbe.java    |   2 +-
 .../org/apache/james/jmap/draft/JMAPModule.java    |   2 +-
 .../apache/james/jmap/draft/MessageIdProbe.java    |   3 +-
 .../james/jmap/rfc8621/RFC8621MethodsModule.java   |   4 +-
 .../apache/james/jmap/draft/JMAPModuleTest.java    |  42 +-
 .../james/modules/protocols/Pop3GuiceProbe.java    |  11 +
 .../apache/james/modules/protocols/JSPFModule.java |   3 +-
 .../queue/pulsar/module/PulsarQueueModule.java     |   3 +-
 .../java/com/custom/mailets/AnotherMailet.java     |   2 +-
 .../java/com/custom/matchers/AnotherMatcher.java   |   2 +-
 .../james/transport/mailets/CustomMailet.java      |   2 +-
 ...tomMailetWithCustomDependencyInConstructor.java |   2 +-
 .../CustomMailetWithCustomDependencyInService.java |   2 +-
 .../james/transport/mailets/MyGenericMailet.java   |   3 +-
 .../james/transport/matchers/CustomMatcher.java    |   2 +-
 .../org/apache/james/lifecycle/api/Disposable.java |   2 +-
 .../apache/james/lifecycle/api/LeakAwareTest.java  |  33 +-
 .../adapter/mailbox/MailboxCopierManagement.java   |   4 +
 .../adapter/mailbox/MailboxManagerManagement.java  |   3 +
 server/container/spring/pom.xml                    |   8 +-
 .../appended-resources/supplemental-models.xml     |   4 +-
 .../mailetcontainer/MailetLoaderBeanFactory.java   |   2 +-
 .../mailetcontainer/MatcherLoaderBeanFactory.java  |   2 +-
 server/container/util/pom.xml                      |   8 +-
 .../java/org/apache/james/util/AuditTrail.java     |  20 +-
 .../org/apache/james/util/ClassLoaderUtils.java    |   2 +-
 .../org/apache/james/util/MimeMessageUtil.java     |   6 +-
 .../java/org/apache/james/util/ReactorUtils.java   |   1 +
 .../james/util/mime/MessageContentExtractor.java   |   4 +-
 .../java/org/apache/james/util/AuditTrailTest.java |   3 +-
 .../util/mime/MessageContentExtractorTest.java     |   2 +-
 .../java/org/apache/james/rrt/lib/Mapping.java     |   2 +-
 .../org/apache/james/rrt/lib/MappingSource.java    |   2 +-
 .../org/apache/james/rrt/lib/UserRewritter.java    |   2 +-
 .../org/apache/james/vacation/api/AccountId.java   |   2 +-
 .../vacation/api/NotificationRegistryContract.java |  27 +
 .../vacation/api/VacationRepositoryContract.java   |  23 +
 server/data/data-cassandra/pom.xml                 |  17 +-
 .../cassandra/CassandraNotificationRegistry.java   |  12 +-
 .../james/rrt/cassandra/CassandraStepdefs.java     |   4 +-
 .../james/rrt/cassandra/RewriteTablesTest.java     |  17 +-
 .../CassandraNotificationRegistryTest.java         |  15 +
 server/data/data-file/pom.xml                      |  15 +-
 .../mailrepository/file/FileMailRepository.java    |   5 +-
 .../apache/james/rrt/file/RewriteTablesTest.java   |  20 +-
 .../org/apache/james/rrt/file/XMLStepdefs.java     |   2 +-
 server/data/data-jmap-cassandra/pom.xml            |   5 +
 .../upload/CassandraUploadUsageRepository.java     |   5 +-
 .../identity/CassandraCustomIdentityDAO.scala      |   2 +-
 .../james/jmap/cassandra/filtering/DTOTest.java    |  28 +-
 .../upload/CassandraUploadRepositoryTest.java      |   9 +-
 .../identity/PostgresCustomIdentityDAO.java        |   4 +-
 .../jmap/postgres/upload/PostgresUploadDAO.java    |  23 +-
 .../postgres/upload/PostgresUploadRepository.java  |   3 +-
 .../apache/james/jmap/api/change/EmailChange.java  |  20 +
 .../apache/james/jmap/api/change/JmapChange.java   |  19 +
 .../jmap/api/change/MailboxAndEmailChange.java     | 193 +++--
 .../james/jmap/api/change/MailboxChange.java       |  38 +-
 .../org/apache/james/jmap/api/model/Preview.java   |   2 +
 .../AvoidBinaryBodyBufferingBodyFactory.java       | 273 +++++++
 .../mime4j/AvoidBinaryBodyReadingBodyFactory.java  | 270 +++++++
 .../apache/james/jmap/mime4j/FakeBinaryBody.java   |  42 +-
 .../org/apache/james/jmap/mime4j/SizeUtils.java    | 152 ++++
 .../jmap/api/identity/CustomIdentityDAO.scala      |  39 +-
 .../memory/identity/MemoryCustomIdentityDAO.scala  |   2 +-
 .../jmap/api/upload/UploadRepositoryContract.scala |  27 +-
 .../api/upload/UploadUsageRepositoryContract.scala |  24 +-
 .../api/identity/CustomIdentityDAOContract.scala   |   6 +-
 .../jmap/api/identity/IdentityRepositoryTest.scala |   6 +-
 server/data/data-jpa/pom.xml                       |  16 +-
 .../mailrepository/jpa/JPAMailRepository.java      |   7 +-
 .../java/org/apache/james/rrt/jpa/JPAStepdefs.java |   5 +-
 .../apache/james/rrt/jpa/RewriteTablesTest.java    |  17 +-
 .../user/ldap/LdapRepositoryConfiguration.java     |  25 +-
 .../apache/james/user/ldap/ReadOnlyLDAPUser.java   |   6 +
 .../james/user/ldap/ReadOnlyLDAPUsersDAO.java      |  25 +-
 server/data/data-library/pom.xml                   |  13 +-
 .../rrt/lib/AbstractRecipientRewriteTable.java     |  16 +-
 .../org/apache/james/user/lib/model/Algorithm.java |   5 +-
 .../rrt/lib/RecipientRewriteTableContract.java     |   5 +
 .../james/rrt/lib/RewriteTablesStepdefs.java       |  83 +-
 server/data/data-memory/pom.xml                    |  12 +-
 .../apache/james/rrt/memory/InMemoryStepdefs.java  |   2 +-
 .../apache/james/rrt/memory/RewriteTablesTest.java |  17 +-
 server/data/data-postgres/pom.xml                  |   7 +-
 .../postgres/PostgresMailRepository.java           |   3 +-
 .../postgres/PostgresMailRepositoryContentDAO.java |   5 +-
 .../sieve/postgres/PostgresSieveRepository.java    |   2 +-
 .../sieve/postgres/PostgresSieveScriptDAO.java     |   4 +-
 .../james/user/postgres/PostgresUserModule.java    |   5 +-
 .../james/user/postgres/PostgresUsersDAO.java      |  17 +-
 .../vacation/postgres/PostgresVacationModule.java  |   4 +-
 ...tgresMailRepositoryBlobReferenceSourceTest.java |   2 +-
 .../james/rrt/postgres/PostgresStepdefs.java       |   4 +-
 .../james/rrt/postgres/RewriteTablesTest.java      |  17 +-
 .../user/postgres/PostgresUsersRepositoryTest.java |  33 +-
 server/dns-service/dnsservice-library/pom.xml      |   4 +-
 server/mailet/dkim/pom.xml                         |  16 +-
 .../apache/james/jdkim/mailets/ConvertTo7Bit.java  |   4 +-
 .../org/apache/james/jdkim/mailets/DKIMSign.java   |   7 +-
 .../apache/james/jdkim/mailets/DKIMVerifier.java   |   4 +-
 .../org/apache/james/jdkim/mailets/DKIMVerify.java |   5 +-
 .../james/jdkim/mailets/MimeMessageHeaders.java    |   4 +-
 .../apache/james/jdkim/mailets/DKIMSignTest.java   |  12 +-
 .../apache/james/jdkim/mailets/DKIMVerifyTest.java |   4 +-
 server/mailet/integration-testing/pom.xml          |   4 +
 .../james/mailets/BounceIntegrationTest.java       |   2 +-
 ...ectResolutionRemoteDeliveryIntegrationTest.java |   2 +-
 .../org/apache/james/mailets/MailetErrorsTest.java |   8 +-
 .../apache/james/mailets/flow/AddRecipient.java    |   2 +-
 .../james/mailets/flow/EnsureNotDisposed.java      |   2 +-
 .../org/apache/james/smtp/SmtpContentTypeTest.java |   2 +-
 .../apache/james/smtp/SmtpRandomStoringTest.java   |   2 +-
 .../james/transport/mailets/AliasMappingTest.java  |   2 +-
 .../james/transport/mailets/DomainMappingTest.java |   2 +-
 .../james/transport/mailets/ErrorMailet.java       |   2 +-
 .../james/transport/mailets/ErrorMatcher.java      |   2 +-
 .../transport/mailets/ExtractAttributeStub.java    |   2 +-
 .../mailets/GlobalRateLimitIntegrationTest.java    |   2 +-
 .../transport/mailets/GroupMappingRelayTest.java   |   2 +-
 .../james/transport/mailets/GroupMappingTest.java  |   2 +-
 .../mailets/ICSAttachmentWorkflowTest.java         |   2 +-
 .../mailets/NoClassDefFoundErrorMailet.java        |   2 +-
 .../mailets/NoClassDefFoundErrorMatcher.java       |   2 +-
 .../apache/james/transport/mailets/NoopMailet.java |   2 +-
 .../transport/mailets/OneRuntimeErrorMailet.java   |   2 +-
 .../mailets/OneRuntimeExceptionMailet.java         |   2 +-
 .../mailets/PerSenderRateLimitIntegrationTest.java |   2 +-
 .../mailets/RequeueThrottlingIntegrationTest.java  |   2 +-
 .../transport/mailets/RuntimeErrorMailet.java      |   2 +-
 .../transport/mailets/RuntimeExceptionMailet.java  |   2 +-
 .../transport/mailets/RuntimeExceptionMatcher.java |   2 +-
 .../transport/mailets/StripAttachmentTest.java     |   2 +-
 server/mailet/mailetcontainer-api/pom.xml          |   4 +-
 .../james/mailetcontainer/api/MailProcessor.java   |   6 +-
 .../james/mailetcontainer/api/MailetLoader.java    |   2 +-
 .../james/mailetcontainer/api/MatcherLoader.java   |   2 +-
 .../api/mock/ExceptionThrowingMailet.java          |   2 +-
 .../api/mock/ExceptionThrowingMatcher.java         |   2 +-
 .../mailetcontainer/api/mock/MockMailetLoader.java |   2 +-
 .../api/mock/MockMatcherLoader.java                |   2 +-
 server/mailet/mailetcontainer-impl/pom.xml         |   8 +-
 .../AutomaticallySentMailDetectorImpl.java         |   2 +-
 .../mailetcontainer/impl/JamesMailSpooler.java     |   3 +-
 .../mailetcontainer/impl/JamesMailetContext.java   |  15 +-
 .../mailetcontainer/impl/LocalResourcesImpl.java   |   3 +-
 .../mailetcontainer/impl/MailetProcessorImpl.java  |   3 +-
 .../mailetcontainer/impl/MatcherSplitter.java      |   2 +-
 .../james/mailetcontainer/impl/ProcessorUtil.java  |   2 +-
 .../jmx/JMXStateCompositeProcessorListener.java    |   3 +-
 .../james/mailetcontainer/impl/matchers/And.java   |   2 +-
 .../james/mailetcontainer/impl/matchers/Not.java   |   2 +-
 .../james/mailetcontainer/impl/matchers/Or.java    |   2 +-
 .../james/mailetcontainer/impl/matchers/Xor.java   |   2 +-
 .../lib/AbstractStateCompositeProcessor.java       |   3 +-
 .../lib/AbstractStateMailetProcessor.java          |   3 +-
 .../AutomaticallySentMailDetectorImplTest.java     |  14 +-
 .../impl/JamesMailetContextContract.java           |   2 +-
 .../lib/AbstractStateMailetProcessorTest.java      |   2 +-
 server/mailet/mailets/pom.xml                      |   8 +-
 .../org/apache/james/transport/mailets/Bounce.java |   5 +-
 .../apache/james/transport/mailets/DSNBounce.java  |  11 +-
 .../apache/james/transport/mailets/Forward.java    |   7 +-
 .../james/transport/mailets/FromRepository.java    |   3 +-
 .../james/transport/mailets/LocalDelivery.java     |   3 +-
 .../james/transport/mailets/MetricsMailet.java     |   3 +-
 .../james/transport/mailets/NotifyPostmaster.java  |   5 +-
 .../james/transport/mailets/NotifySender.java      |   5 +-
 .../james/transport/mailets/RandomStoring.java     |   3 +-
 .../transport/mailets/RecipientRewriteTable.java   |  14 +-
 .../mailets/RecipientRewriteTableProcessor.java    |  43 +-
 .../apache/james/transport/mailets/Redirect.java   |   5 +-
 .../james/transport/mailets/RemoteDelivery.java    |   9 +-
 .../apache/james/transport/mailets/Requeue.java    |   3 +-
 .../org/apache/james/transport/mailets/Resend.java |   5 +-
 .../org/apache/james/transport/mailets/SPF.java    |   7 +-
 .../org/apache/james/transport/mailets/Sieve.java  |   3 +-
 .../james/transport/mailets/ToPlainText.java       |   9 +-
 .../james/transport/mailets/ToRepository.java      |   5 +-
 .../mailets/ToSenderDomainRepository.java          |   3 +-
 .../james/transport/mailets/ToSenderFolder.java    |   5 +-
 .../james/transport/mailets/VacationMailet.java    |   5 +-
 .../james/transport/mailets/VacationReply.java     |   4 +-
 .../james/transport/mailets/WhiteListManager.java  |  23 +-
 .../james/transport/mailets/WithPriority.java      |   2 +-
 .../transport/mailets/WithStorageDirective.java    |   3 +-
 .../transport/mailets/delivery/MailDispatcher.java |   5 +-
 .../mailets/delivery/MailboxAppender.java          |   4 +-
 .../mailets/delivery/MailboxAppenderImpl.java      |   8 +-
 .../mailets/delivery/SimpleMailStore.java          |   2 +-
 .../transport/mailets/jsieve/ActionContext.java    |   2 +-
 .../transport/mailets/jsieve/ActionDispatcher.java |   2 +-
 .../transport/mailets/jsieve/ActionUtils.java      |   2 +-
 .../transport/mailets/jsieve/DiscardAction.java    |   2 +-
 .../transport/mailets/jsieve/FileIntoAction.java   |   2 +-
 .../james/transport/mailets/jsieve/KeepAction.java |   2 +-
 .../james/transport/mailets/jsieve/MailAction.java |   2 +-
 .../james/transport/mailets/jsieve/Poster.java     |   2 +-
 .../transport/mailets/jsieve/RedirectAction.java   |   2 +-
 .../transport/mailets/jsieve/RejectAction.java     |  10 +-
 .../transport/mailets/jsieve/SieveMailAdapter.java |   8 +-
 .../transport/mailets/jsieve/VacationAction.java   |   4 +-
 .../transport/mailets/jsieve/VacationReply.java    |  16 +-
 .../mailets/jsieve/delivery/SieveExecutor.java     |   2 +-
 .../delivery/SieveFailureMessageComposer.java      |   8 +-
 .../mailets/jsieve/delivery/SievePoster.java       |   2 +-
 .../mailets/managesieve/ManageSieveMailet.java     |   3 +-
 .../transcode/MessageToCoreToMessage.java          |  10 +-
 .../mailets/redirect/AddressExtractor.java         |   6 +-
 .../transport/mailets/redirect/MailModifier.java   |   8 +-
 .../mailets/redirect/MessageAlteringUtils.java     |  20 +-
 .../mailets/redirect/NotifyMailetsMessage.java     |   6 +-
 .../mailets/redirect/ProcessRedirectNotify.java    |   4 +-
 .../transport/mailets/redirect/RedirectNotify.java |   4 +-
 .../AddressesArrayToMailAddressListConverter.java  |   4 +-
 .../transport/mailets/remote/delivery/Bouncer.java |  48 +-
 .../transport/mailets/remote/delivery/Delay.java   |   2 +-
 .../mailets/remote/delivery/DelaysAndMaxRetry.java |   2 +-
 .../mailets/remote/delivery/DeliveryRunnable.java  |   4 +-
 .../delivery/EnhancedMessagingException.java       |  10 +-
 .../remote/delivery/InternetAddressConverter.java  |   2 +-
 .../mailets/remote/delivery/MailDelivrer.java      |   8 +-
 .../remote/delivery/MailDelivrerToHost.java        |  30 +-
 .../mailets/remote/delivery/MessageComposer.java   |   6 +-
 .../transport/matchers/AbstractNetworkMatcher.java |   3 +-
 .../matchers/AbstractPriorityMatcher.java          |   2 +-
 .../matchers/AbstractSQLWhitelistMatcher.java      |   3 +-
 .../transport/matchers/DSNDelayRequested.java      |   2 +-
 .../transport/matchers/DSNFailureRequested.java    |   2 +-
 .../transport/matchers/DSNSuccessRequested.java    |   2 +-
 .../transport/matchers/InSpammerBlacklist.java     |   3 +-
 .../james/transport/matchers/IsInWhiteList.java    |   4 +-
 .../james/transport/matchers/IsMarkedAsSpam.java   |   2 +-
 .../james/transport/matchers/IsOverQuota.java      |   3 +-
 .../transport/matchers/NetworkIsInWhitelist.java   |   3 +-
 .../matchers/RemoteDeliveryFailedWithSMTPCode.java |   2 +-
 .../apache/james/transport/matchers/dlp/Dlp.java   |   3 +-
 .../transport/matchers/dlp/DlpDomainRules.java     |  10 +-
 .../james/transport/util/MailAddressUtils.java     |   4 +-
 .../transport/util/MimeMessageBodyGenerator.java   |  15 +-
 .../james/transport/util/RecipientsUtils.java      |   2 +-
 .../transport/util/SpecialAddressesUtils.java      |   8 +-
 .../org/apache/james/transport/util/TosUtils.java  |   4 +-
 .../samples/mailets/InstrumentationMailet.java     |  18 +-
 .../apache/james/transport/mailets/BounceTest.java |   2 +-
 .../james/transport/mailets/DSNBounceTest.java     |  10 +-
 .../james/transport/mailets/ForwardTest.java       |   2 +-
 .../transport/mailets/NotifyPostmasterTest.java    |   2 +-
 .../james/transport/mailets/NotifySenderTest.java  |   2 +-
 .../RecipientRewriteTableProcessorTest.java        |   4 +-
 .../mailets/RecipientRewriteTableTest.java         |   2 +-
 .../james/transport/mailets/RedirectTest.java      |   2 +-
 .../james/transport/mailets/RequeueTest.java       |   2 +-
 .../apache/james/transport/mailets/ResendTest.java |   2 +-
 .../apache/james/transport/mailets/SPFTest.java    |   2 +-
 .../james/transport/mailets/ToRepositoryTest.java  |   2 +-
 .../mailets/ToSenderDomainRepositoryTest.java      |   2 +-
 .../transport/mailets/VacationMailetTest.java      |   2 +-
 .../james/transport/mailets/VacationReplyTest.java |   4 +-
 .../mailets/delivery/LocalDeliveryTest.java        |   4 +-
 .../mailets/delivery/MailDispatcherTest.java       |   2 +-
 .../mailets/delivery/MailboxAppenderImplTest.java  |   6 +-
 .../mailets/delivery/SieveIntegrationTest.java     |   4 +-
 .../mailets/delivery/SimpleMailStoreTest.java      |   2 +-
 .../managesieve/ManageSieveMailetTestCase.java     |  12 +-
 .../mailets/redirect/AddressExtractorTest.java     |   2 +-
 .../mailets/redirect/MailModifierTest.java         |   2 +-
 .../mailets/redirect/NotifyMailetsMessageTest.java |   4 +-
 ...dressesArrayToMailAddressListConverterTest.java |   4 +-
 .../mailets/remote/delivery/BouncerTest.java       |  19 +-
 .../mailets/remote/delivery/DelayTest.java         |   2 +-
 .../remote/delivery/DelaysAndMaxRetryTest.java     |   2 +-
 .../delivery/InternetAddressConverterTest.java     |   2 +-
 .../mailets/remote/delivery/MailDelivrerTest.java  |  10 +-
 .../transport/matchers/AtLeastPriorityTest.java    |   2 +-
 .../transport/matchers/AtMostPriorityTest.java     |   2 +-
 .../james/transport/matchers/HasPriorityTest.java  |   2 +-
 .../transport/matchers/InSpammerBlacklistTest.java |   2 +-
 .../IsRemoteDeliveryPermanentErrorTest.java        |   2 +-
 .../IsRemoteDeliveryTemporaryErrorTest.java        |   2 +-
 .../matchers/RemoteAddrInNetworkTest.java          |   2 +-
 .../matchers/RemoteAddrNotInNetworkTest.java       |   2 +-
 .../RemoteDeliveryFailedWithSMTPCodeTest.java      |   2 +-
 .../james/transport/util/MailAddressUtilsTest.java |   2 +-
 .../util/MimeMessageBodyGeneratorTest.java         |   2 +-
 .../transport/util/SpecialAddressesUtilsTest.java  |   4 +-
 .../apache/james/transport/util/TosUtilsTest.java  |   2 +-
 server/mailet/mock-smtp-server/pom.xml             |   8 +-
 .../mock/smtp/server/ExtendedEhloCommand.java      |  14 +-
 .../mock/smtp/server/ExtendedMailFromCommand.java  |   9 +-
 .../mock/smtp/server/ExtendedRcptToCommand.java    |   6 +-
 .../james/mock/smtp/server/MockMessageHandler.java |   9 +-
 .../james/mock/smtp/server/MockSMTPServer.java     |   5 +-
 .../server/jackson/MailAddressDeserializer.java    |   2 +-
 .../apache/james/mock/smtp/server/model/Mail.java  |   2 +-
 .../james/mock/smtp/server/MockSMTPServerTest.java |  38 +-
 .../smtp/server/ReceivedMailRepositoryTest.java    |   2 +-
 .../org/apache/james/SubAddressingRelayTest.java   |  25 +
 .../mailets/RemoteDeliveryDKIMIntegrationTest.java |   4 +-
 .../mailets/RemoteDeliveryErrorHandlingTest.java   |  22 +-
 .../james/mailets/RemoteDeliveryErrorTest.java     |   2 +-
 .../james/mailets/RemoteDeliveryOnSuccessTest.java |   2 +-
 .../org/apache/james/smtp/dsn/DSNRelayTest.java    |   2 +-
 .../james/mailrepository/api/MailRepository.java   |   2 +-
 .../mailrepository/MailRepositoryContract.java     |   2 +-
 .../mailrepository/blob/BlobMailRepository.scala   |   4 +-
 .../blob/BlobMailRepositoryTest.java               |   2 +-
 .../mailrepository-cassandra/pom.xml               |   5 +
 .../cassandra/CassandraMailRepository.java         |   5 +-
 .../CassandraMailRepositoryMailDaoV2.java          |   3 +-
 .../memory/MemoryMailRepository.java               |   4 +-
 server/pom.xml                                     |   1 +
 server/protocols/fetchmail/pom.xml                 |  19 +-
 .../java/org/apache/james/fetchmail/Account.java   |   4 +-
 .../org/apache/james/fetchmail/DynamicAccount.java |   2 +-
 .../java/org/apache/james/fetchmail/FetchMail.java |  20 +-
 .../apache/james/fetchmail/FolderProcessor.java    |   8 +-
 .../apache/james/fetchmail/MessageProcessor.java   |  12 +-
 .../james/fetchmail/ParsedConfiguration.java       |   2 +-
 .../apache/james/fetchmail/ProcessorAbstract.java  |   4 +-
 .../org/apache/james/fetchmail/StoreProcessor.java |   6 +-
 .../org/apache/james/fetchmail/FetchMailTest.java  |  82 ++
 .../org/apache/james/jmap/MessageAppender.java     |   2 +-
 .../integration/GetMessageListMethodTest.java      |   2 +-
 .../methods/integration/SetMessagesMethodTest.java |  12 +-
 .../integration/cucumber/DownloadStepdefs.java     |   8 +-
 .../cucumber/GetMailboxesMethodStepdefs.java       |   8 +-
 .../cucumber/GetMessageListMethodStepdefs.java     |  19 +-
 .../cucumber/GetMessagesMethodStepdefs.java        |  85 +-
 .../methods/integration/cucumber/ImapStepdefs.java |   8 +-
 .../methods/integration/cucumber/MainStepdefs.java |   2 +-
 .../integration/cucumber/MessageIdStepdefs.java    |   2 +-
 .../cucumber/SetMailboxesMethodStepdefs.java       |   8 +-
 .../cucumber/SetMessagesMethodStepdefs.java        |  26 +-
 .../integration/cucumber/StringListToFlags.java    |   2 +-
 .../cucumber/StringListToFlagsTest.java            |   4 +-
 .../integration/cucumber/UploadStepdefs.java       |   9 +-
 .../methods/integration/cucumber/UserStepdefs.java |  13 +-
 .../resources/cucumber/DownloadEndpoint.feature    |   2 +-
 .../test/resources/cucumber/DownloadGet.feature    |   2 +-
 .../test/resources/cucumber/GetMessages.feature    | 110 ++-
 .../cucumber/ImapKeywordsConsistency.feature       |   8 +-
 .../cucumber/sharing/CopyAndSharing.feature        |   2 +-
 .../cucumber/sharing/DownloadAndSharing.feature    |   2 +-
 .../cucumber/sharing/GetMessageAndSharing.feature  |   8 +-
 .../KeywordsConsistencyOnDelegationMailbox.feature |  26 +-
 .../sharing/MailboxCreationAndSharing.feature      |   2 +-
 .../cucumber/sharing/MoveMailboxAndSharing.feature |   2 +-
 .../cucumber/sharing/MoveMessageAndSharing.feature |   2 +-
 .../sharing/RenamingMailboxAndSharing.feature      |   2 +-
 .../cucumber/sharing/SetFlagAndSharing.feature     |   2 +-
 .../sharing/SetMessagesOnSharedMailbox.feature     |   2 +-
 ...ringParentMailboxWithAndWithoutChildren.feature |  12 +-
 .../memory-jmap-draft-integration-testing/pom.xml  |   7 +-
 ...java => MemoryDownloadEnpointCucumberTest.java} |  21 +-
 ...est.java => MemoryDownloadGetCucumberTest.java} |  21 +-
 ...st.java => MemoryDownloadPostCucumberTest.java} |  21 +-
 .../cucumber/MemoryGetMessagesMethodTest.java      |  18 +-
 .../MemoryIMAPKeywordsInconsistenciesTest.java     |  18 +-
 .../MemoryIMAPSetMessagesCompatibilityTest.java    |  18 +-
 .../MemorySetMailboxesMethodCucumberTest.java      |  18 +-
 .../MemorySetMessagesMethodCucumberTest.java       |  18 +-
 .../jmap/memory/cucumber/MemorySharingTest.java    |  34 +-
 .../james/jmap/memory/cucumber/MemoryStepdefs.java |   8 +-
 .../memory/cucumber/MemoryUploadCucumberTest.java  |  19 +-
 .../pom.xml                                        |   7 +-
 .../cucumber/awss3/RabbitMQAwsS3Stepdefs.java      | 121 ---
 .../awss3/RabbitMQDownloadCucumberTest.java        |  37 -
 .../awss3/RabbitMQGetMessagesMethodTest.java       |  37 -
 .../RabbitMQIMAPKeywordsInconsistenciesTest.java   |  36 -
 .../RabbitMQIMAPSetMessagesCompatibilityTest.java  |  36 -
 .../cucumber/awss3/RabbitMQMailboxSharingTest.java |  44 --
 .../cucumber/awss3/RabbitMQMessageSharingTest.java |  45 --
 .../RabbitMQSetMailboxesMethodCucumberTest.java    |  37 -
 .../RabbitMQSetMessagesMethodCucumberTest.java     |  37 -
 .../cucumber/awss3/RabbitMQUploadCucumberTest.java |  37 -
 .../james/jmap/draft/methods/BlobManagerImpl.java  |  10 +-
 .../jmap/draft/methods/GetMessageListMethod.java   |   2 +-
 .../james/jmap/draft/methods/MessageAppender.java  |   5 +-
 .../james/jmap/draft/methods/MessageSender.java    |   3 +-
 .../james/jmap/draft/methods/ReferenceUpdater.java |   3 +-
 .../james/jmap/draft/methods/SendMDNProcessor.java |   5 +-
 .../methods/SetMessagesCreationProcessor.java      |   3 +-
 .../methods/SetMessagesDestructionProcessor.java   |   3 +-
 .../draft/methods/SetMessagesUpdateProcessor.java  |  30 +-
 .../org/apache/james/jmap/draft/model/BlobId.java  |   4 -
 .../james/jmap/draft/model/CreationMessage.java    |   4 +-
 .../org/apache/james/jmap/draft/model/Emailer.java |   2 +-
 .../org/apache/james/jmap/draft/model/Keyword.java |   2 +-
 .../apache/james/jmap/draft/model/Keywords.java    |   2 +-
 .../apache/james/jmap/draft/model/OldKeyword.java  |   2 +-
 .../james/jmap/draft/model/UpdateMessagePatch.java |   2 +-
 .../model/message/view/MessageFullViewFactory.java |   3 +-
 .../jmap/draft/send/PostDequeueDecorator.java      |   4 +-
 .../james/jmap/draft/utils/FilterToCriteria.java   |   2 +-
 .../jmap/draft/utils/JsoupHtmlTextExtractor.java   |   6 +-
 .../ComputeMessageFastViewProjectionListener.java  |   4 +-
 .../jmap/event/PopulateEmailQueryViewListener.java |   2 +-
 .../mailet/ExtractMDNOriginalJMAPMessageId.java    |   5 +-
 .../jmap/mailet/TextCalendarBodyToAttachment.java  |  14 +-
 .../james/jmap/mailet/filter/ActionApplier.java    |   5 +-
 .../james/jmap/mailet/filter/ContentMatcher.java   |   4 +-
 .../james/jmap/mailet/filter/HeaderExtractor.java  |   4 +-
 .../jmap/draft/json/ParsingWritingObjects.java     |   2 +-
 .../jmap/draft/methods/BlobManagerImplTest.java    |   7 +-
 .../jmap/draft/methods/GetMailboxesMethodTest.java |   2 +-
 .../jmap/draft/methods/GetMessagesMethodTest.java  |   4 +-
 .../draft/methods/MIMEMessageConverterTest.java    |  37 +-
 .../jmap/draft/methods/MessageSenderTest.java      |   2 +-
 .../methods/SetMessagesUpdateProcessorTest.java    |   2 +-
 .../apache/james/jmap/draft/model/KeywordTest.java |   2 +-
 .../james/jmap/draft/model/KeywordsTest.java       |   4 +-
 .../james/jmap/draft/model/OldKeywordTest.java     |   4 +-
 .../jmap/draft/model/UpdateMessagePatchTest.java   |   2 +-
 .../message/view/MessageFastViewFactoryTest.java   |   5 +-
 .../message/view/MessageFullViewFactoryTest.java   |  10 +-
 .../message/view/MessageHeaderViewFactoryTest.java |   6 +-
 .../view/MessageMetadataViewFactoryTest.java       |   6 +-
 .../jmap/draft/send/PostDequeueDecoratorTest.java  |   4 +-
 .../jmap/draft/utils/FilterToCriteriaTest.java     |   2 +-
 ...mputeMessageFastViewProjectionListenerTest.java |   4 +-
 .../event/PopulateEmailQueryViewListenerTest.java  |   4 +-
 .../mailet/TextCalendarBodyToAttachmentTest.java   |   8 +-
 .../jmap/mailet/filter/JMAPFilteringExtension.java |   2 +-
 .../jmap/mailet/filter/JMAPFilteringTest.java      |   2 +-
 .../pom.xml                                        |   5 +
 .../jmap/rfc8621/distributed/DistributedBase.java  |   3 +-
 .../src/main/resources/eml/nested2.eml             |  77 ++
 .../contract/EmailChangesMethodContract.scala      |   4 +-
 .../rfc8621/contract/EmailGetMethodContract.scala  | 180 ++++-
 .../rfc8621/contract/EmailImportContract.scala     | 365 +++++++++
 .../contract/EmailParseMethodContract.scala        |   2 +-
 .../contract/EmailQueryMethodContract.scala        |  44 +-
 .../rfc8621/contract/EmailSetMethodContract.scala  | 483 +++++++++++-
 .../EmailSubmissionSetMethodContract.scala         | 202 +++++
 .../rfc8621/contract/IdentityGetContract.scala     |  66 +-
 .../rfc8621/contract/IdentitySetContract.scala     |   2 +-
 .../contract/MailboxChangesMethodContract.scala    |   2 +-
 .../contract/MailboxGetMethodContract.scala        |   2 +-
 .../contract/MailboxSetMethodContract.scala        |  14 +-
 .../PushSubscriptionSetMethodContract.scala        |   2 +-
 .../james/jmap/rfc8621/contract/package.scala      |  24 +-
 .../postgres/PostgresEmailQueryMethodTest.java     |  21 -
 .../jmap/mime4j/JamesBodyDescriptorBuilder.java    | 164 ++++
 .../james/jmap/mime4j/MaximalBodyDescriptor.java   | 318 ++++++++
 .../james/jmap/change/MailboxChangeListener.scala  |  11 +-
 .../org/apache/james/jmap/core/Capabilities.scala  |   2 +-
 .../org/apache/james/jmap/core/Capability.scala    |  11 +-
 .../james/jmap/core/JmapRfc8621Configuration.scala |  20 +-
 .../apache/james/jmap/core/ProblemDetails.scala    |   9 +-
 .../james/jmap/core/PushSubscriptionGet.scala      |   6 +-
 .../james/jmap/core/PushSubscriptionSet.scala      |   6 +-
 .../apache/james/jmap/delegation/DelegateGet.scala |   6 +-
 .../apache/james/jmap/delegation/DelegateSet.scala |   6 +-
 .../jmap/delegation/DelegatedAccountGet.scala      |   6 +-
 .../jmap/delegation/DelegatedAccountSet.scala      |   6 +-
 .../james/jmap/json/EmailGetSerializer.scala       |   3 +
 .../james/jmap/json/EmailSetSerializer.scala       |  18 +-
 .../james/jmap/json/IdentitySerializer.scala       |  17 +-
 .../scala/org/apache/james/jmap/mail/Email.scala   |  44 +-
 .../org/apache/james/jmap/mail/EmailBodyPart.scala |  23 +-
 .../org/apache/james/jmap/mail/EmailGet.scala      |  27 +-
 .../org/apache/james/jmap/mail/EmailImport.scala   |  28 +-
 .../org/apache/james/jmap/mail/EmailParse.scala    |  14 +-
 .../org/apache/james/jmap/mail/EmailSet.scala      | 121 ++-
 .../james/jmap/mail/EmailSubmissionSet.scala       |  57 +-
 .../org/apache/james/jmap/mail/IdentityGet.scala   |   6 +-
 .../org/apache/james/jmap/mail/IdentitySet.scala   |   6 +-
 .../scala/org/apache/james/jmap/mail/Keyword.scala |   2 +-
 .../org/apache/james/jmap/mail/Keywords.scala      |   6 +-
 .../org/apache/james/jmap/mail/MDNParse.scala      |  10 +-
 .../scala/org/apache/james/jmap/mail/MDNSend.scala |  12 +-
 .../scala/org/apache/james/jmap/mail/Mailbox.scala |   8 +
 .../apache/james/jmap/mail/MailboxFactory.scala    |   5 +-
 .../org/apache/james/jmap/mail/MailboxGet.scala    |   6 +-
 .../org/apache/james/jmap/mail/MailboxSet.scala    |   6 +-
 .../scala/org/apache/james/jmap/mail/Quotas.scala  |   6 +-
 .../scala/org/apache/james/jmap/mail/Thread.scala  |   6 +-
 .../james/jmap/method/DelegateGetMethod.scala      |   4 +-
 .../jmap/method/DelegateSetCreatePerformer.scala   |  18 +-
 .../jmap/method/DelegateSetDeletePerformer.scala   |  12 +-
 .../james/jmap/method/DelegateSetMethod.scala      |   4 +-
 .../method/DelegatedAccountDeletePerformer.scala   |  10 +-
 .../jmap/method/DelegatedAccountGetMethod.scala    |   4 +-
 .../jmap/method/DelegatedAccountSetMethod.scala    |   4 +-
 .../apache/james/jmap/method/EmailGetMethod.scala  |  46 +-
 .../james/jmap/method/EmailImportMethod.scala      |  53 +-
 .../james/jmap/method/EmailParseMethod.scala       |   7 +-
 .../james/jmap/method/EmailQueryMethod.scala       |   2 +-
 .../jmap/method/EmailSetCreatePerformer.scala      |  38 +-
 .../jmap/method/EmailSetDeletePerformer.scala      |  16 +-
 .../apache/james/jmap/method/EmailSetMethod.scala  |  10 +-
 .../jmap/method/EmailSetUpdatePerformer.scala      |  25 +-
 .../jmap/method/EmailSubmissionSetMethod.scala     | 106 ++-
 .../james/jmap/method/IdentityGetMethod.scala      |   4 +-
 .../jmap/method/IdentitySetCreatePerformer.scala   |  18 +-
 .../jmap/method/IdentitySetDeletePerformer.scala   |  16 +-
 .../james/jmap/method/IdentitySetMethod.scala      |   5 +-
 .../jmap/method/IdentitySetUpdatePerformer.scala   |  22 +-
 .../apache/james/jmap/method/MDNParseMethod.scala  |   8 +-
 .../apache/james/jmap/method/MDNSendMethod.scala   |  21 +-
 .../james/jmap/method/MailboxGetMethod.scala       |   6 +-
 .../jmap/method/MailboxSetCreatePerformer.scala    |  26 +-
 .../jmap/method/MailboxSetDeletePerformer.scala    |  28 +-
 .../james/jmap/method/MailboxSetMethod.scala       |   8 +-
 .../jmap/method/MailboxSetUpdatePerformer.scala    |  54 +-
 .../org/apache/james/jmap/method/Method.scala      |  47 +-
 .../jmap/method/PushSubscriptionGetMethod.scala    |   6 +-
 .../PushSubscriptionSetCreatePerformer.scala       |  22 +-
 .../PushSubscriptionSetDeletePerformer.scala       |  10 +-
 .../jmap/method/PushSubscriptionSetMethod.scala    |   4 +-
 .../method/PushSubscriptionUpdatePerformer.scala   |  34 +-
 .../apache/james/jmap/method/QuotaGetMethod.scala  |   4 +-
 .../apache/james/jmap/method/ThreadGetMethod.scala |   6 +-
 .../jmap/method/VacationResponseGetMethod.scala    |   6 +-
 .../jmap/method/VacationResponseSetMethod.scala    |  16 +-
 .../apache/james/jmap/routes/DownloadRoutes.scala  |  16 +-
 .../james/jmap/vacation/VacationResponseGet.scala  |   6 +-
 .../james/jmap/vacation/VacationResponseSet.scala  |   7 +-
 .../jmap/change/MailboxChangeListenerTest.scala    | 560 +++++++++++--
 .../change/StateChangeEventSerializerTest.scala    |   5 +
 .../org/apache/james/jmap/core/KeywordTest.scala   |   2 +-
 .../org/apache/james/jmap/core/KeywordsTest.scala  |   4 +-
 .../james/jmap/json/EmailSetSerializerTest.scala   |  87 ++
 server/protocols/jwt/pom.xml                       |   8 +-
 .../imapserver/netty/HAProxyMessageHandler.java    |  23 +-
 .../james/imapserver/netty/IMAPMDCContext.java     |   2 +-
 .../apache/james/imapserver/netty/IMAPServer.java  |  14 +-
 .../james/imapserver/netty/IMAPServerFactory.java  |  15 +-
 .../netty/ImapChannelUpstreamHandler.java          | 872 +++++++++++----------
 .../imapserver/netty/ImapIdleStateHandler.java     |   2 +-
 .../imapserver/netty/ImapRequestFrameDecoder.java  | 117 ++-
 .../james/imapserver/netty/Linearalizer.java       |  71 --
 .../james/imapserver/netty/NettyConstants.java     |   3 +-
 .../james/imapserver/netty/NettyImapSession.java   |  37 +-
 .../netty/NettyStreamImapRequestLineReader.java    |  18 +-
 .../james/imapserver/netty/ReactiveThrottler.java  |  46 +-
 .../META-INF/spring/imapserver-context.xml         |   2 +
 .../james/imapserver/netty/IMAPServerTest.java     | 143 +++-
 .../james/imapserver/netty/IpConnectionCheck.java  |  35 +-
 .../james/imapserver/netty/LinearalizerTest.java   |  71 --
 .../imapserver/netty/ReactiveThrottlerTest.java    |  67 ++
 .../test/resources/imapServerImapConnectCheck.xml  |  16 +
 server/protocols/protocols-library/pom.xml         |   4 +-
 .../protocols/lib/LegacyJavaEncryptionFactory.java |   4 +-
 .../james/lmtpserver/DataLineLMTPHandler.java      |   2 +-
 .../apache/james/lmtpserver/LmtpServerTest.java    |  24 +-
 .../MetaDataFixInconsistenciesServiceTest.java     |   2 +-
 .../james/pop3server/core/PassCmdHandler.java      |   2 +-
 .../apache/james/pop3server/POP3ServerTest.java    |   2 +-
 server/protocols/protocols-smtp/pom.xml            |   8 +-
 .../AddDefaultAttributesMessageHook.java           |   5 +
 .../DataLineJamesMessageHookHandler.java           |   2 +-
 .../apache/james/smtpserver/SendMailHandler.java   |   3 +-
 .../james/smtpserver/SetMimeHeaderHandler.java     |   5 +-
 .../james/smtpserver/fastfail/SPFHandler.java      |  16 +-
 .../james/smtpserver/fastfail/URIRBLHandler.java   |  11 +-
 .../model/ProtocolMailAddressAdapter.java          |   2 +-
 .../james/smtpserver/SMTPProxyProtocolTest.java    |  87 ++
 .../org/apache/james/smtpserver/SMTPSTest.java     | 117 +++
 .../apache/james/smtpserver/SMTPServerTest.java    | 129 ++-
 .../james/smtpserver/SMTPTestConfiguration.java    |   1 +
 .../james/smtpserver/SetMimeHeaderHandlerTest.java |   4 +-
 .../apache/james/smtpserver/URIRBLHandlerTest.java |   6 +-
 .../james/smtpserver/ValidRcptHandlerTest.java     |   8 +
 .../src/test/resources/smtpserver-proxy.xml        |  40 +-
 .../src/test/resources/smtpserver-tls.xml          |  50 ++
 ...abbitMQWebAdminServerBlobGCIntegrationTest.java |   4 +-
 ...dminServerTaskSerializationIntegrationTest.java |   2 +-
 ...sPopulateEmailQueryViewTaskIntegrationTest.java | 155 ++++
 ...ostgresWebAdminServerBlobGCIntegrationTest.java |   4 +-
 ...sandraMappingsSolveInconsistenciesTaskTest.java |  15 +-
 .../webadmin/routes/DeleteUserDataRoutes.java      |   2 +-
 .../james/webadmin/routes/MailAddressParser.java   |   2 +-
 .../webadmin/routes/UsernameChangeRoutes.java      |   3 +-
 .../webadmin/routes/DeleteUserDataRoutesTest.java  |  11 +
 .../webadmin/routes/UsernameChangeRoutesTest.java  |  39 +
 .../webadmin/webadmin-http-client/pom.xml          |   5 -
 .../data/jmap/EmailQueryViewPopulator.java         |   2 +-
 .../webadmin/data/jmap/UserIdentityRoutes.java     |   3 +-
 .../james/webadmin/data/jmap/dto/UserIdentity.java |   2 +-
 .../PopulateEmailQueryViewRequestToTaskTest.java   |   4 +-
 ...ctionItemsTaskAdditionalInformationDTOTest.java |   5 +-
 ...stViewProjectionItemsTaskSerializationTest.java |   4 +-
 ...ctionItemsTaskAdditionalInformationDTOTest.java |   4 +-
 ...stViewProjectionItemsTaskSerializationTest.java |   4 +-
 .../james/webadmin/routes/TransferEmailRoutes.java |   5 +-
 ...gesVaultExportTaskAdditionalInformationDTO.java |   2 +-
 .../routes/DeletedMessagesVaultExportTaskDTO.java  |   3 +-
 .../vault/routes/DeletedMessagesVaultRoutes.java   |   3 +-
 ...edMessagesVaultExportTaskSerializationTest.java |   2 +-
 .../james/webadmin/routes/MailboxesRoutesTest.java |   2 +-
 .../webadmin/routes/UserMailboxesRoutesTest.java   |  12 +-
 .../james/webadmin/service/ExportServiceTest.java  |   2 +-
 .../service/DeleteMailsFromMailQueueTaskTest.java  |   2 +-
 .../org/apache/james/webadmin/dto/MailDto.java     |   6 +-
 .../webadmin/routes/MailRepositoriesRoutes.java    |   5 +-
 .../service/MailRepositoryStoreService.java        |   5 +-
 .../webadmin/service/ReprocessingOneMailTask.java  |   2 +-
 .../webadmin/service/ReprocessingService.java      |   3 +-
 .../routes/MailRepositoriesRoutesTest.java         |   2 +-
 .../service/MailRepositoryStoreServiceTest.java    |   2 +-
 .../service/ReprocessingAllMailsTaskTest.java      |  16 +-
 .../service/ReprocessingOneMailTaskTest.java       |   8 +-
 .../Pop3MetaDataFixInconsistenciesRoutesTest.java  |   2 +-
 server/queue/queue-activemq/pom.xml                |   8 +-
 .../queue/activemq/ActiveMQCacheableMailQueue.java |   5 +-
 server/queue/queue-api/pom.xml                     |   8 +-
 .../java/org/apache/james/queue/api/MailQueue.java |   2 +-
 .../apache/james/queue/api/MailQueueContract.java  |   2 +-
 .../james/queue/api/MailQueueMetricContract.java   |   2 +-
 .../java/org/apache/james/queue/api/Mails.java     |   4 +-
 .../queue/api/ManageableMailQueueContract.java     |   6 +-
 .../api/ManageableMailQueueFactoryContract.java    |   2 +-
 server/queue/queue-jms/pom.xml                     |   8 +-
 .../james/queue/jms/JMSCacheableMailQueue.java     |   7 +-
 .../queue/jms/MimeMessageObjectMessageSource.java  |   3 +-
 .../james/queue/memory/MemoryMailQueueFactory.java |   5 +-
 .../james/queue/pulsar/PulsarMailQueue.scala       |  14 +-
 .../queue/pulsar/PulsarMailQueueFactory.scala      |   2 +-
 .../queue/pulsar/PulsarMailQueueFactoryTest.java   |   2 +-
 .../james/queue/pulsar/PulsarMailQueueTest.java    |   4 +-
 server/queue/queue-rabbitmq/pom.xml                |   5 +
 .../org/apache/james/queue/rabbitmq/Enqueuer.java  |   6 +-
 .../apache/james/queue/rabbitmq/MailLoader.java    |   6 +-
 .../RabbitMQMailQueueConsumerHealthCheck.java      |  23 +-
 .../queue/rabbitmq/RabbitMQMailQueueFactory.java   |   3 +-
 .../view/cassandra/CassandraMailQueueBrowser.java  |   5 +-
 .../view/cassandra/CassandraMailQueueView.java     |   3 +-
 .../view/cassandra/EnqueuedMailsDaoUtil.java       |   2 +-
 .../james/queue/rabbitmq/EnqueuedItemTest.java     |   2 +-
 .../apache/james/queue/rabbitmq/MailDTOTest.java   |   2 +-
 .../james/queue/rabbitmq/MailLoaderTest.java       |   2 +-
 .../model/EnqueuedItemWithSlicingContextTest.java  |   2 +-
 .../appended-resources/supplemental-models.xml     |   4 +-
 server/task/task-distributed/pom.xml               |   5 +
 .../TaskExecutionDetailsProjectionContract.java    |  36 +-
 .../{task-distributed => task-postgres}/pom.xml    |  57 +-
 .../PostgresTaskExecutionDetailsProjection.scala   |  54 ++
 ...PostgresTaskExecutionDetailsProjectionDAO.scala | 112 +++
 ...tgresTaskExecutionDetailsProjectionModule.scala |  72 ++
 ...tgresTaskExecutionDetailsProjectionDAOTest.java | 202 +++++
 ...PostgresTaskExecutionDetailsProjectionTest.java |  52 ++
 server/testing/pom.xml                             |  10 +-
 .../org/apache/james/utils/SMTPMessageSender.java  |   4 +-
 .../apache/james/utils/SMTPMessageSenderTest.java  |   4 +-
 .../_posts/2024-01-08-mime4j-0.8.10.markdown       |  20 +
 .../_posts/2024-01-09-james-3.7.5.markdown         |  29 +
 .../_posts/2024-01-09-james-3.8.1.markdown         |  29 +
 .../_posts/2024-03-05-mime4j-0.8.11.markdown       |  20 +
 src/homepage/howTo/deleted-messages-vault.html     |   2 +-
 src/homepage/index.html                            |   6 +-
 src/site/markdown/mailet/quickstart.md             |   2 +-
 src/site/markdown/server/install/guice-jpa-smtp.md |  14 +-
 src/site/markdown/server/install/guice-jpa.md      |   8 +-
 src/site/markdown/server/manage-webadmin.md        |   2 +-
 src/site/xdoc/download.xml                         | 164 ++--
 src/site/xdoc/protocols/imap4.xml                  |   2 +-
 src/site/xdoc/server/config-blobstore.xml          |  10 +
 src/site/xdoc/server/config-jmap.xml               |   9 +
 src/site/xdoc/server/config-listeners.xml          |   2 +-
 src/site/xdoc/server/config-opensearch.xml         |   2 +
 src/site/xdoc/server/config-rabbitmq.xml           |  18 +
 src/site/xdoc/server/config.xml                    |   3 +-
 src/site/xdoc/server/dev-extend-mailet.xml         |   2 +-
 src/site/xdoc/server/feature-security.xml          |  32 +
 src/site/xdoc/server/index.xml                     |  10 +-
 src/site/xdoc/server/install.xml                   |   8 +-
 src/site/xdoc/server/objectives.xml                |   2 +-
 src/site/xdoc/server/packaging.xml                 |  16 +-
 src/site/xdoc/server/quick-start.xml               |   8 +-
 src/site/xdoc/server/release-notes.xml             |   8 +
 testing/base/src/main/resources/logback-test.xml   |   5 +
 .../java/org/apache/james/clamav/ClamAVScan.java   |  29 +-
 .../org/apache/james/clamav/ClamAVScanTest.java    |   4 +-
 third-party/crowdsec/README.md                     |  44 +-
 third-party/crowdsec/docker-compose.yml            |   6 +-
 third-party/crowdsec/pom.xml                       |  32 +
 .../sample-configuration/extensions.properties     |   2 +-
 .../imapserver.xml                                 |  37 +-
 .../sample-configuration/parsers/james-auth.yaml   |  12 +-
 .../crowdsec/sample-configuration/pop3server.xml   |  44 ++
 .../scenarios/james-bf-auth.yaml                   |   2 +-
 .../crowdsec/sample-configuration/smtpserver.xml   |   6 +-
 .../james/{ => crowdsec}/CrowdsecEhloHook.java     |  38 +-
 .../crowdsec/CrowdsecImapConnectionCheck.java      |  35 +-
 .../james/crowdsec/CrowdsecPOP3CheckHandler.java   |  60 ++
 .../james/crowdsec/CrowdsecSMTPConnectHandler.java |  88 +++
 .../CrowdsecService.java}                          |  42 +-
 .../org/apache/james/crowdsec/CrowdsecUtils.java   |  31 +-
 .../client}/CrowdsecClientConfiguration.java       |  30 +-
 .../client}/CrowdsecHttpClient.java                |  19 +-
 .../crowdsec/exception/CrowdsecException.java      |  11 +-
 .../{ => crowdsec}/model/CrowdsecDecision.java     |   2 +-
 .../model/CrowdsecDecisionDeserializer.java        |   2 +-
 .../{ => crowdsec}/module/CrowdsecModule.java      |   6 +-
 .../CrowdsecDecisionDeserializerTest.java          |   4 +-
 .../james/{ => crowdsec}/CrowdsecEhloHookTest.java |  15 +-
 .../james/{ => crowdsec}/CrowdsecExtension.java    |  13 +-
 .../{ => crowdsec}/CrowdsecHttpClientTest.java     |  31 +-
 .../crowdsec/CrowdsecImapConnectionCheckTest.java  |  91 +++
 .../{ => crowdsec}/CrowdsecIntegrationTest.java    | 187 ++++-
 .../crowdsec/CrowdsecSMTPConnectHandlerTest.java   |  46 ++
 .../CrowdsecServiceTest.java}                      |  54 +-
 .../DockerCrowdsecExtensionTest.java               |   2 +-
 .../james/{ => crowdsec}/HAProxyExtension.java     |  14 +-
 .../resources/crowdsec/parsers/james-auth.yaml     |  12 +-
 .../crowdsec/scenarios/james-bf-auth.yaml          |   2 +-
 .../crowdsec/src/test/resources/haproxy.cfg        |  21 +
 .../crowdsec/src/test/resources/imapserver.xml     |   4 +
 .../crowdsec/src/test/resources/pop3server.xml     |  44 ++
 .../crowdsec/src/test/resources/smtpserver.xml     |   4 +-
 .../org/apache/james/rspamd/RspamdScanner.java     |  45 +-
 .../james/rspamd/client/RspamdHttpClient.java      |  20 +-
 .../apache/james/rspamd/RspamdListenerTest.java    |   2 +-
 .../org/apache/james/rspamd/RspamdScannerTest.java |   4 +-
 .../james/rspamd/client/RspamdHttpClientTest.java  |  12 +-
 .../james/rspamd/route/FeedMessageRouteTest.java   |   2 +-
 .../james/rspamd/task/FeedHamToRspamdTaskTest.java |   2 +-
 .../rspamd/task/FeedSpamToRspamdTaskTest.java      |   2 +-
 third-party/spamassassin/pom.xml                   |   8 +-
 .../apache/james/spamassassin/SpamAssassin.java    |  22 +-
 .../james/spamassassin/SpamAssassinHandler.java    |   5 +-
 .../james/spamassassin/SpamAssassinInvoker.java    |   4 +-
 .../james/spamassassin/SpamAssassinResult.java     |   4 +
 .../spamassassin/SpamAssassinHandlerTest.java      |   6 +-
 .../spamassassin/SpamAssassinIntegrationTest.java  |   2 +-
 .../spamassassin/SpamAssassinInvokerTest.java      |   2 +-
 .../spamassassin/SpamAssassinListenerTest.java     |   2 +-
 upgrade-instructions.md                            |   8 +
 1457 files changed, 15283 insertions(+), 8232 deletions(-)
 create mode 100644 .mvn/extensions.xml
 create mode 100644 .mvn/gradle-enterprise-custom-user-data.groovy
 create mode 100644 .mvn/gradle-enterprise.xml
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/JsonpDeserializerBase.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/JsonpMapperBase.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/JsonpUtils.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/UnexpectedJsonEventException.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/jackson/JacksonJsonProvider.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/jackson/JacksonJsonpGenerator.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/jackson/JacksonJsonpLocation.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/jackson/JacksonJsonpMapper.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/jackson/JacksonJsonpParser.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/jackson/JsonValueParser.java
 delete mode 100644 backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/package-info.java
 copy server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/CucumberCassandraSingleton.java => mailbox/api/src/main/java/org/apache/james/mailbox/AttachmentIdFactory.java (84%)
 copy server/container/core/src/test/java/org/apache/james/server/core/MimeMessageFromMimeMessageTest.java => mailbox/api/src/main/java/org/apache/james/mailbox/StringBackedAttachmentIdFactory.java (75%)
 copy server/container/core/src/test/java/org/apache/james/server/core/MimeMessageFromMimeMessageTest.java => mailbox/api/src/main/java/org/apache/james/mailbox/UuidBackedAttachmentIdFactory.java (75%)
 copy mailbox/api/src/main/java/org/apache/james/mailbox/model/{AttachmentId.java => StringBackedAttachmentId.java} (81%)
 copy mailbox/api/src/main/java/org/apache/james/mailbox/model/{AttachmentId.java => UuidBackedAttachmentId.java} (69%)
 rename mailbox/api/src/test/java/org/apache/james/mailbox/model/{AttachmentIdTest.java => StringBackedAttachmentIdTest.java} (77%)
 rename mailbox/{cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/eventsourcing/acl => event/json/src/main/java/org/apache/james/event}/MailboxAggregateId.java (77%)
 rename mailbox/{cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/eventsourcing => event/json/src/main/java/org/apache/james/event}/acl/ACLDTO.java (97%)
 rename mailbox/{cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/eventsourcing => event/json/src/main/java/org/apache/james/event}/acl/ACLDiffDTO.java (97%)
 rename mailbox/{cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/eventsourcing => event/json/src/main/java/org/apache/james/event}/acl/ACLUpdated.java (93%)
 rename mailbox/{cassandra/src/main/java/org/apache/james/mailbox/cassandra/mail/eventsourcing => event/json/src/main/java/org/apache/james/event}/acl/ACLUpdatedDTO.java (81%)
 rename server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/CucumberRabbitMQSingleton.java => mailbox/opensearch/src/main/java/org/apache/james/mailbox/opensearch/IndexBody.java (84%)
 create mode 100644 mailbox/opensearch/src/test/java/org/apache/james/mailbox/opensearch/OpenSearchNoIndexBodyIntegrationTest.java
 create mode 100644 mailbox/opensearch/src/test/resources/eml/alternative.eml
 create mode 100644 mailbox/opensearch/src/test/resources/eml/alternative.json
 create mode 100644 mailbox/opensearch/src/test/resources/eml/alternative_simple.eml
 create mode 100644 mailbox/opensearch/src/test/resources/eml/alternative_simple.json
 rename mailbox/plugin/{quota-mailing-cassandra/src/main/java/org/apache/james/mailbox/quota/cassandra/dto => quota-mailing/src/main/java/org/apache/james/mailbox/quota/mailing/events}/HistoryEvolutionDTO.java (66%)
 rename mailbox/plugin/{quota-mailing-cassandra/src/main/java/org/apache/james/mailbox/quota/cassandra/dto => quota-mailing/src/main/java/org/apache/james/mailbox/quota/mailing/events}/QuotaDTO.java (82%)
 rename mailbox/plugin/{quota-mailing-cassandra/src/main/java/org/apache/james/mailbox/quota/cassandra/dto => quota-mailing/src/main/java/org/apache/james/mailbox/quota/mailing/events}/QuotaEventDTOModules.java (92%)
 rename mailbox/plugin/{quota-mailing-cassandra/src/main/java/org/apache/james/mailbox/quota/cassandra/dto => quota-mailing/src/main/java/org/apache/james/mailbox/quota/mailing/events}/QuotaThresholdChangedEventDTO.java (57%)
 delete mode 100644 mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/AttachmentLoader.java
 create mode 100644 mailbox/postgres/src/main/java/org/apache/james/mailbox/postgres/mail/PostgresMessageRetriever.java
 copy mailbox/{cassandra/src/main/java/org/apache/james/mailbox/cassandra => postgres/src/main/java/org/apache/james/mailbox/postgres}/mail/eventsourcing/acl/ACLModule.java (79%)
 create mode 100644 mailbox/store/src/main/java/org/apache/james/mailbox/store/mail/model/impl/FileBufferedBodyFactory.java
 create mode 100644 mailet/standard/src/test/java/org/apache/james/transport/matchers/AttachmentFileNameIsTest.java
 create mode 100644 mailet/standard/src/test/resources/mime/space.eml
 create mode 100644 mailet/standard/src/test/resources/nested.zip
 create mode 100644 mailet/standard/src/test/resources/sonde.zip
 rename server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/CucumberCassandraSingleton.java => protocols/imap/src/main/java/org/apache/james/imap/api/ConnectionCheck.java (84%)
 rename server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/CucumberAwsS3Singleton.java => protocols/imap/src/main/java/org/apache/james/imap/api/ConnectionCheckFactory.java (78%)
 copy server/container/guice/testing/custom-mailets/src/main/java/org/apache/james/transport/mailets/CustomMailet.java => protocols/imap/src/main/java/org/apache/james/imap/api/DefaultConnectionCheckFactory.java (73%)
 copy server/container/guice/{cassandra/src/main/java/org/apache/james/modules/mailbox/CassandraQuotaMailingModule.java => distributed/src/main/java/org/apache/james/modules/plugins/QuotaMailingModule.java} (87%)
 create mode 100644 server/container/guice/postgres-common/src/main/java/org/apache/james/modules/task/DistributedTaskManagerModule.java
 copy server/container/guice/{cassandra/src/main/java/org/apache/james/modules/mailbox/CassandraQuotaMailingModule.java => postgres-common/src/main/java/org/apache/james/modules/task/PostgresTaskExecutionDetailsProjectionGuiceModule.java} (61%)
 copy mailet/standard/src/main/java/org/apache/james/transport/matchers/utils/MailAddressCollectionReader.java => server/container/guice/protocols/imap/src/main/java/org/apache/james/modules/protocols/ConnectionCheckFactoryImpl.java (55%)
 create mode 100644 server/data/data-jmap/src/main/java/org/apache/james/jmap/mime4j/AvoidBinaryBodyBufferingBodyFactory.java
 create mode 100644 server/data/data-jmap/src/main/java/org/apache/james/jmap/mime4j/AvoidBinaryBodyReadingBodyFactory.java
 copy mailet/mailetdocs-maven-plugin/src/test/java/org/apache/james/mailet/constructor/ConstructorMailet.java => server/data/data-jmap/src/main/java/org/apache/james/jmap/mime4j/FakeBinaryBody.java (61%)
 create mode 100644 server/data/data-jmap/src/main/java/org/apache/james/jmap/mime4j/SizeUtils.java
 create mode 100644 server/protocols/fetchmail/src/test/java/org/apache/james/fetchmail/FetchMailTest.java
 copy server/protocols/jmap-draft-integration-testing/memory-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/memory/cucumber/{MemoryDownloadCucumberTest.java => MemoryDownloadEnpointCucumberTest.java} (62%)
 copy server/protocols/jmap-draft-integration-testing/memory-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/memory/cucumber/{MemoryDownloadCucumberTest.java => MemoryDownloadGetCucumberTest.java} (62%)
 rename server/protocols/jmap-draft-integration-testing/memory-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/memory/cucumber/{MemoryDownloadCucumberTest.java => MemoryDownloadPostCucumberTest.java} (62%)
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQAwsS3Stepdefs.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQDownloadCucumberTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQGetMessagesMethodTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQIMAPKeywordsInconsistenciesTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQIMAPSetMessagesCompatibilityTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQMailboxSharingTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQMessageSharingTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQSetMailboxesMethodCucumberTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQSetMessagesMethodCucumberTest.java
 delete mode 100644 server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/RabbitMQUploadCucumberTest.java
 create mode 100644 server/protocols/jmap-rfc-8621-integration-tests/jmap-rfc-8621-integration-tests-common/src/main/resources/eml/nested2.eml
 create mode 100644 server/protocols/jmap-rfc-8621/src/main/java/org/apache/james/jmap/mime4j/JamesBodyDescriptorBuilder.java
 create mode 100644 server/protocols/jmap-rfc-8621/src/main/java/org/apache/james/jmap/mime4j/MaximalBodyDescriptor.java
 create mode 100644 server/protocols/jmap-rfc-8621/src/test/scala/org/apache/james/jmap/json/EmailSetSerializerTest.scala
 delete mode 100644 server/protocols/protocols-imap4/src/main/java/org/apache/james/imapserver/netty/Linearalizer.java
 rename backends-common/opensearch/src/main/java/org/apache/james/backends/opensearch/json/jackson/JacksonUtils.java => server/protocols/protocols-imap4/src/test/java/org/apache/james/imapserver/netty/IpConnectionCheck.java (59%)
 delete mode 100644 server/protocols/protocols-imap4/src/test/java/org/apache/james/imapserver/netty/LinearalizerTest.java
 create mode 100644 server/protocols/protocols-imap4/src/test/resources/imapServerImapConnectCheck.xml
 create mode 100644 server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SMTPProxyProtocolTest.java
 create mode 100644 server/protocols/protocols-smtp/src/test/java/org/apache/james/smtpserver/SMTPSTest.java
 copy third-party/crowdsec/src/test/resources/smtpserver.xml => server/protocols/protocols-smtp/src/test/resources/smtpserver-proxy.xml (53%)
 create mode 100644 server/protocols/protocols-smtp/src/test/resources/smtpserver-tls.xml
 create mode 100644 server/protocols/webadmin-integration-test/postgres-webadmin-integration-test/src/test/java/org/apache/james/webadmin/integration/postgres/PostgresPopulateEmailQueryViewTaskIntegrationTest.java
 copy server/task/{task-distributed => task-postgres}/pom.xml (71%)
 create mode 100644 server/task/task-postgres/src/main/scala/org/apache/james/task/eventsourcing/postgres/PostgresTaskExecutionDetailsProjection.scala
 create mode 100644 server/task/task-postgres/src/main/scala/org/apache/james/task/eventsourcing/postgres/PostgresTaskExecutionDetailsProjectionDAO.scala
 create mode 100644 server/task/task-postgres/src/main/scala/org/apache/james/task/eventsourcing/postgres/PostgresTaskExecutionDetailsProjectionModule.scala
 create mode 100644 server/task/task-postgres/src/test/java/org/apache/james/task/eventsourcing/postgres/PostgresTaskExecutionDetailsProjectionDAOTest.java
 create mode 100644 server/task/task-postgres/src/test/java/org/apache/james/task/eventsourcing/postgres/PostgresTaskExecutionDetailsProjectionTest.java
 create mode 100644 src/homepage/_posts/2024-01-08-mime4j-0.8.10.markdown
 create mode 100644 src/homepage/_posts/2024-01-09-james-3.7.5.markdown
 create mode 100644 src/homepage/_posts/2024-01-09-james-3.8.1.markdown
 create mode 100644 src/homepage/_posts/2024-03-05-mime4j-0.8.11.markdown
 copy third-party/crowdsec/{src/test/resources => sample-configuration}/imapserver.xml (51%)
 create mode 100644 third-party/crowdsec/sample-configuration/pop3server.xml
 copy third-party/crowdsec/src/main/java/org/apache/james/{ => crowdsec}/CrowdsecEhloHook.java (58%)
 copy server/container/guice/protocols/pop/src/main/java/org/apache/james/modules/protocols/Pop3GuiceProbe.java => third-party/crowdsec/src/main/java/org/apache/james/crowdsec/CrowdsecImapConnectionCheck.java (53%)
 create mode 100644 third-party/crowdsec/src/main/java/org/apache/james/crowdsec/CrowdsecPOP3CheckHandler.java
 create mode 100644 third-party/crowdsec/src/main/java/org/apache/james/crowdsec/CrowdsecSMTPConnectHandler.java
 rename third-party/crowdsec/src/main/java/org/apache/james/{CrowdsecEhloHook.java => crowdsec/CrowdsecService.java} (61%)
 copy mailet/standard/src/main/java/org/apache/james/transport/mailets/utils/MimeMessageModifier.java => third-party/crowdsec/src/main/java/org/apache/james/crowdsec/CrowdsecUtils.java (64%)
 rename third-party/crowdsec/src/main/java/org/apache/james/{model => crowdsec/client}/CrowdsecClientConfiguration.java (71%)
 rename third-party/crowdsec/src/main/java/org/apache/james/{model => crowdsec/client}/CrowdsecHttpClient.java (85%)
 rename server/protocols/jmap-draft-integration-testing/rabbitmq-jmap-draft-integration-testing/src/test/java/org/apache/james/jmap/rabbitmq/cucumber/awss3/CucumberOpenSearchSingleton.java => third-party/crowdsec/src/main/java/org/apache/james/crowdsec/exception/CrowdsecException.java (84%)
 rename third-party/crowdsec/src/main/java/org/apache/james/{ => crowdsec}/model/CrowdsecDecision.java (99%)
 rename third-party/crowdsec/src/main/java/org/apache/james/{ => crowdsec}/model/CrowdsecDecisionDeserializer.java (98%)
 rename third-party/crowdsec/src/main/java/org/apache/james/{ => crowdsec}/module/CrowdsecModule.java (92%)
 rename third-party/crowdsec/src/test/java/org/apache/james/{ => crowdsec}/CrowdsecDecisionDeserializerTest.java (96%)
 copy third-party/crowdsec/src/test/java/org/apache/james/{ => crowdsec}/CrowdsecEhloHookTest.java (85%)
 rename third-party/crowdsec/src/test/java/org/apache/james/{ => crowdsec}/CrowdsecExtension.java (91%)
 rename third-party/crowdsec/src/test/java/org/apache/james/{ => crowdsec}/CrowdsecHttpClientTest.java (81%)
 create mode 100644 third-party/crowdsec/src/test/java/org/apache/james/crowdsec/CrowdsecImapConnectionCheckTest.java
 rename third-party/crowdsec/src/test/java/org/apache/james/{ => crowdsec}/CrowdsecIntegrationTest.java (51%)
 create mode 100644 third-party/crowdsec/src/test/java/org/apache/james/crowdsec/CrowdsecSMTPConnectHandlerTest.java
 rename third-party/crowdsec/src/test/java/org/apache/james/{CrowdsecEhloHookTest.java => crowdsec/CrowdsecServiceTest.java} (62%)
 rename third-party/crowdsec/src/test/java/org/apache/james/{ => crowdsec}/DockerCrowdsecExtensionTest.java (99%)
 rename third-party/crowdsec/src/test/java/org/apache/james/{ => crowdsec}/HAProxyExtension.java (86%)
 create mode 100644 third-party/crowdsec/src/test/resources/haproxy.cfg


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org