Skip to content

Commit

Permalink
Merge pull request #1860 from adobe/1840-1842-fix-signed-chunked-uploads
Browse files Browse the repository at this point in the history
Fix failing uploads after EOL detection refactoring
  • Loading branch information
afranken committed May 12, 2024
2 parents 9158d2b + 0fc4ead commit 4ec4cfd
Show file tree
Hide file tree
Showing 28 changed files with 868 additions and 345 deletions.
43 changes: 40 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,10 @@
* [PLANNED - 4.x - RELEASE TBD ~ late 2023 / early 2024](#planned---4x---release-tbd--late-2023--early-2024)
* [Planned changes](#planned-changes)
* [CURRENT - 3.x - THIS VERSION IS UNDER ACTIVE DEVELOPMENT](#current---3x---this-version-is-under-active-development)
* [3.8.0 - PLANNED](#380---planned)
* [3.7.3 - PLANNED](#373---planned)
* [3.10.0 - PLANNED](#3100---planned)
* [3.9.0 - PLANNED](#390---planned)
* [3.8.0](#380)
* [3.7.3](#373)
* [3.7.2](#372)
* [3.7.1](#371)
* [3.7.0](#370)
Expand Down Expand Up @@ -123,7 +125,7 @@ Version 3.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Jav

**The current major version 3 will receive new features, dependency updates and bug fixes on a continuous basis.**

## 3.8.0 - PLANNED
## 3.10.0 - PLANNED
3.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Java integration.

* Features and fixes
Expand All @@ -134,6 +136,41 @@ Version 3.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Jav
* Version updates
* TBD

## 3.9.0 - PLANNED
3.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Java integration.

* Features and fixes
* Persist checksums for parts, validate on multipart completion (fixes #1205)
* Refactorings
* TBD
* Version updates
* TBD

## 3.8.0
3.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Java integration.

* Features and fixes
* Fix failing uploads after EOL detection refactoring (fixes #1840, #1842)
* Adding additional tests for combinations of HTTP / HTTPS and sync / async clients with different test files
* Known issue: using HTTP, AWS SDKv2 sends the wrong checksum for SHA256, leading uploads to fail
* Version updates
* Bump aws-v2.version from 2.25.39 to 2.25.49
* Bump com.amazonaws:aws-java-sdk-s3 from 1.12.709 to 1.12.720
* Bump com.fasterxml.jackson:jackson-bom from 2.17.0 to 2.17.1
* Bump kotlin.version from 1.9.23 to 1.9.24
* Bump org.xmlunit:xmlunit-assertj3 from 2.9.1 to 2.10.0
* Bump testcontainers.version from 1.19.7 to 1.19.8
* Bump org.testng:testng from 7.10.1 to 7.10.2
* Bump com.puppycrawl.tools:checkstyle from 10.15.0 to 10.16.0
* Bump license-maven-plugin-git.version from 4.3 to 4.4
* Bump org.apache.maven.plugins:maven-deploy-plugin from 3.1.1 to 3.1.2
* Bump org.apache.maven.plugins:maven-install-plugin from 3.1.1 to 3.1.2
* Bump step-security/harden-runner from 2.7.0 to 2.7.1
* Bump actions/checkout from 4.1.4 to 4.1.5
* Bump actions/dependency-review-action from 4.2.5 to 4.3.2
* Bump ossf/scorecard-action from 2.3.1 to 2.3.3
* Bump github/codeql-action from 3.25.3 to 3.25.4

## 3.7.3
3.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Java integration.

Expand Down
2 changes: 1 addition & 1 deletion build-config/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
<parent>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock-parent</artifactId>
<version>3.7.4-SNAPSHOT</version>
<version>3.8.0-SNAPSHOT</version>
</parent>

<artifactId>s3mock-build-config</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion docker/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<parent>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock-parent</artifactId>
<version>3.7.4-SNAPSHOT</version>
<version>3.8.0-SNAPSHOT</version>
</parent>

<artifactId>s3mock-docker</artifactId>
Expand Down
2 changes: 1 addition & 1 deletion integration-tests/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<parent>
<groupId>com.adobe.testing</groupId>
<artifactId>s3mock-parent</artifactId>
<version>3.7.4-SNAPSHOT</version>
<version>3.8.0-SNAPSHOT</version>
</parent>

<artifactId>s3mock-integration-tests</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -85,20 +85,20 @@ internal class AclIT : S3TestBase() {
assertThat(owner.displayName()).isEqualTo(DEFAULT_OWNER.displayName)
}

val grants = acl.grants().also {
acl.grants().also {
assertThat(it).hasSize(1)
}
val grant = grants[0]
assertThat(grant.permission()).isEqualTo(FULL_CONTROL)
grant.grantee().also {

acl.grants()[0].also {
assertThat(it.permission()).isEqualTo(FULL_CONTROL)
}.grantee().also {
assertThat(it).isNotNull
assertThat(it.id()).isEqualTo(DEFAULT_OWNER.id)
assertThat(it.displayName()).isEqualTo(DEFAULT_OWNER.displayName)
assertThat(it.type()).isEqualTo(CANONICAL_USER)
}
}


@Test
@S3VerifiedFailure(year = 2022,
reason = "Owner and Grantee not available on test AWS account.")
Expand Down Expand Up @@ -139,20 +139,21 @@ internal class AclIT : S3TestBase() {
.key(sourceKey)
.build()
)
val owner = acl.owner()
assertThat(owner).isNotNull
assertThat(owner.id()).isEqualTo(userId)
assertThat(owner.displayName()).isEqualTo(userName)
acl.owner().also {
assertThat(it).isNotNull
assertThat(it.id()).isEqualTo(userId)
assertThat(it.displayName()).isEqualTo(userName)
}

assertThat(acl.grants()).hasSize(1)

val grant = acl.grants()[0]
assertThat(grant.permission()).isEqualTo(FULL_CONTROL)

val grantee = grant.grantee()
assertThat(grantee).isNotNull
assertThat(grantee.id()).isEqualTo(granteeId)
assertThat(grantee.displayName()).isEqualTo(granteeName)
assertThat(grantee.type()).isEqualTo(CANONICAL_USER)
acl.grants()[0].also {
assertThat(it.permission()).isEqualTo(FULL_CONTROL)
}.grantee().also {
assertThat(it).isNotNull
assertThat(it.id()).isEqualTo(granteeId)
assertThat(it.displayName()).isEqualTo(granteeName)
assertThat(it.type()).isEqualTo(CANONICAL_USER)
}
}
}
Loading

0 comments on commit 4ec4cfd

Please sign in to comment.