Releases: testcontainers/testcontainers-java
1.19.1
Testcontainers for Java 1.19.1
Core
- Allow to define a custom ImagePullPolicy via configuration (#7520) @eddumelendez
- Override ChainedImageNameSubstitutor toString (#7522) @eddumelendez
- Log image pull and container startup time independently (#7455) @eddumelendez
Modules
- New MinIO module (#7440) @frozenwizard
Redpanda
- Additional listener should inherit the configured authentication method (#7594) @lburgazzoli
What's Changed
- Migrate examples to junit5 (#7417) @samed-bicer
☠️ Deprecations
- Deprecate CLI utility methods in RabbitMQ module (#7588) @eddumelendez
- Deprecate withSecretInVault (#7576) @eddumelendez
📖 Documentation
- Proposing Update to index.md - Env Settings for Rancher Desktop (#7591) @sunilarjun
- Add docs for
copyFileAPI (#4661) @kiview - Add section for dependency upgrades in PR template (#7577) @eddumelendez
- [Docs] GCloud: Add BigQuery Client creation (#7528) @fabriciorby
- Add docs to run Testcontainers using Podman (#7447) @eddumelendez
📦 Dependency updates
7 changes
- Combined dependencies PR (#7587) @eddumelendez
- Update guava version to 32.1.2-jre (#7534) @eddumelendez
- Combined dependencies PR (#7584) @eddumelendez
- Combined dependencies PR (#7519) @eddumelendez
- Combined dependencies PR (#7500) @eddumelendez
- Combined dependencies PR (#7496) @eddumelendez
- Combined dependencies PR (#7494) @eddumelendez
1.19.0
Testcontainers for Java 1.19.0
Core
- Add support for compose v2 with
ComposeContainer(#5608) @eddumelendez - Allow command execution with custom user (#7311) @megglos
- Add
Wait.forListeningPorts(ports)(#7402) @eddumelendez - Enable Ryuk as a privileged container by default (#7319) @eddumelendez
- Use
SelinuxContext.SHAREDby default (#7187) @jeroen-vd-nl - Add interface to customize
CreateContainerCmd(#7421) @eddumelendez
Modules
ClickHouse
- Add new
ClickHouseContainerimplementation (#7403) @eddumelendez
Elasticsearch
- Disable default geoip database downloading (#7247) @lhotari
- Disable default disk threshold check (#7245) @lhotari
DB2
- Support icr.io/db2_community/db2 as a compatible image (#7397) @eddumelendez
GCloud
- Add
BigQueryEmulatorContainer(#7324) @eddumelendez - Expose getProjectId in
DatastoreEmulatorContainer(#7328) @eddumelendez - Support String image in Bigtable, Firestore, PubSub, Spanner (#7327) @eddumelendez
JUnit Jupiter
- Fix call to stop containers when using
@Testcontainers(parallel = true)(#7394) @eddumelendez
Kafka
- Allow to register additional listeners (#7333) @eddumelendez
See https://java.testcontainers.org/modules/kafka/
MS SQL Server
- Fix MSSQL's default username (#7238) @Eng-Fouad
QuestDB
- Add questdb as a database provider (#7244) @eddumelendez
Redpanda
- Add Redpanda improvements (#7320) @eddumelendez
- Allow to enable authorization and authentication methods
- Allow to add additional listeners. E.g. using it with toxiproxy or redpanda console
- Enable rest proxy
- Configure rpk
See https://java.testcontainers.org/modules/redpanda/
Solace
- Enable Solace PubSub+ Manager (#7411) @eddumelendez
Spock
- Add JavaDoc to Spock's Testcontainers annotation (#6802) @winne42
- Generate javadoc artifact for spock module (#7318) @eddumelendez
What's Changed
- Add tests using TCC (#7415) @eddumelendez
- Fix javadoc warnings (#7317) @eddumelendez
- SnakeYaml SafeConstructor restricting deserialization (#6319) @julianladisch
- Fix locations set to None in sitemap (#7232) @leocross
☠️ Deprecations
- Deprecate dynalite (#7191) @eddumelendez
📖 Documentation
- Add global testcontainers header to docs (#7401) @leocross
- Fix colima documentation (#7412) @eddumelendez
- Fix broken tabs in Consul module docs (#7398) @sh-cho
- Polish reuse documentation (#7316) @eddumelendez
- Add Synthesized (#7258) @eddumelendez
- Add missing TC JDBC URLs (#7243) @eddumelendez
- Made k3s documentation a little clearer about starting the container (#5175) @georgecodes
- Update docs domain from www to java (#7179) @leocross
🧹 Housekeeping
- Add User-Agent to docker client (#7407) @eddumelendez
- Improve javadoc for Testcontainers implementations (#7408) @eddumelendez
- Move common configuration in workflows (#7396) @eddumelendez
- Apply priority execution in CI (#7395) @eddumelendez
- Fix javadoc for RabbitMQContainer (#7339) @eddumelendez
- Polish tests in hivemq module (#7308) @eddumelendez
- Use testRuntimeOnly for JDBC/R2DBC drivers (#7295) @eddumelendez
- Use cucumber-bom and selenium-bom (#7249) @eddumelendez
- Use org.seleniumhq.selenium:selenium-bom (#7248) @eddumelendez
- Fix Testcontainers name (#7250) @eddumelendez
- Refactor spring-boot-kotlin-redis example to be more Kotlin idiomatic (#7185) @jitokim
- Use static import for assertThat (#7188) @eddumelendez
- Ignore jackson-datatype-jsr310 in dependabot.yml (#7143) @eddumelendez
- Fix paths-ignore for ci-examples.yml (#7138) @eddumelendez
- Remove unused com.google.auto.service:auto-service dependency (#7230) @eddumelendez
- Update google-cloud-cli image version to 441 (#7389) @eddumelendez
📦 Dependency updates
14 changes
- Combined dependencies PR (#7391) @eddumelendez
- Combined dependencies PR (#7388) @eddumelendez
- Update docker-java version to 3.3.3 (#7423) @eddumelendez
- Combined dependencies PR (#7292) @eddumelendez
- Combined dependencies PR (#7290) @eddumelendez
- Combined dependencies PR (#7289) @eddumelendez
- Use com.amazonaws:aws-java-sdk-bom (#7228) @eddumelendez
- Use com.google.cloud:libraries-bom (#7227) @eddumelendez
- Update captainhook plugin version to 0.1.5 (#7221) @eddumelendez
- Update selenium version to 4.10.0 (#7163) @eddumelendez
- Update questdb version to 7.1.3 (#7145) @eddumelendez
- Update cucumber version to 7.12.0 (#7144) @eddumelendez
- Update lombok version to 1.18.28 (#7293) @eddumelendez
- Update captainhook plugin version to 0.1.5 (#7221) @eddumelendez
1.18.3
Testcontainers for Java 1.18.2 introduced new strategies to detect the docker.sock. There was an issue reported, see #7082. It's is highly recommended to use version 1.18.3.
What's Changed
- Fixes for new strategies (#7085) @eddumelendez
🧹 Housekeeping
1.18.2
Highlights ✨
- Support Docker Desktop paths for Linux and Mac (#7058) @eddumelendez
- Update
testcontainers/ryukversion to 0.5.1 (#7054) @eddumelendez
🐛 Bug Fixes
- [redpanda] Fix command by setting memory to 1G (#7045) @eddumelendez
- [cratedb] Enable single node by default (#7041) @matriv
🚀 Features & Enhancements
- Add
TestcontainersHostPropertyClientStrategy(#7053) @eddumelendez - DockerComposeContainer: add 'removeVolumes' parameter (#7009) @DanWiseProgramming
📖 Documentation
- Fix typo in gitlab_ci instruction docs (#7059) @dakshin-k
- Add Apache Kyuubi to who is using testcontainers (#7042) @bowenliang123
🧹 Housekeeping
- Add LocalStackContainer#getEndpoint() (#7037) @eddumelendez
1.18.1
What's Changed
- Favor copy compose file instead of mount (#6945) @eddumelendez
- Allow
@Containerto be used as a meta-annotation (#6914) @eddumelendez
🚀 Features & Enhancements
- Support Kraft post Confluent Platform 7.4.0 (#7014) @danielpetisme
- Alternative waiting strategy for Mockserver container (#6951) @DenilssonMontoya
- Update RedpandaContainer.java (#6939) @shelajev
🐛 Bug Fixes
- Lowercase identifier in DockerComposeContainer (#6944) @eddumelendez
- Use the current thread's classloader for classes (#6926) @snowe2010
📖 Documentation
- Add new section for test integrations (#6930) @LeoColman
🧹 Housekeeping
- Test against Cassandra 4.x (#7013) @wakingrufus
- Update lombok version to 1.18.26 (#6935) @eddumelendez
- Fix generated pom with duplicated entries (#6931) @eddumelendez
📦 Dependency updates
- Bump Pulsar version to 3.0.0 (#7016) @nicoloboschi
- Update Gradle Wrapper to 8.1.1 (#6933) @github-actions
- Combined dependencies PR (#6912) @eddumelendez
- Combined dependencies PR (#6908) @eddumelendez
1.18.0
Core module
- Modules images such as
MySQLContainerare now automatically compatible with their corresponding images with thelibraryprefix
MySQLContainer<?> mysql = new MySQLContainer<>("library/mysql");testcontainers/vnchas been bumped to version 1.3.0, which brings ARM support.- Goodbye to the whale in the logs. In order to provide an easy way to filter container logs the
tcprefix has been added to display all container logs ortc.<image-name:tag>for a specific one. Check the logging docs. - There is a new
WaitStrategy,ShellStrategy. It can also be used by callingWait.forSuccessfulCommand(<command>)
New integration
Jib has been integrated to Testcontainers in order to take advantage of the nice API it provides to create containers
GenericContainer<?> busybox = new GenericContainer<>(
new JibImage(
"busybox:1.35",
jibContainerBuilder -> {
return jibContainerBuilder.setEntrypoint("echo", "Hello World");
}
)
)
.withStartupCheckStrategy(new OneShotStartupCheckStrategy().withTimeout(Duration.ofSeconds(3)))New modules 🆕
CrateDB module
In order to use CrateDBContainer , declare the dependency in your pom.xml/build.gradle
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>cratedb</artifactId>
<version>1.18.0</version>
<scope>test</scope>
</dependency>testImplementation "org.testcontainers:cratedb:1.18.0"Choose a crate image version and use it as declared below with your postgres driver
CrateDBContainer cratedb = new CrateDBContainer("crate:5.2.5");Solace Module
In order to use SolaceContainer , declare the dependency in your pom.xml/build.gradle
<dependency>
<groupId>org.testcontainers</groupId>
<artifactId>solace</artifactId>
<version>1.18.0</version>
<scope>test</scope>
</dependency>testImplementation "org.testcontainers:solace:1.18.0"Now, you can use a Solace PubSub running in a container and connecting via AMQP by doing the following:
SolaceContainer solace = new SolaceContainer("solace/solace-pubsub-standard:10.2");
solace.start();
Session session = createSession(
solaceContainer.getUsername(),
solaceContainer.getPassword(),
solaceContainer.getOrigin(Service.AMQP)
);More information about SolaceContainer can be found in the documentation.
Container modules
CockroachDB
Starting with cockroachdb/cockroach:22.1.0, there is support for setting the username, password and database name via environment variables. Now, the Testcontainers module provides convenient setters:
CockroachContainer cockroach = new CockroachContainer("cockroachdb/cockroach:22.1.0")
.withUsername("test_user")
.withPassword("test_password")
.withDatabaseName("test_database");GCloud module
Google has released a new image which supports ARM and therefore BigtableEmulatorContainer, DatastoreEmulatorContainer, FirestoreEmulatorContainer, PubSubEmulatorContainer now support it as well.
So, if previously you were doing something like
DockerImageName.parse("gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators")
.asCompatibleSubstituteFor("gcr.io/google.com/cloudsdktool/cloud-sdk");Now, you can simply do
DockerImageName.parse("gcr.io/google.com/cloudsdktool/google-cloud-cli:380.0.0-emulators");JUnit Jupiter Module
@Testcontainers offers a new attribute parallel, which start those containers classes annotated by @Container
@Testcontainers(parallel = true)
class ParallelTest {
@Container
private static final PostgreSQLContainer<?> postgres = new PostgreSQLContainer<>("postgres:15-alpine")
.withCopyFileToContainer(MountableFile.forClasspathResource("db.sql"), "/docker-entrypoint-initdb.d/")
.withNetwork(network)
.withNetworkAliases("postgres");
@Container
private static final ToxiproxyContainer toxiproxy = new ToxiproxyContainer("ghcr.io/shopify/toxiproxy:2.5.0")
.withNetwork(network);
}Kafka Module
Self-managed or Kraft mode (a.k.a Zookeeperless) support has been added
KafkaContainer kafka = new KafkaContainer(DockerImageName.parse("confluentinc/cp-kafka:7.0.1")).withKraft()LocalStack Module
SERVICES environment variable became optional in version 0.13.0 and instead LocalStack will initialize a service once the first request is served. So, nowadays LocalStackContainer can be used just like this:
LocalStackContainer localstack = new LocalStackContainer("localstack/localstack:2.0.0");Also, LocalStack module supports version 2.0. It is highly recommended to use the latest version of LocalStack images.
Last but not least, dependency on AWS SDK V1 was dropped. So, that means by upgrading to version 1.18.0, the dependency can be removed if not used directly.
MongoDB Module
MongoDBContainer by default has been enabling ReplicaSet mode. Starting in this version, sharding has been added.
MongoDBContainer mongodb = new MongoDBContainer("mongo:6")
.withSharding();Selenium Module
Selenium 4 has built-in support for Microsoft Edge (which is based on Chromium) and now it is supported by BrowserWebDriverContainer as well:
BrowserWebDriverContainer<?> edge = new BrowserWebDriverContainer<>("selenium/standalone-edge:4.8.0")
.withCapabilities(new EdgeOptions());More
⚠️ Breaking API changes
- Removed deprecated methods and undeclared transitive dependency to AWS SDK v1 (#5827) @AB-xdev
- Move junit-jupiter-api's dependency configuration to implementation (#5985) @edysli
🚀 Features & Enhancements
- Improve startup wait checks (#6384) @deejgregor
- #6667: reset network creation state if network creation fails. (#6668) @k-wall
- [Feature]: ShellStrategy, a new WaitStrategy (#6672) @m4rii0
- feat: also check DOCKER_AUTH_CONFIG for registry auth config as an alternative to config.json (#6238) @roseo1
- Ensure readability of MySQL and MariaDB config override (#6625) @famod
- Bugfix: Log consumers are now called with exactly one complete log line (#5854) @SgtSilvio
- ClickHouse uses new driver if it is available and version is compatible (#6236) @trolley813
- Add devcontainer file (#6412) @eddumelendez
- Add Docker image name to ContainerLaunchException message (#6408) @Donnerbart
- Make sure we don't hide exceptions from waitUntilContainerStarted (#6167) @deejgregor
- feat: enable reuse for mongodb (#6235) @tiboun
- Avoid Pattern recompilation in log output processing (#6239) @dreis2211
- Fixes the issue of missing root cause in container launch TimeoutException (e.g. SSLHandshakeException) (#5778) @cdanger
☠️ Deprecations
- Deprecate VaultContainer#withLogLevel (#6795) @eddumelendez
🐛 Bug Fixes
1.17.6
What's Changed
Highlights
This release has been made possible through the efforts of 20 contributors. The Testcontainers does not cease to amaze us, thanks to everyone of you and thanks for the ongoing support and collaboration 🥰.
This release brings a lot of database love with 2 new modules, and as always a couple of bug fixes and improvements
New Module: QuestDB (#5995) @Vangreen
QuestDB, is a high-performance, open-source SQL database for applications in financial services, IoT, machine learning, DevOps and observability.
var container = new QuestDBContainer("questdb/questdb:6.5.3")
container.start()
var connectionUrl = container.getHttpUrl()
// use the connectionUrl and start testing!New Module: YugabyteDB (#4372) @srinivasa-vasu
YugabyteDB, is a modern distributed SQL database for transactional cloud native applications. PostgreSQL compatible. It offers two APIs, SQL and CQL.
var container = new YugabyteDBYSQLContainer("yugabytedb/yugabyte:2.14.4.0-b26");
container.start()
var jdbcUrl = container.getJdbcUrl();
// use the jdbcUrl and start testing!var container = new YugabyteDBYCQLContainer("yugabytedb/yugabyte:2.14.4.0-b26");
container.start()
var contactPoint = container.getContactPoint();
// use the contactPoint and start testing!🚀 Features & Enhancements
- InfluxDB v2 support (#3669) @raminqaf
- Add support for flags in DatastoreEmulatorContainer (#5993) @eddumelendez
- Expose Redpanda schema registry (#5994) @gustavomonarin
- Adds the ability to set a target build stage to a Dockerfile (#4810) @GenghisChen
🐛 Bug Fixes
- Fixes wrong timestamp calculation (#5988) @leblonk
- Catch and ignore more errors when reflecting into container subclass (#5990) @akhaku
- Return default for empty environment variable (#5983) @roulpriya
📖 Documentation
- Add Spotify in Donors section (#6083) @eddumelendez
- Updated Vault docs, uplifted Vault image version (#3685) @RamazanYapparov
- Add Hazelcast Example (#6117) @tomazfernandes
- Improve ToxiProxyContainer test and docs (#6065) @eddumelendez
- fix link zookeeper (#6079) @rnzit
- chore: sync governance files (#6075) @kiview
- Update docs to better reflect the links to other languages (#6068) @kiview
- Add step to create symlink when Docker for Mac 4.13 is installed (#6064) @eddumelendez
- Add language links to docs index (#6067) @leocross
- Update gitlab_ci.md with clarifying note about the docker host port number (#6063) @BenManifold
- Add zookeeper example (#6059) @eddumelendez
- Add travis minimal configuration (#6056) @eddumelendez
- fix: edit link in documentation (#6055) @DanielHabenicht
- Deprecate
setCustomContentandwithCustomContentatNginxContainer(#5997) @eddumelendez - Add paragraph about Docker requirements to docs (#5987) @kiview
- Add reference to supported languages (#5979) @eddumelendez
- doc: Update logback-test.xml example to show how to enable DEBUG only for Testcontainers (#5976) @edysli
🧹 Housekeeping
- Remove "Starting an elasticsearch container" message in constructor (#6127) @deejgregor
- Apply spotless and checkstyle to examples (#6061) @eddumelendez
- Remove unused Pipfiles (#6046) @kiview
- Update toxiproxy image to ghcr.io/shopify/toxiproxy (#5996) @eddumelendez
- Deprecate
setCustomContentandwithCustomContentatNginxContainer(#5997) @eddumelendez - Remove Transferable#of(java.lang.String,int) for japicmp (#5992) @eddumelendez
- Remove unnecessary configuration from simple tests (#5973) @JanHendrikDolling
- Fix dependabot.yml ignore section (#5999) @eddumelendez
- Update set-output command in workflows (#6058) @eddumelendez
- Use
gradle/gradle-build-action(#6121) @eddumelendez - Add lang and version labels to containers (#6124) @eddumelendez
- Fix labeler configuration (#6157) @eddumelendez
📦 Dependency updates
9 changes
* Ignore updates for org.neo4j:neo4j (#6112) @eddumelendez * Combined dependencies PR (#6210) @eddumelendez * Combined dependencies PR (#6205) @eddumelendez * Combined dependencies PR (#6173) @eddumelendez * Combined dependencies PR (#6153) @eddumelendez * Combined dependencies PR (#6150) @eddumelendez- Combined dependencies PR (#6118) @eddumelendez
- Combined dependencies PR (#6114) @eddumelendez
- Combined dependencies PR (#6113) @eddumelendez
- Combined dependencies PR (#6212) @eddumelendez
1.17.5
What's Changed
Warning
Version 1.17.4 was released upgrading slf4j-api to version 2.x. This dependency has been reverted to 1.17.x.
- Rollback back to slf4j-api 1.7.36 (#5951) @kiview
- Bump logback-classic versions (#5948) @eddumelendez
- Bump kotlin plugins version to 1.7.20 (#5945) @eddumelendez
- Add banner when Ryuk is disabled (#5929) @eddumelendez
📖 Documentation
- Test container example for ImmuDB (#5860) @hariohmprasath
- Reference to GitHub Discussions (#5928) @eddumelendez
- Rename main branch (#5847) @eddumelendez
📦 Dependency updates
- Combined dependencies PR (#5944) @eddumelendez
- Combined dependencies PR (#5936) @eddumelendez
- Combined dependencies PR (#5935) @eddumelendez
- Combined dependencies PR (#5931) @eddumelendez
1.17.4
What's Changed
Highlights
This release has been made possible through the efforts of whopping 23 contributors, wow! 🤯
Besides 3 new modules, this release brings a couple of bugfixes, improved compatibility and resilience in certain scenarios, better defaults and more configurability.
You might also notice many PRs related to the documentation, templates for PRs and issues, and automation regarding OSS contributions. Testcontainers has always been a project with a lot of involvement by the community and we are very proud of this. That’s why want to make contributing to Testcontainers a great experience, no matter if you raise an issue, submit a PR or initiate a discussion in GitHhub Discussions.
🐼 New Module: Redpanda (#5740) @eddumelendez
Redpanda, a Kafka-compatible streaming platform, recently added a special dev-container mode to their container image, that allows even faster startup times. A great reason to work in a Testcontainers module that leverages this flag by default to give you a great integration testing experience when using Redpanda. And of course, using Redpanda with Testcontainers is as easy and convenient as you are used to:
var container = new RedpandaContainer("docker.redpanda.com/vectorized/redpanda:v22.2.1")
container.start()
var connectionUrl = container.getBootstrapServers()
// use the connectionUrl and start testing!
You can check out the docs to learn more.
New Module: TiDB (#5511) @Icemap
With TiDB, we are adding support for a new database module. As with other databases that can be accessed via JDBC, you can leverage Testcontainers’ special JDBC URL integration:
jdbc:tc:tidb:v6.1.0:///databasename
New Module: Hashicorp Consul (#4683) @julb
🚀 Features & Enhancements
- getContainerByServiceName should work without suffix (#5776) @REslim30
- Allow Pulsar default WaitStrategy to honour startup timeout (#5674) @nahguam
- fix: ContainerDatabaseDriver does not register Properties object (#5829) @REslim30
- couchbase: allow to configure bucket replicas and default to 0. (#5840) @daschl
- Add compatibility with MongoDB 6 (#5771) @eddumelendez
- Set default elasticsearch heap size to 2GB (Alternate PR) (#5684) @REslim30
- Add
Transferable.of(String, int)(#5741) @eddumelendez - Make TestcontainersExtension public (#5285) @hmatt1
- Update Cassandra driver to 4.x (#2830) @emerkle826
- Make outer maximum startup timeout in
DockerComposeContainerconfigurable (#5588) @henri-tremblay - Improve Pulsar's wait strategy to rely on clusterName (#5613) @eddumelendez
🐛 Bug Fixes
- getLivenessCheckPortNumbers() should return mapped port (#5734) @REslim30
📖 Documentation
- Improve consistency of Testcontainers name in docs (#5866) @neslihanedes
- Fix typos on index.md (#5832) @neslihanedes
- docs: fix link to the bounty program (#5831) @mdelapenya
- Fix link for Selenium examples (#5786) @kiview
- Remove
disque-job-queueandmongodb-containerexamples (#5782) @eddumelendez - Upgrade spring-boot version to 2.7.3 in examples (#5764) @eddumelendez
- Add samples section (#5763) @eddumelendez
- Add Consul module (#4683) @julb
- Add syntax highlighting to colima usage doc (#5673) @kishaningithub
- Link to the docs on environment discovery failure (#5615) @bsideup
- Add docs for AWS CodeBuild and Tekton (#5614) @eddumelendez
- Update CircleCI docs for current Cloud/v2/v3 configuration (#5611) @epragtbeamtree
- Update Oracle-XE docs and use code example from tests (#4385) @kiview
- Enable JUnitPlatform in Gradle for JUnit5 examples (#4130) @kiview
- Add documentation for DependsOn (#5597) @QuinnBast
- Improve docs (#5522) @eddumelendez
- Improve Issue Templates (#5836) @eddumelendez
- Fix type/docs label (#5759) @eddumelendez
- Add Pull Request Template (#5735) @eddumelendez
🧹 Housekeeping
- Update localstack images in tests (#5783) @eddumelendez
- Remove thundra from ci.yml (#5850) @eddumelendez
- Exclude
org.testcontainers.shaded.*package and upgrade deps (#5775) @eddumelendez - Revert "Update GHA runner image to latest Ubuntu" (#5766) @kiview
- Add test-retry plugin (#5586) @eddumelendez
- GitHub Workflows security hardening (#5821) @sashashura
- Add host os and arch in bug report template (#5525) @eddumelendez
- getLivenessCheckPortNumbers() should return mapped port (#5734) @REslim30
- Use
testCompileOnlyinstead oftestCompileClasspath(#5849) @eddumelendez - Update slf4j in test-support to 2.0.0 (#5848) @kiview
- Remove
disque-job-queueandmongodb-containerexamples (#5782) @eddumelendez - Run mongosh or mongo if cmd exists (#5774) @eddumelendez
- Add .sdkmanrc with 8.0.345-tem (#5772) @eddumelendez
- Add link to GH Discussions to Issue forms (#5767) @eddumelendez
- [couchbase] Only expose ports for enabled services (#4595) @daschl
- Update GHA runner image to latest Ubuntu (#5761) @kiview
- Enforce UTF-8 as Javadoc encoding (#5738) @gesellix
- Drop usage of
org.junit.platform.commons.util(#5729) @eddumelendez - Move junit4 to assertj (#5685) @eddumelendez
- Removes unused module junit-toolbox (#5678) @froque
- Move to assertj (#5679) @eddumelendez
- Add pr label for area/docker-compose (#5610) @eddumelendez
- Update alpine image to 3.16 (#4698) @tobiasstadler
- Update spotless version to 6.8.0 (#5605) @eddumelendez
- Fix javadoc comment in ToxiproxyContainer#getProxy(GenericContainer, int) (#5591) @kwart
- chore: Set permissions for GitHub actions (#5523) @naveensrinivasan
- Add labeler action (#5516) @eddumelendez
📦 Dependency updates
1.17.3
What's Changed
🚀 Features & Enhancements
- modules/clickhouse: JDBC driver name changed, liveness port (#5474) @anavrotski
- Elasticsearch: Fix startup check for 8.3 and above (#5521) @spinscale
- Switch toxiproxy default image to ghcr.io and update default tag to 2.4.0 (#5173) @gmunozfe
- Check admin endpoint instead of metrics for Pulsar WaitStrategy. (#5514) @nahguam
- [LocalStack] Remove usage of deprecated methods (#5491) @eddumelendez
- Add clickhouse/clickhouse-server compatibility (#5488) @eddumelendez
- Use sshd container 1.1.0 (#5486) @jerrinot
- [HiveMQ] do not delete /opt/hivemq/temp-extensions in startup command (#5509) @YannickWeber
- Pulsar: add flag to enable transactions and set configuration (#5479) @nicoloboschi
- Don't ignore sql test query exception, add it as cause exception (#5484) @anatoly0karyakin
- Get region from env variables or default (#3556) @adrianpozueco
- Use
TestInstancesAPI from JUnit Jupiter (#2719) @tobiasstadler
☠️ Deprecations
- [LocalStack] Deprecate methods using aws sdk v1 (#5489) @eddumelendez
🐛 Bug Fixes
📖 Documentation
- Added the Bucket4j library to "Who is using Testcontainers?" (#5480) @MaxBartkov
- Docs: Add Spark ClickHouse Connector use case (#5270) @pan3793
- Polish examples (#5520) @eddumelendez
- [LocalStack] Remove usage of deprecated methods (#5491) @eddumelendez
- Feature template: Fix typo in Alternatives section label (#5505) @daniel-shuy
- Fix missing link color in docs (#5508) @kiview
- adds docs cockroach jdbc example (#5100) @cristianbriscaru
- Remove free disk space check log in example (#5502) @KENNYSOFT
- Add issue forms (#5490) @eddumelendez
- Add MariaDB
rootuser password section to docs (#5498) @kiview - Add section about MySQL root user password to docs (#5497) @kiview
🧹 Housekeeping
- Cleanup japicmp baselines (#5463) @eddumelendez
- JdbcDatabaseContainer: fix wrong instance call (#5465) @monosoul
- Add try-with-resources to HttpWaitStrategyTest (#5397) @eddumelendez
- Apply spotless and checkstyle (#5390) @eddumelendez
- Add spotless and checkstyle (#5383) @eddumelendez
📦 Dependency updates
Click to expand...
- Bump common-custom-user-data-gradle-plugin from 1.7 to 1.7.2 in /examples (#5495) @dependabot
- Bump neo4j-java-driver from 4.4.5 to 4.4.6 in /examples (#5468) @dependabot
- Bump google-cloud-firestore from 3.0.21 to 3.2.0 in /modules/gcloud (#5444) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/azure (#5443) @dependabot
- Bump slf4j-api from 1.7.32 to 1.7.36 in /examples (#5078) @dependabot
- Bump gson from 2.8.9 to 2.9.0 in /examples (#5076) @dependabot
- Bump r2dbc-mssql from 0.8.7.RELEASE to 0.9.0.RELEASE in /modules/mssqlserver (#4983) @dependabot
- Bump mockito-core from 4.4.0 to 4.6.1 in /modules/junit-jupiter (#5473) @dependabot
- Bump aws-java-sdk-sqs from 1.12.210 to 1.12.233 in /modules/localstack (#5472) @dependabot
- Bump google-cloud-datastore from 2.4.0 to 2.7.0 in /modules/gcloud (#5471) @dependabot
- Bump s3 from 2.17.181 to 2.17.204 in /modules/localstack (#5470) @dependabot
- Bump common-custom-user-data-gradle-plugin from 1.7 to 1.7.1 in /examples (#5469) @dependabot
- Bump com.gradle.enterprise.gradle.plugin from 3.10 to 3.10.1 (#5461) @dependabot
- Bump google-cloud-spanner from 6.20.0 to 6.25.5 in /modules/gcloud (#5455) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/r2dbc (#5454) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/gcloud (#5453) @dependabot
- Bump google-cloud-firestore from 3.0.21 to 3.2.0 in /modules/gcloud (#5444) @dependabot
- Bump elasticsearch-rest-client from 7.16.2 to 8.2.2 in /modules/elasticsearch (#5430) @dependabot
- Bump jedis from 4.2.2 to 4.2.3 in /modules/junit-jupiter (#5426) @dependabot
- Bump rest-assured from 5.0.1 to 5.1.0 in /modules/vault (#5419) @dependabot
- Bump kafka-clients from 3.0.0 to 3.2.0 in /modules/kafka (#5372) @dependabot
- Bump cucumber-junit from 7.2.3 to 7.3.4 in /examples (#5371) @dependabot
- Bump jedis from 4.2.2 to 4.2.3 in /examples (#5369) @dependabot
- Bump client-java from 15.0.0 to 15.0.1 in /modules/k3s (#5329) @dependabot
- Bump mongodb-driver-sync from 4.5.1 to 4.6.0 in /modules/mongodb (#5328) @dependabot
- Bump org.jetbrains.kotlin.plugin.spring from 1.6.20 to 1.6.21 in /examples (#5317) @dependabot
- Bump mysql-connector-java from 8.0.27 to 8.0.29 in /modules/junit-jupiter (#5308) @dependabot
- Bump mongo-java-driver from 3.12.10 to 3.12.11 in /core (#5291) @dependabot
- Bump logback-classic from 1.2.10 to 1.2.11 in /modules/hivemq (#5243) @dependabot
- Bump json from 20211205 to 20220320 in /examples (#5217) @dependabot
- Bump r2dbc-postgresql from 0.8.11.RELEASE to 0.8.12.RELEASE in /modules/postgresql (#5201) @dependabot
- Bump awaitility from 4.1.1 to 4.2.0 in /modules/couchbase (#5199) @dependabot
- Bump slf4j-api from 1.7.35 to 1.7.36 in /core (#5085) @dependabot
- Bump slf4j-api from 1.7.32 to 1.7.36 in /examples (#5078) @dependabot
- Bump common-custom-user-data-gradle-plugin from 1.6.5 to 1.7 (#5462) @dependabot
- Bump com.gradle.enterprise.gradle.plugin from 3.10 to 3.10.1 (#5461) @dependabot
- Bump hivemq-extension-sdk from 4.8.0 to 4.8.1 in /modules/hivemq (#5459) @dependabot
- Bump reactor-core from 3.4.17 to 3.4.18 in /modules/r2dbc (#5457) @dependabot
- Bump google-cloud-bigtable from 2.6.2 to 2.8.0 in /modules/gcloud (#5456) @dependabot
- Bump google-cloud-spanner from 6.20.0 to 6.25.5 in /modules/gcloud (#5455) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/gcloud (#5453) @dependabot
- Bump azure-cosmos from 4.29.1 to 4.30.0 in /modules/azure (#5452) @dependabot
- Bump postgresql from 42.3.4 to 42.3.6 in /modules/cockroachdb (#5450) @dependabot
- Bump google-cloud-pubsub from 1.116.4 to 1.119.0 in /modules/gcloud (#5449) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/k3s (#5447) @dependabot
- Bump trino-jdbc from 379 to 382 in /modules/trino (#5446) @dependabot
- Bump google-cloud-firestore from 3.0.21 to 3.2.0 in /modules/gcloud (#5444) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/rabbitmq (#5442) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/orientdb (#5441) @dependabot
- Bump release-drafter/release-drafter from 5.19.0 to 5.20.0 (#5440) @dependabot
- Bump actions/cache from 3.0.2 to 3.0.3 (#5439) @dependabot
- Bump peter-evans/create-pull-request from 4.0.2 to 4.0.3 (#5438) @dependabot
- Bump postgresql from 42.3.3 to 42.3.6 in /examples (#5437) @dependabot
- Bump transport from 7.17.3 to 7.17.4 in /modules/elasticsearch (#5435) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/database-commons (#5436) @dependabot
- Bump aws-java-sdk-logs from 1.12.169 to 1.12.232 in /modules/localstack (#5434) @dependabot
- Bump postgresql from 42.3.4 to 42.3.6 in /modules/junit-jupiter (#5433) @dependabot
- Bump jedis from 4.2.2 to 4.2.3 in /core (#5432) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /core (#5431) @dependabot
- Bump elasticsearch-rest-client from 7.16.2 to 8.2.2 in /modules/elasticsearch (#5430) @dependabot
- Bump postgresql from 42.3.1 to 42.3.6 in /modules/spock (#5428) @dependabot
- Bump aws-java-sdk-sqs from 1.12.210 to 1.12.231 in /modules/localstack (#5427) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/vault (#5425) @dependabot
- Bump common-custom-user-data-gradle-plugin from 1.6.2 to 1.7 in /examples (#5423) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/junit-jupiter (#5422) @dependabot
- Bump aws-java-sdk-dynamodb from 1.12.210 to 1.12.232 in /modules/dynalite (#5421) @dependabot
- Bump aws-java-sdk-s3 from 1.12.191 to 1.12.231 in /modules/localstack (#5420) @dependabot
- Bump tomcat-jdbc from 10.0.20 to 10.0.21 in /modules/jdbc (#5417) @dependabot
- Bump rest-assured from 5.0.1 to 5.1.0 in /modules/vault (#5419) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/neo4j (#5415) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/jdbc (#5410) @dependabot
- Bump mockito-core from 4.3.1 to 4.6.0 in /core (#5411) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/kafka (#5413) @dependabot
- Bump postgresql from 42.3.4 to 42.3.6 in /modules/postgresql (#5412) @dependabot
- Bump assertj-core from 3.22.0 to 3.23.1 in /modules/pulsar (#5414) @dependabot
- Bump neo4j from 3.5.32 to 3.5.33 in /modules/neo4j (#5408) @dependabot
- Bump mariadb-java-client from 3.0.3 to 3.0.5 in /modules/mariadb (#5409) @dependabot
- Bump tomcat-jdbc from 10.0.20 to 10.0.21 in /modules/jdbc-test (#5407) @dependabot