You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PR #595 surfaced unstaged changes adding PEP 735 [dependency-groups] blocks to:
data-management/viewer/pyproject.toml
data-management/viewer/backend/pyproject.toml
Those additions duplicate the existing [project.optional-dependencies].dev declarations rather than replacing them, so they were intentionally not included in PR #595 to keep that PR scoped to the episode viewer test fixes.
Goal
Cleanly migrate dev dependencies in both data-management/viewerpyproject.toml files from the legacy PEP 621 [project.optional-dependencies].dev block to the modern PEP 735 [dependency-groups].dev block, and update tooling (uv, CI) to install via --group dev.
Tasks
Replace [project.optional-dependencies].dev with [dependency-groups].dev in data-management/viewer/pyproject.toml (full set: h5py, httpx, hypothesis, pytest, pytest-asyncio, schemathesis, slowapi, ruff, etc.)
Replace [project.optional-dependencies].dev with [dependency-groups].dev in data-management/viewer/backend/pyproject.toml (full set matching the current legacy block)
Re-run uv lock in both directories to refresh uv.lock
Update any CI / pre-commit / setup scripts that currently install via uv sync --extra dev to use uv sync --group dev
Verify pytest, ruff, and frontend npm run validate still pass with the new install path
Confirm no other consumer (Dockerfile, devcontainer, GitHub Actions) still references the legacy dev extra
Out of Scope
Migrating other top-level packages (training/, evaluation/, data-pipeline/) — file follow-ups per package as needed.
Background
PR #595 surfaced unstaged changes adding PEP 735
[dependency-groups]blocks to:data-management/viewer/pyproject.tomldata-management/viewer/backend/pyproject.tomlThose additions duplicate the existing
[project.optional-dependencies].devdeclarations rather than replacing them, so they were intentionally not included in PR #595 to keep that PR scoped to the episode viewer test fixes.Goal
Cleanly migrate dev dependencies in both
data-management/viewerpyproject.tomlfiles from the legacy PEP 621[project.optional-dependencies].devblock to the modern PEP 735[dependency-groups].devblock, and update tooling (uv, CI) to install via--group dev.Tasks
[project.optional-dependencies].devwith[dependency-groups].devindata-management/viewer/pyproject.toml(full set:h5py,httpx,hypothesis,pytest,pytest-asyncio,schemathesis,slowapi,ruff, etc.)[project.optional-dependencies].devwith[dependency-groups].devindata-management/viewer/backend/pyproject.toml(full set matching the current legacy block)uv lockin both directories to refreshuv.lockuv sync --extra devto useuv sync --group devpytest,ruff, and frontendnpm run validatestill pass with the new install pathdevextraOut of Scope
training/,evaluation/,data-pipeline/) — file follow-ups per package as needed.References