2828 python-version : ' 3.13'
2929 - name : Install dependencies
3030 run : |-
31- python -m pip install --upgrade pip
32- python -m pip install flake8
31+ python -m pip install pip uv -U
32+ python -m uv pip install flake8
3333 - name : Lint with flake8
3434 run : |-
3535 # stop the build if there are Python syntax errors or undefined names
@@ -56,19 +56,20 @@ jobs:
5656 python-version : ' 3.13'
5757 - name : Upgrade pip
5858 run : |-
59- python -m pip install --upgrade pip
60- python -m pip install --prefer-binary -r requirements/tests.txt
61- python -m pip install --prefer-binary -r requirements/runtime.txt
59+ python -m pip install pip uv -U
60+ python -m uv pip install -r requirements/tests.txt
61+ python -m uv pip install -r requirements/runtime.txt
6262 - name : Build sdist
6363 shell : bash
6464 run : |-
65- python -m pip install setuptools>=0.8 wheel build twine
65+ python -m pip install pip uv -U
66+ python -m uv pip install setuptools>=0.8 wheel build twine
6667 python -m build --sdist --outdir wheelhouse
6768 python -m twine check ./wheelhouse/line_profiler*.tar.gz
6869 - name : Install sdist
6970 run : |-
7071 ls -al wheelhouse
71- pip install --prefer-binary wheelhouse/line_profiler*.tar.gz -v
72+ python -m uv pip install wheelhouse/line_profiler*.tar.gz -v
7273 - name : Test minimal loose sdist
7374 run : |-
7475 pwd
@@ -146,6 +147,8 @@ jobs:
146147 env :
147148 CIBW_SKIP : ${{ matrix.cibw_skip }}
148149 CIBW_ARCHS_LINUX : ${{ matrix.arch }}
150+ CIBW_ENVIRONMENT : PYTHONUTF8=1
151+ PYTHONUTF8 : ' 1'
149152 - name : Show built files
150153 shell : bash
151154 run : ls -la wheelhouse
@@ -161,23 +164,24 @@ jobs:
161164 pwd
162165 cp .wheelhouse/.coverage* . || true
163166 ls -al
164- python -m pip install coverage[toml]
167+ uv pip install coverage[toml] | pip install coverage[toml]
165168 echo '############ combine'
166169 coverage combine . || true
167170 echo '############ XML'
168171 coverage xml -o ./coverage.xml || true
169172 echo '### The cwd should now have a coverage.xml'
170173 ls -altr
171174 pwd
172- - uses : codecov/codecov-action@v4.0.1
175+ - uses : codecov/codecov-action@v4.5.0
173176 name : Codecov Upload
174177 env :
175178 HAVE_CODECOV_TOKEN : ${{ secrets.CODECOV_TOKEN != '' }}
179+ # Only upload coverage if we have the token
176180 if : ${{ env.HAVE_PERSONAL_TOKEN == 'true' }}
177181 with :
178182 file : ./coverage.xml
179183 token : ${{ secrets.CODECOV_TOKEN }}
180- - uses : codecov/codecov-action@v4.0.1
184+ - uses : codecov/codecov-action@v4.5.0
181185 name : Codecov Upload
182186 with :
183187 file : ./coverage.xml
@@ -337,8 +341,9 @@ jobs:
337341 echo "Finding the path to the wheel"
338342 ls wheelhouse || echo "wheelhouse does not exist"
339343 echo "Installing helpers"
340- pip install setuptools>=0.8 setuptools_scm wheel build -U
341- pip install tomli pkginfo
344+ python -m pip install pip uv -U
345+ python -m uv pip install setuptools>=0.8 setuptools_scm wheel build -U
346+ python -m uv pip install tomli pkginfo
342347 export WHEEL_FPATH=$(python -c "if 1:
343348 import pathlib
344349 dist_dpath = pathlib.Path('wheelhouse')
@@ -356,7 +361,7 @@ jobs:
356361 echo "WHEEL_FPATH=$WHEEL_FPATH"
357362 echo "INSTALL_EXTRAS=$INSTALL_EXTRAS"
358363 echo "MOD_VERSION=$MOD_VERSION"
359- pip install --prefer-binary "line_profiler[$INSTALL_EXTRAS]==$MOD_VERSION" -f wheelhouse
364+ python -m uv pip install "line_profiler[$INSTALL_EXTRAS]==$MOD_VERSION" -f wheelhouse
360365 echo "Install finished."
361366 - name : Test wheel ${{ matrix.install-extras }}
362367 shell : bash
@@ -396,15 +401,15 @@ jobs:
396401 pwd
397402 cp .wheelhouse/.coverage* . || true
398403 ls -al
399- python -m pip install coverage[toml]
404+ uv pip install coverage[toml] | pip install coverage[toml]
400405 echo '############ combine'
401406 coverage combine . || true
402407 echo '############ XML'
403408 coverage xml -o ./coverage.xml || true
404409 echo '### The cwd should now have a coverage.xml'
405410 ls -altr
406411 pwd
407- - uses : codecov/codecov-action@v4.0.1
412+ - uses : codecov/codecov-action@v4.5.0
408413 name : Codecov Upload
409414 with :
410415 file : ./coverage.xml
@@ -453,8 +458,9 @@ jobs:
453458 $GPG_EXECUTABLE --list-keys || echo "first invocation of gpg creates directories and returns 1"
454459 $GPG_EXECUTABLE --list-keys
455460 VERSION=$(python -c "import setup; print(setup.VERSION)")
456- pip install twine
457- pip install urllib3 requests[security] twine
461+ python -m pip install pip uv -U
462+ python -m pip install packaging twine -U
463+ python -m pip install urllib3 requests[security]
458464 GPG_KEYID=$(cat dev/public_gpg_key)
459465 echo "GPG_KEYID = '$GPG_KEYID'"
460466 GPG_SIGN_CMD="$GPG_EXECUTABLE --batch --yes --detach-sign --armor --local-user $GPG_KEYID"
@@ -470,7 +476,7 @@ jobs:
470476 $GPG_EXECUTABLE --verify $WHEEL_PATH.asc $WHEEL_PATH
471477 done
472478 ls -la wheelhouse
473- pip install opentimestamps-client
479+ python -m pip install opentimestamps-client
474480 ots stamp wheelhouse/*.whl wheelhouse/*.tar.gz wheelhouse/*.asc
475481 ls -la wheelhouse
476482 twine upload --username __token__ --password "$TWINE_PASSWORD" --repository-url "$TWINE_REPOSITORY_URL" wheelhouse/*.whl wheelhouse/*.tar.gz --skip-existing --verbose || { echo "failed to twine upload" ; exit 1; }
@@ -528,8 +534,9 @@ jobs:
528534 $GPG_EXECUTABLE --list-keys || echo "first invocation of gpg creates directories and returns 1"
529535 $GPG_EXECUTABLE --list-keys
530536 VERSION=$(python -c "import setup; print(setup.VERSION)")
531- pip install twine
532- pip install urllib3 requests[security] twine
537+ python -m pip install pip uv -U
538+ python -m pip install packaging twine -U
539+ python -m pip install urllib3 requests[security]
533540 GPG_KEYID=$(cat dev/public_gpg_key)
534541 echo "GPG_KEYID = '$GPG_KEYID'"
535542 GPG_SIGN_CMD="$GPG_EXECUTABLE --batch --yes --detach-sign --armor --local-user $GPG_KEYID"
@@ -545,7 +552,7 @@ jobs:
545552 $GPG_EXECUTABLE --verify $WHEEL_PATH.asc $WHEEL_PATH
546553 done
547554 ls -la wheelhouse
548- pip install opentimestamps-client
555+ python -m pip install opentimestamps-client
549556 ots stamp wheelhouse/*.whl wheelhouse/*.tar.gz wheelhouse/*.asc
550557 ls -la wheelhouse
551558 twine upload --username __token__ --password "$TWINE_PASSWORD" --repository-url "$TWINE_REPOSITORY_URL" wheelhouse/*.whl wheelhouse/*.tar.gz --skip-existing --verbose || { echo "failed to twine upload" ; exit 1; }
0 commit comments