2222 strategy :
2323 fail-fast : False
2424 matrix :
25- python-version : [ 3.6, 3.7, 3.8 ]
25+ python-version : [ 3.6, 3.7, 3.8, 3.9 ]
2626 steps :
2727 - name : Checkout repository
2828 uses : actions/checkout@v2
@@ -60,33 +60,22 @@ jobs:
6060 with :
6161 submodules : true
6262
63- - name : Setup Python 3.8
63+ - name : Setup Python 3.9
6464 uses : actions/setup-python@v2
6565 with :
66- python-version : 3.8
66+ python-version : 3.9
6767
6868 - name : Build wheels
6969 env :
7070 # only build CPython-3.6 and later and skip 32-bit builds and skip windows
71- CIBW_BUILD : cp36-* cp37-* cp38-*
71+ CIBW_BUILD : cp36-* cp37-* cp38-* cp39-*
7272 CIBW_SKIP : " *-win* *-manylinux_i686"
73- CIBW_BEFORE_ALL_LINUX : |
74- yum update -y && yum install pcre-devel cmake3 -y
75- yum remove cmake -y
76- ln -s /usr/bin/cmake3 /usr/bin/cmake
77-
78- if [[ ! -e $(command -v swig) ]]; then
79- curl -L https://sourceforge.net/projects/swig/files/swig/swig-4.0.2/swig-4.0.2.tar.gz/download --output /tmp/swig.tar.gz
80- mkdir /tmp/swig
81- tar -xvzf /tmp/swig.tar.gz -C /tmp/swig --strip-components 1 &> /dev/null
82- pushd /tmp/swig
83- ./configure --without-alllang --with-python3 && make -j2 && make install > /dev/null
84- popd
85- fi
73+ # use latest build
74+ CIBW_MANYLINUX_X86_64_IMAGE : danielbok/nlopt_manylinux2014_x86_64:latest
8675 CIBW_BEFORE_ALL_MACOS : brew install swig
8776 CIBW_BEFORE_BUILD : pip install numpy
8877 run : |
89- pip install -U pip cibuildwheel==1.5.1
78+ pip install -U pip cibuildwheel==1.7.2
9079 python -m cibuildwheel --output-dir dist
9180
9281 - name : Place wheels in artifacts folder
@@ -95,13 +84,13 @@ jobs:
9584 path : ./dist/*.whl
9685
9786 test-wheels :
98- name : Test package installation
87+ name : Test wheels
9988 needs : [ build_wheels_windows, build_wheels_unix ]
10089 runs-on : ${{ matrix.os }}
10190 strategy :
10291 matrix :
10392 os : [ windows-latest, ubuntu-latest, macos-latest ]
104- python-version : [ 3.6, 3.7, 3.8 ]
93+ python-version : [ 3.6, 3.7, 3.8, 3.9 ]
10594
10695 steps :
10796 - name : Checkout repository
@@ -122,6 +111,9 @@ jobs:
122111 run : |
123112 python -m pip install --upgrade pip
124113
114+ # list all files in the dist folder
115+ ls -R dist
116+
125117 # finds path to the right wheel or source file to install later
126118 os=$(echo ${{ runner.os }} | awk '{print tolower($0)}' | head -c3)
127119
@@ -133,6 +125,8 @@ jobs:
133125 # nlopt-2.6.2-cp36-cp36m-manylinux10_amd64.whl
134126 file=$(find dist -name "nlopt-*${version}*${os}*.whl" -type f);
135127
128+ echo "Installing file: ${file}"
129+
136130 pip install ${file}
137131 python extern/nlopt/test/t_python.py
138132
0 commit comments