Skip to content

Releases: SysBioChalmers/RAVEN

v2.10.1

19 Oct 20:25
Compare
Choose a tag to compare
  • fix:
    • readYAMLmodel will correctly construct the ec.rxnEnzmat matrix
    • exportForGit will not search for COBRA if it is not in MATLAB path
  • feature:
    • unit-tests for YAML in/output, now also included in checkInstallation
  • docs:
    • exportForGit correctly describe neverPrefix option

v2.10.0

14 Oct 16:08
4039650
Compare
Choose a tag to compare
  • fix:
    • importModel only removes identifier prefixes (like R_ for reactions) when present in all entries of a certain type; gives a warning that this happened; and has a removePrefix flag that can be set to false if desired
    • exportModel only adds identifier prefixes (like R_ 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 a neverPrefix flag that can be set to true if desired. Previously, prefixes were always added
    • importModel allows for empty parameters when not specified
    • constructS gives correct error message when a metabolite is missing
    • importExcelModel can ignore faulty MIRIAM entries (note: import of Excel models is strongly discouraged!)
    • checkModelStruct to determine if reaction is reversible, consider all combinations of LB and UB, not just whether LB < 0 or not
    • checkModelStruct checks that all genes in grRules field are also in genes field (solves #556)
  • feature:
    • checkModelStruct queries if the model has any identifiers that are not SBML compatible (i.e. do not start with a letter or _)
    • new removeIdentifierPrefix function can remove identifier prefixes like R_ for reactions if desired
    • new addIdentifierPrefix function can add identifier prefixes like R_ for reactions if required
    • support for model.proteins as field, which matches model.genes and is also supported by SBML and YAML
    • getExchangeRxns has more options to select reactions based on their reaction bounds, whether they represent uptake, excretion etc. (solves #555)
  • docs:
    • getKEGGModelForOrganism explicitly refers to the correct dataDir options (i.e. prok90_kegg105 or euk90_kegg105 at this time)

v2.9.3

31 Jul 22:58
49acaa6
Compare
Choose a tag to compare
  • fix:
    • ravenCobraWrapper handle empty rxnReferences from COBRA => RAVEN
    • replaceMets should not contract the whole model, only for the replaced metabolites
    • getBlast can handle paths containing spaces, or makes a custom temp path if required (solves #506)
    • importModel with empty confidenceScores entries
    • constructS avoid warning about "Colon operands must be real scalars"
    • randomSampling should output the solutions as full matrix, as sparse matrices occassionally acts weird when using functions like mean
  • feature:
    • getIndexes supports ecenzymes, ecrxns and ecgenes types, to query GECKO3 model.ec fields
  • refactor:
    • speedup readYAMLmodel
  • docs
    • update badges and refer to GitHub Discussions instead of Gitter

v2.9.2

27 May 12:59
20afda4
Compare
Choose a tag to compare
  • fix:
    • checkInstallation finding RAVEN when installed as MATLAB Add-On

v2.9.1

27 May 09:36
0338867
Compare
Choose a tag to compare
  • 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 glpk timeout when running selected large FBA calculations
    • avoid an error when running solveLP in parallel and COBRA toolbox is not installed
    • getAllowedBounds returned inconsistent results when running parallelization
    • ⚠️ various changes in relation to solveLP swapping 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
    • removeMets also considers metNotes field if available
    • setParam error message if incorrect paramType is specified
  • feat:
    • checkInstallation reports how RAVEN was installed, as described in the Wiki
  • doc:
    • minor changes in formatting of function documentation

v2.9.0

02 May 22:53
bbb6b98
Compare
Choose a tag to compare
  • 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:
    • simplifyModel with irreversible backwards-only reactions (solves #529)
    • writeYAMLmodel do not write lines with empty entries (e.g. reactions without subsystems)
    • getModelFromKEGG includes model.annotation.defaultLB and model.annotation.defaultUB fields
    • getGenesFromGrRules can handle genes with '|'
    • getModelFromHomology remove geneFrom field (solves #533)
    • getMinNrFluxes reduce default verbosity
    • writeYAMLmodel allow empty id and name fields, in line with https://github.com/SysBioChalmers/RAVEN/wiki/RAVEN-Model-Structure
    • ravenCobraWrapper prefers to use grRules in COBRA models if present (solves GECKO issue #367)
    • optimizeProb will throw error when trying to solve MILP with glpk (also if glpk is set via cobra)
    • writeYAMLmodel will throw an informative error if it cannot write the file to the intended directory
    • mapCompartments correct horizontal concatenation of cell array
    • checkInstallation during first installation on unix machines, makeBinaryExecutables threw an error.
    • importModel correctly parses SBML file that has some missing SBO terms
  • feat:
    • randomSampling can run in parallel with MATLAB Parallel Computing Toolbox installed
    • setParam has 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 in model.annotation (otherwise [-1000, 1000]), and considers reversibility (in which case lower bound = 0)
    • auxiliary parallelPoolRAVEN function to check if function should be running in parallel
    • use alternative ProgressBar, particularly in functions containing parfor calls
    • 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 randomSampling with nsamples set to 0, to only get goodRxns.

v2.8.7

24 Feb 20:19
e296b5d
Compare
Choose a tag to compare
  • fix:
    • ftINIT could have removed metabolites that are required for specific tasks.
    • importModel allows SBML without a specified objective function (this is not valid SBML, but will be tolerated).
    • Swap soplex with scip as solver. The soplex option introduced in release 2.8.5 should not be used for MILP, scip is dedicated for these problems. Precompiled binaries for Windows are provided (downloaded upon request), further installation instructions are mentioned in the Wiki.
    • ravenCobraWrapper properly makes comps and compNames fields when lacking in COBRA model.
    • writeYAMLmodel can deal with mixture of nested and not-nested cell arrays of subsystems (as COBRA models can have).
    • extractMiriam should allow cell array of multiple miriamNames as input.
    • checkInstallation correctly makes binaries executable on Ubuntu (solves #527)
  • refactor:
    • Reduce the default verbosity and number of messages to the command window for a few functions.

v2.8.6

21 Nov 00:00
97b4cf7
Compare
Choose a tag to compare
  • fix:
    • checkInstallation (via solverTests) will not report soplex as fail on Windows when using RAVEN-provided binary (solves #513).

v2.8.5

23 Oct 19:16
b16f732
Compare
Choose a tag to compare
  • feat:
    • Distribute SoPlex binary for Windows with RAVEN, as another open-source alternative, slower than glpk, but suitable for MILP. Installation instructions are updated.
    • readYAMLmodel should always make model.c-field, even if no objective function is specified (solves #509).
    • standardizeGrRules should throw error if no grRules field is found.
  • refactor:
    • addRxnsGenesMets more detailed error message if reactions cannot be found.
    • getAllowedBounds use progressbar for reporting status.

v2.8.4

17 Jul 10:25
da86f62
Compare
Choose a tag to compare
  • feat:
    • metDeltaG and rxnDeltaG fields, I/O via YAML. (solves #280)
    • getAllowedBounds has optional runParallel-flag, true by default.
  • fix:
    • parseScores and predictLocalization handling of data from DeepLoc 2.0. (solves #310)
    • randomSampling check feasibility after changing bounds to (-)Inf, as suggested in #438.
    • checkModelStruct no longer checks for duplicate metSmiles with different metabolite names, as it often occurs that these canonical SMILES are non-unique due to e.g. stereochemistry.