Skip to content

Releases: testcontainers/testcontainers-java

1.16.3

18 Jan 14:58
34cfdc8
Compare
Choose a tag to compare

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

📖 Documentation

🧹 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) @...
Read more

1.16.2

22 Oct 15:29
436fde8
Compare
Choose a tag to compare

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

🐛 Bug Fixes

📖 Documentation

🧹 Housekeeping

1.16.1

18 Oct 11:16
81317a6
Compare
Choose a tag to compare

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

🧹 Housekeeping

📦 Dependency updates

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...
Read more

1.16.0

20 Jul 13:40
3b3d130
Compare
Choose a tag to compare

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

🧹 Housekeeping

📦 Dependency updates

Click to expand...
  • 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...
Read more

1.15.3

15 Apr 05:55
dabc99c
Compare
Choose a tag to compare

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

🧹 Housekeeping

📦 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

1.15.2

11 Feb 14:30
106463b
Compare
Choose a tag to compare

What's Changed

  • What 1984 means to you? To us, this number means PR #1984, one of the oldest PRs we had open and... finally merged! 😅 Thanks to an amazing contribution by @seglo, we now provide an example of testing Kafka clusters where multiple KafkaContainers are connected into one network. Try it!
  • Another "old" PR is #3180 by @oussamabadr. Those of you who run Selenium tests with Testcontainers will appreciate this newly added option to use (scrollable!) MP4 format instead of FLV.
  • The connection with Ryuk (our watchdog sidecar container) now sets the socket timeout and retries the failures - helps with some rare networking edge cases. (#3682) @diegolovison
  • The logs consumer no longer adds extra new lines thanks to #3752 by @perlun
  • Locally built images no longer get affected by the hub.image.name.prefix setting! (#3666) @reda-alaoui
  • Jackson dependency is now forced to an older version to help with NoClassDefFoundError (com/fasterxml/jackson/annotation/JsonMerge).

And more!

🚀 Features & Enhancements

🐛 Bug Fixes

  • Remove extra newlines in container log output (#3752) @perlun
  • Fix handling of locally built images when used with hub.image.name.prefix (#3666) @reda-alaoui

📖 Documentation

🧹 Housekeeping

📦 Dependency updates

1.15.1

11 Dec 14:26
4fc04b6
Compare
Choose a tag to compare

What's Changed

This release focuses on stability and compatibility:

  • Docker 20.10 introduced a new version of the API, 1.41, where they removed quite a few deprecations, and we were using one of them. If you were getting "No such image: testcontainers/ryuk:0.3.0" - that's the cause.
  • In 1.15.0, ImageNameSubstitutor was added to help dealing with Docker Hub's rate limits. 1.15.1 introduces a default implementation that automatically prefixes every image without the registry. See the docs for more details.
  • docker-java was updated to the latest version that improves the BitBucket Pipelines compatibility, Windows path handling, Socket I/O and related thread stucking on recv.
  • The MockServer module is now compatible with the latest version of the image (5.11.x) and got an improved wait strategy.

🚀 Features & Enhancements

🐛 Bug Fixes

  • Always use toAbsolutePath() for MountableFile (#3514) @kiview
  • PostgisContainerProvider ignores tag parameter and uses DEFAULT_TAG (#3465) @hlavki
  • Avoid using the image name filter. Fixes #3574 (#3575) @bsideup
  • Support timestamps with offset from "inspect image" (#3055) @acanda
  • Search Oracle image name in classpath (#3439) @eyalkoren
  • Selenium: Restore getDockerImageForCapabilities method to public scope (#3441) @rnorth

📖 Documentation

🧹 Housekeeping

📦 Dependency updates

1.15.0

05 Nov 20:22
b28f6ef
Compare
Choose a tag to compare

What's Changed

Notable changes from previous release candidates (1.15.0-rc1, 1.15.0-rc2) are called out in these release notes. If migrating from 1.14.3, please see the RC release notes for other changes.

🚀 Features & Enhancements

Included in 1.15.0-rc2

  • Add image compatibility checks (#3021) @rnorth
    The majority of modules make assumptions about the container image being used - for example, port numbers, expected log lines, etc. When asking users to provide their own images with modules, it is potentially confusing if the provided image diverges from the original 'vendor-provided' image that the module was built to support.

    This change is intended to ensure that, if the user provides their own image that is not the same as the vendor-provided one, they are given adequate warning and forced to signal that this is intentional.

    For example:

    • new KafkaContainer(DockerImageName.parse("confluentinc/cp-kafka:any")) will just work, because confluentinc/cp-kafka matches the image name that KafkaContainer was designed to work with
    • but new KafkaContainer(DockerImageName.parse("some-other-kafka")) will not work immediately, because some-other-kafka may be an entirely divergent image from confluentinc/cp-kafka. In this case, the user would be prompted to add .asCompatibleSubstituteFor("confluentinc/cp-kafka") which tells Testcontainers that this is a conscious decision

    This PR adds to DockerImageName:

    • asCompatibleSubstituteFor(DockerImageName) and asCompatibleSubstituteFor(String) methods which may be used to claim compatibility with a vendor-provided image
    • isCompatibleWith(DockerImageName) and assertCompatibleWith(DockerImageName) methods which can be used by Testcontainers to check that the provided image is compatible with the expected vendor-provided image

Included in 1.15.0-rc1

  • Add a rootless Docker strategy (#2985) @bsideup. This allows Testcontainers to be used with Docker's rootless mode. All Testcontainers' features and modules are compatible with Docker rootless mode, but we would appreciate feedback on unidentified edge cases.

  • Deprecate ambiguous constructors (#2839) @rnorth. This change affects the majority of constructors for container classes. This is intended to encourage users to specify an exact docker image and tag for dependencies, rather than relying on a (potentially outdated) default image chosen by Testcontainers.

    • new XyzContainer()-style and new XyzContainer(String)-style constructors are deprecated throughout, in favour of a strongly typed new XyzContainer(DockerImageName)-style constructor.
    • Users should identify an appropriate Docker image for their test dependencies, and use as follows: new XyzContainer( DockerImageName.parse( "the/image:tag" ) ).
    • We expect to make some further improvements in this area before the final 1.15.0 release.
  • Un-shade docker-java-api (#2882) @bsideup. This change follows some significant refactoring of the docker-java library, and should resolve various issues associated with shading of dependencies.

  • New optional transport based on Apache HttpClient5. This is a very promising transport that most probably will become the default in future versions of Testcontainers. You can give it a try by putting transport.type = httpclient5 to $HOME/.testcontainers.properties.

⚠️ Breaking API changes

Included in 1.15.0-rc1

While we expect that the vast majority of users will notice no difference, these changes can be considered breaking, so warrant special mention:

Other improvements

  • Refactor TestcontainersConfiguration to allow config by env var (#3411) @rnorth
  • Elasticsearch: Add withPassword(String) method for secure access (#2321) @dadoonet
  • Vault: add a fluent API for configuring Vault's logging level (#2231) @fullkomnun
  • Add gcloud endpoint accessors (#3344) @rnorth
  • docker-machine: get full remote daemon URL, to allow for use of custom daemon port (#2769) (#3237) @vcvitaly
  • Allow users to specify a MongoDB database name (#2980) @silaev
  • Presto: Bump default Presto version (used in deprecated constructor and unversioned JDBC URL) from 329 to 344 (#3312) @findepi
  • Reduce severity of warning for failed auth config lookups (fixes #1399) (#3353) @DevilzOwn
  • When an image version is not specified, use latest as the default tag (#3313) @rnorth
  • Don't display a stack trace in the logs when .testcontainers.properties is not found (#2293) @rishumehrotra

🐛 Bug Fixes

📖 Documentation

🧹 Housekeeping

📦 Dependency updates

Click to expand...
  • Bump s3 from 2.15.9 to 2.15.14 in /modules/localstack (#3388) @dependabot
  • Bump mockito-core from 3.5.13 to 3.5.15 in /modules/junit-jupiter (#3387) @dependabot
  • Bump assertj-core from 3.17.2 to 3.18.0 in /modules/junit-jupiter (#3386) @dependabot
  • Bump assertj-core from 3.17.2 to 3.18.0 in /modules/neo4j (#3385) @dependabot
  • Bump assertj-core from 3.17.2 to 3.18.0 in /modules/vault (#3384) @dependabot
  • Bump postgresql from 42.2.17 to 42.2.18 in /modules/junit-jupiter (#3369) @dependabot
  • Bump aws-java-sdk-sqs from 1.11.880 to 1.11.884 in /modules/localstack (#3377) @dependabot
  • Bump guava from 29.0-jre to 30.0-jre in /core (#3371) @dependabot
  • Bump mysql-connector-java from 8.0.21 to 8.0.22 in /modules/junit-jupiter (#3370) @dependabot
  • Bump postgresql from 42.2.17 to 42.2.18 in /examples (#3367) @dependabot
  • Bump postgresql from 42.2.17 to 42.2.18 in /modules/spock (#3362) @dependabot
  • Bump s3 from 2.15.7 to 2.15.9 in /modules/localstack (#3361) @dependabot
  • Bump lombok from 1.18.14 to 1.18.16 in /examples (#3368) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.880 to 1.11.882 in /modules/localstack (#3365) @dependabot
  • Bump mssql-jdbc from 8.4.1.jre8 to 9.1.0.jre8-preview in /modules/mssqlserver (#3364) @dependabot
  • Bump mysql-connector-java from 8.0.21 to 8.0.22 in /modules/spock (#3363) @dependabot
  • Bump mysql-connector-java from 8.0.21 to 8.0.22 in /modules/jdbc-test (#3360) @dependabot
  • Bump guava from 29.0-jre to 30.0-jre in /modules/jdbc-test (#3359) @dependabot
  • Bump mysql-connector-java from 8.0.21 to 8.0.22 in /modules/mysql (#3357) @dependabot
  • Bump postgresql from 42.2.17 to 42.2.18 in /modules/postgresql (#3358) @dependabot
  • Bump aws-java-sdk-dynamodb from 1.11.880 to 1.11.882 in /modules/dynalite (#3356) @dependabot
  • Bump cucumber-java from 6.6.0 to 6.8.1 in /examples (#3324) @dependabot
  • Bump s3 from 2.14.21 to 2.15.7 in /modules/localstack (#3335) @dependabot
  • Bump zt-exec from 1.10 to 1.12 in /core (#3253) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.870 to 1.11.880 in /modules/localstack (#3336) @dependabot
  • Bump org.springframework.boot from 2.3.3.RELEASE to 2.3.4.RELEASE in /examples (#3247) @dependabot
  • Bump cucumber-junit from 6.7.0 to 6.8.1 in /examples (#3325) @dependabot
  • Bump httpclient from 4.5.12 to 4.5.13 in /modules/spock (#3329) @dependabot
    *...
Read more

1.15.0-rc2

30 Sep 12:07
1e597cc
Compare
Choose a tag to compare
1.15.0-rc2 Pre-release
Pre-release

What's Changed

This release includes a fix for a breaking change that appeared in Docker for Mac v2.4.0.0 (#3159). We recommend upgrading to this version of Testcontainers ASAP.

🚀 Features & Enhancements

  • Add image compatibility checks (#3021) @rnorth
    The majority of modules make assumptions about the container image being used - for example, port numbers, expected log lines, etc. When asking users to provide their own images with modules, it is potentially confusing if the provided image diverges from the original 'vendor-provided' image that the module was built to support.

    This change is intended to ensure that, if the user provides their own image that is not the same as the vendor-provided one, they are given adequate warning and forced to signal that this is intentional.

    For example:

    • new KafkaContainer(DockerImageName.parse("confluentinc/cp-kafka:any")) will just work, because confluentinc/cp-kafka matches the image name that KafkaContainer was designed to work with
    • but new KafkaContainer(DockerImageName.parse("some-other-kafka")) will not work immediately, because some-other-kafka may be an entirely divergent image from confluentinc/cp-kafka. In this case, the user would be prompted to add .asCompatibleSubstituteFor("confluentinc/cp-kafka") which tells Testcontainers that this is a conscious decision

    This PR adds to DockerImageName:

    • asCompatibleSubstituteFor(DockerImageName) and asCompatibleSubstituteFor(String) methods which may be used to claim compatibility with a vendor-provided image
    • isCompatibleWith(DockerImageName) and assertCompatibleWith(DockerImageName) methods which can be used by Testcontainers to check that the provided image is compatible with the expected vendor-provided image
  • Add support for Docker compose withOptions(...) (#2827) @Gapmeister66

☠️ Deprecations

🐛 Bug Fixes

📖 Documentation

🧹 Housekeeping

  • Make testMatrix task emit all check tasks, rather than filtering out up-to-date tasks (#3287) @rnorth
  • Remove dependency upon internet URLs for selenium tests (#3271) @rnorth
  • Use testCompileClasspath instead of testCompileOnly (#3219) @colltoaction
  • Add some more logs to bash script used for DockerHealthcheckWaitStratgyTest (#2988) @kiview
  • Fix the Rootless Docker CI job (#3050) @bsideup
  • Add continue-on-error for cache step, and upgrade GH cache action (#3133) @rnorth

📦 Dependency updates

  • Bump aws-java-sdk-s3 from 1.11.865 to 1.11.870 in /modules/localstack (#3285) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.860 to 1.11.865 in /modules/localstack (#3255) @dependabot
  • Bump s3 from 2.14.16 to 2.14.21 in /modules/localstack (#3254) @dependabot
  • Bump mockito-core from 3.5.7 to 3.5.11 in /core (#3250) @dependabot
  • Bump cucumber-junit from 6.6.0 to 6.7.0 in /examples (#3246) @dependabot
  • Bump okhttp from 4.8.1 to 4.9.0 in /examples (#3245) @dependabot
  • Bump solr-solrj from 8.6.1 to 8.6.2 in /examples (#3244) @dependabot
  • Bump mockito-core from 3.5.10 to 3.5.11 in /modules/junit-jupiter (#3243) @dependabot
  • Bump aws-java-sdk-dynamodb from 1.11.860 to 1.11.865 in /modules/dynalite (#3242) @dependabot
  • Bump assertj-core from 3.17.1 to 3.17.2 in /modules/pulsar (#3192) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.856 to 1.11.860 in /modules/localstack (#3226) @dependabot
  • Bump assertj-core from 3.17.1 to 3.17.2 in /modules/database-commons (#3197) @dependabot
  • Bump assertj-core from 3.17.1 to 3.17.2 in /modules/junit-jupiter (#3199) @dependabot
  • Bump assertj-core from 3.17.1 to 3.17.2 in /modules/kafka (#3200) @dependabot
  • Bump cucumber-java from 6.4.0 to 6.6.0 in /examples (#3213) @dependabot
  • Bump r2dbc-postgresql from 0.8.4.RELEASE to 0.8.5.RELEASE in /modules/postgresql (#3230) @dependabot
  • Bump s3 from 2.14.12 to 2.14.16 in /modules/localstack (#3231) @dependabot
  • Bump junit-jupiter-api from 5.6.2 to 5.7.0 in /modules/junit-jupiter (#3233) @dependabot
  • Bump junit-jupiter-params from 5.6.2 to 5.7.0 in /modules/junit-jupiter (#3232) @dependabot
  • Bump aws-java-sdk-dynamodb from 1.11.856 to 1.11.860 in /modules/dynalite (#3235) @dependabot
  • Bump postgresql from 42.2.15 to 42.2.16 in /examples (#3216) @dependabot
  • Bump junit-jupiter-engine from 5.6.2 to 5.7.0 in /modules/junit-jupiter (#3234) @dependabot
  • Bump cucumber-junit from 6.4.0 to 6.6.0 in /examples (#3215) @dependabot
  • Bump aws-java-sdk-sqs from 1.11.851 to 1.11.860 in /modules/localstack (#3227) @dependabot
  • Bump assertj-core from 3.17.1 to 3.17.2 in /modules/vault (#3193) @dependabot
  • Bump mockito-core from 3.5.7 to 3.5.10 in /modules/junit-jupiter (#3201) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.852 to 1.11.856 in /modules/localstack (#3203) @dependabot
  • Bump s3 from 2.14.8 to 2.14.12 in /modules/localstack (#3202) @dependabot
  • Bump aws-java-sdk-dynamodb from 1.11.851 to 1.11.856 in /modules/dynalite (#3194) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /modules/mysql (#3198) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /modules/selenium (#3195) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /modules/jdbc (#3196) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /examples (#3217) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /modules/postgresql (#3207) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /modules/nginx (#3206) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /modules/spock (#3204) @dependabot
  • Bump annotations from 20.0.0 to 20.1.0 in /core (#3214) @dependabot
  • Bump assertj-core from 3.16.1 to 3.17.1 in /core (#3210) @dependabot
  • Bump elasticsearch-rest-client from 7.9.0 to 7.9.1 in /modules/elasticsearch (#3212) @dependabot
  • Bump assertj-core from 3.17.1 to 3.17.2 in /modules/neo4j (#3208) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.847 to 1.11.852 in /modules/localstack (#3182) @dependabot
  • Bump s3 from 2.14.6 to 2.14.8 in /modules/localstack (#3181) @dependabot
  • Bump assertj-core from 3.17.0 to 3.17.1 in /modules/kafka (#3175) @dependabot
  • Bump assertj-core from 3.17.0 to 3.17.1 in /modules/pulsar (#3176) @dependabot
  • Bump assertj-core from 3.17.0 to 3.17.1 in /modules/junit-jupiter (#3177) @dependabot
  • Bump assertj-core from 3.17.0 to 3.17.1 in /modules/vault (#3173) @dependabot
  • Bump assertj-core from 3.17.0 to 3.17.1 in /modules/database-commons (#3168) @dependabot
  • Bump assertj-core from 3.17.0 to 3.17.1 in /modules/neo4j (#3167) @dependabot
  • Bump aws-java-sdk-sqs from 1.11.846 to 1.11.851 in /modules/localstack (#3171) @dependabot
  • Bump aws-java-sdk-dynamodb from 1.11.847 to 1.11.851 in /modules/dynalite (#3172) @dependabot
  • Bump mssql-jdbc from 8.3.1.jre8-preview to 8.4.1.jre8 in /modules/mssqlserver (#3174) @dependabot
  • Bump assertj-core from 3.16.1 to 3.17.0 in /modules/database-commons (#3141) @dependabot
  • Bump assertj-core from 3.16.1 to 3.17.0 in /modules/neo4j (#3137) @dependabot
  • Bump s3 from 2.13.76 to 2.14.6 in /modules/localstack (#3162) @dependabot
  • Bump assertj-core from 3.16.1 to 3.17.0 in /modules/kafka (#3139) @dependabot
  • Bump mockito-core from 3.5.5 to 3.5.7 in /modules/junit-jupiter (#3163) @dependabot
  • Bump postgresql from 42.2.15 to 42.2.16 in /modules/spock (#3138) @dependabot
  • Bump mockito-core from 3.5.0 to 3.5.7 in /core (#3164) @dependabot
  • Bump pulsar-client from 2.6.0 to 2.6.1 in /modules/pulsar (#3155) @dependabot
  • Bump mockito-core from 3.5.2 to 3.5.5 in /modules/junit-jupiter (#3143) @dependabot
  • Bump assertj-core from 3.16.1 to 3.17.0 in /modules/junit-jupiter (#3144) @dependabot
  • Bump postgresql from 42.2.15 to 42.2.16 in /modules/postgresql (#3145) @dependabot
  • Bump assertj-core from 3.16.1 to 3.17.0 in /modules/vault (#3146) @dependabot
  • Bump pulsar-client-admin from 2.6.0 to 2.6.1 in /modules/pulsar (#3154) @dependabot
  • Bump elasticsearch-rest-client from 7.8.0 to 7.9.0 in /modules/elasticsearch (#3152) @dependabot
  • Bump postgresql from 42.2.15 to 42.2.16 in /modules/junit-jupiter (#3142) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.846 to 1.11.847 in /modules/localstack (#3148) @dependabot
  • Bump aws-java-sdk-dynamodb from 1.11.837 to 1.11.847 in /modules/dynalite (#3150) @dependabot
  • Bump assertj-core from 3.16.1 to 3.17.0 in /modules/pulsar (#3153) @dependabot
  • Bump postgresql from 42.2.14 to 42.2.15 in /modules/spock (#3119) @dependabot
  • Bump influxdb-java from 2.19 to 2.20 in /modules/influxdb (#3120) @dependabot
  • Bump org.springframework.boot from 2.3.2.RELEASE to 2.3.3.RELEASE in /examples (#3111) @dependabot
  • Bump mockito-core from 3.4.4 to 3.5.2 in /modules/junit-jupiter (#3130) @dependabot
  • Bump postgresql from 42.2.14 to 42.2.15 in /modules/junit-jupiter (#3115) @dependabot
  • Bump postgresql from 42.2.14 to 42.2.15 in /modules/postgresql (#3113) @dependabot
  • Bump cucumber-java from 6.2.2 to 6.4.0 in /examples (#3112) @dependabot
  • Bump aws-java-sdk-sqs from 1.11.831 to 1.11.846 in /modules/localstack (#3132) @dependabot
  • Bump aws-java-sdk-s3 from 1.11.837 to 1.11.846 in /modules/localstack (#3131) @dependabot
  • Bump s3 from 2.13.61 to 2.13.76 in /modules/localstack (#3114) @dependabot
  • Bump solr-solrj from 8.5.2 to 8.6.1 in /examples (#3107) @dependabot
  • Bump aws-java-sdk-dynamodb from 1.11.827 to 1.11.837 in /modules/dynalite (#3090) @dependabot...
Read more

1.15.0-rc1

19 Jul 19:25
dd0d218
Compare
Choose a tag to compare
1.15.0-rc1 Pre-release
Pre-release

What's Changed

This is a release candidate build for version 1.15.0, including a large number of small but noticeable changes.

At least one further release candidate build is expected before 1.15.0 final, and some API changes may still be made. We would encourage users to upgrade to this release candidate version if possible, and to give us feedback on any issues that are encountered.

Notable changes

  • Add a rootless Docker strategy (#2985) @bsideup. This allows Testcontainers to be used with Docker's rootless mode. All Testcontainers' features and modules are compatible with Docker rootless mode, but we would appreciate feedback on unidentified edge cases.

  • Deprecate ambiguous constructors (#2839) @rnorth. This change affects the majority of constructors for container classes. This is intended to encourage users to specify an exact docker image and tag for dependencies, rather than relying on a (potentially outdated) default image chosen by Testcontainers.

    • new XyzContainer()-style and new XyzContainer(String)-style constructors are deprecated throughout, in favour of a strongly typed new XyzContainer(DockerImageName)-style constructor.
    • Users should identify an appropriate Docker image for their test dependencies, and use as follows: new XyzContainer( DockerImageName.parse( "the/image:tag" ) ).
    • We expect to make some further improvements in this area before the final 1.15.0 release.
  • Un-shade docker-java-api (#2882) @bsideup. This change follows some significant refactoring of the docker-java library, and should resolve various issues associated with shading of dependencies.

  • New optional transport based on Apache HttpClient5. This is a very promising transport that most probably will become the default in future versions of Testcontainers. You can give it a try by putting transport.type = httpclient5 to $HOME/.testcontainers.properties.

⚠️ Breaking API changes

While we expect that the vast majority of users will notice no difference, these changes can be considered breaking, so warrant special mention:

☠️ Deprecations

🚀 Features & Enhancements

🐛 Bug Fixes

📖 Documentation

🧹 Housekeeping

📦 Dependency updates

Click to expand...
Read more