Require Python 3.6.
authorM. Eric Irrgang <mei2n@virginia.edu>
Mon, 30 Mar 2020 12:46:58 +0000 (12:46 +0000)
committerMark Abraham <mark.j.abraham@gmail.com>
Mon, 30 Mar 2020 12:46:58 +0000 (12:46 +0000)
Python 3.5 will reach end-of-life 2020-09-13.
Ref: https://devguide.python.org/#status-of-python-branches

Refs #3047

CMakeLists.txt
cmake/FindPythonModule.cmake
cmake/gmxVersionInfo.cmake
docs/gmxapi/userguide/install.rst
docs/install-guide/index.rst
docs/release-notes/2021/major/portability.rst
python_packaging/src/setup.py

index 2ea58973e2b4d91478d55bc8a7a362a896d6b32b..22302be17f1a6a16b86b033d7727c71e68a02688 100644 (file)
@@ -854,12 +854,12 @@ if (NOT GMX_BUILD_MDRUN_ONLY)
     # Older CMake versions might not search for Python newer than 3.7.
     set(Python_ADDITIONAL_VERSIONS 3.8)
     if(GMX_PYTHON_PACKAGE)
     # Older CMake versions might not search for Python newer than 3.7.
     set(Python_ADDITIONAL_VERSIONS 3.8)
     if(GMX_PYTHON_PACKAGE)
-        find_package(PythonInterp 3.5 REQUIRED)
+        find_package(PythonInterp 3.6 REQUIRED)
         # Note: PythonLibs will be found later by pybind11.
         # TODO: (issue #2998) When CMake >= 3.12 is required, update detection.
         # Note: PythonLibs will be found later by pybind11.
         # TODO: (issue #2998) When CMake >= 3.12 is required, update detection.
-        # I.e.  find_package(Python3 3.5 COMPONENTS Interpreter Development REQUIRED)
+        # I.e.  find_package(Python3 3.6 COMPONENTS Interpreter Development REQUIRED)
     else()
     else()
-        find_package(PythonInterp 3.5)
+        find_package(PythonInterp 3.6)
     endif()
     find_package(ImageMagick QUIET COMPONENTS convert)
     include(gmxTestImageMagick)
     endif()
     find_package(ImageMagick QUIET COMPONENTS convert)
     include(gmxTestImageMagick)
index 4d000a7e784d4f8c4cddda59344555836f848641..8fbac87163b9c33160156f949f02b2964f3fa183 100644 (file)
@@ -1,7 +1,7 @@
 #
 # This file is part of the GROMACS molecular simulation package.
 #
 #
 # This file is part of the GROMACS molecular simulation package.
 #
-# Copyright (c) 2015,2019, by the GROMACS development team, led by
+# Copyright (c) 2015,2019,2020, by the GROMACS development team, led by
 # Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
 # and including many others, as listed in the AUTHORS file in the
 # top-level source directory and at http://www.gromacs.org.
 # Mark Abraham, David van der Spoel, Berk Hess, and Erik Lindahl,
 # and including many others, as listed in the AUTHORS file in the
 # top-level source directory and at http://www.gromacs.org.
@@ -34,7 +34,7 @@
 
 # Adapted from code posted on cmake-users by Mark Moll (the execute_process()
 # call remains, but other things have been rewritten for nicer behavior).
 
 # Adapted from code posted on cmake-users by Mark Moll (the execute_process()
 # call remains, but other things have been rewritten for nicer behavior).
-find_package(PythonInterp 3.5)
+find_package(PythonInterp 3.6)
 
 function (find_python_module module)
     string(TOUPPER ${module} _module_upper)
 
 function (find_python_module module)
     string(TOUPPER ${module} _module_upper)
