Download Latest Version v1.7.0 source code.zip (9.2 MB)
Email in envelope

Get an email when there's a new version of Cirq

Home / v1.7.0
Name Modified Size InfoDownloads / Week
Parent folder
cirq_web-1.7.0-py3-none-any.whl 2026-06-30 294.0 kB
cirq_google-1.7.0-py3-none-any.whl 2026-06-30 733.7 kB
cirq_ionq-1.7.0-py3-none-any.whl 2026-06-30 77.6 kB
cirq_pasqal-1.7.0-py3-none-any.whl 2026-06-30 34.7 kB
cirq_aqt-1.7.0-py3-none-any.whl 2026-06-30 32.3 kB
cirq_core-1.7.0-py3-none-any.whl 2026-06-30 2.1 MB
cirq-1.7.0-py3-none-any.whl 2026-06-30 11.0 kB
README.md 2026-06-29 27.9 kB
v1.7.0 source code.tar.gz 2026-06-29 7.9 MB
v1.7.0 source code.zip 2026-06-29 9.2 MB
Totals: 10 Items   20.4 MB 10

Cirq v1.7.0 release

General

Added support for Python 3.14 and protobuf-6. Increased the minimum version of NumPy to 2.1. Established performance benchmarks suite based on pytest-benchmarks. Increased type-check coverage for return types of public functions. Improved speed and reliability of the CI test suite.

cirq-core

Added CY and CCY gates. Added circuit insertion strategy LATEST to complement EARLIEST. Improved handling of measurement and control keys overlap in Circuit.insert and Circuit.append. Added efficient sparse matrix computation to PauliString and PauliSum. Improved dynamical decoupling transformer to better preserve input circuit structure. Added lightcone filter transformer. Thoroughly optimized computation of PhasedXZGate unitary and of its has_stabilizer_effect flag. Added tools for creating GHZ state-preparing circuits with 1D and 2D connectivity of qubits. Added cirq.symbol function for a more convenient setup of parametrized circuits. Improved handling of unordered sets in cirq.approx_eq.

cirq-core contrib

Added functions for measuring expectation values of Pauli strings with readout and T-rex error mitigations. Added tool for measuring the fidelity of GHZ states. Enhanced support for import and export of circuits to QASM 3. Added publication-quality circuit rendering via LaTeX and Quantikz (experimental).

cirq-google

Many enhancements to utilize developments of the internal QuantumEngineService. Improved support and efficiency of running multi-circuit and batched parametrized-circuit programs. Added specialized gates to express options and parameters available for Google quantum hardware. Added simulator for circuits with analog gates.

cirq-ionq

Updated IonQ client for the IonQ API version 0.4. Added support for retrying engine requests that failed due to service rate limits.

cirq-pasqal

Fixed PasqalGateset to correctly produce single-gate moments in transformed circuits.

cirq-web

Migrated from Webpack to the Vite framework for Typescript development and packaging.

A Huge Thank You

Thank you to all our contributors for this release:

A.C.E07, Aarush, Anton Kast, Aqil Ahmad, Bicheng Ying, Chris Bunch, Codrut Grosu, Danni Wang, Dax Fohl, Devon Yates, Doug Strain, Edge Seven, Eliott Rosenberg, Gangavarapu Vivek, Guilherme Dionysio, Jagan Kalsi, Joe Schulte, Jon Donovan, Kamal Al-Ameri, Kanguk Lee, kataro92, Matt Wenner, Matthew Neeley, Michael Hucka, Michael Qian, Nate Stemen, Nour Yosri, Patryk Kowalewski, Pavol Juhas, Quantova-Inc, Radu Marginean, Rahil Jain, Renyi Chen, Revanth Gundala, Ross Peili, Sena Gul Hazir, Seun Omonije, Shashwat Kumar, Shih-Cheng Tu, Shubham Agrawal, Spencer Churchill, Supash Ramesha, William (Acciaccatura), Zlatko Minev

What's Changed

