Commit Graph

30 Commits

Author SHA1 Message Date
Salvador de la Puente González 2094900ede
Restoring OSX builds (#656)
Restoring OSX builds
2018-07-20 13:43:41 +01:00
Salvador de la Puente González 0f38f99f9f Fixes final states for `get_status_job()` support (#646)
* Fixes final states for `get_status_job()` support

* Factor out API final states

* Moving job final states to a module level variable to keep consistency with API final states.

* Use Xenial and sudo: true to make Python 3.7 builds to work.
2018-07-13 13:19:35 +02:00
Abdón Rodríguez Davila d4e6585058 Update QISKit to Qiskit (#634)
* Rename QISKit to Qiskit

* More QISKit to Qiskit

* Revert qiskit/ & test/ files to avoid actual PR conflicts

* Add changelog entry
2018-07-11 13:14:15 +02:00
Diego M. Rodríguez d41f9f161f
Temporarily disable travis osx builds (#642)
Disable the travis osx build temporarily, as they are returning an
error while using bottles.
2018-07-11 12:27:38 +02:00
Salvador de la Puente González ab54183620 Python3.7 compatibility (#620)
* Adding Python 3.7 to the Travis Matrix for Linux and OSX.

Waiting for Appveyor to support Python 3.7 natively before adding it to the matrix.

* Used pyenv and venvwrapper for both OSX stages.

* Update OSX Python 3.7 stage key
2018-07-05 23:09:14 +02:00
Diego M. Rodríguez 1d76d534cc
Rename repository to 'qiskit-terra' (#606)
* Rename repository to 'qiskit-terra'

* Update german doc, changelog
2018-07-02 14:44:11 +02:00
Diego M. Rodríguez fb2c7e4703 Use fixed Python version on travis osx (#614)
Use fixed Python version on travis osx

Fix the travis python version to 3.6.5 using `pyenv`, as the current
runs use Python 3.7 which seems to cause some issues in some of the
dependencies.
2018-07-01 12:47:09 -04:00
Abdón Rodríguez Davila 6bbc764534 Consistent license across all the project (#550)
* Consistent license across all the project

* Update license

* Update LICENSE.txt

* Update licenses

* Fix linter
2018-06-08 15:00:58 +02:00
Diego M. Rodríguez 9d061e8fab
Rename repository to 'qiskit-core' (#530)
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.
2018-06-05 10:41:18 +02:00
Juan Gomez 72eae89453 CMake improvements! (#468)
* CMake improvements:
* Static linking is not the default anymore.
* Platform Wheel Tag is now configurable via cmake variable.
* Updated documentation
* CI config file updated accordingly
* Added support for Win64 builds on Visual Studio 2017
* Windows C++ Simulator now links with a prebuilt version of
  OpenBLAS (64 bits), so there's no need to link against
  LAPACK anymore
* cmake added as a dependency
* Restored --static-libgcc flag for static MacOS builds so gcc
  can create *semi* static executables again. Clang doesn't have
  static compilation.

* Remove default WHEEL_TAG value so if not specified, the tag is
choosen by the wheel module
2018-05-15 19:04:04 +02:00
Juan Gomez 4b27671c3b Enable MacOS travis tests 2018-04-13 16:16:14 -04:00
Diego M. Rodríguez 2641dffdc5
Disable travis osx build temporarily (#374)
Temporarily disable the osx build on Travis, as they are having a
backlog that might take some time to recover:
https://www.traviscistatus.com/incidents/qkqy13yk55q9
2018-03-28 14:40:06 +02:00
Diego M. Rodriguez d6f9d7663f Fix travis lint stage, deploy stage for non-push
* Fix the travis stage that performs the linting, making it fail if the
  `make style` target fails instead of ignoring it silently.
* Fix the execution of the deploy stages for the jobs that are the
  result of a PR against stable. Now the stages are only executed in the
  job associated to the push.
2018-03-23 15:47:24 +01:00
Luciano de1f66a94b Coverage of the testsuite (#297)
* coverage rule in Makefile

* coverage in cmake

* clean coverage rule

* it looks like there is a proper way to remove the coverage data

* cmake: coverage_erase

* Add coverage target to cmake, fix typo

* Fix travis osx brew python (now upgrade)
2018-03-05 20:38:13 +01:00
Diego M. Rodriguez bad5e631a0 Remove comment and static flag on travis osx 2018-02-22 14:56:21 +01:00
Diego M. Rodriguez c155ef3d9e Use gcc+-6 on travis osx jobs 2018-02-22 14:56:21 +01:00
Diego M. Rodriguez de5a9415e8 Revise travis configuration, using cmake
* Revise the travis configuration for using `cmake` for the several
  targets, and use "stages" instead of parallel jobs:
  * define three stages that are executed if the previous one suceeds:
    1. "linter and pure python test": executes the linter and a test
       without compiling the binaries, with the idea of providing quick
       feedback for PRs.
    2. "test": launch the test, including the compilation of binaries,
       under GNU/Linux Python 3.6 and 3.6; and osx Python 3.6.
    3. "deploy doc and pypi": for the stable branch, deploy the docs
       to the landing page, and when using a specific commit message,
       build the GNU/Linux and osx wheels, uploading them to test.pypi.
  * use yaml anchors and definitions to avoid repeating code (and
    working around travis limitations).
* Modify the `cmake``configuration to accomodate the stages flow:
  * allow conditional creation of compilation and QA targets, mainly
    for saving some time in some jobs.
  * move the tests to `cmake/tests.cmake`.
* Update the tests:
  * add a `requires_qe_access` decorator that retrieves QE_TOKEN and
    QE_URL and appends them to the parameters in an unified manner.
  * add an environment variable `SKIP_ONLINE_TESTS` that allows to
    skip the tests that need network access.
  * replace `TRAVIS_FORK_PULL_REQUEST` with the previous two
    mechanisms, adding support for AppVeyor as well.
  * fix a problem with matplotlib under osx headless, effectively
    skipping `test_visualization.py` during the travis osx jobs.
* Move Sphinx to `requirements-dev.txt`.
2018-02-22 14:56:20 +01:00
Diego M. Rodriguez 331d6b90d0 Add linter/style check to travis
* Relax the pylint output disabling several warnings.
* Reintroduce the linting of qiskit.extensions and qiskit.qasm.node.
* Add a `style` target to the Makefile that performs pycodestyle, and
  reduce the verbosity of `lint` by removing the report.
* Update the Travis configuration in order to add a new step that
  performs linter and style checks via an environment variable.
2017-12-29 10:44:35 +01:00
cclauss 2d2d33f1f7 Use pylint to look for issues on every pull request (#147)
* Use flake8 to find syntax errors & undefined names

flake8 testing of https://github.com/QISKit/qiskit-sdk-py on Python 3.6.3

$ __flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics__
```
./qiskit/dagcircuit/_dagcircuit.py:570:49: F821 undefined name 'n'
            nd = input_circuit.multi_graph.node[n]
                                                ^

./qiskit/tools/visualization.py:463:70: E999 SyntaxError: EOL while scanning string literal
    """Plot the equal angle slice spin Wigner function of an arbitrary
                                                                     ^

./qiskit/tools/qcvv/tomography.py:805:17: E999 IndentationError: expected an indented block
                W[wpt] = W[wpt]+(x[i]/shots)*parity[i]
                ^

2     E999 IndentationError: expected an indented block
1     F821 undefined name 'n'
3
```

* pylint qiskit test --errors-only

* flake8 --exit-zero to treat all issues as warnings

* pylint --extension-pkg-whitelist=numpy, flake8 E999

* Remove flake8 and focus on pylint

Pylint now finds three issues.  I am unable to suggest fixes for the first two.  I have suggested a fix for the last issue at f49975ec6e (commitcomment-25627794)

* Fix F821, no-member and logging-too-few-args

Fix issues raised by pylint on "--errors-only" mode, thanks to cclaus.

* Add numpy to the general pylint configuration
2017-11-15 14:25:28 +01:00
Diego M. Rodríguez b2d6e70229 Check IBMQuantumExperience version at runtime (#115)
* Add runtime check for IBMQuantumExperience version

Add `qiskit._util._check_ibmqe_version()` (invoked on the main import)
for emitting a warning if the installed version of IBMQuantumExperience
does not match the version defined on `setup.py`.

* Rename requires.txt and requires-dev.txt

Rename to "requirements.txt" and "requirements-dev.txt", in order to
conform better to the de-facto practices.
Update the requirements to match the versions specified in setup.py.

* setup.py: OS classifiers, backend, IBMQE version

* Explicitly require IBMQuantumExperience>=1.8.13, as older versions
  might not contain all the functionality needed.
* Include "qiskit.backends" as a package instead of "qiskit.simulators".
* Add trove classifiers for the operative systems supported.
* Fix PEP8 warnings for long description.

* Avoid using __version__ in setup.py due to imports

Revert the change of using "__version__" imported from "__init__.py"
directly on "setup.py", as the current importing of the modules from
"__init__.py" causes the building to fail due to the dependencies not
being available at the time of invocation.
2017-10-25 10:12:04 -04:00
Diego M. Rodriguez 9577982361 Move deploy script to "tools/" 2017-10-02 17:34:34 +02:00
Diego M. Rodriguez 1cabb03286 Add autodeployment of sphinx docs to github pages
Add a "deploy" target to travis that builds the sphinx documentation
and push it to the github pages repository on pushes to the "stable"
branch. A custom script is used that performs the steps (clone the
repository, build the dock, commit the changes, push back) instead of
other solutions (travis-sphinx or travis github pages integration) due
to lacking the features needed for the current setup (pushing to a
specific directory on another repository preserving history).
2017-10-02 17:34:25 +02:00
Diego M. Rodriguez c0f27fda30 Add Python 3.5 to travis.yml 2017-09-21 12:06:42 +02:00
Jesús Pérez 5057f13b0a Fixing the sintax of the last commit. 2017-06-27 11:25:54 +02:00
Jesús Pérez 7217863c1e Travis setup fixed to avoid Anaconda.
KISS principle.
2017-06-27 11:20:08 +02:00
Jesús Pérez 6867ea4f3e Travis fixed and other minor improvements. 2017-05-16 16:03:37 +02:00
Jesús Pérez 86f19c8568 Minor licensing changes. 2017-05-11 18:12:57 +02:00
Jesús Pérez cec3968f84 Tests only works in Python 3, so dropping the old versions there. 2017-05-10 19:33:56 +02:00
Jesús Pérez 7f51c8dd65 Travis setup fixed. 2017-05-10 18:44:30 +02:00
Jesús Pérez bba6c23067 Makedile and Travis support added. 2017-05-08 15:25:14 +02:00