Skip to content

Commit ee73599

Browse files
committed
update pyproject.toml to add support for python 3.14, remove rye dependencies. regenerate uv.lock and requirements-dev.lock
1 parent a2398c9 commit ee73599

3 files changed

Lines changed: 197 additions & 113 deletions

File tree

pyproject.toml

Lines changed: 9 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@ classifiers = [
2525
"Programming Language :: Python :: 3.11",
2626
"Programming Language :: Python :: 3.12",
2727
"Programming Language :: Python :: 3.13",
28+
"Programming Language :: Python :: 3.14",
2829
"Operating System :: OS Independent",
2930
"Operating System :: POSIX",
3031
"Operating System :: MacOS",
@@ -43,7 +44,7 @@ aiohttp = ["aiohttp", "httpx_aiohttp>=0.1.9"]
4344

4445
[tool.uv]
4546
managed = true
46-
required-version = ">=0.5.0"
47+
required-version = ">=0.9"
4748
conflicts = [
4849
[
4950
{ group = "pydantic-v1" },
@@ -69,54 +70,24 @@ dev = [
6970
"uuid-utils>=0.11.0",
7071
"pytest-cov>=7.0.0",
7172
]
73+
pydantic-v1 = [
74+
"pydantic>=1.9.0,<2",
75+
]
76+
pydantic-v2 = [
77+
"pydantic~=2.0 ; python_full_version < '3.14'",
78+
"pydantic~=2.12 ; python_full_version >= '3.14'",
79+
]
7280
docs = [
7381
"furo>=2025.9.25",
7482
"sphinx>=7.4.7",
7583
"sphinx-autodoc-typehints>=2.3.0",
7684
"sphinx-toolbox>=4.0.0",
7785
]
78-
pydantic-v1 = [
79-
"pydantic>=1.9.0,<2",
80-
]
81-
pydantic-v2 = [
82-
"pydantic>=2,<3",
83-
]
84-
85-
[tool.rye.scripts]
86-
format = { chain = [
87-
"format:ruff",
88-
"format:docs",
89-
"fix:ruff",
90-
# run formatting again to fix any inconsistencies when imports are stripped
91-
"format:ruff",
92-
]}
93-
"format:docs" = "python scripts/utils/ruffen-docs.py README.md api.md"
94-
"format:ruff" = "ruff format"
95-
96-
"lint" = { chain = [
97-
"check:ruff",
98-
"typecheck",
99-
"check:importable",
100-
]}
101-
"check:ruff" = "ruff check ."
102-
"fix:ruff" = "ruff check --fix ."
103-
104-
"check:importable" = "python -c 'import runloop_api_client'"
105-
106-
typecheck = { chain = [
107-
"typecheck:pyright",
108-
"typecheck:mypy"
109-
]}
110-
111-
"typecheck:pyright" = "pyright"
112-
"typecheck:verify-types" = "pyright --verifytypes runloop_api_client --ignoreexternal"
113-
"typecheck:mypy" = "mypy ."
11486

11587
[build-system]
11688
requires = ["hatchling==1.26.3", "hatch-fancy-pypi-readme"]
11789
build-backend = "hatchling.build"
11890

119-
12091
[tool.hatch.build]
12192
include = [
12293
"src/*"

requirements-dev.lock

Lines changed: 31 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,16 @@
11
# This file was autogenerated by uv via the following command:
2-
# uv export -o requirements-dev.lock --no-hashes
3-
-e .
4-
annotated-types==0.7.0
5-
# via pydantic
2+
# uv pip compile --group dev --output-file requirements-dev.lock
63
anyio==4.8.0
7-
# via
8-
# httpx
9-
# runloop-api-client
4+
# via httpx
105
certifi==2024.12.14
116
# via
127
# httpcore
138
# httpx
14-
colorama==0.4.6 ; sys_platform == 'win32'
15-
# via pytest
9+
coverage==7.10.7
10+
# via pytest-cov
1611
dirty-equals==0.9.0
17-
distro==1.9.0
18-
# via runloop-api-client
19-
exceptiongroup==1.2.2 ; python_full_version < '3.11'
12+
# via runloop-api-client (pyproject.toml:dev)
13+
exceptiongroup==1.2.2
2014
# via
2115
# anyio
2216
# pytest
@@ -27,68 +21,78 @@ h11==0.16.0
2721
httpcore==1.0.9
2822
# via httpx
2923
httpx==0.28.1
30-
# via
31-
# respx
32-
# runloop-api-client
24+
# via respx
3325
idna==3.10
3426
# via
3527
# anyio
3628
# httpx
3729
importlib-metadata==8.6.1
30+
# via runloop-api-client (pyproject.toml:dev)
3831
iniconfig==2.0.0
3932
# via pytest
4033
markdown-it-py==3.0.0
4134
# via rich
4235
mdurl==0.1.2
4336
# via markdown-it-py
4437
mypy==1.14.1
38+
# via runloop-api-client (pyproject.toml:dev)
4539
mypy-extensions==1.0.0
4640
# via mypy
4741
nodeenv==1.9.1
4842
# via pyright
4943
packaging==24.2
5044
# via pytest
5145
pluggy==1.5.0
52-
# via pytest
53-
pydantic==2.10.3
54-
# via runloop-api-client
55-
pydantic-core==2.27.1
56-
# via pydantic
46+
# via
47+
# pytest
48+
# pytest-cov
5749
pygments==2.19.1
5850
# via
5951
# pytest
6052
# rich
6153
pyright==1.1.399
54+
# via runloop-api-client (pyproject.toml:dev)
6255
pytest==8.4.1
6356
# via
57+
# runloop-api-client (pyproject.toml:dev)
6458
# pytest-asyncio
59+
# pytest-cov
60+
# pytest-timeout
6561
# pytest-xdist
6662
pytest-asyncio==0.24.0
63+
# via runloop-api-client (pyproject.toml:dev)
64+
pytest-cov==7.0.0
65+
# via runloop-api-client (pyproject.toml:dev)
66+
pytest-timeout==2.4.0
67+
# via runloop-api-client (pyproject.toml:dev)
6768
pytest-xdist==3.7.0
69+
# via runloop-api-client (pyproject.toml:dev)
6870
python-dateutil==2.9.0.post0
6971
# via time-machine
7072
respx==0.22.0
73+
# via runloop-api-client (pyproject.toml:dev)
7174
rich==13.9.4
75+
# via runloop-api-client (pyproject.toml:dev)
7276
ruff==0.9.4
77+
# via runloop-api-client (pyproject.toml:dev)
7378
six==1.17.0
7479
# via python-dateutil
7580
sniffio==1.3.1
76-
# via
77-
# anyio
78-
# runloop-api-client
81+
# via anyio
7982
time-machine==2.16.0
80-
tomli==2.2.1 ; python_full_version < '3.11'
83+
# via runloop-api-client (pyproject.toml:dev)
84+
tomli==2.2.1
8185
# via
86+
# coverage
8287
# mypy
8388
# pytest
8489
typing-extensions==4.12.2
8590
# via
8691
# anyio
8792
# mypy
88-
# pydantic
89-
# pydantic-core
9093
# pyright
9194
# rich
92-
# runloop-api-client
95+
uuid-utils==0.12.0
96+
# via runloop-api-client (pyproject.toml:dev)
9397
zipp==3.21.0
9498
# via importlib-metadata

0 commit comments

Comments
 (0)