Skip to content

Release 0.16.1 - #2019

Merged
dweindl merged 45 commits into
masterfrom
release_0.16.1
Feb 24, 2023
Merged

Release 0.16.1#2019
dweindl merged 45 commits into
masterfrom
release_0.16.1

Conversation

@dweindl

@dweindl dweindl commented Feb 24, 2023

Copy link
Copy Markdown
Member

No description provided.

dweindl and others added 30 commits January 27, 2023 09:14
Not much to see. This is for auto-assigning reviewers to pull requests.
According to [CVODES docs](https://sundials.readthedocs.io/en/latest/cvodes/Mathematics_link.html#checkpointing-scheme), polynomial should be the better choice:

> The variable-degree polynomial is more memory-efficient (it requires only half of the memory storage of the cubic Hermite interpolation) and is more accurate.
)

The lambda default argument cannot be pickled.
Adapt to new default homebrew version.

Should fix current failures in, e.g., https://github.com/AMICI-dev/AMICI/actions/runs/4022709019/jobs/6912732658
* how to create a container
* make Dockerfile compatible with spython/singularity
* mv docker/ container/
Fixup for #1932

This fixes importing the swig wrapper for a model directly (not via the package).
….py (#1968)

Fixes
```
  C:\hostedtoolcache\windows\Python\3.8.10\x64\lib\site-packages\_pytest\python.py:199: PytestReturnNotNoneWarning: Expected None, but python/tests/test_conserved_quantities_demartino.py::test_compute_moiety_conservation_laws_demartino2014 returned 7.324800299999993, which will be an error in a future version of pytest.  Did you mean to use `assert` instead of `return`?
```
* Update edata.i

* fixup
Removes `-W` compiler flags on Windows, which aren't understood by MSVC.

Fixes `cl : Command line error D8021 : invalid numeric argument '/Werror'` (which for some reason currently only occurs on branch `adjoint_event` 🤷‍♂️)

See also https://learn.microsoft.com/en-us/cpp/build/reference/wx-treat-linker-warnings-as-errors?view=msvc-170
Ensures they are gone after running tests.
…1973)

The filter function should only be called on AssignmentRule targets.
Currently it's called on all parameters.
* fix typos

* fix typos in example_errors
* Move different interfaces one level up
* Add top-level link to Python examples

