code-context-engine 0.4.17__tar.gz → 0.4.18__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 (90) hide show
  1. {code_context_engine-0.4.17/src/code_context_engine.egg-info → code_context_engine-0.4.18}/PKG-INFO +15 -3
  2. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/README.md +14 -2
  3. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/pyproject.toml +1 -1
  4. {code_context_engine-0.4.17 → code_context_engine-0.4.18/src/code_context_engine.egg-info}/PKG-INFO +15 -3
  5. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/embedder.py +5 -1
  6. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/LICENSE +0 -0
  7. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/setup.cfg +0 -0
  8. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/code_context_engine.egg-info/SOURCES.txt +0 -0
  9. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/code_context_engine.egg-info/dependency_links.txt +0 -0
  10. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/code_context_engine.egg-info/entry_points.txt +0 -0
  11. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/code_context_engine.egg-info/requires.txt +0 -0
  12. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/code_context_engine.egg-info/top_level.txt +0 -0
  13. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/__init__.py +0 -0
  14. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/cli.py +0 -0
  15. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/cli_style.py +0 -0
  16. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/compression/__init__.py +0 -0
  17. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/compression/compressor.py +0 -0
  18. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/compression/ollama_client.py +0 -0
  19. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/compression/output_rules.py +0 -0
  20. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/compression/prompts.py +0 -0
  21. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/compression/quality.py +0 -0
  22. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/config.py +0 -0
  23. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/dashboard/__init__.py +0 -0
  24. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/dashboard/_page.py +0 -0
  25. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/dashboard/server.py +0 -0
  26. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/editors.py +0 -0
  27. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/event_bus.py +0 -0
  28. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/__init__.py +0 -0
  29. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/chunker.py +0 -0
  30. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/embedding_cache.py +0 -0
  31. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/git_hooks.py +0 -0
  32. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/git_indexer.py +0 -0
  33. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/ignorefile.py +0 -0
  34. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/manifest.py +0 -0
  35. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/pipeline.py +0 -0
  36. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/secrets.py +0 -0
  37. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/indexer/watcher.py +0 -0
  38. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/integration/__init__.py +0 -0
  39. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/integration/bootstrap.py +0 -0
  40. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/integration/git_context.py +0 -0
  41. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/integration/mcp_server.py +0 -0
  42. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/integration/session_capture.py +0 -0
  43. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/__init__.py +0 -0
  44. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/compressor.py +0 -0
  45. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/db.py +0 -0
  46. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/extractive.py +0 -0
  47. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/grammar.py +0 -0
  48. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/hook_installer.py +0 -0
  49. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/hook_server.py +0 -0
  50. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/hooks.py +0 -0
  51. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/memory/migrate.py +0 -0
  52. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/models.py +0 -0
  53. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/pricing.py +0 -0
  54. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/project_commands.py +0 -0
  55. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/retrieval/__init__.py +0 -0
  56. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/retrieval/confidence.py +0 -0
  57. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/retrieval/query_parser.py +0 -0
  58. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/retrieval/retriever.py +0 -0
  59. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/serve_http.py +0 -0
  60. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/services.py +0 -0
  61. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/storage/__init__.py +0 -0
  62. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/storage/backend.py +0 -0
  63. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/storage/fts_store.py +0 -0
  64. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/storage/graph_store.py +0 -0
  65. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/storage/local_backend.py +0 -0
  66. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/storage/remote_backend.py +0 -0
  67. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/storage/vector_store.py +0 -0
  68. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/src/context_engine/utils.py +0 -0
  69. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_init_probe.py +0 -0
  70. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_mcp_config.py +0 -0
  71. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_safe_cwd.py +0 -0
  72. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_savings.py +0 -0
  73. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_savings_buckets.py +0 -0
  74. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_savings_e2e.py +0 -0
  75. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_serve.py +0 -0
  76. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_sessions_export.py +0 -0
  77. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_sessions_status.py +0 -0
  78. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_smoke.py +0 -0
  79. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_cli_uninstall.py +0 -0
  80. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_config.py +0 -0
  81. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_e2e.py +0 -0
  82. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_editors_codex.py +0 -0
  83. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_editors_opencode.py +0 -0
  84. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_event_bus.py +0 -0
  85. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_models.py +0 -0
  86. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_project_commands.py +0 -0
  87. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_real_life.py +0 -0
  88. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_services.py +0 -0
  89. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_token_efficiency.py +0 -0
  90. {code_context_engine-0.4.17 → code_context_engine-0.4.18}/tests/test_token_packing.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code-context-engine
3
- Version: 0.4.17
3
+ Version: 0.4.18
4
4
  Summary: Index your codebase. AI searches instead of re-reading files. 94% token savings, benchmarked on FastAPI. Works with Claude Code, Cursor, VS Code, Gemini CLI, Codex, and OpenCode.
