Subject: Better documenting the BlobStore design Hi James developers,
I just contributed a documentation PR to better explain the BlobStore design in James: https://github.com/apache/james-project/pull/3034. The motivation came from recent discussions around blob metadata and BlobStoreDAO semantics, including Jean’s concern on PR #2960: https://github.com/apache/james-project/pull/2960#issuecomment-4241584375 The new documentation tries to clarify: - the difference between `BlobStore` and `BlobStoreDAO` - the meaning of James logical `BucketName` - existing `BlobStore` implementations and decorators - lower-level `BlobStoreDAO` implementations and wrappers, including AES and Zstd composition - metadata conventions and extension points I hope this helps James developers and extension writers better understand and leverage the BlobStore abstraction and its extension capabilities. Feedback is welcome, especially if some parts are still unclear or if other BlobStore design aspects deserve documentation. Best regards, Quan
