code2llm 0.5.93__tar.gz → 0.5.95__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 (120) hide show
  1. {code2llm-0.5.93 → code2llm-0.5.95}/PKG-INFO +1 -1
  2. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/__init__.py +1 -1
  3. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_exports/prompt.py +0 -28
  4. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/nlp/__init__.py +1 -1
  5. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm.egg-info/PKG-INFO +1 -1
  6. {code2llm-0.5.93 → code2llm-0.5.95}/pyproject.toml +1 -1
  7. {code2llm-0.5.93 → code2llm-0.5.95}/setup.py +1 -1
  8. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_prompt_txt.py +0 -24
  9. {code2llm-0.5.93 → code2llm-0.5.95}/LICENSE +0 -0
  10. {code2llm-0.5.93 → code2llm-0.5.95}/README.md +0 -0
  11. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/__main__.py +0 -0
  12. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/__init__.py +0 -0
  13. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/call_graph.py +0 -0
  14. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/cfg.py +0 -0
  15. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/coupling.py +0 -0
  16. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/data_analysis.py +0 -0
  17. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/dfg.py +0 -0
  18. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/pipeline_detector.py +0 -0
  19. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/side_effects.py +0 -0
  20. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/smells.py +0 -0
  21. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/analysis/type_inference.py +0 -0
  22. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/api.py +0 -0
  23. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli.py +0 -0
  24. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_analysis.py +0 -0
  25. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_commands.py +0 -0
  26. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_exports/__init__.py +0 -0
  27. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_exports/code2logic.py +0 -0
  28. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_exports/formats.py +0 -0
  29. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_exports/orchestrator.py +0 -0
  30. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/cli_parser.py +0 -0
  31. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/__init__.py +0 -0
  32. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/analyzer.py +0 -0
  33. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/config.py +0 -0
  34. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/file_analyzer.py +0 -0
  35. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/file_cache.py +0 -0
  36. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/file_filter.py +0 -0
  37. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/gitignore.py +0 -0
  38. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/__init__.py +0 -0
  39. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/base.py +0 -0
  40. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/cpp.py +0 -0
  41. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/csharp.py +0 -0
  42. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/generic.py +0 -0
  43. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/go_lang.py +0 -0
  44. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/java.py +0 -0
  45. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/php.py +0 -0
  46. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/ruby.py +0 -0
  47. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/rust.py +0 -0
  48. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/lang/typescript.py +0 -0
  49. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/large_repo.py +0 -0
  50. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/models.py +0 -0
  51. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/refactoring.py +0 -0
  52. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/repo_files.py +0 -0
  53. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/streaming/__init__.py +0 -0
  54. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/streaming/cache.py +0 -0
  55. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/streaming/incremental.py +0 -0
  56. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/streaming/prioritizer.py +0 -0
  57. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/streaming/scanner.py +0 -0
  58. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/streaming/strategies.py +0 -0
  59. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/streaming_analyzer.py +0 -0
  60. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/core/toon_size_manager.py +0 -0
  61. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/__init__.py +0 -0
  62. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/article_view.py +0 -0
  63. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/base.py +0 -0
  64. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/context_exporter.py +0 -0
  65. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/context_view.py +0 -0
  66. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/evolution_exporter.py +0 -0
  67. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/flow_constants.py +0 -0
  68. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/flow_exporter.py +0 -0
  69. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/flow_renderer.py +0 -0
  70. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/html_dashboard.py +0 -0
  71. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/index_generator.py +0 -0
  72. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/json_exporter.py +0 -0
  73. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/llm_exporter.py +0 -0
  74. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/map_exporter.py +0 -0
  75. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/mermaid_exporter.py +0 -0
  76. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/project_yaml_exporter.py +0 -0
  77. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/readme_exporter.py +0 -0
  78. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/report_generators.py +0 -0
  79. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/toon/__init__.py +0 -0
  80. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/toon/helpers.py +0 -0
  81. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/toon/metrics.py +0 -0
  82. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/toon/module_detail.py +0 -0
  83. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/toon/renderer.py +0 -0
  84. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/toon.py +0 -0
  85. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/toon_view.py +0 -0
  86. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/validate_project.py +0 -0
  87. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/exporters/yaml_exporter.py +0 -0
  88. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/generators/__init__.py +0 -0
  89. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/generators/llm_flow.py +0 -0
  90. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/generators/llm_task.py +0 -0
  91. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/generators/mermaid.py +0 -0
  92. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/nlp/config.py +0 -0
  93. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/nlp/entity_resolution.py +0 -0
  94. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/nlp/intent_matching.py +0 -0
  95. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/nlp/normalization.py +0 -0
  96. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/nlp/pipeline.py +0 -0
  97. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/patterns/__init__.py +0 -0
  98. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/patterns/detector.py +0 -0
  99. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/refactor/__init__.py +0 -0
  100. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm/refactor/prompt_engine.py +0 -0
  101. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm.egg-info/SOURCES.txt +0 -0
  102. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm.egg-info/dependency_links.txt +0 -0
  103. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm.egg-info/entry_points.txt +0 -0
  104. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm.egg-info/requires.txt +0 -0
  105. {code2llm-0.5.93 → code2llm-0.5.95}/code2llm.egg-info/top_level.txt +0 -0
  106. {code2llm-0.5.93 → code2llm-0.5.95}/setup.cfg +0 -0
  107. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_advanced_analysis.py +0 -0
  108. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_analyzer.py +0 -0
  109. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_deep_analysis.py +0 -0
  110. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_edge_cases.py +0 -0
  111. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_flow_exporter.py +0 -0
  112. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_format_quality.py +0 -0
  113. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_multilanguage_e2e.py +0 -0
  114. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_nlp_pipeline.py +0 -0
  115. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_nonpython_cc_calls.py +0 -0
  116. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_pipeline_detector.py +0 -0
  117. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_project_toon_export.py +0 -0
  118. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_prompt_engine.py +0 -0
  119. {code2llm-0.5.93 → code2llm-0.5.95}/tests/test_refactoring_engine.py +0 -0
  120. {code2llm-0.5.93 → code2llm-0.5.95}/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.93
3
+ Version: 0.5.95
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
@@ -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.93"
11
+ __version__ = "0.5.95"
12
12
  __author__ = "STTS Project"
13
13
 
14
14
  # Core analysis components (lightweight, always needed)
@@ -14,7 +14,6 @@ def _export_prompt_txt(args, output_dir: Path, formats: list[str], source_path:
14
14
  lines = _build_prompt_header(project_path)
15
15
  lines.extend(_build_main_files_section(output_dir, output_rel_path))
16
16
  lines.extend(_build_optional_files_section(output_dir, output_rel_path))
17
- lines.extend(_build_source_files_section(source_path))
18
17
 
19
18
  missing = _get_missing_files(output_dir)
20
19
  if missing:
@@ -45,7 +44,6 @@ def _export_chunked_prompt_txt(args, output_dir: Path, formats: list[str], sourc
45
44
  lines = _build_prompt_header(project_path)
46
45
  lines.extend(_build_main_files_section(output_dir, output_rel_path))
47
46
  lines.extend(_build_optional_files_section(output_dir, output_rel_path))
48
- lines.extend(_build_source_files_section(source_path))
49
47
 
50
48
  if subprojects:
51
49
  lines.extend(_build_subprojects_section(subprojects, output_dir, output_rel_path))
@@ -102,11 +100,6 @@ _OPTIONAL_FILES = [
102
100
  ]
103
101
 
104
102
 
105
- _SOURCE_FILES = [
106
- ('code2llm/cli_exports/orchestrator.py', 'Export orchestration - coordinates single-project and chunked export flows, including prompt generation'),
107
- ]
108
-
109
-
110
103
  def _build_prompt_header(project_path: str) -> List[str]:
111
104
  """Build header section of prompt."""
112
105
  return [
@@ -162,27 +155,6 @@ def _build_optional_files_section(output_dir: Path, output_rel_path: str) -> Lis
162
155
  return ["", "Optional files:", ""] + lines
163
156
 
164
157
 
165
- def _build_source_files_section(source_path: Optional[Path]) -> List[str]:
166
- """Build source files section with size metrics."""
167
- if source_path is None:
168
- return []
169
-
170
- source_root = source_path if source_path.is_dir() else source_path.parent
171
- lines = []
172
- for rel_path, desc in _SOURCE_FILES:
173
- file_path = source_root / rel_path
174
- if not file_path.exists():
175
- continue
176
-
177
- size_str = _format_size(file_path.stat().st_size)
178
- lines.append(f"- {rel_path} ({desc}) [{size_str}]")
179
-
180
- if not lines:
181
- return []
182
-
183
- return ["", "Source files:", ""] + lines
184
-
185
-
186
158
  def _format_size(size_bytes: int) -> str:
187
159
  """Format file size in human readable format."""
188
160
  if size_bytes < 1024:
@@ -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.93"
7
+ __version__ = "0.5.95"
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.93
3
+ Version: 0.5.95
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
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "code2llm"
7
- version = "0.5.93"
7
+ version = "0.5.95"
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"
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
4
4
  import os
5
5
 
6
6
  # Read version
7
- version = "0.5.92"
7
+ version = "0.5.94"
8
8
 
9
9
  # Read long description
10
10
  def read_readme():
@@ -17,12 +17,6 @@ class TestPromptTxtGeneration:
17
17
  with tempfile.TemporaryDirectory() as tmpdir:
18
18
  yield Path(tmpdir)
19
19
 
20
- @pytest.fixture
21
- def temp_source_dir(self):
22
- """Create temporary source directory."""
23
- with tempfile.TemporaryDirectory() as tmpdir:
24
- yield Path(tmpdir)
25
-
26
20
  @pytest.fixture
27
21
  def mock_args(self):
28
22
  """Create mock args object with verbose flag."""
@@ -158,24 +152,6 @@ class TestPromptTxtGeneration:
158
152
  assert "P1 — Split or simplify the highest-CC / god modules" in content, "Analysis-driven refactoring should follow blockers"
159
153
  assert "P2 — Keep the compact project overview" in content, "Project overview should be preserved as a later priority"
160
154
 
161
- def test_prompt_txt_includes_orchestrator_source_file_description(self, temp_output_dir, temp_source_dir, mock_args):
162
- """Test that prompt.txt includes the orchestrator.py source file description."""
163
- formats = ['code2logic']
164
- source_path = temp_source_dir / 'myproject'
165
-
166
- orchestrator_file = source_path / 'code2llm' / 'cli_exports' / 'orchestrator.py'
167
- orchestrator_file.parent.mkdir(parents=True, exist_ok=True)
168
- orchestrator_file.write_text('"""Export orchestration."""\n')
169
-
170
- _export_prompt_txt(mock_args, temp_output_dir, formats, source_path)
171
-
172
- prompt_file = temp_output_dir / 'prompt.txt'
173
- content = prompt_file.read_text()
174
-
175
- assert "Source files:" in content, "Source files section should be present"
176
- assert "code2llm/cli_exports/orchestrator.py" in content, "Orchestrator file should be listed"
177
- assert "Export orchestration" in content, "Orchestrator description should be included"
178
-
179
155
  def test_prompt_txt_content_structure(self, temp_output_dir, mock_args):
180
156
  """Test the overall structure of generated prompt.txt."""
181
157
  formats = ['code2logic']
File without changes
File without changes
File without changes
File without changes
File without changes