Skip to content

Commit 5c2f815

Browse files
refactor(event_source): use standard collections for types (#6479)
Using generics types Co-authored-by: Ana Falcão <[email protected]>
1 parent 4ebea7f commit 5c2f815

File tree

53 files changed

+132
-21
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+132
-21
lines changed

aws_lambda_powertools/utilities/data_classes/active_mq_event.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
from __future__ import annotations
22

33
from functools import cached_property
4-
from typing import Any, Iterator
4+
from typing import TYPE_CHECKING, Any
55

66
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
77
from aws_lambda_powertools.utilities.data_classes.shared_functions import base64_decode
88

9+
if TYPE_CHECKING:
10+
from collections.abc import Iterator
11+
912

1013
class ActiveMQMessage(DictWrapper):
1114
@property

aws_lambda_powertools/utilities/data_classes/common.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,17 @@
99
import base64
1010
import json
1111
import warnings
12+
from collections.abc import Mapping
1213
from functools import cached_property
13-
from typing import TYPE_CHECKING, Any, Callable, Iterator, Mapping, overload
14+
from typing import TYPE_CHECKING, Any, overload
1415

1516
from typing_extensions import deprecated
1617

1718
from aws_lambda_powertools.warnings import PowertoolsDeprecationWarning
1819

1920
if TYPE_CHECKING:
21+
from collections.abc import Callable, Iterator
22+
2023
from aws_lambda_powertools.shared.headers_serializer import BaseHeadersSerializer
2124

2225
from aws_lambda_powertools.utilities.data_classes.shared_functions import (

aws_lambda_powertools/utilities/data_classes/dynamo_db_stream_event.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,14 @@
22

33
from enum import Enum
44
from functools import cached_property
5-
from typing import Any, Iterator
5+
from typing import TYPE_CHECKING, Any
66

77
from aws_lambda_powertools.shared.dynamodb_deserializer import TypeDeserializer
88
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
99

10+
if TYPE_CHECKING:
11+
from collections.abc import Iterator
12+
1013

1114
class StreamViewType(Enum):
1215
"""The type of data from the modified DynamoDB item that was captured in this stream record"""

aws_lambda_powertools/utilities/data_classes/event_source.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
from __future__ import annotations
22

3-
from typing import TYPE_CHECKING, Any, Callable
3+
from typing import TYPE_CHECKING, Any
44

55
from aws_lambda_powertools.middleware_factory import lambda_handler_decorator
66

77
if TYPE_CHECKING:
8+
from collections.abc import Callable
9+
810
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
911
from aws_lambda_powertools.utilities.typing import LambdaContext
1012

aws_lambda_powertools/utilities/data_classes/kafka_event.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@
22

33
import base64
44
from functools import cached_property
5-
from typing import Any, Iterator
5+
from typing import TYPE_CHECKING, Any
66

77
from aws_lambda_powertools.utilities.data_classes.common import CaseInsensitiveDict, DictWrapper
88

9+
if TYPE_CHECKING:
10+
from collections.abc import Iterator
11+
912

1013
class KafkaEventRecord(DictWrapper):
1114
@property

aws_lambda_powertools/utilities/data_classes/kinesis_firehose_event.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,13 @@
55
import warnings
66
from dataclasses import dataclass, field
77
from functools import cached_property
8-
from typing import TYPE_CHECKING, Any, Callable, ClassVar, Iterator
8+
from typing import TYPE_CHECKING, Any, ClassVar
99

1010
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
1111

1212
if TYPE_CHECKING:
13+
from collections.abc import Callable, Iterator
14+
1315
from typing_extensions import Literal
1416

1517

aws_lambda_powertools/utilities/data_classes/kinesis_stream_event.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,16 @@
33
import base64
44
import json
55
import zlib
6-
from typing import Iterator
6+
from typing import TYPE_CHECKING
77

88
from aws_lambda_powertools.utilities.data_classes.cloud_watch_logs_event import (
99
CloudWatchLogsDecodedData,
1010
)
1111
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
1212

13+
if TYPE_CHECKING:
14+
from collections.abc import Iterator
15+
1316

1417
class KinesisStreamRecordPayload(DictWrapper):
1518
@property

aws_lambda_powertools/utilities/data_classes/s3_batch_operation_event.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import warnings
44
from dataclasses import dataclass, field
5-
from typing import Any, Iterator, Literal
5+
from typing import TYPE_CHECKING, Any, Literal
66
from urllib.parse import unquote_plus
77

88
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
@@ -11,6 +11,9 @@
1111
VALID_RESULT_CODES: tuple[str, str, str] = ("Succeeded", "TemporaryFailure", "PermanentFailure")
1212
RESULT_CODE_TYPE = Literal["Succeeded", "TemporaryFailure", "PermanentFailure"]
1313

14+
if TYPE_CHECKING:
15+
from collections.abc import Iterator
16+
1417

1518
@dataclass(repr=False, order=False)
1619
class S3BatchOperationResponseRecord:

aws_lambda_powertools/utilities/data_classes/s3_event.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
11
from __future__ import annotations
22

3-
from typing import Iterator
3+
from typing import TYPE_CHECKING
44
from urllib.parse import unquote_plus
55

66
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
77
from aws_lambda_powertools.utilities.data_classes.event_bridge_event import (
88
EventBridgeEvent,
99
)
1010

11+
if TYPE_CHECKING:
12+
from collections.abc import Iterator
13+
1114

1215
class S3Identity(DictWrapper):
1316
@property

aws_lambda_powertools/utilities/data_classes/ses_event.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
from __future__ import annotations
22

3-
from typing import Iterator
3+
from typing import TYPE_CHECKING
44

55
from aws_lambda_powertools.utilities.data_classes.common import DictWrapper
66

7+
if TYPE_CHECKING:
8+
from collections.abc import Iterator
9+
710

811
class SESMailHeader(DictWrapper):
912
@property

0 commit comments

Comments
 (0)