Psamm

Latest version: v1.2.1

Safety actively analyzes 642295 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 4 of 7

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.

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.

0.17

------------------

- When loading native models, PSAMM now uses the PyYAML safe loader and also
uses the optimized CSafeLoader if present. This speeds up the start time of
commands.
- Various additional optimizations to model loading have been added. This
speeds up the start time of some commands.
- The `fba` command now shows the genes associated with each reaction for a
quick overview of which genes influence the flux solution.
- The `sbmlexport` command now properly exports gene association information.
- All commands better handle output that contains unicode characters. In
previous versions this would often fail when using Python 2.

0.16

------------------

- Add an option to `randomsparse` to perform the deletion based on genes
instead of reactions. This uses the gene association expression defined in
the reaction property `genes`.
- Add threshold option to `fva` command.
- Fix bugs in `gapfill` that resulted in the procedure not detecting reactions
that could be reversed, and sometimes failing to find a result at all.
- Add epsilon option to `chargecheck` and ignore charge imbalances below the
epsilon value.
- Allow the `search` command to find reactions containing a specific compound
even when the compartment is not specified.
- Output more information is the result of the `search` command.
- Improved handling of flux bounds at infinity (e.g. with
`default_flux_limit = .inf` in `model.yaml`).

0.15

------------------

- Add support for reading flux bounds and objectives from SBML files that are
using the FBC extension.
- Add a tutorial to the documentation at <https://psamm.rtfd.org/>.
- Add command `tableexport` to export various parts of the model as a TSV file.
- Add command `excelexport` to export all parts of the model as an Excel file.
- Allow various parameters that take a reaction as an argument to also be able
to take a list of reactions from a file, using the `` prefix. For example,
given a file `r.txt` with each reaction ID on a separate line, the reactions
can be excluded from the `masscheck` command by specifying
`--exclude r.txt`.
- Allow reactions to be excluded from the `formulacheck` and `chargecheck`
commands.

0.14

------------------

- Split the `masscheck` command into two parts. The compound check is run be
default or when `--type compound` is specified. The reaction check is run
when `--type reaction` is specified. This also changes the output of the
compound list to be TSV formatted.
- Change the default method of finding flux inconsistent reactions to simply
use FVA without constraints to determine whether reactions can take a
non-zero flux. This requires more LP optimizations to run but it turns out
to be faster in practice. To enable the old behavior where the number of LP
problems to solve is reduced, use `--reduce-lp`.
- Disable tFBA by default in the FBA performed as part of running
`fastgapfill`.
- Return non-zero from the `psamm-list-lpsolvers` when no solver is available.
- Report time to solve most commands excluding the time it takes to load the
model.
- Improve stability when using thermodynamic constraints. This means that
commands using thermodynamic constraints that previously failed with some
models will now work.
- Speed up changing the objective when using Cplex. This significantly speeds
up commands that reuse LP problem instances with different objectives (e.g.
`fva` and `fluxcheck`).
- Speed up fastcore algorithms (i.e. `fluxcheck --fastcore` and `fastgapfill`)
by reusing the LP problem instances.
- Propagate user aborts from Cplex to Python by raising `KeyboardInterrupt`
when a user abort is detected. This fixes a problem where a user abort would
result in a `FluxBalanceError`.
- Improve unit tests of commands, the `native` datasource module,
`fluxanalysis`, and various other parts of the software.

Page 4 of 7

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.