Skip to content

Commit

Permalink
Python 3.13 support, update tests
Browse files Browse the repository at this point in the history
  • Loading branch information
dcwatson committed Nov 7, 2024
1 parent 2d1a5a1 commit 852cb1b
Show file tree
Hide file tree
Showing 13 changed files with 1,881 additions and 349 deletions.
2 changes: 1 addition & 1 deletion .python-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
3.12.2
3.13
5 changes: 2 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,8 @@ compose_down:

# Development Setup
.venv:
python3 -m venv .venv
. .venv/bin/activate
python3 -m pip install -r requirements-dev.lock
uv sync
source .venv/bin/activate

.git/hooks/pre-commit: .venv
python3 -m pre_commit install
Expand Down
7 changes: 3 additions & 4 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -37,10 +37,8 @@ dependencies = [
readme = "README.md"
requires-python = ">= 3.11"

[tool.rye]
managed = true
virtual = true
dev-dependencies = [
[dependency-groups]
dev = [
"mock>=5.1.0",
"pre-commit>=3.7.0",
"pytest-asyncio>=0.23.6",
Expand All @@ -51,6 +49,7 @@ dev-dependencies = [

[tool.pytest.ini_options]
addopts = "--tb=short --ds=takahe.settings --import-mode=importlib"
asyncio_default_fixture_loop_scope = "function"
filterwarnings = [
"ignore:There is no current event loop",
"ignore:No directory at",
Expand Down
249 changes: 66 additions & 183 deletions requirements-dev.lock
Original file line number Diff line number Diff line change
@@ -1,218 +1,101 @@
# generated by rye
# use `rye lock` or `rye sync` to update this lockfile
#
# last locked with the following flags:
# pre: false
# features: []
# all-features: false
# with-sources: false
# generate-hashes: false
# universal: false

aiohttp==3.9.5
# via pywebpush
# This file was autogenerated by uv via the following command:
# uv export --no-hashes
aiohappyeyeballs==2.4.3
aiohttp==3.10.10
aiosignal==1.3.1
# via aiohttp
annotated-types==0.7.0
# via pydantic
anyio==4.4.0
# via httpx
anyio==4.6.2.post1
asgiref==3.8.1
# via django
# via django-cors-headers
# via django-htmx
attrs==23.2.0
# via aiohttp
async-timeout==5.0.1 ; python_full_version < '3.11.3'
attrs==24.2.0
blurhash-python==1.2.2
boto3==1.34.145
# via django-storages
botocore==1.34.145
# via boto3
# via s3transfer
cachetools==5.4.0
# via google-auth
# via pyld
certifi==2024.7.4
# via httpcore
# via httpx
# via requests
# via sentry-sdk
cffi==1.16.0
# via blurhash-python
# via cryptography
boto3==1.35.55
botocore==1.35.55
cachetools==5.5.0
certifi==2024.8.30
cffi==1.17.1
cfgv==3.4.0
# via pre-commit
charset-normalizer==3.3.2
# via requests
charset-normalizer==3.4.0
click==8.1.7
# via uvicorn
cryptography==43.0.0
# via http-ece
# via py-vapid
# via pywebpush
distlib==0.3.8
# via virtualenv
dj-database-url==2.2.0
django==4.2.14
# via dj-database-url
# via django-cors-headers
# via django-debug-toolbar
# via django-htmx
# via django-storages
colorama==0.4.6 ; sys_platform == 'win32' or platform_system == 'Windows'
cryptography==43.0.3
distlib==0.3.9
dj-database-url==2.3.0
django==4.2.16
django-cache-url==3.4.5
django-cors-headers==4.4.0
django-cors-headers==4.6.0
django-debug-toolbar==4.4.6
django-htmx==1.18.0
django-htmx==1.21.0
django-storages==1.14.4
dnspython==2.6.1
# via email-validator
dnspython==2.7.0
email-validator==2.2.0
# via pydantic
filelock==3.15.4
# via virtualenv
frozendict==2.4.4
# via pyld
frozenlist==1.4.1
# via aiohttp
# via aiosignal
google-api-core==2.19.1
# via google-cloud-core
# via google-cloud-storage
google-auth==2.32.0
# via google-api-core
# via google-cloud-core
# via google-cloud-storage
filelock==3.16.1
frozendict==2.4.6
frozenlist==1.5.0
google-api-core==2.22.0
google-auth==2.36.0
google-cloud-core==2.4.1
# via google-cloud-storage
google-cloud-storage==2.17.0
# via django-storages
google-crc32c==1.5.0
# via google-cloud-storage
# via google-resumable-media
google-resumable-media==2.7.1
# via google-cloud-storage
googleapis-common-protos==1.63.2
# via google-api-core
gunicorn==22.0.0
google-cloud-storage==2.18.2
google-crc32c==1.6.0
google-resumable-media==2.7.2
googleapis-common-protos==1.65.0
gunicorn==23.0.0
h11==0.14.0
# via httpcore
# via uvicorn
http-ece==1.2.0
# via pywebpush
httpcore==1.0.5
# via httpx
httpx==0.27.0
# via pytest-httpx
identify==2.6.0
# via pre-commit
idna==3.7
# via anyio
# via email-validator
# via httpx
# via requests
# via yarl
http-ece==1.2.1
httpcore==1.0.6
httpx==0.27.2
identify==2.6.1
idna==3.10
iniconfig==2.0.0
# via pytest
jmespath==1.0.1
# via boto3
# via botocore
lxml==5.2.2
# via pyld
lxml==5.3.0
markdown-it-py==3.0.0
mdurl==0.1.2
# via markdown-it-py
mock==5.1.0
multidict==6.0.5
# via aiohttp
# via yarl
multidict==6.1.0
nodeenv==1.9.1
# via pre-commit
packaging==24.1
# via gunicorn
# via pytest
pillow==10.4.0
# via blurhash-python
platformdirs==4.2.2
# via virtualenv
pillow==11.0.0
platformdirs==4.3.6
pluggy==1.5.0
# via pytest
pre-commit==3.7.1
proto-plus==1.24.0
# via google-api-core
protobuf==5.27.2
# via google-api-core
# via googleapis-common-protos
# via proto-plus
psycopg==3.2.1
psycopg-binary==3.2.1
# via psycopg
pre-commit==4.0.1
propcache==0.2.0
proto-plus==1.25.0
protobuf==5.28.3
psycopg==3.2.3
psycopg-binary==3.2.3 ; implementation_name != 'pypy'
py-vapid==1.9.1
# via pywebpush
pyasn1==0.6.0
# via pyasn1-modules
# via rsa
pyasn1-modules==0.4.0
# via google-auth
pyasn1==0.6.1
pyasn1-modules==0.4.1
pycountry==24.6.1
pycparser==2.22
# via cffi
pydantic==2.8.2
# via pydantic-settings
pydantic-core==2.20.1
# via pydantic
pydantic-settings==2.3.4
pydantic==2.9.2
pydantic-core==2.23.4
pydantic-settings==2.6.1
pyld==2.0.4
pymemcache==4.0.0
pytest==8.3.1
# via pytest-asyncio
# via pytest-django
# via pytest-dotenv
# via pytest-httpx
pytest-asyncio==0.23.8
pytest-django==4.8.0
pytest==8.3.3
pytest-asyncio==0.24.0
pytest-django==4.9.0
pytest-dotenv==0.5.2
pytest-httpx==0.30.0
pytest-httpx==0.33.0
python-dateutil==2.9.0.post0
# via botocore
python-dotenv==1.0.1
# via pydantic-settings
# via pytest-dotenv
pywebpush==2.0.0
pyyaml==6.0.1
# via pre-commit
redis==5.0.7
pywebpush==2.0.1
pyyaml==6.0.2
redis==5.2.0
requests==2.32.3
# via google-api-core
# via google-cloud-storage
# via pywebpush
rsa==4.9
# via google-auth
s3transfer==0.10.2
# via boto3
sentry-sdk==2.10.0
s3transfer==0.10.3
sentry-sdk==2.18.0
six==1.16.0
# via blurhash-python
# via python-dateutil
# via pywebpush
sniffio==1.3.1
# via anyio
# via httpx
sqlparse==0.5.1
# via django
# via django-debug-toolbar
typing-extensions==4.12.2
# via dj-database-url
# via psycopg
# via pydantic
# via pydantic-core
urllib3==2.2.2
# via botocore
# via requests
# via sentry-sdk
tzdata==2024.2 ; sys_platform == 'win32'
urllib3==2.2.3
urlman==2.0.2
uvicorn==0.30.3
virtualenv==20.26.3
# via pre-commit
whitenoise==6.7.0
yarl==1.9.4
# via aiohttp
uvicorn==0.32.0
virtualenv==20.27.1
whitenoise==6.8.2
yarl==1.17.1
Loading

0 comments on commit 852cb1b

Please sign in to comment.