Release notes for sbmlsim 0.21.0
sbmlsim runs on the builds of the develop branch of libroadrunner, which bring the fixes of the events of libroadrunner which sbmlsim worked around, and which every install takes from the package index roadrunner-wheels.
Install changes: sbmlsim depends on libroadrunner>=2.11.1.dev655, a build of the develop branch which is not on PyPI, so every install names the index (Installation):
pip install --extra-index-url https://matthiaskoenig.github.io/roadrunner-wheels/simple/ sbmlsimA uv project declares the index as an explicit index with libroadrunner pinned to it (tool.uv.sources) and adds sbmlsim libroadrunner. Without the index pip stops with No matching distribution found for libroadrunner>=2.11.1.dev655. A release of libroadrunner with the fixes satisfies the requirement as well.
Results which change: a delayed event of a model fires at its time in the steps of the integrator, it fired at the end of the next step of CVODE (roadrunner #1382); an event within the rounding of the state at the end has the states before and after it at the end, as with COPASI; an event in the last step of CVODE after the end of a segment fires in the next segment without the second run with exact output, so the rows of the steps around it are the ones of the integrator. The states and the events of every other simulation are the same within the tolerances of the integrator.
Features
- The develop builds of libroadrunner (#499, #500, #501). roadrunner-wheels publishes the wheels of the latest successful build of
developof sys-bio/roadrunner once a day as<version>.dev<run>and checks every build with uv and pip on python 3.14 and 3.15 on linux, macOS and windows. The lock, the continuous integration and tox run on such a build;uv lock --upgrade-package libroadrunnermoves to a newer one. - The release checks its install. After the publication on PyPI the job
published installinstalls the release as the documentation describes it, with pip and with uv on linux, macOS and windows, and runs a scan with it (scripts/published_install.py). - A model release takes the indexes of its source (#501).
sbmlsim.releasedeclares the package indexes of the lock of the source, e.g. the builds of libroadrunner, as explicit indexes of the release project with their packages pinned to them (PackageIndex), andcheck_lockaccepts their packages.
Fixes
- The workarounds of the bugs of libroadrunner 2.11 which its develop branch fixed are removed (#500), about 650 lines of the executor and the model: the runs again with exact output of a segment integrated past its end and the rows roadrunner folded into the end (roadrunner #1384), the event the integrator kept pending after a simulation (roadrunner #1381), the second run of a horizon of a steady state at whose end an event fired early (#444; a horizon is integrated with exact output at its end), and the compilation of every model with
RECOMPILEand its level as a comment of the SBML (roadrunner #1383, #1420; a model loaded again comes from the cache of roadrunner). - Two regressions of the develop builds are reported and their tests are strict expected failures until a build fixes them: an event whose trigger is true at the end of the steps of the integrator never fires (sys-bio/roadrunner#1445), and a delayed event has no row of the state before it in the steps (sys-bio/roadrunner#1446).
Dependencies
libroadrunner>=2.11.1.dev655from roadrunner-wheels, see above.