omdev 0.0.0.dev221__py3-none-any.whl → 0.0.0.dev223__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.
- 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
|