starmallow 0.9.2__py3-none-any.whl → 0.9.4__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.
starmallow/__init__.py CHANGED
@@ -1,4 +1,4 @@
1
- __version__ = "0.9.2"
1
+ __version__ = "0.9.4"
2
2
 
3
3
  from .applications import StarMallow as StarMallow
4
4
  from .exceptions import RequestValidationError as RequestValidationError
starmallow/endpoint.py CHANGED
@@ -1,6 +1,6 @@
1
1
  import inspect
2
2
  import logging
3
- from collections.abc import Callable, Mapping, Sequence
3
+ from collections.abc import Callable, Iterable, Mapping, Sequence
4
4
  from dataclasses import dataclass, field
5
5
  from typing import (
6
6
  TYPE_CHECKING,
@@ -15,8 +15,8 @@ from typing import (
15
15
  import marshmallow as ma
16
16
  import marshmallow.fields as mf
17
17
  import typing_inspect
18
- from marshmallow.constants import missing as missing_
19
- from marshmallow.types import StrSequenceOrSet, UnknownOption
18
+ from marshmallow.types import StrSequenceOrSet
19
+ from marshmallow.utils import missing as missing_
20
20
  from marshmallow_dataclass2 import class_schema, is_generic_alias_of_dataclass
21
21
  from starlette.background import BackgroundTasks
22
22
  from starlette.requests import HTTPConnection, Request
@@ -159,11 +159,11 @@ class SchemaModel(ma.Schema):
159
159
 
160
160
  def load(
161
161
  self,
162
- data: Mapping[str, Any] | Sequence[Mapping[str, Any]],
162
+ data: Mapping[str, Any] | Iterable[Mapping[str, Any]],
163
163
  *,
164
164
  many: bool | None = None,
165
165
  partial: bool | StrSequenceOrSet | None = None,
166
- unknown: UnknownOption | None = None,
166
+ unknown: str | None = None,
167
167
  ) -> Any:
168
168
  if not data and self.load_default:
169
169
  return self.load_default
@@ -242,7 +242,7 @@ class EndpointMixin:
242
242
  model = class_schema(model) # type: ignore
243
243
 
244
244
  mmf = getattr(model, '_marshmallow_field', None)
245
- if isinstance(model, NewType) and mmf and issubclass(mmf, mf.Field):
245
+ if isinstance(model, NewType) and mmf and lenient_issubclass(mmf, mf.Field):
246
246
  return mmf(**kwargs)
247
247
  elif is_marshmallow_schema(model):
248
248
  return SchemaModel(model() if inspect.isclass(model) else model, **kwargs)
@@ -7,9 +7,9 @@ from typing import Any, cast
7
7
 
8
8
  import marshmallow as ma
9
9
  import marshmallow.fields as mf
10
- from marshmallow.constants import missing as missing_
11
10
  from marshmallow.error_store import ErrorStore
12
11
  from marshmallow.exceptions import SCHEMA
12
+ from marshmallow.utils import missing as missing_
13
13
  from starlette.background import BackgroundTasks as StarletteBackgroundTasks
14
14
  from starlette.datastructures import FormData, Headers, QueryParams
15
15
  from starlette.exceptions import HTTPException
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: starmallow
3
- Version: 0.9.2
3
+ Version: 0.9.4
4
4
  Summary: StarMallow framework
5
5
  Project-URL: Homepage, https://github.com/mvanderlee/starmallow
6
6
  Author-email: Michiel Vanderlee <jmt.vanderlee@gmail.com>
@@ -31,7 +31,7 @@ Requires-Python: >=3.11
31
31
  Requires-Dist: apispec[marshmallow]<7,>=6
32
32
  Requires-Dist: dpath<3,>=2.1.0
33
33
  Requires-Dist: marshmallow-dataclass2<9,>=8.8.1
34
- Requires-Dist: marshmallow>=3.18.0
34
+ Requires-Dist: marshmallow<4,>=3.18.0
35
35
  Requires-Dist: python-multipart>=0.0.20
36
36
  Requires-Dist: pyyaml>=5.4.1
37
37
  Requires-Dist: starlette>=0.46
@@ -1,4 +1,4 @@
1
- starmallow/__init__.py,sha256=cnJ0uuTI6vSNBSC11DOBlViasfQ1ibVWYiB7u8m5GBE,691
1
+ starmallow/__init__.py,sha256=3nXwG54EsuEBFn1WA4yb0O0-vvM1xH3_YWNCvPXo5Yo,691
2
2
  starmallow/applications.py,sha256=wI3mViPAgMAGDUy0PzDLyd6GFQaFY_d1-85LBASATNY,30396
3
3
  starmallow/background.py,sha256=asjTMgO25zqZiKsxcEVBGPKd_Nb7RVZDEmzR4PNy6-k,996
4
4
  starmallow/concurrency.py,sha256=YNIFo8jmHZYXfFkqzL1xFiE5QFwWYnGUsYgAROv041Q,1404
@@ -8,7 +8,7 @@ starmallow/datastructures.py,sha256=oq2Dz6zcoQx9ctMSSviZMAX_wvNTT9ytkSBtZjcg7bY,
8
8
  starmallow/decorators.py,sha256=VGzfFYualOcplRK6L3Tu2GrCl3a5yrOgADqWMokqzcQ,4036
9
9
  starmallow/delimited_field.py,sha256=4a6ObLK4LBxayd6o5bh5i9bR2K0miOkFFdj8r2km-g8,4286
10
10
  starmallow/docs.py,sha256=tc077aDFAzHTjpnEpqS8BVMhVolaYFmrqQ2obd1Jsbg,6229
11
- starmallow/endpoint.py,sha256=MtABY6fC_R009leoDyRHkxeSAK7bQ4xMsvYPh3vYKdE,17876
11
+ starmallow/endpoint.py,sha256=H5zsgBZTBhEm6Mz9jsZhCEDOLFRGSLui7JAiGQHxCZc,17865
12
12
  starmallow/endpoints.py,sha256=2RuKhEX0EpEyWUdlKVfD0WXz_8zNQEduCoZ4UJkybZc,953
13
13
  starmallow/exception_handlers.py,sha256=gr2qLYWEtsIEH28n7OreEiiLVz6Y7b6osRyS9esJbBk,891
14
14
  starmallow/exceptions.py,sha256=arXkENa6dV626t_IDWZKqrh6laeV54PWbVIW0dafT2o,843
@@ -16,7 +16,7 @@ starmallow/fields.py,sha256=5zXP2JLyTpVnVhl23GYHY9W3Sc5Oc_kRvOWmI7WWNRM,1283
16
16
  starmallow/generics.py,sha256=CE_Wf0vIqkup0mirGa-PL5511DT-avaCkC1Jx4sMe_U,1102
17
17
  starmallow/params.py,sha256=EDnUNVNfRY7uv5D1rzfmIrWKJ85R2ku4l13w1QKG4E8,8720
18
18
  starmallow/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
- starmallow/request_resolver.py,sha256=RYMtCgvEkwyWTF2N33mq-HEeAHysXegaHnEvV-sYuBw,11693
19
+ starmallow/request_resolver.py,sha256=o9OID0wOUCG1iUuvJVT6-ghzG61Pv08QiznFjzZZ8RE,11689
20
20
  starmallow/requests.py,sha256=o_yNhH9WJ35uAGuoXa5_gihevHeaveOvkP525dbwQSU,843
21
21
  starmallow/responses.py,sha256=H6Ze0R5JG9O8eaS4dffiAn3lI6Y9-hz3aDHdWKGk_nw,2023
22
22
  starmallow/routing.py,sha256=dK6ayN_Ruqz3ZGNQ3pFwqnguF7Vl0oIfD7e8OnnED_Y,45364
@@ -37,7 +37,7 @@ starmallow/security/http.py,sha256=wSbRomh9IYAi2nJ4ugFrx2JLg-m85DxWVaUMZt5PwIw,6
37
37
  starmallow/security/oauth2.py,sha256=G72-wJyvrGyHUbg9hbzf44RBN8zFalZYnHKpRC2I1po,10108
38
38
  starmallow/security/open_id_connect_url.py,sha256=9E-Zwnt-IR3jimOMkvIwnGHTuJMlGmjs7LCf1SGtKT8,1415
39
39
  starmallow/security/utils.py,sha256=7tziAa2Cwa7xhwM_NF4DSY3BHoqVaWgJ21VuV8LvhrY,253
40
- starmallow-0.9.2.dist-info/METADATA,sha256=zoEqForKQacmHgXXeECDQ-iBTErzBdYc1gVEfap50jQ,5560
41
- starmallow-0.9.2.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
42
- starmallow-0.9.2.dist-info/licenses/LICENSE.md,sha256=QelyGgOzch8CXzy6HrYwHh7nmj0rlWkDA0YzmZ3CPaY,1084
43
- starmallow-0.9.2.dist-info/RECORD,,
40
+ starmallow-0.9.4.dist-info/METADATA,sha256=38FI46vkdcuqWmZMYDnfV6GoFYPocNOqrv695DeTeKE,5563
41
+ starmallow-0.9.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
42
+ starmallow-0.9.4.dist-info/licenses/LICENSE.md,sha256=QelyGgOzch8CXzy6HrYwHh7nmj0rlWkDA0YzmZ3CPaY,1084
43
+ starmallow-0.9.4.dist-info/RECORD,,