[package]
edition = "2021"
rust-version = "1.88"
name = "testcontainers"
version = "0.26.4"
authors = [
"Thomas Eizinger",
"Artem Medvedev <i@ddtkey.com>",
"Mervyn McCreight",
]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A library for integration-testing against docker containers from within Rust."
readme = "README.md"
keywords = [
"docker",
"testcontainers",
"docker-compose",
]
categories = ["development-tools::testing"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/testcontainers/testcontainers-rs"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
aws-lc-rs = ["bollard/aws-lc-rs"]
blocking = []
default = ["ring"]
device-requests = []
docker-compose = [
"dep:docker-compose-types",
"dep:uuid",
]
host-port-exposure = [
"dep:russh",
"russh/ring",
]
http_wait = [
"http_wait_plain",
"reqwest/rustls",
]
http_wait_plain = ["reqwest"]
properties-config = ["serde-java-properties"]
reusable-containers = []
ring = ["bollard/ssl"]
ssl = ["bollard/ssl_providerless"]
watchdog = [
"signal-hook",
"conquer-once",
]
[lib]
name = "testcontainers"
path = "src/lib.rs"
[[test]]
name = "async_runner"
path = "tests/async_runner.rs"
[[test]]
name = "dual_stack_host_ports"
path = "tests/dual_stack_host_ports.rs"
[[test]]
name = "host_port_exposure"
path = "tests/host_port_exposure.rs"
[[test]]
name = "sync_runner"
path = "tests/sync_runner.rs"
[dependencies.astral-tokio-tar]
version = "0.5.6"
[dependencies.async-trait]
version = "0.1"
[dependencies.bollard]
version = "0.20.0"
features = [
"buildkit_providerless",
"time",
]
[dependencies.bytes]
version = "1.6.0"
[dependencies.conquer-once]
version = "0.4"
optional = true
[dependencies.docker-compose-types]
version = "0.22"
optional = true
[dependencies.docker_credential]
version = "1.3.1"
[dependencies.either]
version = "1.12.0"
[dependencies.etcetera]
version = "0.11.0"
[dependencies.ferroid]
version = "0.8.7"
features = [
"std",
"ulid",
"base32",
]
[dependencies.futures]
version = "0.3"
[dependencies.http]
version = "1.1"
[dependencies.itertools]
version = "0.14"
[dependencies.log]
version = "0.4"
[dependencies.memchr]
version = "2.7.2"
[dependencies.parse-display]
version = "0.9.0"
[dependencies.pin-project-lite]
version = "0.2.14"
[dependencies.reqwest]
version = "0.13.1"
features = [
"json",
"charset",
"http2",
]
optional = true
default-features = false
[dependencies.russh]
version = "0.56.0"
optional = true
default-features = false
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde-java-properties]
version = "0.2.0"
optional = true
[dependencies.serde_json]
version = "1"
[dependencies.serde_with]
version = "3.7.0"
[dependencies.signal-hook]
version = "0.3"
optional = true
[dependencies.thiserror]
version = "2.0.3"
[dependencies.tokio]
version = "1"
features = [
"macros",
"fs",
"rt-multi-thread",
"process",
]
[dependencies.tokio-stream]
version = "0.1.15"
[dependencies.tokio-util]
version = "0.7.10"
features = ["io"]
[dependencies.url]
version = "2"
features = ["serde"]
[dependencies.uuid]
version = "1.8.0"
features = ["v4"]
optional = true
[dev-dependencies.anyhow]
version = "1.0.86"
[dev-dependencies.pretty_env_logger]
version = "0.5"
[dev-dependencies.reqwest]
version = "0.13.1"
features = ["blocking"]
default-features = false
[dev-dependencies.temp-dir]
version = "0.1"
[dev-dependencies.tempfile]
version = "3.20"
[dev-dependencies.tokio]
version = "1"
features = ["macros"]