ominfra 0.0.0.dev187__py3-none-any.whl → 0.0.0.dev189__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
@@ -2344,10 +2344,15 @@ class DelimitingBuffer:
2344
2344
 
2345
2345
 
2346
2346
  class ReadableListBuffer:
2347
+ # FIXME: merge with PrependableGeneratorReader
2348
+
2347
2349
  def __init__(self) -> None:
2348
2350
  super().__init__()
2349
2351
  self._lst: list[bytes] = []
2350
2352
 
2353
+ def __len__(self) -> int:
2354
+ return sum(map(len, self._lst))
2355
+
2351
2356
  def feed(self, d: bytes) -> None:
2352
2357
  if d:
2353
2358
  self._lst.append(d)
@@ -2386,6 +2391,12 @@ class ReadableListBuffer:
2386
2391
 
2387
2392
  return None
2388
2393
 
2394
+ def read_exact(self, sz: int) -> bytes:
2395
+ d = self.read(sz)
2396
+ if d is None or len(d) != sz:
2397
+ raise EOFError(f'ReadableListBuffer got {"no" if d is None else len(d)}, expected {sz}')
2398
+ return d
2399
+
2389
2400
  def read_until(self, delim: bytes = b'\n') -> ta.Optional[bytes]:
2390
2401
  if not (lst := self._lst):
2391
2402
  return None
@@ -3652,10 +3652,15 @@ class DelimitingBuffer:
3652
3652
 
3653
3653
 
3654
3654
  class ReadableListBuffer:
3655
+ # FIXME: merge with PrependableGeneratorReader
3656
+
3655
3657
  def __init__(self) -> None:
3656
3658
  super().__init__()
3657
3659
  self._lst: list[bytes] = []
3658
3660
 
3661
+ def __len__(self) -> int:
3662
+ return sum(map(len, self._lst))
3663
+
3659
3664
  def feed(self, d: bytes) -> None:
3660
3665
  if d:
3661
3666
  self._lst.append(d)
@@ -3694,6 +3699,12 @@ class ReadableListBuffer:
3694
3699
 
3695
3700
  return None
3696
3701
 
3702
+ def read_exact(self, sz: int) -> bytes:
3703
+ d = self.read(sz)
3704
+ if d is None or len(d) != sz:
3705
+ raise EOFError(f'ReadableListBuffer got {"no" if d is None else len(d)}, expected {sz}')
3706
+ return d
3707
+
3697
3708
  def read_until(self, delim: bytes = b'\n') -> ta.Optional[bytes]:
3698
3709
  if not (lst := self._lst):
3699
3710
  return None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ominfra
3
- Version: 0.0.0.dev187
3
+ Version: 0.0.0.dev189
4
4
  Summary: ominfra
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause
@@ -12,8 +12,8 @@ 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: omdev==0.0.0.dev187
16
- Requires-Dist: omlish==0.0.0.dev187
15
+ Requires-Dist: omdev==0.0.0.dev189
16
+ Requires-Dist: omlish==0.0.0.dev189
17
17
  Provides-Extra: all
18
18
  Requires-Dist: paramiko~=3.5; extra == "all"
19
19
  Requires-Dist: asyncssh~=2.18; extra == "all"
@@ -91,9 +91,9 @@ ominfra/manage/targets/connection.py,sha256=rVI1YJxFClcF-sdttqWyIz9_XjPI01GUdwxY
91
91
  ominfra/manage/targets/inject.py,sha256=P4597xWM-V3I_gCt2O71OLhYQkkXtuJvkYRsIbhhMcE,1561
92
92
  ominfra/manage/targets/targets.py,sha256=7GP6UAZyJFEhpkJN6UQdpr_WN3p7C76v-s445y-WB6U,1885
93
93
  ominfra/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
94
- ominfra/scripts/journald2aws.py,sha256=-XlQ9s2yKZpOQqTQhvEb44q-cYX317mobkjlyCyfUro,158588
94
+ ominfra/scripts/journald2aws.py,sha256=jxBI2ETft-GMJn0hFwV_lZgT55tj2kqKl0PszxUkOg8,158938
95
95
  ominfra/scripts/manage.py,sha256=ZH8YdqXxnFdcGb6uCcXotg2wbke0MnniRquPwy3aAPg,330216
96
- ominfra/scripts/supervisor.py,sha256=WpK_AR5LwmvxLfCyjylMV4_Ud2iNZ6k9QBUxiseSmqY,282876
96
+ ominfra/scripts/supervisor.py,sha256=nFPSB-NGQeoHwAA5UCAvcgy6sUWh4UtuQbhVZShk7wI,283226
97
97
  ominfra/supervisor/LICENSE.txt,sha256=yvqaMNsDhWxziHa9ien6qCW1SkZv-DQlAg96XjfSee8,1746
98
98
  ominfra/supervisor/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
99
99
  ominfra/supervisor/__main__.py,sha256=I0yFw-C08OOiZ3BF6lF1Oiv789EQXu-_j6whDhQUTEA,66
@@ -135,9 +135,9 @@ ominfra/tailscale/api.py,sha256=C5-t_b6jZXUWcy5k8bXm7CFnk73pSdrlMOgGDeGVrpw,1370
135
135
  ominfra/tailscale/cli.py,sha256=3FnJbgpLw6gInTfhERd1mDy9ijjMUGxkdYVo43Tnxx4,3555
136
136
  ominfra/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
137
137
  ominfra/tools/listresources.py,sha256=4qVg5txsb10EHhvqXXeM6gJ2jx9LbroEnPydDv1uXs0,6176
138
- ominfra-0.0.0.dev187.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
139
- ominfra-0.0.0.dev187.dist-info/METADATA,sha256=lHVe0Wy_PFXJ3OV0mV7RiRp9ycQGZzWI-Um2bjVs5k8,731
140
- ominfra-0.0.0.dev187.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
141
- ominfra-0.0.0.dev187.dist-info/entry_points.txt,sha256=kgecQ2MgGrM9qK744BoKS3tMesaC3yjLnl9pa5CRczg,37
142
- ominfra-0.0.0.dev187.dist-info/top_level.txt,sha256=E-b2OHkk_AOBLXHYZQ2EOFKl-_6uOGd8EjeG-Zy6h_w,8
143
- ominfra-0.0.0.dev187.dist-info/RECORD,,
138
+ ominfra-0.0.0.dev189.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
139
+ ominfra-0.0.0.dev189.dist-info/METADATA,sha256=K1IyNVwLsqPQnlgoLaBP-RbX8GE_N7nbSgtGPNJM89M,731
140
+ ominfra-0.0.0.dev189.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
141
+ ominfra-0.0.0.dev189.dist-info/entry_points.txt,sha256=kgecQ2MgGrM9qK744BoKS3tMesaC3yjLnl9pa5CRczg,37
142
+ ominfra-0.0.0.dev189.dist-info/top_level.txt,sha256=E-b2OHkk_AOBLXHYZQ2EOFKl-_6uOGd8EjeG-Zy6h_w,8
143
+ ominfra-0.0.0.dev189.dist-info/RECORD,,