Skip to content

Commit d9c4384

Browse files
committed
Merge branch 'main' into oceanbase-ce
2 parents 04f4318 + 0623f1a commit d9c4384

File tree

77 files changed

+167
-161
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

77 files changed

+167
-161
lines changed

.github/actions/setup-gradle/action.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ runs:
44
using: "composite"
55
steps:
66
- name: Setup Gradle Build Action
7-
uses: gradle/gradle-build-action@v2
7+
uses: gradle/actions/setup-gradle@v3
88
with:
99
gradle-home-cache-includes: |
1010
caches

.github/dependabot.yml

+2
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ updates:
2020
update-types: [ "version-update:semver-major" ]
2121
- dependency-name: "com.fasterxml.jackson.datatype:jackson-datatype-jsr310"
2222
update-types: [ "version-update:semver-minor", "version-update:semver-patch" ]
23+
- dependency-name: "org.apache.commons:commons-compress"
24+
update-types: [ "version-update:semver-minor" ]
2325
- package-ecosystem: "gradle"
2426
directory: "/"
2527
allow:

.github/workflows/ci-rootless.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
- name: Remove Docket root socket
5353
run: sudo rm -rf /var/run/docker.sock
5454
- name: Setup Gradle Build Action
55-
uses: gradle/gradle-build-action@v2
55+
uses: gradle/actions/setup-gradle@v3
5656
- name: Build with Gradle
5757
run: ./gradlew --no-daemon --scan testcontainers:test --tests '*GenericContainerRuleTest'
5858
- uses: ./.github/actions/setup-junit-report

.github/workflows/ci.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ jobs:
8787
- uses: actions/checkout@v4
8888
- uses: ./.github/actions/setup-java
8989
- name: Setup Gradle Build Action
90-
uses: gradle/gradle-build-action@v2
90+
uses: gradle/actions/setup-gradle@v3
9191
- id: set-matrix
9292
env:
9393
# Since we override the tests executor,
@@ -122,7 +122,7 @@ jobs:
122122
- uses: actions/checkout@v4
123123
- uses: ./.github/actions/setup-java
124124
- name: Setup Gradle Build Action
125-
uses: gradle/gradle-build-action@v2
125+
uses: gradle/actions/setup-gradle@v3
126126
- id: set-matrix
127127
working-directory: ./examples/
128128
env:
@@ -159,7 +159,7 @@ jobs:
159159
- uses: actions/checkout@v4
160160
- uses: ./.github/actions/setup-java
161161
- name: Setup Gradle Build Action
162-
uses: gradle/gradle-build-action@v2
162+
uses: gradle/actions/setup-gradle@v3
163163
- id: set-matrix
164164
env:
165165
# Since we override the tests executor,

.github/workflows/release.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ jobs:
2121
run: docker image prune -af
2222

2323
- name: Setup Gradle Build Action
24-
uses: gradle/gradle-build-action@v2
24+
uses: gradle/actions/setup-gradle@v3
2525

2626
- name: Run Gradle Build
2727
run: ./gradlew build --scan --no-daemon -i -x test

core/build.gradle

+4-4
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ dependencies {
7373
api 'org.slf4j:slf4j-api:1.7.36'
7474
compileOnly 'org.jetbrains:annotations:24.1.0'
7575
testCompileOnly 'org.jetbrains:annotations:24.1.0'
76-
api 'org.apache.commons:commons-compress:1.25.0'
76+
api 'org.apache.commons:commons-compress:1.24.0'
7777
api ('org.rnorth.duct-tape:duct-tape:1.0.8') {
7878
exclude(group: 'org.jetbrains', module: 'annotations')
7979
}
@@ -99,7 +99,7 @@ dependencies {
9999

100100
api 'com.github.docker-java:docker-java-transport-zerodep'
101101

102-
shaded 'com.google.guava:guava:32.1.3-jre'
102+
shaded 'com.google.guava:guava:33.0.0-jre'
103103
shaded "org.yaml:snakeyaml:1.33"
104104

105105
shaded 'org.glassfish.main.external:trilead-ssh2-repackaged:4.1.2'
@@ -120,12 +120,12 @@ dependencies {
120120
// Synthetic JAR used for MountableFileTest and DirectoryTarResourceTest
121121
testImplementation files('testlib/repo/fakejar/fakejar/0/fakejar-0.jar')
122122

123-
testImplementation 'org.assertj:assertj-core:3.24.2'
123+
testImplementation 'org.assertj:assertj-core:3.25.1'
124124

125125
jarFileTestCompileOnly "org.projectlombok:lombok:${lombok.version}"
126126
jarFileTestAnnotationProcessor "org.projectlombok:lombok:${lombok.version}"
127127
jarFileTestImplementation 'junit:junit:4.13.2'
128-
jarFileTestImplementation 'org.assertj:assertj-core:3.24.2'
128+
jarFileTestImplementation 'org.assertj:assertj-core:3.25.1'
129129
jarFileTestImplementation 'org.ow2.asm:asm-debug-all:5.2'
130130
}
131131

core/src/main/java/org/testcontainers/containers/GenericContainer.java

-3
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,6 @@
7171
import java.lang.reflect.InvocationTargetException;
7272
import java.lang.reflect.Method;
7373
import java.lang.reflect.UndeclaredThrowableException;
74-
import java.nio.charset.Charset;
7574
import java.nio.file.Path;
7675
import java.nio.file.Paths;
7776
import java.time.Duration;
@@ -112,8 +111,6 @@ public class GenericContainer<SELF extends GenericContainer<SELF>>
112111
extends FailureDetectingExternalResource
113112
implements Container<SELF>, AutoCloseable, WaitStrategyTarget, Startable {
114113

115-
private static final Charset UTF8 = Charset.forName("UTF-8");
116-
117114
public static final int CONTAINER_RUNNING_TIMEOUT_SEC = 30;
118115

119116
public static final String INTERNAL_HOST_HOSTNAME = "host.testcontainers.internal";

docs/examples/junit4/generic/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ dependencies {
77
testImplementation project(":mysql")
88

99
testRuntimeOnly 'mysql:mysql-connector-java:8.0.33'
10-
testImplementation "org.seleniumhq.selenium:selenium-api:4.16.1"
11-
testImplementation 'org.assertj:assertj-core:3.24.2'
10+
testImplementation "org.seleniumhq.selenium:selenium-api:4.17.0"
11+
testImplementation 'org.assertj:assertj-core:3.25.2'
1212
}
1313

1414
test {
+2-2
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
description = "Examples for docs"
22

33
dependencies {
4-
api "io.lettuce:lettuce-core:6.3.0.RELEASE"
4+
api "io.lettuce:lettuce-core:6.3.1.RELEASE"
55

66
testImplementation "junit:junit:4.13.2"
77
testImplementation project(":testcontainers")
8-
testImplementation 'org.assertj:assertj-core:3.24.2'
8+
testImplementation 'org.assertj:assertj-core:3.25.2'
99
}

docs/examples/junit5/redis/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
description = "Examples for docs"
22

33
dependencies {
4-
api "io.lettuce:lettuce-core:6.3.0.RELEASE"
4+
api "io.lettuce:lettuce-core:6.3.1.RELEASE"
55

66
testImplementation "org.junit.jupiter:junit-jupiter-api:5.10.1"
77
testImplementation "org.junit.jupiter:junit-jupiter-params:5.10.1"
88
testRuntimeOnly "org.junit.jupiter:junit-jupiter-engine:5.10.1"
99
testImplementation project(":testcontainers")
1010
testImplementation project(":junit-jupiter")
11-
testImplementation 'org.assertj:assertj-core:3.24.2'
11+
testImplementation 'org.assertj:assertj-core:3.25.2'
1212
}
1313

1414
test {

docs/examples/spock/redis/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ plugins {
44
}
55

66
dependencies {
7-
api "io.lettuce:lettuce-core:6.3.0.RELEASE"
7+
api "io.lettuce:lettuce-core:6.3.1.RELEASE"
88
testImplementation 'org.spockframework:spock-core:2.3-groovy-4.0'
99
testImplementation project(":spock")
1010
testImplementation 'ch.qos.logback:logback-classic:1.3.14'

docs/modules/databases/neo4j.md

+13-6
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
# Neo4j Module
22

3-
This module helps running [Neo4j](https://neo4j.com/download/) using Testcontainers.
3+
This module helps to run [Neo4j](https://neo4j.com/download/) using Testcontainers.
44

55
Note that it's based on the [official Docker image](https://hub.docker.com/_/neo4j/) provided by Neo4j, Inc.
66

7+
Even though the latest LTS version of Neo4j 4.4 is used in the examples of this documentation,
8+
the Testcontainers integration supports also newer 5.x images of Neo4j.
9+
710
## Usage example
811

912
Declare your Testcontainers as a `@ClassRule` or `@Rule` in a JUnit 4 test or as static or member attribute of a JUnit 5 test annotated with `@Container` as you would with other Testcontainers.
@@ -17,7 +20,7 @@ The following example uses the JUnit 5 extension `@Testcontainers` and demonstra
1720
[JUnit 5 example](../../../examples/neo4j-container/src/test/java/org/testcontainers/containers/Neo4jExampleTest.java) inside_block:junitExample
1821
<!--/codeinclude-->
1922

20-
You are not limited to Unit tests and can of course use an instance of the Neo4j Testcontainers in vanilla Java code as well.
23+
You are not limited to Unit tests, and you can use an instance of the Neo4j Testcontainers in vanilla Java code as well.
2124

2225
## Additional features
2326

@@ -102,9 +105,13 @@ If you need the Neo4j enterprise license, you can declare your Neo4j container l
102105
[Enterprise edition](../../../modules/neo4j/src/test/java/org/testcontainers/containers/Neo4jContainerTest.java) inside_block:enterpriseEdition
103106
<!--/codeinclude-->
104107

105-
This creates a Testcontainers based on the Docker image build with the Enterprise version of Neo4j.
108+
This creates a Testcontainers based on the Docker image build with the Enterprise version of Neo4j 4.4.
106109
The call to `withEnterpriseEdition` adds the required environment variable that you accepted the terms and condition of the enterprise version.
107-
You accept those by adding a file named `container-license-acceptance.txt` to the root of your classpath containing the text `neo4j:3.5.0-enterprise` in one line.
110+
You accept those by adding a file named `container-license-acceptance.txt` to the root of your classpath containing the text `neo4j:4.4-enterprise` in one line.
111+
112+
If you are planning to run a newer Neo4j 5.x enterprise edition image, you have to manually define the proper enterprise image (e.g. `neo4j:5-enterprise`)
113+
and set the environment variable `NEO4J_ACCEPT_LICENSE_AGREEMENT` by adding `.withEnv("NEO4J_ACCEPT_LICENSE_AGREEMENT", "yes")` to your container definition.
114+
108115
You'll find more information about licensing Neo4j here: [About Neo4j Licenses](https://neo4j.com/licensing/).
109116

110117

@@ -131,14 +138,14 @@ Add the following dependency to your `pom.xml`/`build.gradle` file:
131138

132139
=== "Gradle"
133140
```groovy
134-
compile "org.neo4j.driver:neo4j-java-driver:4.4.3"
141+
compile "org.neo4j.driver:neo4j-java-driver:4.4.13"
135142
```
136143

137144
=== "Maven"
138145
```xml
139146
<dependency>
140147
<groupId>org.neo4j.driver</groupId>
141148
<artifactId>neo4j-java-driver</artifactId>
142-
<version>4.4.3</version>
149+
<version>4.4.13</version>
143150
</dependency>
144151
```

docs/modules/hivemq.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# HiveMQ Module
22

3-
<img src="../modules_logos/hivemq-module.png" alt="drawing" width="800"/>
3+
![hivemq logo](../modules_logos/hivemq-module.png)
44

55
Automatic starting HiveMQ docker containers for JUnit4 and JUnit5 tests.
66
This enables testing MQTT client applications and integration testing of custom HiveMQ extensions.

examples/cucumber/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ repositories {
77
}
88

99
dependencies {
10-
implementation platform('org.seleniumhq.selenium:selenium-bom:4.16.1')
10+
implementation platform('org.seleniumhq.selenium:selenium-bom:4.17.0')
1111
implementation 'org.seleniumhq.selenium:selenium-remote-driver'
1212
implementation 'org.seleniumhq.selenium:selenium-firefox-driver'
1313
implementation 'org.seleniumhq.selenium:selenium-chrome-driver'
@@ -16,7 +16,7 @@ dependencies {
1616
testImplementation 'io.cucumber:cucumber-java'
1717
testImplementation 'io.cucumber:cucumber-junit'
1818
testImplementation 'org.testcontainers:selenium'
19-
testImplementation 'org.assertj:assertj-core:3.24.2'
19+
testImplementation 'org.assertj:assertj-core:3.25.2'
2020
}
2121

2222
test {

examples/hazelcast/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ dependencies {
1010
testImplementation 'org.testcontainers:testcontainers'
1111
testImplementation 'com.hazelcast:hazelcast:5.3.6'
1212
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
13-
testImplementation 'org.assertj:assertj-core:3.24.2'
13+
testImplementation 'org.assertj:assertj-core:3.25.2'
1414
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
1515
}
1616

examples/immudb/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ dependencies {
1010
implementation 'io.codenotary:immudb4j:1.0.1'
1111
testImplementation 'org.testcontainers:testcontainers'
1212
testImplementation 'org.testcontainers:junit-jupiter'
13-
testImplementation 'org.assertj:assertj-core:3.24.2'
13+
testImplementation 'org.assertj:assertj-core:3.25.2'
1414
testImplementation 'com.google.guava:guava:23.0'
1515
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1616
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'

examples/kafka-cluster/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ dependencies {
1111
testAnnotationProcessor "org.projectlombok:lombok:1.18.30"
1212
testImplementation 'org.testcontainers:kafka'
1313
testImplementation 'org.apache.kafka:kafka-clients:3.6.1'
14-
testImplementation 'org.assertj:assertj-core:3.24.2'
14+
testImplementation 'org.assertj:assertj-core:3.25.2'
1515
testImplementation 'com.google.guava:guava:23.0'
1616
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1717
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'

examples/linked-container/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,6 @@ dependencies {
1212
testRuntimeOnly 'org.postgresql:postgresql:42.7.1'
1313
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1414
testImplementation 'org.testcontainers:postgresql'
15-
testImplementation 'org.assertj:assertj-core:3.24.2'
15+
testImplementation 'org.assertj:assertj-core:3.25.2'
1616
}
1717

examples/nats/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ repositories {
77
}
88

99
dependencies {
10-
testImplementation 'org.assertj:assertj-core:3.24.2'
10+
testImplementation 'org.assertj:assertj-core:3.25.2'
1111
testImplementation 'org.testcontainers:testcontainers'
12-
testImplementation 'io.nats:jnats:2.17.1'
12+
testImplementation 'io.nats:jnats:2.17.2'
1313
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1414
testImplementation 'org.apache.httpcomponents:httpclient:4.5.14'
1515
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'

examples/neo4j-container/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ repositories {
77
}
88

99
dependencies {
10-
testImplementation 'org.assertj:assertj-core:3.24.2'
11-
testImplementation 'org.neo4j.driver:neo4j-java-driver:4.4.12'
10+
testImplementation 'org.assertj:assertj-core:3.25.2'
11+
testImplementation 'org.neo4j.driver:neo4j-java-driver:4.4.13'
1212
testImplementation 'org.testcontainers:neo4j'
1313
testImplementation 'org.testcontainers:junit-jupiter'
1414
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'

examples/redis-backed-cache-testng/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ dependencies {
1414
testImplementation 'org.testcontainers:testcontainers'
1515
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1616
testImplementation 'org.testng:testng:7.5.1'
17-
testImplementation 'org.assertj:assertj-core:3.24.2'
17+
testImplementation 'org.assertj:assertj-core:3.25.2'
1818
}
1919

2020
test {

examples/redis-backed-cache/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ dependencies {
1515
testImplementation 'org.testcontainers:junit-jupiter'
1616
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
1717
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
18-
testImplementation 'org.assertj:assertj-core:3.24.2'
18+
testImplementation 'org.assertj:assertj-core:3.25.2'
1919
}
2020

2121
test {

examples/selenium-container/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ dependencies {
1616
testImplementation 'org.springframework.boot:spring-boot-starter-test'
1717
testImplementation 'org.testcontainers:selenium'
1818
testImplementation 'org.testcontainers:junit-jupiter'
19-
testImplementation 'org.assertj:assertj-core:3.24.2'
19+
testImplementation 'org.assertj:assertj-core:3.25.2'
2020
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
2121
}
2222

examples/settings.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ buildscript {
77
dependencies {
88
classpath "gradle.plugin.ch.myniva.gradle:s3-build-cache:0.10.0"
99
classpath "com.gradle.enterprise:com.gradle.enterprise.gradle.plugin:3.16"
10-
classpath "com.gradle:common-custom-user-data-gradle-plugin:1.12"
10+
classpath "com.gradle:common-custom-user-data-gradle-plugin:1.12.1"
1111
}
1212
}
1313

examples/sftp/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ repositories {
99
dependencies {
1010
testImplementation 'com.jcraft:jsch:0.1.55'
1111
testImplementation 'org.testcontainers:testcontainers'
12-
testImplementation 'org.assertj:assertj-core:3.24.2'
12+
testImplementation 'org.assertj:assertj-core:3.25.2'
1313
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1414
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
1515
}

examples/singleton-container/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ dependencies {
1515

1616
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1717
testImplementation 'org.testcontainers:testcontainers'
18-
testImplementation 'org.assertj:assertj-core:3.24.2'
18+
testImplementation 'org.assertj:assertj-core:3.25.2'
1919
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
2020
}
2121

examples/solr-container/build.gradle

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ dependencies {
1414

1515
testImplementation 'org.testcontainers:testcontainers'
1616
testImplementation 'org.testcontainers:solr'
17-
testImplementation 'org.assertj:assertj-core:3.24.2'
17+
testImplementation 'org.assertj:assertj-core:3.25.2'
1818
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
1919
}
2020

examples/zookeeper/build.gradle

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ repositories {
77
}
88

99
dependencies {
10-
testImplementation 'org.apache.curator:curator-framework:5.5.0'
10+
testImplementation 'org.apache.curator:curator-framework:5.6.0'
1111
testImplementation 'org.testcontainers:testcontainers'
12-
testImplementation 'org.assertj:assertj-core:3.24.2'
12+
testImplementation 'org.assertj:assertj-core:3.25.2'
1313
testImplementation 'ch.qos.logback:logback-classic:1.3.14'
1414
testImplementation 'org.junit.jupiter:junit-jupiter:5.10.1'
1515
}

gradle.properties

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
org.gradle.parallel=false
22
org.gradle.caching=true
33
org.gradle.configureondemand=true
4-
testcontainers.version=1.19.3
4+
org.gradle.jvmargs=-Xmx2g
5+
6+
testcontainers.version=1.19.5

mkdocs.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -125,4 +125,4 @@ nav:
125125
- bounty.md
126126
edit_uri: edit/main/docs/
127127
extra:
128-
latest_version: 1.19.3
128+
latest_version: 1.19.5

0 commit comments

Comments
 (0)