omserv 0.0.0.dev237__py3-none-any.whl → 0.0.0.dev238__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
omserv/apps/markers.py CHANGED
@@ -3,31 +3,34 @@ import typing as ta
3
3
 
4
4
  from omlish import lang
5
5
  from omlish.http.asgi import AsgiApp
6
+ from omlish.metadata import ObjectMetadata
7
+ from omlish.metadata import append_object_metadata
8
+ from omlish.metadata import get_object_metadata
6
9
 
7
10
 
8
11
  T = ta.TypeVar('T')
9
12
 
10
13
 
11
- class AppMarker(lang.Abstract):
14
+ ##
15
+
16
+
17
+ class AppMarker(ObjectMetadata, lang.Abstract):
12
18
  pass
13
19
 
14
20
 
15
- APP_MARKERS_ATTR = '__' + __name__.replace('.', '_') + '__'
21
+ ##
16
22
 
17
23
 
18
24
  def append_app_marker(obj: T, *markers: AppMarker) -> T:
19
- tgt = lang.unwrap_func(obj) # type: ignore
20
- tgt.__dict__.setdefault(APP_MARKERS_ATTR, []).extend(markers)
25
+ append_object_metadata(obj, *markers)
21
26
  return obj
22
27
 
23
28
 
24
29
  def get_app_markers(obj: ta.Any) -> ta.Sequence[AppMarker]:
25
- tgt = lang.unwrap_func(obj)
26
- try:
27
- dct = tgt.__dict__
28
- except AttributeError:
29
- return ()
30
- return dct.get(APP_MARKERS_ATTR, ())
30
+ return [md for md in get_object_metadata(obj) if isinstance(md, AppMarker)]
31
+
32
+
33
+ ##
31
34
 
32
35
 
33
36
  class AppMarkerProcessor(lang.Abstract):
omserv/apps/routes.py CHANGED
@@ -106,7 +106,7 @@ class RouteHandlerApp(AsgiApp_):
106
106
 
107
107
  async def __call__(self, scope: AsgiScope, recv: AsgiRecv, send: AsgiSend) -> None:
108
108
  with contextlib.ExitStack() as es:
109
- es.enter_context(lang.context_var_setting(SCOPE, scope))
109
+ es.enter_context(lang.context_var_setting(SCOPE, scope)) # noqa
110
110
 
111
111
  match scope_ty := scope['type']:
112
112
  case 'lifespan':
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: omserv
3
- Version: 0.0.0.dev237
3
+ Version: 0.0.0.dev238
4
4
  Summary: omserv
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -12,7 +12,7 @@ Classifier: Operating System :: OS Independent
12
12
  Classifier: Operating System :: POSIX
13
13
  Requires-Python: >=3.12
14
14
  License-File: LICENSE
15
- Requires-Dist: omlish==0.0.0.dev237
15
+ Requires-Dist: omlish==0.0.0.dev238
16
16
  Provides-Extra: all
17
17
  Requires-Dist: h11~=0.14; extra == "all"
18
18
  Requires-Dist: h2~=4.1; extra == "all"
@@ -4,8 +4,8 @@ omserv/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  omserv/apps/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
5
5
  omserv/apps/base.py,sha256=KSwxbC0_fY87_DucvpEOHG6gZ2wL78D-N3We8RTEU4Q,385
6
6
  omserv/apps/inject.py,sha256=xtcn-C3A4yCdHfnAaejxrC_UGMVBYmWtSxeESIkorP0,2697
7
- omserv/apps/markers.py,sha256=CwBKrpNIDOyJXAx8BAtpKi1olPwzWtk5XMkmg2GzogE,905
8
- omserv/apps/routes.py,sha256=gMaOTHScgXm8yb6JindJeiRLX2xvWLMWvgZsCBR0SPE,3770
7
+ omserv/apps/markers.py,sha256=JyVEXIaZC01bYObZ08TCwmQgiqZSvPfwNFJwpt9PU-c,870
8
+ omserv/apps/routes.py,sha256=xWVgMwMeRr1QJiCCB_LCtxsb41ajdTmbDua4X71Djo0,3778
9
9
  omserv/apps/sessions.py,sha256=glruQSbOSbCYLPp6nDRNSHCyp5hj4oiOPhh3R0F9BTM,1537
10
10
  omserv/apps/templates.py,sha256=PBRZHIF9UbnFnq-4EC6RmPeRkeH8lCBbpJkSdseHs6A,2125
11
11
  omserv/nginx/__init__.py,sha256=2d63LCGFA2qS7gdl2nCvNPmQWXNICu19wZIihQJPHCs,48
@@ -46,9 +46,9 @@ omserv/server/streams/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3h
46
46
  omserv/server/streams/httpstream.py,sha256=0DeiAPLGbEGNa0fHTs8lUpi_CFZs4M5_QB-TiS8mobQ,8015
47
47
  omserv/server/streams/utils.py,sha256=aMOrqWIg_Hht5W4kLg3y7oR5AEkVvMrZhyjzo6U5owE,1527
48
48
  omserv/server/streams/wsstream.py,sha256=3Vyzox7dCE1tDSXjb6xBubWo41ZF9d38Hrsrlj6h1J8,15482
49
- omserv-0.0.0.dev237.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
50
- omserv-0.0.0.dev237.dist-info/METADATA,sha256=gltaaW7xZgGuCuSGGK6pUVqHUg9eeDIG1XLiyDxy-XU,983
51
- omserv-0.0.0.dev237.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
52
- omserv-0.0.0.dev237.dist-info/entry_points.txt,sha256=ivSrdA_ahEbI-eVMu-XZS-z4VrnQISvpecIkOqC9zFM,35
53
- omserv-0.0.0.dev237.dist-info/top_level.txt,sha256=HXehpnxeKscKNULzKNzZ27oNawBrsh1PaNAirbX-XNA,7
54
- omserv-0.0.0.dev237.dist-info/RECORD,,
49
+ omserv-0.0.0.dev238.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
50
+ omserv-0.0.0.dev238.dist-info/METADATA,sha256=LIe8cEMdsDFQgTmsr6SYS6-ibf3HEAzZ5PRvgB7HeSE,983
51
+ omserv-0.0.0.dev238.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
52
+ omserv-0.0.0.dev238.dist-info/entry_points.txt,sha256=ivSrdA_ahEbI-eVMu-XZS-z4VrnQISvpecIkOqC9zFM,35
53
+ omserv-0.0.0.dev238.dist-info/top_level.txt,sha256=HXehpnxeKscKNULzKNzZ27oNawBrsh1PaNAirbX-XNA,7
54
+ omserv-0.0.0.dev238.dist-info/RECORD,,