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.
🤖 New release
testcontainers
: 0.17.0 -> 0.18.0Changelog
This PR was generated with release-plz.
Migration Guide
Overview
Most of the breaking changes introduced in this version primarily impact developers who implement their own images. For general usage, the API remains mostly the same, with some improvements and enhancements for better performance and flexibility.
1. Renaming of
RunnableImage
RunnableImage
ContainerRequest
Image
toContainerRequest
(formerlyRunnableImage
) is no longer necessary. Instead, you can now directly importtestcontainers::ImageExt
and override image parameters as needed.2. Changes to
Image
MethodsImage::tag
andImage::name
String
&str
&str
. This change helps improve performance by avoiding unnecessary allocations.3. Changes to
Image::exposed_ports
Image::exposed_ports
&[ContainerPort]
ContainerPort
, which supports exposing ports with protocolsTCP
,UDP
, andSCTP
. Update your code to handle the slice accordingly.4. Removal of Associated Type
Args
inImage
Image
had an associated typeArgs
.Args
is removed.Image::cmd
, which returnsimpl IntoIterator<Item = impl Into<String>>
. This change allows more flexibility in specifying command arguments. Ensure your code is updated to work with the new method signature.5. Simplification of Trait Implementation in
Image
Image
requiredBox<dyn ..>
for certain traits.impl
Trait in Trait (RPITIT).Box<dyn ..>
,Image
now uses RPITIT for trait returns. This change simplifies the code and improves readability and performance. Familiarize yourself with RPITIT to understand its benefits and applications in your implementation.6. Changes to
RunnableImage::with_mapped_port
RunnableImage::with_mapped_port
ImageExt::with_mapped_port