omdev 0.0.0.dev221__py3-none-any.whl → 0.0.0.dev223__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- omdev/ci/cache.py +40 -23
- omdev/ci/ci.py +49 -109
- omdev/ci/cli.py +24 -23
- omdev/ci/docker/__init__.py +0 -0
- omdev/ci/docker/buildcaching.py +69 -0
- omdev/ci/docker/cache.py +57 -0
- omdev/ci/{docker.py → docker/cmds.py} +1 -44
- omdev/ci/docker/imagepulling.py +64 -0
- omdev/ci/docker/inject.py +37 -0
- omdev/ci/docker/utils.py +48 -0
- omdev/ci/github/cache.py +15 -5
- omdev/ci/github/inject.py +30 -0
- omdev/ci/inject.py +61 -0
- omdev/dataserver/__init__.py +1 -0
- omdev/dataserver/handlers.py +198 -0
- omdev/dataserver/http.py +69 -0
- omdev/dataserver/routes.py +49 -0
- omdev/dataserver/server.py +90 -0
- omdev/dataserver/targets.py +89 -0
- omdev/oci/__init__.py +0 -0
- omdev/oci/building.py +221 -0
- omdev/oci/compression.py +8 -0
- omdev/oci/data.py +151 -0
- omdev/oci/datarefs.py +138 -0
- omdev/oci/dataserver.py +61 -0
- omdev/oci/loading.py +142 -0
- omdev/oci/media.py +179 -0
- omdev/oci/packing.py +381 -0
- omdev/oci/repositories.py +159 -0
- omdev/oci/tars.py +144 -0
- omdev/pyproject/resources/python.sh +1 -1
- omdev/scripts/ci.py +1841 -384
- omdev/scripts/interp.py +100 -22
- omdev/scripts/pyproject.py +122 -28
- {omdev-0.0.0.dev221.dist-info → omdev-0.0.0.dev223.dist-info}/METADATA +2 -2
- {omdev-0.0.0.dev221.dist-info → omdev-0.0.0.dev223.dist-info}/RECORD +40 -15
- {omdev-0.0.0.dev221.dist-info → omdev-0.0.0.dev223.dist-info}/LICENSE +0 -0
- {omdev-0.0.0.dev221.dist-info → omdev-0.0.0.dev223.dist-info}/WHEEL +0 -0
- {omdev-0.0.0.dev221.dist-info → omdev-0.0.0.dev223.dist-info}/entry_points.txt +0 -0
- {omdev-0.0.0.dev221.dist-info → omdev-0.0.0.dev223.dist-info}/top_level.txt +0 -0
omdev/scripts/interp.py
CHANGED
@@ -3848,7 +3848,51 @@ class BaseSubprocesses(abc.ABC): # noqa
|
|
3848
3848
|
##
|
3849
3849
|
|
3850
3850
|
|
3851
|
+
@dc.dataclass(frozen=True)
|
3852
|
+
class SubprocessRun:
|
3853
|
+
cmd: ta.Sequence[str]
|
3854
|
+
input: ta.Any = None
|
3855
|
+
timeout: ta.Optional[float] = None
|
3856
|
+
check: bool = False
|
3857
|
+
capture_output: ta.Optional[bool] = None
|
3858
|
+
kwargs: ta.Optional[ta.Mapping[str, ta.Any]] = None
|
3859
|
+
|
3860
|
+
|
3861
|
+
@dc.dataclass(frozen=True)
|
3862
|
+
class SubprocessRunOutput(ta.Generic[T]):
|
3863
|
+
proc: T
|
3864
|
+
|
3865
|
+
returncode: int # noqa
|
3866
|
+
|
3867
|
+
stdout: ta.Optional[bytes] = None
|
3868
|
+
stderr: ta.Optional[bytes] = None
|
3869
|
+
|
3870
|
+
|
3851
3871
|
class AbstractSubprocesses(BaseSubprocesses, abc.ABC):
|
3872
|
+
@abc.abstractmethod
|
3873
|
+
def run_(self, run: SubprocessRun) -> SubprocessRunOutput:
|
3874
|
+
raise NotImplementedError
|
3875
|
+
|
3876
|
+
def run(
|
3877
|
+
self,
|
3878
|
+
*cmd: str,
|
3879
|
+
input: ta.Any = None, # noqa
|
3880
|
+
timeout: ta.Optional[float] = None,
|
3881
|
+
check: bool = False,
|
3882
|
+
capture_output: ta.Optional[bool] = None,
|
3883
|
+
**kwargs: ta.Any,
|
3884
|
+
) -> SubprocessRunOutput:
|
3885
|
+
return self.run_(SubprocessRun(
|
3886
|
+
cmd=cmd,
|
3887
|
+
input=input,
|
3888
|
+
timeout=timeout,
|
3889
|
+
check=check,
|
3890
|
+
capture_output=capture_output,
|
3891
|
+
kwargs=kwargs,
|
3892
|
+
))
|
3893
|
+
|
3894
|
+
#
|
3895
|
+
|
3852
3896
|
@abc.abstractmethod
|
3853
3897
|
def check_call(
|
3854
3898
|
self,
|
@@ -3912,6 +3956,25 @@ class AbstractSubprocesses(BaseSubprocesses, abc.ABC):
|
|
3912
3956
|
|
3913
3957
|
|
3914
3958
|
class Subprocesses(AbstractSubprocesses):
|
3959
|
+
def run_(self, run: SubprocessRun) -> SubprocessRunOutput[subprocess.CompletedProcess]:
|
3960
|
+
proc = subprocess.run(
|
3961
|
+
run.cmd,
|
3962
|
+
input=run.input,
|
3963
|
+
timeout=run.timeout,
|
3964
|
+
check=run.check,
|
3965
|
+
capture_output=run.capture_output or False,
|
3966
|
+
**(run.kwargs or {}),
|
3967
|
+
)
|
3968
|
+
|
3969
|
+
return SubprocessRunOutput(
|
3970
|
+
proc=proc,
|
3971
|
+
|
3972
|
+
returncode=proc.returncode,
|
3973
|
+
|
3974
|
+
stdout=proc.stdout, # noqa
|
3975
|
+
stderr=proc.stderr, # noqa
|
3976
|
+
)
|
3977
|
+
|
3915
3978
|
def check_call(
|
3916
3979
|
self,
|
3917
3980
|
*cmd: str,
|
@@ -3937,6 +4000,30 @@ subprocesses = Subprocesses()
|
|
3937
4000
|
|
3938
4001
|
|
3939
4002
|
class AbstractAsyncSubprocesses(BaseSubprocesses):
|
4003
|
+
@abc.abstractmethod
|
4004
|
+
async def run_(self, run: SubprocessRun) -> SubprocessRunOutput:
|
4005
|
+
raise NotImplementedError
|
4006
|
+
|
4007
|
+
def run(
|
4008
|
+
self,
|
4009
|
+
*cmd: str,
|
4010
|
+
input: ta.Any = None, # noqa
|
4011
|
+
timeout: ta.Optional[float] = None,
|
4012
|
+
check: bool = False,
|
4013
|
+
capture_output: ta.Optional[bool] = None,
|
4014
|
+
**kwargs: ta.Any,
|
4015
|
+
) -> ta.Awaitable[SubprocessRunOutput]:
|
4016
|
+
return self.run_(SubprocessRun(
|
4017
|
+
cmd=cmd,
|
4018
|
+
input=input,
|
4019
|
+
timeout=timeout,
|
4020
|
+
check=check,
|
4021
|
+
capture_output=capture_output,
|
4022
|
+
kwargs=kwargs,
|
4023
|
+
))
|
4024
|
+
|
4025
|
+
#
|
4026
|
+
|
3940
4027
|
@abc.abstractmethod
|
3941
4028
|
async def check_call(
|
3942
4029
|
self,
|
@@ -4204,41 +4291,32 @@ class AsyncioSubprocesses(AbstractAsyncSubprocesses):
|
|
4204
4291
|
|
4205
4292
|
#
|
4206
4293
|
|
4207
|
-
|
4208
|
-
|
4209
|
-
proc: asyncio.subprocess.Process
|
4210
|
-
stdout: ta.Optional[bytes]
|
4211
|
-
stderr: ta.Optional[bytes]
|
4294
|
+
async def run_(self, run: SubprocessRun) -> SubprocessRunOutput[asyncio.subprocess.Process]:
|
4295
|
+
kwargs = dict(run.kwargs or {})
|
4212
4296
|
|
4213
|
-
|
4214
|
-
self,
|
4215
|
-
*cmd: str,
|
4216
|
-
input: ta.Any = None, # noqa
|
4217
|
-
timeout: ta.Optional[float] = None,
|
4218
|
-
check: bool = False, # noqa
|
4219
|
-
capture_output: ta.Optional[bool] = None,
|
4220
|
-
**kwargs: ta.Any,
|
4221
|
-
) -> RunOutput:
|
4222
|
-
if capture_output:
|
4297
|
+
if run.capture_output:
|
4223
4298
|
kwargs.setdefault('stdout', subprocess.PIPE)
|
4224
4299
|
kwargs.setdefault('stderr', subprocess.PIPE)
|
4225
4300
|
|
4226
4301
|
proc: asyncio.subprocess.Process
|
4227
|
-
async with self.popen(*cmd, **kwargs) as proc:
|
4228
|
-
stdout, stderr = await self.communicate(proc, input, timeout)
|
4302
|
+
async with self.popen(*run.cmd, **kwargs) as proc:
|
4303
|
+
stdout, stderr = await self.communicate(proc, run.input, run.timeout)
|
4229
4304
|
|
4230
4305
|
if check and proc.returncode:
|
4231
4306
|
raise subprocess.CalledProcessError(
|
4232
4307
|
proc.returncode,
|
4233
|
-
cmd,
|
4308
|
+
run.cmd,
|
4234
4309
|
output=stdout,
|
4235
4310
|
stderr=stderr,
|
4236
4311
|
)
|
4237
4312
|
|
4238
|
-
return
|
4239
|
-
proc,
|
4240
|
-
|
4241
|
-
|
4313
|
+
return SubprocessRunOutput(
|
4314
|
+
proc=proc,
|
4315
|
+
|
4316
|
+
returncode=check.isinstance(proc.returncode, int),
|
4317
|
+
|
4318
|
+
stdout=stdout,
|
4319
|
+
stderr=stderr,
|
4242
4320
|
)
|
4243
4321
|
|
4244
4322
|
#
|
omdev/scripts/pyproject.py
CHANGED
@@ -5353,18 +5353,34 @@ class ObjMarshalerManager:
|
|
5353
5353
|
return reg
|
5354
5354
|
|
5355
5355
|
if abc.ABC in ty.__bases__:
|
5356
|
-
|
5357
|
-
|
5358
|
-
|
5359
|
-
|
5360
|
-
|
5356
|
+
tn = ty.__name__
|
5357
|
+
impls: ta.List[ta.Tuple[type, str]] = [ # type: ignore[var-annotated]
|
5358
|
+
(ity, ity.__name__)
|
5359
|
+
for ity in deep_subclasses(ty)
|
5360
|
+
if abc.ABC not in ity.__bases__
|
5361
|
+
]
|
5362
|
+
|
5363
|
+
if all(itn.endswith(tn) for _, itn in impls):
|
5364
|
+
impls = [
|
5365
|
+
(ity, snake_case(itn[:-len(tn)]))
|
5366
|
+
for ity, itn in impls
|
5367
|
+
]
|
5368
|
+
|
5369
|
+
dupe_tns = sorted(
|
5370
|
+
dn
|
5371
|
+
for dn, dc in collections.Counter(itn for _, itn in impls).items()
|
5372
|
+
if dc > 1
|
5373
|
+
)
|
5374
|
+
if dupe_tns:
|
5375
|
+
raise KeyError(f'Duplicate impl names for {ty}: {dupe_tns}')
|
5376
|
+
|
5361
5377
|
return PolymorphicObjMarshaler.of([
|
5362
5378
|
PolymorphicObjMarshaler.Impl(
|
5363
5379
|
ity,
|
5364
5380
|
itn,
|
5365
5381
|
rec(ity),
|
5366
5382
|
)
|
5367
|
-
for ity, itn in
|
5383
|
+
for ity, itn in impls
|
5368
5384
|
])
|
5369
5385
|
|
5370
5386
|
if issubclass(ty, enum.Enum):
|
@@ -6088,7 +6104,51 @@ class BaseSubprocesses(abc.ABC): # noqa
|
|
6088
6104
|
##
|
6089
6105
|
|
6090
6106
|
|
6107
|
+
@dc.dataclass(frozen=True)
|
6108
|
+
class SubprocessRun:
|
6109
|
+
cmd: ta.Sequence[str]
|
6110
|
+
input: ta.Any = None
|
6111
|
+
timeout: ta.Optional[float] = None
|
6112
|
+
check: bool = False
|
6113
|
+
capture_output: ta.Optional[bool] = None
|
6114
|
+
kwargs: ta.Optional[ta.Mapping[str, ta.Any]] = None
|
6115
|
+
|
6116
|
+
|
6117
|
+
@dc.dataclass(frozen=True)
|
6118
|
+
class SubprocessRunOutput(ta.Generic[T]):
|
6119
|
+
proc: T
|
6120
|
+
|
6121
|
+
returncode: int # noqa
|
6122
|
+
|
6123
|
+
stdout: ta.Optional[bytes] = None
|
6124
|
+
stderr: ta.Optional[bytes] = None
|
6125
|
+
|
6126
|
+
|
6091
6127
|
class AbstractSubprocesses(BaseSubprocesses, abc.ABC):
|
6128
|
+
@abc.abstractmethod
|
6129
|
+
def run_(self, run: SubprocessRun) -> SubprocessRunOutput:
|
6130
|
+
raise NotImplementedError
|
6131
|
+
|
6132
|
+
def run(
|
6133
|
+
self,
|
6134
|
+
*cmd: str,
|
6135
|
+
input: ta.Any = None, # noqa
|
6136
|
+
timeout: ta.Optional[float] = None,
|
6137
|
+
check: bool = False,
|
6138
|
+
capture_output: ta.Optional[bool] = None,
|
6139
|
+
**kwargs: ta.Any,
|
6140
|
+
) -> SubprocessRunOutput:
|
6141
|
+
return self.run_(SubprocessRun(
|
6142
|
+
cmd=cmd,
|
6143
|
+
input=input,
|
6144
|
+
timeout=timeout,
|
6145
|
+
check=check,
|
6146
|
+
capture_output=capture_output,
|
6147
|
+
kwargs=kwargs,
|
6148
|
+
))
|
6149
|
+
|
6150
|
+
#
|
6151
|
+
|
6092
6152
|
@abc.abstractmethod
|
6093
6153
|
def check_call(
|
6094
6154
|
self,
|
@@ -6152,6 +6212,25 @@ class AbstractSubprocesses(BaseSubprocesses, abc.ABC):
|
|
6152
6212
|
|
6153
6213
|
|
6154
6214
|
class Subprocesses(AbstractSubprocesses):
|
6215
|
+
def run_(self, run: SubprocessRun) -> SubprocessRunOutput[subprocess.CompletedProcess]:
|
6216
|
+
proc = subprocess.run(
|
6217
|
+
run.cmd,
|
6218
|
+
input=run.input,
|
6219
|
+
timeout=run.timeout,
|
6220
|
+
check=run.check,
|
6221
|
+
capture_output=run.capture_output or False,
|
6222
|
+
**(run.kwargs or {}),
|
6223
|
+
)
|
6224
|
+
|
6225
|
+
return SubprocessRunOutput(
|
6226
|
+
proc=proc,
|
6227
|
+
|
6228
|
+
returncode=proc.returncode,
|
6229
|
+
|
6230
|
+
stdout=proc.stdout, # noqa
|
6231
|
+
stderr=proc.stderr, # noqa
|
6232
|
+
)
|
6233
|
+
|
6155
6234
|
def check_call(
|
6156
6235
|
self,
|
6157
6236
|
*cmd: str,
|
@@ -6177,6 +6256,30 @@ subprocesses = Subprocesses()
|
|
6177
6256
|
|
6178
6257
|
|
6179
6258
|
class AbstractAsyncSubprocesses(BaseSubprocesses):
|
6259
|
+
@abc.abstractmethod
|
6260
|
+
async def run_(self, run: SubprocessRun) -> SubprocessRunOutput:
|
6261
|
+
raise NotImplementedError
|
6262
|
+
|
6263
|
+
def run(
|
6264
|
+
self,
|
6265
|
+
*cmd: str,
|
6266
|
+
input: ta.Any = None, # noqa
|
6267
|
+
timeout: ta.Optional[float] = None,
|
6268
|
+
check: bool = False,
|
6269
|
+
capture_output: ta.Optional[bool] = None,
|
6270
|
+
**kwargs: ta.Any,
|
6271
|
+
) -> ta.Awaitable[SubprocessRunOutput]:
|
6272
|
+
return self.run_(SubprocessRun(
|
6273
|
+
cmd=cmd,
|
6274
|
+
input=input,
|
6275
|
+
timeout=timeout,
|
6276
|
+
check=check,
|
6277
|
+
capture_output=capture_output,
|
6278
|
+
kwargs=kwargs,
|
6279
|
+
))
|
6280
|
+
|
6281
|
+
#
|
6282
|
+
|
6180
6283
|
@abc.abstractmethod
|
6181
6284
|
async def check_call(
|
6182
6285
|
self,
|
@@ -6490,41 +6593,32 @@ class AsyncioSubprocesses(AbstractAsyncSubprocesses):
|
|
6490
6593
|
|
6491
6594
|
#
|
6492
6595
|
|
6493
|
-
|
6494
|
-
|
6495
|
-
proc: asyncio.subprocess.Process
|
6496
|
-
stdout: ta.Optional[bytes]
|
6497
|
-
stderr: ta.Optional[bytes]
|
6596
|
+
async def run_(self, run: SubprocessRun) -> SubprocessRunOutput[asyncio.subprocess.Process]:
|
6597
|
+
kwargs = dict(run.kwargs or {})
|
6498
6598
|
|
6499
|
-
|
6500
|
-
self,
|
6501
|
-
*cmd: str,
|
6502
|
-
input: ta.Any = None, # noqa
|
6503
|
-
timeout: ta.Optional[float] = None,
|
6504
|
-
check: bool = False, # noqa
|
6505
|
-
capture_output: ta.Optional[bool] = None,
|
6506
|
-
**kwargs: ta.Any,
|
6507
|
-
) -> RunOutput:
|
6508
|
-
if capture_output:
|
6599
|
+
if run.capture_output:
|
6509
6600
|
kwargs.setdefault('stdout', subprocess.PIPE)
|
6510
6601
|
kwargs.setdefault('stderr', subprocess.PIPE)
|
6511
6602
|
|
6512
6603
|
proc: asyncio.subprocess.Process
|
6513
|
-
async with self.popen(*cmd, **kwargs) as proc:
|
6514
|
-
stdout, stderr = await self.communicate(proc, input, timeout)
|
6604
|
+
async with self.popen(*run.cmd, **kwargs) as proc:
|
6605
|
+
stdout, stderr = await self.communicate(proc, run.input, run.timeout)
|
6515
6606
|
|
6516
6607
|
if check and proc.returncode:
|
6517
6608
|
raise subprocess.CalledProcessError(
|
6518
6609
|
proc.returncode,
|
6519
|
-
cmd,
|
6610
|
+
run.cmd,
|
6520
6611
|
output=stdout,
|
6521
6612
|
stderr=stderr,
|
6522
6613
|
)
|
6523
6614
|
|
6524
|
-
return
|
6525
|
-
proc,
|
6526
|
-
|
6527
|
-
|
6615
|
+
return SubprocessRunOutput(
|
6616
|
+
proc=proc,
|
6617
|
+
|
6618
|
+
returncode=check.isinstance(proc.returncode, int),
|
6619
|
+
|
6620
|
+
stdout=stdout,
|
6621
|
+
stderr=stderr,
|
6528
6622
|
)
|
6529
6623
|
|
6530
6624
|
#
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.2
|
2
2
|
Name: omdev
|
3
|
-
Version: 0.0.0.
|
3
|
+
Version: 0.0.0.dev223
|
4
4
|
Summary: omdev
|
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.
|
15
|
+
Requires-Dist: omlish==0.0.0.dev223
|
16
16
|
Provides-Extra: all
|
17
17
|
Requires-Dist: black~=24.10; extra == "all"
|
18
18
|
Requires-Dist: pycparser~=2.22; extra == "all"
|
@@ -71,22 +71,30 @@ omdev/cexts/_distutils/compilers/options.py,sha256=H7r5IcLvga5Fs3jjXWIT-6ap3JBdu
|
|
71
71
|
omdev/cexts/_distutils/compilers/unixccompiler.py,sha256=o1h8QuyupLntv4F21_XjzAZmCiwwxJuTmOirvBSL-Qw,15419
|
72
72
|
omdev/ci/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
|
73
73
|
omdev/ci/__main__.py,sha256=Jsrv3P7LX2Cg08W7ByZfZ1JQT4lgLDPW1qNAmShFuMk,75
|
74
|
-
omdev/ci/cache.py,sha256=
|
75
|
-
omdev/ci/ci.py,sha256=
|
76
|
-
omdev/ci/cli.py,sha256=
|
74
|
+
omdev/ci/cache.py,sha256=kJkQJPW3fvZ6oERToMeTtqp6SF9x7clVavgmV3LqhTg,4132
|
75
|
+
omdev/ci/ci.py,sha256=Itu2kAKL8bih8zJiB7EEPI15Mb6SXlJnS12KlKX79cg,6330
|
76
|
+
omdev/ci/cli.py,sha256=URmYwsvNSb4w_kwluLB4Em4ooTpiLG4Bh8Anjx0IVIE,6013
|
77
77
|
omdev/ci/compose.py,sha256=vHLuXO5e2paafBC0Kf-OUGoamtIJmQ19r2U3_oikk_g,4541
|
78
78
|
omdev/ci/consts.py,sha256=1puYfksvGOaVWEnbARM_sdMqs8oTn_VvsevsOtLsFno,21
|
79
|
-
omdev/ci/
|
79
|
+
omdev/ci/inject.py,sha256=ZZWaT_GT4SE_lO8st2Y2IjKmeAtL3LD7KjEVr-E6Zzo,1514
|
80
80
|
omdev/ci/requirements.py,sha256=iKAINTDyVQaqESGlfE9OXkKiW_CZ9kP70PEc121Ix-Q,2100
|
81
81
|
omdev/ci/shell.py,sha256=cBPLMKiAJuNpPGj3ou6hpl88Xw7r99xpL91KJBQ0rqw,835
|
82
82
|
omdev/ci/utils.py,sha256=mnf6yZmholvj0s_7JGbaO0Q1EWCn_saSv6BKMQQUCoQ,1450
|
83
|
+
omdev/ci/docker/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
84
|
+
omdev/ci/docker/buildcaching.py,sha256=h22WabBqTojCyvPMmHlCrquDss9K3gTR8pGj7_8Wxpc,1775
|
85
|
+
omdev/ci/docker/cache.py,sha256=ku9S3UWsfbJ582GXsRYRYfWUPAB3Tp6Q3ZVUzHQcvlM,1534
|
86
|
+
omdev/ci/docker/cmds.py,sha256=ZRRfQS9FcsDM2CWtNH9WpcpjS1IMGdR2Yg-zSYx8vps,2719
|
87
|
+
omdev/ci/docker/imagepulling.py,sha256=pUbEd-HqLGkOcc9O0Ki8dnR34F_ta1a8vrv5eKFcP9Y,1757
|
88
|
+
omdev/ci/docker/inject.py,sha256=LzzmbOidzVHoZbFUGZep1udElkmgHm0AU0LdmPFUK5M,1174
|
89
|
+
omdev/ci/docker/utils.py,sha256=URioGRzqyqdJBZyOfzsrUwv5hSJ3WM23_sLHES9vamc,1129
|
83
90
|
omdev/ci/github/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
84
91
|
omdev/ci/github/api.py,sha256=Vqza7Hm1OCSfZYgdXF4exkjneqNjFcdO1pl8qmODskU,5198
|
85
92
|
omdev/ci/github/bootstrap.py,sha256=9OuftAz7CUd7uf2Or3sJFVozQQiwu0RGAlTOQNpLQIY,430
|
86
|
-
omdev/ci/github/cache.py,sha256=
|
93
|
+
omdev/ci/github/cache.py,sha256=_fnh_KpsgixUE6V6FezW3B-FiuAwg46Jm5Ko88pItAY,2053
|
87
94
|
omdev/ci/github/cli.py,sha256=6mG0CllwrOoC7MDzKfKDqBHAjfF0gEI6aT5UAGMmuss,1114
|
88
95
|
omdev/ci/github/client.py,sha256=cSewCoHC4cDM4BMQObcrf5g2wwD6rTlil_h2repAkf8,14341
|
89
96
|
omdev/ci/github/env.py,sha256=FQFjP_m7JWM7es9I51U-6UgJTwAt_UCVHFIYKTd9NKM,394
|
97
|
+
omdev/ci/github/inject.py,sha256=fw-74VG074dkUQsr5OjcISxsGM_YO9VI09JpcJXE6LM,705
|
90
98
|
omdev/cli/__init__.py,sha256=V_l6VP1SZMlJbO-8CJwSuO9TThOy2S_oaPepNYgIrbE,37
|
91
99
|
omdev/cli/__main__.py,sha256=mOJpgc07o0r5luQ1DlX4tk2PqZkgmbwPbdzJ3KmtjgQ,138
|
92
100
|
omdev/cli/_pathhack.py,sha256=kxqb2kHap68Lkh8b211rDbcgj06hidBiAKA3f9posyc,2119
|
@@ -99,6 +107,12 @@ omdev/clipboard/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
99
107
|
omdev/clipboard/clipboard.py,sha256=9HFpcijpn0XDTI89ZRm2WA1G7O4HsTdVXZHqMULu3N0,1630
|
100
108
|
omdev/clipboard/darwin_cf.py,sha256=SDUMfQtT_IJeDEwmsnxe6YyrZS5tPh_7ujkk1dg65Hg,7688
|
101
109
|
omdev/clipboard/linux_x11.py,sha256=oa-mxMRNaZJOdBAZ8Nki-CAGIb63X8OFUTXKjmiwfSo,6718
|
110
|
+
omdev/dataserver/__init__.py,sha256=Y3l4WY4JRi2uLG6kgbGp93fuGfkxkKwZDvhsa0Rwgtk,15
|
111
|
+
omdev/dataserver/handlers.py,sha256=rCptrmV2RnutmGE5MAgjLDYW1QncqsSHhyRBL4H5bsg,5440
|
112
|
+
omdev/dataserver/http.py,sha256=Vfdiri-AX7wNV1ASabU_JNmcKRpwLprWc9FyMUw4FDI,1707
|
113
|
+
omdev/dataserver/routes.py,sha256=7Jai21x5z1t1zbS4mC-Sv2g0uogMJnCAX47WR81QVfI,996
|
114
|
+
omdev/dataserver/server.py,sha256=ySEITCOxOmCXutsfYaFP46gENsg5w9jMeCySUSNUKmE,2333
|
115
|
+
omdev/dataserver/targets.py,sha256=uuewOBIS3x6NM79-xPtQFRlj0-hldP2SLJLTV9Y3J2M,2418
|
102
116
|
omdev/git/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
103
117
|
omdev/git/revisions.py,sha256=1YY3Kf2WSalNVE2TgLXmOETct8HfiVEOqfV-qcvMVr4,1161
|
104
118
|
omdev/git/shallow.py,sha256=WwCujIfEzaUpCRjVEVgkjvV3gLF-O1AuQoXLtm00yU4,2525
|
@@ -140,6 +154,17 @@ omdev/manifests/build.py,sha256=yX0QM6c60aauiF-8oDxrXhkrhhwHcRw_qft_IIW6LD8,8767
|
|
140
154
|
omdev/manifests/main.py,sha256=7zRlyE0BDPqITEbChlTBRGulAvG1nUZPHXrerNExriE,2126
|
141
155
|
omdev/mypy/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
142
156
|
omdev/mypy/debug.py,sha256=WcZw-3Z1njg_KFGqi3DB6RuqbBa3dLArJnjVCuY1Mn0,3003
|
157
|
+
omdev/oci/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
158
|
+
omdev/oci/building.py,sha256=g1TY-a2eHgEamYv0mt1L6rOevwOgdp_cW1xdVdjDzTw,5695
|
159
|
+
omdev/oci/compression.py,sha256=5hs7u0hImsm22GcQBHGYnP6g9dr-lBZ3E_PzdNVD4WY,134
|
160
|
+
omdev/oci/data.py,sha256=1vTTicKXlZskopCkbOwEuj2QUZpBiZclZKHr7I7IAD4,4339
|
161
|
+
omdev/oci/datarefs.py,sha256=3o1yNqw2z8_-rsk7-w1c3Xz8d23zVYhEcfMivs1bmXo,2762
|
162
|
+
omdev/oci/dataserver.py,sha256=ezZlrCxajMgvDR5Gt_rJbCd0kWDHjt62wsrwNYnCNz8,1864
|
163
|
+
omdev/oci/loading.py,sha256=iDMr7JGYRS6CeVrc-LUVjvUA4a49tpgwpJ3y0IImW54,3855
|
164
|
+
omdev/oci/media.py,sha256=PM2w1P3YxyvpfaHEDMD8iyBNJa18oVMOLF7KNb2R-DQ,5351
|
165
|
+
omdev/oci/packing.py,sha256=5cXsBjv6yrch-vXleo8IGoS9GrZ8l2-JJ_jiQQgdhmE,11195
|
166
|
+
omdev/oci/repositories.py,sha256=hOFNMSd5eI3-OQhuUC4x8hczCJko_oW8xvnLUPeZW0k,4321
|
167
|
+
omdev/oci/tars.py,sha256=ijy27sJ0r3TtQGvEIk5ol4-kuHDktVQ88-75pvjSnds,3434
|
143
168
|
omdev/packaging/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
144
169
|
omdev/packaging/marshal.py,sha256=c4Mdy5-s4O51eEKMWWBwkhTGQ1FoxVI2lD6CxI_cF3k,2379
|
145
170
|
omdev/packaging/names.py,sha256=-a7AykFPVR1i6EYJepbe3ABRrZQ_tPPmK5olzbn9HLI,2528
|
@@ -171,15 +196,15 @@ omdev/pyproject/reqs.py,sha256=8feZ71YnGzwKbLK4zO28CDQeNcZIIuq6cnkBhs6M-7E,2406
|
|
171
196
|
omdev/pyproject/venvs.py,sha256=GUurjC7qzGlFL-su4C0YPO_pxbwDAyl1CqyLOB3WLCA,1911
|
172
197
|
omdev/pyproject/resources/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
173
198
|
omdev/pyproject/resources/docker-dev.sh,sha256=DHkz5D18jok_oDolfg2mqrvGRWFoCe9GQo04dR1czcc,838
|
174
|
-
omdev/pyproject/resources/python.sh,sha256=
|
199
|
+
omdev/pyproject/resources/python.sh,sha256=rFaN4SiJ9hdLDXXsDTwugI6zsw6EPkgYMmtacZeTbvw,749
|
175
200
|
omdev/scripts/__init__.py,sha256=MKCvUAEQwsIvwLixwtPlpBqmkMXLCnjjXyAXvVpDwVk,91
|
176
201
|
omdev/scripts/bumpversion.py,sha256=Kn7fo73Hs8uJh3Hi3EIyLOlzLPWAC6dwuD_lZ3cIzuY,1064
|
177
|
-
omdev/scripts/ci.py,sha256=
|
202
|
+
omdev/scripts/ci.py,sha256=jiYvMe1qhfwQDZkKK_nj7CiGJfB9S1XgXLOJwQNbquw,147744
|
178
203
|
omdev/scripts/execrss.py,sha256=mR0G0wERBYtQmVIn63lCIIFb5zkCM6X_XOENDFYDBKc,651
|
179
204
|
omdev/scripts/exectime.py,sha256=S2O4MgtzTsFOY2IUJxsrnOIame9tEFc6aOlKP-F1JSg,1541
|
180
205
|
omdev/scripts/importtrace.py,sha256=oa7CtcWJVMNDbyIEiRHej6ICfABfErMeo4_haIqe18Q,14041
|
181
|
-
omdev/scripts/interp.py,sha256=
|
182
|
-
omdev/scripts/pyproject.py,sha256=
|
206
|
+
omdev/scripts/interp.py,sha256=5xf2pqXWWCslLfje8owc1lWu7t0ovs5fis2pF9Tm25M,145436
|
207
|
+
omdev/scripts/pyproject.py,sha256=Wkefak-zcAT6vBS-OYcvufIVVPBosa8lXYKzSa_3qLg,249601
|
183
208
|
omdev/scripts/slowcat.py,sha256=lssv4yrgJHiWfOiHkUut2p8E8Tq32zB-ujXESQxFFHY,2728
|
184
209
|
omdev/scripts/tmpexec.py,sha256=WTYcf56Tj2qjYV14AWmV8SfT0u6Y8eIU6cKgQRvEK3c,1442
|
185
210
|
omdev/tokens/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
@@ -211,9 +236,9 @@ omdev/tools/json/rendering.py,sha256=tMcjOW5edfozcMSTxxvF7WVTsbYLoe9bCKFh50qyaGw
|
|
211
236
|
omdev/tools/pawk/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
212
237
|
omdev/tools/pawk/__main__.py,sha256=VCqeRVnqT1RPEoIrqHFSu4PXVMg4YEgF4qCQm90-eRI,66
|
213
238
|
omdev/tools/pawk/pawk.py,sha256=zsEkfQX0jF5bn712uqPAyBSdJt2dno1LH2oeSMNfXQI,11424
|
214
|
-
omdev-0.0.0.
|
215
|
-
omdev-0.0.0.
|
216
|
-
omdev-0.0.0.
|
217
|
-
omdev-0.0.0.
|
218
|
-
omdev-0.0.0.
|
219
|
-
omdev-0.0.0.
|
239
|
+
omdev-0.0.0.dev223.dist-info/LICENSE,sha256=B_hVtavaA8zCYDW99DYdcpDLKz1n3BBRjZrcbv8uG8c,1451
|
240
|
+
omdev-0.0.0.dev223.dist-info/METADATA,sha256=5p-9tifCELoH4S5_4ezh2SBXGvh-St_aakL8c1LCaFA,1638
|
241
|
+
omdev-0.0.0.dev223.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
|
242
|
+
omdev-0.0.0.dev223.dist-info/entry_points.txt,sha256=dHLXFmq5D9B8qUyhRtFqTGWGxlbx3t5ejedjrnXNYLU,33
|
243
|
+
omdev-0.0.0.dev223.dist-info/top_level.txt,sha256=1nr7j30fEWgLYHW3lGR9pkdHkb7knv1U1ES1XRNVQ6k,6
|
244
|
+
omdev-0.0.0.dev223.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|