From 0b300c1445a4ef6bc021a27a363c51e97fef041d Mon Sep 17 00:00:00 2001 From: Bonelli Date: Sat, 21 Feb 2026 08:24:05 -0500 Subject: [PATCH] refactor(dependencies): introduce ecosystem group --- README.md | 7 +++---- pyproject.toml | 11 +++++++++++ 2 files changed, 14 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 23706c4f..9c2dad64 100644 --- a/README.md +++ b/README.md @@ -43,11 +43,10 @@ Python development tools for MODFLOW 6 and related projects. Python3.10+, dependency-free by default. -Several optional dependency groups are available, oriented around specific use cases: +Two main dependency groups are available, oriented around specific use cases: -- `dfn`: MF6 definition file parsing -- `test`: pytest fixtures/extensions -- `models`: example model access +- `test`: pytest fixtures, markers, and extensions +- `ecosystem`: program/model management, definition file utilities ## Installation diff --git a/pyproject.toml b/pyproject.toml index 0b26a6b3..57fdafc6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -69,11 +69,13 @@ docs = [ "sphinx-rtd-theme", "myst-parser" ] +# deprecated dfn = [ "boltons", "tomli", "tomli-w" ] +# deprecated models = [ "boltons", "filelock", @@ -82,6 +84,8 @@ models = [ "tomli", "tomli-w" ] +# prefer ecosystem to dfn/models separately +ecosystem = ["modflow-devtools[dfn,models]"] dev = ["modflow-devtools[lint,test,docs,dfn,models]"] [dependency-groups] @@ -115,11 +119,13 @@ docs = [ "sphinx-rtd-theme", "myst-parser" ] +# deprecated dfn = [ "boltons", "tomli", "tomli-w" ] +# deprecated models = [ "boltons", "filelock", @@ -128,6 +134,11 @@ models = [ "tomli", "tomli-w" ] +# prefer ecosystem to dfn/models separately +ecosystem = [ + {include-group = "dfn"}, + {include-group = "models"}, +] dev = [ {include-group = "build"}, {include-group = "lint"},