codegraphcontext 0.4.2__tar.gz → 0.4.4__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 (138) hide show
  1. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/LICENSE +1 -1
  2. {codegraphcontext-0.4.2/src/codegraphcontext.egg-info → codegraphcontext-0.4.4}/PKG-INFO +13 -13
  3. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/README.md +4 -4
  4. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/pyproject.toml +8 -8
  5. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/tree_sitter_parser.py +5 -4
  6. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/utils/tree_sitter_manager.py +55 -7
  7. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/server.py +7 -4
  8. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4/src/codegraphcontext.egg-info}/PKG-INFO +13 -13
  9. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext.egg-info/requires.txt +8 -4
  10. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/MANIFEST.in +0 -0
  11. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/setup.cfg +0 -0
  12. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/__init__.py +0 -0
  13. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/__main__.py +0 -0
  14. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/__init__.py +0 -0
  15. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/cli_helpers.py +0 -0
  16. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/config_manager.py +0 -0
  17. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/main.py +0 -0
  18. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/registry_commands.py +0 -0
  19. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/setup_macos.py +0 -0
  20. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/setup_wizard.py +0 -0
  21. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/cli/visualizer.py +0 -0
  22. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/__init__.py +0 -0
  23. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/bundle_registry.py +0 -0
  24. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/cgc_bundle.py +0 -0
  25. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/cgcignore.py +0 -0
  26. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/database.py +0 -0
  27. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/database_falkordb.py +0 -0
  28. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/database_falkordb_remote.py +0 -0
  29. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/database_kuzu.py +0 -0
  30. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/falkor_worker.py +0 -0
  31. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/jobs.py +0 -0
  32. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/core/watcher.py +0 -0
  33. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/prompts.py +0 -0
  34. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/server.py +0 -0
  35. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tool_definitions.py +0 -0
  36. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/__init__.py +0 -0
  37. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/advanced_language_query_tool.py +0 -0
  38. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/code_finder.py +0 -0
  39. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/graph_builder.py +0 -0
  40. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/handlers/analysis_handlers.py +0 -0
  41. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/handlers/indexing_handlers.py +0 -0
  42. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/handlers/management_handlers.py +0 -0
  43. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/handlers/query_handlers.py +0 -0
  44. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/handlers/watcher_handlers.py +0 -0
  45. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/__init__.py +0 -0
  46. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/constants.py +0 -0
  47. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/discovery.py +0 -0
  48. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/persistence/__init__.py +0 -0
  49. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/persistence/writer.py +0 -0
  50. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/pipeline.py +0 -0
  51. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/pre_scan.py +0 -0
  52. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/resolution/__init__.py +0 -0
  53. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/resolution/calls.py +0 -0
  54. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/resolution/inheritance.py +0 -0
  55. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/sanitize.py +0 -0
  56. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/schema.py +0 -0
  57. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/schema_contract.py +0 -0
  58. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/indexing/scip_pipeline.py +0 -0
  59. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/c.py +0 -0
  60. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/cpp.py +0 -0
  61. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/csharp.py +0 -0
  62. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/dart.py +0 -0
  63. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/elixir.py +0 -0
  64. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/go.py +0 -0
  65. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/haskell.py +0 -0
  66. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/java.py +0 -0
  67. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/javascript.py +0 -0
  68. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/kotlin.py +0 -0
  69. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/perl.py +0 -0
  70. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/php.py +0 -0
  71. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/python.py +0 -0
  72. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/ruby.py +0 -0
  73. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/rust.py +0 -0
  74. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/scala.py +0 -0
  75. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/swift.py +0 -0
  76. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/typescript.py +0 -0
  77. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/languages/typescriptjsx.py +0 -0
  78. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/package_resolver.py +0 -0
  79. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/c_toolkit.py +0 -0
  80. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/cpp_toolkit.py +0 -0
  81. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/csharp_toolkit.py +0 -0
  82. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/dart_toolkit.py +0 -0
  83. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/go_toolkit.py +0 -0
  84. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/haskell_toolkit.py +0 -0
  85. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/java_toolkit.py +0 -0
  86. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/javascript_toolkit.py +0 -0
  87. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/perl_toolkit.py +0 -0
  88. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/python_toolkit.py +0 -0
  89. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/ruby_toolkit.py +0 -0
  90. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/rust_toolkit.py +0 -0
  91. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/scala_toolkit.py +0 -0
  92. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/swift_toolkit.py +0 -0
  93. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/query_tool_languages/typescript_toolkit.py +0 -0
  94. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/scip_indexer.py +0 -0
  95. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/scip_pb2.py +0 -0
  96. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/tools/system.py +0 -0
  97. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/utils/debug_log.py +0 -0
  98. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/utils/path_ignore.py +0 -0
  99. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/utils/repo_path.py +0 -0
  100. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/utils/visualize_graph.py +0 -0
  101. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/__vite-browser-external-9wXp6ZBx.js +0 -0
  102. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/function-calls-BtRHrqa2.png +0 -0
  103. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/graph-total-D1fBAugo.png +0 -0
  104. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/hero-graph-2voMJp2a.jpg +0 -0
  105. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/hierarchy-DGADo0YT.png +0 -0
  106. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/index-BJT3EMmQ.js +0 -0
  107. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/index-DjDPHWki.css +0 -0
  108. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/parser.worker-CZgm11E5.js +0 -0
  109. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/assets/tree-sitter-qKYAACSa.wasm +0 -0
  110. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/favicon.ico +0 -0
  111. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/index.html +0 -0
  112. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/placeholder.svg +0 -0
  113. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/preview-image.png +0 -0
  114. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/robots.txt +0 -0
  115. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-c.wasm +0 -0
  116. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-c_sharp.wasm +0 -0
  117. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-core.js +0 -0
  118. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-cpp.wasm +0 -0
  119. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-dart.wasm +0 -0
  120. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-go.wasm +0 -0
  121. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-java.wasm +0 -0
  122. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-javascript.wasm +0 -0
  123. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-kotlin.wasm +0 -0
  124. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-perl.wasm +0 -0
  125. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-php.wasm +0 -0
  126. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-python.wasm +0 -0
  127. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-ruby.wasm +0 -0
  128. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-rust.wasm +0 -0
  129. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-swift.wasm +0 -0
  130. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-tsx.wasm +0 -0
  131. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter-typescript.wasm +0 -0
  132. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/tree-sitter.wasm +0 -0
  133. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/web-tree-sitter.js +0 -0
  134. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext/viz/dist/wasm/web-tree-sitter.wasm +0 -0
  135. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext.egg-info/SOURCES.txt +0 -0
  136. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext.egg-info/dependency_links.txt +0 -0
  137. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext.egg-info/entry_points.txt +0 -0
  138. {codegraphcontext-0.4.2 → codegraphcontext-0.4.4}/src/codegraphcontext.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) 2025
