ta-training

Dependencies and Environments

All code should run inside the provided Docker or cluster environment. Avoid creating ad-hoc virtual environments or installing packages directly on your laptop — this breaks reproducibility and makes debugging harder.

Inside Docker, we use uv to manage dependencies. uv is a fast, modern Python package manager and resolver. It installs packages much quicker than pip, supports modern Python packaging standards, and works seamlessly inside containers. It also supports locking dependencies for consistent builds across machines.

Python dependencies

Example pyproject.toml:

[project]
name = "my-project"
version = "0.1.0"
requires-python = ">=3.11"
dependencies = [
    "pandas==2.2.2",
    "numpy==1.26.4",
]

[project.optional-dependencies]
dev = [
    "ruff==0.5.5",
    "pytest==8.2.0",
]

Installing dependencies

Lock files

Cluster environments

Environment variables