Skip to content

Use protocols instead of importlib.abc.Loader/MetaPathFinder/PathEntryFinder #7349

Use protocols instead of importlib.abc.Loader/MetaPathFinder/PathEntryFinder

Use protocols instead of importlib.abc.Loader/MetaPathFinder/PathEntryFinder #7349

Workflow file for this run

name: Stdlib stubtest
on:
workflow_dispatch:
push:
branches:
- main
pull_request:
paths:
- "stdlib/**"
- ".github/workflows/stubtest_stdlib.yml"
- "tests/**"
# When requirements.txt changes, we run `daily.yml`, which includes stdlib stubtest
permissions:
contents: read
env:
PIP_DISABLE_PIP_VERSION_CHECK: 1
FORCE_COLOR: 1
TERM: xterm-256color # needed for FORCE_COLOR to work on mypy on Ubuntu, see https://github.com/python/mypy/issues/13817
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
jobs:
stubtest-stdlib:
name: Check stdlib with stubtest
runs-on: ${{ matrix.os }}
strategy:
matrix:
# tkinter doesn't import on macOS 12
os: ["ubuntu-latest", "windows-latest", "macos-11"]
# TODO unpin 3.11 and 3.12 micro versions
python-version: ["3.8", "3.9", "3.10", "3.11.8", "3.12.2"]
fail-fast: false
steps:
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }} on ${{ matrix.os }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: pip
cache-dependency-path: requirements-tests.txt
allow-prereleases: true
check-latest: true
- name: Install dependencies
run: pip install -r requirements-tests.txt
- name: Run stubtest
run: python tests/stubtest_stdlib.py