de651a7886 Removing 1.7.0.dev0 -> 1.7.0 bf0ed0c6ae Fix small bugs in top-level README.md file (#8166) ae6959fdaf Flush deprecations for the 1.7.0 release (#8165) 2fa26d0284 Fix histogram() for qudits by adding fold_base parameter (#8138) cedfc6d9de Fix circuit reversal when searching for shortest stratified_circuit in reverse (#8164) 0bd08de54b Add qubit_attributes to GridDeviceMetadata and corresponding proto (#8155) f0e4c73071 Add sparse_matrix() to PauliString and PauliSum (#8127) 498d35e20f Add some utilities for T-rex error mitigation (#8095) d97892b990 Add note that PauliSum does not preserve gate order of summed PauliStrings (#8163) 0f28d2eaee Add test for text fontsize in SVG circuit diagrams (#8161) dc296ed486 When recovering from a failed stream, attempt to create missing programs/jobs if they are not found (#8151) f98e5bdcc2 Fix the ci-daily job (#8160) 592c001bdd Replace inplace assignment of NumPy array shape (#8159) 8cb539e2fd CI - use all runner CPUs in ci-daily and ci-weekly (#8149) 7cf89efb52 For development install cirq-packages in an editable mode (#8148) 5b2b46bc2f Escape xml characters in all svg text instructions (#8144) 6baa941c3f Update spin echoes tutorial transformer usage (#8137) a4e92af866 pytest - parametrize tests using collection containers only (#8142) 835ca4bc9e Validate device_config_revision type in cirq-google (#8135) 780fe1fda8 Make DD more stable (#8130) c80eb1dc76 Update Scientific Python dependencies per NEP-29 and SPEC-0 (#8133) aec7393570 Fix typecheck - remove unnecessary type-ignore comment (#8136) 6922063c70 Fix RCE in BooleanHamiltonianGate decomposition (CWE-502 -> CWE-94) (#8110) ba1b578947 Allow top-level cirq_google.Snapshot and cirq_google.Run (#8126) 3db82dd725 Replace noninclusive dummy and sanity language (#8103) (#8120) a596e1cb7c Update triage party configuration (#8080) 4738170485 Proto used to hold the output of QEC circuit calibration (#8100) 7edca25fb6 Tweaks to lightcone filter test function (#8109) 74abd87e7e Add lightcone filter transformer (#8107) a9a16b6bf6 Add docstring to the QubitManager abstract base class (#8108) defc9a0258 Add LeakageISWAP gate to cirq_google (#8099) 650016fe8e Add LZSResetViaResonator Gate to Cirq-google (#8093) 6527aabbf6 Add quantum engine batched_results() (#8092) fe135f6ba3 Deflake notebook_test when run in parallel (#8090) 503a24622d Adds MultilevelResetViaResonator gate to cirq_google (#8089) f4c35b0209 Support non-uniform repetitions in batch jobs (#8088) 5f5c5ae880 Fix internal sub_state_vector test failure due to tight atol (#8085) d1cab3559f Disable local Google Cloud credentials in cirq-google tests (#8083) 15e1e5daf6 Fix patching of CIRQ_TESTING environment variable (#8084) bde5ffa66e Fix issues with multi-circuit size in Engine (#8076) 3bc60a870f (2/2) Combine Pauli measurements and postselection (#7970) be76e86b34 Fix bug in circuit.insert (#7823) ccf35e6d09 Fix ci-daily run on windows-2022 (#8082) 7228447cc6 Clean up recent changes in sub_state_vector (#8081) 02e927f2a4 Sub state vector (#8077) bf16378d26 Improve fixup order in check/all --fix (#8079) 76910aae86 Fix broken IonQ links (#8075) 77533197a9 Replace specific loops with Boolean masking and vectorized assignments (#8045) 852f92e515 Micro optimization to Moment initialization. (#8069) af4e48d683 Add argument check to move_pauli_strings_into_circuit (#7985) de66262845 Fix ordering in Engine.run_batch (#8060) f55763cb1a Add multi-circuit capability to EngineJob.get_circuit (#8057) c73d890d21 Fix flaky EngineProcessor time filter tests (#8058) f5300e02fc Change canonicalization of PhasedXZGate to preserve pi-pulse rotation axis (#8053) 2821085f80 Update .github/CODEOWNERS file (#8055) aff3efc722 Improve inefficient string concatenation in clifford_tableu.py (#8044) c40e01dac2 Make program.run() return an EngineJob so it's consistent with program.run_sweep() (#8048) fdf7e50930 All multi-circuit programs to be batched in the same request in Engine. (#8036) 89993a988c Finalize conversion from asv to pytest-benchmark (#8051) 8691276966 Fix bash_scripts_test when invoked from pytest --cov (#8050) 574dfeb60a CI - automatically convert new dependabot PRs to draft (#8043) fcdf63eb2e Support "input" modifier in QASM3 parser (#7997) b3366abd0e Add pull-request note for the first-time contributors (#8016) 7e113e640a Convert attribute docstrings to conventional docstrings (#8037) b8ff93e123 Wrap calls to deprecated functions in qubit_characterizations_test.py (#8031) 603755ab7b In histogram.py, only apply log scale if data has positive values (#8032) a46677eddf CI - ensure concurrency group name is unique (#8035) c58771f8f8 Avoid circular dependency hack in periodic_value.py (#8030) 631482396b Update protobuf to 6.32.1 or later version 6 (#8029) f876e70d5d Address mypy complaint showing for typedunits-0.0.2 (#8033) 52cfc35c3e Add texlive-latex-extra to required system packages (#8027) 096fe82b95 Run pytest-changed-files-and-incremental-coverage in a serial mode for small changes (#8025) 5b3eb0b4c0 Replace sortedcontainers with builtin collections (#8020) 3f054e8cad Streamline .gitignore file (#7992) 3175c9d4bb Update Scientific Python dependencies per NEP-29 and SPEC-0 (#8019) 20bbeece89 Fix bug & improve stale issue/PR handling workflow (#8010) c7c054ecd6 Add .toml and .cff rules to .editorconfig, and clean up file comments (#7994) cd63aad218 Treat classically controlled ops as non-Clifford in dynamical_decoupling (#7621) aa9a4dadc2 Filter Scorecard results about version hash of cifuzz (#7993) 2941583ac3 Only use chr(30) and chr(31) delimiters in cirq-ionq (#7699) c80fb73ac7 Run black formatter with the --fast option to suppress warning (#8015) 5975e16ba8 Disable Cloud credentials for papermill execution from notebook test (#8014) a9445bb906 Enable testing of the pasqal/getting_started.ipynb notebook (#8011) c3507d8292 CI - use Python 3.14 to run the format check (#8008) d7bc1096e7 Remove obsolete code for handling quimb-1.2 (#7999) c14de40b74 Add test coverage for an exception handling case in quimb/state_vector.py (#7987) 9677ce59f8 Replace awkward if-if wording in a docstring (#7998) 1432127222 Use SVD-based fidelity for density matrices and add numerical stability test (#7292) 90fb609a94 Fix PasqalGateset optimization to enforce single-gate moments [#6655] (#7972) e74a2a366f Fix typos, grammar errors, and capitalization inconsistencies in docstrings (#7989) 9a4d2b1bf5 Add workflow for labeling issues (#7990) 7960fe7c47 Fix matching operator for ignored files in size-labeler.sh (#7986) 1d14c84934 use concurrent.futures.Executor instead of multiprocessing pool to resolve conflict with duet (#7938) 9888067c5c Avoid broad Exception catch in consistent_resolve_parameters (#7979) 336a71f573 fix typo (#7977) c4ea4e5d9c Further speed up CIFuzz workflow (#7973) 9e6c70a993 Adding new 'get_job' helper method. (#7969) e605fa86e1 Add corresponding serialization for TwoPulseFSimTag (#7971) fe9365022c Make parallel_xeb.parallel_two_qubit_xeb reproducible w/r to randomly_seed (#7968) f7cb548686 Add hash support to UniformSuperpositionGate via value_equality (#7967) 04eb36631a Remove canonicalization of exponents and update tests to reflect the new changes (#7954) 353a92816d Fix TypeError when checking unhashable gates in Gateset.contains (#7963) a48d60a273 Deprecate the --apply-format-changes option of check/all (#7964) b2a6af6039 Improve the check/all testing script (#7962) 0c987fc6a8 Mark slow benchmarks to shorten overall runtime (#7960) fd5d1dd6c6 Fix [#2643]: add module string to contrib/acquaintance (#7952) 7a0f7ade8a Add ruff step to development.md (#7951) 8aacb644cd Add GHZ fidelity tool (#7944) 9dc6526155 If job result streaming fails, fall back on EngineClient.get_job_results_async (#7950) b96afa9ee2 Clean up snippet test errors in ionq and pasqal md files (#7918) 6689231bd8 CI - check only the required Python versions for merge queue (#7949) 83165d3307 CI - check for the ci/no-release label first (#7948) 1ac366c98f Fix return order in the docstring of two_qubit_matrix_to_diagonal_and_cz_operations (#7947) 61a6993b2a Remove documentation about how to fetch calibration for specific job.… (#7935) e3bddbeb44 Add 1d GHZ circuits (#7936) 3bc3aa476d Add pytest-benchmark to development requirements (#7937) 4c287461c0 fix circuit routing failure for directed device graph (#7889) 8b8050ec91 Add TwoPulseFSimTag (#7929) a2a7dc1b6c CI - provide token for GitHub CLI used in the release workflow (#7928) df4f3ff956 Fix detection of ci/no-release label in a push event (#7927) f71191e32a Fix detection of the ci/no-release label in a push event (#7917) bf22232ba2 Skip cirq pre-release if PR has ci/no-release label (#7915) 5f7c592a35 Use temporary per-file exclude in snippets_test (#7914) 7eba335bbf CI - disable ci-daily tests with Python 3.14 on Mac OS X (#7912) b8bfd90bdc (1/2) Combine Pauli measurements and postselection (#7746) e5173b7fc7 Fix docs/google snippet error and add to snippets_test (#7803) d83772105f ruff - enable and fix selected RUF rules (#7883) 66cc4c8f7b Use bit better mocks of AbstractProcessor (#7909) 912a76e6a6 Ruff furb implementation (#7907) 349378a8fe ruff - enable and fix N805 (#7903) d86ac0381a Add analog simulator (#7896) f3284ea82b Supporting run_id and snapshot_id in create_job_async / run_job_over_stream (#7897) 0ce9341eef Fix comments in routing_transformer.ipynb (#7899) 9847f17bcb CI - fix type checking complains that arise with numpy-2.4.2 (#7902) 5516f733bd Cleaned up some typos in comments and variable names (#7898) 11b5233093 ruff - enable and fix selected PERF rules (#7895) ecffd22e9b Fix LineQubit.neighbors and GridQubit.neighbors for iterator qids (#7893) a6519bb41d Add CY and CCY gates (#7894) 657c8ddfc7 CI - activate tests with Python 3.14 on Mac OS X (#7833) 149e266d6c [Magic square game] add comments (#7890) 650e200224 ruff - enable and fix PLE1205 (logging-too-many-args) (#7888) f24a68ba8a ruff - enable and fix selected PLR rules (#7887) b34d78dbc7 ruff - enable and fix selected PLW rules (#7886) 7c0b7758ec ruff - enable and fix selected SIM rules (#7882) 931d5fd607 Ruff ret implementation (#7884) 4f3f6ea4fb Support routing for directed device graphs (#7810) fde100ebc6 Add measure_on_full_support to optimize Pauli string readout mitigation (#7760) b6c8c092b9 ruff - enable and fix the C4 (flake8-comprehensions) rule (#7881) e1d51cd8b5 Fix test_submit_cancel_future_expects_engine_cancellation_rpc_call for Python 3.13.12 (#7879) bd4c30b0dc Use Python 3.12 for Python coverage tests (#7878) 9a99c60cbe Fix incorrectly joined multi-line strings (#7877) 5361ecfb1d Take advantage of sys.monitoring for small speedup of tests in Python 3.12+ (#7777) 052f0879c8 Add CSWAP support to ClassicalStateSimulator (#7844) 2e3cc3840c Add parallel-fuzzing flag to run_fuzzers step (#7872) 8e9f83ce0f Ignore source code formatting in git blame (#7875) 8e1901a6a3 Remove unused methods _decompose_into_clifford_* (#7855) a003880731 Add recursion support (#7843) 54a66472d4 CI - record randomly_seed value in pytest XML report (#7865) 3712c3d918 Move mypy configuration to pyproject.toml (#7864) 14cb77b98e Add metadata fields to results proto for keyed circuits (#7861) c346e502d2 Deflake the status test of an asynchronous SimulatedLocalJob (#7862) 3b03ef6731 Move pylint configuration to pyproject.toml (#7859) 4e65c209ac Add cirq.symbol function to create a sympy.Symbol. (#7853) ef5e2f7059 pylint - fail for unnecessary pylint-disable comments (#7857) 3f5c3c6425 Speed up Fuzzing workflow (#7856) 0eab4c216e Optimize PhasedXZGate._has_stabilizer_effect_ a bit more (#7852) ca1c21ab0a Add cifuzz CI config for OSS-Fuzz (#7625) f066e63f00 Fix EngineProgram.get_circuit(async) empty code detection (#7850) 2ef9f37406 Fix EngineClient.list(jobs|programs) (#7848) 9d01b0ba0c Replace importlib_metadata with builtin importlib.metadata (#7847) 6a0fd11d81 CI - skip Pytest Windows with Python 3.14 (#7846) f65e3e955a Convert ASV benchmarks to pytest-benchmark (#7799) 6147746f37 doctest - improve loading of doctest examples (#7842) 1fbb24473b Extend pandas compatibility window to include pandas-2.2 (#7845) 9f96ca59f5 CI - eliminate duplicate test report for Pytest Ubuntu (#7839) 19c2c0d94c CI - add dedicated workflow to monitor performance of Pytest Ubuntu (#7838) 9c443b6552 Fix: use context argument in drop_diagonal_before_measurement (#7837) 5c23169337 Update Scientific Python dependencies per NEP-29 and SPEC-0 (#7834) 9aea3bad82 Enable installation and testing with Python 3.14 (#7761) 449a1ea4a2 approx_eq - ensure set-sorting of the first argument is tested (#7830) 9b89f3c76c Fix measurement and control key commutativity bug in insertion_sort_transformer. (#7822) 0e86b24e0d Fix inconsistency with set equality in approx_eq (#7792) 38318ba969 Add drop_diagonal_before_measurement transformer (#7790) a8efbc56ef CI - enforce lint and type checks for benchmarks (#7828) e96726a158 manual bump to gts 7, and necessary code nits (#7826) ceb943237e Fix failure of qvm_stabilizer_example.ipynb with numpy-2.4.0 (#7813) 0ba2dbcfb9 Fix inconsistency between qubits measurements in readout circuits and real measurement circuits (#7801) ba6bf261bd Ignore outputs from pytest-benchmark and pytest-profiling (#7812) 52c1a86bba Optimize calculation of PhasedXZGate unitary (#7811) 8e3e4d8372 Add LATEST InsertStrategy to complement EARLIEST (#7804) 76cab927f6 Adjust workflow job runner choices for better efficiency (#7775) 16d44064fb implement has_stabilizer_effect for PhasedXZGate to speedup cirq.has_stabilizer_effect (#7807) b92105478d Add benchmark for has_stabilizer_effect calls on PhasedXZGate (#7808) 14b33827be CI - deflake "Isolated pytest Ubuntu" (#7806) 1467a3246d Remove obsolete check from circuit.earliest_available_moment. (#7805) a0cd4b6cc5 Fix parent resource name used to call ListQuantumProcessorConfigs (#7802) 6871bdbfaa CI - store test reports only for merge-queue events (#7800) c8d141bd35 Add list_configs() (#7794) 9e2123d15f Fix docs path in snippet test and exclude subdirs (#7798) 843f216ce5 Add test for the add_dd_and_align_right in 2D GHZ state generation (#7793) c3c5945e2f Return a single results object instead of always a list - IonQ (#7285) c3e676c668 CI - store test report for Pytest Ubuntu 3.11 (#7795) a764b67cf7 Update Scorecard scanner and rename file (#7776) 4d75b4b5e2 Convert cirq_google proto_test-s to actual unit tests (#7791) 6b0ed2f628 Refactor get sampler (#7672) 078af27f2b Improve error message when validate_density_matrix fails (#7789) 551552283c Enforce the recommended "import attrs" instead of "attr" (#7788) c6c0eff5c0 Eliminate dependency of tests on freezegun (#7773) 09f87b9b5d Use minor release deprecation for run_shuffled_circuits_with_readout_benchmarking (#7772) 9a8c15f73e Update versions of GitHub Actions used in workflows (#7769) 48b1316bac Fix CircuitDag constructor to match its networkx.DiGraph base (#7771) ddb640cd77 Add 2D GHZ state generation (#7767) 8dd8a8f8c8 asv - adjust build_command for making the cirq-core wheel (#7764) 2c90d1d893 Adjust test names to match the tested function (#7763) 6d4a488ff3 Adds a cirq_google function to convert lists of dictionaries into Sweeps (#7758) 82435c1e54 Parameterize QasmUGate (#7759) e95ae4bac5 Refresh proto-generated source files (#7762) be86c179f2 docs: fix typos in some files (#7756) bf23fc0e14 Improve docstring for unitary() & other text in unitary_protocol.py (#7582) ad37bb7c44 Send connection keepalive pings once per minute to prevent stream termination while awaiting long-running jobs (#7755) 96c20044dd [bugfix] Prevent GateOperation.add from superseding Circuit.radd (#7707) 57f17ced03 Documentation: Improve virtualenvwrapper setup instructions for new contributors (#7741) ea7c94e28c ruff - enable and fix a series of UPNNN rules (#7748) c4444981ac pr-size-labeler - fetch change info for the maximum number of files (#7749) 3e0e2133b5 Use "uv pip compile" to check consistency of requirements (#7745) 77035ba6d9 Migrate contrib json tests to standard json test framework (#7743) 2bdbea8ba6 Use cirq.q instead of str in analog (#7736) 1deffd6161 Change ParamResolver keys to be strings (#7714) 08a15c8eb5 Optimize pauli_string_measurement_with_readout_mitigation_test (#7740) 4cbe88d487 Skip cirq pre-release if identical to the last version (#7737) 783aedf7c2 Allow the multi-moment gc to pass prng in caller. (#7733) 8ce1a4b475 Provide native support for U3 gate (#7717) 12b39068b3 Implement structure preserving dynamical decoupling (dd-v2) (#7609) 472b6ad69d Micro-optimization of big_endian_int_to_digits (#7715) e3a0fec9e2 Replace macos-latest with the specific macos-15 (#7718) 357ac93f31 - Deprecate macos-13 and replace with macos-latest (#7716) 39c57d606b Use pytest fixture for multiprocessing Pool in z_phase_calibration_test (#7713) 036f969265 Remove xfail from QSD tests (#7712) bc6dab964e feat: support retrying 429 responses from IonQ (#7710) 7cb819c709 Improve hashing of PhasedXZGate for symbolic values (#7708) 253b7b1a93 Use an efficient representation for merged components of operations (#7484) 34f1f992c3 Fix the type error in the Shor tutorial notebook (#7655) 8483c36788 CI - enhance check for up-to-date cirq-web bundle files (#7705) da27075cd8 Micro-optimizations for Parameter Resolution (#7701) 704913be85 Manually bump Vite to v7 (#7702) f1e4d39e11 Add @hoisinberg as owner of cirq-google (#7703) 770b5a6509 Add webgpu support (#7698) 72c728a487 Fail check/ts-build-current when bundle files cannot be built (#7696) 8137600a76 Fixing ts-build errors and build config from webpack-to-vite merge (#7697) e8e79bb45d Micro-optimization for Gateset containment (#7692) 01e82bfc92 Adjust grid_device for optimization (#7693) 2beca80cfe Webpack to Vite (#7687) 3b3cd7d918 Update branches from master to main for ReCirq and qsim (#7689) 7e9f13aad3 Add return-type to public functions, mostly tests part 5 (#7691) 913e68b54b Add methods to serialize multi-programs in cirq_google (#7678) 891e452bd0 Add new Quantikz rendering modules and enhance existing functions for visualization (#7354) d69b4370ec Replace deprecated datetime.utcfromtimestamp (#7676) efb296e367 Delete unused dataclass cirq_google.CalibrationResult (#7677) 1ad77cd085 Update Scientific Python dependencies per NEP-29 and SPEC-0 (#7675) 82d2cdc12e Support multi moment gauge compiling (#7501) 92b020698b Micro-optimizations to WaitGate (#7671) 413aee6221 Fix [#2961]: add basic docstring to clifford_optimized_circuit() (#7663) cd89c1f86f fix bug in idle moments gauge (#7669) 7a0a7beff4 ruff - check and fix escape-sequence-in-docstring (#7670) c8d8d5946e (2/2) Add parameter sweep support for Pauli string measurements with readout mitigation (#7569) 63cfe53c6a Avoid in-place Python code execution (#7667) 9550c0df26 Test qcircuit with actual PDF output (#7665) b1f8b82cb7 Remove trailing empty ListSweep from merged sweep (#7664) 23afd92643 Fix type-checking issues for numpy-2.3.3 (#7661) 7b68c39a0f Don't refresh the job as soon as we receive the result. (#7662) c3e8b44dbe Advise to use git ls-remote --branches instead of --heads (#7660) dbde27380c Add get config functions (#7565) a30b607c36 Increase default max_concurrent_jobs to 100 (#7659) 284591092c CI - unblock type check with a temporary pin to numpy-2.2 (#7658) 163a087b16 Fix unexpected markdown syntax in docstring (#7653) 76732401dd Create a gauge for idle moments (#7648) 1fa73c713e Add return-type to public functions, mostly tests part 4 (#7645) 68168249cd Allow PauliString-like gates to be used in PauliSum (#7651) 97781c7087 Fix typo and numbered list in variational algo doc (#7647) 692dbcf5c8 Generalize DensePauliString.mul to handle multi-qubit Paulis (#7643) 25d727f09f Fix Circuit._control_keys_ to respect control-measurement order (#7639) f203210b36 Update IonQ API version from v0.3 to v0.4 (#7438) f0d923732e Correct documented exception in StateVectorMixin (#7646) ce35d68540 QVM - require gate_times_ns argument in noise_properties_from_calibration (#7644) fc5bee555e pytest-changed-files - test only files changed in the current branch (#7642) 9f3b2c5d86 Support export/import multiple conditions in QASM 3.0 (#7638) ba8f55a4a4 Optimize multiplications with Pauli operations (#7637) a0115b3a00 Allow cirq-google installation with protobuf-6 in addtion to protobuf-5 (#7628) c35ed72c5a Preserve max moment of control key while appending to circuit (#7626) c334f756e3 Increase np.isclose tolerance for mitigated expectation value assertion (#7627) f3680d05ee Fix inconsistent Pauli gate multiplication (#7603) cedd002c9f Regenerate QuantumEngineService RPC client to include ListQuantumProcessorConfigs (#7636) d7f81f4114 Add linting and type checking overrides for cirq-google/cirq_google/cloud, which contains only generated code (#7633) 7f3bab4d8d make final_density_matrix work with classical control (#7610) 9672295bac Tighten the search for actual version sources (#7615) f06362ae58 Improve wheel-building process (#7613) 12b443e869 Clean up unused environment variable CIRQ_PRE_RELEASE_VERSION (#7614) d0e2bc551e Add QubitPermutationGate and tuple input support to ClassicalStateSimulator (#7567) c51779400e Generate reproducible dev-versions from the last commit time (#7597) 60cbc49e31 OpenQASM lexer: allow leading _ in identifiers (#7608) f616a4125a Update the tutorials to use journal style reference (#7577) ee4029a16d Delete unused script publish-dev-packages.sh (#7606) c08eaf021d Bail out of shell scripts on failure to determine repository root (#7605) 65c5691246 Improve performance of _build_sweep_const (#7601) f841c5d004 Fix typo in the deprecation message for pass_operations_over (#7604) c09eeb6f9b update the RB fitting method to compensate for the standard deviation induced from the random number generator (#7562) d941b550b3 Pass numpy arrays in cirq.unitary unchecked (#7595) f7a90c24a6 Performance improvement in _check_duplicate_keys (#7599) 8afd5aa427 Micro-optimizations for gateset validation performance (#7598) 800b9db661 Some micro improvements to sweep_from_proto (#7600) 5327175608 Performance Improvement for Circuit.has_measurements() (#7596) 728b035c69 Replace typing_extensions with builtin typing module (#7590) dc69fa11ed Add return-type to public functions, mostly tests part 3 (#7589) a165e2dc1c Add analog gates into device specification (#7583) 130e3bbbb5 Fix flaky pauli_string_measurement_with_readout_mitigation_test (#7571) 66eb6898ee Allow serialization of raw Args as tags (#7581) 78722ecd9a Allow Mapping type for the xeb_fidelity amplitudes (#7584) 4103b8b53f Handle None vs NotImplemented correctly in decompose protocol (#7553) 1f001334b2 Change order of checking containment within a gateset (#7578) 3d3b180188 ruff - enable and fix RUF027 - missing-f-string-syntax (#7580) c7f10ac6d3 ruff - enforce rules that are already satisfied (#7579) f61b172167 Add user option to compress run context (#7575) d5f8fb7c1a Cite Cirq release 1.6.1 (#7576) ce1858cb64 Add serialization support for analog gates (#7564) 9a6d9d7bcc Clarify the instructions about pre-release notebooks (#7573) 3c02ed9b65 CI - add manual trigger for daily and weekly workflows (#7570) 39b3e6b325 Improve serialization of Sweepable objects (#7563) 87b1726de5 Adds a FiniteRandomVariable sweep to cirq_google (#7542) b5ca9707c0 Test all notebooks vs stable Cirq after the release (#7561) 1be4d9ad7e Add return-type to public functions, mostly tests part 2 (#7568) fe0dc2187c Don't merge PhaseXPowGate into measurement gate in eject_phased_paulis (#7538) 0e87d095c2 Link to Willow and Weber data sheets (#7560) 99320d363e Update OpenQASM compatibility table (#7555) 574595f566 Fix mutable_pauli_string.inplace_after() and inplace_before() (#7507) 17c4e95dae Add CompressDurationTag (#7543) 1ed3fdf031 Allow users to run readout benchmarking with sweep (#7435) b765bd9203 Add option and set the default float encoding as float32 (#7554) ffbad2364e Remove the merge moments logic in dd (#7545) 072d871714 Fix typos in reference docs (#7539) 6d10979088 Fix kraus channels for fallbacks to super-operators (#7537) 45712a43ed Add generic analog circuit builder class (#7491) 31df8ef15a Adds option to compress the size of RunContext (#7532) 862bc2f35b Fix two typos (#7533) 23b301c35e Include cirq.contrib test JSON files in cirq-core package (#7529) edca39d21a Restore behavior which persists quantum_run_streams indefinitely (#7527) bad600f042 Cite Cirq release 1.6.0 (#7530) bbbf9527a6 Indicate that docs/simulate/virtual_engine_interface.ipynb depends on unreleased features (#7528) f9489cd72f Bump cirq version to 1.7.0 (#7526)

Source: README.md, updated 2026-06-29