[before](https://amici.readthedocs.io/en/develop/) / [after](https://amici--1978.org.readthedocs.build/en/1978/)
Events are meanwhile supported via Python
Bumps [ipython](https://github.com/ipython/ipython) from 8.4.0 to 8.10.0.
- [Release notes](https://github.com/ipython/ipython/releases)
- [Commits](ipython/ipython@8.4.0...8.10.0)

---
updated-dependencies:
- dependency-name: ipython
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
So far, the value of `Solver::getMaxTime()` was checked against `std::chrono::system_clock`, which measures wall time.
This is probably not what we want and can cause issues if a program is paused or the cpu is oversubscribed.
Now changed to CPU time.

Closes #1913
* module-level variables to sphinx
* add/update docstrings
* typos, cross-reference
* ...

see also #1950
…1987)

Allows specifying default parameter values for output parameters introduced in
the PEtab observables table. This is convenient for placeholder parameters, for
which the current value of 0.0 is not good choice (e.g. scaling parameters).
Allows for meaningful model outputs if the model is just simulated with default parameters.
* Change default ReturnData::status to AMICI_NOT_RUN

So far, if a simulation with `runAmiciSimulations(...., failfast=True)` failed, an empty `ReturnData` with `status=AMICI_SUCCESS` was returned for the skipped conditions. This was rather confusing.

This adds a new status: `AMICI_NOT_RUN`.

Fixes #1949
* Don't check `clock()` on every rhs evaluation, but only every 500.
* Avoid `clock()` completely, if there is no max time specified.


Co-authored-by: Fabian Fröhlich <fabian_froehlich@hms.harvard.edu>
* fix equilibraton status discrepancy

* Update src/steadystateproblem.cpp

Co-authored-by: Daniel Weindl <dweindl@users.noreply.github.com>

---------

Co-authored-by: Daniel Weindl <dweindl@users.noreply.github.com>
Fabian Fröhlich and others added 15 commits February 16, 2023 12:39
Fix SuiteSparse Makefiles for compiler-paths containing blanks, parentheses, ... which is the case for default MSVC installations.

`find ThirdParty/SuiteSparse/ -name Makefile -exec sed -ri 's/([ \t])(\$\(CC\)) /\1"\2" /' {} \;`
By default, if HDF5 is available, use it.
Seems fair to require a CMake version not older than 3 years+

Simplifies CMake files, and some newer features will be required for #1992.
* fix indentation for INFO level messages

* add logging for SBML loading

* fixup
* make errors for equilibration more transparent

* add test for SteadyStateStatus::failed_too_long_simulation

* fix testcase

* fix & check message

* fix logger for steadystate solver

* remove magic numbers, add error code

* fix fallthrough
For all mex calls, catch exception, print mex invocation, rethrow. Will make bug reports way more informative and simplify debugging.

Resolves #913
* Use cmake-install instead of funny manual copying
* Build parallel
* Upload build artifacts for debugging
* Silence stupid MSVC copyright messages
Helps to avoid issues with too long paths on Windows 💩
* Updates SuiteSparse to v7.0.1
* Removes heaps of unused SuiteSparse files
* SuiteSparse_config requires `-fPIC`, `CMakeLists.txt` modified.

Closes #1879
@dweindl
dweindl requested a review from FFroehlich February 24, 2023 09:35

@FFroehlich FFroehlich left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@codecov

codecov Bot commented Feb 24, 2023

Copy link
Copy Markdown

Codecov Report

Merging #2019 (faab162) into master (ed36b2d) will increase coverage by 0.14%.
The diff coverage is n/a.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2019      +/-   ##
==========================================
+ Coverage   76.03%   76.18%   +0.14%     
==========================================
  Files          76       76              
  Lines       12982    13004      +22     
==========================================
+ Hits         9871     9907      +36     
+ Misses       3111     3097      -14     
Flag Coverage Δ
cpp 73.40% <ø> (+0.16%) ⬆️
petab 60.03% <ø> (+0.33%) ⬆️
python 68.85% <ø> (-0.12%) ⬇️
sbmlsuite ∅ <ø> (∅)

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

Impacted Files Coverage Δ
src/sundials_matrix_wrapper.cpp 80.20% <0.00%> (-0.82%) ⬇️
python/sdist/amici/numpy.py 81.31% <0.00%> (-0.41%) ⬇️
python/sdist/amici/petab_import.py 65.49% <0.00%> (-0.38%) ⬇️
python/sdist/amici/setuptools.py 57.40% <0.00%> (-0.29%) ⬇️
src/solver_idas.cpp 37.70% <0.00%> (ø)
include/amici/rdata.h 95.00% <0.00%> (ø)
python/sdist/amici/__init__.py 95.55% <0.00%> (ø)
python/sdist/amici/plotting.py 0.00% <0.00%> (ø)
python/sdist/amici/pysb_import.py 94.62% <0.00%> (ø)
python/tests/test_petab_import.py 100.00% <0.00%> (ø)
... and 9 more

@sonarqubecloud

Copy link
Copy Markdown

SonarCloud Quality Gate failed.    Quality Gate failed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot E 1 Security Hotspot
Code Smell A 0 Code Smells

0.0% 0.0% Coverage
0.0% 0.0% Duplication

@dweindl
dweindl merged commit 1a99308 into master Feb 24, 2023
@dweindl
dweindl deleted the release_0.16.1 branch February 24, 2023 12:31
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.

3 participants