diff --git a/connectrpc-otel/connectrpc_otel/_instrumentor.py b/connectrpc-otel/connectrpc_otel/_instrumentor.py index 5d8773c..9ff231f 100644 --- a/connectrpc-otel/connectrpc_otel/_instrumentor.py +++ b/connectrpc-otel/connectrpc_otel/_instrumentor.py @@ -12,11 +12,10 @@ from collections.abc import Callable, Collection from types import ModuleType + from connectrpc.interceptor import Interceptor, InterceptorSync from opentelemetry.metrics import MeterProvider from opentelemetry.trace import TracerProvider - from connectrpc.interceptor import Interceptor, InterceptorSync - _instruments = ("connectrpc>=0.9.0",) P = ParamSpec("P") diff --git a/connectrpc-otel/connectrpc_otel/_interceptor.py b/connectrpc-otel/connectrpc_otel/_interceptor.py index ef69d1a..780f599 100644 --- a/connectrpc-otel/connectrpc_otel/_interceptor.py +++ b/connectrpc-otel/connectrpc_otel/_interceptor.py @@ -4,6 +4,7 @@ from contextlib import AbstractContextManager, contextmanager from typing import TYPE_CHECKING, TypeAlias, TypeVar, cast +from connectrpc.errors import ConnectError from opentelemetry.metrics import MeterProvider, get_meter_provider from opentelemetry.propagate import get_global_textmap from opentelemetry.propagators.textmap import Setter, TextMapPropagator, default_setter @@ -16,8 +17,6 @@ ) from opentelemetry.util.types import AttributeValue -from connectrpc.errors import ConnectError - from ._semconv import ( CLIENT_ADDRESS, CLIENT_PORT, diff --git a/connectrpc-otel/pyproject.toml b/connectrpc-otel/pyproject.toml index ab98951..70baa2b 100644 --- a/connectrpc-otel/pyproject.toml +++ b/connectrpc-otel/pyproject.toml @@ -78,3 +78,6 @@ build-backend = "uv_build" [tool.uv.build-backend] module-name = "connectrpc_otel" module-root = "" + +[tool.ruff] +extend = "../pyproject.toml" diff --git a/connectrpc-otel/test/test_instrumentor.py b/connectrpc-otel/test/test_instrumentor.py index ef6c163..854bcaa 100644 --- a/connectrpc-otel/test/test_instrumentor.py +++ b/connectrpc-otel/test/test_instrumentor.py @@ -7,7 +7,8 @@ from typing import TYPE_CHECKING, Literal import pytest -from connectrpc_otel import ConnectInstrumentor, OpenTelemetryInterceptor +from connectrpc.code import Code +from connectrpc.errors import ConnectError from example.eliza_connect import ( ElizaService, ElizaServiceASGIApplication, @@ -21,10 +22,10 @@ from pyqwest import Client, SyncClient from pyqwest.testing import ASGITransport, WSGITransport -from connectrpc.code import Code -from connectrpc.errors import ConnectError +from connectrpc_otel import ConnectInstrumentor, OpenTelemetryInterceptor if TYPE_CHECKING: + from connectrpc.request import RequestContext from opentelemetry.metrics import MeterProvider from opentelemetry.sdk.metrics.export import InMemoryMetricReader from opentelemetry.sdk.trace import TracerProvider @@ -32,8 +33,6 @@ InMemorySpanExporter, ) - from connectrpc.request import RequestContext - class ElizaServiceTest(ElizaService): async def say(self, request: SayRequest, ctx: RequestContext) -> SayResponse: diff --git a/connectrpc-otel/test/test_interceptor.py b/connectrpc-otel/test/test_interceptor.py index 151d8da..a21f127 100644 --- a/connectrpc-otel/test/test_interceptor.py +++ b/connectrpc-otel/test/test_interceptor.py @@ -4,7 +4,8 @@ from typing import TYPE_CHECKING, cast import pytest -from connectrpc_otel import OpenTelemetryInterceptor +from connectrpc.code import Code +from connectrpc.errors import ConnectError from example.eliza_connect import ( ElizaService, ElizaServiceASGIApplication, @@ -24,11 +25,11 @@ from pyqwest import Client, SyncClient from pyqwest.testing import ASGITransport, WSGITransport -from connectrpc.code import Code -from connectrpc.errors import ConnectError +from connectrpc_otel import OpenTelemetryInterceptor if TYPE_CHECKING: from asgiref.typing import ASGIApplication + from connectrpc.request import RequestContext from opentelemetry.sdk.metrics import MeterProvider from opentelemetry.sdk.metrics.export import Histogram, InMemoryMetricReader, Metric from opentelemetry.sdk.trace import TracerProvider @@ -36,8 +37,6 @@ InMemorySpanExporter, ) - from connectrpc.request import RequestContext - class ElizaServiceTest(ElizaService): async def say(self, request: SayRequest, ctx: RequestContext) -> SayResponse: