Skip to content

chore: move test/dev dependencies from extras to dependency groups#33

Open
g4bri3lDev wants to merge 1 commit into
mainfrom
chore/test-deps-group
Open

chore: move test/dev dependencies from extras to dependency groups#33
g4bri3lDev wants to merge 1 commit into
mainfrom
chore/test-deps-group

Conversation

@g4bri3lDev

Copy link
Copy Markdown
Member

Summary

Same change as OpenDisplay/py-opendisplay#112: test and dev lived in [project.optional-dependencies] (extras). Extras are not installed by a plain uv run, so uv run pytest in a fresh checkout or worktree silently fell back to whatever pytest is on $PATH — running tests under a different interpreter against whatever odl_renderer that interpreter could import, instead of the tree under test. Dev tooling is also not publishable package metadata, so [dependency-groups] is the semantically right home.

  • test and dev moved to [dependency-groups]; dev includes test
  • visual and property stay extras — they gate optional test suites, and the visual tests import imagehash/syrupy unconditionally, so the full suite still needs --all-extras (unchanged)
  • lint.yml: uv sync --extra devuv sync (the dev group is installed by default; the extra no longer exists)
  • test.yml/generate-screenshots.yml uv sync --all-extras keep working (dev group is default)
  • uv lock also refreshed the lockfile's stale self-version (0.5.10 → 0.5.11, pyproject was already bumped)

Test plan

  • fresh venv, uv run --all-extras pytest -q → 402 passed (pytest resolved from .venv, not PATH)
  • uv lock resolves

🤖 Generated with Claude Code

Extras are not installed by a plain `uv run`, so `uv run pytest` fell
back to any pytest on PATH, testing against whatever odl_renderer that
interpreter could import instead of the current tree. As dependency
groups (dev includes test), they are synced by default. The visual and
property extras stay extras: they gate optional test suites.

lint.yml switches from `uv sync --extra dev` to plain `uv sync`, which
installs the dev group by default.
@codecov

codecov Bot commented Jul 5, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant