Upgrade Testcontainers from 1.20.1 to 2.0.5#4903
Merged
Merged
Conversation
Testcontainers 1.x bundles a docker-java client that defaults to Docker Engine
API version 1.32. Docker Engine 29 raised its minimum supported API version to
1.40 and rejects older clients, so every Testcontainers-based test fails to find
a valid Docker environment ("client version 1.32 is too old"). Pinning the API
version on 1.x is insufficient because 1.x's environment detection itself fails
against Docker 29. Testcontainers 2.0.x negotiates a compatible API version and
restores compatibility with current Docker.
Testcontainers 2.0 renamed its Maven modules with a `testcontainers-` prefix
(e.g. `org.testcontainers:cassandra` -> `org.testcontainers:testcontainers-cassandra`),
so the dependency artifactIds are updated accordingly. The Java packages are
unchanged in 2.0, so no test source changes are required. Testcontainers 2.0.0+
is compiled for Java 8 bytecode and therefore remains compatible with
JanusGraph's build.
Verified locally against Docker Engine 29 that the CQL, HBase, Elasticsearch and
Solr Testcontainers tests start their containers and pass.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Signed-off-by: Oleksandr Porunov <alexandr.porunov@gmail.com>
Member
Author
|
Merging with CTR |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Testcontainers 1.x bundles a docker-java client that defaults to Docker Engine API version 1.32. Docker Engine 29 raised its minimum supported API version to 1.40 and rejects older clients, so every Testcontainers-based test fails to find a valid Docker environment ("client version 1.32 is too old"). Pinning the API version on 1.x is insufficient because 1.x's environment detection itself fails against Docker 29. Testcontainers 2.0.x negotiates a compatible API version and restores compatibility with current Docker.
Testcontainers 2.0 renamed its Maven modules with a
testcontainers-prefix (e.g.org.testcontainers:cassandra->org.testcontainers:testcontainers-cassandra), so the dependency artifactIds are updated accordingly. The Java packages are unchanged in 2.0, so no test source changes are required. Testcontainers 2.0.0+ is compiled for Java 8 bytecode and therefore remains compatible with JanusGraph's build.Verified locally against Docker Engine 29 that the CQL, HBase, Elasticsearch and Solr Testcontainers tests start their containers and pass.
Thank you for contributing to JanusGraph!
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:
master)?For code changes:
For documentation related changes: