name: CI

on:
  workflow_dispatch:
  pull_request:
  push:
    branches:
      - master
      - stable
      - v*

jobs:
  # This is the "main" test suite, which tests a large number of different
  # versions of default compilers and Python versions in GitHub Actions.
  standard:
    strategy:
      fail-fast: false
      matrix:
        runs-on: [ubuntu-latest, windows-latest, macos-latest]
        python:
        - 2.7
        - 3.5
        - 3.6
        - 3.7
        - 3.8
        - 3.9
        # - 3.10.0-alpha.1 - need next release for pybind11 fix
        - pypy2
        - pypy3

        # Items in here will either be added to the build matrix (if not
        # present), or add new keys to an existing matrix element if all the
        # existing keys match.
        #
        # We support three optional keys: args (both build), args1 (first
        # build), and args2 (second build).
        include:
          # Just add a key
          - runs-on: ubuntu-latest
            python: 3.6
            args: >
              -DPYBIND11_FINDPYTHON=ON
          - runs-on: windows-latest
            python: 3.6
            args: >
              -DPYBIND11_FINDPYTHON=ON
          - runs-on: ubuntu-latest
            python: 3.8
            args: >
              -DPYBIND11_FINDPYTHON=ON

        # These items will be removed from the build matrix, keys must match.
        exclude:
            # Currently 32bit only, and we build 64bit
          - runs-on: windows-latest
            python: pypy2
          - runs-on: windows-latest
            python: pypy3

          # Let's drop a few macOS runs since that tends to be 2.7 or 3.8+
          - runs-on: macos-latest
            python: 3.6
          - runs-on: macos-latest
            python: 3.7

    name: "🐍 ${{ matrix.python }} • ${{ matrix.runs-on }} • x64 ${{ matrix.args }}"
    runs-on: ${{ matrix.runs-on }}

    steps:
    - uses: actions/checkout@v2

    - name: Setup Python ${{ matrix.python }}
      uses: actions/setup-python@v2
      with:
        python-version: ${{ matrix.python }}

    - name: Setup Boost (Windows / Linux latest)
      shell: bash
      run: echo "BOOST_ROOT=$BOOST_ROOT_1_72_0" >> $GITHUB_ENV

    - name: Update CMake
      uses: jwlawson/actions-setup-cmake@v1.4

    - name: Cache wheels
      if: runner.os == 'macOS'
      uses: actions/cache@v2
      with:
        # This path is specific to macOS - we really only need it for PyPy NumPy wheels
        # See https://github.com/actions/cache/blob/master/examples.md#python---pip
        # for ways to do this more generally
        path: ~/Library/Caches/pip
        # Look to see if there is a cache hit for the corresponding requirements file
        key: ${{ runner.os }}-pip-${{ matrix.python }}-x64-${{ hashFiles('tests/requirements.txt') }}

    - name: Prepare env
      run: python -m pip install -r tests/requirements.txt --prefer-binary

    - name: Setup annotations on Linux
      if: runner.os == 'Linux'
      run: python -m pip install pytest-github-actions-annotate-failures

    # First build - C++11 mode and inplace
    - name: Configure C++11 ${{ matrix.args }}
      run: >
        cmake -S . -B .
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DDOWNLOAD_EIGEN=ON
        -DCMAKE_CXX_STANDARD=11
        ${{ matrix.args }}

    - name: Build C++11
      run: cmake --build . -j 2

    - name: Python tests C++11
      run: cmake --build . --target pytest -j 2

    - name: C++11 tests
      # TODO: Figure out how to load the DLL on Python 3.8+
      if: "!(runner.os == 'Windows' && (matrix.python == 3.8 || matrix.python == 3.9))"
      run: cmake --build .  --target cpptest -j 2

    - name: Interface test C++11
      run: cmake --build . --target test_cmake_build

    - name: Clean directory
      run: git clean -fdx

    # Second build - C++17 mode and in a build directory
    - name: Configure ${{ matrix.args2 }}
      run: >
        cmake -S . -B build2
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DDOWNLOAD_EIGEN=ON
        -DCMAKE_CXX_STANDARD=17
        ${{ matrix.args }}
        ${{ matrix.args2 }}

    - name: Build
      run: cmake --build build2 -j 2

    - name: Python tests
      run: cmake --build build2 --target pytest

    - name: C++ tests
      # TODO: Figure out how to load the DLL on Python 3.8+
      if: "!(runner.os == 'Windows' && (matrix.python == 3.8 || matrix.python == 3.9))"
      run: cmake --build build2 --target cpptest

    - name: Interface test
      run: cmake --build build2 --target test_cmake_build

    # Eventually Microsoft might have an action for setting up
    # MSVC, but for now, this action works:
    - name: Prepare compiler environment for Windows 🐍 2.7
      if: matrix.python == 2.7 && runner.os == 'Windows'
      uses: ilammy/msvc-dev-cmd@v1
      with:
        arch: x64

    # This makes two environment variables available in the following step(s)
    - name: Set Windows 🐍 2.7 environment variables
      if: matrix.python == 2.7 && runner.os == 'Windows'
      shell: bash
      run: |
        echo "DISTUTILS_USE_SDK=1" >> $GITHUB_ENV
        echo "MSSdk=1" >> $GITHUB_ENV

    # This makes sure the setup_helpers module can build packages using
    # setuptools
    - name: Setuptools helpers test
      run: pytest tests/extra_setuptools


  # Testing on clang using the excellent silkeh clang docker images
  clang:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        clang:
          - 3.6
          - 3.7
          - 3.9
          - 7
          - 9
          - dev
        std:
          - 11
        include:
          - clang: 5
            std: 14
          - clang: 10
            std: 20
          - clang: 10
            std: 17

    name: "🐍 3 • Clang ${{ matrix.clang }} • C++${{ matrix.std }} • x64"
    container: "silkeh/clang:${{ matrix.clang }}"

    steps:
    - uses: actions/checkout@v2

    - name: Add wget and python3
      run: apt-get update && apt-get install -y python3-dev python3-numpy python3-pytest libeigen3-dev

    - name: Configure
      shell: bash
      run: >
        cmake -S . -B build
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DCMAKE_CXX_STANDARD=${{ matrix.std }}
        -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")

    - name: Build
      run: cmake --build build -j 2

    - name: Python tests
      run: cmake --build build --target pytest

    - name: C++ tests
      run: cmake --build build --target cpptest

    - name: Interface test
      run: cmake --build build --target test_cmake_build


  # Testing NVCC; forces sources to behave like .cu files
  cuda:
    runs-on: ubuntu-latest
    name: "🐍 3.8 • CUDA 11 • Ubuntu 20.04"
    container: nvidia/cuda:11.0-devel-ubuntu20.04

    steps:
    - uses: actions/checkout@v2

    # tzdata will try to ask for the timezone, so set the DEBIAN_FRONTEND
    - name: Install 🐍 3
      run: apt-get update && DEBIAN_FRONTEND="noninteractive" apt-get install -y cmake git python3-dev python3-pytest python3-numpy

    - name: Configure
      run: cmake -S . -B build -DPYBIND11_CUDA_TESTS=ON -DPYBIND11_WERROR=ON -DDOWNLOAD_CATCH=ON

    - name: Build
      run: cmake --build build -j2 --verbose

    - name: Python tests
      run: cmake --build build --target pytest


  # Testing CentOS 8 + PGI compilers
  centos-nvhpc8:
    runs-on: ubuntu-latest
    name: "🐍 3 • CentOS8 / PGI 20.7 • x64"
    container: centos:8

    steps:
    - uses: actions/checkout@v2

    - name: Add Python 3 and a few requirements
      run: yum update -y && yum install -y git python3-devel python3-numpy python3-pytest make environment-modules

    - name: Install CMake with pip
      run: |
        python3 -m pip install --upgrade pip
        python3 -m pip install cmake --prefer-binary

    - name: Install NVidia HPC SDK
      run: yum -y install https://developer.download.nvidia.com/hpc-sdk/nvhpc-20-7-20.7-1.x86_64.rpm https://developer.download.nvidia.com/hpc-sdk/nvhpc-2020-20.7-1.x86_64.rpm

    - name: Configure
      shell: bash
      run: |
        source /etc/profile.d/modules.sh
        module load /opt/nvidia/hpc_sdk/modulefiles/nvhpc/20.7
        cmake -S . -B build -DDOWNLOAD_CATCH=ON -DCMAKE_CXX_STANDARD=14 -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")

    - name: Build
      run: cmake --build build -j 2 --verbose

    - name: Python tests
      run: cmake --build build --target pytest

    - name: C++ tests
      run: cmake --build build --target cpptest

    - name: Interface test
      run: cmake --build build --target test_cmake_build


  # Testing on CentOS 7 + PGI compilers, which seems to require more workarounds
  centos-nvhpc7:
    runs-on: ubuntu-latest
    name: "🐍 3 • CentOS7 / PGI 20.9 • x64"
    container: centos:7

    steps:
    - uses: actions/checkout@v2

    - name: Add Python 3 and a few requirements
      run: yum update -y && yum install -y epel-release && yum install -y git python3-devel make environment-modules cmake3

    - name: Install NVidia HPC SDK
      run:  yum -y install https://developer.download.nvidia.com/hpc-sdk/20.9/nvhpc-20-9-20.9-1.x86_64.rpm https://developer.download.nvidia.com/hpc-sdk/20.9/nvhpc-2020-20.9-1.x86_64.rpm

    # On CentOS 7, we have to filter a few tests (compiler internal error)
    # and allow deeper templete recursion (not needed on CentOS 8 with a newer
    # standard library). On some systems, you many need further workarounds:
    # https://github.com/pybind/pybind11/pull/2475
    - name: Configure
      shell: bash
      run: |
        source /etc/profile.d/modules.sh
        module load /opt/nvidia/hpc_sdk/modulefiles/nvhpc/20.9
        cmake3 -S . -B build -DDOWNLOAD_CATCH=ON \
                            -DCMAKE_CXX_STANDARD=11 \
                            -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)") \
                            -DCMAKE_CXX_FLAGS="-Wc,--pending_instantiations=0" \
                            -DPYBIND11_TEST_FILTER="test_smart_ptr.cpp;test_virtual_functions.cpp"

    # Building before installing Pip should produce a warning but not an error
    - name: Build
      run: cmake3 --build build -j 2 --verbose

    - name: Install CMake with pip
      run: |
        python3 -m pip install --upgrade pip
        python3 -m pip install pytest

    - name: Python tests
      run: cmake3 --build build --target pytest

    - name: C++ tests
      run: cmake3 --build build --target cpptest

    - name: Interface test
      run: cmake3 --build build --target test_cmake_build

  # Testing on GCC using the GCC docker images (only recent images supported)
  gcc:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        gcc:
          - 7
          - latest
        std:
          - 11
        include:
          - gcc: 10
            std: 20

    name: "🐍 3 • GCC ${{ matrix.gcc }} • C++${{ matrix.std }}• x64"
    container: "gcc:${{ matrix.gcc }}"

    steps:
    - uses: actions/checkout@v1

    - name: Add Python 3
      run: apt-get update; apt-get install -y python3-dev python3-numpy python3-pytest python3-pip libeigen3-dev

    - name: Update pip
      run: python3 -m pip install --upgrade pip

    - name: Setup CMake 3.18
      uses: jwlawson/actions-setup-cmake@v1.4
      with:
        cmake-version: 3.18

    - name: Configure
      shell: bash
      run: >
        cmake -S . -B build
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DCMAKE_CXX_STANDARD=${{ matrix.std }}
        -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")

    - name: Build
      run: cmake --build build -j 2

    - name: Python tests
      run: cmake --build build --target pytest

    - name: C++ tests
      run: cmake --build build --target cpptest

    - name: Interface test
      run: cmake --build build --target test_cmake_build


  # Testing on CentOS (manylinux uses a centos base, and this is an easy way
  # to get GCC 4.8, which is the manylinux1 compiler).
  centos:
    runs-on: ubuntu-latest
    strategy:
      fail-fast: false
      matrix:
        centos:
          - 7  # GCC 4.8
          - 8

    name: "🐍 3 • CentOS ${{ matrix.centos }} • x64"
    container: "centos:${{ matrix.centos }}"

    steps:
    - uses: actions/checkout@v2

    - name: Add Python 3
      run: yum update -y && yum install -y python3-devel gcc-c++ make git

    - name: Update pip
      run: python3 -m pip install --upgrade pip

    - name: Install dependencies
      run: python3 -m pip install cmake -r tests/requirements.txt --prefer-binary

    - name: Configure
      shell: bash
      run: >
        cmake -S . -B build
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DDOWNLOAD_EIGEN=ON
        -DCMAKE_CXX_STANDARD=11
        -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")

    - name: Build
      run: cmake --build build -j 2

    - name: Python tests
      run: cmake --build build --target pytest

    - name: C++ tests
      run: cmake --build build --target cpptest

    - name: Interface test
      run: cmake --build build --target test_cmake_build


  # This tests an "install" with the CMake tools
  install-classic:
    name: "🐍 3.5 • Debian • x86 •  Install"
    runs-on: ubuntu-latest
    container: i386/debian:stretch

    steps:
    - uses: actions/checkout@v1

    - name: Install requirements
      run: |
        apt-get update
        apt-get install -y git make cmake g++ libeigen3-dev python3-dev python3-pip
        pip3 install "pytest==3.1.*"

    - name: Configure for install
      run: >
        cmake .
        -DPYBIND11_INSTALL=1 -DPYBIND11_TEST=0
        -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")

    - name: Make and install
      run: make install

    - name: Copy tests to new directory
      run: cp -a tests /pybind11-tests

    - name: Make a new test directory
      run: mkdir /build-tests

    - name: Configure tests
      run: >
        cmake ../pybind11-tests
        -DDOWNLOAD_CATCH=ON
        -DPYBIND11_WERROR=ON
        -DPYTHON_EXECUTABLE=$(python3 -c "import sys; print(sys.executable)")
      working-directory: /build-tests

    - name: Run tests
      run: make pytest -j 2
      working-directory: /build-tests


  # This verifies that the documentation is not horribly broken, and does a
  # basic sanity check on the SDist.
  doxygen:
    name: "Documentation build test"
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2

    - uses: actions/setup-python@v2

    - name: Install Doxygen
      run: sudo apt-get install -y doxygen librsvg2-bin # Changed to rsvg-convert in 20.04

    - name: Install docs & setup requirements
      run: python3 -m pip install -r docs/requirements.txt

    - name: Build docs
      run: python3 -m sphinx -W -b html docs docs/.build

    - name: Make SDist
      run: python3 setup.py sdist

    - run: git status --ignored

    - name: Check local include dir
      run: >
        ls pybind11;
        python3 -c "import pybind11, pathlib; assert (a := pybind11.get_include()) == (b := str(pathlib.Path('include').resolve())), f'{a} != {b}'"

    - name: Compare Dists (headers only)
      working-directory: include
      run: |
        python3 -m pip install --user -U ../dist/*
        installed=$(python3 -c "import pybind11; print(pybind11.get_include() + '/pybind11')")
        diff -rq $installed ./pybind11

  win32:
    strategy:
      fail-fast: false
      matrix:
        python:
        - 3.5
        - 3.6
        - 3.7
        - 3.8
        - 3.9
        - pypy3
        # TODO: fix hang on pypy2

        include:
          - python: 3.9
            args: -DCMAKE_CXX_STANDARD=20 -DDOWNLOAD_EIGEN=OFF
          - python: 3.8
            args: -DCMAKE_CXX_STANDARD=17

    name: "🐍 ${{ matrix.python }} • MSVC 2019 • x86 ${{ matrix.args }}"
    runs-on: windows-latest

    steps:
    - uses: actions/checkout@v2

    - name: Setup Python ${{ matrix.python }}
      uses: actions/setup-python@v2
      with:
        python-version: ${{ matrix.python }}
        architecture: x86

    - name: Update CMake
      uses: jwlawson/actions-setup-cmake@v1.4

    - name: Prepare MSVC
      uses: ilammy/msvc-dev-cmd@v1
      with:
        arch: x86

    - name: Prepare env
      run: python -m pip install -r tests/requirements.txt --prefer-binary

    # First build - C++11 mode and inplace
    - name: Configure ${{ matrix.args }}
      run: >
        cmake -S . -B build
        -G "Visual Studio 16 2019" -A Win32
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DDOWNLOAD_EIGEN=ON
        ${{ matrix.args }}
    - name: Build C++11
      run: cmake --build build -j 2

    - name: Run tests
      run: cmake --build build -t pytest

  win32-msvc2015:
    name: "🐍 ${{ matrix.python }} • MSVC 2015 • x64"
    runs-on: windows-latest
    strategy:
      fail-fast: false
      matrix:
        python:
          - 2.7
          - 3.6
          - 3.7
          # todo: check/cpptest does not support 3.8+ yet

    steps:
    - uses: actions/checkout@v2

    - name: Setup 🐍 ${{ matrix.python }}
      uses: actions/setup-python@v2
      with:
        python-version: ${{ matrix.python }}

    - name: Update CMake
      uses: jwlawson/actions-setup-cmake@v1.4

    - name: Prepare MSVC
      uses: ilammy/msvc-dev-cmd@v1
      with:
        toolset: 14.0

    - name: Prepare env
      run: python -m pip install -r tests/requirements.txt --prefer-binary

    # First build - C++11 mode and inplace
    - name: Configure
      run: >
        cmake -S . -B build
        -G "Visual Studio 14 2015" -A x64
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DDOWNLOAD_EIGEN=ON

    - name: Build C++14
      run: cmake --build build -j 2

    - name: Run all checks
      run: cmake --build build -t check


  win32-msvc2017:
    name: "🐍 ${{ matrix.python }} • MSVC 2017 • x64"
    runs-on: windows-2016
    strategy:
      fail-fast: false
      matrix:
        python:
          - 2.7
          - 3.5
          - 3.7
        std:
          - 14

        include:
          - python: 2.7
            std: 17
            args: >
              -DCMAKE_CXX_FLAGS="/permissive- /EHsc /GR"

    steps:
    - uses: actions/checkout@v2

    - name: Setup 🐍 ${{ matrix.python }}
      uses: actions/setup-python@v2
      with:
        python-version: ${{ matrix.python }}

    - name: Update CMake
      uses: jwlawson/actions-setup-cmake@v1.4

    - name: Prepare env
      run: python -m pip install -r tests/requirements.txt --prefer-binary

    # First build - C++11 mode and inplace
    - name: Configure
      run: >
        cmake -S . -B build
        -G "Visual Studio 15 2017" -A x64
        -DPYBIND11_WERROR=ON
        -DDOWNLOAD_CATCH=ON
        -DDOWNLOAD_EIGEN=ON
        -DCMAKE_CXX_STANDARD=${{ matrix.std }}
        ${{ matrix.args }}

    - name: Build ${{ matrix.std }}
      run: cmake --build build -j 2

    - name: Run all checks
      run: cmake --build build -t check
