name: test on: push: pull_request: workflow_dispatch: schedule: - cron: '0 0 * * 2' jobs: linter: uses: ./.github/workflows/linter.yml coverage: uses: ./.github/workflows/coverage.yml docs: uses: ./.github/workflows/docs.yml frozen-version: runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v7 with: fetch-depth: 0 - uses: actions/setup-python@v6 with: python-version: "3.x" - name: Run frozen version test run: ./mpmath/tests/test_version_frozen.sh tests: needs: - linter - coverage - frozen-version runs-on: ubuntu-24.04 strategy: fail-fast: false matrix: python-version: ['3.10', 3.11, 3.12, 3.13, 3.14, 3.14t, 3.15, 3.15t] nogmpy: [false] purepy: [false] include: - python-version: "3.x" nogmpy: true - python-version: "3.x" purepy: true - python-version: pypy3.11 purepy: true env: PYTEST_ADDOPTS: -n auto --durations=20 steps: - uses: actions/checkout@v7 with: fetch-depth: 0 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} allow-prereleases: true - name: Install dependencies run: | pip install --upgrade setuptools pip pip install --upgrade .[develop,gmpy2,gmp,ci] - run: pip uninstall -y gmpy2 if: matrix.nogmpy - run: pip uninstall -y gmpy2 python-gmp if: matrix.purepy - run: pytest