crackerjack 0.17.0__py3-none-any.whl → 0.17.2__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.
@@ -152,7 +152,7 @@ pythonPlatform = "Darwin"
152
152
 
153
153
  [project]
154
154
  name = "crackerjack"
155
- version = "0.16.1"
155
+ version = "0.17.1"
156
156
  description = "Default template for PDM package"
157
157
  requires-python = ">=3.13"
158
158
  readme = "README.md"
@@ -184,14 +184,14 @@ dependencies = [
184
184
  "pydantic>=2.11.4",
185
185
  "pdm-bump>=0.9.12",
186
186
  "pdm>=2.24.1",
187
- "uv>=0.7.2",
187
+ "uv>=0.7.3",
188
188
  "pytest-cov>=6.1.1",
189
189
  "pytest-mock>=3.14.0",
190
190
  "tomli-w>=1.2.0",
191
191
  "pytest-asyncio>=0.26.0",
192
192
  "rich>=14.0.0",
193
193
  "typer>=0.15.3",
194
- "pytest-timeout>=2.3.1",
194
+ "pytest-timeout>=2.4.0",
195
195
  ]
196
196
  authors = [
197
197
  { name = "lesleslie", email = "les@wedgwoodwebworks.com" },
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: crackerjack
3
- Version: 0.17.0
3
+ Version: 0.17.2
4
4
  Summary: Default template for PDM package
5
5
  Keywords: black,ruff,mypy,creosote,refurb
6
6
  Author-Email: lesleslie <les@wedgwoodwebworks.com>
@@ -28,14 +28,14 @@ Requires-Dist: pytest>=8.3.5
28
28
  Requires-Dist: pydantic>=2.11.4
29
29
  Requires-Dist: pdm-bump>=0.9.12
30
30
  Requires-Dist: pdm>=2.24.1
31
- Requires-Dist: uv>=0.7.2
31
+ Requires-Dist: uv>=0.7.3
32
32
  Requires-Dist: pytest-cov>=6.1.1
33
33
  Requires-Dist: pytest-mock>=3.14.0
34
34
  Requires-Dist: tomli-w>=1.2.0
35
35
  Requires-Dist: pytest-asyncio>=0.26.0
36
36
  Requires-Dist: rich>=14.0.0
37
37
  Requires-Dist: typer>=0.15.3
38
- Requires-Dist: pytest-timeout>=2.3.1
38
+ Requires-Dist: pytest-timeout>=2.4.0
39
39
  Description-Content-Type: text/markdown
40
40
 
41
41
  # Crackerjack: Elevate Your Python Development
@@ -51,7 +51,20 @@ Description-Content-Type: text/markdown
51
51
 
52
52
  **Crackerjack** (`ˈkra-kər-ˌjak`): *a person or thing of marked excellence.*
53
53
 
54
- Crackerjack is an opinionated Python project management tool designed to help you create, maintain, and publish high-quality Python projects with ease. It combines best-in-class tools and a streamlined workflow to ensure code quality, consistency, and reliability.
54
+ ## What is Crackerjack?
55
+
56
+ Crackerjack is an opinionated Python project management tool designed to solve common challenges in Python development:
57
+
58
+ - **Problem**: Setting up Python projects with best practices is time-consuming and requires knowledge of many tools
59
+ - **Solution**: Crackerjack automates project setup with pre-configured best practices and tools
60
+
61
+ - **Problem**: Maintaining consistent code quality across a project is difficult
62
+ - **Solution**: Crackerjack enforces a consistent style and quality standard through integrated linting, formatting, and pre-commit hooks
63
+
64
+ - **Problem**: Publishing Python packages involves many manual steps
65
+ - **Solution**: Crackerjack streamlines the entire development lifecycle from code cleaning to testing to version bumping to publishing
66
+
67
+ Crackerjack combines best-in-class tools (Ruff, PDM, pre-commit, pytest, and more) into a single, streamlined workflow to ensure code quality, consistency, and reliability. It's designed for Python developers who want to focus on writing code rather than configuring tools.
55
68
 
56
69
  ---
57
70
 
@@ -217,6 +230,7 @@ runner.process(MyOptions())
217
230
  - `-x`, `--clean`: Clean code by removing docstrings, line comments, and extra whitespace.
218
231
  - `-t`, `--test`: Run tests using `pytest`.
219
232
  - `-a`, `--all`: Run with `-x -t -p <micro|minor|major> -c` development options.
233
+ - `--ai-agent`: Enable AI agent mode with structured output (see [AI Agent Integration](#ai-agent-integration)).
220
234
  - `--help`: Display help.
221
235
 
222
236
  ### Example Workflows
@@ -270,6 +284,21 @@ runner.process(MyOptions())
270
284
  python -m crackerjack -a minor
271
285
  ```
272
286
 
287
+ ## AI Agent Integration
288
+
289
+ Crackerjack includes special features for integration with AI agents like Claude, ChatGPT, and other LLM-based assistants:
290
+
291
+ - **Structured JSON Output:** When run with `--ai-agent`, Crackerjack outputs results in JSON format that's easy for AI agents to parse
292
+ - **Clear Status Indicators:** Provides clear status indicators (running, success, failed, complete) to track progress
293
+ - **Action Tracking:** Includes a list of actions performed to help AI agents understand what happened
294
+
295
+ ### Example AI Agent Usage
296
+
297
+ ```bash
298
+ python -m crackerjack --ai-agent --test
299
+ ```
300
+
301
+ For detailed information about using Crackerjack with AI agents, including the structured output format and programmatic usage, see [README-AI-AGENT.md](README-AI-AGENT.md).
273
302
 
274
303
  ## Contributing
275
304
 
@@ -1,7 +1,7 @@
1
- crackerjack-0.17.0.dist-info/METADATA,sha256=eXJTW8gmXKHAaQEB42tfna-7KUMZY-L5SyR7P95--o8,13198
2
- crackerjack-0.17.0.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
3
- crackerjack-0.17.0.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
4
- crackerjack-0.17.0.dist-info/licenses/LICENSE,sha256=fDt371P6_6sCu7RyqiZH_AhT1LdN3sN1zjBtqEhDYCk,1531
1
+ crackerjack-0.17.2.dist-info/METADATA,sha256=LfQrCFlYdNrjl2MXBOihc0cfih1edAubdepWIniP37s,14872
2
+ crackerjack-0.17.2.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
3
+ crackerjack-0.17.2.dist-info/entry_points.txt,sha256=6OYgBcLyFCUgeqLgnvMyOJxPCWzgy7se4rLPKtNonMs,34
4
+ crackerjack-0.17.2.dist-info/licenses/LICENSE,sha256=fDt371P6_6sCu7RyqiZH_AhT1LdN3sN1zjBtqEhDYCk,1531
5
5
  crackerjack/.gitignore,sha256=oho3dNx7a7y36_y9AsalCkssU4in0MMsNAANWdc-h1c,153
6
6
  crackerjack/.libcst.codemod.yaml,sha256=a8DlErRAIPV1nE6QlyXPAzTOgkB24_spl2E9hphuf5s,772
7
7
  crackerjack/.pdm.toml,sha256=dZe44HRcuxxCFESGG8SZIjmc-cGzSoyK3Hs6t4NYA8w,23
@@ -24,7 +24,7 @@ crackerjack/.ruff_cache/0.11.4/9818742842212983150,sha256=QF9j6-3MH_d0pDNotdbF2h
24
24
  crackerjack/.ruff_cache/0.11.6/3557596832929915217,sha256=yR2iXWDkSHVRw2eTiaCE8Eh34JPRUGc8vE3HYEEBk9k,224
25
25
  crackerjack/.ruff_cache/0.11.7/10386934055395314831,sha256=lBNwN5zAgM4OzbkXIOzCczUtfooATrD10htj9ASlFkc,224
26
26
  crackerjack/.ruff_cache/0.11.7/3557596832929915217,sha256=fKlwUbsvT3YIKV6UR-aA_i64lLignWeVfVu-MMmVbU0,207
27
- crackerjack/.ruff_cache/0.11.8/530407680854991027,sha256=WX373h-OwsiDzy8IaHd9dYiGOw0Vtu0_pm-HL1PjEzQ,224
27
+ crackerjack/.ruff_cache/0.11.8/530407680854991027,sha256=YL3qpdiSH9nBvwkDlnmBMEpjyyAIJELkp_mcRM-1AV4,224
28
28
  crackerjack/.ruff_cache/0.2.0/10047773857155985907,sha256=j9LNa_RQ4Plor7go1uTYgz17cEENKvZQ-dP6b9MX0ik,248
29
29
  crackerjack/.ruff_cache/0.2.1/8522267973936635051,sha256=u_aPBMibtAp_iYvLwR88GMAECMcIgHezxMyuapmU2P4,248
30
30
  crackerjack/.ruff_cache/0.2.2/18053836298936336950,sha256=Xb_ebP0pVuUfSqPEZKlhQ70so_vqkEfMYpuHQ06iR5U,248
@@ -55,5 +55,5 @@ crackerjack/.ruff_cache/CACHEDIR.TAG,sha256=WVMVbX4MVkpCclExbq8m-IcOZIOuIZf5FrYw
55
55
  crackerjack/__init__.py,sha256=r9SuEjHUrW99hFWifRk4ofmYPSgf9rblcnzqhdV5bP0,157
56
56
  crackerjack/__main__.py,sha256=O2BZxkwH8FKIhQJyWEaLAxvFT2pRGSyr4J7nXpDKV9U,4291
57
57
  crackerjack/crackerjack.py,sha256=4iZ5s4Qh0lW0RbVw2kziv6GhS5K5NBDb6i7k-rcJStY,33367
58
- crackerjack/pyproject.toml,sha256=8analz1QJPGjDx-lyVuVoaWSr7MCQ17Ld_HVVLTszQw,4199
59
- crackerjack-0.17.0.dist-info/RECORD,,
58
+ crackerjack/pyproject.toml,sha256=vABiCjTGHNgF04oNhSkG-N-NxUWvoikx_t_XnzSlkBM,4199
59
+ crackerjack-0.17.2.dist-info/RECORD,,