vcorelib 3.2.0__tar.gz → 3.2.2__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.
Files changed (89) hide show
  1. {vcorelib-3.2.0/vcorelib.egg-info → vcorelib-3.2.2}/PKG-INFO +6 -6
  2. {vcorelib-3.2.0 → vcorelib-3.2.2}/README.md +2 -2
  3. {vcorelib-3.2.0 → vcorelib-3.2.2}/pyproject.toml +1 -1
  4. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/__init__.py +2 -2
  5. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/asyncio/__init__.py +7 -8
  6. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/types.py +2 -4
  7. {vcorelib-3.2.0 → vcorelib-3.2.2/vcorelib.egg-info}/PKG-INFO +6 -6
  8. {vcorelib-3.2.0 → vcorelib-3.2.2}/LICENSE +0 -0
  9. {vcorelib-3.2.0 → vcorelib-3.2.2}/setup.cfg +0 -0
  10. {vcorelib-3.2.0 → vcorelib-3.2.2}/setup.py +0 -0
  11. {vcorelib-3.2.0 → vcorelib-3.2.2}/tests/test_names.py +0 -0
  12. {vcorelib-3.2.0 → vcorelib-3.2.2}/tests/test_python.py +0 -0
  13. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/args/__init__.py +0 -0
  14. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/args/newline.py +0 -0
  15. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/asyncio/cli.py +0 -0
  16. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/asyncio/subprocess.py +0 -0
  17. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/dev_requirements.txt +0 -0
  18. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/dict/__init__.py +0 -0
  19. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/dict/cache.py +0 -0
  20. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/dict/codec.py +0 -0
  21. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/dict/config.py +0 -0
  22. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/dict/env.py +0 -0
  23. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/graph/__init__.py +0 -0
  24. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/graph/abc.py +0 -0
  25. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/graph/edge.py +0 -0
  26. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/graph/node.py +0 -0
  27. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/graph/port.py +0 -0
  28. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/__init__.py +0 -0
  29. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/abc.py +0 -0
  30. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/arbiter/__init__.py +0 -0
  31. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/arbiter/base.py +0 -0
  32. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/arbiter/context.py +0 -0
  33. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/arbiter/directory.py +0 -0
  34. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/archive/__init__.py +0 -0
  35. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/cache.py +0 -0
  36. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/decode.py +0 -0
  37. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/encode.py +0 -0
  38. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/fifo.py +0 -0
  39. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/file_writer.py +0 -0
  40. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/io/mapping.py +0 -0
  41. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/logging/__init__.py +0 -0
  42. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/logging/args.py +0 -0
  43. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/logging/time.py +0 -0
  44. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/__init__.py +0 -0
  45. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/analysis/__init__.py +0 -0
  46. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/analysis/average.py +0 -0
  47. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/analysis/buffer.py +0 -0
  48. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/analysis/rate/__init__.py +0 -0
  49. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/analysis/rate/limiter.py +0 -0
  50. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/analysis/weighted.py +0 -0
  51. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/constants.py +0 -0
  52. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/time.py +0 -0
  53. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/math/unit.py +0 -0
  54. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/names.py +0 -0
  55. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/namespace/__init__.py +0 -0
  56. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/namespace/base.py +0 -0
  57. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/namespace/mixin.py +0 -0
  58. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/paths/__init__.py +0 -0
  59. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/paths/base.py +0 -0
  60. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/paths/context.py +0 -0
  61. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/paths/find.py +0 -0
  62. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/paths/hashing.py +0 -0
  63. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/paths/info.py +0 -0
  64. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/paths/info_cache.py +0 -0
  65. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/platform/__init__.py +0 -0
  66. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/py.typed +0 -0
  67. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/python.py +0 -0
  68. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/requirements.txt +0 -0
  69. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/schemas/__init__.py +0 -0
  70. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/schemas/base.py +0 -0
  71. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/schemas/json.py +0 -0
  72. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/schemas/mixins.py +0 -0
  73. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/script/__init__.py +0 -0
  74. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/target/__init__.py +0 -0
  75. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/target/evaluation.py +0 -0
  76. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/target/expression.py +0 -0
  77. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/target/resolver.py +0 -0
  78. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/__init__.py +0 -0
  79. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/dict/__init__.py +0 -0
  80. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/dict/melder.py +0 -0
  81. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/manager.py +0 -0
  82. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/subprocess/__init__.py +0 -0
  83. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/subprocess/run.py +0 -0
  84. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/time/__init__.py +0 -0
  85. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib/task/time/sleep.py +0 -0
  86. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib.egg-info/SOURCES.txt +0 -0
  87. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib.egg-info/dependency_links.txt +0 -0
  88. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib.egg-info/requires.txt +3 -3
  89. {vcorelib-3.2.0 → vcorelib-3.2.2}/vcorelib.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vcorelib
3
- Version: 3.2.0
3
+ Version: 3.2.2
4
4
  Summary: A collection of core Python utilities.
5
5
  Home-page: https://github.com/vkottler/vcorelib
6
6
  Author: Vaughn Kottler
@@ -18,11 +18,11 @@ Requires-Python: >=3.11
18
18
  Description-Content-Type: text/markdown
19
19
  License-File: LICENSE
20
20
  Requires-Dist: ruamel.yaml
21
- Requires-Dist: importlib-resources
21
+ Requires-Dist: tomli-w
22
22
  Requires-Dist: cerberus
23
- Requires-Dist: tomli
24
23
  Requires-Dist: fastjsonschema
25
- Requires-Dist: tomli-w
24
+ Requires-Dist: tomli
25
+ Requires-Dist: importlib-resources
26
26
  Provides-Extra: test
27
27
  Requires-Dist: pylint; extra == "test"
28
28
  Requires-Dist: flake8; extra == "test"
@@ -44,11 +44,11 @@ Requires-Dist: uvloop; (sys_platform != "win32" and sys_platform != "cygwin") an
44
44
  =====================================
45
45
  generator=datazen
46
46
  version=3.1.4
47
- hash=6811e6f81dfb593ebc8f8888cc8b5e44
47
+ hash=a2a4ea5abcd1abefc7a1528728ba2500
48
48
  =====================================
49
49
  -->
50
50
 
51
- # vcorelib ([3.2.0](https://pypi.org/project/vcorelib/))
51
+ # vcorelib ([3.2.2](https://pypi.org/project/vcorelib/))
52
52
 
53
53
  [![python](https://img.shields.io/pypi/pyversions/vcorelib.svg)](https://pypi.org/project/vcorelib/)
54
54
  ![Build Status](https://github.com/vkottler/vcorelib/workflows/Python%20Package/badge.svg)
@@ -2,11 +2,11 @@
2
2
  =====================================
3
3
  generator=datazen
4
4
  version=3.1.4
5
- hash=6811e6f81dfb593ebc8f8888cc8b5e44
5
+ hash=a2a4ea5abcd1abefc7a1528728ba2500
6
6
  =====================================
7
7
  -->
8
8
 
9
- # vcorelib ([3.2.0](https://pypi.org/project/vcorelib/))
9
+ # vcorelib ([3.2.2](https://pypi.org/project/vcorelib/))
10
10
 
11
11
  [![python](https://img.shields.io/pypi/pyversions/vcorelib.svg)](https://pypi.org/project/vcorelib/)
12
12
  ![Build Status](https://github.com/vkottler/vcorelib/workflows/Python%20Package/badge.svg)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta:__legacy__"
4
4
 
5
5
  [project]
6
6
  name = "vcorelib"
7
- version = "3.2.0"
7
+ version = "3.2.2"
8
8
  description = "A collection of core Python utilities."
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -1,7 +1,7 @@
1
1
  # =====================================
2
2
  # generator=datazen
3
3
  # version=3.1.4
4
- # hash=c534340676a353d859a13bc98ed36e98
4
+ # hash=a57b01f6e0ce3490014765c9a7325320
5
5
  # =====================================
6
6
 
7
7
  """
@@ -10,7 +10,7 @@ Useful defaults and other package metadata.
10
10
 
11
11
  DESCRIPTION = "A collection of core Python utilities."
12
12
  PKG_NAME = "vcorelib"
13
- VERSION = "3.2.0"
13
+ VERSION = "3.2.2"
14
14
 
15
15
  # vcorelib-specific content.
16
16
  DEFAULT_INDENT = 2
@@ -64,7 +64,11 @@ def normalize_eloop(
64
64
  """Get the active event loop if one isn't provided explicitly."""
65
65
 
66
66
  if eloop is None:
67
- eloop = _asyncio.get_event_loop()
67
+ try:
68
+ eloop = _asyncio.get_running_loop()
69
+ except RuntimeError:
70
+ eloop = _asyncio.new_event_loop()
71
+ _asyncio.set_event_loop(eloop)
68
72
  return eloop
69
73
 
70
74
 
@@ -129,11 +133,7 @@ def event_setter(
129
133
  LOG.info("Received signal %s.", rep)
130
134
 
131
135
  # Ensure scheduling 'stop_sig.set' is a nominal reaction to this
132
- # signal. If not, raise an exception.
133
- assert (
134
- not stop_sig.is_set()
135
- ), "Stop signal is set but received signal {rep}!"
136
-
136
+ # signal.
137
137
  normalize_eloop(eloop).call_soon_threadsafe(stop_sig.set)
138
138
 
139
139
  return setter
@@ -177,8 +177,7 @@ def run_handle_stop(
177
177
  return loop.run_until_complete(to_run)
178
178
  except KeyboardInterrupt:
179
179
  print("Keyboard interrupt.")
180
- assert not stop_sig.is_set(), "Stop signal already set!"
181
- loop.call_soon_threadsafe(stop_sig.set)
180
+ stop_sig.set()
182
181
 
183
182
 
184
183
  @contextmanager
@@ -137,8 +137,7 @@ class FileExtension(Enum):
137
137
  """
138
138
  for file_ext in FileExtension:
139
139
  if file_ext.is_archive():
140
- for candidate in file_ext.candidates(path, exists_only):
141
- yield candidate
140
+ yield from file_ext.candidates(path, exists_only)
142
141
 
143
142
  @staticmethod
144
143
  def data_candidates(
@@ -149,8 +148,7 @@ class FileExtension(Enum):
149
148
  """
150
149
  for file_ext in FileExtension:
151
150
  if file_ext.is_data():
152
- for candidate in file_ext.candidates(path, exists_only):
153
- yield candidate
151
+ yield from file_ext.candidates(path, exists_only)
154
152
 
155
153
 
156
154
  class LoadResult(NamedTuple):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: vcorelib
3
- Version: 3.2.0
3
+ Version: 3.2.2
4
4
  Summary: A collection of core Python utilities.
5
5
  Home-page: https://github.com/vkottler/vcorelib
6
6
  Author: Vaughn Kottler
@@ -18,11 +18,11 @@ Requires-Python: >=3.11
18
18
  Description-Content-Type: text/markdown
19
19
  License-File: LICENSE
20
20
  Requires-Dist: ruamel.yaml
21
- Requires-Dist: importlib-resources
21
+ Requires-Dist: tomli-w
22
22
  Requires-Dist: cerberus
23
- Requires-Dist: tomli
24
23
  Requires-Dist: fastjsonschema
25
- Requires-Dist: tomli-w
24
+ Requires-Dist: tomli
25
+ Requires-Dist: importlib-resources
26
26
  Provides-Extra: test
27
27
  Requires-Dist: pylint; extra == "test"
28
28
  Requires-Dist: flake8; extra == "test"
@@ -44,11 +44,11 @@ Requires-Dist: uvloop; (sys_platform != "win32" and sys_platform != "cygwin") an
44
44
  =====================================
45
45
  generator=datazen
46
46
  version=3.1.4
47
- hash=6811e6f81dfb593ebc8f8888cc8b5e44
47
+ hash=a2a4ea5abcd1abefc7a1528728ba2500
48
48
  =====================================
49
49
  -->
50
50
 
51
- # vcorelib ([3.2.0](https://pypi.org/project/vcorelib/))
51
+ # vcorelib ([3.2.2](https://pypi.org/project/vcorelib/))
52
52
 
53
53
  [![python](https://img.shields.io/pypi/pyversions/vcorelib.svg)](https://pypi.org/project/vcorelib/)
54
54
  ![Build Status](https://github.com/vkottler/vcorelib/workflows/Python%20Package/badge.svg)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -1,9 +1,9 @@
1
1
  ruamel.yaml
2
- importlib-resources
2
+ tomli-w
3
3
  cerberus
4
- tomli
5
4
  fastjsonschema
6
- tomli-w
5
+ tomli
6
+ importlib-resources
7
7
 
8
8
  [test]
9
9
  pylint