proto/
python/ommx/
- OMMX Python SDK
- Managed by
pip
, see its configuration inpyproject.toml
rust/ommx/
- OMMX Rust SDK
- Managed by
cargo
, see its configuration in the workspaceCargo.toml
rust/protogen/
- Rust code generator from
*.proto
. Used bycargo run --bin protogen
. This is used only for development, and not published to crates.io.
- Rust code generator from
OMMX Python SDK is Rust/Python mixed project. You need to install Rust and Python development tools.
See the official guide for details.
python -m venv .venv
source .venv/bin/activate
pip install "python/ommx[dev]"
TODO: Another Python development tools like poetry
or rye
cd proto
buf generate --template buf.gen.python.yaml
ruff format ../python
sphinx-build -b html ./python/ommx/docs/source ./python/ommx/docs/build
[!IMPORTANT] The version of ommx
and the adapters should be in sync.
- Update version in
python/ommx/pyproject.toml
- Update version in
python/ommx-python-mip-adapter/project.toml
- Push Git tag with
python-x.y.z
, then the GitHub Actions will release to PyPI
cargo run --bin protogen
- Push a new Git tag named
rust-x.y.z
, then the GitHub Actions will release to crates.io - Create a GitHub release.