about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/python-modules/aiopurpleair/pydantic_2-compatibility.patch
blob: 090014778fa62eeb5bd726c9ebda517092dec29d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
diff --git a/aiopurpleair/api.py b/aiopurpleair/api.py
index d3b276b..c557015 100644
--- a/aiopurpleair/api.py
+++ b/aiopurpleair/api.py
@@ -5,7 +5,10 @@ from typing import Any, cast
 
 from aiohttp import ClientSession, ClientTimeout
 from aiohttp.client_exceptions import ClientError
-from pydantic import BaseModel, ValidationError
+try:
+    from pydantic.v1 import BaseModel, ValidationError
+except ModuleNotFoundError:
+    from pydantic import BaseModel, ValidationError
 
 from aiopurpleair.const import LOGGER
 from aiopurpleair.endpoints.sensors import SensorsEndpoints
diff --git a/aiopurpleair/endpoints/__init__.py b/aiopurpleair/endpoints/__init__.py
index 4d263e1..6632310 100644
--- a/aiopurpleair/endpoints/__init__.py
+++ b/aiopurpleair/endpoints/__init__.py
@@ -4,7 +4,10 @@ from __future__ import annotations
 from collections.abc import Awaitable, Callable, Iterable
 from typing import Any
 
-from pydantic import BaseModel, ValidationError
+try:
+    from pydantic.v1 import BaseModel, ValidationError
+except ModuleNotFoundError:
+    from pydantic import BaseModel, ValidationError
 
 from aiopurpleair.errors import InvalidRequestError
 from aiopurpleair.helpers.typing import ModelT
diff --git a/aiopurpleair/helpers/typing.py b/aiopurpleair/helpers/typing.py
index 4ae01e6..49f59e6 100644
--- a/aiopurpleair/helpers/typing.py
+++ b/aiopurpleair/helpers/typing.py
@@ -1,6 +1,9 @@
 """Define typing helpers."""
 from typing import TypeVar
 
-from pydantic import BaseModel
+try:
+    from pydantic.v1 import BaseModel
+except ModuleNotFoundError:
+    from pydantic import BaseModel
 
 ModelT = TypeVar("ModelT", bound=BaseModel)
diff --git a/aiopurpleair/models/keys.py b/aiopurpleair/models/keys.py
index 591ae01..ffadbcc 100644
--- a/aiopurpleair/models/keys.py
+++ b/aiopurpleair/models/keys.py
@@ -3,7 +3,10 @@ from __future__ import annotations
 
 from datetime import datetime
 
-from pydantic import BaseModel, validator
+try:
+    from pydantic.v1 import BaseModel, validator
+except ModuleNotFoundError:
+    from pydantic import BaseModel, validator
 
 from aiopurpleair.backports.enum import StrEnum
 from aiopurpleair.helpers.validators import validate_timestamp
diff --git a/aiopurpleair/models/sensors.py b/aiopurpleair/models/sensors.py
index 5b99b51..d435996 100644
--- a/aiopurpleair/models/sensors.py
+++ b/aiopurpleair/models/sensors.py
@@ -5,7 +5,10 @@ from __future__ import annotations
 from datetime import datetime
 from typing import Any, Optional
 
-from pydantic import BaseModel, root_validator, validator
+try:
+    from pydantic.v1 import BaseModel, root_validator, validator
+except ModuleNotFoundError:
+    from pydantic import BaseModel, root_validator, validator
 
 from aiopurpleair.const import SENSOR_FIELDS, ChannelFlag, ChannelState, LocationType
 from aiopurpleair.helpers.validators import validate_timestamp
diff --git a/tests/models/test_keys.py b/tests/models/test_keys.py
index 0d7d7c8..b2e30c1 100644
--- a/tests/models/test_keys.py
+++ b/tests/models/test_keys.py
@@ -5,7 +5,10 @@ from datetime import datetime
 from typing import Any
 
 import pytest
-from pydantic import ValidationError
+try:
+    from pydantic.v1 import ValidationError
+except ModuleNotFoundError:
+    from pydantic import ValidationError
 
 from aiopurpleair.models.keys import ApiKeyType, GetKeysResponse
 
diff --git a/tests/models/test_sensors.py b/tests/models/test_sensors.py
index a984b36..7b2c84f 100644
--- a/tests/models/test_sensors.py
+++ b/tests/models/test_sensors.py
@@ -5,7 +5,10 @@ from datetime import datetime
 from typing import Any
 
 import pytest
-from pydantic import ValidationError
+try:
+    from pydantic.v1 import ValidationError
+except ModuleNotFoundError:
+    from pydantic import ValidationError
 
 from aiopurpleair.models.sensors import (
     GetSensorsRequest,