GitHub user guan404ming created a discussion: Merging qumat-qdp into qumat
## Current Situation * **qumat:** Pure Python package (`hatchling` build) * **qumat-qdp:** Rust extension package (`maturin` build) * **Installation:** Users install via `pip install qumat[qdp]` for full functionality. * **Maintenance:** Two separate packages, two separate release processes. --- ## Option A: Merge into Single Package | Pros | Cons | | :--- | :--- | | **Simple install:** just `pip install qumat`. | All users must download Rust extension (even if unused). | | **Version Sync:** Always in sync; no compatibility issues. | Must build wheels for every platform (Linux/macOS/Windows × x86/arm). | | **Unified Workflow:** Single repo, single release process. | CI/CD becomes more complex (`maturin` + multi-platform builds). | | **Better UX:** More intuitive import paths. | Pure Python users forced to wait for compile or download large files. | | | Unsupported platforms cannot install (no fallback). | --- ## Option B: Keep Two Packages (Current) | Pros | Cons | | :--- | :--- | | **Lightweight:** Pure Python users get a fast, small install. | **Discovery:** Users need to know to use `pip install qumat[qdp]`. | | **Flexibility:** Can release independently with separate versions. | **Overhead:** Must manage version compatibility manually. | | **Robustness:** Graceful fallback when a platform is unsupported. | **Maintenance:** Two distinct packages to maintain. | | **Efficiency:** Small wheel size for the Python-only part. | | | **Modular CI:** CI/CD pipelines can be separated. | | --- GitHub link: https://github.com/apache/mahout/discussions/876 ---- This is an automatically sent email for [email protected]. To unsubscribe, please send an email to: [email protected]
