Release 0.4.0

For now this is a TODO to be fulfilled before releasing 0.4.0. The issue is created to allow the merge of !89 (merged) as we have major internal needs for it. @AdriaanRol

Some items are up for discussion (regarding inclusion in this release)

To do for 0.4.0

Code

  • accept dataset as input [see this comment]

    • disable disk-writing if dataset is passed
  • two-way saving of uncertainties types (e.g. ufloat) in quantities of interest (custom JSON serializer, maybe someone already implemented one ]somewhere)

  • utilities to load quantities of interest and processed dataset from each analysis folder (implement as class methods). this will make easy to load results of an analysis by passing in just a tuid.

  • decide on tests' disk-writing, see Thomas comment

  • saving processed dataset currently blocked by #161 (closed) Pull request to xarray repo on gitlab

Docs

  • Tutorials:

    • Factor out the analysis in Tutorial 1
      • keep the manual steps
      • show how to encapsulate these steps in an analysis subclass
        • guidance/example on user-defined fitting model
      • (notebook scripting and debugging) show how to stop/continue the analysis at any step [see tests for an example]
        • show how to pass an optional argument to a step:
          1. Stop analysis
          2. Run step manually
          3. Continue analysis from next step
        • show how to use logging and encourage its use in new analyses
      • encourage the use of xarray plotting
      • suggest using fast matplotlib rendering (and point to the matplotlib performance tutorial)
        • and/or not saving pngs (much slower to render vs svgs)
    • New tutorial: how to create a custom analysis flow
      • How to include user-defined methods as steps in the analysis
  • User guide:

    • Mention the analysis framework and point to tutorial
    • Update experiment container folder structure
  • Description/overview of the analysis

    • to placed in base analysis module docstring (?)
    • list the built in functionalities
      • quantities of interest, best practices, limitations
      • raw vs processed dataset
      • fitting package
      • matplotlib-based plotting
        • figures and axes must be attached to the class object to be saved
    • disclaimer: no multi-dataset paradigm, yet, we are aware of the issue
    • disclaimer: already a powerful framework but we plan a future framework/redesign
Edited by Victor Negîrneac