Skip to content

Commit 881ff73

Browse files
committed
[Python] Raise minimum required Python version from 3.8 to 3.9
Python 3.8 has been end-of-life for one year already. The last platform that used it was AlmaLinux 8, but also there it has reached end of life. Instead, RHEL has committed to support Python 3.12 until the end-of-life of RHEL 8 itself: https://access.redhat.com/support/policy/updates/rhel-app-streams-life-cycle Therefore, our CI images for `alma8` also use Python 3.12 now. And although Python 3.9 has also reached end-of-life now, we still need to support it because it's the system Python version on macOS. See: https://devguide.python.org/versions/
1 parent 301e078 commit 881ff73

File tree

5 files changed

+3
-13
lines changed

5 files changed

+3
-13
lines changed

.github/workflows/python_wheel_build.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
runs-on: ubuntu-latest
2727
strategy:
2828
matrix:
29-
target: [cp38-manylinux_x86_64, cp39-manylinux_x86_64, cp310-manylinux_x86_64, cp311-manylinux_x86_64, cp312-manylinux_x86_64, cp313-manylinux_x86_64]
29+
target: [cp39-manylinux_x86_64, cp310-manylinux_x86_64, cp311-manylinux_x86_64, cp312-manylinux_x86_64, cp313-manylinux_x86_64]
3030
name: ${{ matrix.target }}
3131
steps:
3232
- uses: actions/checkout@v4

bindings/distrdf/CMakeLists.txt

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,6 @@ endforeach()
4747
add_custom_target(DistRDF ALL DEPENDS ${py_sources_in_localruntimedir})
4848

4949
# Compile .py files
50-
# We include DistRDF in the build only if Python 3.8+ is used,
51-
# so we can directly use the main Python executable to compile the sources
5250
foreach(py_source ${py_sources})
5351
install(CODE "execute_process(COMMAND ${Python3_EXECUTABLE} -m py_compile ${localruntimedir}/${py_source})")
5452
install(CODE "execute_process(COMMAND ${Python3_EXECUTABLE} -O -m py_compile ${localruntimedir}/${py_source})")

bindings/pyroot/cppyy/CPyCppyy/CMakeLists.txt

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -94,14 +94,6 @@ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang"
9494
target_compile_options(CPyCppyy PRIVATE -Wno-cast-function-type)
9595
endif()
9696

97-
# Disables warnings in Python 3.8 caused by the temporary extra filed for tp_print compatibility
98-
# (see https://github.com/python/cpython/blob/3.8/Include/cpython/object.h#L260).
99-
# Note that Python 3.8 is the lowers Python version that is still supported by
100-
# ROOT, so this compile option can be completely removed soon.
101-
if(NOT MSVC AND Python3_VERSION VERSION_LESS 3.9)
102-
target_compile_options(CPyCppyy PRIVATE -Wno-missing-field-initializers)
103-
endif()
104-
10597
target_compile_definitions(CPyCppyy PRIVATE NO_CPPYY_LEGACY_NAMESPACE)
10698

10799
target_include_directories(CPyCppyy SYSTEM PUBLIC ${Python3_INCLUDE_DIRS})

cmake/modules/SearchInstalledSoftware.cmake

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -708,7 +708,7 @@ endif()
708708
if(tmva-pymva)
709709
list(APPEND python_components NumPy)
710710
endif()
711-
find_package(Python3 3.8 COMPONENTS ${python_components})
711+
find_package(Python3 3.9 COMPONENTS ${python_components})
712712

713713
#---Check for OpenGL installation-------------------------------------------------------
714714
# OpenGL is required by various graf3d features that are enabled with opengl=ON,

test/PostInstall/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ if(BUILD_TESTING)
1919
set_tests_properties(run-hsimple PROPERTIES FIXTURES_SETUP HSIMPLE)
2020
set_tests_properties(read-hsimple PROPERTIES FIXTURES_REQUIRED HSIMPLE)
2121

22-
find_package(Python3 3.8 REQUIRED)
22+
find_package(Python3 3.9 REQUIRED)
2323
# Need to duplicate the import ROOT test because the PASS_REGULAR_EXPRESSION
2424
# property will disable checking the exit code of the test so import ROOT
2525
# might fail but ctest would not report it

0 commit comments

Comments
 (0)