codingest 0.2.29__tar.gz → 0.2.31__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 (111) hide show
  1. {codingest-0.2.29 → codingest-0.2.31}/Cargo.lock +45 -10
  2. {codingest-0.2.29 → codingest-0.2.31}/Cargo.toml +17 -4
  3. {codingest-0.2.29 → codingest-0.2.31}/PKG-INFO +5 -5
  4. {codingest-0.2.29 → codingest-0.2.31}/README.md +3 -3
  5. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/Cargo.toml +1 -1
  6. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/Cargo.toml +1 -1
  7. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/skills/codingest-code-review/SKILL.md +1 -1
  8. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/skills/codingest-code-review/references/mcp-upgrade.md +1 -1
  9. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-mcp/Cargo.toml +1 -1
  10. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-py/Cargo.toml +3 -3
  11. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-py/src/lib.rs +1 -1
  12. {codingest-0.2.29 → codingest-0.2.31}/pyproject.toml +2 -2
  13. {codingest-0.2.29 → codingest-0.2.31}/LICENSE +0 -0
  14. {codingest-0.2.29 → codingest-0.2.31}/codingest/__init__.py +0 -0
  15. {codingest-0.2.29 → codingest-0.2.31}/codingest/__init__.pyi +0 -0
  16. {codingest-0.2.29 → codingest-0.2.31}/codingest/cli.py +0 -0
  17. {codingest-0.2.29 → codingest-0.2.31}/codingest/mcp_server.py +0 -0
  18. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/assets/code_review/recipes.json +0 -0
  19. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/assets/code_review/skill.md +0 -0
  20. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/bin/codingest_bench.rs +0 -0
  21. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/bin/codingest_stats.rs +0 -0
  22. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/call_edges.rs +0 -0
  23. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/js_workspace.rs +0 -0
  24. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/load/edge_frames.rs +0 -0
  25. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/load/entity_frames.rs +0 -0
  26. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/load.rs +0 -0
  27. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/mod.rs +0 -0
  28. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/other_edges.rs +0 -0
  29. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/routes/django.rs +0 -0
  30. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/routes/fastapi.rs +0 -0
  31. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/routes/flask.rs +0 -0
  32. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/routes/mod.rs +0 -0
  33. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/semantic_edges.rs +0 -0
  34. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/builder/type_edges.rs +0 -0
  35. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/cross_lang.rs +0 -0
  36. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/docs/mod.rs +0 -0
  37. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/docs/rst.rs +0 -0
  38. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/lib.rs +0 -0
  39. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/manifest/mod.rs +0 -0
  40. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/methodology.rs +0 -0
  41. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/models.rs +0 -0
  42. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/agc.rs +0 -0
  43. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/cpp.rs +0 -0
  44. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/csharp.rs +0 -0
  45. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/css.rs +0 -0
  46. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/dart.rs +0 -0
  47. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/go.rs +0 -0
  48. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/html.rs +0 -0
  49. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/java.rs +0 -0
  50. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/julia.rs +0 -0
  51. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/mod.rs +0 -0
  52. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/php.rs +0 -0
  53. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/python.rs +0 -0
  54. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/r.rs +0 -0
  55. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/registry.rs +0 -0
  56. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/rust_lang.rs +0 -0
  57. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/shared.rs +0 -0
  58. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/swift.rs +0 -0
  59. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/parsers/typescript.rs +0 -0
  60. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/repo.rs +0 -0
  61. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/src/rev.rs +0 -0
  62. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/agc_apollo.rs +0 -0
  63. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/README.md +0 -0
  64. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/agc_basic.sha256 +0 -0
  65. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/cpp_extern_c.sha256 +0 -0
  66. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/cpp_include.sha256 +0 -0
  67. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/cross_ts_py.sha256 +0 -0
  68. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/csharp_using_alias.sha256 +0 -0
  69. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/dart_import.sha256 +0 -0
  70. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/dart_part_of.sha256 +0 -0
  71. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/docs_ext_collide.sha256 +0 -0
  72. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/docs_mdx.sha256 +0 -0
  73. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/dup_minified_assets.sha256 +0 -0
  74. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/go_interface.sha256 +0 -0
  75. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/html_js_lang_group.sha256 +0 -0
  76. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/java_javadoc.sha256 +0 -0
  77. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/julia_basic.sha256 +0 -0
  78. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/php_group_use.sha256 +0 -0
  79. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/py_basic.sha256 +0 -0
  80. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/py_import.sha256 +0 -0
  81. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/py_inheritance.sha256 +0 -0
  82. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/py_nested_defs.sha256 +0 -0
  83. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/py_routes_dup.sha256 +0 -0
  84. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/py_src_layout.sha256 +0 -0
  85. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/r_basic.sha256 +0 -0
  86. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/rust_import.sha256 +0 -0
  87. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/rust_inline_mod.sha256 +0 -0
  88. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/rust_xfile.sha256 +0 -0
  89. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/swift_basic.sha256 +0 -0
  90. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/ts_callback.sha256 +0 -0
  91. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/ts_closure_scope.sha256 +0 -0
  92. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/ts_hof_binding.sha256 +0 -0
  93. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/ts_monorepo.sha256 +0 -0
  94. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/goldens/web_served_root.sha256 +0 -0
  95. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/grammar_kinds.rs +0 -0
  96. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/parity.rs +0 -0
  97. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest/tests/traversal_semantics.rs +0 -0
  98. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/skills/codingest-code-review/references/public-repositories.md +0 -0
  99. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/skills/codingest-code-review/references/queries.md +0 -0
  100. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/src/code_tree_cli.rs +0 -0
  101. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/src/lib.rs +0 -0
  102. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/src/main.rs +0 -0
  103. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/src/query.rs +0 -0
  104. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/src/skill.rs +0 -0
  105. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/src/skill_assets.rs +0 -0
  106. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/tests/embed_skills.rs +0 -0
  107. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/tests/exit_codes.rs +0 -0
  108. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-cli/tests/skill_recipes.rs +0 -0
  109. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-mcp/src/lib.rs +0 -0
  110. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-mcp/src/main.rs +0 -0
  111. {codingest-0.2.29 → codingest-0.2.31}/crates/codingest-mcp/tests/response_contract.rs +0 -0
