name: build on: push: pull_request: create: branches: - 'master' tags: - '**' jobs: linux: runs-on: ubuntu-latest strategy: max-parallel: 4 matrix: python-version: [3.5, 3.6, 3.7, 3.8] steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install flake8 pytest "pytest-cov<2.6" codecov pip install -U "sklearn" - name: Lint with flake8 run: | # stop the build if there are Python syntax errors or undefined names flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide flake8 examples/ ot/ test/ --count --max-line-length=127 --statistics - name: Install POT run: | pip install -e . - name: Run tests run: | python -m pytest -v test/ ot/ --doctest-modules --ignore ot/gpu/ --cov=ot - name: Upload codecov run: | codecov linux-minimal-deps: runs-on: ubuntu-latest strategy: max-parallel: 4 matrix: python-version: [3.6] steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r .github/requirements_strict.txt pip install pytest pip install -U "sklearn" - name: Install POT run: | pip install -e . - name: Run tests run: | python -m pytest -v test/ ot/ --ignore ot/gpu/ macos: runs-on: macOS-latest strategy: max-parallel: 4 matrix: python-version: [3.7] steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install pytest "pytest-cov<2.6" pip install -U "sklearn" - name: Install POT run: | pip install -e . - name: Run tests run: | python -m pytest -v test/ ot/ --doctest-modules --ignore ot/gpu/ --cov=ot windows: runs-on: windows-2019 strategy: max-parallel: 4 matrix: python-version: [3.7] steps: - uses: actions/checkout@v1 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v1 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt pip install pytest "pytest-cov<2.6" pip install -U "sklearn" - name: Install POT run: | pip install -e . - name: Run tests run: | python -m pytest -v test/ ot/ --doctest-modules --ignore ot/gpu/ --cov=ot