Closed MichaelClerx closed 6 years ago
Thoughts on https://github.com/FreakyBytes/pyCombineArchive :
Tellurium uses the Python bindings to libCombine, available as tecombine (0.2.2.1) and python-libcombine (0.2.1) from PyPI.
pysces just has custom write code.
The Physiome Model Repository has an OMEX interface, but it's tightly coupled to the PMR2 codebase.
Have also asked at https://groups.google.com/forum/?hl=en-GB#!topic/combine-archive/oRQCoZfUblY
Can't be that hard to build can it? I generate zip files in myokit all the time with no dependencies beyond python's standard library
There are responses from the main library developers in the thread linked above now. As Michael says, a pure Python library for the functionality we actually need would probably be easy to write, but it might make sense to start with libCombine so we're being 'good citizens'! It did pip install for me, even if there weren't wheels available.
It does depend on libSBML for XML parsing though, bit overkill?
Indeed, that is the downside! But if its API isn't too bad we can start there to get something running and switch to a light-weight Python alternative later. If the API is complex, it might be quicker just to write something ourselves...
Had issues getting libCOMBINE to work in #47, so Helen has written our own thing for just what we need for now. Eventually we'll make this a standalone Python package, with the other features needed for #17 etc.
Closing for now since we implement features we need as required. Can revisit if we decide to create a standalone library with others (e.g. PMR).
Requirements:
See #23
Step 1: Evaluate https://github.com/FreakyBytes/pyCombineArchive