Skip to content

Commit 0d5f604

Browse files
authored
Merge pull request #478 from sbmlteam/development
Pull develop into branch
2 parents aa2b409 + a0ce444 commit 0d5f604

File tree

144 files changed

+16535
-3719
lines changed

Some content is hidden

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

144 files changed

+16535
-3719
lines changed

.github/workflows/brief.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ on:
99
- "VERSION.txt"
1010
- "!.github/**"
1111
- ".github/workflows/brief.yml"
12+
13+
1214
env:
1315
BUILD_TYPE: Release
1416

@@ -103,6 +105,7 @@ jobs:
103105
shell: bash
104106
run: |
105107
brew install check swig ccache
108+
brew install --cask mono-mdk
106109
echo PYTHON_LINKING_OPTION="-DPYTHON_USE_DYNAMIC_LOOKUP=ON" >> "${GITHUB_ENV}"
107110
108111
### setup ccache, not on Windows ###

.github/workflows/extensive.yml

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,8 +138,15 @@ jobs:
138138
if: matrix.platform == 'ubuntu-latest'
139139
shell: bash
140140
run: |
141-
sudo apt-get update
141+
# add mono using instructions from: https://www.mono-project.com/download/stable/#download-lin
142+
sudo apt install ca-certificates gnupg
143+
sudo gpg --homedir /tmp --no-default-keyring --keyring /usr/share/keyrings/mono-official-archive-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
144+
echo "deb [signed-by=/usr/share/keyrings/mono-official-archive-keyring.gpg] https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
145+
sudo apt update
146+
sudo apt install -y mono-devel
147+
142148
sudo apt-get install -y check libxerces-c-dev expat ccache
149+
143150
echo PYTHON_LINKING_OPTION="-DPYTHON_USE_DYNAMIC_LOOKUP=ON" >> "${GITHUB_ENV}"
144151
git clone https://github.com/libexpat/libexpat
145152
cmake -G Ninja -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DEXPAT_BUILD_TESTS=OFF -DEXPAT_BUILD_TOOLS=OFF -DEXPAT_BUILD_EXAMPLES=OFF -DEXPAT_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=./dependencies -B libexpat -S libexpat/expat
@@ -153,6 +160,7 @@ jobs:
153160
shell: bash
154161
run: |
155162
brew install check swig xerces-c expat ccache
163+
brew install --cask mono-mdk
156164
echo PYTHON_LINKING_OPTION="-DPYTHON_USE_DYNAMIC_LOOKUP=ON" >> "${GITHUB_ENV}"
157165
158166
- name: Unix R options

CMakeLists.txt

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
###############################################################################
22
#
3-
# Description : CMake build script for libSBML
3+
# Description : CMake build script for libSBML
44
# Original author(s): Frank Bergmann <fbergman@caltech.edu>
55
# Organization : California Institute of Technology
66
#
@@ -595,6 +595,10 @@ if(WITH_CSHARP)
595595
endif()
596596
endif()
597597

598+
if(NOT CSHARP_COMPILER)
599+
message(FATAL_ERROR "CSHARP_COMPILER is not found, please ensure that gmcs, csc, or mcs is installed.")
600+
endif()
601+
598602
endif(WITH_CSHARP)
599603

600604

@@ -640,14 +644,14 @@ endif(WITH_CHECK)
640644
# documentation to be installed in PREFIX/${MISC_PREFIX}.
641645
#
642646

643-
set( MISC_PREFIX )
647+
644648
if(UNIX OR CYGWIN)
645649
set(PATH_SEP "/")
646650
set(FILE_SEP ":")
647-
set( MISC_PREFIX "${CMAKE_INSTALL_DATADIR}/libsbml/" )
651+
set(MISC_PREFIX "${CMAKE_INSTALL_DATADIR}/libsbml/" CACHE PATH "bindings, examples and documentation path")
648652
set(LIBSBML_LIBRARY sbml)
649653
else()
650-
set( MISC_PREFIX ".\\" )
654+
set(MISC_PREFIX ".\\" CACHE PATH "bindings, examples and documentation path")
651655
set(PATH_SEP "\\")
652656
set(FILE_SEP ";")
653657
if(MINGW)

CMakeModules/FindZLIB.cmake

