Skip to content

v1.23.0

Latest

Choose a tag to compare

@billti billti released this 09 Dec 17:23
· 21 commits to main since this release
fd9428d

Below are some of the highlights for the 1.23 release of the QDK.

Full Qiskit 2 support

The qdk python package has been updated to support Qiskit 2 circuit submission to the Azure Quantum service. This is done via the AzureQuantumProvider class to get a backend object that can run both Qiskit v1 and v2 circuits. This allows for a simpler submission of Qiskit circuits to Azure as compared to the older approach that required manual QIR compilation before submission. The resulting job objects also handle parsing of the Qiskit output format. The pattern will look similar to:

provider = AzureQuantumProvider(workspace)
backend = provider.get_backend(target_name)
job = backend.run(circuit, shots, job_name)
counts = job.result().get_counts(circuit)

See the updated Qiskit submission sample notebook for the new supported method of Azure submission with Qiskit 2.

To make sure you get the updated qdk package with this support, please use the command pip install "qdk[azure,qiskit]" --upgrade

Interactive Circuit Diagrams with Source Code Navigation

Circuit diagrams now display clickable source code locations for gates and qubits in VS Code. Click on any operation box to jump directly to where it was called in your Q# or QASM code, or on a qubit label to jump to its declaration site. In Python Jupyter notebooks, source locations can be enabled via qsharp.circuit(source_locations=True) to display hover text with code locations.

20251208-2316-58 9845681

Program output in VS Code Terminal

When running a Q# program in VS Code, the output is now displayed in the Terminal instead of the Debug Console, which is more consistent with other VS Code experiences. (When debugging, the output will still be displayed in the Debug Console.)

Fix display of job results listing

Previously, the job results listing in the VS Code "Quantum Workspaces" explorer view was not displaying correctly if the workspace contained a large number of jobs. This has now been fixed.

Minimum Python version is 3.10

The minimum Python version for the QDK packages has been updated to 3.10, as Python 3.9 is now end of life and no longer receiving updates.

Architecture specific macOS packages

With this release we have switched from publishing one Universal wheel for macOS, to shipping two architecture specific wheels (x86_64 and arm64). This should have no visible impact (other than smaller package sizes), but let us know if you encounter any issues.

Full Changelog: v1.22.0...v1.23.0