Releasing a new major version of Pastas, 2.0 with the name "Boscaiola" ! A delicious Pasta to enjoy.
For a complete description of the changes: we refer to this GitHub Discussion: https://github.com/orgs/pastas/discussions/1324
What's Changed
- Make
StressModel.stressa property and createadd_stressmethod by @martinvonk in #1065 - Remove
oseries_caliband introduceObservationSeriesby @rubencalje in #1069 - Replace generic Exception statements by @martinvonk in #1113
- Replace
timestep_weighted_resamplebytime_weighted_resampleby @rubencalje in #1094 - Dev branch for Pastas version 2.0 by @martinvonk in #1032
- plot initial parameters in results plot when model is not solved yet. by @dbrakenhoff in #1150
- Replace internal Model checks with centralized check utilities by @martinvonk in #1145
- Allow HTTPError in dataset tests by @martinvonk in #1143
- Remove implicit noise/noisemodel leftovers by @raoulcollenteur in #1122
- Rename LinearTrend parameters from start/end to tstart/tend by @raoulcollenteur with @Copilot in #1111
- Add set_settings method by @raoulcollenteur in #1140
- Make Pastas compatible with Pandas 3.0 by @martinvonk in #1108
- Rename _d to _A for One rfunc by @martinvonk in #1161
- do not assign result by @dbrakenhoff in #1177
- add pause to slow down tracksolve by @dbrakenhoff in #1178
- Fix failing test routines by @martinvonk in #1180
- update weights docstring and tests by @rubencalje in #1149
- Update plots.py by @raoulcollenteur in #1171
- Update Hantush & HantushWellmodel response function with true tmax and log10 scaling by @martinvonk in #1134
- add verbose option to validate_series by @OnnoEbbens in #1155
- Skip in case of HTTPError rate limit in dataset tests by @martinvonk in #1182
- Add option to use the impulse response function for convolution by @martinvonk in #1173
- fix cachedmethod deprecation warning by @dbrakenhoff in #1187
- add StatTimer displaying user-specified stats in progress indicator by @dbrakenhoff in #1188
- Add mean error metric to
pastas.stats.metricsby @martinvonk with @Copilot in #1206 - make update_stress available to all stressmodels by @raoulcollenteur in #1209
- Update RTD docs build to Python 3.14 and modernize Sphinx config by @raoulcollenteur with @Copilot in #1193
- Move calculation of responses from modelplots to stressmodels by @rubencalje in #1156
- Pin dependency upper versions for package versions that will (most likely) break Pastas by @martinvonk in #1214
- Deprecate
freqattribute from stressmodels by @raoulcollenteur with @Copilot in #1211 - Fix stressmodel's argument order by @martinvonk in #1215
- Make NoiseModelBase an AbstractBaseClass by @martinvonk in #1221
- Make StressModelBase an abstract base class and refactor
stressmodels.pyby @martinvonk in #1217 - Fix bug overwriting tmin and tmax on adding stressmodel by @martinvonk in #1220
- Make RechargeBase an AbstractBaseClass by @martinvonk in #1222
- Fix #1147 and #1224 for
ml.plots.stacked_results()by @dbrakenhoff in #1225 - Allign ThresholdTransform with other classes by @martinvonk in #1229
- Fixes some things in check module by @dbrakenhoff in #1232
- Improve warning message for prec/evap in m/d instead of mm/d by @dbrakenhoff in #1233
- Replace
plots.resultscode withresults_mosaicand some other plotting stuff by @martinvonk in #1230 - Improve verbose series validation by @dbrakenhoff in #1227
- Add root finding for exact tmax in FourParam response function by @martinvonk in #1219
- Improve parnames tt by @rubencalje in #1237
- Make sure pastas can be imported without numba by @rubencalje in #1245
- Update solvers by @martinvonk in #1031
- Complex step for jacobian in LeastSquares solver by @dbrakenhoff in #1189
- Automate checking numpystyle docstrings with ruff by @raoulcollenteur in #1246
- make fit_constant work again by @raoulcollenteur in #1248
- Update tests for coverage via gist by @martinvonk in #1250
- Refactor function parameters for clarity and deprecate old names by @martinvonk in #1240
- Fix CI coverage badge update in notebook-inclusive unit test job by @raoulcollenteur with @Copilot in #1256
- Fix issue 1268: make sure unit of DatetimeIndex is correct before interpolating in pandas 3.x by @rubencalje in #1269
- Support the old way to add a stressmodel/noisemodel/transform/constant/solver again by @rubencalje in #1278
- Rename
indexargument totindexfor DatetimeIndex by @martinvonk in #1277 - Replace DeprecationWarning by FutureWarning by @rubencalje in #1279
- Update way to add model components by @raoulcollenteur in #1270
- Update defaults for LeastSquares to jac and 3-point by @raoulcollenteur in #1255
- Improve ml.get_step_response and block_response to get all responses by @raoulcollenteur in #1261
- docs: replace Anaconda recommendation with uv by @raoulcollenteur with @Copilot in #1287
- fix #1285 by @dbrakenhoff in #1294
- Update parameter bounds to ensure reasonable values for the FlexModel by @raoulcollenteur in #1260
- Create
pastas.optionsfor global configuration settings by @martinvonk in #1265 - Update README.md by @raoulcollenteur in #1293
- Add gap argument to results and diagnostics plots by @martinvonk in #1267
- Let
TarsoModelmake use of theModelif parsed by @martinvonk in #1291 - Fix leastsquares issues and add seed by @dbrakenhoff in #1298
- Support real and complex in numba recharge funcs by @dbrakenhoff in #1299
- final fixes by @dbrakenhoff in #1302
- lots of ruff fixes by @dbrakenhoff in #1301
- even more ruff fixes by @martinvonk in #1304
- Rename
mltomodelby @martinvonk in #1307 - Improve pastas 2.0 performance by @dbrakenhoff in #1300
- remove .py files and unused .pas files by @raoulcollenteur in #1295
- Add Sphinx version directives to docstrings across the codebase by @raoulcollenteur with @Copilot in #1197
- Create initial page for the Pastas Sustaining Membership Program by @raoulcollenteur in #1244
- Setup Dependabot by @martinvonk in #1312
- chore(deps): bump the official-actions group with 2 updates by @dependabot[bot] in #1313
- chore(deps): bump the third-party-actions group across 1 directory with 3 updates by @dependabot[bot] in #1314
- Small fix for stacked results plots for models with multiple WellModels. by @dbrakenhoff in #1316
- Create simulate method that returns simulation on observations index by @martinvonk in #1310
- Use papermill to run (and speed up) notebooks in pytest and CI by @raoulcollenteur in #1315
- Make deprecations for Pastas 2.0 consistent by @martinvonk in #1317
- Prepare release for Pastas 2.0.0rc0 by @raoulcollenteur in #1176
- fix error in formulas on rtd hantush example by @OnnoEbbens in #1322
- chore(deps): bump https://github.com/astral-sh/ruff-pre-commit from v0.16.1 to 0.16.2 by @dependabot[bot] in #1323
- Fix brentq failure in Hantush response check for small gain values by @martinvonk in #1330
- Fix typo in deprecation reason for add_stressmodel by @OnnoEbbens in #1327
- Fix parsing versions and their checks by @martinvonk in #1331
- chore(deps): bump https://github.com/astral-sh/ruff-pre-commit from v0.16.2 to 0.16.3 by @dependabot[bot] in #1332
- chore(deps): bump toshimaru/auto-author-assign from 3.0.3 to 3.1.0 in the third-party-actions group by @dependabot[bot] in #1333
- Fix warning message by @OnnoEbbens in #1337
- chore(deps): bump https://github.com/astral-sh/ruff-pre-commit from v0.16.3 to 0.16.4 by @dependabot[bot] in #1338
- change back to jac=2-point by @raoulcollenteur in #1334
- Enhance Emcee initialization with nsteps and update related notebooks by @martinvonk in #1336
- retain headers from forecast data in groundwater forecast and allow different sim freqs by @raoulcollenteur in #1339
- update master to 2.0.0: Boscaiola by @raoulcollenteur in #1320
New Contributors
- @dependabot[bot] made their first contribution in #1313
Full Changelog: v1.14.0...v2.0.0