code-ranker 1.0.0a5__tar.gz → 2.0.0__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 (109) hide show
  1. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/Cargo.lock +34 -300
  2. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/Cargo.toml +13 -10
  3. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/PKG-INFO +8 -7
  4. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/README.md +7 -6
  5. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/Cargo.toml +0 -1
  6. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/logger.rs +0 -4
  7. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/pipeline.rs +15 -46
  8. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/plugin/mod.rs +39 -1
  9. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/tests/e2e.rs +109 -10
  10. code_ranker-2.0.0/crates/code-ranker-cli/tests/grammar_single_version.rs +66 -0
  11. code_ranker-2.0.0/crates/code-ranker-ecmascript-core/Cargo.toml +28 -0
  12. code_ranker-2.0.0/crates/code-ranker-ecmascript-core/src/ecmascript_ts.rs +682 -0
  13. {code_ranker-1.0.0a5/crates/code-ranker-plugin-javascript → code_ranker-2.0.0/crates/code-ranker-ecmascript-core}/src/lib.rs +275 -60
  14. code_ranker-2.0.0/crates/code-ranker-ecmascript-core/src/metrics_tests.rs +183 -0
  15. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/cycles.rs +136 -0
  16. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/hk.rs +1 -1
  17. code_ranker-2.0.0/crates/code-ranker-graph/src/lib.rs +121 -0
  18. code_ranker-2.0.0/crates/code-ranker-graph/src/metrics.rs +370 -0
  19. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/relativize.rs +69 -0
  20. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/src/level.rs +116 -4
  21. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/src/lib.rs +2 -1
  22. code_ranker-2.0.0/crates/code-ranker-plugin-api/src/plugin.rs +217 -0
  23. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-javascript/Cargo.toml +3 -3
  24. code_ranker-2.0.0/crates/code-ranker-plugin-javascript/src/lib.rs +154 -0
  25. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-python/Cargo.toml +3 -0
  26. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-python/src/lib.rs +145 -11
  27. code_ranker-2.0.0/crates/code-ranker-plugin-python/src/metrics_tests.rs +145 -0
  28. code_ranker-2.0.0/crates/code-ranker-plugin-python/src/python_ts.rs +536 -0
  29. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-rust/Cargo.toml +4 -0
  30. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-rust/src/crate_graph.rs +1 -0
  31. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-rust/src/internal.rs +24 -0
  32. code_ranker-2.0.0/crates/code-ranker-plugin-rust/src/lib.rs +1530 -0
  33. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-rust/src/module_graph.rs +296 -78
  34. code_ranker-2.0.0/crates/code-ranker-plugin-rust/src/rust_ts.rs +589 -0
  35. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-typescript/Cargo.toml +4 -5
  36. code_ranker-2.0.0/crates/code-ranker-plugin-typescript/src/lib.rs +315 -0
  37. code_ranker-2.0.0/crates/code-ranker-test-support/Cargo.toml +15 -0
  38. code_ranker-2.0.0/crates/code-ranker-test-support/src/lib.rs +37 -0
  39. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/app.js +37 -10
  40. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/base.css +3 -1
  41. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/export.css +50 -5
  42. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/grouping.js +181 -10
  43. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/index.html +35 -34
  44. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/layout.js +152 -132
  45. code_ranker-2.0.0/crates/code-ranker-viewer/src/assets/map-interactions.js +1117 -0
  46. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/map-render.js +12 -2
  47. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/map-svg.css +38 -0
  48. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/map.css +2 -4
  49. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/modal-content.js +43 -5
  50. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/modal.css +38 -33
  51. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/modal.js +47 -1
  52. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/nav.js +44 -6
  53. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/node-popup.js +54 -31
  54. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/node-table.js +181 -57
  55. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/panzoom.js +51 -27
  56. code_ranker-2.0.0/crates/code-ranker-viewer/src/assets/summary.js +466 -0
  57. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/tables.css +21 -0
  58. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/tooltip.js +4 -1
  59. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/view-state.js +30 -11
  60. code_ranker-1.0.0a5/crates/code-ranker-complexity/Cargo.toml +0 -22
  61. code_ranker-1.0.0a5/crates/code-ranker-complexity/src/lib.rs +0 -595
  62. code_ranker-1.0.0a5/crates/code-ranker-graph/src/lib.rs +0 -104
  63. code_ranker-1.0.0a5/crates/code-ranker-plugin-api/src/plugin.rs +0 -102
  64. code_ranker-1.0.0a5/crates/code-ranker-plugin-rust/src/lib.rs +0 -569
  65. code_ranker-1.0.0a5/crates/code-ranker-plugin-typescript/src/lib.rs +0 -139
  66. code_ranker-1.0.0a5/crates/code-ranker-viewer/src/assets/map-interactions.js +0 -646
  67. code_ranker-1.0.0a5/crates/code-ranker-viewer/src/assets/summary.js +0 -201
  68. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/LICENSE +0 -0
  69. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/analyze.rs +0 -0
  70. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/check.rs +0 -0
  71. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/cli.rs +0 -0
  72. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/config/ignore.rs +0 -0
  73. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/config/load.rs +0 -0
  74. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/config/mod.rs +0 -0
  75. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/config/model.rs +0 -0
  76. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/config/rules.rs +0 -0
  77. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/config/violations.rs +0 -0
  78. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/git.rs +0 -0
  79. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/main.rs +0 -0
  80. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/presets.rs +0 -0
  81. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/recommend.rs +0 -0
  82. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-cli/src/report.rs +0 -0
  83. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/Cargo.toml +0 -0
  84. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/attrs.rs +0 -0
  85. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/finalize.rs +0 -0
  86. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/level_graph.rs +0 -0
  87. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/serialize.rs +0 -0
  88. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/snapshot.rs +0 -0
  89. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-graph/src/stats.rs +0 -0
  90. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/Cargo.toml +0 -0
  91. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/src/attrs.rs +0 -0
  92. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/src/edge.rs +0 -0
  93. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/src/graph.rs +0 -0
  94. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/src/log.rs +0 -0
  95. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-api/src/node.rs +0 -0
  96. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-plugin-rust/src/ids.rs +0 -0
  97. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/Cargo.toml +0 -0
  98. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/diff.js +0 -0
  99. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/export-popup.js +0 -0
  100. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/graphviz.umd.js +0 -0
  101. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/schema.js +0 -0
  102. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/snap-controls.js +0 -0
  103. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/snap.css +0 -0
  104. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/snarkdown.umd.js +0 -0
  105. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/source-links.js +0 -0
  106. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/ui.js +0 -0
  107. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/assets/utils.js +0 -0
  108. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/crates/code-ranker-viewer/src/lib.rs +0 -0
  109. {code_ranker-1.0.0a5 → code_ranker-2.0.0}/pyproject.toml +0 -0
