Skip to content

Commit 5584db5

Browse files
committed
Update suggested and required python versions
1 parent 0692faa commit 5584db5

2 files changed

Lines changed: 26 additions & 20 deletions

File tree

lib/install.bash

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -702,21 +702,23 @@ function install_build_python_guess_version {
702702
if [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -lt 11 ]; then
703703
echo "2.7.18";
704704
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 11 ]; then
705-
echo "3.7.13";
705+
echo "3.7.17";
706706
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 12 ]; then
707-
echo "3.7.13";
707+
echo "3.7.17";
708708
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 13 ]; then
709709
echo "3.8.20";
710710
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 14 ]; then
711711
echo "3.8.20";
712712
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 15 ]; then
713-
echo "3.8.20";
713+
echo "3.10.19";
714714
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 16 ]; then
715-
echo "3.8.20";
715+
echo "3.10.19";
716716
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 17 ]; then
717-
echo "3.10.15";
717+
echo "3.11.14";
718718
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 18 ]; then
719-
echo "3.10.15";
719+
echo "3.12.12";
720+
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 19 ]; then
721+
echo "3.12.12";
720722
else
721723
echoe -e "${REDC}ERROR${NC}: Automatic detection of python version for odoo ${ODOO_VERSION} is not supported!";
722724
return 1;

lib/odoo.bash

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -277,22 +277,26 @@ function odoo_ensure_python_version {
277277
return 2; # Python interpreter is not available
278278
fi
279279

280-
if [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 11 ]; then
280+
local odoo_major_ver;
281+
odoo_major_ver=$(odoo_get_major_version);
282+
if [ "$odoo_major_ver" -le 10 ]; then
283+
# Odoo 8-10: Python 2.7 only
284+
${python_interpreter} -c "import sys; assert (2, 7) <= sys.version_info < (3,);" > /dev/null 2>&1;
285+
elif [ "$odoo_major_ver" -le 13 ]; then
286+
# Odoo 11-13: Python 3.6–3.8
281287
${python_interpreter} -c "import sys; assert (3, 6) <= sys.version_info < (3, 9);" > /dev/null 2>&1;
282-
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 12 ]; then
283-
${python_interpreter} -c "import sys; assert (3, 6) <= sys.version_info < (3, 9);" > /dev/null 2>&1;
284-
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 13 ]; then
285-
${python_interpreter} -c "import sys; assert (3, 6) <= sys.version_info < (3, 10);" > /dev/null 2>&1;
286-
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 14 ]; then
288+
elif [ "$odoo_major_ver" -eq 14 ]; then
289+
# Odoo 14: Python 3.6–3.9
287290
${python_interpreter} -c "import sys; assert (3, 6) <= sys.version_info < (3, 10);" > /dev/null 2>&1;
288-
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 15 ]; then
289-
${python_interpreter} -c "import sys; assert (3, 7) <= sys.version_info < (3, 11);";
290-
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 16 ]; then
291-
${python_interpreter} -c "import sys; assert (3, 7) <= sys.version_info < (3, 11);";
292-
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 17 ]; then
293-
${python_interpreter} -c "import sys; assert sys.version_info > (3, 10);";
294-
elif [ -n "$ODOO_VERSION" ] && [ "$(odoo_get_major_version)" -eq 18 ]; then
295-
${python_interpreter} -c "import sys; assert sys.version_info > (3, 10);";
291+
elif [ "$odoo_major_ver" -le 16 ]; then
292+
# Odoo 15-16: Python 3.7–3.10
293+
${python_interpreter} -c "import sys; assert (3, 7) <= sys.version_info < (3, 11);" > /dev/null 2>&1;
294+
elif [ "$odoo_major_ver" -eq 17 ]; then
295+
# Odoo 17: Python 3.10–3.11
296+
${python_interpreter} -c "import sys; assert (3, 10) <= sys.version_info < (3, 12);" > /dev/null 2>&1;
297+
elif [ "$odoo_major_ver" -le 19 ]; then
298+
# Odoo 18-19: Python 3.10–3.12
299+
${python_interpreter} -c "import sys; assert (3, 10) <= sys.version_info < (3, 13);" > /dev/null 2>&1;
296300
else
297301
echoe -e "${REDC}ERROR${NC}: Automatic detection of python version for odoo ${ODOO_VERSION} is not supported!";
298302
return 1;

0 commit comments

Comments
 (0)