Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
28 changes: 26 additions & 2 deletions .github/workflows/python-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,23 @@ defaults:
jobs:
python-test:
runs-on: ${{ matrix.os }}
timeout-minutes: 90
timeout-minutes: 240
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]
# Full Python version matrix on Ubuntu (fast)
os: [ubuntu-latest]
python-version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
include:
# Windows/macOS: only test oldest and newest stable Python (slow platforms)
- os: windows-latest
python-version: "3.10"
- os: windows-latest
python-version: "3.14"
- os: macOS-latest
python-version: "3.10"
- os: macOS-latest
python-version: "3.14"

steps:
- name: Free Disk Space (Ubuntu)
Expand Down Expand Up @@ -139,6 +150,13 @@ jobs:
Write-Host "Verifying LLVM installation..."
cargo run -p pecos --features cli --release -- llvm check

- name: Install PECOS CLI (Windows)
if: runner.os == 'Windows'
shell: pwsh
run: |
Write-Host "Installing PECOS CLI..."
cargo install --path crates/pecos --features cli

- name: Build and test PECOS (Windows)
if: runner.os == 'Windows'
shell: pwsh
Expand Down Expand Up @@ -225,6 +243,12 @@ jobs:
just build-debug
just pytest-all

- name: Install PECOS CLI (non-Windows)
if: runner.os != 'Windows'
run: |
echo "Installing PECOS CLI..."
cargo install --path crates/pecos --features cli

- name: Build and test PECOS (non-Windows)
if: runner.os != 'Windows'
run: |
Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,12 @@ tmp/
# pytest results
junit/

# Generated doc tests (from scripts/docs/generate_doc_tests.py)
python/quantum-pecos/tests/docs/generated/

# Generated WASM binaries (compile from .wat source)
*.wasm

# Cython
*.pyc
*.pyd
Expand Down
5 changes: 3 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,9 @@ repos:
- id: black

- repo: https://github.com/keewis/blackdoc
rev: v0.4.1
rev: v0.4.6
hooks:
- id: blackdoc
args: [--line-length=120]
additional_dependencies:
- black==25.1.0
- black==25.9.0
7 changes: 7 additions & 0 deletions .typos.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,10 @@ arange = "arange"
nd = "nd"
# delocate is a macOS wheel repair tool (delocate-wheel command)
delocate = "delocate"
# Gate name breakdown notation uses partial words like C(ontrolled), R(otation)
ontrolled = "ontrolled"
otation = "otation"
repare = "repare"
easure = "easure"
egative = "egative"
agger = "agger"
Loading
Loading