You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Thanks to all contributors. Once again, really great contributions from everyone 🤝.
The NuGet packages for this release have been attested for supply chain security using actions/attest. This confirms the integrity and provenance of the artifacts and helps ensure they can be trusted: #21198535.
Please be aware that we have changed the supported and underlying image used for the Cosmos DB module. The latest tag only supports certain environments and provides a limited set of features. Microsoft has introduced a new implementation, vnext-preview, which receives more updates and features. Due to the limitations of the latest tag, we decided to replace it with vnext-preview. You find more information about the image here: https://github.com/Azure/azure-cosmos-db-emulator-docker.
⚠️ Breaking Changes
feat(CosmosDb): Update base image from latest to vnext-preview (#1324) @NelsonBN
🚀 Features
feat(CosmosDb): Update base image from latest to vnext-preview (#1324) @NelsonBN
Also, due to the recent Docker Engine v29 release, TC for .NET pins the Docker Engine API version to 1.44 (see the previous release notes). You can override this default and set it to the version you're using, ideally 1.52, which corresponds to v29, if you're already running it.
This release adds a new configuration (DOCKER_API_VERSION) that lets you pin and downgrade the Docker Engine API version. This was needed because Docker Engine v29 introduced breaking changes that affect Docker.DotNet and Testcontainers for .NET. This release pins the API version to 1.44. So far, no issues or negative side effects have been observed.
I am also working on updating Docker.DotNet to make it fully compatible with Docker Engine v29. There is already a work-in-progress PR.
Thanks to all the contributors who helped with this release 👍.
In version 4.7.0, we noticed that the reuse hash could change depending on the order of dictionary values. This has been fixed to ensure that dictionary values are processed in a consistent order when generating the reuse hash. As a result, the reuse hash will likely change again with 4.8.0.
Wait strategies now default to the Running mode. This mode expects the container to remain running throughout startup. If the container exits unexpectedly, Testcontainers will throw a ContainerNotRunningException that includes the exit code and container logs.
The container startup callback now includes an additional overload that provides the actual container configuration. If you implement IContainerBuilder<TBuilderEntity, TContainerEntity>, you need to add the container configuration (e.g., IContainerConfiguration) as a third generic type constraint to IContainerBuilder.
IContainerBuilder.WithResourceMapping and IContainer.CopyAsync now include two new optional arguments: uid and gid. If you do not need to specify those, use named arguments for the existing parameters: fileMode or ct.
This release doesn't introduce breaking changes to the public API, but it isn't binary compatible due to necessary internal changes. Make sure to update all related packages (Testcontainers modules) to the same version. See more details here. Thanks to all contributors 👏.
This is a patch release (but the minor version was already set). It fixes a bug in our Docker.DotNet fork where a wrong HTTP Connection header break Podman and possibly other environments. Shipped a quick fix. Thanks again to @ahaeber and @victor-lambret for the help.
Time for a new release! Big thanks to everyone who helped out with this one. It's got some awesome new features and fixes 😎. Seriously, I can't thank you enough. This wouldn't be possible without your ongoing support 🙏.
This is likely the last release for this year, unless urgent fixes become necessary.
I want to mention a change introduced in the last major release, where we refactored the IImage interface. As part of this update, we removed obsolete properties and overloaded constructors. If you previously used an overload other than DockerImage(string), please ensure you pass the correct values to the constructor.
Additionally, we replaced Docker.DotNet with our own fork to keep the Docker Engine API up to date. Our goal is to improve reliability and performance while offering a more developer-friendly and convenient client. If you depend on a Docker client for .NET, we encourage you to contribute to this project ❤️.
On a personal note, I wish everyone a peaceful and lovely holiday season. Take this time to rest, connect with loved ones, and recharge for the new year. Take care.
Thanks so much for all the effort you put into this release 🙌. We are continuing to align Testcontainers for .NET with other language implementations and working on improving the domain-specific language.
We have updated the IImage interface to follow the domain-specific language with the correct property names. The table below shows the changes. We tried to make the transition as smooth as possible, but be aware that relying on the Repository property might cause issues since it now resolves a different value than before. We have kept the old properties, marked them as obsolete, and provided guidance on how to migrate.
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
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.
This PR contains the following updates:
3.10.0→4.11.0Release Notes
testcontainers/testcontainers-dotnet (Testcontainers)
v4.11.0Compare Source
What's Changed
Thanks to all contributors. Once again, really great contributions from everyone 🤝.
The NuGet packages for this release have been attested for supply chain security using
actions/attest. This confirms the integrity and provenance of the artifacts and helps ensure they can be trusted: #21198535.Please be aware that we have changed the supported and underlying image used for the Cosmos DB module. The
latesttag only supports certain environments and provides a limited set of features. Microsoft has introduced a new implementation,vnext-preview, which receives more updates and features. Due to the limitations of thelatesttag, we decided to replace it withvnext-preview. You find more information about the image here: https://github.com/Azure/azure-cosmos-db-emulator-docker.🚀 Features
🐛 Bug Fixes
📖 Documentation
🧹 Housekeeping
📦 Dependency Updates
v4.10.0Compare Source
What's Changed
Happy New Year, everyone! 🎉
Please note that going forward, we expect developers to explicitly pin the image version (https://redirect.github.com/testcontainers/testcontainers-dotnet/discussions/1470). We consider this a best practice and it aligns with other language implementations.
Also, due to the recent Docker Engine v29 release, TC for .NET pins the Docker Engine API version to
1.44(see the previous release notes). You can override this default and set it to the version you're using, ideally1.52, which corresponds to v29, if you're already running it.🚀 Features
🐛 Bug Fixes
📖 Documentation
🧹 Housekeeping
v4.9.0Compare Source
What's Changed
This release adds a new configuration (
DOCKER_API_VERSION) that lets you pin and downgrade the Docker Engine API version. This was needed because Docker Engine v29 introduced breaking changes that affect Docker.DotNet and Testcontainers for .NET. This release pins the API version to1.44. So far, no issues or negative side effects have been observed.I am also working on updating Docker.DotNet to make it fully compatible with Docker Engine v29. There is already a work-in-progress PR.
Thanks to all the contributors who helped with this release 👍.
🚀 Features
🐛 Bug Fixes
📖 Documentation
🧹 Housekeeping
v4.8.1Compare Source
What's Changed
🐛 Bug Fixes
v4.8.0Compare Source
What's Changed
Thank you to all the contributors 🙌.
In version
4.7.0, we noticed that the reuse hash could change depending on the order of dictionary values. This has been fixed to ensure that dictionary values are processed in a consistent order when generating the reuse hash. As a result, the reuse hash will likely change again with4.8.0.Wait strategies now default to the
Runningmode. This mode expects the container to remain running throughout startup. If the container exits unexpectedly, Testcontainers will throw aContainerNotRunningExceptionthat includes the exit code and container logs.The container startup callback now includes an additional overload that provides the actual container configuration. If you implement
IContainerBuilder<TBuilderEntity, TContainerEntity>, you need to add the container configuration (e.g.,IContainerConfiguration) as a third generic type constraint toIContainerBuilder.IContainerBuilder.WithResourceMappingandIContainer.CopyAsyncnow include two new optional arguments:uidandgid. If you do not need to specify those, use named arguments for the existing parameters:fileModeorct.🚀 Features
WithTarget(string)to image builder (#1534) @HofmeisterAn🐛 Bug Fixes
db.runCommand({hello:1})do detect readiness (#1548) @HofmeisterAn📖 Documentation
IContainerBuilder.WithAutoRemovecode comment (#1546) @hojmark🧹 Housekeeping
UntilPortIsAvailable(int)(#1528) @HofmeisterAnv4.7.0Compare Source
What's Changed
This release doesn't introduce breaking changes to the public API, but it isn't binary compatible due to necessary internal changes. Make sure to update all related packages (Testcontainers modules) to the same version. See more details here. Thanks to all contributors 👏.
🚀 Features
.slnx(solution) file in common directory paths (#1492) @alexander-jesner-AP🐛 Bug Fixes
📖 Documentation
🧹 Housekeeping
v4.6.0Compare Source
What's Changed
This is a patch release (but the minor version was already set). It fixes a bug in our Docker.DotNet fork where a wrong HTTP
Connectionheader break Podman and possibly other environments. Shipped a quick fix. Thanks again to @ahaeber and @victor-lambret for the help.🐛 Bug Fixes
🧹 Housekeeping
v4.5.0Compare Source
What's Changed
Big thanks to everyone who contributed to this release 🤜🤛.
🚀 Features
Task<ExecResult>extension methodThrowOnFailure(#1448) @HofmeisterAnDockerUnavailableExceptionwhen Docker is not available (#1308) @0xced🐛 Bug Fixes
📖 Documentation
🧹 Housekeeping
3.128.1(#1443) @HofmeisterAnv4.4.0Compare Source
What's Changed
Time for a new release! Big thanks to everyone who helped out with this one. It's got some awesome new features and fixes 😎. Seriously, I can't thank you enough. This wouldn't be possible without your ongoing support 🙏.
🚀 Features
🐛 Bug Fixes
WithName(IImage)(#1413) @HofmeisterAnCreatedTimeforUntilMessageIsLoggedwait strategy (#1384) @0xced📖 Documentation
testcontainers/helloworldimage in docs to version1.2.0(#1419) @VishnuJin🧹 Housekeeping
v4.3.0Compare Source
What's Changed
Thank you to all the contributors 🙌.
🚀 Features
🐛 Bug Fixes
🧹 Housekeeping
SharedContainerInstanceand useContainerFixtureinstead (#1378) @0xcedv4.2.0Compare Source
What's Changed
Thanks for all the contributions. Great first release of the year ❤️.
🚀 Features
🐛 Bug Fixes
🧹 Housekeeping
v4.1.0Compare Source
What's Changed
This is likely the last release for this year, unless urgent fixes become necessary.
I want to mention a change introduced in the last major release, where we refactored the
IImageinterface. As part of this update, we removed obsolete properties and overloaded constructors. If you previously used an overload other thanDockerImage(string), please ensure you pass the correct values to the constructor.Additionally, we replaced Docker.DotNet with our own fork to keep the Docker Engine API up to date. Our goal is to improve reliability and performance while offering a more developer-friendly and convenient client. If you depend on a Docker client for .NET, we encourage you to contribute to this project ❤️.
On a personal note, I wish everyone a peaceful and lovely holiday season. Take this time to rest, connect with loved ones, and recharge for the new year. Take care.
🚀 Features
net6.0and addnet9.0TFM (#1311) @HofmeisterAn🐛 Bug Fixes
DbContainerFixtureto match the behavior ofContainerFixture(#1310) @0xced📖 Documentation
🧹 Housekeeping
v4.0.0Compare Source
What's Changed
Thanks so much for all the effort you put into this release 🙌. We are continuing to align Testcontainers for .NET with other language implementations and working on improving the domain-specific language.
We have updated the
IImageinterface to follow the domain-specific language with the correct property names. The table below shows the changes. We tried to make the transition as smooth as possible, but be aware that relying on theRepositoryproperty might cause issues since it now resolves a different value than before. We have kept the old properties, marked them as obsolete, and provided guidance on how to migrate.and Papercutmodule (#1265) @HofmeisterAnIImageproperties with Docker DSL (#1256) @HofmeisterAn🚀 Features
execto replace current shell with the Kafka process (as ENTRYPOINT) (#1282) @jasoncoutureWithEnterpriseEdition(bool)) (#1269) @SossenbinderIImage,DockerImageand in theWithImage(string)implementation (#1249) @KielekIImageproperties with Docker DSL (#1256) @HofmeisterAnAccountNameandAccountKeyto public, move toAzuriteBuilder(#1258) @mikecole🐛 Bug Fixes
🧹 Housekeeping
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.