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 annotations from 20.1.0 to 21.0.1 in /modules/mysql (#4142) @dependabot
- Bump aws-java-sdk-dynamodb from 1.11.1018 to 1.11.1030 in /modules/dynalite (#4149) @dependabot
- Bump org.jetbrains.kotlin.plugin.spring from 1.5.0 to 1.5.10 in /examples (#4138) @dependabot
- Bump annotations from 20.1.0 to 21.0.1 in /modules/spock (#4151) @dependabot
- Bump rest-assured from 4.3.3 to 4.4.0 in /modules/vault (#4143) @dependabot
- Bump junit-jupiter-engine from 5.7.1 to 5.7.2 in /modules/junit-jupiter (#4117) @dependabot
- Bump tomcat-jdbc from 10.0.0 to 10.0.6 in /modules/jdbc (#4085) @dependabot
- Bump assertj-core from 3.18.1 to 3.19.0 in /modules/database-commons (#3721) @dependabot
- Update Gradle Wrapper to 7.1.1 (#4266) @github-actions
- Update Gradle Wrapper to 7.1 (#4214) @github-actions
- Bump actions/cache from 2.1.3 to 2.1.6 (#4162) @dependabot
- Bump assertj-core from 3.18.1 to 3.19.0 in /modules/vault (#3722) @dependabot
- Bump assertj-core from 3.18.1 to 3.19.0 in /modules/neo4j (#3716) @dependabot
- Bump mysql-connector-java from 8.0.22 to 8.0.25 in /modules/mysql (#4086) @dependabot
- Bump HikariCP from 3.4.5 to 4.0.3 in /modules/spock (#3857) @dependabot
- Bump solr-solrj from 8.7.0 to 8.8.2 in /examples (#4005) @dependabot
- Bump auto-service from 1.0-rc7 to 1.0 in /modules/mssqlserver (#3983) @dependabot
- Bump jedis from 3.3.0 to 3.6.0 in /modules/junit-jupiter (#4028) @dependabot
- Bump jedis from 3.4.0 to 3.6.0 in /core (#4019) @dependabot
- Bump mssql-jdbc from 9.1.1.jre8-preview to 9.3.1.jre8-preview in /modules/mssqlserver (#4048) @dependabot
- Bump elasticsearch-rest-client from 7.12.0 to 7.12.1 in /modules/elasticsearch (#4049) @dependabot
- Bump org.jetbrains.kotlin.plugin.spring from 1.4.32 to 1.5.0 in /examples (#4115) @dependabot
- Bump postgresql from 42.2.18 to 42.2.20 in /modules/junit-jupiter (#4032) @dependabot
- Bump junit-jupiter-engine from 5.7.0 to 5.7.1 in /modules/junit-jupiter (#3768) @dependabot
- Bump commons-lang3 from 3.11 to 3.12.0 in /modules/jdbc-test (#3856) @dependabot
- Bump json from 20201115 to 20210307 in /examples (#3884) @dependabot
- Bump lombok from 1.18.16 to 1.18.20 in /examples (#3956) @dependabot
- Bump auto-service from 1.0-rc7 to 1.0 in /modules/postgresql (#3984) @dependabot
- Bump auto-service from 1.0-rc7 to 1.0 in /modules/mysql (#3988) @dependabot
- Bump auto-service from 1.0-rc7 to 1.0 in /modules/mariadb (#3989) @dependabot
- Bump org.jetbrains.kotlin.plugin.spring from 1.4.21-2 to 1.4.32 in /examples (#3946) @dependabot
- Bump junit-jupiter-params from 5.7.0 to 5.7.1 in /modules/junit-jupiter (#3769) @dependabot
- Bump junit from 4.13.1 to 4.13.2 in /examples (#3794) @dependabot
- Bump junit-jupiter-api from 5.7.0 to 5.7.1 in /modules/junit-jupiter (#3770) @dependabot
- Bump transport from 7.10.1 to 7.12.1 in /modules/elasticsearch (#4050) @dependabot
- Bump testcontainers from 1.15.2 to 1.15.3 in /core (#4067) @dependabot
- Bump r2dbc-mssql from 0.8.5.RELEASE to 0.8.6.RELEASE in /modules/mssqlserver (#4089) @dependabot
- Bump pulsar-client from 2.7.1 to 2.7.2 in /modules/pulsar (#4097) @dependabot
- Bump mariadb-java-client from 2.7.0 to 2.7.3 in /modules/mariadb (#4090) @dependabot
- Bump r2dbc-postgresql from 0.8.5.RELEASE to 0.8.8.RELEASE in /modules/postgresql (#4092) @dependabot
- Bump aws-java-sdk-dynamodb from 1.11.929 to 1.11.1018 in /modules/dynalite (#4091) @dependabot
- Bump mysql-connector-java from 8.0.22 to 8.0.25 in /modules/spock (#4093) @dependabot
- Bump mockito-core from 3.6.28 to 3.10.0 in /modules/junit-jupiter (#4094) @dependabot
- Bump mockito-core from 3.6.28 to 3.10.0 in /core (#4100) @dependabot
- Bump pulsar-client-admin from 2.7.0 to 2.7.2 in /modules/pulsar (#4098) @dependabot
- Bump mysql-connector-java from 8.0.22 to 8.0.25 in /modules/jdbc-test (#4095) @dependabot
- Bump aws-java-sdk-sqs from 1.11.986 to 1.11.1018 in /modules/localstack (#4101) @dependabot
- Bump s3 from 2.16.34 to 2.16.62 in /modules/localstack (#4102) @dependabot