Skip to content

Commit cf34778

Browse files
authored
Merge branch 'develop' into check_grad_sbml_test_suite
2 parents 78e4f3c + 5e5ec61 commit cf34778

File tree

136 files changed

+4444
-1686
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

136 files changed

+4444
-1686
lines changed

.github/workflows/test_python_cplusplus.yml

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636
- run: echo "BNGPATH=${GITHUB_WORKSPACE}/ThirdParty/BioNetGen-2.7.0" >> $GITHUB_ENV
3737

3838
# sonar cloud
39-
- run: echo "SONAR_SCANNER_VERSION=4.7.0.2747" >> $GITHUB_ENV
39+
- run: echo "SONAR_SCANNER_VERSION=5.0.1.3006" >> $GITHUB_ENV
4040
- run: echo "SONAR_SCANNER_HOME=${HOME}/.sonar/sonar-scanner-$SONAR_SCANNER_VERSION-linux" >> $GITHUB_ENV
4141
- run: echo "SONAR_SCANNER_OPTS=-server" >> $GITHUB_ENV
4242
- run: echo "${SONAR_SCANNER_HOME}/bin" >> $GITHUB_PATH
@@ -77,13 +77,6 @@ jobs:
7777
run: |
7878
CI_SONARCLOUD=TRUE scripts/buildAmici.sh
7979
80-
- name: Cache sonar files
81-
id: cache-sonar
82-
uses: actions/cache@v3
83-
with:
84-
path: sonar_cache
85-
key: ${{ runner.os }}-sonar_cache
86-
8780
- name: C++ tests
8881
run: |
8982
scripts/run-cpp-tests.sh
@@ -157,6 +150,7 @@ jobs:
157150
- name: Run sonar-scanner
158151
env:
159152
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
153+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
160154
run: |
161155
sonar-scanner \
162156
-Dsonar.cfamily.build-wrapper-output=bw-output \

.pre-commit-config.yaml

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ repos:
66
hooks:
77
- id: isort
88
name: isort (python)
9-
args: ["--profile", "black", "--filter-files"]
9+
args: ["--profile", "black", "--filter-files", "--line-length", "79"]
1010
- repo: https://github.com/pre-commit/pre-commit-hooks
1111
rev: v4.4.0
1212
hooks:
@@ -17,12 +17,14 @@ repos:
1717
- id: end-of-file-fixer
1818
- id: trailing-whitespace
1919
- repo: https://github.com/psf/black
20-
rev: 23.3.0
20+
rev: 23.7.0
2121
hooks:
22-
- id: black
22+
- id: black-jupyter
2323
# It is recommended to specify the latest version of Python
2424
# supported by your project here, or alternatively use
2525
# pre-commit's default_language_version, see
2626
# https://pre-commit.com/#top_level-default_language_version
2727
language_version: python3.11
28+
args: ["--line-length", "79"]
29+
2830
exclude: '^(ThirdParty|models)/'

CHANGELOG.md

Lines changed: 70 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,84 @@
22

33
## v0.X Series
44

5+
### v0.19.0 (2023-08-26)
6+
7+
**Features**
8+
* SBML import now supports `rateOf`
9+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2120
10+
* Added `Model.{get,set}SteadyStateComputationMode` (analogous to `SteadyStateSensitivityMode`)
11+
which allows to choose how steady state is computed.
12+
by @plakrisenko in https://github.com/AMICI-dev/AMICI/pull/2074
13+
14+
**Note: The default `SteadyStateSensitivityMode` changed from `newtonOnly` to `integrateIfNewtonFails`.**
15+
16+
* SBML import: Allow hardcoding of numerical values
17+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2134
18+
* Added `antimony2amici` for more convenient antimony import
19+
(simplifies working with raw ODEs, see documentation)
20+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2142
21+
* Added `AMICI_TRY_ENABLE_HDF5` environment variable to control whether to search for HDF5 or not
22+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2148
23+
24+
**Fixes**
25+
26+
* Fixed SBML import for events with trigger functions depending on parameters that are initial
27+
assignment targets
28+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2145
29+
* Fixed SBML import for event-assigned parameters with non-float initial assignments
30+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2156
31+
* Fixed `unistd.h` dependency of `hdf5.cpp` that led to compilation
32+
failures on Windows
33+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2154
34+
* Set CMake policies for cmake 3.27 by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2162
35+
* Fixed a `lib/` vs `lib64/` issue, leading to `SUNDIALSConfig.cmake`-not-found issues
36+
on some systems
37+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2165
38+
* CMake: fixed scope of `-DHAS_BOOST_CHRONO` which may have lead to a mix of
39+
`boost::chrono::thread_clock` and `std::clock` being used in programs using amici,
40+
and potentially segmentation faults
41+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2163
42+
43+
Performance:
44+
* Combined code for sparse model functions and their index files for slightly faster
45+
compilation of small models
46+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2159
47+
48+
* Removed complex / complex long KLU functions for slightly faster amici package installation
49+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2160
50+
51+
**Full Changelog**: https://github.com/AMICI-dev/AMICI/compare/v0.18.1...v0.19.0
52+
53+
54+
### v0.18.1 (2023-06-26)
55+
56+
Fixes:
57+
* Fixed pysb pattern matching during PEtab import
58+
by @FFroehlich in https://github.com/AMICI-dev/AMICI/pull/2118
59+
* Fixed `sp.Matrix` errors with `numpy==1.25`
60+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2124
61+
* Readme: added info containers
62+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2125
63+
* Fixed deprecation warnings
64+
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2122
65+
https://github.com/AMICI-dev/AMICI/pull/2131
66+
* Fixed logging typo in SBML import
67+
by @dilpath in https://github.com/AMICI-dev/AMICI/pull/2126
68+
* Added minimum version for `pandas`
69+
by @dilpath in https://github.com/AMICI-dev/AMICI/pull/2129
70+
71+
**Full Changelog**: https://github.com/AMICI-dev/AMICI/compare/v0.18.0...v0.18.1
72+
573
### v0.18.0 (2023-05-26)
74+
675
Features:
776
* More efficient handling of splines in SBML models
877
by @paulstapor, @lcontento, @dweindl
978
in https://github.com/AMICI-dev/AMICI/pull/1515
1079
* Partial support of current PEtab2.0 draft, including support for PySB models
1180
by @dweindl, @FFroehlich in https://github.com/AMICI-dev/AMICI/pull/1800
1281

