omlish 0.0.0.dev288__py3-none-any.whl → 0.0.0.dev290__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.
omlish/__about__.py CHANGED
@@ -1,5 +1,5 @@
1
- __version__ = '0.0.0.dev288'
2
- __revision__ = 'e2dff59656486617fd3e4b01cd91263482b1dfa1'
1
+ __version__ = '0.0.0.dev290'
2
+ __revision__ = 'ebbb2a4babf1f763c1caf685dbe12bcde2fa251f'
3
3
 
4
4
 
5
5
  #
@@ -37,7 +37,7 @@ class Project(ProjectBase):
37
37
 
38
38
  'greenlet ~= 3.2',
39
39
 
40
- 'trio ~= 0.29',
40
+ 'trio ~= 0.30',
41
41
  'trio-asyncio ~= 0.15',
42
42
  ],
43
43
 
omlish/diag/pycharm.py CHANGED
@@ -1,7 +1,6 @@
1
1
  import dataclasses as dc
2
2
  import json
3
3
  import os.path
4
- import plistlib
5
4
  import re
6
5
  import shutil
7
6
  import subprocess
@@ -13,10 +12,15 @@ from .. import lang
13
12
 
14
13
 
15
14
  if ta.TYPE_CHECKING:
16
- docker = lang.proxy_import('..docker')
17
- else:
15
+ import plistlib
16
+
18
17
  from .. import docker
19
18
 
19
+ else:
20
+ plistlib = lang.proxy_import('plistlib')
21
+
22
+ docker = lang.proxy_import('..docker')
23
+
20
24
 
21
25
  ##
22
26
 
omlish/http/urllib.py ADDED
@@ -0,0 +1,23 @@
1
+ # @omlish-lite
2
+ import urllib.request
3
+
4
+
5
+ ##
6
+
7
+
8
+ class NonRaisingUrllibErrorProcessor(urllib.request.HTTPErrorProcessor):
9
+ """
10
+ https://stackoverflow.com/a/74844056
11
+
12
+ Usage:
13
+
14
+ opener = urllib.request.build_opener(NonRaisingUrllibErrorProcessor)
15
+ with opener.open(req) as resp:
16
+ ...
17
+ """
18
+
19
+ def http_response(self, request, response):
20
+ return response
21
+
22
+ def https_response(self, request, response):
23
+ return response
omlish/text/minja.py CHANGED
@@ -18,19 +18,6 @@ from ..lite.maybes import Maybe
18
18
  ##
19
19
 
20
20
 
21
- class MinjaTemplate:
22
- def __init__(self, fn: ta.Callable) -> None:
23
- super().__init__()
24
-
25
- self._fn = fn
26
-
27
- def __call__(self, **kwargs: ta.Any) -> str:
28
- return self._fn(**kwargs)
29
-
30
-
31
- ##
32
-
33
-
34
21
  @dc.dataclass(frozen=True)
35
22
  class MinjaTemplateParam:
36
23
  name: str
@@ -59,6 +46,28 @@ class MinjaTemplateParam:
59
46
  return cls(name, dfl)
60
47
 
61
48
 
49
+ class MinjaTemplate:
50
+ def __init__(
51
+ self,
52
+ fn: ta.Callable,
53
+ params: ta.Sequence[MinjaTemplateParam],
54
+ ) -> None:
55
+ super().__init__()
56
+
57
+ self._fn = fn
58
+ self._params = params
59
+
60
+ @property
61
+ def params(self) -> ta.Sequence[MinjaTemplateParam]:
62
+ return self._params
63
+
64
+ def __call__(self, **kwargs: ta.Any) -> str:
65
+ return self._fn(**kwargs)
66
+
67
+
68
+ ##
69
+
70
+
62
71
  class MinjaTemplateCompiler:
