Releases: adobe/S3Mock
2.9.1
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
- IDs in stores must be different for all objects (fixes #877)
What's Changed
Full Changelog: 2.9.0...2.9.1
2.9.0
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
- Version updates
- Bump aws-v2.version from 2.17.284 to 2.18.15
- Bump aws-java-sdk-s3 from 1.12.313 to 1.12.340
- Bump kotlin.version from 1.7.20 to 1.7.21
- Bump maven-release-plugin from 3.0.0-M6 to 3.0.0-M7
- Bump checkstyle from 10.3.4 to 10.4
- Bump spring-boot.version from 2.7.4 to 2.7.5
- Bump testcontainers.version from 1.17.4 to 1.17.5
What's Changed
- Support restarting S3Mock on existing root by @afranken in #849
- Bump testcontainers.version from 1.17.4 to 1.17.5 by @dependabot in #851
- Bump spring-boot.version from 2.7.4 to 2.7.5 by @dependabot in #869
- Bump checkstyle from 10.3.4 to 10.4 by @dependabot in #889
- Bump maven-release-plugin from 3.0.0-M6 to 3.0.0-M7 by @dependabot in #895
- Bump kotlin.version from 1.7.20 to 1.7.21 by @dependabot in #898
- Let AWS SDKv2 use path style access by @afranken in #907
- Bump aws-java-sdk-s3 from 1.12.313 to 1.12.340 by @dependabot in #905
- Bump aws-v2.version from 2.17.284 to 2.18.15 by @dependabot in #906
Full Changelog: 2.8.0...2.9.0
2.8.0
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
- Add support for BucketLifecycleConfiguration APIs (fixes #291)
- Implement GetBucketLifecycleConfiguration / PutBucketLifecycleConfiguration / DeleteLifecycleConfiguration
- S3Mock currently does not enforce the lifecycle configuration.
- Add support for BucketLifecycleConfiguration APIs (fixes #291)
- Version updates
- Bump aws-java-sdk-s3 from 1.12.309 to 1.12.312
- Bump aws-v2.version from 2.17.281 to 2.17.284
- Bump kotlin.version from 1.7.10 to 1.7.20
- Bump checkstyle from 10.3.3 to 10.3.4
- Bump testcontainers.version from 1.17.3 to 1.17.4
What's Changed
- Add Get- / Put- / Delete- BucketLifecycleConfiguration by @afranken in #806
- Bump checkstyle from 10.3.3 to 10.3.4 by @dependabot in #834
- Bump kotlin.version from 1.7.10 to 1.7.20 by @dependabot in #844
- Bump aws-v2.version from 2.17.281 to 2.17.284 by @dependabot in #845
- Bump testcontainers.version from 1.17.3 to 1.17.4 by @dependabot in #846
- Bump aws-java-sdk-s3 from 1.12.309 to 1.12.313 by @dependabot in #847
Full Changelog: 2.7.1...2.8.0
2.7.2
2.7.1
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
What's Changed
New Contributors
Full Changelog: 2.7.0...2.7.1
2.7.0
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
- Add support for ACL APIs (fixes #213 / #290)
- Implement GetObjectACL / PutObjectACL
- Return / accept String instead of a POJO. We need to use JAX-B annotations instead of Jackson annotations
because AWS decided to use xsi:type annotations in the XML representation, which are not supported
by Jackson. It doesn't seem to be possible to use bot JAX-B and Jackson for (de-)serialization in parallel.
- Add support for ACL APIs (fixes #213 / #290)
- Version updates
- Bump aws-java-sdk-s3 from 1.12.298 to 1.12.309
- Bump aws-v2.version from 2.17.269 to 2.17.281
- Bump spring-boot.version from 2.7.3 to 2.7.4
- Bump maven-jar-plugin from 3.2.2 to 3.3.0
What's Changed
- Bump aws-java-sdk-s3 from 1.12.298 to 1.12.309 by @dependabot in #831
- Bump aws-v2.version from 2.17.269 to 2.17.281 by @dependabot in #830
- Bump spring-boot.version from 2.7.3 to 2.7.4 by @dependabot in #825
- Bump maven-jar-plugin from 3.2.2 to 3.3.0 by @dependabot in #817
- Add Get- / Put- ObjectAcl by @afranken in #819
Full Changelog: 2.6.3...2.7.0
2.6.3
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
- Handle all incoming and outgoing ETags according to RFC2616 / RFC7232 (fixes #807)
- Fixes ETag handling in GetObject, HeadObject, CopyObject, UploadPartCopy APIs.
- We are now generating and storing ETags in the "RFC-Format" with enclosing double quotes.
- Incoming ETags are used verbatim to compare against the internally held representation.
- Wildcard ETags are also correctly handled.
- Handle all incoming and outgoing ETags according to RFC2616 / RFC7232 (fixes #807)
What's Changed
Full Changelog: 2.6.2...2.6.3
2.6.2
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
- LastModified must be updated when copying an object onto itself (fixes #811)
- Refactorings
- Split up integration tests by type
What's Changed
- Various IntegrationTest refactorings by @afranken in #820
- LastModified must be updated when copying an object onto itself. by @afranken in #827
Full Changelog: 2.6.1...2.6.2
2.6.1
2.x is JDK8 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
- Features and fixes
- ETags in requests and responses must comply to RFC-2616 (fixes #801)
- Fixes
ListObjects
andListObjectsV2
APIs. - Whenever S3Mock uses Serialization / Deserialization with Jackson, we must use our custom
EtagSerializer / EtagDeserializer that wraps and unwraps the etag for the DTO.
- Fixes
- ETags in requests and responses must comply to RFC-2616 (fixes #801)
- Version updates
- Bump aws-v2.version from 2.17.267 to 2.17.269
- Bump aws-java-sdk-s3 from 1.12.296 to 1.12.298
What's Changed
- ETags in requests and responses must comply to RFC-2616 by @afranken in #802
- Bump aws-java-sdk-s3 from 1.12.296 to 1.12.298 by @dependabot in #800
- Bump aws-v2.version from 2.17.267 to 2.17.269 by @dependabot in #798
Full Changelog: 2.6.0...2.6.1
2.6.0
- 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.
- Add support for LegalHold APIs (fixes #157)
- 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
andsoftware.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)
- Using
- Added support for IntegrationTests to use a dedicated bucket per test method
- 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