@@ -251,6 +251,16 @@ dependencies = [
251
251
  "windows-link",
252
252
  ]
253
253
 
254
+ [[package]]
255
+ name = "chrono-tz"
256
+ version = "0.10.4"
257
+ source = "registry+https://github.com/rust-lang/crates.io-index"
258
+ checksum = "a6139a8597ed92cf816dfb33f5dd6cf0bb93a6adc938f11039f371bc5bcd26c3"
259
+ dependencies = [
260
+ "chrono",
261
+ "phf",
262
+ ]
263
+
254
264
  [[package]]
255
265
  name = "clap"
256
266
  version = "4.6.4"
@@ -302,7 +312,7 @@ dependencies = [
302
312
 
303
313
  [[package]]
304
314
  name = "codingest"
305
- version = "0.2.29"
315
+ version = "0.2.31"
306
316
  dependencies = [
307
317
  "aho-corasick",
308
318
  "base64 0.22.1",
@@ -338,7 +348,7 @@ dependencies = [
338
348
 
339
349
  [[package]]
340
350
  name = "codingest-cli"
341
- version = "0.2.29"
351
+ version = "0.2.31"
342
352
  dependencies = [
343
353
  "anyhow",
344
354
  "clap",
@@ -350,7 +360,7 @@ dependencies = [
350
360
 
351
361
  [[package]]
352
362
  name = "codingest-mcp"
353
- version = "0.2.29"
363
+ version = "0.2.31"
354
364
  dependencies = [
355
365
  "anyhow",
356
366
  "codingest",
@@ -361,7 +371,7 @@ dependencies = [
361
371
 
362
372
  [[package]]
363
373
  name = "codingest-py"
364
- version = "0.2.29"
374
+ version = "0.2.31"
365
375
  dependencies = [
366
376
  "codingest",
367
377
  "codingest-cli",
@@ -1368,12 +1378,13 @@ dependencies = [
1368
1378
 
1369
1379
  [[package]]
1370
1380
  name = "kglite"
1371
- version = "0.19.4"
1381
+ version = "0.20.0"
1372
1382
  source = "registry+https://github.com/rust-lang/crates.io-index"
1373
- checksum = "ca1baa53605d09f5e0df57a9fe54522794d8b5aa3627c4398385ec4e7ee42e5b"
1383
+ checksum = "13a84167dedd08a2b0549d7674265e6f6d51b27dce999f87a31b67a175eea9a9"
1374
1384
  dependencies = [
1375
1385
  "bzip2",
1376
1386
  "chrono",
1387
+ "chrono-tz",
1377
1388
  "crc32fast",
1378
1389
  "csv",
1379
1390
  "fixedbitset",
@@ -1406,9 +1417,9 @@ dependencies = [
1406
1417
 
1407
1418
  [[package]]
1408
1419
  name = "kglite-mcp-server"
1409
- version = "0.19.4"
1420
+ version = "0.20.0"
1410
1421
  source = "registry+https://github.com/rust-lang/crates.io-index"
1411
- checksum = "0545b6fbd2e9166701fba0e8cfc0be98481c724f834411dd7b12512331777cae"
1422
+ checksum = "27d58119944658f5768617b04b342fe7320e44d571901b47bc3802a80f244ba6"
1412
1423
  dependencies = [
1413
1424
  "anyhow",
1414
1425
  "base64 0.23.1",
@@ -1514,9 +1525,9 @@ dependencies = [
1514
1525
 
1515
1526
  [[package]]
1516
1527
  name = "mcp-methods"
1517
- version = "0.4.12"
1528
+ version = "0.4.13"
1518
1529
  source = "registry+https://github.com/rust-lang/crates.io-index"
1519
- checksum = "5bcc5fdac2ffd82893fbc640b569785bdc63ead7f3c6c3d695685b692ddf2d1a"
1530
+ checksum = "97eb20dc0d7038ec9ff777df628774b32081dadebe5404aaa100c47d702308e9"
1520
1531
  dependencies = [
1521
1532
  "anyhow",
1522
1533
  "clap",
@@ -1688,6 +1699,24 @@ dependencies = [
1688
1699
  "serde_derive",
1689
1700
  ]
1690
1701
 
1702
+ [[package]]
1703
+ name = "phf"
1704
+ version = "0.12.1"
1705
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1706
+ checksum = "913273894cec178f401a31ec4b656318d95473527be05c0752cc41cdc32be8b7"
1707
+ dependencies = [
1708
+ "phf_shared",
1709
+ ]
1710
+
1711
+ [[package]]
1712
+ name = "phf_shared"
1713
+ version = "0.12.1"
1714
+ source = "registry+https://github.com/rust-lang/crates.io-index"
1715
+ checksum = "06005508882fb681fd97892ecff4b7fd0fee13ef1aa569f8695dae7ab9099981"
1716
+ dependencies = [
1717
+ "siphasher",
1718
+ ]
1719
+
1691
1720
  [[package]]
1692
1721
  name = "pin-project-lite"
1693
1722
  version = "0.2.17"
@@ -2286,6 +2315,12 @@ version = "0.3.10"
2286
2315
  source = "registry+https://github.com/rust-lang/crates.io-index"
2287
2316
  checksum = "3a219298ac11a56ea9a6d2120044824d6f01aeb034955e7af7bc16858527deea"
2288
2317
 
2318
+ [[package]]
2319
+ name = "siphasher"
2320
+ version = "1.0.4"
2321
+ source = "registry+https://github.com/rust-lang/crates.io-index"
2322
+ checksum = "33f4fe9184a62d842c9ef383018f3306d8ba224fd9d836f56d7288308847c256"
2323
+
2289
2324
  [[package]]
2290
2325
  name = "slab"
2291
2326
  version = "0.4.12"
@@ -3,7 +3,7 @@ members = ["crates/codingest", "crates/codingest-cli", "crates/codingest-mcp", "
3
3
  resolver = "2"
4
4
 
5
5
  [workspace.package]
6
- version = "0.2.29"
6
+ version = "0.2.31"
7
7
  edition = "2021"
8
8
  rust-version = "1.88"
9
9
  license = "MIT"
@@ -12,7 +12,20 @@ repository = "https://github.com/kkollsga/codingest"
12
12
  [workspace.dependencies]
13
13
  base64 = "0.22"
14
14
  sha2 = "0.11"
15
- # kglite engine + MCP server — imported as crates.io libraries. The 0.19.4
15
+ # kglite engine + MCP server — imported as crates.io libraries. The 0.20.0
16
+ # floor is an engine minor (0.19.6 -> 0.20.0, taking 0.19.7 with it): `.kgl` v8
17
+ # files are unreadable by 0.19.x, so the Python pin moves in lockstep. Its new
18
+ # `Value` variants break exhaustive matches, but codingest matches `Value` only
19
+ # with wildcard arms; the builder writes no temporal values. The 0.19.6
20
+ # floor was a patch step within 0.19 (0.19.4 -> 0.19.6, taking 0.19.5 with it).
21
+ # Its Rust API changes do not reach codingest: `KgError` / `KgErrorCode` gained
22
+ # variants but codingest only boxes a `KgError` and never matches it,
23
+ # `OntologyStore` gained `closed_labels` / `enforcement` but codingest declares
24
+ # no ontology, and `CommitOutcome` is not used; `ReturnItem` (0.19.5) is never
25
+ # built here. Ontology write-time enforcement binds nothing because the builder
26
+ # declares no ontology. The 0.19.5 unaliased-`RETURN` column naming (the query's
27
+ # source text) reaches only callers that read unaliased column names; the
28
+ # builder and its frozen goldens use none. The 0.19.4
16
29
  # floor is a patch step within 0.19 (0.19.3 -> 0.19.4; its titling, valid-time
17
30
  # writer, `DeclareReport` and `create_index` changes do not reach codingest,
18
31
  # see PARITY.md); 0.19.1 moved the engine one minor
@@ -639,8 +652,8 @@ sha2 = "0.11"
639
652
  # and no disk storage. Neither 0.15.7 nor 0.15.8 changes the `kglite::api` we
640
653
  # call, graph output, property encoding, or `.kgl` serialization.
641
654
  # Keep both libraries aligned so the graph and server share one engine release.
642
- kglite = { version = "0.19.4", default-features = false }
643
- kglite-mcp-server = { version = "0.19.4", default-features = false }
655
+ kglite = { version = "0.20.0", default-features = false }
656
+ kglite-mcp-server = { version = "0.20.0", default-features = false }
644
657
 
645
658
  # Dependency debuginfo capped at line tables (kglite coordination, 2026-08-31,
646
659
  # after unbounded debug trees filled the build-cache disk to zero): a
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codingest
3
- Version: 0.2.29
3
+ Version: 0.2.31
4
4
  Classifier: Development Status :: 3 - Alpha
5
5
  Classifier: Intended Audience :: Developers
6
6
  Classifier: Programming Language :: Python :: 3
@@ -12,7 +12,7 @@ Classifier: Programming Language :: Python :: 3.14
12
12
  Classifier: Programming Language :: Rust
13
13
  Classifier: Topic :: Software Development
14
14
  Classifier: Topic :: Software Development :: Libraries
15
- Requires-Dist: kglite>=0.19.4,<0.20
15
+ Requires-Dist: kglite>=0.20.0,<0.21
16
16
  License-File: LICENSE
17
17
  Summary: Build fast, queryable code graphs for AI agents, MCP code review, and local or GitHub repository analysis.
18
18
  Keywords: ai-agents,mcp,code-review,knowledge-graph,code-analysis,github,tree-sitter,cypher
@@ -194,7 +194,7 @@ codingest skill install # code-review Agent Skill
194
194
  ```
195
195
 
196
196
  The wheel bundles every grammar plus the `codingest` and `codingest-mcp`
197
- commands. KGLite ≥0.19.4 is installed automatically as the query/storage
197
+ commands. KGLite ≥0.20.0 is installed automatically as the query/storage
198
198
  engine; its MCP server and the transitive `mcp-methods` framework power the
199
199
  builder-aware Codingest server. Nothing else needs to be installed.
200
200
 
@@ -207,7 +207,7 @@ Python prerequisites.
207
207
  ```toml
208
208
  [dependencies]
209
209
  codingest = "0.2"
210
- kglite = "0.19.4"
210
+ kglite = "0.20.0"
211
211
  ```
212
212
 
213
213
  ```rust
@@ -279,7 +279,7 @@ diagnostic.
279
279
  ## Dependency policy
280
280
 
281
281
  `kglite` and `kglite-mcp-server` use matching crates.io requirements with a
282
- 0.19.4 minimum and a shared lockfile. This keeps the builder, persistence
282
+ 0.20.0 minimum and a shared lockfile. This keeps the builder, persistence
283
283
  handoff, and embedded MCP server on one compatible engine patch line.
284
284
 
285
285
  ## Parity with the (now-removed) in-tree component
@@ -167,7 +167,7 @@ codingest skill install # code-review Agent Skill
167
167
  ```
168
168
 
169
169
  The wheel bundles every grammar plus the `codingest` and `codingest-mcp`
170
- commands. KGLite ≥0.19.4 is installed automatically as the query/storage
170
+ commands. KGLite ≥0.20.0 is installed automatically as the query/storage
171
171
  engine; its MCP server and the transitive `mcp-methods` framework power the
172
172
  builder-aware Codingest server. Nothing else needs to be installed.
173
173
 
@@ -180,7 +180,7 @@ Python prerequisites.
180
180
  ```toml
181
181
  [dependencies]
182
182
  codingest = "0.2"
183
- kglite = "0.19.4"
183
+ kglite = "0.20.0"
184
184
  ```
185
185
 
186
186
  ```rust
@@ -252,7 +252,7 @@ diagnostic.
252
252
  ## Dependency policy
253
253
 
254
254
  `kglite` and `kglite-mcp-server` use matching crates.io requirements with a
255
- 0.19.4 minimum and a shared lockfile. This keeps the builder, persistence
255
+ 0.20.0 minimum and a shared lockfile. This keeps the builder, persistence
256
256
  handoff, and embedded MCP server on one compatible engine patch line.
257
257
 
258
258
  ## Parity with the (now-removed) in-tree component
@@ -10,7 +10,7 @@ keywords = ["knowledge-graph", "code-analysis", "tree-sitter", "cypher", "kglite
10
10
  categories = ["development-tools", "parser-implementations"]
11
11
 
12
12
  # Requires the kglite 0.15 engine API (`kglite::api::code_entities`); the
13
- # workspace pins the current engine floor (0.19.4).
13
+ # workspace pins the current engine floor (0.20.0).
14
14
 
15
15
  [lib]
16
16
  name = "codingest"
@@ -14,7 +14,7 @@ name = "codingest"
14
14
  path = "src/main.rs"
15
15
 
16
16
  [dependencies]
17
- codingest = { version = "0.2.29", path = "../codingest" }
17
+ codingest = { version = "0.2.31", path = "../codingest" }
18
18
  kglite = { workspace = true }
19
19
  anyhow = "1.0.104"
20
20
  clap = { version = "4.6.4", features = ["derive"] }
@@ -14,7 +14,7 @@ git diff, source reading, and literal-text search; it does not replace them.
14
14
  > codingest` also provides the builder-aware `codingest-mcp` server and a
15
15
  > compatible graph engine. Rust-only environments can alternatively use Cargo.
16
16
  > Examples that invoke the external `kglite` CLI require a compatible
17
- > `kglite>=0.19.4,<0.20`; verify `kglite --version` before using its
17
+ > `kglite>=0.20.0,<0.21`; verify `kglite --version` before using its
18
18
  > agent-response features.
19
19
 
20
20
  Inspect the diff and repository guidance first. Identify changed symbols and
@@ -54,7 +54,7 @@ preconditions are still current.
54
54
  ## External CLI agent output is optional
55
55
 
56
56
  The examples below require an external `kglite` CLI satisfying
57
- `>=0.19.4,<0.20`:
57
+ `>=0.20.0,<0.21`:
58
58
 
59
59
  ```console
60
60
  kglite --version
@@ -14,7 +14,7 @@ name = "codingest-mcp"
14
14
  path = "src/main.rs"
15
15
 
16
16
  [dependencies]
17
- codingest = { version = "0.2.29", path = "../codingest" }
17
+ codingest = { version = "0.2.31", path = "../codingest" }
18
18
  kglite-mcp-server = { workspace = true }
19
19
  anyhow = "1.0.104"
20
20
 
@@ -42,7 +42,7 @@ doctest = false
42
42
  pyo3 = { version = "0.29" }
43
43
  # The engine-free builder (parsers, call/type/route edges, rev merge, repo
44
44
  # clone, manifest reader). Docs pass gated by this crate's `docs` feature.
45
- codingest = { version = "0.2.29", path = "../codingest", default-features = false }
45
+ codingest = { version = "0.2.31", path = "../codingest", default-features = false }
46
46
  # `.kgl` persistence (`kglite::api::io::save_graph`) for the serialize half of
47
47
  # the build-then-load handoff, plus the `DirGraph` type the builder returns.
48
48
  kglite = { workspace = true }
@@ -53,9 +53,9 @@ tempfile = "3.27.0"
53
53
  # through `_run_cli`, so `pip install codingest` also installs the `codingest`
54
54
  # command without a second wheel or a duplicated builder build. Mirrors
55
55
  # kglite-py's `kglite-cli` bundling.
56
- codingest-cli = { version = "0.2.29", path = "../codingest-cli" }
56
+ codingest-cli = { version = "0.2.31", path = "../codingest-cli" }
57
57
  # Source-building MCP composition. The graph server and generic MCP lifecycle
58
58
  # remain owned by its existing kglite-mcp-server -> mcp-methods Rust dependency
59
59
  # chain; linking this thin library into the extension gives pip users the same
60
60
  # builder-aware server as the standalone `codingest-mcp` binary.
61
- codingest-mcp = { version = "0.2.29", path = "../codingest-mcp" }
61
+ codingest-mcp = { version = "0.2.31", path = "../codingest-mcp" }
@@ -86,7 +86,7 @@ fn load_via_kglite(py: Python<'_>, path: &Path) -> PyResult<Py<PyAny>> {
86
86
  PyRuntimeError::new_err(format!(
87
87
  "codingest.build() returns a kglite.KnowledgeGraph, but importing \
88
88
  `kglite` failed ({e}). Install it: `pip install \
89
- 'kglite>=0.19.4,<0.20'`."
89
+ 'kglite>=0.20.0,<0.21'`."
90
90
  ))
91
91
  })?;
92
92
  let graph = kglite.call_method1("load", (path.to_string_lossy().as_ref(),))?;
@@ -42,9 +42,9 @@ dynamic = ["version"]
42
42
  # minor releases (e.g. the v3->v4 break, which refuses old files outright), so
43
43
  # pip must never be free to pair our writer with a reader from a different
44
44
  # minor. This range therefore mirrors the Cargo semver range for the pin above
45
- # (`version = "0.19.4"` == `>=0.19.4,<0.20.0`) exactly — bump both together.
45
+ # (`version = "0.20.0"` == `>=0.20.0,<0.21.0`) exactly — bump both together.
46
46
  dependencies = [
47
- "kglite>=0.19.4,<0.20",
47
+ "kglite>=0.20.0,<0.21",
48
48
  ]
49
49
 
50
50
  [project.urls]
File without changes
File without changes