ominfra 0.0.0.dev178__py3-none-any.whl → 0.0.0.dev179__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.
@@ -4291,30 +4291,6 @@ def as_injector_bindings(*args: InjectorBindingOrBindings) -> InjectorBindings:
4291
4291
  ##
4292
4292
 
4293
4293
 
4294
- @dc.dataclass(frozen=True)
4295
- class OverridesInjectorBindings(InjectorBindings):
4296
- p: InjectorBindings
4297
- m: ta.Mapping[InjectorKey, InjectorBinding]
4298
-
4299
- def bindings(self) -> ta.Iterator[InjectorBinding]:
4300
- for b in self.p.bindings():
4301
- yield self.m.get(b.key, b)
4302
-
4303
-
4304
- def injector_override(p: InjectorBindings, *args: InjectorBindingOrBindings) -> InjectorBindings:
4305
- m: ta.Dict[InjectorKey, InjectorBinding] = {}
4306
-
4307
- for b in as_injector_bindings(*args).bindings():
4308
- if b.key in m:
4309
- raise DuplicateInjectorKeyError(b.key)
4310
- m[b.key] = b
4311
-
4312
- return OverridesInjectorBindings(p, m)
4313
-
4314
-
4315
- ##
4316
-
4317
-
4318
4294
  def build_injector_provider_map(bs: InjectorBindings) -> ta.Mapping[InjectorKey, InjectorProvider]:
4319
4295
  pm: ta.Dict[InjectorKey, InjectorProvider] = {}
4320
4296
  am: ta.Dict[InjectorKey, ta.List[InjectorProvider]] = {}
