3030 - uses : actions/setup-python@v5
3131 with :
3232 python-version : " 3.13"
33- - run : curl -LsSf https://astral.sh/uv/install.sh | sh
33+ - uses : astral-sh/setup-uv@v6
34+ with :
35+ version-file : " requirements-tests.txt"
3436 - run : uv pip install -r requirements-tests.txt --system
3537 - run : python ./tests/check_typeshed_structure.py
3638
@@ -48,15 +50,16 @@ jobs:
4850 - uses : actions/setup-python@v5
4951 with :
5052 python-version : ${{ matrix.python-version }}
51- - run : curl -LsSf https://astral.sh/uv/install.sh | sh
53+ - uses : astral-sh/setup-uv@v6
54+ with :
55+ version-file : " requirements-tests.txt"
5256 - run : uv pip install -r requirements-tests.txt --system
5357 - name : Install required APT packages
5458 run : |
55- sudo apt-get update -qy
56- DEPENDENCIES=$( python tests/get_external_apt_dependencies.py )
57- if [ -n "$DEPENDENCIES" ]; then
58- printf "Installing APT packages:\n $(echo $DEPENDENCIES | sed 's/ /\n /g')\n"
59- sudo apt-get install -qy $DEPENDENCIES
59+ PACKAGES=$(python tests/get_stubtest_system_requirements.py)
60+ if [ -n "$PACKAGES" ]; then
61+ printf "Installing APT packages:\n $(echo $PACKAGES | sed 's/ /\n /g')\n"
62+ sudo apt-get update -q && sudo apt-get install -qy $PACKAGES
6063 fi
6164 - name : Run mypy_test.py
6265 run : |
8184 # Use py311 for now, as py312 seems to be around 30s slower in CI
8285 # TODO: figure out why that is (#11590)
8386 python-version : " 3.11"
84- - run : curl -LsSf https://astral.sh/uv/install.sh | sh
87+ - uses : astral-sh/setup-uv@v6
88+ with :
89+ version-file : " requirements-tests.txt"
8590 - run : uv pip install -r requirements-tests.txt --system
8691 - run : python ./tests/regr_test.py --all --verbosity QUIET
8792
@@ -102,24 +107,23 @@ jobs:
102107 with :
103108 version-file : " requirements-tests.txt"
104109 - name : Install typeshed test-suite requirements
105- # Install these so we can run `get_external_stub_requirements .py`
110+ # Install these so we can run `get_*_requirements .py`
106111 run : uv pip install -r requirements-tests.txt --system
107112 - name : Install required APT packages
108113 run : |
109- sudo apt-get update -qy
110- DEPENDENCIES=$( python tests/get_external_apt_dependencies.py )
111- if [ -n "$DEPENDENCIES" ]; then
112- printf "Installing APT packages:\n $(echo $DEPENDENCIES | sed 's/ /\n /g')\n"
113- sudo apt-get install -qy $DEPENDENCIES
114+ PACKAGES=$(python tests/get_stubtest_system_requirements.py)
115+ if [ -n "$PACKAGES" ]; then
116+ printf "Installing APT packages:\n $(echo $PACKAGES | sed 's/ /\n /g')\n"
117+ sudo apt-get update -q && sudo apt-get install -qy $PACKAGES
114118 fi
115119 - name : Create an isolated venv for testing
116120 run : uv venv .venv
117121 - name : Install 3rd-party stub dependencies
118122 run : |
119- DEPENDENCIES =$( python tests/get_external_stub_requirements.py )
120- if [ -n "$DEPENDENCIES " ]; then
121- printf "Installing packages:\n $(echo $DEPENDENCIES | sed 's/ /\n /g')\n"
122- uv pip install --python-version ${{ matrix.python-version }} $DEPENDENCIES
123+ PACKAGES =$(python tests/get_external_stub_requirements.py)
124+ if [ -n "$PACKAGES " ]; then
125+ printf "Installing python packages:\n $(echo $PACKAGES | sed 's/ /\n /g')\n"
126+ uv pip install --python-version ${{ matrix.python-version }} $PACKAGES
123127 fi
124128 - name : Activate the isolated venv for the rest of the job
125129 run : echo "$PWD/.venv/bin" >> $GITHUB_PATH
0 commit comments