From 1483aebed5d8c3e68453061a82c1a537432e6668 Mon Sep 17 00:00:00 2001 From: augray Date: Thu, 19 Dec 2024 09:14:18 -0500 Subject: [PATCH] Update python support (add 3.13) (#1143) Add support for python 3.13. Not all of the dependencies we have for examples have support for 3.13 on all platforms, so some tests need to be skipped in that case. Also update the Sematic worker image to use ubuntu 24.04 and python 3.12. Leaving Sematic server at 3.12, because the Sematic EE image needs Ray, which doesn't have full support for 3.13 yet. Testing ------- In addition to the new CI unit tests, ran the `add` example in the cloud with a newly pushed Sematic worker base image. --- .github/workflows/test.yaml | 15 +- README.md | 2 +- docker/Dockerfile.worker | 8 +- docs/get-started.md | 2 +- pyproject.toml | 50 +- sematic/conftest.py | 20 + sematic/examples/add/__main__.yaml | 2 +- sematic/plugins/building/docker_builder.py | 2 +- .../tests/fixtures/docker/Dockerfile.basic | 2 +- .../tests/fixtures/docker/Dockerfile.data | 2 +- .../tests/fixtures/docker/Dockerfile.full | 2 +- .../fixtures/docker/Dockerfile.requirements | 2 +- .../tests/fixtures/docker/Dockerfile.src | 2 +- .../tests/fixtures/docker/Dockerfile.target | 2 +- .../types/types/snowflake/snowflake_table.py | 2 +- sematic/utils/git.py | 2 +- uv.lock | 656 +++++++++--------- 17 files changed, 402 insertions(+), 371 deletions(-) create mode 100644 sematic/conftest.py diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 5da8b2262..15147b329 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -8,7 +8,10 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - py-version: ["3.9", "3.12"] + # 3.9: minimum version supported + # 3.12 maximum version that supports all dependencies required for examples + # 3.13: maximum version supported + py-version: ["3.9", "3.12", "3.13"] steps: - name: Checkout code uses: actions/checkout@v4 @@ -19,6 +22,8 @@ jobs: - name: Lint run: uvx ruff check --fix sematic - name: MyPy + # Use 3.12 for type checking because 3.13 doesn't have all + # example libraries. if: matrix.py-version == '3.12' run: uv run mypy -p sematic --disable-error-code import-untyped - name: Test @@ -27,21 +32,21 @@ jobs: python3 -c "import sys; print(sys.version)" pytest - name: Check Schemas - if: matrix.py-version == '3.12' + if: matrix.py-version == '3.13' run: git checkout . && make migrate_up_sqlite && make update-schema && git diff --exit-code - name: Wheel - if: matrix.py-version == '3.12' + if: matrix.py-version == '3.13' run: | make ui make uv-wheel - uses: actions/upload-artifact@v4 - if: matrix.py-version == '3.12' + if: matrix.py-version == '3.13' with: name: sematic-wheel path: "./dist/sematic-*.whl" retention-days: 10 - uses: actions/upload-artifact@v4 - if: matrix.py-version == '3.12' + if: matrix.py-version == '3.13' with: name: sematic-wheel-test path: "sematic/tests/integration/test_pip_install.sh" diff --git a/README.md b/README.md index dbc00f9ed..ed08e5d93 100644 --- a/README.md +++ b/README.md @@ -7,11 +7,11 @@ ![PyPI](https://img.shields.io/pypi/v/sematic/0.40.0?style=for-the-badge) [![CircleCI](https://img.shields.io/circleci/build/github/sematic-ai/sematic/main?label=CircleCI&style=for-the-badge&token=60d1953bfee5b6bf8201f8e84a10eaa5bf5622fe)](https://app.circleci.com/pipelines/github/sematic-ai/sematic?branch=main&filter=all) ![PyPI - License](https://img.shields.io/pypi/l/sematic?style=for-the-badge) -[![Python 3.8](https://img.shields.io/badge/Python-3.8-blue?style=for-the-badge&logo=none)](https://python.org) [![Python 3.9](https://img.shields.io/badge/Python-3.9-blue?style=for-the-badge&logo=none)](https://python.org) [![Python 3.10](https://img.shields.io/badge/Python-3.10-blue?style=for-the-badge&logo=none)](https://python.org) [![Python 3.11](https://img.shields.io/badge/Python-3.11-blue?style=for-the-badge&logo=none)](https://python.org) [![Python 3.12](https://img.shields.io/badge/Python-3.12-blue?style=for-the-badge&logo=none)](https://python.org) +[![Python 3.13](https://img.shields.io/badge/Python-3.13-blue?style=for-the-badge&logo=none)](https://python.org) ![Discord](https://img.shields.io/discord/983789877927747714?label=DISCORD&style=for-the-badge) [![Made By Sematic](https://img.shields.io/badge/Made_by-Sematic_🦊-E19632?style=for-the-badge&logo=none)](https://sematic.dev) ![PyPI - Downloads](https://img.shields.io/pypi/dm/sematic?style=for-the-badge) diff --git a/docker/Dockerfile.worker b/docker/Dockerfile.worker index 6e43cf4dc..52694af7c 100644 --- a/docker/Dockerfile.worker +++ b/docker/Dockerfile.worker @@ -1,5 +1,5 @@ # This is the base image for the worker for cloud execution -FROM ubuntu:22.04 +FROM ubuntu:24.04 #FROM nvidia/cuda:11.7.0-base-ubuntu22.04 ARG DEBIAN_FRONTEND=noninteractive @@ -8,8 +8,8 @@ ENV PATH="/sematic/bin/:${PATH}" RUN apt-get update -y RUN apt-get install -y software-properties-common RUN add-apt-repository -y ppa:deadsnakes/ppa -RUN apt-get install -y python3.9 +RUN apt-get install -y python3.11 RUN rm /usr/bin/python3 -RUN ln -s /usr/bin/python3.9 /usr/bin/python3 -RUN ln -s /usr/bin/python3.9 /usr/bin/python +RUN ln -s /usr/bin/python3.11 /usr/bin/python3 +RUN ln -s /usr/bin/python3.11 /usr/bin/python diff --git a/docs/get-started.md b/docs/get-started.md index 0a027014f..fa49029f3 100644 --- a/docs/get-started.md +++ b/docs/get-started.md @@ -6,7 +6,7 @@ Sematic currently supports Linux and MacOS. If you're using Windows, you can run Sematic in [Windows Subsystem for Linux](https://docs.microsoft.com/en-us/windows/wsl/about). -Python versions `3.8` - `3.12` are supported. +Python versions `3.9` - `3.13` are supported. ## Installation diff --git a/pyproject.toml b/pyproject.toml index 122457d8f..a49972243 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,7 +4,7 @@ description = "Sematic ML orchestration tool" # The formatting of this line must be maintained for version testing. version = "0.40.0" -requires-python = ">=3.9, <3.13" +requires-python = ">=3.9, <3.14" dependencies = [ # System "ipython==8.2.0", @@ -77,28 +77,32 @@ sematic = "sematic.cli.main:cli" [project.optional-dependencies] examples = [ # Examples - "snowflake-connector-python==3.12.4", + # Most libraries that require python version < 3.13 + # are marked as such because they do not yet have + # full support for python 3.13. Once they do, this restriction + # can be removed. + "snowflake-connector-python==3.12.4; python_version < '3.13'", "pyOpenSSL>=23.0.0", - "pyarrow>=12.0.0", + "pyarrow>=12.0.0; python_version < '3.13'", "python-magic==0.4.27", - "torch>=1.13.1", - "torchvision>=0.14.1", - "pytorch-lightning>=1.6.5", - "ray-lightning>=0.3.0", - "plotly==5.13.0", - "pandas>=1.5.3", - "seaborn>=0.12.2", - "matplotlib>=3.7.0", - "statsmodels>=0.13.5", - "scikit-learn>=1.2.1", - "numpy>=1.24.0", - "xgboost>=1.7.3", - "accelerate==0.19.0", - "datasets>=2.12.0", + "torch>=1.13.1; python_version < '3.13'", + "torchvision>=0.14.1; python_version < '3.13'", + "pytorch-lightning>=1.6.5; python_version < '3.13'", + "ray-lightning>=0.3.0; python_version < '3.13'", + "plotly==5.13.0; python_version < '3.13'", + "pandas>=1.5.3; python_version < '3.13'", + "seaborn>=0.12.2; python_version < '3.13'", + "matplotlib>=3.7.0; python_version < '3.13'", + "statsmodels>=0.13.5; python_version < '3.13'", + "scikit-learn>=1.2.1; python_version < '3.13'", + "numpy>=1.24.0; python_version < '3.13'", + "xgboost>=1.7.3; python_version < '3.13'", + "accelerate==0.19.0; python_version < '3.13'", + "datasets>=2.12.0; python_version < '3.13'", "huggingface-hub>=0.14.1", - "peft>=0.3.0", - "transformers>=4.29.2", - "gradio>=3.35.2", + "peft>=0.3.0; python_version < '3.13'", + "transformers>=4.29.2; python_version < '3.13'", + "gradio>=3.35.2; python_version < '3.13'", "trafilatura>=1.6.0", "cohere>=4.9.0", "openai>=0.27.8", @@ -111,18 +115,18 @@ ray = [ # mean our wheel depends on it, nor does it imply that users # will/will not have ray[air]. This is only about what is present # in Sematic's dev workspace. - "ray[default,air]>=2.3.0", + "ray[default,air]>=2.3.0; python_version < '3.13'", ] all = [ - "ray[default,air]>=2.3.0", + "ray[default,air]>=2.3.0; python_version < '3.13'", ] [tool.uv] dev-dependencies = [ "testing-postgresql>=1.3.0", "debugpy>=1.6.6", - "pandas-stubs>=2.2.2", + "pandas-stubs>=2.2.2; python_version < '3.13'", "mypy==1.11.1", "ruff-lsp==0.0.35", "python-lsp-ruff>=2.2.2", diff --git a/sematic/conftest.py b/sematic/conftest.py new file mode 100644 index 000000000..f8d82055b --- /dev/null +++ b/sematic/conftest.py @@ -0,0 +1,20 @@ +import sys +from typing import List + + +MAX_PY_VERSIONS = { + # These tests depend on libraries that do not yet have + # full support for python 3.13. Once they do, they can be added + # back into the test suite. + "ee/plugins/external_resource/ray/tests/test_checkpoint.py": (3, 13), + "ee/plugins/external_resource/ray/tests/test_cluster.py": (3, 13), + "types/types/snowflake/tests/test_snowflake_table.py": (3, 13), + "types/types/matplotlib/tests/test_figure.py": (3, 13), + "types/types/pandas/tests/test_dataframe.py": (3, 13), +} + +collect_ignore: List[str] = [] + +for path, max_version in MAX_PY_VERSIONS.items(): + if sys.version_info >= max_version: + collect_ignore.append(path) diff --git a/sematic/examples/add/__main__.yaml b/sematic/examples/add/__main__.yaml index cebdebaf2..69b034a15 100644 --- a/sematic/examples/add/__main__.yaml +++ b/sematic/examples/add/__main__.yaml @@ -1,5 +1,5 @@ version: 1 -base_uri: "sematicai/sematic-worker-base:latest@sha256:bea3926876a3024c33fe08e0a6b2c0377a7eb600d7b3061a3f3f39d711152e3c" +base_uri: "sematicai/sematic-worker-base:latest@sha256:ce9212acf0ca223c55d55cd91db1a11e1f971adca6817a068f00516264b3cc2b" build: platform: "linux/amd64" requirements: "requirements.txt" diff --git a/sematic/plugins/building/docker_builder.py b/sematic/plugins/building/docker_builder.py index 33d82f5d2..75ded68fd 100644 --- a/sematic/plugins/building/docker_builder.py +++ b/sematic/plugins/building/docker_builder.py @@ -96,7 +96,7 @@ RUN python3 -c "import sematic" || \ ( \ export PYTHONDONTWRITEBYTECODE=1 && \ -pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic && \ +pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic cffi && \ unset PYTHONDONTWRITEBYTECODE \ ) diff --git a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.basic b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.basic index c0f71d996..bee277a62 100644 --- a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.basic +++ b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.basic @@ -8,6 +8,6 @@ RUN python3 -c "from distutils import cmd, util" || ( apt-get update -y && apt-g RUN which pip || ( export PYTHONDONTWRITEBYTECODE=1 && apt-get update -y && apt-get install -y --no-install-recommends wget && wget --no-verbose -O get-pip.py https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py && rm get-pip.py && unset PYTHONDONTWRITEBYTECODE ) -RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic && unset PYTHONDONTWRITEBYTECODE ) +RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic cffi && unset PYTHONDONTWRITEBYTECODE ) ENV PATH="/sematic/bin/:$PATH" diff --git a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.data b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.data index 23d694eca..b82192e97 100644 --- a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.data +++ b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.data @@ -15,7 +15,7 @@ COPY sematic/plugins/building/tests/fixtures/docker/Dockerfile.requirements sema COPY sematic/plugins/building/tests/fixtures/docker/Dockerfile.src sematic/plugins/building/tests/fixtures/docker/Dockerfile.src COPY sematic/plugins/building/tests/fixtures/docker/Dockerfile.target sematic/plugins/building/tests/fixtures/docker/Dockerfile.target -RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic && unset PYTHONDONTWRITEBYTECODE ) +RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic cffi && unset PYTHONDONTWRITEBYTECODE ) ENV PATH="/sematic/bin/:$PATH" diff --git a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.full b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.full index a24dd0856..50d1b7335 100644 --- a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.full +++ b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.full @@ -18,7 +18,7 @@ COPY sematic/plugins/building/tests/fixtures/nested/third_level/third_level.txt COPY sematic/plugins/building/tests/fixtures/requirements.txt requirements.txt RUN pip install --no-cache-dir --ignore-installed --root-user-action=ignore -r requirements.txt -RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic && unset PYTHONDONTWRITEBYTECODE ) +RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic cffi && unset PYTHONDONTWRITEBYTECODE ) ENV PATH="/sematic/bin/:$PATH" diff --git a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.requirements b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.requirements index 2f5356fb7..e042fbb3c 100644 --- a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.requirements +++ b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.requirements @@ -11,7 +11,7 @@ RUN which pip || ( export PYTHONDONTWRITEBYTECODE=1 && apt-get update -y && apt- COPY sematic/plugins/building/tests/fixtures/requirements.txt requirements.txt RUN pip install --no-cache-dir --ignore-installed --root-user-action=ignore -r requirements.txt -RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic && unset PYTHONDONTWRITEBYTECODE ) +RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic cffi && unset PYTHONDONTWRITEBYTECODE ) ENV PATH="/sematic/bin/:$PATH" diff --git a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.src b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.src index d9b078e94..5ca435a64 100644 --- a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.src +++ b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.src @@ -8,7 +8,7 @@ RUN python3 -c "from distutils import cmd, util" || ( apt-get update -y && apt-g RUN which pip || ( export PYTHONDONTWRITEBYTECODE=1 && apt-get update -y && apt-get install -y --no-install-recommends wget && wget --no-verbose -O get-pip.py https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py && rm get-pip.py && unset PYTHONDONTWRITEBYTECODE ) -RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic && unset PYTHONDONTWRITEBYTECODE ) +RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic cffi && unset PYTHONDONTWRITEBYTECODE ) ENV PATH="/sematic/bin/:$PATH" diff --git a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.target b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.target index 7ec7bd86c..873681d2b 100644 --- a/sematic/plugins/building/tests/fixtures/docker/Dockerfile.target +++ b/sematic/plugins/building/tests/fixtures/docker/Dockerfile.target @@ -8,7 +8,7 @@ RUN python3 -c "from distutils import cmd, util" || ( apt-get update -y && apt-g RUN which pip || ( export PYTHONDONTWRITEBYTECODE=1 && apt-get update -y && apt-get install -y --no-install-recommends wget && wget --no-verbose -O get-pip.py https://bootstrap.pypa.io/get-pip.py && python3 get-pip.py && rm get-pip.py && unset PYTHONDONTWRITEBYTECODE ) -RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic && unset PYTHONDONTWRITEBYTECODE ) +RUN python3 -c "import sematic" || ( export PYTHONDONTWRITEBYTECODE=1 && pip install --no-cache-dir --ignore-installed --root-user-action=ignore sematic cffi && unset PYTHONDONTWRITEBYTECODE ) ENV PATH="/sematic/bin/:$PATH" diff --git a/sematic/types/types/snowflake/snowflake_table.py b/sematic/types/types/snowflake/snowflake_table.py index 677666a3c..90fde41bf 100644 --- a/sematic/types/types/snowflake/snowflake_table.py +++ b/sematic/types/types/snowflake/snowflake_table.py @@ -9,7 +9,7 @@ # Third-party import pandas import pyarrow # type: ignore # noqa: F401 - import snowflake.connector + import snowflake.connector # type: ignore except ImportError as e: print( "You are attempting to use SnowflakeTable which requires the following dependencies:" # noqa: E501 diff --git a/sematic/utils/git.py b/sematic/utils/git.py index 87b8949c3..d7a1ea1e9 100644 --- a/sematic/utils/git.py +++ b/sematic/utils/git.py @@ -30,7 +30,7 @@ def get_git_info(object_: Any) -> Optional[GitInfo]: # Third-party import git # type: ignore except ImportError as e: - logger.warn("Could not get git information", exc_info=e) + logger.warning("Could not get git information", exc_info=e) return None # try to search the path ancestors of the given object's source code for a git repo diff --git a/uv.lock b/uv.lock index 296daf00b..c840fcb17 100644 --- a/uv.lock +++ b/uv.lock @@ -1,14 +1,16 @@ version = 1 -requires-python = ">=3.9, <3.13" +requires-python = ">=3.9, <3.14" resolution-markers = [ "python_full_version < '3.10' and platform_machine == 'x86_64' and sys_platform == 'darwin'", "(python_full_version < '3.10' and platform_machine != 'x86_64') or (python_full_version < '3.10' and sys_platform != 'darwin')", "python_full_version == '3.10.*' and platform_machine == 'x86_64' and sys_platform == 'darwin'", "python_full_version == '3.11.*' and platform_machine == 'x86_64' and sys_platform == 'darwin'", - "python_full_version >= '3.12' and platform_machine == 'x86_64' and sys_platform == 'darwin'", + "python_full_version == '3.12.*' and platform_machine == 'x86_64' and sys_platform == 'darwin'", + "python_full_version >= '3.13' and platform_machine == 'x86_64' and sys_platform == 'darwin'", "(python_full_version == '3.10.*' and platform_machine != 'x86_64') or (python_full_version == '3.10.*' and sys_platform != 'darwin')", "(python_full_version == '3.11.*' and platform_machine != 'x86_64') or (python_full_version == '3.11.*' and sys_platform != 'darwin')", - "(python_full_version >= '3.12' and platform_machine != 'x86_64') or (python_full_version >= '3.12' and sys_platform != 'darwin')", + "(python_full_version == '3.12.*' and platform_machine != 'x86_64') or (python_full_version == '3.12.*' and sys_platform != 'darwin')", + "(python_full_version >= '3.13' and platform_machine != 'x86_64') or (python_full_version >= '3.13' and sys_platform != 'darwin')", ] [[package]] @@ -25,11 +27,11 @@ name = "accelerate" version = "0.19.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "packaging" }, - { name = "psutil" }, - { name = "pyyaml" }, - { name = "torch" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "psutil", marker = "python_full_version < '3.13'" }, + { name = "pyyaml", marker = "python_full_version < '3.13'" }, + { name = "torch", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/19/c1/7cc5d2abd376ca51215e1f5e9ec182cc5b5f77f53db680310f09fdb23478/accelerate-0.19.0.tar.gz", hash = "sha256:84920226b9e642e453ef37593ee55b956b08d8200dea4087c546c34e26157e76", size = 204224 } wheels = [ @@ -59,14 +61,14 @@ name = "aiohttp" version = "3.11.10" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "aiohappyeyeballs" }, - { name = "aiosignal" }, + { name = "aiohappyeyeballs", marker = "python_full_version < '3.13'" }, + { name = "aiosignal", marker = "python_full_version < '3.13'" }, { name = "async-timeout", marker = "python_full_version < '3.11'" }, - { name = "attrs" }, - { name = "frozenlist" }, - { name = "multidict" }, - { name = "propcache" }, - { name = "yarl" }, + { name = "attrs", marker = "python_full_version < '3.13'" }, + { name = "frozenlist", marker = "python_full_version < '3.13'" }, + { name = "multidict", marker = "python_full_version < '3.13'" }, + { name = "propcache", marker = "python_full_version < '3.13'" }, + { name = "yarl", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/94/c4/3b5a937b16f6c2a0ada842a9066aad0b7a5708427d4a202a07bf09c67cbb/aiohttp-3.11.10.tar.gz", hash = "sha256:b1fc6b45010a8d0ff9e88f9f2418c6fd408c99c211257334aff41597ebece42e", size = 7668832 } wheels = [ @@ -152,7 +154,7 @@ name = "aiohttp-cors" version = "0.7.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "aiohttp" }, + { name = "aiohttp", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/44/9e/6cdce7c3f346d8fd487adf68761728ad8cd5fbc296a7b07b92518350d31f/aiohttp-cors-0.7.0.tar.gz", hash = "sha256:4d39c6d7100fd9764ed1caf8cebf0eb01bf5e3f24e2e073fda6234bc48b19f5d", size = 35966 } wheels = [ @@ -164,7 +166,7 @@ name = "aiosignal" version = "1.3.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "frozenlist" }, + { name = "frozenlist", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ae/67/0952ed97a9793b4958e5736f6d2b346b414a2cd63e82d05940032f45b32f/aiosignal-1.3.1.tar.gz", hash = "sha256:54cd96e15e1649b75d6c87526a6ff0b6c1b0dd3459f43d9ca11d48c339b68cfc", size = 19422 } wheels = [ @@ -176,11 +178,11 @@ name = "altair" version = "5.5.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "jinja2" }, - { name = "jsonschema" }, - { name = "narwhals" }, - { name = "packaging" }, - { name = "typing-extensions" }, + { name = "jinja2", marker = "python_full_version < '3.13'" }, + { name = "jsonschema", marker = "python_full_version < '3.13'" }, + { name = "narwhals", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/16/b1/f2969c7bdb8ad8bbdda031687defdce2c19afba2aa2c8e1d2a17f78376d8/altair-5.5.0.tar.gz", hash = "sha256:d960ebe6178c56de3855a68c47b516be38640b73fb3b5111c2a9ca90546dd73d", size = 705305 } wheels = [ @@ -204,7 +206,7 @@ dependencies = [ { name = "exceptiongroup", marker = "python_full_version < '3.11'" }, { name = "idna" }, { name = "sniffio" }, - { name = "typing-extensions" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/f6/40/318e58f669b1a9e00f5c4453910682e2d9dd594334539c7b7817dabb765f/anyio-4.7.0.tar.gz", hash = "sha256:2f834749c602966b7d456a7567cafcb309f96482b5081d14ac93ccd457f9dd48", size = 177076 } wheels = [ @@ -573,7 +575,7 @@ name = "colorful" version = "0.5.6" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "colorama", marker = "platform_system == 'Windows'" }, + { name = "colorama", marker = "python_full_version < '3.13' and platform_system == 'Windows'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/fa/5f/38e40c3bc4107c39e4062d943026b8ee25154cb4b185b882f274a1ab65da/colorful-0.5.6.tar.gz", hash = "sha256:b56d5c01db1dac4898308ea889edcb113fbee3e6ec5df4bacffd61d5241b5b8d", size = 209280 } wheels = [ @@ -585,7 +587,7 @@ name = "contourpy" version = "1.3.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/f5/f6/31a8f28b4a2a4fa0e01085e542f3081ab0588eff8e589d39d775172c9792/contourpy-1.3.0.tar.gz", hash = "sha256:7ffa0db17717a8ffb127efd0c95a4362d996b892c2904db72428d5b52e1938a4", size = 13464370 } wheels = [ @@ -720,19 +722,19 @@ name = "datasets" version = "2.14.4" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "aiohttp" }, - { name = "dill" }, - { name = "fsspec", extra = ["http"] }, - { name = "huggingface-hub" }, - { name = "multiprocess" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "pandas" }, - { name = "pyarrow" }, - { name = "pyyaml" }, - { name = "requests" }, - { name = "tqdm" }, - { name = "xxhash" }, + { name = "aiohttp", marker = "python_full_version < '3.13'" }, + { name = "dill", marker = "python_full_version < '3.13'" }, + { name = "fsspec", extra = ["http"], marker = "python_full_version < '3.13'" }, + { name = "huggingface-hub", marker = "python_full_version < '3.13'" }, + { name = "multiprocess", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "pandas", marker = "python_full_version < '3.13'" }, + { name = "pyarrow", marker = "python_full_version < '3.13'" }, + { name = "pyyaml", marker = "python_full_version < '3.13'" }, + { name = "requests", marker = "python_full_version < '3.13'" }, + { name = "tqdm", marker = "python_full_version < '3.13'" }, + { name = "xxhash", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/1d/69/8cc725b5d38968fd118e4ce56a483b16e75b7793854c1a392ec4a34eeb31/datasets-2.14.4.tar.gz", hash = "sha256:ef29c2b5841de488cd343cfc26ab979bff77efa4d2285af51f1ad7db5c46a83b", size = 2178719 } wheels = [ @@ -874,9 +876,9 @@ name = "fastapi" version = "0.115.6" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "pydantic" }, - { name = "starlette" }, - { name = "typing-extensions" }, + { name = "pydantic", marker = "python_full_version < '3.13'" }, + { name = "starlette", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/93/72/d83b98cd106541e8f5e5bfab8ef2974ab45a62e8a6c5b5e6940f26d2ed4b/fastapi-0.115.6.tar.gz", hash = "sha256:9ec46f7addc14ea472958a96aae5b5de65f39721a46aaf5705c480d9a8b76654", size = 301336 } wheels = [ @@ -1106,7 +1108,7 @@ wheels = [ [package.optional-dependencies] http = [ - { name = "aiohttp" }, + { name = "aiohttp", marker = "python_full_version < '3.13'" }, ] [[package]] @@ -1268,32 +1270,32 @@ name = "gradio" version = "3.36.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "aiofiles" }, - { name = "aiohttp" }, - { name = "altair" }, - { name = "fastapi" }, - { name = "ffmpy" }, - { name = "gradio-client" }, - { name = "httpx" }, - { name = "huggingface-hub" }, - { name = "jinja2" }, - { name = "markdown-it-py", extra = ["linkify"] }, - { name = "markupsafe" }, - { name = "matplotlib" }, - { name = "mdit-py-plugins" }, - { name = "numpy" }, - { name = "orjson" }, - { name = "pandas" }, - { name = "pillow" }, - { name = "pydantic" }, - { name = "pydub" }, - { name = "pygments" }, - { name = "python-multipart" }, - { name = "pyyaml" }, - { name = "requests" }, - { name = "semantic-version" }, - { name = "uvicorn" }, - { name = "websockets" }, + { name = "aiofiles", marker = "python_full_version < '3.13'" }, + { name = "aiohttp", marker = "python_full_version < '3.13'" }, + { name = "altair", marker = "python_full_version < '3.13'" }, + { name = "fastapi", marker = "python_full_version < '3.13'" }, + { name = "ffmpy", marker = "python_full_version < '3.13'" }, + { name = "gradio-client", marker = "python_full_version < '3.13'" }, + { name = "httpx", marker = "python_full_version < '3.13'" }, + { name = "huggingface-hub", marker = "python_full_version < '3.13'" }, + { name = "jinja2", marker = "python_full_version < '3.13'" }, + { name = "markdown-it-py", extra = ["linkify"], marker = "python_full_version < '3.13'" }, + { name = "markupsafe", marker = "python_full_version < '3.13'" }, + { name = "matplotlib", marker = "python_full_version < '3.13'" }, + { name = "mdit-py-plugins", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "orjson", marker = "python_full_version < '3.13'" }, + { name = "pandas", marker = "python_full_version < '3.13'" }, + { name = "pillow", marker = "python_full_version < '3.13'" }, + { name = "pydantic", marker = "python_full_version < '3.13'" }, + { name = "pydub", marker = "python_full_version < '3.13'" }, + { name = "pygments", marker = "python_full_version < '3.13'" }, + { name = "python-multipart", marker = "python_full_version < '3.13'" }, + { name = "pyyaml", marker = "python_full_version < '3.13'" }, + { name = "requests", marker = "python_full_version < '3.13'" }, + { name = "semantic-version", marker = "python_full_version < '3.13'" }, + { name = "uvicorn", marker = "python_full_version < '3.13'" }, + { name = "websockets", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/70/cc/608a9116e7841d3fc7c7c827a299a1ce7990acbee034504041c303b29509/gradio-3.36.1.tar.gz", hash = "sha256:1d821cee15da066c24c197248ba9aaed5f5e59505d17754561c2f96f90e73a89", size = 20382326 } wheels = [ @@ -1305,12 +1307,12 @@ name = "gradio-client" version = "1.3.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "fsspec" }, - { name = "httpx" }, - { name = "huggingface-hub" }, - { name = "packaging" }, - { name = "typing-extensions" }, - { name = "websockets" }, + { name = "fsspec", marker = "python_full_version < '3.13'" }, + { name = "httpx", marker = "python_full_version < '3.13'" }, + { name = "huggingface-hub", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, + { name = "websockets", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/7b/86/2697930b274a5c8479a44dcb65c02d7e7445e5d88a72524a0a65593cbb58/gradio_client-1.3.0.tar.gz", hash = "sha256:d904afeae4f5682add0a6a263542c10e7669ff6c9de0a53a5c2fc9b719a24bb8", size = 316713 } wheels = [ @@ -1747,10 +1749,10 @@ name = "jsonschema" version = "4.23.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "attrs" }, - { name = "jsonschema-specifications" }, - { name = "referencing" }, - { name = "rpds-py" }, + { name = "attrs", marker = "python_full_version < '3.13'" }, + { name = "jsonschema-specifications", marker = "python_full_version < '3.13'" }, + { name = "referencing", marker = "python_full_version < '3.13'" }, + { name = "rpds-py", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/38/2e/03362ee4034a4c917f697890ccd4aec0800ccf9ded7f511971c75451deec/jsonschema-4.23.0.tar.gz", hash = "sha256:d71497fef26351a33265337fa77ffeb82423f3ea21283cd9467bb03999266bc4", size = 325778 } wheels = [ @@ -1762,7 +1764,7 @@ name = "jsonschema-specifications" version = "2024.10.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "referencing" }, + { name = "referencing", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/10/db/58f950c996c793472e336ff3655b13fbcf1e3b359dcf52dcf3ed3b52c352/jsonschema_specifications-2024.10.1.tar.gz", hash = "sha256:0f38b83639958ce1152d02a7f062902c41c8fd20d558b0c34344292d417ae272", size = 15561 } wheels = [ @@ -1908,9 +1910,9 @@ name = "lightning-utilities" version = "0.11.9" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "packaging" }, - { name = "setuptools" }, - { name = "typing-extensions" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "setuptools", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/8c/4d/54d38e237ab437f25f191602373d99b89d1d047ad2a3bb5ad0d84ea5daa6/lightning_utilities-0.11.9.tar.gz", hash = "sha256:f5052b81344cc2684aa9afd74b7ce8819a8f49a858184ec04548a5a109dfd053", size = 29362 } wheels = [ @@ -1922,7 +1924,7 @@ name = "linkify-it-py" version = "2.0.3" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "uc-micro-py" }, + { name = "uc-micro-py", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/2a/ae/bb56c6828e4797ba5a4821eec7c43b8bf40f69cda4d4f5f8c8a2810ec96a/linkify-it-py-2.0.3.tar.gz", hash = "sha256:68cda27e162e9215c17d786649d1da0021a451bdc436ef9e0fa0ba5234b9b048", size = 27946 } wheels = [ @@ -2081,7 +2083,7 @@ name = "markdown-it-py" version = "2.2.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "mdurl" }, + { name = "mdurl", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/e4/c0/59bd6d0571986f72899288a95d9d6178d0eebd70b6650f1bb3f0da90f8f7/markdown-it-py-2.2.0.tar.gz", hash = "sha256:7c9a5e412688bc771c67432cbfebcdd686c93ce6484913dccf06cb5a0bea35a1", size = 67120 } wheels = [ @@ -2090,10 +2092,10 @@ wheels = [ [package.optional-dependencies] linkify = [ - { name = "linkify-it-py" }, + { name = "linkify-it-py", marker = "python_full_version < '3.13'" }, ] plugins = [ - { name = "mdit-py-plugins" }, + { name = "mdit-py-plugins", marker = "python_full_version < '3.13'" }, ] [[package]] @@ -2169,16 +2171,16 @@ name = "matplotlib" version = "3.9.4" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "contourpy" }, - { name = "cycler" }, - { name = "fonttools" }, + { name = "contourpy", marker = "python_full_version < '3.13'" }, + { name = "cycler", marker = "python_full_version < '3.13'" }, + { name = "fonttools", marker = "python_full_version < '3.13'" }, { name = "importlib-resources", marker = "python_full_version < '3.10'" }, - { name = "kiwisolver" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "pillow" }, - { name = "pyparsing" }, - { name = "python-dateutil" }, + { name = "kiwisolver", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "pillow", marker = "python_full_version < '3.13'" }, + { name = "pyparsing", marker = "python_full_version < '3.13'" }, + { name = "python-dateutil", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/df/17/1747b4154034befd0ed33b52538f5eb7752d05bb51c5e2a31470c3bc7d52/matplotlib-3.9.4.tar.gz", hash = "sha256:1e00e8be7393cbdc6fedfa8a6fba02cf3e83814b285db1c60b906a023ba41bc3", size = 36106529 } wheels = [ @@ -2241,7 +2243,7 @@ name = "mdit-py-plugins" version = "0.3.3" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "markdown-it-py" }, + { name = "markdown-it-py", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/d4/2f/58f06f27e97c9aba61220aee827e0eeef9a89116c76ca7ea1d373c187b8e/mdit-py-plugins-0.3.3.tar.gz", hash = "sha256:5cfd7e7ac582a594e23ba6546a2f406e94e42eb33ae596d0734781261c251260", size = 38199 } wheels = [ @@ -2262,9 +2264,9 @@ name = "memray" version = "1.15.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "jinja2" }, - { name = "rich" }, - { name = "textual" }, + { name = "jinja2", marker = "python_full_version < '3.13'" }, + { name = "rich", marker = "python_full_version < '3.13'" }, + { name = "textual", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/e8/d3/b2a01137e2391917928187c4c2837c2750cc832c99a6aecd6e0d6ea07c58/memray-1.15.0.tar.gz", hash = "sha256:1beffa2bcba3dbe0f095d547927286eca46e272798b83026dd1b5db58e16ed56", size = 1025344 } wheels = [ @@ -2466,7 +2468,7 @@ name = "multiprocess" version = "0.70.15" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "dill" }, + { name = "dill", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/68/e0/a77ca96e772e13c828fa52f3ad370d413bef194aeaf78b7c6611870ad815/multiprocess-0.70.15.tar.gz", hash = "sha256:f20eed3036c0ef477b07a4177cf7c1ba520d9a2677870a4f47fe026f0cd6787e", size = 1894495 } wheels = [ @@ -2633,7 +2635,7 @@ name = "nvidia-cudnn-cu12" version = "9.1.0.70" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-cublas-cu12" }, + { name = "nvidia-cublas-cu12", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/9f/fd/713452cd72343f682b1c7b9321e23829f00b842ceaedcda96e742ea0b0b3/nvidia_cudnn_cu12-9.1.0.70-py3-none-manylinux2014_x86_64.whl", hash = "sha256:165764f44ef8c61fcdfdfdbe769d687e06374059fbb388b6c89ecb0e28793a6f", size = 664752741 }, @@ -2644,7 +2646,7 @@ name = "nvidia-cufft-cu12" version = "11.2.1.3" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-nvjitlink-cu12" }, + { name = "nvidia-nvjitlink-cu12", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/7a/8a/0e728f749baca3fbeffad762738276e5df60851958be7783af121a7221e7/nvidia_cufft_cu12-11.2.1.3-py3-none-manylinux2014_aarch64.whl", hash = "sha256:5dad8008fc7f92f5ddfa2101430917ce2ffacd86824914c82e28990ad7f00399", size = 211422548 }, @@ -2665,9 +2667,9 @@ name = "nvidia-cusolver-cu12" version = "11.6.1.9" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-cublas-cu12" }, - { name = "nvidia-cusparse-cu12" }, - { name = "nvidia-nvjitlink-cu12" }, + { name = "nvidia-cublas-cu12", marker = "python_full_version < '3.13'" }, + { name = "nvidia-cusparse-cu12", marker = "python_full_version < '3.13'" }, + { name = "nvidia-nvjitlink-cu12", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/46/6b/a5c33cf16af09166845345275c34ad2190944bcc6026797a39f8e0a282e0/nvidia_cusolver_cu12-11.6.1.9-py3-none-manylinux2014_aarch64.whl", hash = "sha256:d338f155f174f90724bbde3758b7ac375a70ce8e706d70b018dd3375545fc84e", size = 127634111 }, @@ -2679,7 +2681,7 @@ name = "nvidia-cusparse-cu12" version = "12.3.1.170" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "nvidia-nvjitlink-cu12" }, + { name = "nvidia-nvjitlink-cu12", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/96/a9/c0d2f83a53d40a4a41be14cea6a0bf9e668ffcf8b004bd65633f433050c0/nvidia_cusparse_cu12-12.3.1.170-py3-none-manylinux2014_aarch64.whl", hash = "sha256:9d32f62896231ebe0480efd8a7f702e143c98cfaa0e8a76df3386c1ba2b54df3", size = 207381987 }, @@ -2745,9 +2747,9 @@ name = "opencensus" version = "0.11.4" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "google-api-core" }, - { name = "opencensus-context" }, - { name = "six" }, + { name = "google-api-core", marker = "python_full_version < '3.13'" }, + { name = "opencensus-context", marker = "python_full_version < '3.13'" }, + { name = "six", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/15/a7/a46dcffa1b63084f9f17fe3c8cb20724c4c8f91009fd0b2cfdb27d5d2b35/opencensus-0.11.4.tar.gz", hash = "sha256:cbef87d8b8773064ab60e5c2a1ced58bbaa38a6d052c41aec224958ce544eff2", size = 64966 } wheels = [ @@ -2846,10 +2848,10 @@ name = "pandas" version = "2.2.3" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "python-dateutil" }, - { name = "pytz" }, - { name = "tzdata" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "python-dateutil", marker = "python_full_version < '3.13'" }, + { name = "pytz", marker = "python_full_version < '3.13'" }, + { name = "tzdata", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/9c/d6/9f8431bacc2e19dca897724cd097b1bb224a6ad5433784a44b587c7c13af/pandas-2.2.3.tar.gz", hash = "sha256:4f18ba62b61d7e192368b84517265a99b4d7ee8912f8708660fb4a366cc82667", size = 4399213 } wheels = [ @@ -2901,8 +2903,8 @@ name = "pandas-stubs" version = "2.2.2.240807" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "types-pytz" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "types-pytz", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/1f/df/0da95bc75c76f1e012e0bc0b76da31faaf4254e94b9870f25e6311145e98/pandas_stubs-2.2.2.240807.tar.gz", hash = "sha256:64a559725a57a449f46225fbafc422520b7410bff9252b661a225b5559192a93", size = 103095 } wheels = [ @@ -2941,7 +2943,7 @@ name = "patsy" version = "1.0.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/d1/81/74f6a65b848ffd16c18f920620ce999fe45fe27f01ab3911260ce4ed85e4/patsy-1.0.1.tar.gz", hash = "sha256:e786a9391eec818c054e359b737bbce692f051aee4c661f4141cc88fb459c0c4", size = 396010 } wheels = [ @@ -2953,15 +2955,15 @@ name = "peft" version = "0.5.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "accelerate" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "psutil" }, - { name = "pyyaml" }, - { name = "safetensors" }, - { name = "torch" }, - { name = "tqdm" }, - { name = "transformers" }, + { name = "accelerate", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "psutil", marker = "python_full_version < '3.13'" }, + { name = "pyyaml", marker = "python_full_version < '3.13'" }, + { name = "safetensors", marker = "python_full_version < '3.13'" }, + { name = "torch", marker = "python_full_version < '3.13'" }, + { name = "tqdm", marker = "python_full_version < '3.13'" }, + { name = "transformers", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/78/9f/169743c1da03a3d061afbd92c283fe2341885b946ae725477df184470962/peft-0.5.0.tar.gz", hash = "sha256:3cc03049ac6130426d82c22ca54cc6de849e7c6727181393e7751f7f512a9ced", size = 93754 } wheels = [ @@ -3098,7 +3100,7 @@ name = "plotly" version = "5.13.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "tenacity" }, + { name = "tenacity", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/24/49/b814634b778b792c48dbf162435c4be1ae99ca58d397a5cb4ae2088ba2f9/plotly-5.13.0.tar.gz", hash = "sha256:81a3aae4021d5ab91790fc71c3433791f41bfc71586e857f7777f429a955039a", size = 7600689 } wheels = [ @@ -3374,7 +3376,7 @@ name = "pyarrow" version = "17.0.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/27/4e/ea6d43f324169f8aec0e57569443a38bab4b398d09769ca64f7b4d467de3/pyarrow-17.0.0.tar.gz", hash = "sha256:4beca9521ed2c0921c1023e68d097d0299b62c362639ea315572a58f3f50fd28", size = 1112479 } wheels = [ @@ -3750,17 +3752,17 @@ name = "pytorch-lightning" version = "1.6.5" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "fsspec", extra = ["http"] }, - { name = "numpy" }, - { name = "packaging" }, - { name = "protobuf" }, - { name = "pydeprecate" }, - { name = "pyyaml" }, - { name = "tensorboard" }, - { name = "torch" }, - { name = "torchmetrics" }, - { name = "tqdm" }, - { name = "typing-extensions" }, + { name = "fsspec", extra = ["http"], marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "protobuf", marker = "python_full_version < '3.13'" }, + { name = "pydeprecate", marker = "python_full_version < '3.13'" }, + { name = "pyyaml", marker = "python_full_version < '3.13'" }, + { name = "tensorboard", marker = "python_full_version < '3.13'" }, + { name = "torch", marker = "python_full_version < '3.13'" }, + { name = "torchmetrics", marker = "python_full_version < '3.13'" }, + { name = "tqdm", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ba/6b/1b3ce55d6b83d68abfecabdd4e36e72ebbde1367c4a1d43aad809951ed50/pytorch-lightning-1.6.5.tar.gz", hash = "sha256:8d521f2619b9db2ada5bbaf9713330d01460e75a11e4bc0bc2ca25fd37c47c57", size = 486048 } wheels = [ @@ -3855,16 +3857,16 @@ name = "ray" version = "2.40.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "aiosignal" }, - { name = "click" }, - { name = "filelock" }, - { name = "frozenlist" }, - { name = "jsonschema" }, - { name = "msgpack" }, - { name = "packaging" }, - { name = "protobuf" }, - { name = "pyyaml" }, - { name = "requests" }, + { name = "aiosignal", marker = "python_full_version < '3.13'" }, + { name = "click", marker = "python_full_version < '3.13'" }, + { name = "filelock", marker = "python_full_version < '3.13'" }, + { name = "frozenlist", marker = "python_full_version < '3.13'" }, + { name = "jsonschema", marker = "python_full_version < '3.13'" }, + { name = "msgpack", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "protobuf", marker = "python_full_version < '3.13'" }, + { name = "pyyaml", marker = "python_full_version < '3.13'" }, + { name = "requests", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/ca/42/492dc35c112c5adbcf258066d739f897f484b6e2aff29b28dd9ebc9832d4/ray-2.40.0-cp310-cp310-macosx_10_15_x86_64.whl", hash = "sha256:064af8bc52cc988c82470b8e76e5df417737fa7c1d87f597a892c69eb4ec3caa", size = 67061821 }, @@ -3891,41 +3893,41 @@ wheels = [ [package.optional-dependencies] air = [ - { name = "aiohttp" }, - { name = "aiohttp-cors" }, - { name = "colorful" }, - { name = "fastapi" }, - { name = "fsspec" }, - { name = "grpcio" }, - { name = "memray", marker = "sys_platform != 'win32'" }, - { name = "numpy" }, - { name = "opencensus" }, - { name = "pandas" }, - { name = "prometheus-client" }, - { name = "py-spy" }, - { name = "pyarrow" }, - { name = "pydantic" }, - { name = "requests" }, - { name = "smart-open" }, - { name = "starlette" }, - { name = "tensorboardx" }, - { name = "uvicorn", extra = ["standard"] }, - { name = "virtualenv" }, - { name = "watchfiles" }, + { name = "aiohttp", marker = "python_full_version < '3.13'" }, + { name = "aiohttp-cors", marker = "python_full_version < '3.13'" }, + { name = "colorful", marker = "python_full_version < '3.13'" }, + { name = "fastapi", marker = "python_full_version < '3.13'" }, + { name = "fsspec", marker = "python_full_version < '3.13'" }, + { name = "grpcio", marker = "python_full_version < '3.13'" }, + { name = "memray", marker = "python_full_version < '3.13' and sys_platform != 'win32'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "opencensus", marker = "python_full_version < '3.13'" }, + { name = "pandas", marker = "python_full_version < '3.13'" }, + { name = "prometheus-client", marker = "python_full_version < '3.13'" }, + { name = "py-spy", marker = "python_full_version < '3.13'" }, + { name = "pyarrow", marker = "python_full_version < '3.13'" }, + { name = "pydantic", marker = "python_full_version < '3.13'" }, + { name = "requests", marker = "python_full_version < '3.13'" }, + { name = "smart-open", marker = "python_full_version < '3.13'" }, + { name = "starlette", marker = "python_full_version < '3.13'" }, + { name = "tensorboardx", marker = "python_full_version < '3.13'" }, + { name = "uvicorn", extra = ["standard"], marker = "python_full_version < '3.13'" }, + { name = "virtualenv", marker = "python_full_version < '3.13'" }, + { name = "watchfiles", marker = "python_full_version < '3.13'" }, ] default = [ - { name = "aiohttp" }, - { name = "aiohttp-cors" }, - { name = "colorful" }, - { name = "grpcio" }, - { name = "memray", marker = "sys_platform != 'win32'" }, - { name = "opencensus" }, - { name = "prometheus-client" }, - { name = "py-spy" }, - { name = "pydantic" }, - { name = "requests" }, - { name = "smart-open" }, - { name = "virtualenv" }, + { name = "aiohttp", marker = "python_full_version < '3.13'" }, + { name = "aiohttp-cors", marker = "python_full_version < '3.13'" }, + { name = "colorful", marker = "python_full_version < '3.13'" }, + { name = "grpcio", marker = "python_full_version < '3.13'" }, + { name = "memray", marker = "python_full_version < '3.13' and sys_platform != 'win32'" }, + { name = "opencensus", marker = "python_full_version < '3.13'" }, + { name = "prometheus-client", marker = "python_full_version < '3.13'" }, + { name = "py-spy", marker = "python_full_version < '3.13'" }, + { name = "pydantic", marker = "python_full_version < '3.13'" }, + { name = "requests", marker = "python_full_version < '3.13'" }, + { name = "smart-open", marker = "python_full_version < '3.13'" }, + { name = "virtualenv", marker = "python_full_version < '3.13'" }, ] [[package]] @@ -3933,8 +3935,8 @@ name = "ray-lightning" version = "0.3.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "pytorch-lightning" }, - { name = "ray" }, + { name = "pytorch-lightning", marker = "python_full_version < '3.13'" }, + { name = "ray", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/f7/f9/3a44895b15fb946319907782e41d0841c53c4608f611d3d6ab7b9b67d103/ray_lightning-0.3.0-py3-none-any.whl", hash = "sha256:46b6768395b85337d64ab0c265b09e7a52ec696c9e46ee401c109bd7d986ae48", size = 50820 }, @@ -3945,8 +3947,8 @@ name = "referencing" version = "0.35.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "attrs" }, - { name = "rpds-py" }, + { name = "attrs", marker = "python_full_version < '3.13'" }, + { name = "rpds-py", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/99/5b/73ca1f8e72fff6fa52119dbd185f73a907b1989428917b24cff660129b6d/referencing-0.35.1.tar.gz", hash = "sha256:25b42124a6c8b632a425174f24087783efb348a6f1e0008e63cd4466fedf703c", size = 62991 } wheels = [ @@ -4084,8 +4086,8 @@ name = "rich" version = "13.9.4" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "markdown-it-py" }, - { name = "pygments" }, + { name = "markdown-it-py", marker = "python_full_version < '3.13'" }, + { name = "pygments", marker = "python_full_version < '3.13'" }, { name = "typing-extensions", marker = "python_full_version < '3.11'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ab/3a/0316b28d0761c6734d6bc14e770d85506c986c85ffb239e688eeaab2c2bc/rich-13.9.4.tar.gz", hash = "sha256:439594978a49a09530cff7ebc4b5c7103ef57baf48d5ea3184f21d9a2befa098", size = 223149 } @@ -4352,10 +4354,10 @@ name = "scikit-learn" version = "1.6.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "joblib" }, - { name = "numpy" }, - { name = "scipy" }, - { name = "threadpoolctl" }, + { name = "joblib", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "scipy", marker = "python_full_version < '3.13'" }, + { name = "threadpoolctl", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/fa/19/5aa2002044afc297ecaf1e3517ed07bba4aece3b5613b5160c1212995fc8/scikit_learn-1.6.0.tar.gz", hash = "sha256:9d58481f9f7499dff4196927aedd4285a0baec8caa3790efbe205f13de37dd6e", size = 7074944 } wheels = [ @@ -4395,7 +4397,7 @@ name = "scipy" version = "1.13.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ae/00/48c2f661e2816ccf2ecd77982f6605b2950afe60f60a52b4cbbc2504aa8f/scipy-1.13.1.tar.gz", hash = "sha256:095a87a0312b08dfd6a6155cbbd310a8c51800fc931b8c0b84003014b874ed3c", size = 57210720 } wheels = [ @@ -4442,9 +4444,9 @@ name = "seaborn" version = "0.13.2" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "matplotlib" }, - { name = "numpy" }, - { name = "pandas" }, + { name = "matplotlib", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "pandas", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/86/59/a451d7420a77ab0b98f7affa3a1d78a313d2f7281a57afb1a34bae8ab412/seaborn-0.13.2.tar.gz", hash = "sha256:93e60a40988f4d65e9f4885df477e2fdaff6b73a9ded434c1ab356dd57eefff7", size = 1457696 } wheels = [ @@ -4494,37 +4496,37 @@ dependencies = [ [package.optional-dependencies] all = [ - { name = "ray", extra = ["air", "default"] }, + { name = "ray", extra = ["air", "default"], marker = "python_full_version < '3.13'" }, ] examples = [ - { name = "accelerate" }, + { name = "accelerate", marker = "python_full_version < '3.13'" }, { name = "cohere" }, - { name = "datasets" }, - { name = "gradio" }, + { name = "datasets", marker = "python_full_version < '3.13'" }, + { name = "gradio", marker = "python_full_version < '3.13'" }, { name = "huggingface-hub" }, - { name = "matplotlib" }, - { name = "numpy" }, + { name = "matplotlib", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, { name = "openai" }, - { name = "pandas" }, - { name = "peft" }, - { name = "plotly" }, - { name = "pyarrow" }, + { name = "pandas", marker = "python_full_version < '3.13'" }, + { name = "peft", marker = "python_full_version < '3.13'" }, + { name = "plotly", marker = "python_full_version < '3.13'" }, + { name = "pyarrow", marker = "python_full_version < '3.13'" }, { name = "pyopenssl" }, { name = "python-magic" }, - { name = "pytorch-lightning" }, - { name = "ray-lightning" }, - { name = "scikit-learn" }, - { name = "seaborn" }, - { name = "snowflake-connector-python" }, - { name = "statsmodels" }, - { name = "torch" }, - { name = "torchvision" }, + { name = "pytorch-lightning", marker = "python_full_version < '3.13'" }, + { name = "ray-lightning", marker = "python_full_version < '3.13'" }, + { name = "scikit-learn", marker = "python_full_version < '3.13'" }, + { name = "seaborn", marker = "python_full_version < '3.13'" }, + { name = "snowflake-connector-python", marker = "python_full_version < '3.13'" }, + { name = "statsmodels", marker = "python_full_version < '3.13'" }, + { name = "torch", marker = "python_full_version < '3.13'" }, + { name = "torchvision", marker = "python_full_version < '3.13'" }, { name = "trafilatura" }, - { name = "transformers" }, - { name = "xgboost" }, + { name = "transformers", marker = "python_full_version < '3.13'" }, + { name = "xgboost", marker = "python_full_version < '3.13'" }, ] ray = [ - { name = "ray", extra = ["air", "default"] }, + { name = "ray", extra = ["air", "default"], marker = "python_full_version < '3.13'" }, ] [package.dev-dependencies] @@ -4532,7 +4534,7 @@ dev = [ { name = "debugpy" }, { name = "mypy" }, { name = "mypy-extensions" }, - { name = "pandas-stubs" }, + { name = "pandas-stubs", marker = "python_full_version < '3.13'" }, { name = "pathspec" }, { name = "platformdirs" }, { name = "pytest" }, @@ -4545,58 +4547,58 @@ dev = [ [package.metadata] requires-dist = [ - { name = "accelerate", marker = "extra == 'examples'", specifier = "==0.19.0" }, + { name = "accelerate", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = "==0.19.0" }, { name = "asgiref", specifier = ">=3.7.2" }, { name = "boto3", specifier = ">=1.26.82" }, { name = "click", specifier = ">=8.1.3" }, { name = "cloudpickle", specifier = ">=2.2.1" }, { name = "cohere", marker = "extra == 'examples'", specifier = ">=4.9.0" }, - { name = "datasets", marker = "extra == 'examples'", specifier = ">=2.12.0" }, + { name = "datasets", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=2.12.0" }, { name = "docker", specifier = ">=6.0.0" }, { name = "flask", specifier = ">=2.2.2" }, { name = "flask-cors", specifier = ">=3.0.10" }, { name = "git-python", specifier = ">=1.0.3" }, { name = "google-auth", specifier = ">=2.16.0" }, { name = "google-cloud-storage", specifier = ">=2.10.0" }, - { name = "gradio", marker = "extra == 'examples'", specifier = ">=3.35.2" }, + { name = "gradio", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=3.35.2" }, { name = "huggingface-hub", marker = "extra == 'examples'", specifier = ">=0.14.1" }, { name = "ipython", specifier = "==8.2.0" }, { name = "kubernetes", specifier = ">=25.3.0" }, - { name = "matplotlib", marker = "extra == 'examples'", specifier = ">=3.7.0" }, - { name = "numpy", marker = "extra == 'examples'", specifier = ">=1.24.0" }, + { name = "matplotlib", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=3.7.0" }, + { name = "numpy", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=1.24.0" }, { name = "openai", marker = "extra == 'examples'", specifier = ">=0.27.8" }, - { name = "pandas", marker = "extra == 'examples'", specifier = ">=1.5.3" }, - { name = "peft", marker = "extra == 'examples'", specifier = ">=0.3.0" }, - { name = "plotly", marker = "extra == 'examples'", specifier = "==5.13.0" }, + { name = "pandas", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=1.5.3" }, + { name = "peft", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=0.3.0" }, + { name = "plotly", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = "==5.13.0" }, { name = "psycopg2-binary", specifier = ">=2.9.5" }, - { name = "pyarrow", marker = "extra == 'examples'", specifier = ">=12.0.0" }, + { name = "pyarrow", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=12.0.0" }, { name = "pyopenssl", marker = "extra == 'examples'", specifier = ">=23.0.0" }, { name = "python-dateutil", specifier = ">=2.8.2" }, { name = "python-magic", specifier = ">=0.4.27" }, { name = "python-magic", marker = "extra == 'examples'", specifier = "==0.4.27" }, { name = "python-socketio", specifier = ">=5.7.2" }, - { name = "pytorch-lightning", marker = "extra == 'examples'", specifier = ">=1.6.5" }, + { name = "pytorch-lightning", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=1.6.5" }, { name = "pyyaml", specifier = ">=6.0.1" }, - { name = "ray", extras = ["default", "air"], marker = "extra == 'all'", specifier = ">=2.3.0" }, - { name = "ray", extras = ["default", "air"], marker = "extra == 'ray'", specifier = ">=2.3.0" }, - { name = "ray-lightning", marker = "extra == 'examples'", specifier = ">=0.3.0" }, + { name = "ray", extras = ["default", "air"], marker = "python_full_version < '3.13' and extra == 'all'", specifier = ">=2.3.0" }, + { name = "ray", extras = ["default", "air"], marker = "python_full_version < '3.13' and extra == 'ray'", specifier = ">=2.3.0" }, + { name = "ray-lightning", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=0.3.0" }, { name = "requests", specifier = ">=2.28.2" }, - { name = "scikit-learn", marker = "extra == 'examples'", specifier = ">=1.2.1" }, - { name = "seaborn", marker = "extra == 'examples'", specifier = ">=0.12.2" }, + { name = "scikit-learn", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=1.2.1" }, + { name = "seaborn", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=0.12.2" }, { name = "setuptools", specifier = "==58.1.0" }, - { name = "snowflake-connector-python", marker = "extra == 'examples'", specifier = "==3.12.4" }, + { name = "snowflake-connector-python", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = "==3.12.4" }, { name = "sqlalchemy", specifier = ">=2.0" }, { name = "starlette", specifier = ">=0.25.0" }, - { name = "statsmodels", marker = "extra == 'examples'", specifier = ">=0.13.5" }, - { name = "torch", marker = "extra == 'examples'", specifier = ">=1.13.1" }, - { name = "torchvision", marker = "extra == 'examples'", specifier = ">=0.14.1" }, + { name = "statsmodels", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=0.13.5" }, + { name = "torch", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=1.13.1" }, + { name = "torchvision", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=0.14.1" }, { name = "trafilatura", marker = "extra == 'examples'", specifier = ">=1.6.0" }, - { name = "transformers", marker = "extra == 'examples'", specifier = ">=4.29.2" }, + { name = "transformers", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=4.29.2" }, { name = "types-google-cloud-ndb", specifier = ">=2.2.0.0" }, { name = "uvicorn", extras = ["standard"], specifier = ">=0.20.0" }, { name = "websocket-client", specifier = ">=1.5.1" }, { name = "werkzeug", specifier = ">=2.2.3" }, - { name = "xgboost", marker = "extra == 'examples'", specifier = ">=1.7.3" }, + { name = "xgboost", marker = "python_full_version < '3.13' and extra == 'examples'", specifier = ">=1.7.3" }, ] [package.metadata.requires-dev] @@ -4604,7 +4606,7 @@ dev = [ { name = "debugpy", specifier = ">=1.6.6" }, { name = "mypy", specifier = "==1.11.1" }, { name = "mypy-extensions", specifier = "==1.0.0" }, - { name = "pandas-stubs", specifier = ">=2.2.2" }, + { name = "pandas-stubs", marker = "python_full_version < '3.13'", specifier = ">=2.2.2" }, { name = "pathspec", specifier = "==0.11.2" }, { name = "platformdirs", specifier = "==3.10.0" }, { name = "pytest", specifier = "==7.4.0" }, @@ -4650,7 +4652,7 @@ name = "smart-open" version = "7.0.5" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "wrapt" }, + { name = "wrapt", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/a3/d8/1481294b2d110b805c0f5d23ef34158b7d5d4283633c0d34c69ea89bb76b/smart_open-7.0.5.tar.gz", hash = "sha256:d3672003b1dbc85e2013e4983b88eb9a5ccfd389b0d4e5015f39a9ee5620ec18", size = 71693 } wheels = [ @@ -4680,22 +4682,22 @@ name = "snowflake-connector-python" version = "3.12.4" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "asn1crypto" }, - { name = "certifi" }, - { name = "cffi" }, - { name = "charset-normalizer" }, - { name = "cryptography" }, - { name = "filelock" }, - { name = "idna" }, - { name = "packaging" }, - { name = "platformdirs" }, - { name = "pyjwt" }, - { name = "pyopenssl" }, - { name = "pytz" }, - { name = "requests" }, - { name = "sortedcontainers" }, - { name = "tomlkit" }, - { name = "typing-extensions" }, + { name = "asn1crypto", marker = "python_full_version < '3.13'" }, + { name = "certifi", marker = "python_full_version < '3.13'" }, + { name = "cffi", marker = "python_full_version < '3.13'" }, + { name = "charset-normalizer", marker = "python_full_version < '3.13'" }, + { name = "cryptography", marker = "python_full_version < '3.13'" }, + { name = "filelock", marker = "python_full_version < '3.13'" }, + { name = "idna", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "platformdirs", marker = "python_full_version < '3.13'" }, + { name = "pyjwt", marker = "python_full_version < '3.13'" }, + { name = "pyopenssl", marker = "python_full_version < '3.13'" }, + { name = "pytz", marker = "python_full_version < '3.13'" }, + { name = "requests", marker = "python_full_version < '3.13'" }, + { name = "sortedcontainers", marker = "python_full_version < '3.13'" }, + { name = "tomlkit", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, { name = "urllib3", marker = "python_full_version < '3.10'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/6b/de/f43d9c827ccc1974696ffd3c0495e2d4e98b0414b2353b7de932621f23dd/snowflake_connector_python-3.12.4.tar.gz", hash = "sha256:289e0691dfbf8ec8b7a8f58bcbb95a819890fe5e5b278fdbfc885059a63a946f", size = 743445 } @@ -4736,7 +4738,7 @@ name = "sqlalchemy" version = "2.0.36" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "greenlet", marker = "platform_machine == 'AMD64' or platform_machine == 'WIN32' or platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'ppc64le' or platform_machine == 'win32' or platform_machine == 'x86_64'" }, + { name = "greenlet", marker = "(python_full_version < '3.13' and platform_machine == 'AMD64') or (python_full_version < '3.13' and platform_machine == 'WIN32') or (python_full_version < '3.13' and platform_machine == 'aarch64') or (python_full_version < '3.13' and platform_machine == 'amd64') or (python_full_version < '3.13' and platform_machine == 'ppc64le') or (python_full_version < '3.13' and platform_machine == 'win32') or (python_full_version < '3.13' and platform_machine == 'x86_64')" }, { name = "typing-extensions" }, ] sdist = { url = "https://files.pythonhosted.org/packages/50/65/9cbc9c4c3287bed2499e05033e207473504dc4df999ce49385fb1f8b058a/sqlalchemy-2.0.36.tar.gz", hash = "sha256:7f2767680b6d2398aea7082e45a774b2b0767b5c8d8ffb9c8b683088ea9b29c5", size = 9574485 } @@ -4816,11 +4818,11 @@ name = "statsmodels" version = "0.14.4" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "packaging" }, - { name = "pandas" }, - { name = "patsy" }, - { name = "scipy" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "pandas", marker = "python_full_version < '3.13'" }, + { name = "patsy", marker = "python_full_version < '3.13'" }, + { name = "scipy", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/1f/3b/963a015dd8ea17e10c7b0e2f14d7c4daec903baf60a017e756b57953a4bf/statsmodels-0.14.4.tar.gz", hash = "sha256:5d69e0f39060dc72c067f9bb6e8033b6dccdb0bae101d76a7ef0bcc94e898b67", size = 20354802 } wheels = [ @@ -4860,7 +4862,7 @@ name = "sympy" version = "1.13.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "mpmath" }, + { name = "mpmath", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/ca/99/5a5b6f19ff9f083671ddf7b9632028436167cd3d33e11015754e41b249a4/sympy-1.13.1.tar.gz", hash = "sha256:9cebf7e04ff162015ce31c9c6c9144daa34a93bd082f54fd8f12deca4f47515f", size = 7533040 } wheels = [ @@ -4881,16 +4883,16 @@ name = "tensorboard" version = "2.18.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "absl-py" }, - { name = "grpcio" }, - { name = "markdown" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "protobuf" }, - { name = "setuptools" }, - { name = "six" }, - { name = "tensorboard-data-server" }, - { name = "werkzeug" }, + { name = "absl-py", marker = "python_full_version < '3.13'" }, + { name = "grpcio", marker = "python_full_version < '3.13'" }, + { name = "markdown", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "protobuf", marker = "python_full_version < '3.13'" }, + { name = "setuptools", marker = "python_full_version < '3.13'" }, + { name = "six", marker = "python_full_version < '3.13'" }, + { name = "tensorboard-data-server", marker = "python_full_version < '3.13'" }, + { name = "werkzeug", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/b1/de/021c1d407befb505791764ad2cbd56ceaaa53a746baed01d2e2143f05f18/tensorboard-2.18.0-py3-none-any.whl", hash = "sha256:107ca4821745f73e2aefa02c50ff70a9b694f39f790b11e6f682f7d326745eab", size = 5503036 }, @@ -4911,9 +4913,9 @@ name = "tensorboardx" version = "2.6" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "packaging" }, - { name = "protobuf" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "protobuf", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/c4/e3/c68897ee471518b1f8d3e53c602aec6f2b09092aa774da88764262f03f56/tensorboardX-2.6.tar.gz", hash = "sha256:d4c036964dd2deb075a1909832b276daa383eab3f9db519ad90b99f5aea06b0c", size = 91196 } wheels = [ @@ -4947,10 +4949,10 @@ name = "textual" version = "1.0.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "markdown-it-py", extra = ["linkify", "plugins"] }, - { name = "platformdirs" }, - { name = "rich" }, - { name = "typing-extensions" }, + { name = "markdown-it-py", extra = ["linkify", "plugins"], marker = "python_full_version < '3.13'" }, + { name = "platformdirs", marker = "python_full_version < '3.13'" }, + { name = "rich", marker = "python_full_version < '3.13'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/1f/b6/59b1de04bb4dca0f21ed7ba0b19309ed7f3f5de4396edf20cc2855e53085/textual-1.0.0.tar.gz", hash = "sha256:bec9fe63547c1c552569d1b75d309038b7d456c03f86dfa3706ddb099b151399", size = 1532733 } wheels = [ @@ -5053,26 +5055,26 @@ name = "torch" version = "2.5.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "filelock" }, - { name = "fsspec" }, - { name = "jinja2" }, - { name = "networkx" }, - { name = "nvidia-cublas-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-cuda-cupti-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-cuda-nvrtc-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-cuda-runtime-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-cudnn-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-cufft-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-curand-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-cusolver-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-cusparse-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-nccl-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-nvjitlink-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "nvidia-nvtx-cu12", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "setuptools", marker = "python_full_version >= '3.12'" }, - { name = "sympy" }, - { name = "triton", marker = "platform_machine == 'x86_64' and platform_system == 'Linux'" }, - { name = "typing-extensions" }, + { name = "filelock", marker = "python_full_version < '3.13'" }, + { name = "fsspec", marker = "python_full_version < '3.13'" }, + { name = "jinja2", marker = "python_full_version < '3.13'" }, + { name = "networkx", marker = "python_full_version < '3.13'" }, + { name = "nvidia-cublas-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-cuda-cupti-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-cuda-nvrtc-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-cuda-runtime-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-cudnn-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-cufft-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-curand-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-cusolver-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-cusparse-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-nccl-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-nvjitlink-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "nvidia-nvtx-cu12", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "setuptools", marker = "python_full_version == '3.12.*'" }, + { name = "sympy", marker = "python_full_version < '3.13'" }, + { name = "triton", marker = "python_full_version < '3.13' and platform_machine == 'x86_64' and platform_system == 'Linux'" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/2a/ef/834af4a885b31a0b32fff2d80e1e40f771e1566ea8ded55347502440786a/torch-2.5.1-cp310-cp310-manylinux1_x86_64.whl", hash = "sha256:71328e1bbe39d213b8721678f9dcac30dfc452a46d586f1d514a6aa0a99d4744", size = 906446312 }, @@ -5099,10 +5101,10 @@ name = "torchmetrics" version = "1.6.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "lightning-utilities" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "torch" }, + { name = "lightning-utilities", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "torch", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/18/88/9b0c5542ce845d153eaa7a7eb8e4fad34347b13b5997bf1d744d64410072/torchmetrics-1.6.0.tar.gz", hash = "sha256:aebba248708fb90def20cccba6f55bddd134a58de43fb22b0c5ca0f3a89fa984", size = 538824 } wheels = [ @@ -5114,9 +5116,9 @@ name = "torchvision" version = "0.20.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "pillow" }, - { name = "torch" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "pillow", marker = "python_full_version < '3.13'" }, + { name = "torch", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/8d/59/aea68d755da1451e1a0d894528a7edc9b58eb30d33e274bf21bef28dad1a/torchvision-0.20.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:4878fefb96ef293d06c27210918adc83c399d9faaf34cda5a63e129f772328f1", size = 1787552 }, @@ -5181,16 +5183,16 @@ name = "transformers" version = "4.47.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "filelock" }, - { name = "huggingface-hub" }, - { name = "numpy" }, - { name = "packaging" }, - { name = "pyyaml" }, - { name = "regex" }, - { name = "requests" }, - { name = "safetensors" }, - { name = "tokenizers" }, - { name = "tqdm" }, + { name = "filelock", marker = "python_full_version < '3.13'" }, + { name = "huggingface-hub", marker = "python_full_version < '3.13'" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "packaging", marker = "python_full_version < '3.13'" }, + { name = "pyyaml", marker = "python_full_version < '3.13'" }, + { name = "regex", marker = "python_full_version < '3.13'" }, + { name = "requests", marker = "python_full_version < '3.13'" }, + { name = "safetensors", marker = "python_full_version < '3.13'" }, + { name = "tokenizers", marker = "python_full_version < '3.13'" }, + { name = "tqdm", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/b1/5a/0ecfde3264bed0579c37f249e04e15f3c1451ba864d78bbe390177664cac/transformers-4.47.0.tar.gz", hash = "sha256:f8ead7a5a4f6937bb507e66508e5e002dc5930f7b6122a9259c37b099d0f3b19", size = 8693668 } wheels = [ @@ -5202,7 +5204,7 @@ name = "triton" version = "3.1.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "filelock" }, + { name = "filelock", marker = "python_full_version < '3.13'" }, ] wheels = [ { url = "https://files.pythonhosted.org/packages/98/29/69aa56dc0b2eb2602b553881e34243475ea2afd9699be042316842788ff5/triton-3.1.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6b0dd10a925263abbe9fa37dcde67a5e9b2383fc269fdf59f5657cac38c5d1d8", size = 209460013 }, @@ -5436,9 +5438,9 @@ name = "virtualenv" version = "20.28.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "distlib" }, - { name = "filelock" }, - { name = "platformdirs" }, + { name = "distlib", marker = "python_full_version < '3.13'" }, + { name = "filelock", marker = "python_full_version < '3.13'" }, + { name = "platformdirs", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/bf/75/53316a5a8050069228a2f6d11f32046cfa94fbb6cc3f08703f59b873de2e/virtualenv-20.28.0.tar.gz", hash = "sha256:2c9c3262bb8e7b87ea801d715fae4495e6032450c71d2309be9550e7364049aa", size = 7650368 } wheels = [ @@ -5699,9 +5701,9 @@ name = "xgboost" version = "2.1.3" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "numpy" }, - { name = "nvidia-nccl-cu12", marker = "platform_machine != 'aarch64' and platform_system == 'Linux'" }, - { name = "scipy" }, + { name = "numpy", marker = "python_full_version < '3.13'" }, + { name = "nvidia-nccl-cu12", marker = "python_full_version < '3.13' and platform_machine != 'aarch64' and platform_system == 'Linux'" }, + { name = "scipy", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/48/b0/131ffc4a15fd3acee9be3a7baa6b2fa6faa479799c51b880de9fc3ddf550/xgboost-2.1.3.tar.gz", hash = "sha256:7699ec4226156887d3afc665c63ab87469db9d46e361c702ba9fccd22535730c", size = 1090326 } wheels = [ @@ -5812,9 +5814,9 @@ name = "yarl" version = "1.18.3" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "idna" }, - { name = "multidict" }, - { name = "propcache" }, + { name = "idna", marker = "python_full_version < '3.13'" }, + { name = "multidict", marker = "python_full_version < '3.13'" }, + { name = "propcache", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/b7/9d/4b94a8e6d2b51b599516a5cb88e5bc99b4d8d4583e468057eaa29d5f0918/yarl-1.18.3.tar.gz", hash = "sha256:ac1801c45cbf77b6c99242eeff4fffb5e4e73a800b5c4ad4fc0be5def634d2e1", size = 181062 } wheels = [