scim2-models 0.3.1__py3-none-any.whl → 0.3.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- scim2_models/base.py +9 -5
- scim2_models/rfc7643/schema.py +1 -1
- scim2_models/rfc7643/user.py +2 -1
- {scim2_models-0.3.1.dist-info → scim2_models-0.3.3.dist-info}/METADATA +1 -1
- {scim2_models-0.3.1.dist-info → scim2_models-0.3.3.dist-info}/RECORD +7 -7
- {scim2_models-0.3.1.dist-info → scim2_models-0.3.3.dist-info}/WHEEL +0 -0
- {scim2_models-0.3.1.dist-info → scim2_models-0.3.3.dist-info}/licenses/LICENSE +0 -0
scim2_models/base.py
CHANGED
|
@@ -649,14 +649,14 @@ class BaseModel(PydanticBaseModel):
|
|
|
649
649
|
"""
|
|
650
650
|
from scim2_models.rfc7643.resource import Resource
|
|
651
651
|
|
|
652
|
-
for field_name in self.model_fields:
|
|
652
|
+
for field_name in self.__class__.model_fields:
|
|
653
653
|
attr_type = self.get_field_root_type(field_name)
|
|
654
654
|
if not is_complex_attribute(attr_type):
|
|
655
655
|
continue
|
|
656
656
|
|
|
657
657
|
main_schema = (
|
|
658
658
|
getattr(self, "_schema", None)
|
|
659
|
-
or self.model_fields["schemas"].default[0]
|
|
659
|
+
or self.__class__.model_fields["schemas"].default[0]
|
|
660
660
|
)
|
|
661
661
|
|
|
662
662
|
separator = ":" if isinstance(self, Resource) else "."
|
|
@@ -847,8 +847,10 @@ class BaseModel(PydanticBaseModel):
|
|
|
847
847
|
|
|
848
848
|
See :rfc:`RFC7644 §3.10 <7644#section-3.10>`.
|
|
849
849
|
"""
|
|
850
|
-
main_schema = self.model_fields["schemas"].default[0]
|
|
851
|
-
alias =
|
|
850
|
+
main_schema = self.__class__.model_fields["schemas"].default[0]
|
|
851
|
+
alias = (
|
|
852
|
+
self.__class__.model_fields[field_name].serialization_alias or field_name
|
|
853
|
+
)
|
|
852
854
|
|
|
853
855
|
# if alias contains a ':' this is an extension urn
|
|
854
856
|
full_urn = alias if ":" in alias else f"{main_schema}:{alias}"
|
|
@@ -865,7 +867,9 @@ class ComplexAttribute(BaseModel):
|
|
|
865
867
|
|
|
866
868
|
See :rfc:`RFC7644 §3.10 <7644#section-3.10>`.
|
|
867
869
|
"""
|
|
868
|
-
alias =
|
|
870
|
+
alias = (
|
|
871
|
+
self.__class__.model_fields[field_name].serialization_alias or field_name
|
|
872
|
+
)
|
|
869
873
|
return f"{self._schema}.{alias}"
|
|
870
874
|
|
|
871
875
|
|
scim2_models/rfc7643/schema.py
CHANGED
|
@@ -3,7 +3,7 @@ from datetime import datetime
|
|
|
3
3
|
from enum import Enum
|
|
4
4
|
from typing import Annotated
|
|
5
5
|
from typing import Any
|
|
6
|
-
from typing import List # noqa : UP005
|
|
6
|
+
from typing import List # noqa : UP005,UP035
|
|
7
7
|
from typing import Literal
|
|
8
8
|
from typing import Optional
|
|
9
9
|
from typing import Union
|
scim2_models/rfc7643/user.py
CHANGED
|
@@ -17,6 +17,7 @@ from ..base import Required
|
|
|
17
17
|
from ..base import Returned
|
|
18
18
|
from ..base import Uniqueness
|
|
19
19
|
from ..utils import Base64Bytes
|
|
20
|
+
from .resource import AnyExtension
|
|
20
21
|
from .resource import Resource
|
|
21
22
|
|
|
22
23
|
|
|
@@ -213,7 +214,7 @@ class X509Certificate(MultiValuedComplexAttribute):
|
|
|
213
214
|
"""The value of an X.509 certificate."""
|
|
214
215
|
|
|
215
216
|
|
|
216
|
-
class User(Resource):
|
|
217
|
+
class User(Resource[AnyExtension]):
|
|
217
218
|
schemas: Annotated[list[str], Required.true] = [
|
|
218
219
|
"urn:ietf:params:scim:schemas:core:2.0:User"
|
|
219
220
|
]
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: scim2-models
|
|
3
|
-
Version: 0.3.
|
|
3
|
+
Version: 0.3.3
|
|
4
4
|
Summary: SCIM2 models serialization and validation with pydantic
|
|
5
5
|
Project-URL: documentation, https://scim2-models.readthedocs.io
|
|
6
6
|
Project-URL: repository, https://github.com/python-scim/scim2-models
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
scim2_models/__init__.py,sha256=Y06vTA_51lXfv9zk_dTzyIIqEo1H2bcencvMM5KAwn8,3063
|
|
2
|
-
scim2_models/base.py,sha256=
|
|
2
|
+
scim2_models/base.py,sha256=NV-uaDWG_pN6Cl_PT1E9PqdG7QH7jMMADGi3PVVurHQ,34917
|
|
3
3
|
scim2_models/constants.py,sha256=SuMGFtVNletdV5ZJRUcIq7o2CqZCRvOurnIdLE_cakE,540
|
|
4
4
|
scim2_models/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
scim2_models/utils.py,sha256=MzZz212-lkVWgXcpXvNwoi_u28wBTpkTwPrfYC5v92A,2771
|
|
@@ -8,9 +8,9 @@ scim2_models/rfc7643/enterprise_user.py,sha256=EaxdHH2dcBrwWwGpaZC6iZ9dbcaVN1Npo
|
|
|
8
8
|
scim2_models/rfc7643/group.py,sha256=CBmSnlzd4JktCpOmg4XkfJJUd8oD6KbYFRTt0dSdixE,1302
|
|
9
9
|
scim2_models/rfc7643/resource.py,sha256=zMyk02Traoq6XNBcS_fSnXIOadZwxTdA9CV4vLuy38k,12648
|
|
10
10
|
scim2_models/rfc7643/resource_type.py,sha256=p8IKV5IakPMBX6d2Fv2MFqaQL5iTw152vmozVVSC8gU,3196
|
|
11
|
-
scim2_models/rfc7643/schema.py,sha256=
|
|
11
|
+
scim2_models/rfc7643/schema.py,sha256=B7TzMbT6ngYQrMqvqW5_LberN6EaqtZaFwBVsgoA3S0,10388
|
|
12
12
|
scim2_models/rfc7643/service_provider_config.py,sha256=deMNCXlqiNzuLcVRN9mdHiTUxhczDnvi-oO6k-Anj8U,5402
|
|
13
|
-
scim2_models/rfc7643/user.py,sha256
|
|
13
|
+
scim2_models/rfc7643/user.py,sha256=70b2x1yw1fOfQTNXZrQ7-t8tjnbEMARd8TIhxGuRMKQ,9991
|
|
14
14
|
scim2_models/rfc7644/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
15
15
|
scim2_models/rfc7644/bulk.py,sha256=I6S40kyJPwDQwPFi668wFFDVTST7z6QTe9HTL5QUViI,2577
|
|
16
16
|
scim2_models/rfc7644/error.py,sha256=l4-vtGQYm5u13-ParhbHSeqXEil0E09QXSO9twAT3SU,6185
|
|
@@ -18,7 +18,7 @@ scim2_models/rfc7644/list_response.py,sha256=ltjV1WII2fNy8j3RX8J0_Jb5DW4hTFoO6P-
|
|
|
18
18
|
scim2_models/rfc7644/message.py,sha256=F4kPqbHAka3-wZzap9a45noQZw-o1vznTJypNABBF7w,253
|
|
19
19
|
scim2_models/rfc7644/patch_op.py,sha256=OE-ixDanTkY5zQP7EK7OAp88uE_fMk03mqmaZHxgJ-g,2210
|
|
20
20
|
scim2_models/rfc7644/search_request.py,sha256=DRGlixcWtYtbUuP9MT7PsnvyxlONLcXGEcQveWdqQng,3003
|
|
21
|
-
scim2_models-0.3.
|
|
22
|
-
scim2_models-0.3.
|
|
23
|
-
scim2_models-0.3.
|
|
24
|
-
scim2_models-0.3.
|
|
21
|
+
scim2_models-0.3.3.dist-info/METADATA,sha256=hmfXljlZZNG73OFiK9DkGfebilRcTAVbBtPKWSP2v4M,16288
|
|
22
|
+
scim2_models-0.3.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
|
23
|
+
scim2_models-0.3.3.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
|
24
|
+
scim2_models-0.3.3.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|