unstale

pypi / testcontainers

testcontainers

What changed in testcontainers 4, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-23.

1 breaking9 new APIs and options6 fixes and other

See which of these apply to your code, ranked, in your agent:

npx @unstale/cli init

@unstale/cli 0.2.3 on npm

testcontainers 416 changes

Breaking changes 1

  • Compose support was implemented for v2 with improved typing, which may affect existing Compose usage.

    4.0.0release notes

New APIs and options 9

  • Adds a CrateDB community module for using CrateDB with Testcontainers.

    4.15.0release notes

  • Kafka listener name and security protocol are configurable.

    4.14.2release notes

  • Useful compose options are now exposed.

    4.14.1release notes

  • MySQL, Cassandra, Kafka, and Trino now allow passing in a custom wait strategy string.

    4.14.1release notes

  • NATS now supports JetStream.

    4.14.1release notes

  • Adds ExecWaitStrategy as a wait strategy; Postgres is migrated from the deprecated decorator.

    4.14.0release notes

  • AsyncRedisContainer is supported.

    4.0.0release notes

  • Compose runs can target specific services.

    4.0.0release notes

  • Support for tc.host was added, and docker:dind was de-prioritised.

    4.0.0release notes

Fixes and other changes 6

  • Elasticsearch 9.x is now supported.

    4.14.1release notes

  • Python 3.14 is now supported.

    4.13.3release notes

  • Consumers no longer need to state that Python 4 is unsupported.

    4.13.3release notes

  • URLError was added to the exceptions handled while waiting for Elasticsearch.

    4.0.0release notes

  • A fix addressed flaky garbage collection that was resulting in testing errors.

    4.0.0release notes

  • The RabbitMQ readiness probe was fixed.

    4.0.0release notes