Skip to content

2.6.0

Compare
Choose a tag to compare
@afranken afranken released this 07 Sep 16:56
· 846 commits to main since this release
  • Features and fixes
    • Add support for LegalHold APIs (fixes #157)
      • Implement GetObjectLegalHold / PutObjectLegalHold
      • Implement GetObjectLockConfiguration / PutObjectLockConfiguration
      • In S3, object locking can only be activated for versioned buckets, versions are currently not supported by S3Mock.
        S3 enforces LegalHold only for versions, so S3Mock currently can't enforce the legal hold.
    • Add support for Retention APIs
      • Implement GetObjectRetention / PutObjectRetention
      • In S3, object locking can only be activated for versioned buckets, versions are currently not supported by S3Mock.
        S3 enforces retention only for versions, so S3Mock currently can't enforce the retention.
  • Refactorings
    • Added support for IntegrationTests to use a dedicated bucket per test method
      • Refactored some IntegrationTests to this pattern.
    • Use AWS SDK internal Utils for instants and encoding
      • Using software.amazon.awssdk.utils.DateUtils and software.amazon.awssdk.utils.http.SdkHttpUtils
      • These classes are marked as software.amazon.awssdk.annotations.SdkProtectedApi
        which means that SDK users (liek S3Mock) should not use these classes, but S3Mock has to exactly match the
        behaviour and expectations of the AWS SDKs, and it's easier to depend on internal AWS SDK classes
        instead of replicating or copying the code.
      • S3Mock may have violated the AWS SDK license before by including source code without explicitly
        stating that it's AWS copyrighted code. (In the JavaDoc it did say that this is a copy with
        a reference to the class, though)
  • Version updates
    • Bump aws-v2.version from 2.17.263 to 2.17.267
    • Bump aws-java-sdk-s3 from 1.12.292 to 1.12.296