This document describes the process for releasing qumat and qumat-qdp. The process is divided into three main phases:
The goal of this phase is to ensure the release candidate is stable and ready for a formal vote.
dev@mahout.apache.org mailing list or Slack.Update version numbers and build the artifacts locally.
Update Versions to RC: Ensure the version includes the rc suffix (e.g., 1.0.0rc1):
qumat/pyproject.tomlqdp/qdp-python/pyproject.tomlqdp/Cargo.toml (if releasing Rust core)Build:
# For Qumat cd qumat && python -m build # For Qumat-QDP cd qdp/qdp-python && maturin build --release
Important: Store these build artifacts safely. They will be used for both PyPI upload and ATR submission.
Upload the generated artifacts to PyPI as a Release Candidate.
# Upload Qumat cd qumat twine upload dist/* # Upload Qumat-QDP cd qdp/qdp-python twine upload target/wheels/*
Note: This makes the RC available on the official PyPI for easy testing with pip install --pre qumat==1.0.0rc1.
Open a GitHub Issue titled “Testing Qumat RC1”.
pip install --pre qumat).This phase is executed by a PMC member or Release Manager using the ATR platform. The PMC votes on source artifacts, which are the canonical release artifacts for Apache projects.
qumat/dist/qumat-1.0.0.tar.gzqdp/qdp-python/target/wheels/qumat_qdp-1.0.0.tar.gzCheck the “Release Candidates” section in ATR to ensure:
Use the ATR platform to generate the Vote email template.
dev@mahout.apache.org.Once the vote passes:
https://dist.apache.org/repos/dist/release/mahout/.After the PMC vote passes, publish the final version to PyPI. The artifacts must be built from the voted source in Apache SVN to ensure they match what the PMC approved.
Automated Process: Set up a GitHub Actions workflow that:
https://dist.apache.org/repos/dist/release/mahout/).Important: The PyPI release is built from the exact source code stored in Apache SVN that the PMC voted on, ensuring consistency between the Apache release and PyPI.
git tag -a v1.0.0 -m "Release 1.0.0" git push origin v1.0.0
main to the next development version (e.g., 1.1.0.dev0).dev@mahout.apache.org.