Since #1644 we've removed all the C++ code from the terra repository.
That commit updated the setup.py and build process to not assume we're
compiling code to build the simulators. However we missed a lot of
parameters imports and other code in the setup.py which are not needed
or don't apply anymore now that terra is just python code. This commit
cleans that all up so we minimize what we include in the setup.py.
* Changed param to params everywhere
* Found and fixed 2 more param
* Updated the CHANGELOG to include these changes
* Adding accidentally removed comment
* Update CHANGELOG.rst
* remove typo in hadamard gate
* enable register slicing
This allows statements like qc.x(qr[0:2]).
* linting
* more linting
* add doc strings
* minor linting change
* lint
* use decorators for common gate extensions
* linting
* generate more useful error message for 3q gates
When cswap or ccx incorrectly use unequal register sizes this generates a more useful error message.
* minor commit
* seperate gate decorators into it's own module.
allow single qubit target with multiple qubit control.
* linting
* remove f-format strings for python 3.5
* fix minor bugs
* linting
* changelog
In the plot_histogram function there was a bug when there were multiple
executions passed into the function with the y axes bounds. We were
previously setting the ylimit for each iteration of loop which goes over
each execution. However we should look at the max probability across all
executions when determining the upper limit for the yaxis. This commit
fixes this change by saving all the probabilities in a list outside the
loop and then moving the ax.ylim() to the end of that loop.
Fixes: #1660
* Remove vqe performance test
The infrastructure in terra needed to run vqe was removed in #1184 in
favor of just using aqua. However the performance test that depending on
this to benchmark running vqe was not removed at the same time. This
commit corrects the oversight and just removes the test since it doesn't
work anymore. We should just rely on aqua to run vqe (and aqua to do the
benchmarking).
* Remove H2 and LiH files too
Currently the osx jobs are failing trying upgrade the pyenv version to the latest (which is needed to install the python versions we test in CI). According to the travis docs the best way to use homebrew on osx jobs is to rely on the travis addon instead of doing it manually in the install scripts. This commit makes this change so we install the latest version of pyenv (and the python 3.7 dependencies) via the addon instead of out of band. This fixes the failure and makes sure we have the latest versions of the homebrew package installed as needed.
* Find working pyenv versions on osx homebrew
* Switch to travis addon for brew
* Rework travis osx config a bit more
* Remove legacy cpp code
* remove legacy cpp sim from make and travis
* Rename decorator and folder for aer provider tests
* remove Cpp simulator for setup.py
* fixup
* Remove all cmake and cleanup travis config
Since we're no longer building any C++ code there is no need to keep
cmake usage around anymore. This commit removes the last cmake remnants
and also cleans up the travis config to simply run make && make test to
install everything and then just invoke the test runner. It also
deduplicates jobs now that there is no distinction between no_compile
and compile jobs.
* Fix some small oversights
* Remove legacysimulator contributing doc section
This commit updates some internal variable names and removes out of date
comments. When we refactored the visualizers to use the dag/circuit
directly instad of unrolling into json these were leftover. While the
code worked it didn't reflect how things were actually working anymore.
To minimize code churn before the release these cleanups were left until
after the 0.7 release.
Fixes#1452
* Remove deprecated functions, options, and behavior from circuit_drawer
In the 0.7 release we deprecated several functions, options, and
behaviors in the circuit drawers. Now that we've got that release out
the door we can stage the removal of those things. This commit does that
and removes all the things we deprecated to stage for removal in the
circuit drawers.
* Fix test imports
* Fix whitespace
* Fix lint
* Silence ChangedInMarshmallow3Warning warnings
Add a warnings filter for ignoring "ChangedInMarshmallow3Warning",
renaming the util function in the process.
* Style fixes for _util
* Removing qobj dependencies in qobjconfig
* Adding to rebase
* Removing unrolls
* Linting
* Fixing last test
* Updating the schema
* Linting that makes no sense
* Diego updates
* Linting
* Update qiskit/tools/compiler.py
Co-Authored-By: jaygambetta <jay.gambetta@us.ibm.com>
* Update qiskit/qobj/run_config.py
Co-Authored-By: jaygambetta <jay.gambetta@us.ibm.com>
* update warning messages. remove init from RunConfig as all optional
* only put optional shots, max_credits, memory in qobj if they are set
* Removing simulators
* Fixing some test
* Fixing test
* Test
* Email
* Fixing test
* Passing locally
* Hack to get aer
* Diego fix
* Trying to fix windows errors
* Aer to basicaer
* Adding lint
* Removing test around and making aer only on one folder.
* Adding HACK FROM THE DEPTHS OF DESPAIR AS AER DOES NOT WORK ON MAC
* Oops Diego hack I did not implement correctly
* Linting
* do not import Aer at the top of tests
* lint
* two more CHANGELOG lines
* Move JobTestCase to test.python.ibmq
* Move common testing functionality to qiskit.test
Temporary commit for moving the files to qiskit.test.
* Split qiskit.test.common into separate modules
* Style and docstring adjustments
* Add new Path.QASMS, revise existing ones
* Update CHANGELOG
* Bump pylint version
* Disable pylint unnecessary-pass, no-else-return
Disable pylint checks:
* unnecessary-pass: allow for methods with just "pass", for clarity
* no-else-return: relax "elif" after a clause with a return
* Fix linter: useless-object-inheritance
* Fix new linting errors
* Move version to its own file
Move the reading of Terra version to its own file, avoiding cyclic
import during at `qiskit/providers/basebackend.py`.
* Prefer importing QiskitError from submodule
Revise the imports of `QiskitError` in order to break cyclic
dependencies.
* Break more cyclic imports
* Break more cyclic imports, redux
* Update cyclic import in QuantumCircuit
Move the pylint disable to an inner-most level for QuantumCircuit. There
is still an import cycle (qiskit.circuit.quantumcircuit ->
qiskit.converters.ast_to_dag) due to circuit.Measure and circuit.Reset
being part of the module and the dynamic extension mechanism.
* Unify extension handling in own modules
Revise the Exceptions throughout the codebase, containing them into
specific `.exceptions` modules.
* Update passes imports after rebasing
Update the `qiskit.transpiler` module imports to avoid cyclic import,
after rebasing against master.
* Update .pylintrc
* adding an embedder pass
* improve error messages in dagcircuit
* get_cnot_nodes -> get_2q_nodes and get_named_nodes return node not node_id
* TranspilerError is fine grained enough
* rebase
* add test
* transpiler only calls DenseLayout if TrivialLayout does not work
* add tests