Skip to content

Share model_adapter.toml with GECKO - #61

Merged
edkerk merged 1 commit into
developfrom
feat/toml-adapter-shared
Oct 17, 2026
Merged

edkerk merged 1 commit into
developfrom
feat/toml-adapter-shared

Conversation

@edkerk

@edkerk edkerk commented Oct 15, 2026 •

Copy link
Copy Markdown
Collaborator

GECKO (MATLAB) reads model_adapter.toml as well (SysBioChalmers/GECKO#486), so one file configures both tools. See CompMetEng/raven-gecko-parity#132.

  • [spontaneous]: name_contains and/or file (a TSV with a header row, reaction identifiers and optionally a 0/1 column, relative to the project folder) set which reactions are spontaneous. The default get_spontaneous_reactions reads them. Without the section it returns an empty list, as before.
  • [matlab]: settings only GECKO reads: make_model_anaerobic, change_protein_biomass and [matlab.params]. geckopy accepts and ignores them, so a file converted from a MATLAB adapter class loads.
  • adapterParameters.tsv: the table GECKO uses to map each key to its MATLAB field name and default, shipped in geckopy/adapter/. A test checks that it lists every schema key with geckopy's default.
  • Docs: docs/migrating_from_gecko_matlab.md describes the shared file.

Existing TOML files load unchanged. The full test suite passes (1,450 passed; develop has 1,447 and this adds 3).

GECKO (MATLAB) now reads model_adapter.toml as well. Two sections make that
possible without code in an adapter class:

- [spontaneous]: name_contains and/or file set which reactions are
  spontaneous; the default get_spontaneous_reactions reads them.
- [matlab]: settings that only GECKO reads (function names for anaerobic
  conditions and protein content, and [matlab.params]); geckopy accepts and
  ignores them.

adapterParameters.tsv, the table GECKO uses to map keys to its MATLAB
field names and defaults, is shipped here too, and a test checks it
against the schema.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant