diff --git a/docs/user-guide/cli.md b/docs/user-guide/cli.md index 2d3fdfee7..bad4db1a6 100644 --- a/docs/user-guide/cli.md +++ b/docs/user-guide/cli.md @@ -132,7 +132,7 @@ LLVM 21.1: Python: [OK] uv: uv 0.11.3 - [OK] import pecos: v0.8.0.dev8 + [OK] import pecos: v0.9.0.dev0 [OK] pecos_rslib: v0.2.0-dev.0 CUDA (optional): diff --git a/exp/zluppy/uv.lock b/exp/zluppy/uv.lock index 3cbdc80f3..b0248253d 100644 --- a/exp/zluppy/uv.lock +++ b/exp/zluppy/uv.lock @@ -539,7 +539,7 @@ wheels = [ [[package]] name = "pecos-rslib" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "../../python/pecos-rslib" } [package.metadata] @@ -554,7 +554,7 @@ test = [{ name = "pytest", specifier = ">=9.0" }] [[package]] name = "pecos-rslib-llvm" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "../../python/pecos-rslib-llvm" } [package.metadata] @@ -882,7 +882,7 @@ wheels = [ [[package]] name = "quantum-pecos" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "../../python/quantum-pecos" } dependencies = [ { name = "guppylang" }, diff --git a/pyproject.toml b/pyproject.toml index 6ba641da7..25216c1a9 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-workspace" -version = "0.8.0.dev8" +version = "0.9.0.dev0" requires-python = ">=3.10" # Meta-package; runtime deps live in the member packages. Test/example/dev # tooling is declared in [dependency-groups] below. @@ -10,8 +10,8 @@ dependencies = [] # Keep these in sync with the cuda dependency groups below. The extras support # `uv sync --extra cuda13`; the groups support `uv run --group cuda13 ...`. # Pick the extra matching your CUDA major -- do not install both. -cuda13 = ["quantum-pecos[cuda13]==0.8.0.dev8"] -cuda12 = ["quantum-pecos[cuda12]==0.8.0.dev8"] +cuda13 = ["quantum-pecos[cuda13]==0.9.0.dev0"] +cuda12 = ["quantum-pecos[cuda12]==0.9.0.dev0"] [tool.uv.workspace] members = [ @@ -70,10 +70,10 @@ numpy-compat = [ # NumPy/SciPy compatibility tests - verify compatibility with s "scipy>=1.1.0", ] cuda13 = [ # CUDA 13 Python packages for GPU-accelerated simulations (requires CUDA toolkit) - "quantum-pecos[cuda13]==0.8.0.dev8", + "quantum-pecos[cuda13]==0.9.0.dev0", ] cuda12 = [ # CUDA 12 Python packages for GPU-accelerated simulations - "quantum-pecos[cuda12]==0.8.0.dev8", + "quantum-pecos[cuda12]==0.9.0.dev0", ] [tool.uv] diff --git a/python/pecos-rslib-cuda/pyproject.toml b/python/pecos-rslib-cuda/pyproject.toml index fc66e5b6f..4b695fc07 100644 --- a/python/pecos-rslib-cuda/pyproject.toml +++ b/python/pecos-rslib-cuda/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-rslib-cuda" -version = "0.8.0.dev8" +version = "0.9.0.dev0" description = "CUDA/cuQuantum Python bindings for PECOS quantum simulators (Rust implementation)." authors = [ {name = "The PECOS Developers"}, diff --git a/python/pecos-rslib-exp/pyproject.toml b/python/pecos-rslib-exp/pyproject.toml index 6dc1ad382..5fb03235a 100644 --- a/python/pecos-rslib-exp/pyproject.toml +++ b/python/pecos-rslib-exp/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-rslib-exp" -version = "0.8.0.dev8" +version = "0.9.0.dev0" description = "Python bindings for experimental PECOS simulators (StabMps, Mast)." authors = [ {name = "The PECOS Developers"}, diff --git a/python/pecos-rslib-llvm/pyproject.toml b/python/pecos-rslib-llvm/pyproject.toml index 268bc33bd..054a687a3 100644 --- a/python/pecos-rslib-llvm/pyproject.toml +++ b/python/pecos-rslib-llvm/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-rslib-llvm" -version = "0.8.0.dev8" +version = "0.9.0.dev0" description = "LLVM IR generation Python bindings for PECOS (llvmlite-compatible API, Rust implementation)." authors = [ {name = "The PECOS Developers"}, diff --git a/python/pecos-rslib/pyproject.toml b/python/pecos-rslib/pyproject.toml index 262f56eae..9afd3f613 100644 --- a/python/pecos-rslib/pyproject.toml +++ b/python/pecos-rslib/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-rslib" -version = "0.8.0.dev8" +version = "0.9.0.dev0" description = "Rust libary extensions for Python PECOS." authors = [ {name = "The PECOS Developers"}, diff --git a/python/quantum-pecos/pyproject.toml b/python/quantum-pecos/pyproject.toml index 8f8dc7bb0..6ced52fca 100644 --- a/python/quantum-pecos/pyproject.toml +++ b/python/quantum-pecos/pyproject.toml @@ -15,7 +15,7 @@ build-backend = "hatchling.build" [project] name = "quantum-pecos" -version = "0.8.0.dev8" +version = "0.9.0.dev0" authors = [ {name = "The PECOS Developers"}, ] @@ -28,8 +28,8 @@ requires-python = ">=3.10" license = { file = "LICENSE"} keywords = ["quantum", "QEC", "simulation", "PECOS"] dependencies = [ - "pecos-rslib==0.8.0.dev8", - "pecos-rslib-llvm==0.8.0.dev8", + "pecos-rslib==0.9.0.dev0", + "pecos-rslib-llvm==0.9.0.dev0", "phir>=0.3.3", "networkx>=2.1.0", # Pin to the 0.21.x line (tket.bool era). guppylang 0.22+ emits the diff --git a/python/selene-plugins/pecos-selene-mast/pyproject.toml b/python/selene-plugins/pecos-selene-mast/pyproject.toml index 7f122af63..213c1a6cc 100644 --- a/python/selene-plugins/pecos-selene-mast/pyproject.toml +++ b/python/selene-plugins/pecos-selene-mast/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-selene-mast" -version = "0.8.0.dev8" +version = "0.9.0.dev0" requires-python = ">=3.10" description = "PECOS Mast simulator plugin for the Selene quantum emulator" license = "Apache-2.0" diff --git a/python/selene-plugins/pecos-selene-stab-mps/pyproject.toml b/python/selene-plugins/pecos-selene-stab-mps/pyproject.toml index 40b8b2cf1..5cbaedbcb 100644 --- a/python/selene-plugins/pecos-selene-stab-mps/pyproject.toml +++ b/python/selene-plugins/pecos-selene-stab-mps/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-selene-stab-mps" -version = "0.8.0.dev8" +version = "0.9.0.dev0" requires-python = ">=3.10" description = "PECOS StabMps simulator plugin for the Selene quantum emulator" license = "Apache-2.0" diff --git a/python/selene-plugins/pecos-selene-stab-vec/pyproject.toml b/python/selene-plugins/pecos-selene-stab-vec/pyproject.toml index ab99967f4..0eab549d5 100644 --- a/python/selene-plugins/pecos-selene-stab-vec/pyproject.toml +++ b/python/selene-plugins/pecos-selene-stab-vec/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-selene-stab-vec" -version = "0.8.0.dev8" +version = "0.9.0.dev0" requires-python = ">=3.10" description = "PECOS StabVec simulator plugin for the Selene quantum emulator" readme = "README.md" diff --git a/python/selene-plugins/pecos-selene-stabilizer/pyproject.toml b/python/selene-plugins/pecos-selene-stabilizer/pyproject.toml index ab5fbbf82..16ec03ec8 100644 --- a/python/selene-plugins/pecos-selene-stabilizer/pyproject.toml +++ b/python/selene-plugins/pecos-selene-stabilizer/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-selene-stabilizer" -version = "0.8.0.dev8" +version = "0.9.0.dev0" requires-python = ">=3.10" description = "PECOS Stabilizer simulator plugin for the Selene quantum emulator" readme = "README.md" diff --git a/python/selene-plugins/pecos-selene-statevec/pyproject.toml b/python/selene-plugins/pecos-selene-statevec/pyproject.toml index 8cb75aec0..bd9b25eef 100644 --- a/python/selene-plugins/pecos-selene-statevec/pyproject.toml +++ b/python/selene-plugins/pecos-selene-statevec/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "pecos-selene-statevec" -version = "0.8.0.dev8" +version = "0.9.0.dev0" requires-python = ">=3.10" description = "PECOS StateVec simulator plugin for the Selene quantum emulator" readme = "README.md" diff --git a/scripts/publish-wheels.sh b/scripts/publish-wheels.sh index e194d2f56..aa6483811 100755 --- a/scripts/publish-wheels.sh +++ b/scripts/publish-wheels.sh @@ -34,7 +34,7 @@ while [[ $# -gt 0 ]]; do echo "" echo "Options:" echo " -f, --file FILE Path to the GitHub Actions artifact zip (default: pecos-distribution.zip)" - echo " -p, --package PKG Publish only specific package (pecos-rslib or quantum-pecos)" + echo " -p, --package PKG Publish only specific package (pecos-rslib, pecos-rslib-llvm, or quantum-pecos)" echo " --dry-run Show what would be uploaded without actually uploading" echo " -h, --help Show this help message" echo "" @@ -137,16 +137,18 @@ publish_package() { # Main execution if [ -n "$PACKAGE" ]; then # Publish specific package - if [[ "$PACKAGE" != "pecos-rslib" && "$PACKAGE" != "quantum-pecos" ]]; then + if [[ "$PACKAGE" != "pecos-rslib" && "$PACKAGE" != "pecos-rslib-llvm" && "$PACKAGE" != "quantum-pecos" ]]; then echo -e "${RED}Error: Invalid package name '$PACKAGE'${NC}" - echo "Valid options are: pecos-rslib, quantum-pecos" + echo "Valid options are: pecos-rslib, pecos-rslib-llvm, quantum-pecos" exit 1 fi publish_package "$PACKAGE" else - # Publish all packages + # Publish all packages. quantum-pecos pins pecos-rslib and pecos-rslib-llvm + # at exact versions, so publish the dependencies first. echo -e "${GREEN}Publishing all PECOS packages${NC}" publish_package "pecos-rslib" + publish_package "pecos-rslib-llvm" publish_package "quantum-pecos" fi diff --git a/uv.lock b/uv.lock index 663a408b6..999167c4f 100644 --- a/uv.lock +++ b/uv.lock @@ -2927,7 +2927,7 @@ wheels = [ [[package]] name = "pecos-rslib" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/pecos-rslib" } [package.dev-dependencies] @@ -2956,7 +2956,7 @@ test = [{ name = "pytest", specifier = ">=9.0" }] [[package]] name = "pecos-rslib-cuda" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/pecos-rslib-cuda" } [package.dev-dependencies] @@ -2972,12 +2972,12 @@ test = [{ name = "pytest", specifier = ">=9.0" }] [[package]] name = "pecos-rslib-exp" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/pecos-rslib-exp" } [[package]] name = "pecos-rslib-llvm" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/pecos-rslib-llvm" } [package.dev-dependencies] @@ -2993,7 +2993,7 @@ test = [{ name = "pytest", specifier = ">=9.0" }] [[package]] name = "pecos-selene-mast" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/selene-plugins/pecos-selene-mast" } dependencies = [ { name = "selene-core" }, @@ -3017,7 +3017,7 @@ provides-extras = ["test"] [[package]] name = "pecos-selene-stab-mps" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/selene-plugins/pecos-selene-stab-mps" } dependencies = [ { name = "selene-core" }, @@ -3041,7 +3041,7 @@ provides-extras = ["test"] [[package]] name = "pecos-selene-stab-vec" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/selene-plugins/pecos-selene-stab-vec" } dependencies = [ { name = "selene-core" }, @@ -3065,7 +3065,7 @@ provides-extras = ["test"] [[package]] name = "pecos-selene-stabilizer" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/selene-plugins/pecos-selene-stabilizer" } dependencies = [ { name = "selene-core" }, @@ -3089,7 +3089,7 @@ provides-extras = ["test"] [[package]] name = "pecos-selene-statevec" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/selene-plugins/pecos-selene-statevec" } dependencies = [ { name = "selene-core" }, @@ -3113,7 +3113,7 @@ provides-extras = ["test"] [[package]] name = "pecos-workspace" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { virtual = "." } [package.optional-dependencies] @@ -4051,7 +4051,7 @@ wheels = [ [[package]] name = "quantum-pecos" -version = "0.8.0.dev8" +version = "0.9.0.dev0" source = { editable = "python/quantum-pecos" } dependencies = [ { name = "guppylang" },