omlish 0.0.0.dev342__py3-none-any.whl → 0.0.0.dev344__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.
Files changed (135) hide show
  1. omlish/__about__.py +2 -2
  2. omlish/algorithm/distribute.py +1 -1
  3. omlish/algorithm/toposort.py +1 -1
  4. omlish/argparse/cli.py +1 -1
  5. omlish/asyncs/asyncio/channels.py +1 -1
  6. omlish/asyncs/asyncio/sockets.py +1 -1
  7. omlish/asyncs/asyncio/streams.py +1 -1
  8. omlish/asyncs/asyncio/subprocesses.py +1 -1
  9. omlish/asyncs/asyncio/timeouts.py +1 -1
  10. omlish/asyncs/asyncio/utils.py +1 -1
  11. omlish/asyncs/bluelet/api.py +1 -1
  12. omlish/asyncs/bluelet/core.py +1 -1
  13. omlish/asyncs/bluelet/events.py +1 -1
  14. omlish/asyncs/bluelet/files.py +1 -1
  15. omlish/asyncs/bluelet/runner.py +1 -1
  16. omlish/asyncs/bluelet/sockets.py +1 -1
  17. omlish/asyncs/buffers.py +1 -1
  18. omlish/asyncs/ioproxy/io.py +1 -1
  19. omlish/asyncs/ioproxy/proxier.py +1 -1
  20. omlish/asyncs/ioproxy/proxy.py +1 -1
  21. omlish/asyncs/ioproxy/typing.py +1 -1
  22. omlish/bootstrap/diag.py +1 -1
  23. omlish/bootstrap/main.py +1 -1
  24. omlish/bootstrap/sys.py +1 -1
  25. omlish/collections/abc.py +1 -1
  26. omlish/collections/ordered.py +6 -0
  27. omlish/collections/unmodifiable.py +9 -0
  28. omlish/configs/formats.py +1 -1
  29. omlish/configs/nginx.py +1 -1
  30. omlish/configs/processing/flattening.py +2 -2
  31. omlish/configs/processing/inheritance.py +1 -1
  32. omlish/configs/processing/matching.py +1 -1
  33. omlish/configs/processing/merging.py +1 -1
  34. omlish/configs/processing/names.py +1 -1
  35. omlish/configs/processing/rewriting.py +1 -1
  36. omlish/configs/processing/strings.py +1 -1
  37. omlish/configs/shadow.py +1 -1
  38. omlish/configs/types.py +1 -1
  39. omlish/datetimes.py +1 -1
  40. omlish/diag/lslocks.py +1 -1
  41. omlish/diag/lsof.py +1 -1
  42. omlish/diag/ps.py +1 -1
  43. omlish/docker/detect.py +1 -1
  44. omlish/docker/ns1.py +1 -1
  45. omlish/docker/ports.py +1 -1
  46. omlish/formats/dotenv.py +1 -1
  47. omlish/formats/edn/parsing.py +1 -1
  48. omlish/formats/ini/sections.py +1 -1
  49. omlish/formats/props.py +1 -1
  50. omlish/formats/toml/parser.py +1 -1
  51. omlish/http/coro/fdio.py +1 -1
  52. omlish/http/coro/server.py +1 -1
  53. omlish/http/coro/simple.py +1 -1
  54. omlish/http/coro/sockets.py +1 -1
  55. omlish/http/handlers.py +1 -1
  56. omlish/http/parsing.py +1 -1
  57. omlish/http/versions.py +1 -1
  58. omlish/io/buffers.py +1 -1
  59. omlish/io/fdio/handlers.py +1 -1
  60. omlish/io/fdio/kqueue.py +1 -1
  61. omlish/io/fdio/manager.py +1 -1
  62. omlish/io/fdio/pollers.py +1 -1
  63. omlish/io/fileno.py +1 -1
  64. omlish/lang/attrs.py +3 -0
  65. omlish/lite/check.py +1 -1
  66. omlish/lite/configs.py +1 -1
  67. omlish/lite/contextmanagers.py +1 -1
  68. omlish/lite/dataclasses.py +1 -1
  69. omlish/lite/imports.py +1 -1
  70. omlish/lite/inject.py +1 -1
  71. omlish/lite/marshal.py +1 -1
  72. omlish/lite/maybes.py +1 -1
  73. omlish/lite/pycharm.py +1 -1
  74. omlish/lite/reprs.py +1 -1
  75. omlish/lite/secrets.py +1 -1
  76. omlish/lite/timeouts.py +1 -1
  77. omlish/lite/types.py +1 -1
  78. omlish/logs/callers.py +1 -1
  79. omlish/logs/filters.py +1 -1
  80. omlish/logs/handlers.py +1 -1
  81. omlish/logs/json.py +1 -1
  82. omlish/logs/protocol.py +1 -1
  83. omlish/logs/standard.py +1 -1
  84. omlish/logs/timing.py +1 -1
  85. omlish/manifests/base.py +1 -1
  86. omlish/manifests/load.py +1 -1
  87. omlish/manifests/types.py +1 -1
  88. omlish/os/atomics.py +1 -1
  89. omlish/os/fcntl.py +1 -1
  90. omlish/os/filemodes.py +1 -1
  91. omlish/os/files.py +1 -1
  92. omlish/os/forkhooks.py +1 -1
  93. omlish/os/journald.py +1 -1
  94. omlish/os/linux.py +1 -1
  95. omlish/os/mangle.py +1 -1
  96. omlish/os/paths.py +1 -1
  97. omlish/os/pidfiles/manager.py +1 -1
  98. omlish/os/pidfiles/pidfile.py +1 -1
  99. omlish/os/pidfiles/pinning.py +1 -1
  100. omlish/os/signals.py +1 -1
  101. omlish/os/temp.py +1 -1
  102. omlish/secrets/ssl.py +1 -1
  103. omlish/secrets/tempssl.py +1 -1
  104. omlish/sockets/addresses.py +1 -1
  105. omlish/sockets/bind.py +1 -1
  106. omlish/sockets/handlers.py +1 -1
  107. omlish/sockets/io.py +1 -1
  108. omlish/sockets/ports.py +1 -1
  109. omlish/sockets/server/handlers.py +1 -1
  110. omlish/sockets/server/server.py +1 -1
  111. omlish/sockets/server/ssl.py +1 -1
  112. omlish/sockets/server/threading.py +1 -1
  113. omlish/sockets/wait.py +1 -1
  114. omlish/sql/queries/params.py +4 -1
  115. omlish/subprocesses/async_.py +1 -1
  116. omlish/subprocesses/base.py +1 -1
  117. omlish/subprocesses/editor.py +1 -1
  118. omlish/subprocesses/run.py +1 -1
  119. omlish/subprocesses/sync.py +1 -1
  120. omlish/subprocesses/utils.py +1 -1
  121. omlish/subprocesses/wrap.py +1 -1
  122. omlish/term/progressbar.py +1 -1
  123. omlish/text/glyphsplit.py +1 -1
  124. omlish/text/indent.py +1 -1
  125. omlish/text/mangle.py +1 -1
  126. omlish/text/minja.py +1 -1
  127. omlish/typedvalues/accessor.py +1 -1
  128. omlish/typedvalues/collection.py +1 -1
  129. omlish/typedvalues/consumer.py +1 -1
  130. {omlish-0.0.0.dev342.dist-info → omlish-0.0.0.dev344.dist-info}/METADATA +1 -1
  131. {omlish-0.0.0.dev342.dist-info → omlish-0.0.0.dev344.dist-info}/RECORD +135 -135
  132. {omlish-0.0.0.dev342.dist-info → omlish-0.0.0.dev344.dist-info}/WHEEL +0 -0
  133. {omlish-0.0.0.dev342.dist-info → omlish-0.0.0.dev344.dist-info}/entry_points.txt +0 -0
  134. {omlish-0.0.0.dev342.dist-info → omlish-0.0.0.dev344.dist-info}/licenses/LICENSE +0 -0
  135. {omlish-0.0.0.dev342.dist-info → omlish-0.0.0.dev344.dist-info}/top_level.txt +0 -0
omlish/logs/json.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
omlish/logs/protocol.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import logging
omlish/logs/standard.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: N802 UP006 UP007
1
+ # ruff: noqa: N802 UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
omlish/logs/timing.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import logging
4
4
  import time
omlish/manifests/base.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import dataclasses as dc
4
4
  import typing as ta
omlish/manifests/load.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  Should be kept somewhat lightweight - used in cli entrypoints.
omlish/manifests/types.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import dataclasses as dc
4
4
  import typing as ta
omlish/os/atomics.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import os
omlish/os/fcntl.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import dataclasses as dc
4
4
  import os
omlish/os/filemodes.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import dataclasses as dc
4
4
  import os
omlish/os/files.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import contextlib
4
4
  import errno
omlish/os/forkhooks.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import os
omlish/os/journald.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP007 UP012
1
+ # ruff: noqa: UP007 UP012 UP045
2
2
  # @omlish-lite
3
3
  import ctypes as ct
4
4
  import logging
omlish/os/linux.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  ➜ ~ cat /etc/os-release
omlish/os/mangle.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
omlish/os/paths.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import os.path
4
4
  import typing as ta
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP007
1
+ # ruff: noqa: UP007 UP045
2
2
  # @omlish-lite
3
3
  import contextlib
4
4
  import os
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP007
1
+ # ruff: noqa: UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  Notes:
omlish/os/signals.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import signal
4
4
  import typing as ta
omlish/os/temp.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import contextlib
4
4
  import os
omlish/secrets/ssl.py CHANGED
@@ -1,5 +1,5 @@
1
1
  # @omlish-lite
2
- # ruff: noqa: UP006 UP007
2
+ # ruff: noqa: UP006 UP007 UP045
3
3
  import dataclasses as dc
4
4
 
5
5
 
omlish/secrets/tempssl.py CHANGED
@@ -1,5 +1,5 @@
1
1
  # @omlish-lite
2
- # ruff: noqa: UP006 UP007
2
+ # ruff: noqa: UP006 UP007 UP045
3
3
  import dataclasses as dc
4
4
  import os.path
5
5
  import tempfile
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
omlish/sockets/bind.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import typing as ta
omlish/sockets/io.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import io
4
4
  import socket
omlish/sockets/ports.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import contextlib
4
4
  import socket
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import concurrent.futures as cf
@@ -1,5 +1,5 @@
1
1
  # @omlish-lite
2
- # ruff: noqa: UP006 UP007
2
+ # ruff: noqa: UP006 UP007 UP045
3
3
  import abc
4
4
  import contextlib
5
5
  import enum
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import dataclasses as dc
4
4
  import logging
@@ -1,5 +1,5 @@
1
1
  # @omlish-lite
2
- # ruff: noqa: UP006 UP007
2
+ # ruff: noqa: UP006 UP007 UP045
3
3
  import threading
4
4
  import time
5
5
  import typing as ta
omlish/sockets/wait.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import socket
4
4
  import threading
@@ -20,12 +20,15 @@ class Param(lang.Final):
20
20
 
21
21
  def __eq__(self, other):
22
22
  if not isinstance(other, Param):
23
- return False
23
+ return NotImplemented
24
24
  if self.n is None and other.n is None:
25
25
  return self is other
26
26
  else:
27
27
  return self.n == other.n
28
28
 
29
+ def __hash__(self):
30
+ return hash(self.n)
31
+
29
32
 
30
33
  ##
31
34
 
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import sys
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import contextlib
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import abc
4
4
  import dataclasses as dc
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import subprocess
4
4
  import typing as ta
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  This bypasses debuggers attaching to spawned subprocess children that look like python processes. See:
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import sys
4
4
  import time
omlish/text/glyphsplit.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  Note: string.Formatter (and string.Template) shouldn't be ignored - if they can be used they probably should be.
omlish/text/indent.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import contextlib
4
4
  import io
omlish/text/mangle.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  import dataclasses as dc
4
4
  import re
omlish/text/minja.py CHANGED
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP006 UP007
1
+ # ruff: noqa: UP006 UP007 UP045
2
2
  # @omlish-lite
3
3
  """
4
4
  TODO:
@@ -124,7 +124,7 @@ class TypedValuesAccessor(
124
124
  #
125
125
 
126
126
  @ta.final
127
- def get_any(self, cls: type[T]) -> ta.Sequence[T]:
127
+ def get_any(self, cls: type[T] | tuple[type[T], ...]) -> ta.Sequence[T]:
128
128
  return self._typed_value_get_any(cls)
129
129
 
130
130
  @abc.abstractmethod
@@ -188,7 +188,7 @@ class TypedValues(
188
188
  else:
189
189
  raise TypeError(key)
190
190
 
191
- _any_dct: dict[type, tuple[TypedValueT, ...]]
191
+ _any_dct: dict[type | tuple[type, ...], tuple[TypedValueT, ...]]
192
192
 
193
193
  def _typed_value_get_any(self, cls):
194
194
  try:
@@ -1,4 +1,4 @@
1
- # ruff: noqa: UP007
1
+ # ruff: noqa: UP007 UP045
2
2
  import dataclasses as dc
3
3
  import typing as ta
4
4
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: omlish
3
- Version: 0.0.0.dev342
3
+ Version: 0.0.0.dev344
4
4
  Summary: omlish
5
5
  Author: wrmsr
6
6
  License: BSD-3-Clause