@@ -76,12 +76,6 @@ version = "1.0.102"
76
76
  source = "registry+https://github.com/rust-lang/crates.io-index"
77
77
  checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
78
78
 
79
- [[package]]
80
- name = "arrayvec"
81
- version = "0.7.6"
82
- source = "registry+https://github.com/rust-lang/crates.io-index"
83
- checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
84
-
85
79
  [[package]]
86
80
  name = "autocfg"
87
81
  version = "1.5.0"
@@ -214,12 +208,11 @@ checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9"
214
208
 
215
209
  [[package]]
216
210
  name = "code-ranker"
217
- version = "1.0.0-alpha.5"
211
+ version = "2.0.0"
218
212
  dependencies = [
219
213
  "anyhow",
220
214
  "chrono",
221
215
  "clap",
222
- "code-ranker-complexity",
223
216
  "code-ranker-graph",
224
217
  "code-ranker-plugin-api",
225
218
  "code-ranker-plugin-javascript",
@@ -237,20 +230,23 @@ dependencies = [
237
230
  ]
238
231
 
239
232
  [[package]]
240
- name = "code-ranker-complexity"
241
- version = "1.0.0-alpha.5"
233
+ name = "code-ranker-ecmascript-core"
234
+ version = "2.0.0"
242
235
  dependencies = [
236
+ "anyhow",
243
237
  "code-ranker-graph",
244
238
  "code-ranker-plugin-api",
245
- "proc-macro2",
246
- "rust-code-analysis-code-split",
247
- "syn",
239
+ "code-ranker-test-support",
248
240
  "tempfile",
241
+ "tree-sitter",
242
+ "tree-sitter-javascript",
243
+ "tree-sitter-typescript",
244
+ "walkdir",
249
245
  ]
250
246
 
251
247
  [[package]]
252
248
  name = "code-ranker-graph"
253
- version = "1.0.0-alpha.5"
249
+ version = "2.0.0"
254
250
  dependencies = [
255
251
  "anyhow",
256
252
  "chrono",
@@ -261,7 +257,7 @@ dependencies = [
261
257
 
262
258
  [[package]]
263
259
  name = "code-ranker-plugin-api"
264
- version = "1.0.0-alpha.5"
260
+ version = "2.0.0"
265
261
  dependencies = [
266
262
  "anyhow",
267
263
  "chrono",
@@ -270,23 +266,24 @@ dependencies = [
270
266
 
271
267
  [[package]]
272
268
  name = "code-ranker-plugin-javascript"
273
- version = "1.0.0-alpha.5"
269
+ version = "2.0.0"
274
270
  dependencies = [
275
271
  "anyhow",
276
- "code-ranker-graph",
272
+ "code-ranker-ecmascript-core",
277
273
  "code-ranker-plugin-api",
274
+ "code-ranker-test-support",
278
275
  "tempfile",
279
- "tree-sitter",
280
276
  "tree-sitter-javascript",
281
- "walkdir",
282
277
  ]
283
278
 
284
279
  [[package]]
285
280
  name = "code-ranker-plugin-python"
286
- version = "1.0.0-alpha.5"
281
+ version = "2.0.0"
287
282
  dependencies = [
288
283
  "anyhow",
284
+ "code-ranker-graph",
289
285
  "code-ranker-plugin-api",
286
+ "code-ranker-test-support",
290
287
  "tempfile",
291
288
  "tree-sitter",
292
289
  "tree-sitter-python",
@@ -295,33 +292,41 @@ dependencies = [
295
292
 
296
293
  [[package]]
297
294
  name = "code-ranker-plugin-rust"
298
- version = "1.0.0-alpha.5"
295
+ version = "2.0.0"
299
296
  dependencies = [
300
297
  "anyhow",
301
298
  "cargo_metadata",
299
+ "code-ranker-graph",
302
300
  "code-ranker-plugin-api",
303
301
  "proc-macro2",
304
302
  "syn",
303
+ "tree-sitter",
304
+ "tree-sitter-rust",
305
305
  "which",
306
306
  ]
307
307
 
308
308
  [[package]]
309
309
  name = "code-ranker-plugin-typescript"
310
- version = "1.0.0-alpha.5"
310
+ version = "2.0.0"
311
311
  dependencies = [
312
312
  "anyhow",
313
- "code-ranker-graph",
313
+ "code-ranker-ecmascript-core",
314
314
  "code-ranker-plugin-api",
315
- "code-ranker-plugin-javascript",
315
+ "code-ranker-test-support",
316
316
  "tempfile",
317
- "tree-sitter",
318
317
  "tree-sitter-typescript",
319
- "walkdir",
318
+ ]
319
+
320
+ [[package]]
321
+ name = "code-ranker-test-support"
322
+ version = "2.0.0"
323
+ dependencies = [
324
+ "code-ranker-plugin-api",
320
325
  ]
321
326
 
322
327
  [[package]]
323
328
  name = "code-ranker-viewer"
324
- version = "1.0.0-alpha.5"
329
+ version = "2.0.0"
325
330
  dependencies = [
326
331
  "anyhow",
327
332
  "code-ranker-graph",
@@ -341,62 +346,6 @@ version = "0.8.7"
341
346
  source = "registry+https://github.com/rust-lang/crates.io-index"
342
347
  checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
343
348
 
344
- [[package]]
345
- name = "crossbeam"
346
- version = "0.8.4"
347
- source = "registry+https://github.com/rust-lang/crates.io-index"
348
- checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8"
349
- dependencies = [
350
- "crossbeam-channel",
351
- "crossbeam-deque",
352
- "crossbeam-epoch",
353
- "crossbeam-queue",
354
- "crossbeam-utils",
355
- ]
356
-
357
- [[package]]
358
- name = "crossbeam-channel"
359
- version = "0.5.15"
360
- source = "registry+https://github.com/rust-lang/crates.io-index"
361
- checksum = "82b8f8f868b36967f9606790d1903570de9ceaf870a7bf9fbbd3016d636a2cb2"
362
- dependencies = [
363
- "crossbeam-utils",
364
- ]
365
-
366
- [[package]]
367
- name = "crossbeam-deque"
368
- version = "0.8.6"
369
- source = "registry+https://github.com/rust-lang/crates.io-index"
370
- checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51"
371
- dependencies = [
372
- "crossbeam-epoch",
373
- "crossbeam-utils",
374
- ]
375
-
376
- [[package]]
377
- name = "crossbeam-epoch"
378
- version = "0.9.18"
379
- source = "registry+https://github.com/rust-lang/crates.io-index"
380
- checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
381
- dependencies = [
382
- "crossbeam-utils",
383
- ]
384
-
385
- [[package]]
386
- name = "crossbeam-queue"
387
- version = "0.3.12"
388
- source = "registry+https://github.com/rust-lang/crates.io-index"
389
- checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115"
390
- dependencies = [
391
- "crossbeam-utils",
392
- ]
393
-
394
- [[package]]
395
- name = "crossbeam-utils"
396
- version = "0.8.21"
397
- source = "registry+https://github.com/rust-lang/crates.io-index"
398
- checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
399
-
400
349
  [[package]]
401
350
  name = "equivalent"
402
351
  version = "1.0.2"
@@ -425,12 +374,6 @@ version = "0.1.9"
425
374
  source = "registry+https://github.com/rust-lang/crates.io-index"
426
375
  checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582"
427
376
 
428
- [[package]]
429
- name = "fixedbitset"
430
- version = "0.5.7"
431
- source = "registry+https://github.com/rust-lang/crates.io-index"
432
- checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99"
433
-
434
377
  [[package]]
435
378
  name = "foldhash"
436
379
  version = "0.1.5"
@@ -604,91 +547,6 @@ version = "2.8.0"
604
547
  source = "registry+https://github.com/rust-lang/crates.io-index"
605
548
  checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79"
606
549
 
607
- [[package]]
608
- name = "num"
609
- version = "0.4.3"
610
- source = "registry+https://github.com/rust-lang/crates.io-index"
611
- checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23"
612
- dependencies = [
613
- "num-bigint",
614
- "num-complex",
615
- "num-integer",
616
- "num-iter",
617
- "num-rational",
618
- "num-traits",
619
- ]
620
-
621
- [[package]]
622
- name = "num-bigint"
623
- version = "0.4.6"
624
- source = "registry+https://github.com/rust-lang/crates.io-index"
625
- checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9"
626
- dependencies = [
627
- "num-integer",
628
- "num-traits",
629
- ]
630
-
631
- [[package]]
632
- name = "num-complex"
633
- version = "0.4.6"
634
- source = "registry+https://github.com/rust-lang/crates.io-index"
635
- checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495"
636
- dependencies = [
637
- "num-traits",
638
- ]
639
-
640
- [[package]]
641
- name = "num-derive"
642
- version = "0.4.2"
643
- source = "registry+https://github.com/rust-lang/crates.io-index"
644
- checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
645
- dependencies = [
646
- "proc-macro2",
647
- "quote",
648
- "syn",
649
- ]
650
-
651
- [[package]]
652
- name = "num-format"
653
- version = "0.4.4"
654
- source = "registry+https://github.com/rust-lang/crates.io-index"
655
- checksum = "a652d9771a63711fd3c3deb670acfbe5c30a4072e664d7a3bf5a9e1056ac72c3"
656
- dependencies = [
657
- "arrayvec",
658
- "itoa",
659
- ]
660
-
661
- [[package]]
662
- name = "num-integer"
663
- version = "0.1.46"
664
- source = "registry+https://github.com/rust-lang/crates.io-index"
665
- checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f"
666
- dependencies = [
667
- "num-traits",
668
- ]
669
-
670
- [[package]]
671
- name = "num-iter"
672
- version = "0.1.45"
673
- source = "registry+https://github.com/rust-lang/crates.io-index"
674
- checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf"
675
- dependencies = [
676
- "autocfg",
677
- "num-integer",
678
- "num-traits",
679
- ]
680
-
681
- [[package]]
682
- name = "num-rational"
683
- version = "0.4.2"
684
- source = "registry+https://github.com/rust-lang/crates.io-index"
685
- checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824"
686
- dependencies = [
687
- "num-bigint",
688
- "num-integer",
689
- "num-traits",
690
- ]
691
-
692
550
  [[package]]
693
551
  name = "num-traits"
694
552
  version = "0.2.19"
@@ -710,18 +568,6 @@ version = "1.70.2"
710
568
  source = "registry+https://github.com/rust-lang/crates.io-index"
711
569
  checksum = "384b8ab6d37215f3c5301a95a4accb5d64aa607f1fcb26a11b5303878451b4fe"
712
570
 
713
- [[package]]
714
- name = "petgraph"
715
- version = "0.8.3"
716
- source = "registry+https://github.com/rust-lang/crates.io-index"
717
- checksum = "8701b58ea97060d5e5b155d383a69952a60943f0e6dfe30b04c287beb0b27455"
718
- dependencies = [
719
- "fixedbitset",
720
- "hashbrown 0.15.5",
721
- "indexmap",
722
- "serde",
723
- ]
724
-
725
571
  [[package]]
726
572
  name = "pin-project-lite"
727
573
  version = "0.2.17"
@@ -791,37 +637,6 @@ version = "0.8.10"
791
637
  source = "registry+https://github.com/rust-lang/crates.io-index"
792
638
  checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a"
793
639
 
794
- [[package]]
795
- name = "rust-code-analysis-code-split"
796
- version = "0.0.26-cs.0"
797
- source = "registry+https://github.com/rust-lang/crates.io-index"
798
- checksum = "a3b9324bd5110e3d03aa2a301ff9615a802ca8169dd01507e2adf1232e57d341"
799
- dependencies = [
800
- "aho-corasick",
801
- "crossbeam",
802
- "globset",
803
- "num",
804
- "num-derive",
805
- "num-format",
806
- "num-traits",
807
- "petgraph",
808
- "regex",
809
- "serde",
810
- "termcolor",
811
- "tree-sitter",
812
- "tree-sitter-ccomment-code-split",
813
- "tree-sitter-java",
814
- "tree-sitter-javascript",
815
- "tree-sitter-kotlin-ng",
816
- "tree-sitter-mozcpp-code-split",
817
- "tree-sitter-mozjs-code-split",
818
- "tree-sitter-preproc-code-split",
819
- "tree-sitter-python",
820
- "tree-sitter-rust",
821
- "tree-sitter-typescript",
822
- "walkdir",
823
- ]
824
-
825
640
  [[package]]
826
641
  name = "rustix"
827
642
  version = "1.1.4"
@@ -961,15 +776,6 @@ dependencies = [
961
776
  "windows-sys",
962
777
  ]
963
778
 
964
- [[package]]
965
- name = "termcolor"
966
- version = "1.4.1"
967
- source = "registry+https://github.com/rust-lang/crates.io-index"
968
- checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
969
- dependencies = [
970
- "winapi-util",
971
- ]
972
-
973
779
  [[package]]
974
780
  name = "thiserror"
975
781
  version = "1.0.69"
@@ -1043,36 +849,6 @@ dependencies = [
1043
849
  "tree-sitter-language",
1044
850
  ]
1045
851
 
1046
- [[package]]
1047
- name = "tree-sitter-ccomment-code-split"
1048
- version = "0.20.3"
1049
- source = "registry+https://github.com/rust-lang/crates.io-index"
1050
- checksum = "83235cd394d3a46206566faf6524b46f2aeb8e8d910ee0d9a1ea5804365c7ca4"
1051
- dependencies = [
1052
- "cc",
1053
- "tree-sitter-language",
1054
- ]
1055
-
1056
- [[package]]
1057
- name = "tree-sitter-cpp"
1058
- version = "0.23.4"
1059
- source = "registry+https://github.com/rust-lang/crates.io-index"
1060
- checksum = "df2196ea9d47b4ab4a31b9297eaa5a5d19a0b121dceb9f118f6790ad0ab94743"
1061
- dependencies = [
1062
- "cc",
1063
- "tree-sitter-language",
1064
- ]
1065
-
1066
- [[package]]
1067
- name = "tree-sitter-java"
1068
- version = "0.23.5"
1069
- source = "registry+https://github.com/rust-lang/crates.io-index"
1070
- checksum = "0aa6cbcdc8c679b214e616fd3300da67da0e492e066df01bcf5a5921a71e90d6"
1071
- dependencies = [
1072
- "cc",
1073
- "tree-sitter-language",
1074
- ]
1075
-
1076
852
  [[package]]
1077
853
  name = "tree-sitter-javascript"
1078
854
  version = "0.25.0"
@@ -1083,54 +859,12 @@ dependencies = [
1083
859
  "tree-sitter-language",
1084
860
  ]
1085
861
 
1086
- [[package]]
1087
- name = "tree-sitter-kotlin-ng"
1088
- version = "1.1.0"
1089
- source = "registry+https://github.com/rust-lang/crates.io-index"
1090
- checksum = "e800ebbda938acfbf224f4d2c34947a31994b1295ee6e819b65226c7b51b4450"
1091
- dependencies = [
1092
- "cc",
1093
- "tree-sitter-language",
1094
- ]
1095
-
1096
862
  [[package]]
1097
863
  name = "tree-sitter-language"
1098
864
  version = "0.1.7"
1099
865
  source = "registry+https://github.com/rust-lang/crates.io-index"
1100
866
  checksum = "009994f150cc0cd50ff54917d5bc8bffe8cad10ca10d81c34da2ec421ae61782"
1101
867
 
1102
- [[package]]
1103
- name = "tree-sitter-mozcpp-code-split"
1104
- version = "0.20.4"
1105
- source = "registry+https://github.com/rust-lang/crates.io-index"
1106
- checksum = "c5bfceb330f0fd6327cb2d9647e46c92c193628962dca4186a3c74ee15e01ddf"
1107
- dependencies = [
1108
- "cc",
1109
- "tree-sitter-cpp",
1110
- "tree-sitter-language",
1111
- ]
1112
-
1113
- [[package]]
1114
- name = "tree-sitter-mozjs-code-split"
1115
- version = "0.20.3"
1116
- source = "registry+https://github.com/rust-lang/crates.io-index"
1117
- checksum = "24f0056e599a6f8a9459a6bf5d83c39c143cb4bec97f3a88ad7dad4b3865d40d"
1118
- dependencies = [
1119
- "cc",
1120
- "tree-sitter-javascript",
1121
- "tree-sitter-language",
1122
- ]
1123
-
1124
- [[package]]
1125
- name = "tree-sitter-preproc-code-split"
1126
- version = "0.20.3"
1127
- source = "registry+https://github.com/rust-lang/crates.io-index"
1128
- checksum = "7e374ddbdf97fd8910995c6b2e4d50bd15d9741aa078b9e70bc195c723767b9e"
1129
- dependencies = [
1130
- "cc",
1131
- "tree-sitter-language",
1132
- ]
1133
-
1134
868
  [[package]]
1135
869
  name = "tree-sitter-python"
1136
870
  version = "0.25.0"
@@ -1143,9 +877,9 @@ dependencies = [
1143
877
 
1144
878
  [[package]]
1145
879
  name = "tree-sitter-rust"
1146
- version = "0.23.2"
880
+ version = "0.24.2"
1147
881
  source = "registry+https://github.com/rust-lang/crates.io-index"
1148
- checksum = "a4d64d449ca63e683c562c7743946a646671ca23947b9c925c0cfbe65051a4af"
882
+ checksum = "439e577dbe07423ec2582ac62c7531120dbfccfa6e5f92406f93dd271a120e45"
1149
883
  dependencies = [
1150
884
  "cc",
1151
885
  "tree-sitter-language",
@@ -3,7 +3,7 @@ members = ["crates/*"]
3
3
  resolver = "3"
4
4
 
5
5
  [workspace.package]
6
- version = "1.0.0-alpha.5"
6
+ version = "2.0.0"
7
7
  edition = "2024"
8
8
  rust-version = "1.88"
9
9
  license = "Apache-2.0"
@@ -12,14 +12,14 @@ keywords = ["dependency-graph", "coupling", "refactoring", "code-quality", "stat
12
12
  categories = ["development-tools", "command-line-utilities"]
13
13
 
14
14
  [workspace.dependencies]
15
- code-ranker-graph = { path = "crates/code-ranker-graph", version = "1.0.0-alpha.5" }
16
- code-ranker-plugin-api = { path = "crates/code-ranker-plugin-api", version = "1.0.0-alpha.5" }
17
- code-ranker-complexity = { path = "crates/code-ranker-complexity", version = "1.0.0-alpha.5" }
18
- code-ranker-plugin-rust = { path = "crates/code-ranker-plugin-rust", version = "1.0.0-alpha.5" }
19
- code-ranker-plugin-python = { path = "crates/code-ranker-plugin-python", version = "1.0.0-alpha.5" }
20
- code-ranker-plugin-javascript = { path = "crates/code-ranker-plugin-javascript", version = "1.0.0-alpha.5" }
21
- code-ranker-plugin-typescript = { path = "crates/code-ranker-plugin-typescript", version = "1.0.0-alpha.5" }
22
- code-ranker-viewer = { path = "crates/code-ranker-viewer", version = "1.0.0-alpha.5" }
15
+ code-ranker-graph = { path = "crates/code-ranker-graph", version = "2.0.0" }
16
+ code-ranker-plugin-api = { path = "crates/code-ranker-plugin-api", version = "2.0.0" }
17
+ code-ranker-ecmascript-core = { path = "crates/code-ranker-ecmascript-core", version = "2.0.0" }
18
+ code-ranker-plugin-rust = { path = "crates/code-ranker-plugin-rust", version = "2.0.0" }
19
+ code-ranker-plugin-python = { path = "crates/code-ranker-plugin-python", version = "2.0.0" }
20
+ code-ranker-plugin-javascript = { path = "crates/code-ranker-plugin-javascript", version = "2.0.0" }
21
+ code-ranker-plugin-typescript = { path = "crates/code-ranker-plugin-typescript", version = "2.0.0" }
22
+ code-ranker-viewer = { path = "crates/code-ranker-viewer", version = "2.0.0" }
23
23
 
24
24
  anyhow = "1.0"
25
25
  globset = "0.4"
@@ -35,11 +35,14 @@ tempfile = "3"
35
35
  thiserror = "1"
36
36
  which = "8"
37
37
 
38
- rust-code-analysis = { package = "rust-code-analysis-code-split", version = "0.0.26-cs.0" }
38
+ # One version of each tree-sitter grammar across the whole workspace (plugins +
39
+ # metric engines), each at its latest. Enforced by the `grammar_single_version`
40
+ # test. Engines resolve node kinds by name, so they are grammar-version-robust.
39
41
  tree-sitter = "0.26.9"
40
42
  tree-sitter-python = "0.25.0"
41
43
  tree-sitter-javascript = "0.25.0"
42
44
  tree-sitter-typescript = "0.23.2"
45
+ tree-sitter-rust = "0.24.2"
43
46
  walkdir = "2"
44
47
 
45
48
  # The profile that 'dist' will build with
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code-ranker
3
- Version: 1.0.0a5
3
+ Version: 2.0.0
4
4
  Classifier: Development Status :: 3 - Alpha
5
5
  Classifier: Environment :: Console
6
6
  Classifier: Intended Audience :: Developers
@@ -25,7 +25,7 @@ Project-URL: Repository, https://github.com/ffedoroff/code-ranker
25
25
 
26
26
  [![CI](https://github.com/ffedoroff/code-ranker/actions/workflows/ci.yml/badge.svg)](https://github.com/ffedoroff/code-ranker/actions/workflows/ci.yml)
27
27
  [![codecov](https://codecov.io/gh/ffedoroff/code-ranker/branch/main/graph/badge.svg)](https://codecov.io/gh/ffedoroff/code-ranker)
28
- [![dependencies](https://deps.rs/crate/code-ranker/1.0.0-alpha.5/status.svg)](https://deps.rs/crate/code-ranker/1.0.0-alpha.5)
28
+ [![dependencies](https://deps.rs/repo/github/ffedoroff/code-ranker/status.svg)](https://deps.rs/repo/github/ffedoroff/code-ranker)
29
29
  [![Crates.io](https://img.shields.io/crates/v/code-ranker.svg)](https://crates.io/crates/code-ranker)
30
30
  [![npm](https://img.shields.io/npm/v/code-ranker.svg)](https://www.npmjs.com/package/code-ranker)
31
31
  [![PyPI](https://img.shields.io/pypi/v/code-ranker.svg)](https://pypi.org/project/code-ranker/)
@@ -40,7 +40,7 @@ Structural-analysis tool for **Rust, Python, JavaScript and TypeScript** codebas
40
40
  ## Rust quick start
41
41
 
42
42
  ```sh
43
- cargo install code-ranker --version 1.0.0-alpha.5 # install the CLI
43
+ cargo install code-ranker --version 1.1.0 # install the CLI
44
44
  code-ranker report . # make html report in .code-ranker/ folder
45
45
  ```
46
46
 
@@ -119,7 +119,7 @@ curl -fsSL https://github.com/ffedoroff/code-ranker/releases/latest/download/cod
119
119
  powershell -ExecutionPolicy ByPass -c "irm https://github.com/ffedoroff/code-ranker/releases/latest/download/code-ranker-installer.ps1 | iex"
120
120
 
121
121
  # Rust (Cargo)
122
- cargo install code-ranker --version 1.0.0-alpha.5
122
+ cargo install code-ranker --version 1.1.0
123
123
 
124
124
  # Node (npm)
125
125
  npm install -g code-ranker
@@ -128,10 +128,10 @@ npm install -g code-ranker
128
128
  pip install code-ranker
129
129
 
130
130
  # Docker (Docker Hub)
131
- docker pull fedoroff/code-ranker:1.0.0-alpha.5
131
+ docker pull fedoroff/code-ranker:1.1.0
132
132
 
133
133
  # Docker (GHCR — no anonymous rate limits)
134
- docker pull ghcr.io/ffedoroff/code-ranker:1.0.0-alpha.5
134
+ docker pull ghcr.io/ffedoroff/code-ranker:1.1.0
135
135
  ```
136
136
 
137
137
  All channels ship the same `code-ranker` binary built from the same Rust source. Linux (x86_64, aarch64), macOS (x86_64, aarch64), Windows (x86_64).
@@ -161,12 +161,13 @@ Built-in plugins: `rust` (cargo + syn), `python`, `javascript` (also handles Typ
161
161
  - [AI agent skill](docs/ai-skill.md) — a short playbook to attach to an AI agent's context (the ADP/HK fix loop)
162
162
  - [PRD](docs/PRD.md) — product requirements
163
163
  - [DESIGN](docs/DESIGN.md) — technical design
164
+ - [Why structure matters](docs/why-structure-matters.md) — the empirical evidence (studies, books, statistics) behind the signals code-ranker measures
164
165
  - [Principles corpus](principles/) — Rust / Python / TypeScript principle catalogues used by the prompt generator
165
166
 
166
167
  ## Try it now
167
168
 
168
169
  ```sh
169
- cargo install code-ranker --version 1.0.0-alpha.5 && code-ranker report . && open .code-ranker/
170
+ cargo install code-ranker --version 1.1.0 && code-ranker report . && open .code-ranker/
170
171
  ```
171
172
 
172
173
  One command on any Rust project — you'll have an interactive structural map and an AI-ready shortlist in seconds. ⭐ the repo if it helps.
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![CI](https://github.com/ffedoroff/code-ranker/actions/workflows/ci.yml/badge.svg)](https://github.com/ffedoroff/code-ranker/actions/workflows/ci.yml)
4
4
  [![codecov](https://codecov.io/gh/ffedoroff/code-ranker/branch/main/graph/badge.svg)](https://codecov.io/gh/ffedoroff/code-ranker)
5
- [![dependencies](https://deps.rs/crate/code-ranker/1.0.0-alpha.5/status.svg)](https://deps.rs/crate/code-ranker/1.0.0-alpha.5)
5
+ [![dependencies](https://deps.rs/repo/github/ffedoroff/code-ranker/status.svg)](https://deps.rs/repo/github/ffedoroff/code-ranker)
6
6
  [![Crates.io](https://img.shields.io/crates/v/code-ranker.svg)](https://crates.io/crates/code-ranker)
7
7
  [![npm](https://img.shields.io/npm/v/code-ranker.svg)](https://www.npmjs.com/package/code-ranker)
8
8
  [![PyPI](https://img.shields.io/pypi/v/code-ranker.svg)](https://pypi.org/project/code-ranker/)
@@ -17,7 +17,7 @@ Structural-analysis tool for **Rust, Python, JavaScript and TypeScript** codebas
17
17
  ## Rust quick start
18
18
 
19
19
  ```sh
20
- cargo install code-ranker --version 1.0.0-alpha.5 # install the CLI
20
+ cargo install code-ranker --version 1.1.0 # install the CLI
21
21
  code-ranker report . # make html report in .code-ranker/ folder
22
22
  ```
23
23
 
@@ -96,7 +96,7 @@ curl -fsSL https://github.com/ffedoroff/code-ranker/releases/latest/download/cod
96
96
  powershell -ExecutionPolicy ByPass -c "irm https://github.com/ffedoroff/code-ranker/releases/latest/download/code-ranker-installer.ps1 | iex"
97
97
 
98
98
  # Rust (Cargo)
99
- cargo install code-ranker --version 1.0.0-alpha.5
99
+ cargo install code-ranker --version 1.1.0
100
100
 
101
101
  # Node (npm)
102
102
  npm install -g code-ranker
@@ -105,10 +105,10 @@ npm install -g code-ranker
105
105
  pip install code-ranker
106
106
 
107
107
  # Docker (Docker Hub)
108
- docker pull fedoroff/code-ranker:1.0.0-alpha.5
108
+ docker pull fedoroff/code-ranker:1.1.0
109
109
 
110
110
  # Docker (GHCR — no anonymous rate limits)
111
- docker pull ghcr.io/ffedoroff/code-ranker:1.0.0-alpha.5
111
+ docker pull ghcr.io/ffedoroff/code-ranker:1.1.0
112
112
  ```
113
113
 
114
114
  All channels ship the same `code-ranker` binary built from the same Rust source. Linux (x86_64, aarch64), macOS (x86_64, aarch64), Windows (x86_64).
@@ -138,12 +138,13 @@ Built-in plugins: `rust` (cargo + syn), `python`, `javascript` (also handles Typ
138
138
  - [AI agent skill](docs/ai-skill.md) — a short playbook to attach to an AI agent's context (the ADP/HK fix loop)
139
139
  - [PRD](docs/PRD.md) — product requirements
140
140
  - [DESIGN](docs/DESIGN.md) — technical design
141
+ - [Why structure matters](docs/why-structure-matters.md) — the empirical evidence (studies, books, statistics) behind the signals code-ranker measures
141
142
  - [Principles corpus](principles/) — Rust / Python / TypeScript principle catalogues used by the prompt generator
142
143
 
143
144
  ## Try it now
144
145
 
145
146
  ```sh
146
- cargo install code-ranker --version 1.0.0-alpha.5 && code-ranker report . && open .code-ranker/
147
+ cargo install code-ranker --version 1.1.0 && code-ranker report . && open .code-ranker/
147
148
  ```
148
149
 
149
150
  One command on any Rust project — you'll have an interactive structural map and an AI-ready shortlist in seconds. ⭐ the repo if it helps.
@@ -15,7 +15,6 @@ path = "src/main.rs"
15
15
 
16
16
  [dependencies]
17
17
  code-ranker-graph = { workspace = true }
18
- code-ranker-complexity = { workspace = true }
19
18
  code-ranker-plugin-api = { workspace = true }
20
19
  code-ranker-plugin-rust = { workspace = true }
21
20
  code-ranker-plugin-python = { workspace = true }
@@ -1,10 +1,6 @@
1
1
  use code_ranker_plugin_api::log;
2
2
  use std::time::Instant;
3
3
 
4
- /// Re-export the shared timed sub-command helper so call sites in this crate
5
- /// (git / cargo / rustc shell-outs) log through the one common formatter.
6
- pub use code_ranker_plugin_api::log::timed;
7
-
8
4
  pub fn info(msg: &str) {
9
5
  log::line(msg);
10
6
  }