omdev 0.0.0.dev129__tar.gz → 0.0.0.dev131__tar.gz

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.

Potentially problematic release.


This version of omdev might be problematic. Click here for more details.

Files changed (157) hide show
  1. {omdev-0.0.0.dev129/omdev.egg-info → omdev-0.0.0.dev131}/PKG-INFO +2 -2
  2. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/amalg/amalg.py +1 -1
  3. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/interp.py +18 -3
  4. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/pyproject.py +19 -4
  5. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131/omdev.egg-info}/PKG-INFO +2 -2
  6. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev.egg-info/requires.txt +1 -1
  7. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/pyproject.toml +2 -2
  8. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/LICENSE +0 -0
  9. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/MANIFEST.in +0 -0
  10. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/README.rst +0 -0
  11. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/.manifests.json +0 -0
  12. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/__about__.py +0 -0
  13. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/__init__.py +0 -0
  14. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/amalg/__init__.py +0 -0
  15. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/amalg/__main__.py +0 -0
  16. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/antlr/__init__.py +0 -0
  17. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/antlr/consts.py +0 -0
  18. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/antlr/gen.py +0 -0
  19. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/bracepy.py +0 -0
  20. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/__init__.py +0 -0
  21. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/__init__.py +0 -0
  22. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/cache.py +0 -0
  23. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/contexts.py +0 -0
  24. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/currents.py +0 -0
  25. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/fns.py +0 -0
  26. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/resolvers.py +0 -0
  27. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/storage.py +0 -0
  28. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/compute/types.py +0 -0
  29. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/data/__init__.py +0 -0
  30. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/data/actions.py +0 -0
  31. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/data/cache.py +0 -0
  32. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/data/consts.py +0 -0
  33. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/data/defaults.py +0 -0
  34. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/data/manifests.py +0 -0
  35. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cache/data/specs.py +0 -0
  36. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/__init__.py +0 -0
  37. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_boilerplate.cc +0 -0
  38. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/LICENSE +0 -0
  39. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/__init__.py +0 -0
  40. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/build_ext.py +0 -0
  41. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/compilers/__init__.py +0 -0
  42. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/compilers/ccompiler.py +0 -0
  43. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/compilers/options.py +0 -0
  44. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/compilers/unixccompiler.py +0 -0
  45. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/dir_util.py +0 -0
  46. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/errors.py +0 -0
  47. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/extension.py +0 -0
  48. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/file_util.py +0 -0
  49. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/modified.py +0 -0
  50. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/spawn.py +0 -0
  51. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/sysconfig.py +0 -0
  52. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/util.py +0 -0
  53. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/_distutils/version.py +0 -0
  54. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/build.py +0 -0
  55. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/cmake.py +0 -0
  56. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/importhook.py +0 -0
  57. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/magic.py +0 -0
  58. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cexts/scan.py +0 -0
  59. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/classdot.py +0 -0
  60. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/__init__.py +0 -0
  61. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/__main__.py +0 -0
  62. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/_pathhack.py +0 -0
  63. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/clicli.py +0 -0
  64. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/install.py +0 -0
  65. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/main.py +0 -0
  66. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/managers.py +0 -0
  67. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cli/types.py +0 -0
  68. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/clipboard/__init__.py +0 -0
  69. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/clipboard/clipboard.py +0 -0
  70. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/clipboard/darwin_cf.py +0 -0
  71. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/clipboard/linux_x.py +0 -0
  72. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/cmake.py +0 -0
  73. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/findimports.py +0 -0
  74. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/git.py +0 -0
  75. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/imgur.py +0 -0
  76. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/__init__.py +0 -0
  77. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/__main__.py +0 -0
  78. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/cli.py +0 -0
  79. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/inspect.py +0 -0
  80. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/providers.py +0 -0
  81. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/pyenv.py +0 -0
  82. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/resolvers.py +0 -0
  83. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/standalone.py +0 -0
  84. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/system.py +0 -0
  85. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/interp/types.py +0 -0
  86. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/magic/__init__.py +0 -0
  87. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/magic/find.py +0 -0
  88. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/magic/magic.py +0 -0
  89. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/magic/prepare.py +0 -0
  90. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/magic/styles.py +0 -0
  91. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/manifests/__init__.py +0 -0
  92. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/manifests/build.py +0 -0
  93. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/manifests/load.py +0 -0
  94. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/manifests/types.py +0 -0
  95. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/mypy/__init__.py +0 -0
  96. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/mypy/debug.py +0 -0
  97. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/packaging/__init__.py +0 -0
  98. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/packaging/marshal.py +0 -0
  99. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/packaging/names.py +0 -0
  100. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/packaging/requires.py +0 -0
  101. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/packaging/specifiers.py +0 -0
  102. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/packaging/versions.py +0 -0
  103. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pip.py +0 -0
  104. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/__init__.py +0 -0
  105. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/__main__.py +0 -0
  106. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/base.py +0 -0
  107. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/git.py +0 -0
  108. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/lite.py +0 -0
  109. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/main.py +0 -0
  110. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/manifests.py +0 -0
  111. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/precheck/scripts.py +0 -0
  112. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/ptk/__init__.py +0 -0
  113. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/ptk/apps/__init__.py +0 -0
  114. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/ptk/apps/ncdu.py +0 -0
  115. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pycharm/__init__.py +0 -0
  116. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pycharm/__main__.py +0 -0
  117. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pycharm/cli.py +0 -0
  118. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pyproject/__init__.py +0 -0
  119. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pyproject/__main__.py +0 -0
  120. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pyproject/cexts.py +0 -0
  121. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pyproject/cli.py +0 -0
  122. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pyproject/configs.py +0 -0
  123. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pyproject/pkg.py +0 -0
  124. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/pyproject/reqs.py +0 -0
  125. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/revisions.py +0 -0
  126. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/__init__.py +0 -0
  127. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/bumpversion.py +0 -0
  128. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/execrss.py +0 -0
  129. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/exectime.py +0 -0
  130. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/importtrace.py +0 -0
  131. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/slowcat.py +0 -0
  132. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/scripts/tmpexec.py +0 -0
  133. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/secrets.py +0 -0
  134. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tokens.py +0 -0
  135. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/toml/__init__.py +0 -0
  136. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/toml/parser.py +0 -0
  137. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/toml/writer.py +0 -0
  138. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/__init__.py +0 -0
  139. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/doc.py +0 -0
  140. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/docker.py +0 -0
  141. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/git.py +0 -0
  142. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/importscan.py +0 -0
  143. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/mkrelimp.py +0 -0
  144. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/notebook.py +0 -0
  145. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/pawk/__init__.py +0 -0
  146. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/pawk/__main__.py +0 -0
  147. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/pawk/pawk.py +0 -0
  148. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/pip.py +0 -0
  149. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/prof.py +0 -0
  150. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/qr.py +0 -0
  151. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/tools/sqlrepl.py +0 -0
  152. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev/wheelfile.py +0 -0
  153. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev.egg-info/SOURCES.txt +0 -0
  154. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev.egg-info/dependency_links.txt +0 -0
  155. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev.egg-info/entry_points.txt +0 -0
  156. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/omdev.egg-info/top_level.txt +0 -0
  157. {omdev-0.0.0.dev129 → omdev-0.0.0.dev131}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: omdev
