Releases: PEtab-dev/libpetab-python
libpetab-python v0.7.0
Fixes
- Misc minor
petab.v2
(by @dweindl in #445
and #450) - Fixed serialization of
priorParameters
(by @dweindl in #449)
Features
- Added
PySBModel.to_str
(by @dweindl in #451) - Added
idfield tov2.ProblemConfig
(by @dweindl in #442) - Updated
ExperimentsToEventsConverterto changed initialization semantics
(by @dweindl in #443) - Added
v2.Problem.{get_output_parameters,get_x_nominal_dict}
(by @dweindl in #447) - Extended PEtab v2 mapping table validation
(by @dweindl in #452)
Full Changelog: v0.6.0...v0.7.0
libpetab-python v0.6.0
Fixes
- Implement proper truncation for prior distributions (parameter bounds now truncate the prior distribution instead of putting
extra probability mass on the bounds)
(by @dweindl in #335) - Fixed
get_required_parameters_for_parameter_table
(by @dweindl in #340) - Fixed
Prior.from_par_dictfor missingpriorParameterscolumns
(by @dweindl in #341) - Fixed petablint v2 warning
(by @dweindl in #342) - Fixed linter failing on missing
noiseFormula
(by @dweindl in #367) - Fixed v2 import Deprecation warning
(by @dweindl in #346) - petab.calculate: compare all common columns
(by @dweindl in #347) - Fixed version checks
(by @dweindl in #350) - Create output directories in
write_*_df
(by @dweindl in #352) - Handle
observableTransformationinpetab.v1.simulate.sample_noise
(by @dweindl in #383) - Fixed residual calculation in
v1.calculate
(by @dweindl in #395) - Allow empty string "" in columns to be overridden with default values in priors
(by @PaulJonasJost in #384) - Fixed
goodness_of_fitplot and add color parameter
(by @plakrisenko in #402
& #437,
by @dweindl in #440) - Plot without vis spec without
ids_per_plot
(by @PaulJonasJost in #386)
Deprecations
-
Using any PEtab-v2-related functionality currently in
petab.v1is deprecated and will be removed in a subsequent release.
Usepetab.v2instead.This affects, for example, PEtab-v2-specific constants
petab.v1.C(usepetab.v2.Cinstead),petab.v1.mapping, or anything mapping-table-related inpetab.v1.Problem.
Features
-
Substantially extended and updated
petab.v2for working with PEtab v2 problems.PEtab v2 is still in draft stage -- feedback is welcome!
- PEtab v2 support for
petablint - The library uses pydantic-based objects for most PEtab entities instead of plain DataFrames
- Functionality for converting PEtab v1 problems to (the current state of) PEtab v2
At least until PEtab v2 is finalized, the
petab.v2API may change rapidly, and should not be considered stable. - PEtab v2 support for
-
SbmlModel enhancements
(by @fbergmann in #333) -
Added
SbmlModel.{to_antimony,to_sbml_str}(by @dweindl in #371) -
Enable passing the base path to
Problem.from_yaml(by @dweindl in #327) -
Functions for adding conditions/observables/parameter to
Problem(by @dweindl in #328) -
Added
evaluate: boolargument to math parser (by @dweindl in #365) -
Added petab-compatible sympy string-printer (
PetabStrPrinter/petab_math_str) (by @dweindl in #364) -
Store problem configuration in
Problem(by @dweindl in #326)
Full Changelog: v0.5.0...v0.6.0
libpetab-python v0.5.0
Fixes
-
Circumvent
SettingWithCopyWarningby @m-philipps in #306
-
If
flatten_timepoint_specific_output_overridesmakes the visualization table invalid, remove it fromProblemby @m-philipps in #316
Features
-
Added
petab.v1.priors.priors_to_measurements(...)for replacingobjectivePrior*by observables/measurements -
Made model id optional for
PySBModel -
Implemented
Model.__repr__
Full Changelog: v0.4.1...v0.5.0
libpetab-python v0.4.1
This series contains many changes related to the new petab.v2 subpackage. petab.v2 should not be considered stable; the petab.v2 API may change rapidly until we release libpetab-python v1.0.0.
- Fix: keep previously-optional dependencies optional by @dweindl in #298
- Add petab.v2.C by @dweindl in #299
Full Changelog: v0.4.0...v0.4.1
libpetab-python v0.4.0
Prepare for PEtab v2
To enable ongoing support for PEtab v1, while "forking" the v1 code for PEtab v2, the old code base is now available at petab.v1, and the new code base will be at petab.v2. For now, old import petab.* statements still work, but are marked as deprecated, and import petab.v1.* should be used instead. petablint will be designed for use with only full PEtab problems in future too, rather than individual tables -- partial problems will be supported to validate individual tables.
- Add PEtab math parser and sympy converter by @dweindl in #260
- Deprecate petablint with individual tables by @dweindl in #274
- Introduce petab.v1 package by @dweindl in #282
- Separate v1 and v2 tests by @dweindl in #284
- Add petab.v2.Problem by @dweindl in #285
- PEtab v1 to v2 converter by @dweindl in #281
- Fix imports related to v1 subpackage by @dweindl in #293
Validation
Validation will become increasingly atomic and OOP, to support extension-specific validation in PEtab v2.
- Validator: check for positive bounds for log-scaled parameter by @dweindl in #278
- Validator: check prior parameters by @dweindl in #279
- Fix validation for remote files by @dweindl in #287
- New validation API by @dweindl in #288
Documentation
- Fixed formatting / missing type annotations by @dweindl in #292
- Added versioning and deprecation policy by @dweindl in #277
Other changes
- Simplify yaml schema by @dweindl in #264
- Handle numpy types in sympify_petab by @dweindl in #294
- New
get_path_prefixmethod to get the base path for relative paths in PEtab problem YAML by @dweindl in #280
New Contributors
- @dependabot made their first contribution in #267
Full Changelog: v0.3.0...v0.4.0
libpetab-python v0.3.0
This release requires python>=3.10
Features
- Visualization: Make line plot lines configurable via
petab.visualize.plotter.measurement_line_kwargs andpetab.visualize.plotter.simulation_line_kwargs`
by @dweindl in #254 - Validator: check that
datasetIds referenced in visualization tables exists
in measurement tables
by @dweindl in #255
Fixes
New Contributors
- @PaulJonasJost made their first contribution in #250
Full Changelog: v0.2.9...v0.3.0
libpetab-python v0.2.9
libpetab-python v0.2.8
libpetab-python v0.2.7
- Fixed a bug in
flatten_timepoint_specific_output_overrides, which
did not handle numeric values correctly
Full Changelog: v0.2.6...v0.2.7
libpetab-python v0.2.6
- Fixed
flatten_timepoint_specific_output_overridesnot supporting
observableParameter overrides as placeholders in noise formulae
by @dweindl in #235 - Visualization: fixed replicate sorting
by @plakrisenko in #232 - Doc: Revised visualization examples
by @dweindl in #236
Full Changelog: v0.2.5...v0.2.6