Skip to content

Commit

Permalink
Merge pull request #3426 from Pyomo/revert-3421-remove-3.8
Browse files Browse the repository at this point in the history
Revert "Remove Python 3.8 support"
  • Loading branch information
mrmundt authored Nov 18, 2024
2 parents 9996abe + a4d0b53 commit 9b95aad
Show file tree
Hide file tree
Showing 7 changed files with 44 additions and 25 deletions.
2 changes: 1 addition & 1 deletion .coin-or/projDesc.xml
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ Carl D. Laird, Chair, Pyomo Management Committee, claird at andrew dot cmu dot e

<platform>
<operatingSystem>Any</operatingSystem>
<compiler>Python 3.9, 3.10, 3.11, 3.12, 3.13</compiler>
<compiler>Python 3.8, 3.9, 3.10, 3.11, 3.12, 3.13</compiler>
</platform>

</testedPlatforms>
Expand Down
12 changes: 9 additions & 3 deletions .github/workflows/release_wheel_creation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,12 @@ jobs:
matrix:
os: [ubuntu-22.04, windows-latest, macos-latest]
arch: [all]
wheel-version: ['cp39*', 'cp310*', 'cp311*', 'cp312*', 'cp313*']
wheel-version: ['cp38*', 'cp39*', 'cp310*', 'cp311*', 'cp312*', 'cp313*']

include:
- wheel-version: 'cp38*'
TARGET: 'py38'
GLOBAL_OPTIONS: "--with-cython --with-distributable-extensions"
- wheel-version: 'cp39*'
TARGET: 'py39'
GLOBAL_OPTIONS: "--with-cython --with-distributable-extensions"
Expand Down Expand Up @@ -93,9 +96,12 @@ jobs:
matrix:
os: [ubuntu-22.04]
arch: [all]
wheel-version: ['cp39*', 'cp310*', 'cp311*', 'cp312*', 'cp313*']
wheel-version: ['cp38*', 'cp39*', 'cp310*', 'cp311*', 'cp312*', 'cp313*']

include:
- wheel-version: 'cp38*'
TARGET: 'py38'
GLOBAL_OPTIONS: "--with-cython --with-distributable-extensions"
- wheel-version: 'cp39*'
TARGET: 'py39'
GLOBAL_OPTIONS: "--with-cython --with-distributable-extensions"
Expand Down Expand Up @@ -179,7 +185,7 @@ jobs:
include:
- os: ubuntu-latest
TARGET: generic_tarball
python-version: [3.9]
python-version: [3.8]
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
Expand Down
22 changes: 14 additions & 8 deletions .github/workflows/test_branches.yml
Original file line number Diff line number Diff line change
Expand Up @@ -75,14 +75,20 @@ jobs:
other: [""]
category: [""]

# win/3.8 conda builds no longer work due to environment not being able
# to resolve. We are skipping it now.
exclude:
- os: windows-latest
python: 3.8

include:
- os: ubuntu-latest
python: '3.13'
TARGET: linux
PYENV: pip

- os: macos-latest
python: '3.11'
python: '3.10'
TARGET: osx
PYENV: pip

Expand Down Expand Up @@ -119,7 +125,7 @@ jobs:
PACKAGES: cython

- os: windows-latest
python: '3.10'
python: 3.8
other: /pip
skip_doctest: 1
TARGET: win
Expand Down Expand Up @@ -687,17 +693,17 @@ jobs:
bare-python-env:
name: linux/3.9/bare-env
name: linux/3.8/bare-env
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout Pyomo source
uses: actions/checkout@v4

- name: Set up Python 3.9
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.9
python-version: 3.8

- name: Install Pyomo
run: |
Expand Down Expand Up @@ -755,17 +761,17 @@ jobs:
# id: pip-cache
# with:
# path: cache/pip
# key: pip-${{env.CACHE_VER}}.0-${{runner.os}}-3.9
# key: pip-${{env.CACHE_VER}}.0-${{runner.os}}-3.8

