Skip to content

Commit

Permalink
Merge pull request #184 from bnavigator/drop-py37
Browse files Browse the repository at this point in the history
Drop support for Python 3.7
  • Loading branch information
bnavigator authored Nov 23, 2022
2 parents d891ed3 + c92de62 commit 5aa67fc
Show file tree
Hide file tree
Showing 4 changed files with 26 additions and 33 deletions.
6 changes: 2 additions & 4 deletions .github/conda-env/build-env.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,4 @@
name: build-env
dependencies:
- conda-build
- conda-verify
# - boa # re-enable when boa is compatible with mamba 1.0 and Python 3.11
- numpy !=1.23.0
- boa
- numpy!=1.23.0
42 changes: 19 additions & 23 deletions .github/workflows/slycot-build-and-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout Slycot
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: 'recursive'
Expand Down Expand Up @@ -57,7 +57,7 @@ jobs:
- 'ubuntu'
- 'macos'
python:
- '3.7'
- '3.8'
- '3.11'
bla_vendor: [ 'unset' ]
include:
Expand All @@ -79,7 +79,7 @@ jobs:

steps:
- name: Checkout Slycot
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: 'recursive'
Expand Down Expand Up @@ -126,7 +126,7 @@ jobs:
mkdir -p ${wheeldir}
cp ./slycot*.whl ${wheeldir}/
- name: Save wheel
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: slycot-wheels
path: slycot-wheels
Expand All @@ -148,7 +148,7 @@ jobs:

steps:
- name: Checkout Slycot
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
fetch-depth: 0
submodules: 'recursive'
Expand All @@ -168,15 +168,15 @@ jobs:
run: |
set -e
numpyversion=$(python -c 'import numpy; print(numpy.version.version)')
conda build --python "${{ matrix.python }}" --numpy $numpyversion conda-recipe
conda mambabuild --python "${{ matrix.python }}" --numpy $numpyversion conda-recipe
# preserve directory structure for custom conda channel
find "${CONDA_PREFIX}/conda-bld" -maxdepth 2 -name 'slycot*.tar.bz2' | while read -r conda_pkg; do
conda_platform=$(basename $(dirname "${conda_pkg}"))
mkdir -p "slycot-conda-pkgs/${conda_platform}"
cp "${conda_pkg}" "slycot-conda-pkgs/${conda_platform}/"
done
- name: Save to local conda pkg channel
uses: actions/upload-artifact@v2
uses: actions/upload-artifact@v3
with:
name: slycot-conda-pkgs
path: slycot-conda-pkgs
Expand All @@ -190,16 +190,14 @@ jobs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: Checkout Slycot
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Download wheels (if any)
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: slycot-wheels
path: slycot-wheels
- id: set-matrix
run: |
matrix=$(python3 .github/scripts/set-pip-test-matrix.py)
echo "::set-output name=matrix::$matrix"
run: echo "matrix=$(python3 .github/scripts/set-pip-test-matrix.py)" >> $GITHUB_OUTPUT

create-conda-test-matrix:
name: Create conda test matrix
Expand All @@ -210,16 +208,14 @@ jobs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- name: Checkout Slycot
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: Download conda packages
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: slycot-conda-pkgs
path: slycot-conda-pkgs
- id: set-matrix
run: |
matrix=$(python3 .github/scripts/set-conda-test-matrix.py)
echo "::set-output name=matrix::$matrix"
run: echo "matrix=$(python3 .github/scripts/set-conda-test-matrix.py)" >> $GITHUB_OUTPUT


test-wheel:
Expand All @@ -234,11 +230,11 @@ jobs:

steps:
- name: Checkout Slycot
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: slycot-src
- name: Checkout python-control
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: 'python-control/python-control'
path: python-control
Expand Down Expand Up @@ -276,7 +272,7 @@ jobs:
exit 1 ;;
esac
- name: Download wheels
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: slycot-wheels
path: slycot-wheels
Expand Down Expand Up @@ -313,11 +309,11 @@ jobs:

steps:
- name: Checkout Slycot
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
path: slycot-src
- name: Checkout python-control
uses: actions/checkout@v2
uses: actions/checkout@v3
with:
repository: 'python-control/python-control'
path: python-control
Expand All @@ -335,7 +331,7 @@ jobs:
channel-priority: strict
auto-activate-base: false
- name: Download conda packages
uses: actions/download-artifact@v2
uses: actions/download-artifact@v3
with:
name: slycot-conda-pkgs
path: slycot-conda-pkgs
Expand Down
8 changes: 4 additions & 4 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -19,18 +19,18 @@ Riccati, Lyapunov, and Sylvester equations.
Dependencies
------------

Slycot supports Python versions 3.7 or later.
Slycot supports Python versions 3.8 or later.

To run the compiled Slycot package, the following must be installed as
dependencies:

- Python 3.7+
- Python 3.8+
- NumPy

If you are compiling and installing Slycot from source, you will need the
following dependencies:

- Python 3.7+
- Python 3.8+
- NumPy
- scikit-build
- CMake
Expand Down Expand Up @@ -189,7 +189,7 @@ A similar method can be used for Linux and macOS, but is detailed here
for Windows. This method uses conda and conda-forge to get most build
dependencies, *except* for the C compiler.

This procedure has been tested on Python 3.7 and 3.8.
This procedure has been tested on Python 3.8.

1. Install `Microsoft Visual Studio`_.
2. Unpack the source code to a directory of your choice,
Expand Down
3 changes: 1 addition & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ classifiers = [
"Programming Language :: C",
"Programming Language :: Fortran",
"Programming Language :: Python",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
Expand All @@ -37,7 +36,7 @@ classifiers = [
"Operating System :: Unix",
"Operating System :: MacOS",
]
requires-python = ">=3.7"
requires-python = ">=3.8"
dependencies = [
"numpy",
]
Expand Down

0 comments on commit 5aa67fc

Please sign in to comment.