Skip to content

Rslib direct deps#280

Draft
ciaranra wants to merge 92 commits intodevfrom
rslib-direct-deps
Draft

Rslib direct deps#280
ciaranra wants to merge 92 commits intodevfrom
rslib-direct-deps

Conversation

@ciaranra
Copy link
Copy Markdown
Member

@ciaranra ciaranra commented Apr 3, 2026

No description provided.

ciaranra added 30 commits April 3, 2026 11:40
Replace pecos metacrate dependency with direct crate deps, split
decoders into pecos-rslib-qec and LLVM IR into pecos-rslib-llvm.
Fix build pipeline to call maturin directly instead of through
uv run (which caused full rebuilds every time).

- pecos-rslib now depends on individual crates instead of pecos metacrate
- New pecos-rslib-qec crate for QEC decoder bindings
- New pecos-rslib-llvm crate for LLVM IR generation bindings
- pecos python build now builds all rslib crates
- just build no longer triggers uv sync forced rebuilds
- Add skip-if-no-cuda-rust marker for doc tests
- Remove dead qir_bindings.rs and llvm_context_bindings.rs
- Cache LLVM installation across CI runs (fixed version, keyed by OS+arch)
- Skip LLVM download when cache hit (saves ~5 min per job)
- Install PECOS CLI before LLVM setup in python-test (avoid cargo run overhead)
- Update rust-cache workspaces to include pecos-rslib-qec and pecos-rslib-llvm
- Add new rslib crate paths to rust-test trigger paths
- Reduce python-test timeout from 240 to 120 minutes
- Simplify Windows/macOS setup steps
- Remove duplicated LLVM install/find/check cargo run invocations
- Docs workflow: use --all-packages to install guppylang etc.
- Fix engine_type.rs cfg gate: was feature="llvm" but code uses pecos_qis (needs feature="qis")
- macOS: unset Homebrew library paths inline before build (GITHUB_ENV can't unset)
- Move pecos-rslib-llvm from required to optional dep of quantum-pecos
- Guard pecos_rslib_llvm imports with try/except for when LLVM not installed
- Fixes release workflow test (pecos-rslib-llvm not on PyPI)
- Build pecos-rslib-llvm wheels alongside pecos-rslib in cibuildwheel
- Download and install llvm wheels in quantum-pecos test jobs
- Keep pecos-rslib-llvm as required dep (not optional)
- Revert try/except import guard in gen_qir.py
- Organize llvm wheel artifacts separately in collect step
- Add -rpath /usr/lib to RUSTFLAGS on macOS so cdylibs can find system libc++
- Use just's - prefix for julia/go builds (cross-platform error ignoring)
ciaranra added 30 commits April 4, 2026 15:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant