This version of PySB supports Python 3.6-3.9. Python 2.7 is no longer supported.
New features
- Implement reversible synthesis rules (#499)
Improvements
- ScipyOdeSimulator speedup through refactoring, use of partial (#531, #483)
- Use double precision for BNG and Kappa parameters (#490)
- Allow constant expressions for compartment sizes (#525)
- Faster SimulationResult loading: use slices (#491)
- Implement BNG boolean treatment within expressions, e.g. evaluate
(2 > 1)
asTrue
(#494) - Import ABC from collections.abc instead of collections for Python 3.9 compatibility (#485)
- Implement the assumption that all symbolic variables in a model only take real values. The user can specify integer and non-negative enforced assumptions about parameter values. Changes are relevant for any simplifications of symbolic expressions in the model (#475)
- Update tested Python versions on CI (#479)
- Remove weave and theano support from ScipyOdeSimulator (#482)
- Remove Python 2 support (#486, #487)
- Update docs with Python version support (#492)
- Update docs with stubs on calibration and PySB modules to tutorial (#509)
- Update deprecated pandas call in CupSodaSimulator (#523)
- Remove deprecated sympy.boolalg calls (#526)
- Specify Python>=3.6 requirement in setup.py (#536)
Bug fixes
- Fix sympy 1.6 compatibility (#505)
- Fix observable trajectories on HDF5 load (#502)
- Fix reading of error messages from cupSODA (#510)
- Fix SBML export with unset compartment size (#513)
- Fix eqn_mode='python' for models with local functions (#495)
- Fix typehints in core (#507, #520)
- Fix BNG code generation for
Eq
andNe
(#528) - Fix StochKit export of certain PySB rate Expressions (#521)
- Copy annotations when creating model from base (#493)
- Fix SimulationResult loads when
include_obs_exprs=True
and model has no observables or expressions (#481) - Fix an error when using ScipyOdeSimulator with the num_processors option >1 (i.e. use multiprocessing) together with compiler='python' (#480)
- Fix usage of super in multiple inheritance of sympy.Symbol (#474)
- Fix readthedocs error with updated mock (#489)
- Fix slice IndexError in tutorial (#529)
- Fix tutorial typos (#511)
- Fix DeprecationWarning leading to test failure with new versions of h5py (#537)