From 0036acf43067140fba65e28463e9d731734afbb7 Mon Sep 17 00:00:00 2001 From: Bertrand Coconnier Date: Sat, 4 Nov 2023 21:36:55 +0100 Subject: [PATCH] Upgrade the minimum version of Python to 3.8 * The Python Foundation has dropped the support of Python 3.7 since Aug 17th, 2023. * GitHub is relaxing its support for Python 3.6 and 3.7 (see the GitHub blog - post from Aug 2nd, 2023). --- .github/workflows/cpp-python-build.yml | 26 +++++++++++++------------- README.md | 2 +- python/setup.py.in | 2 +- 3 files changed, 15 insertions(+), 15 deletions(-) diff --git a/.github/workflows/cpp-python-build.yml b/.github/workflows/cpp-python-build.yml index ed866711f..6d58a72d4 100644 --- a/.github/workflows/cpp-python-build.yml +++ b/.github/workflows/cpp-python-build.yml @@ -87,10 +87,10 @@ jobs: run: | sudo apt-get update sudo apt-get install cxxtest valgrind binutils-dev - - name: Set up Python 3.7 + - name: Set up Python 3.8 uses: actions/setup-python@v4 with: - python-version: '3.7' + python-version: '3.8' - name: Install Python packages run: pip install -U cython 'numpy>=1.20' pandas scipy wheel valgrindci 'setuptools>=60.0.0' - name: Configure Julia @@ -288,10 +288,10 @@ jobs: matrix: shared_libs: [ON, OFF] steps: - - name: Set up Python 3.7 + - name: Set up Python 3.8 uses: actions/setup-python@v4 with: - python-version: '3.7' + python-version: '3.8' - name: Install Python packages run: pip install -U cython 'numpy>=1.20' pandas scipy wheel pywin32 'setuptools>=60.0.0' - name: Checkout JSBSim @@ -436,10 +436,10 @@ jobs: matrix: arch: [x86_64, arm64] steps: - - name: Set up Python 3.7 + - name: Set up Python 3.8 uses: actions/setup-python@v4 with: - python-version: '3.7' + python-version: '3.8' - name: Install Python packages if: matrix.arch == 'x86_64' run: pip install -U cython 'numpy>=1.20' pandas scipy build 'setuptools>=60.0.0' mypy @@ -532,7 +532,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] - python-version: [3.7] + python-version: [3.8] include: - python-version: 3.9 os: windows-latest @@ -655,8 +655,8 @@ jobs: rm -f CMakeCache.txt cmake -DCMAKE_OSX_ARCHITECTURES="arm64;x86_64" -DCMAKE_C_FLAGS_RELEASE="-g -O2 -DNDEBUG -fno-math-errno" -DCMAKE_CXX_FLAGS_RELEASE="-g -O2 -DNDEBUG -fno-math-errno" -DCMAKE_BUILD_TYPE=Release .. cmake --build . --target libJSBSim -- -j3 - CIBW_ARCHS_MACOS: x86_64 universal2 - CIBW_SKIP: cp*-musllinux_* cp38-macosx_x86_64 cp39-macosx_x86_64 cp310-macosx_x86_64 cp311-macosx_x86_64 cp312-macosx_x86_64 + CIBW_ARCHS_MACOS: universal2 + CIBW_SKIP: cp*-musllinux_* CIBW_ARCHS_WINDOWS: native JSBSIM_BUILD_CONFIG: RelWithDebInfo with: @@ -793,10 +793,10 @@ jobs: find . -type f -name *.deb -exec cp {} GH_release/. \; # PyPI deployment - - name: Set up Python 3.7 + - name: Set up Python 3.8 uses: actions/setup-python@v4 with: - python-version: '3.7' + python-version: '3.8' - name: PyPI deployment uses: pypa/gh-action-pypi-publish@release/v1 @@ -895,10 +895,10 @@ jobs: run: | sudo apt-get update sudo apt-get install doxygen graphviz - - name: Set up Python 3.7 + - name: Set up Python 3.8 uses: actions/setup-python@v4 with: - python-version: '3.7' + python-version: '3.8' - name: Install Python packages run: pip install -U 'numpy>=1.20' sphinx cython - name: Checkout JSBSim diff --git a/README.md b/README.md index c7f91e546..22d59e1d7 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,7 @@ Debian packages for Ubuntu Linux "Focal" 20.04 LTS and "Jammy" 22.04 LTS for 64 ### Python module -JSBSim provides binary wheel packages for its Python module on Windows, Mac OSX and Linux platforms for several Python versions (3.7, 3.8, 3.9, 3.10 and 3.11). These can be installed using either `pip` or `conda`. +JSBSim provides binary wheel packages for its Python module on Windows, Mac OSX and Linux platforms for several Python versions (3.8, 3.9, 3.10, 3.11 and 3.12). These can be installed using either `pip` or `conda`. #### Installation with `pip` diff --git a/python/setup.py.in b/python/setup.py.in index 47b17c91f..37f71e750 100644 --- a/python/setup.py.in +++ b/python/setup.py.in @@ -197,7 +197,7 @@ setup( scripts=['JSBSim.py'], install_requires=['numpy>=1.20'], ext_modules=[Extension('jsbsim._jsbsim', language='c++', **ext_kwargs)], - python_requires=">=3.7", + python_requires=">=3.8", packages=['jsbsim'], package_data={'jsbsim': package_data_files}, zip_safe=False, # needed for mypy to find the type hints stubs