From 79c4706d5b7755d0d8d553c169d7621173dc04cd Mon Sep 17 00:00:00 2001 From: "Diego M. Rodriguez" Date: Fri, 18 Jan 2019 15:15:20 +0100 Subject: [PATCH] Remove marshmallow dependency Remove the dependency on `marshmallow`, as we can use the new `ModelValidationError` exception directly from `qiskit`. Additionally, catch a warning that was being issued during the tests from the credentials system. --- qiskit/providers/ibmq/ibmqsingleprovider.py | 5 ++--- requirements.txt | 1 - setup.py | 1 - test/ibmq/test_registration.py | 4 +++- 4 files changed, 5 insertions(+), 6 deletions(-) diff --git a/qiskit/providers/ibmq/ibmqsingleprovider.py b/qiskit/providers/ibmq/ibmqsingleprovider.py index 905a768c3..69be54043 100644 --- a/qiskit/providers/ibmq/ibmqsingleprovider.py +++ b/qiskit/providers/ibmq/ibmqsingleprovider.py @@ -10,11 +10,10 @@ import logging from collections import OrderedDict -from marshmallow import ValidationError - from qiskit.providers import BaseProvider from qiskit.providers.models import BackendConfiguration from qiskit.providers.providerutils import filter_backends +from qiskit.validation.exceptions import ModelValidationError from .api import IBMQConnector from .ibmqbackend import IBMQBackend @@ -101,7 +100,7 @@ def _discover_remote_backends(self): provider=self._ibm_provider, credentials=self.credentials, api=self._api) - except ValidationError as ex: + except ModelValidationError as ex: logger.warning( 'Remote backend "%s" could not be instantiated due to an ' 'invalid config: %s', diff --git a/requirements.txt b/requirements.txt index b5eaca6dc..a384f064b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,4 +1,3 @@ qiskit-terra>=0.7,<0.8 -marshmallow>=2.17.0,<3 requests>=2.19 requests-ntlm>=1.1.0 diff --git a/setup.py b/setup.py index 1df628583..deccfe0f3 100644 --- a/setup.py +++ b/setup.py @@ -11,7 +11,6 @@ requirements = [ "qiskit-terra>=0.7,<0.8", - "marshmallow>=2.17.0,<3", "requests>=2.19", "requests-ntlm>=1.1.0", ] diff --git a/test/ibmq/test_registration.py b/test/ibmq/test_registration.py index 631ad963c..f11cd1fe3 100644 --- a/test/ibmq/test_registration.py +++ b/test/ibmq/test_registration.py @@ -105,8 +105,10 @@ def test_save_duplicate_accounts(self): """Test saving the same credentials twice.""" with custom_qiskitrc(), mock_ibmq_provider(): IBMQ.save_account('QISKITRC_TOKEN') - IBMQ.save_account('QISKITRC_TOKEN') + with self.assertWarns(UserWarning) as context_manager: + IBMQ.save_account('QISKITRC_TOKEN') + self.assertIn('Set overwrite', str(context_manager.warning)) # Compare the session accounts with the ones stored in file. stored_accounts = read_credentials_from_qiskitrc() self.assertEqual(len(stored_accounts), 1)