@@ -4338,6 +4314,31 @@ def build_injector_provider_map(bs: InjectorBindings) -> ta.Mapping[InjectorKey,
4338
4314
  return pm
4339
4315
 
4340
4316
 
4317
+ ###
4318
+ # overrides
4319
+
4320
+
4321
+ @dc.dataclass(frozen=True)
4322
+ class OverridesInjectorBindings(InjectorBindings):
4323
+ p: InjectorBindings
4324
+ m: ta.Mapping[InjectorKey, InjectorBinding]
4325
+
4326
+ def bindings(self) -> ta.Iterator[InjectorBinding]:
4327
+ for b in self.p.bindings():
4328
+ yield self.m.get(b.key, b)
4329
+
4330
+
4331
+ def injector_override(p: InjectorBindings, *args: InjectorBindingOrBindings) -> InjectorBindings:
4332
+ m: ta.Dict[InjectorKey, InjectorBinding] = {}
4333
+
4334
+ for b in as_injector_bindings(*args).bindings():
4335
+ if b.key in m:
4336
+ raise DuplicateInjectorKeyError(b.key)
4337
+ m[b.key] = b
4338
+
4339
+ return OverridesInjectorBindings(p, m)
4340
+
4341
+
4341
4342
  ###
4342
4343
  # scopes
4343
4344
 
@@ -4362,7 +4363,7 @@ class InjectorScope(abc.ABC): # noqa
4362
4363
  @dc.dataclass(frozen=True)
4363
4364
  class State:
4364
4365
  seeds: ta.Dict[InjectorKey, ta.Any]
4365
- prvs: ta.Dict[InjectorKey, ta.Any] = dc.field(default_factory=dict)
4366
+ provisions: ta.Dict[InjectorKey, ta.Any] = dc.field(default_factory=dict)
4366
4367
 
4367
4368
  def new_state(self, vs: ta.Mapping[InjectorKey, ta.Any]) -> State:
4368
4369
  vs = dict(vs)
@@ -4442,11 +4443,11 @@ class ScopedInjectorProvider(InjectorProvider):
4442
4443
  def pfn(i: Injector) -> ta.Any:
4443
4444
  st = i[self.sc].state()
4444
4445
  try:
4445
- return st.prvs[self.k]
4446
+ return st.provisions[self.k]
4446
4447
  except KeyError:
4447
4448
  pass
4448
4449
  v = ufn(i)
4449
- st.prvs[self.k] = v
4450
+ st.provisions[self.k] = v
4450
4451
  return v
4451
4452
 
4452
4453
  ufn = self.p.provider_fn()
@@ -4470,9 +4471,7 @@ class _ScopeSeedInjectorProvider(InjectorProvider):
4470
4471
 
4471
4472
 
4472
4473
  def bind_injector_scope(sc: ta.Type[InjectorScope]) -> InjectorBindingOrBindings:
4473
- return as_injector_bindings(
4474
- InjectorBinder.bind(sc, singleton=True),
4475
- )
4474
+ return InjectorBinder.bind(sc, singleton=True)
4476
4475
 
4477
4476
 
4478
4477
  #
@@ -5012,6 +5011,8 @@ class InjectionApi:
5012
5011
  def as_bindings(self, *args: InjectorBindingOrBindings) -> InjectorBindings:
5013
5012
  return as_injector_bindings(*args)
5014
5013
 
5014
+ # overrides
5015
+
5015
5016
  def override(self, p: InjectorBindings, *args: InjectorBindingOrBindings) -> InjectorBindings:
5016
5017
  return injector_override(p, *args)
5017
5018
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ominfra
3
- Version: 0.0.0.dev178
3
+ Version: 0.0.0.dev179
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.dev178
16
- Requires-Dist: omlish==0.0.0.dev178
15
+ Requires-Dist: omdev==0.0.0.dev179
16
+ Requires-Dist: omlish==0.0.0.dev179
17
17
  Provides-Extra: all
18
18
  Requires-Dist: paramiko~=3.5; extra == "all"
19
19
  Requires-Dist: asyncssh~=2.18; extra == "all"
@@ -49,15 +49,15 @@ ominfra/manage/deploy/commands.py,sha256=U74HYQ4nhvH7znAKyXGOmZfdnll2gMWxKWVW4Gz
49
49
  ominfra/manage/deploy/conf.py,sha256=fNfFlIb-bB3KAzaYZcjrbqaqKSiSq0Lpk0mIF6WgXiw,5410
50
50
  ominfra/manage/deploy/config.py,sha256=kPpl8TRisz295cM4oj-RHA6oh5jdcJ_N9pVpkl_doO8,114
51
51
  ominfra/manage/deploy/deploy.py,sha256=vyBTbBm51HhRE-MQNvxEt39F8uOYsB4ToqZ3zmVkpqU,819
52
- ominfra/manage/deploy/driver.py,sha256=ccLiVoZz_GnhQ3FRPFCu9hzsU6wsOWTOmHeYNBRIZkg,1576
52
+ ominfra/manage/deploy/driver.py,sha256=kSriXFC8L_EpOcHFGxNZDBGyxV_fZAAF95y-czisnwE,1352
53
53
  ominfra/manage/deploy/git.py,sha256=g4wzUuSu9HwWSDhdVX-7BvA2htMwtWbRcHaoDy-xOJ4,3960
54
- ominfra/manage/deploy/inject.py,sha256=JHQexbf-789mWL8GTSxyd4SnTbDB0nqwSyiJp-3QvAM,2834
55
- ominfra/manage/deploy/interp.py,sha256=OKkenH8YKEW_mEDR6X7_ZLxK9a1Ox6KHSwFPTHT6OzA,1029
54
+ ominfra/manage/deploy/inject.py,sha256=eTQC8Kyk8S8ogTJqti2lTwD2j7ha5qQG6KxqeIpLoxU,3610
55
+ ominfra/manage/deploy/interp.py,sha256=_5fuHrY5ZA0eGbnNcOqAhAMSWI1UNvbm0l29eDjE5fI,1037
56
56
  ominfra/manage/deploy/specs.py,sha256=usi5AmTlv8OGFcwhVHnu8Qrz1Criu5QP6_ScNMi9ehM,3748
57
57
  ominfra/manage/deploy/tags.py,sha256=NVEJhHKMwoDuCFd8lInH_jIe99FQILBX3wrulh3GiDg,5166
58
58
  ominfra/manage/deploy/tmp.py,sha256=FqXoVpIpVe8-KWNu7kXt37A4jKdK_y7h_YFvtrUoOG8,729
59
59
  ominfra/manage/deploy/types.py,sha256=ZcIoheZ3zW7n0IZiqTRW_Uo3JyWWeWg5nyKGryvGc2I,112
60
- ominfra/manage/deploy/venvs.py,sha256=h_9Bb4NpvXqO2Hb5t_5qbWs3zfMDPfmKZvMACJ4CY5M,1584
60
+ ominfra/manage/deploy/venvs.py,sha256=1Ic3yKap9bTduqHorz1MpmSiQPh9x-vxhLLxgpVpRdc,1592
61
61
  ominfra/manage/deploy/paths/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
62
62
  ominfra/manage/deploy/paths/inject.py,sha256=X81C-Qhef1LQ7tILWvkomBwFTvgooLVmWRnKL7TeVoI,596
63
63
  ominfra/manage/deploy/paths/manager.py,sha256=Dnl8euyZQYDGwDzkMvgPAwOssseducr5kP6T0qzVXQk,929
@@ -87,8 +87,8 @@ ominfra/manage/targets/inject.py,sha256=P4597xWM-V3I_gCt2O71OLhYQkkXtuJvkYRsIbhh
87
87
  ominfra/manage/targets/targets.py,sha256=7GP6UAZyJFEhpkJN6UQdpr_WN3p7C76v-s445y-WB6U,1885
88
88
  ominfra/scripts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
89
89
  ominfra/scripts/journald2aws.py,sha256=yEnBAd0Q_3lBkVoTvlJ_uCcUxz7Ckn2qoSWZVhMihvQ,157696
90
- ominfra/scripts/manage.py,sha256=XDt86ZEFjcShexhLQjmse1N6f_dk7AVVtozzETsNUdY,324293
91
- ominfra/scripts/supervisor.py,sha256=6RMBLbB4pMNaJlnOBwhdpuhMqv6NDrjTup9SYzKsEjo,281844
90
+ ominfra/scripts/manage.py,sha256=8amo3uZzto1lHwrPANYIiQANnI4tg7d2tYPZpLQxOek,327303
91
+ ominfra/scripts/supervisor.py,sha256=fjUREQahtEy3FmuIVJsJIDNKNt002dCSjQO6OYq64SY,281855
92
92
  ominfra/supervisor/LICENSE.txt,sha256=yvqaMNsDhWxziHa9ien6qCW1SkZv-DQlAg96XjfSee8,1746
93
93
  ominfra/supervisor/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
94
94
  ominfra/supervisor/__main__.py,sha256=I0yFw-C08OOiZ3BF6lF1Oiv789EQXu-_j6whDhQUTEA,66
@@ -130,9 +130,9 @@ ominfra/tailscale/api.py,sha256=C5-t_b6jZXUWcy5k8bXm7CFnk73pSdrlMOgGDeGVrpw,1370
130
130
  ominfra/tailscale/cli.py,sha256=h6akQJMl0KuWLHS7Ur6WcBZ2JwF0DJQhsPTnFBdGyNk,3571
131
131
  ominfra/tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
132
132
  ominfra/tools/listresources.py,sha256=4qVg5txsb10EHhvqXXeM6gJ2jx9LbroEnPydDv1uXs0,6176
133
- ominfra-0.0.0.dev178.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
134
- ominfra-0.0.0.dev178.dist-info/METADATA,sha256=Kfw95dyWOXq2P3oSLxG3ObbDVl139_CQAnrZy5k6QtE,731
135
- ominfra-0.0.0.dev178.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
136
- ominfra-0.0.0.dev178.dist-info/entry_points.txt,sha256=kgecQ2MgGrM9qK744BoKS3tMesaC3yjLnl9pa5CRczg,37
137
- ominfra-0.0.0.dev178.dist-info/top_level.txt,sha256=E-b2OHkk_AOBLXHYZQ2EOFKl-_6uOGd8EjeG-Zy6h_w,8
138
- ominfra-0.0.0.dev178.dist-info/RECORD,,
133
+ ominfra-0.0.0.dev179.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
134
+ ominfra-0.0.0.dev179.dist-info/METADATA,sha256=DToWITQGiSWlecrUHlTZfyqAdadg-kSWUpZb8auv38g,731
135
+ ominfra-0.0.0.dev179.dist-info/WHEEL,sha256=PZUExdf71Ui_so67QXpySuHtCi3-J3wvF4ORK6k_S8U,91
136
+ ominfra-0.0.0.dev179.dist-info/entry_points.txt,sha256=kgecQ2MgGrM9qK744BoKS3tMesaC3yjLnl9pa5CRczg,37
137
+ ominfra-0.0.0.dev179.dist-info/top_level.txt,sha256=E-b2OHkk_AOBLXHYZQ2EOFKl-_6uOGd8EjeG-Zy6h_w,8
138
+ ominfra-0.0.0.dev179.dist-info/RECORD,,