63
72
  """
64
73
  Compiles a template string into a Python function. The returned function takes a dictionary 'context' and returns
@@ -261,7 +270,10 @@ class MinjaTemplateCompiler:
261
270
  rendered.ns,
262
271
  )
263
272
 
264
- return MinjaTemplate(render_fn)
273
+ return MinjaTemplate(
274
+ render_fn,
275
+ self._params,
276
+ )
265
277
 
266
278
 
267
279
  ##
omlish/text/templating.py CHANGED
@@ -1,3 +1,7 @@
1
+ """
2
+ TODO:
3
+ - find_vars
4
+ """
1
5
  import abc
2
6
  import dataclasses as dc
3
7
  import string
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omlish
3
- Version: 0.0.0.dev288
3
+ Version: 0.0.0.dev290
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -16,7 +16,7 @@ Provides-Extra: all
16
16
  Requires-Dist: anyio~=4.9; extra == "all"
17
17
  Requires-Dist: sniffio~=1.3; extra == "all"
18
18
  Requires-Dist: greenlet~=3.2; extra == "all"
19
- Requires-Dist: trio~=0.29; extra == "all"
19
+ Requires-Dist: trio~=0.30; extra == "all"
20
20
  Requires-Dist: trio-asyncio~=0.15; extra == "all"
21
21
  Requires-Dist: lz4~=4.4; extra == "all"
22
22
  Requires-Dist: python-snappy~=0.7; extra == "all"
@@ -55,7 +55,7 @@ Provides-Extra: async
55
55
  Requires-Dist: anyio~=4.9; extra == "async"
56
56
  Requires-Dist: sniffio~=1.3; extra == "async"
57
57
  Requires-Dist: greenlet~=3.2; extra == "async"
58
- Requires-Dist: trio~=0.29; extra == "async"
58
+ Requires-Dist: trio~=0.30; extra == "async"
59
59
  Requires-Dist: trio-asyncio~=0.15; extra == "async"
60
60
  Provides-Extra: compress
61
61
  Requires-Dist: lz4~=4.4; extra == "compress"
@@ -1,5 +1,5 @@
1
1
  omlish/.manifests.json,sha256=pjGUyLHaoWpPqRP3jz2u1fC1qoRc2lvrEcpU_Ax2tdg,8253
2
- omlish/__about__.py,sha256=g-UF2LN-CeZcgCNLTow-TkCSBCCJjs6HkfC_hRBUQ8o,3444
2
+ omlish/__about__.py,sha256=oeR_9krsJobU57yaBP1YUrwkXI9RXjfl3IONZ25CSmw,3444
3
3
  omlish/__init__.py,sha256=SsyiITTuK0v74XpKV8dqNaCmjOlan1JZKrHQv5rWKPA,253
4
4
  omlish/c3.py,sha256=rer-TPOFDU6fYq_AWio_AmA-ckZ8JDY5shIzQ_yXfzA,8414
5
5
  omlish/cached.py,sha256=MLap_p0rdGoDIMVhXVHm1tsbcWobJF0OanoodV03Ju8,542
@@ -277,7 +277,7 @@ omlish/diag/lsof.py,sha256=DnowqvKYah-WCuBHS3DAcZCvlsWJdM9kYNFq97UZDDA,9127
277
277
  omlish/diag/procfs.py,sha256=KaGTAA2Gj8eEEp7MjClRe4aimwzd-HDABThFzvq2cBQ,9684
278
278
  omlish/diag/procstats.py,sha256=UkqxREqfd-38xPYZ9T1SIJISz5ARQCEhTtOZrxtm2dE,777
279
279
  omlish/diag/ps.py,sha256=b7ai9O4mGZliNFvBu6PdQfMmct4qpcMTygEf1ISHBLQ,1666
280
- omlish/diag/pycharm.py,sha256=7-r_F-whXt8v-0dehxAX-MeMFPM3iZXX9IfeL0GfUtk,4643
280
+ omlish/diag/pycharm.py,sha256=Z2W-Viqw5xq08ZC4z36skpozfYw_qNNhWQx_GYr2D0k,4695
281
281
  omlish/diag/pydevd.py,sha256=UN55ZjkWLCVyHxE2CNRRYamuvSKfzWsn0D5oczRTXO4,7536
282
282
  omlish/diag/threads.py,sha256=1-x02VCDZ407gfbtXm1pWK-ubqhqfePm9PMqkHCVoqk,3642
283
283
  omlish/diag/_pycharm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -383,6 +383,7 @@ omlish/http/multipart.py,sha256=R9ycpHsXRcmh0uoc43aYb7BdWL-8kSQHe7J-M81aQZM,2240
383
383
  omlish/http/parsing.py,sha256=Kz1n-2SwqSbRtPk1nlImf655c2YtGLW4WlTI82o3c1w,14356
384
384
  omlish/http/sessions.py,sha256=TfTJ_j-6c9PelG_RmijEwozfaVm3O7YzgtFvp8VzQqM,4799
385
385
  omlish/http/sse.py,sha256=NwJnQj-hFXAkadXKhUuHSnbXHwDVJjhzfdkkHQ-prQo,2320
386
+ omlish/http/urllib.py,sha256=LwtMXDkjb9tYnOi6iApizHXpCiyjB1r72ePo_Nzv1vQ,466
386
387
  omlish/http/versions.py,sha256=wSiOXPiClVjkVgSU_VmxkoD1SUYGaoPbP0U5Aw-Ufg8,409
387
388
  omlish/http/wsgi.py,sha256=1JpfrY2JrQ0wrEVE0oLdQMWZw8Zcx0b4_9f3VmH4JKA,1070
388
389
  omlish/http/clients/__init__.py,sha256=SeH3ofjQvk7VuV9OE1uJir9QMZwvEuDl7fptkKgGQUU,449
@@ -816,10 +817,10 @@ omlish/text/glyphsplit.py,sha256=HI8TWDUaF_tJG5RnIdIjtUH_lYnjYZ7KZBANSxOXGZc,380
816
817
  omlish/text/indent.py,sha256=LOQgHskHMLVrRC6HLL9uIWay517dpvPEYQK0Igm-wm8,1341
817
818
  omlish/text/linecache.py,sha256=hRYlEhD63ZfA6_ZOTkQIcnON-3W56QMAhcG3vEJqj9M,1858
818
819
  omlish/text/mangle.py,sha256=d7j2_HPxoxF5VrLD1TShOSfnhBLH_-lQe_OH2kl0yHg,2790
819
- omlish/text/minja.py,sha256=e7XiY8IvF4Df-7hxhdC_qizHm9T4SIbFJR7enUg_Zmc,7252
820
+ omlish/text/minja.py,sha256=FH2xcZUby-yB1CQwCUGmpvHmE1nCmfNX1h0Nm6ix8ck,7515
820
821
  omlish/text/parts.py,sha256=Q9NvoyEGQKIWgiPD4D_Qc66cWAuyEKE033dT9m7c3Wk,6662
821
822
  omlish/text/random.py,sha256=8feS5JE_tSjYlMl-lp0j93kCfzBae9AM2cXlRLebXMA,199
822
- omlish/text/templating.py,sha256=DE_-JysSr92hJ6ITA4BRoUGsocasYTfXAZLsyyAGLgw,2427
823
+ omlish/text/templating.py,sha256=azhKpvkDR2uby8k3AJ8Y6GpdKVQUb7Xt_cGbDz6dkTM,2454
823
824
  omlish/text/go/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
824
825
  omlish/text/go/quoting.py,sha256=N9EYdnFdEX_A8fOviH-1w4jwV3XOQ7VU2WsoUNubYVY,9137
825
826
  omlish/typedvalues/__init__.py,sha256=c3IQmRneMmH6JRcafprqmBILWD89b-IyIll6MgahGCI,562
@@ -830,9 +831,9 @@ omlish/typedvalues/holder.py,sha256=4SwRezsmuDDEO5gENGx8kTm30pblF5UktoEAu02i-Gk,
830
831
  omlish/typedvalues/marshal.py,sha256=Rr-4DZ90BoD5Z9gT18QhZH2yMA3-gPJBK8GUrGkp8VA,4245
831
832
  omlish/typedvalues/reflect.py,sha256=y_7IY8_4cLVRvD3ug-_-cDaO5RtzC1rLVFzkeAPALf8,683
832
833
  omlish/typedvalues/values.py,sha256=Q_5IiQM3Vka4wGVd-scaslb4-oCMjFcIOksIrKE-JIM,1229
833
- omlish-0.0.0.dev288.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
834
- omlish-0.0.0.dev288.dist-info/METADATA,sha256=4tffbaEGdkT2GjI6KS2xO1j0e9LNg6UZKItk6VkJw4A,4316
835
- omlish-0.0.0.dev288.dist-info/WHEEL,sha256=CmyFI0kx5cdEMTLiONQRbGQwjIoR1aIYB7eCAQ4KPJ0,91
836
- omlish-0.0.0.dev288.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
837
- omlish-0.0.0.dev288.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
838
- omlish-0.0.0.dev288.dist-info/RECORD,,
834
+ omlish-0.0.0.dev290.dist-info/licenses/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
835
+ omlish-0.0.0.dev290.dist-info/METADATA,sha256=mlzTXMgNxL2crv8buBrhFsKzvguDXk_sMGiWLJEKHZc,4316
836
+ omlish-0.0.0.dev290.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
837
+ omlish-0.0.0.dev290.dist-info/entry_points.txt,sha256=Lt84WvRZJskWCAS7xnQGZIeVWksprtUHj0llrvVmod8,35
838
+ omlish-0.0.0.dev290.dist-info/top_level.txt,sha256=pePsKdLu7DvtUiecdYXJ78iO80uDNmBlqe-8hOzOmfs,7
839
+ omlish-0.0.0.dev290.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (78.1.0)
2
+ Generator: setuptools (79.0.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5