Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release version 0.6.0 #402

Merged
merged 13 commits into from
Jun 23, 2021
Merged

Release version 0.6.0 #402

merged 13 commits into from
Jun 23, 2021

Commits on Jun 5, 2020

  1. Merge pull request #370 from Takishima/release/0.5.1

    ProjectQ v0.5.1
    Takishima committed Jun 5, 2020
    Configuration menu
    Copy the full SHA
    ea99d74 View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2020

  1. Configuration menu
    Copy the full SHA
    ae376fd View commit details
    Browse the repository at this point in the history

Commits on Dec 14, 2020

  1. Configuration menu
    Copy the full SHA
    c15f3b2 View commit details
    Browse the repository at this point in the history

Commits on Feb 16, 2021

  1. Merge pull request #387 from ProjectQ-Framework/master

    ProjectQ v0.5.2
    Takishima committed Feb 16, 2021
    Configuration menu
    Copy the full SHA
    44342ad View commit details
    Browse the repository at this point in the history

Commits on Feb 17, 2021

  1. Mathgates (#270)

    * added QuantumAdd __init__
    
    * added test for superposition
    
    * quantum addition decomposition added
    
    * quantum addition decomposition added
    
    * quantum adder working
    
    * wrote test for quantum adder
    
    * fixed decomposition rule for quantumaddition
    
    * added subtract quantum
    
    * added comparator
    
    * added conditional add
    
    * fixed conditional add
    
    * added quantum division
    
    * fixed division
    
    * added comments
    
    * additional comments
    
    * fixed multiplication algorithm
    
    * added hash function testing
    
    * pep8
    
    * added complexity information
    
    * adding test
    
    * add comments in python example code
    
    * Update shor.py
    
    * Update shor.py
    
    * Update _factoring_test.py
    
    * Update _constantmath.py
    
    * Update _constantmath.py
    
    * Update _constantmath.py
    
    * Update _constantmath_test.py
    
    * Update _constantmath_test.py
    
    * Update _constantmath_test.py
    
    * Update _constantmath_test.py
    
    * Update _constantmath_test.py
    
    * Update _quantummath.py
    
    * fixed quantum division mathfunction
    
    * add test for math functions in _gates.py
    
    * file _gates_mathtest.py complete
    
    * added tests
    
    * control add quantum
    
    * quantum_division same as QuantumDivision
    
    * added inverse quantum gate
    
    * added get_inverse() to subtract quantum
    
    * fixed error in inversequantum division
    
    * added inverse multiplication
    
    * added gate test
    
    * Cleanup some tests
    
    * Some more rewriting
    
    - Renamed all new gate classes to XXXQuantumGate
    - Create gate instances corresponding to each XXXQuantumGate class
    - Fixed addition function name in _replace_subtractquantum
    - Fixed missing get_inverse() method in MultiplyQuantumGate
    - Updated documentation
    - Expanded test cases to test both emulation and decomposition of
      XXXQuantum gates
    
    * Fix failing tests for addition and division emulation
    
    * Some more cleanup + update year in license headers
    
    * Some more cleanup
    
    * Remove unneeded function
    
    * Some more code cleanup
    
    * Revert change by commit a3f572b
    
     - Revert changes made to AddQuantum.get_math_function and
       _InverseAddQuantum.get_math_function
    
    * Minor adjustments to math gate tests
    
    * Fix pytest.ini
    
    * Adding missing __str__ methods
    
    Co-authored-by: Peter-Jan <peter-jan.derks@student.auc.nl>
    Co-authored-by: Damien Nguyen <ngn.damien@gmail.com>
    3 people committed Feb 17, 2021
    Configuration menu
    Copy the full SHA
    dff6adc View commit details
    Browse the repository at this point in the history

Commits on Mar 1, 2021

  1. Update .travis.yml configuration & add .coveragerc (#389)

    * Update .travis.yml configuration
    
    * Only do coveralls for one job
    
    * Fix failing tests
    
    * Tweak Mac OS build
    
    * More tweaks to Mac OS builds
    
    * Fix error with submitting to coveralls.io
    
    * Add .coveragerc
    
    * Add missing revkit dependency to .travis.yml
    
    * Temporarily disable Mac OS and Windows builds
    
    - Disable the builds until the project will be migrated to
      travis-ci.com due to the new credits plans on Travis-CI.
    Takishima committed Mar 1, 2021
    Configuration menu
    Copy the full SHA
    cee4688 View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2021

  1. AWS Braket service backend (#388)

    * Add AWS Braket service devices as backends
    
    * Add AWS Braket service devices as backends. Correct a braket in README
    
    * Add AWS Braket service devices as backends. Pass pycodestyle
    
    * AWS Braket service backend. Corrections as per the review
    
    * AWS Braket service backend. Correct test to use approx instead of ==
    
    * AWS Braket service backend. Add tests to raise the coverage
    
    * AWS Braket service backend. Second review adjustments
    
    * Fix import errors when boto3 is not installed + use warnings.warn()
    
    * Fix condition when setting the number of controls
    
    * Minor adjustments in _awsbraket.py
    
    - Better handling of daggered gates
    - Some minor code cleanup
    
    * Make sure that unit tests are skipped if boto3 is not installed
    
    * Rapid fix to make sure that tests can be repeated without errors
    
    * Fixes for _awsbraket.py and its associated tests
    
    - Minor code cleanup
    - Modify functional tests to work with and without mapper
    - Fix issue when repeating some tests more than once
    - Add missing test for case where AWS Braket backend is used as a
      compiler engine
    
    * Minor adjustments to _awsbraket_boto3_client.py and related tests
    
    - Tweak user messages slightly
    - Add test to cover missing execution paths
    
    * Remove mapper in Jupyter notebook
    
    * Cleanup tests for _awsbraket.py + remove unneeded catch of TypeError
    
    * Adjust .coveragerc
    
    * Cleanup tests for _awsbraket_boto3_client.py
    
    * Fix erroneous license header
    
    * Mention installing ProjectQ with the 'braket' extra in README
    
    * Remove unneeded call to is_available in AWSBraketBackend + ...
    
    ... improve basic functional test.
    
    * Re-indent _awsbraket_boto3_client.py
    
    * Some more cleanup for _awsbraket.py
    
    * Some more cleanup for _awsbraket_boto3_client.py
    
    * Remove trivial mapper in default setup for AWS Braket backend
    
    * Fix test failure
    
    Co-authored-by: Damien Nguyen <ngn.damien@gmail.com>
    fernandodelaiglesia and Takishima committed Apr 19, 2021
    Configuration menu
    Copy the full SHA
    fb548ef View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2021

  1. GitHub actions, pre-commit hooks, pyproject.toml and more (#395)

    * Adding support for GitHub actions
    
    * Add workflow to upload to PyPi on GitHub releases submission
    
    * Add dependabot configuration file
    
    * Clang-Tidy and generation of requirement file for setup.py
    
    * Add support for pre-commit hooks and formatting workflow
    
    * Remove .pylintrc, .coveragerc and pytest.ini in favour of setup.cfg
    
    * Fix Clang-Tidy warnings
    
    * Fix flake8 warnings
    
    * Modify MANIFEST.in
    
    * Fix some issues with the documentation generation
    
    * Fix awsbraket tests to avoid running if boto3 is not installed
    
    * Remove Python2 compatibility code
    
    * Apply changes from pre-commit-hooks
    
    * Run Black on whole project
    
    * Run remove-tabs on whole project
    
    * Fix flake8 issues
    
    * Fix some warnings occurring while running the test suite
    
    * Add pyproject.toml
    
    * Adapt GitHub Action to use pyproject.toml
    
    * Add .editorconfig
    
    * Use setuptools-scm
    
    * Add GitHub Actions for creating new releases
    
    * Add CHANGELOG.md
    
    * Update pre-commit hooks
    
    * Update license headers of files with non-trivial changes
    
    * Add setup.cfg and pyproject.toml to MANIFEST.in
    
    * Change output name of version file
    
    * Move parameters for check-manifest into pyproject.toml
    
    * Address most comments (mostly merging strings)
    
    * Effects of running black and flake8 with new settings
    
    * Remove __div__ and __idiv__ usage in tests for QubitOperator
    
    * Fix typo
    
    * Fix build issues on Clang docker images
    
    * Make installation verbose on CI
    
    * Fix bug with classical simulator and negative bit shifts
    
    * Update flaky for GCC CI builds
    
    * Remove unneeded qubit allocation in meta.Loop tests
    Takishima committed Jun 14, 2021
    Configuration menu
    Copy the full SHA
    23dac9e View commit details
    Browse the repository at this point in the history
  2. Bump joerick/cibuildwheel from 1.11.0 to 1.11.1 (#397)

    * Bump joerick/cibuildwheel from 1.11.0 to 1.11.1
    
    Bumps [joerick/cibuildwheel](https://github.com/joerick/cibuildwheel) from 1.11.0 to 1.11.1.
    - [Release notes](https://github.com/joerick/cibuildwheel/releases)
    - [Changelog](https://github.com/pypa/cibuildwheel/blob/main/docs/changelog.md)
    - [Commits](pypa/cibuildwheel@v1.11.0...v1.11.1)
    
    ---
    updated-dependencies:
    - dependency-name: joerick/cibuildwheel
      dependency-type: direct:production
      update-type: version-update:semver-patch
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    
    * Update CHANGELOG
    
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Damien Nguyen <ngn.damien@gmail.com>
    dependabot[bot] and Takishima committed Jun 14, 2021
    Configuration menu
    Copy the full SHA
    0cf7322 View commit details
    Browse the repository at this point in the history
  3. Add a backend for IonQ. (#391)

    * Add a backend for IonQ.
    
    * Update projectq/setups/ionq.py
    
    Thanks for the correction!
    
    Co-authored-by: Nguyen Damien <ngn.damien@gmail.com>
    
    * Update docstring to match return type.
    
    * Fix copyright header years, imports, docstring.
    
    * Fix comment
    
    * Fix measurement mappings and result parsing.
    
    * Fix some bad logic with result probability mappings.
    * Fix some erroneous test cases.
    * Fix example code.
    * Ensure qubits are "deallocated" and reset after job submit.
    * Drop dependency on mappers in favor of API response mappings.
    * Add better error handling for API/http errors.
    * Fix tests.
    
    * Update example notebook.
    
    * Fix qubit mapping.
    
    * Use a dedicated qubit mapper instead of bashing self.main_engine.
    * Update backend, add tests, to reflect new mapper.
    
    * Use response.registers instead of echoing metadata.
    
    * Fix get_probability after register updates
    
    * Fixes after rebase, use metadata to remamp qubit IDs on response
    
    * Lint/CI/Format/Changelog fixes
    
    * Always make sure to give a result, even if it's not likely
    
    * Missed formatter issues
    
    Co-authored-by: Nguyen Damien <ngn.damien@gmail.com>
    amilstead and Takishima committed Jun 14, 2021
    Configuration menu
    Copy the full SHA
    b078f67 View commit details
    Browse the repository at this point in the history

Commits on Jun 16, 2021

  1. Ctrl generalize (#400)

    * Init
    
    * Apply control through compute engine. Added Enum class
    
    * Apply control through compute engine. Added Enum class
    
    * Apply control through compute engine, added enum class
    
    * Fix small bug due to wrong default value, clean up output
    
    * abolished decomp
    
    * Revert "abolished decomp"
    
    This reverts commit 36743a1.
    
    * Apply Control through decomposition. Added Test Files
    
    * Fix a few issues with new control state
    
    - Address inconsistency with qubit state ordering when using integers
      as input control state
    - Add canonical_ctrl_state function to centralise functionality
    - Fix some file encoding
    - Fix tests
    
    * Update examples/control_tester.py
    
    * Add some missing license headers and fix some tests
    
    * Add missing docstring
    
    * Cleanup some code in AQT and IBM backends
    
    * Some code cleanup in _simulator.py
    
    * Change autoreplacer priority for control. Added Additional test for autoreplacer. Added check for canonical ctrl state func.
    
    * Update projectq/setups/default.py
    
    * Update projectq/setups/decompositions/cnu2toffoliandcu.py
    
    * Update projectq/setups/decompositions/cnu2toffoliandcu.py
    
    * Cleanup code in _replacer.py
    
    * Tweak some of the unit tests + add comments
    
    * Add more tests for canonical_ctrl_state and has_negative_control
    
    * Short pass of reformatting using black
    
    * Bug fixing for rebasing
    
    * Reformat files. Improve control_tester examples. Update change log
    
    * Dummy change to trigger CI with new state
    
    * Use pytest-mock for awsbraket client testing
    
    * Fix Linter warnings
    
    * Use pytest-mock also for awsbraket backend tests
    
    * Fix missing tests in backends and added support for IonQ
    
    * Fix linter warning
    
    * Add support for AWSBraketBackend
    
    * Fix small typo
    
    * Use backported mock instead of unittest.mock
    
    * Sort requirements_tests.txt
    
    * Fix a bunch of errors that happens at program exit
    
     Monkeypatching or patching of external may unload the patch before
     the MainEngine calls the last flush operations which would then call
     the original API although unwanted.
    
    Co-authored-by: Damien Nguyen <ngn.damien@gmail.com>
    XYShe and Takishima committed Jun 16, 2021
    Configuration menu
    Copy the full SHA
    aa3afaf View commit details
    Browse the repository at this point in the history

Commits on Jun 21, 2021

  1. Bump thomaseizinger/create-pull-request from 1.0.0 to 1.1.0 (#401)

    * Bump thomaseizinger/create-pull-request from 1.0.0 to 1.1.0
    
    Bumps [thomaseizinger/create-pull-request](https://github.com/thomaseizinger/create-pull-request) from 1.0.0 to 1.1.0.
    - [Release notes](https://github.com/thomaseizinger/create-pull-request/releases)
    - [Changelog](https://github.com/thomaseizinger/create-pull-request/blob/master/CHANGELOG.md)
    - [Commits](thomaseizinger/create-pull-request@1.0.0...1.1.0)
    
    ---
    updated-dependencies:
    - dependency-name: thomaseizinger/create-pull-request
      dependency-type: direct:production
      update-type: version-update:semver-minor
    ...
    
    Signed-off-by: dependabot[bot] <support@github.com>
    
    * Update CHANGELOG
    
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    Co-authored-by: Damien Nguyen <ngn.damien@gmail.com>
    dependabot[bot] and Takishima committed Jun 21, 2021
    Configuration menu
    Copy the full SHA
    f93cca3 View commit details
    Browse the repository at this point in the history

Commits on Jun 23, 2021

  1. Preparing release v0.6.0

    - Fix some minor issues prior to releasing
    
      + Fixed pyproject.toml sections for pylint
      + Fixed constant warning messages if braket extra is not installed
      + Fixed file ignore list for check-manifest
      + Fixed issue with version in GitHub Actions
      + Added `setup_require` section to setup.cfg
      + Added new extra for testing (will eventually replace requirements_tests.txt)
      + Update pre-commit config to run black before linters
      + Update badges in README
      + Update configuration for pylint and pytest in pyproject.toml
      + Restructure and update CHANGELOG
    
    - Enable pylint in pre-commit hooks
    - Apply changes based on running pylint
    - Rename `m` parameter of the LocalOptimizer to `cache_size`
    - Gracious exit in case of failure in the MainEngine constructor
    - Remove requirements_tests.txt and improve gen_reqfile setup command
    - Remove docs/requirements.txt and add .readthedocs.yaml
    - Remove all assert statements in non-test code
    - Reinstate flaky test for phase estimation decomposition
    web-flow authored and Takishima committed Jun 23, 2021
    Configuration menu
    Copy the full SHA
    e0ff304 View commit details
    Browse the repository at this point in the history