Skip to content

Commit 1047397

Browse files
fix(ci): add ty check to dataclasses utility (#8038)
ci: fix ty warnings in data classes
1 parent 62591e7 commit 1047397

File tree

5 files changed

+16
-17
lines changed

5 files changed

+16
-17
lines changed

aws_lambda_powertools/utilities/data_classes/api_gateway_authorizer_event.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
DictWrapper,
1515
)
1616
from aws_lambda_powertools.utilities.data_classes.shared_functions import (
17-
get_header_value,
17+
get_header_value, # ty: ignore[deprecated]
1818
)
1919
from aws_lambda_powertools.warnings import PowertoolsDeprecationWarning
2020

@@ -232,7 +232,7 @@ def get_header_value(
232232
category=PowertoolsDeprecationWarning,
233233
stacklevel=2,
234234
)
235-
return get_header_value(self.headers, name, default_value, case_sensitive)
235+
return get_header_value(self.headers, name, default_value, case_sensitive) # ty: ignore[deprecated]
236236

237237

238238
class APIGatewayAuthorizerEventV2(DictWrapper):
@@ -358,7 +358,7 @@ def get_header_value(
358358
category=PowertoolsDeprecationWarning,
359359
stacklevel=2,
360360
)
361-
return get_header_value(self.headers, name, default_value, case_sensitive)
361+
return get_header_value(self.headers, name, default_value, case_sensitive) # ty: ignore[deprecated]
362362

363363

364364
class APIGatewayAuthorizerResponseV2:
@@ -691,12 +691,12 @@ def _add_route(self, effect: str, resource: str, conditions: list[dict] | None =
691691
self._deny_routes.append(route)
692692

693693
@override
694-
def allow_all_routes(self):
694+
def allow_all_routes(self, http_method: str = HttpVerb.ALL.value): # type: ignore[override] # noqa: ARG002
695695
"""Adds a '*' allow to the policy to authorize access to all methods of an API"""
696696
self._add_route(effect="Allow", resource="*")
697697

698698
@override
699-
def deny_all_routes(self):
699+
def deny_all_routes(self, http_method: str = HttpVerb.ALL.value): # type: ignore[override] # noqa: ARG002
700700
"""Adds a '*' allow to the policy to deny access to all methods of an API"""
701701

702702
self._add_route(effect="Deny", resource="*")

aws_lambda_powertools/utilities/data_classes/appsync/scalar_types_utils.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ def aws_date(timezone_offset: int = 0) -> str:
5555
str
5656
Returns current time as AWSDate scalar string with optional timezone offset
5757
"""
58-
return _formatted_time(datetime.datetime.utcnow(), "%Y-%m-%d", timezone_offset)
58+
return _formatted_time(datetime.datetime.now(datetime.timezone.utc), "%Y-%m-%d", timezone_offset)
5959

6060

6161
def aws_time(timezone_offset: int = 0) -> str:
@@ -71,7 +71,7 @@ def aws_time(timezone_offset: int = 0) -> str:
7171
str
7272
Returns current time as AWSTime scalar string with optional timezone offset
7373
"""
74-
return _formatted_time(datetime.datetime.utcnow(), "%H:%M:%S.%f", timezone_offset)
74+
return _formatted_time(datetime.datetime.now(datetime.timezone.utc), "%H:%M:%S.%f", timezone_offset)
7575

7676

7777
def aws_datetime(timezone_offset: int = 0) -> str:
@@ -87,7 +87,7 @@ def aws_datetime(timezone_offset: int = 0) -> str:
8787
str
8888
Returns current time as AWSDateTime scalar string with optional timezone offset
8989
"""
90-
return _formatted_time(datetime.datetime.utcnow(), "%Y-%m-%dT%H:%M:%S.%f", timezone_offset)
90+
return _formatted_time(datetime.datetime.now(datetime.timezone.utc), "%Y-%m-%dT%H:%M:%S.%f", timezone_offset)
9191

9292

9393
def aws_timestamp() -> int:

aws_lambda_powertools/utilities/data_classes/appsync_resolver_event.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
from aws_lambda_powertools.utilities.data_classes.common import CaseInsensitiveDict, DictWrapper
99
from aws_lambda_powertools.utilities.data_classes.shared_functions import (
10-
get_header_value,
10+
get_header_value, # ty: ignore[deprecated]
1111
)
1212
from aws_lambda_powertools.warnings import PowertoolsDeprecationWarning
1313

@@ -275,4 +275,4 @@ def get_header_value(
275275
category=PowertoolsDeprecationWarning,
276276
stacklevel=2,
277277
)
278-
return get_header_value(self.request_headers, name, default_value, case_sensitive)
278+
return get_header_value(self.request_headers, name, default_value, case_sensitive) # ty: ignore[deprecated]

aws_lambda_powertools/utilities/data_classes/common.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
from aws_lambda_powertools.shared.headers_serializer import BaseHeadersSerializer
2424

2525
from aws_lambda_powertools.utilities.data_classes.shared_functions import (
26-
get_header_value,
26+
get_header_value, # ty: ignore[deprecated]
2727
get_multi_value_query_string_values,
2828
get_query_string_value,
2929
)
@@ -39,8 +39,8 @@ def __init__(self, data=None, **kwargs):
3939
def get(self, k, default=None):
4040
return super().get(k.lower(), default)
4141

42-
def pop(self, k):
43-
return super().pop(k.lower())
42+
def pop(self, k, *args):
43+
return super().pop(k.lower(), *args)
4444

4545
def setdefault(self, k, default=None):
4646
return super().setdefault(k.lower(), default)
@@ -125,7 +125,7 @@ def _str_helper(self) -> dict[str, Any]:
125125
properties = self._properties()
126126
sensitive_properties = ["raw_event"]
127127
if hasattr(self, "_sensitive_properties"):
128-
sensitive_properties.extend(self._sensitive_properties) # pyright: ignore
128+
sensitive_properties.extend(self._sensitive_properties) # pyright: ignore # type: ignore[arg-type]
129129

130130
result: dict[str, Any] = {}
131131
for property_key in properties:
@@ -142,7 +142,7 @@ def _str_helper(self) -> dict[str, Any]:
142142
# Checks if the key is a list and if it is a subclass of the parent class
143143
elif isinstance(property_value, list):
144144
for seq, item in enumerate(property_value):
145-
if issubclass(item.__class__, DictWrapper):
145+
if issubclass(item.__class__, DictWrapper) and isinstance(item, DictWrapper):
146146
result[property_key][seq] = item._str_helper()
147147
except Exception:
148148
result[property_key] = "[Cannot be deserialized]"
@@ -331,7 +331,7 @@ def get_header_value(
331331
category=PowertoolsDeprecationWarning,
332332
stacklevel=2,
333333
)
334-
return get_header_value(
334+
return get_header_value( # ty: ignore[deprecated]
335335
headers=self.headers,
336336
name=name,
337337
default_value=default_value,

pyproject.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,6 @@ exclude = [
239239
"aws_lambda_powertools/utilities/streaming/**",
240240
"aws_lambda_powertools/utilities/data_masking/**",
241241
"aws_lambda_powertools/tracing/**",
242-
"aws_lambda_powertools/utilities/data_classes/**",
243242
"aws_lambda_powertools/utilities/batch/**",
244243
"aws_lambda_powertools/utilities/idempotency/**",
245244
"aws_lambda_powertools/event_handler/**",

0 commit comments

Comments
 (0)