Skip to content

Commit da9ddba

Browse files
committed
make compatible with python 3.6
1 parent 82d3239 commit da9ddba

File tree

2 files changed

+21
-20
lines changed

2 files changed

+21
-20
lines changed

sentry_sdk/integrations/rust_tracing.py

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -32,21 +32,21 @@
3232

3333
import json
3434
from enum import Enum, auto
35-
from typing import Any, Callable, Final, Tuple, Optional
35+
from typing import Any, Callable, Dict, Tuple, Optional
3636

3737
import sentry_sdk
3838
from sentry_sdk.integrations import Integration
3939
from sentry_sdk.tracing import Span as SentrySpan
4040

41-
TraceState = Optional[Tuple[SentrySpan | None, SentrySpan]]
41+
TraceState = Optional[Tuple[Optional[SentrySpan], SentrySpan]]
4242

4343

4444
class RustTracingLevel(Enum):
45-
Trace: Final[str] = "TRACE"
46-
Debug: Final[str] = "DEBUG"
47-
Info: Final[str] = "INFO"
48-
Warn: Final[str] = "WARN"
49-
Error: Final[str] = "ERROR"
45+
Trace: str = "TRACE"
46+
Debug: str = "DEBUG"
47+
Info: str = "INFO"
48+
Warn: str = "WARN"
49+
Error: str = "ERROR"
5050

5151

5252
class EventTypeMapping(Enum):
@@ -72,7 +72,7 @@ def tracing_level_to_sentry_level(level):
7272
return "info"
7373

7474

75-
def extract_contexts(event: dict[str, Any]) -> dict[str, Any]:
75+
def extract_contexts(event: Dict[str, Any]) -> Dict[str, Any]:
7676
metadata = event.get("metadata", {})
7777
contexts = {}
7878

@@ -92,7 +92,7 @@ def extract_contexts(event: dict[str, Any]) -> dict[str, Any]:
9292
return contexts
9393

9494

95-
def process_event(event: dict[str, Any]) -> None:
95+
def process_event(event: Dict[str, Any]) -> None:
9696
metadata = event.get("metadata", {})
9797

9898
logger = metadata.get("target")
@@ -110,26 +110,26 @@ def process_event(event: dict[str, Any]) -> None:
110110
sentry_sdk.capture_event(sentry_event)
111111

112112

113-
def process_exception(event: dict[str, Any]) -> None:
113+
def process_exception(event: Dict[str, Any]) -> None:
114114
process_event(event)
115115

116116

117-
def process_breadcrumb(event: dict[str, Any]) -> None:
117+
def process_breadcrumb(event: Dict[str, Any]) -> None:
118118
level = tracing_level_to_sentry_level(event.get("metadata", {}).get("level"))
119119
message = event.get("message")
120120

121121
sentry_sdk.add_breadcrumb(level=level, message=message)
122122

123123

124-
def default_span_filter(metadata: dict[str, Any]) -> bool:
124+
def default_span_filter(metadata: Dict[str, Any]) -> bool:
125125
return RustTracingLevel(metadata.get("level")) in (
126126
RustTracingLevel.Error,
127127
RustTracingLevel.Warn,
128128
RustTracingLevel.Info,
129129
)
130130

131131

132-
def default_event_type_mapping(metadata: dict[str, Any]) -> EventTypeMapping:
132+
def default_event_type_mapping(metadata: Dict[str, Any]) -> EventTypeMapping:
133133
level = RustTracingLevel(metadata.get("level"))
134134
if level == RustTracingLevel.Error:
135135
return EventTypeMapping.Exc
@@ -146,9 +146,9 @@ def __init__(
146146
self,
147147
origin: str,
148148
event_type_mapping: Callable[
149-
[dict[str, Any]], EventTypeMapping
149+
[Dict[str, Any]], EventTypeMapping
150150
] = default_event_type_mapping,
151-
span_filter: Callable[[dict[str, Any]], bool] = default_span_filter,
151+
span_filter: Callable[[Dict[str, Any]], bool] = default_span_filter,
152152
):
153153
self.origin = origin
154154
self.event_type_mapping = event_type_mapping
@@ -230,9 +230,9 @@ def _create_integration(
230230
identifier: str,
231231
initializer: Callable[[RustTracingLayer], None],
232232
event_type_mapping: Callable[
233-
[dict[str, Any]], EventTypeMapping
233+
[Dict[str, Any]], EventTypeMapping
234234
] = default_event_type_mapping,
235-
span_filter: Callable[[dict[str, Any]], bool] = default_span_filter,
235+
span_filter: Callable[[Dict[str, Any]], bool] = default_span_filter,
236236
) -> object:
237237
"""
238238
Each native extension used by a project requires its own integration, but

tests/integrations/rust_tracing/test_rust_tracing.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from string import Template
2+
from typing import Dict
23

34
import sentry_sdk
45
from sentry_sdk.integrations.rust_tracing import (
@@ -10,7 +11,7 @@
1011
from sentry_sdk import start_transaction, capture_message
1112

1213

13-
def _test_event_type_mapping(metadata: dict[str, object]) -> EventTypeMapping:
14+
def _test_event_type_mapping(metadata: Dict[str, object]) -> EventTypeMapping:
1415
level = RustTracingLevel(metadata.get("level"))
1516
if level == RustTracingLevel.Error:
1617
return EventTypeMapping.Exc
@@ -298,7 +299,7 @@ def test_on_event_ignored(sentry_init, reset_integrations, capture_events):
298299

299300

300301
def test_span_filter(sentry_init, reset_integrations, capture_events):
301-
def span_filter(metadata: dict[str, object]) -> bool:
302+
def span_filter(metadata: Dict[str, object]) -> bool:
302303
return RustTracingLevel(metadata.get("level")) in (
303304
RustTracingLevel.Error,
304305
RustTracingLevel.Warn,
@@ -355,7 +356,7 @@ def test_record(sentry_init, reset_integrations):
355356

356357

357358
def test_record_in_ignored_span(sentry_init, reset_integrations):
358-
def span_filter(metadata: dict[str, object]) -> bool:
359+
def span_filter(metadata: Dict[str, object]) -> bool:
359360
# Just ignore Trace
360361
return RustTracingLevel(metadata.get("level")) != RustTracingLevel.Trace
361362

0 commit comments

Comments
 (0)