diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
index 1b0d0bf35..a045f0900 100644
--- a/.pre-commit-config.yaml
+++ b/.pre-commit-config.yaml
@@ -1,3 +1,19 @@
+#
+# Copyright 2017-2025 Adobe.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
repos:
- repo: https://github.com/gherynos/pre-commit-java
rev: v0.6.16
diff --git a/CHANGELOG.md b/CHANGELOG.md
index b391ade42..ad2d04100 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,7 +8,8 @@ Whenever a 3rd party library is updated, S3Mock will update it's MINOR version.
* [PLANNED - 5.x - RELEASE TBD](#planned---5x---release-tbd)
* [Planned changes](#planned-changes)
* [CURRENT - 4.x - THIS VERSION IS UNDER ACTIVE DEVELOPMENT](#current---4x---this-version-is-under-active-development)
- * [4.7.0 - PLANNED](#470---planned)
+ * [4.8.0 - PLANNED](#480---planned)
+ * [4.7.0](#470)
* [4.6.0](#460)
* [4.5.1](#451)
* [4.5.0](#450)
@@ -147,7 +148,7 @@ Version 4.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Jav
**The current major version 4 will receive new features, dependency updates and bug fixes on a continuous basis.**
-## 4.7.0 - PLANNED
+## 4.8.0 - PLANNED
Version 4.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
* Features and fixes
@@ -159,6 +160,27 @@ Version 4.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Jav
* Version updates (build dependencies)
* TBD
+## 4.7.0
+Version 4.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
+
+* Features and fixes
+ * Fix store property overrides for "com.adobe.testing.s3mock.store" properties. (Fixes #2524)
+* Refactorings
+ * Enable Spring Boot Actuator in "debug" and "trace" profiles.
+ * Enable [Spring Test Profiler](https://github.com/PragmaTech-GmbH/spring-test-profiler) during test runs.
+* Version updates (deliverable dependencies)
+ * Bump spring-boot.version from 3.5.3 to 3.5.4
+ * Bump aws-v2.version from 2.31.77 to 2.32.7
+ * Bump aws.version from 1.12.787 to 1.12.788
+ * Bump commons-io:commons-io from 2.19.0 to 2.20.0
+ * Bump alpine from 3.22.0 to 3.22.1 in /docker
+* Version updates (build dependencies)
+ * Bump aws.sdk.kotlin:s3-jvm from 1.4.109 to 1.4.125
+ * Bump org.apache.maven.plugins:maven-enforcer-plugin from 3.6.0 to 3.6.1
+ * Bump org.mockito.kotlin:mockito-kotlin from 5.4.0 to 6.0.0
+ * Bump step-security/harden-runner from 2.12.2 to 2.13.0
+ * Bump github/codeql-action from 3.29.2 to 3.29.4
+
## 4.6.0
Version 4.x is JDK17 LTS bytecode compatible, with Docker and JUnit / direct Java integration.
diff --git a/Makefile b/Makefile
index a89f1f0d3..7542bc9d6 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,19 @@
+#
+# Copyright 2017-2025 Adobe.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
.PHONY: build verify install
.DEFAULT_GOAL := build
diff --git a/build-config/pom.xml b/build-config/pom.xml
index a74a428f5..8083474e5 100644
--- a/build-config/pom.xml
+++ b/build-config/pom.xml
@@ -21,7 +21,7 @@
com.adobe.testing
s3mock-parent
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-build-config
diff --git a/docker/pom.xml b/docker/pom.xml
index 030c8a315..bbe4ff2b2 100644
--- a/docker/pom.xml
+++ b/docker/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-parent
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-docker
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
index cea4616c8..721959353 100644
--- a/integration-tests/pom.xml
+++ b/integration-tests/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-parent
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-integration-tests
diff --git a/pom.xml b/pom.xml
index 547440340..27e5f1096 100644
--- a/pom.xml
+++ b/pom.xml
@@ -21,7 +21,7 @@
com.adobe.testing
s3mock-parent
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
pom
S3Mock - Parent
@@ -87,7 +87,7 @@
1.12.788
- 1.4.119
+ 1.4.125
1.15
1.27.1
@@ -131,6 +131,7 @@
1.21.3
7.11.0
2.10.3
+ 0.0.5
@@ -321,6 +322,12 @@
mockito-core
test
+
+ digital.pragmatech.testing
+ spring-test-profiler
+ ${spring-test-profiler.version}
+ test
+
diff --git a/server/pom.xml b/server/pom.xml
index 94ac72600..7b5825e0e 100644
--- a/server/pom.xml
+++ b/server/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-parent
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock
@@ -122,7 +122,7 @@
org.springframework.boot
spring-boot-starter-actuator
- test
+ true
org.springframework.boot
@@ -149,6 +149,11 @@
mockito-kotlin
test
+
+ digital.pragmatech.testing
+ spring-test-profiler
+ test
+
diff --git a/server/src/main/resources/application-debug.properties b/server/src/main/resources/application-debug.properties
index daf8224fa..236cd8b34 100644
--- a/server/src/main/resources/application-debug.properties
+++ b/server/src/main/resources/application-debug.properties
@@ -22,6 +22,11 @@ spring.mvc.log-request-details=true
# Enable JMX when debugging
spring.jmx.enabled=true
+spring.jmx.unique-names=true
# Enable all actuator endpoints when debugging
+management.endpoints.web.discovery.enabled=true
+management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
+management.endpoints.access.default=unrestricted
+management.endpoint.health.show-details=always
diff --git a/server/src/main/resources/application-trace.properties b/server/src/main/resources/application-trace.properties
index e61d6438a..19578abed 100644
--- a/server/src/main/resources/application-trace.properties
+++ b/server/src/main/resources/application-trace.properties
@@ -21,6 +21,11 @@ spring.mvc.log-request-details=true
# Enable JMX when debugging
spring.jmx.enabled=true
+spring.jmx.unique-names=true
# Enable all actuator endpoints when debugging
+management.endpoints.web.discovery.enabled=true
+management.endpoints.jmx.exposure.include=*
management.endpoints.web.exposure.include=*
+management.endpoints.access.default=unrestricted
+management.endpoint.health.show-details=always
diff --git a/server/src/main/resources/application.properties b/server/src/main/resources/application.properties
index 06955bd90..d03aac3d5 100644
--- a/server/src/main/resources/application.properties
+++ b/server/src/main/resources/application.properties
@@ -26,3 +26,5 @@ com.adobe.testing.s3mock.region=us-east-1
# allow S3Mock to consume larger payloads
server.tomcat.max-swallow-size=10MB
+
+management.endpoints.web.discovery.enabled=false
diff --git a/server/src/test/resources/META-INF/spring.factories b/server/src/test/resources/META-INF/spring.factories
new file mode 100644
index 000000000..6328224b2
--- /dev/null
+++ b/server/src/test/resources/META-INF/spring.factories
@@ -0,0 +1,17 @@
+#
+# Copyright 2017-2025 Adobe.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+org.springframework.test.context.TestExecutionListener=digital.pragmatech.testing.SpringTestProfilerListener
diff --git a/testsupport/common/pom.xml b/testsupport/common/pom.xml
index 10e28c1cf..4e27a19e3 100644
--- a/testsupport/common/pom.xml
+++ b/testsupport/common/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-testsupport-reactor
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-testsupport-common
diff --git a/testsupport/junit4/pom.xml b/testsupport/junit4/pom.xml
index 5c6046955..71ce01e42 100644
--- a/testsupport/junit4/pom.xml
+++ b/testsupport/junit4/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-testsupport-reactor
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-junit4
diff --git a/testsupport/junit5/pom.xml b/testsupport/junit5/pom.xml
index d68a0c1d7..6c42cf0e0 100644
--- a/testsupport/junit5/pom.xml
+++ b/testsupport/junit5/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-testsupport-reactor
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-junit5
diff --git a/testsupport/pom.xml b/testsupport/pom.xml
index 32c6a617a..b99605d46 100644
--- a/testsupport/pom.xml
+++ b/testsupport/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-parent
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-testsupport-reactor
diff --git a/testsupport/testcontainers/pom.xml b/testsupport/testcontainers/pom.xml
index 393d064a9..5e94a1b96 100644
--- a/testsupport/testcontainers/pom.xml
+++ b/testsupport/testcontainers/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-testsupport-reactor
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-testcontainers
diff --git a/testsupport/testng/pom.xml b/testsupport/testng/pom.xml
index dc7d41bbd..ad97bb572 100644
--- a/testsupport/testng/pom.xml
+++ b/testsupport/testng/pom.xml
@@ -22,7 +22,7 @@
com.adobe.testing
s3mock-testsupport-reactor
- 4.6.1-SNAPSHOT
+ 4.7.0-SNAPSHOT
s3mock-testng