Qsharp

Latest version: v1.11.0

Safety actively analyzes 681812 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 2

1.10.1

We are excited to release v1.10 of the Azure Quantum Development Kit! This month's release includes several new features and improvements including:

Code editing improvements

Code editing is now greatly improved. A couple of examples of the many improvements:

- **Context aware completions** (1947) show only the relevant completions for the location. For example, only showing types when in a type position:

<img width="346" alt="image" src="https://github.com/user-attachments/assets/347c4fc9-c746-438d-bb1a-998b65375e79">

- **Namespace member** (1947) completion lists are now provided when drilling into namespaces:

<img width="346" alt="image" src="https://github.com/user-attachments/assets/09c92c4d-68e6-4fbd-b647-9a4fc064b50c">

- **User Defined Type** (1954) member completions are now populated

<img width="383" alt="image" src="https://github.com/user-attachments/assets/577addec-32f7-465f-9c3d-b865e033b42c">

And much more! Parser error recovery has also been greatly improved so that editor assistance is available whilst mid-edit in many more scenarios.

Noisy simulation

You can now add Pauli noise to simulations run from Python or VS Code (1971, 1975, 1980). This can help model the results of running on a real quantum machine for education purposes, and to help develop and test the effectiveness of error correction.

Below shows the results of configuring 5% bit-flip noise in VS Code and running a histogram on the GHZ sample. This would return only $\ket{000}$ and $\ket{111}$ shot results if run in a noise free simulation.

<img width="944" alt="image" src="https://github.com/user-attachments/assets/5274198c-ece5-4049-ac44-ae9e829fc51d">

To see how to use noisy simulation in Python, check out the sample notebook at <https://github.com/microsoft/qsharp/blob/main/samples/notebooks/noise.ipynb>

Refreshed API docs interface

The in-editor Q API documentation has had a UI refresh (1978). This is accessed via the "Q: Show API documentation" command in the command palette when editing a Q file. The new UX allows you to quickly &amp; easily search &amp; navigate the APIs within your project, referenced projects, and the standard library.

<img width="792" alt="image" src="https://github.com/user-attachments/assets/0b6e6026-492f-461d-a9b1-30762915020f">

File icons

The Q file extension (.qs) now gets a unique icon in VS Code (1976)

<img width="279" alt="image" src="https://github.com/user-attachments/assets/6af754e0-b6fa-45b4-b68e-6e379e988cd4">

Custom measurements and resets

Previously you could define custom gates, but not custom measurement or reset operations. With 1967, 1981, and 1985 this is now possible. This allows for the definition and use of custom operations for quantum simulation and QIR code generation.

Samples for this feature will be added shortly, in the meantime see the test code at <https://github.com/microsoft/qsharp/blob/v1.10.1/compiler/qsc/src/codegen/tests.rs#L529> for an example of how this may be used.

Python telemetry

In this release we have added telemetry to our `qsharp` Python package to collect minimal and anonymous metrics on feature usage and performance. This will allow us to focus our investments going forward on the most valuable areas. Please see the [notes in the package readme](https://github.com/microsoft/qsharp/blob/v1.10.1/pip/README.md#telemetry) for details on what is collected and how to disable it.

What's changed

And much more!! See the below list of changes in this release for the full details.

* Added DoubleAsStringWithPrecision function - Multiple Katas by devikamehra in https://github.com/microsoft/qsharp/pull/1897
* bump vscode/test-web by minestarks in https://github.com/microsoft/qsharp/pull/1945
* Refactor physical resource estimation by msoeken in https://github.com/microsoft/qsharp/pull/1943
* Update yarn dependencies by billti in https://github.com/microsoft/qsharp/pull/1948
* Update filtering for targets by cesarzc in https://github.com/microsoft/qsharp/pull/1949
* Add summary lines back into stdlib readmes by sezna in https://github.com/microsoft/qsharp/pull/1952
* add Q package registry document by sezna in https://github.com/microsoft/qsharp/pull/1932
* Error budget pruning strategy in resource estimator core by msoeken in https://github.com/microsoft/qsharp/pull/1951
* Use all github dependencies in published libraries by sezna in https://github.com/microsoft/qsharp/pull/1956
* Set the markdown renderer on load by billti in https://github.com/microsoft/qsharp/pull/1957
* Bump pyo3 from 0.22.2 to 0.22.4 by dependabot in https://github.com/microsoft/qsharp/pull/1964
* Minor lint fix for Rust 1.81 by swernli in https://github.com/microsoft/qsharp/pull/1965
* Fix to partial evaluation generating branch instructions on constant conditions by cesarzc in https://github.com/microsoft/qsharp/pull/1963
* Show no quantum state when debugging code with no qubits by swernli in https://github.com/microsoft/qsharp/pull/1953
* More precise completions and namespace member completions by minestarks in https://github.com/microsoft/qsharp/pull/1947
* allow needless raw string hashes and unnecessary wraps by sezna in https://github.com/microsoft/qsharp/pull/1969
* UDT field completions by minestarks in https://github.com/microsoft/qsharp/pull/1954
* Rust 1.82 by idavis in https://github.com/microsoft/qsharp/pull/1970
* Added Pauli noise support to sparse simulator by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1971
* Add custom measurement operations to Q by orpuente-MS in https://github.com/microsoft/qsharp/pull/1967
* Expose pauli noise settings in VS Code by billti in https://github.com/microsoft/qsharp/pull/1975
* Python clients can now run simulation with Pauli noise by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1974
* Add .qs file icons by billti in https://github.com/microsoft/qsharp/pull/1976
* Fix py38 types by billti in https://github.com/microsoft/qsharp/pull/1977
* Python: Result should implement comparison operators by minestarks in https://github.com/microsoft/qsharp/pull/1979
* Improve the built-in API docs UX by billti in https://github.com/microsoft/qsharp/pull/1978
* Added sample notebook with noise by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1980
* Add support for custom resets using the `Reset()` attribute by orpuente-MS in https://github.com/microsoft/qsharp/pull/1981
* Telementry event for noisy simulation by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1982
* Unify implementations of custom measurements and custom resets by orpuente-MS in https://github.com/microsoft/qsharp/pull/1985
* Initial Python telemetry by billti in https://github.com/microsoft/qsharp/pull/1972
* Fix Py3.8 type error by billti in https://github.com/microsoft/qsharp/pull/1988
* More parser error recovery, unlocking completions in more locations by minestarks in https://github.com/microsoft/qsharp/pull/1987
* `DumpMachine` output in Python and console should be empty with no qubits allocated by swernli in https://github.com/microsoft/qsharp/pull/1984
* `DumpMachine` in playground should display message when no qubits are allocated by swernli in https://github.com/microsoft/qsharp/pull/1989
* Disable completions in attribute arguments by minestarks in https://github.com/microsoft/qsharp/pull/1986
* Allow `Default::default()` pattern by sezna in https://github.com/microsoft/qsharp/pull/1991
* Add telemetry events for interop by idavis in https://github.com/microsoft/qsharp/pull/1990
* Bump version to 1.10 by billti in https://github.com/microsoft/qsharp/pull/1992
* Revert "Set min python version to 3.9 and add 3.12 to list" by idavis in https://github.com/microsoft/qsharp/pull/1996
* No completions in comments by minestarks in https://github.com/microsoft/qsharp/pull/1999


**Full Changelog**: https://github.com/microsoft/qsharp/compare/v1.9.0...v1.10.1

1.9.0

The 1.9.0 release of the QDK includes interoperability with Qiskit circuits built upon the core Q compiler infrastructure.

The Qiskit interop provided by the QDK includes:

- [Resource estimation](resource-estimation) for their Qiskit circuits locally
- [Q Simulation](q-simulation) of Qiskit circuits using Q's simulation capabilities
- [QIR generation](qir-generation) from Qiskit circuits leveraging the [modern QDKs advanced code generation capabilities](https://devblogs.microsoft.com/qsharp/integrated-hybrid-support-in-the-azure-quantum-development-kit/).

The [Qiskit interop wiki page](https://github.com/microsoft/qsharp/wiki/Qiskit-Interop) provides a brief overview of the integration while detailed examples, potential errors, and usage with parameterized circuits are demonstrated in the [sample Qiskit interop notebook](https://github.com/microsoft/qsharp/tree/main/samples/python_interop/qiskit.ipynb).

In addition to the Qiskit interop feature, the language service for Q will now auto-suggest the new standard library API instead of the legacy `Microsoft.Quantum`-prefixed standard library API. For example, when typing `DumpMachine`, you'll now get a suggested import for `Std.Diagnostics.DumpMachine` instead of `Microsoft.Quantum.Diagnostics.DumpMachine`.

What's Changed
* Remove benchmarking comment bot; Run benches weekly and save results as an artifact by sezna in https://github.com/microsoft/qsharp/pull/1870
* Port signed integer math to modern QDK by sezna in https://github.com/microsoft/qsharp/pull/1841
* Add samples of testing Q code that prepares a quantum state by tcNickolas in https://github.com/microsoft/qsharp/pull/1873
* Simplify display of evaluation results in VS Code by swernli in https://github.com/microsoft/qsharp/pull/1882
* Bump rust dependency versions (except `pyo3`, `rustc_hash`, and `miette`) by sezna in https://github.com/microsoft/qsharp/pull/1876
* Update samples to reflect latest 1.7 changes; Update katas and stdlib to use structs by sezna in https://github.com/microsoft/qsharp/pull/1797
* Remove profile selection for Katas by JPark1023 in https://github.com/microsoft/qsharp/pull/1881
* Include CompareGTSI in the Signed math API by sezna in https://github.com/microsoft/qsharp/pull/1888
* Update Placeholder.qs by HopeAnnihilator in https://github.com/microsoft/qsharp/pull/1890
* Fix GetLink-Tutorial-Playground-state issue 1558 by ggridin in https://github.com/microsoft/qsharp/pull/1855
* update miette to v7.2.0 by sezna in https://github.com/microsoft/qsharp/pull/1889
* Update Node packages by billti in https://github.com/microsoft/qsharp/pull/1894
* Implements serialization for physical resource estimation by msoeken in https://github.com/microsoft/qsharp/pull/1892
* Update pyo3 from v0.20 to v0.22 by sezna in https://github.com/microsoft/qsharp/pull/1893
* Added DoubleAsStringWithPrecision function - Complex Arithmetics by devikamehra in https://github.com/microsoft/qsharp/pull/1883
* Added DoubleAsStringWithPrecision function - Single Qubit Gate by devikamehra in https://github.com/microsoft/qsharp/pull/1884
* Port fixed point library to modern QDK by sezna in https://github.com/microsoft/qsharp/pull/1838
* Katas UI review - Preparing states by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1847
* Fix to RCA panic when original tuple binding is dynamic by cesarzc in https://github.com/microsoft/qsharp/pull/1900
* Generic code with code distance and threshold by msoeken in https://github.com/microsoft/qsharp/pull/1896
* Basic interop with Qiskit by idavis in https://github.com/microsoft/qsharp/pull/1899
* Use T gate time for physical factories by msoeken in https://github.com/microsoft/qsharp/pull/1906
* Add more items to RE system API by msoeken in https://github.com/microsoft/qsharp/pull/1907
* Configure ESRP7 by idavis in https://github.com/microsoft/qsharp/pull/1913
* Basic samples for RE API by msoeken in https://github.com/microsoft/qsharp/pull/1915
* Introduce `Relabel` API by swernli in https://github.com/microsoft/qsharp/pull/1905
* Serialize logical post-layout overhead in resource estimation result by msoeken in https://github.com/microsoft/qsharp/pull/1914
* Support Adjoint of `Relabel` by swernli in https://github.com/microsoft/qsharp/pull/1920
* Migrate the standard library to the project system by sezna in https://github.com/microsoft/qsharp/pull/1912
* Bug fixes found during bash by idavis in https://github.com/microsoft/qsharp/pull/1916
* Fix typo in vscode extension's package.json by m1c0l in https://github.com/microsoft/qsharp/pull/1917
* Re-enable simulatable intrinsics for Qiskit/OpenQASM interop by idavis in https://github.com/microsoft/qsharp/pull/1927
* Add str value for TargetProfile by idavis in https://github.com/microsoft/qsharp/pull/1930
* Completions: existing glob import will prevent an exact import with t… by minestarks in https://github.com/microsoft/qsharp/pull/1909
* Playground: Fix error squiggle updates getting dropped by minestarks in https://github.com/microsoft/qsharp/pull/1908
* Add ProtocolSpecification to API by msoeken in https://github.com/microsoft/qsharp/pull/1931
* Migrate core library to the new Stdlib API/projects system by sezna in https://github.com/microsoft/qsharp/pull/1919
* Add `from_str` to `TargetProfile` by idavis in https://github.com/microsoft/qsharp/pull/1937
* Optimize RIR reindexing, QIR qubit use by swernli in https://github.com/microsoft/qsharp/pull/1938
* Update circuits widget sizing behavior by swernli in https://github.com/microsoft/qsharp/pull/1921
* Fix bug preventing display of circuits where same qubit measured more than once by swernli in https://github.com/microsoft/qsharp/pull/1939
* Fix python version compat signature by idavis in https://github.com/microsoft/qsharp/pull/1941
* Add DumpOperation support in Q by billti in https://github.com/microsoft/qsharp/pull/1885
* Control how physical qubits are computed in factories by msoeken in https://github.com/microsoft/qsharp/pull/1940
* Update version to 1.9 by idavis in https://github.com/microsoft/qsharp/pull/1942

New Contributors
* HopeAnnihilator made their first contribution in https://github.com/microsoft/qsharp/pull/1890
* m1c0l made their first contribution in https://github.com/microsoft/qsharp/pull/1917

**Full Changelog**: https://github.com/microsoft/qsharp/compare/v1.8.0...v1.9.0

1.8.0

The 1.8.0 release of the QDK includes a number of improvements and fixes, with a focus on refining the project references and editor completions experience.

The full list of changes is below.

What's Changed
* Fix bug for max_t_factories constraint by msoeken in https://github.com/microsoft/qsharp/pull/1792
* Create Graph Coloring kata, part 1: vertex coloring problem by tcNickolas in https://github.com/microsoft/qsharp/pull/1789
* Katas UI string review - QRNG by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1759
* Katas UI string review - Single-qubit gates by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1758
* [Samples] Add samples for testing operations in Q by Manvi-Agrawal in https://github.com/microsoft/qsharp/pull/1732
* Fix accumulating perf impact of `qsharp.run` with may shots in Python by swernli in https://github.com/microsoft/qsharp/pull/1769
* Avoid errors in read-only GitHub sources by swernli in https://github.com/microsoft/qsharp/pull/1787
* Support themes in kata previews by billti in https://github.com/microsoft/qsharp/pull/1798
* Fix unit tests on test_interperter doing `startswith(...) != -1` by orpuente-MS in https://github.com/microsoft/qsharp/pull/1733
* Migrate Graph Coloring kata, part 2 by tcNickolas in https://github.com/microsoft/qsharp/pull/1804
* Katas UI review - Complex arithmetic by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1803
* Improve ApplyQFT API docs by tcNickolas in https://github.com/microsoft/qsharp/pull/1810
* Migrate QFT kata, part 1 by tcNickolas in https://github.com/microsoft/qsharp/pull/1809
* Migrate nonlocal games 1596 task1 - quantum by ggridin in https://github.com/microsoft/qsharp/pull/1745
* Implicit Namespace Parsing Recovery by ScottCarda-MS in https://github.com/microsoft/qsharp/pull/1808
* Organize standard library code; add `files`; add author and license by sezna in https://github.com/microsoft/qsharp/pull/1801
* Finish migration of QFT kata and publish it by tcNickolas in https://github.com/microsoft/qsharp/pull/1814
* Update rust version to 1.80 by orpuente-MS in https://github.com/microsoft/qsharp/pull/1805
* Move `Unstable` into its own library by sezna in https://github.com/microsoft/qsharp/pull/1802
* Update rust version to 1.80 second step by orpuente-MS in https://github.com/microsoft/qsharp/pull/1806
* QFT kata: fix formula formatting in square wave prep exercise by tcNickolas in https://github.com/microsoft/qsharp/pull/1819
* Migrate nonlocal games: GHZ game classical by ggridin in https://github.com/microsoft/qsharp/pull/1783
* Fixed some broken latex in the Measure doc by ScottCarda-MS in https://github.com/microsoft/qsharp/pull/1825
* Fix test for multi_qubit_measurements/state_modification by tcNickolas in https://github.com/microsoft/qsharp/pull/1830
* Allow the parser to add contextual help text to errors; Add contextual help text for parenthesized for loops by sezna in https://github.com/microsoft/qsharp/pull/1828
* Make entry sample more minimal by Manvi-Agrawal in https://github.com/microsoft/qsharp/pull/1684
* Enforce globally unique names for callables declared as `SimulatableIntrinsic` by swernli in https://github.com/microsoft/qsharp/pull/1831
* Start migration of Phase Estimation kata by tcNickolas in https://github.com/microsoft/qsharp/pull/1824
* Fix `noisy_simulator` panic when initializing with non-square Kraus matrices by orpuente-MS in https://github.com/microsoft/qsharp/pull/1826
* Fix type inference for nested generics by swernli in https://github.com/microsoft/qsharp/pull/1818
* Export Stdlib AND by sezna in https://github.com/microsoft/qsharp/pull/1834
* Added a sample function with an implicit return by filipw in https://github.com/microsoft/qsharp/pull/1811
* Katas UI review - Multiqubit systems by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1813
* Simplify targets logic and prepare exclusion list for next release by cesarzc in https://github.com/microsoft/qsharp/pull/1815
* Fix code example in `RFrac` doc comment by swernli in https://github.com/microsoft/qsharp/pull/1839
* Fix missing docs for diagnostic callables by swernli in https://github.com/microsoft/qsharp/pull/1833
* Add API to convert StateDump to a dense array of amplitudes by swernli in https://github.com/microsoft/qsharp/pull/1836
* Fix R1Frac doc comments by swernli in https://github.com/microsoft/qsharp/pull/1851
* Finish migration of QPE kata and publish it by tcNickolas in https://github.com/microsoft/qsharp/pull/1837
* Noisy simulator: return 2d python lists instead of 1d python lists by orpuente-MS in https://github.com/microsoft/qsharp/pull/1786
* Fix duplicate imports being generated when using completions by sezna in https://github.com/microsoft/qsharp/pull/1820
* Support call tracking within Q code by swernli in https://github.com/microsoft/qsharp/pull/1791
* Support qubit count tracking within Q by swernli in https://github.com/microsoft/qsharp/pull/1800
* Update `qsharp.json.schema` to include latest lints by sezna in https://github.com/microsoft/qsharp/pull/1853
* Fix spans for lifted lambda idents by swernli in https://github.com/microsoft/qsharp/pull/1854
* Blocks in while-expr should enforce `Unit` type by swernli in https://github.com/microsoft/qsharp/pull/1852
* Katas UI review - QKD by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1846
* Include completions for items from the same file; Clean up completions generation for callables by sezna in https://github.com/microsoft/qsharp/pull/1863
* Katas UI review - Multiqubit measurements by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1844
* Added summary section in chemistry.py by devikamehra in https://github.com/microsoft/qsharp/pull/1700
* Fix type hints in python wrapper for noisy simulator. by orpuente-MS in https://github.com/microsoft/qsharp/pull/1857
* Add samples of testing Q code with classical return values by tcNickolas in https://github.com/microsoft/qsharp/pull/1858
* Add edit/run for kata examples - issue 591 by ggridin in https://github.com/microsoft/qsharp/pull/1829
* generate auto imports for core callables by sezna in https://github.com/microsoft/qsharp/pull/1861
* VSCode shows documentation by package by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1740
* Skip errors on files with `pr` URI scheme by swernli in https://github.com/microsoft/qsharp/pull/1867
* Katas UI review - Multiqubit gates by SoniaLopezBravo in https://github.com/microsoft/qsharp/pull/1845
* Bump version to 1.8 by billti in https://github.com/microsoft/qsharp/pull/1868


**Full Changelog**: https://github.com/microsoft/qsharp/compare/v1.7.0...v1.8.0

1.7.0

QDK 1.7.0 release notes

The team is _very_ excited to ship this release. It has some of the most significant improvements to the Q language in a long time.

Major language changes

External project references

The biggest feature in this release is the ability to reference other projects and consume their APIs. The projects can be in a separate local directory or published to GitHub. As part of this change, we also introduced `import` and `export` syntax, and generate an implicit namespace hierarchy based on file layout, removing the need for the `namespace` syntax.

For more details see the wiki page at <https://github.com/microsoft/qsharp/wiki/Q%23-External-Dependencies-(Libraries)>. (The official documentation will be updated shortly with more details and examples).

New struct syntax

We're also introducing a new `struct` syntax, and long term see this as the replacement for the current `UDT` syntax. The custom types created by either are largely compatible, but the new syntax is simpler, cleaner, and similar to several popular languages. See more details at <https://github.com/microsoft/qsharp/wiki/Q%23-Structs> until the official docs are updated.

Optional EntryPoint

As well as removing the need to wrap code in a `namespace`, we're also removing the need to specify the `EntryPoint` attribute. If you have one callable called `Main` in your project, this will be the default entry point. (Note: Any specified `EntryPoint` will still take precedence).

A new standard library namespace

We've also simplified the namespaces for our standard library. What was previously all under `Microsoft.Quantum` can now be accessed under the `Std` namespace. This reduces visual clutter and highlights what APIs are part of the "standard" library included with Q.

Example

Taken together the above provides for a much cleaner language with a simple code sharing mechanism. For example, if your project references another project named `Sparkle` which exports an operation named `Correct` that takes a custom type `Input` with a Double and a Qubit, your entire Q code to call this can be as simple as:

qsharp
import Std.Diagnostics.DumpMachine;
import Sparkle.Input, Sparkle.Correct;

operation Main() : Unit {
use q = Qubit[1];
let x = new Input { A = 3.14, B = q[0] };

Correct(x);

DumpMachine();
MResetZ(q[0]);
}


(Note these changes are additional capabilities. There are no breaking changes or requirements to change code to adopt this release).

Other updates and improvements

Many other changes have gone into this release. Some of the main ones include:

- Unitary Hack contributions
- Save RE widget to .png (1604)
- Lint rule: Use Functions (1579)
- Add doc for internal AND (1580)
- New DrawRandomBool API (1645)
- New DoubleAsStringWithPrecision API (1664)
- Fix display of CCX in a circuit (1685)
- Completion list improvements (1682, 1715)
- New samples (e.g. 1721)
- Many more Katas additions and updates
- Various bug fixes and perf improvements
- Lots of engineering improvements to build times, testing, pipelines, etc.

New Contributors
* nirajvenkat made their first contribution in https://github.com/microsoft/qsharp/pull/1604
* ggridin made their first contribution in https://github.com/microsoft/qsharp/pull/1674
* ausbin made their first contribution in https://github.com/microsoft/qsharp/pull/1685

**Full Changelog**: https://github.com/microsoft/qsharp/compare/v1.6.0...v1.7.0

We hope you enjoy this release. Please log an issue if you need any assistance or to provide feedback. Thanks!

1.6.0

Welcome to the v1.6.0 release of the Azure Quantum Development Kit!

The big feature in this release is the ability to compile Q programs to QIR that require "Adaptive Profile" capabilities. This enables programs to take advantage of the latest capabilities of quantum hardware, such as the ability to perform mid-circuit measurement of qubits, branch based on the results, and perform some classical computations at runtime. For more details, see <https://aka.ms/qdk.qir>.

We've added or updated a number of samples that can leverage Adaptive Profile capabilities, such as the [Three Qubit Repetition Code](https://github.com/microsoft/qsharp/blob/main/samples/algorithms/ThreeQubitRepetitionCode.qs) and the [Iterative Phase Estimation notebook](https://github.com/microsoft/qsharp/blob/main/samples/notebooks/iterative_phase_estimation.ipynb). Please do try it out and give us your feedback!

As part of the above work, the previous code generation approach was replaced, even in the non-Adaptive (_"base profile"_) case. Please log an issue if you see any unexpected change in behavior.

Other notable new features include Q linting support in Jupyter Notebooks, CodeActions in VS Code to fix certain Q errors, Q library documentation inside VS Code, and more!

Impactful changes and fixes

* Add linting support to notebooks (Closes 1277) by orpuente-MS in https://github.com/microsoft/qsharp/pull/1313
* Use new QIR gen API for Base Profile by idavis in https://github.com/microsoft/qsharp/pull/1400
* Allow generating circuits for operations despite no entrypoint error by minestarks in https://github.com/microsoft/qsharp/pull/1432
* Fix lint message formatting by orpuente-MS in https://github.com/microsoft/qsharp/pull/1444
* Change the default level of the DivisionByZero lint to "error" by orpuente-MS in https://github.com/microsoft/qsharp/pull/1445
* Adding Adaptive RI profile by idavis in https://github.com/microsoft/qsharp/pull/1451
* Handle impossible factories in RE API by msoeken in https://github.com/microsoft/qsharp/pull/1463
* Fix global phase for `PauliI` rotation and `DumpRegister` by swernli in https://github.com/microsoft/qsharp/pull/1461
* Documentation in the VSCode - core, std, and current project by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1466
* Three qubit repetition code sample works in Adaptive Profile by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1534
* GHZ and CAT samples work in Adaptive and Base Profiles by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1532
* Add messages to samples in /samples/language by goshua13 in https://github.com/microsoft/qsharp/pull/1509
* Make `SpreadZ` utility iterative instead of recursive by swernli in https://github.com/microsoft/qsharp/pull/1545
* Support target name in Python, remove Adaptive warnings by swernli in https://github.com/microsoft/qsharp/pull/1549
* Avoid panic from `DumpRegister` in circuit display by swernli in https://github.com/microsoft/qsharp/pull/1554
* Respect configured target profile for histogram in VS Code by swernli in https://github.com/microsoft/qsharp/pull/1565
* Update to Rust 1.78 by orpuente-MS in https://github.com/microsoft/qsharp/pull/1570
* Respect target setting for "Estimate" command by swernli in https://github.com/microsoft/qsharp/pull/1576
* Add support for CodeActions in the Language Service by orpuente-MS in https://github.com/microsoft/qsharp/pull/1495
* Read correct field in QEC scheme by msoeken in https://github.com/microsoft/qsharp/pull/1602
* Fix panic when updating array with dynamic value by swernli in https://github.com/microsoft/qsharp/pull/1606
* Added dot product via iterative phase estimation sample by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1562
* Reset zoom level when circuit window is resized by minestarks in https://github.com/microsoft/qsharp/pull/1592
* Fix normalization math in `DumpRegister` by swernli in https://github.com/microsoft/qsharp/pull/1608
* Adaptive quantum computing notebook samples by cesarzc in https://github.com/microsoft/qsharp/pull/1614

New Contributors

* Piwakk made their first contribution in https://github.com/microsoft/qsharp/pull/1440
* goshua13 made their first contribution in https://github.com/microsoft/qsharp/pull/1447
* moumita-halder made their first contribution in https://github.com/microsoft/qsharp/pull/1489
* devikamehra made their first contribution in https://github.com/microsoft/qsharp/pull/1468
* viktorveis made their first contribution in https://github.com/microsoft/qsharp/pull/1568
* JPark1023 made their first contribution in https://github.com/microsoft/qsharp/pull/1518
* SoniaLopezBravo made their first contribution in https://github.com/microsoft/qsharp/pull/1512

**Full Changelog**: https://github.com/microsoft/qsharp/compare/v1.4.0...v1.6.0

1.4.0

Welcome to the v1.4.0 release of the Azure Quantum Development Kit. The main highlights of this release are:

- Circuit visualization by minestarks in 1247, 1267 1269, 1295, 1318, 1361, and more! See more details on this feature in the official docs, or in the [repository wiki](https://github.com/microsoft/qsharp/wiki/Circuit-Diagrams-from-Q%23-Code)
- Formatting improvements by ScottCarda-MS in 1289, 1303, 1310, 1329
- Update language service when manifest is saved by orpuente-MS in 1366

Other notable fixes and improvements include:

- Fix DumpMachine() output in VS Code debug console by minestarks in https://github.com/microsoft/qsharp/pull/1299
- Fix completion auto-open position in notebook cells by minestarks in https://github.com/microsoft/qsharp/pull/1398
- Update doc comments in std library by DmitryVasilevsky in https://github.com/microsoft/qsharp/pull/1401

And lots of Katas updates! Including:

* Add state flip task to Single-Qubit Gates kata by WWhitedogi in https://github.com/microsoft/qsharp/pull/1343
* Add tasks 1.8, 1.9, 1.10 to Superposition Kata by jkingdon-ms in https://github.com/microsoft/qsharp/pull/1346
* Add sign flip, basis change, amplitude change tasks to Single-Qubit Gates kata by WWhitedogi in https://github.com/microsoft/qsharp/pull/1352
* Add global phase -1, relative phase i, and complex relative phase tasks to Single-Qubit Gates kata by WWhitedogi in https://github.com/microsoft/qsharp/pull/1369
* Add tasks 1.11, 1.12 to Superposition Kata by jkingdon-ms in https://github.com/microsoft/qsharp/pull/1381
* Add task 2.1 to Superposition kata by tcNickolas in https://github.com/microsoft/qsharp/pull/1395
* Update READMEs to add details on building playground and katas by Manvi-Agrawal in https://github.com/microsoft/qsharp/pull/1402
* Add tasks on Bell states changes to Multi-Qubit States kata by WWhitedogi in https://github.com/microsoft/qsharp/pull/1385
* Add CZ section and CNOT and CZ tasks to Multi-Qubit Gates kata by WWhitedogi in https://github.com/microsoft/qsharp/pull/1389
* Adds task 1.13 to Superposition Kata by frtibble in https://github.com/microsoft/qsharp/pull/1382

**Full Changelog**: https://github.com/microsoft/qsharp/compare/v1.3.1...v1.4.0

Page 1 of 2

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.