clock-pattern 0.5.0__tar.gz → 0.7.0__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.
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/PKG-INFO +16 -1
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/README.md +14 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/__init__.py +1 -1
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/pyproject.toml +1 -2
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/.gitignore +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/LICENSE.md +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/clocks/__init__.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/clocks/system_clock.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/clocks/testing/__init__.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/clocks/testing/fixed_clock.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/clocks/testing/mock_clock.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/clocks/utc_clock.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/models/__init__.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/models/clock.py +0 -0
- {clock_pattern-0.5.0 → clock_pattern-0.7.0}/clock_pattern/py.typed +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: clock-pattern
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.7.0
|
|
4
4
|
Summary: The Clock Pattern is a Python package that turns time into an injectable dependency.
|
|
5
5
|
Project-URL: Homepage, https://github.com/adriamontoto/clock-pattern
|
|
6
6
|
Project-URL: Repository, https://github.com/adriamontoto/clock-pattern
|
|
@@ -17,6 +17,7 @@ Classifier: Programming Language :: Python :: 3
|
|
|
17
17
|
Classifier: Programming Language :: Python :: 3.11
|
|
18
18
|
Classifier: Programming Language :: Python :: 3.12
|
|
19
19
|
Classifier: Programming Language :: Python :: 3.13
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
20
21
|
Classifier: Typing :: Typed
|
|
21
22
|
Requires-Python: >=3.11
|
|
22
23
|
Requires-Dist: value-object-pattern>=0.6.0
|
|
@@ -42,6 +43,9 @@ Description-Content-Type: text/markdown
|
|
|
42
43
|
<a href="https://pepy.tech/projects/clock-pattern" target="_blank">
|
|
43
44
|
<img src="https://static.pepy.tech/badge/clock-pattern/month" alt="Package Downloads">
|
|
44
45
|
</a>
|
|
46
|
+
<a href="https://deepwiki.com/adriamontoto/clock-pattern" target="_blank">
|
|
47
|
+
<img src="https://img.shields.io/badge/DeepWiki-adriamontoto%2Fclock--pattern-blue.svg?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAyCAYAAAAnWDnqAAAAAXNSR0IArs4c6QAAA05JREFUaEPtmUtyEzEQhtWTQyQLHNak2AB7ZnyXZMEjXMGeK/AIi+QuHrMnbChYY7MIh8g01fJoopFb0uhhEqqcbWTp06/uv1saEDv4O3n3dV60RfP947Mm9/SQc0ICFQgzfc4CYZoTPAswgSJCCUJUnAAoRHOAUOcATwbmVLWdGoH//PB8mnKqScAhsD0kYP3j/Yt5LPQe2KvcXmGvRHcDnpxfL2zOYJ1mFwrryWTz0advv1Ut4CJgf5uhDuDj5eUcAUoahrdY/56ebRWeraTjMt/00Sh3UDtjgHtQNHwcRGOC98BJEAEymycmYcWwOprTgcB6VZ5JK5TAJ+fXGLBm3FDAmn6oPPjR4rKCAoJCal2eAiQp2x0vxTPB3ALO2CRkwmDy5WohzBDwSEFKRwPbknEggCPB/imwrycgxX2NzoMCHhPkDwqYMr9tRcP5qNrMZHkVnOjRMWwLCcr8ohBVb1OMjxLwGCvjTikrsBOiA6fNyCrm8V1rP93iVPpwaE+gO0SsWmPiXB+jikdf6SizrT5qKasx5j8ABbHpFTx+vFXp9EnYQmLx02h1QTTrl6eDqxLnGjporxl3NL3agEvXdT0WmEost648sQOYAeJS9Q7bfUVoMGnjo4AZdUMQku50McDcMWcBPvr0SzbTAFDfvJqwLzgxwATnCgnp4wDl6Aa+Ax283gghmj+vj7feE2KBBRMW3FzOpLOADl0Isb5587h/U4gGvkt5v60Z1VLG8BhYjbzRwyQZemwAd6cCR5/XFWLYZRIMpX39AR0tjaGGiGzLVyhse5C9RKC6ai42ppWPKiBagOvaYk8lO7DajerabOZP46Lby5wKjw1HCRx7p9sVMOWGzb/vA1hwiWc6jm3MvQDTogQkiqIhJV0nBQBTU+3okKCFDy9WwferkHjtxib7t3xIUQtHxnIwtx4mpg26/HfwVNVDb4oI9RHmx5WGelRVlrtiw43zboCLaxv46AZeB3IlTkwouebTr1y2NjSpHz68WNFjHvupy3q8TFn3Hos2IAk4Ju5dCo8B3wP7VPr/FGaKiG+T+v+TQqIrOqMTL1VdWV1DdmcbO8KXBz6esmYWYKPwDL5b5FA1a0hwapHiom0r/cKaoqr+27/XcrS5UwSMbQAAAABJRU5ErkJggg==" alt="Project Documentation">
|
|
48
|
+
</a>
|
|
45
49
|
</p>
|
|
46
50
|
|
|
47
51
|
The **Clock Pattern** is a Python 🐍 package that turns time into an injectable dependency 🧩. By replacing ad-hoc datetime.now() calls with a swappable Clock interface 🕰️ you unlock deterministic tests 🧪, decouple business logic from the OS clock, and gain the freedom to swap in high-precision or logical clocks without touching domain code.
|
|
@@ -50,6 +54,7 @@ The **Clock Pattern** is a Python 🐍 package that turns time into an injectabl
|
|
|
50
54
|
## Table of Contents
|
|
51
55
|
|
|
52
56
|
- [📥 Installation](#installation)
|
|
57
|
+
- [📚 Documentation](#documentation)
|
|
53
58
|
- [💻 Utilization](#utilization)
|
|
54
59
|
- [📚 Available Clocks](#available-clocks)
|
|
55
60
|
- [🎄 Real-Life Case: Christmas Detector Service](#real-life-case-christmas-detector-service)
|
|
@@ -74,6 +79,16 @@ pip install clock-pattern
|
|
|
74
79
|
<a href="#readme-top">🔼 Back to top</a>
|
|
75
80
|
</p><br><br>
|
|
76
81
|
|
|
82
|
+
<a name="documentation"></a>
|
|
83
|
+
|
|
84
|
+
## 📚 Documentation
|
|
85
|
+
|
|
86
|
+
This [project's documentation](https://deepwiki.com/adriamontoto/clock-pattern) is powered by DeepWiki, which provides a comprehensive overview of the **Clock Pattern** and its usage.
|
|
87
|
+
|
|
88
|
+
<p align="right">
|
|
89
|
+
<a href="#readme-top">🔼 Back to top</a>
|
|
90
|
+
</p><br><br>
|
|
91
|
+
|
|
77
92
|
<a name="utilization"></a>
|
|
78
93
|
|
|
79
94
|
## 💻 Utilization
|
|
@@ -18,6 +18,9 @@
|
|
|
18
18
|
<a href="https://pepy.tech/projects/clock-pattern" target="_blank">
|
|
19
19
|
<img src="https://static.pepy.tech/badge/clock-pattern/month" alt="Package Downloads">
|
|
20
20
|
</a>
|
|
21
|
+
<a href="https://deepwiki.com/adriamontoto/clock-pattern" target="_blank">
|
|
22
|
+
<img src="https://img.shields.io/badge/DeepWiki-adriamontoto%2Fclock--pattern-blue.svg?logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAyCAYAAAAnWDnqAAAAAXNSR0IArs4c6QAAA05JREFUaEPtmUtyEzEQhtWTQyQLHNak2AB7ZnyXZMEjXMGeK/AIi+QuHrMnbChYY7MIh8g01fJoopFb0uhhEqqcbWTp06/uv1saEDv4O3n3dV60RfP947Mm9/SQc0ICFQgzfc4CYZoTPAswgSJCCUJUnAAoRHOAUOcATwbmVLWdGoH//PB8mnKqScAhsD0kYP3j/Yt5LPQe2KvcXmGvRHcDnpxfL2zOYJ1mFwrryWTz0advv1Ut4CJgf5uhDuDj5eUcAUoahrdY/56ebRWeraTjMt/00Sh3UDtjgHtQNHwcRGOC98BJEAEymycmYcWwOprTgcB6VZ5JK5TAJ+fXGLBm3FDAmn6oPPjR4rKCAoJCal2eAiQp2x0vxTPB3ALO2CRkwmDy5WohzBDwSEFKRwPbknEggCPB/imwrycgxX2NzoMCHhPkDwqYMr9tRcP5qNrMZHkVnOjRMWwLCcr8ohBVb1OMjxLwGCvjTikrsBOiA6fNyCrm8V1rP93iVPpwaE+gO0SsWmPiXB+jikdf6SizrT5qKasx5j8ABbHpFTx+vFXp9EnYQmLx02h1QTTrl6eDqxLnGjporxl3NL3agEvXdT0WmEost648sQOYAeJS9Q7bfUVoMGnjo4AZdUMQku50McDcMWcBPvr0SzbTAFDfvJqwLzgxwATnCgnp4wDl6Aa+Ax283gghmj+vj7feE2KBBRMW3FzOpLOADl0Isb5587h/U4gGvkt5v60Z1VLG8BhYjbzRwyQZemwAd6cCR5/XFWLYZRIMpX39AR0tjaGGiGzLVyhse5C9RKC6ai42ppWPKiBagOvaYk8lO7DajerabOZP46Lby5wKjw1HCRx7p9sVMOWGzb/vA1hwiWc6jm3MvQDTogQkiqIhJV0nBQBTU+3okKCFDy9WwferkHjtxib7t3xIUQtHxnIwtx4mpg26/HfwVNVDb4oI9RHmx5WGelRVlrtiw43zboCLaxv46AZeB3IlTkwouebTr1y2NjSpHz68WNFjHvupy3q8TFn3Hos2IAk4Ju5dCo8B3wP7VPr/FGaKiG+T+v+TQqIrOqMTL1VdWV1DdmcbO8KXBz6esmYWYKPwDL5b5FA1a0hwapHiom0r/cKaoqr+27/XcrS5UwSMbQAAAABJRU5ErkJggg==" alt="Project Documentation">
|
|
23
|
+
</a>
|
|
21
24
|
</p>
|
|
22
25
|
|
|
23
26
|
The **Clock Pattern** is a Python 🐍 package that turns time into an injectable dependency 🧩. By replacing ad-hoc datetime.now() calls with a swappable Clock interface 🕰️ you unlock deterministic tests 🧪, decouple business logic from the OS clock, and gain the freedom to swap in high-precision or logical clocks without touching domain code.
|
|
@@ -26,6 +29,7 @@ The **Clock Pattern** is a Python 🐍 package that turns time into an injectabl
|
|
|
26
29
|
## Table of Contents
|
|
27
30
|
|
|
28
31
|
- [📥 Installation](#installation)
|
|
32
|
+
- [📚 Documentation](#documentation)
|
|
29
33
|
- [💻 Utilization](#utilization)
|
|
30
34
|
- [📚 Available Clocks](#available-clocks)
|
|
31
35
|
- [🎄 Real-Life Case: Christmas Detector Service](#real-life-case-christmas-detector-service)
|
|
@@ -50,6 +54,16 @@ pip install clock-pattern
|
|
|
50
54
|
<a href="#readme-top">🔼 Back to top</a>
|
|
51
55
|
</p><br><br>
|
|
52
56
|
|
|
57
|
+
<a name="documentation"></a>
|
|
58
|
+
|
|
59
|
+
## 📚 Documentation
|
|
60
|
+
|
|
61
|
+
This [project's documentation](https://deepwiki.com/adriamontoto/clock-pattern) is powered by DeepWiki, which provides a comprehensive overview of the **Clock Pattern** and its usage.
|
|
62
|
+
|
|
63
|
+
<p align="right">
|
|
64
|
+
<a href="#readme-top">🔼 Back to top</a>
|
|
65
|
+
</p><br><br>
|
|
66
|
+
|
|
53
67
|
<a name="utilization"></a>
|
|
54
68
|
|
|
55
69
|
## 💻 Utilization
|
|
@@ -26,6 +26,7 @@ classifiers = [
|
|
|
26
26
|
'Programming Language :: Python :: 3.11',
|
|
27
27
|
'Programming Language :: Python :: 3.12',
|
|
28
28
|
'Programming Language :: Python :: 3.13',
|
|
29
|
+
'Programming Language :: Python :: 3.14',
|
|
29
30
|
]
|
|
30
31
|
keywords = [
|
|
31
32
|
'python',
|
|
@@ -47,7 +48,6 @@ Issues = 'https://github.com/adriamontoto/clock-pattern/issues'
|
|
|
47
48
|
|
|
48
49
|
|
|
49
50
|
[dependency-groups]
|
|
50
|
-
audit = ['pip-audit>=2.9.0']
|
|
51
51
|
coverage = ['coverage[toml]>=7.0.0', 'smokeshow>=0.5.0']
|
|
52
52
|
develop = ['pre-commit>=3.0.0']
|
|
53
53
|
format = ['ruff>=0.11.10']
|
|
@@ -60,7 +60,6 @@ test = [
|
|
|
60
60
|
{ include-group = 'coverage' },
|
|
61
61
|
]
|
|
62
62
|
all = [
|
|
63
|
-
{ include-group = 'audit' },
|
|
64
63
|
{ include-group = 'coverage' },
|
|
65
64
|
{ include-group = 'develop' },
|
|
66
65
|
{ include-group = 'format' },
|
|
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
|