Releases: SysBioChalmers/RAVEN
Releases · SysBioChalmers/RAVEN
v2.10.5
- fix:
importModelparsing of model notes in MATLAB R2025a (solves #586)readYAMLmodelcan read files where entries were broken over more than 2 lines.readYAMLmodelrecognizes''as an empty string.
- doc:
getExchangeRxnscorrect 'out' flag definition
- refactor:
setParamandsolveLPspeed improvementsoptimizeProbparses Threads=1 to gurobi if run in parallel
- feat:
checkModelStructwill throw error if a grRules entry starts/end with AND/OR, example:or geneA and geneB
v2.10.4
- fix:
importModelprevent colon operands warningimportModelparsing of model notes in MATLAB R2025a (solves #586)randomSamplinguses real reaction bounds and not themodel.revfield to identify reversible reactions, and filters from goodRxns those reactions that cannot carry flux
- feature:
setParamchecks if the new LB and UB values are not invalidrandomSamplingrecognizes if a model is a GECKO v3+ ecModel, in which case the usage_prot reactions are not sampled
- refactor:
importModelparsing of LB and UB values, minor speed improvements
- documentation:
- remove traces of
getMILPParams, which has been obsolete since 2.7.10
- remove traces of
v2.10.3
- fix:
closeModelif model only contained one compartmentgenerateNewIdsreturns by default 1 identifierreadYAMLmodelif the model contains multiple annotations of the same type (e.g. CHEBI) for the same entity (e.g. metabolite)readYAMLmodelandwriteYAMLmodelif an essential field is empty but should still be imported/exportedgenerateNewIdscan handle if the model already contains identifiers that start with the prefix (e.g.r_) but is not followed by a number.
v2.10.2
- fix:
addMetsifmetNamesand notmetsidentifiers are givenaddRxnswhen adding empty subSystems if the model uses cell arrays of cells for subSystemsimportModelproperly parsing of annotations if identifiers.org/name:value is used instead of identifiers.org/name/value
- features:
changeGrRulescan change the same grRule for multiple reactions simultaneouslyreplaceMetscan use metabolite identifiers instead of metabolite names
- refactor:
- use
getGenesFromGrRulesincheckModelStruct,changeGrRulesandimportModel, to correctly split and/or relationships
- use
- documentation:
checkRxnclarify what the output represents (solves #572)
v2.10.1
- fix:
readYAMLmodelwill correctly construct theec.rxnEnzmatmatrixexportForGitwill not search for COBRA if it is not in MATLAB path
- feature:
- unit-tests for YAML in/output, now also included in
checkInstallation
- unit-tests for YAML in/output, now also included in
- docs:
exportForGitcorrectly describeneverPrefixoption
v2.10.0
- fix:
importModelonly removes identifier prefixes (likeR_for reactions) when present in all entries of a certain type; gives a warning that this happened; and has aremovePrefixflag that can be set tofalseif desiredexportModelonly adds identifier prefixes (likeR_for reactions) when one or more entries of a certain type are not compatible with SBML (i.e. do not start with a letter or _); gives a warning that this happened; and has aneverPrefixflag that can be set totrueif desired. Previously, prefixes were always addedimportModelallows for empty parameters when not specifiedconstructSgives correct error message when a metabolite is missingimportExcelModelcan ignore faulty MIRIAM entries (note: import of Excel models is strongly discouraged!)checkModelStructto determine if reaction is reversible, consider all combinations of LB and UB, not just whether LB < 0 or notcheckModelStructchecks that all genes ingrRulesfield are also ingenesfield (solves #556)
- feature:
checkModelStructqueries if the model has any identifiers that are not SBML compatible (i.e. do not start with a letter or _)- new
removeIdentifierPrefixfunction can remove identifier prefixes likeR_for reactions if desired - new
addIdentifierPrefixfunction can add identifier prefixes likeR_for reactions if required - support for
model.proteinsas field, which matchesmodel.genesand is also supported by SBML and YAML getExchangeRxnshas more options to select reactions based on their reaction bounds, whether they represent uptake, excretion etc. (solves #555)
- docs:
getKEGGModelForOrganismexplicitly refers to the correctdataDiroptions (i.e.prok90_kegg105oreuk90_kegg105at this time)
v2.9.3
- fix:
ravenCobraWrapperhandle empty rxnReferences from COBRA => RAVENreplaceMetsshould not contract the whole model, only for the replaced metabolitesgetBlastcan handle paths containing spaces, or makes a custom temp path if required (solves #506)importModelwith empty confidenceScores entriesconstructSavoid warning about "Colon operands must be real scalars"randomSamplingshould output the solutions as full matrix, as sparse matrices occassionally acts weird when using functions likemean
- feature:
getIndexessupportsecenzymes,ecrxnsandecgenestypes, to query GECKO3model.ecfields
- refactor:
- speedup
readYAMLmodel
- speedup
- docs
- update badges and refer to GitHub Discussions instead of Gitter
v2.9.2
v2.9.1
- refactor:
- when running a unit test and a solver is not installed, report the absence of the solver, not the general failing of the test
- fix:
- prevent
glpktimeout when running selected large FBA calculations - avoid an error when running
solveLPin parallel and COBRA toolbox is not installed getAllowedBoundsreturned inconsistent results when running parallelization⚠️ various changes in relation tosolveLPswapping the sign of reported objective function (sol.f), as already announced with RAVEN release 2.7.12, but not actually done at that point- ensure that RAVEN provided libSBML binaries are used, by using unique filenames
removeMetsalso considersmetNotesfield if availablesetParamerror message if incorrect paramType is specified
- prevent
- feat:
checkInstallationreports how RAVEN was installed, as described in the Wiki
- doc:
- minor changes in formatting of function documentation
v2.9.0
- chore:
- update libSBML to version 5.20.2, now including support for Apple Silicon .mexmaca64. The macOS Intel .mexmaci64 is kept at version 5.19.0, as the required compiled mex file is not included in the 5.20.2 release.
- add .mexmaca64 glpk binary for Apple Silicon.
- fix:
simplifyModelwith irreversible backwards-only reactions (solves #529)writeYAMLmodeldo not write lines with empty entries (e.g. reactions without subsystems)getModelFromKEGGincludesmodel.annotation.defaultLBandmodel.annotation.defaultUBfieldsgetGenesFromGrRulescan handle genes with '|'getModelFromHomologyremove geneFrom field (solves #533)getMinNrFluxesreduce default verbositywriteYAMLmodelallow empty id and name fields, in line with https://github.com/SysBioChalmers/RAVEN/wiki/RAVEN-Model-StructureravenCobraWrapperprefers to use grRules in COBRA models if present (solves GECKO issue #367)optimizeProbwill throw error when trying to solve MILP with glpk (also if glpk is set via cobra)writeYAMLmodelwill throw an informative error if it cannot write the file to the intended directorymapCompartmentscorrect horizontal concatenation of cell arraycheckInstallationduring first installation on unix machines,makeBinaryExecutablesthrew an error.importModelcorrectly parses SBML file that has some missing SBO terms
- feat:
randomSamplingcan run in parallel with MATLAB Parallel Computing Toolbox installedsetParamhas an additional option, 'unc' if a reaction's lower and upper bound should be set as unconstrained. If available, this will use the default bounds inmodel.annotation(otherwise [-1000, 1000]), and considers reversibility (in which case lower bound = 0)- auxiliary
parallelPoolRAVENfunction to check if function should be running in parallel - use alternative ProgressBar, particularly in functions containing
parforcalls - give execution rights in Terminal for new RAVEN functions
- refactor:
- remove mentions to soplex (which has been replaced by scip).
- avoid cmd windows output by
parallelPoolRaven. - allow
randomSamplingwithnsamplesset to 0, to only getgoodRxns.