Граф коммитов

576 Коммитов

Автор SHA1 Сообщение Дата
Robin Kuzmin 37484317ff
Fixing the SDL.vnext pipeline (#1113) 2022-12-14 16:06:32 -08:00
Stefan J. Wernli b9238214c4
Update to latest qir-stdlib (#1114)
Notably this includes a fix for QIR BigInt endianness as seen in https://github.com/qir-alliance/qir-runner/pull/21
2022-12-14 22:06:43 +00:00
Robin Kuzmin 7e6210e6ac
Switch to 0.27.244707. (#1112) 2022-12-10 14:07:25 -08:00
Stefan J. Wernli 2a128d6ed8
Use qir-stdlib from the qir-runner repo (#1111)
This change removes the code for the qir-stdlib and instead compiles a wrapper library for it, allowing the source code from https://github.com/qir-alliance/qir-runner to the be authoritative implementation.
2022-12-08 15:07:32 -08:00
Stefan J. Wernli 1ac2e3cd15
Implementing Library functions in Q# (#1109)
* Implementing Library functions in Q#

This change implements several Q# functions that were previously `body intrinsic` via existing Q# functionality. This improves compatibility with QIR generation and allows us to remove the corresponding manual C# implementation in favor of compiler generated ones. This will also improve compatibility of programs that use these functions with full QIR targets like resource estimation.

* Update src/Simulation/QSharpFoundation/Convert/Convert.qs

Co-authored-by: Robin Kuzmin <9372582+kuzminrobin@users.noreply.github.com>

* Check length of array

* Fix two's complement handling

* Simplify bounds check

Co-authored-by: Robin Kuzmin <9372582+kuzminrobin@users.noreply.github.com>
2022-12-03 09:57:46 +00:00
Stefan J. Wernli d106fba472
Add `ResultArrayAsInt` override to target packages (#1055)
This adds a `ResultArrayAsInt` implementation that is compatible with QIR hardware compilation to the target packages. This will allow it to act as an override for the libraries definition while still supporting calculation of the integer value on platforms that can support it.
2022-12-02 20:43:40 +00:00
César Zaragoza Cortés c46da38652
Update QIR submitter factory to support IonQ (#1104)
Update QIR submitter factory to support IonQ.
2022-11-29 10:20:19 -08:00
Robin Kuzmin fdf8390cbe
Fixing the Quantum repo build failure during qdk.release (#1108) 2022-11-29 01:48:46 +00:00
Ian Davis 15a54935a2
Adding license to Cargo.toml for stdlib (#1105) 2022-11-07 15:58:57 -08:00
Robin Kuzmin ddfe97de4f
2022.10 Hotfix: Updated to 0.27.238334. (#1103) 2022-10-28 18:06:23 -07:00
Robin Kuzmin 7b91a0e83f
Switch to QDK version 0.27.236950. (#1102) 2022-10-26 12:19:45 -07:00
XField 9341d7935c
Remove Honeywell provider and update test to use Quantinuum (#1099)
* Remove Honeywell provider and update test to use Quantinuum

* Revert changes to internal .NET Honeywell-Quantinuum providers

* Correct the namespace of the Quantinuum target

* Revert support for Honeywell entrypoint/targets

* Update Quantinuum target
2022-10-19 14:11:05 -08:00
Bill Ticehurst ef02995fc5
Updated PowerShell scripts for easier debugging (#1097)
* Updated PowerShell scripts for easier debugging

* Removed commented out code
2022-10-13 23:20:30 +00:00
Bill Ticehurst 8846e55625
Added Chocolatey and brew as prereqs (#1098)
* Added Chocolatey and brew as prereqs

* Grammar
2022-10-13 09:24:14 -07:00
Ian Davis 0425932ee4
Locking `cargo-edit` to `0.11.3`. Breaking changes introduced in `0.11.4` (#1096) 2022-10-11 12:26:29 -07:00
DmitryVasilevsky 3777c6352d
Cleanup: removed defines, added logging, etc. (#1093)
Co-authored-by: Dmitry Vasilevsky <dmitryv@microsoft.com>
2022-09-28 11:34:37 -07:00
DmitryVasilevsky 1697d985c2
Sparse simulator provides little-endian labels to dump callback (#1092)
* Dump callback now gets little-endian labels in sparse simulator

* More diagnostics, formatting fix, dev build fix

* Removed defines from Sparse Simulator

* Removed all code cleanup

Co-authored-by: Dmitry Vasilevsky <dmitryv@microsoft.com>
2022-09-22 20:09:26 -07:00
Xinyi Joffre 77085fb06f
Add support for new microsoft-qc provider (#1091)
* Add support for new microsoft-qc provider

* Make submitter specific to estimator

* Fix second QIR Submitter factory as well
2022-09-20 14:40:00 -07:00
Stefan J. Wernli 0f26a00302
Adding secondary owner for CODEOWNERS (#1088)
Adding secondary owner for CODEOWNERS

I'm adding @bettinaheim as secondary owner for any folders that I was the only owner.
2022-09-16 23:31:54 +00:00
Stefan J. Wernli 5a4fb4f34b
Replace C++ QIR Runtime with Rust QIR stdlib (#1087)
* Add parallel Rust QIR Runtime

* Remove old dependencies

* Use --all-targets clippy, corresponding fixes

* Add conditionals instrinc support, result_to_string

* Add QIR simulator support

* Share C++ tests across Rust impl

* Add to build scripts

* Fix build ordering

* Fix CI cleanup

* More build fixes

* Fix build bug

* Minor error message fix

* Move result related api into sim

* refactor qir_runtime, split out qir_sim

* Use BigUint for sparse sim indexing

* Type updates, sparse nearly_zero fix

* Consolidation and optimization of sparse sim

* Rust qubit/result to string fixes

* Fullstate sim as QIR backend, staticlib runtime

* rename runtime to stdlib

* rename sim to backend

* remove conditionals support

* Fix public module ref

* Update cmdline tool to use simulator QIR backend

* Use whole-archive linking on non-Windows

* Use thread_local for simulator init

* Use all_load on MacOS

* Skip QIR libs,include for runtime tool

* Use force_load on MacOs

* Try alternate MacOS linking strategy

* Use full path in MacOs linking

* Try explicit lib name

* Clean up and comments

* Remove QIR C++ runtime, rename folders

* Use environment variables in native sim build

* Put back Tools tests

* Remove tracer test from solution

* Remove unused qir_backend

* Include full state sim lib in nuget package

* Update array unit tests

* Update bigint unit tests

* Update range unit tests

* Update strings unit tests

* __quantum__rt__fail will print string before panic

* Fix broken readme links

* Fix formatting in arrays.rs

* Clarifying comments, minor fixes from initial review

* Fix formatting

* Add `__quantum__rt__message_record_output`

* Clean up file encoding for .cargo/config.toml

* Updating script patterns

* Updates from PR feedback

* Fix double free typo in tests

* More updates from PR feedback

* Remove leftover debug line
2022-09-16 11:43:00 -07:00
DmitryVasilevsky 1ae7e698a8
Updating QDK version to 0.25.228311 - August 2022 Release (#1086)
Co-authored-by: Dmitry Vasilevsky <dmitryv@microsoft.com>
2022-09-12 09:53:08 -07:00
Jamie Magee 80c210030a
Add `$schema` to `cgmanifest.json` (#1082)
Co-authored-by: Jamie Magee <jamie.magee@microsoft.com>
2022-09-06 17:27:35 -07:00
Ricardo Espinoza 3bc093fb0d
Add exemption file for Central Feed Services onboarding (#1084) 2022-09-01 14:52:47 -07:00
Cassandra Granade 477418e8ba
Lock thiserror to 1.0.30. (#1083)
This PR locks the `thiserror` crate to 1.0.30, as more recent versions use the newer provider API for error handling.
2022-08-31 21:32:59 -07:00
Hal Owens a28663f60e
Added unit documentation to Rx Rz and Ry operations (#1070)
* Added unit documentation to Rx Rz and Ry operations

* Added documentation to theta argument for each

* Update src/Simulation/TargetDefinitions/Decompositions/Rx.qs

Co-authored-by: Stefan J. Wernli <swernli@microsoft.com>

Co-authored-by: Hal Owens <t-halowens@microsoft.com>
Co-authored-by: Stefan J. Wernli <swernli@microsoft.com>
2022-08-30 23:07:06 +00:00
Robin Kuzmin 2eb0f3fd14
Upgraded clang from 13 to 14[.0.6]. (#1065)
* Upgraded clang from 13 to 14[.0.6].
* LLVM-14 bug work-around.
2022-08-26 22:47:07 -07:00
Cassandra Granade 1bedab7960
Apply #1036 to open systems simulator. (#1058) 2022-08-26 19:28:53 +00:00
Stefan J. Wernli 75b05cd753
Remove unused Rust sys crate, minor clean up (#1077)
* Remove unused Rust sys crate, minor clean up

This removes the Rust sys crate that wrapped the C++ runtime since it was no longer used. In addition, it moves some rustc flags configuration out of build scripts and into a repo-wide settings file, resolves a cargo warning by moving profile settings up to the root of the workspace, and cleans up a few leftover functions listed as dllexport in the runtime header files despite having no implementation.

* Fixes for PR feedback
2022-08-25 08:40:28 +00:00
Angela Burton 21cd7eee8e
Update Azure.Storage.Blobs versions (#1072)
* Update the version of Azure.Storage.Blobs to pull in a security patch
* Update Azure.Core to prevent a version conflict with the Azure.Storage.Blobs upgrade
* Update to Azure.Storage.Blobs 12.13.1 released on 2022-08-22

Co-authored-by: Ricardo Espinoza <ricardoe@microsoft.com>
2022-08-23 17:49:55 +00:00
Stefan J. Wernli adc7861eb6
Use latest MSVC libraries (#1075) 2022-08-16 19:10:29 -07:00
Sarah Marshall 18ee40d730
Deprecate `Default` (#1071)
Closes #975.
2022-08-08 11:23:42 -07:00
Cassandra Granade f6204696cf
Cgranade/lock nightly (#1069)
* Apply #1036 to open systems simulator.

* Lock nightly to August 1.
2022-08-03 19:18:50 +00:00
Ricardo Espinoza d6d10353c8
Updating QDK version to 0.25.222597 (#1067) 2022-07-28 14:59:59 -07:00
microsoft-github-policy-service[bot] 71c0edf7a0
Adding Microsoft SECURITY.MD (#1017) 2022-07-26 21:04:49 +00:00
DmitryVasilevsky 84f81d6f72
Fixing deserialization security issue (non-issue) (#1059)
Fixing deserialiation security issue (non-issue)

Co-authored-by: Dmitry Vasilevsky <dmitryv@microsoft.com>
2022-07-19 10:12:36 -07:00
César Zaragoza Cortés 41805fa43c
Update to credential factory (#1062)
Update to credential factory.
2022-07-18 11:49:33 -07:00
Ricardo Espinoza bd22f3ea09
Disable use of cargo2junit because bug rust/99261 (#1061) 2022-07-15 17:06:52 -07:00
Mathias Soeken dd6e9fe4d9
Ensure capacity when multiple qubits are allocated (#1056)
Ensure capacity when multiple qubits are allocated.
2022-07-13 08:32:52 -07:00
Stefan J. Wernli 37e24d1e61
Add Sparse Sim to manifest, link against Spectre libs (#1054)
* Add Sparse Simulator to manifest

* Pull common cmake utils into library

* Fix linker flag
2022-07-09 02:55:43 +00:00
Angela Burton d192c291f7
CodeQL cpp/infiniteloop fix (#1048)
* resolve CodeQL cpp/infiniteloop alerts

* comparison fixes

* small fix

Co-authored-by: Ricardo Espinoza <ricardoe@microsoft.com>
2022-07-08 22:02:43 +00:00
Stefan J. Wernli ebbb2dbfc8
Link Spectre mitigated runtime on Full State Sim (#1053) 2022-07-08 07:03:30 -07:00
Stefan J. Wernli 300db86ba9
Fix BinSkim issues for native simulator (#1052)
This updates the native simulator to participate in BinSkim checks by ensuring that it produces symbols even when built in release mode. Any further BinSkim fixes will be added if necessary.
2022-07-06 10:35:44 -07:00
Angela Burton 8a8d129528
Use javascript strict mode to resolve CodeQL alert (#1051) 2022-07-02 01:33:10 +00:00
Stefan J. Wernli 352aba026c
Update codeowners (#1047)
* Update codeowners

Adding a few more owners for folders in runtime.

* Update .github/CODEOWNERS

Co-authored-by: Robin Kuzmin <9372582+kuzminrobin@users.noreply.github.com>

* Update .github/CODEOWNERS

Co-authored-by: César Zaragoza Cortés <cesarzc@microsoft.com>

* Adding /src/Azure/

Co-authored-by: Robin Kuzmin <9372582+kuzminrobin@users.noreply.github.com>
Co-authored-by: César Zaragoza Cortés <cesarzc@microsoft.com>
2022-06-28 22:10:18 +00:00
Bettina Heim 8abe490606
Updating packages to the latest release build (#1045) 2022-06-24 08:26:37 -07:00
Bettina Heim 87576b1f1e
Adjustments to enable QIR targets (#1019) 2022-06-23 07:59:02 -07:00
Stefan J. Wernli 68b2e47a41
Use Reset in Type1 Measure (#1044) 2022-06-22 21:09:09 -07:00
Robin Kuzmin 579b660b0a
Added @kuzminrobin's code ownership. (#1043) 2022-06-21 14:18:06 -07:00
DmitryVasilevsky 66d6b63d28
DmitryVasilevsky ownership (#1042)
* DmitryVasilevsky ownership

Co-authored-by: Dmitry Vasilevsky <dmitryv@microsoft.com>
2022-06-17 23:35:56 -07:00
Stefan J. Wernli c037629fe2
Fix SpreadZ decomposition utility (#1036)
This fixes the operation of `SpreadZ` when running on lists of more than 3 qubits. It adds tests that operate on lists of 1 to 4 qubits.

Fixes #1021 Bug in the internal `SpreadZ` operation (used in `Exp` decomposition)
2022-06-14 09:51:42 -07:00