Lines changed: 26 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Copyright (C) 2022 by Pedro Mendes, Rector and Visitors of the
1+
# Copyright (C) 2022 - 2025 by Pedro Mendes, Rector and Visitors of the
22
# University of Virginia, University of Heidelberg, and University
33
# of Connecticut School of Medicine.
44
# All rights reserved.
@@ -31,38 +31,43 @@ if (NOT (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) OR NOT ZLIB_FOUND)
3131
find_path(ZLIB_INCLUDE_DIR zlib.h zlib/zlib.h
3232
PATHS $ENV{ZLIB_DIR}/include
3333
$ENV{ZLIB_DIR}
34-
${${_PROJECT_DEPENDENCY_DIR}}/include
34+
${${_PROJECT_DEPENDENCY_DIR}}/include
3535
~/Library/Frameworks
3636
/Library/Frameworks
3737
/sw/include # Fink
3838
/opt/local/include # MacPorts
3939
/opt/csw/include # Blastwave
4040
/opt/include
4141
/usr/freeware/include
42-
NO_DEFAULT_PATH)
42+
CMAKE_FIND_ROOT_PATH_BOTH
43+
NO_DEFAULT_PATH)
4344

4445
if (NOT ZLIB_INCLUDE_DIR)
45-
find_path(ZLIB_INCLUDE_DIR zlib.h zlib/zlib.h)
46+
find_path(ZLIB_INCLUDE_DIR zlib.h zlib/zlib.h
47+
CMAKE_FIND_ROOT_PATH_BOTH )
4648
endif ()
4749

4850
find_library(ZLIB_LIBRARY
49-
NAMES zdll.lib z zlib.lib libzlib zlib libzlib.a
51+
NAMES zdll.lib z zlib.lib libzlib zlib libzlib.a libzdll.a
5052
PATHS $ENV{ZLIB_DIR}/lib
5153
$ENV{ZLIB_DIR}/lib-dbg
5254
$ENV{ZLIB_DIR}
53-
${${_PROJECT_DEPENDENCY_DIR}}/${CMAKE_INSTALL_LIBDIR}
54-
${${_PROJECT_DEPENDENCY_DIR}}
55+
${${_PROJECT_DEPENDENCY_DIR}}/${CMAKE_INSTALL_LIBDIR}
56+
${${_PROJECT_DEPENDENCY_DIR}}/lib
57+
${${_PROJECT_DEPENDENCY_DIR}}
5558
~/Library/Frameworks
5659
/Library/Frameworks
5760
/sw/lib # Fink
5861
/opt/local/lib # MacPorts
5962
/opt/csw/lib # Blastwave
6063
/opt/lib
6164
/usr/freeware/lib64
65+
CMAKE_FIND_ROOT_PATH_BOTH
6266
NO_DEFAULT_PATH)
6367

6468
if (NOT ZLIB_LIBRARY)
65-
find_library(ZLIB_LIBRARY NAMES zdll.lib z zlib.lib libzlib zlib libzlib.a)
69+
find_library(ZLIB_LIBRARY NAMES zdll.lib z zlib.lib libzlib zlib libzlib.a libzdll.a
70+
CMAKE_FIND_ROOT_PATH_BOTH )
6671
endif ()
6772