13-
Fixes
82+
Fixes:
1483
* **Fixed incorrect forward sensitivities for models with events with**
1584
**state-dependent trigger functions**
1685
by @dweindl in https://github.com/AMICI-dev/AMICI/pull/2084

CMakeLists.txt

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,18 @@
22
# Build AMICI library
33
#
44
cmake_minimum_required(VERSION 3.15)
5+
cmake_policy(VERSION 3.15...3.27)
56

67
project(amici)
78

89
# misc options
10+
if(DEFINED ENV{AMICI_TRY_ENABLE_HDF5})
11+
option(AMICI_TRY_ENABLE_HDF5 "Build with HDF5 support if available?"
12+
$ENV{AMICI_TRY_ENABLE_HDF5})
13+
else()
14+
option(AMICI_TRY_ENABLE_HDF5 "Build with HDF5 support if available?" ON)
15+
endif()
916
option(AMICI_PYTHON_BUILD_EXT_ONLY "Build only the Python extension?" OFF)
10-
option(AMICI_TRY_ENABLE_HDF5 "Build with HDF5 support if available?" ON)
1117
option(ENABLE_HDF5 "Build with HDF5 support?" OFF)
1218
option(SUNDIALS_SUPERLUMT_ENABLE "Enable sundials SuperLUMT?" OFF)
1319
option(EXPORT_PACKAGE "Export AMICI library to CMake package registry?" ON)
@@ -120,7 +126,7 @@ set(VENDORED_SUNDIALS_BUILD_DIR ${VENDORED_SUNDIALS_DIR}/build)
120126
set(VENDORED_SUNDIALS_INSTALL_DIR ${VENDORED_SUNDIALS_BUILD_DIR})
121127
set(SUNDIALS_PRIVATE_INCLUDE_DIRS "${VENDORED_SUNDIALS_DIR}/src")
122128
find_package(SUNDIALS REQUIRED PATHS
123-
"${VENDORED_SUNDIALS_INSTALL_DIR}/lib/cmake/sundials/")
129+
"${VENDORED_SUNDIALS_INSTALL_DIR}/${CMAKE_INSTALL_LIBDIR}/cmake/sundials/")
124130
message(STATUS "Found SUNDIALS: ${SUNDIALS_DIR}")
125131

126132
set(GSL_LITE_INCLUDE_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ThirdParty/gsl")
@@ -290,7 +296,7 @@ if("$ENV{ENABLE_AMICI_DEBUGGING}"
290296
endif()
291297

292298
target_compile_definitions(
293-
${PROJECT_NAME} PRIVATE $<$<BOOL:${Boost_CHRONO_FOUND}>:HAS_BOOST_CHRONO>)
299+
${PROJECT_NAME} PUBLIC $<$<BOOL:${Boost_CHRONO_FOUND}>:HAS_BOOST_CHRONO>)
294300

295301
target_link_libraries(
296302
${PROJECT_NAME}
@@ -324,7 +330,10 @@ if(HDF5_FOUND)
324330
target_link_libraries(${PROJECT_NAME} PUBLIC hdf5::hdf5_hl_cpp hdf5::hdf5_hl
325331
hdf5::hdf5_cpp hdf5::hdf5)
326332
else()
327-
message(STATUS "HDF5 library NOT found. Building AMICI WITHOUT HDF5 support.")
333+
message(
334+
STATUS
335+
"HDF5 support disabled or HDF5 library not found. Building AMICI WITHOUT HDF5 support."
336+
)
328337
endif()
329338

330339
if(AMICI_PYTHON_BUILD_EXT_ONLY)

ThirdParty/SuiteSparse/KLU/Source/klu_z.c

Lines changed: 0 additions & 11 deletions
This file was deleted.

ThirdParty/SuiteSparse/KLU/Source/klu_z_diagnostics.c

Lines changed: 0 additions & 11 deletions
This file was deleted.

ThirdParty/SuiteSparse/KLU/Source/klu_z_dump.c

Lines changed: 0 additions & 11 deletions
This file was deleted.

ThirdParty/SuiteSparse/KLU/Source/klu_z_extract.c

Lines changed: 0 additions & 11 deletions
This file was deleted.

ThirdParty/SuiteSparse/KLU/Source/klu_z_factor.c

Lines changed: 0 additions & 11 deletions
This file was deleted.

ThirdParty/SuiteSparse/KLU/Source/klu_z_free_numeric.c

Lines changed: 0 additions & 11 deletions
This file was deleted.

0 commit comments

Comments
 (0)