5151 python-version : [ "3.14" ]
5252 uv-resolution :
5353 - highest
54+ starlette-src :
55+ - starlette-pypi
56+ - starlette-git
5457 include :
5558 - os : ubuntu-latest
5659 python-version : " 3.9"
@@ -78,11 +81,13 @@ jobs:
7881 python-version : " 3.14"
7982 coverage : coverage
8083 uv-resolution : highest
84+ starlette-src : starlette-git
8185 fail-fast : false
8286 runs-on : ${{ matrix.os }}
8387 env :
8488 UV_PYTHON : ${{ matrix.python-version }}
8589 UV_RESOLUTION : ${{ matrix.uv-resolution }}
90+ STARLETTE_SRC : ${{ matrix.starlette-src }}
8691 steps :
8792 - name : Dump GitHub context
8893 env :
@@ -102,10 +107,13 @@ jobs:
102107 uv.lock
103108 - name : Install Dependencies
104109 run : uv sync --no-dev --group tests --extra all
110+ - name : Install Starlette from source
111+ if : matrix.starlette-src == 'starlette-git'
112+ run : uv pip install "git+https://github.com/Kludex/starlette@main"
105113 - run : mkdir coverage
106114 - name : Test
107115 if : matrix.codspeed != 'codspeed'
108- run : uv run bash scripts/test.sh
116+ run : uv run --no-sync bash scripts/test.sh
109117 env :
110118 COVERAGE_FILE : coverage/.coverage.${{ runner.os }}-py${{ matrix.python-version }}
111119 CONTEXT : ${{ runner.os }}-py${{ matrix.python-version }}
@@ -117,7 +125,7 @@ jobs:
117125 CONTEXT : ${{ runner.os }}-py${{ matrix.python-version }}
118126 with :
119127 mode : simulation
120- run : uv run coverage run -m pytest tests/ --codspeed
128+ run : uv run --no-sync coverage run -m pytest tests/ --codspeed
121129 # Do not store coverage for all possible combinations to avoid file size max errors in Smokeshow
122130 - name : Store coverage files
123131 if : matrix.coverage == 'coverage'
0 commit comments