diff --git a/.github/workflows/daily_deps_test.yml b/.github/workflows/daily_deps_test.yml index 878e3c517..1385b20f8 100644 --- a/.github/workflows/daily_deps_test.yml +++ b/.github/workflows/daily_deps_test.yml @@ -14,7 +14,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "3.12", "3.13"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"] pydantic-version: ['main'] include: - python-version: '3.12' diff --git a/pyproject.toml b/pyproject.toml index 7568b23d4..689ddad73 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -101,7 +101,8 @@ dev = [ "pytest >= 8.3.4", "pytest-django >= 4.6.0", "pytest-pretty >= 1.2.0", - "pydantic @ git+https://github.com/pydantic/pydantic", + "pydantic @ git+https://github.com/pydantic/pydantic; python_version >= '3.9'", + "pydantic==2.10.5; python_version < '3.9'", "requests >= 2.31.0", "sqlalchemy >= 1.4.54", "pandas>=2.1.2; python_version >= '3.9'", diff --git a/uv.lock b/uv.lock index e5af5ff84..ac97845d9 100644 --- a/uv.lock +++ b/uv.lock @@ -206,7 +206,8 @@ dependencies = [ { name = "distro" }, { name = "httpx" }, { name = "jiter" }, - { name = "pydantic" }, + { name = "pydantic", version = "2.10.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "pydantic", version = "2.10.5", source = { git = "https://github.com/pydantic/pydantic#4e055d56471651bca5ce8907c671bc6339d309fe" }, marker = "python_full_version >= '3.9'" }, { name = "sniffio" }, { name = "typing-extensions" }, ] @@ -649,7 +650,7 @@ name = "click" version = "8.1.8" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "colorama", marker = "platform_system == 'Windows'" }, + { name = "colorama", marker = "sys_platform == 'win32'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/b9/2e/0090cbf739cee7d23781ad4b89a9894a41538e4fcf4c31dcdd705b78eb8b/click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a", size = 226593 } wheels = [ @@ -956,7 +957,8 @@ name = "fastapi" version = "0.115.6" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "pydantic" }, + { name = "pydantic", version = "2.10.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "pydantic", version = "2.10.5", source = { git = "https://github.com/pydantic/pydantic#4e055d56471651bca5ce8907c671bc6339d309fe" }, marker = "python_full_version >= '3.9'" }, { name = "starlette" }, { name = "typing-extensions" }, ] @@ -1553,7 +1555,8 @@ dev = [ { name = "psycopg2-binary" }, { name = "pyarrow", version = "17.0.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.13'" }, { name = "pyarrow", version = "18.1.0", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version >= '3.13'" }, - { name = "pydantic" }, + { name = "pydantic", version = "2.10.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "pydantic", version = "2.10.5", source = { git = "https://github.com/pydantic/pydantic#4e055d56471651bca5ce8907c671bc6339d309fe" }, marker = "python_full_version >= '3.9'" }, { name = "pymongo" }, { name = "pymysql" }, { name = "pyright" }, @@ -1676,7 +1679,8 @@ dev = [ { name = "psycopg2-binary", specifier = ">=2.9.10" }, { name = "pyarrow", marker = "python_full_version < '3.13'", specifier = ">=17.0.0" }, { name = "pyarrow", marker = "python_full_version >= '3.13'", specifier = ">=18.1.0" }, - { name = "pydantic", git = "https://github.com/pydantic/pydantic" }, + { name = "pydantic", marker = "python_full_version < '3.9'", specifier = "==2.10.5" }, + { name = "pydantic", marker = "python_full_version >= '3.9'", git = "https://github.com/pydantic/pydantic" }, { name = "pymongo", specifier = ">=4.10.1" }, { name = "pymysql", specifier = ">=1.1.1" }, { name = "pyright", specifier = ">=1.1.360" }, @@ -1851,7 +1855,7 @@ version = "1.6.1" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "click" }, - { name = "colorama", marker = "platform_system == 'Windows'" }, + { name = "colorama", marker = "sys_platform == 'win32'" }, { name = "ghp-import" }, { name = "importlib-metadata", marker = "python_full_version < '3.10'" }, { name = "jinja2" }, @@ -2301,7 +2305,8 @@ dependencies = [ { name = "distro" }, { name = "httpx" }, { name = "jiter" }, - { name = "pydantic" }, + { name = "pydantic", version = "2.10.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "pydantic", version = "2.10.5", source = { git = "https://github.com/pydantic/pydantic#4e055d56471651bca5ce8907c671bc6339d309fe" }, marker = "python_full_version >= '3.9'" }, { name = "sniffio" }, { name = "tqdm" }, { name = "typing-extensions" }, @@ -3350,14 +3355,44 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/13/a3/a812df4e2dd5696d1f351d58b8fe16a405b234ad2886a0dab9183fb78109/pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc", size = 117552 }, ] +[[package]] +name = "pydantic" +version = "2.10.5" +source = { registry = "https://pypi.org/simple" } +resolution-markers = [ + "python_full_version < '3.9' and platform_python_implementation == 'PyPy'", + "python_full_version < '3.9' and platform_python_implementation != 'PyPy'", +] +dependencies = [ + { name = "annotated-types", marker = "python_full_version < '3.9'" }, + { name = "pydantic-core", marker = "python_full_version < '3.9'" }, + { name = "typing-extensions", marker = "python_full_version < '3.9'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/6a/c7/ca334c2ef6f2e046b1144fe4bb2a5da8a4c574e7f2ebf7e16b34a6a2fa92/pydantic-2.10.5.tar.gz", hash = "sha256:278b38dbbaec562011d659ee05f63346951b3a248a6f3642e1bc68894ea2b4ff", size = 761287 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/58/26/82663c79010b28eddf29dcdd0ea723439535fa917fce5905885c0e9ba562/pydantic-2.10.5-py3-none-any.whl", hash = "sha256:4dd4e322dbe55472cb7ca7e73f4b63574eecccf2835ffa2af9021ce113c83c53", size = 431426 }, +] + [[package]] name = "pydantic" version = "2.10.5" source = { git = "https://github.com/pydantic/pydantic#4e055d56471651bca5ce8907c671bc6339d309fe" } +resolution-markers = [ + "python_full_version == '3.9.*' and platform_python_implementation == 'PyPy'", + "python_full_version == '3.9.*' and platform_python_implementation != 'PyPy'", + "python_full_version == '3.10.*' and platform_python_implementation == 'PyPy'", + "python_full_version == '3.10.*' and platform_python_implementation != 'PyPy'", + "python_full_version == '3.11.*' and platform_python_implementation == 'PyPy'", + "python_full_version == '3.11.*' and platform_python_implementation != 'PyPy'", + "python_full_version == '3.12.*' and platform_python_implementation == 'PyPy'", + "python_full_version == '3.12.*' and platform_python_implementation != 'PyPy'", + "python_full_version >= '3.13' and platform_python_implementation == 'PyPy'", + "python_full_version >= '3.13' and platform_python_implementation != 'PyPy'", +] dependencies = [ - { name = "annotated-types" }, - { name = "pydantic-core" }, - { name = "typing-extensions" }, + { name = "annotated-types", marker = "python_full_version >= '3.9'" }, + { name = "pydantic-core", marker = "python_full_version >= '3.9'" }, + { name = "typing-extensions", marker = "python_full_version >= '3.9'" }, ] [[package]] @@ -4056,7 +4091,8 @@ name = "sqlmodel" version = "0.0.22" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "pydantic" }, + { name = "pydantic", version = "2.10.5", source = { registry = "https://pypi.org/simple" }, marker = "python_full_version < '3.9'" }, + { name = "pydantic", version = "2.10.5", source = { git = "https://github.com/pydantic/pydantic#4e055d56471651bca5ce8907c671bc6339d309fe" }, marker = "python_full_version >= '3.9'" }, { name = "sqlalchemy" }, ] sdist = { url = "https://files.pythonhosted.org/packages/b5/39/8641040ab0d5e1d8a1c2325ae89a01ae659fc96c61a43d158fb71c9a0bf0/sqlmodel-0.0.22.tar.gz", hash = "sha256:7d37c882a30c43464d143e35e9ecaf945d88035e20117bf5ec2834a23cbe505e", size = 116392 } @@ -4184,7 +4220,7 @@ name = "tqdm" version = "4.67.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "colorama", marker = "platform_system == 'Windows'" }, + { name = "colorama", marker = "sys_platform == 'win32'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/a8/4b/29b4ef32e036bb34e4ab51796dd745cdba7ed47ad142a9f4a1eb8e0c744d/tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2", size = 169737 } wheels = [