From f25b48efc1961e54329058e59812452115de7f0e Mon Sep 17 00:00:00 2001 From: wpbonelli Date: Thu, 26 Jun 2025 20:46:20 -0400 Subject: [PATCH 1/4] draft roadmap --- docs/dev/map.md | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 docs/dev/map.md diff --git a/docs/dev/map.md b/docs/dev/map.md new file mode 100644 index 00000000..0d100342 --- /dev/null +++ b/docs/dev/map.md @@ -0,0 +1,49 @@ +# FloPy 4 development roadmap + +## Phase 1: Minimum Viable Product + +Read/write input files, run simulations, get/set data. +Initial deliverable for alpha testing (USGS, Deltares). +Alpha testers include Joeri, Huite, and the core MF6 team. +Release via `pip install ` from github URL of our development sandbox. +Tentative timeframe: July. + +- [x] DFN spec to TOML +- [x] xarray/attrs backend +- [x] unified IO framework +- [ ] MF6 input file parser +- [ ] MF6 input file writer +- [ ] code generation from spec +- [ ] minimal docs (quickstart, etc) + +## Phase 2: Minimum Marketable Product + +Achieve rough feature-parity with 3.x. +Adopt features from e.g. `imod-python`. +Incorporate feedback from alpha testing. +Beta testers include alpha testers and additional volunteers from USGS and Deltares. +Release via `pip install` from github URL of our development sandbox. +Tentative timeframe: October. + +- [ ] structured xarray index for topology/geometry-aware selections +- [ ] xarray accessors for cross-cutting concerns (plot, export) +- [ ] xugrid integration for UGRID-compliance (DIS/DISV grids) +- [ ] more extensive docs (converted from old flopy examples) +- [ ] IO optimization (tuning, laziness/concurrency, etc) +- [ ] comprehensive logging and error handling +- [ ] validation framework, model checks +- [ ] command line interface +- [ ] cell inspector +- [ ] unit-awareness + +## Phase 3: Rollout + +Integrate the product with the existing repository. +Evaluate feature-parity and fill any remaining gaps. +Release via standard channels (PyPI, Conda). +Dial 3.x down to maintenance mode. +Tentative timeframe: January 2026 + +- [ ] implement 3.x adapters, compare tests/examples +- [ ] finalize 3.x maintenance plan and 4.x release plan +- [ ] finalize MF6 compatibility policy and codegen tooling From e128d121290823ff00e52d74131374743fab39a4 Mon Sep 17 00:00:00 2001 From: wpbonelli Date: Thu, 26 Jun 2025 21:32:21 -0400 Subject: [PATCH 2/4] xattree is not production-ready --- docs/dev/map.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/dev/map.md b/docs/dev/map.md index 0d100342..88c56e32 100644 --- a/docs/dev/map.md +++ b/docs/dev/map.md @@ -9,7 +9,7 @@ Release via `pip install ` from github URL of our development sandbox. Tentative timeframe: July. - [x] DFN spec to TOML -- [x] xarray/attrs backend +- [x] draft object model - [x] unified IO framework - [ ] MF6 input file parser - [ ] MF6 input file writer @@ -18,6 +18,7 @@ Tentative timeframe: July. ## Phase 2: Minimum Marketable Product +Refactor to make production-ready. Achieve rough feature-parity with 3.x. Adopt features from e.g. `imod-python`. Incorporate feedback from alpha testing. @@ -25,6 +26,7 @@ Beta testers include alpha testers and additional volunteers from USGS and Delta Release via `pip install` from github URL of our development sandbox. Tentative timeframe: October. +- [ ] reimplement object model (maintainability over magic) - [ ] structured xarray index for topology/geometry-aware selections - [ ] xarray accessors for cross-cutting concerns (plot, export) - [ ] xugrid integration for UGRID-compliance (DIS/DISV grids) From 26980bff35fb674fc7ebf9b50063398d41e98a7a Mon Sep 17 00:00:00 2001 From: wpbonelli Date: Thu, 26 Jun 2025 21:33:49 -0400 Subject: [PATCH 3/4] note --- docs/dev/map.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/dev/map.md b/docs/dev/map.md index 88c56e32..d794129e 100644 --- a/docs/dev/map.md +++ b/docs/dev/map.md @@ -2,6 +2,7 @@ ## Phase 1: Minimum Viable Product +Core functionality. Shortcuts are OK. Read/write input files, run simulations, get/set data. Initial deliverable for alpha testing (USGS, Deltares). Alpha testers include Joeri, Huite, and the core MF6 team. From 6ced85f29d37f99df334bd2f243d07723242dc9b Mon Sep 17 00:00:00 2001 From: wpbonelli Date: Fri, 27 Jun 2025 16:04:43 -0400 Subject: [PATCH 4/4] remove tentative items and timeframe for phase 3 --- docs/dev/map.md | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/docs/dev/map.md b/docs/dev/map.md index d794129e..e3041435 100644 --- a/docs/dev/map.md +++ b/docs/dev/map.md @@ -25,7 +25,7 @@ Adopt features from e.g. `imod-python`. Incorporate feedback from alpha testing. Beta testers include alpha testers and additional volunteers from USGS and Deltares. Release via `pip install` from github URL of our development sandbox. -Tentative timeframe: October. +Tentative timeframe: by end of year? - [ ] reimplement object model (maintainability over magic) - [ ] structured xarray index for topology/geometry-aware selections @@ -35,9 +35,6 @@ Tentative timeframe: October. - [ ] IO optimization (tuning, laziness/concurrency, etc) - [ ] comprehensive logging and error handling - [ ] validation framework, model checks -- [ ] command line interface -- [ ] cell inspector -- [ ] unit-awareness ## Phase 3: Rollout @@ -45,7 +42,6 @@ Integrate the product with the existing repository. Evaluate feature-parity and fill any remaining gaps. Release via standard channels (PyPI, Conda). Dial 3.x down to maintenance mode. -Tentative timeframe: January 2026 - [ ] implement 3.x adapters, compare tests/examples - [ ] finalize 3.x maintenance plan and 4.x release plan