Skip to content

1.0.0.a4

Pre-release
Pre-release

Choose a tag to compare

@rmnldwg rmnldwg released this 23 Jan 16:35
· 115 commits to main since this release
897ceb8

What's New

In this pre-release, all CLIs were refactored or rewritten to make heavy use of pydantic models and settings. This allows for both cleaner and pydantic's amazing validation out of the box.

It also allows us to provide configuration YAML files to all commands that may even be split and merged and reused as we wish.

After some testing of the package in this state, we may be able to publish a stable 1.0 release.

Bug Fixes

  • Update data loading to new lydata API.
  • Add sampling config back to sample CLI.
  • Finish data filter command.
  • Correctly log number of excluded pateints in lyproxify.
  • Allow extra args in CLI cmds.
  • Logging during progress bar.

Documentation

  • Deactivate help of removed commands.
  • Link only to stable versions.
  • Fix intersphinx links.
  • Update link to schedule module.
  • Configure how pydantic models are displayed.
  • Add more info about schema.
  • Better explain sampling.
  • Add proper info to cli_cmd() methods.

Features

  • Add mandatory version field to command settings.
    This will allow to differentiate between old and new configs and create
    the models accordingly.
  • Add translation of old to new model configs.
  • Add dynamic YAML config source.
  • Configure logging nicely.
  • Update data enhance command.
  • Update data join command.
  • Update data filter command.
  • Update data split command.
  • Capture lydata logging output.
  • Update YAML schema for CLIs.
  • Update data lyproxify cmd.
  • Allow sampling only specified params.
    Via a new CLI arg named param_names one may restrict the parameters
    sampled to a named subset. In combination with the fact that any Python
    model may be loaded, this results in an enormously flexible sampler.
  • Update inv temp schedule cmd.
  • Allow providing start state to sampling func.

Testing

  • Replace subprocess calls with monkeypatch.
    This allows for better debugging during test calls.
  • Load generated data correctly.
    The synthetic data for testing already has "early" and "late" as
    T-stages. Thus, the mapping needed to be adapted.

Build

  • pydantic-settings >= 2.7 needed.

Change

  • Make version field in command settings required.
  • Use pydantic for subcommands.
  • Use loguru over default logging.
  • Rename data field to input.
  • Use pydantic for plot utils, too.
  • Use rich logging handler.

Refac

  • Slightly change CLI inheritances.
  • Sort configs alphabetically.
  • Make sampling more reusable.

Remove

  • Unused utility functions.
  • Plotting scripts except histogram/betaposterp helpers.