oe-python-template 0.10.4__py3-none-any.whl → 0.10.6__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.
@@ -9,6 +9,7 @@ import time
9
9
  from typing import Any
10
10
 
11
11
  from pydantic_settings import BaseSettings
12
+ from uptime import boottime, uptime
12
13
 
13
14
  from ..utils import ( # noqa: TID252
14
15
  UNHIDE_SENSITIVE_INFO,
@@ -93,6 +94,7 @@ class Service(BaseService):
93
94
  Returns:
94
95
  dict[str, Any]: Service configuration.
95
96
  """
97
+ bootdatetime = boottime()
96
98
  rtn = {
97
99
  "package": {
98
100
  "version": __version__,
@@ -121,6 +123,8 @@ class Service(BaseService):
121
123
  "hostname": platform.node(),
122
124
  "ip_address": platform.uname().node,
123
125
  "cpu_count": os.cpu_count(),
126
+ "uptime": uptime(),
127
+ "boottime": bootdatetime.isoformat() if bootdatetime else None,
124
128
  },
125
129
  },
126
130
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: oe-python-template
3
- Version: 0.10.4
3
+ Version: 0.10.6
4
4
  Summary: 🧠 Copier template to scaffold Python projects compliant with best practices and modern tooling.
5
5
  Project-URL: Homepage, https://oe-python-template.readthedocs.io/en/latest/
6
6
  Project-URL: Documentation, https://oe-python-template.readthedocs.io/en/latest/
@@ -63,6 +63,7 @@ Requires-Dist: pydantic-settings>=2.8.1
63
63
  Requires-Dist: pydantic>=2.11.3
64
64
  Requires-Dist: sentry-sdk>=2.25.1
65
65
  Requires-Dist: typer>=0.15.1
66
+ Requires-Dist: uptime>=3.0.1
66
67
  Provides-Extra: examples
67
68
  Requires-Dist: jinja2>=3.1.6; extra == 'examples'
68
69
  Requires-Dist: jupyter>=1.1.1; extra == 'examples'
@@ -75,8 +76,7 @@ Description-Content-Type: text/markdown
75
76
 
76
77
  # 🧠 OE Python Template
77
78
 
78
- [![License](https://img.shields.io/github/license/helmut-hoffer-von-ankershoffen/oe-python-template?logo=opensourceinitiative&logoColor=3DA639&labelColor=414042&color=A41831)
79
- ](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/blob/main/LICENSE)
79
+ [![License](https://img.shields.io/github/license/helmut-hoffer-von-ankershoffen/oe-python-template?logo=opensourceinitiative&logoColor=3DA639&labelColor=414042&color=A41831)](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/blob/main/LICENSE)
80
80
  [![PyPI - Python Version](https://img.shields.io/pypi/pyversions/oe-python-template.svg?logo=python&color=204361&labelColor=1E2933)](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/blob/main/noxfile.py)
81
81
  [![CI](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/actions/workflows/test-and-report.yml/badge.svg)](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template/actions/workflows/test-and-report.yml)
82
82
  [![Read the Docs](https://img.shields.io/readthedocs/oe-python-template)](https://oe-python-template.readthedocs.io/en/latest/)
@@ -100,7 +100,7 @@ Description-Content-Type: text/markdown
100
100
  [![Copier](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/copier-org/copier/master/img/badge/badge-grayscale-inverted-border-orange.json)](https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template)
101
101
  [![Open in Dev Containers](https://img.shields.io/static/v1?label=Dev%20Containers&message=Open&color=blue&logo=data:image/svg%2bxml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iI2ZmZiIgZD0iTTE3IDE2VjdsLTYgNU0yIDlWOGwxLTFoMWw0IDMgOC04aDFsNCAyIDEgMXYxNGwtMSAxLTQgMmgtMWwtOC04LTQgM0gzbC0xLTF2LTFsMy0zIi8+PC9zdmc+)](https://vscode.dev/redirect?url=vscode://ms-vscode-remote.remote-containers/cloneInVolume?url=https://github.com/helmut-hoffer-von-ankershoffen/oe-python-template)
102
102
  [![Open in GitHub Codespaces](https://img.shields.io/static/v1?label=GitHub%20Codespaces&message=Open&color=blue&logo=github)](https://github.com/codespaces/new/helmut-hoffer-von-ankershoffen/oe-python-template)
103
- [![Vercel Deploy](https://deploy-badge.vercel.app/vercel/oe-python-template?root=docs)](https://oe-python-template.vercel.app/docs)
103
+ [![Vercel Deploy](https://deploy-badge.vercel.app/vercel/oe-python-template?root=docs)](https://oe-python-template.vercel.app/api/v1/hello/world)
104
104
  [![Better Stack Uptime](https://uptime.betterstack.com/status-badges/v1/monitor/1vze5.svg)](https://helmut-hoffer-von-ankershoffen.betteruptime.com/)
105
105
 
106
106
  <!---
@@ -109,7 +109,10 @@ Description-Content-Type: text/markdown
109
109
  -->
110
110
 
111
111
  > [!TIP]
112
- > 📚 [Online documentation](https://oe-python-template.readthedocs.io/en/latest/) - 📖 [PDF Manual](https://oe-python-template.readthedocs.io/_/downloads/en/latest/pdf/)
112
+ > 📚
113
+ > [Online documentation](https://oe-python-template.readthedocs.io/en/latest/) -
114
+ > 📖
115
+ > [PDF Manual](https://oe-python-template.readthedocs.io/_/downloads/en/latest/pdf/)
113
116
 
114
117
  ---
115
118
 
@@ -12,7 +12,7 @@ oe_python_template/hello/_settings.py,sha256=1z77_B4pWFx_ag9EasgUM01MjKeBwiAhnkh
12
12
  oe_python_template/system/__init__.py,sha256=NNgODkr7AyJjTTJiv3pys7o2z6xi1G96g0vnsxVhlI4,427
13
13
  oe_python_template/system/_api.py,sha256=rE9Aau3IIHXdEkOBUXOwJ7SxN3cZpgtYEuojnSWfT_4,3687
14
14
  oe_python_template/system/_cli.py,sha256=J_4upBBdbSxbONPYmOZPbuhZcKjfnPIUeZpp0L7lY-Q,4846
15
- oe_python_template/system/_service.py,sha256=G8Us2ez4MF7NWdWOUBbcxaVT3dpM-QZ_dP9b_1MkjIQ,6093
15
+ oe_python_template/system/_service.py,sha256=e08VPguXKz2RhyhTbIw1ncSpE6zwKUr1xLM2WZC9u7k,6287
16
16
  oe_python_template/system/_settings.py,sha256=MwMAJYifJ6jGImeSh4e9shmIXmiUSuQGHXz_Ts0mSdk,901
17
17
  oe_python_template/utils/__init__.py,sha256=rHdmSS21CtvF3AXPMSCZO17FTzxPDo-NiKZ5AjVU9b0,1449
18
18
  oe_python_template/utils/_api.py,sha256=w3hPQK1pL2gBI4_1qNWNa2b4S_oH-8mY-ckRX0KrCWM,617
@@ -28,8 +28,8 @@ oe_python_template/utils/_sentry.py,sha256=Y4hZ-PeBOdR3iRhoXW9j0tbWsYf07460UG8OV
28
28
  oe_python_template/utils/_service.py,sha256=atHAejvBucKXjzhsMSdOBBFa7rRD74zcV70Pp0pl0Tg,1038
29
29
  oe_python_template/utils/_settings.py,sha256=5K1pnp-AxMQbktREb3bXDmqgrOx_L4EJIgjPQfqH4sE,2294
30
30
  oe_python_template/utils/boot.py,sha256=TBgmqbtIryQz0cAozYzxhYQRIldfbJ6v9R-rH6sO9mY,2696
31
- oe_python_template-0.10.4.dist-info/METADATA,sha256=H9MTr29kvE1C5CjprpCGVd_1q1uEysPqXMd8LdT2k94,31916
32
- oe_python_template-0.10.4.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
33
- oe_python_template-0.10.4.dist-info/entry_points.txt,sha256=IroSSWhLGxus9rxcashkYQda39TTvf7LbUMYtOKXUBE,66
34
- oe_python_template-0.10.4.dist-info/licenses/LICENSE,sha256=5H409K6xzz9U5eUaoAHQExNkoWJRlU0LEj6wL2QJ34s,1113
35
- oe_python_template-0.10.4.dist-info/RECORD,,
31
+ oe_python_template-0.10.6.dist-info/METADATA,sha256=5ajCUu0QLNc8cMlDF2fGynuMvMeqnGYJYtKrWWKfo6I,31964
32
+ oe_python_template-0.10.6.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
33
+ oe_python_template-0.10.6.dist-info/entry_points.txt,sha256=IroSSWhLGxus9rxcashkYQda39TTvf7LbUMYtOKXUBE,66
34
+ oe_python_template-0.10.6.dist-info/licenses/LICENSE,sha256=5H409K6xzz9U5eUaoAHQExNkoWJRlU0LEj6wL2QJ34s,1113
35
+ oe_python_template-0.10.6.dist-info/RECORD,,