@@ -82,58 +82,58 @@ packages = [
8282"Issue Tracker" = " https://github.com/testcontainers/testcontainers-python/issues"
8383
8484[tool .poetry .dependencies ]
85- python = " >=3.9.2 "
85+ python = " >=3.10 "
8686docker = " *" # ">=4.0"
8787urllib3 = " *" # "<2.0"
8888wrapt = " *" # "^1.16.0"
8989typing-extensions = " *"
9090python-dotenv = " *"
9191
9292# community modules
93- python-arango = { version = " ^7. 8" , optional = true }
94- azure-storage-blob = { version = " ^12.19 " , optional = true }
95- cassandra-driver = { version = " 3.29.1 " , optional = true }
93+ python-arango = { version = " ^8" , optional = true }
94+ azure-storage-blob = { version = " ^12" , optional = true }
95+ cassandra-driver = { version = " ^3 " , optional = true }
9696# clickhouse-driver = { version = "*", optional = true }
97- google-cloud-pubsub = { version = " >= 2" , optional = true }
98- google-cloud-datastore = { version = " >= 2" , optional = true }
99- influxdb = { version = " * " , optional = true }
100- influxdb-client = { version = " * " , optional = true }
97+ google-cloud-pubsub = { version = " ^ 2" , optional = true }
98+ google-cloud-datastore = { version = " ^ 2" , optional = true }
99+ influxdb = { version = " ^5 " , optional = true }
100+ influxdb-client = { version = " ^1 " , optional = true }
101101kubernetes = { version = " *" , optional = true }
102102pyyaml = { version = " >=6.0.3" , optional = true }
103- python-keycloak = { version = " *" , optional = true }
104- boto3 = { version = " *" , optional = true }
105- minio = { version = " *" , optional = true }
106- nats-py = { version = " *" , optional = true }
107- pymongo = { version = " *" , optional = true }
108- sqlalchemy = { version = " *" , optional = true }
109- pymssql = { version = " >=2.3.9" , optional = true , markers = " platform_machine != 'arm64' or python_version >= '3.10'" }
110- pymysql = { version = " *" , extras = [" rsa" ], optional = true }
111- neo4j = { version = " *" , optional = true }
112- openfga-sdk = { version = " *" , optional = true , markers = " python_version >= '3.10'" }
113- opensearch-py = { version = " *" , optional = true , markers = " python_version < '4.0'" }
114- oracledb = { version = " >=3.4.1" , optional = true }
115- pika = { version = " *" , optional = true }
116- redis = { version = " *" , optional = true }
117- selenium = { version = " *" , optional = true }
118- weaviate-client = { version = " ^4.5.4" , optional = true }
119- chromadb-client = { version = " ^1.0.0" , optional = true }
120- qdrant-client = { version = " *" , optional = true }
121- bcrypt = { version = " *" , optional = true }
122- httpx = { version = " *" , optional = true }
123- azure-cosmos = { version = " *" , optional = true }
103+ python-keycloak = { version = " ^6" , optional = true , markers = " python_version < '4.0'" }
104+ boto3 = { version = " ^1" , optional = true }
105+ minio = { version = " ^7" , optional = true }
106+ nats-py = { version = " ^2" , optional = true }
107+ pymongo = { version = " ^4" , optional = true }
108+ sqlalchemy = { version = " ^2" , optional = true }
109+ pymssql = { version = " ^2" , optional = true }
110+ pymysql = { version = " ^1" , extras = [" rsa" ], optional = true }
111+ neo4j = { version = " ^6" , optional = true }
112+ openfga-sdk = { version = " *" , optional = true }
113+ opensearch-py = { version = " ^3" , optional = true , markers = " python_version < '4.0'" }
114+ oracledb = { version = " ^3" , optional = true }
115+ pika = { version = " ^1" , optional = true }
116+ redis = { version = " ^7" , optional = true }
117+ selenium = { version = " ^4" , optional = true }
118+ weaviate-client = { version = " ^4" , optional = true }
119+ chromadb-client = { version = " ^1" , optional = true }
120+ qdrant-client = { version = " ^1" , optional = true }
121+ bcrypt = { version = " ^5" , optional = true }
122+ azure-cosmos = { version = " ^4" , optional = true }
124123cryptography = { version = " *" , optional = true }
125124trino = { version = " *" , optional = true }
126125ibm_db_sa = { version = " *" , optional = true , markers = " platform_machine != 'aarch64' and platform_machine != 'arm64'" }
127- pydantic = { version = " >=2.12.4" , optional = true } # upgrade for 3.14 compat (uses pyo3)
128- rpds-py = { version = " >=0.28.0" , optional = true , markers = " python_version >= '3.10'" }
129- grpcio = { version = " >=1.75.1" , optional = true }
130- markupsafe = { version = " >=3.0.3" , optional = true }
131- ujson = { version = " >=5.11.0" , optional = true }
132- aiohttp = { version = " >=3.13.2" , optional = true }
133- grpcio-tools = { version = " >=1.76.0" , optional = true }
134- msgpack = { version = " >=1.1.2" , optional = true }
135- pandas = { version = " >=2.3.3" , optional = true }
136- httpcore = { version = " >=1.0.8" , optional = true } # we could fix this for everyone but this is httpx's responsibility
126+ pydantic = { version = " ^2" , optional = true } # upgrade for 3.14 compat (uses pyo3)
127+ rpds-py = { version = " *" , optional = true }
128+ grpcio = { version = " ^1" , optional = true }
129+ markupsafe = { version = " ^3" , optional = true }
130+ ujson = { version = " ^5" , optional = true }
131+ aiohttp = { version = " ^3" , optional = true }
132+ grpcio-tools = { version = " ^1" , optional = true }
133+ msgpack = { version = " ^1" , optional = true }
134+ pandas = { version = " ^2" , optional = true }
135+ httpx = { version = " *" , optional = true }
136+ httpcore = { version = " ^1" , optional = true } # we could fix this for everyone but this is httpx's responsibility
137137
138138[tool .poetry .group .numpy_old .dependencies ]
139139numpy = { version = " >=2.0" , optional = true , markers = " python_version < '3.11'" }
@@ -196,31 +196,32 @@ chroma = ["chromadb-client"]
196196trino = [" trino" ]
197197
198198[tool .poetry .group .dev .dependencies ]
199- mypy = " 1.11.2"
200- pre-commit = " ^3.6"
201- pytest = " 8.4.2"
202- pytest-cov = " 4.1.0"
203- sphinx = " 7.2.6"
199+ pytest = " ^9"
200+ pytest-asyncio = " ^1"
201+ pytest-cov = " ^7"
202+ pytest-mock = " ^3"
203+ mypy = " ^1"
204+ ruff = " *"
205+ pre-commit = " ^4"
206+ sphinx = [
207+ { version = " ^8" , markers = " python_version < '3.11'" },
208+ { version = " ^9" , markers = " python_version >= '3.11'" },
209+ ]
204210twine = " 6.2.0"
205- anyio = " 4.3.0 "
211+ anyio = " ^4 "
206212# for tests only
213+ sqlalchemy = " ^2"
207214psycopg2-binary = " 2.9.11"
208- pg8000 = " 1.30.5"
209- sqlalchemy = " 2.0.28"
210- psycopg = " 3.1.18"
211- cassandra-driver = " 3.29.1"
212- pytest-asyncio = " 0.23.5"
213- kafka-python-ng = " ^2.2.0"
214- hvac = { version = " 2.1.0" , markers = " python_version < '4.0'" }
215- pymilvus = " 2.6.1"
216- httpx = " 0.28.1"
217- cryptography = " 45.0.7"
218- paho-mqtt = " 2.1.0"
219- sqlalchemy-cockroachdb = " 2.0.2"
220- paramiko = " ^3.4.0"
221- types-paramiko = " ^3.4.0.20240423"
222- pytest-mock = " ^3.14.0"
223- ruff = " 0.11.5"
215+ pg8000 = " 1.31.5"
216+ psycopg = " ^3"
217+ cassandra-driver = " ^3"
218+ kafka-python-ng = " ^2"
219+ hvac = { version = " ^2" , markers = " python_version < '4.0'" }
220+ pymilvus = " ^2"
221+ paho-mqtt = " ^2"
222+ sqlalchemy-cockroachdb = " ^2"
223+ paramiko = " ^4"
224+ types-paramiko = " ^4"
224225
225226[[tool .poetry .source ]]
226227name = " PyPI-public"
@@ -322,7 +323,7 @@ keep-runtime-typing = true
322323strict = true
323324
324325[tool .mypy ]
325- python_version = " 3.9 "
326+ python_version = " 3.10 "
326327namespace_packages = true
327328explicit_package_bases = true
328329pretty = true
0 commit comments