Skip to content

Commit 472f845

Browse files
authored
Upgrade isort and enable black compat mode (open-telemetry#248)
1 parent df79be6 commit 472f845

File tree

22 files changed

+64
-49
lines changed

22 files changed

+64
-49
lines changed

Diff for: .gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ __pycache__
2323
venv*/
2424
.venv*/
2525
opentelemetry-python-core*/
26+
/opentelemetry-python-core
2627

2728
# Installer logs
2829
pip-log.txt

Diff for: .isort.cfg

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ include_trailing_comma=True
33
force_grid_wrap=0
44
use_parentheses=True
55
line_length=79
6+
profile=black
67

78
; 3 stands for Vertical Hanging Indent, e.g.
89
; from third_party import (
@@ -13,6 +14,6 @@ line_length=79
1314
; docs: https://github.com/timothycrosley/isort#multi-line-output-modes
1415
multi_line_output=3
1516
skip=target
16-
skip_glob=**/gen/*,.venv*/*,venv*/*,reference*/*,opentelemetry-python-core/*
17+
skip_glob=**/gen/*,.venv*/*,venv*/*,reference*/*,opentelemetry-python-core/*,.tox/*
1718
known_first_party=opentelemetry
1819
known_third_party=psutil,pytest,redis,redis_opentracing

Diff for: .pylintrc

+10-2
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,15 @@ disable=missing-docstring,
7070
wrong-import-order, # Leave this up to isort
7171
bad-continuation, # Leave this up to black
7272
line-too-long, # Leave this up to black
73-
exec-used
73+
exec-used,
74+
super-with-arguments, # temp-pylint-upgrade
75+
isinstance-second-argument-not-valid-type, # temp-pylint-upgrade
76+
raise-missing-from, # temp-pylint-upgrade
77+
unused-argument, # temp-pylint-upgrade
78+
protected-access, # temp-pylint-upgrade
79+
super-init-not-called, # temp-pylint-upgrade
80+
invalid-overridden-method, # temp-pylint-upgrade
81+
missing-module-docstring, # temp-pylint-upgrad, # temp-pylint-upgradee
7482

7583
# Enable the message, report, category or checker with the given id(s). You can
7684
# either give multiple identifier separated by comma (,) or put this option
@@ -165,7 +173,7 @@ contextmanager-decorators=contextlib.contextmanager
165173
# List of members which are set dynamically and missed by pylint inference
166174
# system, and so shouldn't trigger E1101 when accessed. Python regular
167175
# expressions are accepted.
168-
generated-members=*_pb2.py
176+
generated-members=types_pb2.*
169177

170178
# Tells whether missing members accessed in mixin class should be ignored. A
171179
# mixin class is detected if its name ends with "mixin" (case insensitive).

Diff for: dev-requirements.txt

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1-
pylint==2.4.4
1+
pylint~=2.6
22
flake8~=3.7
3-
isort~=4.3
3+
isort~=5.6
44
black>=19.3b0,==19.*
5-
mypy==0.740
5+
httpretty~=1.0
6+
mypy==0.790
67
sphinx~=2.1
78
sphinx-rtd-theme~=0.4
89
sphinx-autodoc-typehints~=1.10.2

Diff for: exporter/opentelemetry-exporter-datadog/src/opentelemetry/exporter/datadog/exporter.py

+3-5
Original file line numberDiff line numberDiff line change
@@ -21,17 +21,15 @@
2121
from ddtrace.span import Span as DatadogSpan
2222

2323
import opentelemetry.trace as trace_api
24-
from opentelemetry.sdk.trace import sampling
25-
from opentelemetry.sdk.trace.export import SpanExporter, SpanExportResult
26-
27-
# pylint:disable=relative-beyond-top-level
28-
from .constants import (
24+
from opentelemetry.exporter.datadog.constants import (
2925
DD_ORIGIN,
3026
ENV_KEY,
3127
SAMPLE_RATE_METRIC_KEY,
3228
SERVICE_NAME_TAG,
3329
VERSION_KEY,
3430
)
31+
from opentelemetry.sdk.trace import sampling
32+
from opentelemetry.sdk.trace.export import SpanExporter, SpanExportResult
3533

3634
logger = logging.getLogger(__name__)
3735

Diff for: exporter/opentelemetry-exporter-datadog/src/opentelemetry/exporter/datadog/propagator.py

+1-3
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616

1717
from opentelemetry import trace
1818
from opentelemetry.context import Context
19+
from opentelemetry.exporter.datadog import constants
1920
from opentelemetry.trace import get_current_span, set_span_in_context
2021
from opentelemetry.trace.propagation.textmap import (
2122
Getter,
@@ -24,9 +25,6 @@
2425
TextMapPropagatorT,
2526
)
2627

27-
# pylint:disable=relative-beyond-top-level
28-
from . import constants
29-
3028

3129
class DatadogFormat(TextMapPropagator):
3230
"""Propagator for the Datadog HTTP header format.

Diff for: exporter/opentelemetry-exporter-prometheus-remote-write/setup.cfg

+3-4
Original file line numberDiff line numberDiff line change
@@ -39,13 +39,12 @@ package_dir=
3939
=src
4040
packages=find_namespace:
4141
install_requires =
42+
snappy >= 2.8
4243
protobuf >= 3.13.0
4344
requests == 2.25.0
4445
opentelemetry-api == 0.17.dev0
4546
opentelemetry-sdk == 0.17.dev0
4647
python-snappy >= 0.5.4
47-
[options.packages.find]
48-
where = src
4948

50-
[options.extras_require]
51-
test =
49+
[options.packages.find]
50+
where = src

Diff for: exporter/opentelemetry-exporter-prometheus-remote-write/src/opentelemetry/exporter/prometheus_remote_write/__init__.py

+4-3
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,7 @@ def _convert_from_quantile(
268268
) -> Sequence[TimeSeries]:
269269
raise NotImplementedError()
270270

271-
# pylint: disable=no-member
271+
# pylint: disable=no-member,no-self-use
272272
def _create_timeseries(
273273
self,
274274
export_record: ExportRecord,
@@ -317,6 +317,7 @@ def add_label(label_name: str, label_value: str):
317317
timeseries.samples.append(sample)
318318
return timeseries
319319

320+
# pylint: disable=no-member,no-self-use
320321
def _build_message(self, timeseries: Sequence[TimeSeries]) -> bytes:
321322
write_request = WriteRequest()
322323
write_request.timeseries.extend(timeseries)
@@ -370,7 +371,7 @@ def _send_message(
370371
)
371372
if not response.ok:
372373
response.raise_for_status()
373-
except requests.exceptions.RequestException as e:
374-
logger.error("Export POST request failed with reason: %s", e)
374+
except requests.exceptions.RequestException as err:
375+
logger.error("Export POST request failed with reason: %s", err)
375376
return MetricsExportResult.FAILURE
376377
return MetricsExportResult.SUCCESS

Diff for: exporter/opentelemetry-exporter-prometheus-remote-write/tests/test_prometheus_remote_write_exporter.py

+7-7
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,13 @@
1313
# limitations under the License.
1414

1515
import unittest
16-
from logging import Logger
17-
from unittest.mock import MagicMock, Mock, patch
16+
from unittest.mock import patch
1817

1918
from opentelemetry.exporter.prometheus_remote_write import (
2019
PrometheusRemoteWriteMetricsExporter,
2120
)
2221
from opentelemetry.exporter.prometheus_remote_write.gen.types_pb2 import (
2322
Label,
24-
Sample,
2523
TimeSeries,
2624
)
2725
from opentelemetry.sdk.metrics import Counter
@@ -339,15 +337,17 @@ def create_label(name, value):
339337
)
340338

341339
expected_timeseries = TimeSeries()
342-
expected_timeseries.labels.append(create_label("__name__", "testname"))
343-
expected_timeseries.labels.append(
340+
expected_timeseries.labels.append( # pylint:disable=E1101
341+
create_label("__name__", "testname")
342+
)
343+
expected_timeseries.labels.append( # pylint:disable=E1101
344344
create_label("resource_name", "resource_value")
345345
)
346-
expected_timeseries.labels.append(
346+
expected_timeseries.labels.append( # pylint:disable=E1101
347347
create_label("record_name", "record_value")
348348
)
349349

350-
sample = expected_timeseries.samples.add()
350+
sample = expected_timeseries.samples.add() # pylint:disable=E1101
351351
sample.timestamp = int(sum_aggregator.last_update_timestamp / 1000000)
352352
sample.value = 5.0
353353

Diff for: instrumentation/opentelemetry-instrumentation-django/src/opentelemetry/instrumentation/django/middleware.py

+2-2
Original file line numberDiff line numberDiff line change
@@ -31,11 +31,11 @@
3131

3232
try:
3333
from django.core.urlresolvers import ( # pylint: disable=no-name-in-module
34-
resolve,
3534
Resolver404,
35+
resolve,
3636
)
3737
except ImportError:
38-
from django.urls import resolve, Resolver404
38+
from django.urls import Resolver404, resolve
3939

4040
try:
4141
from django.utils.deprecation import MiddlewareMixin

Diff for: instrumentation/opentelemetry-instrumentation-fastapi/tests/test_fastapi_instrumentation.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ async def _(param: str):
9898
return {"message": param}
9999

100100
@app.get("/healthzz")
101-
async def health():
101+
async def _():
102102
return {"message": "ok"}
103103

104104
return app

Diff for: instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/__init__.py

+2-3
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ def serve():
130130
"""
131131
from functools import partial
132132

133-
import grpc
133+
import grpc # pylint:disable=import-self
134134
from wrapt import wrap_function_wrapper as _wrap
135135

136136
from opentelemetry import trace
@@ -142,7 +142,6 @@ def serve():
142142
# pylint:disable=import-outside-toplevel
143143
# pylint:disable=import-self
144144
# pylint:disable=unused-argument
145-
# isort:skip
146145

147146

148147
class GrpcInstrumentorServer(BaseInstrumentor):
@@ -156,7 +155,7 @@ class GrpcInstrumentorServer(BaseInstrumentor):
156155
157156
"""
158157

159-
# pylint:disable=attribute-defined-outside-init
158+
# pylint:disable=attribute-defined-outside-init, redefined-outer-name
160159

161160
def _instrument(self, **kwargs):
162161
self._original_func = grpc.server

Diff for: instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/_client.py

+5-3
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,14 @@
2525
import grpc
2626

2727
from opentelemetry import metrics, propagators, trace
28+
from opentelemetry.instrumentation.grpc import grpcext
29+
from opentelemetry.instrumentation.grpc._utilities import (
30+
RpcInfo,
31+
TimedMetricRecorder,
32+
)
2833
from opentelemetry.sdk.metrics.export.controller import PushController
2934
from opentelemetry.trace.status import Status, StatusCode
3035

31-
from . import grpcext
32-
from ._utilities import RpcInfo, TimedMetricRecorder
33-
3436

3537
class _GuardedSpan:
3638
def __init__(self, span):

Diff for: instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/_utilities.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -83,10 +83,13 @@ def record_bytes_out(self, bytes_out, method):
8383
@contextmanager
8484
def record_latency(self, method):
8585
start_time = time()
86-
labels = {"method": method, "status_code": grpc.StatusCode.OK}
86+
labels = {
87+
"method": method,
88+
"status_code": grpc.StatusCode.OK, # pylint:disable=no-member
89+
}
8790
try:
8891
yield labels
89-
except grpc.RpcError as exc:
92+
except grpc.RpcError as exc: # pylint:disable=no-member
9093
if self._meter:
9194
# pylint: disable=no-member
9295
labels["status_code"] = exc.code()

Diff for: instrumentation/opentelemetry-instrumentation-grpc/src/opentelemetry/instrumentation/grpc/grpcext/_interceptor.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
import grpc
2626

27-
from .. import grpcext
27+
from opentelemetry.instrumentation.grpc import grpcext
2828

2929

3030
class _UnaryClientInfo(

Diff for: instrumentation/opentelemetry-instrumentation-grpc/tests/protobuf/test_server_pb2_grpc.py

-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
22
import grpc
3-
43
from tests.protobuf import test_server_pb2 as test__server__pb2
54

65

Diff for: instrumentation/opentelemetry-instrumentation-grpc/tests/test_client_interceptor.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
# limitations under the License.
1414

1515
import grpc
16+
from tests.protobuf import test_server_pb2_grpc
1617

1718
import opentelemetry.instrumentation.grpc
1819
from opentelemetry import trace
@@ -22,7 +23,6 @@
2223
SumAggregator,
2324
)
2425
from opentelemetry.test.test_base import TestBase
25-
from tests.protobuf import test_server_pb2_grpc
2626

2727
from ._client import (
2828
bidirectional_streaming_method,

Diff for: instrumentation/opentelemetry-instrumentation-urllib/src/opentelemetry/instrumentation/urllib/__init__.py

+5-2
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,9 @@
5050
HTTPMetricType,
5151
MetricMixin,
5252
)
53-
from opentelemetry.instrumentation.urllib.version import __version__
53+
from opentelemetry.instrumentation.urllib.version import ( # pylint: disable=no-name-in-module,import-error
54+
__version__,
55+
)
5456
from opentelemetry.instrumentation.utils import http_status_to_status_code
5557
from opentelemetry.trace import SpanKind, get_tracer
5658
from opentelemetry.trace.status import Status, StatusCode
@@ -98,6 +100,7 @@ def _uninstrument(self, **kwargs):
98100
def uninstrument_opener(
99101
self, opener: OpenerDirector
100102
): # pylint: disable=no-self-use
103+
"""uninstrument_opener a specific instance of urllib.request.OpenerDirector"""
101104
_uninstrument_from(opener, restore_as_bound_func=True)
102105

103106

@@ -131,7 +134,7 @@ def call_wrapped():
131134
)
132135

133136
def _instrumented_open_call(
134-
opener, request, call_wrapped, get_or_create_headers
137+
_, request, call_wrapped, get_or_create_headers
135138
): # pylint: disable=too-many-locals
136139
if context.get_value("suppress_instrumentation") or context.get_value(
137140
_SUPPRESS_URLLIB_INSTRUMENTATION_KEY

Diff for: instrumentation/opentelemetry-instrumentation-urllib/tests/test_urllib_integration.py

+4-2
Original file line numberDiff line numberDiff line change
@@ -23,9 +23,11 @@
2323

2424
import httpretty
2525

26-
import opentelemetry.instrumentation.urllib
26+
import opentelemetry.instrumentation.urllib # pylint: disable=no-name-in-module,import-error
2727
from opentelemetry import context, propagators, trace
28-
from opentelemetry.instrumentation.urllib import URLLibInstrumentor
28+
from opentelemetry.instrumentation.urllib import ( # pylint: disable=no-name-in-module,import-error
29+
URLLibInstrumentor,
30+
)
2931
from opentelemetry.sdk import resources
3032
from opentelemetry.sdk.util import get_dict_as_key
3133
from opentelemetry.test.mock_textmap import MockTextMapPropagator

Diff for: instrumentation/opentelemetry-instrumentation-wsgi/tests/test_getter.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
from unittest import TestCase, mock
15+
from unittest import TestCase
1616

1717
from opentelemetry.instrumentation.wsgi import CarrierGetter
1818

Diff for: scripts/eachdist.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -509,7 +509,7 @@ def lint_args(args):
509509
)
510510
runsubprocess(
511511
args.dry_run,
512-
("isort", "--recursive", ".")
512+
("isort", ".")
513513
+ (("--diff", "--check-only") if args.check_only else ()),
514514
cwd=rootdir,
515515
check=True,

Diff for: tox.ini

+1-1
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ commands =
283283

284284
[testenv:lint]
285285
basepython: python3.8
286-
recreate = True
286+
recreate = False
287287
deps =
288288
-c dev-requirements.txt
289289
flaky

0 commit comments

Comments
 (0)