From 10e80f074217335a02ca4ec9f6d83f8e6cc253ec Mon Sep 17 00:00:00 2001 From: Krrish Dholakia Date: Sat, 10 May 2025 15:24:32 -0700 Subject: [PATCH] build(pyproject.toml): publish new litellm-proxy-extras version --- ...tellm_proxy_extras-0.1.19-py3-none-any.whl | Bin 0 -> 21656 bytes .../dist/litellm_proxy_extras-0.1.19.tar.gz | Bin 0 -> 13219 bytes litellm-proxy-extras/pyproject.toml | 4 +- poetry.lock | 389 ++++-------------- pyproject.toml | 2 +- requirements.txt | 2 +- 6 files changed, 85 insertions(+), 312 deletions(-) create mode 100644 litellm-proxy-extras/dist/litellm_proxy_extras-0.1.19-py3-none-any.whl create mode 100644 litellm-proxy-extras/dist/litellm_proxy_extras-0.1.19.tar.gz diff --git a/litellm-proxy-extras/dist/litellm_proxy_extras-0.1.19-py3-none-any.whl b/litellm-proxy-extras/dist/litellm_proxy_extras-0.1.19-py3-none-any.whl new file mode 100644 index 0000000000000000000000000000000000000000..1506322a02d22c0e0b7b1f52e20e3f00256e6d37 GIT binary patch literal 21656 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 literal 0 HcmV?d00001 diff --git a/litellm-proxy-extras/dist/litellm_proxy_extras-0.1.19.tar.gz b/litellm-proxy-extras/dist/litellm_proxy_extras-0.1.19.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..3deaee390f8f3af2d5bb5cd9113af67625f1c068 GIT binary patch literal 13219 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 VTYkz<`6)l}`Tvcg>lXmH0RY0EfJXoT literal 0 HcmV?d00001 diff --git a/litellm-proxy-extras/pyproject.toml b/litellm-proxy-extras/pyproject.toml index d1562d5ab5..277882e8cb 100644 --- a/litellm-proxy-extras/pyproject.toml +++ b/litellm-proxy-extras/pyproject.toml @@ -1,6 +1,6 @@ [tool.poetry] name = "litellm-proxy-extras" -version = "0.1.18" +version = "0.1.19" description = "Additional files for the LiteLLM Proxy. Reduces the size of the main litellm package." authors = ["BerriAI"] readme = "README.md" @@ -22,7 +22,7 @@ requires = ["poetry-core"] build-backend = "poetry.core.masonry.api" [tool.commitizen] -version = "0.1.18" +version = "0.1.19" version_files = [ "pyproject.toml:version", "../requirements.txt:litellm-proxy-extras==", diff --git a/poetry.lock b/poetry.lock index f6b6d5cd38..f69508ed65 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 2.1.2 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.3 and should not be changed by hand. [[package]] name = "aiohappyeyeballs" @@ -6,7 +6,6 @@ version = "2.4.4" description = "Happy Eyeballs for asyncio" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "aiohappyeyeballs-2.4.4-py3-none-any.whl", hash = "sha256:a980909d50efcd44795c4afeca523296716d50cd756ddca6af8c65b996e27de8"}, {file = "aiohappyeyeballs-2.4.4.tar.gz", hash = "sha256:5fdd7d87889c63183afc18ce9271f9b0a7d32c2303e394468dd45d514a757745"}, @@ -18,7 +17,6 @@ version = "3.10.11" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "aiohttp-3.10.11-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:5077b1a5f40ffa3ba1f40d537d3bec4383988ee51fbba6b74aa8fb1bc466599e"}, {file = "aiohttp-3.10.11-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8d6a14a4d93b5b3c2891fca94fa9d41b2322a68194422bef0dd5ec1e57d7d298"}, @@ -123,7 +121,7 @@ multidict = ">=4.5,<7.0" yarl = ">=1.12.0,<2.0" [package.extras] -speedups = ["Brotli ; platform_python_implementation == \"CPython\"", "aiodns (>=3.2.0) ; sys_platform == \"linux\" or sys_platform == \"darwin\"", "brotlicffi ; platform_python_implementation != \"CPython\""] +speedups = ["Brotli", "aiodns (>=3.2.0)", "brotlicffi"] [[package]] name = "aiosignal" @@ -131,7 +129,6 @@ version = "1.3.1" description = "aiosignal: a list of registered asynchronous callbacks" optional = false python-versions = ">=3.7" -groups = ["main"] files = [ {file = "aiosignal-1.3.1-py3-none-any.whl", hash = "sha256:f8376fb07dd1e86a584e4fcdec80b36b7f81aac666ebc724e2c090300dd83b17"}, {file = "aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc"}, @@ -146,7 +143,6 @@ version = "0.7.0" description = "Reusable constraint types to use with typing.Annotated" optional = false python-versions = ">=3.8" -groups = ["main", "proxy-dev"] files = [ {file = "annotated_types-0.7.0-py3-none-any.whl", hash = "sha256:1f02e8b43a8fbbc3f3e0d4f0f4bfc8131bcb4eebe8849b8e5c773f3a1c582a53"}, {file = "annotated_types-0.7.0.tar.gz", hash = "sha256:aff07c09a53a08bc8cfccb9c85b05f1aa9a2a6f23728d790723543408344ce89"}, @@ -161,7 +157,6 @@ version = "4.5.2" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "anyio-4.5.2-py3-none-any.whl", hash = "sha256:c011ee36bc1e8ba40e5a81cb9df91925c218fe9b778554e0b56a21e1b5d4716f"}, {file = "anyio-4.5.2.tar.gz", hash = "sha256:23009af4ed04ce05991845451e11ef02fc7c5ed29179ac9a420e5ad0ac7ddc5b"}, @@ -175,7 +170,7 @@ typing-extensions = {version = ">=4.1", markers = "python_version < \"3.11\""} [package.extras] doc = ["Sphinx (>=7.4,<8.0)", "packaging", "sphinx-autodoc-typehints (>=1.2.0)", "sphinx-rtd-theme"] -test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1) ; python_version >= \"3.10\"", "uvloop (>=0.21.0b1) ; platform_python_implementation == \"CPython\" and platform_system != \"Windows\""] +test = ["anyio[trio]", "coverage[toml] (>=7)", "exceptiongroup (>=1.2.0)", "hypothesis (>=4.0)", "psutil (>=5.9)", "pytest (>=7.0)", "pytest-mock (>=3.6.1)", "trustme", "truststore (>=0.9.1)", "uvloop (>=0.21.0b1)"] trio = ["trio (>=0.26.1)"] [[package]] @@ -184,8 +179,6 @@ version = "3.11.0" description = "In-process task scheduler with Cron-like capabilities" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "APScheduler-3.11.0-py3-none-any.whl", hash = "sha256:fc134ca32e50f5eadcc4938e3a4545ab19131435e851abb40b34d63d5141c6da"}, {file = "apscheduler-3.11.0.tar.gz", hash = "sha256:4c622d250b0955a65d5d0eb91c33e6d43fd879834bf541e0a18661ae60460133"}, @@ -203,7 +196,7 @@ mongodb = ["pymongo (>=3.0)"] redis = ["redis (>=3.0)"] rethinkdb = ["rethinkdb (>=2.4.0)"] sqlalchemy = ["sqlalchemy (>=1.4)"] -test = ["APScheduler[etcd,mongodb,redis,rethinkdb,sqlalchemy,tornado,zookeeper]", "PySide6 ; platform_python_implementation == \"CPython\" and python_version < \"3.14\"", "anyio (>=4.5.2)", "gevent ; python_version < \"3.14\"", "pytest", "pytz", "twisted ; python_version < \"3.14\""] +test = ["APScheduler[etcd,mongodb,redis,rethinkdb,sqlalchemy,tornado,zookeeper]", "PySide6", "anyio (>=4.5.2)", "gevent", "pytest", "pytz", "twisted"] tornado = ["tornado (>=4.3)"] twisted = ["twisted"] zookeeper = ["kazoo"] @@ -212,10 +205,8 @@ zookeeper = ["kazoo"] name = "async-timeout" version = "5.0.1" description = "Timeout context manager for asyncio programs" -optional = true +optional = false python-versions = ">=3.8" -groups = ["main"] -markers = "python_full_version < \"3.11.3\" and (extra == \"extra-proxy\" or extra == \"proxy\") or python_version <= \"3.10\"" files = [ {file = "async_timeout-5.0.1-py3-none-any.whl", hash = "sha256:39e3809566ff85354557ec2398b55e096c8364bacac9405a7a1fa429e77fe76c"}, {file = "async_timeout-5.0.1.tar.gz", hash = "sha256:d9321a7a3d5a6a5e187e824d2fa0793ce379a202935782d555d6e9d2735677d3"}, @@ -227,19 +218,18 @@ version = "25.3.0" description = "Classes Without Boilerplate" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "attrs-25.3.0-py3-none-any.whl", hash = "sha256:427318ce031701fea540783410126f03899a97ffc6f61596ad581ac2e40e3bc3"}, {file = "attrs-25.3.0.tar.gz", hash = "sha256:75d7cefc7fb576747b2c81b4442d4d4a1ce0900973527c011d1030fd3bf4af1b"}, ] [package.extras] -benchmark = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] -cov = ["cloudpickle ; platform_python_implementation == \"CPython\"", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] -dev = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] +benchmark = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-codspeed", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +cov = ["cloudpickle", "coverage[toml] (>=5.3)", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +dev = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pre-commit-uv", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] docs = ["cogapp", "furo", "myst-parser", "sphinx", "sphinx-notfound-page", "sphinxcontrib-towncrier", "towncrier"] -tests = ["cloudpickle ; platform_python_implementation == \"CPython\"", "hypothesis", "mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-xdist[psutil]"] -tests-mypy = ["mypy (>=1.11.1) ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\"", "pytest-mypy-plugins ; platform_python_implementation == \"CPython\" and python_version >= \"3.10\""] +tests = ["cloudpickle", "hypothesis", "mypy (>=1.11.1)", "pympler", "pytest (>=4.3.0)", "pytest-mypy-plugins", "pytest-xdist[psutil]"] +tests-mypy = ["mypy (>=1.11.1)", "pytest-mypy-plugins"] [[package]] name = "azure-core" @@ -247,8 +237,6 @@ version = "1.33.0" description = "Microsoft Azure Core Library for Python" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "azure_core-1.33.0-py3-none-any.whl", hash = "sha256:9b5b6d0223a1d38c37500e6971118c1e0f13f54951e6893968b38910bc9cda8f"}, {file = "azure_core-1.33.0.tar.gz", hash = "sha256:f367aa07b5e3005fec2c1e184b882b0b039910733907d001c20fb08ebb8c0eb9"}, @@ -269,8 +257,6 @@ version = "1.21.0" description = "Microsoft Azure Identity Library for Python" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "azure_identity-1.21.0-py3-none-any.whl", hash = "sha256:258ea6325537352440f71b35c3dffe9d240eae4a5126c1b7ce5efd5766bd9fd9"}, {file = "azure_identity-1.21.0.tar.gz", hash = "sha256:ea22ce6e6b0f429bc1b8d9212d5b9f9877bd4c82f1724bfa910760612c07a9a6"}, @@ -289,8 +275,6 @@ version = "4.9.0" description = "Microsoft Azure Key Vault Secrets Client Library for Python" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "azure_keyvault_secrets-4.9.0-py3-none-any.whl", hash = "sha256:33c7e2aca2cc2092cebc8c6e96eca36a5cc30c767e16ea429c5fa21270e9fba6"}, {file = "azure_keyvault_secrets-4.9.0.tar.gz", hash = "sha256:2a03bb2ffd9a0d6c8ad1c330d9d0310113985a9de06607ece378fd72a5889fe1"}, @@ -307,8 +291,6 @@ version = "2.2.1" description = "Function decoration for backoff and retry" optional = true python-versions = ">=3.7,<4.0" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "backoff-2.2.1-py3-none-any.whl", hash = "sha256:63579f9a0628e06278f7e47b7d7d5b6ce20dc65c5e96a6f3ca99a6adca0396e8"}, {file = "backoff-2.2.1.tar.gz", hash = "sha256:03f829f5bb1923180821643f8753b0502c3b682293992485b0eef2807afa5cba"}, @@ -320,8 +302,6 @@ version = "0.2.1" description = "Backport of the standard library zoneinfo module" optional = true python-versions = ">=3.6" -groups = ["main"] -markers = "extra == \"proxy\" and python_version < \"3.9\"" files = [ {file = "backports.zoneinfo-0.2.1-cp36-cp36m-macosx_10_14_x86_64.whl", hash = "sha256:da6013fd84a690242c310d77ddb8441a559e9cb3d3d59ebac9aca1a57b2e18bc"}, {file = "backports.zoneinfo-0.2.1-cp36-cp36m-manylinux1_i686.whl", hash = "sha256:89a48c0d158a3cc3f654da4c2de1ceba85263fafb861b98b59040a5086259722"}, @@ -350,7 +330,6 @@ version = "23.12.1" description = "The uncompromising code formatter." optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "black-23.12.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e0aaf6041986767a5e0ce663c7a2f0e9eaf21e6ff87a5f95cbf3675bfd4c41d2"}, {file = "black-23.12.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c88b3711d12905b74206227109272673edce0cb29f27e1385f33b0163c414bba"}, @@ -387,7 +366,7 @@ typing-extensions = {version = ">=4.0.1", markers = "python_version < \"3.11\""} [package.extras] colorama = ["colorama (>=0.4.3)"] -d = ["aiohttp (>=3.7.4) ; sys_platform != \"win32\" or implementation_name != \"pypy\"", "aiohttp (>=3.7.4,!=3.9.0) ; sys_platform == \"win32\" and implementation_name == \"pypy\""] +d = ["aiohttp (>=3.7.4)", "aiohttp (>=3.7.4,!=3.9.0)"] jupyter = ["ipython (>=7.8.0)", "tokenize-rt (>=3.2.0)"] uvloop = ["uvloop (>=0.15.2)"] @@ -397,8 +376,6 @@ version = "1.34.34" description = "The AWS SDK for Python" optional = true python-versions = ">= 3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "boto3-1.34.34-py3-none-any.whl", hash = "sha256:33a8b6d9136fa7427160edb92d2e50f2035f04e9d63a2d1027349053e12626aa"}, {file = "boto3-1.34.34.tar.gz", hash = "sha256:b2f321e20966f021ec800b7f2c01287a3dd04fc5965acdfbaa9c505a24ca45d1"}, @@ -418,8 +395,6 @@ version = "1.34.162" description = "Low-level, data-driven core of boto 3." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "botocore-1.34.162-py3-none-any.whl", hash = "sha256:2d918b02db88d27a75b48275e6fb2506e9adaaddbec1ffa6a8a0898b34e769be"}, {file = "botocore-1.34.162.tar.gz", hash = "sha256:adc23be4fb99ad31961236342b7cbf3c0bfc62532cd02852196032e8c0d682f3"}, @@ -429,8 +404,8 @@ files = [ jmespath = ">=0.7.1,<2.0.0" python-dateutil = ">=2.1,<3.0.0" urllib3 = [ - {version = ">=1.25.4,<2.2.0 || >2.2.0,<3", markers = "python_version >= \"3.10\""}, {version = ">=1.25.4,<1.27", markers = "python_version < \"3.10\""}, + {version = ">=1.25.4,<2.2.0 || >2.2.0,<3", markers = "python_version >= \"3.10\""}, ] [package.extras] @@ -442,8 +417,6 @@ version = "5.5.2" description = "Extensible memoizing collections and decorators" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "cachetools-5.5.2-py3-none-any.whl", hash = "sha256:d26a22bcc62eb95c3beabd9f1ee5e820d3d2704fe2967cbe350e20c8ffcd3f0a"}, {file = "cachetools-5.5.2.tar.gz", hash = "sha256:1a661caa9175d26759571b2e19580f9d6393969e5dfca11fdb1f947a23e640d4"}, @@ -455,7 +428,6 @@ version = "2025.4.26" description = "Python package for providing Mozilla's CA Bundle." optional = false python-versions = ">=3.6" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "certifi-2025.4.26-py3-none-any.whl", hash = "sha256:30350364dfe371162649852c63336a15c70c6510c2ad5015b21c2345311805f3"}, {file = "certifi-2025.4.26.tar.gz", hash = "sha256:0a816057ea3cdefcef70270d2c515e4506bbc954f417fa5ade2021213bb8f0c6"}, @@ -467,7 +439,6 @@ version = "1.17.1" description = "Foreign Function Interface for Python calling C code." optional = false python-versions = ">=3.8" -groups = ["main", "dev"] files = [ {file = "cffi-1.17.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:df8b1c11f177bc2313ec4b2d46baec87a5f3e71fc8b45dab2ee7cae86d9aba14"}, {file = "cffi-1.17.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:8f2cdc858323644ab277e9bb925ad72ae0e67f69e804f4898c070998d50b1a67"}, @@ -537,7 +508,6 @@ files = [ {file = "cffi-1.17.1-cp39-cp39-win_amd64.whl", hash = "sha256:d016c76bdd850f3c626af19b0542c9677ba156e4ee4fccfdd7848803533ef662"}, {file = "cffi-1.17.1.tar.gz", hash = "sha256:1c39c6016c32bc48dd54561950ebd6836e1670f2ae46128f67cf49e789c52824"}, ] -markers = {main = "(extra == \"proxy\" or extra == \"extra-proxy\") and (platform_python_implementation != \"PyPy\" or extra == \"proxy\")", dev = "platform_python_implementation != \"PyPy\""} [package.dependencies] pycparser = "*" @@ -548,7 +518,6 @@ version = "3.4.2" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." optional = false python-versions = ">=3.7" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "charset_normalizer-3.4.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:7c48ed483eb946e6c04ccbe02c6b4d1d48e51944b6db70f697e089c193404941"}, {file = "charset_normalizer-3.4.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:b2d318c11350e10662026ad0eb71bb51c7812fc8590825304ae0bdd4ac283acd"}, @@ -650,7 +619,6 @@ version = "8.1.8" description = "Composable command line interface toolkit" optional = false python-versions = ">=3.7" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "click-8.1.8-py3-none-any.whl", hash = "sha256:63c132bbbed01578a06712a2d1f497bb62d9c1c0d329b7903a866228027263b2"}, {file = "click-8.1.8.tar.gz", hash = "sha256:ed53c9d8990d83c2a27deae68e4ee337473f6330c040a31d4225c9574d16096a"}, @@ -665,12 +633,10 @@ version = "0.4.6" description = "Cross-platform colored terminal text." optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6"}, {file = "colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44"}, ] -markers = {main = "platform_system == \"Windows\"", dev = "platform_system == \"Windows\" or sys_platform == \"win32\"", proxy-dev = "platform_system == \"Windows\""} [[package]] name = "coloredlogs" @@ -678,8 +644,6 @@ version = "15.0.1" description = "Colored terminal output for Python's logging module" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "coloredlogs-15.0.1-py2.py3-none-any.whl", hash = "sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934"}, {file = "coloredlogs-15.0.1.tar.gz", hash = "sha256:7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0"}, @@ -697,7 +661,6 @@ version = "43.0.3" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" -groups = ["main", "dev"] files = [ {file = "cryptography-43.0.3-cp37-abi3-macosx_10_9_universal2.whl", hash = "sha256:bf7a1932ac4176486eab36a19ed4c0492da5d97123f1406cf15e41b05e787d2e"}, {file = "cryptography-43.0.3-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:63efa177ff54aec6e1c0aefaa1a241232dcd37413835a9b674b6e3f0ae2bfd3e"}, @@ -727,7 +690,6 @@ files = [ {file = "cryptography-43.0.3-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:2ce6fae5bdad59577b44e4dfed356944fbf1d925269114c28be377692643b4ff"}, {file = "cryptography-43.0.3.tar.gz", hash = "sha256:315b9001266a492a6ff443b61238f956b214dbec9910a081ba5b6646a055a805"}, ] -markers = {main = "extra == \"proxy\" or extra == \"extra-proxy\""} [package.dependencies] cffi = {version = ">=1.12", markers = "platform_python_implementation != \"PyPy\""} @@ -748,7 +710,6 @@ version = "1.2.18" description = "Python @deprecated decorator to deprecate old python classes, functions or methods." optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,>=2.7" -groups = ["dev", "proxy-dev"] files = [ {file = "Deprecated-1.2.18-py2.py3-none-any.whl", hash = "sha256:bd5011788200372a32418f888e326a09ff80d0214bd961147cfed01b5c018eec"}, {file = "deprecated-1.2.18.tar.gz", hash = "sha256:422b6f6d859da6f2ef57857761bfb392480502a64c3028ca9bbe86085d72115d"}, @@ -758,7 +719,7 @@ files = [ wrapt = ">=1.10,<2" [package.extras] -dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "setuptools ; python_version >= \"3.12\"", "tox"] +dev = ["PyTest", "PyTest-Cov", "bump2version (<1)", "setuptools", "tox"] [[package]] name = "distro" @@ -766,7 +727,6 @@ version = "1.9.0" description = "Distro - an OS platform information API" optional = false python-versions = ">=3.6" -groups = ["main"] files = [ {file = "distro-1.9.0-py3-none-any.whl", hash = "sha256:7bffd925d65168f85027d8da9af6bddab658135b840670a223589bc0c8ef02b2"}, {file = "distro-1.9.0.tar.gz", hash = "sha256:2fa77c6fd8940f116ee1d6b94a2f90b13b5ea8d019b98bc8bafdcabcdd9bdbed"}, @@ -778,8 +738,6 @@ version = "2.6.1" description = "DNS toolkit" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "dnspython-2.6.1-py3-none-any.whl", hash = "sha256:5ef3b9680161f6fa89daf8ad451b5f1a33b18ae8a1c6778cdf4b43f08c0a6e50"}, {file = "dnspython-2.6.1.tar.gz", hash = "sha256:e8f0f9c23a7b7cb99ded64e6c3a6f3e701d78f50c55e002b839dea7225cff7cc"}, @@ -800,8 +758,6 @@ version = "2.2.0" description = "A robust email address syntax and deliverability validation library." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "email_validator-2.2.0-py3-none-any.whl", hash = "sha256:561977c2d73ce3611850a06fa56b414621e0c8faa9d66f2611407d87465da631"}, {file = "email_validator-2.2.0.tar.gz", hash = "sha256:cb690f344c617a714f22e66ae771445a1ceb46821152df8e165c5f9a364582b7"}, @@ -813,17 +769,18 @@ idna = ">=2.0.0" [[package]] name = "exceptiongroup" -version = "1.2.2" +version = "1.3.0" description = "Backport of PEP 654 (exception groups)" optional = false python-versions = ">=3.7" -groups = ["main", "dev", "proxy-dev"] -markers = "python_version <= \"3.10\"" files = [ - {file = "exceptiongroup-1.2.2-py3-none-any.whl", hash = "sha256:3111b9d131c238bec2f8f516e123e14ba243563fb135d3fe885990585aa7795b"}, - {file = "exceptiongroup-1.2.2.tar.gz", hash = "sha256:47c2edf7c6738fafb49fd34290706d1a1a2f4d1c6df275526b62cbb4aa5393cc"}, + {file = "exceptiongroup-1.3.0-py3-none-any.whl", hash = "sha256:4d111e6e0c13d0644cad6ddaa7ed0261a0b36971f6d23e7ec9b4b9097da78a10"}, + {file = "exceptiongroup-1.3.0.tar.gz", hash = "sha256:b241f5885f560bc56a59ee63ca4c6a8bfa46ae4ad651af316d4e81817bb9fd88"}, ] +[package.dependencies] +typing-extensions = {version = ">=4.6.0", markers = "python_version < \"3.13\""} + [package.extras] test = ["pytest (>=6)"] @@ -833,8 +790,6 @@ version = "0.115.12" description = "FastAPI framework, high performance, easy to learn, fast to code, ready for production" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "fastapi-0.115.12-py3-none-any.whl", hash = "sha256:e94613d6c05e27be7ffebdd6ea5f388112e5e430c8f7d6494a9d1d88d43e814d"}, {file = "fastapi-0.115.12.tar.gz", hash = "sha256:1e2c2a2646905f9e83d32f04a3f86aff4a286669c6c950ca95b5fd68c2602681"}, @@ -855,8 +810,6 @@ version = "0.16.0" description = "FastAPI plugin to enable SSO to most common providers (such as Facebook login, Google login and login via Microsoft Office 365 Account)" optional = true python-versions = "<4.0,>=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "fastapi_sso-0.16.0-py3-none-any.whl", hash = "sha256:3a66a942474ef9756d3a9d8b945d55bd9faf99781facdb9b87a40b73d6d6b0c3"}, {file = "fastapi_sso-0.16.0.tar.gz", hash = "sha256:f3941f986347566b7d3747c710cf474a907f581bfb6697ff3bb3e44eb76b438c"}, @@ -875,7 +828,6 @@ version = "3.16.1" description = "A platform independent file lock." optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "filelock-3.16.1-py3-none-any.whl", hash = "sha256:2082e5703d51fbf98ea75855d9d5527e33d8ff23099bec374a134febee6946b0"}, {file = "filelock-3.16.1.tar.gz", hash = "sha256:c249fbfcd5db47e5e2d6d62198e565475ee65e4831e2561c8e313fa7eb961435"}, @@ -884,7 +836,7 @@ files = [ [package.extras] docs = ["furo (>=2024.8.6)", "sphinx (>=8.0.2)", "sphinx-autodoc-typehints (>=2.4.1)"] testing = ["covdefaults (>=2.3)", "coverage (>=7.6.1)", "diff-cover (>=9.2)", "pytest (>=8.3.3)", "pytest-asyncio (>=0.24)", "pytest-cov (>=5)", "pytest-mock (>=3.14)", "pytest-timeout (>=2.3.1)", "virtualenv (>=20.26.4)"] -typing = ["typing-extensions (>=4.12.2) ; python_version < \"3.11\""] +typing = ["typing-extensions (>=4.12.2)"] [[package]] name = "flake8" @@ -892,7 +844,6 @@ version = "6.1.0" description = "the modular source code checker: pep8 pyflakes and co" optional = false python-versions = ">=3.8.1" -groups = ["dev"] files = [ {file = "flake8-6.1.0-py2.py3-none-any.whl", hash = "sha256:ffdfce58ea94c6580c77888a86506937f9a1a227dfcd15f245d694ae20a6b6e5"}, {file = "flake8-6.1.0.tar.gz", hash = "sha256:d5b3857f07c030bdb5bf41c7f53799571d75c4491748a3adcd47de929e34cd23"}, @@ -909,7 +860,6 @@ version = "1.5.0" description = "A list-like structure which implements collections.abc.MutableSequence" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "frozenlist-1.5.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:5b6a66c18b5b9dd261ca98dffcb826a525334b2f29e7caa54e182255c5f6a65a"}, {file = "frozenlist-1.5.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:d1b3eb7b05ea246510b43a7e53ed1653e55c2121019a97e60cad7efb881a97bb"}, @@ -1011,7 +961,6 @@ version = "2025.3.0" description = "File-system specification" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "fsspec-2025.3.0-py3-none-any.whl", hash = "sha256:efb87af3efa9103f94ca91a7f8cb7a4df91af9f74fc106c9c7ea0efd7277c1b3"}, {file = "fsspec-2025.3.0.tar.gz", hash = "sha256:a935fd1ea872591f2b5148907d103488fc523295e6c64b835cfad8c3eca44972"}, @@ -1051,8 +1000,6 @@ version = "2.24.2" description = "Google API client core library" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "google_api_core-2.24.2-py3-none-any.whl", hash = "sha256:810a63ac95f3c441b7c0e43d344e372887f62ce9071ba972eacf32672e072de9"}, {file = "google_api_core-2.24.2.tar.gz", hash = "sha256:81718493daf06d96d6bc76a91c23874dbf2fac0adbbf542831b805ee6e974696"}, @@ -1062,15 +1009,15 @@ files = [ google-auth = ">=2.14.1,<3.0.0" googleapis-common-protos = ">=1.56.2,<2.0.0" grpcio = [ - {version = ">=1.49.1,<2.0dev", optional = true, markers = "python_version >= \"3.11\" and extra == \"grpc\""}, {version = ">=1.33.2,<2.0dev", optional = true, markers = "python_version < \"3.11\" and extra == \"grpc\""}, + {version = ">=1.49.1,<2.0dev", optional = true, markers = "python_version >= \"3.11\" and extra == \"grpc\""}, ] grpcio-status = [ + {version = ">=1.33.2,<2.0.dev0", optional = true, markers = "python_version < \"3.11\" and extra == \"grpc\""}, {version = ">=1.49.1,<2.0.dev0", optional = true, markers = "python_version >= \"3.11\" and extra == \"grpc\""}, - {version = ">=1.33.2,<2.0.dev0", optional = true, markers = "extra == \"grpc\""}, ] proto-plus = [ - {version = ">=1.22.3,<2.0.0"}, + {version = ">=1.22.3,<2.0.0", markers = "python_version < \"3.13\""}, {version = ">=1.25.0,<2.0.0", markers = "python_version >= \"3.13\""}, ] protobuf = ">=3.19.5,<3.20.0 || >3.20.0,<3.20.1 || >3.20.1,<4.21.0 || >4.21.0,<4.21.1 || >4.21.1,<4.21.2 || >4.21.2,<4.21.3 || >4.21.3,<4.21.4 || >4.21.4,<4.21.5 || >4.21.5,<7.0.0" @@ -1078,21 +1025,19 @@ requests = ">=2.18.0,<3.0.0" [package.extras] async-rest = ["google-auth[aiohttp] (>=2.35.0,<3.0.dev0)"] -grpc = ["grpcio (>=1.33.2,<2.0dev)", "grpcio (>=1.49.1,<2.0dev) ; python_version >= \"3.11\"", "grpcio-status (>=1.33.2,<2.0.dev0)", "grpcio-status (>=1.49.1,<2.0.dev0) ; python_version >= \"3.11\""] +grpc = ["grpcio (>=1.33.2,<2.0dev)", "grpcio (>=1.49.1,<2.0dev)", "grpcio-status (>=1.33.2,<2.0.dev0)", "grpcio-status (>=1.49.1,<2.0.dev0)"] grpcgcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"] grpcio-gcp = ["grpcio-gcp (>=0.2.2,<1.0.dev0)"] [[package]] name = "google-auth" -version = "2.39.0" +version = "2.40.1" description = "Google Authentication Library" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ - {file = "google_auth-2.39.0-py2.py3-none-any.whl", hash = "sha256:0150b6711e97fb9f52fe599f55648950cc4540015565d8fbb31be2ad6e1548a2"}, - {file = "google_auth-2.39.0.tar.gz", hash = "sha256:73222d43cdc35a3aeacbfdcaf73142a97839f10de930550d89ebfe1d0a00cde7"}, + {file = "google_auth-2.40.1-py2.py3-none-any.whl", hash = "sha256:ed4cae4f5c46b41bae1d19c036e06f6c371926e97b19e816fc854eff811974ee"}, + {file = "google_auth-2.40.1.tar.gz", hash = "sha256:58f0e8416a9814c1d86c9b7f6acf6816b51aba167b2c76821965271bac275540"}, ] [package.dependencies] @@ -1103,11 +1048,11 @@ rsa = ">=3.1.4,<5" [package.extras] aiohttp = ["aiohttp (>=3.6.2,<4.0.0)", "requests (>=2.20.0,<3.0.0)"] enterprise-cert = ["cryptography", "pyopenssl"] -pyjwt = ["cryptography (<39.0.0) ; python_version < \"3.8\"", "cryptography (>=38.0.3)", "pyjwt (>=2.0)"] -pyopenssl = ["cryptography (<39.0.0) ; python_version < \"3.8\"", "cryptography (>=38.0.3)", "pyopenssl (>=20.0.0)"] +pyjwt = ["cryptography (<39.0.0)", "cryptography (>=38.0.3)", "pyjwt (>=2.0)"] +pyopenssl = ["cryptography (<39.0.0)", "cryptography (>=38.0.3)", "pyopenssl (>=20.0.0)"] reauth = ["pyu2f (>=0.1.5)"] requests = ["requests (>=2.20.0,<3.0.0)"] -testing = ["aiohttp (<3.10.0)", "aiohttp (>=3.6.2,<4.0.0)", "aioresponses", "cryptography (<39.0.0) ; python_version < \"3.8\"", "cryptography (>=38.0.3)", "flask", "freezegun", "grpcio", "mock", "oauth2client", "packaging", "pyjwt (>=2.0)", "pyopenssl (<24.3.0)", "pyopenssl (>=20.0.0)", "pytest", "pytest-asyncio", "pytest-cov", "pytest-localserver", "pyu2f (>=0.1.5)", "requests (>=2.20.0,<3.0.0)", "responses", "urllib3"] +testing = ["aiohttp (<3.10.0)", "aiohttp (>=3.6.2,<4.0.0)", "aioresponses", "cryptography (<39.0.0)", "cryptography (>=38.0.3)", "flask", "freezegun", "grpcio", "mock", "oauth2client", "packaging", "pyjwt (>=2.0)", "pyopenssl (<24.3.0)", "pyopenssl (>=20.0.0)", "pytest", "pytest-asyncio", "pytest-cov", "pytest-localserver", "pyu2f (>=0.1.5)", "requests (>=2.20.0,<3.0.0)", "responses", "urllib3"] urllib3 = ["packaging", "urllib3"] [[package]] @@ -1116,8 +1061,6 @@ version = "2.24.2" description = "Google Cloud Kms API client library" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "google_cloud_kms-2.24.2-py2.py3-none-any.whl", hash = "sha256:368209b035dfac691a467c1cf50986d8b1b26cac1166bdfbaa25d738df91ff7b"}, {file = "google_cloud_kms-2.24.2.tar.gz", hash = "sha256:e9e18bbfafd1a4035c76c03fb5ff03f4f57f596d08e1a9ede7e69ec0151b27a1"}, @@ -1136,12 +1079,10 @@ version = "1.70.0" description = "Common protobufs used in Google APIs" optional = false python-versions = ">=3.7" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "googleapis_common_protos-1.70.0-py3-none-any.whl", hash = "sha256:b8bfcca8c25a2bb253e0e0b0adaf8c00773e5e6af6fd92397576680b807e0fd8"}, {file = "googleapis_common_protos-1.70.0.tar.gz", hash = "sha256:0e1b44e0ea153e6594f9f394fef15193a68aaaea2d843f83e2742717ca753257"}, ] -markers = {main = "extra == \"extra-proxy\""} [package.dependencies] grpcio = {version = ">=1.44.0,<2.0.0", optional = true, markers = "extra == \"grpc\""} @@ -1156,8 +1097,6 @@ version = "0.14.2" description = "IAM API client library" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "grpc_google_iam_v1-0.14.2-py3-none-any.whl", hash = "sha256:a3171468459770907926d56a440b2bb643eec1d7ba215f48f3ecece42b4d8351"}, {file = "grpc_google_iam_v1-0.14.2.tar.gz", hash = "sha256:b3e1fc387a1a329e41672197d0ace9de22c78dd7d215048c4c78712073f7bd20"}, @@ -1174,7 +1113,6 @@ version = "1.70.0" description = "HTTP/2-based RPC framework" optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "grpcio-1.70.0-cp310-cp310-linux_armv7l.whl", hash = "sha256:95469d1977429f45fe7df441f586521361e235982a0b39e33841549143ae2851"}, {file = "grpcio-1.70.0-cp310-cp310-macosx_12_0_universal2.whl", hash = "sha256:ed9718f17fbdb472e33b869c77a16d0b55e166b100ec57b016dc7de9c8d236bf"}, @@ -1232,7 +1170,6 @@ files = [ {file = "grpcio-1.70.0-cp39-cp39-win_amd64.whl", hash = "sha256:a31d7e3b529c94e930a117b2175b2efd179d96eb3c7a21ccb0289a8ab05b645c"}, {file = "grpcio-1.70.0.tar.gz", hash = "sha256:8d1584a68d5922330025881e63a6c1b54cc8117291d382e4fa69339b6d914c56"}, ] -markers = {main = "extra == \"extra-proxy\""} [package.extras] protobuf = ["grpcio-tools (>=1.70.0)"] @@ -1243,8 +1180,6 @@ version = "1.62.3" description = "Status proto mapping for gRPC" optional = true python-versions = ">=3.6" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "grpcio-status-1.62.3.tar.gz", hash = "sha256:289bdd7b2459794a12cf95dc0cb727bd4a1742c37bd823f760236c937e53a485"}, {file = "grpcio_status-1.62.3-py3-none-any.whl", hash = "sha256:f9049b762ba8de6b1086789d8315846e094edac2c50beaf462338b301a8fd4b8"}, @@ -1261,8 +1196,6 @@ version = "23.0.0" description = "WSGI HTTP Server for UNIX" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "gunicorn-23.0.0-py3-none-any.whl", hash = "sha256:ec400d38950de4dfd418cff8328b2c8faed0edb0d517d3394e457c317908ca4d"}, {file = "gunicorn-23.0.0.tar.gz", hash = "sha256:f014447a0101dc57e294f6c18ca6b40227a4c90e9bdb586042628030cba004ec"}, @@ -1284,7 +1217,6 @@ version = "0.16.0" description = "A pure-Python, bring-your-own-I/O implementation of HTTP/1.1" optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "h11-0.16.0-py3-none-any.whl", hash = "sha256:63cf8bbe7522de3bf65932fda1d9c2772064ffb3dae62d55932da54b31cb6c86"}, {file = "h11-0.16.0.tar.gz", hash = "sha256:4e35b956cf45792e4caa5885e69fba00bdbc6ffafbfa020300e549b208ee5ff1"}, @@ -1296,7 +1228,6 @@ version = "4.1.0" description = "HTTP/2 State-Machine based protocol implementation" optional = false python-versions = ">=3.6.1" -groups = ["proxy-dev"] files = [ {file = "h2-4.1.0-py3-none-any.whl", hash = "sha256:03a46bcf682256c95b5fd9e9a99c1323584c3eec6440d379b9903d709476bc6d"}, {file = "h2-4.1.0.tar.gz", hash = "sha256:a83aca08fbe7aacb79fec788c9c0bac936343560ed9ec18b82a13a12c28d2abb"}, @@ -1306,13 +1237,32 @@ files = [ hpack = ">=4.0,<5" hyperframe = ">=6.0,<7" +[[package]] +name = "hf-xet" +version = "1.1.0" +description = "" +optional = false +python-versions = ">=3.8" +files = [ + {file = "hf_xet-1.1.0-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:0322c42551e275fcb7949c083a54a81b2898e50787c9aa74284fcb8d2c58c12c"}, + {file = "hf_xet-1.1.0-cp37-abi3-macosx_11_0_arm64.whl", hash = "sha256:667153a0304ac2debf2af95a8ff7687186f885b493f4cd16344869af270cd110"}, + {file = "hf_xet-1.1.0-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:995eeffb119636ea617b96c7d7bf3c3f5ea8727fa57974574e25d700b8532d48"}, + {file = "hf_xet-1.1.0-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:3aee847da362393331f515c4010d0aaa1c2669acfcca1f4b28946d6949cc0086"}, + {file = "hf_xet-1.1.0-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:68c5813a6074aa36e12ef5983230e3b03148cce61e0fcdd294096493795565b4"}, + {file = "hf_xet-1.1.0-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:4ee9222bf9274b1c198b88a929de0b5a49349c4962d89c5b3b2f0f7f47d9761c"}, + {file = "hf_xet-1.1.0-cp37-abi3-win_amd64.whl", hash = "sha256:73153eab9abf3d6973b21e94a67ccba5d595c3e12feb8c0bf50be02964e7f126"}, + {file = "hf_xet-1.1.0.tar.gz", hash = "sha256:a7c2a4c2b6eee9ce0a1a367a82b60d95ba634420ef1c250addad7aa4af419cf4"}, +] + +[package.extras] +tests = ["pytest"] + [[package]] name = "hpack" version = "4.0.0" description = "Pure-Python HPACK header compression" optional = false python-versions = ">=3.6.1" -groups = ["proxy-dev"] files = [ {file = "hpack-4.0.0-py3-none-any.whl", hash = "sha256:84a076fad3dc9a9f8063ccb8041ef100867b1878b25ef0ee63847a5d53818a6c"}, {file = "hpack-4.0.0.tar.gz", hash = "sha256:fc41de0c63e687ebffde81187a948221294896f6bdc0ae2312708df339430095"}, @@ -1324,7 +1274,6 @@ version = "1.0.9" description = "A minimal low-level HTTP client." optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "httpcore-1.0.9-py3-none-any.whl", hash = "sha256:2d400746a40668fc9dec9810239072b40b4484b640a8c38fd654a024c7a1bf55"}, {file = "httpcore-1.0.9.tar.gz", hash = "sha256:6e34463af53fd2ab5d807f399a9b45ea31c3dfa2276f15a2c3f00afff6e176e8"}, @@ -1346,7 +1295,6 @@ version = "0.28.1" description = "The next generation HTTP client." optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "httpx-0.28.1-py3-none-any.whl", hash = "sha256:d909fcccc110f8c7faf814ca82a9a4d816bc5a6dbfea25d6591d6985b8ba59ad"}, {file = "httpx-0.28.1.tar.gz", hash = "sha256:75e98c5f16b0f35b567856f597f06ff2270a374470a5c2392242528e3e3e42fc"}, @@ -1359,7 +1307,7 @@ httpcore = "==1.*" idna = "*" [package.extras] -brotli = ["brotli ; platform_python_implementation == \"CPython\"", "brotlicffi ; platform_python_implementation != \"CPython\""] +brotli = ["brotli", "brotlicffi"] cli = ["click (==8.*)", "pygments (==2.*)", "rich (>=10,<14)"] http2 = ["h2 (>=3,<5)"] socks = ["socksio (==1.*)"] @@ -1371,8 +1319,6 @@ version = "0.4.0" description = "Consume Server-Sent Event (SSE) messages with HTTPX." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "python_version >= \"3.10\" and extra == \"proxy\"" files = [ {file = "httpx-sse-0.4.0.tar.gz", hash = "sha256:1e81a3a3070ce322add1d3529ed42eb5f70817f45ed6ec915ab753f961139721"}, {file = "httpx_sse-0.4.0-py3-none-any.whl", hash = "sha256:f329af6eae57eaa2bdfd962b42524764af68075ea87370a2de920af5341e318f"}, @@ -1380,19 +1326,19 @@ files = [ [[package]] name = "huggingface-hub" -version = "0.30.2" +version = "0.31.1" description = "Client library to download and publish models, datasets and other repos on the huggingface.co hub" optional = false python-versions = ">=3.8.0" -groups = ["main"] files = [ - {file = "huggingface_hub-0.30.2-py3-none-any.whl", hash = "sha256:68ff05969927058cfa41df4f2155d4bb48f5f54f719dd0390103eefa9b191e28"}, - {file = "huggingface_hub-0.30.2.tar.gz", hash = "sha256:9a7897c5b6fd9dad3168a794a8998d6378210f5b9688d0dfc180b1a228dc2466"}, + {file = "huggingface_hub-0.31.1-py3-none-any.whl", hash = "sha256:43f73124819b48b42d140cbc0d7a2e6bd15b2853b1b9d728d4d55ad1750cac5b"}, + {file = "huggingface_hub-0.31.1.tar.gz", hash = "sha256:492bb5f545337aa9e2f59b75ef4c5f535a371e8958a6ce90af056387e67f1180"}, ] [package.dependencies] filelock = "*" fsspec = ">=2023.5.0" +hf-xet = {version = ">=1.1.0,<2.0.0", markers = "platform_machine == \"x86_64\" or platform_machine == \"amd64\" or platform_machine == \"arm64\" or platform_machine == \"aarch64\""} packaging = ">=20.9" pyyaml = ">=5.1" requests = "*" @@ -1405,7 +1351,7 @@ cli = ["InquirerPy (==0.3.4)"] dev = ["InquirerPy (==0.3.4)", "Jinja2", "Pillow", "aiohttp", "fastapi", "gradio (>=4.0.0)", "jedi", "libcst (==1.4.0)", "mypy (==1.5.1)", "numpy", "pytest (>=8.1.1,<8.2.2)", "pytest-asyncio", "pytest-cov", "pytest-env", "pytest-mock", "pytest-rerunfailures", "pytest-vcr", "pytest-xdist", "ruff (>=0.9.0)", "soundfile", "types-PyYAML", "types-requests", "types-simplejson", "types-toml", "types-tqdm", "types-urllib3", "typing-extensions (>=4.8.0)", "urllib3 (<2.0)"] fastai = ["fastai (>=2.4)", "fastcore (>=1.3.27)", "toml"] hf-transfer = ["hf-transfer (>=0.1.4)"] -hf-xet = ["hf-xet (>=0.1.4)"] +hf-xet = ["hf-xet (>=1.1.0,<2.0.0)"] inference = ["aiohttp"] quality = ["libcst (==1.4.0)", "mypy (==1.5.1)", "ruff (>=0.9.0)"] tensorflow = ["graphviz", "pydot", "tensorflow"] @@ -1420,8 +1366,6 @@ version = "10.0" description = "Human friendly output for text interfaces using Python" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "humanfriendly-10.0-py2.py3-none-any.whl", hash = "sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477"}, {file = "humanfriendly-10.0.tar.gz", hash = "sha256:6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc"}, @@ -1436,7 +1380,6 @@ version = "0.15.0" description = "A ASGI Server based on Hyper libraries and inspired by Gunicorn" optional = false python-versions = ">=3.7" -groups = ["proxy-dev"] files = [ {file = "hypercorn-0.15.0-py3-none-any.whl", hash = "sha256:5008944999612fd188d7a1ca02e89d20065642b89503020ac392dfed11840730"}, {file = "hypercorn-0.15.0.tar.gz", hash = "sha256:d517f68d5dc7afa9a9d50ecefb0f769f466ebe8c1c18d2c2f447a24e763c9a63"}, @@ -1454,7 +1397,7 @@ wsproto = ">=0.14.0" docs = ["pydata_sphinx_theme", "sphinxcontrib_mermaid"] h3 = ["aioquic (>=0.9.0,<1.0)"] trio = ["exceptiongroup (>=1.1.0)", "trio (>=0.22.0)"] -uvloop = ["uvloop ; platform_system != \"Windows\""] +uvloop = ["uvloop"] [[package]] name = "hyperframe" @@ -1462,7 +1405,6 @@ version = "6.0.1" description = "HTTP/2 framing layer for Python" optional = false python-versions = ">=3.6.1" -groups = ["proxy-dev"] files = [ {file = "hyperframe-6.0.1-py3-none-any.whl", hash = "sha256:0ec6bafd80d8ad2195c4f03aacba3a8265e57bc4cff261e802bf39970ed02a15"}, {file = "hyperframe-6.0.1.tar.gz", hash = "sha256:ae510046231dc8e9ecb1a6586f63d2347bf4c8905914aa84ba585ae85f28a914"}, @@ -1474,7 +1416,6 @@ version = "3.10" description = "Internationalized Domain Names in Applications (IDNA)" optional = false python-versions = ">=3.6" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "idna-3.10-py3-none-any.whl", hash = "sha256:946d195a0d259cbba61165e88e65941f16e9b36ea6ddb97f00452bae8b1287d3"}, {file = "idna-3.10.tar.gz", hash = "sha256:12f65c9b470abda6dc35cf8e63cc574b1c52b11df2c86030af0ac09b01b13ea9"}, @@ -1489,7 +1430,6 @@ version = "7.1.0" description = "Read metadata from Python packages" optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "importlib_metadata-7.1.0-py3-none-any.whl", hash = "sha256:30962b96c0c223483ed6cc7280e7f0199feb01a0e40cfae4d4450fc6fab1f570"}, {file = "importlib_metadata-7.1.0.tar.gz", hash = "sha256:b78938b926ee8d5f020fc4772d487045805a55ddbad2ecf21c6d60938dc7fcd2"}, @@ -1501,7 +1441,7 @@ zipp = ">=0.5" [package.extras] docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3) ; python_version < \"3.9\"", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy ; platform_python_implementation != \"PyPy\"", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] [[package]] name = "importlib-resources" @@ -1509,8 +1449,6 @@ version = "6.4.5" description = "Read resources from Python packages" optional = false python-versions = ">=3.8" -groups = ["main"] -markers = "python_version < \"3.9\"" files = [ {file = "importlib_resources-6.4.5-py3-none-any.whl", hash = "sha256:ac29d5f956f01d5e4bb63102a5a19957f1b9175e45649977264a1416783bb717"}, {file = "importlib_resources-6.4.5.tar.gz", hash = "sha256:980862a1d16c9e147a59603677fa2aa5fd82b87f223b6cb870695bcfce830065"}, @@ -1520,7 +1458,7 @@ files = [ zipp = {version = ">=3.1.0", markers = "python_version < \"3.10\""} [package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] cover = ["pytest-cov"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] enabler = ["pytest-enabler (>=2.2)"] @@ -1533,7 +1471,6 @@ version = "2.1.0" description = "brain-dead simple config-ini parsing" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "iniconfig-2.1.0-py3-none-any.whl", hash = "sha256:9deba5723312380e77435581c6bf4935c94cbfab9b1ed33ef8d238ea168eb760"}, {file = "iniconfig-2.1.0.tar.gz", hash = "sha256:3abbd2e30b36733fee78f9c7f7308f2d0050e88f0087fd25c2645f63c773e1c7"}, @@ -1545,8 +1482,6 @@ version = "0.7.2" description = "An ISO 8601 date/time/duration parser and formatter" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "isodate-0.7.2-py3-none-any.whl", hash = "sha256:28009937d8031054830160fce6d409ed342816b543597cece116d966c6d99e15"}, {file = "isodate-0.7.2.tar.gz", hash = "sha256:4cd1aa0f43ca76f4a6c6c0292a85f40b35ec2e43e315b59f06e6d32171a953e6"}, @@ -1558,7 +1493,6 @@ version = "3.1.6" description = "A very fast and expressive template engine." optional = false python-versions = ">=3.7" -groups = ["main", "proxy-dev"] files = [ {file = "jinja2-3.1.6-py3-none-any.whl", hash = "sha256:85ece4451f492d0c13c5dd7c13a64681a86afae63a5f347908daf103ce6d2f67"}, {file = "jinja2-3.1.6.tar.gz", hash = "sha256:0137fb05990d35f1275a587e9aee6d56da821fc83491a0fb838183be43f66d6d"}, @@ -1576,7 +1510,6 @@ version = "0.9.0" description = "Fast iterable JSON parser." optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "jiter-0.9.0-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:816ec9b60fdfd1fec87da1d7ed46c66c44ffec37ab2ef7de5b147b2fce3fd5ad"}, {file = "jiter-0.9.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:9b1d3086f8a3ee0194ecf2008cf81286a5c3e540d977fa038ff23576c023c0ea"}, @@ -1662,8 +1595,6 @@ version = "1.0.1" description = "JSON Matching Expressions" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "jmespath-1.0.1-py3-none-any.whl", hash = "sha256:02e2e4cc71b5bcab88332eebf907519190dd9e6e82107fa7f83b1003a6252980"}, {file = "jmespath-1.0.1.tar.gz", hash = "sha256:90261b206d6defd58fdd5e85f478bf633a2901798906be2ad389150c5c60edbe"}, @@ -1675,7 +1606,6 @@ version = "4.23.0" description = "An implementation of JSON Schema validation for Python" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "jsonschema-4.23.0-py3-none-any.whl", hash = "sha256:fbadb6f8b144a8f8cf9f0b89ba94501d143e50411a1278633f56a7acf7fd5566"}, {file = "jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4"}, @@ -1699,7 +1629,6 @@ version = "2023.12.1" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "jsonschema_specifications-2023.12.1-py3-none-any.whl", hash = "sha256:87e4fdf3a94858b8a2ba2778d9ba57d8a9cafca7c7489c46ba0d30a8bc6a9c3c"}, {file = "jsonschema_specifications-2023.12.1.tar.gz", hash = "sha256:48a76787b3e70f5ed53f1160d2b81f586e4ca6d1548c5de7085d1682674764cc"}, @@ -1715,22 +1644,19 @@ version = "0.1.1" description = "Package for LiteLLM Enterprise features" optional = true python-versions = "!=2.7.*,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3.7.*,>=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "litellm_enterprise-0.1.1.tar.gz", hash = "sha256:58465200b1ab8e8c3b5e8a4ba08267502ac35dc42bc05e3a388575d02a5219b6"}, ] [[package]] name = "litellm-proxy-extras" -version = "0.1.18" +version = "0.1.19" description = "Additional files for the LiteLLM Proxy. Reduces the size of the main litellm package." optional = true python-versions = "!=2.7.*,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3.7.*,>=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ - {file = "litellm_proxy_extras-0.1.18.tar.gz", hash = "sha256:4f5a1e01aa7fefd2cde6f492479e7a27bfa3a610dffdc6d6e059ae4e0835ac6e"}, + {file = "litellm_proxy_extras-0.1.19-py3-none-any.whl", hash = "sha256:ca92d1a03fc1d9ec4cd5c1cf477a5f0cb11a008480a68765f5946ecd81847f99"}, + {file = "litellm_proxy_extras-0.1.19.tar.gz", hash = "sha256:57ebfe6ae5935b94e87394ea0c59a0f9ac2e92f8d9806953cf71ec4ef97d6c39"}, ] [[package]] @@ -1739,8 +1665,6 @@ version = "3.0.0" description = "Python port of markdown-it. Markdown parsing, done right!" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "markdown-it-py-3.0.0.tar.gz", hash = "sha256:e3f60a94fa066dc52ec76661e37c851cb232d92f9886b15cb560aaada2df8feb"}, {file = "markdown_it_py-3.0.0-py3-none-any.whl", hash = "sha256:355216845c60bd96232cd8d8c40e8f9765cc86f46880e43a8fd22dc1a1a8cab1"}, @@ -1765,7 +1689,6 @@ version = "2.1.5" description = "Safely add untrusted strings to HTML/XML markup." optional = false python-versions = ">=3.7" -groups = ["main", "proxy-dev"] files = [ {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:a17a92de5231666cfbe003f0e4b9b3a7ae3afb1ec2845aadc2bacc93ff85febc"}, {file = "MarkupSafe-2.1.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:72b6be590cc35924b02c78ef34b467da4ba07e4e0f0454a2c5907f473fc50ce5"}, @@ -1835,7 +1758,6 @@ version = "0.7.0" description = "McCabe checker, plugin for flake8" optional = false python-versions = ">=3.6" -groups = ["dev"] files = [ {file = "mccabe-0.7.0-py2.py3-none-any.whl", hash = "sha256:6c2d30ab6be0e4a46919781807b4f0d834ebdd6c6e3dca0bda5a15f863427b6e"}, {file = "mccabe-0.7.0.tar.gz", hash = "sha256:348e0240c33b60bbdf4e523192ef919f28cb2c3d7d5c7794f74009290f236325"}, @@ -1847,8 +1769,6 @@ version = "1.5.0" description = "Model Context Protocol SDK" optional = true python-versions = ">=3.10" -groups = ["main"] -markers = "python_version >= \"3.10\" and extra == \"proxy\"" files = [ {file = "mcp-1.5.0-py3-none-any.whl", hash = "sha256:51c3f35ce93cb702f7513c12406bbea9665ef75a08db909200b07da9db641527"}, {file = "mcp-1.5.0.tar.gz", hash = "sha256:5b2766c05e68e01a2034875e250139839498c61792163a7b221fc170c12f5aa9"}, @@ -1875,8 +1795,6 @@ version = "0.1.2" description = "Markdown URL utilities" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "mdurl-0.1.2-py3-none-any.whl", hash = "sha256:84008a41e51615a49fc9966191ff91509e3c40b939176e643fd50a5c2196b8f8"}, {file = "mdurl-0.1.2.tar.gz", hash = "sha256:bb413d29f5eea38f31dd4754dd7377d4465116fb207585f97bf925588687c1ba"}, @@ -1888,8 +1806,6 @@ version = "0.4.1" description = "" optional = true python-versions = ">=3.9" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "ml_dtypes-0.4.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:1fe8b5b5e70cd67211db94b05cfd58dace592f24489b038dc6f9fe347d2e07d5"}, {file = "ml_dtypes-0.4.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8c09a6d11d8475c2a9fd2bc0695628aec105f97cab3b3a3fb7c9660348ff7d24"}, @@ -1912,10 +1828,10 @@ files = [ [package.dependencies] numpy = [ - {version = ">=1.23.3", markers = "python_version >= \"3.11\""}, - {version = ">1.20"}, - {version = ">=1.21.2", markers = "python_version >= \"3.10\""}, + {version = ">1.20", markers = "python_version < \"3.10\""}, {version = ">=1.26.0", markers = "python_version >= \"3.12\""}, + {version = ">=1.23.3", markers = "python_version >= \"3.11\" and python_version < \"3.12\""}, + {version = ">=1.21.2", markers = "python_version >= \"3.10\" and python_version < \"3.11\""}, ] [package.extras] @@ -1927,8 +1843,6 @@ version = "1.32.3" description = "The Microsoft Authentication Library (MSAL) for Python library enables your app to access the Microsoft Cloud by supporting authentication of users with Microsoft Azure Active Directory accounts (AAD) and Microsoft Accounts (MSA) using industry standard OAuth2 and OpenID Connect." optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "msal-1.32.3-py3-none-any.whl", hash = "sha256:b2798db57760b1961b142f027ffb7c8169536bf77316e99a0df5c4aaebb11569"}, {file = "msal-1.32.3.tar.gz", hash = "sha256:5eea038689c78a5a70ca8ecbe1245458b55a857bd096efb6989c69ba15985d35"}, @@ -1940,7 +1854,7 @@ PyJWT = {version = ">=1.0.0,<3", extras = ["crypto"]} requests = ">=2.0.0,<3" [package.extras] -broker = ["pymsalruntime (>=0.14,<0.18) ; python_version >= \"3.6\" and platform_system == \"Windows\"", "pymsalruntime (>=0.17,<0.18) ; python_version >= \"3.8\" and platform_system == \"Darwin\""] +broker = ["pymsalruntime (>=0.14,<0.18)", "pymsalruntime (>=0.17,<0.18)"] [[package]] name = "msal-extensions" @@ -1948,8 +1862,6 @@ version = "1.3.0" description = "Microsoft Authentication Library extensions (MSAL EX) provides a persistence API that can save your data on disk, encrypted on Windows, macOS and Linux. Concurrent data access will be coordinated by a file lock mechanism." optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "msal_extensions-1.3.0-py3-none-any.whl", hash = "sha256:105328ddcbdd342016c9949d8f89e3917554740c8ab26669c0fa0e069e730a0e"}, {file = "msal_extensions-1.3.0.tar.gz", hash = "sha256:96918996642b38c78cd59b55efa0f06fd1373c90e0949be8615697c048fba62c"}, @@ -1967,7 +1879,6 @@ version = "6.1.0" description = "multidict implementation" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "multidict-6.1.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3380252550e372e8511d49481bd836264c009adb826b23fefcc5dd3c69692f60"}, {file = "multidict-6.1.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:99f826cbf970077383d7de805c0681799491cb939c25450b9b5b3ced03ca99f1"}, @@ -2072,7 +1983,6 @@ version = "1.14.1" description = "Optional static typing for Python" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "mypy-1.14.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:52686e37cf13d559f668aa398dd7ddf1f92c5d613e4f8cb262be2fb4fedb0fcb"}, {file = "mypy-1.14.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:1fb545ca340537d4b45d3eecdb3def05e913299ca72c290326be19b3804b39c0"}, @@ -2132,7 +2042,6 @@ version = "1.1.0" description = "Type system extensions for programs checked with the mypy type checker." optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "mypy_extensions-1.1.0-py3-none-any.whl", hash = "sha256:1be4cccdb0f2482337c4743e60421de3a356cd97508abadd57d47403e94f5505"}, {file = "mypy_extensions-1.1.0.tar.gz", hash = "sha256:52e68efc3284861e772bbcd66823fde5ae21fd2fdb51c62a211403730b916558"}, @@ -2144,7 +2053,6 @@ version = "1.9.1" description = "Node.js virtual environment builder" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" -groups = ["main", "proxy-dev"] files = [ {file = "nodeenv-1.9.1-py2.py3-none-any.whl", hash = "sha256:ba11c9782d29c27c70ffbdda2d7415098754709be8a7056d79a737cd901155c9"}, {file = "nodeenv-1.9.1.tar.gz", hash = "sha256:6ec12890a2dab7946721edbfbcd91f3319c6ccc9aec47be7c7e6b7011ee6645f"}, @@ -2156,8 +2064,6 @@ version = "1.26.4" description = "Fundamental package for array computing in Python" optional = true python-versions = ">=3.9" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.12\"" files = [ {file = "numpy-1.26.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:9ff0f4f29c51e2803569d7a51c2304de5554655a60c5d776e35b4a41413830d0"}, {file = "numpy-1.26.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:2e4ee3380d6de9c9ec04745830fd9e2eccb3e6cf790d39d7b98ffd19b0dd754a"}, @@ -2203,8 +2109,6 @@ version = "2.2.5" description = "Fundamental package for array computing in Python" optional = true python-versions = ">=3.10" -groups = ["main"] -markers = "python_version < \"3.14\" and extra == \"extra-proxy\" and python_version >= \"3.12\"" files = [ {file = "numpy-2.2.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f4a922da1729f4c40932b2af4fe84909c7a6e167e6e99f71838ce3a29f3fe26"}, {file = "numpy-2.2.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:b6f91524d31b34f4a5fee24f5bc16dcd1491b668798b6d85585d836c1e633a6a"}, @@ -2269,8 +2173,6 @@ version = "3.2.2" description = "A generic, spec-compliant, thorough implementation of the OAuth request-signing logic" optional = true python-versions = ">=3.6" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "oauthlib-3.2.2-py3-none-any.whl", hash = "sha256:8139f29aac13e25d502680e9e19963e83f16838d48a0d71c287fe40e7067fbca"}, {file = "oauthlib-3.2.2.tar.gz", hash = "sha256:9859c40929662bec5d64f34d01c99e093149682a3f38915dc0655d5a633dd918"}, @@ -2287,7 +2189,6 @@ version = "1.75.0" description = "The official Python library for the openai API" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "openai-1.75.0-py3-none-any.whl", hash = "sha256:fe6f932d2ded3b429ff67cc9ad118c71327db32eb9d32dd723de3acfca337125"}, {file = "openai-1.75.0.tar.gz", hash = "sha256:fb3ea907efbdb1bcfd0c44507ad9c961afd7dce3147292b54505ecfd17be8fd1"}, @@ -2314,7 +2215,6 @@ version = "1.25.0" description = "OpenTelemetry Python API" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_api-1.25.0-py3-none-any.whl", hash = "sha256:757fa1aa020a0f8fa139f8959e53dec2051cc26b832e76fa839a6d76ecefd737"}, {file = "opentelemetry_api-1.25.0.tar.gz", hash = "sha256:77c4985f62f2614e42ce77ee4c9da5fa5f0bc1e1821085e9a47533a9323ae869"}, @@ -2330,7 +2230,6 @@ version = "1.25.0" description = "OpenTelemetry Collector Exporters" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_exporter_otlp-1.25.0-py3-none-any.whl", hash = "sha256:d67a831757014a3bc3174e4cd629ae1493b7ba8d189e8a007003cacb9f1a6b60"}, {file = "opentelemetry_exporter_otlp-1.25.0.tar.gz", hash = "sha256:ce03199c1680a845f82e12c0a6a8f61036048c07ec7a0bd943142aca8fa6ced0"}, @@ -2346,7 +2245,6 @@ version = "1.25.0" description = "OpenTelemetry Protobuf encoding" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_exporter_otlp_proto_common-1.25.0-py3-none-any.whl", hash = "sha256:15637b7d580c2675f70246563363775b4e6de947871e01d0f4e3881d1848d693"}, {file = "opentelemetry_exporter_otlp_proto_common-1.25.0.tar.gz", hash = "sha256:c93f4e30da4eee02bacd1e004eb82ce4da143a2f8e15b987a9f603e0a85407d3"}, @@ -2361,7 +2259,6 @@ version = "1.25.0" description = "OpenTelemetry Collector Protobuf over gRPC Exporter" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_exporter_otlp_proto_grpc-1.25.0-py3-none-any.whl", hash = "sha256:3131028f0c0a155a64c430ca600fd658e8e37043cb13209f0109db5c1a3e4eb4"}, {file = "opentelemetry_exporter_otlp_proto_grpc-1.25.0.tar.gz", hash = "sha256:c0b1661415acec5af87625587efa1ccab68b873745ca0ee96b69bb1042087eac"}, @@ -2382,7 +2279,6 @@ version = "1.25.0" description = "OpenTelemetry Collector Protobuf over HTTP Exporter" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_exporter_otlp_proto_http-1.25.0-py3-none-any.whl", hash = "sha256:2eca686ee11b27acd28198b3ea5e5863a53d1266b91cda47c839d95d5e0541a6"}, {file = "opentelemetry_exporter_otlp_proto_http-1.25.0.tar.gz", hash = "sha256:9f8723859e37c75183ea7afa73a3542f01d0fd274a5b97487ea24cb683d7d684"}, @@ -2403,7 +2299,6 @@ version = "1.25.0" description = "OpenTelemetry Python Proto" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_proto-1.25.0-py3-none-any.whl", hash = "sha256:f07e3341c78d835d9b86665903b199893befa5e98866f63d22b00d0b7ca4972f"}, {file = "opentelemetry_proto-1.25.0.tar.gz", hash = "sha256:35b6ef9dc4a9f7853ecc5006738ad40443701e52c26099e197895cbda8b815a3"}, @@ -2418,7 +2313,6 @@ version = "1.25.0" description = "OpenTelemetry Python SDK" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_sdk-1.25.0-py3-none-any.whl", hash = "sha256:d97ff7ec4b351692e9d5a15af570c693b8715ad78b8aafbec5c7100fe966b4c9"}, {file = "opentelemetry_sdk-1.25.0.tar.gz", hash = "sha256:ce7fc319c57707ef5bf8b74fb9f8ebdb8bfafbe11898410e0d2a761d08a98ec7"}, @@ -2435,7 +2329,6 @@ version = "0.46b0" description = "OpenTelemetry Semantic Conventions" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "opentelemetry_semantic_conventions-0.46b0-py3-none-any.whl", hash = "sha256:6daef4ef9fa51d51855d9f8e0ccd3a1bd59e0e545abe99ac6203804e36ab3e07"}, {file = "opentelemetry_semantic_conventions-0.46b0.tar.gz", hash = "sha256:fbc982ecbb6a6e90869b15c1673be90bd18c8a56ff1cffc0864e38e2edffaefa"}, @@ -2450,8 +2343,6 @@ version = "3.10.15" description = "Fast, correct Python JSON library supporting dataclasses, datetimes, and numpy" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "orjson-3.10.15-cp310-cp310-macosx_10_15_x86_64.macosx_11_0_arm64.macosx_10_15_universal2.whl", hash = "sha256:552c883d03ad185f720d0c09583ebde257e41b9521b74ff40e08b7dec4559c04"}, {file = "orjson-3.10.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:616e3e8d438d02e4854f70bfdc03a6bcdb697358dbaa6bcd19cbe24d24ece1f8"}, @@ -2540,7 +2431,6 @@ version = "25.0" description = "Core utilities for Python packages" optional = false python-versions = ">=3.8" -groups = ["main", "dev"] files = [ {file = "packaging-25.0-py3-none-any.whl", hash = "sha256:29572ef2b1f17581046b3a2227d5c611fb25ec70ca1ba8554b24b0e69331a484"}, {file = "packaging-25.0.tar.gz", hash = "sha256:d443872c98d677bf60f6a1f2f8c1cb748e8fe762d2bf9d3148b5599295b0fc4f"}, @@ -2552,7 +2442,6 @@ version = "0.12.1" description = "Utility library for gitignore style pattern matching of file paths." optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "pathspec-0.12.1-py3-none-any.whl", hash = "sha256:a0d503e138a4c123b27490a4f7beda6a01c6f288df0e4a8b79c7eb0dc7b4cc08"}, {file = "pathspec-0.12.1.tar.gz", hash = "sha256:a482d51503a1ab33b1c67a6c3813a26953dbdc71c31dacaef9a838c4e29f5712"}, @@ -2564,8 +2453,6 @@ version = "1.3.10" description = "Resolve a name to an object." optional = false python-versions = ">=3.6" -groups = ["main"] -markers = "python_version < \"3.9\"" files = [ {file = "pkgutil_resolve_name-1.3.10-py3-none-any.whl", hash = "sha256:ca27cc078d25c5ad71a9de0a7a330146c4e014c2462d9af19c6b828280649c5e"}, {file = "pkgutil_resolve_name-1.3.10.tar.gz", hash = "sha256:357d6c9e6a755653cfd78893817c0853af365dd51ec97f3d358a819373bbd174"}, @@ -2577,7 +2464,6 @@ version = "4.3.6" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a `user data dir`." optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "platformdirs-4.3.6-py3-none-any.whl", hash = "sha256:73e575e1408ab8103900836b97580d5307456908a03e92031bab39e4554cc3fb"}, {file = "platformdirs-4.3.6.tar.gz", hash = "sha256:357fb2acbc885b0419afd3ce3ed34564c13c9b95c89360cd9563f73aa5e2b907"}, @@ -2594,7 +2480,6 @@ version = "1.5.0" description = "plugin and hook calling mechanisms for python" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, @@ -2610,7 +2495,6 @@ version = "2.0.0" description = "A pure-Python implementation of the HTTP/2 priority tree" optional = false python-versions = ">=3.6.1" -groups = ["proxy-dev"] files = [ {file = "priority-2.0.0-py3-none-any.whl", hash = "sha256:6f8eefce5f3ad59baf2c080a664037bb4725cd0a790d53d59ab4059288faf6aa"}, {file = "priority-2.0.0.tar.gz", hash = "sha256:c965d54f1b8d0d0b19479db3924c7c36cf672dbf2aec92d43fbdaf4492ba18c0"}, @@ -2622,7 +2506,6 @@ version = "0.11.0" description = "Prisma Client Python is an auto-generated and fully type-safe database client" optional = false python-versions = ">=3.7.0" -groups = ["main", "proxy-dev"] files = [ {file = "prisma-0.11.0-py3-none-any.whl", hash = "sha256:22bb869e59a2968b99f3483bb417717273ffbc569fd1e9ceed95e5614cbaf53a"}, {file = "prisma-0.11.0.tar.gz", hash = "sha256:3f2f2fd2361e1ec5ff655f2a04c7860c2f2a5bc4c91f78ca9c5c6349735bf693"}, @@ -2648,7 +2531,6 @@ version = "0.20.0" description = "Python client for the Prometheus monitoring system." optional = false python-versions = ">=3.8" -groups = ["proxy-dev"] files = [ {file = "prometheus_client-0.20.0-py3-none-any.whl", hash = "sha256:cde524a85bce83ca359cc837f28b8c0db5cac7aa653a588fd7e84ba061c329e7"}, {file = "prometheus_client-0.20.0.tar.gz", hash = "sha256:287629d00b147a32dcb2be0b9df905da599b2d82f80377083ec8463309a4bb89"}, @@ -2663,7 +2545,6 @@ version = "0.2.0" description = "Accelerated property cache" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "propcache-0.2.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:c5869b8fd70b81835a6f187c5fdbe67917a04d7e52b6e7cc4e5fe39d55c39d58"}, {file = "propcache-0.2.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:952e0d9d07609d9c5be361f33b0d6d650cd2bae393aabb11d9b719364521984b"}, @@ -2771,8 +2652,6 @@ version = "1.26.1" description = "Beautiful, Pythonic protocol buffers" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "proto_plus-1.26.1-py3-none-any.whl", hash = "sha256:13285478c2dcf2abb829db158e1047e2f1e8d63a077d94263c2b88b043c75a66"}, {file = "proto_plus-1.26.1.tar.gz", hash = "sha256:21a515a4c4c0088a773899e23c7bbade3d18f9c66c73edd4c7ee3816bc96a012"}, @@ -2790,7 +2669,6 @@ version = "4.25.7" description = "" optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "protobuf-4.25.7-cp310-abi3-win32.whl", hash = "sha256:dc582cf1a73a6b40aa8e7704389b8d8352da616bc8ed5c6cc614bdd0b5ce3f7a"}, {file = "protobuf-4.25.7-cp310-abi3-win_amd64.whl", hash = "sha256:cd873dbddb28460d1706ff4da2e7fac175f62f2a0bebc7b33141f7523c5a2399"}, @@ -2804,7 +2682,6 @@ files = [ {file = "protobuf-4.25.7-py3-none-any.whl", hash = "sha256:e9d969f5154eaeab41404def5dcf04e62162178f4b9de98b2d3c1c70f5f84810"}, {file = "protobuf-4.25.7.tar.gz", hash = "sha256:28f65ae8c14523cc2c76c1e91680958700d3eac69f45c96512c12c63d9a38807"}, ] -markers = {main = "extra == \"extra-proxy\""} [[package]] name = "pyasn1" @@ -2812,8 +2689,6 @@ version = "0.6.1" description = "Pure-Python implementation of ASN.1 types and DER/BER/CER codecs (X.208)" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "pyasn1-0.6.1-py3-none-any.whl", hash = "sha256:0d632f46f2ba09143da3a8afe9e33fb6f92fa2320ab7e886e2d0f7672af84629"}, {file = "pyasn1-0.6.1.tar.gz", hash = "sha256:6f580d2bdd84365380830acf45550f2511469f673cb4a5ae3857a3170128b034"}, @@ -2825,8 +2700,6 @@ version = "0.4.2" description = "A collection of ASN.1-based protocols modules" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "pyasn1_modules-0.4.2-py3-none-any.whl", hash = "sha256:29253a9207ce32b64c3ac6600edc75368f98473906e8fd1043bd6b5b1de2c14a"}, {file = "pyasn1_modules-0.4.2.tar.gz", hash = "sha256:677091de870a80aae844b1ca6134f54652fa2c8c5a52aa396440ac3106e941e6"}, @@ -2841,7 +2714,6 @@ version = "2.11.1" description = "Python style guide checker" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "pycodestyle-2.11.1-py2.py3-none-any.whl", hash = "sha256:44fe31000b2d866f2e41841b18528a505fbd7fef9017b04eff4e2648a0fadc67"}, {file = "pycodestyle-2.11.1.tar.gz", hash = "sha256:41ba0e7afc9752dfb53ced5489e89f8186be00e599e712660695b7a75ff2663f"}, @@ -2853,12 +2725,10 @@ version = "2.22" description = "C parser in Python" optional = false python-versions = ">=3.8" -groups = ["main", "dev"] files = [ {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, ] -markers = {main = "(extra == \"proxy\" or extra == \"extra-proxy\") and (platform_python_implementation != \"PyPy\" or extra == \"proxy\")", dev = "platform_python_implementation != \"PyPy\""} [[package]] name = "pydantic" @@ -2866,7 +2736,6 @@ version = "2.10.6" description = "Data validation using Python type hints" optional = false python-versions = ">=3.8" -groups = ["main", "proxy-dev"] files = [ {file = "pydantic-2.10.6-py3-none-any.whl", hash = "sha256:427d664bf0b8a2b34ff5dd0f5a18df00591adcee7198fbd71981054cef37b584"}, {file = "pydantic-2.10.6.tar.gz", hash = "sha256:ca5daa827cce33de7a42be142548b0096bf05a7e7b365aebfa5f8eeec7128236"}, @@ -2880,7 +2749,7 @@ typing-extensions = ">=4.12.2" [package.extras] email = ["email-validator (>=2.0.0)"] -timezone = ["tzdata ; python_version >= \"3.9\" and platform_system == \"Windows\""] +timezone = ["tzdata"] [[package]] name = "pydantic-core" @@ -2888,7 +2757,6 @@ version = "2.27.2" description = "Core functionality for Pydantic validation and serialization" optional = false python-versions = ">=3.8" -groups = ["main", "proxy-dev"] files = [ {file = "pydantic_core-2.27.2-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:2d367ca20b2f14095a8f4fa1210f5a7b78b8a20009ecced6b12818f455b1e9fa"}, {file = "pydantic_core-2.27.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:491a2b73db93fab69731eaee494f320faa4e093dbed776be1a829c2eb222c34c"}, @@ -3001,8 +2869,6 @@ version = "2.9.1" description = "Settings management using Pydantic" optional = true python-versions = ">=3.9" -groups = ["main"] -markers = "python_version >= \"3.10\" and extra == \"proxy\"" files = [ {file = "pydantic_settings-2.9.1-py3-none-any.whl", hash = "sha256:59b4f431b1defb26fe620c71a7d3968a710d719f5f4cdbbdb7926edeb770f6ef"}, {file = "pydantic_settings-2.9.1.tar.gz", hash = "sha256:c509bf79d27563add44e8446233359004ed85066cd096d8b510f715e6ef5d268"}, @@ -3026,7 +2892,6 @@ version = "3.1.0" description = "passive checker of Python programs" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "pyflakes-3.1.0-py2.py3-none-any.whl", hash = "sha256:4132f6d49cb4dae6819e5379898f2b8cce3c5f23994194c24b77d5da2e36f774"}, {file = "pyflakes-3.1.0.tar.gz", hash = "sha256:a0aae034c444db0071aa077972ba4768d40c830d9539fd45bf4cd3f8f6992efc"}, @@ -3038,8 +2903,6 @@ version = "2.19.1" description = "Pygments is a syntax highlighting package written in Python." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "pygments-2.19.1-py3-none-any.whl", hash = "sha256:9ea1544ad55cecf4b8242fab6dd35a93bbce657034b0611ee383099054ab6d8c"}, {file = "pygments-2.19.1.tar.gz", hash = "sha256:61c16d2a8576dc0649d9f39e089b5f02bcd27fba10d8fb4dcc28173f7a45151f"}, @@ -3054,8 +2917,6 @@ version = "2.9.0" description = "JSON Web Token implementation in Python" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"extra-proxy\" or extra == \"proxy\"" files = [ {file = "PyJWT-2.9.0-py3-none-any.whl", hash = "sha256:3b02fb0f44517787776cf48f2ae25d8e14f300e6d7545a4315cee571a415e850"}, {file = "pyjwt-2.9.0.tar.gz", hash = "sha256:7e1e5b56cc735432a7369cbfa0efe50fa113ebecdc04ae6922deba8b84582d0c"}, @@ -3076,8 +2937,6 @@ version = "1.5.0" description = "Python binding to the Networking and Cryptography (NaCl) library" optional = true python-versions = ">=3.6" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "PyNaCl-1.5.0-cp36-abi3-macosx_10_10_universal2.whl", hash = "sha256:401002a4aaa07c9414132aaed7f6836ff98f59277a234704ff66878c2ee4a0d1"}, {file = "PyNaCl-1.5.0-cp36-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_24_aarch64.whl", hash = "sha256:52cb72a79269189d4e0dc537556f4740f7f0a9ec41c1322598799b0bdad4ef92"}, @@ -3104,8 +2963,6 @@ version = "3.5.4" description = "A python implementation of GNU readline." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "python_version >= \"3.9\" and sys_platform == \"win32\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "pyreadline3-3.5.4-py3-none-any.whl", hash = "sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6"}, {file = "pyreadline3-3.5.4.tar.gz", hash = "sha256:8d57d53039a1c75adba8e50dd3d992b28143480816187ea5efbd5c78e6c885b7"}, @@ -3120,7 +2977,6 @@ version = "7.4.4" description = "pytest: simple powerful testing with Python" optional = false python-versions = ">=3.7" -groups = ["dev"] files = [ {file = "pytest-7.4.4-py3-none-any.whl", hash = "sha256:b090cdf5ed60bf4c45261be03239c2c1c22df034fbffe691abe93cd80cea01d8"}, {file = "pytest-7.4.4.tar.gz", hash = "sha256:2cf0005922c6ace4a3e2ec8b4080eb0d9753fdc93107415332f50ce9e7994280"}, @@ -3143,7 +2999,6 @@ version = "0.21.2" description = "Pytest support for asyncio" optional = false python-versions = ">=3.7" -groups = ["dev"] files = [ {file = "pytest_asyncio-0.21.2-py3-none-any.whl", hash = "sha256:ab664c88bb7998f711d8039cacd4884da6430886ae8bbd4eded552ed2004f16b"}, {file = "pytest_asyncio-0.21.2.tar.gz", hash = "sha256:d67738fc232b94b326b9d060750beb16e0074210b98dd8b58a5239fa2a154f45"}, @@ -3162,7 +3017,6 @@ version = "3.14.0" description = "Thin-wrapper around the mock package for easier use with pytest" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "pytest-mock-3.14.0.tar.gz", hash = "sha256:2719255a1efeceadbc056d6bf3df3d1c5015530fb40cf347c0f9afac88410bd0"}, {file = "pytest_mock-3.14.0-py3-none-any.whl", hash = "sha256:0b72c38033392a5f4621342fe11e9219ac11ec9d375f8e2a0c164539e0d70f6f"}, @@ -3180,8 +3034,6 @@ version = "2.9.0.post0" description = "Extensions to the standard Python datetime module" optional = true python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3"}, {file = "python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427"}, @@ -3196,7 +3048,6 @@ version = "1.0.1" description = "Read key-value pairs from a .env file and set them as environment variables" optional = false python-versions = ">=3.8" -groups = ["main", "proxy-dev"] files = [ {file = "python-dotenv-1.0.1.tar.gz", hash = "sha256:e324ee90a023d808f1959c46bcbc04446a10ced277783dc6ee09987c37ec10ca"}, {file = "python_dotenv-1.0.1-py3-none-any.whl", hash = "sha256:f7b63ef50f1b690dddf550d03497b66d609393b40b564ed0d674909a68ebf16a"}, @@ -3211,8 +3062,6 @@ version = "0.0.18" description = "A streaming multipart parser for Python" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "python_multipart-0.0.18-py3-none-any.whl", hash = "sha256:efe91480f485f6a361427a541db4796f9e1591afc0fb8e7a4ba06bfbc6708996"}, {file = "python_multipart-0.0.18.tar.gz", hash = "sha256:7a68db60c8bfb82e460637fa4750727b45af1d5e2ed215593f917f64694d34fe"}, @@ -3224,8 +3073,6 @@ version = "3.0.0" description = "Universally unique lexicographically sortable identifier" optional = true python-versions = ">=3.9" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "python_ulid-3.0.0-py3-none-any.whl", hash = "sha256:e4c4942ff50dbd79167ad01ac725ec58f924b4018025ce22c858bfcff99a5e31"}, {file = "python_ulid-3.0.0.tar.gz", hash = "sha256:e50296a47dc8209d28629a22fc81ca26c00982c78934bd7766377ba37ea49a9f"}, @@ -3240,7 +3087,6 @@ version = "6.0.2" description = "YAML parser and emitter for Python" optional = false python-versions = ">=3.8" -groups = ["main", "dev"] files = [ {file = "PyYAML-6.0.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:0a9a2848a5b7feac301353437eb7d5957887edbf81d56e903999a75a3d743086"}, {file = "PyYAML-6.0.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:29717114e51c84ddfba879543fb232a6ed60086602313ca38cce623c1d62cfbf"}, @@ -3303,8 +3149,6 @@ version = "5.3.0" description = "Python client for Redis database and key-value store" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "python_version >= \"3.9\" and (extra == \"extra-proxy\" or extra == \"proxy\") and python_version < \"3.14\" or extra == \"proxy\"" files = [ {file = "redis-5.3.0-py3-none-any.whl", hash = "sha256:f1deeca1ea2ef25c1e4e46b07f4ea1275140526b1feea4c6459c0ec27a10ef83"}, {file = "redis-5.3.0.tar.gz", hash = "sha256:8d69d2dde11a12dc85d0dbf5c45577a5af048e2456f7077d87ad35c1c81c310e"}, @@ -3324,8 +3168,6 @@ version = "0.4.1" description = "Python client library and CLI for using Redis as a vector database" optional = true python-versions = "<3.14,>=3.9" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "redisvl-0.4.1-py3-none-any.whl", hash = "sha256:6db5d5bc95b1fe8032a1cdae74ce1c65bc7fe9054e5429b5d34d5a91d28bae5f"}, {file = "redisvl-0.4.1.tar.gz", hash = "sha256:fd6a36426ba94792c0efca20915c31232d4ee3cc58eb23794a62c142696401e6"}, @@ -3350,7 +3192,7 @@ bedrock = ["boto3[bedrock] (>=1.36.0,<2.0.0)"] cohere = ["cohere (>=4.44)"] mistralai = ["mistralai (>=1.0.0)"] openai = ["openai (>=1.13.0,<2.0.0)"] -sentence-transformers = ["scipy (<1.15) ; python_version < \"3.10\"", "scipy (>=1.15,<2.0) ; python_version >= \"3.10\"", "sentence-transformers (>=3.4.0,<4.0.0)"] +sentence-transformers = ["scipy (<1.15)", "scipy (>=1.15,<2.0)", "sentence-transformers (>=3.4.0,<4.0.0)"] vertexai = ["google-cloud-aiplatform (>=1.26,<2.0)", "protobuf (>=5.29.1,<6.0.0)"] voyageai = ["voyageai (>=0.2.2)"] @@ -3360,7 +3202,6 @@ version = "0.35.1" description = "JSON Referencing + Python" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "referencing-0.35.1-py3-none-any.whl", hash = "sha256:eda6d3234d62814d1c64e305c1331c9a3a6132da475ab6382eaa997b21ee75de"}, {file = "referencing-0.35.1.tar.gz", hash = "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c"}, @@ -3376,7 +3217,6 @@ version = "2024.11.6" description = "Alternative regular expression module, to replace re." optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "regex-2024.11.6-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ff590880083d60acc0433f9c3f713c51f7ac6ebb9adf889c79a261ecf541aa91"}, {file = "regex-2024.11.6-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:658f90550f38270639e83ce492f27d2c8d2cd63805c65a13a14d36ca126753f0"}, @@ -3480,7 +3320,6 @@ version = "2.31.0" description = "Python HTTP for Humans." optional = false python-versions = ">=3.7" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, @@ -3502,7 +3341,6 @@ version = "1.12.1" description = "Mock out responses from the requests package" optional = false python-versions = ">=3.5" -groups = ["dev"] files = [ {file = "requests-mock-1.12.1.tar.gz", hash = "sha256:e9e12e333b525156e82a3c852f22016b9158220d2f47454de9cae8a77d371401"}, {file = "requests_mock-1.12.1-py2.py3-none-any.whl", hash = "sha256:b1e37054004cdd5e56c84454cc7df12b25f90f382159087f4b6915aaeef39563"}, @@ -3520,8 +3358,6 @@ version = "0.8.0" description = "Resend Python SDK" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "resend-0.8.0-py2.py3-none-any.whl", hash = "sha256:adc1515dadf4f4fc6b90db55a237f0f37fc56fd74287a986519a8a187fdb661d"}, {file = "resend-0.8.0.tar.gz", hash = "sha256:94142394701724dbcfcd8f760f675c662a1025013e741dd7cc773ca885526257"}, @@ -3536,7 +3372,6 @@ version = "0.25.7" description = "A utility library for mocking out the `requests` Python library." optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "responses-0.25.7-py3-none-any.whl", hash = "sha256:92ca17416c90fe6b35921f52179bff29332076bb32694c0df02dcac2c6bc043c"}, {file = "responses-0.25.7.tar.gz", hash = "sha256:8ebae11405d7a5df79ab6fd54277f6f2bc29b2d002d0dd2d5c632594d1ddcedb"}, @@ -3548,7 +3383,7 @@ requests = ">=2.30.0,<3.0" urllib3 = ">=1.25.10,<3.0" [package.extras] -tests = ["coverage (>=6.0.0)", "flake8", "mypy", "pytest (>=7.0.0)", "pytest-asyncio", "pytest-cov", "pytest-httpserver", "tomli ; python_version < \"3.11\"", "tomli-w", "types-PyYAML", "types-requests"] +tests = ["coverage (>=6.0.0)", "flake8", "mypy", "pytest (>=7.0.0)", "pytest-asyncio", "pytest-cov", "pytest-httpserver", "tomli", "tomli-w", "types-PyYAML", "types-requests"] [[package]] name = "respx" @@ -3556,7 +3391,6 @@ version = "0.22.0" description = "A utility for mocking out the Python HTTPX and HTTP Core libraries." optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "respx-0.22.0-py2.py3-none-any.whl", hash = "sha256:631128d4c9aba15e56903fb5f66fb1eff412ce28dd387ca3a81339e52dbd3ad0"}, {file = "respx-0.22.0.tar.gz", hash = "sha256:3c8924caa2a50bd71aefc07aa812f2466ff489f1848c96e954a5362d17095d91"}, @@ -3571,8 +3405,6 @@ version = "13.7.1" description = "Render rich text, tables, progress bars, syntax highlighting, markdown and more to the terminal" optional = true python-versions = ">=3.7.0" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "rich-13.7.1-py3-none-any.whl", hash = "sha256:4edbae314f59eb482f54e9e30bf00d33350aaa94f4bfcd4e9e3110e64d0d7222"}, {file = "rich-13.7.1.tar.gz", hash = "sha256:9be308cb1fe2f1f57d67ce99e95af38a1e2bc71ad9813b0e247cf7ffbcc3a432"}, @@ -3592,7 +3424,6 @@ version = "0.20.1" description = "Python bindings to Rust's persistent data structures (rpds)" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "rpds_py-0.20.1-cp310-cp310-macosx_10_12_x86_64.whl", hash = "sha256:a649dfd735fff086e8a9d0503a9f0c7d01b7912a333c7ae77e1515c08c146dad"}, {file = "rpds_py-0.20.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:f16bc1334853e91ddaaa1217045dd7be166170beec337576818461268a3de67f"}, @@ -3701,20 +3532,18 @@ files = [ [[package]] name = "rq" -version = "2.3.2" +version = "2.3.3" description = "RQ is a simple, lightweight, library for creating background jobs, and processing them." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ - {file = "rq-2.3.2-py3-none-any.whl", hash = "sha256:bf4dc622a7b9d5f7d4a39444f26d89ce6de8a1d6db61b21060612114dbf8d5ff"}, - {file = "rq-2.3.2.tar.gz", hash = "sha256:5bd212992724428ec1689736abde783d245e7856bca39d89845884f5d580f5f1"}, + {file = "rq-2.3.3-py3-none-any.whl", hash = "sha256:2202c4409c4c527ac4bee409867d6c02515dd110030499eb0de54c7374aee0ce"}, + {file = "rq-2.3.3.tar.gz", hash = "sha256:20c41c977b6f27c852a41bd855893717402bae7b8d9607dca21fe9dd55453e22"}, ] [package.dependencies] click = ">=5" -redis = ">=3.5" +redis = ">=3.5,<6.0.0 || >6.0.0" [[package]] name = "rsa" @@ -3722,8 +3551,6 @@ version = "4.9.1" description = "Pure-Python RSA implementation" optional = true python-versions = "<4,>=3.6" -groups = ["main"] -markers = "extra == \"extra-proxy\"" files = [ {file = "rsa-4.9.1-py3-none-any.whl", hash = "sha256:68635866661c6836b8d39430f97a996acbd61bfa49406748ea243539fe239762"}, {file = "rsa-4.9.1.tar.gz", hash = "sha256:e7bdbfdb5497da4c07dfd35530e1a902659db6ff241e39d9953cad06ebd0ae75"}, @@ -3738,7 +3565,6 @@ version = "0.1.15" description = "An extremely fast Python linter and code formatter, written in Rust." optional = false python-versions = ">=3.7" -groups = ["dev"] files = [ {file = "ruff-0.1.15-py3-none-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:5fe8d54df166ecc24106db7dd6a68d44852d14eb0729ea4672bb4d96c320b7df"}, {file = "ruff-0.1.15-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:6f0bfbb53c4b4de117ac4d6ddfd33aa5fc31beeaa21d23c45c6dd249faf9126f"}, @@ -3765,8 +3591,6 @@ version = "0.10.4" description = "An Amazon S3 Transfer Manager" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "s3transfer-0.10.4-py3-none-any.whl", hash = "sha256:244a76a24355363a68164241438de1b72f8781664920260c48465896b712a41e"}, {file = "s3transfer-0.10.4.tar.gz", hash = "sha256:29edc09801743c21eb5ecbc617a152df41d3c287f67b615f73e5f750583666a7"}, @@ -3784,8 +3608,6 @@ version = "1.17.0" description = "Python 2 and 3 compatibility utilities" optional = true python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" -groups = ["main"] -markers = "extra == \"extra-proxy\" or extra == \"proxy\"" files = [ {file = "six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274"}, {file = "six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81"}, @@ -3797,7 +3619,6 @@ version = "1.3.1" description = "Sniff out which async library your code is running under" optional = false python-versions = ">=3.7" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "sniffio-1.3.1-py3-none-any.whl", hash = "sha256:2f6da418d1f1e0fddd844478f41680e794e6051915791a034ff65e5f100525a2"}, {file = "sniffio-1.3.1.tar.gz", hash = "sha256:f4324edc670a0f49750a81b895f35c3adb843cca46f0530f79fc1babb23789dc"}, @@ -3809,8 +3630,6 @@ version = "2.1.3" description = "SSE plugin for Starlette" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "python_version >= \"3.10\" and extra == \"proxy\"" files = [ {file = "sse_starlette-2.1.3-py3-none-any.whl", hash = "sha256:8ec846438b4665b9e8c560fcdea6bc8081a3abf7942faa95e5a744999d219772"}, {file = "sse_starlette-2.1.3.tar.gz", hash = "sha256:9cd27eb35319e1414e3d2558ee7414487f9529ce3b3cf9b21434fd110e017169"}, @@ -3830,8 +3649,6 @@ version = "0.44.0" description = "The little ASGI library that shines." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "starlette-0.44.0-py3-none-any.whl", hash = "sha256:19edeb75844c16dcd4f9dd72f22f9108c1539f3fc9c4c88885654fef64f85aea"}, {file = "starlette-0.44.0.tar.gz", hash = "sha256:e35166950a3ccccc701962fe0711db0bc14f2ecd37c6f9fe5e3eae0cbaea8715"}, @@ -3850,8 +3667,6 @@ version = "0.9.0" description = "Pretty-print tabular data" optional = true python-versions = ">=3.7" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "tabulate-0.9.0-py3-none-any.whl", hash = "sha256:024ca478df22e9340661486f85298cff5f6dcdba14f3813e8830015b9ed1948f"}, {file = "tabulate-0.9.0.tar.gz", hash = "sha256:0095b12bf5966de529c0feb1fa08671671b3368eec77d7ef7ab114be2c068b3c"}, @@ -3866,8 +3681,6 @@ version = "0.2.2" description = "backport of asyncio.TaskGroup, asyncio.Runner and asyncio.timeout" optional = false python-versions = "*" -groups = ["proxy-dev"] -markers = "python_version <= \"3.10\"" files = [ {file = "taskgroup-0.2.2-py2.py3-none-any.whl", hash = "sha256:e2c53121609f4ae97303e9ea1524304b4de6faf9eb2c9280c7f87976479a52fb"}, {file = "taskgroup-0.2.2.tar.gz", hash = "sha256:078483ac3e78f2e3f973e2edbf6941374fbea81b9c5d0a96f51d297717f4752d"}, @@ -3883,8 +3696,6 @@ version = "9.1.2" description = "Retry code until it succeeds" optional = true python-versions = ">=3.9" -groups = ["main"] -markers = "python_version >= \"3.9\" and extra == \"extra-proxy\" and python_version < \"3.14\"" files = [ {file = "tenacity-9.1.2-py3-none-any.whl", hash = "sha256:f77bf36710d8b73a50b2dd155c97b870017ad21afe6ab300326b0371b3b05138"}, {file = "tenacity-9.1.2.tar.gz", hash = "sha256:1169d376c297e7de388d18b4481760d478b0e99a777cad3a9c86e556f4b697cb"}, @@ -3900,7 +3711,6 @@ version = "0.7.0" description = "tiktoken is a fast BPE tokeniser for use with OpenAI's models" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "tiktoken-0.7.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:485f3cc6aba7c6b6ce388ba634fbba656d9ee27f766216f45146beb4ac18b25f"}, {file = "tiktoken-0.7.0-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:e54be9a2cd2f6d6ffa3517b064983fb695c9a9d8aa7d574d1ef3c3f931a99225"}, @@ -3953,7 +3763,6 @@ version = "0.21.0" description = "" optional = false python-versions = ">=3.7" -groups = ["main"] files = [ {file = "tokenizers-0.21.0-cp39-abi3-macosx_10_12_x86_64.whl", hash = "sha256:3c4c93eae637e7d2aaae3d376f06085164e1660f89304c0ab2b1d08a406636b2"}, {file = "tokenizers-0.21.0-cp39-abi3-macosx_11_0_arm64.whl", hash = "sha256:f53ea537c925422a2e0e92a24cce96f6bc5046bbef24a1652a5edc8ba975f62e"}, @@ -3986,8 +3795,6 @@ version = "2.2.1" description = "A lil' TOML parser" optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] -markers = "python_version <= \"3.10\"" files = [ {file = "tomli-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:678e4fa69e4575eb77d103de3df8a895e1591b48e740211bd1067378c69e8249"}, {file = "tomli-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:023aa114dd824ade0100497eb2318602af309e5a55595f76b626d6d9f3b7b0a6"}, @@ -4029,7 +3836,6 @@ version = "0.13.2" description = "Style preserving TOML library" optional = false python-versions = ">=3.8" -groups = ["main", "proxy-dev"] files = [ {file = "tomlkit-0.13.2-py3-none-any.whl", hash = "sha256:7a974427f6e119197f670fbbbeae7bef749a6c14e793db934baefc1b5f03efde"}, {file = "tomlkit-0.13.2.tar.gz", hash = "sha256:fff5fe59a87295b278abd31bec92c15d9bc4a06885ab12bcea52c71119392e79"}, @@ -4041,7 +3847,6 @@ version = "4.67.1" description = "Fast, Extensible Progress Meter" optional = false python-versions = ">=3.7" -groups = ["main"] files = [ {file = "tqdm-4.67.1-py3-none-any.whl", hash = "sha256:26445eca388f82e72884e0d580d5464cd801a3ea01e63e5601bdff9ba6a48de2"}, {file = "tqdm-4.67.1.tar.gz", hash = "sha256:f8aef9c52c08c13a65f30ea34f4e5aac3fd1a34959879d7e59e63027286627f2"}, @@ -4063,7 +3868,6 @@ version = "1.16.0.20241221" description = "Typing stubs for cffi" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "types_cffi-1.16.0.20241221-py3-none-any.whl", hash = "sha256:e5b76b4211d7a9185f6ab8d06a106d56c7eb80af7cdb8bfcb4186ade10fb112f"}, {file = "types_cffi-1.16.0.20241221.tar.gz", hash = "sha256:1c96649618f4b6145f58231acb976e0b448be6b847f7ab733dabe62dfbff6591"}, @@ -4078,7 +3882,6 @@ version = "24.1.0.20240722" description = "Typing stubs for pyOpenSSL" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "types-pyOpenSSL-24.1.0.20240722.tar.gz", hash = "sha256:47913b4678a01d879f503a12044468221ed8576263c1540dcb0484ca21b08c39"}, {file = "types_pyOpenSSL-24.1.0.20240722-py3-none-any.whl", hash = "sha256:6a7a5d2ec042537934cfb4c9d4deb0e16c4c6250b09358df1f083682fe6fda54"}, @@ -4094,7 +3897,6 @@ version = "6.0.12.20241230" description = "Typing stubs for PyYAML" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "types_PyYAML-6.0.12.20241230-py3-none-any.whl", hash = "sha256:fa4d32565219b68e6dee5f67534c722e53c00d1cfc09c435ef04d7353e1e96e6"}, {file = "types_pyyaml-6.0.12.20241230.tar.gz", hash = "sha256:7f07622dbd34bb9c8b264fe860a17e0efcad00d50b5f27e93984909d9363498c"}, @@ -4106,7 +3908,6 @@ version = "4.6.0.20241004" description = "Typing stubs for redis" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "types-redis-4.6.0.20241004.tar.gz", hash = "sha256:5f17d2b3f9091ab75384153bfa276619ffa1cf6a38da60e10d5e6749cc5b902e"}, {file = "types_redis-4.6.0.20241004-py3-none-any.whl", hash = "sha256:ef5da68cb827e5f606c8f9c0b49eeee4c2669d6d97122f301d3a55dc6a63f6ed"}, @@ -4122,8 +3923,6 @@ version = "2.31.0.6" description = "Typing stubs for requests" optional = false python-versions = ">=3.7" -groups = ["dev"] -markers = "python_version < \"3.10\"" files = [ {file = "types-requests-2.31.0.6.tar.gz", hash = "sha256:cd74ce3b53c461f1228a9b783929ac73a666658f223e28ed29753771477b3bd0"}, {file = "types_requests-2.31.0.6-py3-none-any.whl", hash = "sha256:a2db9cb228a81da8348b49ad6db3f5519452dd20a9c1e1a868c83c5fe88fd1a9"}, @@ -4138,8 +3937,6 @@ version = "2.32.0.20241016" description = "Typing stubs for requests" optional = false python-versions = ">=3.8" -groups = ["dev"] -markers = "python_version >= \"3.10\"" files = [ {file = "types-requests-2.32.0.20241016.tar.gz", hash = "sha256:0d9cad2f27515d0e3e3da7134a1b6f28fb97129d86b867f24d9c726452634d95"}, {file = "types_requests-2.32.0.20241016-py3-none-any.whl", hash = "sha256:4195d62d6d3e043a4eaaf08ff8a62184584d2e8684e9d2aa178c7915a7da3747"}, @@ -4154,7 +3951,6 @@ version = "75.8.0.20250110" description = "Typing stubs for setuptools" optional = false python-versions = ">=3.8" -groups = ["dev"] files = [ {file = "types_setuptools-75.8.0.20250110-py3-none-any.whl", hash = "sha256:a9f12980bbf9bcdc23ecd80755789085bad6bfce4060c2275bc2b4ca9f2bc480"}, {file = "types_setuptools-75.8.0.20250110.tar.gz", hash = "sha256:96f7ec8bbd6e0a54ea180d66ad68ad7a1d7954e7281a710ea2de75e355545271"}, @@ -4166,8 +3962,6 @@ version = "1.26.25.14" description = "Typing stubs for urllib3" optional = false python-versions = "*" -groups = ["dev"] -markers = "python_version < \"3.10\"" files = [ {file = "types-urllib3-1.26.25.14.tar.gz", hash = "sha256:229b7f577c951b8c1b92c1bc2b2fdb0b49847bd2af6d1cc2a2e3dd340f3bda8f"}, {file = "types_urllib3-1.26.25.14-py3-none-any.whl", hash = "sha256:9683bbb7fb72e32bfe9d2be6e04875fbe1b3eeec3cbb4ea231435aa7fd6b4f0e"}, @@ -4179,7 +3973,6 @@ version = "4.13.2" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "typing_extensions-4.13.2-py3-none-any.whl", hash = "sha256:a439e7c04b49fec3e5d3e2beaa21755cadbbdc391694e28ccdd36ca4a1408f8c"}, {file = "typing_extensions-4.13.2.tar.gz", hash = "sha256:e6c81219bd689f51865d9e372991c540bda33a0379d5573cddb9a3a23f7caaef"}, @@ -4191,8 +3984,6 @@ version = "0.4.0" description = "Runtime typing introspection tools" optional = true python-versions = ">=3.9" -groups = ["main"] -markers = "python_version >= \"3.10\" and extra == \"proxy\"" files = [ {file = "typing_inspection-0.4.0-py3-none-any.whl", hash = "sha256:50e72559fcd2a6367a19f7a7e610e6afcb9fac940c650290eed893d61386832f"}, {file = "typing_inspection-0.4.0.tar.gz", hash = "sha256:9765c87de36671694a67904bf2c96e395be9c6439bb6c87b5142569dcdd65122"}, @@ -4207,8 +3998,6 @@ version = "2025.2" description = "Provider of IANA time zone data" optional = true python-versions = ">=2" -groups = ["main"] -markers = "extra == \"proxy\" and platform_system == \"Windows\"" files = [ {file = "tzdata-2025.2-py2.py3-none-any.whl", hash = "sha256:1a403fada01ff9221ca8044d701868fa132215d84beb92242d9acd2147f667a8"}, {file = "tzdata-2025.2.tar.gz", hash = "sha256:b60a638fcc0daffadf82fe0f57e53d06bdec2f36c4df66280ae79bce6bd6f2b9"}, @@ -4220,8 +4009,6 @@ version = "5.2" description = "tzinfo object for the local timezone" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "tzlocal-5.2-py3-none-any.whl", hash = "sha256:49816ef2fe65ea8ac19d19aa7a1ae0551c834303d5014c6d5a62e4cbda8047b8"}, {file = "tzlocal-5.2.tar.gz", hash = "sha256:8d399205578f1a9342816409cc1e46a93ebd5755e39ea2d85334bea911bf0e6e"}, @@ -4240,16 +4027,14 @@ version = "1.26.20" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" -groups = ["main", "dev", "proxy-dev"] -markers = "python_version < \"3.10\"" files = [ {file = "urllib3-1.26.20-py2.py3-none-any.whl", hash = "sha256:0ed14ccfbf1c30a9072c7ca157e4319b70d65f623e91e7b32fadb2853431016e"}, {file = "urllib3-1.26.20.tar.gz", hash = "sha256:40c2dc0c681e47eb8f90e7e27bf6ff7df2e677421fd46756da1161c39ca70d32"}, ] [package.extras] -brotli = ["brotli (==1.0.9) ; os_name != \"nt\" and python_version < \"3\" and platform_python_implementation == \"CPython\"", "brotli (>=1.0.9) ; python_version >= \"3\" and platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; (os_name != \"nt\" or python_version >= \"3\") and platform_python_implementation != \"CPython\"", "brotlipy (>=0.6.0) ; os_name == \"nt\" and python_version < \"3\""] -secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress ; python_version == \"2.7\"", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] +brotli = ["brotli (==1.0.9)", "brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] +secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] [[package]] @@ -4258,15 +4043,13 @@ version = "2.2.3" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] -markers = "python_version >= \"3.10\"" files = [ {file = "urllib3-2.2.3-py3-none-any.whl", hash = "sha256:ca899ca043dcb1bafa3e262d73aa25c465bfb49e0bd9dd5d59f1d0acba2f8fac"}, {file = "urllib3-2.2.3.tar.gz", hash = "sha256:e7d814a81dad81e6caf2ec9fdedb284ecc9c73076b62654547cc64ccdcae26e9"}, ] [package.extras] -brotli = ["brotli (>=1.0.9) ; platform_python_implementation == \"CPython\"", "brotlicffi (>=0.8.0) ; platform_python_implementation != \"CPython\""] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] h2 = ["h2 (>=4,<5)"] socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] zstd = ["zstandard (>=0.18.0)"] @@ -4277,8 +4060,6 @@ version = "0.29.0" description = "The lightning-fast ASGI server." optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "uvicorn-0.29.0-py3-none-any.whl", hash = "sha256:2c2aac7ff4f4365c206fd773a39bf4ebd1047c238f8b8268ad996829323473de"}, {file = "uvicorn-0.29.0.tar.gz", hash = "sha256:6a69214c0b6a087462412670b3ef21224fa48cae0e452b5883e8e8bdfdd11dd0"}, @@ -4290,7 +4071,7 @@ h11 = ">=0.8" typing-extensions = {version = ">=4.0", markers = "python_version < \"3.11\""} [package.extras] -standard = ["colorama (>=0.4) ; sys_platform == \"win32\"", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1) ; sys_platform != \"win32\" and sys_platform != \"cygwin\" and platform_python_implementation != \"PyPy\"", "watchfiles (>=0.13)", "websockets (>=10.4)"] +standard = ["colorama (>=0.4)", "httptools (>=0.5.0)", "python-dotenv (>=0.13)", "pyyaml (>=5.1)", "uvloop (>=0.14.0,!=0.15.0,!=0.15.1)", "watchfiles (>=0.13)", "websockets (>=10.4)"] [[package]] name = "uvloop" @@ -4298,8 +4079,6 @@ version = "0.21.0" description = "Fast implementation of asyncio event loop on top of libuv" optional = true python-versions = ">=3.8.0" -groups = ["main"] -markers = "sys_platform != \"win32\" and extra == \"proxy\"" files = [ {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:ec7e6b09a6fdded42403182ab6b832b71f4edaf7f37a9a0e371a01db5f0cb45f"}, {file = "uvloop-0.21.0-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:196274f2adb9689a289ad7d65700d37df0c0930fd8e4e743fa4834e850d7719d"}, @@ -4351,8 +4130,6 @@ version = "13.1" description = "An implementation of the WebSocket Protocol (RFC 6455 & 7692)" optional = true python-versions = ">=3.8" -groups = ["main"] -markers = "extra == \"proxy\"" files = [ {file = "websockets-13.1-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:f48c749857f8fb598fb890a75f540e3221d0976ed0bf879cf3c7eef34151acee"}, {file = "websockets-13.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c7e72ce6bda6fb9409cc1e8164dd41d7c91466fb599eb047cfda72fe758a34a7"}, @@ -4448,7 +4225,6 @@ version = "1.17.2" description = "Module for decorators, wrappers and monkey patching." optional = false python-versions = ">=3.8" -groups = ["dev", "proxy-dev"] files = [ {file = "wrapt-1.17.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:3d57c572081fed831ad2d26fd430d565b76aa277ed1d30ff4d40670b1c0dd984"}, {file = "wrapt-1.17.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:b5e251054542ae57ac7f3fba5d10bfff615b6c2fb09abeb37d2f1463f841ae22"}, @@ -4537,7 +4313,6 @@ version = "1.2.0" description = "WebSockets state-machine based protocol implementation" optional = false python-versions = ">=3.7.0" -groups = ["proxy-dev"] files = [ {file = "wsproto-1.2.0-py3-none-any.whl", hash = "sha256:b9acddd652b585d75b20477888c56642fdade28bdfd3579aa24a4d2c037dd736"}, {file = "wsproto-1.2.0.tar.gz", hash = "sha256:ad565f26ecb92588a3e43bc3d96164de84cd9902482b130d0ddbaa9664a85065"}, @@ -4552,7 +4327,6 @@ version = "1.15.2" description = "Yet another URL library" optional = false python-versions = ">=3.8" -groups = ["main"] files = [ {file = "yarl-1.15.2-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:e4ee8b8639070ff246ad3649294336b06db37a94bdea0d09ea491603e0be73b8"}, {file = "yarl-1.15.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a7cf963a357c5f00cb55b1955df8bbe68d2f2f65de065160a1c26b85a1e44172"}, @@ -4665,18 +4439,17 @@ version = "3.20.2" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false python-versions = ">=3.8" -groups = ["main", "dev", "proxy-dev"] files = [ {file = "zipp-3.20.2-py3-none-any.whl", hash = "sha256:a817ac80d6cf4b23bf7f2828b7cabf326f15a001bea8b1f9b49631780ba28350"}, {file = "zipp-3.20.2.tar.gz", hash = "sha256:bc9eb26f4506fda01b81bcde0ca78103b6e62f991b381fec825435c836edbc29"}, ] [package.extras] -check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1) ; sys_platform != \"cygwin\""] +check = ["pytest-checkdocs (>=2.4)", "pytest-ruff (>=0.2.1)"] cover = ["pytest-cov"] doc = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] enabler = ["pytest-enabler (>=2.2)"] -test = ["big-O", "importlib-resources ; python_version < \"3.9\"", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] +test = ["big-O", "importlib-resources", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-ignore-flaky"] type = ["pytest-mypy"] [extras] @@ -4684,6 +4457,6 @@ extra-proxy = ["azure-identity", "azure-keyvault-secrets", "google-cloud-kms", " proxy = ["PyJWT", "apscheduler", "backoff", "boto3", "cryptography", "fastapi", "fastapi-sso", "gunicorn", "litellm-enterprise", "litellm-proxy-extras", "mcp", "orjson", "pynacl", "python-multipart", "pyyaml", "rich", "rq", "uvicorn", "uvloop", "websockets"] [metadata] -lock-version = "2.1" +lock-version = "2.0" python-versions = ">=3.8.1,<4.0, !=3.9.7" -content-hash = "2eb67698c4810b12b9c31ef478721b952236438764b5b52bcb67b97884b2320c" +content-hash = "0f7744f19071ff0cb922eceb6915f40d247c0ea740e6c066af94a8572e9a14ea" diff --git a/pyproject.toml b/pyproject.toml index 9dcbf3501a..f90131f8e6 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -55,7 +55,7 @@ websockets = {version = "^13.1.0", optional = true} boto3 = {version = "1.34.34", optional = true} redisvl = {version = "^0.4.1", optional = true, markers = "python_version >= '3.9' and python_version < '3.14'"} mcp = {version = "1.5.0", optional = true, python = ">=3.10"} -litellm-proxy-extras = {version = "0.1.18", optional = true} +litellm-proxy-extras = {version = "0.1.19", optional = true} rich = {version = "13.7.1", optional = true} litellm-enterprise = {version = "0.1.1", optional = true} diff --git a/requirements.txt b/requirements.txt index 08ed4c7534..b93ee3c4b5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -37,7 +37,7 @@ sentry_sdk==2.21.0 # for sentry error handling detect-secrets==1.5.0 # Enterprise - secret detection / masking in LLM requests cryptography==43.0.1 tzdata==2025.1 # IANA time zone database -litellm-proxy-extras==0.1.18 # for proxy extras - e.g. prisma migrations +litellm-proxy-extras==0.1.19 # for proxy extras - e.g. prisma migrations ### LITELLM PACKAGE DEPENDENCIES python-dotenv==1.0.0 # for env tiktoken==0.8.0 # for calculating usage