6873
if (NOT WIN32)
@@ -76,24 +81,22 @@ if (NOT (ZLIB_INCLUDE_DIR AND ZLIB_LIBRARY) OR NOT ZLIB_FOUND)
7681
set(ZLIB_VERSION ${PC_ZLIB_VERSION} CACHE STRING "Zlib Version found" )
7782
endif (PC_ZLIB_FOUND)
7883
endif (NOT WIN32)
79-
84+
85+
8086
# make sure that we have a valid zip library
87+
if (ZLIB_CHECK_FOR_SYMBOLS)
8188
file(TO_CMAKE_PATH "${ZLIB_LIBRARY}" LIBZ_CMAKE_PATH)
82-
include (CheckLibraryExists)
83-
check_library_exists("${LIBZ_CMAKE_PATH}" "gzopen" "" LIBZ_CMAKE_PATH)
84-
if(NOT LIBZ_FOUND_SYMBOL)
85-
# this is odd, but on windows this check always fails! must be a
86-
# bug in the current cmake version so for now only issue this
87-
# warning on linux
88-
if(UNIX)
89-
message(WARNING
90-
"The chosen zlib library does not appear to be valid because it is
91-
missing certain required symbols. Please check that ${LIBZ_LIBRARY} is
92-
the correct zlib library. For details about the error, please see
93-
${LIBSBML_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/CMakeError.log")
94-
endif()
89+
include(CheckLibraryExists)
90+
check_library_exists("${LIBZ_CMAKE_PATH}" "gzopen" "" LIBZ_FOUND_SYMBOL)
91+
92+
if(NOT LIBZ_FOUND_SYMBOL AND UNIX)
93+
message(WARNING
94+
"The chosen zlib library does not appear to be valid because it is
95+
missing certain required symbols. Please check that ${ZLIB_LIBRARY} is
96+
the correct zlib library. For details about the error, please see
97+
CMakeError.log or CMakeConfigureLog.yaml in the build directory.")
9598
endif()
96-
99+
endif() # Check for symbols
97100

98101
mark_as_advanced(ZLIB_INCLUDE_DIR ZLIB_LIBRARY)
99102

NEWS.txt

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,31 @@
11
 libSBML NEWS -- History of user-visible changes
22

33
====================================================================
4-
5.20.4
4+
5.21.1 (2026-03-05)
5+
====================================================================
6+
7+
This release fixes an issue with the python bindings in the pip
8+
package `python-libsbml`.
9+
10+
====================================================================
11+
5.21.0 (2026-01-09)
12+
====================================================================
13+
14+
This release further improves the ODE to Reaction converter,
15+
improves the ASTNode::derivative function to support all allowed
16+
math constructs, and resolves a number of build and stability
17+
issues.
18+
19+
====================================================================
20+
5.20.5 (2025-05-05)
21+
====================================================================
22+
23+
This release adds support for retrieving / setting notes via Markdown
24+
(using the 3rdParty libraries html2md and maddy). Additionally, a
25+
number of stability and build issues were resolved.
26+
27+
====================================================================
28+
5.20.4 (2024-08-07)
529
====================================================================
630

731
This is mostly a bug fix release enhancing stability and improving
@@ -13,7 +37,7 @@ performance when validating models. Main points:
1337

1438

1539
====================================================================
16-
5.20.2
40+
5.20.2 (2023-09-21)
1741
====================================================================
1842

1943
This is mostly a bug fix release enhancing stability when validating

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ libSBML<img width="22%" align="right" src=".graphics/libsbml-logo-and-name.svg">
44
LibSBML is an open-source library for working with SBML (the Systems Biology Markup Language). It is written in C++ and provides language bindings for many other programming languages.
55

66
[![License](https://img.shields.io/badge/License-LGPL-blue.svg?style=flat-square)](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html)
7-
[![Stable release](https://img.shields.io/badge/Stable_release-5.19.0-brightgreen.svg?style=flat-square)](https://sourceforge.net/projects/sbml/files/libsbml/5.19.0/stable/)
8-
[![Experimental release](https://img.shields.io/badge/Experimental_release-5.19.0-b44e88.svg?style=flat-square)](https://sourceforge.net/projects/sbml/files/libsbml/5.19.0/experimental/)
9-
[![Pivotal Tracker](https://img.shields.io/badge/Project_management-Pivotal-d07a3e.svg?style=flat-square)](https://www.pivotaltracker.com/n/projects/248655)
7+
[![Stable release](https://img.shields.io/badge/Stable_release-5.21.0-brightgreen.svg?style=flat-square)](https://github.com/sbmlteam/libsbml/releases/tag/v5.21.0)
8+
[![Experimental release](https://img.shields.io/badge/Experimental_release-5.21.0-b44e88.svg?style=flat-square)](https://github.com/sbmlteam/libsbml/releases/tag/v5.21.0)
9+
[![GitHub Issues or Pull Requests](https://img.shields.io/github/issues/sbmlteam/libsbml)](https://github.com/sbmlteam/libsbml/issues)
1010
[![Discussion](https://img.shields.io/badge/Discussion-libsbml--development-lightgray.svg?style=flat-square)](https://groups.google.com/g/libsbml-development)
1111
[![Nightly build](https://img.shields.io/github/workflow/status/sbmlteam/libsbml/Nightly%20build%20(binaries)?label=Nightly%20build&style=flat-square)](https://github.com/sbmlteam/libsbml/actions/workflows/store-artefact.yml)
1212

VERSION.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
5.20.4
1+
5.21.1

configure

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
#! /bin/sh
22
# From configure.ac Revision.
33
# Guess values for system-dependent variables and create Makefiles.
4-
# Generated by GNU Autoconf 2.72 for libSBML 5.20.4.
4+
# Generated by GNU Autoconf 2.72 for libSBML 5.21.1.
55
#
66
# Report bugs to <libsbml-team@googlegroups.com>.
77
#
@@ -759,8 +759,8 @@ MAKEFLAGS=
759759
# Identity of this package.
760760
PACKAGE_NAME='libSBML'
761761
PACKAGE_TARNAME='libsbml'
762-
PACKAGE_VERSION='5.20.4'
763-
PACKAGE_STRING='libSBML 5.20.4'
762+
PACKAGE_VERSION='5.21.1'
763+
PACKAGE_STRING='libSBML 5.21.1'
764764
PACKAGE_BUGREPORT='libsbml-team@googlegroups.com'
765765
PACKAGE_URL='http://sbml.org/Software/libSBML'
766766

@@ -1655,7 +1655,7 @@ if test "$ac_init_help" = "long"; then
16551655
# Omit some internal or obsolete options to make the list less imposing.
16561656
# This message is too long to be a string in the A/UX 3.1 sh.
16571657
cat <<_ACEOF
1658-
'configure' configures libSBML 5.20.4 to adapt to many kinds of systems.
1658+
'configure' configures libSBML 5.21.1 to adapt to many kinds of systems.
16591659

16601660
Usage: $0 [OPTION]... [VAR=VALUE]...
16611661

@@ -1721,7 +1721,7 @@ fi
17211721

17221722
if test -n "$ac_init_help"; then
17231723
case $ac_init_help in
1724-
short | recursive ) echo "Configuration of libSBML 5.20.4:";;
1724+
short | recursive ) echo "Configuration of libSBML 5.21.1:";;
17251725
esac
17261726
cat <<\_ACEOF
17271727

@@ -1878,7 +1878,7 @@ fi
18781878
test -n "$ac_init_help" && exit $ac_status
18791879
if $ac_init_version; then
18801880
cat <<\_ACEOF
1881-
libSBML configure 5.20.4
1881+
libSBML configure 5.21.1
18821882
generated by GNU Autoconf 2.72
18831883

18841884
Copyright (C) 2023 Free Software Foundation, Inc.
@@ -2494,7 +2494,7 @@ cat >config.log <<_ACEOF
24942494
This file contains any messages produced by compilers while
24952495
running configure, to aid debugging if configure makes a mistake.
24962496

2497-
It was created by libSBML $as_me 5.20.4, which was
2497+
It was created by libSBML $as_me 5.21.1, which was
24982498
generated by GNU Autoconf 2.72. Invocation command line was
24992499

25002500
$ $0$ac_configure_args_raw
@@ -3497,19 +3497,19 @@ ac_config_headers="$ac_config_headers src/sbml/common/libsbml-package.h"
34973497
ac_config_headers="$ac_config_headers src/sbml/common/libsbml-namespace.h"
34983498

34993499

3500-
LIBSBML_VERSION_NUMERIC=52004
3500+
LIBSBML_VERSION_NUMERIC=52101
35013501

35023502

35033503

35043504
LIBSBML_MAJOR_VERSION=5
35053505

35063506

35073507

3508-
LIBSBML_MINOR_VERSION=20
3508+
LIBSBML_MINOR_VERSION=21
35093509

35103510

35113511

3512-
LIBSBML_REVISION_VERSION=4
3512+
LIBSBML_REVISION_VERSION=1
35133513

35143514

35153515

@@ -29224,7 +29224,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1
2922429224
# report actual input values of CONFIG_FILES etc. instead of their
2922529225
# values after options handling.
2922629226
ac_log="
29227-
This file was extended by libSBML $as_me 5.20.4, which was
29227+
This file was extended by libSBML $as_me 5.21.1, which was
2922829228
generated by GNU Autoconf 2.72. Invocation command line was
2922929229

2923029230
CONFIG_FILES = $CONFIG_FILES
@@ -29289,7 +29289,7 @@ ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\
2928929289
cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
2929029290
ac_cs_config='$ac_cs_config_escaped'
2929129291
ac_cs_version="\\
29292-
libSBML config.status 5.20.4
29292+
libSBML config.status 5.21.1
2929329293
configured by $0, generated by GNU Autoconf 2.72,
2929429294
with options \\"\$ac_cs_config\\"
2929529295

0 commit comments

Comments
 (0)