Simmate

Latest version: v0.17.0

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

Scan your dependencies

Page 3 of 5

0.10.0

**Enhancements**

- add NEB base classes to inherit from for making new subflows
- improve formatting of logging and cli using `typer` and `rich`
- cli now supports auto-completion to help with long commands
- add `convergence_limit` parameter to evolutionary search that works alongside `limit_best_survival`. This will absorb minor changes in energy with equivalent structures from prolonging the search.
- add `ExtremeSymmetry` transformation to attempt symmetry reduction on disordered structure
- account for structures in `fixed-composition` having fewer nsites than input becuase of symmetry reduction during relaxation. Also, add `min_structures_exact` parameter to ensure we have at least N structures with the expected number of sites
- add experimental `variable-composition` (variable refers to nsites, not stoichiometry) and `binary-composition` evolutionary searches
- allow custom workflows to run from yaml
- update MatProj data to new api, and add severl new columns for data (e.g. mag + band gap)

**Refactors**

- isolate optional dependencies so that our install is smaller
- remove click in favor of higher-level package (typer)
- `pre_standardize_structure` and `pre_sanitize_structure` functionality is now merged in to a `standardize_structure` parameter that accepts different mode. `symmetry_tolerance` and `angle_tolerance` parameters can also modify the symmetry analysis done.
- metadata files are now numbered to allow multiple metadata files in the same directory
- refactor & clean up transformation module for readability
- remove `SimmateFuture` class and merge functionality into `WorkItem`
- switch from pdoc to mkdocs for documentation and remove `get_doc_from_readme`. Code and doc organization are now decoupled.
- rename run commands based on user preference. the `run` is now `run-quick`. `run-yaml` is now `run`. `run-cloud` now assumes a yaml input.
- remove `tqdm` dependency in favor of `rich.progress`
- refactor transformations to static methods

**Fixes**

- fix `module not found` error by adding ASE to dependencies
- fix bug with postgres database trying to delete sqlite locally
- fix dask throwing errors with logging
- fix bug where `fixed-composition` searches fail to detect individuals that have been symmetrically reduced (and therefore have fewer nsites than expected)
- fix evolutionary search failures when writing output files while files are opened/locked
- fix NEB workflows failing due to Walltime handler
- fix NEB workflows hints for `workup` failure due to missing start/end image folders

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

0.9.0

**Enhancements**

- improve the warning associated with workflow failure because of "command not found" issues
- workers now ignore and reset tasks that fail with "command not found". 2 workers failing with this error will result in the WorkItem being canceled
- `RandomWySites` can now generate wyckoff combinations lazily (or up front) depending on use case
- add `simmate utilities` command group with `archive-old-runs`
- add `start-cluster` command for starting many local workers
- add `structure-prediction` workflows
- add plotting/output utilities to `EvolutionarySearch` and `relaxation.vasp.staged`


**Refactors**

- evolutionary search now delay creations, transformations, and validation until runtime (used to be at time of structure submission)
- `directory`, `compress_ouput`, and `run_id` are now default input parameters for subclasses of `Workflow`. If these are unused, the `run_config` must include `**kwargs`
- add `isort` for organizing module imports throughout package

**Fixes**

- fixed when `source` is not being registered by several workflows
- fix docker image for installing anaconda, blender, and simmate on ubuntu

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

0.8.0

**Enhancements**

- NEB workflows now accept parameters for changing supercell size and number of images used
- add HSE workflows for static energy, relaxation, and DOS/BS electronic states
- add NPT and MatProj molecular dynamics workflows
- add SCAN workflows for static energy and relaxation
- test files can be provided within zip files, fixing excessive line counts on git commits
- add simmate worker that can run "out-of-box" and requires no set up
- add logging for useful debugging and monitoring of workflows
- pinned dependencies to maximum versions and manage with dependabot


**Refactors**

- to simplify the creation of new workflows, `S3Task` is now `S3Workflow` and database tables are dynamically determined using the workflow name
- workflows of a given type (e.g. relaxation or static-energy) now share database tables in order to simplify overall database architecture
- migrate from `os.path` to `pathlib.Path` throughout package
- isolate prefect use to separate executors
- updated tutorials for new workflow engine and workers
- remove use of `setup.py` in favor of `pyproject.toml`

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

0.7.3

- fix incorrect passing of `source` in NEB all-paths workflow causing it to fail

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

0.7.2

- fix missing SVG files for web UI ([196](https://github.com/jacksund/simmate/pull/196)).

0.7.1

- fix incorrect handling of prefect v2 futures by workflows

Page 3 of 5

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.