3
+ Copyright (c) 2025-2026
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codegraphcontext
3
- Version: 0.4.2
3
+ Version: 0.4.4
4
4
  Summary: An MCP server that indexes local code into a graph database to provide context to AI assistants.
5
5
  Author-email: Shashank Shekhar Singh <shashankshekharsingh1205@gmail.com>
6
6
  License: MIT License
7
7
 
8
- Copyright (c) 2025
8
+ Copyright (c) 2025-2026
9
9
 
10
10
  Permission is hereby granted, free of charge, to any person obtaining a copy
11
11
  of this software and associated documentation files (the "Software"), to deal
@@ -39,13 +39,13 @@ License-File: LICENSE
39
39
  Requires-Dist: neo4j>=5.15.0
40
40
  Requires-Dist: watchdog>=3.0.0
41
41
  Requires-Dist: stdlibs>=2023.11.18
42
- Requires-Dist: typer[all]>=0.9.0
42
+ Requires-Dist: typer>=0.9.0
43
43
  Requires-Dist: rich>=13.7.0
44
44
  Requires-Dist: inquirerpy>=0.3.4
45
45
  Requires-Dist: python-dotenv>=1.0.0
46
- Requires-Dist: tree-sitter>=0.21.0
47
- Requires-Dist: tree-sitter-language-pack>=0.6.0
48
- Requires-Dist: tree-sitter-c-sharp>=0.21.0
46
+ Requires-Dist: tree-sitter>=0.21.0; python_version != "3.13"
47
+ Requires-Dist: tree-sitter-language-pack>=0.6.0; python_version != "3.13"
48
+ Requires-Dist: tree-sitter-c-sharp>=0.21.0; python_version != "3.13"
49
49
  Requires-Dist: pyyaml
