codingest 0.2.4__tar.gz → 0.2.5__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.
- {codingest-0.2.4 → codingest-0.2.5}/Cargo.lock +10 -10
- {codingest-0.2.4 → codingest-0.2.5}/Cargo.toml +49 -6
- {codingest-0.2.4 → codingest-0.2.5}/PKG-INFO +5 -5
- {codingest-0.2.4 → codingest-0.2.5}/README.md +3 -3
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/Cargo.toml +1 -1
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/Cargo.toml +1 -1
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-mcp/Cargo.toml +1 -1
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-py/Cargo.toml +3 -3
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-py/src/lib.rs +1 -1
- {codingest-0.2.4 → codingest-0.2.5}/pyproject.toml +2 -2
- {codingest-0.2.4 → codingest-0.2.5}/LICENSE +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/codingest/__init__.py +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/codingest/__init__.pyi +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/codingest/cli.py +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/codingest/mcp_server.py +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/bin/codingest_bench.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/bin/codingest_stats.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/call_edges.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/js_workspace.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/load/edge_frames.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/load/entity_frames.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/load.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/mod.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/other_edges.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/routes/django.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/routes/fastapi.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/routes/flask.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/routes/mod.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/semantic_edges.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/builder/type_edges.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/cross_lang.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/docs/mod.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/docs/rst.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/lib.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/manifest/mod.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/models.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/agc.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/cpp.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/csharp.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/css.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/dart.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/go.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/html.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/java.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/julia.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/mod.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/php.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/python.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/r.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/registry.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/rust_lang.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/shared.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/swift.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/parsers/typescript.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/repo.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/src/rev.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/agc_apollo.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/README.md +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/agc_basic.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/cpp_include.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/cross_ts_py.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/dart_import.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/docs_ext_collide.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/docs_mdx.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/dup_minified_assets.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/html_js_lang_group.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/julia_basic.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/py_basic.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/py_import.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/py_inheritance.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/py_nested_defs.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/py_routes_dup.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/r_basic.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/rust_import.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/rust_xfile.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/ts_callback.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/ts_closure_scope.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/ts_hof_binding.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/ts_monorepo.sha256 +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/grammar_kinds.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/parity.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/skills/codingest-code-review/SKILL.md +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/skills/codingest-code-review/references/mcp-upgrade.md +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/skills/codingest-code-review/references/public-repositories.md +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/skills/codingest-code-review/references/queries.md +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/src/code_tree_cli.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/src/lib.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/src/main.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/src/query.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/src/skill.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/src/skill_assets.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/tests/exit_codes.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-mcp/src/lib.rs +0 -0
- {codingest-0.2.4 → codingest-0.2.5}/crates/codingest-mcp/src/main.rs +0 -0
|
@@ -308,7 +308,7 @@ dependencies = [
|
|
|
308
308
|
|
|
309
309
|
[[package]]
|
|
310
310
|
name = "codingest"
|
|
311
|
-
version = "0.2.
|
|
311
|
+
version = "0.2.5"
|
|
312
312
|
dependencies = [
|
|
313
313
|
"aho-corasick",
|
|
314
314
|
"base64 0.22.1",
|
|
@@ -342,7 +342,7 @@ dependencies = [
|
|
|
342
342
|
|
|
343
343
|
[[package]]
|
|
344
344
|
name = "codingest-cli"
|
|
345
|
-
version = "0.2.
|
|
345
|
+
version = "0.2.5"
|
|
346
346
|
dependencies = [
|
|
347
347
|
"anyhow",
|
|
348
348
|
"clap",
|
|
@@ -354,7 +354,7 @@ dependencies = [
|
|
|
354
354
|
|
|
355
355
|
[[package]]
|
|
356
356
|
name = "codingest-mcp"
|
|
357
|
-
version = "0.2.
|
|
357
|
+
version = "0.2.5"
|
|
358
358
|
dependencies = [
|
|
359
359
|
"anyhow",
|
|
360
360
|
"codingest",
|
|
@@ -363,7 +363,7 @@ dependencies = [
|
|
|
363
363
|
|
|
364
364
|
[[package]]
|
|
365
365
|
name = "codingest-py"
|
|
366
|
-
version = "0.2.
|
|
366
|
+
version = "0.2.5"
|
|
367
367
|
dependencies = [
|
|
368
368
|
"codingest",
|
|
369
369
|
"codingest-cli",
|
|
@@ -1390,9 +1390,9 @@ dependencies = [
|
|
|
1390
1390
|
|
|
1391
1391
|
[[package]]
|
|
1392
1392
|
name = "kglite"
|
|
1393
|
-
version = "0.16.
|
|
1393
|
+
version = "0.16.5"
|
|
1394
1394
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1395
|
-
checksum = "
|
|
1395
|
+
checksum = "aad05901c820e0054e872d328cb21439e75aa28477e30bd34e76d0fa280970c3"
|
|
1396
1396
|
dependencies = [
|
|
1397
1397
|
"bzip2",
|
|
1398
1398
|
"chrono",
|
|
@@ -1425,9 +1425,9 @@ dependencies = [
|
|
|
1425
1425
|
|
|
1426
1426
|
[[package]]
|
|
1427
1427
|
name = "kglite-mcp-server"
|
|
1428
|
-
version = "0.16.
|
|
1428
|
+
version = "0.16.5"
|
|
1429
1429
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1430
|
-
checksum = "
|
|
1430
|
+
checksum = "ced644743c758a3cf8d407c36374b6d9fc476a68dea52e23cddd9cbedcbf03ec"
|
|
1431
1431
|
dependencies = [
|
|
1432
1432
|
"anyhow",
|
|
1433
1433
|
"bytes",
|
|
@@ -1529,9 +1529,9 @@ dependencies = [
|
|
|
1529
1529
|
|
|
1530
1530
|
[[package]]
|
|
1531
1531
|
name = "mcp-methods"
|
|
1532
|
-
version = "0.4.
|
|
1532
|
+
version = "0.4.5"
|
|
1533
1533
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
1534
|
-
checksum = "
|
|
1534
|
+
checksum = "d57b15a27a0f1f90a1d67378012df2a9797ec6fda6dc14051427edacdd99ea1a"
|
|
1535
1535
|
dependencies = [
|
|
1536
1536
|
"anyhow",
|
|
1537
1537
|
"clap",
|
|
@@ -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.
|
|
6
|
+
version = "0.2.5"
|
|
7
7
|
edition = "2021"
|
|
8
8
|
rust-version = "1.88"
|
|
9
9
|
license = "MIT"
|
|
@@ -12,8 +12,51 @@ 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.16.
|
|
16
|
-
# floor
|
|
15
|
+
# kglite engine + MCP server — imported as crates.io libraries. The 0.16.5
|
|
16
|
+
# floor is a LOCKSTEP REFRESH, not a fix we need: nothing in 0.16.3-0.16.5
|
|
17
|
+
# reaches a path codingest exercises, and the evidence is the gate rather than
|
|
18
|
+
# the changelog. `golden_parity` is green and `kgl_bytes_are_stable_across_builds`
|
|
19
|
+
# holds, so the frozen goldens are byte-identical across the bump; the fixture
|
|
20
|
+
# corpus builds 405 nodes / 616 edges docs-on and 398 / 596 docs-off on both
|
|
21
|
+
# 0.16.2 and 0.16.5. Perf is flat: three interleaved A/B pairs per docs mode on
|
|
22
|
+
# corpus ad8b3084…, control `defs_per_file` moving +0.0%, every cell flat except
|
|
23
|
+
# `varlen_callers_1_3` at -9.7% in BOTH modes (0.031 -> 0.028 ms) — a small
|
|
24
|
+
# consistent win, plausibly the PropMap refcount clone below. A same-machine
|
|
25
|
+
# before/after pair taken 20 minutes apart instead read +50% on three cells with
|
|
26
|
+
# the control at +15%; that is the instrument, and the interleaved pairs are why
|
|
27
|
+
# the flat reading is the one recorded (doctrine R11).
|
|
28
|
+
#
|
|
29
|
+
# What each release contains, and why none of it lands on us:
|
|
30
|
+
# * 0.16.5 is a BREAKING Rust API change — node, relationship and map
|
|
31
|
+
# properties are a `kglite::datatypes::PropMap`, not a
|
|
32
|
+
# `BTreeMap<String, Value>`. We are not exposed: codingest names neither
|
|
33
|
+
# `NodeValue::properties` nor `RelValue::properties`, and its one
|
|
34
|
+
# `Value::Map` site (docs/mod.rs) matches the wildcard `Value::Map(_)` to
|
|
35
|
+
# stringify a non-scalar, which binds nothing. The workspace compiles clean
|
|
36
|
+
# with no source change. No file format moved — postcard's map framing is
|
|
37
|
+
# identical — which is what lets the goldens hold. Also in 0.16.5:
|
|
38
|
+
# relationship constraints, CDC before-images and selectors, and a
|
|
39
|
+
# re-save determinism fix. codingest declares no constraints, consumes no
|
|
40
|
+
# CDC, and only ever writes FRESH saves, so the re-save fix (and its
|
|
41
|
+
# property-name reordering) cannot reach our bytes.
|
|
42
|
+
# * 0.16.4 adds the opt-in parallel Cypher runtime (off by default and NOT
|
|
43
|
+
# exposed by the MCP server), property-type constraints, and CDC v1. Its
|
|
44
|
+
# one format note — a `.kgl` carrying a property-type constraint does not
|
|
45
|
+
# load on 0.16.3 or earlier — is inert here because codingest declares
|
|
46
|
+
# none, so our files stay readable by an older engine. That is why the
|
|
47
|
+
# Python floor moves for LOCKSTEP, not because the format broke: the
|
|
48
|
+
# `test_kglite_cargo_and_python_floors_are_in_lockstep` gate requires
|
|
49
|
+
# Cargo.toml, pyproject.toml and ci.yml to state one floor, and a
|
|
50
|
+
# "the reader could stay lower" argument is exactly the drift it exists to
|
|
51
|
+
# stop.
|
|
52
|
+
# * 0.16.3 is MCP-side: `reload_graph`, `extensions.graph_watch`, and
|
|
53
|
+
# `extensions.tools_allow`. It also carries mcp-methods 0.4.5, which makes
|
|
54
|
+
# the GitHub tools require an explicit `builtins.github: true` — codingest-mcp
|
|
55
|
+
# registers no GitHub tools and ships no manifest declaring them, so its
|
|
56
|
+
# agent-visible tool surface is unchanged.
|
|
57
|
+
#
|
|
58
|
+
# Floor history below; the 0.16.2 entry is the last one that changed our output.
|
|
59
|
+
# The 0.16.2 floor fixed the edge-property type registry: `add_connections` — the ONLY
|
|
17
60
|
# edge path codingest uses (builder/load.rs, other_edges.rs, cross_lang.rs,
|
|
18
61
|
# docs/mod.rs) — registered every property as "Unknown" instead of its observed
|
|
19
62
|
# type. Measured on a two-function Python corpus: `CALL
|
|
@@ -34,7 +77,7 @@ sha2 = "0.11"
|
|
|
34
77
|
# which kglite 0.15.14 and earlier refuse by version number. Because
|
|
35
78
|
# `codingest.build()` writes the bytes with the Rust engine compiled in here and
|
|
36
79
|
# reads them back through the separately-installed Python `kglite` wheel, the
|
|
37
|
-
# two sides must be on the same side of that break — hence `>=0.16.
|
|
80
|
+
# two sides must be on the same side of that break — hence `>=0.16.5,<0.17` in
|
|
38
81
|
# pyproject.toml, and hence a reader on 0.15.x is not "old but workable", it is
|
|
39
82
|
# a hard failure with `FileFormatError`.
|
|
40
83
|
# 0.16.0 also removed `DirGraph::enable_columnar` from the public API (every
|
|
@@ -99,8 +142,8 @@ sha2 = "0.11"
|
|
|
99
142
|
# and no disk storage. Neither 0.15.7 nor 0.15.8 changes the `kglite::api` we
|
|
100
143
|
# call, graph output, property encoding, or `.kgl` serialization.
|
|
101
144
|
# Keep both libraries aligned so the graph and server share one engine release.
|
|
102
|
-
kglite = { version = "0.16.
|
|
103
|
-
kglite-mcp-server = { version = "0.16.
|
|
145
|
+
kglite = { version = "0.16.5", default-features = false }
|
|
146
|
+
kglite-mcp-server = { version = "0.16.5", default-features = false }
|
|
104
147
|
|
|
105
148
|
# Mirror KGLite's release codegen so the standalone builder has
|
|
106
149
|
# performance parity with the in-tree component (see KGLite
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: codingest
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.5
|
|
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.16.
|
|
15
|
+
Requires-Dist: kglite>=0.16.5,<0.17
|
|
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
|
|
@@ -192,7 +192,7 @@ codingest skill install # code-review Agent Skill
|
|
|
192
192
|
```
|
|
193
193
|
|
|
194
194
|
The wheel bundles every grammar plus the `codingest` and `codingest-mcp`
|
|
195
|
-
commands. KGLite ≥0.16.
|
|
195
|
+
commands. KGLite ≥0.16.5 is installed automatically as the query/storage
|
|
196
196
|
engine; its MCP server and the transitive `mcp-methods` framework power the
|
|
197
197
|
builder-aware Codingest server. Nothing else needs to be installed.
|
|
198
198
|
|
|
@@ -205,7 +205,7 @@ Python prerequisites.
|
|
|
205
205
|
```toml
|
|
206
206
|
[dependencies]
|
|
207
207
|
codingest = "0.2"
|
|
208
|
-
kglite = "0.16.
|
|
208
|
+
kglite = "0.16.5"
|
|
209
209
|
```
|
|
210
210
|
|
|
211
211
|
```rust
|
|
@@ -277,7 +277,7 @@ diagnostic.
|
|
|
277
277
|
## Dependency policy
|
|
278
278
|
|
|
279
279
|
`kglite` and `kglite-mcp-server` use matching crates.io requirements with a
|
|
280
|
-
0.16.
|
|
280
|
+
0.16.5 minimum and a shared lockfile. This keeps the builder, persistence
|
|
281
281
|
handoff, and embedded MCP server on one compatible engine patch line.
|
|
282
282
|
|
|
283
283
|
## Parity with the (now-removed) in-tree component
|
|
@@ -165,7 +165,7 @@ codingest skill install # code-review Agent Skill
|
|
|
165
165
|
```
|
|
166
166
|
|
|
167
167
|
The wheel bundles every grammar plus the `codingest` and `codingest-mcp`
|
|
168
|
-
commands. KGLite ≥0.16.
|
|
168
|
+
commands. KGLite ≥0.16.5 is installed automatically as the query/storage
|
|
169
169
|
engine; its MCP server and the transitive `mcp-methods` framework power the
|
|
170
170
|
builder-aware Codingest server. Nothing else needs to be installed.
|
|
171
171
|
|
|
@@ -178,7 +178,7 @@ Python prerequisites.
|
|
|
178
178
|
```toml
|
|
179
179
|
[dependencies]
|
|
180
180
|
codingest = "0.2"
|
|
181
|
-
kglite = "0.16.
|
|
181
|
+
kglite = "0.16.5"
|
|
182
182
|
```
|
|
183
183
|
|
|
184
184
|
```rust
|
|
@@ -250,7 +250,7 @@ diagnostic.
|
|
|
250
250
|
## Dependency policy
|
|
251
251
|
|
|
252
252
|
`kglite` and `kglite-mcp-server` use matching crates.io requirements with a
|
|
253
|
-
0.16.
|
|
253
|
+
0.16.5 minimum and a shared lockfile. This keeps the builder, persistence
|
|
254
254
|
handoff, and embedded MCP server on one compatible engine patch line.
|
|
255
255
|
|
|
256
256
|
## 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.16.
|
|
13
|
+
# workspace pins the current engine floor (0.16.5).
|
|
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.
|
|
17
|
+
codingest = { version = "0.2.5", path = "../codingest" }
|
|
18
18
|
kglite = { workspace = true }
|
|
19
19
|
anyhow = "1.0.104"
|
|
20
20
|
clap = { version = "4.6.4", features = ["derive"] }
|
|
@@ -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.
|
|
45
|
+
codingest = { version = "0.2.5", 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.
|
|
56
|
+
codingest-cli = { version = "0.2.5", 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.
|
|
61
|
+
codingest-mcp = { version = "0.2.5", path = "../codingest-mcp" }
|
|
@@ -73,7 +73,7 @@ fn load_via_kglite(py: Python<'_>, path: &Path) -> PyResult<Py<PyAny>> {
|
|
|
73
73
|
let kglite = py.import("kglite").map_err(|e| {
|
|
74
74
|
PyRuntimeError::new_err(format!(
|
|
75
75
|
"codingest.build() returns a kglite.KnowledgeGraph, but importing \
|
|
76
|
-
`kglite` failed ({e}). Install it: `pip install kglite>=0.16.
|
|
76
|
+
`kglite` failed ({e}). Install it: `pip install kglite>=0.16.5`."
|
|
77
77
|
))
|
|
78
78
|
})?;
|
|
79
79
|
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.16.
|
|
45
|
+
# (`version = "0.16.5"` == `>=0.16.5,<0.17.0`) exactly — bump both together.
|
|
46
46
|
dependencies = [
|
|
47
|
-
"kglite>=0.16.
|
|
47
|
+
"kglite>=0.16.5,<0.17",
|
|
48
48
|
]
|
|
49
49
|
|
|
50
50
|
[project.urls]
|
|
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
|
|
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
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/dup_minified_assets.sha256
RENAMED
|
File without changes
|
{codingest-0.2.4 → codingest-0.2.5}/crates/codingest/tests/goldens/html_js_lang_group.sha256
RENAMED
|
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
|
{codingest-0.2.4 → codingest-0.2.5}/crates/codingest-cli/skills/codingest-code-review/SKILL.md
RENAMED
|
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
|