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.20.0 #2210

Merged
merged 24 commits into from
Nov 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
890b993
Fix unused pysb2amici / sbml2amici / DEExporter `compiler` argument (…
dweindl Aug 31, 2023
847a596
Fix pre-commit configuration (#2171)
dweindl Aug 31, 2023
5e5ec61
Doc: Rename 'steadystate example' (#2174)
dweindl Sep 20, 2023
c038ff5
Fix incorrect path in LICENSE.md
dweindl Oct 18, 2023
fb2a101
Fix CMake cmake_minimum_required deprecation warning (#2183)
dweindl Oct 30, 2023
492e480
Fix Fix misleading preequilibration failure messages (#2181)
dweindl Oct 30, 2023
ea95896
GHA: print longest test durations
dweindl Oct 30, 2023
71295a5
Evaluate and plot symbolic expressions based on simulation results (#…
dweindl Nov 1, 2023
269910b
Remove setuptools<64 restriction (#2180)
dweindl Nov 3, 2023
316d94d
Easier access to timepoints via ExpDataView (#2193)
dweindl Nov 15, 2023
eccdc1f
Nicer __repr__ for ReturnDataView (#2192)
dweindl Nov 15, 2023
187362a
Fix ExpData equality operator for Python (#2194)
dweindl Nov 15, 2023
1726f43
Enable deepcopy for ExpData(View) (#2196)
dweindl Nov 15, 2023
48b8629
Allow subsetting simulation conditions in simulate_petab (#2199)
dweindl Nov 15, 2023
17f85fb
GHA: Modularize actions (apt dependencies, sonar tools) (#2197)
dweindl Nov 16, 2023
acf526a
GHA: Clean up custom doxygen (#2201)
dweindl Nov 16, 2023
32730f0
GHA: Cleanup custom swig usage (#2200)
dweindl Nov 16, 2023
1cae191
GHA: further cleanup (#2202)
dweindl Nov 16, 2023
3330ccb
GHA: test installation from pypi on python3.11 (#2198)
dweindl Nov 16, 2023
892a7c8
CMake set CMP0144 (#2209)
dweindl Nov 21, 2023
a4a0b49
GHA: split into smaller jobs (#2204)
dweindl Nov 21, 2023
8b836ae
Doc: Update reference list (#2172)
dweindl Nov 21, 2023
4f6e829
GHA: Fix OpenMP not found on macos (#2207)
dweindl Nov 21, 2023
92c0530
bump version; update changelog
dweindl Nov 21, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .github/actions/install-apt-dependencies/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Install apt dependencies
description: Install apt dependencies for the AMICI Python package
runs:
using: "composite"
steps:
- run: |
sudo apt-get update \
&& sudo apt-get install -y \
g++ \
libatlas-base-dev \
libboost-chrono-dev \
libboost-math-dev \
libboost-serialization-dev \
libhdf5-serial-dev \
swig
shell: bash
44 changes: 44 additions & 0 deletions .github/actions/setup-amici-cpp/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: Set up AMICI C++
description: |
Build the AMICI C++ interface and set things for for coverage analysis.
(Currently ubuntu-only).

runs:
using: "composite"
steps:
# BioNetGen Path
- run: echo "BNGPATH=${GITHUB_WORKSPACE}/ThirdParty/BioNetGen-2.7.0" >> $GITHUB_ENV
shell: bash

# use all available cores
- run: echo "AMICI_PARALLEL_COMPILE=" >> $GITHUB_ENV
shell: bash

# enable coverage
- run: echo "ENABLE_GCOV_COVERAGE=TRUE" >> $GITHUB_ENV
shell: bash

- name: Set up Sonar tools
uses: ./.github/actions/setup-sonar-tools

- name: Install apt dependencies
uses: ./.github/actions/install-apt-dependencies

- name: Install additional apt dependencies
run: |
sudo apt-get update \
&& sudo apt-get install -y \
cmake \
python3-venv \
lcov
shell: bash

- name: Build AMICI dependencies
run: scripts/buildDependencies.sh
shell: bash

- name: Build AMICI
run: scripts/buildAmici.sh
shell: bash
env:
CI_SONARCLOUD: "TRUE"
20 changes: 20 additions & 0 deletions .github/actions/setup-doxygen/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Set up doxygen
description: |
Download, build, and install doxygen.

runs:
using: "composite"
steps:
- name: Install apt dependencies for doxygen
run: |
sudo apt-get update \
&& sudo apt-get install -y \
bison \
ragel \
graphviz \
texlive-latex-extra
shell: bash

- name: Download and build doxygen
run: sudo scripts/downloadAndBuildDoxygen.sh
shell: bash
26 changes: 26 additions & 0 deletions .github/actions/setup-sonar-tools/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Set up Sonar tools
description: Download and install sonar-scanner and build-wrapper
runs:
using: "composite"
steps:
- run: echo "SONAR_SCANNER_VERSION=5.0.1.3006" >> $GITHUB_ENV
shell: bash
- run: echo "SONAR_SCANNER_HOME=${HOME}/.sonar/sonar-scanner-$SONAR_SCANNER_VERSION-linux" >> $GITHUB_ENV
shell: bash
- run: echo "SONAR_SCANNER_OPTS=-server" >> $GITHUB_ENV
shell: bash
- run: echo "${SONAR_SCANNER_HOME}/bin" >> $GITHUB_PATH
shell: bash
- run: echo "${HOME}/.sonar/build-wrapper-linux-x86" >> $GITHUB_PATH
shell: bash

- name: Install sonarcloud tools
run: |
sudo apt-get install nodejs curl unzip \
&& curl --create-dirs -sSLo $HOME/.sonar/sonar-scanner.zip \
https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-$SONAR_SCANNER_VERSION-linux.zip \
&& unzip -o $HOME/.sonar/sonar-scanner.zip -d $HOME/.sonar/ \
&& curl --create-dirs -sSLo $HOME/.sonar/build-wrapper-linux-x86.zip \
https://sonarcloud.io/static/cpp/build-wrapper-linux-x86.zip \
&& unzip -o $HOME/.sonar/build-wrapper-linux-x86.zip -d $HOME/.sonar/ \
shell: bash
20 changes: 20 additions & 0 deletions .github/actions/setup-swig/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: Set up SWIG
description: |
Download and build SWIG and set the SWIG environment variable to the path of
the SWIG executable.

inputs:
swig_version:
description: 'Swig version to build'
required: false
default: '4.1.1'

runs:
using: "composite"
steps:
- name: Download and build SWIG
run: scripts/downloadAndBuildSwig.sh
shell: bash

- run: echo "SWIG=${AMICI_DIR}/ThirdParty/swig-${{ inputs.swig_version }}/install/bin/swig" >> $GITHUB_ENV
shell: bash
8 changes: 3 additions & 5 deletions .github/workflows/deploy_branch.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,10 @@ jobs:
with:
fetch-depth: 20

- run: echo "AMICI_DIR=$(pwd)" >> $GITHUB_ENV
- run: echo "SWIG=${AMICI_DIR}/ThirdParty/swig-4.0.1/install/bin/swig" >> $GITHUB_ENV
- name: Set up SWIG
uses: ./.github/actions/setup-swig

- name: Build swig4
run: |
sudo scripts/downloadAndBuildSwig.sh
- run: echo "AMICI_DIR=$(pwd)" >> $GITHUB_ENV

- name: Create AMICI sdist
run: |
Expand Down
11 changes: 4 additions & 7 deletions .github/workflows/deploy_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,13 @@ jobs:
with:
fetch-depth: 20

- run: echo "AMICI_DIR=$(pwd)" >> $GITHUB_ENV
- run: echo "SWIG=${AMICI_DIR}/ThirdParty/swig-4.0.1/install/bin/swig" >> $GITHUB_ENV
- name: Set up SWIG
uses: ./.github/actions/setup-swig

- name: Build swig4
run: |
sudo scripts/downloadAndBuildSwig.sh
- run: echo "AMICI_DIR=$(pwd)" >> $GITHUB_ENV

- name: sdist
run: |
scripts/buildSdist.sh
run: scripts/buildSdist.sh

- name: Publish a Python distribution to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
Expand Down
11 changes: 4 additions & 7 deletions .github/workflows/test_benchmark_collection_models.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,18 +37,15 @@ jobs:
with:
fetch-depth: 20

# install dependencies
- name: apt
run: |
sudo apt-get update \
&& sudo apt-get install -y swig libatlas-base-dev
- name: Install apt dependencies
uses: ./.github/actions/install-apt-dependencies

- run: echo "${HOME}/.local/bin/" >> $GITHUB_PATH

# install AMICI
- name: Create AMICI sdist
run: |
pip3 install build && cd python/sdist && python3 -m build --sdist
run: pip3 install build && cd python/sdist && python3 -m build --sdist

- name: Install AMICI sdist
run: |
pip3 install --user petab[vis] && \
Expand Down
46 changes: 14 additions & 32 deletions .github/workflows/test_doc.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ on:
jobs:
doxygen:
name: Test Doxygen

runs-on: ubuntu-22.04

strategy:
Expand All @@ -32,26 +31,14 @@ jobs:
- uses: actions/checkout@v3
- run: git fetch --prune --unshallow

- name: apt
run: |
sudo apt-get update \
&& sudo apt-get install -y \
bison \
ragel \
graphviz \
texlive-latex-extra

- name: Build doxygen
run: |
sudo scripts/downloadAndBuildDoxygen.sh
- name: Set up doxygen
uses: ./.github/actions/setup-doxygen

- name: Run doxygen
run: |
scripts/run-doxygen.sh
run: scripts/run-doxygen.sh

sphinx:
name: Test Sphinx

runs-on: ubuntu-22.04

strategy:
Expand All @@ -68,27 +55,22 @@ jobs:
- run: git fetch --prune --unshallow

- run: echo "AMICI_DIR=$(pwd)" >> $GITHUB_ENV
- run: echo "SWIG=${AMICI_DIR}/ThirdParty/swig-4.1.1/install/bin/swig" >> $GITHUB_ENV

- name: Build doxygen
run: |
sudo scripts/downloadAndBuildDoxygen.sh
- name: Set up doxygen
uses: ./.github/actions/setup-doxygen

# install amici dependencies
- name: apt
- name: Install apt dependencies
uses: ./.github/actions/install-apt-dependencies

- name: Install further dependencies
run: |
sudo apt-get update \
&& sudo apt-get install -y \
g++ \
libatlas-base-dev \
libboost-serialization-dev \
pandoc \
python3-venv \
python3-venv

- name: Build swig
run: |
sudo scripts/downloadAndBuildSwig.sh
- name: Set up SWIG
uses: ./.github/actions/setup-swig

- name: sphinx
run: |
scripts/run-sphinx.sh
- name: Run sphinx
run: scripts/run-sphinx.sh
53 changes: 16 additions & 37 deletions .github/workflows/test_install.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,33 +22,26 @@ jobs:

- run: echo "AMICI_DIR=$(pwd)" >> $GITHUB_ENV

# install amici dependencies
- name: Install apt dependencies
uses: ./.github/actions/install-apt-dependencies

- name: apt
run: |
sudo apt-get update \
&& sudo apt-get install -y \
cmake \
g++ \
libatlas-base-dev \
libboost-serialization-dev \
libhdf5-serial-dev \
swig
cmake

- name: Build suitesparse
run: |
scripts/buildSuiteSparse.sh
run: scripts/buildSuiteSparse.sh

- name: Build sundials
run: |
scripts/buildSundials.sh
run: scripts/buildSundials.sh

- name: Build AMICI
run: |
scripts/buildAmici.sh
run: scripts/buildAmici.sh

- name: Install python archive
run: |
scripts/installAmiciArchive.sh
run: scripts/installAmiciArchive.sh

sdist_ubuntu:
name: sdist Install Ubuntu
Expand All @@ -70,28 +63,17 @@ jobs:

- run: echo "AMICI_DIR=$(pwd)" >> $GITHUB_ENV

# install amici dependencies
- name: apt
run: |
sudo apt-get update \
&& sudo apt-get install -y \
g++ \
libatlas-base-dev \
libboost-serialization-dev \
libhdf5-serial-dev \
swig
- name: Install apt dependencies
uses: ./.github/actions/install-apt-dependencies

- name: Create AMICI sdist
run: |
scripts/buildSdist.sh
run: scripts/buildSdist.sh

- name: Install python sdist
run: |
pip3 install -v --user $(ls -t python/sdist/dist/amici-*.tar.gz | head -1)
run: pip3 install -v --user $(ls -t python/sdist/dist/amici-*.tar.gz | head -1)

- name: Test import
run: |
python -m amici
run: python -m amici


sdist_macos:
Expand Down Expand Up @@ -124,13 +106,10 @@ jobs:
&& echo CPPFLAGS="-I /usr/local/Cellar/boost/1.81.0_1/include/" >> $GITHUB_ENV

- name: Create AMICI sdist
run: |
scripts/buildSdist.sh
run: scripts/buildSdist.sh

- name: Install python sdist
run: |
pip3 install -v --user $(ls -t python/sdist/dist/amici-*.tar.gz | head -1)
run: pip3 install -v --user $(ls -t python/sdist/dist/amici-*.tar.gz | head -1)

- name: Test import
run: |
python -m amici
run: python -m amici
8 changes: 3 additions & 5 deletions .github/workflows/test_performance.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,11 +35,9 @@ jobs:
with:
fetch-depth: 20

# install dependencies
- name: apt
run: |
sudo apt-get update \
&& sudo apt-get install -y swig libatlas-base-dev
- name: Install apt dependencies
uses: ./.github/actions/install-apt-dependencies

- run: pip3 install petab shyaml build

- run: echo "${HOME}/.local/bin/" >> $GITHUB_PATH
Expand Down
Loading
Loading