50
50
  Requires-Dist: nbformat
51
51
  Requires-Dist: nbconvert>=7.16.6
@@ -57,9 +57,9 @@ Requires-Dist: kuzu>=0.4.0; sys_platform == "win32" or (sys_platform != "win32"
57
57
  Requires-Dist: fastapi>=0.100.0
58
58
  Requires-Dist: uvicorn>=0.22.0
59
59
  Provides-Extra: parsing
60
- Requires-Dist: tree-sitter>=0.21.0; extra == "parsing"
61
- Requires-Dist: tree-sitter-language-pack>=0.6.0; extra == "parsing"
62
- Requires-Dist: tree-sitter-c-sharp>=0.21.0; extra == "parsing"
60
+ Requires-Dist: tree-sitter>=0.21.0; python_version != "3.13" and extra == "parsing"
61
+ Requires-Dist: tree-sitter-language-pack>=0.6.0; python_version != "3.13" and extra == "parsing"
62
+ Requires-Dist: tree-sitter-c-sharp>=0.21.0; python_version != "3.13" and extra == "parsing"
63
63
  Provides-Extra: dev
64
64
  Requires-Dist: pytest>=7.4.0; extra == "dev"
65
65
  Requires-Dist: black>=23.11.0; extra == "dev"
@@ -165,7 +165,7 @@ A powerful **MCP server** and **CLI toolkit** that indexes local code into a gra
165
165
  ---
166
166
 
167
167
  ## Project Details
168
- - **Version:** 0.4.2
168
+ - **Version:** 0.4.4
169
169
  - **Authors:** Shashank Shekhar Singh <shashankshekharsingh1205@gmail.com>
170
170
  - **License:** MIT License (See [LICENSE](LICENSE) for details)
171
171
  - **Website:** [CodeGraphContext](http://codegraphcontext.vercel.app/)
@@ -251,12 +251,12 @@ _If you’re using CodeGraphContext in your project, feel free to open a PR and
251
251
  - `neo4j>=5.15.0`
252
252
  - `watchdog>=3.0.0`
253
253
  - `stdlibs>=2023.11.18`
254
- - `typer[all]>=0.9.0`
254
+ - `typer>=0.9.0`
255
255
  - `rich>=13.7.0`
256
256
  - `inquirerpy>=0.3.7`
257
257
  - `python-dotenv>=1.0.0`
258
- - `tree-sitter>=0.21.0`
259
- - `tree-sitter-language-pack>=0.6.0`
258
+ - `tree-sitter>=0.21.0` (not installed on Python 3.13)
259
+ - `tree-sitter-language-pack>=0.6.0` (not installed on Python 3.13)
260
260
  - `pyyaml`
261
261
  - `pytest`
262
262
  - `nbformat`
@@ -97,7 +97,7 @@ A powerful **MCP server** and **CLI toolkit** that indexes local code into a gra
97
97
  ---
98
98
 
99
99
  ## Project Details
100
- - **Version:** 0.4.2
100
+ - **Version:** 0.4.4
101
101
  - **Authors:** Shashank Shekhar Singh <shashankshekharsingh1205@gmail.com>
102
102
  - **License:** MIT License (See [LICENSE](LICENSE) for details)
103
103
  - **Website:** [CodeGraphContext](http://codegraphcontext.vercel.app/)
@@ -183,12 +183,12 @@ _If you’re using CodeGraphContext in your project, feel free to open a PR and
183
183
  - `neo4j>=5.15.0`
184
184
  - `watchdog>=3.0.0`
185
185
  - `stdlibs>=2023.11.18`
186
- - `typer[all]>=0.9.0`
186
+ - `typer>=0.9.0`
187
187
  - `rich>=13.7.0`
188
188
  - `inquirerpy>=0.3.7`
189
189
  - `python-dotenv>=1.0.0`
190
- - `tree-sitter>=0.21.0`
191
- - `tree-sitter-language-pack>=0.6.0`
190
+ - `tree-sitter>=0.21.0` (not installed on Python 3.13)
191
+ - `tree-sitter-language-pack>=0.6.0` (not installed on Python 3.13)
192
192
  - `pyyaml`
193
193
  - `pytest`
194
194
  - `nbformat`
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "codegraphcontext"
3
- version = "0.4.2"
3
+ version = "0.4.4"
4
4
  description = "An MCP server that indexes local code into a graph database to provide context to AI assistants."
5
5
  authors = [{ name = "Shashank Shekhar Singh", email = "shashankshekharsingh1205@gmail.com" }]
6
6
  readme = "README.md"
@@ -18,13 +18,13 @@ dependencies = [
18
18
  "neo4j>=5.15.0",
19
19
  "watchdog>=3.0.0",
20
20
  "stdlibs>=2023.11.18",
21
- "typer[all]>=0.9.0",
21
+ "typer>=0.9.0",
22
22
  "rich>=13.7.0",
23
23
  "inquirerpy>=0.3.4",
24
24
  "python-dotenv>=1.0.0",
25
- "tree-sitter>=0.21.0",
26
- "tree-sitter-language-pack>=0.6.0",
27
- "tree-sitter-c-sharp>=0.21.0",
25
+ "tree-sitter>=0.21.0; python_version != '3.13'",
26
+ "tree-sitter-language-pack>=0.6.0; python_version != '3.13'",
27
+ "tree-sitter-c-sharp>=0.21.0; python_version != '3.13'",
28
28
  "pyyaml",
29
29
  "nbformat",
30
30
  "nbconvert>=7.16.6",
@@ -39,9 +39,9 @@ dependencies = [
39
39
 
40
40
  [project.optional-dependencies]
41
41
  parsing = [
42
- "tree-sitter>=0.21.0",
43
- "tree-sitter-language-pack>=0.6.0",
44
- "tree-sitter-c-sharp>=0.21.0",
42
+ "tree-sitter>=0.21.0; python_version != '3.13'",
43
+ "tree-sitter-language-pack>=0.6.0; python_version != '3.13'",
44
+ "tree-sitter-c-sharp>=0.21.0; python_version != '3.13'",
45
45
  ]
46
46
  dev = [
47
47
  "pytest>=7.4.0",
@@ -1,9 +1,10 @@
1
1
  """Tree-sitter parser dispatch by language name."""
2
2
 
3
3
  from pathlib import Path
4
- from typing import Dict, Optional
4
+ from typing import TYPE_CHECKING, Dict
5
5
 
6
- from tree_sitter import Language, Parser
6
+ if TYPE_CHECKING:
7
+ from tree_sitter import Language
7
8
 
8
9
  from ..utils.tree_sitter_manager import get_tree_sitter_manager
9
10
 
@@ -15,8 +16,8 @@ class TreeSitterParser:
15
16
  self.language_name = language_name
16
17
  self.ts_manager = get_tree_sitter_manager()
17
18
 
18
- self.language: Language = self.ts_manager.get_language_safe(language_name)
19
- self.parser = Parser(self.language)
19
+ self.language: "Language" = self.ts_manager.get_language_safe(language_name)
20
+ self.parser = self.ts_manager.create_parser(language_name)
20
21
 
21
22
  self.language_specific_parser = None
22
23
  if self.language_name == "python":
@@ -11,11 +11,55 @@ Key design principles:
11
11
  4. Support optional tree-sitter dependency
12
12
  """
13
13
 
14
- from typing import Dict, Optional
14
+ from __future__ import annotations
15
+
16
+ from typing import TYPE_CHECKING, Any, Dict, Optional
15
17
  import threading
18
+ import sys
19
+
20
+ if TYPE_CHECKING:
21
+ from tree_sitter import Language, Parser
22
+
23
+ Language = Any
24
+ Parser = Any
25
+ _tree_sitter_import_error: Optional[ImportError] = None
26
+ _Language = None
27
+ _Parser = None
28
+ _get_language = None
29
+
30
+
31
+ def _missing_tree_sitter_error(import_error: ImportError) -> ImportError:
32
+ """Return an actionable error for optional tree-sitter dependencies."""
33
+ if sys.version_info >= (3, 13):
34
+ return ImportError(
35
+ "Tree-sitter parsing is not available on Python 3.13 because "
36
+ "tree-sitter-language-pack does not publish cp313 wheels. "
37
+ "Install CodeGraphContext with Python 3.12 or 3.14 to use indexing/parsing."
38
+ )
39
+ return ImportError(
40
+ "tree-sitter and tree-sitter-language-pack are required for code parsing. "
41
+ "Install them with: pip install codegraphcontext[parsing]"
42
+ )
43
+
16
44
 
17
- from tree_sitter import Language, Parser
18
- from tree_sitter_language_pack import get_language
45
+ def _load_tree_sitter_dependencies():
46
+ """Load optional tree-sitter dependencies only when parsing is used."""
47
+ global _tree_sitter_import_error, _Language, _Parser, _get_language
48
+
49
+ if _Language is not None and _Parser is not None and _get_language is not None:
50
+ return _Language, _Parser, _get_language
51
+
52
+ try:
53
+ from tree_sitter import Language as ImportedLanguage, Parser as ImportedParser
54
+ from tree_sitter_language_pack import get_language as imported_get_language
55
+ except ImportError as e:
56
+ _tree_sitter_import_error = e
57
+ raise _missing_tree_sitter_error(e) from e
58
+
59
+ _Language = ImportedLanguage
60
+ _Parser = ImportedParser
61
+ _get_language = imported_get_language
62
+ return _Language, _Parser, _get_language
19
63
 
20
64
 
21
65
  # Language name aliases for compatibility
@@ -122,6 +166,7 @@ class TreeSitterManager:
122
166
  """
123
167
  # Normalize the language name
124
168
  canonical_name = self._normalize_language_name(lang)
169
+ _, _, load_language = _load_tree_sitter_dependencies()
125
170
 
126
171
  # Check cache first (fast path, no lock needed for reads)
127
172
  if canonical_name in self._language_cache:
@@ -136,7 +181,7 @@ class TreeSitterManager:
136
181
  try:
137
182
  # Map canonical name to language-pack name where they differ
138
183
  pack_name = LANGUAGE_PACK_NAMES.get(canonical_name, canonical_name)
139
- language = get_language(pack_name)
184
+ language = load_language(pack_name)
140
185
 
141
186
  self._language_cache[canonical_name] = language
142
187
  return language
@@ -167,9 +212,10 @@ class TreeSitterManager:
167
212
  ValueError: If language is not supported
168
213
  Exception: If parser creation fails
169
214
  """
215
+ _, parser_cls, _ = _load_tree_sitter_dependencies()
170
216
  language = self.get_language_safe(lang)
171
217
  # In tree-sitter 0.25+, Parser takes language in constructor
172
- parser = Parser(language)
218
+ parser = parser_cls(language)
173
219
  return parser
174
220
 
175
221
  def is_language_available(self, lang: str) -> bool:
@@ -256,7 +302,10 @@ def execute_query(language: Language, query_string: str, node):
256
302
  >>> for node, name in captures:
257
303
  ... print(f'{name}: {node.type}')
258
304
  """
259
- from tree_sitter import Query, QueryCursor
305
+ try:
306
+ from tree_sitter import Query, QueryCursor
307
+ except ImportError as e:
308
+ raise _missing_tree_sitter_error(e) from e
260
309
 
261
310
  try:
262
311
  # Create query and cursor
@@ -282,4 +331,3 @@ def execute_query(language: Language, query_string: str, node):
282
331
  f"Failed to execute query: {e}\n"
283
332
  f"Query string: {query_string[:100]}..."
284
333
  )
285
-
@@ -81,13 +81,16 @@ async def get_graph(repo_path: Optional[str] = None, cypher_query: Optional[str]
81
81
  elif repo_path:
82
82
  repo_path = str(Path(repo_path).resolve())
83
83
  print(f"DEBUG: Fetching subgraph for: {repo_path}", flush=True)
84
+ # Get all nodes within the repository scope
84
85
  query = """
85
86
  MATCH (r:Repository {path: $repo_path})
86
87
  OPTIONAL MATCH (r)-[:CONTAINS*0..]->(n)
87
- WITH DISTINCT n
88
- WHERE n IS NOT NULL
89
- OPTIONAL MATCH (n)-[rel]->(m)
90
- RETURN n, rel, m
88
+ WITH DISTINCT r, COLLECT(DISTINCT n) as repo_nodes
89
+ UNWIND repo_nodes as node
90
+ OPTIONAL MATCH (node)-[rel]->(target)
91
+ WITH r, node, rel, target, repo_nodes
92
+ WHERE target IN repo_nodes OR target = r
93
+ RETURN node as n, rel, target as m
91
94
  """
92
95
  result = session.run(query, repo_path=repo_path)
93
96
  else:
@@ -1,11 +1,11 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: codegraphcontext
3
- Version: 0.4.2
3
+ Version: 0.4.4
4
4
  Summary: An MCP server that indexes local code into a graph database to provide context to AI assistants.
5
5
  Author-email: Shashank Shekhar Singh <shashankshekharsingh1205@gmail.com>
6
6
  License: MIT License
7
7
 
8
- Copyright (c) 2025
8
+ Copyright (c) 2025-2026
9
9
 
10
10
  Permission is hereby granted, free of charge, to any person obtaining a copy
11
11
  of this software and associated documentation files (the "Software"), to deal
@@ -39,13 +39,13 @@ License-File: LICENSE
39
39
  Requires-Dist: neo4j>=5.15.0
40
40
  Requires-Dist: watchdog>=3.0.0
41
41
  Requires-Dist: stdlibs>=2023.11.18
42
- Requires-Dist: typer[all]>=0.9.0
42
+ Requires-Dist: typer>=0.9.0
43
43
  Requires-Dist: rich>=13.7.0
44
44
  Requires-Dist: inquirerpy>=0.3.4
45
45
  Requires-Dist: python-dotenv>=1.0.0
46
- Requires-Dist: tree-sitter>=0.21.0
47
- Requires-Dist: tree-sitter-language-pack>=0.6.0
48
- Requires-Dist: tree-sitter-c-sharp>=0.21.0
46
+ Requires-Dist: tree-sitter>=0.21.0; python_version != "3.13"
47
+ Requires-Dist: tree-sitter-language-pack>=0.6.0; python_version != "3.13"
48
+ Requires-Dist: tree-sitter-c-sharp>=0.21.0; python_version != "3.13"
49
49
  Requires-Dist: pyyaml
50
50
  Requires-Dist: nbformat
51
51
  Requires-Dist: nbconvert>=7.16.6
@@ -57,9 +57,9 @@ Requires-Dist: kuzu>=0.4.0; sys_platform == "win32" or (sys_platform != "win32"
57
57
  Requires-Dist: fastapi>=0.100.0
58
58
  Requires-Dist: uvicorn>=0.22.0
59
59
  Provides-Extra: parsing
60
- Requires-Dist: tree-sitter>=0.21.0; extra == "parsing"
61
- Requires-Dist: tree-sitter-language-pack>=0.6.0; extra == "parsing"
62
- Requires-Dist: tree-sitter-c-sharp>=0.21.0; extra == "parsing"
60
+ Requires-Dist: tree-sitter>=0.21.0; python_version != "3.13" and extra == "parsing"
61
+ Requires-Dist: tree-sitter-language-pack>=0.6.0; python_version != "3.13" and extra == "parsing"
62
+ Requires-Dist: tree-sitter-c-sharp>=0.21.0; python_version != "3.13" and extra == "parsing"
63
63
  Provides-Extra: dev
64
64
  Requires-Dist: pytest>=7.4.0; extra == "dev"
65
65
  Requires-Dist: black>=23.11.0; extra == "dev"
@@ -165,7 +165,7 @@ A powerful **MCP server** and **CLI toolkit** that indexes local code into a gra
165
165
  ---
166
166
 
167
167
  ## Project Details
168
- - **Version:** 0.4.2
168
+ - **Version:** 0.4.4
169
169
  - **Authors:** Shashank Shekhar Singh <shashankshekharsingh1205@gmail.com>
170
170
  - **License:** MIT License (See [LICENSE](LICENSE) for details)
171
171
  - **Website:** [CodeGraphContext](http://codegraphcontext.vercel.app/)
@@ -251,12 +251,12 @@ _If you’re using CodeGraphContext in your project, feel free to open a PR and
251
251
  - `neo4j>=5.15.0`
252
252
  - `watchdog>=3.0.0`
253
253
  - `stdlibs>=2023.11.18`
254
- - `typer[all]>=0.9.0`
254
+ - `typer>=0.9.0`
255
255
  - `rich>=13.7.0`
256
256
  - `inquirerpy>=0.3.7`
257
257
  - `python-dotenv>=1.0.0`
258
- - `tree-sitter>=0.21.0`
259
- - `tree-sitter-language-pack>=0.6.0`
258
+ - `tree-sitter>=0.21.0` (not installed on Python 3.13)
259
+ - `tree-sitter-language-pack>=0.6.0` (not installed on Python 3.13)
260
260
  - `pyyaml`
261
261
  - `pytest`
262
262
  - `nbformat`
@@ -1,13 +1,10 @@
1
1
  neo4j>=5.15.0
2
2
  watchdog>=3.0.0
3
3
  stdlibs>=2023.11.18
4
- typer[all]>=0.9.0
4
+ typer>=0.9.0
5
5
  rich>=13.7.0
6
6
  inquirerpy>=0.3.4
7
7
  python-dotenv>=1.0.0
8
- tree-sitter>=0.21.0
9
- tree-sitter-language-pack>=0.6.0
10
- tree-sitter-c-sharp>=0.21.0
11
8
  pyyaml
12
9
  nbformat
13
10
  nbconvert>=7.16.6
@@ -17,6 +14,11 @@ requests>=2.28.0
17
14
  fastapi>=0.100.0
18
15
  uvicorn>=0.22.0
19
16
 
17
+ [:python_version != "3.13"]
18
+ tree-sitter>=0.21.0
19
+ tree-sitter-language-pack>=0.6.0
20
+ tree-sitter-c-sharp>=0.21.0
21
+
20
22
  [:sys_platform != "win32" and python_version >= "3.12"]
21
23
  falkordblite>=0.1.0
22
24
 
@@ -29,6 +31,8 @@ black>=23.11.0
29
31
  pytest-asyncio>=0.21.0
30
32
 
31
33
  [parsing]
34
+
35
+ [parsing:python_version != "3.13"]
32
36
  tree-sitter>=0.21.0
33
37
  tree-sitter-language-pack>=0.6.0
34
38
  tree-sitter-c-sharp>=0.21.0