From 8d365167e707693100d38a8f1327cc8d7e615841 Mon Sep 17 00:00:00 2001 From: A5rocks Date: Sun, 1 Sep 2024 12:13:21 +0900 Subject: [PATCH] Does setup-python's cache look at the checked out repository? --- .github/workflows/ci.yml | 188 +-------------------------------------- 1 file changed, 1 insertion(+), 187 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0c3cf098d..327380ed2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -18,27 +18,11 @@ jobs: strategy: fail-fast: false matrix: - python: ['pypy-3.10', '3.8', '3.9', '3.10', '3.11', '3.12'] + python: ['pypy-3.10'] arch: ['x86', 'x64'] lsp: [''] lsp_extract_file: [''] extra_name: [''] - include: - - python: '3.8' - arch: 'x64' - lsp: 'https://raw.githubusercontent.com/python-trio/trio-ci-assets/master/komodia-based-vpn-setup.zip' - lsp_extract_file: 'komodia-based-vpn-setup.exe' - extra_name: ', with Komodia LSP' - - python: '3.8' - arch: 'x64' - lsp: 'https://www.proxifier.com/download/legacy/ProxifierSetup342.exe' - lsp_extract_file: '' - extra_name: ', with IFS LSP' - #- python: '3.8' - # arch: 'x64' - # lsp: 'http://download.pctools.com/mirror/updates/9.0.0.2308-SDavfree-lite_en.exe' - # lsp_extract_file: '' - # extra_name: ', with non-IFS LSP' continue-on-error: >- ${{ ( @@ -49,8 +33,6 @@ jobs: || false }} steps: - - name: Checkout - uses: actions/checkout@v4 - name: Setup python uses: actions/setup-python@v5 with: @@ -66,172 +48,8 @@ jobs: architecture: '${{ matrix.arch }}' # Caching can lead to issues with constraints on PyPy as in #3076. # This is probably a bug in the cache key, but I'm not sure. - # cache: pip - # cache-dependency-path: test-requirements.txt - - name: Run tests - run: ./ci.sh - shell: bash - env: - LSP: '${{ matrix.lsp }}' - LSP_EXTRACT_FILE: '${{ matrix.lsp_extract_file }}' - - if: always() - uses: codecov/codecov-action@v3 - with: - directory: empty - token: 87cefb17-c44b-4f2f-8b30-1fff5769ce46 - name: Windows (${{ matrix.python }}, ${{ matrix.arch }}${{ matrix.extra_name }}) - flags: Windows,${{ matrix.python }} - - Ubuntu: - name: 'Ubuntu (${{ matrix.python }}${{ matrix.extra_name }})' - timeout-minutes: 10 - runs-on: 'ubuntu-latest' - strategy: - fail-fast: false - matrix: - python: ['pypy-3.10', '3.8', '3.9', '3.10', '3.11', '3.12', '3.13'] - check_formatting: ['0'] - no_test_requirements: ['0'] - extra_name: [''] - include: - - python: '3.12' - check_formatting: '1' - extra_name: ', check formatting' - # separate test run that doesn't install test-requirements.txt - - python: '3.8' - no_test_requirements: '1' - extra_name: ', no test-requirements' - continue-on-error: >- - ${{ - ( - endsWith(matrix.python, '-dev') - || endsWith(matrix.python, '-nightly') - ) - && true - || false - }} - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Setup python - uses: actions/setup-python@v5 - if: "!endsWith(matrix.python, '-dev')" - with: - python-version: ${{ fromJSON(format('["{0}", "{1}"]', format('{0}.0-alpha - {0}.X', matrix.python), matrix.python))[startsWith(matrix.python, 'pypy')] }} - cache: pip - cache-dependency-path: test-requirements.txt - - name: Setup python (dev) - uses: deadsnakes/action@v2.0.2 - if: endsWith(matrix.python, '-dev') - with: - python-version: '${{ matrix.python }}' - - name: Run tests - run: ./ci.sh - env: - CHECK_FORMATTING: '${{ matrix.check_formatting }}' - NO_TEST_REQUIREMENTS: '${{ matrix.no_test_requirements }}' - - if: always() - uses: codecov/codecov-action@v3 - with: - directory: empty - token: 87cefb17-c44b-4f2f-8b30-1fff5769ce46 - name: Ubuntu (${{ matrix.python }}${{ matrix.extra_name }}) - flags: Ubuntu,${{ matrix.python }} - - macOS: - name: 'macOS (${{ matrix.python }})' - timeout-minutes: 15 - runs-on: 'macos-latest' - strategy: - fail-fast: false - matrix: - python: ['pypy-3.10', '3.8', '3.9', '3.10', '3.11', '3.12'] - continue-on-error: >- - ${{ - ( - endsWith(matrix.python, '-dev') - || endsWith(matrix.python, '-nightly') - ) - && true - || false - }} - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Setup python - uses: actions/setup-python@v5 - with: - python-version: ${{ fromJSON(format('["{0}", "{1}"]', format('{0}.0-alpha - {0}.X', matrix.python), matrix.python))[startsWith(matrix.python, 'pypy')] }} cache: pip cache-dependency-path: test-requirements.txt - - name: Run tests - run: ./ci.sh - - if: always() - uses: codecov/codecov-action@v3 - with: - directory: empty - token: 87cefb17-c44b-4f2f-8b30-1fff5769ce46 - name: macOS (${{ matrix.python }}) - flags: macOS,${{ matrix.python }} - - # run CI on a musl linux - Alpine: - name: "Alpine" - runs-on: ubuntu-latest - container: alpine - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Install necessary packages - # can't use setup-python because that python doesn't seem to work; - # `python3-dev` (rather than `python:alpine`) for some ctypes reason, - # `nodejs` for pyright (`node-env` pulls in nodejs but that takes a while and can time out the test). - run: apk update && apk add python3-dev bash nodejs - - name: Enter virtual environment - run: python -m venv .venv - - name: Run tests - run: source .venv/bin/activate && ./ci.sh - - if: always() - uses: codecov/codecov-action@v3 - with: - directory: empty - token: 87cefb17-c44b-4f2f-8b30-1fff5769ce46 - name: Alpine - flags: Alpine,3.12 - - Cython: - name: "Cython" - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python: ['3.8', '3.12'] - steps: - - name: Checkout - uses: actions/checkout@v4 - - name: Setup python - uses: actions/setup-python@v5 - with: - python-version: '${{ matrix.python }}' - cache: pip - # setuptools is needed to get distutils on 3.12, which cythonize requires - - name: install trio and setuptools - run: python -m pip install --upgrade pip . setuptools - - - name: install cython<3 - run: python -m pip install "cython<3" - - name: compile pyx file - run: cythonize -i tests/cython/test_cython.pyx - - name: import & run module - run: python -c 'import tests.cython.test_cython' - - - name: install cython>=3 - run: python -m pip install "cython>=3" - - name: compile pyx file - # different cython version should trigger a re-compile, but --force just in case - run: cythonize --inplace --force tests/cython/test_cython.pyx - - name: import & run module - run: python -c 'import tests.cython.test_cython' # https://github.com/marketplace/actions/alls-green#why check: # This job does nothing and is only used for the branch protection @@ -240,10 +58,6 @@ jobs: needs: - Windows - - Ubuntu - - macOS - - Alpine - - Cython runs-on: ubuntu-latest