Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Use Rust SDK from compilation to result collection (#1472)
* Add a LocalCompiler that uses the Rust QCS SDK * Collect memory descriptors * quil_to_native_quil takes a quantum processor (not a string ID) * Num shots no worky * Return actual program from compilation * Clean up after Mark * WIP recalc table and patch values * use build_patch_values qcs binding * Fix memory value collection Collection would overwrite entries when a declared block of memory had a length > 1. We now append to a growing list, which should end with a length equal to the declared length in Quil. * Use qcs-sdk for results Required a changed to how buffers are interpreted, due to the change from byte strings to actual lists in the response from the sdk. * Start the new migration guide Just a list of changes for now. Not super comprehensive, but want to ensure we don't lose track of important changes we should eventually call out. * Add qcs-sdk-python to poetry dependencies * retry checks now that linux wheel is available for qcs_sdk * retry checks now that linux wheel is available for qcs_sdk * Rework async * Pass compiler ISA rather than QCS ISA * use qcs-sdk-rust@0.2.0rc0 * fix: Ensure adding programs doesn't mutate the first (#1477) Closes #1476 As noted in #1476, adding programs (like `p1 + p2`) currently mutates the first program (i.e. `p1` would change). This PR ensures that calibrations et. al. are copied rather than just assigned, and adds a new test case to `unit/test_program.py` to ensure against regression: ```shell $ poetry run pytest test/unit/test_program.py --verbose ==================================== test session starts ===================================== platform darwin -- Python 3.9.13, pytest-6.2.4, py-1.10.0, pluggy-0.13.1 -- /Users/genos/rc/repos/pyquil/.venv/bin/python cachedir: .pytest_cache rootdir: /Users/genos/rc/repos/pyquil plugins: cov-2.12.1, freezegun-0.4.2, rerunfailures-9.1.1, xdist-2.3.0, mock-3.6.1, timeout-1.4.2, forked-1.3.0 collected 5 items test/unit/test_program.py::test_measure_qubits PASSED [ 20%] test/unit/test_program.py::test_parameterized_single_qubit_measurement_basis PASSED [ 40%] test/unit/test_program.py::test_parameterized_single_qubit_state_preparation PASSED [ 60%] test/unit/test_program.py::test_parameterized_readout_symmetrization PASSED [ 80%] test/unit/test_program.py::test_adding_does_not_mutate PASSED [100%] ``` * fix: report non-503 http status errors when creating engagements (#1479) * fix: report non-503 http status errors when creating engagements * chore: update docs * chore: prepare release 3.3.1 * chore: poetry update (#1481) * chore: poetry update * chore: update respx dependency * chore: update black and mypy * chore: update tests to match client changes * chore: pin numpy dep to fix type issues * chore: fix lint errors * chore: remove cast * chore: instll mypy types * chore: add types to dependencies * chore: add type deps to lockfile * chore: fix tests mocks * chore: try update sphinx * chore: revert error tolerance and change language to english * chore: fix sphinx issues * chore: revert sphinx update * chore: relax numpy version and fix type errors * chore: prepare release 3.3.2 * Fix: response parsing * Update: support execution against gateway * Fix incorrect validation * fixes * Bump SDK version * Remove test script * Bump major version to v4 * Remove debug print * Update migration guide * Fix lockfile * bump qcs-sdk-python version to 0.3.0 * use qcs-sdk 0.3.1 * update test qcs_settings.toml, make it accessible to rust sdk * share test qcs config between unit and e2e tests, bump scipy, add asyncio-nest as dev dependency * add coveralls as dev dep * attempt at simplifying deps * nest-asyncio needs to be a dev dep * test new qcs-sdk-rust fix * fix types warnings from `make check-types` (#1482) * fix: types * chore: use type-only reference * chore: mr cleanup * chore: update qcs-sdk-python version Co-authored-by: marquessv <marquessavaldez@gmail.com> * skip test with extra HALT instruction Co-authored-by: Mark Skilbeck <mark.skilbeck@rigetti.com> Co-authored-by: marquessv <marquessavaldez@gmail.com> Co-authored-by: Graham <genos@users.noreply.github.com> Co-authored-by: jselig-rigetti <97701976+jselig-rigetti@users.noreply.github.com> Co-authored-by: notmgsk <notmgsk@users.noreply.github.com>
- Loading branch information