Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 0.26.3 #2525

Merged
merged 20 commits into from
Oct 3, 2024
Merged

Release 0.26.3 #2525

merged 20 commits into from
Oct 3, 2024

Conversation

dweindl
Copy link
Member

@dweindl dweindl commented Oct 3, 2024

Let's have another release after #2521 ✔️ and #2523 ✔️ , but before #2513.

This will also fix currently failing GHA workflows on master (via #2522).

dweindl and others added 17 commits September 26, 2024 12:30
Use the provided overall cmake configuration from SuiteSparse instead of using `make` wrappers for subprojects.

Properly install the SuiteSparse libraries which makes finding their cmake configuration easier for downstream packages.
Removes most protected  data members from `ReturnData`, in particular sundials objects. 

Makes the code slightly easier to follow and we won't have to worry about managing SUNContext outside of runAmiciSimulation with sundials>=6.0.

Also saves some unnecessary copying of various data.

Closes AMICI-dev#2348
)

* Move mutable Model members to ModelStateDerived
* Move ModelState::spl_ to ModelStateDerived

Closes AMICI-dev#2504
* AmiVector -> std::vector
* Wrap it with an NVector only when need in SteadystateProblem

Avoids SUNContext issues when copying Model
…I-dev#2507)

* Refactor ModelDimension and initialization of ModelStateDerived

* Move some other model dimensions from the Model constructor to ModelDimensions
* Perform more initialization of ModelStateDerived inside its constructor

* dJydy_dense_ -> ModelStateDerived
* cmake_minimum_required(VERSION 3.22) as in sundials

* regenerate

* ..
* don't build more than necessary (no shared libs)
* don't include suitesparse installation directory in sdist
…2515)

Also build SUNDIALS and SuiteSparse in debug mode when `ENABLE_AMICI_DEBUGGING=TRUE`.
... when using `--no-build-isolation`.
Previously, we had to build the different SuiteSparse subprojects separately.
Meanwhile, we can do that together. This is more concise, and saves a some
extra cmake configuration runs, leading to faster package installation.
... and get rid of the URLs in pyproject.toml that aren't allowed on PyPI
* Make it consistent that SUNLinSolWrapper always holds the associated matrix
* Always use SUNMatrixWrapper instead of raw SUNMatrix objects
* Implement declared but missing move assignment

This makes it a bit easier to finally address AMICI-dev#1164.
* Fix gradient checks. Previously, failing test would not have been reported (see AMICI-dev#2511).
  Quite some tests are now skipped, but better to test some than none... To be re-enabled later.
* Sort test cases to avoid issues with pytest-xdist.
* Refactor

Requires ICB-DCM/fiddy#37
@dweindl dweindl self-assigned this Oct 3, 2024
Copy link

codecov bot commented Oct 3, 2024

Codecov Report

Attention: Patch coverage is 83.39623% with 44 lines in your changes missing coverage. Please review.

Project coverage is 77.93%. Comparing base (3dca16e) to head (e78ef36).
Report is 103 commits behind head on master.

Files with missing lines Patch % Lines
src/sundials_linsol_wrapper.cpp 56.75% 16 Missing ⚠️
src/newton_solver.cpp 73.07% 14 Missing ⚠️
include/amici/model_dimensions.h 62.50% 3 Missing ⚠️
models/model_calvetti/model_calvetti.h 0.00% 1 Missing ⚠️
models/model_dirac/model_dirac.h 0.00% 1 Missing ⚠️
models/model_events/model_events.h 0.00% 1 Missing ⚠️
...dels/model_jakstat_adjoint/model_jakstat_adjoint.h 0.00% 1 Missing ⚠️
...odel_jakstat_adjoint_o2/model_jakstat_adjoint_o2.h 0.00% 1 Missing ⚠️
models/model_nested_events/model_nested_events.h 0.00% 1 Missing ⚠️
models/model_neuron/model_neuron.h 0.00% 1 Missing ⚠️
... and 4 more
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2525      +/-   ##
==========================================
+ Coverage   77.68%   77.93%   +0.25%     
==========================================
  Files         324      323       -1     
  Lines       20945    20915      -30     
  Branches     1456     1446      -10     
==========================================
+ Hits        16271    16300      +29     
+ Misses       4671     4612      -59     
  Partials        3        3              
Flag Coverage Δ
cpp 76.33% <83.39%> (+2.90%) ⬆️
cpp_python 34.13% <51.69%> (+0.04%) ⬆️
petab 36.66% <51.39%> (+0.04%) ⬆️
python 72.49% <79.62%> (+0.26%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
include/amici/model.h 76.19% <100.00%> (-2.08%) ⬇️
include/amici/model_dae.h 72.72% <ø> (ø)
include/amici/model_ode.h 100.00% <ø> (ø)
include/amici/model_state.h 100.00% <ø> (ø)
include/amici/rdata.h 100.00% <100.00%> (ø)
include/amici/steadystateproblem.h 100.00% <ø> (ø)
include/amici/sundials_linsol_wrapper.h 100.00% <ø> (ø)
python/sdist/amici/petab/cli/import_petab.py 0.00% <ø> (ø)
src/model.cpp 84.46% <100.00%> (-0.21%) ⬇️
src/model_state.cpp 100.00% <100.00%> (ø)
... and 15 more

... and 3 files with indirect coverage changes

@dweindl dweindl marked this pull request as ready for review October 3, 2024 07:33
@dweindl dweindl requested a review from a team as a code owner October 3, 2024 07:33
dweindl and others added 3 commits October 3, 2024 11:36
It seems, the documentation didn't demonstrate how to plot measurements together with the model outputs yet.
Use SUNLinSolWrapper. Get rid of subclasses. Simplify.

Closes AMICI-dev#1164.

We should also be able to get rid of the remaining data members,
but that's for another time...
@dweindl dweindl merged commit e89a1de into AMICI-dev:master Oct 3, 2024
29 checks passed
@dweindl dweindl deleted the release_0.26.3 branch October 3, 2024 16:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants