Skip to content

Use dependency groups for development dependencies - #564

Merged
dweindl merged 2 commits into
PEtab-dev:mainfrom
dweindl:dependency_groups
Oct 20, 2026
Merged

dweindl merged 2 commits into
PEtab-dev:mainfrom
dweindl:dependency_groups

Conversation

@dweindl

@dweindl dweindl commented Oct 20, 2026 •

Copy link
Copy Markdown
Member

Move development-only dependencies from extras to dependency groups, since they don't need to be part of the published package metadata.

  • New groups: test, doc, and dev (= test + pre-commit). dev is the default group, so a plain uv sync gives a development environment.
  • The former ci group is merged into test, since the test suite requires petabtests and benchmark_models_petab.
  • Feature extras antimony, combine, reports, sciml, vis are kept; a new all extra includes all of them.
  • The extras tests, doc, and quality are removed (→ pip install petab[tests] no longer works).
  • pysb is taken from master via [tool.uv.sources] (not part of the published metadata).
  • The Jinja2 pin in reports (old nbsphinx workaround) is relaxed.
  • Unused sphinxcontrib-napoleon is dropped (sphinx.ext.napoleon is used).
  • Read the Docs now installs via uv sync --group doc.
  • CI: the BNGL test corpus is fetched via uv run --no-project, avoiding a sync of the default group before the actual test environment sync.

🤖 Generated with Claude Code

@codecov-commenter

codecov-commenter commented Oct 20, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.20%. Comparing base (f7612ec) to head (c53eeb6).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #564   +/-   ##
=======================================
  Coverage   78.20%   78.20%           
=======================================
  Files          68       68           
  Lines        7845     7845           
  Branches     1400     1400           
=======================================
  Hits         6135     6135           
  Misses       1224     1224           
  Partials      486      486           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@dweindl
dweindl marked this pull request as ready for review October 20, 2026 13:44
@dweindl
dweindl requested a review from a team as a code owner October 20, 2026 13:44
Comment thread pyproject.toml Outdated
"ipython>=7.21.0, !=8.7.0",
"pysb",
]
lint = [

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe a bad name for this group since we also have petablint/linting in general is relevant to petab users.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dropped that group. Now part of dev.

Move development-only dependencies from extras to dependency groups
(`test`, `doc`, `dev`), keep feature extras (`antimony`, `combine`,
`reports`, `sciml`, `vis`) and add an `all` extra.

* `dev` (`test` + `pre-commit`) is the default group for `uv sync`.
* Merge the former `ci` group into `test`, since the test suite
  requires `petabtests` and `benchmark_models_petab`.
* Use pysb from master via `tool.uv.sources`.
* Relax the `Jinja2` pin in `reports`.
* Drop the unused `sphinxcontrib-napoleon`.
* Read the Docs: install via `uv sync --group doc`.
* CI: fetch the BNGL test corpus without syncing the project.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@dweindl
dweindl enabled auto-merge (squash) October 20, 2026 19:56
@dweindl
dweindl merged commit 57f3a49 into PEtab-dev:main Oct 20, 2026
7 checks passed
@dweindl
dweindl deleted the dependency_groups branch October 20, 2026 20:11
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.

3 participants