Pyqir

Latest version: v0.10.2

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

Scan your dependencies

Page 2 of 4

0.8.0

What's Changed
* Update example in PyQIR readme by samarsha in https://github.com/qir-alliance/pyqir/pull/227
* LLVM Build Caching by idavis in https://github.com/qir-alliance/pyqir/pull/225
* Add API for required module metadata by idavis in https://github.com/qir-alliance/pyqir/pull/226
* Updating version number to 0.8.0 by idavis in https://github.com/qir-alliance/pyqir/pull/231


**Full Changelog**: https://github.com/qir-alliance/pyqir/compare/v0.8.0a1...v0.8.0

0.8.0a1

> - LLVM 14 is now the default target.
> - QIR evaluation has been removed. Simulation of QIR is now available via the [`qir-runner`](https://github.com/qir-alliance/qir-runner) sparse simulator.
> - `BasicQisBuilder` is now written in Python.
> - All QIS instructions are available in the `pyqir.qis` submodule
> - `barrier`, `ccx`, `cx`, `cz`, `h`, `if_result`, `mz`, `reset`, `rx`, `ry`, `rz`, `s`, `s_adj`, `swap`, `t`, `t_adj`, `x`, `y`, `z`
> - Of these,`barrier`, `ccx`, and `swap` are new.
> - PyQIR can generate QIR compatible with the QIR base profile preliminary spec
> - Module flags can now be generated
> - Attributes on functions can now be added and queried.
> - RT instructions are available in the `pyqir.rt` submodule
> - Output recording functions are now built-in: `array_record_output`, `result_record_output`, and `tuple_record_output`
> - Execution environment call, `initialize`, is now built-in
> - `EntryPoint` attribute is now `entry_point`
> - `requiredQubits` attribute is now `num_required_qubits`
> - `requiredResults` attribute is now `num_required_results`
> - `__quantum__qis__mz__body` signature has been updated. Its result parameter is now marked `writeonly` and the function call now has the `irreversible` attribute:
> before:
> `declare void __quantum__qis__mz__body(%Qubit*, %Result*) 1`
> after:
> `declare void __quantum__qis__mz__body(%Qubit*, %Result* writeonly) 1`
> `attributes 1 = { "irreversible" }`

Technical Changes
- Inkwell has been removed as a dependency. Qirlib now uses LLVM-SYS and a custom wrapper around the LLVM C++ APIs.

What's Changed
* Bump version to 0.8.0a1 by samarsha in https://github.com/qir-alliance/pyqir/pull/213
* Fix warning in anltr example installation by idavis in https://github.com/qir-alliance/pyqir/pull/214
* Remove Inkwell by samarsha in https://github.com/qir-alliance/pyqir/pull/216
* Fix Module.bitcode() use-after-free by samarsha in https://github.com/qir-alliance/pyqir/pull/219
* Fix typechecking with mypy>=0.990 by samarsha in https://github.com/qir-alliance/pyqir/pull/218
* Removing evaluator by idavis in https://github.com/qir-alliance/pyqir/pull/220
* Changing build to target LLVM 14 by idavis in https://github.com/qir-alliance/pyqir/pull/222
* Adding QIS and RT functions by idavis in https://github.com/qir-alliance/pyqir/pull/221
* Adding param, module, and function metadata by idavis in https://github.com/qir-alliance/pyqir/pull/223


**Full Changelog**: https://github.com/qir-alliance/pyqir/compare/v0.7.0...v0.8.0a1

0.7.0

This release features the unification of pyqir-generator and pyqir-parser. We've made significant changes to the API including many breaking changes. For more information, please read the [upgrade guide](https://www.qir-alliance.org/pyqir/upgrade.html).

What's Changed

* Update PyO3 and Maturin and require Python 3.7 by samarsha in https://github.com/qir-alliance/pyqir/pull/169
* Replace SemanticModel with Inkwell in PyQIR Generator by samarsha in https://github.com/qir-alliance/pyqir/pull/157
* Unify Generator and Evaluator by samarsha in https://github.com/qir-alliance/pyqir/pull/174
* Add Inkwell-based parsing by samarsha in https://github.com/qir-alliance/pyqir/pull/170
* Set upper bound on mypy version by samarsha in https://github.com/qir-alliance/pyqir/pull/191
* Replace unittest tests with pytest by samarsha in https://github.com/qir-alliance/pyqir/pull/183
* Update to Rust edition 2021 by samarsha in https://github.com/qir-alliance/pyqir/pull/185
* Removing PowerShell 7.3 alias for exec during build by idavis in https://github.com/qir-alliance/pyqir/pull/192
* Remove spellcheck CI by samarsha in https://github.com/qir-alliance/pyqir/pull/187
* Move static qubit and result constructors out of Builder by samarsha in https://github.com/qir-alliance/pyqir/pull/181
* Remove pyqir-parser by samarsha in https://github.com/qir-alliance/pyqir/pull/189
* Delete release issue template by samarsha in https://github.com/qir-alliance/pyqir/pull/186
* Support global string constants and constant getelementptr by samarsha in https://github.com/qir-alliance/pyqir/pull/190
* Clean up docs and fail if there are warnings by samarsha in https://github.com/qir-alliance/pyqir/pull/184
* Update packages by samarsha in https://github.com/qir-alliance/pyqir/pull/182
* Remove qirlib Builder wrapper by samarsha in https://github.com/qir-alliance/pyqir/pull/193
* Support generating multiple entry points by samarsha in https://github.com/qir-alliance/pyqir/pull/180
* Adding better native support for mac by idavis in https://github.com/qir-alliance/pyqir/pull/197
* Remove TypeFactory by samarsha in https://github.com/qir-alliance/pyqir/pull/199
* Add null constants, `br` instruction, and clean up API by samarsha in https://github.com/qir-alliance/pyqir/pull/201
* Automatic GEP for global strings and support for non-simple Module by samarsha in https://github.com/qir-alliance/pyqir/pull/202
* Remove basic passes by samarsha in https://github.com/qir-alliance/pyqir/pull/205
* Keep the module alive by samarsha in https://github.com/qir-alliance/pyqir/pull/204
* Remove dev container by samarsha in https://github.com/qir-alliance/pyqir/pull/207
* Add upgrade guide for v0.7 by samarsha in https://github.com/qir-alliance/pyqir/pull/206
* Simplify Sphinx docs structure, update theme, and fix docstring bugs by samarsha in https://github.com/qir-alliance/pyqir/pull/208
* Rewrite SimpleModule in pure Python by samarsha in https://github.com/qir-alliance/pyqir/pull/209
* Add docstrings to stub file by samarsha in https://github.com/qir-alliance/pyqir/pull/210
* Generalize API for attributes by samarsha in https://github.com/qir-alliance/pyqir/pull/211
* Bump version to 0.7.0 by samarsha in https://github.com/qir-alliance/pyqir/pull/212

**Full Changelog**: https://github.com/qir-alliance/pyqir/compare/v0.6.2...v0.7.0

0.6.2

What's Changed

* Add requiredQubits and requiredResults attributes by samarsha in https://github.com/qir-alliance/pyqir/pull/166

**Full Changelog**: https://github.com/qir-alliance/pyqir/compare/v0.6.1...v0.6.2

0.6.1

What's Changed

* output_name can be None by samarsha in https://github.com/qir-alliance/pyqir/pull/161
* Fix if_result signature in pyi file by samarsha in https://github.com/qir-alliance/pyqir/pull/163

**Full Changelog**: https://github.com/qir-alliance/pyqir/compare/v0.6.0...v0.6.1

0.6.0

Generator now supports LLVM instructions for integer arithmetic and branching. Built-in support for dynamic qubit and result allocation has been removed, but the functionality is still possible using the external functions feature (see the [dynamic allocation example](https://github.com/qir-alliance/pyqir/blob/main/examples/generator/dynamic_allocation.py)).

What's Changed
* Python subset to QIR by LaurentAjdnik in https://github.com/qir-alliance/pyqir/pull/110
* Update CI runners to macOS 11 by samarsha in https://github.com/qir-alliance/pyqir/pull/141
* Bumping version to 0.6.0. by idavis in https://github.com/qir-alliance/pyqir/pull/144
* Support functions with return values by samarsha in https://github.com/qir-alliance/pyqir/pull/138
* Support LLVM intrinsic operators for integers by samarsha in https://github.com/qir-alliance/pyqir/pull/140
* Support branching on boolean conditions by samarsha in https://github.com/qir-alliance/pyqir/pull/145
* Make the build script faster by samarsha in https://github.com/qir-alliance/pyqir/pull/148
* Install Maturin with pip to avoid build breakage by samarsha in https://github.com/qir-alliance/pyqir/pull/149
* Remove dynamic allocation for qubits and results by samarsha in https://github.com/qir-alliance/pyqir/pull/147
* Move `if_` and `if_result` to respective builders by samarsha in https://github.com/qir-alliance/pyqir/pull/150
* Remove musl Linux builds by samarsha in https://github.com/qir-alliance/pyqir/pull/153
* Improve Mypy checking in CI by samarsha in https://github.com/qir-alliance/pyqir/pull/152
* Update branching example in readme by samarsha in https://github.com/qir-alliance/pyqir/pull/154
* Improve Sphinx documentation for PyQIR Generator by samarsha in https://github.com/qir-alliance/pyqir/pull/155
* Format Python files with Black by samarsha in https://github.com/qir-alliance/pyqir/pull/156
* Bump version to v0.6.0 and delete changelog by samarsha in https://github.com/qir-alliance/pyqir/pull/158

**Full Changelog**: https://github.com/qir-alliance/pyqir/compare/v0.5.0a1...v0.6.0

Page 2 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.