Releases: opencobra/cobrapy
0.29.1
Release notes for cobrapy 0.29.1
New features
Fixes
- Fixes the incorrect bounds in the CycleFree loop removal.
- Fixes reduced costs and shadow prices not available when using non-convex models.
- Fixed a bug with SBML group parsing that affects the Debian package.
- Fixed a bug where load_matlab_model would not work with numpy 2.0.
Other
- Adding a duplicate boundary reaction (with
add_boundary
) no longer errors, but instead just returns the existing reaction. - Automatic detection of the external compartment now recognizes CARVEME and GAPSEQ ids and will no longer
show a warning for models generated with those tools.
Deprecated features
Backwards incompatible changes
0.29.0
Release notes for cobrapy 0.29.0
New features
- Added a new "hybrid" solver that exposes an HIGHS/OSQP combinations for large scale
LPs, MILPs, and QPs.
Fixes
Repaired the broken Biomodels Web IO.
Other
Deprecated features
- The OSQP solver is deprecated in favor of the hybrid solver which also uses OSQP but
will not attempt to solve LPs with OSQP anymore. Setting themodel.solver = "osqp"
will now use the hybrid interface and will raise an error in a future release.
Backwards incompatible changes
0.28.0
0.27.0
Release notes for cobrapy 0.27.0
New features
Fixes
COBRApy is now compatible with pydantic version 2.
COBRApy is now compatible with the latest numpy versions and pin to a lower version
has been removed.
loopless_solution
now fixes the objective to its optimum as in the
originally published method and returns the objective value in the solution object.
Repair a broken test for fix_objective_as_constraint
.
Other
Backwards compatibility for pickled models has been improved.
Deprecated features
Backwards incompatible changes
0.26.3
Release notes for cobrapy 0.26.3
New features
Fixes
Fixed an issue where reaction bounds were being overwritten by global model min/max values
when writing sbml model to file. See #1300.
Fix an issue where runfrog
does
not work via github actions or local installation by removing the use of obsolete numpy
aliases for float
and bool
.
Fix a bug where installing httpx>=0.24 would break cobrapy IO.
Other
Deprecated features
Backwards incompatible changes
0.26.2
Release notes for cobrapy 0.26.2
New features
Fixes
Fix the version numbers, my bad - cd
Other
Deprecated features
Backwards incompatible changes
0.26.1
Release notes for cobrapy 0.26.1
New features
Fixes
Fix automatic building of the documentation.
Fix an issue where SBML models with a "created" date would break lots of the cobrapy
functionality.
Temporary fix of restricting numpy to <1.24 as that release introduces breaking changes both in cobrapy and dependencies
Other
Deprecated features
Backwards incompatible changes
0.26.0
Release notes for cobrapy 0.26.0
New features
- View number of genes in model notebook representation.
- added support for Python 3.11
Fixes
- serializes GPRs to strings to avoid massive storage usage
- Reformatted example files (e_coli_core.xml, mini_cobra.xml, mini.json, mini.yml, textbook.xml.gz) to be more compliant with identifiers.org.
- ncbigi is not a valid identifiers.org, so it was replaced with ncbiprotein.
- make sbml.py subsystem reading add partonomy, which matches the definition
of SBO:0000633 (see https://sourceforge.net/p/sbo/term-request/113/) - Correct reading and writing of subsystem in mat.
- General cleanup of code in mat.py
- fix the pandas deprecation warning in
find_external_compartment
- fix an issue where creating a Formula object would give a recursion error
Other
- Resolve
flake8
issues and add missing type annotations and docstrings insrc/cobra/io
andtests/test_io
(#1212). - Updated model.py and test_model.py to Python 3.6+, including type annotations and docstrings.
- Resolve remaining
flake8
issues and enable the check in GitHub Actions Lint workflow (#1272).
Deprecated features
- dropped support for Python 3.6
Backwards incompatible changes
- Removed
model.add_reaction()
and replaced remaining usages of it withmodel.add_reactions()
- Removed the following tests: test_add_remove_reaction_benchmark, test_add_reaction,
test_add_reaction_context, test_add_reaction_from_other_model, test_add_cobra_reaction - Removed
model.__add__
andmodel.__iadd__
- usemodel.merge
to replace them. - Remove
Model().description()
. - Remove
Model().get_metabolite_compartments()
.
0.25.0
Release notes for cobrapy 0.25.0
New features
- Add
knock_out_model_genes
to simulate knock-outs, setting
reaction bounds of affected reactions to zero and returning a list
of reactions that were knocked-out. Replacesdelete_model_genes
andundelete_model_genes
since it is context sensitive. - Improve reading of matlab models which will include metabolite
and reaction annotations.
Fixes
model.copy()
will now correctly copy GPRs.- Fix an error where matlab models can not be read if their bounds exceed the
configuration default in some cases. - Fixed some bugs in
GPR().from_string()
where it was using the unmodified string,
leading to errors withGPR
s that should work. MadeGPR
s that have empty
parenthesis fail more comprehensibly.
Other
- Move tests to a different directory, from
src/cobra/test
totests
(#1191). - Add two tests for
GPR
fixes:test_gpr_wrong_input()
test_gpr_that_needs_two_replacements()
- Clean up Python syntax (#1152, #1153, #1171, #1173, #1182)
Deprecated features
- Deprecate
delete_model_genes
,undelete_model_genes
Backwards incompatible changes
- Remove
find_gene_knockout_reactions
fromdelete.py
- Remove
_find_gene_knockout_reactions_fast
,
_gene_knockout_computation
,_get_removed
fromtest_delete.py
- Remove
pymatlib
direct transfer of models to matlab process.
Please usesave_matlab_model()
and then read the model in matlab.
0.24.0
Release notes for cobrapy 0.24.0
New features
- Gene-protein-reaction association rules are now represented by a structured object
GPR
.
Reaction.gene_reaction_rule
still returns a string and a string can be assigned
to it that will modify the underlyingGPR
instance. - The
Reaction
class has gained another attributeReaction.gpr
which allows direct
access to theGPR
instance (#1143).
Fixes
- Syntax update and type annotations (#1151).