Skip to content

Commit 54178fe

Browse files
authored
Merge pull request #20 from ihmeuw/pnast/feature/mic-5813-jenkins-vers
Add python version json
2 parents 0fa47ef + f764f38 commit 54178fe

File tree

4 files changed

+26
-9
lines changed

4 files changed

+26
-9
lines changed

CHANGELOG.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
**0.2.1 - 02/05/24**
2+
3+
- Add python versions json
4+
15
**0.2.0 - 11/21/24**
26

37
- Drop support for Python 3.9

Jenkinsfile

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
@Library("vivarium_build_utils") _
2-
reusable_pipeline(scheduled_branches: ["main"],
3-
python_versions: ["3.10", "3.11"],
2+
reusable_pipeline(scheduled_branches: ["main"],
43
skip_doc_build: true
54
)

python_versions.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
["3.10", "3.11"]

setup.py

Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,29 @@
1+
import json
12
import sys
23

3-
min_version, max_version = ((3, 10), "3.10"), ((3, 12), "3.12")
4+
from packaging.version import parse
5+
from setuptools import find_packages, setup
6+
7+
with open("python_versions.json", "r") as f:
8+
supported_python_versions = json.load(f)
49

5-
if not (min_version[0] <= sys.version_info[:2] <= max_version[0]):
6-
# Python 3.5 does not support f-strings
10+
python_versions = [parse(v) for v in supported_python_versions]
11+
min_version = min(python_versions)
12+
max_version = max(python_versions)
13+
if not (
14+
min_version <= parse(".".join([str(v) for v in sys.version_info[:2]])) <= max_version
15+
):
716
py_version = ".".join([str(v) for v in sys.version_info[:3]])
17+
# NOTE: Python 3.5 does not support f-strings
818
error = (
9-
"\n----------------------------------------\n"
10-
"Error: Vivarium_testing_utils runs under python {min_version}-{max_version}.\n"
11-
"You are running python {py_version}".format(
12-
min_version=min_version[1], max_version=max_version[1], py_version=py_version
19+
"\n--------------------------------------------\n"
20+
"Error: Vivarium Testing Utils runs under python {min_version}-{max_version}.\n"
21+
"You are running python {py_version}.\n".format(
22+
min_version=min_version.base_version,
23+
max_version=max_version.base_version,
24+
py_version=py_version,
1325
)
26+
+ "--------------------------------------------\n"
1427
)
1528
print(error, file=sys.stderr)
1629
sys.exit(1)

0 commit comments

Comments
 (0)