3
- Version: 0.0.0.dev129
3
+ Version: 0.0.0.dev131
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.dev129
15
+ Requires-Dist: omlish==0.0.0.dev131
16
16
  Provides-Extra: all
17
17
  Requires-Dist: black~=24.10; extra == "all"
18
18
  Requires-Dist: pycparser~=2.22; extra == "all"
@@ -526,7 +526,7 @@ def gen_amalg(
526
526
  if i:
527
527
  out.write('\n')
528
528
  if f is not mf:
529
- rp = os.path.relpath(f.path, mf.path)
529
+ rp = os.path.relpath(f.path, os.path.dirname(mf.path))
530
530
  else:
531
531
  rp = os.path.basename(f.path)
532
532
  out.write(f'# {rp}\n')
@@ -43,7 +43,7 @@ if sys.version_info < (3, 8):
43
43
  ########################################
44
44
 
45
45
 
46
- # ../../packaging/versions.py
46
+ # ../packaging/versions.py
47
47
  VersionLocalType = ta.Tuple[ta.Union[int, str], ...]
48
48
  VersionCmpPrePostDevType = ta.Union['InfinityVersionType', 'NegativeInfinityVersionType', ta.Tuple[str, int]]
49
49
  _VersionCmpLocalType0 = ta.Tuple[ta.Union[ta.Tuple[int, str], ta.Tuple['NegativeInfinityVersionType', ta.Union[int, str]]], ...] # noqa
@@ -51,10 +51,13 @@ VersionCmpLocalType = ta.Union['NegativeInfinityVersionType', _VersionCmpLocalTy
51
51
  VersionCmpKey = ta.Tuple[int, ta.Tuple[int, ...], VersionCmpPrePostDevType, VersionCmpPrePostDevType, VersionCmpPrePostDevType, VersionCmpLocalType] # noqa
52
52
  VersionComparisonMethod = ta.Callable[[VersionCmpKey, VersionCmpKey], bool]
53
53
 
54
- # ../../../omlish/lite/cached.py
54
+ # ../../omlish/lite/cached.py
55
55
  T = ta.TypeVar('T')
56
56
 
57
- # ../../packaging/specifiers.py
57
+ # ../../omlish/lite/check.py
58
+ SizedT = ta.TypeVar('SizedT', bound=ta.Sized)
59
+
60
+ # ../packaging/specifiers.py
58
61
  UnparsedVersion = ta.Union['Version', str]
59
62
  UnparsedVersionVar = ta.TypeVar('UnparsedVersionVar', bound=UnparsedVersion)
60
63
  CallableVersionOperator = ta.Callable[['Version', str], bool]
@@ -577,6 +580,18 @@ def check_single(vs: ta.Iterable[T]) -> T:
577
580
  return v
578
581
 
579
582
 
583
+ def check_empty(v: SizedT) -> SizedT:
584
+ if len(v):
585
+ raise ValueError(v)
586
+ return v
587
+
588
+
589
+ def check_non_empty(v: SizedT) -> SizedT:
590
+ if not len(v):
591
+ raise ValueError(v)
592
+ return v
593
+
594
+
580
595
  ########################################
581
596
  # ../../../omlish/lite/json.py
582
597
 
@@ -76,7 +76,7 @@ if sys.version_info < (3, 8):
76
76
  ########################################
77
77
 
78
78
 
79
- # ../../packaging/versions.py
79
+ # ../packaging/versions.py
80
80
  VersionLocalType = ta.Tuple[ta.Union[int, str], ...]
81
81
  VersionCmpPrePostDevType = ta.Union['InfinityVersionType', 'NegativeInfinityVersionType', ta.Tuple[str, int]]
82
82
  _VersionCmpLocalType0 = ta.Tuple[ta.Union[ta.Tuple[int, str], ta.Tuple['NegativeInfinityVersionType', ta.Union[int, str]]], ...] # noqa
@@ -84,15 +84,18 @@ VersionCmpLocalType = ta.Union['NegativeInfinityVersionType', _VersionCmpLocalTy
84
84
  VersionCmpKey = ta.Tuple[int, ta.Tuple[int, ...], VersionCmpPrePostDevType, VersionCmpPrePostDevType, VersionCmpPrePostDevType, VersionCmpLocalType] # noqa
85
85
  VersionComparisonMethod = ta.Callable[[VersionCmpKey, VersionCmpKey], bool]
86
86
 
87
- # ../../toml/parser.py
87
+ # ../toml/parser.py
88
88
  TomlParseFloat = ta.Callable[[str], ta.Any]
89
89
  TomlKey = ta.Tuple[str, ...]
90
90
  TomlPos = int # ta.TypeAlias
91
91
 
92
- # ../../../omlish/lite/cached.py
92
+ # ../../omlish/lite/cached.py
93
93
  T = ta.TypeVar('T')
94
94
 
95
- # ../../packaging/specifiers.py
95
+ # ../../omlish/lite/check.py
96
+ SizedT = ta.TypeVar('SizedT', bound=ta.Sized)
97
+
98
+ # ../packaging/specifiers.py
96
99
  UnparsedVersion = ta.Union['Version', str]
97
100
  UnparsedVersionVar = ta.TypeVar('UnparsedVersionVar', bound=UnparsedVersion)
98
101
  CallableVersionOperator = ta.Callable[['Version', str], bool]
@@ -1867,6 +1870,18 @@ def check_single(vs: ta.Iterable[T]) -> T:
1867
1870
  return v
1868
1871
 
1869
1872
 
1873
+ def check_empty(v: SizedT) -> SizedT:
1874
+ if len(v):
1875
+ raise ValueError(v)
1876
+ return v
1877
+
1878
+
1879
+ def check_non_empty(v: SizedT) -> SizedT:
1880
+ if not len(v):
1881
+ raise ValueError(v)
1882
+ return v
1883
+
1884
+
1870
1885
  ########################################
1871
1886
  # ../../../omlish/lite/json.py
1872
1887
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: omdev
3
- Version: 0.0.0.dev129
3
+ Version: 0.0.0.dev131
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.dev129
15
+ Requires-Dist: omlish==0.0.0.dev131
16
16
  Provides-Extra: all
17
17
  Requires-Dist: black~=24.10; extra == "all"
18
18
  Requires-Dist: pycparser~=2.22; extra == "all"
@@ -1,4 +1,4 @@
1
- omlish==0.0.0.dev129
1
+ omlish==0.0.0.dev131
2
2
 
3
3
  [all]
4
4
  black~=24.10
@@ -12,7 +12,7 @@ authors = [
12
12
  urls = {source = 'https://github.com/wrmsr/omlish'}
13
13
  license = {text = 'BSD-3-Clause'}
14
14
  requires-python = '>=3.12'
15
- version = '0.0.0.dev129'
15
+ version = '0.0.0.dev131'
16
16
  classifiers = [
17
17
  'License :: OSI Approved :: BSD License',
18
18
  'Development Status :: 2 - Pre-Alpha',
@@ -22,7 +22,7 @@ classifiers = [
22
22
  ]
23
23
  description = 'omdev'
24
24
  dependencies = [
25
- 'omlish == 0.0.0.dev129',
25
+ 'omlish == 0.0.0.dev131',
26
26
  ]
27
27
 
28
28
  [project.optional-dependencies]
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes