Skip to content

Commit 6b027d0

Browse files
SONARPY-924 Add Python 3.10 to supported versions
1 parent 76bf91e commit 6b027d0

File tree

2 files changed

+10
-6
lines changed

2 files changed

+10
-6
lines changed

python-frontend/src/main/java/org/sonar/plugins/python/api/PythonVersionUtils.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@
2828
import org.sonar.api.utils.log.Loggers;
2929

3030
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_27;
31+
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_310;
3132
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_35;
3233
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_36;
3334
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_37;
@@ -37,7 +38,7 @@
3738
public class PythonVersionUtils {
3839

3940
public enum Version {
40-
V_27(2.7, "27"), V_35(3.5, "35"), V_36(3.6, "36"), V_37(3.7, "37"), V_38(3.8, "38"), V_39(3.9, "39");
41+
V_27(2.7, "27"), V_35(3.5, "35"), V_36(3.6, "36"), V_37(3.7, "37"), V_38(3.8, "38"), V_39(3.9, "39"), V_310(3.10, "310");
4142

4243
private final double value;
4344
private final String serializedValue;
@@ -75,6 +76,7 @@ public String serializedValue() {
7576
STRING_VERSION_MAP.put("3.7", V_37);
7677
STRING_VERSION_MAP.put("3.8", V_38);
7778
STRING_VERSION_MAP.put("3.9", V_39);
79+
STRING_VERSION_MAP.put("3.10", V_310);
7880
}
7981
private static final Version MIN_SUPPORTED_VERSION = V_27;
8082
private static final Version MAX_SUPPORTED_VERSION = V_39;

python-frontend/src/test/java/org/sonar/plugins/python/api/PythonVersionUtilsTest.java

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525

2626
import static org.assertj.core.api.Assertions.assertThat;
2727
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_27;
28+
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_310;
2829
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_35;
2930
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_36;
3031
import static org.sonar.plugins.python.api.PythonVersionUtils.Version.V_37;
@@ -38,13 +39,14 @@ public class PythonVersionUtilsTest {
3839

3940
@Test
4041
public void supportedVersions() {
41-
assertThat(PythonVersionUtils.fromString("")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39);
42-
assertThat(PythonVersionUtils.fromString(",")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39);
42+
assertThat(PythonVersionUtils.fromString("")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39, V_310);
43+
assertThat(PythonVersionUtils.fromString(",")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39, V_310);
4344
assertThat(PythonVersionUtils.fromString("2.7")).containsExactlyInAnyOrder(V_27);
4445
assertThat(PythonVersionUtils.fromString("2")).containsExactlyInAnyOrder(V_27);
4546
assertThat(PythonVersionUtils.fromString("3")).containsExactlyInAnyOrder(V_35);
4647
assertThat(PythonVersionUtils.fromString("3.8, 3.9")).containsExactlyInAnyOrder(V_38, V_39);
4748
assertThat(PythonVersionUtils.fromString("2.7, 3.9")).containsExactlyInAnyOrder(V_27, V_39);
49+
assertThat(PythonVersionUtils.fromString("3.10")).containsExactlyInAnyOrder(V_310);
4850
}
4951

5052
@Test
@@ -55,9 +57,9 @@ public void version_out_of_range() {
5557

5658
@Test
5759
public void error_while_parsing_version() {
58-
assertThat(PythonVersionUtils.fromString("foo")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39);
59-
assertThat(PythonVersionUtils.fromString("3.8.1")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39);
60-
assertThat(PythonVersionUtils.fromString("3.81")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39);
60+
assertThat(PythonVersionUtils.fromString("foo")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39, V_310);
61+
assertThat(PythonVersionUtils.fromString("3.8.1")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39, V_310);
62+
assertThat(PythonVersionUtils.fromString("3.81")).containsExactlyInAnyOrder(V_27, V_35, V_36, V_37, V_38, V_39, V_310);
6163
assertThat(logTester.logs(LoggerLevel.WARN)).contains("Error while parsing value of parameter 'sonar.python.version' (foo). Versions must be specified as MAJOR_VERSION.MIN.VERSION (e.g. \"3.7, 3.8\")");
6264
}
6365
}

0 commit comments

Comments
 (0)