name: testing on: push: branches: - main paths-ignore: - 'docs/' - CHANGELOG.md pull_request: branches: - main concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: lint: runs-on: ubuntu-latest strategy: max-parallel: 1 steps: - uses: actions/checkout@v4 with: fetch-depth: 0 - name: Set up Python uses: actions/setup-python@v4 with: python-version: 3.11 cache: pip - name: Run pre-commit run: | pip install pre-commit pre-commit run test: needs: lint strategy: max-parallel: 6 matrix: python-version: ["3.9", "3.10", "3.11"] platform: - ubuntu-latest - macos-latest - windows-latest runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Setup Python uses: actions/setup-python@v4 with: python-version: ${{ matrix.python }}${{ matrix.dev }} - name: Install test requirements run: | python -m pip install --upgrade pip pip install -e ".[testing]" - name: Run tests run: | pytest --cov=src/pyEQL --cov-report=xml - uses: codecov/codecov-action@v3 with: token: ${{ secrets.CODECOV_TOKEN }} file: ./coverage.xml docs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Setup Python uses: actions/setup-python@v4 with: python-version: 3.9 - name: Install tox run: | python -m pip install tox - uses: r-lib/actions/setup-pandoc@v2 - name: Build docs run: tox -e docs