5
5
  Author-email: Fazle Elahee <felahee@gmail.com>, Raj <rajkumar.sakti@gmail.com>
6
6
  License-Expression: MIT
@@ -216,14 +216,25 @@ We benchmarked CCE against [FastAPI](https://github.com/fastapi/fastapi) (53 sou
216
216
 
217
217
  Output compression (reducing Claude's reply length) provides additional savings (~65% estimated) but is not included in the headline number above.
218
218
 
219
+ ### Multi-language benchmarks
220
+
221
+ | Repo | Language | Files | Retrieval savings | Recall@10 |
222
+ |------|----------|-------|-------------------|-----------|
223
+ | [FastAPI](benchmarks/results/fastapi.md) | Python | 53 | **94%** | 0.90 |
224
+ | [chi](benchmarks/results/chi.md) | Go | 94 | **76%** | 0.67 |
225
+ | [fiber](benchmarks/results/fiber.md) | Go (monorepo) | 396 | **93%** | 0.07 |
226
+
227
+ Go's shorter files reduce the retrieval headroom (smaller baseline). Monorepos dilute recall at top-10 (fiber). Middleware queries with one-feature-per-file hit R=1.00 consistently.
228
+
219
229
  **Reproduce it yourself:**
220
230
 
221
231
  ```bash
222
232
  pip install code-context-engine
223
233
  python benchmarks/run_benchmark.py --repo https://github.com/fastapi/fastapi.git --source-dir fastapi
234
+ python benchmarks/run_benchmark.py --repo https://github.com/go-chi/chi.git --source-dir .
224
235
  ```
225
236
 
226
- Full results in [`benchmarks/results/fastapi.md`](benchmarks/results/fastapi.md). Queries and methodology in [`benchmarks/`](benchmarks/).
237
+ Full results in [`benchmarks/results/`](benchmarks/results/). Queries and methodology in [`benchmarks/`](benchmarks/).
227
238
 
228
239
  ---
229
240
 
@@ -446,7 +457,8 @@ No GPU required. Embedding model runs on CPU via ONNX Runtime.
446
457
 
447
458
  ## Roadmap
448
459
 
449
- - [ ] Multi-repo benchmarks (Django, Express, a Go project)
460
+ - [x] Multi-repo benchmarks (FastAPI, chi, fiber)
461
+ - [ ] More benchmarks (Django, Express)
450
462
  - [ ] Tree-sitter support for C, C++, Ruby, Swift, Kotlin
451
463
  - [ ] Docker support for remote mode
452
464
 
@@ -167,14 +167,25 @@ We benchmarked CCE against [FastAPI](https://github.com/fastapi/fastapi) (53 sou
167
167
 
168
168
  Output compression (reducing Claude's reply length) provides additional savings (~65% estimated) but is not included in the headline number above.
169
169
 
170
+ ### Multi-language benchmarks
171
+
172
+ | Repo | Language | Files | Retrieval savings | Recall@10 |
173
+ |------|----------|-------|-------------------|-----------|
174
+ | [FastAPI](benchmarks/results/fastapi.md) | Python | 53 | **94%** | 0.90 |
175
+ | [chi](benchmarks/results/chi.md) | Go | 94 | **76%** | 0.67 |
176
+ | [fiber](benchmarks/results/fiber.md) | Go (monorepo) | 396 | **93%** | 0.07 |
177
+
178
+ Go's shorter files reduce the retrieval headroom (smaller baseline). Monorepos dilute recall at top-10 (fiber). Middleware queries with one-feature-per-file hit R=1.00 consistently.
179
+
170
180
  **Reproduce it yourself:**
171
181
 
172
182
  ```bash
173
183
  pip install code-context-engine
174
184
  python benchmarks/run_benchmark.py --repo https://github.com/fastapi/fastapi.git --source-dir fastapi
185
+ python benchmarks/run_benchmark.py --repo https://github.com/go-chi/chi.git --source-dir .
175
186
  ```
176
187
 
177
- Full results in [`benchmarks/results/fastapi.md`](benchmarks/results/fastapi.md). Queries and methodology in [`benchmarks/`](benchmarks/).
188
+ Full results in [`benchmarks/results/`](benchmarks/results/). Queries and methodology in [`benchmarks/`](benchmarks/).
178
189
 
179
190
  ---
180
191
 
@@ -397,7 +408,8 @@ No GPU required. Embedding model runs on CPU via ONNX Runtime.
397
408
 
398
409
  ## Roadmap
399
410
 
400
- - [ ] Multi-repo benchmarks (Django, Express, a Go project)
411
+ - [x] Multi-repo benchmarks (FastAPI, chi, fiber)
412
+ - [ ] More benchmarks (Django, Express)
401
413
  - [ ] Tree-sitter support for C, C++, Ruby, Swift, Kotlin
402
414
  - [ ] Docker support for remote mode
403
415
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "code-context-engine"
3
- version = "0.4.17"
3
+ version = "0.4.18"
4
4
  description = "Index your codebase. AI searches instead of re-reading files. 94% token savings, benchmarked on FastAPI. Works with Claude Code, Cursor, VS Code, Gemini CLI, Codex, and OpenCode."
5
5
  readme = {file = "README.md", content-type = "text/markdown"}
6
6
  license = "MIT"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code-context-engine
3
- Version: 0.4.17
3
+ Version: 0.4.18
4
4
  Summary: Index your codebase. AI searches instead of re-reading files. 94% token savings, benchmarked on FastAPI. Works with Claude Code, Cursor, VS Code, Gemini CLI, Codex, and OpenCode.
5
5
  Author-email: Fazle Elahee <felahee@gmail.com>, Raj <rajkumar.sakti@gmail.com>
6
6
  License-Expression: MIT
@@ -216,14 +216,25 @@ We benchmarked CCE against [FastAPI](https://github.com/fastapi/fastapi) (53 sou
216
216
 
217
217
  Output compression (reducing Claude's reply length) provides additional savings (~65% estimated) but is not included in the headline number above.
218
218
 
219
+ ### Multi-language benchmarks
220
+
221
+ | Repo | Language | Files | Retrieval savings | Recall@10 |
222
+ |------|----------|-------|-------------------|-----------|
223
+ | [FastAPI](benchmarks/results/fastapi.md) | Python | 53 | **94%** | 0.90 |
224
+ | [chi](benchmarks/results/chi.md) | Go | 94 | **76%** | 0.67 |
225
+ | [fiber](benchmarks/results/fiber.md) | Go (monorepo) | 396 | **93%** | 0.07 |
226
+
227
+ Go's shorter files reduce the retrieval headroom (smaller baseline). Monorepos dilute recall at top-10 (fiber). Middleware queries with one-feature-per-file hit R=1.00 consistently.
228
+
219
229
  **Reproduce it yourself:**
220
230
 
221
231
  ```bash
222
232
  pip install code-context-engine
223
233
  python benchmarks/run_benchmark.py --repo https://github.com/fastapi/fastapi.git --source-dir fastapi
234
+ python benchmarks/run_benchmark.py --repo https://github.com/go-chi/chi.git --source-dir .
224
235
  ```
225
236
 
226
- Full results in [`benchmarks/results/fastapi.md`](benchmarks/results/fastapi.md). Queries and methodology in [`benchmarks/`](benchmarks/).
237
+ Full results in [`benchmarks/results/`](benchmarks/results/). Queries and methodology in [`benchmarks/`](benchmarks/).
227
238
 
228
239
  ---
229
240
 
@@ -446,7 +457,8 @@ No GPU required. Embedding model runs on CPU via ONNX Runtime.
446
457
 
447
458
  ## Roadmap
448
459
 
449
- - [ ] Multi-repo benchmarks (Django, Express, a Go project)
460
+ - [x] Multi-repo benchmarks (FastAPI, chi, fiber)
461
+ - [ ] More benchmarks (Django, Express)
450
462
  - [ ] Tree-sitter support for C, C++, Ruby, Swift, Kotlin
451
463
  - [ ] Docker support for remote mode
452
464
 
@@ -27,7 +27,9 @@ _DEFAULT_MODEL = "BAAI/bge-small-en-v1.5"
27
27
  # Even parallel=1 takes the multiprocessing path — and that path deadlocks on
28
28
  # macOS (workers idle on SimpleQueue.get while the main thread sits in
29
29
  # asyncio.poll, leaving `cce init` stuck after the file-scan progress bar
30
- # hits 100%). Default to None on darwin; allow override via CCE_EMBED_PARALLEL.
30
+ # hits 100%). On Windows, ONNX Runtime worker processes crash with
31
+ # ACCESS_VIOLATION (0xC0000005) due to DLL handle inheritance issues.
32
+ # Default to None on darwin and win32; allow override via CCE_EMBED_PARALLEL.
31
33
  def _resolve_parallel() -> int | None:
32
34
  override = os.environ.get("CCE_EMBED_PARALLEL")
33
35
  if override:
@@ -37,6 +39,8 @@ def _resolve_parallel() -> int | None:
37
39
  pass
38
40
  if sys.platform == "darwin":
39
41
  return None
42
+ if sys.platform == "win32":
43
+ return None
40
44
  return min(os.cpu_count() or 2, 4)
41
45
 
42
46