Skip to content

Commit

Permalink
Replace pip with uv and give Python 3.13 a try
Browse files Browse the repository at this point in the history
  • Loading branch information
athornton committed Dec 13, 2024
1 parent a87ea84 commit 563a8fd
Show file tree
Hide file tree
Showing 6 changed files with 63 additions and 46 deletions.
7 changes: 4 additions & 3 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
python-version: "3.13"

- name: Run pre-commit
uses: pre-commit/[email protected]
Expand All @@ -41,6 +41,7 @@ jobs:
- "3.10"
- "3.11"
- "3.12"
- "3.13"

steps:
- uses: actions/checkout@v4
Expand Down Expand Up @@ -89,7 +90,7 @@ jobs:
- name: Build and publish
uses: lsst-sqre/build-and-publish-to-pypi@v2
with:
python-version: "3.12"
python-version: "3.13"
upload: false

pypi:
Expand All @@ -116,4 +117,4 @@ jobs:
- name: Build and publish
uses: lsst-sqre/build-and-publish-to-pypi@v2
with:
python-version: "3.12"
python-version: "3.13"
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ TESTS_DIR := tests

SHELL := bash
PYTHON := python
PIP := pip
PIP_COMPILE := pip-compile
PIP := uv pip
PIP_COMPILE := uv pip compile
PYTEST := pytest
DOCKER := docker
GIT := git
Expand Down
4 changes: 4 additions & 0 deletions requirements/dev.in
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
-c main.txt

uv

pip-tools
tox
flake8
Expand Down Expand Up @@ -28,4 +30,6 @@ furo
sphinx
sphinx-autodoc-typehints

# Internal tooling
scriv

43 changes: 27 additions & 16 deletions requirements/dev.txt
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
#
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# pip-compile --no-emit-index-url --output-file=requirements/dev.txt requirements/dev.in
#
# This file was autogenerated by uv via the following command:
# uv pip compile --no-emit-index-url -o requirements/dev.txt requirements/dev.in
alabaster==0.7.16
# via sphinx
attrs==23.2.0
# via pytest-mypy
# via
# pytest-mypy
# scriv
babel==2.14.0
# via sphinx
beautifulsoup4==4.12.3
Expand Down Expand Up @@ -38,15 +36,17 @@ charset-normalizer==3.3.2
click==8.1.7
# via
# -c requirements/main.txt
# click-log
# pip-tools
# scriv
click-log==0.4.0
# via scriv
colorama==0.4.6
# via tox
commonmark==0.9.1
# via recommonmark
coverage[toml]==7.4.3
# via
# coverage
# pytest-cov
coverage==7.4.3
# via pytest-cov
distlib==0.3.8
# via virtualenv
docutils==0.20.1
Expand Down Expand Up @@ -86,13 +86,18 @@ isort==5.13.2
jinja2==3.1.3
# via
# -c requirements/main.txt
# scriv
# sphinx
markdown-it-py==3.0.0
# via scriv
markupsafe==2.1.5
# via
# -c requirements/main.txt
# jinja2
mccabe==0.7.0
# via flake8
mdurl==0.1.2
# via markdown-it-py
multidict==6.0.5
# via yarl
mypy==1.9.0
Expand All @@ -107,6 +112,8 @@ packaging==24.0
# pytest
# sphinx
# tox
pip==24.3.1
# via pip-tools
pip-tools==7.4.1
# via -r requirements/dev.in
platformdirs==4.2.0
Expand Down Expand Up @@ -171,13 +178,18 @@ requests==2.31.0
# via
# -c requirements/main.txt
# responses
# scriv
# sphinx
responses==0.25.0
# via -r requirements/dev.in
rsa==4.9
# via
# -c requirements/main.txt
# google-auth
scriv==1.5.1
# via -r requirements/dev.in
setuptools==75.6.0
# via pip-tools
snowballstemmer==2.2.0
# via sphinx
soupsieve==2.5
Expand Down Expand Up @@ -228,14 +240,17 @@ types-s3transfer==0.10.0
typing-extensions==4.10.0
# via
# -c requirements/main.txt
# boto3-stubs
# mypy
urllib3==2.0.7
# via
# -c requirements/main.txt
# requests
# responses
# types-requests
uv==0.5.8
# via
# -c requirements/main.txt
# -r requirements/dev.in
vcrpy==6.0.1
# via pytest-vcr
virtualenv==20.25.1
Expand All @@ -246,7 +261,3 @@ wrapt==1.16.0
# via vcrpy
yarl==1.9.4
# via vcrpy

