Skip to content

Commit fc78bea

Browse files
author
Nadir Albajari
committed
fix: remove unnecessary typing-extensions for py3.8
1 parent 575a103 commit fc78bea

File tree

9 files changed

+24
-8
lines changed

9 files changed

+24
-8
lines changed

Diff for: aws_lambda_powertools/utilities/parser/models/dynamodb.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
from typing import Any, Dict, List, Optional
33

44
from pydantic import BaseModel
5-
from typing_extensions import Literal
5+
6+
from ..types import Literal
67

78

89
class DynamoDBStreamChangedRecordModel(BaseModel):

Diff for: aws_lambda_powertools/utilities/parser/models/kinesis.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55

66
from pydantic import BaseModel, validator
77
from pydantic.types import PositiveInt
8-
from typing_extensions import Literal
8+
9+
from ..types import Literal
910

1011
logger = logging.getLogger(__name__)
1112

Diff for: aws_lambda_powertools/utilities/parser/models/s3.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
from pydantic.fields import Field
66
from pydantic.networks import IPvAnyNetwork
77
from pydantic.types import PositiveInt
8-
from typing_extensions import Literal
8+
9+
from ..types import Literal
910

1011

1112
class S3EventRecordGlacierRestoreEventData(BaseModel):

Diff for: aws_lambda_powertools/utilities/parser/models/ses.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@
44
from pydantic import BaseModel, Field
55
from pydantic.networks import EmailStr
66
from pydantic.types import PositiveInt
7-
from typing_extensions import Literal
7+
8+
from ..types import Literal
89

910

1011
class SesReceiptVerdict(BaseModel):

Diff for: aws_lambda_powertools/utilities/parser/models/sns.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,8 @@
33

44
from pydantic import BaseModel, root_validator
55
from pydantic.networks import HttpUrl
6-
from typing_extensions import Literal
6+
7+
from ..types import Literal
78

89

910
class SnsMsgAttributeModel(BaseModel):

Diff for: aws_lambda_powertools/utilities/parser/models/sqs.py

+2-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,8 @@
22
from typing import Dict, List, Optional
33

44
from pydantic import BaseModel
5-
from typing_extensions import Literal
5+
6+
from ..types import Literal
67

78

89
class SqsAttributesModel(BaseModel):

Diff for: aws_lambda_powertools/utilities/parser/types.py

+10
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,16 @@
11
"""Generics and other shared types used across parser"""
2+
import sys
23
from typing import TypeVar
34

45
from pydantic import BaseModel
56

7+
# Workaround for not importing typing_extensions on python ^3.8
8+
if sys.version_info[0] > 3 or (sys.version_info[0] == 3 and sys.version_info[1] >= 8):
9+
from typing import Literal # noqa: F401
10+
else:
11+
try:
12+
from typing_extensions import Literal # noqa: F401
13+
except ImportError:
14+
raise Exception("please install typing-extensions or upgrade to Python >= 3.8")
15+
616
Model = TypeVar("Model", bound=BaseModel)

Diff for: pyproject.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ boto3 = "^1.12"
2626
jmespath = "^0.10.0"
2727
pydantic = {version = "^1.6.0", optional = true }
2828
email-validator = {version = "*", optional = true }
29-
typing_extensions = {version = "^3.7.4.2", optional = true }
29+
typing_extensions = {version = "^3.7.4.2", optional = true, python= "<3.8" }
3030

3131
[tool.poetry.dev-dependencies]
3232
coverage = {extras = ["toml"], version = "^5.0.3"}

Diff for: tests/functional/parser/schemas.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
from typing import Dict, List, Optional
22

33
from pydantic import BaseModel
4-
from typing_extensions import Literal
54

65
from aws_lambda_powertools.utilities.parser.models import (
76
DynamoDBStreamChangedRecordModel,
@@ -14,6 +13,7 @@
1413
SqsModel,
1514
SqsRecordModel,
1615
)
16+
from aws_lambda_powertools.utilities.parser.types import Literal
1717

1818

1919
class MyDynamoBusiness(BaseModel):

0 commit comments

Comments
 (0)