code2llm 0.5.128__tar.gz → 0.5.130__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 (193) hide show
  1. {code2llm-0.5.128/code2llm.egg-info → code2llm-0.5.130}/PKG-INFO +2 -2
  2. {code2llm-0.5.128 → code2llm-0.5.130}/README.md +1 -1
  3. code2llm-0.5.130/VERSION +1 -0
  4. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/__init__.py +1 -1
  5. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_commands.py +1 -1
  6. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/analyzer.py +5 -0
  7. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/file_filter.py +13 -3
  8. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/gitignore.py +11 -0
  9. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/nlp/__init__.py +1 -1
  10. {code2llm-0.5.128 → code2llm-0.5.130/code2llm.egg-info}/PKG-INFO +2 -2
  11. {code2llm-0.5.128 → code2llm-0.5.130}/pyproject.toml +1 -1
  12. code2llm-0.5.128/VERSION +0 -1
  13. {code2llm-0.5.128 → code2llm-0.5.130}/LICENSE +0 -0
  14. {code2llm-0.5.128 → code2llm-0.5.130}/MANIFEST.in +0 -0
  15. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/__main__.py +0 -0
  16. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/__init__.py +0 -0
  17. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/call_graph.py +0 -0
  18. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/cfg.py +0 -0
  19. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/coupling.py +0 -0
  20. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/data_analysis.py +0 -0
  21. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/dfg.py +0 -0
  22. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/pipeline_classifier.py +0 -0
  23. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/pipeline_detector.py +0 -0
  24. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/pipeline_resolver.py +0 -0
  25. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/side_effects.py +0 -0
  26. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/smells.py +0 -0
  27. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/type_inference.py +0 -0
  28. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/utils/__init__.py +0 -0
  29. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/analysis/utils/ast_helpers.py +0 -0
  30. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/api.py +0 -0
  31. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli.py +0 -0
  32. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_analysis.py +0 -0
  33. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/__init__.py +0 -0
  34. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/code2logic.py +0 -0
  35. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/formats.py +0 -0
  36. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/orchestrator.py +0 -0
  37. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/orchestrator_chunked.py +0 -0
  38. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/orchestrator_constants.py +0 -0
  39. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/orchestrator_handlers.py +0 -0
  40. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_exports/prompt.py +0 -0
  41. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/cli_parser.py +0 -0
  42. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/__init__.py +0 -0
  43. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/ast_registry.py +0 -0
  44. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/config.py +0 -0
  45. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/export_pipeline.py +0 -0
  46. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/file_analyzer.py +0 -0
  47. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/file_cache.py +0 -0
  48. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/incremental.py +0 -0
  49. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/__init__.py +0 -0
  50. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/base.py +0 -0
  51. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/cpp.py +0 -0
  52. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/csharp.py +0 -0
  53. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/generic.py +0 -0
  54. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/go_lang.py +0 -0
  55. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/java.py +0 -0
  56. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/php.py +0 -0
  57. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/ruby.py +0 -0
  58. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/rust.py +0 -0
  59. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/ts_extractors.py +0 -0
  60. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/ts_parser.py +0 -0
  61. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/lang/typescript.py +0 -0
  62. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/large_repo.py +0 -0
  63. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/models.py +0 -0
  64. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/persistent_cache.py +0 -0
  65. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/refactoring.py +0 -0
  66. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/repo_files.py +0 -0
  67. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/streaming/__init__.py +0 -0
  68. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/streaming/cache.py +0 -0
  69. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/streaming/incremental.py +0 -0
  70. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/streaming/prioritizer.py +0 -0
  71. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/streaming/scanner.py +0 -0
  72. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/streaming/strategies.py +0 -0
  73. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/streaming_analyzer.py +0 -0
  74. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/core/toon_size_manager.py +0 -0
  75. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/__init__.py +0 -0
  76. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/article_view.py +0 -0
  77. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/base.py +0 -0
  78. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/context_exporter.py +0 -0
  79. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/context_view.py +0 -0
  80. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/dashboard_data.py +0 -0
  81. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/dashboard_renderer.py +0 -0
  82. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/evolution/__init__.py +0 -0
  83. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/evolution/computation.py +0 -0
  84. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/evolution/constants.py +0 -0
  85. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/evolution/exclusion.py +0 -0
  86. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/evolution/render.py +0 -0
  87. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/evolution/yaml_export.py +0 -0
  88. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/evolution_exporter.py +0 -0
  89. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/flow_constants.py +0 -0
  90. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/flow_exporter.py +0 -0
  91. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/flow_renderer.py +0 -0
  92. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/html_dashboard.py +0 -0
  93. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/index_generator/__init__.py +0 -0
  94. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/index_generator/renderer.py +0 -0
  95. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/index_generator/scanner.py +0 -0
  96. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/index_generator.py +0 -0
  97. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/json_exporter.py +0 -0
  98. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/llm_exporter.py +0 -0
  99. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map/__init__.py +0 -0
  100. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map/alerts.py +0 -0
  101. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map/details.py +0 -0
  102. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map/header.py +0 -0
  103. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map/module_list.py +0 -0
  104. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map/utils.py +0 -0
  105. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map/yaml_export.py +0 -0
  106. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/map_exporter.py +0 -0
  107. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/__init__.py +0 -0
  108. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/calls.py +0 -0
  109. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/classic.py +0 -0
  110. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/compact.py +0 -0
  111. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/flow_compact.py +0 -0
  112. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/flow_detailed.py +0 -0
  113. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/flow_full.py +0 -0
  114. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid/utils.py +0 -0
  115. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid_exporter.py +0 -0
  116. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/mermaid_flow_helpers.py +0 -0
  117. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml/__init__.py +0 -0
  118. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml/constants.py +0 -0
  119. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml/core.py +0 -0
  120. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml/evolution.py +0 -0
  121. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml/health.py +0 -0
  122. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml/hotspots.py +0 -0
  123. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml/modules.py +0 -0
  124. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/project_yaml_exporter.py +0 -0
  125. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/readme/__init__.py +0 -0
  126. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/readme/content.py +0 -0
  127. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/readme/files.py +0 -0
  128. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/readme/insights.py +0 -0
  129. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/readme/sections.py +0 -0
  130. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/readme_exporter.py +0 -0
  131. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/report_generators.py +0 -0
  132. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/__init__.py +0 -0
  133. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/helpers.py +0 -0
  134. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/metrics.py +0 -0
  135. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/metrics_core.py +0 -0
  136. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/metrics_duplicates.py +0 -0
  137. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/metrics_health.py +0 -0
  138. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/module_detail.py +0 -0
  139. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon/renderer.py +0 -0
  140. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon.py +0 -0
  141. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/toon_view.py +0 -0
  142. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/validate_project.py +0 -0
  143. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/exporters/yaml_exporter.py +0 -0
  144. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/__init__.py +0 -0
  145. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/_utils.py +0 -0
  146. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow/__init__.py +0 -0
  147. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow/analysis.py +0 -0
  148. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow/cli.py +0 -0
  149. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow/generator.py +0 -0
  150. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow/nodes.py +0 -0
  151. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow/parsing.py +0 -0
  152. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow/utils.py +0 -0
  153. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_flow.py +0 -0
  154. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/llm_task.py +0 -0
  155. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/mermaid/__init__.py +0 -0
  156. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/mermaid/fix.py +0 -0
  157. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/mermaid/png.py +0 -0
  158. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/mermaid/validation.py +0 -0
  159. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/generators/mermaid.py +0 -0
  160. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/nlp/config.py +0 -0
  161. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/nlp/entity_resolution.py +0 -0
  162. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/nlp/intent_matching.py +0 -0
  163. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/nlp/normalization.py +0 -0
  164. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/nlp/pipeline.py +0 -0
  165. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/parsers/toon_parser.py +0 -0
  166. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/patterns/__init__.py +0 -0
  167. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/patterns/detector.py +0 -0
  168. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/refactor/__init__.py +0 -0
  169. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm/refactor/prompt_engine.py +0 -0
  170. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm.egg-info/SOURCES.txt +0 -0
  171. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm.egg-info/dependency_links.txt +0 -0
  172. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm.egg-info/entry_points.txt +0 -0
  173. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm.egg-info/requires.txt +0 -0
  174. {code2llm-0.5.128 → code2llm-0.5.130}/code2llm.egg-info/top_level.txt +0 -0
  175. {code2llm-0.5.128 → code2llm-0.5.130}/setup.cfg +0 -0
  176. {code2llm-0.5.128 → code2llm-0.5.130}/setup.py +0 -0
  177. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_advanced_analysis.py +0 -0
  178. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_analyzer.py +0 -0
  179. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_calls_toon_export.py +0 -0
  180. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_deep_analysis.py +0 -0
  181. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_edge_cases.py +0 -0
  182. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_flow_exporter.py +0 -0
  183. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_format_quality.py +0 -0
  184. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_multilanguage_e2e.py +0 -0
  185. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_nlp_pipeline.py +0 -0
  186. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_nonpython_cc_calls.py +0 -0
  187. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_persistent_cache.py +0 -0
  188. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_pipeline_detector.py +0 -0
  189. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_project_toon_export.py +0 -0
  190. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_prompt_engine.py +0 -0
  191. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_prompt_txt.py +0 -0
  192. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_refactoring_engine.py +0 -0
  193. {code2llm-0.5.128 → code2llm-0.5.130}/tests/test_toon_v2.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code2llm
3
- Version: 0.5.128
3
+ Version: 0.5.130
4
4
  Summary: High-performance Python code flow analysis with optimized TOON format - CFG, DFG, call graphs, and intelligent code queries
5
5
  Home-page: https://github.com/wronai/stts
6
6
  Author: STTS Project
@@ -67,7 +67,7 @@ Dynamic: requires-python
67
67
 
68
68
  ## AI Cost Tracking
69
69
 
70
- ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.5.128-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
70
+ ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.5.130-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
71
71
  ![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-57.3h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
72
72
 
73
73
  - 🤖 **LLM usage:** $7.5000 (166 commits)
@@ -3,7 +3,7 @@
3
3
 
4
4
  ## AI Cost Tracking
5
5
 
6
- ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.5.128-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
6
+ ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.5.130-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
7
7
  ![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-57.3h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
8
8
 
9
9
  - 🤖 **LLM usage:** $7.5000 (166 commits)
@@ -0,0 +1 @@
1
+ 0.5.130
@@ -8,7 +8,7 @@ Includes NLP Processing Pipeline for query normalization, intent matching,
8
8
  and entity resolution with multilingual support.
9
9
  """
10
10
 
11
- __version__ = "0.5.128"
11
+ __version__ = "0.5.130"
12
12
  __author__ = "STTS Project"
13
13
 
14
14
  # Core analysis components (lightweight, always needed)
@@ -156,7 +156,7 @@ def validate_and_setup(args) -> tuple[Path, Path]:
156
156
  print(" or: code2llm llm-flow [options]", file=sys.stderr)
157
157
  sys.exit(2)
158
158
 
159
- source_path = Path(args.source)
159
+ source_path = Path(args.source).resolve()
160
160
  if not source_path.exists():
161
161
  print(f"Error: Source path not found: {source_path}", file=sys.stderr)
162
162
  sys.exit(1)
@@ -43,7 +43,12 @@ class ProjectAnalyzer:
43
43
  def analyze_project(self, project_path: str) -> AnalysisResult:
44
44
  """Analyze entire project."""
45
45
  start_time = time.time()
46
+ print(f"DEBUG analyze_project: input project_path={project_path}")
47
+ print(f"DEBUG analyze_project: self.project_path before={self.project_path}")
46
48
  project_path = self._resolve_project_path(project_path)
49
+ print(f"DEBUG analyze_project: project_path after resolve={project_path}")
50
+ print(f"DEBUG analyze_project: self.project_path after={self.project_path}")
51
+ print(f"DEBUG analyze_project: file_filter.project_path={self.file_filter.project_path}")
47
52
  files = self._collect_files(project_path)
48
53
 
49
54
  if self.config.verbose:
@@ -98,10 +98,20 @@ class FastFileFilter:
98
98
  path_lower = file_path.lower()
99
99
  basename_lower = Path(file_path).name.lower()
100
100
 
101
+ passes_gitignore = self._passes_gitignore(file_path)
102
+ passes_excludes = self._passes_excludes(path_lower, basename_lower)
103
+ passes_includes = self._passes_includes(path_lower)
104
+
105
+ # DEBUG
106
+ if 'vendor' in file_path.lower():
107
+ print(f"DEBUG should_process: {file_path}")
108
+ print(f" passes_gitignore={passes_gitignore}, passes_excludes={passes_excludes}, passes_includes={passes_includes}")
109
+ print(f" _gitignore_parser={self._gitignore_parser}, project_path={self.project_path}")
110
+
101
111
  return (
102
- self._passes_gitignore(file_path) and
103
- self._passes_excludes(path_lower, basename_lower) and
104
- self._passes_includes(path_lower)
112
+ passes_gitignore and
113
+ passes_excludes and
114
+ passes_includes
105
115
  )
106
116
 
107
117
  def _passes_line_count(self, line_count: int) -> bool:
@@ -110,11 +110,22 @@ class GitIgnoreParser:
110
110
  except ValueError:
111
111
  return False
112
112
 
113
+ # DEBUG
114
+ if 'vendor' in path_str:
115
+ print(f"DEBUG is_ignored: path_str={path_str}, entries={len(self._entries)}")
116
+
113
117
  ignored = False
114
118
  for entry in self._entries:
115
119
  if entry.regex.search(path_str):
120
+ # DEBUG
121
+ if 'vendor' in path_str:
122
+ print(f"DEBUG is_ignored: MATCHED pattern={entry.regex.pattern}, is_negated={entry.is_negated}")
116
123
  ignored = not entry.is_negated
117
124
 
125
+ # DEBUG
126
+ if 'vendor' in path_str:
127
+ print(f"DEBUG is_ignored: result={ignored}")
128
+
118
129
  return ignored
119
130
 
120
131
 
@@ -4,7 +4,7 @@ Provides query normalization, intent matching, and entity resolution
4
4
  with multilingual support and fuzzy matching.
5
5
  """
6
6
 
7
- __version__ = "0.5.128"
7
+ __version__ = "0.5.130"
8
8
 
9
9
  from .pipeline import NLPPipeline
10
10
  from .normalization import QueryNormalizer
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: code2llm
3
- Version: 0.5.128
3
+ Version: 0.5.130
4
4
  Summary: High-performance Python code flow analysis with optimized TOON format - CFG, DFG, call graphs, and intelligent code queries
5
5
  Home-page: https://github.com/wronai/stts
6
6
  Author: STTS Project
@@ -67,7 +67,7 @@ Dynamic: requires-python
67
67
 
68
68
  ## AI Cost Tracking
69
69
 
70
- ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.5.128-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
70
+ ![PyPI](https://img.shields.io/badge/pypi-costs-blue) ![Version](https://img.shields.io/badge/version-0.5.130-blue) ![Python](https://img.shields.io/badge/python-3.9+-blue) ![License](https://img.shields.io/badge/license-Apache--2.0-green)
71
71
  ![AI Cost](https://img.shields.io/badge/AI%20Cost-$7.50-orange) ![Human Time](https://img.shields.io/badge/Human%20Time-57.3h-blue) ![Model](https://img.shields.io/badge/Model-openrouter%2Fqwen%2Fqwen3--coder--next-lightgrey)
72
72
 
73
73
  - 🤖 **LLM usage:** $7.5000 (166 commits)
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "code2llm"
7
- version = "0.5.128"
7
+ version = "0.5.130"
8
8
  description = "High-performance Python code flow analysis with optimized TOON format - CFG, DFG, call graphs, and intelligent code queries"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.8"
code2llm-0.5.128/VERSION DELETED
@@ -1 +0,0 @@
1
- 0.5.128
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes