Releases: zhanglab/psamm
Releases · zhanglab/psamm
PSAMM 0.27
- When exporting a model with
excelexport
,sbmlexport
ortableexport
, the
current Git commit ID of the model is now part of the export. - The
gapfill
command has been split into two separate commands. The new
commandgapcheck
only reports which compounds are blocked without
trying to fill gaps. Thegapfill
command now only reports the suggested
reactions for gap-filling. - The
tableexport
command has been made more robust when the model properties
contain special characters or structured data. Strings containing tabs or
newline characters are now quoted in the output. - Improved error messages for multiple commands when reactions with forced
flux (e.g. ATP maintenance reactions) impose impossible constraints.
PSAMM 0.26
- All commands that perform loop removal now use the option
--loop-removal
to
set the type of loop removal. The--tfba
option is no longer available for
thefva
,fluxcheck
andrandomsparse
commands, instead
--loop-removal=tfba
should be used. - All simulation commands that perform a maximization of an objective now take
an--objective
option that can be used to override thebiomass
reaction
set in the model. The commandsfba
andfva
no longer allow positional
arguments to set the objective, instead the--objective
option should be
used. - All user data in the model is now exported with the
sbmlexport
command.
User data that cannot be translated into a standard machine-readable SBML
form will instead be stored in the SBML notes section. - The output from the
gapfill
command now shows the complete induced model
(likefastgapfill
) and also lists the compound IDs of the blocked
compounds. - The
gapfill
command will now propose the removal of flux bounds if such a
modification can unblock the model. - The
gapfill
command now excludes the biomass reaction from being modified
in the induced model. Previously the biomass reaction was sometimes reversed
in the induced model but this is usually not a desired solution. - The
gapfill
command now allows the user to specify penalties on added or
modified reactions (likefastgapfill
). - The
gapfill
command was changed so the--epsilon
option now
specifies the threshold for non-zero reaction fluxes (like the--epsilon
in other PSAMM commands). - The
gapfill
command was changed to be more robust when handling small
epsilon values. It will now lower the solver thresholds if necessary and will
generate a warning when epsilon is too low. This fixes an issue where
gapfill
would previously fail or generate incorrect results with some
models. - Fixed: The
--exclude
option in theformulacheck
command did not work
correctly.
PSAMM 0.25
- Fixed an error parsing decimal values in reactions which resulted in a failure to run FBA and other analyses on certain models.
- The
fastgapfill
command no longer tries to unblock exchange reactions by default. Only internal reactions will be unblocked by default. - The
fastgapfill
command has a new--subset
option to explicitly specify set of reactions to unblock. This means that the command can now be used to unblock a specific reaction. - The weight options on
fastgapfill
have changed name to--db-penalty
,--tp-penalty
and--ex-penalty
for consistency with the existing--penalty
option. - Fixed an error in
gapfill
that in some cases would result in a compound incorrectly marked as non-blocked. - The
sbmlexport
command now follows the FBCv2 specification for writing flux bounds, biomass reaction, gene products and various other properties to SBML files. - The
sbmlexport
command now uses the same ID for compartment IDs as used in the YAML files. - The order of compounds in the output from commands now reflects the order of compounds in the reactions as specified in the model files.
- Experimental support for solving MILP problems with GLPK has been activated.
PSAMM 0.24
- When specifying flux bounds in media and limits, the
fixed
key can now be used when lower and upper limits are the same. - New column in output of
excelexport
andtableexport
commands to indicate if reactions and compounds are in the model. - Zero mass compounds are now omitted from the output of the
massconsistency
command. - When exporting SBML file using the
sbmlexport
command, the exported compounds and reactions now have IDs that are based on the YAML model IDs. Characters that are not allowed in SBML IDs are transformed in a way that is compatible with COBRA.
PSAMM 0.23
- Fix a bug where no output of the
randomsparse
command was produced. - Make Cplex interface in PSAMM compatible with earlier versions (12.6 and 12.6.1) again.
PSAMM 0.22
- Better unicode handling in commands.
- When running the
gapfill
command the epsilon parameter can now be specified on the command line. - When parsing reaction and compound entities from the YAML files, produce better error messages when IDs are invalid.
- Work around a bug in Cplex that in rare causes a segmentation fault when a linear programming problem is solved repeatedly.
- API: Add
fastgapfill
module which allows access to run the fastGapFill algorithm. - API: Add
randomsparse
module which allows access to generate a random minimal model which satisfies the flux threshold of the objective reaction.
PSAMM 0.21
- Add
genedelete
command to allow users to delete one or more genes and perform a viability check on the model after all related reactions are deleted. - Add
balancecheck
module which allows API access to charge balance and formula balance checks. - When a compound in the extracellular space doesn't have an exchange reaction, a warning would be provided so that the user may add the compound to the medium.
- If a compartment is not given for a medium, it will now be assumed to have the extracellular compartment.
- When using Gurobi and Cplex, the default optimality tolerance and feasibility tolerance has been decreased to 1e-9.
- Fixed a bug where the reaction IDs are not printed properly in the result of
chargecheck
command.
PSAMM 0.20
- Added experimental support for GLPK solver. MILP problems are not yet supported with this solver. GLPK also appears to have some issues with
fastgapfill
. - The
gapfill
command can now take a list of compounds on the command line that it will try to unblock. If a list of compounds is given, the command will not run GapFind but instead only use those compounds. - Remove the assumption that the extracellular compartment is always called
e
. The user can now specify the name of the extracellular compartment with the optionextracellular
inmodel.yaml
. - In a previous release, the code interfacing with Cplex was updated and is now using an interface in Cplex that was introduced in version 12.6.2. The documentation now makes it clear that at least version 12.6.2 is required.
- Update YAML format documentation on the model definition table format.
- Work around issue with
pkg_resources
that resulted in import errors when running from IPython.
PSAMM 0.19
- When using Gurobi, the option
--solver threads=X
can now be used to specify the maximum number of threads that Gurobi can use. - The log messages from external libraries are more clearly marked as such. In particular, there should now be less confusion about the origin of the log messages from Cplex.
- Internally, the LP solvers now support quadratic objectives. This will be used for various commands in the future.
- Fix an error where an empty reaction would internally be detected as an exchange reaction.
- Fix a bug where the compounds in the extracellular compartment were not correctly detected by
gapfill
. - Update documentation with information on how to cite the PSAMM publication.
PSAMM 0.18
- Several commands now support parallelization with the
--parallel
option (fva
,fluxcheck
,fluxcoupling
,robustness
). - A more robust reaction parser is now used to parse reaction equations in YAML files. This also means that quoting compound names with pipes (
|
) is now optional.