index 66bdd6e3157c1b7149d7cc25fabd78a0093221b9..d6c69f81d949db674ba46d5556487827094c5463 100644 (file)
@@ -339,7 +339,7 @@ list(APPEND SET_OF_DIRECTORIES_TO_CHECKSUM "${PROJECT_SOURCE_DIR}/python_packagi
 string(REPLACE ";" ":" DIRECTORIES_TO_CHECKSUM_STRING "${SET_OF_DIRECTORIES_TO_CHECKSUM}")
 # Try to find python for the checksumming script
 set(PythonInterp_FIND_QUIETLY ON)
 string(REPLACE ";" ":" DIRECTORIES_TO_CHECKSUM_STRING "${SET_OF_DIRECTORIES_TO_CHECKSUM}")
 # Try to find python for the checksumming script
 set(PythonInterp_FIND_QUIETLY ON)
-find_package(PythonInterp 3.5)
+find_package(PythonInterp 3.6)
 
 # Rules to create the VersionInfo.cmake file.
 # For git info, the sequence is:
 
 # Rules to create the VersionInfo.cmake file.
 # For git info, the sequence is:
index f4fb5844ea0f9aca27f94817d9a80c7c3e83cdae..14a936a6729723af97089b4fd451602aea1afcb0 100644 (file)
@@ -86,7 +86,7 @@ Background
 *gmxapi* comes in three parts:
 
 * GROMACS gmxapi library for C++.
 *gmxapi* comes in three parts:
 
 * GROMACS gmxapi library for C++.
-* This Python package, supporting Python 3.5 and higher
+* This Python package, supporting Python 3.6 and higher
 * MD restraint plugins and sample gmxapi client code
 
 GROMACS requirements
 * MD restraint plugins and sample gmxapi client code
 
 GROMACS requirements
@@ -111,7 +111,7 @@ to the build configuration.
 Build system requirements
 -------------------------
 
 Build system requirements
 -------------------------
 
-gmxapi can be built for Python 3.5 and higher.
+gmxapi can be built for Python 3.6 and higher.
 
 You will need a C++ 14 compatible compiler and a reasonably up-to-date version
 of CMake.
 
 You will need a C++ 14 compatible compiler and a reasonably up-to-date version
 of CMake.
@@ -143,7 +143,7 @@ that works.
 Python environment requirements
 -------------------------------
 
 Python environment requirements
 -------------------------------
 
-gmxapi requires Python 3.5 or higher. Check your version with
+gmxapi requires Python 3.6 or higher. Check your version with
 :command:`python3 --version` or :command:`python --version`.
 
 ..  note::
 :command:`python3 --version` or :command:`python --version`.
 
 ..  note::
index 2eed400912b7b3685bfd0e489effd83a9b53c25c..09af332a641ea443f3577533f119e6a69086d314 100644 (file)
@@ -371,7 +371,7 @@ Other optional build components
   ``-DGMX_USE_LMFIT=none``.
 * zlib is used by TNG for compressing some kinds of trajectory data
 * Building the |Gromacs| documentation is optional, and requires
   ``-DGMX_USE_LMFIT=none``.
 * zlib is used by TNG for compressing some kinds of trajectory data
 * Building the |Gromacs| documentation is optional, and requires
-  ImageMagick, pdflatex, bibtex, doxygen, python 3.5, sphinx
+  ImageMagick, pdflatex, bibtex, doxygen, python 3.6, sphinx
   |EXPECTED_SPHINX_VERSION|, and pygments.
 * The |Gromacs| utility programs often write data files in formats
   suitable for the Grace plotting tool, but it is straightforward to
   |EXPECTED_SPHINX_VERSION|, and pygments.
 * The |Gromacs| utility programs often write data files in formats
   suitable for the Grace plotting tool, but it is straightforward to
index 48bba8a2827bb91f28159758a94f1563561813b5..1daad92054f53ca7fbf835366c8326e6e86d8c3d 100644 (file)
@@ -1,6 +1,12 @@
 Portability
 ^^^^^^^^^^^
 
 Portability
 ^^^^^^^^^^^
 
+Supported Python versions
+"""""""""""""""""""""""""
+
+Where Python is required,
+`CPython <https://www.python.org>`__ versions 3.6 to 3.8 are supported.
+
 .. Note to developers!
    Please use """"""" to underline the individual entries for fixed issues in the subfolders,
    otherwise the formatting on the webpage is messed up.
 .. Note to developers!
    Please use """"""" to underline the individual entries for fixed issues in the subfolders,
    otherwise the formatting on the webpage is messed up.
index e211a786b77f8a30628b3e0d009015a5c4272a43..1f435dcf971af87768ca14b8d08e09ff73ea2c52 100644 (file)
@@ -151,7 +151,7 @@ setup(
 
     # TODO: single-source version information (currently repeated in gmxapi/version.py)
     version='0.2.0b1',
 
     # TODO: single-source version information (currently repeated in gmxapi/version.py)
     version='0.2.0b1',
-    python_requires='>=3.5, <3.9',
+    python_requires='>=3.6, <3.9',
     setup_requires=['cmake>=3.12',
                     'setuptools>=28',
                     'scikit-build>=0.7'],
     setup_requires=['cmake>=3.12',
                     'setuptools>=28',
                     'scikit-build>=0.7'],