Releases: testcontainers/testcontainers-java
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
DockerComposeContainer
configurable (#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-queue
andmongodb-container
examples (#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
testCompileOnly
instead oftestCompileClasspath
(#5849) @eddumelendez - Update slf4j in test-support to 2.0.0 (#5848) @kiview
- Remove
disque-job-queue
andmongodb-container
examples (#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
TestInstances
API 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
root
user 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
1.17.2
What's Changed
While this release had a major focus on stability, we managed to optimize the startup sequence and it should make your tests even faster!
Here is what it takes to have a Redis up and running with Testcontainers, end-to-end from the test's start to an instance ready to be connected:
Before (1.17.1): 2.4s
Before (1.17.2): 1.7s 🚀
And here is just the "initialize Testcontainers" measurements:
Before (1.17.1): 1102ms
Before (1.17.2): 928ms
How we did it? We noticed that we can cache a couple of Docker responses, plus also removed now obsolete (yet expensive!) disk space check.
🚀 Features & Enhancements
- K3sContainer: expose kubeConfig for docker network access (#5097) @johnathana
- Remove the disk space check (#5381) @bsideup
- Use
GenericContainer
inRyukResourceReaper
(#5358) @bsideup - Allow insecure HTTPS/TLS connection for HttpWaitStrategy (#4951) @reta
- Read
indexServerAddress
from Docker's/info
(#5347) @bsideup - Allow to create exchanges, queues, bindings in the same vhost (#5348) @eddumelendez
- Test
DOCKER_HOST
inDockerClientProviderStrategy
(#5357) @bsideup - Add getConnectionString() for MongoDBContainer (#5271) @mdedetrich
- Rely on
TransportConfig
to readDOCKER_HOST
env variable forDockerComposeContainer
(#5276) @eddumelendez
🐛 Bug Fixes
- Reset WebDriver and vncRecordingContainer when Selenium container stops (#5116) @tobiasstadler
- Synchronize removal of containers from JDBC URL cache (#4598) @edee111
- Fix deadlock in
LocalImagesCache
(#5356) @bsideup - Elasticsearch: Don't throw exception on missing CA cert file (#5265) @spinscale
- Fix connection leak in JDBC waitUntilContainerStarted (#5281) @rpygithub
📖 Documentation
- Add docs for using Gitlab CI with Docker wormhole executor (#4770) @JurrianFahner
- Remove "Linux - Travis CI"from docs (#4374) @cac03
- Add SeaTunnel to who is using testcontainers (#5272) @ruanwenjun
- Fix docs: use getHost (#5288) @eddumelendez
🧹 Housekeeping
- Fix TestcontainersTestDescription filename (#5387) @eddumelendez
- run
core
tests in parallel (#5365) @bsideup - Correct usage of deprecated method
createSubscription()
(#5350) @felix-seifert - Fix docs: use getHost (#5288) @eddumelendez
- Add testcontainers/java-team in CODEOWNERS (#5353) @eddumelendez
- Manage Gradle Enterprise plugins with Dependabot (#5342) @jprinet
- Use
getHost
instead ofgetContainerIpAddress()
(#5277) @eddumelendez
📦 Dependency updates
- Upgrade lombok to be compatible with java 17 (#5388) @eddumelendez
- Combined dependencies PR (#5367) @eddumelendez
- Bump com.gradle.enterprise.gradle.plugin from 3.9 to 3.10 (#5343) @dependabot
- Use latest version of alpine/socat container image (#5280) @dboreham
1.17.1
1.17.0
What's Changed
Highlights
This new version of Testcontainers comes packed with many new features and quality-of-life improvements, so we appropriately bumped the version to 1.17.0
.
🐝 New Module: HiveMQ (#4797) @YannickWeber
Having started its Open Source life as its own 3rd-party Testcontainers library, we are very happy to welcome HiveMQ into the main repository.
Now, using HiveMQ as part of your integration tests is as simple as a couple of lines of Java code:
@Container
HiveMQContainer hivemq = new HiveMQContainer(DockerImageName.parse("hivemq/hivemq-ce:2021.3"));
hivemq.start();
Mqtt5BlockingClient client = Mqtt5Client.builder()
.serverPort(hivemqCe.getMqttPort())
.serverHost(hivemqCe.getHost())
.buildBlocking();
client.connect();
Check out the docs to learn more about its many features!
💀 Ryuk JVM mode (#4959) (#4960) @bsideup
Many Testcontainers user love the convenience Ryuk brings to Testcontainers: No matter what you do in your integration tests, Ryuk has got you covered and will cleanup all Docker resources created by Testcontainers after your test run is finished.
But some users operate Testcontainers in environments which do not support our container-based Ryuk implementation. So far their only option was to disable Ryuk alltogether.
Coming with this release, Testcontainers will now fallback to a JVM based resource-cleanup implementation in case of Ryuk being disabled.
While this won't be as robust as the Ryuk container based implementation in all circumstances, it is nevertheless a great addition and acts as a useful compromise.
🚀 Features & Enhancements
- Allow to create a container file from a Transferable (#3814) (#3815) @thomasdarimont
- Elasticsearch: Ensure Elasticsearch 8 works OOTB secure as default (#5099) @spinscale
- Deperecate
getContainerIpAddress
(#5247) @kiview - Fix ScriptUtils.runInitScript() in hierarchical classloader setup by using TCCL (#5167) @famod
- [HiveMQ] added tmpFs (#5109) @YannickWeber
- Replace deprecated
checkAndPullImage
withRemoteDockerImage
(#5148) @bsideup - Enable Neo4j labs plugin definition. (#5035) @meistermeier
- Deprecate
getTestHostIpAddress
andgetContainerIpAddress
(#5149) @bsideup - Add the session header to every Docker request (#5145) @bsideup
- Start Ryuk lazily when in the reusable mode (#4938) @bsideup
- [HiveMQ] replaced MultiLogMessageWaitStrategy.java with WaitAllStrategy (#5093) @YannickWeber
- #5032 - MS SQL Server disable encrypt by default (#5033) @StefanHufschmidt
- [Couchbase] Add support for Eventing service (#4953) @tchlyah
🐛 Bug Fixes
- Fix incorrect path for RABBITMQ_CONFIG_FILE (#5184) @mdedetrich
- Update mkdocs to 1.3.0 (#5186) @kiview
- Do not mount Selenium's SHM on Windows (#5105) @bsideup
📖 Documentation
- Improved jitpack dependencies page (#5189) @YannickWeber
- Update mkdocs to 1.3.0 (#5186) @kiview
- Mention that Spring Data Neo4j uses Testcontainers in the docs. (#5169) @meistermeier
- Fix formatting in docs for image override configuration (#5147) @rnorth
- [docs]Add the used organization
Byzer
. (#5125) @hellozepp - [Neo4j] Include code from tests in docs. (#5120) @meistermeier
- Polish code samples so that they are easier to copy & paste (#5038) @maciejwalkowiak
- Upgrade mkdocs (#3443) @rnorth
- Remove the
INCUBATING
note from CockroachDB module docs (#4963) @kiview - Update docs version to ${GITHUB_REF##*/} (#4932) @github-actions
- Simplify dependency management for JUnit Jupiter (#4704) @marcphilipp
🧹 Housekeeping
- Increase default client ping timeout from 5 to 10 seconds (#5254) @kiview
- add virtual environment to git ignore (#5156) @jetersen
- Improve Gradle build cacheability (#5188) @jprinet
- Remove OkHttp transport (#5113) @bsideup
- use collapse-after for dependencies category (#5157) @jetersen
- [HiveMQ] replaced non-ascii single quote with ascii single quote (#5102) @YannickWeber
- Run tests using shaded dependencies (#5146) @bsideup
- [HiveMQ] every IT now uses getHost() (#5106) @YannickWeber
- Fix tests on Windows (#5096) @bsideup
- Upgrade mkdocs (#3443) @rnorth
- Remove some dead code from PostgreSQLContainer (#4948) @dajudge
- Use JDK 1.8 in Azure pipelines (#4942) @kiview
📦 Dependency updates
Click to expand...
- Update Gradle Wrapper to 7.4.2 (#5193) @github-actions
- Update Gradle Wrapper to 7.4.1 (#5168) @github-actions
- Update to
docker-java
3.2.13 (#5045) @bsideup - Update Gradle Wrapper to 7.4 (#5036) @github-actions
- Upgrade mkdocs (#3443) @rnorth
- Bump zip4j from 2.9.1 to 2.10.0 in /modules/hivemq (#5242) @dependabot
- Bump hivemq-extension-sdk from 4.7.4 to 4.7.5 in /modules/hivemq (#5241) @dependabot
- Bump google-cloud-firestore from 3.0.14 to 3.0.21 in /modules/gcloud (#5239) @dependabot
- Bump google-cloud-pubsub from 1.115.1 to 1.116.3 in /modules/gcloud (#5238) @dependabot
- Bump google-cloud-datastore from 2.2.2 to 2.3.0 in /modules/gcloud (#5236) @dependabot
- Bump reactor-core from 3.4.15 to 3.4.16 in /modules/r2dbc (#5234) @dependabot
- Bump google-cloud-bigtable from 2.5.2 to 2.6.1 in /modules/gcloud (#5233) @dependabot
- Bump mongodb-driver-sync from 4.5.0 to 4.5.1 in /modules/mongodb (#5231) @dependabot
- Bump client-java from 14.0.0 to 15.0.0 in /modules/k3s (#5230) @dependabot
- Bump trino-jdbc from 369 to 375 in /modules/trino (#5228) @dependabot
- Bump r2dbc-postgresql from 0.8.11.RELEASE to 0.8.12.RELEASE in /modules/r2dbc (#5227) @dependabot
- Bump okhttp from 3.14.9 to 4.9.3 in /modules/solr (#5229) @dependabot
- Bump peter-evans/create-pull-request from 3.12.1 to 4.0.1 (#5226) @dependabot
- Bump actions/cache from 2.1.7 to 3.0.1 (#5225) @dependabot
- Bump neo4j-java-driver from 4.4.3 to 4.4.5 in /examples (#5223) @dependabot
- Bump s3 from 2.17.108 to 2.17.162 in /modules/localstack (#5222) @dependabot
- Bump aws-java-sdk-logs from 1.12.169 to 1.12.191 in /modules/localstack (#5221) @dependabot
- Bump awaitility from 4.1.1 to 4.2.0 in /core (#5219) @dependabot
- Bump logback-classic from 1.2.10 to 1.2.11 in /examples (#5216) @dependabot
- Bump org.jetbrains.kotlin.plugin.spring from 1.6.10 to 1.6.20 in /examples (#5215) @dependabot
- Bump transport from 7.17.1 to 7.17.2 in /modules/elasticsearch (#5214) @dependabot
- Bump mockito-core from 4.3.1 to 4.4.0 in /modules/junit-jupiter (#5212) @dependabot
- Bump jedis from 4.1.1 to 4.2.1 in /examples (#5210) @dependabot
- Bump java-client from 3.2.5 to 3.2.6 in /modules/couchbase (#5209) @dependabot
- Bump aws-java-sdk-s3 from 1.12.169 to 1.12.191 in /modules/localstack (#5206) @dependabot
- Bump rest-assured from 4.5.1 to 5.0.0 in /modules/vault (#5207) @dependabot
- Bump neo4j-java-driver from 4.4.3 to 4.4.5 in /modules/neo4j (#5205) @dependabot
- Bump elasticsearch-rest-client from 7.16.2 to 8.1.2 in /modules/elasticsearch (#5202) @dependabot
- Bump awaitility from 4.1.1 to 4.2.0 in /modules/couchbase (#5199) @dependabot
- Bump tomcat-jdbc from 10.0.16 to 10.0.20 in /modules/jdbc (#5196) @dependabot
- Bump tomcat-jdbc from 10.0.16 to 10.0.20 in /modules/jdbc-test (#5195) @dependabot
- Bump actions/checkout from 2 to 3 (#5140) @dependabot
- Bump google-cloud-firestore from 3.0.11 to 3.0.14 in /modules/gcloud (#5143) @dependabot
- Bump google-cloud-spanner from 6.17.4 to 6.20.0 in /modules/gcloud (#5142) @dependabot
- Bump actions/setup-java from 2.5.0 to 3 (#5141) @dependabot
- Bump actions/checkout from 2 to 3 (#5140) @dependabot
- Bump aws-java-sdk-dynamodb from 1.12.150 to 1.12.169 in /modules/dynalite (#5138) @dependabot
- Bump transport from 7.17.0 to 7.17.1 in /modules/elasticsearch (#5136) @dependabot
- Bump org.springframework.boot from 2.6.3 to 2.6.4 in /examples (#5137) @dependabot
- Bump elasticsearch-rest-client from 7.16.2 to 8.0.1 in /modules/elasticsearch (#5135) @dependabot
- Bump guava from 31.0.1-jre to 31.1-jre in /modules/jdbc-test (#5133) @dependabot
- Bump aws-java-sdk-logs from 1.12.139 to 1.12.169 in /modules/localstack (#5132) @dependabot
- Bump neo4j from 3.5.29 to 3.5.31 in /modules/neo4j (#5131) @dependabot
- Bump aws-java-sdk-sqs from 1.12.150 to 1.12.169 in /modules/localstack (#5130) @dependabot
- Bump aws-java-sdk-s3 from 1.12.150 to 1.12.169 in /modules/localstack (#5127) @dependabot
- Bump postgresql from 42.3.2 to 42.3.3 in /examples (#5090) @dependabot
- Bump google-cloud-datastore from 2.2.2 to 2.2.4 in /modules/gcloud (#5088) @dependabot
- Bump release-drafter/release-drafter from 5.17.6 to 5.18.1 (#5087) @dependabot
- Bump amqp-client from 5.14.1 to 5.14.2 in /core (#5080) @dependabot
- Bump azure-cosmos from 4.24.0 to 4.26.0 in /modules/azure (#5079) @dependabot
- Bump google-cloud-bigtable from 2.5.2 to 2.5.3 in /modules/gcloud (#5075) @dependabot
- Bump kubernetes-client from 5.11.0 to 5.12.1 in /modules/k3s (#5071) @dependabot
- Bump amqp-client from 5.14.1 to 5.14.2 in /modules/rabbitmq (#5070) @dependabot
- Bump rest-assured from 4.4.0 to 4.5.1 in /modules/vault (#5072) @dependabot
- Bump postgresql from 42.3.1 to 42.3.3 in /modules/postgresql (#5064) @dependabot
- Bump postgresql from 42.3.2 to 42.3.3 in /modules/cockroachdb (#5063) @dependabot
- Bump reactor-core from 3.4.14 to 3.4.15 in /modules/r2dbc (#5065) @dependabot
- Bump postgresql from 42.3.2 to 42.3.3 in /modules/junit-jupiter (#5059) @dependabot
- Bump hivemq-extension-sdk from 4.7.3 to 4.7.4 in /modules/hivemq (#5061) @dependabot
- Bump mongodb-driver-sync from 4.4.1 to 4.5.0 in /modules/mongodb (#5062) @dependabot
- Bump spock-core from 2.0-groovy-3.0 to 2.1-groovy-3.0 in /modules/spock (#5057) @dependabot
- Bump google-cloud-datastore from 2.2.2 to 2.2.3 in /modules/gcloud (#5013) @dependabot
- Bump cu...
1.16.3
What's Changed
Highlights
Testcontainers 1.16.3 includes many changes, but there are two key highlights in this release:
k3s module (#4582) @rnorth, @kiview
We've had plenty of feedback from users wanting to use Testcontainers to help test Kubernetes components.
In particular, this is useful for people developing Kubernetes controllers/operators, who need something more than just a mocked Kubernetes API.
In this release we're bringing the k3s module, which gives you a neat way to spin up the K3S lightweight Kubernetes inside of a container.
We believe that k3s hits a sweet spot for ease of use and performance, so is a good option for testing Kubernetes components.
Now, launching a lightweight single-node Kubernetes cluster within your tests is easy as:
K3sContainer k3s = new K3sContainer(DockerImageName.parse("rancher/k3s:v1.21.3-k3s1"));
k3s.start();
String kubeConfigYaml = k3s.getKubeConfigYaml();
ApiClient client = Config.fromConfig(new StringReader(kubeConfigYaml));
// now use `client` to talk to your cluster!
Check out the docs to find out more!
Selenium 4 compatibility (#4914) @GannaChernyshova, @tobiasstadler, @kiview, @rnorth
Selenium 4 was announced a while back, but we needed to make some changes to Testcontainers' Selenium/Webdriver module for compatibility.
We're happy to announce that these changes have now been made, so you can now use Selenium 4 with Testcontainers!
As part of this upgrade we have to drop compatibility with Selenium 2, but believe that this will not have any practical impact.
🚀 Features & Enhancements
- [Reusable mode] Don't log about starting container unnecessarily (#4844) @pkubowicz
- Display Ryuk logs when it fails to start (#4842) @vincz7777
- [couchbase] Explicitly configure service quotas (and allow customizat… (#4802) @daschl
- removed hardcoded log level setting on mockserver (#4798) @szymonprz
- [couchbase] Ignore transient primary index creation error. (#4681) @daschl
- Execute Docker credential program through shell on Windows (#4763) @mruemeli
🐛 Bug Fixes
- change external port check to it can timeout and retry (#4680) @kmcgovern-apixio
📖 Documentation
- Add Gradle Enterprise badge in README (#4850) @jprinet
- Remove references to Atlassian for LocalStack (#4796) @HarshCasper
- Update sponsors as of Dec 2021 (#4806) @rnorth
- Use a relative path to the Selenium module (#4700) @bsideup
- Add link to webdrivers module (#4699) @brunoborges
- jdbc.md: Fix typo (#4678) @perlun
- Fix Documentation not displaying properly for 'Docker wormhole pattern' (#4658) @wimdeblauwe
🧹 Housekeeping
- Replace jcenter with mavenCentral in all examples (#4931) @kiview
- Update dependabot rules for new modules (#4864) @rnorth
- Tweak logging around reusable mode (#4858) @rnorth
- Add GE remote cache to examples project (#4855) @kiview
- Increase AzureCI timeout to 120 minutes instead of using the default of 60 minutes (#4854) @kiview
- Reinstate usage of
READ_ONLY_REMOTE_GRADLE_CACHE
to avoid wrong cache hits (#4853) @kiview - Gradle Enterprise Trial (#4705) @kiview
- Update GE plugin in examples to 3.6.1 (#4672) @kiview
- Use key=value format for GRADLE_ENTERPRISE_ACCESS_KEY value (#4671) @kiview
- Add Gradle Enterprise (#4057) @kiview
- Use automated PR to update docs version (#4606) @rnorth
- Add Thundra test summary badge to README (#4604) @rwxdash
📦 Dependency updates
Click to expand...
- Bump actions/cache from 2.1.6 to 2.1.7 (#4757) @dependabot
- Bump actions/setup-java from 2.3.1 to 2.4.0 (#4756) @dependabot
- Bump actions/setup-java from 2.4.0 to 2.5.0 (#4832) @dependabot
- Bump amqp-client from 5.13.1 to 5.14.0 in /core (#4745) @dependabot
- Bump amqp-client from 5.7.0 to 5.14.0 in /modules/rabbitmq (#4889) @dependabot
- Bump amqp-client from 5.7.0 to 5.14.0 in /modules/rabbitmq (#4889) @dependabot
- Bump annotations from 20.0.0 to 23.0.0 in /modules/presto (#4880) @dependabot
- Bump annotations from 20.0.0 to 23.0.0 in /modules/presto (#4880) @dependabot
- Bump annotations from 20.0.0 to 23.0.0 in /modules/rabbitmq (#4894) @dependabot
- Bump annotations from 20.0.0 to 23.0.0 in /modules/rabbitmq (#4894) @dependabot
- Bump annotations from 20.0.0 to 23.0.0 in /modules/trino (#4892) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /core (#4747) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /examples (#4753) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /modules/jdbc (#4726) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /modules/mysql (#4738) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /modules/nginx (#4733) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /modules/oracle-xe (#4725) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /modules/postgresql (#4719) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /modules/selenium (#4718) @dependabot
- Bump annotations from 22.0.0 to 23.0.0 in /modules/spock (#4723) @dependabot
- Bump assertj-core from 3.12.0 to 3.22.0 in /modules/orientdb (#4897) @dependabot
- Bump assertj-core from 3.12.2 to 3.22.0 in /modules/rabbitmq (#4898) @dependabot
- Bump assertj-core from 3.14.0 to 3.22.0 in /modules/r2dbc (#4900) @dependabot
- Bump assertj-core from 3.15.0 to 3.22.0 in /modules/azure (#4870) @dependabot
- Bump assertj-core from 3.15.0 to 3.22.0 in /modules/azure (#4870) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /core (#4874) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /examples (#4896) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/database-commons (#4867) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/jdbc (#4866) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/junit-jupiter (#4869) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/kafka (#4873) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/neo4j (#4876) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/pulsar (#4893) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/pulsar (#4893) @dependabot
- Bump assertj-core from 3.21.0 to 3.22.0 in /modules/vault (#4878) @dependabot
- Bump auto-service from 1.0 to 1.0.1 in /modules/mariadb (#4720) @dependabot
- Bump auto-service from 1.0 to 1.0.1 in /modules/mssqlserver (#4728) @dependabot
- Bump auto-service from 1.0 to 1.0.1 in /modules/mysql (#4730) @dependabot
- Bump auto-service from 1.0 to 1.0.1 in /modules/postgresql (#4740) @dependabot
- Bump auto-service from 1.0-rc6 to 1.0.1 in /modules/r2dbc (#4909) @dependabot
- Bump awaitility from 4.1.0 to 4.1.1 in /core (#4640) @dependabot
- Bump awaitility from 4.1.0 to 4.1.1 in /modules/couchbase (#4622) @dependabot
- Bump awaitility from 4.1.0 to 4.1.1 in /modules/couchbase (#4622) @dependabot
- Bump aws-java-sdk-dynamodb from 1.12.100 to 1.12.122 in /modules/dynalite (#4734) @dependabot
- Bump aws-java-sdk-dynamodb from 1.12.122 to 1.12.131 in /modules/dynalite (#4820) @dependabot
- Bump aws-java-sdk-dynamodb from 1.12.131 to 1.12.137 in /modules/dynalite (#4871) @dependabot
- Bump aws-java-sdk-dynamodb from 1.12.60 to 1.12.100 in /modules/dynalite (#4621) @dependabot
- Bump aws-java-sdk-logs from 1.12.119 to 1.12.122 in /modules/localstack (#4750) @dependabot
- Bump aws-java-sdk-logs from 1.12.122 to 1.12.132 in /modules/localstack (#4849) @dependabot
- Bump aws-java-sdk-logs from 1.12.132 to 1.12.139 in /modules/localstack (#4919) @dependabot
- Bump aws-java-sdk-logs from 1.12.132 to 1.12.139 in /modules/localstack (#4919) @dependabot
- Bump aws-java-sdk-logs from 1.12.60 to 1.12.100 in /modules/localstack (#4641) @dependabot
- Bump aws-java-sdk-logs from 1.12.60 to 1.12.119 in /modules/localstack (#4710) @dependabot
- Bump aws-java-sdk-s3 from 1.12.100 to 1.12.122 in /modules/localstack (#4746) @dependabot
- Bump aws-java-sdk-s3 from 1.12.122 to 1.12.131 in /modules/localstack (#4827) @dependabot
- Bump aws-java-sdk-s3 from 1.12.131 to 1.12.137 in /modules/localstack (#4904) @dependabot
- Bump aws-java-sdk-s3 from 1.12.80 to 1.12.100 in /modules/localstack (#4618) @dependabot
- Bump aws-java-sdk-sqs from 1.12.100 to 1.12.122 in /modules/localstack (#4735) @dependabot
- Bump aws-java-sdk-sqs from 1.12.100 to 1.12.124 in /modules/localstack (#4766) @dependabot
- Bump aws-java-sdk-sqs from 1.12.124 to 1.12.131 in /modules/localstack (#4825) @dependabot
- Bump aws-java-sdk-sqs from 1.12.131 to 1.12.137 in /modules/localstack (#4895) @dependabot
- Bump aws-java-sdk-sqs from 1.12.131 to 1.12.139 in /modules/localstack (#4920) @dependabot
- Bump aws-java-sdk-sqs from 1.12.82 to 1.12.100 in /modules/localstack (#4633) @dependabot
- Bump azure-cosmos from 4.16.0 to 4.24.0 in /modules/azure (#4877) @dependabot
- Bump clickhouse-jdbc from 0.3.1-patch to 0.3.2 in /modules/clickhouse (#4813) @dependabot
- Bump com.gradle.enterprise.gradle.plugin from 3.7.2 to 3.8 in /examples (#4836) @dependabot
- Bump cucumber-java from 6.11.0 to 7.1.0 in /examples (#4709) @dependabot
- Bump cucumber-java from 7.1.0 to 7.2.2 in /examples (#4907) @dependabot
- Bump cucumber-java from 7.1.0 to 7.2.2 in /examples (#4907) @dependabot
- Bump cucumber-junit from 6.11.0 to 7.0.0 in /examples (#4650) @dependabot
- Bump cucumber-junit from 7.0.0 to 7.1.0 in /examples (#4748) @dependabot
- Bump cucumber-junit from 7.1.0 to 7.2.2 in /examples (#4911) @dependabot
- Bump elasticsearch-rest-client from 7.15.0 to 7.15.1 in /modules/elasticsearch (#4625) @dependabot
- Bump elasticsearch-rest-client from 7.15.0 to 7.15.2 in /modules/elasticsearch (#4707) @dependabot
- Bump elasticsearch-rest-client from 7.15.2 to 7.16.2 in /modules/elasticsearch (#4823) @...
1.16.2
What's Changed
1.16.2 fixes a race condition that was inadvertently added in 1.16.1. This bug can potentially cause unstable builds in some environments, manifesting as port wait timeouts at container startup.
🚀 Features & Enhancements
- Added started log message used in Selenium 4.0.0 (#4580) @tobiasstadler
- [couchbase] Add support for Couchbase Analytics. (#4592) @daschl
🐛 Bug Fixes
- Make Bolt log wait strategy more lenient (#4455) @fbiville
- Fix nested lambda in getWithTimeout (#4470) @Flugtiger
- Fix race condition in external port check (#4597) @kiview
📖 Documentation
🧹 Housekeeping
1.16.1
What's Changed
1.16.1 inadvertently introduced a race condition. This bug can potentially cause unstable builds in some environments, manifesting as port wait timeouts at container startup. We recommend upgrading to 1.16.2 or higher.
Testcontainers 1.16.1 has been released! 🎉
This release brings a lot of eagerly awaited new features and fixes, such as:
🔮 Better Oracle Database support
Thanks to the engagement of the community and @gvenzl's new Docker images for Oracle Database Express Edition we were able to update our OracleContainer
module to ensure its compatibility with a wide range of Oracle XE versions.
And at the same time, thanks to the new images, we were able to re-integrate the Oracle module into our CI. This means we can verify compatibility for using Testcontainers with Oracle Database going forward.
☁️ New Azure Cosmos DB module
With the new Azure Comos DB module we finally added Azure to our list of cloud service testing facilities.
It is based on Microsoft's Azure Cosmos DB-Emulator and provides you with a way to do your integration testing without the need for an actual Azure service.
public CosmosDBEmulatorContainer emulator = new CosmosDBEmulatorContainer(
DockerImageName.parse("mcr.microsoft.com/cosmosdb/linux/azure-cosmos-emulator:latest")
);
Please check out the module docs to learn how to use it for your integration testing needs.
⛴ Host port access for containers
For further improving the developer experience of our users, we added a new API to make hosts ports accessible to containers:
container.withAccessToHost(true)
You still need to use exposeHostPorts
, as per the docs, but this can now be done after the container has started, thereby allowing new usage patterns in your tests.
🌪 Faster Cassandra startup
By making clever use of the configuration settings available in Cassandra, CassandraContainer
will now start up to 3 times faster.
It is now also configured to be less resource hungry out of the box.
✨ Better startup performance for all containers
We found a couple of ways to improve the container startup performance for our users, no matter the Testcontainers module you use.
This comes through some internal changes with regards to how Testcontainers checks for open ports during container startup and will shave up to a couple of seconds from your test suite.
We are grateful for the ongoing support of our community and users and thank each of our awesome contributors!
🚀 Features & Enhancements
- Oracle Database: Update
OracleContainer
and re-activate on CI (#4298) @kiview & (#4402) @KyleAure - Azure Cosmos DB: Introduce CosmosDBEmulatorContainer (#4303) @okohub
- Host Port Access: Provide an API to force access to the host (#4584) @bsideup
- Cassandra: Tune Cassandra options for faster startup (#4309) @bsideup
- Performance: Perform container startup port checks in parallel (#4463) @bsideup
- Performance: Retry internal port checking in the same exec (#4460) @bsideup
- OrientDB: Use log wait strategy for more reliable readiness detection (#4471) @rnorth
- Fix flaky kafka cluster example (#4549) @rnorth
- Give EnvironmentAndSystemPropertyClientProviderStrategy the highest priority (#4472) @kiview
- Avoid overriding of files copied to container using subsequent
withCopyFileToContainer
(#2957) @findepi - Make TimescaleDB available with JDBC syntax (#3891) @raynigon
- Refactor JDBC URL parsing to support different Oracle URLs (#4476) @rnorth
- Allow to disable configuration of
EnvironmentAndSystemPropertyClientProviderStrategy
through Testcontainers (#4387) @kiview - Shorten fallback to another strategy (#4386) @pioorg
- Update Kafka config dynamically (#4316) @bsideup
- Disable Chrome's GPU support in
BrowserWebDriverContainer
(#4315) @kiview
🐛 Bug Fixes
- Prevent Compose image pre-fetching from pulling all tags when tag is absent (#4538) @rnorth
- Randomize naming for createVolumeDirectory method (#4195) @johnathana
- Perform distinct/applicable filtering after identifying configured and available Docker client strategies (#4467) @bsideup
- Use POSIX mode for large numbers in tar archives (#4384) (#4388) @schmidt-galen-heb
📖 Documentation
- Update GitLab CI docs: Add
--tls=false
to docker-in-docker to avoid startup delays (#4573) @ulrichwinter - Document Dependabot merge process (#4556) @kiview
- Add togglz as user (#4484) @bennetelli
- Add Alkira as user (#4370) @sankee168
- Add Elastic as user (#4369) @mdelapenya
- Update RELEASING.md (#4295) @kiview
🧹 Housekeeping
- Remove unused
@ClassRule
container inKafkaContainerTest
and usecp-kafka:6.2.1
as default (#4564) @kiview - Remove
httpclient5_test
(#4562) @bsideup - Temporarily disable Thundra on master branch (#4570) @rnorth
- Enable
JUnitPlatform
for Spock tests (#4568) @kiview - Skip japicmp for new modules (#4569) @rnorth
- Fix
AuthenticatedImagePullTest
(#4560) @bsideup - Switch from AdoptOpenJDK to Temurin and latest JDK 8. (#4537) @pioorg
- Fix dangling constructor reference in deprecation note (#4443) @JarvisCraft
- Tidy up core's build file (#4207) @bsideup
- couchbase: add debug-level phase timings. (#4466) @daschl
- Fix
CmdModifierTest#testMemoryLimitModified
in cgroup2 environment. (#4375) @cac03 - Add Thundra Foresight Integration to the CI Build (#4313) @rwxdash
- Add japicmp to every module (#4364) @bsideup
- Fix failing
PublicBinaryAPITest
forDynamicPollInterval
(#4353) @kiview
📦 Dependency updates
- Upgrade ryuk image to 0.3.3 (#4581) @rnorth
- Upgrade ryuk image to 0.3.2 (#4359) @rnorth
- Update Gradle Wrapper to 7.2 (#4379) @github-actions
- Update JUnit 4.12 to 4.13.2. (#4167) @michael-simons
- Update to
docker-java
3.2.12 (#4459) @bsideup
Click to expand...
- Bump aws-java-sdk-sqs from 1.12.62 to 1.12.82 in /modules/localstack (#4558) @dependabot
- Bump aws-java-sdk-logs from 1.12.60 to 1.12.82 in /modules/localstack (#4557) @dependabot
- Bump actions/setup-java from 2.3.0 to 2.3.1 (#4536) @dependabot
- Bump junit-jupiter-api from 5.7.2 to 5.8.1 in /modules/junit-jupiter (#4530) @dependabot
- Bump postgresql from 42.2.23 to 42.2.24 in /examples (#4528) @dependabot
- Bump elasticsearch-rest-client from 7.14.1 to 7.15.0 in /modules/elasticsearch (#4520) @dependabot
- Bump solr-solrj from 8.9.0 to 8.10.0 in /examples (#4519) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /examples (#4506) @dependabot
- Bump org.jetbrains.kotlin.jvm from 1.5.30 to 1.5.31 in /examples (#4508) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /modules/vault (#4510) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /modules/database-commons (#4501) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /modules/kafka (#4502) @dependabot
- Bump r2dbc-mssql from 0.8.6.RELEASE to 0.8.7.RELEASE in /modules/mssqlserver (#4497) @dependabot
- Bump junit-jupiter-params from 5.7.2 to 5.8.1 in /modules/junit-jupiter (#4500) @dependabot
- Bump s3 from 2.17.34 to 2.17.52 in /modules/localstack (#4547) @dependabot
- Bump aws-java-sdk-logs from 1.12.60 to 1.12.80 in /modules/localstack (#4543) @dependabot
- Bump aws-java-sdk-s3 from 1.12.62 to 1.12.80 in /modules/localstack (#4541) @dependabot
- Bump aws-java-sdk-sqs from 1.12.62 to 1.12.80 in /modules/localstack (#4540) @dependabot
- Bump kafka-clients from 2.8.0 to 3.0.0 in /examples (#4535) @dependabot
- Bump okhttp from 4.9.1 to 4.9.2 in /examples (#4534) @dependabot
- Bump logback-classic from 1.2.5 to 1.2.6 in /examples (#4533) @dependabot
- Bump org.springframework.boot from 2.5.4 to 2.5.5 in /examples (#4532) @dependabot
- Bump postgresql from 42.2.23 to 42.2.24 in /modules/junit-jupiter (#4531) @dependabot
- Bump postgresql from 42.2.23 to 42.2.24 in /examples (#4528) @dependabot
- Bump org.jetbrains.kotlin.plugin.spring from 1.5.30 to 1.5.31 in /examples (#4526) @dependabot
- Bump postgresql from 42.2.23 to 42.2.24 in /modules/spock (#4523) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /modules/pulsar (#4522) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /modules/junit-jupiter (#4521) @dependabot
- Bump transport from 7.14.1 to 7.15.0 in /modules/elasticsearch (#4516) @dependabot
- Bump elasticsearch-rest-client from 7.14.1 to 7.15.0 in /modules/elasticsearch (#4520) @dependabot
- Bump guava from 30.1.1-jre to 31.0.1-jre in /modules/jdbc-test (#4518) @dependabot
- Bump kafka-clients from 2.8.0 to 3.0.0 in /modules/kafka (#4515) @dependabot
- Bump r2dbc-mariadb from 1.0.2 to 1.0.3 in /modules/mariadb (#4505) @dependabot
- Bump org.jetbrains.kotlin.jvm from 1.5.30 to 1.5.31 in /examples (#4508) @dependabot
- Bump junit-jupiter-engine from 5.7.2 to 5.8.1 in /modules/junit-jupiter (#4513) @dependabot
- Bump postgresql from 42.2.23 to 42.2.24 in /modules/postgresql (#4509) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /modules/neo4j (#4512) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /examples (#4506) @dependabot
- Bump influxdb-java from 2.21 to 2.22 in /modules/influxdb (#4503) @dependabot
- Bump tomcat-jdbc from 10.0.10 to 10.0.12 in /modules/jdbc (#4498) @dependabot
- Bump junit-jupiter-params from 5.7.2 to 5.8.1 in /modules/junit-jupiter (#4500) @dependabot
- Bump annotations from 21.0.1 to 22.0.0 in /modules/oracle-xe (#4495) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /core (#4496) @dependabot
- Bump assertj-core from 3.20.2 to 3.21.0 in /modules/jdbc (#4499) @dependabot
- Bump tomcat-jdbc...
1.16.0
What's Changed
Testcontainers 1.16.0 is here! 🎉
This release brings many small fixes and improvements; among them:
Better M1 Mac compatibility
Users of M1 Mac will be pleased to know that Testcontainers now falls back to pulling x86_64 images when ARM64 images are unavailable, meaning that Docker's QEMU compatibility mode will be used to run the image. It's not perfect - not every image runs under QEMU. However, this allows Testcontainers users with M1 Macs to use more images than they could previously.
If possible, users should use recently published images for their dependencies which have a native ARM64 variant, rather than relying on QEMU emulation.
Startup performance and reliability improvements
Some issues affecting container startup time and reliability (especially with Docker for Windows) have been fixed.
Additionally, this release uses the latest version of docker-java
and uses an Apache HttpClient5 transport by default. This resolves bugs encountered by some users when the previous default transport (okhttp) relating to image pulling.
As always, thank you to our many users and contributors!
🚀 Features & Enhancements
- Fallback to x86 image if image pulling fails (#4290) @bsideup
- Spock Testcontainers annotation is now inherited (#4053) @tlefevre
- Use Apache HttpClient5 transport as the default (#4287) @bsideup
- Remove visible assertions dependency (#4010) @bsideup
- Couchbase: Add support for community edition of couchbase server (#4221) @Gerschtli
- Couchbase: Update to latest version, add flushEnabled flag (#4041) @Gerschtli
- Only publish exposed ports (#4122) @rnorth
- Allow DOCKER_HOST and related settings to be set in
~/.testcontainers.properties
(#4118) @rnorth - Use implicit strategy when
docker.host
configuration is set (#4175) @rnorth - Improve logging in InternalCommandPortListeningCheck (#2984) (#3001) @vcvitaly
🐛 Bug Fixes
- Remove withPublishAllPorts from Ryuk and stabilize containerInfo content on start (#4263) @kiview
- Allow for docker timestamps with timezone offsets (#4073) @candrews
- Fix KafkaContainer with multiple networks defined (#4213) @DennisFederico
- Fixed potential NPE in
MountableFile
(#4193) @fkorotkov - Improve log messages when database container test query fails (#3015) @vcvitaly
📖 Documentation
- Remove GitHub Sponsors button (#4217) @rnorth
- Add @oleg-nenashev as backer, reference @jenkinsci and @cloudbees as adopters (#4170) @oleg-nenashev
- Docs: Use
testImplementation
instead of deprecatedtestCompile
(#4054) @slovdahl - Docs: Add Backbase as Bronze sponsor (#4039) @torrespro
🧹 Housekeeping
- Split Windows CI into core and non-core steps (#4293) @rnorth
- Upgrade alpine images for better M1 compatibility (#4291) @rnorth
- Switch from using Travis to GitHub Actions for release (#3434) @rnorth
- Remove stalebot (#4216) @rnorth
- Cleanup japicmp excludes (#4192) @bsideup
- Update to Gradle 7 (#4171) @bsideup
- Add combine-prs workflow (#4176) @rnorth
- Bump actions/cache from 2.1.3 to 2.1.6 (#4162) @dependabot
- Combined dependencies PR (#4135) @rnorth
- Only run update-* and release-drafter on original repository, not on forks (#4104) @mrotteveel
- Reduce dependabot bump rate to monthly (#4083) @rnorth
- Use up-to-date MySQL docker images (#4059) @rnorth
📦 Dependency updates
- Remove visible assertions dependency (#4010) @bsideup
- Update
docker-java
to 3.2.11 (#4220) @bsideup - Update to Gradle 7 (#4171) @bsideup
Click to expand...
- Bump aws-java-sdk-sqs from 1.12.1 to 1.12.19 in /modules/localstack (#4274) @dependabot
- Bump tomcat-jdbc from 10.0.6 to 10.0.8 in /modules/jdbc (#4272) @dependabot
- Bump s3 from 2.16.80 to 2.16.97 in /modules/localstack (#4271) @dependabot
- Bump jedis from 3.6.0 to 3.6.1 in /examples (#4258) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /core (#4257) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /modules/database-commons (#4241) @dependabot
- Bump aws-java-sdk-dynamodb from 1.11.1030 to 1.12.16 in /modules/dynalite (#4240) @dependabot
- Bump gradle-update/update-gradle-wrapper-action from 1.0.13 to 1.0.14 (#4262) @dependabot
- Bump actions/github-script from 3 to 4.0.2 (#4261) @dependabot
- Bump gson from 2.8.6 to 2.8.7 in /examples (#4260) @dependabot
- Bump postgresql from 42.2.20 to 42.2.22 in /examples (#4259) @dependabot
- Bump jedis from 3.6.0 to 3.6.1 in /examples (#4258) @dependabot
- Bump aws-java-sdk-logs from 1.11.807 to 1.12.16 in /modules/localstack (#4256) @dependabot
- Bump org.jetbrains.kotlin.plugin.spring from 1.5.10 to 1.5.20 in /examples (#4255) @dependabot
- Bump solr-solrj from 8.8.2 to 8.9.0 in /examples (#4254) @dependabot
- Bump mockito-core from 3.10.0 to 3.11.2 in /modules/junit-jupiter (#4252) @dependabot
- Bump org.jetbrains.kotlin.jvm from 1.5.10 to 1.5.20 in /examples (#4253) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /examples (#4248) @dependabot
- Bump mockito-core from 3.10.0 to 3.11.2 in /core (#4247) @dependabot
- Bump transport from 7.13.1 to 7.13.2 in /modules/elasticsearch (#4250) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /modules/pulsar (#4246) @dependabot
- Bump postgresql from 42.2.20 to 42.2.22 in /modules/junit-jupiter (#4245) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /modules/neo4j (#4244) @dependabot
- Bump org.springframework.boot from 2.5.0 to 2.5.2 in /examples (#4243) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /modules/junit-jupiter (#4239) @dependabot
- Bump s3 from 2.16.80 to 2.16.94 in /modules/localstack (#4238) @dependabot
- Bump elasticsearch-rest-client from 7.13.0 to 7.13.2 in /modules/elasticsearch (#4237) @dependabot
- Bump postgresql from 42.2.20 to 42.2.22 in /modules/postgresql (#4235) @dependabot
- Bump jedis from 3.6.0 to 3.6.1 in /core (#4234) @dependabot
- Bump postgresql from 42.2.20 to 42.2.22 in /modules/spock (#4232) @dependabot
- Bump aws-java-sdk-s3 from 1.11.1030 to 1.12.16 in /modules/localstack (#4233) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /modules/jdbc (#4229) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /modules/kafka (#4230) @dependabot
- Bump awaitility from 3.0.0 to 4.1.0 in /modules/couchbase (#4228) @dependabot
- Bump jedis from 3.6.0 to 3.6.1 in /modules/junit-jupiter (#4226) @dependabot
- Bump assertj-core from 3.19.0 to 3.20.2 in /modules/vault (#4225) @dependabot
- Bump tomcat-jdbc from 10.0.6 to 10.0.7 in /modules/jdbc-test (#4224) @dependabot
- Bump org.springframework.boot from 2.4.1 to 2.5.0 in /examples (#4123) @dependabot
- Bump assertj-core from 3.14.0 to 3.19.0 in /examples (#3765) @dependabot
- Bump assertj-core from 3.18.1 to 3.19.0 in /modules/junit-jupiter (#3729) @dependabot
- Bump assertj-core from 3.18.1 to 3.19.0 in /core (#3727) @dependabot
- Bump assertj-core from 3.18.1 to 3.19.0 in /modules/kafka (#3720) @dependabot
- Bump assertj-core from 3.18.1 to 3.19.0 in /modules/pulsar (#3718) @dependabot
- Bump clickhouse-jdbc from 0.2.4 to 0.3.1-patch in /modules/clickhouse (#4190) @dependabot
- Bump snakeyaml from 1.27 to 1.29 in /core (#4188) @dependabot
- Bump s3 from 2.16.62 to 2.16.80 in /modules/localstack (#4186) @dependabot
- Bump transport from 7.12.1 to 7.13.1 in /modules/elasticsearch (#4184) @dependabot
- Bump annotations from 20.1.0 to 21.0.1 in /core (#4156) @dependabot
- Bump junit-jupiter-params from 5.7.1 to 5.7.2 in /modules/junit-jupiter (#4154) @dependabot
- Bump junit-jupiter-api from 5.7.1 to 5.7.2 in /modules/junit-jupiter (#4153) @dependabot
- Bump spock-core from 1.3-groovy-2.5 to 2.0-groovy-3.0 in /modules/spock (#4152) @dependabot
- Bump annotations from 20.1.0 to 21.0.1 in /examples (#4141) @dependabot
- Bump postgresql from 42.2.18 to 42.2.20 in /examples (#4114) @dependabot
- Bump tomcat-jdbc from 9.0.40 to 10.0.6 in /modules/jdbc-test (#4084) @dependabot
- Bump jedis from 3.4.0 to 3.6.0 in /examples (#4031) @dependabot
- Bump postgresql from 42.2.18 to 42.2.20 in /modules/spock (#4021) @dependabot
- Bump kafka-clients from 2.3.1 to 2.8.0 in /examples (#4022) @dependabot
- Bump postgresql from 42.2.18 to 42.2.20 in /modules/postgresql (#4015) @dependabot
- Bump amqp-client from 5.9.0 to 5.12.0 in /core (#3992) @dependabot
- Bump guava from 30.1-jre to 30.1.1-jre in /modules/jdbc-test (#3911) @dependabot
- Bump guava from 30.1-jre to 30.1.1-jre in /core (#3908) @dependabot
- Bump assertj-core from 3.14.0 to 3.19.0 in /examples (#3765) @dependabot
- Bump aws-java-sdk-sqs from 1.11.1018 to 1.12.1 in /modules/localstack (#4181) @dependabot
- Bump annotations from 20.1.0 to 21.0.1 in /modules/selenium (#4150) @dependabot
- Bump annotations from 20.1.0 to 21.0.1 in /modules/nginx (#4146) @dependabot
- Bump annotations from 20.1.0 to 21.0.1 in /modules/jdbc (#4145) @dependabot
- Bump annotations from 20.1.0 to 21.0.1 in /modules/postgresql (#4140) @dependabot
- Bump org.jetbrains.kotlin.jvm from 1.4.32 to 1.5.10 in /examples (#4139) @dependabot
- Bump mysql-connector-java from 8.0.22 to 8.0.25 in /modules/junit-jupiter (#4087) @dependabot
- Bump HikariCP from 3.4.5 to 4.0.3 in /modules/junit-jupiter (#3854) @dependabot
- Bump actions/setup-java from 1 to 2.1.0 (#4163) @dependabot
- Bump elasticsearch-rest-client from 7.12.1 to 7.13.0 in /modules/elasticsearch (#4157) @dependabot
- Bump kafka-clients from 2.6.0 to 2.8.0 in /modules/kafka (#4017) @dependabot
- Bump r2dbc-mariadb from 1.0.0 to 1.0.1 in /modules/mariadb (#3881) @dependabot
- Bump okhttp from 4.9.0 to 4.9.1 in /examples (#3743) @dependabot
- Bump aws-java-sdk-s3 from 1.11.930 to 1.11.1030 in /modules/localstack (#4159) @dependabot
- Bump testng from 7.3.0 to 7.4.0 in /examples (#4116) @dependabot
- Bump assertj-core from 3.16.1 to 3.19.0 in /modules/jdbc (#4144) @dependabot
- Bump annota...
1.15.3
What's Changed
🚀 Features & Enhancements
- Localstack: Make it possible to provide custom LocalStack services (#3995) @bsideup
- Localstack: Add EC2 to localstack services enum (#3955) @pinzon
- Add TrinoContainer, a container for Trino (#3668) @findepi
- Compose: Make DockerComposeContainer only pull necessary images when multiple compose files were given (#3787) @askfor
- Delegate copyFile{To,From}Container's state verification to Docker (#3805) @michael-simons
🐛 Bug Fixes
- MySQL: Fix problem of starting up mysql 5.7.33 version when user is root (#3953) @seveneves
- JDBC: Prevent ContainerDatabaseDriver from throwing NPEs when on classpath but not initialized (#3976) @mrotteveel
- Filter mapped ports when port numbers are not specified (replaces #3948) (#3979) @rnorth
- Compose: Fix NPE bug with docker-compose files in working directory (#3866) @GooseMagnet
- Selenium: Fix mp4 recording to be compatible with Firefox (#3812) @leonard84
📖 Documentation
- Update docs to clarify shading approach (#3974) @bsideup
- Gitlab: add information for TLS disabled mode (#2466) @pmihalcin
- Add example of mapping from file in system (#3808) @kevinrobayna
- Add Cloudflare Web Analytics to docs site (#3896) @rnorth
- Bump docs environment to python 3.7 (#3871) @xp-vit
- Add Backbase (#3870) @torrespro
- Documentation TransferWise has changed its name as Wise. (#3873) @muzir
- Add Google (#3868) @jamesward
🧹 Housekeeping
- Pin localstack to 0.12.8 (#3981) @rnorth
- Bump docs environment to python 3.7 (#3871) @xp-vit
- Fix GitHub Actions error due to short SHA form (#3874) @rnorth
📦 Dependency updates
- Update docker-java to 3.2.8 (#3980) @bsideup
- Bump s3 from 2.15.56 to 2.16.34 in /modules/localstack (#3963) @dependabot
- Bump pulsar-client from 2.7.0 to 2.7.1 in /modules/pulsar (#3913) @dependabot
- Bump aws-java-sdk-sqs from 1.11.930 to 1.11.986 in /modules/localstack (#3942) @dependabot
- Bump elasticsearch-rest-client from 7.10.1 to 7.12.0 in /modules/elasticsearch (#3945) @dependabot
- Bump org.jetbrains.kotlin.jvm from 1.4.21-2 to 1.4.32 in /examples (#3947) @dependabot
- Bump release-drafter/release-drafter from e5ccf147077e46b0225a80bbe314d795d77bb7a2 to 5.15.0 (#3915) @dependabot
- Bump testcontainers from 1.15.1 to 1.15.2 in /core (#3795) @dependabot
- Docs: Bump jinja2 from 2.11.2 to 2.11.3 (#3897) @dependabot