crapkit 0.4.13__tar.gz → 0.4.14__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 (73) hide show
  1. {crapkit-0.4.13/src/crapkit.egg-info → crapkit-0.4.14}/PKG-INFO +8 -5
  2. {crapkit-0.4.13 → crapkit-0.4.14}/README.md +7 -4
  3. {crapkit-0.4.13 → crapkit-0.4.14}/pyproject.toml +1 -1
  4. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/__init__.py +1 -1
  5. {crapkit-0.4.13 → crapkit-0.4.14/src/crapkit.egg-info}/PKG-INFO +8 -5
  6. {crapkit-0.4.13 → crapkit-0.4.14}/LICENSE +0 -0
  7. {crapkit-0.4.13 → crapkit-0.4.14}/setup.cfg +0 -0
  8. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/__main__.py +0 -0
  9. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/_pygdefer.py +0 -0
  10. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/analyze.py +0 -0
  11. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cache.py +0 -0
  12. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/churn.py +0 -0
  13. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/churn_cache.py +0 -0
  14. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/churn_log.py +0 -0
  15. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/__init__.py +0 -0
  16. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/_shared.py +0 -0
  17. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/admin.py +0 -0
  18. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/analyses.py +0 -0
  19. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/claude_hook.py +0 -0
  20. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/parser.py +0 -0
  21. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/queue.py +0 -0
  22. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/ratchet_cmds.py +0 -0
  23. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/reports.py +0 -0
  24. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/scoring.py +0 -0
  25. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/cli/verifying.py +0 -0
  26. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/config.py +0 -0
  27. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/coupling.py +0 -0
  28. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/coupling_cache.py +0 -0
  29. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/coverage_istanbul.py +0 -0
  30. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/coverage_py.py +0 -0
  31. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/covstream.py +0 -0
  32. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/diffparse.py +0 -0
  33. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/digest.py +0 -0
  34. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/discover.py +0 -0
  35. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/doctor.py +0 -0
  36. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/dup.py +0 -0
  37. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/errors.py +0 -0
  38. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/gitio.py +0 -0
  39. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/hook.py +0 -0
  40. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/invocation.py +0 -0
  41. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/junitparse.py +0 -0
  42. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/keys.py +0 -0
  43. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/lanes.py +0 -0
  44. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/lizardcognitive.py +0 -0
  45. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/lizardpowershell.py +0 -0
  46. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/lizardrust.py +0 -0
  47. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/lizardshell.py +0 -0
  48. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/mcp_server.py +0 -0
  49. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/merge.py +0 -0
  50. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/mutate.py +0 -0
  51. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/mutate_pool.py +0 -0
  52. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/override.py +0 -0
  53. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/packet.py +0 -0
  54. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/procs.py +0 -0
  55. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/ratchet.py +0 -0
  56. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/ratchet_report.py +0 -0
  57. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/report.py +0 -0
  58. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/sarif.py +0 -0
  59. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/sarifio.py +0 -0
  60. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/scaffold.py +0 -0
  61. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/score.py +0 -0
  62. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/snapshot.py +0 -0
  63. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/store.py +0 -0
  64. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/uncovered.py +0 -0
  65. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/universe.py +0 -0
  66. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/verify.py +0 -0
  67. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/watch.py +0 -0
  68. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit/worklist.py +0 -0
  69. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit.egg-info/SOURCES.txt +0 -0
  70. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit.egg-info/dependency_links.txt +0 -0
  71. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit.egg-info/entry_points.txt +0 -0
  72. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit.egg-info/requires.txt +0 -0
  73. {crapkit-0.4.13 → crapkit-0.4.14}/src/crapkit.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crapkit
3
- Version: 0.4.13
3
+ Version: 0.4.14
4
4
  Summary: Scores every function on complexity times uncovered risk, ranks the worst, and blocks commits that add more.
5
5
  Author: Jean-Francois Gagne
6
6
  License: MIT
@@ -39,6 +39,8 @@ Dynamic: license-file
39
39
 
40
40
  # crapkit
41
41
 