- name: Download build artifacts
uses: actions/download-artifact@v4
with:
path: artifacts

- name: Set up Python 3.9
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.9
python-version: 3.8

- name: Install Python Packages (pip)
shell: bash # DO NOT REMOVE: see note above
Expand Down
26 changes: 16 additions & 10 deletions .github/workflows/test_pr_and_main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,10 +68,16 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python: [ 3.9, '3.10', '3.11', '3.12', '3.13' ]
python: [ 3.8, 3.9, '3.10', '3.11', '3.12', '3.13' ]
other: [""]
category: [""]

# win/3.8 conda builds no longer work due to environment not being able
# to resolve. We are skipping it now.
exclude:
- os: windows-latest
python: 3.8

include:
- os: ubuntu-latest
TARGET: linux
Expand Down Expand Up @@ -113,7 +119,7 @@ jobs:
PACKAGES: cython

- os: windows-latest
python: 3.9
python: 3.8
other: /pip
skip_doctest: 1
TARGET: win
Expand All @@ -128,7 +134,7 @@ jobs:
PYENV: pip

- os: ubuntu-latest
python: 3.9
python: 3.8
other: /slim
slim: 1
skip_doctest: 1
Expand All @@ -145,7 +151,7 @@ jobs:
PACKAGES: "gurobipy dill numpy>2.0 scipy networkx"

- os: ubuntu-latest
python: '3.10'
python: 3.9
other: /pyutilib
TARGET: linux
PYENV: pip
Expand Down Expand Up @@ -721,18 +727,18 @@ jobs:
bare-python-env:
name: linux/3.9/bare-env
name: linux/3.8/bare-env
needs: lint # the linter job is a prerequisite for PRs
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Checkout Pyomo source
uses: actions/checkout@v4

- name: Set up Python 3.9
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.9
python-version: 3.8

- name: Install Pyomo
run: |
Expand Down Expand Up @@ -790,17 +796,17 @@ jobs:
# id: pip-cache
# with:
# path: cache/pip
# key: pip-${{env.CACHE_VER}}.0-${{runner.os}}-3.9
# key: pip-${{env.CACHE_VER}}.0-${{runner.os}}-3.8

- name: Download build artifacts
uses: actions/download-artifact@v4
with:
path: artifacts

- name: Set up Python 3.9
- name: Set up Python 3.8
uses: actions/setup-python@v5
with:
python-version: 3.9
python-version: 3.8

- name: Install Python Packages (pip)
shell: bash # DO NOT REMOVE: see note above
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ Pyomo is available under the BSD License - see the

Pyomo is currently tested with the following Python implementations:

* CPython: 3.9, 3.10, 3.11, 3.12, 3.13
* CPython: 3.8, 3.9, 3.10, 3.11, 3.12, 3.13
* PyPy: 3.9

_Testing and support policy_:
Expand Down
2 changes: 1 addition & 1 deletion doc/OnlineDocs/getting_started/installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ Installation

Pyomo currently supports the following versions of Python:

* CPython: 3.9, 3.10, 3.11, 3.12, 3.13
* CPython: 3.8, 3.9, 3.10, 3.11, 3.12, 3.13
* PyPy: 3

At the time of the first Pyomo release after the end-of-life of a minor Python
Expand Down
3 changes: 2 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -234,6 +234,7 @@ def __ne__(self, other):
'Operating System :: Unix',
'Programming Language :: Python',
'Programming Language :: Python :: 3',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Programming Language :: Python :: 3.10',
'Programming Language :: Python :: 3.11',
Expand All @@ -244,7 +245,7 @@ def __ne__(self, other):
'Topic :: Scientific/Engineering :: Mathematics',
'Topic :: Software Development :: Libraries :: Python Modules',
],
python_requires='>=3.9',
python_requires='>=3.8',
install_requires=['ply'],
extras_require={
# There are certain tests that also require pytest-qt, but because those
Expand Down

0 comments on commit 9b95aad

Please sign in to comment.