worklogs 0.1.0__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.
worklogs/__init__.py ADDED
@@ -0,0 +1,7 @@
1
+ """Worklog file helpers."""
2
+
3
+ from __future__ import annotations
4
+
5
+ __version__ = "0.1.0"
6
+
7
+ __all__ = ["__version__"]
worklogs/cli.py ADDED
@@ -0,0 +1,31 @@
1
+ """Command-line entry point for worklogs."""
2
+
3
+ from __future__ import annotations
4
+
5
+ import argparse
6
+ from typing import TYPE_CHECKING
7
+
8
+ from worklogs import __version__
9
+
10
+ if TYPE_CHECKING:
11
+ from collections.abc import Sequence
12
+
13
+
14
+ def build_parser() -> argparse.ArgumentParser:
15
+ """Build the command-line parser."""
16
+ parser = argparse.ArgumentParser(
17
+ prog="worklogs",
18
+ description="Create and maintain local worklog files.",
19
+ )
20
+ parser.add_argument(
21
+ "--version",
22
+ action="version",
23
+ version=f"%(prog)s {__version__}",
24
+ )
25
+ return parser
26
+
27
+
28
+ def main(argv: Sequence[str] | None = None) -> int:
29
+ """Run the worklogs command-line interface."""
30
+ build_parser().parse_args(argv)
31
+ return 0
worklogs/py.typed ADDED
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,125 @@
1
+ Metadata-Version: 2.4
2
+ Name: worklogs
3
+ Version: 0.1.0
4
+ Summary: Local markdown worklog helpers for developer workflows.
5
+ Project-URL: Homepage, https://github.com/alik-git/worklogs
6
+ Project-URL: Repository, https://github.com/alik-git/worklogs
7
+ Project-URL: Issues, https://github.com/alik-git/worklogs/issues
8
+ Author-email: Ali K <alikgithb@gmail.com>
9
+ Maintainer-email: Ali K <alikgithb@gmail.com>
10
+ Keywords: cli,developer-tools,markdown,notes,worklog
11
+ Classifier: Development Status :: 3 - Alpha
12
+ Classifier: Environment :: Console
13
+ Classifier: Intended Audience :: Developers
14
+ Classifier: Programming Language :: Python :: 3
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
17
+ Classifier: Programming Language :: Python :: 3.13
18
+ Classifier: Typing :: Typed
19
+ Requires-Python: >=3.11
20
+ Provides-Extra: dev
21
+ Requires-Dist: build>=1.2; extra == 'dev'
22
+ Requires-Dist: mypy>=1.15; extra == 'dev'
23
+ Requires-Dist: pre-commit>=4.0; extra == 'dev'
24
+ Requires-Dist: pytest>=8.0; extra == 'dev'
25
+ Requires-Dist: ruff>=0.11; extra == 'dev'
26
+ Description-Content-Type: text/markdown
27
+
28
+ # worklogs
29
+
30
+ Local markdown worklog helpers for developer workflows.
31
+
32
+ This initial package release establishes the public package name, metadata,
33
+ typed Python package layout, command entry point, CI, and PyPI trusted
34
+ publishing path. The worklog creation and companion-note workflow will be added
35
+ in follow-up releases.
36
+
37
+ ## Installation
38
+
39
+ ```bash
40
+ python -m pip install worklogs
41
+ ```
42
+
43
+ For local development:
44
+
45
+ ```bash
46
+ uv sync --extra dev
47
+ ```
48
+
49
+ Standard Python fallback:
50
+
51
+ ```bash
52
+ python -m pip install -e ".[dev]"
53
+ ```
54
+
55
+ ## Usage
56
+
57
+ ```bash
58
+ worklogs --version
59
+ ```
60
+
61
+ For shorter personal shell usage, add a local alias:
62
+
63
+ ```bash
64
+ alias wl='worklogs'
65
+ ```
66
+
67
+ The package installs the explicit `worklogs` command; `wl` is intentionally left
68
+ as a shell-level shortcut so it cannot shadow another global command.
69
+
70
+ ## Development Workflow
71
+
72
+ Run the standard checks before opening a PR:
73
+
74
+ ```bash
75
+ uv run ruff format --check .
76
+ uv run ruff check .
77
+ uv run mypy
78
+ uv run pytest
79
+ uv build
80
+ ```
81
+
82
+ If you are using standard Python tools instead of uv:
83
+
84
+ ```bash
85
+ python -m ruff format --check .
86
+ python -m ruff check .
87
+ python -m mypy
88
+ python -m pytest
89
+ python -m build
90
+ ```
91
+
92
+ ## CI / GitHub Actions
93
+
94
+ GitHub Actions runs:
95
+
96
+ - fast Ruff-only checks
97
+ - Ruff, mypy, and pytest
98
+ - package build and wheel smoke test with pip
99
+ - package build and wheel smoke test with uv
100
+
101
+ The release workflow in [`.github/workflows/release.yml`](.github/workflows/release.yml)
102
+ builds and publishes the package to PyPI when a GitHub Release is published.
103
+
104
+ ## Publishing
105
+
106
+ This project uses PyPI Trusted Publishing. The PyPI pending publisher should be:
107
+
108
+ ```text
109
+ PyPI project name: worklogs
110
+ Owner: alik-git
111
+ Repository name: worklogs
112
+ Workflow name: release.yml
113
+ Environment name: pypi
114
+ ```
115
+
116
+ Create a GitHub Release for the version in [`pyproject.toml`](pyproject.toml):
117
+
118
+ ```bash
119
+ gh release create v0.1.0 \
120
+ --title "v0.1.0" \
121
+ --notes "Initial package metadata release."
122
+ ```
123
+
124
+ Publishing is release-driven on purpose: normal pushes and pull requests build
125
+ and test the package, but only GitHub Releases publish to PyPI.
@@ -0,0 +1,7 @@
1
+ worklogs/__init__.py,sha256=NKFyco1FQJaknzyhjowD0QQ67idyZ67K2PFfNHXTjp8,114
2
+ worklogs/cli.py,sha256=omOG3_mFW0kjet6AOOkUOZv4K-mEd5hKSWHEVR_l5w0,741
3
+ worklogs/py.typed,sha256=AbpHGcgLb-kRsJGnwFEktk7uzpZOCcBY74-YBdrKVGs,1
4
+ worklogs-0.1.0.dist-info/METADATA,sha256=J11tYZTmy6wTLiEIoJ-o_83VlrewS77q2-ikZQqicEc,3144
5
+ worklogs-0.1.0.dist-info/WHEEL,sha256=QccIxa26bgl1E6uMy58deGWi-0aeIkkangHcxk2kWfw,87
6
+ worklogs-0.1.0.dist-info/entry_points.txt,sha256=TE_C0ehBksPfuTVfGvsCX_vb_r_tsBnUctOr-AeuAAg,47
7
+ worklogs-0.1.0.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: hatchling 1.29.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,2 @@
1
+ [console_scripts]
2
+ worklogs = worklogs.cli:main