- Require Python 3.15 in project metadata, runtime pin, and Docker stages. - Use lazy imports for database backends and type-only dependencies. - Defer benchmark dependencies until their code paths are used. - Rely on deferred annotations and use Path.info for file discovery. - Accept BattlesnakeArena alongside BattlesnakeEngine on game endpoints. - Advance quart_common for Python 3.15 and multi-agent validation. - Add pytest development dependencies and refresh the uv lockfile. - Test lazy backend loading, import order, and fresh file discovery. - Document the runtime requirements and locked uv workflow. BREAKING CHANGE: Python 3.15 or newer is required; earlier runtimes cannot parse the lazy import syntax.
26 lines
475 B
TOML
26 lines
475 B
TOML
[tool.pytest.ini_options]
|
|
pythonpath = ["."]
|
|
addopts = "--import-mode=importlib"
|
|
|
|
[project]
|
|
name = "snake-python"
|
|
version = "0.1.0"
|
|
description = "Add your description here"
|
|
readme = "README.md"
|
|
requires-python = ">=3.15"
|
|
dependencies = [
|
|
"aiofiles>=25.1.0",
|
|
"aiologger>=0.7.0",
|
|
"dotenv>=0.9.9",
|
|
"httpx>=0.28.0",
|
|
"redis>=5.2.1",
|
|
"quart>=0.20.0",
|
|
"python-dotenv>=1.2.2",
|
|
"asyncpg>=0.31.0",
|
|
]
|
|
|
|
[dependency-groups]
|
|
dev = [
|
|
"pytest>=9.2.0",
|
|
]
|