Skip to content

pmc-tools/umbi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

89 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

umbi

Library for input/output of transition systems in a unified Markov binary (UMB) format.

Installation:

(optional) create and activate a python environment:

python -m venv .venv
source .venv/bin/activate

Install umbi via

pip install umbi

Running umbi

Examples:

umbi --import-umb /path/to/input.umb
umbi --import-umb /path/to/input.umb --export-umb /path/to/output.umb
umbi --import-umb /path/to/input.umb --export-umb /path/to/output.umb --log-level=DEBUG

Development

Setup

Install development dependencies:

pip install .[dev]

Code Quality

Pre-commit hooks automatically run code quality checks before each commit. Configuration: .pre-commit-config.yaml

Set up the hooks with:

pre-commit install

Run hooks manually on all files:

pre-commit run --all-files

Individual tools can be run manually:

Ruff -- Code formatting and linting. Config: pyproject.toml ([tool.ruff])

ruff check .       # check for issues
ruff format .      # format code
ruff check . --fix # check and fix

Pyright -- Static type checking. Config: pyproject.toml ([tool.pyright])

pyright             # check entire project
pyright umbi/       # check specific directory

Lockfiles

Dependencies are pinned in the uv.lock lockfile for reproducible builds. The lockfile is automatically updated via pre-commit hooks when pyproject.toml changes. To update manually:

uv lock

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages