Skip to content

Commit 44cbc00

Browse files
authored
Merge pull request #1914 from codeflash-ai/remove-python-version-field
Remove python_version from API payloads, use language_version
2 parents 3257578 + 33d9280 commit 44cbc00

2 files changed

Lines changed: 7 additions & 18 deletions

File tree

codeflash/api/aiservice.py

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22

33
import json
44
import os
5-
import platform
65
import time
76
from itertools import count
87
from typing import TYPE_CHECKING, Any, cast
@@ -62,7 +61,6 @@ def add_language_metadata(
6261
if language_version is None:
6362
language_version = current_language_support().language_version
6463
payload["language_version"] = language_version
65-
payload["python_version"] = language_version if current_language() == Language.PYTHON else None
6664

6765
if current_language() != Language.PYTHON:
6866
if module_system:
@@ -270,7 +268,6 @@ def optimize_python_code_line_profiler(
270268
"trace_id": trace_id,
271269
"language": language,
272270
"language_version": language_version,
273-
"python_version": language_version if current_language() == Language.PYTHON else None,
274271
"experiment_metadata": experiment_metadata,
275272
"codeflash_version": codeflash_version,
276273
"call_sequence": self.get_next_sequence(),
@@ -534,7 +531,6 @@ def generate_ranking(
534531
"diffs": diffs,
535532
"speedups": speedups,
536533
"optimization_ids": optimization_ids,
537-
"python_version": platform.python_version(), # backward compat
538534
"function_references": function_references,
539535
}
540536
logger.info("loading|Generating ranking")
@@ -843,8 +839,7 @@ def get_optimization_review(
843839
"codeflash_version": codeflash_version,
844840
"calling_fn_details": calling_fn_details,
845841
"language": language,
846-
"language_version": platform.python_version() if current_language() == Language.PYTHON else None,
847-
"python_version": platform.python_version() if current_language() == Language.PYTHON else None,
842+
"language_version": current_language_support().language_version,
848843
"call_sequence": self.get_next_sequence(),
849844
}
850845
console.rule()

tests/test_add_language_metadata.py

Lines changed: 6 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,11 @@ class TestAddLanguageMetadata:
1818
"""Test add_language_metadata sets correct payload fields per language."""
1919

2020
@patch("codeflash.api.aiservice.current_language", return_value=Language.PYTHON)
21-
def test_python_sets_language_version_and_python_version(self, _mock_lang: object) -> None:
22-
"""For Python, both language_version and python_version should be set to the same value."""
21+
def test_python_sets_language_version(self, _mock_lang: object) -> None:
22+
"""For Python, language_version should be set."""
2323
payload: dict = {}
2424
AiServiceClient.add_language_metadata(payload, language_version="3.11.5")
2525
assert payload["language_version"] == "3.11.5"
26-
assert payload["python_version"] == "3.11.5"
2726
assert "module_system" not in payload
2827

2928
@patch("codeflash.api.aiservice.current_language", return_value=Language.PYTHON)
@@ -34,12 +33,11 @@ def test_python_no_module_system(self, _mock_lang: object) -> None:
3433
assert "module_system" not in payload
3534

3635
@patch("codeflash.api.aiservice.current_language", return_value=Language.JAVA)
37-
def test_java_sets_language_version_not_python_version(self, _mock_lang: object) -> None:
38-
"""For Java, language_version should be set, python_version should be None."""
36+
def test_java_sets_language_version(self, _mock_lang: object) -> None:
37+
"""For Java, language_version should be set."""
3938
payload: dict = {}
4039
AiServiceClient.add_language_metadata(payload, language_version="17")
4140
assert payload["language_version"] == "17"
42-
assert payload["python_version"] is None
4341

4442
@patch("codeflash.api.aiservice.current_language", return_value=Language.JAVA)
4543
def test_java_includes_module_system(self, _mock_lang: object) -> None:
@@ -56,12 +54,11 @@ def test_java_no_module_system_when_none(self, _mock_lang: object) -> None:
5654
assert "module_system" not in payload
5755

5856
@patch("codeflash.api.aiservice.current_language", return_value=Language.JAVASCRIPT)
59-
def test_javascript_sets_language_version_not_python_version(self, _mock_lang: object) -> None:
60-
"""For JavaScript, language_version should be set, python_version should be None."""
57+
def test_javascript_sets_language_version(self, _mock_lang: object) -> None:
58+
"""For JavaScript, language_version should be set."""
6159
payload: dict = {}
6260
AiServiceClient.add_language_metadata(payload, language_version="20.11.0")
6361
assert payload["language_version"] == "20.11.0"
64-
assert payload["python_version"] is None
6562

6663
@patch("codeflash.api.aiservice.current_language", return_value=Language.JAVASCRIPT)
6764
def test_javascript_includes_module_system(self, _mock_lang: object) -> None:
@@ -76,7 +73,6 @@ def test_typescript_same_as_javascript(self, _mock_lang: object) -> None:
7673
payload: dict = {}
7774
AiServiceClient.add_language_metadata(payload, language_version="20.11.0", module_system="commonjs")
7875
assert payload["language_version"] == "20.11.0"
79-
assert payload["python_version"] is None
8076
assert payload["module_system"] == "commonjs"
8177

8278
@patch("codeflash.api.aiservice.current_language", return_value=Language.PYTHON)
@@ -87,7 +83,6 @@ def test_none_language_version_python_auto_detects(self, mock_support: MagicMock
8783
payload: dict = {}
8884
AiServiceClient.add_language_metadata(payload, language_version=None)
8985
assert payload["language_version"] == "3.12.0"
90-
assert payload["python_version"] == "3.12.0"
9186

9287
@patch("codeflash.api.aiservice.current_language", return_value=Language.JAVA)
9388
@patch("codeflash.api.aiservice.current_language_support")
@@ -97,4 +92,3 @@ def test_none_language_version_java_auto_detects(self, mock_support: MagicMock,
9792
payload: dict = {}
9893
AiServiceClient.add_language_metadata(payload, language_version=None)
9994
assert payload["language_version"] == "17"
100-
assert payload["python_version"] is None

0 commit comments

Comments
 (0)