From 9e54e494bb640aeff458e5360dc85a36e5c3e899 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 27 Apr 2026 16:13:43 +0000 Subject: [PATCH 1/3] Initial plan From 65bd889a892a6ba579051681de2b2f6aaf52cf20 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 27 Apr 2026 16:19:58 +0000 Subject: [PATCH 2/3] Add reusable workflow to share test/collateral setup steps Agent-Logs-Url: https://github.com/jaraco/skeleton/sessions/ae6f447e-da11-4a46-a8d7-23cdbbffe148 Co-authored-by: jaraco <308610+jaraco@users.noreply.github.com> --- .github/workflows/main.yml | 41 +++++----------------- .github/workflows/test-suite.yml | 60 ++++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+), 32 deletions(-) create mode 100644 .github/workflows/test-suite.yml diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index d40c74ac..4b77be34 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -51,26 +51,12 @@ jobs: platform: ubuntu-latest - python: pypy3.10 platform: ubuntu-latest - runs-on: ${{ matrix.platform }} + uses: ./.github/workflows/test-suite.yml + with: + python: ${{ matrix.python }} + platform: ${{ matrix.platform }} + # https://docs.github.com/en/actions/writing-workflows/workflow-syntax-for-github-actions#jobsjob_idcontinue-on-error continue-on-error: ${{ matrix.python == '3.15' }} - steps: - - uses: actions/checkout@v4 - - name: Install build dependencies - # Install dependencies for building packages on pre-release Pythons - # jaraco/skeleton#161 - if: matrix.python == '3.15' && matrix.platform == 'ubuntu-latest' - run: | - sudo apt update - sudo apt install -y libxml2-dev libxslt-dev - - name: Setup Python - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python }} - allow-prereleases: true - - name: Install tox - run: python -m pip install tox - - name: Run - run: tox collateral: strategy: @@ -79,19 +65,10 @@ jobs: job: - diffcov - docs - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - name: Setup Python - uses: actions/setup-python@v5 - with: - python-version: 3.x - - name: Install tox - run: python -m pip install tox - - name: Eval ${{ matrix.job }} - run: tox -e ${{ matrix.job }} + uses: ./.github/workflows/test-suite.yml + with: + platform: ubuntu-latest + tox-env: ${{ matrix.job }} check: # This job does nothing and is only used for the branch protection if: always() diff --git a/.github/workflows/test-suite.yml b/.github/workflows/test-suite.yml new file mode 100644 index 00000000..7c8a9359 --- /dev/null +++ b/.github/workflows/test-suite.yml @@ -0,0 +1,60 @@ +name: Test Suite + +on: + workflow_call: + inputs: + python: + description: Python version + type: string + default: "3.x" + platform: + description: Runner platform + type: string + default: ubuntu-latest + tox-env: + description: >- + Tox environment to run; if empty, runs default tox + type: string + default: "" + +env: + # Environment variable to support color support (jaraco/skeleton#66) + FORCE_COLOR: 1 + + # Suppress noisy pip warnings + PIP_DISABLE_PIP_VERSION_CHECK: 'true' + PIP_NO_WARN_SCRIPT_LOCATION: 'true' + + # Ensure tests can sense settings about the environment + TOX_OVERRIDE: >- + testenv.pass_env+=GITHUB_*,FORCE_COLOR + +jobs: + run: + runs-on: ${{ inputs.platform }} + permissions: + contents: read + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install build dependencies + # Install dependencies for building packages on pre-release Pythons + # jaraco/skeleton#161 + if: inputs.python == '3.15' && inputs.platform == 'ubuntu-latest' + run: | + sudo apt update + sudo apt install -y libxml2-dev libxslt-dev + - name: Setup Python + uses: actions/setup-python@v5 + with: + python-version: ${{ inputs.python }} + allow-prereleases: true + - name: Install tox + run: python -m pip install tox + - name: Run + if: ${{ !inputs.tox-env }} + run: tox + - name: Run ${{ inputs.tox-env }} + if: ${{ inputs.tox-env }} + run: tox -e ${{ inputs.tox-env }} From 62e53f84348827250869312c588e77dd21c3c522 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Mon, 27 Apr 2026 16:26:33 +0000 Subject: [PATCH 3/3] Remove duplicated env block from main.yml Agent-Logs-Url: https://github.com/jaraco/skeleton/sessions/35bde516-10a9-4b0d-8c1f-6daa390f7011 Co-authored-by: jaraco <308610+jaraco@users.noreply.github.com> --- .github/workflows/main.yml | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4b77be34..9e35f3de 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -15,19 +15,6 @@ on: permissions: contents: read -env: - # Environment variable to support color support (jaraco/skeleton#66) - FORCE_COLOR: 1 - - # Suppress noisy pip warnings - PIP_DISABLE_PIP_VERSION_CHECK: 'true' - PIP_NO_WARN_SCRIPT_LOCATION: 'true' - - # Ensure tests can sense settings about the environment - TOX_OVERRIDE: >- - testenv.pass_env+=GITHUB_*,FORCE_COLOR - - jobs: test: strategy: