hexkit 7.2.0__tar.gz → 7.2.1__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 (66) hide show
  1. {hexkit-7.2.0/src/hexkit.egg-info → hexkit-7.2.1}/PKG-INFO +1 -1
  2. {hexkit-7.2.0 → hexkit-7.2.1}/pyproject.toml +1 -1
  3. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/correlation.py +10 -5
  4. {hexkit-7.2.0 → hexkit-7.2.1/src/hexkit.egg-info}/PKG-INFO +1 -1
  5. {hexkit-7.2.0 → hexkit-7.2.1}/LICENSE +0 -0
  6. {hexkit-7.2.0 → hexkit-7.2.1}/MANIFEST.in +0 -0
  7. {hexkit-7.2.0 → hexkit-7.2.1}/README.md +0 -0
  8. {hexkit-7.2.0 → hexkit-7.2.1}/setup.cfg +0 -0
  9. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/__init__.py +0 -0
  10. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/__main__.py +0 -0
  11. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/base.py +0 -0
  12. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/config.py +0 -0
  13. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/custom_types.py +0 -0
  14. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/log.py +0 -0
  15. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/opentelemetry.py +0 -0
  16. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/protocols/__init__.py +0 -0
  17. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/protocols/dao.py +0 -0
  18. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/protocols/daopub.py +0 -0
  19. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/protocols/daosub.py +0 -0
  20. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/protocols/eventpub.py +0 -0
  21. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/protocols/eventsub.py +0 -0
  22. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/protocols/objstorage.py +0 -0
  23. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/__init__.py +0 -0
  24. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/__init__.py +0 -0
  25. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/config.py +0 -0
  26. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/provider/__init__.py +0 -0
  27. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/provider/daosub.py +0 -0
  28. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/provider/eventpub.py +0 -0
  29. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/provider/eventsub.py +0 -0
  30. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/provider/utils.py +0 -0
  31. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/testcontainer.py +0 -0
  32. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/akafka/testutils.py +0 -0
  33. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongodb/__init__.py +0 -0
  34. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongodb/migrations/__init__.py +0 -0
  35. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongodb/migrations/_manager.py +0 -0
  36. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongodb/migrations/_utils.py +0 -0
  37. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongodb/migrations/helpers.py +0 -0
  38. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongodb/provider.py +0 -0
  39. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongodb/testutils.py +0 -0
  40. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongokafka/__init__.py +0 -0
  41. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongokafka/provider/__init__.py +0 -0
  42. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongokafka/provider/config.py +0 -0
  43. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongokafka/provider/daopub.py +0 -0
  44. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongokafka/provider/persistent_pub.py +0 -0
  45. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/mongokafka/testutils.py +0 -0
  46. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/__init__.py +0 -0
  47. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/provider.py +0 -0
  48. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/test_files/__init__.py +0 -0
  49. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/test_files/test_file1.yaml +0 -0
  50. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/test_files/test_file2.yaml +0 -0
  51. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/test_files/test_file3.yaml +0 -0
  52. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/test_files/test_file4.yaml +0 -0
  53. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/testutils/__init__.py +0 -0
  54. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/testutils/_fixtures.py +0 -0
  55. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/testutils/_typical_workflow.py +0 -0
  56. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/s3/testutils/_utils.py +0 -0
  57. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/testing/__init__.py +0 -0
  58. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/testing/dao.py +0 -0
  59. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/testing/eventpub.py +0 -0
  60. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/providers/testing/s3.py +0 -0
  61. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/py.typed +0 -0
  62. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit/utils.py +0 -0
  63. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit.egg-info/SOURCES.txt +0 -0
  64. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit.egg-info/dependency_links.txt +0 -0
  65. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit.egg-info/requires.txt +0 -0
  66. {hexkit-7.2.0 → hexkit-7.2.1}/src/hexkit.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hexkit
3
- Version: 7.2.0
3
+ Version: 7.2.1
4
4
  Summary: A Toolkit for Building Microservices using the Hexagonal Architecture
5
5
  Author-email: "German Human Genome Phenome Archive (GHGA)" <contact@ghga.de>
6
6
  License: Apache 2.0
@@ -23,7 +23,7 @@ classifiers = [
23
23
  "Intended Audience :: Developers",
24
24
  ]
25
25
  name = "hexkit"
26
- version = "7.2.0"
26
+ version = "7.2.1"
27
27
  description = "A Toolkit for Building Microservices using the Hexagonal Architecture"
28
28
  dependencies = [
29
29
  "opentelemetry-api >=1.37, <2",
@@ -63,13 +63,13 @@ def new_correlation_id() -> UUID4:
63
63
  return uuid4()
64
64
 
65
65
 
66
- def validate_correlation_id(correlation_id: Any):
66
+ def validate_correlation_id(correlation_id: Any) -> None:
67
67
  """Validate the correlation ID.
68
68
 
69
69
  Raises:
70
- InvalidCorrelationIdError: If the correlation ID is not a UUID.
70
+ InvalidCorrelationIdError: If the correlation ID is not a UUID4.
71
71
  """
72
- if not isinstance(correlation_id, UUID):
72
+ if not isinstance(correlation_id, UUID) or correlation_id.version != 4:
73
73
  raise InvalidCorrelationIdError(correlation_id=correlation_id)
74
74
 
75
75
 
@@ -77,13 +77,18 @@ def correlation_id_from_str(correlation_id: str) -> UUID4:
77
77
  """Convert a string to a UUID4.
78
78
 
79
79
  Raises:
80
- InvalidCorrelationIdError: If the string is not a valid UUID.
80
+ InvalidCorrelationIdError: If the string is not a valid UUID4.
81
81
  """
82
82
  try:
83
- return UUID(correlation_id)
83
+ converted_id = UUID(correlation_id)
84
84
  except ValueError as err:
85
85
  raise InvalidCorrelationIdError(correlation_id=correlation_id) from err
86
86
 
87
+ if converted_id.version != 4:
88
+ raise InvalidCorrelationIdError(correlation_id=correlation_id)
89
+
90
+ return converted_id
91
+
87
92
 
88
93
  @asynccontextmanager
89
94
  async def set_correlation_id(correlation_id: UUID4):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: hexkit
3
- Version: 7.2.0
3
+ Version: 7.2.1
4
4
  Summary: A Toolkit for Building Microservices using the Hexagonal Architecture
5
5
  Author-email: "German Human Genome Phenome Archive (GHGA)" <contact@ghga.de>
6
6
  License: Apache 2.0
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