Skip to content

chore: use dependency groups (PEP 735) - #2809

Merged
wpbonelli merged 1 commit into
modflowpy:developfrom
mwtoews:pep-735
Aug 13, 2026
Merged

chore: use dependency groups (PEP 735)#2809
wpbonelli merged 1 commit into
modflowpy:developfrom
mwtoews:pep-735

Conversation

@mwtoews

@mwtoews mwtoews commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

This PR separates a few optional dependencies into dependency groups, as defined by PEP 735.

The optional dependencies (or "extras") are kept, and are intended for user-facing install options:

  • optional: this is the primary group, with documentation and support functions
  • codegen: includes other dependencies needed for code generation

Dependency groups are intended for internal or developer-facing install options:

  • lint, test and dev are re-listed as dependency groups
  • doc is renamed as docs group, plural to match the folder name "docs"
  • The dev group is similar to as it was as an extra, but doc (now docs) is removed, as not all developers need to create docs (? maybe?); nevertheless it can be installed via --group docs

A few sections of DEVELOPER.md were revised to describe how to install the extras or dependency groups in different Python environments.

The pytest header (in autotest/conftest.py) is modified to only show "optional" packages and not the "test" dependency group packages. If this is important, it could be re-enabled, but it would need to parse the group directly from pyproject.toml, as this information is not part of the project's metadata.

@codecov

codecov Bot commented Aug 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.3%. Comparing base (556c088) to head (8d1cd00).
⚠️ Report is 201 commits behind head on develop.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #2809      +/-   ##
===========================================
+ Coverage     55.5%    73.3%   +17.7%     
===========================================
  Files          644      659      +15     
  Lines       124135   132182    +8047     
===========================================
+ Hits         68947    96909   +27962     
+ Misses       55188    35273   -19915     
Files with missing lines Coverage Δ
flopy/utils/utl_import.py 68.1% <ø> (ø)

... and 585 files with indirect coverage changes

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

@wpbonelli wpbonelli left a comment

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.

thanks for this

@wpbonelli
wpbonelli merged commit 301eb8f into modflowpy:develop Aug 13, 2026
20 checks passed
@mwtoews
mwtoews deleted the pep-735 branch August 13, 2026 16:43
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.

2 participants