From 1230fcbacdfda9a6dd8ccf3d5f929904ec5b9c12 Mon Sep 17 00:00:00 2001 From: Justin Flannery Date: Thu, 26 Dec 2024 17:53:02 -0700 Subject: [PATCH] =?UTF-8?q?=F0=9F=90=9B=203.13=20support?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/tests.yaml | 1 + Dockerfile | 4 +- pyproject.toml | 3 +- requirements.txt | 2 +- requirements/requirements-all.py3.10.txt | 6 +- requirements/requirements-all.py3.11.txt | 6 +- requirements/requirements-all.py3.12.txt | 6 +- requirements/requirements-all.py3.13.txt | 149 +++++++++++++++++++++++ requirements/requirements-all.py3.8.txt | 6 +- requirements/requirements-all.py3.9.txt | 2 +- requirements/requirements-docs.txt | 4 +- requirements/requirements-lint.txt | 2 +- requirements/requirements-test.txt | 8 +- 13 files changed, 170 insertions(+), 29 deletions(-) create mode 100644 requirements/requirements-all.py3.13.txt diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 69728cf9..676c5fdc 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -24,6 +24,7 @@ jobs: fail-fast: true matrix: include: + - {name: Python 3.13, python: '3.13'} - {name: Python 3.12, python: '3.12'} - {name: Python 3.11, python: '3.11'} - {name: Python 3.10, python: '3.10'} diff --git a/Dockerfile b/Dockerfile index 9c6f02dd..3910350c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,7 @@ ARG BASE_IMAGE -FROM ${BASE_IMAGE:-python:3.11-slim} +FROM ${BASE_IMAGE:-python:3.12-slim} -MAINTAINER Justin Flannery "juftin@juftin.com" +LABEL org.opencontainers.image.authors="justin.flannery@juftin.com" RUN apt-get update && apt-get install -y jq && apt-get clean diff --git a/pyproject.toml b/pyproject.toml index 9bd55549..f76ef436 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,6 +16,7 @@ classifiers = [ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ] @@ -91,7 +92,7 @@ pip-compile-constraint = "" template = "test" [[tool.hatch.envs.all.matrix]] -python = ["3.8", "3.9", "3.10", "3.11", "3.12"] +python = ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] [tool.hatch.envs.default] features = ["all"] diff --git a/requirements.txt b/requirements.txt index b9f7ed4b..8f0eccd0 100644 --- a/requirements.txt +++ b/requirements.txt @@ -54,7 +54,7 @@ importlib-metadata==7.0.1 # lunchable lunchable-primelunch==1.0.1 # via hatch.envs.default -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via hatch.envs.default lunchable-splitlunch==1.0.1 # via hatch.envs.default diff --git a/requirements/requirements-all.py3.10.txt b/requirements/requirements-all.py3.10.txt index 970802b6..8a3387d4 100644 --- a/requirements/requirements-all.py3.10.txt +++ b/requirements/requirements-all.py3.10.txt @@ -40,9 +40,7 @@ click-plugins==1.1.1 # hatch.envs.all.py3.10 # lunchable coverage==7.4.1 - # via - # coverage - # pytest-cov + # via pytest-cov exceptiongroup==1.2.0 # via # anyio @@ -69,7 +67,7 @@ iniconfig==2.0.0 # via pytest lunchable-primelunch==1.0.1 # via hatch.envs.all.py3.10 -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via hatch.envs.all.py3.10 lunchable-splitlunch==1.0.1 # via hatch.envs.all.py3.10 diff --git a/requirements/requirements-all.py3.11.txt b/requirements/requirements-all.py3.11.txt index 48366d14..e55bb655 100644 --- a/requirements/requirements-all.py3.11.txt +++ b/requirements/requirements-all.py3.11.txt @@ -40,9 +40,7 @@ click-plugins==1.1.1 # hatch.envs.all.py3.11 # lunchable coverage==7.4.1 - # via - # coverage - # pytest-cov + # via pytest-cov h11==0.14.0 # via httpcore httpcore==1.0.2 @@ -65,7 +63,7 @@ iniconfig==2.0.0 # via pytest lunchable-primelunch==1.0.1 # via hatch.envs.all.py3.11 -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via hatch.envs.all.py3.11 lunchable-splitlunch==1.0.1 # via hatch.envs.all.py3.11 diff --git a/requirements/requirements-all.py3.12.txt b/requirements/requirements-all.py3.12.txt index beaa61ab..22887a7f 100644 --- a/requirements/requirements-all.py3.12.txt +++ b/requirements/requirements-all.py3.12.txt @@ -40,9 +40,7 @@ click-plugins==1.1.1 # hatch.envs.all.py3.12 # lunchable coverage==7.4.1 - # via - # coverage - # pytest-cov + # via pytest-cov h11==0.14.0 # via httpcore httpcore==1.0.2 @@ -65,7 +63,7 @@ iniconfig==2.0.0 # via pytest lunchable-primelunch==1.0.1 # via hatch.envs.all.py3.12 -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via hatch.envs.all.py3.12 lunchable-splitlunch==1.0.1 # via hatch.envs.all.py3.12 diff --git a/requirements/requirements-all.py3.13.txt b/requirements/requirements-all.py3.13.txt new file mode 100644 index 00000000..27fb603d --- /dev/null +++ b/requirements/requirements-all.py3.13.txt @@ -0,0 +1,149 @@ +# +# This file is autogenerated by hatch-pip-compile with Python 3.13 +# +# - pytest +# - pytest-cov +# - pytest-mock +# - vcrpy~=5.1.0 +# - click-plugins>=1.1.1 +# - click>=8.0.1 +# - httpx +# - importlib-metadata>=3.6 +# - pydantic<3,>=2 +# - rich>=10.0.0 +# - lunchable-primelunch +# - lunchable-pushlunch +# - lunchable-splitlunch +# + +annotated-types==0.7.0 + # via pydantic +anyio==4.7.0 + # via httpx +certifi==2024.12.14 + # via + # httpcore + # httpx + # requests +charset-normalizer==3.4.1 + # via requests +click==8.1.8 + # via + # hatch.envs.all.py3.13 + # click-plugins + # lunchable + # lunchable-primelunch + # lunchable-pushlunch + # lunchable-splitlunch +click-plugins==1.1.1 + # via + # hatch.envs.all.py3.13 + # lunchable +coverage==7.6.10 + # via pytest-cov +h11==0.14.0 + # via httpcore +httpcore==1.0.7 + # via httpx +httpx==0.28.1 + # via + # hatch.envs.all.py3.13 + # lunchable +idna==3.10 + # via + # anyio + # httpx + # requests + # yarl +importlib-metadata==8.5.0 + # via + # hatch.envs.all.py3.13 + # lunchable +iniconfig==2.0.0 + # via pytest +lunchable-primelunch==1.0.5 + # via hatch.envs.all.py3.13 +lunchable-pushlunch==1.1.0 + # via hatch.envs.all.py3.13 +lunchable-splitlunch==1.0.3 + # via hatch.envs.all.py3.13 +markdown-it-py==3.0.0 + # via rich +mdurl==0.1.2 + # via markdown-it-py +multidict==6.1.0 + # via yarl +numpy==2.2.1 + # via pandas +oauthlib==3.2.2 + # via requests-oauthlib +packaging==24.2 + # via pytest +pandas==2.2.3 + # via lunchable-primelunch +pluggy==1.5.0 + # via pytest +propcache==0.2.1 + # via yarl +pydantic==2.10.4 + # via + # hatch.envs.all.py3.13 + # lunchable +pydantic-core==2.27.2 + # via pydantic +pygments==2.18.0 + # via rich +pytest==8.3.4 + # via + # hatch.envs.all.py3.13 + # pytest-cov + # pytest-mock +pytest-cov==6.0.0 + # via hatch.envs.all.py3.13 +pytest-mock==3.14.0 + # via hatch.envs.all.py3.13 +python-dateutil==2.9.0.post0 + # via + # lunchable-splitlunch + # pandas +pytz==2024.2 + # via pandas +pyyaml==6.0.2 + # via vcrpy +requests==2.32.3 + # via + # requests-oauthlib + # splitwise +requests-oauthlib==1.3.1 + # via splitwise +rich==13.9.4 + # via + # hatch.envs.all.py3.13 + # lunchable + # lunchable-primelunch + # lunchable-splitlunch +six==1.17.0 + # via python-dateutil +sniffio==1.3.1 + # via anyio +splitwise==2.5.0 + # via lunchable-splitlunch +typing-extensions==4.12.2 + # via + # pydantic + # pydantic-core +tzdata==2024.2 + # via pandas +urllib3==2.3.0 + # via requests +vcrpy==5.1.0 + # via hatch.envs.all.py3.13 +wrapt==1.17.0 + # via vcrpy +yarl==1.18.3 + # via vcrpy +zipp==3.21.0 + # via importlib-metadata + +# The following packages are considered to be unsafe in a requirements file: +# lunchable diff --git a/requirements/requirements-all.py3.8.txt b/requirements/requirements-all.py3.8.txt index c391317e..5a066d84 100644 --- a/requirements/requirements-all.py3.8.txt +++ b/requirements/requirements-all.py3.8.txt @@ -40,9 +40,7 @@ click-plugins==1.1.1 # hatch.envs.all.py3.8 # lunchable coverage==7.4.1 - # via - # coverage - # pytest-cov + # via pytest-cov exceptiongroup==1.2.0 # via # anyio @@ -69,7 +67,7 @@ iniconfig==2.0.0 # via pytest lunchable-primelunch==1.0.1 # via hatch.envs.all.py3.8 -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via hatch.envs.all.py3.8 lunchable-splitlunch==1.0.1 # via hatch.envs.all.py3.8 diff --git a/requirements/requirements-all.py3.9.txt b/requirements/requirements-all.py3.9.txt index 5885f4de..84705054 100644 --- a/requirements/requirements-all.py3.9.txt +++ b/requirements/requirements-all.py3.9.txt @@ -67,7 +67,7 @@ iniconfig==2.0.0 # via pytest lunchable-primelunch==1.0.1 # via hatch.envs.all.py3.9 -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via hatch.envs.all.py3.9 lunchable-splitlunch==1.0.1 # via hatch.envs.all.py3.9 diff --git a/requirements/requirements-docs.txt b/requirements/requirements-docs.txt index 61994b5c..744788f4 100644 --- a/requirements/requirements-docs.txt +++ b/requirements/requirements-docs.txt @@ -1,7 +1,7 @@ # # This file is autogenerated by hatch-pip-compile with Python 3.11 # -# [constraints] requirements.txt (SHA256: acd01d83136975a189aa0febb52cc548a7e3f3fab4bbc2a61aaf4f2ff45ab979) +# [constraints] requirements.txt (SHA256: fb23f3ddcd643c8d7b2691784195ec9d0955fb26148f033b9b5e749f54657bf8) # # - markdown-callouts # - markdown-exec @@ -111,7 +111,7 @@ lunchable-primelunch==1.0.1 # via # -c requirements.txt # hatch.envs.docs -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via # -c requirements.txt # hatch.envs.docs diff --git a/requirements/requirements-lint.txt b/requirements/requirements-lint.txt index b89cde56..6cea91ad 100644 --- a/requirements/requirements-lint.txt +++ b/requirements/requirements-lint.txt @@ -1,7 +1,7 @@ # # This file is autogenerated by hatch-pip-compile with Python 3.11 # -# [constraints] requirements.txt (SHA256: acd01d83136975a189aa0febb52cc548a7e3f3fab4bbc2a61aaf4f2ff45ab979) +# [constraints] requirements.txt (SHA256: fb23f3ddcd643c8d7b2691784195ec9d0955fb26148f033b9b5e749f54657bf8) # # - mypy>=1.6.1 # - ruff~=0.1.7 diff --git a/requirements/requirements-test.txt b/requirements/requirements-test.txt index 8d528777..f18559e7 100644 --- a/requirements/requirements-test.txt +++ b/requirements/requirements-test.txt @@ -1,7 +1,7 @@ # # This file is autogenerated by hatch-pip-compile with Python 3.11 # -# [constraints] requirements.txt (SHA256: acd01d83136975a189aa0febb52cc548a7e3f3fab4bbc2a61aaf4f2ff45ab979) +# [constraints] requirements.txt (SHA256: fb23f3ddcd643c8d7b2691784195ec9d0955fb26148f033b9b5e749f54657bf8) # # - pytest # - pytest-cov @@ -51,9 +51,7 @@ click-plugins==1.1.1 # hatch.envs.test # lunchable coverage==7.4.1 - # via - # coverage - # pytest-cov + # via pytest-cov h11==0.14.0 # via # -c requirements.txt @@ -85,7 +83,7 @@ lunchable-primelunch==1.0.1 # via # -c requirements.txt # hatch.envs.test -lunchable-pushlunch==1.0.1 +lunchable-pushlunch==1.1.0 # via # -c requirements.txt # hatch.envs.test