name: Test Cygwin on: [push, pull_request, workflow_dispatch] jobs: build: runs-on: windows-latest strategy: fail-fast: false matrix: python-minor-version: [7, 8] architecture: ["x86", "x86_64"] timeout-minutes: 30 name: Python 3.${{ matrix.python-minor-version }} ${{ matrix.architecture }} steps: - name: Fix line endings run: | git config --global core.autocrlf input - name: Checkout Pillow uses: actions/checkout@v2 - name: Install Cygwin uses: cygwin/cygwin-install-action@v1 with: platform: ${{ matrix.architecture }} packages: > ImageMagick python3${{ matrix.python-minor-version }}-cffi python3${{ matrix.python-minor-version }}-devel python3${{ matrix.python-minor-version }}-numpy python3${{ matrix.python-minor-version }}-sip python3${{ matrix.python-minor-version }}-tkinter ghostscript libfreetype-devel libimagequant-devel libjpeg-devel liblcms2-devel libopenjp2-devel libraqm-devel libtiff-devel libwebp-devel libxcb-devel libxcb-xinerama0 qt5-devel-tools xorg-server-extra zlib-devel - name: Build system information run: | bash.exe -c "python3 .github/workflows/system-info.py" - name: Ensure Python dependencies are installed run: | bash.exe -c "python3 -m pip install pip wheel setuptools" bash.exe -c "python3 -m pip install -r requirements.txt" - name: Download extra test images run: | bash.exe -c "cd depends; dash install_extra_test_images.sh" - name: Build Pillow run: | bash.exe -c "python3 setup.py bdist_wheel" - name: Install Pillow run: | bash.exe -c "python3 -m pip install dist/*.whl" - name: Test Pillow run: | bash.exe xvfb-run -s '-screen 0 1024x768x24' .ci/test.sh - name: After success run: | bash.exe .ci/after_success.sh - name: Upload coverage uses: codecov/codecov-action@v2 with: file: ./coverage.xml flags: GHA_Cygwin name: Cygwin Python 3.${{ matrix.python-minor-version }} ${{ matrix.architecture }} - name: After failure if: failure() run: | C:\tools\cygwin\bin\uname -a C:\tools\cygwin\bin\python3.8 -m pip list C:\tools\cygwin\bin\python3.8 -m pip show --files Pillow