# The following packages are considered to be unsafe in a requirements file:
# pip
# setuptools
5 changes: 4 additions & 1 deletion requirements/main.in
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,7 @@ boto3~=1.34
# GitHub AA Provider
cachetools~=5.3

importlib-metadata; python_version < '3.13'
# uv: fast pip replacement
uv

importlib-metadata; python_version < '3.14'
46 changes: 22 additions & 24 deletions requirements/main.txt
Original file line number Diff line number Diff line change
@@ -1,24 +1,20 @@
#
# This file is autogenerated by pip-compile with Python 3.11
# by the following command:
#
# pip-compile --no-emit-index-url --output-file=requirements/main.txt requirements/main.in
#
# This file was autogenerated by uv via the following command:
# uv pip compile --no-emit-index-url -o requirements/main.txt requirements/main.in
azure-core==1.30.1
# via azure-storage-blob
azure-storage-blob==12.19.1
# via -r main.in
# via -r requirements/main.in
blinker==1.7.0
# via flask
boto3==1.34.59
# via -r main.in
# via -r requirements/main.in
botocore==1.34.59
# via
# boto3
# s3transfer
cachetools==5.3.3
# via
# -r main.in
# -r requirements/main.in
# google-auth
certifi==2024.2.2
# via requests
Expand All @@ -30,19 +26,19 @@ click==8.1.7
# via flask
cryptography==42.0.5
# via
# -r main.in
# -r requirements/main.in
# azure-storage-blob
figcan==0.0.4
# via -r main.in
# via -r requirements/main.in
flask==2.3.3
# via
# -r main.in
# -r requirements/main.in
# flask-classful
# flask-marshmallow
flask-classful==0.16.0
# via -r main.in
# via -r requirements/main.in
flask-marshmallow==0.15.0
# via -r main.in
# via -r requirements/main.in
google-api-core==2.17.1
# via
# google-cloud-core
Expand All @@ -55,7 +51,7 @@ google-auth==2.28.2
google-cloud-core==2.4.1
# via google-cloud-storage
google-cloud-storage==2.15.0
# via -r main.in
# via -r requirements/main.in
google-crc32c==1.5.0
# via
# google-cloud-storage
Expand All @@ -66,8 +62,8 @@ googleapis-common-protos==1.63.0
# via google-api-core
idna==3.6
# via requests
importlib-metadata==7.0.2 ; python_version < "3.13"
# via -r main.in
importlib-metadata==7.0.2
# via -r requirements/main.in
isodate==0.6.1
# via azure-storage-blob
itsdangerous==2.1.2
Expand Down Expand Up @@ -104,15 +100,15 @@ pyasn1-modules==0.3.0
pycparser==2.21
# via cffi
pyjwt==2.8.0
# via -r main.in
# via -r requirements/main.in
python-dateutil==2.9.0.post0
# via
# -r main.in
# -r requirements/main.in
# botocore
python-dotenv==1.0.1
# via -r main.in
# via -r requirements/main.in
pyyaml==6.0.1
# via -r main.in
# via -r requirements/main.in
requests==2.31.0
# via
# azure-core
Expand All @@ -129,18 +125,20 @@ six==1.16.0
# python-dateutil
typing-extensions==4.10.0
# via
# -r main.in
# -r requirements/main.in
# azure-core
# azure-storage-blob
urllib3==2.0.7
# via
# botocore
# requests
uv==0.5.8
# via -r requirements/main.in
webargs==8.4.0
# via -r main.in
# via -r requirements/main.in
werkzeug==3.0.3
# via
# -r main.in
# -r requirements/main.in
# flask
zipp==3.17.0
# via importlib-metadata

0 comments on commit 563a8fd

Please sign in to comment.