From f38e33e18820903e168228479501c875c58e673a Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Wed, 20 Mar 2024 16:42:34 -0700 Subject: [PATCH 01/25] Fix annotation transfer. Some 'notes' apparently need

at the beginning instead of . --- src/annotated.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/annotated.cpp b/src/annotated.cpp index 28392fb8..09db8bbd 100644 --- a/src/annotated.cpp +++ b/src/annotated.cpp @@ -55,6 +55,9 @@ bool Annotated::TransferAnnotationTo(SBase* sbmlobj, string metaid) const } if (ret != libsbml::LIBSBML_OPERATION_SUCCESS) { ret = sbmlobj->setNotes(" " + notes + " "); + } + if (ret != libsbml::LIBSBML_OPERATION_SUCCESS) { + ret = sbmlobj->setNotes("

" + notes + "

"); assert(ret == libsbml::LIBSBML_OPERATION_SUCCESS); } } From 844ee1efc8b3e5f72f1b91754e38712be9cfccf0 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Thu, 21 Mar 2024 15:45:11 -0700 Subject: [PATCH 02/25] Update where to get mac builds. --- azure-pipelines.yml | 30 ++++++++++++++++++++++-------- 1 file changed, 22 insertions(+), 8 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index f16b9e2c..2e131ee2 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -230,14 +230,30 @@ stages: timeoutInMinutes: "0" displayName: MacBuildAntimonyCpp continueOnError: "false" - pool: - vmImage: 'macOS-12' strategy: matrix: - 64-bit Mac Release: + 64-bit Mac Release x86: BuildType: Release - 64-bit Mac Debug: + LLVM_DOWNLOAD_LINK: 'https://github.com/sys-bio/llvm-13.x/releases/download/llvmorg-13.0.0/llvm-13.x-macosx_11_7_x86_64.zip' + vmImage: macOS-11 + arch: x86_64 + 64-bit Mac Debug x86: BuildType: Debug + LLVM_DOWNLOAD_LINK: 'https://github.com/sys-bio/llvm-13.x/releases/download/llvmorg-13.0.0/llvm-13.x-macosx_11_7_x86_64.zip' + vmImage: macOS-11 + arch: x86_64 + # 64-bit Mac Release M1: + # BuildType: Release + # LLVM_DOWNLOAD_LINK: 'https://github.com/sys-bio/llvm-13.x/releases/download/llvmorg-13.0.0/llvm-13.x-macosx_13_2_arm64.zip' + # vmImage: macOS-14 + # arch: arm64 + # 64-bit Mac Debug M1: + # BuildType: Debug + # LLVM_DOWNLOAD_LINK: 'https://github.com/sys-bio/llvm-13.x/releases/download/llvmorg-13.0.0/llvm-13.x-macosx_13_2_arm64.zip' + # vmImage: macOS-14 + # arch: arm64 + pool: + vmImage: $(vmImage) variables: PythonVersion: 3.11 PythonName: py311 @@ -324,15 +340,13 @@ stages: - task: DownloadPipelineArtifact@2 # In this task we go and grab the build artefacts from # the libroadrunner-dependencies package + - task: DownloadPipelineArtifact@2 inputs: source: 'specific' project: 'libroadrunner-deps' - # pipeline is found in the url when looking at azure in browser. - # for example, it looks like this: - # - https://dev.azure.com/TheRoadrunnerProject/libroadrunner-deps/_build?definitionId=9 pipeline: 9 runVersion: 'latest' - artifact: libroadrunner-deps-$(Agent.OS)-$(BuildType) + artifact: libroadrunner-deps-$(Agent.OS)-$(BuildType)-$(arch) path: $(DEPS_INSTALL_PREFIX) displayName: Download libroadrunner-deps install artifacts - script: | From 056a0923843283e3308fd809eb726c68e6313715 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Thu, 21 Mar 2024 16:58:18 -0700 Subject: [PATCH 03/25] Not sure what happened to 'check', but install it here. --- azure-pipelines.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 2e131ee2..ec05616e 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -498,6 +498,9 @@ stages: - script: | mkdir $(DEPS_INSTALL_PREFIX) displayName: Make Directories + - script: | + yum install -y check + displayName: Install 'check' - task: DownloadPipelineArtifact@2 # In this task we go and grab the build artefacts from # the libroadrunner-dependencies package From d3def03704d6fef64e9346c817cea4e9867881dc Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Thu, 21 Mar 2024 17:15:32 -0700 Subject: [PATCH 04/25] Install check via docker directly. --- azure-pipelines.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index ec05616e..b047f8c1 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -498,9 +498,9 @@ stages: - script: | mkdir $(DEPS_INSTALL_PREFIX) displayName: Make Directories - - script: | - yum install -y check - displayName: Install 'check' +# - script: | +# yum install -y check +# displayName: Install 'check' - task: DownloadPipelineArtifact@2 # In this task we go and grab the build artefacts from # the libroadrunner-dependencies package From 06b8a7b0125642a865b5131ac7db195aca5367c7 Mon Sep 17 00:00:00 2001 From: adelhpour Date: Wed, 1 May 2024 23:58:16 -0700 Subject: [PATCH 05/25] CI/CD workflow using GitHub Actions is added --- .github/workflows/main.yml | 315 +++++++++++++++++++++++++++++++++++++ 1 file changed, 315 insertions(+) create mode 100644 .github/workflows/main.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 00000000..0a5afb77 --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,315 @@ +name: BuildAntimony + +on: + push: + branches: + - develop + pull_request: + branches: + - '**' + +jobs: + build_on_OSs: + name: Build Antimony on ${{ matrix.platform.name }} + strategy: + fail-fast: false + matrix: + platform: + - name: macos-11-release + os_type: macos + os_name: macos-11 + arch: x86_64 + build_type: Release + build_python: ON + build_qt_antimony: ON + - name: macos-11-debug + os_type: macos + os_name: macos-11 + arch: x86_64 + build_type: Debug + build_python: ON + build_qt_antimony: ON + - name: ubuntu-latest-release + os_type: ubuntu + os_name: ubuntu-latest + build_type: Release + build_python: ON + build_qt_antimony: ON + - name: ubuntu-latest-debug + os_type: ubuntu + os_name: ubuntu-latest + build_type: Debug + build_python: ON + build_qt_antimony: ON + - name: windows-latest-release + os_type: windows + os_name: windows-latest + expat_lib_name: libexpatmd.lib + build_type: Release + build_python: ON + build_qt_antimony: ON + - name: windows-latest-debug + os_type: windows + os_name: windows-latest + expat_lib_name: libexpatdMD.lib + build_type: Debug + build_python: OFF + build_qt_antimony: ON + - name: manylinux2014-release + os_type: manylinux + os_name: ubuntu-latest + container_image: quay.io/pypa/manylinux2014_x86_64 + build_type: Release + build_python: ON + build_qt_antimony: OFF + - name: manylinux2014-debug + os_type: manylinux + os_name: ubuntu-latest + container_image: quay.io/pypa/manylinux2014_x86_64 + build_type: Debug + build_python: ON + build_qt_antimony: OFF + libroadrunner_deps_owner: [ "sys-bio" ] + libroadrunner_deps_repo: [ "libroadrunner-deps" ] + libroadrunner_deps_release_version: [ "v2.1.1" ] + python_version: [ "3.11" ] + + runs-on: ${{ matrix.platform.os_name }} + container: + image: ${{ matrix.platform.container_image || '' }} + + steps: + - name: Checkout Antimony + uses: actions/checkout@v3 + + - name: Set MSVC as the default compiler on Windows + if: matrix.platform.os_type == 'windows' + uses: ilammy/msvc-dev-cmd@v1.6.0 + + - name: Upgrade gcc on ManyLinux + if: matrix.platform.os_type == 'manylinux' + shell: bash + run: | + yum install -y centos-release-scl + yum install -y devtoolset-11 + scl enable devtoolset-11 bash + echo "/opt/rh/devtoolset-11/root/usr/bin" >> $GITHUB_PATH + + - name: Setup Ninja + uses: seanmiddleditch/gha-setup-ninja@master + + - name: Install ccache + shell: bash + run: | + cd ${RUNNER_WORKSPACE} + if [ "${{ matrix.platform.os_type }}" == 'macos' ]; then + brew install ccache + elif [ "${{ matrix.platform.os_type }}" == 'ubuntu' ]; then + sudo apt-get update + sudo apt-get install -y ccache + elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then + mkdir -p ccache + cd ccache + curl -L https://github.com/ccache/ccache/releases/download/v4.9.1/ccache-4.9.1.tar.gz > ccache.tar.gz + tar -zxf ccache.tar.gz + rm ccache.tar.gz + mkdir -p build-ccache + mkdir -p install-ccache + cd build-ccache + cmake -DCMAKE_INSTALL_PREFIX="$RUNNER_WORKSPACE/ccache/install-ccache" -DCMAKE_BUILD_TYPE=Release ../ccache-4.9.1 + cmake --build . --target install + echo "$RUNNER_WORKSPACE/ccache/install-ccache/bin" >> $GITHUB_PATH + fi + + - name: Prepare ccache timestamp on non-Windows platforms + if: matrix.platform.os_type != 'windows' + id: ccache_cache_timestamp + shell: cmake -P {0} + run: | + string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) + message("::set-output name=timestamp::${current_date}") + + - name: Set ccache cache directory on non-Windows + if: matrix.platform.os_type != 'windows' + shell: bash + run: | + cd ${RUNNER_WORKSPACE} + echo "CCACHE_DIR=${RUNNER_WORKSPACE}/.ccache" >> "${GITHUB_ENV}" + echo "COMPILER_LAUNCHER=ccache" >> "${GITHUB_ENV}" + + - name: Cache ccache files on non-Windows + if: matrix.platform.os_type != 'windows' + uses: actions/cache@v3 + with: + path: ${RUNNER_WORKSPACE}/.ccache + key: + ${{ runner.os }}-${{ steps.ccache_cache_timestamp.outputs.timestamp + }} + restore-keys: | + ${{ runner.os }}-${{ steps.ccache_cache_timestamp.outputs.timestamp }} + ${{ runner.os }}- + + - name: Setup Python for non-Manylinux platforms + if: matrix.platform.build_python == 'ON' && matrix.platform.os_type != 'manylinux' + uses: actions/setup-python@v4 + with: + python-version: ${{ matrix.python_version }} + + - name: Setup Python for Manylinux platforms + if: matrix.platform.build_python == 'ON' && matrix.platform.os_type == 'manylinux' + shell: bash + run: | + cd ${RUNNER_WORKSPACE} + yum update -y + yum install -y gcc openssl-devel bzip2-devel libffi-devel epel-release openssl11-devel + mkdir -p python${{ matrix.python_version }} + cd python${{ matrix.python_version }} + curl -L https://www.python.org/ftp/python/${{ matrix.python_version }}.0/Python-${{ matrix.python_version }}.0.tgz > python.tgz + tar -zxf python.tgz + rm python.tgz + cd Python-${{ matrix.python_version }}.0 + sed -i 's/PKG_CONFIG openssl /PKG_CONFIG openssl11 /g' configure + mkdir -p install-python + if [ -z "$CFLAGS" ]; then + export CFLAGS="-fPIC" + else + export CFLAGS="$CFLAGS -fPIC" + fi + ./configure --enable-optimizations --prefix=${RUNNER_WORKSPACE}/python${{ matrix.python_version }}/install-python + make install + echo "${RUNNER_WORKSPACE}/python${{ matrix.python_version }}/install-python/bin" >> "${GITHUB_PATH}" + + - name: Download dependencies binaries + shell: bash + run: | + cd ${RUNNER_WORKSPACE} + mkdir -p libroadrunner-deps-binaries + cd libroadrunner-deps-binaries + curl -L "https://github.com/${{ matrix.libroadrunner_deps_owner }}/${{ matrix.libroadrunner_deps_repo }}/releases/download/${{ matrix.libroadrunner_deps_release_version }}/${{ matrix.libroadrunner_deps_repo }}-${{ matrix.platform.name }}.zip" > libroadrunner-deps-${{ matrix.platform.name }}.zip + unzip -q libroadrunner-deps-${{ matrix.platform.name }}.zip -d libroadrunner-deps-${{ matrix.platform.name }} + rm libroadrunner-deps-${{ matrix.platform.name }}.zip + echo LIBSBML_INSTALL_DIR="-DLIBSBML_INSTALL_DIR=${RUNNER_WORKSPACE}/libroadrunner-deps-binaries/libroadrunner-deps-${{ matrix.platform.name }}" >> "${GITHUB_ENV}" + if [ "${{ matrix.platform.os_type }}" == 'windows' ]; then + echo EXPAT_LIBRARY="-DEXPAT_LIBRARY=${RUNNER_WORKSPACE}/libroadrunner-deps-binaries/libroadrunner-deps-${{ matrix.platform.name }}/lib/${{ matrix.platform.expat_lib_name }}" >> "${GITHUB_ENV}" + fi + + - name: Install libcheck + shell: bash + run: | + cd ${RUNNER_WORKSPACE} + mkdir -p check + cd check + if [ "${{ matrix.platform.os_type }}" == 'windows' ]; then + curl -L https://github.com/sys-bio/antimony/releases/download/libcheck/check-${{ matrix.platform.build_type }}.zip > check.zip + unzip -q check.zip -d check + rm check.zip + echo LIBCHECK_INCLUDE_DIR="-DLIBCHECK_INCLUDE_DIR=${RUNNER_WORKSPACE}/check/check/include" >> "${GITHUB_ENV}" + echo LIBCHECK_LIBRARY="-DLIBCHECK_LIBRARY=${RUNNER_WORKSPACE}/check/check/lib/libcheck.lib" >> "${GITHUB_ENV}" + else + curl -L https://github.com/libcheck/check/releases/download/0.15.2/check-0.15.2.tar.gz > check.tar.gz + tar -zxf check.tar.gz + rm check.tar.gz + mkdir -p build-check + mkdir -p install-check + cd build-check + cmake -G "Ninja" -DCMAKE_INSTALL_PREFIX="${RUNNER_WORKSPACE}/check/install-check" -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES=${{ matrix.platform.arch }} ../check-0.15.2 + cmake --build . --target install + echo LIBCHECK_INCLUDE_DIR="-DLIBCHECK_INCLUDE_DIR=${RUNNER_WORKSPACE}/check/install-check/include" >> "${GITHUB_ENV}" + if [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then + echo LIBCHECK_LIBRARY="-DLIBCHECK_LIBRARY=${RUNNER_WORKSPACE}/check/install-check/lib64/libcheck.so" >> "${GITHUB_ENV}" + else + echo LIBCHECK_LIBRARY="-DLIBCHECK_LIBRARY=${RUNNER_WORKSPACE}/check/install-check/lib/libcheck.a" >> "${GITHUB_ENV}" + fi + fi + + - name: Install Qt + if : matrix.platform.build_qt_antimony == 'ON' + uses: jurplel/install-qt-action@v3 + with: + version: '5.15.2' + + - name: Create build directory + shell: bash + run: mkdir -p ${RUNNER_WORKSPACE}/build-antimony + + - name: Configure CMake for Antimony + shell: bash + run: | + cd ${RUNNER_WORKSPACE}/build-antimony + cmake $GITHUB_WORKSPACE \ + -G "Ninja" \ + -DCMAKE_C_COMPILER_LAUNCHER=${COMPILER_LAUNCHER} \ + -DCMAKE_CXX_COMPILER_LAUNCHER=${COMPILER_LAUNCHER} \ + -DCMAKE_BUILD_TYPE=${{ matrix.platform.build_type }} \ + -DUSE_UNIVERSAL_BINARIES=OFF \ + -DCMAKE_OSX_ARCHITECTURES=${{ matrix.platform.arch }} \ + -DCMAKE_INSTALL_PREFIX="${RUNNER_WORKSPACE}/install-antimony" \ + -DWITH_STATIC_SBML=ON \ + ${LIBSBML_INSTALL_DIR} \ + -DWITH_QTANTIMONY=${{ matrix.platform.build_qt_antimony }} \ + -DWITH_LIBSBML_EXPAT=ON \ + ${EXPAT_LIBRARY} \ + -DWITH_LIBSBML_LIBXML=OFF \ + -DWITH_CHECK=ON \ + ${LIBCHECK_INCLUDE_DIR} \ + ${LIBCHECK_LIBRARY} \ + -DWITH_PYTHON=${{ matrix.platform.build_python }} + + - name: Build and install Antimony + shell: bash + run: | + cd ${RUNNER_WORKSPACE}/build-antimony + cmake --build . --target install --config ${{ matrix.platform.build_type }} + + - name: Run Antimony tests + if : matrix.platform.build_type == 'Release' + shell: bash + run: | + cd ${RUNNER_WORKSPACE}/build-antimony + ctest -C ${{ matrix.platform.build_type }} --output-on-failure --verbose --extra-verbose --progress + + - name: Set artifacts path and name + shell: bash + run: | + cd ${RUNNER_WORKSPACE} + echo "artifacts_name=antimony-${{ matrix.platform.name }}" >> "${GITHUB_ENV}" + # we need to use relative path as actions/upload-artifact@v1 cannot find it on containerized runners + echo "artifacts_path=../install-antimony" >> "${GITHUB_ENV}" + + - name: Upload Antimony binaries + uses: actions/upload-artifact@v1 + with: + name: ${{env.artifacts_name}} + path: ${{env.artifacts_path}} + + - name: Create Python wheel artifacts + if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' + shell: bash + run: | + cd ${RUNNER_WORKSPACE}/install-antimony/bindings/python + if [ "${{ matrix.platform.os_type }}" == 'windows' ]; then + python -m pip install setuptools wheel + python setup.py bdist_wheel + elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then + python${{ matrix.python_version }} -m pip install --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org setuptools wheel + python${{ matrix.python_version }} setup.py bdist_wheel + else + python${{ matrix.python_version }} -m pip install setuptools wheel + python${{ matrix.python_version }} setup.py bdist_wheel + fi + + - name: Set Python wheel artifacts path and name + if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' + shell: bash + run: | + cd ${RUNNER_WORKSPACE} + echo "python_wheel_artifacts_name=antimony-${{ matrix.platform.name }}-py3-none-wheel-file" >> "${GITHUB_ENV}" + # we need to use relative path as actions/upload-artifact@v1 cannot find it on containerized runners + echo "python_wheel_artifacts_path=../install-antimony/bindings/python/dist" >> "${GITHUB_ENV}" + + - name: Upload Python wheel artifacts + if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' + uses: actions/upload-artifact@v1 + with: + name: ${{env.python_wheel_artifacts_name}} + path: ${{env.python_wheel_artifacts_path}} \ No newline at end of file From 4916e9166e587df4315726c50ca083cb29c44ea7 Mon Sep 17 00:00:00 2001 From: adelhpour Date: Sat, 4 May 2024 23:20:19 -0700 Subject: [PATCH 06/25] CI/CD workflow using GitHub Actions is updated - it now runs on macos machines with Apple Silicon chips - gcc is now updated in all linux platforms - Host architecture is no longer provided in the matrix and is extracted internally - artifacts names now provide more info about the machine and the compiler they were built on --- .github/workflows/main.yml | 92 +++++++++++++++++++++++++++++++------- 1 file changed, 75 insertions(+), 17 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 0a5afb77..c1c5b7a6 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -18,17 +18,27 @@ jobs: - name: macos-11-release os_type: macos os_name: macos-11 - arch: x86_64 build_type: Release build_python: ON build_qt_antimony: ON - name: macos-11-debug os_type: macos os_name: macos-11 - arch: x86_64 build_type: Debug build_python: ON build_qt_antimony: ON + - name: macos-latest-release + os_type: macos + os_name: macos-latest + build_type: Release + build_python: ON + build_qt_antimony: OFF + - name: macos-latest-debug + os_type: macos + os_name: macos-latest + build_type: Debug + build_python: ON + build_qt_antimony: OFF - name: ubuntu-latest-release os_type: ubuntu os_name: ubuntu-latest @@ -71,6 +81,7 @@ jobs: build_qt_antimony: OFF libroadrunner_deps_owner: [ "sys-bio" ] libroadrunner_deps_repo: [ "libroadrunner-deps" ] + libroadrunner_deps_name: [ "libroadrunner-deps" ] libroadrunner_deps_release_version: [ "v2.1.1" ] python_version: [ "3.11" ] @@ -86,18 +97,37 @@ jobs: if: matrix.platform.os_type == 'windows' uses: ilammy/msvc-dev-cmd@v1.6.0 - - name: Upgrade gcc on ManyLinux + - name: Upgrade gcc on Linux if: matrix.platform.os_type == 'manylinux' shell: bash run: | - yum install -y centos-release-scl - yum install -y devtoolset-11 - scl enable devtoolset-11 bash - echo "/opt/rh/devtoolset-11/root/usr/bin" >> $GITHUB_PATH + if [ "${{ matrix.platform.os_type }}" == 'ubuntu' ]; then + apt-get update + apt-get install -y software-properties-common + add-apt-repository -y ppa:ubuntu-toolchain-r/test + apt-get update + apt-get install -y gcc-11 g++-11 + update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 90 + update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 90 + elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then + yum install -y centos-release-scl + yum install -y devtoolset-11 + scl enable devtoolset-11 bash + echo "/opt/rh/devtoolset-11/root/usr/bin" >> "${GITHUB_PATH}" + fi - name: Setup Ninja uses: seanmiddleditch/gha-setup-ninja@master + - name: Get Host Architecture + shell: bash + run: | + architecture=$(uname -m) + echo "host_architecture=$architecture" >> "${GITHUB_ENV}" + if [ "${{ matrix.platform.os_type }}" == 'macos' ]; then + echo "OSX_ARCHITECTURES=$architecture" >> "${GITHUB_ENV}" + fi + - name: Install ccache shell: bash run: | @@ -183,14 +213,28 @@ jobs: shell: bash run: | cd ${RUNNER_WORKSPACE} - mkdir -p libroadrunner-deps-binaries - cd libroadrunner-deps-binaries - curl -L "https://github.com/${{ matrix.libroadrunner_deps_owner }}/${{ matrix.libroadrunner_deps_repo }}/releases/download/${{ matrix.libroadrunner_deps_release_version }}/${{ matrix.libroadrunner_deps_repo }}-${{ matrix.platform.name }}.zip" > libroadrunner-deps-${{ matrix.platform.name }}.zip - unzip -q libroadrunner-deps-${{ matrix.platform.name }}.zip -d libroadrunner-deps-${{ matrix.platform.name }} - rm libroadrunner-deps-${{ matrix.platform.name }}.zip - echo LIBSBML_INSTALL_DIR="-DLIBSBML_INSTALL_DIR=${RUNNER_WORKSPACE}/libroadrunner-deps-binaries/libroadrunner-deps-${{ matrix.platform.name }}" >> "${GITHUB_ENV}" + mkdir -p ${{ matrix.libroadrunner_deps_name }}-binaries + cd ${{ matrix.libroadrunner_deps_name }}-binaries if [ "${{ matrix.platform.os_type }}" == 'windows' ]; then - echo EXPAT_LIBRARY="-DEXPAT_LIBRARY=${RUNNER_WORKSPACE}/libroadrunner-deps-binaries/libroadrunner-deps-${{ matrix.platform.name }}/lib/${{ matrix.platform.expat_lib_name }}" >> "${GITHUB_ENV}" + compiler_version=$(ls "C:\Program Files\Microsoft Visual Studio") + binary_file_name=${{ matrix.libroadrunner_deps_name }}-${{ matrix.platform.os_type }}-msvc${compiler_version}-${host_architecture}-${{ matrix.platform.build_type }} + elif [ "${{ matrix.platform.os_type }}" == 'macos' ]; then + os_version=$(sw_vers -productVersion | cut -d '.' -f 1) + binary_file_name=${{ matrix.libroadrunner_deps_name }}-${{ matrix.platform.os_type }}-${os_version}-${host_architecture}-${{ matrix.platform.build_type }} + elif [ "${{ matrix.platform.os_type }}" == 'ubuntu' ]; then + os_version=$(lsb_release -rs | cut -d '.' -f 1) + binary_file_name=${{ matrix.libroadrunner_deps_name }}-${{ matrix.platform.os_type }}-${os_version}-${host_architecture}-${{ matrix.platform.build_type }} + elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then + os_name="${{ matrix.platform.name }}" + os_name_without_build_type="${os_name%%-*}" + binary_file_name=${{ matrix.libroadrunner_deps_name }}-${os_name_without_build_type}-${host_architecture}-${{ matrix.platform.build_type }} + fi + curl -LO "https://github.com/${{ matrix.libroadrunner_deps_owner }}/${{ matrix.libroadrunner_deps_repo }}/releases/download/${{ matrix.libroadrunner_deps_release_version }}/$binary_file_name.zip" + unzip -q $binary_file_name.zip + rm $binary_file_name.zip + echo LIBSBML_INSTALL_DIR="-DLIBSBML_INSTALL_DIR=${RUNNER_WORKSPACE}/${{ matrix.libroadrunner_deps_name }}-binaries" >> "${GITHUB_ENV}" + if [ "${{ matrix.platform.os_type }}" == 'windows' ]; then + echo EXPAT_LIBRARY="-DEXPAT_LIBRARY=${RUNNER_WORKSPACE}/${{ matrix.libroadrunner_deps_name }}-binaries/lib/${{ matrix.platform.expat_lib_name }}" >> "${GITHUB_ENV}" fi - name: Install libcheck @@ -298,18 +342,32 @@ jobs: python${{ matrix.python_version }} setup.py bdist_wheel fi + - name: Rename Python wheel artifacts + if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' + shell: bash + run: | + cd ${RUNNER_WORKSPACE}/install-antimony/bindings/python/dist + if [ "${{ matrix.platform.os_type }}" == 'macos' ]; then + mv antimony*.whl $(echo antimony*.whl | sed "s/universal2/${host_architecture}/g") + elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then + mv antimony*.whl $(echo antimony*.whl | sed "s/linux/manylinux2014/g") + fi + python_version_number=$(echo "${{ matrix.python_version }}" | tr -d '.') + mv antimony*.whl $(echo antimony*.whl | sed "s/cp${python_version_number}-cp${python_version_number}/py3-none/g") + - name: Set Python wheel artifacts path and name if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' shell: bash run: | cd ${RUNNER_WORKSPACE} - echo "python_wheel_artifacts_name=antimony-${{ matrix.platform.name }}-py3-none-wheel-file" >> "${GITHUB_ENV}" + python_wheel_file_name=$(ls install-antimony/bindings/python/dist | grep '^antimony') + echo "python_wheel_artifacts_name=${python_wheel_file_name}" >> "${GITHUB_ENV}" # we need to use relative path as actions/upload-artifact@v1 cannot find it on containerized runners - echo "python_wheel_artifacts_path=../install-antimony/bindings/python/dist" >> "${GITHUB_ENV}" + echo "python_wheel_artifacts_file=../install-antimony/bindings/python/dist/$python_wheel_file_name" >> "${GITHUB_ENV}" - name: Upload Python wheel artifacts if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' uses: actions/upload-artifact@v1 with: name: ${{env.python_wheel_artifacts_name}} - path: ${{env.python_wheel_artifacts_path}} \ No newline at end of file + path: ${{env.python_wheel_artifacts_file}} \ No newline at end of file From 07ee5d31798b0dedf00bbc3222de938b693bea72 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Fri, 24 May 2024 16:23:04 -0700 Subject: [PATCH 07/25] From Herbert, we rename some of the BQB and BQM Antimony names. (But remain backwards compatible.) --- src/annotated.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/annotated.cpp b/src/annotated.cpp index 09db8bbd..9d890c67 100644 --- a/src/annotated.cpp +++ b/src/annotated.cpp @@ -195,9 +195,9 @@ bool Annotated::HasAnnotation() const ModelQualifierType_t Annotated::DecodeModelQualifier(const string& qual) const { - if(qual == "is" || qual == "identity" || qual == "model_entity_is") + if (qual == "is" || qual == "identity" || qual == "model_entity_is" || qual=="model_source") return BQM_IS; - else if(qual == "isDescribedBy" || qual == "description") + else if(qual == "isDescribedBy" || qual == "description" || qual == "publication") return BQM_IS_DESCRIBED_BY; else if(qual == "isDerivedFrom" || qual == "origin") return BQM_IS_DERIVED_FROM; @@ -213,9 +213,9 @@ string Annotated::EncodeModelQualifier(ModelQualifierType_t q) const { switch(q) { case BQM_IS: - return "model_entity_is"; + return "model_source"; case BQM_IS_DESCRIBED_BY: - return "description"; + return "publication"; case BQM_IS_DERIVED_FROM: return "origin"; case BQM_IS_INSTANCE_OF: @@ -236,7 +236,7 @@ BiolQualifierType_t Annotated::DecodeBiolQualifier(const string& qual) const return BQB_HAS_PART; else if(qual == "isPartOf" || qual == "parthood") return BQB_IS_PART_OF; - else if(qual == "isVersionOf" || qual == "hypernym") + else if(qual == "isVersionOf" || qual == "hypernym" || qual == "biological_system") return BQB_IS_VERSION_OF; else if(qual == "hasVersion" || qual == "version") return BQB_HAS_VERSION; @@ -270,7 +270,7 @@ string Annotated::EncodeBiolQualifier(BiolQualifierType_t q) const case BQB_IS_PART_OF: return "parthood"; case BQB_IS_VERSION_OF: - return "hypernym"; + return "biological_system"; case BQB_HAS_VERSION: return "version"; case BQB_IS_HOMOLOG_TO: From 19efd40a93cf27a3133c231b1910f97717f0e258 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Fri, 24 May 2024 16:51:33 -0700 Subject: [PATCH 08/25] Remove azure pipeline; use macos14 explicitly. --- {.azurepipelines => .azurepipelines.old}/getCheck.py | 0 {.azurepipelines => .azurepipelines.old}/getQt.py | 0 {.azurepipelines => .azurepipelines.old}/renameWheel.py | 0 .github/workflows/main.yml | 8 ++++---- 4 files changed, 4 insertions(+), 4 deletions(-) rename {.azurepipelines => .azurepipelines.old}/getCheck.py (100%) rename {.azurepipelines => .azurepipelines.old}/getQt.py (100%) rename {.azurepipelines => .azurepipelines.old}/renameWheel.py (100%) diff --git a/.azurepipelines/getCheck.py b/.azurepipelines.old/getCheck.py similarity index 100% rename from .azurepipelines/getCheck.py rename to .azurepipelines.old/getCheck.py diff --git a/.azurepipelines/getQt.py b/.azurepipelines.old/getQt.py similarity index 100% rename from .azurepipelines/getQt.py rename to .azurepipelines.old/getQt.py diff --git a/.azurepipelines/renameWheel.py b/.azurepipelines.old/renameWheel.py similarity index 100% rename from .azurepipelines/renameWheel.py rename to .azurepipelines.old/renameWheel.py diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c1c5b7a6..7b0b343a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -27,15 +27,15 @@ jobs: build_type: Debug build_python: ON build_qt_antimony: ON - - name: macos-latest-release + - name: macos-14-release os_type: macos - os_name: macos-latest + os_name: macos-14 build_type: Release build_python: ON build_qt_antimony: OFF - - name: macos-latest-debug + - name: macos-14-debug os_type: macos - os_name: macos-latest + os_name: macos-14 build_type: Debug build_python: ON build_qt_antimony: OFF From 009d9ef4f242b9d608f24323552d2e2e0f90cfb2 Mon Sep 17 00:00:00 2001 From: adelhpour Date: Mon, 24 Jun 2024 10:20:48 -0700 Subject: [PATCH 09/25] macOS virtual machine for x86_64 arch is updated to macOS 12 as macOS 11 is now deprecated on GitHub server --- .github/workflows/main.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 7b0b343a..58e527d5 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -15,15 +15,15 @@ jobs: fail-fast: false matrix: platform: - - name: macos-11-release + - name: macos-12-release os_type: macos - os_name: macos-11 + os_name: macos-12 build_type: Release build_python: ON build_qt_antimony: ON - - name: macos-11-debug + - name: macos-12-debug os_type: macos - os_name: macos-11 + os_name: macos-12 build_type: Debug build_python: ON build_qt_antimony: ON From aca6294ee2903a73f57d254598df158742900e23 Mon Sep 17 00:00:00 2001 From: adelhpour Date: Mon, 24 Jun 2024 10:21:07 -0700 Subject: [PATCH 10/25] Setup Ninja action in the CI/CD workflow is changed to use v4 instead of master as the newest version required node20 which cannot be run on manylinux containers --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 58e527d5..900048b2 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -117,7 +117,7 @@ jobs: fi - name: Setup Ninja - uses: seanmiddleditch/gha-setup-ninja@master + uses: seanmiddleditch/gha-setup-ninja@v4 - name: Get Host Architecture shell: bash From c8543aa5d19f2415535b7f2262080ba8834aa93d Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Mon, 24 Jun 2024 14:22:36 -0700 Subject: [PATCH 11/25] Update workflow --- .github/workflows/main.yml | 38 +++++++++++++++----------------------- 1 file changed, 15 insertions(+), 23 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 7b0b343a..adfdb033 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -83,7 +83,7 @@ jobs: libroadrunner_deps_repo: [ "libroadrunner-deps" ] libroadrunner_deps_name: [ "libroadrunner-deps" ] libroadrunner_deps_release_version: [ "v2.1.1" ] - python_version: [ "3.11" ] + python_version: [ "3.12" ] runs-on: ${{ matrix.platform.os_name }} container: @@ -181,7 +181,7 @@ jobs: - name: Setup Python for non-Manylinux platforms if: matrix.platform.build_python == 'ON' && matrix.platform.os_type != 'manylinux' - uses: actions/setup-python@v4 + uses: actions/setup-python@v5 with: python-version: ${{ matrix.python_version }} @@ -189,25 +189,17 @@ jobs: if: matrix.platform.build_python == 'ON' && matrix.platform.os_type == 'manylinux' shell: bash run: | - cd ${RUNNER_WORKSPACE} - yum update -y - yum install -y gcc openssl-devel bzip2-devel libffi-devel epel-release openssl11-devel - mkdir -p python${{ matrix.python_version }} - cd python${{ matrix.python_version }} - curl -L https://www.python.org/ftp/python/${{ matrix.python_version }}.0/Python-${{ matrix.python_version }}.0.tgz > python.tgz - tar -zxf python.tgz - rm python.tgz - cd Python-${{ matrix.python_version }}.0 - sed -i 's/PKG_CONFIG openssl /PKG_CONFIG openssl11 /g' configure - mkdir -p install-python - if [ -z "$CFLAGS" ]; then - export CFLAGS="-fPIC" - else - export CFLAGS="$CFLAGS -fPIC" - fi - ./configure --enable-optimizations --prefix=${RUNNER_WORKSPACE}/python${{ matrix.python_version }}/install-python - make install - echo "${RUNNER_WORKSPACE}/python${{ matrix.python_version }}/install-python/bin" >> "${GITHUB_PATH}" + yum install -y wget + wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh + bash Miniconda3-latest-Linux-x86_64.sh -b -p /Miniconda3 + + /Miniconda3/bin/conda create -y --name py3 python=${{ matrix.python_version }} + + /Miniconda3/bin/conda init && bash ~/.bashrc && . ~/.bashrc cd ${RUNNER_WORKSPACE} + # sed -i 's/PKG_CONFIG openssl /PKG_CONFIG openssl11 /g' configure + + echo "python_exe=/Miniconda3/envs/py3/bin/python" >> $GITHUB_ENV + echo "python_dir=/Miniconda3/envs/py3" >> $GITHUB_ENV - name: Download dependencies binaries shell: bash @@ -318,10 +310,10 @@ jobs: cd ${RUNNER_WORKSPACE} echo "artifacts_name=antimony-${{ matrix.platform.name }}" >> "${GITHUB_ENV}" # we need to use relative path as actions/upload-artifact@v1 cannot find it on containerized runners - echo "artifacts_path=../install-antimony" >> "${GITHUB_ENV}" + echo "artifacts_path=${RUNNER_WORKSPACE}/install-antimony" >> "${GITHUB_ENV}" - name: Upload Antimony binaries - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v3 with: name: ${{env.artifacts_name}} path: ${{env.artifacts_path}} From 0da3a2dab25aa406c6bbe054d900ea7f6da1e459 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Mon, 24 Jun 2024 14:24:42 -0700 Subject: [PATCH 12/25] Remove Azure in favor of github actions. --- .azurepipelines.old/getCheck.py | 85 ---- .azurepipelines.old/getQt.py | 85 ---- .azurepipelines.old/renameWheel.py | 34 -- azure-pipelines.yml | 603 ----------------------------- 4 files changed, 807 deletions(-) delete mode 100644 .azurepipelines.old/getCheck.py delete mode 100644 .azurepipelines.old/getQt.py delete mode 100644 .azurepipelines.old/renameWheel.py delete mode 100644 azure-pipelines.yml diff --git a/.azurepipelines.old/getCheck.py b/.azurepipelines.old/getCheck.py deleted file mode 100644 index f7dd8699..00000000 --- a/.azurepipelines.old/getCheck.py +++ /dev/null @@ -1,85 +0,0 @@ -""" -Get check from url. - -Usage: - - python getCheck.py Date: Mon, 24 Jun 2024 15:32:50 -0700 Subject: [PATCH 13/25] Fix Windows python build Weirdly, python 3.11 was being used instead of 3.12. --- .github/workflows/main.yml | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d619f02e..148c4157 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -201,6 +201,13 @@ jobs: echo "python_exe=/Miniconda3/envs/py3/bin/python" >> $GITHUB_ENV echo "python_dir=/Miniconda3/envs/py3" >> $GITHUB_ENV + - name: Save Python executable for Windows + if: matrix.platform.build_python == 'ON' && matrix.platform.os_type == 'windows' + shell: bash + run: | + echo "python_exe=${{env.pythonLocation }}/python" >> $GITHUB_ENV + echo "python_dir=${{env.pythonLocation }}" >> $GITHUB_ENV + - name: Download dependencies binaries shell: bash run: | @@ -324,8 +331,8 @@ jobs: run: | cd ${RUNNER_WORKSPACE}/install-antimony/bindings/python if [ "${{ matrix.platform.os_type }}" == 'windows' ]; then - python -m pip install setuptools wheel - python setup.py bdist_wheel + ${{env.python_exe}} -m pip install setuptools wheel + ${{env.python_exe}} setup.py bdist_wheel elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then python${{ matrix.python_version }} -m pip install --trusted-host pypi.org --trusted-host pypi.python.org --trusted-host files.pythonhosted.org setuptools wheel python${{ matrix.python_version }} setup.py bdist_wheel From b2e8779fea1b480fcc8f390f3acb7ddfdcd2d511 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Mon, 24 Jun 2024 15:56:59 -0700 Subject: [PATCH 14/25] Attempt #2 to get installed python on windows. --- .github/workflows/main.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 148c4157..c51fec18 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -203,10 +203,13 @@ jobs: - name: Save Python executable for Windows if: matrix.platform.build_python == 'ON' && matrix.platform.os_type == 'windows' - shell: bash run: | - echo "python_exe=${{env.pythonLocation }}/python" >> $GITHUB_ENV - echo "python_dir=${{env.pythonLocation }}" >> $GITHUB_ENV + cd ${{ env.pythonLocation }} + $pattern = '[\\]' + + $pythonWinExecutable = ${{env.pythonLocation }} -replace $pattern, '/' + echo "python_exe=$pythonWinExecutable/python.exe" | Out-File -FilePath $env:GITHUB_ENV -Append + echo "python_v1_dir=$pythonWinExecutable" | Out-File -FilePath $env:GITHUB_ENV -Append - name: Download dependencies binaries shell: bash From 2c6f7c30cde51552326d3d257d8741662188e664 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Mon, 24 Jun 2024 15:58:21 -0700 Subject: [PATCH 15/25] Typo --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index c51fec18..e73b71e3 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -207,7 +207,7 @@ jobs: cd ${{ env.pythonLocation }} $pattern = '[\\]' - $pythonWinExecutable = ${{env.pythonLocation }} -replace $pattern, '/' + $pythonWinExecutable = "${{env.pythonLocation }}" -replace $pattern, '/' echo "python_exe=$pythonWinExecutable/python.exe" | Out-File -FilePath $env:GITHUB_ENV -Append echo "python_v1_dir=$pythonWinExecutable" | Out-File -FilePath $env:GITHUB_ENV -Append From 24c3dd6bc43e8f2d0853928e7692f82f7d0797d6 Mon Sep 17 00:00:00 2001 From: adelhpour Date: Fri, 5 Jul 2024 09:32:26 -0700 Subject: [PATCH 16/25] Manylinux2014 is replaced with Manylinux_2_28 in C/CD workflow --- .github/workflows/main.yml | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e73b71e3..25c2f712 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -65,24 +65,24 @@ jobs: build_type: Debug build_python: OFF build_qt_antimony: ON - - name: manylinux2014-release + - name: manylinux_2_28-release os_type: manylinux os_name: ubuntu-latest - container_image: quay.io/pypa/manylinux2014_x86_64 + container_image: quay.io/pypa/manylinux_2_28_x86_64 build_type: Release build_python: ON build_qt_antimony: OFF - - name: manylinux2014-debug + - name: manylinux_2_28-debug os_type: manylinux os_name: ubuntu-latest - container_image: quay.io/pypa/manylinux2014_x86_64 + container_image: quay.io/pypa/manylinux_2_28_x86_64 build_type: Debug build_python: ON build_qt_antimony: OFF libroadrunner_deps_owner: [ "sys-bio" ] libroadrunner_deps_repo: [ "libroadrunner-deps" ] libroadrunner_deps_name: [ "libroadrunner-deps" ] - libroadrunner_deps_release_version: [ "v2.1.1" ] + libroadrunner_deps_release_version: [ "v2.1.2" ] python_version: [ "3.12" ] runs-on: ${{ matrix.platform.os_name }} @@ -110,10 +110,9 @@ jobs: update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 90 update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 90 elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then - yum install -y centos-release-scl - yum install -y devtoolset-11 - scl enable devtoolset-11 bash - echo "/opt/rh/devtoolset-11/root/usr/bin" >> "${GITHUB_PATH}" + dnf install -y gcc-toolset-11 + scl enable gcc-toolset-11 bash + echo "/opt/rh/gcc-toolset-11/root/usr/bin" >> "${GITHUB_PATH}" fi - name: Setup Ninja @@ -189,7 +188,7 @@ jobs: if: matrix.platform.build_python == 'ON' && matrix.platform.os_type == 'manylinux' shell: bash run: | - yum install -y wget + dnf install -y wget wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh -b -p /Miniconda3 From 969583f2aebf19a74b64b6de63b3c79b8323b0c7 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 15:05:00 -0700 Subject: [PATCH 17/25] Remove function definitions by default when importing from SBML. --- src/antimony_api.cpp | 16 ++++++++++++++-- src/antimony_api.h | 5 +++++ src/bindings/python/createAntimonyLib.py | 1 + src/registry.cpp | 11 +++++++++++ src/registry.h | 5 +++++ src/test/TestRunner.cpp | 1 + 6 files changed, 37 insertions(+), 2 deletions(-) diff --git a/src/antimony_api.cpp b/src/antimony_api.cpp index 21313d55..d23bb068 100644 --- a/src/antimony_api.cpp +++ b/src/antimony_api.cpp @@ -11,6 +11,7 @@ #include #include #include +#include #endif #ifndef NCELLML @@ -306,6 +307,12 @@ LIB_EXTERN long loadAntimonyFile(const char* filename) #ifndef NSBML void LoadSBML(SBMLDocument* doc) { + if (g_registry.GetRemoveFunctionDefinitions()) { + SBMLConverter* converter = new SBMLFunctionDefinitionConverter(); + converter->setDocument(doc); + int cret = converter->convert(); + + } #ifdef USE_COMP string mainsbmlname = getNameFromSBMLObject(doc->getModel(), "doc"); CompSBMLDocumentPlugin* compdoc = static_cast(doc->getPlugin("comp")); @@ -556,16 +563,21 @@ LIB_EXTERN void clearPreviousLoads() g_registry.ClearAll(); } -LIB_EXTERN void addDirectory(const char* directory) +LIB_EXTERN void addDirectory(const char* directory) { g_registry.AddDirectory(directory); } -LIB_EXTERN void clearDirectories() +LIB_EXTERN void clearDirectories() { g_registry.ClearDirectories(); } +LIB_EXTERN void setRemoveFunctionDefinitions(bool removeFunctionDefinitions) +{ + g_registry.SetRemoveFunctionDefinitions(removeFunctionDefinitions); +} + LIB_EXTERN char* getLastError() { return getCharStar((g_registry.GetError()).c_str()); diff --git a/src/antimony_api.h b/src/antimony_api.h index 182a5f6d..09beca9e 100644 --- a/src/antimony_api.h +++ b/src/antimony_api.h @@ -221,6 +221,11 @@ LIB_EXTERN void addDirectory(const char* directory); */ LIB_EXTERN void clearDirectories(); +/** + * Sets whether to remove function definitions on import from SBML. + */ +LIB_EXTERN void setRemoveFunctionDefinitions(bool removeFunctionDefinitions); + /** \} */ diff --git a/src/bindings/python/createAntimonyLib.py b/src/bindings/python/createAntimonyLib.py index 68ccd23d..17fadbca 100644 --- a/src/bindings/python/createAntimonyLib.py +++ b/src/bindings/python/createAntimonyLib.py @@ -106,6 +106,7 @@ def parse_function(line, comment, functions): args = [] for onearg in argvec: onearg = onearg.strip() + onearg = onearg.replace(" = false", "") if len(onearg)==0: continue lastspace = onearg.rfind(" ") diff --git a/src/registry.cpp b/src/registry.cpp index 425a5082..82754f62 100644 --- a/src/registry.cpp +++ b/src/registry.cpp @@ -52,6 +52,7 @@ Registry::Registry() m_writeTimestampToSBML(false), m_bareNumbersAreDimensionless(false), m_eof(false), + m_removeFunctionDefinitions(true), input(NULL) { string main = MAINMODULE; @@ -1450,6 +1451,16 @@ void Registry::FixTimeInFunctions() } } +void Registry::SetRemoveFunctionDefinitions(bool removeFunctionDefinitions) +{ + m_removeFunctionDefinitions = removeFunctionDefinitions; +} + +bool Registry::GetRemoveFunctionDefinitions() +{ + return m_removeFunctionDefinitions; +} + bool Registry::ProcessGlobalCVTerm(const string* name, const string* qual, vector* resources) { if (name && qual && resources) { diff --git a/src/registry.h b/src/registry.h index 035624f8..b727f0ac 100644 --- a/src/registry.h +++ b/src/registry.h @@ -70,6 +70,8 @@ class Registry bool m_bareNumbersAreDimensionless; bool m_eof; + bool m_removeFunctionDefinitions; + public: Registry(); ~Registry(); @@ -199,6 +201,9 @@ class Registry UserFunction* GetUserFunction(std::string name); void FixTimeInFunctions(); + void SetRemoveFunctionDefinitions(bool removeFunctionDefinitions); + bool GetRemoveFunctionDefinitions(); + // CV terms bool ProcessGlobalCVTerm(const std::string* name, const std::string* qual, std::vector* resources); diff --git a/src/test/TestRunner.cpp b/src/test/TestRunner.cpp index f0129d1f..9f4e1542 100644 --- a/src/test/TestRunner.cpp +++ b/src/test/TestRunner.cpp @@ -120,6 +120,7 @@ main (int argc, char* argv[]) { int num_failed; g_registry.SetWriteNameToSBML(false); + g_registry.SetRemoveFunctionDefinitions(false); setTestDataDirectory(); From 06e49275f62755a9ad46dd45a13f8d121bc19bf9 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 15:05:49 -0700 Subject: [PATCH 18/25] Update version number. --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bf7fc49d..9349c976 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -11,7 +11,7 @@ project(libantimony) # Set up version information. # SET(LIBANTIMONY_VERSION_MAJOR 2) -SET(LIBANTIMONY_VERSION_MINOR 14) +SET(LIBANTIMONY_VERSION_MINOR 15) SET(LIBANTIMONY_VERSION_PATCH ".0") SET(LIBANTIMONY_VERSION_RELEASE "") From f2157b9e6632ebcc3edab6b2c3d09f40609ccb2e Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 15:21:14 -0700 Subject: [PATCH 19/25] 2.14.0 -> 2.15.0 in test strings. Also, update API docs. --- src/antimony_api.h | 7 +++++++ src/test/test-data/BIOMD0000000118.txt | 2 +- src/test/test-data/BIOMD0000000696.txt | 2 +- src/test/test-data/SBO_compartment_rt.txt | 2 +- src/test/test-data/SBO_event_rt.txt | 2 +- src/test/test-data/SBO_function_rt.txt | 2 +- src/test/test-data/SBO_localvar_rt.txt | 2 +- src/test/test-data/SBO_module_rt.txt | 2 +- src/test/test-data/SBO_param2_rt.txt | 2 +- src/test/test-data/SBO_param_rt.txt | 2 +- src/test/test-data/SBO_reaction_rt.txt | 2 +- src/test/test-data/SBO_species_rt.txt | 2 +- src/test/test-data/SBO_submodel_rt.txt | 2 +- src/test/test-data/SBO_submodel_shadowed_rt.txt | 2 +- src/test/test-data/algrule_id_rt.txt | 2 +- src/test/test-data/algrule_idname_rt.txt | 2 +- src/test/test-data/algrule_rt.txt | 2 +- src/test/test-data/autopromoted_units_rt.txt | 2 +- src/test/test-data/coefficientOfVariation_rt.txt | 2 +- src/test/test-data/confidenceInterval_rt.txt | 2 +- src/test/test-data/created_element_rt.txt | 2 +- src/test/test-data/created_model_parts_rt.txt | 2 +- src/test/test-data/created_model_rt.txt | 2 +- src/test/test-data/creator_blank_model_rt.txt | 2 +- src/test/test-data/creator_one_element_rt.txt | 2 +- src/test/test-data/creator_one_model_rt.txt | 2 +- src/test/test-data/creator_two_model_rt.txt | 2 +- src/test/test-data/credibleInterval_rt.txt | 2 +- src/test/test-data/default_compartment.txt | 2 +- src/test/test-data/distribution_rt.txt | 2 +- src/test/test-data/encodes_rt.txt | 2 +- src/test/test-data/externalParameter1_rt.txt | 2 +- src/test/test-data/externalParameter2_rt.txt | 2 +- src/test/test-data/externalParameter3_rt.txt | 2 +- src/test/test-data/from-libsbml/CompTest.txt | 2 +- src/test/test-data/from-libsbml/QTPop.txt | 2 +- src/test/test-data/from-libsbml/comp.txt | 2 +- src/test/test-data/from-libsbml/exchangetest.txt | 2 +- .../from-libsbml/replace_rules_and_constraints.txt | 2 +- src/test/test-data/from-libsbml/test22.txt | 2 +- src/test/test-data/from-libsbml/test23.txt | 2 +- src/test/test-data/from-libsbml/test24.txt | 2 +- src/test/test-data/from-libsbml/test25.txt | 2 +- src/test/test-data/from-libsbml/test27.txt | 2 +- src/test/test-data/from-libsbml/test28.txt | 2 +- src/test/test-data/from-libsbml/test39.txt | 2 +- src/test/test-data/from-libsbml/test44.txt | 2 +- src/test/test-data/from-libsbml/test45.txt | 2 +- src/test/test-data/from-libsbml/test46.txt | 2 +- src/test/test-data/from-libsbml/test47.txt | 2 +- src/test/test-data/from-libsbml/test48.txt | 2 +- src/test/test-data/from-libsbml/test54.txt | 2 +- src/test/test-data/from-libsbml/test58.txt | 2 +- src/test/test-data/from-libsbml/test59.txt | 2 +- src/test/test-data/from-libsbml/test61.txt | 2 +- src/test/test-data/function_name_rt.txt | 2 +- src/test/test-data/hasPart_rt.txt | 2 +- src/test/test-data/hasProperty_rt.txt | 2 +- src/test/test-data/hasTaxon_rt.txt | 2 +- src/test/test-data/hasVersion_rt.txt | 2 +- src/test/test-data/identity_rt.txt | 2 +- src/test/test-data/interquartileRange_rt.txt | 2 +- src/test/test-data/isDescribedBy_rt.txt | 2 +- src/test/test-data/isEncodedBy_rt.txt | 2 +- src/test/test-data/isHomologTo_rt.txt | 2 +- src/test/test-data/isPartOf_rt.txt | 2 +- src/test/test-data/isPropertyOf_rt.txt | 2 +- src/test/test-data/isVersionOf_rt.txt | 2 +- src/test/test-data/kurtosis_rt.txt | 2 +- src/test/test-data/mean_rt.txt | 2 +- src/test/test-data/median_rt.txt | 2 +- src/test/test-data/mode_rt.txt | 2 +- src/test/test-data/modified_element_rt.txt | 2 +- src/test/test-data/modified_model_parts_rt.txt | 2 +- src/test/test-data/modified_model_rt.txt | 2 +- src/test/test-data/module_name_rt.txt | 2 +- src/test/test-data/namedstoich_assignment_rt.txt | 2 +- src/test/test-data/namedstoich_basic_rt.txt | 2 +- src/test/test-data/namedstoich_rate_rt.txt | 2 +- src/test/test-data/namedstoich_value_rt.txt | 2 +- src/test/test-data/negparen_rt.txt | 2 +- src/test/test-data/notes_element_noxml_rt.txt | 2 +- src/test/test-data/notes_element_xml_rt.txt | 2 +- src/test/test-data/notes_model_noxml_rt.txt | 2 +- src/test/test-data/notes_model_xml_internal_rt.txt | 2 +- src/test/test-data/notes_model_xml_rt.txt | 2 +- src/test/test-data/occursIn_rt.txt | 2 +- src/test/test-data/range_rt.txt | 2 +- src/test/test-data/same_unit_name.txt | 2 +- src/test/test-data/sampleSize_rt.txt | 2 +- src/test/test-data/skewness_rt.txt | 2 +- src/test/test-data/standardDeviation_rt.txt | 2 +- src/test/test-data/standardError_rt.txt | 2 +- src/test/test-data/variance_rt.txt | 2 +- src/test/test-data/volume.txt | 2 +- 95 files changed, 101 insertions(+), 94 deletions(-) diff --git a/src/antimony_api.h b/src/antimony_api.h index 09beca9e..ffd6c7af 100644 --- a/src/antimony_api.h +++ b/src/antimony_api.h @@ -127,10 +127,12 @@ LIB_EXTERN long loadAntimonyString(const char* model); * Loads a file and parses it (using libSBML) as an SBML file. On an error, the error is saved, -1 is returned, and no information is stored. * @return a long integer indicating the index of the file read and stored. On an error, returns -1 and no information is stored. * NOTE: This function is unavailable when libAntimony is compiled with the '-NSBML' flag. + * Also note that by default, function definitions are removed. * * @param filename The filename as a character string. May be either absolute or relative to the directory the executable is being run from. * * @see getLastError() + * @see setRemoveFunctionDefinitions() */ LIB_EXTERN long loadSBMLFile(const char* filename); @@ -140,10 +142,12 @@ LIB_EXTERN long loadSBMLFile(const char* filename); * Loads a string and parses it (using libSBML) as an SBML file. On an error, the error is saved, -1 is returned, and no information is stored. * @return a long integer indicating the index of the string read and stored. On an error, returns -1 and no information is stored. * NOTE: This function is unavailable when libAntimony is compiled with the '-NSBML' flag. + * Also note that by default, function definitions are removed. * * @param model The model, in SBML format. * * @see getLastError() + * @see setRemoveFunctionDefinitions() */ LIB_EXTERN long loadSBMLString(const char* model); @@ -153,11 +157,13 @@ LIB_EXTERN long loadSBMLString(const char* model); * Loads a string and parses it (using libSBML) as an SBML file. On an error, the error is saved, -1 is returned, and no information is stored. This function additionally allows you to set the location of the string, in case there are relative file references in the file (as there can be in some hierarchical models). * @return a long integer indicating the index of the string read and stored. On an error, returns -1 and no information is stored. * NOTE: This function is unavailable when libAntimony is compiled with the '-NSBML' flag. + * Also note that by default, function definitions are removed. * * @param model The model, in SBML format. * @param location The location of the file (i.e. "file1.xml" or "/home/user/sbml/models/file.xml") * * @see getLastError() + * @see setRemoveFunctionDefinitions() */ LIB_EXTERN long loadSBMLStringWithLocation(const char* model, const char* location); #endif @@ -223,6 +229,7 @@ LIB_EXTERN void clearDirectories(); /** * Sets whether to remove function definitions on import from SBML. + * By default, is set to 'true'. */ LIB_EXTERN void setRemoveFunctionDefinitions(bool removeFunctionDefinitions); diff --git a/src/test/test-data/BIOMD0000000118.txt b/src/test/test-data/BIOMD0000000118.txt index 3b0dc7d4..8b19950a 100644 --- a/src/test/test-data/BIOMD0000000118.txt +++ b/src/test/test-data/BIOMD0000000118.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 function GAMMA(VV, theta, sigma) 1/(1 + exp(-(VV - theta)/sigma)); end diff --git a/src/test/test-data/BIOMD0000000696.txt b/src/test/test-data/BIOMD0000000696.txt index 230bec0e..ba00a07b 100644 --- a/src/test/test-data/BIOMD0000000696.txt +++ b/src/test/test-data/BIOMD0000000696.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *Boada2016___Incoherent_type_1_feed_forward_loop__I1_FFL() // Compartments and Species: diff --git a/src/test/test-data/SBO_compartment_rt.txt b/src/test/test-data/SBO_compartment_rt.txt index 893bc833..bfcf1567 100644 --- a/src/test/test-data/SBO_compartment_rt.txt +++ b/src/test/test-data/SBO_compartment_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Compartments and Species: compartment a; diff --git a/src/test/test-data/SBO_event_rt.txt b/src/test/test-data/SBO_event_rt.txt index c8fc6464..8910d8b7 100644 --- a/src/test/test-data/SBO_event_rt.txt +++ b/src/test/test-data/SBO_event_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Events: E0: at time > 3: b = 4; diff --git a/src/test/test-data/SBO_function_rt.txt b/src/test/test-data/SBO_function_rt.txt index ce0cf781..9cef8757 100644 --- a/src/test/test-data/SBO_function_rt.txt +++ b/src/test/test-data/SBO_function_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 function foo() 3; end diff --git a/src/test/test-data/SBO_localvar_rt.txt b/src/test/test-data/SBO_localvar_rt.txt index 2f6bb658..965624b0 100644 --- a/src/test/test-data/SBO_localvar_rt.txt +++ b/src/test/test-data/SBO_localvar_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/SBO_module_rt.txt b/src/test/test-data/SBO_module_rt.txt index 49a5acec..d22b3946 100644 --- a/src/test/test-data/SBO_module_rt.txt +++ b/src/test/test-data/SBO_module_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() end diff --git a/src/test/test-data/SBO_param2_rt.txt b/src/test/test-data/SBO_param2_rt.txt index 83bc0ffb..8467aa81 100644 --- a/src/test/test-data/SBO_param2_rt.txt +++ b/src/test/test-data/SBO_param2_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/SBO_param_rt.txt b/src/test/test-data/SBO_param_rt.txt index b7b7a282..8b642efa 100644 --- a/src/test/test-data/SBO_param_rt.txt +++ b/src/test/test-data/SBO_param_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/SBO_reaction_rt.txt b/src/test/test-data/SBO_reaction_rt.txt index b17519b9..3ebf09a5 100644 --- a/src/test/test-data/SBO_reaction_rt.txt +++ b/src/test/test-data/SBO_reaction_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Compartments and Species: species A; diff --git a/src/test/test-data/SBO_species_rt.txt b/src/test/test-data/SBO_species_rt.txt index 7b176627..b05e266f 100644 --- a/src/test/test-data/SBO_species_rt.txt +++ b/src/test/test-data/SBO_species_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Compartments and Species: species a; diff --git a/src/test/test-data/SBO_submodel_rt.txt b/src/test/test-data/SBO_submodel_rt.txt index 5c64de9d..8f089c16 100644 --- a/src/test/test-data/SBO_submodel_rt.txt +++ b/src/test/test-data/SBO_submodel_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model foo() end diff --git a/src/test/test-data/SBO_submodel_shadowed_rt.txt b/src/test/test-data/SBO_submodel_shadowed_rt.txt index a45de965..370ee915 100644 --- a/src/test/test-data/SBO_submodel_shadowed_rt.txt +++ b/src/test/test-data/SBO_submodel_shadowed_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model foo() // Variable initializations: diff --git a/src/test/test-data/algrule_id_rt.txt b/src/test/test-data/algrule_id_rt.txt index cd4a3d0e..8040f1a4 100644 --- a/src/test/test-data/algrule_id_rt.txt +++ b/src/test/test-data/algrule_id_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Algebraic Rules: alg1: 0 = x - 2; diff --git a/src/test/test-data/algrule_idname_rt.txt b/src/test/test-data/algrule_idname_rt.txt index 31b50196..0b7f48e2 100644 --- a/src/test/test-data/algrule_idname_rt.txt +++ b/src/test/test-data/algrule_idname_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Algebraic Rules: alg1: 0 = x - 2; diff --git a/src/test/test-data/algrule_rt.txt b/src/test/test-data/algrule_rt.txt index 2b6806b0..d888c70b 100644 --- a/src/test/test-data/algrule_rt.txt +++ b/src/test/test-data/algrule_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Algebraic Rules: _alg0: 0 = x - 2; diff --git a/src/test/test-data/autopromoted_units_rt.txt b/src/test/test-data/autopromoted_units_rt.txt index 4691fdd1..fe276d28 100644 --- a/src/test/test-data/autopromoted_units_rt.txt +++ b/src/test/test-data/autopromoted_units_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model foo(p) // Variable initializations: diff --git a/src/test/test-data/coefficientOfVariation_rt.txt b/src/test/test-data/coefficientOfVariation_rt.txt index 4d398f67..ece5305a 100644 --- a/src/test/test-data/coefficientOfVariation_rt.txt +++ b/src/test/test-data/coefficientOfVariation_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/confidenceInterval_rt.txt b/src/test/test-data/confidenceInterval_rt.txt index 08cbd46b..4c262e96 100644 --- a/src/test/test-data/confidenceInterval_rt.txt +++ b/src/test/test-data/confidenceInterval_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/created_element_rt.txt b/src/test/test-data/created_element_rt.txt index 57170add..0a646001 100644 --- a/src/test/test-data/created_element_rt.txt +++ b/src/test/test-data/created_element_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/created_model_parts_rt.txt b/src/test/test-data/created_model_parts_rt.txt index 22eb6f9f..dc17d771 100644 --- a/src/test/test-data/created_model_parts_rt.txt +++ b/src/test/test-data/created_model_parts_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/created_model_rt.txt b/src/test/test-data/created_model_rt.txt index 22eb6f9f..dc17d771 100644 --- a/src/test/test-data/created_model_rt.txt +++ b/src/test/test-data/created_model_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/creator_blank_model_rt.txt b/src/test/test-data/creator_blank_model_rt.txt index 80637806..06eab890 100644 --- a/src/test/test-data/creator_blank_model_rt.txt +++ b/src/test/test-data/creator_blank_model_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/creator_one_element_rt.txt b/src/test/test-data/creator_one_element_rt.txt index 6f2f4917..c82f8368 100644 --- a/src/test/test-data/creator_one_element_rt.txt +++ b/src/test/test-data/creator_one_element_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/creator_one_model_rt.txt b/src/test/test-data/creator_one_model_rt.txt index f4b3a359..8015083b 100644 --- a/src/test/test-data/creator_one_model_rt.txt +++ b/src/test/test-data/creator_one_model_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/creator_two_model_rt.txt b/src/test/test-data/creator_two_model_rt.txt index 5d607937..ed8b01a2 100644 --- a/src/test/test-data/creator_two_model_rt.txt +++ b/src/test/test-data/creator_two_model_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/credibleInterval_rt.txt b/src/test/test-data/credibleInterval_rt.txt index 6a9ef3ee..b0e84bc1 100644 --- a/src/test/test-data/credibleInterval_rt.txt +++ b/src/test/test-data/credibleInterval_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; x = ; diff --git a/src/test/test-data/default_compartment.txt b/src/test/test-data/default_compartment.txt index d16c276c..3980c57d 100644 --- a/src/test/test-data/default_compartment.txt +++ b/src/test/test-data/default_compartment.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *def_comp() // Compartments and Species: diff --git a/src/test/test-data/distribution_rt.txt b/src/test/test-data/distribution_rt.txt index ac063b7f..8a9caaaa 100644 --- a/src/test/test-data/distribution_rt.txt +++ b/src/test/test-data/distribution_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; x = ; diff --git a/src/test/test-data/encodes_rt.txt b/src/test/test-data/encodes_rt.txt index 88eeaf38..8c4c3466 100644 --- a/src/test/test-data/encodes_rt.txt +++ b/src/test/test-data/encodes_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/externalParameter1_rt.txt b/src/test/test-data/externalParameter1_rt.txt index e4ba8866..6014db5f 100644 --- a/src/test/test-data/externalParameter1_rt.txt +++ b/src/test/test-data/externalParameter1_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/externalParameter2_rt.txt b/src/test/test-data/externalParameter2_rt.txt index 2f21ad3e..920c605d 100644 --- a/src/test/test-data/externalParameter2_rt.txt +++ b/src/test/test-data/externalParameter2_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; x = ; diff --git a/src/test/test-data/externalParameter3_rt.txt b/src/test/test-data/externalParameter3_rt.txt index 442e1732..96a77a41 100644 --- a/src/test/test-data/externalParameter3_rt.txt +++ b/src/test/test-data/externalParameter3_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; x = ; diff --git a/src/test/test-data/from-libsbml/CompTest.txt b/src/test/test-data/from-libsbml/CompTest.txt index 14617903..026247dd 100644 --- a/src/test/test-data/from-libsbml/CompTest.txt +++ b/src/test/test-data/from-libsbml/CompTest.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Warnings from automatic translation: // Unable to create port constraint__constraint0 in model CompModel because Constraint elements do not have IDs in SBML, and therefore cannot be made into ports in Antimony. diff --git a/src/test/test-data/from-libsbml/QTPop.txt b/src/test/test-data/from-libsbml/QTPop.txt index 387f7aaa..8a10f0a1 100644 --- a/src/test/test-data/from-libsbml/QTPop.txt +++ b/src/test/test-data/from-libsbml/QTPop.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 function get2DArrayElement(a, b, c) a; end diff --git a/src/test/test-data/from-libsbml/comp.txt b/src/test/test-data/from-libsbml/comp.txt index ebea430f..9f42f59e 100644 --- a/src/test/test-data/from-libsbml/comp.txt +++ b/src/test/test-data/from-libsbml/comp.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/exchangetest.txt b/src/test/test-data/from-libsbml/exchangetest.txt index dbd88fba..6fbd97d0 100644 --- a/src/test/test-data/from-libsbml/exchangetest.txt +++ b/src/test/test-data/from-libsbml/exchangetest.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *testmod() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/replace_rules_and_constraints.txt b/src/test/test-data/from-libsbml/replace_rules_and_constraints.txt index 36f95ad4..89a3f1d7 100644 --- a/src/test/test-data/from-libsbml/replace_rules_and_constraints.txt +++ b/src/test/test-data/from-libsbml/replace_rules_and_constraints.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Warnings from automatic translation: // Unable to create port rule__iBioSim7 in model CompModel because RateRule elements only exist as part of other Antimony elements, and do not function as their own separate entities which may be flagged as a port. diff --git a/src/test/test-data/from-libsbml/test22.txt b/src/test/test-data/from-libsbml/test22.txt index 3e60b6ab..f39e8276 100644 --- a/src/test/test-data/from-libsbml/test22.txt +++ b/src/test/test-data/from-libsbml/test22.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test23.txt b/src/test/test-data/from-libsbml/test23.txt index 4091a524..08752ad4 100644 --- a/src/test/test-data/from-libsbml/test23.txt +++ b/src/test/test-data/from-libsbml/test23.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test24.txt b/src/test/test-data/from-libsbml/test24.txt index c91bd61b..2a318017 100644 --- a/src/test/test-data/from-libsbml/test24.txt +++ b/src/test/test-data/from-libsbml/test24.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test25.txt b/src/test/test-data/from-libsbml/test25.txt index 10957169..bb1e98a4 100644 --- a/src/test/test-data/from-libsbml/test25.txt +++ b/src/test/test-data/from-libsbml/test25.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test27.txt b/src/test/test-data/from-libsbml/test27.txt index 983933c8..43e7b33c 100644 --- a/src/test/test-data/from-libsbml/test27.txt +++ b/src/test/test-data/from-libsbml/test27.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Assignment Rules: diff --git a/src/test/test-data/from-libsbml/test28.txt b/src/test/test-data/from-libsbml/test28.txt index 6bd49bd0..eb93a659 100644 --- a/src/test/test-data/from-libsbml/test28.txt +++ b/src/test/test-data/from-libsbml/test28.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test39.txt b/src/test/test-data/from-libsbml/test39.txt index 583dc7d9..ad938430 100644 --- a/src/test/test-data/from-libsbml/test39.txt +++ b/src/test/test-data/from-libsbml/test39.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test44.txt b/src/test/test-data/from-libsbml/test44.txt index 5103c48e..205cae2a 100644 --- a/src/test/test-data/from-libsbml/test44.txt +++ b/src/test/test-data/from-libsbml/test44.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test45.txt b/src/test/test-data/from-libsbml/test45.txt index f0dbfbbb..359550e8 100644 --- a/src/test/test-data/from-libsbml/test45.txt +++ b/src/test/test-data/from-libsbml/test45.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Rate Rules: diff --git a/src/test/test-data/from-libsbml/test46.txt b/src/test/test-data/from-libsbml/test46.txt index 33789843..abc21468 100644 --- a/src/test/test-data/from-libsbml/test46.txt +++ b/src/test/test-data/from-libsbml/test46.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test47.txt b/src/test/test-data/from-libsbml/test47.txt index 1323c772..78fbfe00 100644 --- a/src/test/test-data/from-libsbml/test47.txt +++ b/src/test/test-data/from-libsbml/test47.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test48.txt b/src/test/test-data/from-libsbml/test48.txt index de0bf6cc..353ebd06 100644 --- a/src/test/test-data/from-libsbml/test48.txt +++ b/src/test/test-data/from-libsbml/test48.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model moddef1() // Compartments and Species: diff --git a/src/test/test-data/from-libsbml/test54.txt b/src/test/test-data/from-libsbml/test54.txt index 8876355b..168df5c8 100644 --- a/src/test/test-data/from-libsbml/test54.txt +++ b/src/test/test-data/from-libsbml/test54.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Warnings from automatic translation: // Unable to process deletion from submodel B in model baz. Deletions of Deletion elements have not been added as a concept in Antimony. diff --git a/src/test/test-data/from-libsbml/test58.txt b/src/test/test-data/from-libsbml/test58.txt index 946af420..6de80f75 100644 --- a/src/test/test-data/from-libsbml/test58.txt +++ b/src/test/test-data/from-libsbml/test58.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Warnings from automatic translation: // Cannot replace stoichiometries in Antimony: all replacedElements and replacedBy children of z in reaction J2 will be ignored. diff --git a/src/test/test-data/from-libsbml/test59.txt b/src/test/test-data/from-libsbml/test59.txt index 7a7d4585..01cb3d1a 100644 --- a/src/test/test-data/from-libsbml/test59.txt +++ b/src/test/test-data/from-libsbml/test59.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Warnings from automatic translation: // Cannot replace stoichiometries in Antimony: all replacedElements and replacedBy children of z in reaction J2 will be ignored. diff --git a/src/test/test-data/from-libsbml/test61.txt b/src/test/test-data/from-libsbml/test61.txt index d4a16b03..80efd40e 100644 --- a/src/test/test-data/from-libsbml/test61.txt +++ b/src/test/test-data/from-libsbml/test61.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Warnings from automatic translation: // Cannot replace stoichiometries in Antimony: all replacedElements and replacedBy children of S1 in reaction R1 will be ignored. diff --git a/src/test/test-data/function_name_rt.txt b/src/test/test-data/function_name_rt.txt index 4888c4ed..95f109b5 100644 --- a/src/test/test-data/function_name_rt.txt +++ b/src/test/test-data/function_name_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 function foo() 3; end diff --git a/src/test/test-data/hasPart_rt.txt b/src/test/test-data/hasPart_rt.txt index c6bd49ee..708dbaac 100644 --- a/src/test/test-data/hasPart_rt.txt +++ b/src/test/test-data/hasPart_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/hasProperty_rt.txt b/src/test/test-data/hasProperty_rt.txt index 970c2f58..89558ca7 100644 --- a/src/test/test-data/hasProperty_rt.txt +++ b/src/test/test-data/hasProperty_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/hasTaxon_rt.txt b/src/test/test-data/hasTaxon_rt.txt index e07c8879..69aca9d9 100644 --- a/src/test/test-data/hasTaxon_rt.txt +++ b/src/test/test-data/hasTaxon_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/hasVersion_rt.txt b/src/test/test-data/hasVersion_rt.txt index db1bcc11..9abf9423 100644 --- a/src/test/test-data/hasVersion_rt.txt +++ b/src/test/test-data/hasVersion_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/identity_rt.txt b/src/test/test-data/identity_rt.txt index c8a7f550..d75a812b 100644 --- a/src/test/test-data/identity_rt.txt +++ b/src/test/test-data/identity_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/interquartileRange_rt.txt b/src/test/test-data/interquartileRange_rt.txt index 06a280ab..f407cba9 100644 --- a/src/test/test-data/interquartileRange_rt.txt +++ b/src/test/test-data/interquartileRange_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; x = ; diff --git a/src/test/test-data/isDescribedBy_rt.txt b/src/test/test-data/isDescribedBy_rt.txt index de92bed1..bb83ee8c 100644 --- a/src/test/test-data/isDescribedBy_rt.txt +++ b/src/test/test-data/isDescribedBy_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/isEncodedBy_rt.txt b/src/test/test-data/isEncodedBy_rt.txt index c3566e1e..61f646cf 100644 --- a/src/test/test-data/isEncodedBy_rt.txt +++ b/src/test/test-data/isEncodedBy_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/isHomologTo_rt.txt b/src/test/test-data/isHomologTo_rt.txt index 2d172407..9310eabc 100644 --- a/src/test/test-data/isHomologTo_rt.txt +++ b/src/test/test-data/isHomologTo_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/isPartOf_rt.txt b/src/test/test-data/isPartOf_rt.txt index 97c28497..7df39f3e 100644 --- a/src/test/test-data/isPartOf_rt.txt +++ b/src/test/test-data/isPartOf_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/isPropertyOf_rt.txt b/src/test/test-data/isPropertyOf_rt.txt index 9c8351d7..5d1cdd68 100644 --- a/src/test/test-data/isPropertyOf_rt.txt +++ b/src/test/test-data/isPropertyOf_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/isVersionOf_rt.txt b/src/test/test-data/isVersionOf_rt.txt index 24f4dd8a..72bc9d78 100644 --- a/src/test/test-data/isVersionOf_rt.txt +++ b/src/test/test-data/isVersionOf_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/kurtosis_rt.txt b/src/test/test-data/kurtosis_rt.txt index 5a9c766d..f5dd58f1 100644 --- a/src/test/test-data/kurtosis_rt.txt +++ b/src/test/test-data/kurtosis_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/mean_rt.txt b/src/test/test-data/mean_rt.txt index 8ef2f246..9c7dbafa 100644 --- a/src/test/test-data/mean_rt.txt +++ b/src/test/test-data/mean_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/median_rt.txt b/src/test/test-data/median_rt.txt index df9d48db..a8298eb1 100644 --- a/src/test/test-data/median_rt.txt +++ b/src/test/test-data/median_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/mode_rt.txt b/src/test/test-data/mode_rt.txt index b4bcdde7..a5867670 100644 --- a/src/test/test-data/mode_rt.txt +++ b/src/test/test-data/mode_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/modified_element_rt.txt b/src/test/test-data/modified_element_rt.txt index d24c9152..99bade4f 100644 --- a/src/test/test-data/modified_element_rt.txt +++ b/src/test/test-data/modified_element_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/modified_model_parts_rt.txt b/src/test/test-data/modified_model_parts_rt.txt index 57b3cc32..3ff85392 100644 --- a/src/test/test-data/modified_model_parts_rt.txt +++ b/src/test/test-data/modified_model_parts_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/modified_model_rt.txt b/src/test/test-data/modified_model_rt.txt index 57b3cc32..3ff85392 100644 --- a/src/test/test-data/modified_model_rt.txt +++ b/src/test/test-data/modified_model_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/module_name_rt.txt b/src/test/test-data/module_name_rt.txt index 10418abe..76b84be3 100644 --- a/src/test/test-data/module_name_rt.txt +++ b/src/test/test-data/module_name_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/namedstoich_assignment_rt.txt b/src/test/test-data/namedstoich_assignment_rt.txt index f042c67b..44d659a6 100644 --- a/src/test/test-data/namedstoich_assignment_rt.txt +++ b/src/test/test-data/namedstoich_assignment_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Compartments and Species: species a; diff --git a/src/test/test-data/namedstoich_basic_rt.txt b/src/test/test-data/namedstoich_basic_rt.txt index 0effeed8..9fa3f7f4 100644 --- a/src/test/test-data/namedstoich_basic_rt.txt +++ b/src/test/test-data/namedstoich_basic_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Compartments and Species: species a; diff --git a/src/test/test-data/namedstoich_rate_rt.txt b/src/test/test-data/namedstoich_rate_rt.txt index 44f6a8bf..d096db1b 100644 --- a/src/test/test-data/namedstoich_rate_rt.txt +++ b/src/test/test-data/namedstoich_rate_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Compartments and Species: species a; diff --git a/src/test/test-data/namedstoich_value_rt.txt b/src/test/test-data/namedstoich_value_rt.txt index 8b3c7cd7..e4559210 100644 --- a/src/test/test-data/namedstoich_value_rt.txt +++ b/src/test/test-data/namedstoich_value_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Compartments and Species: species a; diff --git a/src/test/test-data/negparen_rt.txt b/src/test/test-data/negparen_rt.txt index 4e4f0714..97fdbd24 100644 --- a/src/test/test-data/negparen_rt.txt +++ b/src/test/test-data/negparen_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = -(x + 2); x = ; diff --git a/src/test/test-data/notes_element_noxml_rt.txt b/src/test/test-data/notes_element_noxml_rt.txt index ea6b053d..99f0dec3 100644 --- a/src/test/test-data/notes_element_noxml_rt.txt +++ b/src/test/test-data/notes_element_noxml_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/notes_element_xml_rt.txt b/src/test/test-data/notes_element_xml_rt.txt index 3c5747c7..2950affa 100644 --- a/src/test/test-data/notes_element_xml_rt.txt +++ b/src/test/test-data/notes_element_xml_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/notes_model_noxml_rt.txt b/src/test/test-data/notes_model_noxml_rt.txt index 4496b732..ddcb7b45 100644 --- a/src/test/test-data/notes_model_noxml_rt.txt +++ b/src/test/test-data/notes_model_noxml_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *foo() // Variable initializations: diff --git a/src/test/test-data/notes_model_xml_internal_rt.txt b/src/test/test-data/notes_model_xml_internal_rt.txt index 48c8b9d3..ff12db49 100644 --- a/src/test/test-data/notes_model_xml_internal_rt.txt +++ b/src/test/test-data/notes_model_xml_internal_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *MorrisonAllegra() // Variable initializations: diff --git a/src/test/test-data/notes_model_xml_rt.txt b/src/test/test-data/notes_model_xml_rt.txt index 955bb6eb..8b1ac7b9 100644 --- a/src/test/test-data/notes_model_xml_rt.txt +++ b/src/test/test-data/notes_model_xml_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *MorrisonAllegra() // Variable initializations: diff --git a/src/test/test-data/occursIn_rt.txt b/src/test/test-data/occursIn_rt.txt index e9558086..b016da03 100644 --- a/src/test/test-data/occursIn_rt.txt +++ b/src/test/test-data/occursIn_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = 3; diff --git a/src/test/test-data/range_rt.txt b/src/test/test-data/range_rt.txt index d5f618f7..ba4632f0 100644 --- a/src/test/test-data/range_rt.txt +++ b/src/test/test-data/range_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/same_unit_name.txt b/src/test/test-data/same_unit_name.txt index 50b17945..0adcabae 100644 --- a/src/test/test-data/same_unit_name.txt +++ b/src/test/test-data/same_unit_name.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 model *same_units() // Variable initializations: diff --git a/src/test/test-data/sampleSize_rt.txt b/src/test/test-data/sampleSize_rt.txt index c7129fed..2fe03860 100644 --- a/src/test/test-data/sampleSize_rt.txt +++ b/src/test/test-data/sampleSize_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/skewness_rt.txt b/src/test/test-data/skewness_rt.txt index 73ac89eb..7413d906 100644 --- a/src/test/test-data/skewness_rt.txt +++ b/src/test/test-data/skewness_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/standardDeviation_rt.txt b/src/test/test-data/standardDeviation_rt.txt index 5a2f63cc..5ca7f1c3 100644 --- a/src/test/test-data/standardDeviation_rt.txt +++ b/src/test/test-data/standardDeviation_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/standardError_rt.txt b/src/test/test-data/standardError_rt.txt index e538ec45..6cbc1d99 100644 --- a/src/test/test-data/standardError_rt.txt +++ b/src/test/test-data/standardError_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/variance_rt.txt b/src/test/test-data/variance_rt.txt index ce006dbe..6dc3baa3 100644 --- a/src/test/test-data/variance_rt.txt +++ b/src/test/test-data/variance_rt.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: a = ; diff --git a/src/test/test-data/volume.txt b/src/test/test-data/volume.txt index 4ed0951c..7e8942d0 100644 --- a/src/test/test-data/volume.txt +++ b/src/test/test-data/volume.txt @@ -1,4 +1,4 @@ -// Created by libAntimony v2.14.0 +// Created by libAntimony v2.15.0 // Variable initializations: volume_ = 1; A = volume_*5; From 8f7bc0a90bc35ec0a0328012c50ce521090f502c Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 15:52:46 -0700 Subject: [PATCH 20/25] Update main.yml Rename unix wheel files. --- .github/workflows/main.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 25c2f712..054d5a5e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -351,7 +351,9 @@ jobs: if [ "${{ matrix.platform.os_type }}" == 'macos' ]; then mv antimony*.whl $(echo antimony*.whl | sed "s/universal2/${host_architecture}/g") elif [ "${{ matrix.platform.os_type }}" == 'manylinux' ]; then - mv antimony*.whl $(echo antimony*.whl | sed "s/linux/manylinux2014/g") + mv antimony*.whl $(echo antimony*.whl | sed "s/linux/manylinux_2_28/g") + elif [ "${{ matrix.platform.os_type }}" == 'ubuntu' ]; then + mv antimony*.whl $(echo antimony*.whl | sed "s/linux/ubuntu/g") fi python_version_number=$(echo "${{ matrix.python_version }}" | tr -d '.') mv antimony*.whl $(echo antimony*.whl | sed "s/cp${python_version_number}-cp${python_version_number}/py3-none/g") @@ -371,4 +373,4 @@ jobs: uses: actions/upload-artifact@v1 with: name: ${{env.python_wheel_artifacts_name}} - path: ${{env.python_wheel_artifacts_file}} \ No newline at end of file + path: ${{env.python_wheel_artifacts_file}} From ec93bd50559ad7275624a8f00887af1c9a8026ae Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 16:34:49 -0700 Subject: [PATCH 21/25] Update to later versions of github actions. --- .github/workflows/main.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 054d5a5e..d5a9b150 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -91,11 +91,11 @@ jobs: steps: - name: Checkout Antimony - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set MSVC as the default compiler on Windows if: matrix.platform.os_type == 'windows' - uses: ilammy/msvc-dev-cmd@v1.6.0 + uses: ilammy/msvc-dev-cmd@v1 - name: Upgrade gcc on Linux if: matrix.platform.os_type == 'manylinux' @@ -116,7 +116,7 @@ jobs: fi - name: Setup Ninja - uses: seanmiddleditch/gha-setup-ninja@v4 + uses: seanmiddleditch/gha-setup-ninja@v5 - name: Get Host Architecture shell: bash @@ -168,7 +168,7 @@ jobs: - name: Cache ccache files on non-Windows if: matrix.platform.os_type != 'windows' - uses: actions/cache@v3 + uses: actions/cache@v4 with: path: ${RUNNER_WORKSPACE}/.ccache key: @@ -322,7 +322,7 @@ jobs: echo "artifacts_path=${RUNNER_WORKSPACE}/install-antimony" >> "${GITHUB_ENV}" - name: Upload Antimony binaries - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: name: ${{env.artifacts_name}} path: ${{env.artifacts_path}} From 44052442e6530c18293cfdb0d937434301ee5169 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 16:38:55 -0700 Subject: [PATCH 22/25] Don't use set-output. --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d5a9b150..be08c93b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -156,7 +156,7 @@ jobs: shell: cmake -P {0} run: | string(TIMESTAMP current_date "%Y-%m-%d-%H;%M;%S" UTC) - message("::set-output name=timestamp::${current_date}") + message("timestamp=${current_date}" >> $GITHUB_OUTPUT) - name: Set ccache cache directory on non-Windows if: matrix.platform.os_type != 'windows' From 55c131a9f667edfe10b0787964ae247347ed15f0 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 16:50:46 -0700 Subject: [PATCH 23/25] upload-artifact@v4 --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index be08c93b..8b9fb511 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -370,7 +370,7 @@ jobs: - name: Upload Python wheel artifacts if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' - uses: actions/upload-artifact@v1 + uses: actions/upload-artifact@v4 with: name: ${{env.python_wheel_artifacts_name}} path: ${{env.python_wheel_artifacts_file}} From 39d7bd17e257c0e32f88c3100ab59fd3009e593a Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 16:55:58 -0700 Subject: [PATCH 24/25] Another upload-artifact v4 update. --- .github/workflows/main.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 8b9fb511..956142a9 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -365,8 +365,7 @@ jobs: cd ${RUNNER_WORKSPACE} python_wheel_file_name=$(ls install-antimony/bindings/python/dist | grep '^antimony') echo "python_wheel_artifacts_name=${python_wheel_file_name}" >> "${GITHUB_ENV}" - # we need to use relative path as actions/upload-artifact@v1 cannot find it on containerized runners - echo "python_wheel_artifacts_file=../install-antimony/bindings/python/dist/$python_wheel_file_name" >> "${GITHUB_ENV}" + echo "artifacts_path=${RUNNER_WORKSPACE}/install-antimony/bindings/python/dist/$python_wheel_file_name" >> "${GITHUB_ENV}" - name: Upload Python wheel artifacts if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON' From ef7cc76749461cda2218d6cfc00bf30aa99785d9 Mon Sep 17 00:00:00 2001 From: Lucian Smith Date: Tue, 16 Jul 2024 16:59:02 -0700 Subject: [PATCH 25/25] Another upload-artifact v4 update. --- .github/workflows/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 956142a9..a687c57e 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -365,7 +365,7 @@ jobs: cd ${RUNNER_WORKSPACE} python_wheel_file_name=$(ls install-antimony/bindings/python/dist | grep '^antimony') echo "python_wheel_artifacts_name=${python_wheel_file_name}" >> "${GITHUB_ENV}" - echo "artifacts_path=${RUNNER_WORKSPACE}/install-antimony/bindings/python/dist/$python_wheel_file_name" >> "${GITHUB_ENV}" + echo "python_wheel_artifacts_file=${RUNNER_WORKSPACE}/install-antimony/bindings/python/dist/$python_wheel_file_name" >> "${GITHUB_ENV}" - name: Upload Python wheel artifacts if: matrix.platform.build_type == 'Release' && matrix.platform.build_python == 'ON'