42
+ <!-- mcp-name: io.github.jeanfrancoisgagne/crapkit -->
43
+
42
44
  [![ci](https://github.com/JeanFrancoisGagne/crapkit/actions/workflows/ci.yml/badge.svg)](https://github.com/JeanFrancoisGagne/crapkit/actions/workflows/ci.yml)
43
45
  [![PyPI](https://img.shields.io/pypi/v/crapkit)](https://pypi.org/project/crapkit/)
44
46
  [![Python](https://img.shields.io/pypi/pyversions/crapkit)](https://pypi.org/project/crapkit/)
@@ -166,7 +168,7 @@ leaves the box
166
168
 
167
169
  ```
168
170
  $ crapkit --version
169
- crapkit 0.4.13
171
+ crapkit 0.4.14
170
172
  ```
171
173
 
172
174
  `python -m crapkit` works identically to the console script and is what to use from a
@@ -396,7 +398,7 @@ crapkit ships a `.pre-commit-hooks.yaml` declaring `id: crapkit-gate`. In your
396
398
  repos:
397
399
  - repo: https://github.com/JeanFrancoisGagne/crapkit
398
400
  # crapkit's release step rewrites this line to the tag it just cut
399
- rev: v0.4.13
401
+ rev: v0.4.14
400
402
  hooks:
401
403
  - id: crapkit-gate
402
404
  ```
@@ -502,7 +504,7 @@ to a workflow, and every input has a default:
502
504
  - uses: actions/checkout@v4
503
505
  with:
504
506
  fetch-depth: 0
505
- - uses: JeanFrancoisGagne/crapkit@v0.4.13
507
+ - uses: JeanFrancoisGagne/crapkit@v0.4.14
506
508
  ```
507
509
 
508
510
  The whole job those four lines sit in:
@@ -522,7 +524,7 @@ jobs:
522
524
  with:
523
525
  python-version: "3.12" # the interpreter the install below lands in
524
526
  - run: pip install -e ".[dev]" # whatever your lanes need to run
525
- - uses: JeanFrancoisGagne/crapkit@v0.4.13
527
+ - uses: JeanFrancoisGagne/crapkit@v0.4.14
526
528
  with:
527
529
  gate: "false"
528
530
  ```
@@ -1190,6 +1192,7 @@ that block is advisory unless `diff_uncovered_max` is set
1190
1192
  | [docs/lanes.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/lanes.md) | The lane model, vitest and jest and pytest recipes, artifact reuse, flake retest, containers. |
1191
1193
  | [docs/ratchet.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/ratchet.md) | Seeding, pruning, the git merge driver, metric stamps, debt policy, overrides. |
1192
1194
  | [docs/agent-json.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/agent-json.md) | The machine surface: `schema`, every payload field, real captured examples. |
1195
+ | [docs/comparison.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/comparison.md) | Where crapkit sits next to radon, xenon, wily, coverage.py and SonarQube, and how they run together. |
1193
1196
  | [AGENTS.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/AGENTS.md) | The burn-down loop an agent runs, and the rules for changing crapkit itself. |
1194
1197
  | [plugin/](https://github.com/JeanFrancoisGagne/crapkit/tree/main/plugin) | The Claude Code plugin: three skills, the read-side MCP server, and the advisory PostToolUse hook. |
1195
1198
 
@@ -1,5 +1,7 @@
1
1
  # crapkit
2
2
 
3
+ <!-- mcp-name: io.github.jeanfrancoisgagne/crapkit -->
4
+
3
5
  [![ci](https://github.com/JeanFrancoisGagne/crapkit/actions/workflows/ci.yml/badge.svg)](https://github.com/JeanFrancoisGagne/crapkit/actions/workflows/ci.yml)
4
6
  [![PyPI](https://img.shields.io/pypi/v/crapkit)](https://pypi.org/project/crapkit/)
5
7
  [![Python](https://img.shields.io/pypi/pyversions/crapkit)](https://pypi.org/project/crapkit/)
@@ -127,7 +129,7 @@ leaves the box
127
129
 
128
130
  ```
129
131
  $ crapkit --version
130
- crapkit 0.4.13
132
+ crapkit 0.4.14
131
133
  ```
132
134
 
133
135
  `python -m crapkit` works identically to the console script and is what to use from a
@@ -357,7 +359,7 @@ crapkit ships a `.pre-commit-hooks.yaml` declaring `id: crapkit-gate`. In your
357
359
  repos:
358
360
  - repo: https://github.com/JeanFrancoisGagne/crapkit
359
361
  # crapkit's release step rewrites this line to the tag it just cut
360
- rev: v0.4.13
362
+ rev: v0.4.14
361
363
  hooks:
362
364
  - id: crapkit-gate
363
365
  ```
@@ -463,7 +465,7 @@ to a workflow, and every input has a default:
463
465
  - uses: actions/checkout@v4
464
466
  with:
465
467
  fetch-depth: 0
466
- - uses: JeanFrancoisGagne/crapkit@v0.4.13
468
+ - uses: JeanFrancoisGagne/crapkit@v0.4.14
467
469
  ```
468
470
 
469
471
  The whole job those four lines sit in:
@@ -483,7 +485,7 @@ jobs:
483
485
  with:
484
486
  python-version: "3.12" # the interpreter the install below lands in
485
487
  - run: pip install -e ".[dev]" # whatever your lanes need to run
486
- - uses: JeanFrancoisGagne/crapkit@v0.4.13
488
+ - uses: JeanFrancoisGagne/crapkit@v0.4.14
487
489
  with:
488
490
  gate: "false"
489
491
  ```
@@ -1151,6 +1153,7 @@ that block is advisory unless `diff_uncovered_max` is set
1151
1153
  | [docs/lanes.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/lanes.md) | The lane model, vitest and jest and pytest recipes, artifact reuse, flake retest, containers. |
1152
1154
  | [docs/ratchet.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/ratchet.md) | Seeding, pruning, the git merge driver, metric stamps, debt policy, overrides. |
1153
1155
  | [docs/agent-json.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/agent-json.md) | The machine surface: `schema`, every payload field, real captured examples. |
1156
+ | [docs/comparison.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/comparison.md) | Where crapkit sits next to radon, xenon, wily, coverage.py and SonarQube, and how they run together. |
1154
1157
  | [AGENTS.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/AGENTS.md) | The burn-down loop an agent runs, and the rules for changing crapkit itself. |
1155
1158
  | [plugin/](https://github.com/JeanFrancoisGagne/crapkit/tree/main/plugin) | The Claude Code plugin: three skills, the read-side MCP server, and the advisory PostToolUse hook. |
1156
1159
 
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "crapkit"
7
- version = "0.4.13"
7
+ version = "0.4.14"
8
8
  description = "Scores every function on complexity times uncovered risk, ranks the worst, and blocks commits that add more."
9
9
  readme = { file = "README.md", content-type = "text/markdown" }
10
10
  license = { text = "MIT" }
@@ -1,2 +1,2 @@
1
1
  """crapkit: deterministic CRAP-score framework."""
2
- __version__ = "0.4.13"
2
+ __version__ = "0.4.14"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crapkit
3
- Version: 0.4.13
3
+ Version: 0.4.14
4
4
  Summary: Scores every function on complexity times uncovered risk, ranks the worst, and blocks commits that add more.
5
5
  Author: Jean-Francois Gagne
6
6
  License: MIT
@@ -39,6 +39,8 @@ Dynamic: license-file
39
39
 
40
40
  # crapkit
41
41
 
42
+ <!-- mcp-name: io.github.jeanfrancoisgagne/crapkit -->
43
+
42
44
  [![ci](https://github.com/JeanFrancoisGagne/crapkit/actions/workflows/ci.yml/badge.svg)](https://github.com/JeanFrancoisGagne/crapkit/actions/workflows/ci.yml)
43
45
  [![PyPI](https://img.shields.io/pypi/v/crapkit)](https://pypi.org/project/crapkit/)
44
46
  [![Python](https://img.shields.io/pypi/pyversions/crapkit)](https://pypi.org/project/crapkit/)
@@ -166,7 +168,7 @@ leaves the box
166
168
 
167
169
  ```
168
170
  $ crapkit --version
169
- crapkit 0.4.13
171
+ crapkit 0.4.14
170
172
  ```
171
173
 
172
174
  `python -m crapkit` works identically to the console script and is what to use from a
@@ -396,7 +398,7 @@ crapkit ships a `.pre-commit-hooks.yaml` declaring `id: crapkit-gate`. In your
396
398
  repos:
397
399
  - repo: https://github.com/JeanFrancoisGagne/crapkit
398
400
  # crapkit's release step rewrites this line to the tag it just cut
399
- rev: v0.4.13
401
+ rev: v0.4.14
400
402
  hooks:
401
403
  - id: crapkit-gate
402
404
  ```
@@ -502,7 +504,7 @@ to a workflow, and every input has a default:
502
504
  - uses: actions/checkout@v4
503
505
  with:
504
506
  fetch-depth: 0
505
- - uses: JeanFrancoisGagne/crapkit@v0.4.13
507
+ - uses: JeanFrancoisGagne/crapkit@v0.4.14
506
508
  ```
507
509
 
508
510
  The whole job those four lines sit in:
@@ -522,7 +524,7 @@ jobs:
522
524
  with:
523
525
  python-version: "3.12" # the interpreter the install below lands in
524
526
  - run: pip install -e ".[dev]" # whatever your lanes need to run
525
- - uses: JeanFrancoisGagne/crapkit@v0.4.13
527
+ - uses: JeanFrancoisGagne/crapkit@v0.4.14
526
528
  with:
527
529
  gate: "false"
528
530
  ```
@@ -1190,6 +1192,7 @@ that block is advisory unless `diff_uncovered_max` is set
1190
1192
  | [docs/lanes.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/lanes.md) | The lane model, vitest and jest and pytest recipes, artifact reuse, flake retest, containers. |
1191
1193
  | [docs/ratchet.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/ratchet.md) | Seeding, pruning, the git merge driver, metric stamps, debt policy, overrides. |
1192
1194
  | [docs/agent-json.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/agent-json.md) | The machine surface: `schema`, every payload field, real captured examples. |
1195
+ | [docs/comparison.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/docs/comparison.md) | Where crapkit sits next to radon, xenon, wily, coverage.py and SonarQube, and how they run together. |
1193
1196
  | [AGENTS.md](https://github.com/JeanFrancoisGagne/crapkit/blob/main/AGENTS.md) | The burn-down loop an agent runs, and the rules for changing crapkit itself. |
1194
1197
  | [plugin/](https://github.com/JeanFrancoisGagne/crapkit/tree/main/plugin) | The Claude Code plugin: three skills, the read-side MCP server, and the advisory PostToolUse hook. |
1195
1198
 
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
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
File without changes