ominfra 0.0.0.dev187__py3-none-any.whl → 0.0.0.dev189__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.
@@ -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,,