Skip to content

Releases: lycosystem/lymph

1.3.7

23 Oct 08:52
039efa7

Choose a tag to compare

What's new:

Bug Fixes

  • Make models compatible with new data format.
  • Correct array shape mismatch in draw_patients.

Miscellaneous Tasks

  • Update codecov badge.
  • Mention wiki in contribution guide.
  • Update email addresses.

Change

  • Adjustments to allow bilateral mixture model.
  • Make compatible with new data format (again).
  • Change dataframe indexing to conform with new standard.

1.3.6

30 Jun 11:45
b5c2f68

Choose a tag to compare

What's New

This release changes nothing about the actual code. Only the way it's built and tested. So, purely a maintenance update.

Miscellaneous Tasks

  • Update pre-commit & ruff rules.

Testing

  • Update one doctest example.

Build

  • Switch to src layout. Fixes #106.
  • Rename opt dependencies to tests.
  • Use tests dependency pytest-cov over coverage.

Ci

  • Update pre-commit config.

1.3.5

13 Jun 07:42
67ceb14

Choose a tag to compare

What's new:

Bug Fixes

  • Assign only tumor spread probs in midline.
  • (mid) Warn instead of raise when out of sync. Fixes [#102].

Documentation

  • Fix release badge in README.
  • Fix outdated links to rmnldwg.

Testing

  • Ensure midline params sync.
  • Add failing midline params desync. Related [#102].
  • Fix desync test case.

Build

  • Add git-cliff to dev dependencies.

1.3.4

27 May 09:54
65178c5

Choose a tag to compare

What's New

Bug Fixes

  • Don't use or when param may be 0.
    Since Python's expression a = b or c will assign c to a as soon as
    b is "falsy", e.g. also when b = 0.0, I should not use this to check
    if a parameter in the model is None.

Documentation

  • Fix misspelled repo link.
  • Remove empty mixins page.
  • Better reuse of README.
  • Move social card to repo root.
    This is actually for LyProX: I want to display the social card of all
    repos in the lycosystem on LyProX's landing page. Therefore, they all
    need to be in their expected places.

Miscellaneous Tasks

  • Add year range to license.

Testing

  • Use val != 0.5 to test matrix deletion.
    0.5 is the new initial value for most parameters, so it does not make
    sense to use this to check if upon changing a parameter, the transition
    matrix gets deleted.

Change

  • Init most params with 0.5 instead of 0.0.
    In some cases, initializing with 0.0 may have unintended consequences.
    E.g., a probability of 0.0 cannot be renormalized.

Ci

  • Use OIDC for publishing.

1.3.3

11 Mar 16:10
80193e7

Choose a tag to compare

What's New

Bug Fixes

  • Make midext_prob last param in get/set methods
  • Midline musn't use last of set_param args.
    Instead, it should use the one at num_dims - 1.

Documentation

  • Fix broken quickstart link.
  • Add emcee to requirements for quickstart notebook.
  • Explain midline extension probability in set/get.

Testing

  • midext_prob is last parameter in get/set methods.

1.3.2

31 Jan 16:03
8c91098

Choose a tag to compare

What's New

Bug Fixes

  • __init__() without named_params now works. Previously, it raised an exception
    because the distribution composite was not initialized.

Testing

  • __init__() with named_params must work.

1.3.1

31 Jan 13:43
d96189f

Choose a tag to compare

What's New

Bug Fixes

  • get_named_params() returns only named params and doesn't raise an error anymore.
  • Add deleter to named_params property.

Change

  • Move named_params stuff from dedicated mixin to types.Model.
  • Raise explicit invalid param name error.
    This ensures that e.g. during sampling, the likelihood does not simply
    return -np.inf because it sees a ValueError.
  • Call set_named_params() in likelihoods.
    This ensures that a model definition is respected during inference and
    also when reloading sampled parameters. In case no named_params are
    provided, this will simply behave as set_params().

1.3.0

29 Jan 15:32
4d641c1

Choose a tag to compare

What's New

The main two new features of this release are the HPV model (thanks @YoelPH for this) and the ability to only set a subset of parameters. See #95 for an explanation why that was necessary.

No breaking changes this time (phew).

Bug Fixes

  • (hpv) Some renaming and import correct symbols.
  • (hpv) Send kwargs to constructor correctly.
  • Partial globals work in set_named_params().
    Setting ipsi_spread via named_params works now. This was tricky to
    implement, as the spread params of the ipsi model are all called
    ipsi_<something>_spread.

Documentation

  • Fix typos in readme.
  • Fix typo in midline model docstring.
  • Fix equation in midline model docstring.
  • Change ref to "bilateral" in HPV model.
  • Add new mixins to autodoc.
  • Add warning about untested HPV model.

Features

  • (hpv) Create HPV wrapper.
    The HPV module can be used to build a unilateral lymph model
    where the b_2 parameter is different for HPV positive patients.
    This fixes #42
  • (uni) Add basic working named params mixing. Related to #95
  • Add named_params to all models. Fixes #95
  • Add named_params to model constructors. Related to #95

Testing

  • Add basic tests for NamedParamsMixin. Related to #95
  • Check partial globals work.
    E.g. ipsi_spread should set the spread of all LNLs in the ipsi
    model. Related to #95

Change

  • (mid) Set default use_central=False.
    This is a more sane default and does not result in a ValueError when
    creating the model with the default arguments.
  • (hpv) Put data split into HPV class.
  • (hpv) Delegate methods via hpv_status arg.
    Instead of re-implementing or copy-pasting methods from the Unilateral
    class, they simply compute those model's corresponding method that was
    selected via the hpv_status (keyword) argument.

1.2.3

26 Jul 07:55
27d5206

Choose a tag to compare

What's New

This is very minor and I only release this tiny update, so that I can depend on all models having the binary and trinary constructor in lyscripts.

Features

  • (mid) Add missing binary constructor to Midline model. Now all models have a binary and trinary constructor.

Styling

  • Add rules to ruff.

Testing

  • Make suite testable with pytest.

Ci

  • Switch to pytest for testing.

1.2.2

25 Jun 13:23
38ec139

Choose a tag to compare

What's New

Bug Fixes

  • (mid) Correct contra state dist evo. Fixes #85.
    Previously, the model did not correctly marginalize over the possible
    time when a tumor can grow over the midline. It simply assumed that it
    did from the onset.

Documentation

  • (uni) Remove outdated docstring paragraph. Fixes #88.

Miscellaneous Tasks

  • Bump pre-commit versions.

Styling

  • Use ruff to fix lint and format code.

Build

  • Remove upper cap in deps.

Change

  • risk() meth requires involvement. Fixes #87.
    We figured it does not make sense to allow passing involvement=None
    into the risk() method just to have it return 1. This is except for
    the midline class, where involvement may reasonably be None while
    midext isn't.
    Also, I ran ruff over some files, fixing some code style issues.