Branch: refs/heads/master Home: https://github.com/xwiki/xwiki-platform Commit: c0671491661c9b58a24df7e2993fbf09f3cf8b2c https://github.com/xwiki/xwiki-platform/commit/c0671491661c9b58a24df7e2993fb... Author: Michael Hamann <[email protected]> Date: 2025-11-11 (Tue, 11 Nov 2025) Changed paths: M pom.xml M xwiki-platform-core/pom.xml M xwiki-platform-core/xwiki-platform-minimaldependencies/pom.xml M xwiki-platform-core/xwiki-platform-store/pom.xml M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-api/pom.xml R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-api/src/main/java/org/xwiki/store/StoreException.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-api/src/main/java/org/xwiki/store/StreamProvider.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/pom.xml A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractFileStoreDataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractStoreTypeDataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractXWIKI14697DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractXWIKI15249DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/FileStringEntityReferenceSerializer.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/R1004000XWIKI15249DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/R1004001XWIKI15249DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/R1100000XWIKI15620DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/R1130040XWIKI16682DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/R910000XWIKI14697DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/R910001XWIKI14697DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/java/org/xwiki/store/filesystem/internal/migration/R910100XWIKI14871DataMigration.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/main/resources/META-INF/components.txt A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-migrations/src/test/java/org/xwiki/store/filesystem/internal/migration/FileStringEntityReferenceSerializerTest.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/pom.xml A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/AttachmentBlobProvider.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/AttachmentFileProvider.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DefaultAttachmentBlobProvider.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DefaultAttachmentFileProvider.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DefaultDeletedAttachmentBlobProvider.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DefaultDeletedAttachmentFileProvider.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DefaultDeletedDocumentContentBlobProvider.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DefaultDeletedDocumentContentFileProvider.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DeletedAttachmentBlobProvider.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DeletedAttachmentFileProvider.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DeletedDocumentContentBlobProvider.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/DeletedDocumentContentFileProvider.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/FilesystemStoreTools.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/StoreFileUtils.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/WikiDeletedListener.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/XWikiFilesystemBlobStorePropertiesCustomizer.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractFileStoreDataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractStoreTypeDataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractXWIKI14697DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/AbstractXWIKI15249DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/FileStringEntityReferenceSerializer.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/R1004000XWIKI15249DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/R1004001XWIKI15249DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/R1100000XWIKI15620DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/R1130040XWIKI16682DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/R910000XWIKI14697DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/R910001XWIKI14697DataMigration.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/filesystem/internal/migration/R910100XWIKI14871DataMigration.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/doc/internal/FilesystemAttachmentContent.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/AttachmentArchiveDeleteRunnable.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/AttachmentArchiveSaveRunnable.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/DeletedDocumentContentBlobSerializer.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/DeletedDocumentContentFileSerializer.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/FilesystemAttachmentRecycleBinContentStore.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/FilesystemAttachmentStore.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/FilesystemAttachmentVersioningStore.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/FilesystemRecycleBinContentStore.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/SaveDeletedAttachmentContentRunnable.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/java/org/xwiki/store/legacy/store/internal/XWikiFileDeletedDocumentContent.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/main/resources/META-INF/components.txt M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/test/java/org/xwiki/store/filesystem/internal/FilesystemStoreToolsTest.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/test/java/org/xwiki/store/filesystem/internal/StoreFileUtilsTest.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/test/java/org/xwiki/store/filesystem/internal/WikiDeletedListenerTest.java R xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/test/java/org/xwiki/store/filesystem/internal/migration/FileStringEntityReferenceSerializerTest.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/test/java/org/xwiki/store/legacy/store/internal/FilesystemAttachmentStoreTest.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem-oldcore/src/test/java/org/xwiki/store/legacy/store/internal/FilesystemAttachmentVersioningStoreTest.java M xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem/pom.xml A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem/src/main/java/org/xwiki/store/BlobSerializer.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem/src/main/java/org/xwiki/store/StreamProviderBlobSerializer.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem/src/main/java/org/xwiki/store/internal/BlobDeleteTransactionRunnable.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem/src/main/java/org/xwiki/store/internal/BlobSaveTransactionRunnable.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem/src/test/java/org/xwiki/store/internal/BlobDeleteTransactionRunnableTest.java A xwiki-platform-core/xwiki-platform-store/xwiki-platform-store-filesystem/src/test/java/org/xwiki/store/internal/BlobSaveTransactionRunnableTest.java M xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/pom.xml M xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/internal/junit5/UITestTestConfigurationResolver.java M xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/internal/junit5/WARBuilder.java M xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/internal/junit5/XWikiDockerExtension.java A xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/internal/junit5/blobstore/BlobStoreContainerExecutor.java M xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/internal/junit5/configuration/ConfigurationFilesGenerator.java M xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/junit5/TestConfiguration.java M xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/junit5/UITest.java A xwiki-platform-core/xwiki-platform-test/xwiki-platform-test-docker/src/main/java/org/xwiki/test/docker/junit5/blobstore/BlobStore.java M xwiki-platform-distribution/xwiki-platform-distribution-war-dependencies/pom.xml M xwiki-platform-tools/xwiki-platform-tool-configuration-resources/src/main/resources/xwiki.properties.vm M xwiki-platform-tools/xwiki-platform-tool-packager-plugin/pom.xml Log Message: ----------- XWIKI-22845: Introduce a S3 storage support for attachment content, history and deleted attachments and documents (#4642) * Use the blob store API in the filesystem store such that it uses any configured blob store including S3. * Move migrations into a separate module that directly depends on the filesystem blob store to avoid a risky rewrite of the whole migration logic. Fix some simpler checkstyle violations in it. Add a dependency to the WAR for the migrations. Existing migrations only support the filesystem store. * Add support for running any UI test with S3 as blob store using a MinIO container. * Rename some internal methods and classes from "file" to "blob". * For delete and save transaction runnables, consider more states as valid as move could be implemented as copy + delete. * Use the `BlobStorePropertiesCustomizer` API for setting the filesystem store path. * Update since-versions for renamed classes. * Update xwiki.properties to add the new blob store configuration options. * Move `StoreException` and `StreamProvider` to `xwiki-commons`. * Remove testcontainers.version definition as this is now in `xwiki-commons`. * Add filesystem blob store to `xwiki-platform-tool-packager-plugin` as it is required for the filesystem attachment store to work. To unsubscribe from these emails, change your notification settings at https://github.com/xwiki/xwiki-platform/settings/notifications