Skip to content

Commit

Permalink
Removing support for Python 3.8 (#294)
Browse files Browse the repository at this point in the history
* Removing support for Python 3.8

* Removing support for Python 3.8 in conda build

* removing unnecesary cython install in ci

* changing readme python version to 3.9
  • Loading branch information
timryanb authored Mar 11, 2024
1 parent 590b88e commit 6721349
Show file tree
Hide file tree
Showing 8 changed files with 29 additions and 27 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/deploy_conda_package.yml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ jobs:
uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: 3.8
python-version: 3.9

- name: Build FUNtoFEM package
run: |
Expand Down
10 changes: 4 additions & 6 deletions .github/workflows/reform_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -67,19 +67,17 @@ jobs:
uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: 3.8
python-version: 3.9

- name: Install TACS
run: |
git clone https://github.com/smdogroup/tacs.git /home/runner/work/tacs;
export TACS_DIR=/home/runner/work/tacs;
conda install zlib=1.2.11;
conda install -c anaconda openmpi -q -y;
conda install gxx_linux-64=9.3.0 -q -y;
conda install -c conda-forge sysroot_linux-64=2.17 -q -y;
conda install -c conda-forge openmpi openmpi-mpicxx -q -y;
conda install -c anaconda openblas -q -y;
conda install -c conda-forge lapack -q -y;
conda install -c conda-forge metis -q -y;
pip install cython;
conda install -c conda-forge metis=5.1.0 -q -y;
cd $TACS_DIR;
cp Makefile.in.info Makefile.in;
make ${{ matrix.OPTIONAL }} TACS_DIR=$TACS_DIR METIS_INCLUDE=-I${CONDA_PREFIX}/include/ METIS_LIB="-L${CONDA_PREFIX}/lib/ -lmetis";
Expand Down
12 changes: 5 additions & 7 deletions .github/workflows/unit_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,20 +70,18 @@ jobs:
uses: conda-incubator/setup-miniconda@v2
with:
auto-update-conda: true
python-version: 3.8
python-version: 3.9

- name: Install TACS
run: |
git clone https://github.com/smdogroup/tacs.git /home/runner/work/tacs;
export TACS_DIR=/home/runner/work/tacs;
conda install zlib=1.2.11;
conda install -c anaconda openmpi -q -y;
conda install gxx_linux-64=9.3.0 -q -y;
conda install -c conda-forge sysroot_linux-64=2.17 -q -y;
conda install -c conda-forge openmpi openmpi-mpicxx -q -y;
conda install -c anaconda openblas -q -y;
conda install -c conda-forge lapack -q -y;
conda install -c conda-forge metis -q -y;
conda install -c conda-forge petsc=3.12 petsc4py -q -y;
pip install cython;
conda install -c conda-forge metis=5.1.0 -q -y;
conda install -c conda-forge petsc=3.19 petsc4py -q -y;
cd $TACS_DIR;
cp Makefile.in.info Makefile.in;
make ${{ matrix.OPTIONAL }} TACS_DIR=$TACS_DIR METIS_INCLUDE=-I${CONDA_PREFIX}/include/ METIS_LIB="-L${CONDA_PREFIX}/lib/ -lmetis";
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ For those intending to be users of funtofem and not developers, the easiest way
Conda packages of funtofem are available for the Linux and Mac OS from our smdogroup channel. The user should first open a terminal and create
a conda environment, such as `F2F`, and then install funtofem as follows with conda install.
```
conda create -n F2F python=3.8
conda create -n F2F python=3.9
conda activate F2F
conda install -c conda-forge -c smdogroup funtofem
```
Expand Down
2 changes: 1 addition & 1 deletion conda/conda_build_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,10 @@ scalar:
- complex

python:
- 3.8
- 3.9
- 3.10
- 3.11
- 3.12

target_platform:
- osx-64 # [osx]
Expand Down
23 changes: 14 additions & 9 deletions conda/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ source:

build:
number: {{ build }}
skip: true # [py<=37]
skip: true # [py<=38]
string: py{{ CONDA_PY }}_{{ scalar }}_h{{ PKG_HASH }}_{{ build }}
track_features:
- funtofem_complex # [scalar == "complex"]
Expand All @@ -38,32 +38,37 @@ requirements:
- make
- python {{ python }} # [build_platform != target_platform]
- cross-python_{{ target_platform }} # [build_platform != target_platform]
- numpy 1.23 # [build_platform != target_platform]
- {{ mpi }} # [build_platform != target_platform]
- mpi4py # [build_platform != target_platform]
- numpy >=1.25 # [build_platform != target_platform]
- openmpi >=4.1.4 # [mpi == "openmpi" and build_platform != target_platform]
- mpich # [mpi == "mpich" and build_platform != target_platform]
- openmpi-mpicxx # [mpi == "openmpi" and build_platform != target_platform]
- mpich-mpicxx # [mpi == "mpich" and build_platform != target_platform]
- mpi4py >=3.1.1 # [build_platform != target_platform]
- cython >=0.29,<3.0 # [build_platform != target_platform]
- setuptools # [build_platform != target_platform]
- tacs >=3.4.0 # [build_platform != target_platform]

host:
- python {{ python }}
- pip
- numpy 1.23
- {{ mpi }}
- numpy >=1.25
- openmpi >=4.1.4 # [mpi == "openmpi"]
- mpich # [mpi == "mpich"]
- libopenblas
- lapack
- mpi4py
- mpi4py >=3.1.1
- cython >=0.29,<3.0
- tacs >=3.4.0

run:
- python
- {{ pin_compatible("numpy") }}
- scipy
- {{ mpi }}
- openmpi >=4.1.4 # [mpi == "openmpi"]
- mpich # [mpi == "mpich"]
- libopenblas
- lapack
- mpi4py
- mpi4py >=3.1.1
- tacs >=3.4.0

test:
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
#pyproject.toml
[build-system]
# Minimum requirements for the build system to execute.
requires = ['setuptools>=45.0', 'wheel', 'cython>=0.29,<3.0', 'oldest-supported-numpy',
requires = ['setuptools>=45.0', 'wheel', 'cython>=0.29,<3.0', 'numpy>=1.25,<2.0.0',
# Build against an old version (3.1.1) of mpi4py for forward compatibility
"mpi4py==3.1.1; python_version<'3.11'",
# Python 3.11 requires 3.1.4+
Expand Down
3 changes: 2 additions & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -96,8 +96,9 @@ def get_mpi_flags():
description="Aerothermoelastic coupling framework and transfer schemes",
author="Graeme J. Kennedy",
author_email="graeme.kennedy@ae.gatech.edu",
python_requires=">=3.9.0",
extras_require=optional_dependencies,
install_requires=["numpy", "mpi4py>=3.1.1"],
install_requires=["numpy<2.0.0", "mpi4py>=3.1.1"],
packages=find_packages(include=["funtofem*"]),
ext_modules=cythonize(exts, include_path=inc_dirs),
)

0 comments on commit 6721349

Please sign in to comment.