-
Notifications
You must be signed in to change notification settings - Fork 343
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
V4 - Program and Instruction APIs are backed by quil-rs #1639
V4 - Program and Instruction APIs are backed by quil-rs #1639
Commits on Mar 7, 2023
-
Foundational support for implementing Program with qcs-sdk-python (#1518
) * tear out members, start replacing with rust API (WIP) * first pass as integrating with qcs_sdk.quil * fix low hanging fruit, introduce snapshot testing for passing tests, annotate others with improvements that need to be made * update poetry.lock * more test annotations, fixes, snapshots * deprecation warnings and cleanup * Gate tests and snapshots, pre-replacement with quil-rs * add test for FORKED gate * back Gate with RSGate * fix deprecated notice * test improvements * more cleanup * various cleanups * add more snaps * clean up program per feedback * feat!: The `calibrations` method on `Program` now only returns `DefCalibration`s. A `Program`s the `DefMeasureCalibrations` can be retrieved via the new `measure_calibrations` method. * update instruction handling logic * deprecate valid protoquil/quilt methods * add compatibility layer by overriding quil_rs.Gate superclass methods * remove gate __init__ method * remove old comments * revert defcal changes * safer type checking on conversion methods * simplify ParameterDesignator Type * forbidden metaclass shenanigans * Update pyquil/quil.py Co-authored-by: Kalan <[email protected]> * use deprecated decorator * update qcs-sdk-python dependency spec --------- Co-authored-by: Kalan <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9c7de67 - Browse repository at this point
Copy the full SHA 9c7de67View commit details
Commits on Mar 9, 2023
-
V4 Setters for the Gate class (#1535)
* add and test setters * use simple enum syntax
Configuration menu - View commit details
-
Copy full SHA for 0488e08 - Browse repository at this point
Copy the full SHA 0488e08View commit details
Commits on Mar 14, 2023
-
Use quil_rs for Calibrations (#1536)
* setup test suite for DefCalibration * back DefCalibration with quil_rs.Calibration * fix metaclass implementation so all instruction types aren't recognized as the same * back DefCalibration with quil_rs.Calibration * setup DefMeasureCalibration tests * back DefMeasureCalibration with quil_rs.MeasureCalibrationDefinition * gate calibrations with quil_rs * more efficient handling of calibrations * setup Measurement tests * back Measurement with quil_rs * use calibration set api for calibrations * BREAKING CHANGE: DefMeasureCalibration now requires a MemoryReference * update tests * cleanup stale todos, match calibration logic * type hints for tests * remove redundant guard in match_calibrations Co-authored-by: Kalan <[email protected]> --------- Co-authored-by: Kalan <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for c2f8803 - Browse repository at this point
Copy the full SHA c2f8803View commit details
Commits on Mar 15, 2023
-
Configuration menu - View commit details
-
Copy full SHA for dd1a2f2 - Browse repository at this point
Copy the full SHA dd1a2f2View commit details
Commits on Mar 17, 2023
-
BREAKING CHANGE: DefFrame and Frame are no longer dataclasses
We've removed the @DataClass decorator from `DefFrame` and `Frame`. `Frame`s properties can now be edited. Most functionality should have been re-implemented, but breakages may be possible, depending on how much of the @DataClass functionality was being leveraged.
Configuration menu - View commit details
-
Copy full SHA for 961a8d2 - Browse repository at this point
Copy the full SHA 961a8d2View commit details -
Use quil-rs FrameSet API and compatibility layer (#1543)
* setup Frame and DefFrame test suites * add eq test * back Frame with quil_rs FrameDefinition * back DefFrame with quil_rs.FrameDefinition * fix flaky DefFrame snapshot tests * cleanup imports * "unfreeze" Frame properties * use FrameSet API and compatibility layer, with tests * update calibrations property as well * center_frequency -> CENTER-FREQUENCY * fix attribute names in DefFrame * update snapshot
Configuration menu - View commit details
-
Copy full SHA for 651839a - Browse repository at this point
Copy the full SHA 651839aView commit details
Commits on Mar 20, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 98061b5 - Browse repository at this point
Copy the full SHA 98061b5View commit details
Commits on Mar 21, 2023
-
BREAKING CHANGE: Setting the offsets property on
Declare
will raise…… a `ValueError` if no shared_region is set. * setup tests for Declare * BREAKING CHANGE: Setting the offsets property on ``Declare`` will raise if no shared_region is set. * update tests * add note * trust truthy/falsy values
Configuration menu - View commit details
-
Copy full SHA for 36c56a6 - Browse repository at this point
Copy the full SHA 36c56a6View commit details
Commits on Mar 22, 2023
-
BREAKING CHANGE: A
Program
that uses qubit or label placeholders ca……nnot be pickled
Configuration menu - View commit details
-
Copy full SHA for 5c56427 - Browse repository at this point
Copy the full SHA 5c56427View commit details
Commits on Mar 31, 2023
-
V4 Program API: Back GateDef with GateDefinition (#1549)
* setup DefGate test suite * add baseline tests for permutation and pauli gates * compatibility for paulis, expressions, back DefGate with GateDefinition * back DefPermutationGate with quil-rs * back DefGateByPaulis w/ quil-rs * better support Expressions * dont try to support Expressions * cleanup * update tests * combine int, float, and complex conversion
Configuration menu - View commit details
-
Copy full SHA for d5d7d38 - Browse repository at this point
Copy the full SHA d5d7d38View commit details
Commits on Apr 7, 2023
-
* setup DefWaveform tests * back DefWaveform with quil-rs * update snapshot * clean up redudnant import * implement DefCircuit using quil-rs * add DefCircuit|Waveform to py instruction conversion method * update snapshot after instruction indentation fix
Configuration menu - View commit details
-
Copy full SHA for d6a8ef4 - Browse repository at this point
Copy the full SHA d6a8ef4View commit details
Commits on Apr 10, 2023
-
V4 Instruction API: Pragma, Reset, Fence, Delay (#1551)
* setup Pragma tests * setup tests for Qubit * setup tests for Fence * back Pragma with quil_rs.Pragma * back Reset, ResetQubit, with quil-rs * Back Delay(Frames|Qubits) with quil-rs * update Delay implementation per feedback * back Fence, FenceAll, with quil-rs * remove unused snapshots, prints * update convers to rs/py instruction functions * better type for numpy numbers * cleanup, and assert ResetQubit qubit is not None
Configuration menu - View commit details
-
Copy full SHA for a243b3e - Browse repository at this point
Copy the full SHA a243b3eView commit details -
BREAKING CHANGE: The
pop
method has been removed fromProgram
* remove to_headers * BREAKING CHANGE: The `pop` method has been removed from `Program` * remove to_headers arg
Configuration menu - View commit details
-
Copy full SHA for eb82e2d - Browse repository at this point
Copy the full SHA eb82e2dView commit details
Commits on Apr 13, 2023
-
* BREAKING CHANGE:
TemplateWaveform
and its subclasses are no longe……r dataclasses. Most important functionality has been replaced so this change should be transparent for most use cases. * setup tests for Capture * setup tests for Pulse * create tests for RawCapture * add tests for template waveforms * add compatibility layer for TemplateWaveforms * back Capture with quil_rs * back Pulse with quil_rs * back RawCapture with quil_rs * BREAKING CHANGE: `TemplateWaveform` and its subclasses are no longer dataclasses. Most important functionality has been replaced so this change should be transparent for most use cases. * deprecation warning for TemplateWaveform and its subclasses, direct to new WaveformInvocation class
Configuration menu - View commit details
-
Copy full SHA for ce6f540 - Browse repository at this point
Copy the full SHA ce6f540View commit details -
BREAKING CHANGE: SwapPhase has been renamed to SwapPhases
* setup up tests for set/shift instructions * setup tests for SwapPhase * back frame mutation instructions with quil-rs * back SwapPhase with quil-rs * formatting * BREAKING CHANGE: SwapPhase has been renamed to SwapPhases
Configuration menu - View commit details
-
Copy full SHA for 31d5454 - Browse repository at this point
Copy the full SHA 31d5454View commit details
Commits on Apr 20, 2023
-
V4: Deprecate format parameter (#1566)
* update mypy, fix various lints, deprecate format_parameter * returns variable length tuple * a few more lints * more lints
Configuration menu - View commit details
-
Copy full SHA for 7b33cd3 - Browse repository at this point
Copy the full SHA 7b33cd3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4a06343 - Browse repository at this point
Copy the full SHA 4a06343View commit details
Commits on May 1, 2023
-
V4: The rest of the non control-flow instructions (#1568)
* ClassicalConvert tests * tests for Classical(Exchange|Load|Move) * ClassicalStore tests * test ClassicalComparison classes * test UnaryClassicalInstructions * Include implementation and test * Wait, Halt, Nop test and implementation * implement ClassicalConvert * re-implement ClassicalLoad * re-implement ClassicalStore * re-implement ClassicalComparison * re-implement Exchange * re-implement ClassicalUnary * back ClassicalMove, ClassicalExchange with quil-rs * fix recursive implementation of SimpleInstruction.__str__
Configuration menu - View commit details
-
Copy full SHA for b36d8ff - Browse repository at this point
Copy the full SHA b36d8ffView commit details
Commits on Jun 7, 2023
-
Configuration menu - View commit details
-
Copy full SHA for a4c5f83 - Browse repository at this point
Copy the full SHA a4c5f83View commit details
Commits on Jun 9, 2023
-
fix!: The
get_qubits
method on aGate
now returns a list so thatordering is always guaranteed.
Configuration menu - View commit details
-
Copy full SHA for 7009382 - Browse repository at this point
Copy the full SHA 7009382View commit details -
Configuration menu - View commit details
-
Copy full SHA for 89b915a - Browse repository at this point
Copy the full SHA 89b915aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9161680 - Browse repository at this point
Copy the full SHA 9161680View commit details -
Configuration menu - View commit details
-
Copy full SHA for b467b09 - Browse repository at this point
Copy the full SHA b467b09View commit details -
Configuration menu - View commit details
-
Copy full SHA for 960814b - Browse repository at this point
Copy the full SHA 960814bView commit details
Commits on Jun 15, 2023
-
Configuration menu - View commit details
-
Copy full SHA for f681713 - Browse repository at this point
Copy the full SHA f681713View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4abb2e4 - Browse repository at this point
Copy the full SHA 4abb2e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for dd38f33 - Browse repository at this point
Copy the full SHA dd38f33View commit details
Commits on Jun 16, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 4d00d72 - Browse repository at this point
Copy the full SHA 4d00d72View commit details -
Configuration menu - View commit details
-
Copy full SHA for b8111d0 - Browse repository at this point
Copy the full SHA b8111d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 40269d0 - Browse repository at this point
Copy the full SHA 40269d0View commit details -
Configuration menu - View commit details
-
Copy full SHA for 415f535 - Browse repository at this point
Copy the full SHA 415f535View commit details -
Configuration menu - View commit details
-
Copy full SHA for b06cfec - Browse repository at this point
Copy the full SHA b06cfecView commit details -
Configuration menu - View commit details
-
Copy full SHA for db5806e - Browse repository at this point
Copy the full SHA db5806eView commit details
Commits on Jun 28, 2023
-
BREAKING CHANGE: fill_placeholders has been removed as it is no longer
used to expand calibrations
Configuration menu - View commit details
-
Copy full SHA for 8a4aae1 - Browse repository at this point
Copy the full SHA 8a4aae1View commit details
Commits on Jul 10, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 7ca26c5 - Browse repository at this point
Copy the full SHA 7ca26c5View commit details
Commits on Jul 11, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 4676782 - Browse repository at this point
Copy the full SHA 4676782View commit details -
Configuration menu - View commit details
-
Copy full SHA for df5f753 - Browse repository at this point
Copy the full SHA df5f753View commit details
Commits on Jul 14, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 8651e1f - Browse repository at this point
Copy the full SHA 8651e1fView commit details
Commits on Jul 18, 2023
-
chore! Remove
parser
module (#1618)* chore!: Remove `parser` module. A `Program` can instead be constructed from a Quil program string directly. The full list of `AbstractInstruction`s is available on the `instructions` property. * fix flaky test * add parantheses to assertion
Configuration menu - View commit details
-
Copy full SHA for c1a1fff - Browse repository at this point
Copy the full SHA c1a1fffView commit details
Commits on Jul 28, 2023
-
V4 Program API: De-dupe definitions when adding instructions to a Pro…
…gram (#1625) * wip - de-dupe based on abstract instruction * normalize incoming instructions ot quil-rs types * a lil more cleanup * update docstrings * bump qcs-sdk-python/quil
Configuration menu - View commit details
-
Copy full SHA for 6be90f4 - Browse repository at this point
Copy the full SHA 6be90f4View commit details
Commits on Aug 24, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 8abc581 - Browse repository at this point
Copy the full SHA 8abc581View commit details
Commits on Aug 29, 2023
-
V4 Program API - Placeholders and Control Flow (#1633)
* use to_quil() in out() methods * simplify inst * fix test_quilbase tests * fix other failing tests * make instructions consistent with v3 implementation * back Label with quil_rs * back LabelPlaceholder with quil_rs * back QubitPlaceholders with quil_rs * fix off by 1 in test * checkpoint: update/fix many tests * checkpoint: all tests passing! * use renamed method * some mypy fixes * replace deprecation with deprecated * import sphinx decorator * fix mypy lints and dangling todos * get docs building * fix doctests * update doctests * simplify pauli from_list * instrucion->instruction * use body_instructions property * update a few old references to instructions * one more * add resolve_placeholders_with_custom_resolvers method * various small fixes * Remove support for QubitPlaceholders as Pragma arguments * fix typo Co-authored-by: Kalan <[email protected]> * Update CHANGELOG.md Co-authored-by: Kalan <[email protected]> * Update CHANGELOG.md Co-authored-by: Kalan <[email protected]> * Update CHANGELOG.md Co-authored-by: Kalan <[email protected]> * Update CHANGELOG.md Co-authored-by: Kalan <[email protected]> * remove duplicate entry * ignore sphinx warnings * grammar * update qcs-sdk-python --------- Co-authored-by: Kalan <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b23db51 - Browse repository at this point
Copy the full SHA b23db51View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8614e5b - Browse repository at this point
Copy the full SHA 8614e5bView commit details -
Configuration menu - View commit details
-
Copy full SHA for fb381cc - Browse repository at this point
Copy the full SHA fb381ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5addfb6 - Browse repository at this point
Copy the full SHA 5addfb6View commit details -
Configuration menu - View commit details
-
Copy full SHA for b958b5e - Browse repository at this point
Copy the full SHA b958b5eView commit details -
Configuration menu - View commit details
-
Copy full SHA for e2184f1 - Browse repository at this point
Copy the full SHA e2184f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1b76766 - Browse repository at this point
Copy the full SHA 1b76766View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1fd0ce1 - Browse repository at this point
Copy the full SHA 1fd0ce1View commit details -
Configuration menu - View commit details
-
Copy full SHA for eb5c320 - Browse repository at this point
Copy the full SHA eb5c320View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1e7c0af - Browse repository at this point
Copy the full SHA 1e7c0afView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6b79630 - Browse repository at this point
Copy the full SHA 6b79630View commit details