* Move CONTRIBUTING.rst to top level
The CONTRIBUTING.rst doc contains a lot of useful information about the
not only contributing to the project but also some useful information
about project policy and conventions. But it's currently in a hidden
directory so that github ui will show it on a help menu. So unless you
know to click on that help menu or that it's hidding in the .github
directory you'll never see it. This commit addresses this by moving the
file to the repo root so it's more obvious where it is, and to not break
the github ui it symlinks the file to the .github directory.
* Move code of conduct and switch to md
* Convert CONTRIBUTING to markdown
* Make online tests default skip and opt-in
Right now there are a few tests in the terra's unittests that require
being able to talk to ibmq services for verifying functionality that
uses ibmq. However, to run these tests additional manual setup is
required. First the qiskit-ibmq-provider package must be installed, then
ibmq testing credentials must be configured. Prior to this patch it was
assumed both of these manually setup conditions were always true and the
online tests are run and will fail because the manual setup wasn't done.
This commit changes the behavior to make online tests opt-in and skip if
the setup isn't done. This is a more graceful method to handle optional
steps that aren't done, especially to ensure that unittests always pass
from a fresh clone.
* Fix lint and skip if >1 creds found
* Tweak contributing
* Make credentials selection opt-in
* Tweak skip message for >1 discovered creds
* Add stable branch policy to CONTRIBUTING.rst
This commit documents are policy for the stable branch, how it's used
what we need to evaluate when looking at potential changes, and the
priorities for the stable branch.
Fixes#2352
* Add section about backporting subsets of large PRs
* Update .github/CONTRIBUTING.rst
Co-Authored-By: mtreinish <mtreinish@kortar.org>
* Small tweaks
* Add test_ci make target, revert make test
Add a new "test_ci" target to the Makefile, aimed at being used by
the CIs. Update the "test" family of targets in order to revert
back to the behaviour that involves less overhead and complexity
for the users.
* Update travis in order to use test_ci
* Add documentation about test_ci target
* 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
* Cleaning up documentation
* Small updates
* Adding changes
* headings
* Heading
* More changes
* Small changes
* Additions
* Adding the Qiskit notebooks
* some typos
* Update to ibm
* Small updates
* replace logo for terra logo
* Replace parsed-literal with code-block
Replace blocks of command output with `..: code-block: text`, adjusting
the style to avoid syntax highlighting, copy-paste widget, and colored
background.
* Recover testing flags information into CONTRIB (#4)
* Slack link
* fixing the contributing
* adding more to the contrbuting
* more updates to contributing
* more addtions
* more addtions
* more addtions
* more addtions
* more addtions
* fixing up first example
* linting
* adding to the discription
* renaming terra not core
* doc and start of level 1
* doc updates
* killing the compile
* killing the compile
* small updates
* using + load + hello quantum
* ghz +initialize + qft removed optimize as pass manager does this
* small changes
* small changes
* update DeprecationWarning messages in _wrapper.py
For now, we will just have the main people that are working on terra as approvers. I don't see any reason to have the rules it is just making this too complicated.
Removing @chriseclectic @antoniomezzacapo and @dcmckayibm as they are mainly focused on other parts of qiskit now and they can still do the pr and don't really need to focus on the approving.
Update CODEOWNERS following the proper conventions, as it was left in a
state that is not consistent with the project structure by a previous
modification.
The current commit introduces several changes to the testing infrastructure.
First, it provides a way of running IBM-Q tests against pre-recorded responses. The software in charge of recording and mocking-up the responses is VCRPy[1] and it is configured and used in `test/common.py`. Cassettes can be updated by using `make test_recording`.
[1] https://github.com/kevin1024/vcrpy
The commit also includes the latest responses (under `tests/casettes`) for a successful test run but a default execution with `make test` will only use them if no IBM-Q credentials are found. To force a run against mocked responses, use `make test_mock`.
Finally, the commit also unifies the several test options in a unique environmental variable called `QISKIT_TESTS` (in `tests/python/_test_options.py`). These are the main equivalences but the set of options is described in the developer introduction [2]:
- `SKIP_SLOW_TESTS=False` is now achieved by `QISKIT_TESTS=run_slow`
- `SKIP_ONLINE_TESTS=1` is now achieved by `QISKIT_TESTS=skip_online`
[2] https://github.com/Qiskit/qiskit-terra/blob/master/doc/dev_introduction.rst#testing-options
Rename all references to `qiskit-sdk-py` to the new repository name,
`QISKit/qiskit-core`, including a handful of instances where the
`IBM/qiskit-sdk-py` form was used.
Revise the `CODEOWNERS` file, as the previous set of rules were causing
extra notifications and issues with the defined set of code owners. The
rules do not "inherit" codeowners from previous rules - the file has
been rewritten to explicitly list codeowners for each section.