From 2ebc766534eba6163e98b94a1f114ece18739fff Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Sun, 19 Apr 2020 21:01:47 +0200 Subject: [PATCH] Update hacking for Python3 The repo is Python 3 now, so update hacking to version 3.0 which supports Python 3. Fix problems found. Remove hacking and friends from lower-constraints, they are not needed for installation. Change-Id: Ia16e8cbccf7b38be8909aa94e66c04b99f200b89 --- docker/kafka_wait_for_topics.py | 2 +- lower-constraints.txt | 5 ----- monasca_common/kafka_lib/client.py | 2 +- monasca_common/kafka_lib/producer/base.py | 2 +- monasca_common/rest/utils.py | 2 +- monasca_common/tests/validation/test_metric_validation.py | 8 ++++---- monasca_common/validation/metrics.py | 2 +- test-requirements.txt | 2 +- tox.ini | 4 +++- 9 files changed, 13 insertions(+), 16 deletions(-) diff --git a/docker/kafka_wait_for_topics.py b/docker/kafka_wait_for_topics.py index 3cc88476..eb7f7e1c 100644 --- a/docker/kafka_wait_for_topics.py +++ b/docker/kafka_wait_for_topics.py @@ -41,8 +41,8 @@ import os import sys import time -from pykafka import KafkaClient from pykafka.exceptions import NoBrokersAvailableError +from pykafka import KafkaClient # Run this script only with Python 3 if sys.version_info.major != 3: diff --git a/lower-constraints.txt b/lower-constraints.txt index a280a450..9c76a6a7 100644 --- a/lower-constraints.txt +++ b/lower-constraints.txt @@ -7,19 +7,16 @@ debtcollector==1.2.0 docutils==0.11 extras==1.0.0 fixtures==3.0.0 -flake8==2.5.5 future==0.16.0 gevent==1.2.2 gitdb==0.6.4 GitPython==1.0.1 greenlet==0.4.10 -hacking==0.12.0 httplib2==0.9.1 iso8601==0.1.11 kazoo==2.2 keystoneauth1==3.4.0 linecache2==1.0.0 -mccabe==0.2.1 mock==2.0.0 monotonic==0.6 mox3==0.20.0 @@ -36,8 +33,6 @@ oslo.serialization==2.18.0 oslo.utils==3.33.0 oslotest==3.2.0 pbr==2.0.0 -pep8==1.5.7 -pyflakes==0.8.1 PyMySQL==0.7.6 pyparsing==2.1.0 python-mimeparse==1.6.0 diff --git a/monasca_common/kafka_lib/client.py b/monasca_common/kafka_lib/client.py index e27bddbe..2d4a8f76 100644 --- a/monasca_common/kafka_lib/client.py +++ b/monasca_common/kafka_lib/client.py @@ -201,7 +201,7 @@ class KafkaClient(object): payload.partition) payloads_by_broker[leader].append(payload) brokers_for_payloads.append(leader) - except KafkaUnavailableError as e: + except KafkaUnavailableError: log.warning('KafkaUnavailableError attempting to send request ' 'on topic %s partition %d', payload.topic, payload.partition) topic_partition = (payload.topic, payload.partition) diff --git a/monasca_common/kafka_lib/producer/base.py b/monasca_common/kafka_lib/producer/base.py index f6549b3e..18b32b60 100644 --- a/monasca_common/kafka_lib/producer/base.py +++ b/monasca_common/kafka_lib/producer/base.py @@ -94,7 +94,7 @@ def _send_upstream(queue, client, codec, batch_time, batch_size, while not stop_event.is_set(): try: client.reinit() - except Exception as e: + except Exception: log.warn( 'Async producer failed to connect to brokers; backoff for %s(ms) before retrying', retry_options.backoff_ms) diff --git a/monasca_common/rest/utils.py b/monasca_common/rest/utils.py index eebaa4f7..4ca600cc 100644 --- a/monasca_common/rest/utils.py +++ b/monasca_common/rest/utils.py @@ -12,8 +12,8 @@ # License for the specific language governing permissions and limitations # under the License. -import six import simplejson as json +import six from monasca_common.rest import exceptions diff --git a/monasca_common/tests/validation/test_metric_validation.py b/monasca_common/tests/validation/test_metric_validation.py index b0ef7808..13338d2f 100644 --- a/monasca_common/tests/validation/test_metric_validation.py +++ b/monasca_common/tests/validation/test_metric_validation.py @@ -173,7 +173,7 @@ class TestMetricValidation(base.BaseTestCase): "value": 5} self.assertRaisesRegex( metric_validator.InvalidDimensionKey, - "invalid length \(0\) for dimension key", + r"invalid length \(0\) for dimension key", metric_validator.validate, metric) def test_invalid_dimension_empty_value(self): @@ -183,7 +183,7 @@ class TestMetricValidation(base.BaseTestCase): "value": 5} self.assertRaisesRegex( metric_validator.InvalidDimensionValue, - "invalid length \(0\) for dimension value", + r"invalid length \(0\) for dimension value", metric_validator.validate, metric) def test_invalid_dimension_non_str_key(self): @@ -213,7 +213,7 @@ class TestMetricValidation(base.BaseTestCase): "value": 5} self.assertRaisesRegex( metric_validator.InvalidDimensionKey, - "invalid length \(256\) for dimension key", + r"invalid length \(256\) for dimension key", metric_validator.validate, metric) def test_invalid_dimension_value_length(self): @@ -223,7 +223,7 @@ class TestMetricValidation(base.BaseTestCase): "value": 5} self.assertRaisesRegex( metric_validator.InvalidDimensionValue, - "invalid length \(256\) for dimension value", + r"invalid length \(256\) for dimension value", metric_validator.validate, metric) def test_invalid_dimension_key_restricted_characters(self): diff --git a/monasca_common/validation/metrics.py b/monasca_common/validation/metrics.py index cc7b1be3..f7aaf7ec 100644 --- a/monasca_common/validation/metrics.py +++ b/monasca_common/validation/metrics.py @@ -16,9 +16,9 @@ import math import re +import simplejson as json import six import sys -import simplejson as json # This is used to ensure that metrics with a timestamp older than # RECENT_POINT_THRESHOLD_DEFAULT seconds (or the value passed in to diff --git a/test-requirements.txt b/test-requirements.txt index bcce3dba..d3d3c1dd 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -2,8 +2,8 @@ # of appearance. Changing the order has an impact on the overall integration # process, which may cause wedges in the gate later. # Hacking already pins down pep8, pyflakes and flake8 +hacking>=3.0,<3.1.0 # Apache-2.0 bandit!=1.6.0,>=1.1.0 # Apache-2.0 -hacking>=1.1.0,<1.2.0 # Apache-2.0 Babel!=2.4.0,>=2.3.4 # BSD coverage!=4.4,>=4.0 # Apache-2.0 fixtures>=3.0.0 # Apache-2.0/BSD diff --git a/tox.ini b/tox.ini index 2f365a87..bd917800 100644 --- a/tox.ini +++ b/tox.ini @@ -87,7 +87,9 @@ show-source = True # note: Due to the need to fork kafka-python, many pep8 violations occure. # All of the below ignores are caused by the forked kafka-python library # so when Monasca migrates to confluent-kafka, the below line can be removed. -ignore = H101,H301,H404,H405 +# In addition ignore for now: +# W504 line break after binary operator +ignore = H101,H301,H404,H405,W504 [testenv:lower-constraints] setenv = {[testenv:py36]setenv}