Releases: sbmlteam/libsbml
Release 5.20.4
This is mostly a bug fix release enhancing stability and improving
performance when validating models. Main points:
- support compilation when using libxml 2.12.0 and later
- improved performance when testing for assignment cycles
- cmake build system honors the BUILD_SHARED_LIB flag if defined
What's Changed
- FIX: support compilation with libxml2 2.12.0 by @mtasaka in #358
-
- ensure expat can be found when crosscompiling by @fbergmann in #368
- Replace deprecated unittest.makeSuite() by @penguinpee in #370
- Disable csharp build on nightly macOS runs by @fbergmann in #371
- add printf style formatting to Rf_error calls by @spotaws in #375
- Assignment cycle optimization by @fbergmann in #377
- Allow FBC objects to be used in both L3v1 and L3v2 core documents. by @luciansmith in #362
- Change model failures to slightly more likely mistake. by @luciansmith in #373
- Enable CMake user option
BUILD_SHARED_LIB
by @Waschina in #366 - Remove all checks for SBML core version when adding package elements. by @luciansmith in #380
- Prepare 5.20.4 release by @fbergmann in #381
New Contributors
- @mtasaka made their first contribution in #358
- @penguinpee made their first contribution in #370
- @spotaws made their first contribution in #375
- @Waschina made their first contribution in #366
Full Changelog: v5.20.2...v5.20.4
v5.20.2
This is mostly a bug fix release enhancing stability when validating
and converting models.
-
New features / improvements
-
Access to error logs from the C API
-
Attributes of the ModelHistory can now be accessed from
const objects. -
The FBC V3 package has been updated to reflect the latest
specification. There are now optional attributesfbc:reaction2
on the FluxObjective andfbc:variable2
on the
UserDefinedConstraintComponent.
-
-
Bug fixes
-
A bug converting / validating models with the 'comp' package
has been fixed. -
A crash when inferring units has been resolved.
-
A fix to the CMake Build system ensures that check for dependencies
is more robust. Thanks to first time contributor @adelhpour -
The type of the FBC V3
coefficient
attribute on the
UserDefinedConstraintComponent has been corrected, it was mistakenly
a double before, now it has been corrected to be a SIdRef as
described in the specification.
-
FILES
Source
libSBML src archive zip
libSBML src archive tar.gz
Documentation
MATLAB bindings for all OS
libSBML-5.20.2-matlab-binaries.tar.gz
libSBML-5.20.2-matlab-binaries.zip
Python bindings
Available as python-libsbml from PyPi.
R bindings
v5.20.1
v5.20.0
The SBML Team with the addition of new members from ARC at UCL is pleased to announce the 5.20.0 release of libSBML.
FILES
Source
libSBML src archive zip
libSBML src archive tar.gz
Documentation
MATLAB bindings for all OS
libSBML-5.20.0-matlab-binaries.tar.gz
libSBML-5.20.0-matlab-binaries.zip
Python bindings
Available as python-libsbml from PyPi.
R bindings
NEWS
Given the length of time since our last release the list of changes
and acknowledgements of contributions is incomplete. We apologise and
offer thanks to anyone who has been involved and those people who have
contributed their spare time to continuing maintenance and development.
-
Addition of support for the SBML Spatial package
- Now that the first official version of the specification for the
SBML Level 3 Spatial package is available, the libSBML API for
'spatial' is now included in the stable release of libSBML.
Thus a CMake build using '-WITH_STABLE_PACKAGES' will now include
the spatial package code.
- Now that the first official version of the specification for the
-
New features
- There is a new converter SBMLRateRuleConverter which will take
a model with RateRules and infer the corresponding reaction network.
This is still considered under development and we would really
appreciate any feedback.
- There is a new converter SBMLRateRuleConverter which will take
-
Bug fixes
-
A large number of code 'smells' have been cleaned up. Thanks to
Jamie Quinn for undertaking this laborious task. -
The python examples have been updated for Python 3.8 changes.
Thanks to Akira Funahashi for committing these fixes. -
The python code used for creating documentation has been
updated for Python 3.10 changes. Thanks to
Zbigniew Jędrzejewski-Szmek for submitting the changes.
-
-
Configuration/build system changes
- Extensive continuous integration testing has been added to
the GitHub repository.
- Extensive continuous integration testing has been added to
-
Miscellaneous
- Note there is now a Julia interface to libSBML available
at https://lcsb-biocore.github.io/SBML.jl/stable/
- Note there is now a Julia interface to libSBML available
What's Changed
- use . to access convertStringToXMLNode by @fbergmann in #272
- Infer reactions by @skeating in #266
- Update autotools config for better platform detection by @tom91136 in #273
- #275: check that spatial dimensions match before running test by @fbergmann in #276
- Fix crash when infering units by @avandecreme in #284
- Accept timezones really far from UTC by @avandecreme in #291
- fix Java Testrunner by @fbergmann in #292
-
- ubuntu 18.04 no longer supported by @fbergmann in #285
- Update the spec URLs. by @luciansmith in #294
- Fbc v3 matlab by @skeating in #277
- Cmake documentation by @fbergmann in #298
- C modelhistory by @skeating in #295
- Add test case for replaceFD issue #299 by @lkeegan in #300
-
- add compile option for mxArrayToString by @fbergmann in #301
- Fix bug in
SBMLTransforms::replaceFD
by @lkeegan in #303 - #232: allow to store maps for each model by @fbergmann in #302
- Improve IdList support in bindings by @fbergmann in #308
- Issue 296 setannotation by @fbergmann in #305
- Xml from file by @skeating in #311
- Xmlns in math by @skeating in #310
- Update version by @fbergmann in #309
- converted setNamesFromIds.cpp example into a python file by @harveymannering in #312
- allow model history without creator by @skeating in #313
- Docs by @skeating in #304
New Contributors
- @tom91136 made their first contribution in #273
- @avandecreme made their first contribution in #284
- @harveymannering made their first contribution in #312
Full Changelog: v5.19.7...v5.20.0
Release 5.19.7
What's Changed
- FbcModelPlugin C API for createObjective and createGeneProduct by @exaexa in #252
- Remove the three 'Robin' boundary conditions. by @luciansmith in #263
- Relax annot by @skeating in #265
- Fbc v3 fixes by @skeating in #264
- As Mattias noticed, diffusion and advection can apply to parameters. by @luciansmith in #267
- #268 provide detailed error message on failure by @fbergmann in #269
-
- bump to 5.19.7 by @fbergmann in #270
Full Changelog: v5.19.6...v5.19.7
Release 5.19.6
This release solves a number of issues:
What's Changed
- User lowercase name for Windows library by @giordano in #225
- Fix typo in docstring of
ASTNode_isLogical
by @giordano in #230 - improve thread safety of UnitFormulaFormatter, PowerUnitsCheck by @lkeegan in #233
- Fix signature of
SBase_getNumPlugins
in prototype by @giordano in #237 - Ensure Translate/OutputSBML work on Octave and Matlab by @fbergmann in #175
-
- add whitespace by @fbergmann in #239
- add
FbcReactionPlugin_createGeneProductAssociation
to C API by @exaexa in #247 - Cmake libxml fix by @fbergmann in #250
- Add
SBMLNamespaces_addPackageNamespace{,s}
functions to C API by @giordano in #235 - #241:issues with fbc v3 by @fbergmann in #243
New Contributors
Full Changelog: v5.19.5...v5.19.6
libSBML-5.19.5
This prerelease, updates the build process to use cmake import libraries throughout. It ensures compatibility with latest version of expat, libxml and xerces-c to mitigate denial of service attacks.
Spatial is updated to solve an issue with validation.
libSBML-5.19.2
LibSBML 5.19.2 fixes an issue, where libSBML could not be built using Python 3.10.
libSBML-5.19.0
This is our first release on GitHub.
The usual collection of source and binary files can be found on SourceForge.
Python installation is available via PyPI.
We also now have a package on CondaForge.
Many thanks to Moritz Beber for his persistence and help in making this happen.
The libSBML source code has moved to GitHub.
(https://github.com/sbmlteam/libsbml).
The stable branch reflects the latest released code. The development
branch is the main branch and we encourage users to create and
submit pull requests against this branch. We are no longer
maintaining a separate repository for experimental code for as yet
unfinished packages.
Please use the GitHub issue tracker to file any reports or submit a
fix and do a Pull Request.
We will gradually move away from SourceForge, but for this release
code will be available from both SourceForge and GitHub.
-
Addition of support for the SBML Distributions package
-
Now that the first official version of the specification for the
SBML Level 3 Distributions package is available, the libSBML API for
'distrib' is now included in the stable release of libSBML. This
means that all prebuilt binaries for the stable release will
include the 'distrib' package code. The src archive containing
libSBML core code will continue to be available, with additional
archives of the individual package code.NOTE: The libSBML GNU make-based build system has not been updated
for packages. Thus, to build from src, it is necessary to
use the CMake build system.
-
-
New features
- Functions get/set/isSetMath have been added to the SBase class.
These do not allow interacting with a non-existant element
but may facilitate using more generic functions.
- Functions get/set/isSetMath have been added to the SBase class.
-
Bug fixes
-
There was a memory leak introduced in the SWIG wrapper. Thanks to
Fabian Fröhlich for spotting and fixing this. -
The SBMLNamespaces class was being leaked in a number of places,
these have now been plugged. -
The MathML to infix parser was also leaking memory. Thanks to
Liam Keegan for spotting and fixing these. -
The validation code detecting assignment cycles was incorrectly
including local parameters within its search. These have now
been removed from the relevant code. -
Conversion code was failing to detect when a local parameter used
the 'id' of a speciesReference which is allowed in SBML Level 3.
These can be converted to SBML Level 2 and the code has now been
corrected so this conversion will take place. -
The L3 infix parser has been improved to recognize the use of a
name without parentheses as a misused function name or a csymbol,
if appropriate. -
There was an anomaly when using the addCVTerm() and
appendAnnotation() functions which meant that if used in a certain
order information could be lost. This has been corrected. Thanks
to Colin Halupczok for the detailed report. -
Converting a to a global object was
failing if the metaid attribute was set. This has been changed to
produce the correct behavior.
-
-
Configuration/build system changes
-
Import of the python library has been sorted in line with recent Linux
changes to the location of the shared file. -
Code has been fixed to be MingGW compliant.
-
The build configuration was updated to work with the latest version of R.
-
-
Miscellaneous
- A number of memory leaks and possible access violations have been solved.
STABLE PACKAGES
-
'distrib' package-specific updates:
- A new converter, AnnotationToDistribConverter, has been added
to allow conversion from the existing annotation format used
with to the new 'distrib' format. This
complements the existing DistribToAnnotationConverter that converts
'distrib' to annotations.
- A new converter, AnnotationToDistribConverter, has been added
-
Bug fixes
-
'comp' package-specific bug fixes:
- Comp flattening dropped conversion factors for particular
instances of assignment rules. This has been corrected.
Thanks to Matthias König for reporting this.
- Comp flattening dropped conversion factors for particular
-
'distrib' package-specific bug fixes:
- There was unfortunately an infinite loop in the code using
the element. This has been removed.
- There was unfortunately an infinite loop in the code using
-
'render' package-specific bug fixes:
- Some render classes were not handled correctly by language
bindings. This has been fixed.
- Some render classes were not handled correctly by language
-
EXPERIMENTAL PACKAGES
-
New features
-
'spatial' package-specific updates:
-
Compression in the 'spatial' package is now based on strings.
The code has been changed to reflect this. -
Support for int and uint as DataKinds has been added to the
spatial code in line with changes in the specification. -
A range of validation tests have been added to the spatial
code. As this is an experimental passage package still in
development, we cannot guarantee that all validation has been
implemented.
-
-
-
Bug fixes
-
'spatial' package-specific bug fixes:
- There were some memory leaks in the spatial code. Thanks to
Liam Keegan for spotting these and congratulations
for being our first GitHub user to address problems using a
Pull Request.
- There were some memory leaks in the spatial code. Thanks to
-