name: test on: push: # any branch pull_request: branches: [master] env: FORCE_COLOR: 1 jobs: test-ubuntu: runs-on: ubuntu-latest strategy: fail-fast: false matrix: python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "3.12"] steps: - uses: actions/checkout@v4 - name: Setup Python ${{ matrix.python-version }} uses: actions/setup-python@v4 with: python-version: ${{ matrix.python-version }} allow-prereleases: true - name: Install Dependencies run: | sudo apt remove python3-pip python -m pip install --upgrade pip python -m pip install . ruff typos coverage codecov mypy pytest readme_renderer types-contextvars asyncssh pip list - name: Ruff run: | ruff . ruff format --check . typos . - name: Tests run: | coverage run -m pytest - if: "matrix.python-version != '3.7'" name: Mypy # Check whether the imports were sorted correctly. # When this fails, please run ./tools/sort-imports.sh run: | mypy --strict src/prompt_toolkit --platform win32 mypy --strict src/prompt_toolkit --platform linux mypy --strict src/prompt_toolkit --platform darwin - name: Validate README.md # Ensure that the README renders correctly (required for uploading to PyPI). run: | python -m readme_renderer README.rst > /dev/null - name: Run codecov run: | codecov