Planned intervention: On Wednesday June 26th 05:30 UTC Zenodo will be unavailable for 10-20 minutes to perform a storage cluster upgrade.

There is a newer version of the record available.

Published April 18, 2019 | Version 5.18.0
Software Open


  • 1. Heidelberg University
  • 2. Vrije Universiteit Amsterdam
  • 3. University of Washington
  • 4. California Institute of Technology



5.18.0 (2019-04-18)





* New features


  - LibSBML now defines a DefinitionURLRegistry to allow a user to log

    their own values of the 'definitionURL' attribute on a math <csymbol>

    element. Once logged these definitionURL values will not trigger the

    unknown csymbol error when reading a model that uses them. 


  - LibSBML now defines a CallbackRegistry which allows a user to register

    a callback to interrupt a long running read operation. Examples for C++

    and Python are included. In future it would be anticipated that would

    have callbacks to interrupt long running validation or conversion 



* Bug fixes


  - Validation was incorrectly stating that the id of a <localParameter>

    that mirrorred the id of a <species> should be listed as a 

    <modifierSpeciesReference> in the enclosing <reaction>. It no longer

    issue an incorrect error.


  - The string to MathML parser was failing to identify known constants

    as arguments to a lambda function. lambda(pi, pi*2) should treat 'pi'

    as an unknown argument not the constant pi. This has been fixed.


  - The MathML parser adds logbase and degree to log and root elements 

    respectively. These are dimensionless integers and but unit

    validation was failing.  This has been corrected.  Note this means

    that for L3 models libSBML will write out the dimensionless units 

    on the relevant <cn> element explicitly.  This may cause an 

    apparent difference in models if reading and then writing. 


  - In MathML a <bvar> element within a <lambda> can only contain a 

    <ci> child element. Validation was failing to spot when this was 

    not the case. This has been corrected.


  - MathML within a <semantics> element was not being properly validated.

    This has been improved.


  - 'layout' package-specific bug fixes:


    - Code was failing to roundtrip glyphs that contained both a <curve>

      and a <boundingBox> element. This has been fixed.



* Configuration/build system changes


  - The cmake files that enable using the check library on 

    a Linux OS have been updated to make this easier.


  - Python 3.7 is now supported.



* Miscellaneous


  - Several obscure memory leaks have been plugged.





* New features


  - 'distrib' package-specific updates:


     - The code has been updated to reflect the specification

       agreed during HARMONY 2019 version 0.24.


  - 'spatial' package-specific updates:


    - The code has been updated to reflect the specification 

      version 0.93.


    - Attributes 'id' and 'name' have been added to the SpatialPoints

      class in anticipation of these being added to the specification.


    - Plugin code has changed so that child element class members are

      initialised to NULL.  This saves memory but may cause existing

      code to hit an issue when using a getAbc function; which may now

      return a NULL object when previously it did not.


Files (27.4 MB)

Name Size Download all
27.4 MB Preview Download