From f60a51bbcb6f62e283af3b5a7015c794c8422c26 Mon Sep 17 00:00:00 2001 From: tokoko Date: Wed, 1 May 2024 10:53:20 +0000 Subject: [PATCH 1/3] change dev workflow to use uv (and pixi) Signed-off-by: tokoko --- Makefile | 14 +- docs/project/development-guide.md | 46 +-- infra/scripts/pixi/pixi.lock | 366 ++++++------------ infra/scripts/pixi/pixi.toml | 8 +- .../requirements/py3.10-ci-requirements.txt | 314 +++++---------- .../requirements/py3.10-requirements.txt | 129 +++--- .../requirements/py3.11-ci-requirements.txt | 322 +++++---------- .../requirements/py3.11-requirements.txt | 143 ++++--- .../requirements/py3.9-ci-requirements.txt | 312 +++++---------- .../requirements/py3.9-requirements.txt | 129 +++--- 10 files changed, 661 insertions(+), 1122 deletions(-) diff --git a/Makefile b/Makefile index 3a1d0ebc808..6d4518aa449 100644 --- a/Makefile +++ b/Makefile @@ -47,7 +47,7 @@ install-python-ci-dependencies-uv: python setup.py build_python_protos --inplace lock-python-ci-dependencies: - python -m piptools compile -U --extra ci --output-file sdk/python/requirements/py$(PYTHON)-ci-requirements.txt + uv pip compile --system --no-strip-extras setup.py --extra ci --output-file sdk/python/requirements/py$(PYTHON)-ci-requirements.txt package-protos: cp -r ${ROOT_DIR}/protos ${ROOT_DIR}/sdk/python/feast/protos @@ -60,13 +60,15 @@ install-python: python setup.py develop lock-python-dependencies: - python -m piptools compile -U --output-file sdk/python/requirements/py$(PYTHON)-requirements.txt + uv pip compile --system --no-strip-extras setup.py --output-file sdk/python/requirements/py$(PYTHON)-requirements.txt lock-python-dependencies-all: - pixi run --environment py39 --manifest-path infra/scripts/pixi/pixi.toml "python -m piptools compile -U --output-file sdk/python/requirements/py3.9-requirements.txt" - pixi run --environment py39 --manifest-path infra/scripts/pixi/pixi.toml "python -m piptools compile -U --extra ci --output-file sdk/python/requirements/py3.9-ci-requirements.txt" - pixi run --environment py310 --manifest-path infra/scripts/pixi/pixi.toml "python -m piptools compile -U --output-file sdk/python/requirements/py3.10-requirements.txt" - pixi run --environment py310 --manifest-path infra/scripts/pixi/pixi.toml "python -m piptools compile -U --extra ci --output-file sdk/python/requirements/py3.10-ci-requirements.txt" + pixi run --environment py39 --manifest-path infra/scripts/pixi/pixi.toml "uv pip compile --system --no-strip-extras setup.py --output-file sdk/python/requirements/py3.9-requirements.txt" + pixi run --environment py39 --manifest-path infra/scripts/pixi/pixi.toml "uv pip compile --system --no-strip-extras setup.py --extra ci --output-file sdk/python/requirements/py3.9-ci-requirements.txt" + pixi run --environment py310 --manifest-path infra/scripts/pixi/pixi.toml "uv pip compile --system --no-strip-extras setup.py --output-file sdk/python/requirements/py3.10-requirements.txt" + pixi run --environment py310 --manifest-path infra/scripts/pixi/pixi.toml "uv pip compile --system --no-strip-extras setup.py --extra ci --output-file sdk/python/requirements/py3.10-ci-requirements.txt" + pixi run --environment py311 --manifest-path infra/scripts/pixi/pixi.toml "uv pip compile --system --no-strip-extras setup.py --output-file sdk/python/requirements/py3.11-requirements.txt" + pixi run --environment py311 --manifest-path infra/scripts/pixi/pixi.toml "uv pip compile --system --no-strip-extras setup.py --extra ci --output-file sdk/python/requirements/py3.11-ci-requirements.txt" benchmark-python: FEAST_USAGE=False IS_TEST=True python -m pytest --integration --benchmark --benchmark-autosave --benchmark-save-data sdk/python/tests diff --git a/docs/project/development-guide.md b/docs/project/development-guide.md index 2d4ab0c7c6a..146b6d7516e 100644 --- a/docs/project/development-guide.md +++ b/docs/project/development-guide.md @@ -123,43 +123,43 @@ Note that this means if you are midway through working through a PR and rebase, Setting up your development environment for Feast Python SDK / CLI: 1. Ensure that you have Docker installed in your environment. Docker is used to provision service dependencies during testing, and build images for feature servers and other components. - Please note that we use [Docker with BuiltKit](https://docs.docker.com/develop/develop-images/build_enhancements/). -2. Ensure that you have `make`, Python (3.8 and above) with `pip`, installed. +2. Ensure that you have `make` and Python (3.9 or above) installed. 3. _Recommended:_ Create a virtual environment to isolate development dependencies to be installed ```sh # create & activate a virtual environment python -m venv venv/ source venv/bin/activate ``` -4. Upgrade `pip` if outdated - ```sh - pip install --upgrade pip - ``` -5. (M1 Mac only): Follow the [dev guide](https://github.com/feast-dev/feast/issues/2105) -6. Install pip-tools - ```sh - pip install pip-tools - ``` -7. (Optional): Install Node & Yarn. Then run the following to build Feast UI artifacts for use in `feast ui` +4. (M1 Mac only): Follow the [dev guide](https://github.com/feast-dev/feast/issues/2105) +5. Install uv +It is recommended to use uv for managing python dependencies. +```sh +curl -LsSf https://astral.sh/uv/install.sh | sh +``` +or +```ssh +pip install uv +``` +6. (Optional): Install Node & Yarn. Then run the following to build Feast UI artifacts for use in `feast ui` ``` make build-ui ``` -8. Install mysql (needed for ci dependencies) +7. (Optional) install pixi +pixi is necessary to run step 8 for all python versions at once. ```sh -brew install mysql +curl -fsSL https://pixi.sh/install.sh | bash ``` -9. Install development dependencies for Feast Python SDK / CLI +8. (Optional): Recompile python lock files +If you make changes to requirements or simply want to update python lock files to reflect latest versioons. ```sh -pip install -e ".[dev]" -``` - -This will allow the installed feast version to automatically reflect changes to your local development version of Feast without needing to reinstall everytime you make code changes. - -10. Compile the protubufs +make lock-python-dependencies-all +``` +9. Install development dependencies for Feast Python SDK / CLI +This will install package versions from the lock file, install editable version of feast and compile protobufs. ```sh -make compile-protos-python +make install-python-ci-dependencies-uv ``` - -11. Spin up Docker Image +10. Spin up Docker Image ```sh docker build -t docker-whale -f ./sdk/python/feast/infra/feature_servers/multicloud/Dockerfile . ``` diff --git a/infra/scripts/pixi/pixi.lock b/infra/scripts/pixi/pixi.lock index 65b761156e1..19a32f32ae8 100644 --- a/infra/scripts/pixi/pixi.lock +++ b/infra/scripts/pixi/pixi.lock @@ -1,6 +1,17 @@ version: 4 environments: default: + channels: + - url: https://conda.anaconda.org/conda-forge/ + packages: + linux-64: + - conda: https://conda.anaconda.org/conda-forge/linux-64/_libgcc_mutex-0.1-conda_forge.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h95c4c6d_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/uv-0.1.39-h0ea3d13_0.conda + py310: channels: - url: https://conda.anaconda.org/conda-forge/ packages: @@ -9,36 +20,25 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h95c4c6d_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pip-tools-7.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyproject_hooks-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.3-hab00c5b_0_cpython.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-build-1.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.14-hd12c33a_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/uv-0.1.39-h0ea3d13_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - py310: + py311: channels: - url: https://conda.anaconda.org/conda-forge/ packages: @@ -47,34 +47,25 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.2-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-hc881cc4_6.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-hc881cc4_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h95c4c6d_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pip-tools-7.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyproject_hooks-1.0.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.10.14-hd12c33a_0_cpython.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-build-1.2.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.9-hb806964_0_cpython.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/uv-0.1.39-h0ea3d13_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda py39: channels: - url: https://conda.anaconda.org/conda-forge/ @@ -84,34 +75,24 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/_openmp_mutex-4.5-2_gnu.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.2.2-hbcca054_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h41732ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-h807b86a_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.45.3-h2797004_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h95c4c6d_6.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libuuid-2.38.1-h0b41bf4_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libxcrypt-4.4.36-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libzlib-1.2.13-hd590300_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.4.20240210-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.2.1-hd590300_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pip-tools-7.4.1-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pyproject_hooks-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.9.19-h0755675_0_cpython.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/python-build-1.2.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024a-h0c530f3_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/uv-0.1.39-h0ea3d13_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda packages: - kind: conda name: _libgcc_mutex @@ -168,53 +149,6 @@ packages: license: ISC size: 155432 timestamp: 1706843687645 -- kind: conda - name: click - version: 8.1.7 - build: unix_pyh707e725_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - sha256: f0016cbab6ac4138a429e28dbcb904a90305b34b3fe41a9b89d697c90401caec - md5: f3ad426304898027fc619827ff428eca - depends: - - __unix - - python >=3.8 - license: BSD-3-Clause - license_family: BSD - size: 84437 - timestamp: 1692311973840 -- kind: conda - name: colorama - version: 0.4.6 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - sha256: 2c1b2e9755ce3102bca8d69e8f26e4f087ece73f50418186aee7c74bef8e1698 - md5: 3faab06a954c2a04039983f2c4a50d99 - depends: - - python >=3.7 - license: BSD-3-Clause - license_family: BSD - size: 25170 - timestamp: 1666700778190 -- kind: conda - name: importlib-metadata - version: 7.1.0 - build: pyha770c72_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-7.1.0-pyha770c72_0.conda - sha256: cc2e7d1f7f01cede30feafc1118b7aefa244d0a12224513734e24165ae12ba49 - md5: 0896606848b2dc5cebdf111b6543aa04 - depends: - - python >=3.8 - - zipp >=0.5 - license: Apache-2.0 - license_family: APACHE - size: 27043 - timestamp: 1710971498183 - kind: conda name: ld_impl_linux-64 version: '2.40' @@ -229,6 +163,20 @@ packages: license_family: GPL size: 704696 timestamp: 1674833944779 +- kind: conda + name: ld_impl_linux-64 + version: '2.40' + build: h55db66e_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.40-h55db66e_0.conda + sha256: ef969eee228cfb71e55146eaecc6af065f468cb0bc0a5239bc053b39db0b5f09 + md5: 10569984e7db886e4f1abc2b47ad79a1 + constrains: + - binutils_impl_linux-64 2.40 + license: GPL-3.0-only + license_family: GPL + size: 713322 + timestamp: 1713651222435 - kind: conda name: libexpat version: 2.6.2 @@ -278,6 +226,24 @@ packages: license_family: GPL size: 770506 timestamp: 1706819192021 +- kind: conda + name: libgcc-ng + version: 13.2.0 + build: hc881cc4_6 + build_number: 6 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-13.2.0-hc881cc4_6.conda + sha256: 836a0057525f1414de43642d357d0ab21ac7f85e24800b010dbc17d132e6efec + md5: df88796bd09a0d2ed292e59101478ad8 + depends: + - _libgcc_mutex 0.1 conda_forge + - _openmp_mutex >=4.5 + constrains: + - libgomp 13.2.0 hc881cc4_6 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 777315 + timestamp: 1713755001744 - kind: conda name: libgomp version: 13.2.0 @@ -293,6 +259,21 @@ packages: license_family: GPL size: 419751 timestamp: 1706819107383 +- kind: conda + name: libgomp + version: 13.2.0 + build: hc881cc4_6 + build_number: 6 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgomp-13.2.0-hc881cc4_6.conda + sha256: e722b19b23b31a14b1592d5eceabb38dc52452ff5e4d346e330526971c22e52a + md5: aae89d3736661c36a5591788aebd0817 + depends: + - _libgcc_mutex 0.1 conda_forge + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 422363 + timestamp: 1713754915251 - kind: conda name: libnsl version: 2.0.1 @@ -321,6 +302,19 @@ packages: license: Unlicense size: 859858 timestamp: 1713367435849 +- kind: conda + name: libstdcxx-ng + version: 13.2.0 + build: h95c4c6d_6 + build_number: 6 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-13.2.0-h95c4c6d_6.conda + sha256: 2616dbf9d28431eea20b6e307145c6a92ea0328a047c725ff34b0316de2617da + md5: 3cfab3e709f77e9f1b3d380eb622494a + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 3842900 + timestamp: 1713755068572 - kind: conda name: libuuid version: 2.38.1 @@ -398,73 +392,22 @@ packages: size: 2865379 timestamp: 1710793235846 - kind: conda - name: packaging - version: '24.0' - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/packaging-24.0-pyhd8ed1ab_0.conda - sha256: a390182d74c31dfd713c16db888c92c277feeb6d1fe96ff9d9c105f9564be48a - md5: 248f521b64ce055e7feae3105e7abeb8 + name: openssl + version: 3.3.0 + build: hd590300_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.3.0-hd590300_0.conda + sha256: fdbf05e4db88c592366c90bb82e446edbe33c6e49e5130d51c580b2629c0b5d5 + md5: c0f3abb4a16477208bbd43a39bd56f18 depends: - - python >=3.8 + - ca-certificates + - libgcc-ng >=12 + constrains: + - pyopenssl >=22.1 license: Apache-2.0 - license_family: APACHE - size: 49832 - timestamp: 1710076089469 -- kind: conda - name: pip - version: '24.0' - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pip-24.0-pyhd8ed1ab_0.conda - sha256: b7c1c5d8f13e8cb491c4bd1d0d1896a4cf80fc47de01059ad77509112b664a4a - md5: f586ac1e56c8638b64f9c8122a7b8a67 - depends: - - python >=3.7 - - setuptools - - wheel - license: MIT - license_family: MIT - size: 1398245 - timestamp: 1706960660581 -- kind: conda - name: pip-tools - version: 7.4.1 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pip-tools-7.4.1-pyhd8ed1ab_0.conda - sha256: 5534c19a6233faed1c9109782322c9d31e536ce20448f8c90db3d864fb8f226d - md5: 73203bd783da9c37c2cdabb1f3b9d44d - depends: - - click >=7 - - pip >=21.2 - - python >=3.7 - - python-build - - setuptools - - wheel - license: BSD-3-Clause - license_family: BSD - size: 54113 - timestamp: 1709736180083 -- kind: conda - name: pyproject_hooks - version: 1.0.0 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pyproject_hooks-1.0.0-pyhd8ed1ab_0.conda - sha256: 016340837fcfef57b351febcbe855eedf0c1f0ecfc910ed48c7fbd20535f9847 - md5: 21de50391d584eb7f4441b9de1ad773f - depends: - - python >=3.7 - - tomli >=1.1.0 - license: MIT - license_family: MIT - size: 13867 - timestamp: 1670268791173 + license_family: Apache + size: 2895187 + timestamp: 1714466138265 - kind: conda name: python version: 3.9.19 @@ -525,12 +468,12 @@ packages: timestamp: 1710939725109 - kind: conda name: python - version: 3.12.3 - build: hab00c5b_0_cpython + version: 3.11.9 + build: hb806964_0_cpython subdir: linux-64 - url: https://conda.anaconda.org/conda-forge/linux-64/python-3.12.3-hab00c5b_0_cpython.conda - sha256: f9865bcbff69f15fd89a33a2da12ad616e98d65ce7c83c644b92e66e5016b227 - md5: 2540b74d304f71d3e89c81209db4db84 + url: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.9-hb806964_0_cpython.conda + sha256: 177f33a1fb8d3476b38f73c37b42f01c0b014fa0e039a701fd9f83d83aae6d40 + md5: ac68acfa8b558ed406c75e98d3428d7b depends: - bzip2 >=1.0.8,<2.0a0 - ld_impl_linux-64 >=2.36.1 @@ -538,7 +481,7 @@ packages: - libffi >=3.4,<4.0a0 - libgcc-ng >=12 - libnsl >=2.0.1,<2.1.0a0 - - libsqlite >=3.45.2,<4.0a0 + - libsqlite >=3.45.3,<4.0a0 - libuuid >=2.38.1,<3.0a0 - libxcrypt >=4.4.36 - libzlib >=1.2.13,<1.3.0a0 @@ -549,32 +492,10 @@ packages: - tzdata - xz >=5.2.6,<6.0a0 constrains: - - python_abi 3.12.* *_cp312 + - python_abi 3.11.* *_cp311 license: Python-2.0 - size: 31991381 - timestamp: 1713208036041 -- kind: conda - name: python-build - version: 1.2.1 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/python-build-1.2.1-pyhd8ed1ab_0.conda - sha256: 3104051be7279d1b15f0a4be79f4bfeaf3a42b2900d24a7ad8e980df903fe8db - md5: d657cde3b3943fcedf6038138eea84de - depends: - - colorama - - importlib-metadata >=4.6 - - packaging >=19.0 - - pyproject_hooks - - python >=3.8 - - tomli >=1.1.0 - constrains: - - build <0 - license: MIT - license_family: MIT - size: 24434 - timestamp: 1711647439510 + size: 30884494 + timestamp: 1713553104915 - kind: conda name: readline version: '8.2' @@ -591,21 +512,6 @@ packages: license_family: GPL size: 281456 timestamp: 1679532220005 -- kind: conda - name: setuptools - version: 69.5.1 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/setuptools-69.5.1-pyhd8ed1ab_0.conda - sha256: 72d143408507043628b32bed089730b6d5f5445eccc44b59911ec9f262e365e7 - md5: 7462280d81f639363e6e63c81276bd9e - depends: - - python >=3.8 - license: MIT - license_family: MIT - size: 501790 - timestamp: 1713094963112 - kind: conda name: tk version: 8.6.13 @@ -622,21 +528,6 @@ packages: license_family: BSD size: 3318875 timestamp: 1699202167581 -- kind: conda - name: tomli - version: 2.0.1 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.1-pyhd8ed1ab_0.tar.bz2 - sha256: 4cd48aba7cd026d17e86886af48d0d2ebc67ed36f87f6534f4b67138f5a5a58f - md5: 5844808ffab9ebdb694585b50ba02a96 - depends: - - python >=3.7 - license: MIT - license_family: MIT - size: 15940 - timestamp: 1644342331069 - kind: conda name: tzdata version: 2024a @@ -650,21 +541,19 @@ packages: size: 119815 timestamp: 1706886945727 - kind: conda - name: wheel - version: 0.43.0 - build: pyhd8ed1ab_1 - build_number: 1 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/wheel-0.43.0-pyhd8ed1ab_1.conda - sha256: cb318f066afd6fd64619f14c030569faf3f53e6f50abf743b4c865e7d95b96bc - md5: 0b5293a157c2b5cd513dd1b03d8d3aae + name: uv + version: 0.1.39 + build: h0ea3d13_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/uv-0.1.39-h0ea3d13_0.conda + sha256: 763d149b6f4f5c70c91e4106d3a48409c48283ed2e27392578998fb2441f23d8 + md5: c3206e7ca254e50b3556917886f9b12b depends: - - python >=3.8 - license: MIT - license_family: MIT - size: 57963 - timestamp: 1711546009410 + - libgcc-ng >=12 + - libstdcxx-ng >=12 + license: Apache-2.0 OR MIT + size: 11891252 + timestamp: 1714233659570 - kind: conda name: xz version: 5.2.6 @@ -678,18 +567,3 @@ packages: license: LGPL-2.1 and GPL-2.0 size: 418368 timestamp: 1660346797927 -- kind: conda - name: zipp - version: 3.17.0 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.17.0-pyhd8ed1ab_0.conda - sha256: bced1423fdbf77bca0a735187d05d9b9812d2163f60ab426fc10f11f92ecbe26 - md5: 2e4d6bc0b14e10f895fc6791a7d9b26a - depends: - - python >=3.8 - license: MIT - license_family: MIT - size: 18954 - timestamp: 1695255262261 diff --git a/infra/scripts/pixi/pixi.toml b/infra/scripts/pixi/pixi.toml index 80a29d3a59a..f0d360fff3d 100644 --- a/infra/scripts/pixi/pixi.toml +++ b/infra/scripts/pixi/pixi.toml @@ -6,7 +6,7 @@ platforms = ["linux-64"] [tasks] [dependencies] -pip-tools = ">=7.4.1,<7.5" +uv = ">=0.1.39,<0.2" [feature.py39.dependencies] python = "~=3.9.0" @@ -14,6 +14,10 @@ python = "~=3.9.0" [feature.py310.dependencies] python = "~=3.10.0" +[feature.py311.dependencies] +python = "~=3.11.0" + [environments] py39 = ["py39"] -py310 = ["py310"] \ No newline at end of file +py310 = ["py310"] +py311 = ["py311"] diff --git a/sdk/python/requirements/py3.10-ci-requirements.txt b/sdk/python/requirements/py3.10-ci-requirements.txt index 2f17714964b..970d429fd85 100644 --- a/sdk/python/requirements/py3.10-ci-requirements.txt +++ b/sdk/python/requirements/py3.10-ci-requirements.txt @@ -1,9 +1,5 @@ -# -# This file is autogenerated by pip-compile with Python 3.10 -# by the following command: -# -# pip-compile --extra=ci --output-file=sdk/python/requirements/py3.10-ci-requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --system --no-strip-extras setup.py --extra ci --output-file sdk/python/requirements/py3.10-ci-requirements.txt alabaster==0.7.16 # via sphinx altair==4.2.2 @@ -25,7 +21,6 @@ arrow==1.3.0 asn1crypto==1.5.1 # via snowflake-connector-python assertpy==1.1 - # via feast (setup.py) asttokens==2.4.1 # via stack-data async-lru==2.0.4 @@ -43,10 +38,8 @@ azure-core==1.30.1 # azure-identity # azure-storage-blob azure-identity==1.16.0 - # via feast (setup.py) azure-storage-blob==12.19.1 - # via feast (setup.py) -babel==2.14.0 +babel==2.15.0 # via # jupyterlab-server # sphinx @@ -56,25 +49,20 @@ bidict==0.23.1 # via ibis-framework bleach==6.1.0 # via nbconvert -boto3==1.34.88 - # via - # feast (setup.py) - # moto -botocore==1.34.88 +boto3==1.34.99 + # via moto +botocore==1.34.99 # via # boto3 # moto # s3transfer build==1.2.1 - # via - # feast (setup.py) - # pip-tools + # via pip-tools cachecontrol==0.14.0 # via firebase-admin cachetools==5.3.3 # via google-auth cassandra-driver==3.29.1 - # via feast (setup.py) certifi==2024.2.2 # via # httpcore @@ -97,28 +85,25 @@ charset-normalizer==3.3.2 click==8.1.7 # via # dask - # feast (setup.py) # geomet # great-expectations # pip-tools + # typer # uvicorn cloudpickle==3.0.0 # via dask colorama==0.4.6 - # via - # feast (setup.py) - # great-expectations + # via great-expectations comm==0.2.2 # via # ipykernel # ipywidgets -coverage[toml]==7.4.4 +coverage[toml]==7.5.1 # via pytest-cov -cryptography==42.0.5 +cryptography==42.0.7 # via # azure-identity # azure-storage-blob - # feast (setup.py) # great-expectations # moto # msal @@ -127,11 +112,9 @@ cryptography==42.0.5 # snowflake-connector-python # types-pyopenssl # types-redis -dask[array,dataframe]==2024.4.2 - # via - # dask-expr - # feast (setup.py) -dask-expr==1.0.12 +dask[dataframe]==2024.5.0 + # via dask-expr +dask-expr==1.1.0 # via dask db-dtypes==1.2.0 # via google-cloud-bigquery @@ -141,24 +124,20 @@ decorator==5.1.1 # via ipython defusedxml==0.7.1 # via nbconvert -deltalake==0.16.4 - # via feast (setup.py) +deltalake==0.17.3 dill==0.3.8 - # via feast (setup.py) distlib==0.3.8 # via virtualenv +dnspython==2.6.1 + # via email-validator docker==7.0.0 - # via - # feast (setup.py) - # testcontainers + # via testcontainers docutils==0.19 # via sphinx duckdb==0.10.2 - # via - # duckdb-engine - # ibis-framework -duckdb-engine==0.11.5 # via ibis-framework +email-validator==2.1.1 + # via fastapi entrypoints==0.4 # via altair exceptiongroup==1.2.1 @@ -170,29 +149,27 @@ execnet==2.1.1 # via pytest-xdist executing==2.0.1 # via stack-data -fastapi==0.110.2 - # via feast (setup.py) +fastapi==0.111.0 + # via fastapi-cli +fastapi-cli==0.0.2 + # via fastapi fastjsonschema==2.19.1 # via nbformat -filelock==3.13.4 +filelock==3.14.0 # via # snowflake-connector-python # virtualenv firebase-admin==5.4.0 - # via feast (setup.py) fqdn==1.5.1 # via jsonschema fsspec==2023.12.2 - # via - # dask - # feast (setup.py) + # via dask geojson==2.5.0 # via rockset geomet==0.2.1.post1 # via cassandra-driver -google-api-core[grpc]==2.18.0 +google-api-core[grpc]==2.19.0 # via - # feast (setup.py) # firebase-admin # google-api-python-client # google-cloud-bigquery @@ -202,13 +179,14 @@ google-api-core[grpc]==2.18.0 # google-cloud-datastore # google-cloud-firestore # google-cloud-storage -google-api-python-client==2.126.0 +google-api-python-client==2.128.0 # via firebase-admin google-auth==2.29.0 # via # google-api-core # google-api-python-client # google-auth-httplib2 + # google-cloud-bigquery-storage # google-cloud-core # google-cloud-firestore # google-cloud-storage @@ -216,11 +194,8 @@ google-auth==2.29.0 google-auth-httplib2==0.2.0 # via google-api-python-client google-cloud-bigquery[pandas]==3.12.0 - # via feast (setup.py) -google-cloud-bigquery-storage==2.24.0 - # via feast (setup.py) +google-cloud-bigquery-storage==2.25.0 google-cloud-bigtable==2.23.1 - # via feast (setup.py) google-cloud-core==2.4.1 # via # google-cloud-bigquery @@ -229,13 +204,10 @@ google-cloud-core==2.4.1 # google-cloud-firestore # google-cloud-storage google-cloud-datastore==2.19.0 - # via feast (setup.py) google-cloud-firestore==2.16.0 # via firebase-admin google-cloud-storage==2.16.0 - # via - # feast (setup.py) - # firebase-admin + # via firebase-admin google-crc32c==1.5.0 # via # google-cloud-storage @@ -246,19 +218,16 @@ google-resumable-media==2.7.0 # google-cloud-storage googleapis-common-protos[grpc]==1.63.0 # via - # feast (setup.py) # google-api-core # grpc-google-iam-v1 # grpcio-status -great-expectations==0.18.12 - # via feast (setup.py) +great-expectations==0.18.13 greenlet==3.0.3 # via sqlalchemy grpc-google-iam-v1==0.13.0 # via google-cloud-bigtable -grpcio==1.62.2 +grpcio==1.63.0 # via - # feast (setup.py) # google-api-core # google-cloud-bigquery # googleapis-common-protos @@ -269,27 +238,19 @@ grpcio==1.62.2 # grpcio-testing # grpcio-tools grpcio-health-checking==1.62.2 - # via feast (setup.py) grpcio-reflection==1.62.2 - # via feast (setup.py) grpcio-status==1.62.2 # via google-api-core grpcio-testing==1.62.2 - # via feast (setup.py) grpcio-tools==1.62.2 - # via feast (setup.py) -gunicorn==22.0.0 ; platform_system != "Windows" - # via feast (setup.py) +gunicorn==22.0.0 h11==0.14.0 # via # httpcore # uvicorn happybase==1.2.0 - # via feast (setup.py) hazelcast-python-client==5.3.0 - # via feast (setup.py) hiredis==2.3.2 - # via feast (setup.py) httpcore==1.0.5 # via httpx httplib2==0.22.0 @@ -300,19 +261,17 @@ httptools==0.6.1 # via uvicorn httpx==0.27.0 # via - # feast (setup.py) + # fastapi # jupyterlab -ibis-framework[duckdb]==8.0.0 - # via - # feast (setup.py) - # ibis-substrait +ibis-framework[duckdb]==9.0.0 + # via ibis-substrait ibis-substrait==3.2.0 - # via feast (setup.py) -identify==2.5.35 +identify==2.5.36 # via pre-commit idna==3.7 # via # anyio + # email-validator # httpx # jsonschema # requests @@ -325,7 +284,7 @@ iniconfig==2.0.0 # via pytest ipykernel==6.29.4 # via jupyterlab -ipython==8.23.0 +ipython==8.24.0 # via # great-expectations # ipykernel @@ -341,7 +300,7 @@ jedi==0.19.1 jinja2==3.1.4 # via # altair - # feast (setup.py) + # fastapi # great-expectations # jupyter-server # jupyterlab @@ -361,10 +320,9 @@ jsonpointer==2.4 # via # jsonpatch # jsonschema -jsonschema[format-nongpl]==4.21.1 +jsonschema[format-nongpl]==4.22.0 # via # altair - # feast (setup.py) # great-expectations # jupyter-events # jupyterlab-server @@ -398,18 +356,17 @@ jupyter-server==2.14.0 # notebook-shim jupyter-server-terminals==0.5.3 # via jupyter-server -jupyterlab==4.1.6 +jupyterlab==4.1.8 # via notebook jupyterlab-pygments==0.3.0 # via nbconvert -jupyterlab-server==2.26.0 +jupyterlab-server==2.27.1 # via # jupyterlab # notebook jupyterlab-widgets==3.0.10 # via ipywidgets kubernetes==20.13.0 - # via feast (setup.py) locket==1.0.0 # via partd makefun==1.15.2 @@ -421,7 +378,7 @@ markupsafe==2.1.5 # jinja2 # nbconvert # werkzeug -marshmallow==3.21.1 +marshmallow==3.21.2 # via great-expectations matplotlib-inline==0.1.7 # via @@ -430,17 +387,13 @@ matplotlib-inline==0.1.7 mdurl==0.1.2 # via markdown-it-py minio==7.1.0 - # via feast (setup.py) mistune==3.0.2 # via # great-expectations # nbconvert mmh3==4.1.0 - # via feast (setup.py) mock==2.0.0 - # via feast (setup.py) moto==4.2.14 - # via feast (setup.py) msal==1.28.0 # via # azure-identity @@ -449,19 +402,14 @@ msal-extensions==1.1.0 # via azure-identity msgpack==1.0.8 # via cachecontrol -multipledispatch==1.0.0 - # via ibis-framework -mypy==1.9.0 - # via - # feast (setup.py) - # sqlalchemy +mypy==1.10.0 + # via sqlalchemy mypy-extensions==1.0.0 # via mypy mypy-protobuf==3.3.0 - # via feast (setup.py) nbclient==0.10.0 # via nbconvert -nbconvert==7.16.3 +nbconvert==7.16.4 # via jupyter-server nbformat==5.10.4 # via @@ -484,7 +432,6 @@ numpy==1.26.4 # altair # dask # db-dtypes - # feast (setup.py) # great-expectations # ibis-framework # pandas @@ -492,6 +439,8 @@ numpy==1.26.4 # scipy oauthlib==3.2.2 # via requests-oauthlib +orjson==3.10.3 + # via fastapi overrides==7.7.0 # via jupyter-server packaging==24.0 @@ -500,7 +449,6 @@ packaging==24.0 # dask # db-dtypes # docker - # duckdb-engine # google-cloud-bigquery # great-expectations # gunicorn @@ -521,7 +469,6 @@ pandas==2.2.2 # dask # dask-expr # db-dtypes - # feast (setup.py) # google-cloud-bigquery # great-expectations # ibis-framework @@ -532,27 +479,27 @@ parso==0.8.4 # via jedi parsy==2.1 # via ibis-framework -partd==1.4.1 +partd==1.4.2 # via dask pbr==6.0.0 # via mock pexpect==4.9.0 # via ipython +pip==24.0 + # via pip-tools pip-tools==7.4.1 - # via feast (setup.py) platformdirs==3.11.0 # via # jupyter-core # snowflake-connector-python # virtualenv -pluggy==1.4.0 +pluggy==1.5.0 # via pytest ply==3.11 # via thriftpy2 portalocker==2.8.2 # via msal-extensions pre-commit==3.3.1 - # via feast (setup.py) prometheus-client==0.20.0 # via jupyter-server prompt-toolkit==3.0.43 @@ -567,7 +514,6 @@ proto-plus==1.23.0 # google-cloud-firestore protobuf==4.25.3 # via - # feast (setup.py) # google-api-core # google-cloud-bigquery # google-cloud-bigquery-storage @@ -585,11 +531,8 @@ protobuf==4.25.3 # proto-plus # substrait psutil==5.9.0 - # via - # feast (setup.py) - # ipykernel + # via ipykernel psycopg2-binary==2.9.9 - # via feast (setup.py) ptyprocess==0.7.0 # via # pexpect @@ -597,17 +540,15 @@ ptyprocess==0.7.0 pure-eval==0.2.2 # via stack-data py==1.11.0 - # via feast (setup.py) py-cpuinfo==9.0.0 # via pytest-benchmark py4j==0.10.9.7 # via pyspark -pyarrow==15.0.2 +pyarrow==16.0.0 # via # dask-expr # db-dtypes # deltalake - # feast (setup.py) # google-cloud-bigquery # ibis-framework # snowflake-connector-python @@ -622,19 +563,16 @@ pyasn1==0.6.0 pyasn1-modules==0.4.0 # via google-auth pybindgen==0.22.1 - # via feast (setup.py) pycparser==2.22 # via cffi -pydantic==2.7.0 +pydantic==2.7.1 # via # fastapi - # feast (setup.py) # great-expectations -pydantic-core==2.18.1 +pydantic-core==2.18.2 # via pydantic -pygments==2.17.2 +pygments==2.18.0 # via - # feast (setup.py) # ipython # nbconvert # rich @@ -644,26 +582,21 @@ pyjwt[crypto]==2.8.0 # msal # snowflake-connector-python pymssql==2.3.0 - # via feast (setup.py) pymysql==1.1.0 - # via feast (setup.py) pyodbc==5.1.0 - # via feast (setup.py) pyopenssl==24.1.0 # via snowflake-connector-python pyparsing==3.1.2 # via # great-expectations # httplib2 -pyproject-hooks==1.0.0 +pyproject-hooks==1.1.0 # via # build # pip-tools pyspark==3.5.1 - # via feast (setup.py) pytest==7.4.4 # via - # feast (setup.py) # pytest-benchmark # pytest-cov # pytest-env @@ -673,21 +606,13 @@ pytest==7.4.4 # pytest-timeout # pytest-xdist pytest-benchmark==3.4.1 - # via feast (setup.py) pytest-cov==5.0.0 - # via feast (setup.py) pytest-env==1.1.3 - # via feast (setup.py) pytest-lazy-fixture==0.6.3 - # via feast (setup.py) pytest-mock==1.10.4 - # via feast (setup.py) pytest-ordering==0.6 - # via feast (setup.py) pytest-timeout==1.4.2 - # via feast (setup.py) -pytest-xdist==3.6.0 - # via feast (setup.py) +pytest-xdist==3.6.1 python-dateutil==2.9.0.post0 # via # arrow @@ -705,6 +630,8 @@ python-dotenv==1.0.1 # via uvicorn python-json-logger==2.0.7 # via jupyter-events +python-multipart==0.0.9 + # via fastapi pytz==2024.1 # via # great-expectations @@ -715,33 +642,29 @@ pytz==2024.1 pyyaml==6.0.1 # via # dask - # feast (setup.py) # ibis-substrait # jupyter-events # kubernetes # pre-commit # responses # uvicorn -pyzmq==26.0.2 +pyzmq==26.0.3 # via # ipykernel # jupyter-client # jupyter-server redis==4.6.0 - # via feast (setup.py) -referencing==0.34.0 +referencing==0.35.1 # via # jsonschema # jsonschema-specifications # jupyter-events -regex==2024.4.16 - # via feast (setup.py) +regex==2024.4.28 requests==2.31.0 # via # azure-core # cachecontrol # docker - # feast (setup.py) # google-api-core # google-cloud-bigquery # google-cloud-storage @@ -768,10 +691,11 @@ rfc3986-validator==0.1.1 # jsonschema # jupyter-events rich==13.7.1 - # via ibis-framework -rockset==2.1.1 - # via feast (setup.py) -rpds-py==0.18.0 + # via + # ibis-framework + # typer +rockset==2.1.2 +rpds-py==0.18.1 # via # jsonschema # referencing @@ -779,14 +703,21 @@ rsa==4.9 # via google-auth ruamel-yaml==0.17.17 # via great-expectations -ruff==0.4.1 - # via feast (setup.py) +ruff==0.4.3 s3transfer==0.10.1 # via boto3 scipy==1.13.0 # via great-expectations send2trash==1.8.3 # via jupyter-server +setuptools==69.5.1 + # via + # grpcio-tools + # kubernetes + # nodeenv + # pip-tools +shellingham==1.5.4 + # via typer six==1.16.0 # via # asttokens @@ -806,14 +737,12 @@ sniffio==1.3.1 # httpx snowballstemmer==2.2.0 # via sphinx -snowflake-connector-python[pandas]==3.9.0 - # via feast (setup.py) +snowflake-connector-python[pandas]==3.10.0 sortedcontainers==2.4.0 # via snowflake-connector-python soupsieve==2.5 # via beautifulsoup4 sphinx==6.2.1 - # via feast (setup.py) sphinxcontrib-applehelp==1.0.8 # via sphinx sphinxcontrib-devhelp==1.0.6 @@ -826,39 +755,27 @@ sphinxcontrib-qthelp==1.0.7 # via sphinx sphinxcontrib-serializinghtml==1.1.10 # via sphinx -sqlalchemy[mypy]==2.0.29 - # via - # duckdb-engine - # feast (setup.py) - # ibis-framework - # sqlalchemy - # sqlalchemy-views -sqlalchemy-views==0.3.2 - # via ibis-framework -sqlglot==20.11.0 +sqlalchemy[mypy]==2.0.30 +sqlglot==23.12.2 # via ibis-framework stack-data==0.6.3 # via ipython starlette==0.37.2 # via fastapi -substrait==0.16.0 +substrait==0.17.0 # via ibis-substrait tabulate==0.9.0 - # via feast (setup.py) -tenacity==8.2.3 - # via feast (setup.py) +tenacity==8.3.0 terminado==0.18.1 # via # jupyter-server # jupyter-server-terminals -testcontainers==4.3.3 - # via feast (setup.py) -thriftpy2==0.4.20 +testcontainers==4.4.0 +thriftpy2==0.5.0 # via happybase -tinycss2==1.2.1 +tinycss2==1.3.0 # via nbconvert toml==0.10.2 - # via feast (setup.py) tomli==2.0.1 # via # build @@ -866,7 +783,6 @@ tomli==2.0.1 # jupyterlab # mypy # pip-tools - # pyproject-hooks # pytest # pytest-env tomlkit==0.12.4 @@ -885,10 +801,8 @@ tornado==6.4 # jupyterlab # notebook # terminado -tqdm==4.66.3 - # via - # feast (setup.py) - # great-expectations +tqdm==4.66.4 + # via great-expectations traitlets==5.14.3 # via # comm @@ -905,37 +819,25 @@ traitlets==5.14.3 # nbconvert # nbformat trino==0.328.0 - # via feast (setup.py) typeguard==4.2.1 - # via feast (setup.py) +typer==0.12.3 + # via fastapi-cli types-cffi==1.16.0.20240331 # via types-pyopenssl types-protobuf==3.19.22 - # via - # feast (setup.py) - # mypy-protobuf -types-pymysql==1.1.0.1 - # via feast (setup.py) -types-pyopenssl==24.0.0.20240417 + # via mypy-protobuf +types-pymysql==1.1.0.20240425 +types-pyopenssl==24.1.0.20240425 # via types-redis types-python-dateutil==2.9.0.20240316 - # via - # arrow - # feast (setup.py) + # via arrow types-pytz==2024.1.0.20240417 - # via feast (setup.py) types-pyyaml==6.0.12.20240311 - # via feast (setup.py) -types-redis==4.6.0.20240417 - # via feast (setup.py) +types-redis==4.6.0.20240425 types-requests==2.30.0.0 - # via feast (setup.py) -types-setuptools==69.5.0.20240415 - # via - # feast (setup.py) - # types-cffi +types-setuptools==69.5.0.20240423 + # via types-cffi types-tabulate==0.9.0.20240106 - # via feast (setup.py) types-urllib3==1.26.25.14 # via types-requests typing-extensions==4.11.0 @@ -955,6 +857,7 @@ typing-extensions==4.11.0 # sqlalchemy # testcontainers # typeguard + # typer # uvicorn tzdata==2024.1 # via pandas @@ -962,6 +865,8 @@ tzlocal==5.2 # via # great-expectations # trino +ujson==5.9.0 + # via fastapi uri-template==1.3.0 # via jsonschema uritemplate==4.1.1 @@ -970,7 +875,6 @@ urllib3==1.26.18 # via # botocore # docker - # feast (setup.py) # great-expectations # kubernetes # minio @@ -979,13 +883,13 @@ urllib3==1.26.18 # rockset # testcontainers uvicorn[standard]==0.29.0 - # via feast (setup.py) + # via + # fastapi + # fastapi-cli uvloop==0.19.0 # via uvicorn virtualenv==20.23.0 - # via - # feast (setup.py) - # pre-commit + # via pre-commit watchfiles==0.21.0 # via uvicorn wcwidth==0.2.13 @@ -996,7 +900,7 @@ webencodings==0.5.1 # via # bleach # tinycss2 -websocket-client==1.7.0 +websocket-client==1.8.0 # via # jupyter-server # kubernetes @@ -1014,7 +918,3 @@ xmltodict==0.13.0 # via moto zipp==3.18.1 # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# pip -# setuptools diff --git a/sdk/python/requirements/py3.10-requirements.txt b/sdk/python/requirements/py3.10-requirements.txt index 0866a4e2168..99c9bfc3fee 100644 --- a/sdk/python/requirements/py3.10-requirements.txt +++ b/sdk/python/requirements/py3.10-requirements.txt @@ -1,13 +1,10 @@ -# -# This file is autogenerated by pip-compile with Python 3.10 -# by the following command: -# -# pip-compile --output-file=sdk/python/requirements/py3.10-requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --system --no-strip-extras setup.py --output-file sdk/python/requirements/py3.10-requirements.txt annotated-types==0.6.0 # via pydantic anyio==4.3.0 # via + # httpx # starlette # watchfiles attrs==23.2.0 @@ -15,70 +12,84 @@ attrs==23.2.0 # jsonschema # referencing certifi==2024.2.2 - # via requests + # via + # httpcore + # httpx + # requests charset-normalizer==3.3.2 # via requests click==8.1.7 # via # dask - # feast (setup.py) + # typer # uvicorn cloudpickle==3.0.0 # via dask colorama==0.4.6 - # via feast (setup.py) -dask[array,dataframe]==2024.4.2 - # via - # dask-expr - # feast (setup.py) -dask-expr==1.0.12 +dask[dataframe]==2024.5.0 + # via dask-expr +dask-expr==1.1.0 # via dask dill==0.3.8 - # via feast (setup.py) +dnspython==2.6.1 + # via email-validator +email-validator==2.1.1 + # via fastapi exceptiongroup==1.2.1 # via anyio -fastapi==0.110.2 - # via feast (setup.py) +fastapi==0.111.0 + # via fastapi-cli +fastapi-cli==0.0.2 + # via fastapi fsspec==2024.3.1 # via dask greenlet==3.0.3 # via sqlalchemy -gunicorn==22.0.0 ; platform_system != "Windows" - # via feast (setup.py) +gunicorn==22.0.0 h11==0.14.0 - # via uvicorn + # via + # httpcore + # uvicorn +httpcore==1.0.5 + # via httpx httptools==0.6.1 # via uvicorn +httpx==0.27.0 + # via fastapi idna==3.7 # via # anyio + # email-validator + # httpx # requests importlib-metadata==7.1.0 # via dask jinja2==3.1.4 - # via feast (setup.py) -jsonschema==4.21.1 - # via feast (setup.py) + # via fastapi +jsonschema==4.22.0 jsonschema-specifications==2023.12.1 # via jsonschema locket==1.0.0 # via partd +markdown-it-py==3.0.0 + # via rich markupsafe==2.1.5 # via jinja2 +mdurl==0.1.2 + # via markdown-it-py mmh3==4.1.0 - # via feast (setup.py) -mypy==1.9.0 +mypy==1.10.0 # via sqlalchemy mypy-extensions==1.0.0 # via mypy mypy-protobuf==3.6.0 - # via feast (setup.py) numpy==1.26.4 # via # dask - # feast (setup.py) # pandas # pyarrow +orjson==3.10.3 + # via fastapi packaging==24.0 # via # dask @@ -87,73 +98,66 @@ pandas==2.2.2 # via # dask # dask-expr - # feast (setup.py) -partd==1.4.1 +partd==1.4.2 # via dask protobuf==4.25.3 - # via - # feast (setup.py) - # mypy-protobuf -pyarrow==15.0.2 - # via - # dask-expr - # feast (setup.py) -pydantic==2.7.0 - # via - # fastapi - # feast (setup.py) -pydantic-core==2.18.1 + # via mypy-protobuf +pyarrow==16.0.0 + # via dask-expr +pydantic==2.7.1 + # via fastapi +pydantic-core==2.18.2 # via pydantic -pygments==2.17.2 - # via feast (setup.py) +pygments==2.18.0 + # via rich python-dateutil==2.9.0.post0 # via pandas python-dotenv==1.0.1 # via uvicorn +python-multipart==0.0.9 + # via fastapi pytz==2024.1 # via pandas pyyaml==6.0.1 # via # dask - # feast (setup.py) # uvicorn -referencing==0.34.0 +referencing==0.35.1 # via # jsonschema # jsonschema-specifications requests==2.31.0 - # via feast (setup.py) -rpds-py==0.18.0 +rich==13.7.1 + # via typer +rpds-py==0.18.1 # via # jsonschema # referencing +shellingham==1.5.4 + # via typer six==1.16.0 # via python-dateutil sniffio==1.3.1 - # via anyio -sqlalchemy[mypy]==2.0.29 # via - # feast (setup.py) - # sqlalchemy + # anyio + # httpx +sqlalchemy[mypy]==2.0.30 starlette==0.37.2 # via fastapi tabulate==0.9.0 - # via feast (setup.py) -tenacity==8.2.3 - # via feast (setup.py) +tenacity==8.3.0 toml==0.10.2 - # via feast (setup.py) tomli==2.0.1 # via mypy toolz==0.12.1 # via # dask # partd -tqdm==4.66.3 - # via feast (setup.py) +tqdm==4.66.4 typeguard==4.2.1 - # via feast (setup.py) -types-protobuf==5.26.0.20240420 +typer==0.12.3 + # via fastapi-cli +types-protobuf==5.26.0.20240422 # via mypy-protobuf typing-extensions==4.11.0 # via @@ -164,13 +168,18 @@ typing-extensions==4.11.0 # pydantic-core # sqlalchemy # typeguard + # typer # uvicorn tzdata==2024.1 # via pandas +ujson==5.9.0 + # via fastapi urllib3==2.2.1 # via requests uvicorn[standard]==0.29.0 - # via feast (setup.py) + # via + # fastapi + # fastapi-cli uvloop==0.19.0 # via uvicorn watchfiles==0.21.0 diff --git a/sdk/python/requirements/py3.11-ci-requirements.txt b/sdk/python/requirements/py3.11-ci-requirements.txt index 8c9a1325483..fd9700cf7f1 100644 --- a/sdk/python/requirements/py3.11-ci-requirements.txt +++ b/sdk/python/requirements/py3.11-ci-requirements.txt @@ -1,9 +1,5 @@ -# -# This file is autogenerated by pip-compile with Python 3.9 -# by the following command: -# -# pip-compile --extra=ci --output-file=sdk/python/requirements/py3.11-ci-requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --system --no-strip-extras setup.py --extra ci --output-file sdk/python/requirements/py3.11-ci-requirements.txt alabaster==0.7.16 # via sphinx altair==4.2.2 @@ -16,10 +12,6 @@ anyio==4.3.0 # jupyter-server # starlette # watchfiles -appdirs==1.4.4 - # via fissix -appnope==0.1.4 - # via ipykernel argon2-cffi==23.1.0 # via jupyter-server argon2-cffi-bindings==21.2.0 @@ -29,18 +21,14 @@ arrow==1.3.0 asn1crypto==1.5.1 # via snowflake-connector-python assertpy==1.1 - # via feast (setup.py) asttokens==2.4.1 # via stack-data async-lru==2.0.4 # via jupyterlab -async-timeout==4.0.3 - # via redis atpublic==4.1.0 # via ibis-framework attrs==23.2.0 # via - # bowler # jsonschema # referencing azure-core==1.30.1 @@ -48,10 +36,8 @@ azure-core==1.30.1 # azure-identity # azure-storage-blob azure-identity==1.16.0 - # via feast (setup.py) azure-storage-blob==12.19.1 - # via feast (setup.py) -babel==2.14.0 +babel==2.15.0 # via # jupyterlab-server # sphinx @@ -61,27 +47,20 @@ bidict==0.23.1 # via ibis-framework bleach==6.1.0 # via nbconvert -boto3==1.34.93 - # via - # feast (setup.py) - # moto -botocore==1.34.93 +boto3==1.34.99 + # via moto +botocore==1.34.99 # via # boto3 # moto # s3transfer -bowler==0.9.0 - # via feast (setup.py) build==1.2.1 - # via - # feast (setup.py) - # pip-tools + # via pip-tools cachecontrol==0.14.0 # via firebase-admin cachetools==5.3.3 # via google-auth cassandra-driver==3.29.1 - # via feast (setup.py) certifi==2024.2.2 # via # httpcore @@ -103,31 +82,26 @@ charset-normalizer==3.3.2 # snowflake-connector-python click==8.1.7 # via - # bowler # dask - # feast (setup.py) # geomet # great-expectations - # moreorless # pip-tools + # typer # uvicorn cloudpickle==3.0.0 # via dask colorama==0.4.6 - # via - # feast (setup.py) - # great-expectations + # via great-expectations comm==0.2.2 # via # ipykernel # ipywidgets -coverage[toml]==7.5.0 +coverage[toml]==7.5.1 # via pytest-cov -cryptography==42.0.5 +cryptography==42.0.7 # via # azure-identity # azure-storage-blob - # feast (setup.py) # great-expectations # moto # msal @@ -136,11 +110,9 @@ cryptography==42.0.5 # snowflake-connector-python # types-pyopenssl # types-redis -dask[array,dataframe]==2024.4.2 - # via - # dask-expr - # feast (setup.py) -dask-expr==1.0.13 +dask[dataframe]==2024.5.0 + # via dask-expr +dask-expr==1.1.0 # via dask db-dtypes==1.2.0 # via google-cloud-bigquery @@ -150,37 +122,30 @@ decorator==5.1.1 # via ipython defusedxml==0.7.1 # via nbconvert -deltalake==0.17.2 - # via feast (setup.py) +deltalake==0.17.3 dill==0.3.8 - # via feast (setup.py) distlib==0.3.8 # via virtualenv +dnspython==2.6.1 + # via email-validator docker==7.0.0 - # via - # feast (setup.py) - # testcontainers + # via testcontainers docutils==0.19 # via sphinx duckdb==0.10.2 - # via - # duckdb-engine - # ibis-framework -duckdb-engine==0.12.0 # via ibis-framework +email-validator==2.1.1 + # via fastapi entrypoints==0.4 # via altair -exceptiongroup==1.2.1 - # via - # anyio - # ipython - # pytest execnet==2.1.1 # via pytest-xdist executing==2.0.1 # via stack-data -fastapi==0.110.2 - # via feast (setup.py) +fastapi==0.111.0 + # via fastapi-cli +fastapi-cli==0.0.2 + # via fastapi fastjsonschema==2.19.1 # via nbformat filelock==3.14.0 @@ -188,22 +153,16 @@ filelock==3.14.0 # snowflake-connector-python # virtualenv firebase-admin==5.4.0 - # via feast (setup.py) -fissix==24.4.24 - # via bowler fqdn==1.5.1 # via jsonschema fsspec==2023.12.2 - # via - # dask - # feast (setup.py) + # via dask geojson==2.5.0 # via rockset geomet==0.2.1.post1 # via cassandra-driver -google-api-core[grpc]==2.18.0 +google-api-core[grpc]==2.19.0 # via - # feast (setup.py) # firebase-admin # google-api-python-client # google-cloud-bigquery @@ -213,13 +172,14 @@ google-api-core[grpc]==2.18.0 # google-cloud-datastore # google-cloud-firestore # google-cloud-storage -google-api-python-client==2.127.0 +google-api-python-client==2.128.0 # via firebase-admin google-auth==2.29.0 # via # google-api-core # google-api-python-client # google-auth-httplib2 + # google-cloud-bigquery-storage # google-cloud-core # google-cloud-firestore # google-cloud-storage @@ -227,11 +187,8 @@ google-auth==2.29.0 google-auth-httplib2==0.2.0 # via google-api-python-client google-cloud-bigquery[pandas]==3.12.0 - # via feast (setup.py) -google-cloud-bigquery-storage==2.24.0 - # via feast (setup.py) +google-cloud-bigquery-storage==2.25.0 google-cloud-bigtable==2.23.1 - # via feast (setup.py) google-cloud-core==2.4.1 # via # google-cloud-bigquery @@ -240,13 +197,10 @@ google-cloud-core==2.4.1 # google-cloud-firestore # google-cloud-storage google-cloud-datastore==2.19.0 - # via feast (setup.py) google-cloud-firestore==2.16.0 # via firebase-admin google-cloud-storage==2.16.0 - # via - # feast (setup.py) - # firebase-admin + # via firebase-admin google-crc32c==1.5.0 # via # google-cloud-storage @@ -257,19 +211,16 @@ google-resumable-media==2.7.0 # google-cloud-storage googleapis-common-protos[grpc]==1.63.0 # via - # feast (setup.py) # google-api-core # grpc-google-iam-v1 # grpcio-status -great-expectations==0.18.12 - # via feast (setup.py) +great-expectations==0.18.13 greenlet==3.0.3 # via sqlalchemy grpc-google-iam-v1==0.13.0 # via google-cloud-bigtable -grpcio==1.62.2 +grpcio==1.63.0 # via - # feast (setup.py) # google-api-core # google-cloud-bigquery # googleapis-common-protos @@ -280,27 +231,19 @@ grpcio==1.62.2 # grpcio-testing # grpcio-tools grpcio-health-checking==1.62.2 - # via feast (setup.py) grpcio-reflection==1.62.2 - # via feast (setup.py) grpcio-status==1.62.2 # via google-api-core grpcio-testing==1.62.2 - # via feast (setup.py) grpcio-tools==1.62.2 - # via feast (setup.py) -gunicorn==22.0.0 ; platform_system != "Windows" - # via feast (setup.py) +gunicorn==22.0.0 h11==0.14.0 # via # httpcore # uvicorn happybase==1.2.0 - # via feast (setup.py) hazelcast-python-client==5.3.0 - # via feast (setup.py) hiredis==2.3.2 - # via feast (setup.py) httpcore==1.0.5 # via httpx httplib2==0.22.0 @@ -311,19 +254,17 @@ httptools==0.6.1 # via uvicorn httpx==0.27.0 # via - # feast (setup.py) + # fastapi # jupyterlab -ibis-framework[duckdb]==8.0.0 - # via - # feast (setup.py) - # ibis-substrait +ibis-framework[duckdb]==9.0.0 + # via ibis-substrait ibis-substrait==3.2.0 - # via feast (setup.py) identify==2.5.36 # via pre-commit idna==3.7 # via # anyio + # email-validator # httpx # jsonschema # requests @@ -331,21 +272,12 @@ idna==3.7 imagesize==1.4.1 # via sphinx importlib-metadata==7.1.0 - # via - # build - # dask - # jupyter-client - # jupyter-lsp - # jupyterlab - # jupyterlab-server - # nbconvert - # sphinx - # typeguard + # via dask iniconfig==2.0.0 # via pytest ipykernel==6.29.4 # via jupyterlab -ipython==8.18.1 +ipython==8.24.0 # via # great-expectations # ipykernel @@ -361,7 +293,7 @@ jedi==0.19.1 jinja2==3.1.4 # via # altair - # feast (setup.py) + # fastapi # great-expectations # jupyter-server # jupyterlab @@ -381,10 +313,9 @@ jsonpointer==2.4 # via # jsonpatch # jsonschema -jsonschema[format-nongpl]==4.21.1 +jsonschema[format-nongpl]==4.22.0 # via # altair - # feast (setup.py) # great-expectations # jupyter-events # jupyterlab-server @@ -429,7 +360,6 @@ jupyterlab-server==2.27.1 jupyterlab-widgets==3.0.10 # via ipywidgets kubernetes==20.13.0 - # via feast (setup.py) locket==1.0.0 # via partd makefun==1.15.2 @@ -441,7 +371,7 @@ markupsafe==2.1.5 # jinja2 # nbconvert # werkzeug -marshmallow==3.21.1 +marshmallow==3.21.2 # via great-expectations matplotlib-inline==0.1.7 # via @@ -450,19 +380,13 @@ matplotlib-inline==0.1.7 mdurl==0.1.2 # via markdown-it-py minio==7.1.0 - # via feast (setup.py) mistune==3.0.2 # via # great-expectations # nbconvert mmh3==4.1.0 - # via feast (setup.py) mock==2.0.0 - # via feast (setup.py) -moreorless==0.4.0 - # via bowler moto==4.2.14 - # via feast (setup.py) msal==1.28.0 # via # azure-identity @@ -471,16 +395,11 @@ msal-extensions==1.1.0 # via azure-identity msgpack==1.0.8 # via cachecontrol -multipledispatch==1.0.0 - # via ibis-framework mypy==1.10.0 - # via - # feast (setup.py) - # sqlalchemy + # via sqlalchemy mypy-extensions==1.0.0 # via mypy mypy-protobuf==3.3.0 - # via feast (setup.py) nbclient==0.10.0 # via nbconvert nbconvert==7.16.4 @@ -506,7 +425,6 @@ numpy==1.26.4 # altair # dask # db-dtypes - # feast (setup.py) # great-expectations # ibis-framework # pandas @@ -514,6 +432,8 @@ numpy==1.26.4 # scipy oauthlib==3.2.2 # via requests-oauthlib +orjson==3.10.3 + # via fastapi overrides==7.7.0 # via jupyter-server packaging==24.0 @@ -522,7 +442,6 @@ packaging==24.0 # dask # db-dtypes # docker - # duckdb-engine # google-cloud-bigquery # great-expectations # gunicorn @@ -543,7 +462,6 @@ pandas==2.2.2 # dask # dask-expr # db-dtypes - # feast (setup.py) # google-cloud-bigquery # great-expectations # ibis-framework @@ -554,14 +472,15 @@ parso==0.8.4 # via jedi parsy==2.1 # via ibis-framework -partd==1.4.1 +partd==1.4.2 # via dask pbr==6.0.0 # via mock pexpect==4.9.0 # via ipython +pip==24.0 + # via pip-tools pip-tools==7.4.1 - # via feast (setup.py) platformdirs==3.11.0 # via # jupyter-core @@ -574,7 +493,6 @@ ply==3.11 portalocker==2.8.2 # via msal-extensions pre-commit==3.3.1 - # via feast (setup.py) prometheus-client==0.20.0 # via jupyter-server prompt-toolkit==3.0.43 @@ -589,7 +507,6 @@ proto-plus==1.23.0 # google-cloud-firestore protobuf==4.25.3 # via - # feast (setup.py) # google-api-core # google-cloud-bigquery # google-cloud-bigquery-storage @@ -607,11 +524,8 @@ protobuf==4.25.3 # proto-plus # substrait psutil==5.9.0 - # via - # feast (setup.py) - # ipykernel + # via ipykernel psycopg2-binary==2.9.9 - # via feast (setup.py) ptyprocess==0.7.0 # via # pexpect @@ -619,17 +533,15 @@ ptyprocess==0.7.0 pure-eval==0.2.2 # via stack-data py==1.11.0 - # via feast (setup.py) py-cpuinfo==9.0.0 # via pytest-benchmark py4j==0.10.9.7 # via pyspark -pyarrow==15.0.2 +pyarrow==16.0.0 # via # dask-expr # db-dtypes # deltalake - # feast (setup.py) # google-cloud-bigquery # ibis-framework # snowflake-connector-python @@ -644,19 +556,16 @@ pyasn1==0.6.0 pyasn1-modules==0.4.0 # via google-auth pybindgen==0.22.1 - # via feast (setup.py) pycparser==2.22 # via cffi pydantic==2.7.1 # via # fastapi - # feast (setup.py) # great-expectations pydantic-core==2.18.2 # via pydantic -pygments==2.17.2 +pygments==2.18.0 # via - # feast (setup.py) # ipython # nbconvert # rich @@ -666,11 +575,8 @@ pyjwt[crypto]==2.8.0 # msal # snowflake-connector-python pymssql==2.3.0 - # via feast (setup.py) pymysql==1.1.0 - # via feast (setup.py) pyodbc==5.1.0 - # via feast (setup.py) pyopenssl==24.1.0 # via snowflake-connector-python pyparsing==3.1.2 @@ -682,10 +588,8 @@ pyproject-hooks==1.1.0 # build # pip-tools pyspark==3.5.1 - # via feast (setup.py) pytest==7.4.4 # via - # feast (setup.py) # pytest-benchmark # pytest-cov # pytest-env @@ -695,21 +599,13 @@ pytest==7.4.4 # pytest-timeout # pytest-xdist pytest-benchmark==3.4.1 - # via feast (setup.py) pytest-cov==5.0.0 - # via feast (setup.py) pytest-env==1.1.3 - # via feast (setup.py) pytest-lazy-fixture==0.6.3 - # via feast (setup.py) pytest-mock==1.10.4 - # via feast (setup.py) pytest-ordering==0.6 - # via feast (setup.py) pytest-timeout==1.4.2 - # via feast (setup.py) pytest-xdist==3.6.1 - # via feast (setup.py) python-dateutil==2.9.0.post0 # via # arrow @@ -727,6 +623,8 @@ python-dotenv==1.0.1 # via uvicorn python-json-logger==2.0.7 # via jupyter-events +python-multipart==0.0.9 + # via fastapi pytz==2024.1 # via # great-expectations @@ -737,33 +635,29 @@ pytz==2024.1 pyyaml==6.0.1 # via # dask - # feast (setup.py) # ibis-substrait # jupyter-events # kubernetes # pre-commit # responses # uvicorn -pyzmq==26.0.2 +pyzmq==26.0.3 # via # ipykernel # jupyter-client # jupyter-server redis==4.6.0 - # via feast (setup.py) -referencing==0.35.0 +referencing==0.35.1 # via # jsonschema # jsonschema-specifications # jupyter-events regex==2024.4.28 - # via feast (setup.py) requests==2.31.0 # via # azure-core # cachecontrol # docker - # feast (setup.py) # google-api-core # google-cloud-bigquery # google-cloud-storage @@ -790,10 +684,11 @@ rfc3986-validator==0.1.1 # jsonschema # jupyter-events rich==13.7.1 - # via ibis-framework -rockset==2.1.1 - # via feast (setup.py) -rpds-py==0.18.0 + # via + # ibis-framework + # typer +rockset==2.1.2 +rpds-py==0.18.1 # via # jsonschema # referencing @@ -801,16 +696,21 @@ rsa==4.9 # via google-auth ruamel-yaml==0.17.17 # via great-expectations -ruamel-yaml-clib==0.2.8 - # via ruamel-yaml -ruff==0.4.2 - # via feast (setup.py) +ruff==0.4.3 s3transfer==0.10.1 # via boto3 scipy==1.13.0 # via great-expectations send2trash==1.8.3 # via jupyter-server +setuptools==69.5.1 + # via + # grpcio-tools + # kubernetes + # nodeenv + # pip-tools +shellingham==1.5.4 + # via typer six==1.16.0 # via # asttokens @@ -830,14 +730,12 @@ sniffio==1.3.1 # httpx snowballstemmer==2.2.0 # via sphinx -snowflake-connector-python[pandas]==3.9.1 - # via feast (setup.py) +snowflake-connector-python[pandas]==3.10.0 sortedcontainers==2.4.0 # via snowflake-connector-python soupsieve==2.5 # via beautifulsoup4 sphinx==6.2.1 - # via feast (setup.py) sphinxcontrib-applehelp==1.0.8 # via sphinx sphinxcontrib-devhelp==1.0.6 @@ -850,16 +748,8 @@ sphinxcontrib-qthelp==1.0.7 # via sphinx sphinxcontrib-serializinghtml==1.1.10 # via sphinx -sqlalchemy[mypy]==2.0.29 - # via - # duckdb-engine - # feast (setup.py) - # ibis-framework - # sqlalchemy - # sqlalchemy-views -sqlalchemy-views==0.3.2 - # via ibis-framework -sqlglot==20.11.0 +sqlalchemy[mypy]==2.0.30 +sqlglot==23.12.2 # via ibis-framework stack-data==0.6.3 # via ipython @@ -868,30 +758,17 @@ starlette==0.37.2 substrait==0.17.0 # via ibis-substrait tabulate==0.9.0 - # via feast (setup.py) -tenacity==8.2.3 - # via feast (setup.py) +tenacity==8.3.0 terminado==0.18.1 # via # jupyter-server # jupyter-server-terminals testcontainers==4.4.0 - # via feast (setup.py) -thriftpy2==0.4.20 +thriftpy2==0.5.0 # via happybase tinycss2==1.3.0 # via nbconvert toml==0.10.2 - # via feast (setup.py) -tomli==2.0.1 - # via - # build - # coverage - # jupyterlab - # mypy - # pip-tools - # pytest - # pytest-env tomlkit==0.12.4 # via snowflake-connector-python toolz==0.12.1 @@ -908,10 +785,8 @@ tornado==6.4 # jupyterlab # notebook # terminado -tqdm==4.66.3 - # via - # feast (setup.py) - # great-expectations +tqdm==4.66.4 + # via great-expectations traitlets==5.14.3 # via # comm @@ -928,43 +803,29 @@ traitlets==5.14.3 # nbconvert # nbformat trino==0.328.0 - # via feast (setup.py) typeguard==4.2.1 - # via feast (setup.py) +typer==0.12.3 + # via fastapi-cli types-cffi==1.16.0.20240331 # via types-pyopenssl types-protobuf==3.19.22 - # via - # feast (setup.py) - # mypy-protobuf + # via mypy-protobuf types-pymysql==1.1.0.20240425 - # via feast (setup.py) types-pyopenssl==24.1.0.20240425 # via types-redis types-python-dateutil==2.9.0.20240316 - # via - # arrow - # feast (setup.py) + # via arrow types-pytz==2024.1.0.20240417 - # via feast (setup.py) types-pyyaml==6.0.12.20240311 - # via feast (setup.py) types-redis==4.6.0.20240425 - # via feast (setup.py) types-requests==2.30.0.0 - # via feast (setup.py) types-setuptools==69.5.0.20240423 - # via - # feast (setup.py) - # types-cffi + # via types-cffi types-tabulate==0.9.0.20240106 - # via feast (setup.py) types-urllib3==1.26.25.14 # via types-requests typing-extensions==4.11.0 # via - # anyio - # async-lru # azure-core # azure-storage-blob # fastapi @@ -976,16 +837,17 @@ typing-extensions==4.11.0 # pydantic-core # snowflake-connector-python # sqlalchemy - # starlette # testcontainers # typeguard - # uvicorn + # typer tzdata==2024.1 # via pandas tzlocal==5.2 # via # great-expectations # trino +ujson==5.9.0 + # via fastapi uri-template==1.3.0 # via jsonschema uritemplate==4.1.1 @@ -994,25 +856,21 @@ urllib3==1.26.18 # via # botocore # docker - # feast (setup.py) # great-expectations # kubernetes # minio # requests # responses # rockset - # snowflake-connector-python # testcontainers uvicorn[standard]==0.29.0 - # via feast (setup.py) + # via + # fastapi + # fastapi-cli uvloop==0.19.0 # via uvicorn virtualenv==20.23.0 - # via - # feast (setup.py) - # pre-commit -volatile==2.1.0 - # via bowler + # via pre-commit watchfiles==0.21.0 # via uvicorn wcwidth==0.2.13 @@ -1041,7 +899,3 @@ xmltodict==0.13.0 # via moto zipp==3.18.1 # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# pip -# setuptools diff --git a/sdk/python/requirements/py3.11-requirements.txt b/sdk/python/requirements/py3.11-requirements.txt index 8431afc663f..c34b610d14c 100644 --- a/sdk/python/requirements/py3.11-requirements.txt +++ b/sdk/python/requirements/py3.11-requirements.txt @@ -1,97 +1,93 @@ -# -# This file is autogenerated by pip-compile with Python 3.9 -# by the following command: -# -# pip-compile --output-file=sdk/python/requirements/py3.11-requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --system --no-strip-extras setup.py --output-file sdk/python/requirements/py3.11-requirements.txt annotated-types==0.6.0 # via pydantic anyio==4.3.0 # via + # httpx # starlette # watchfiles -appdirs==1.4.4 - # via fissix attrs==23.2.0 # via - # bowler # jsonschema # referencing -bowler==0.9.0 - # via feast (setup.py) certifi==2024.2.2 - # via requests + # via + # httpcore + # httpx + # requests charset-normalizer==3.3.2 # via requests click==8.1.7 # via - # bowler # dask - # feast (setup.py) - # moreorless + # typer # uvicorn cloudpickle==3.0.0 # via dask colorama==0.4.6 - # via feast (setup.py) -dask[array,dataframe]==2024.4.2 - # via - # dask-expr - # feast (setup.py) -dask-expr==1.0.13 +dask[dataframe]==2024.5.0 + # via dask-expr +dask-expr==1.1.0 # via dask dill==0.3.8 - # via feast (setup.py) -exceptiongroup==1.2.1 - # via anyio -fastapi==0.110.2 - # via feast (setup.py) -fissix==24.4.24 - # via bowler +dnspython==2.6.1 + # via email-validator +email-validator==2.1.1 + # via fastapi +fastapi==0.111.0 + # via fastapi-cli +fastapi-cli==0.0.2 + # via fastapi fsspec==2024.3.1 # via dask greenlet==3.0.3 # via sqlalchemy -gunicorn==22.0.0 ; platform_system != "Windows" - # via feast (setup.py) +gunicorn==22.0.0 h11==0.14.0 - # via uvicorn + # via + # httpcore + # uvicorn +httpcore==1.0.5 + # via httpx httptools==0.6.1 # via uvicorn +httpx==0.27.0 + # via fastapi idna==3.7 # via # anyio + # email-validator + # httpx # requests importlib-metadata==7.1.0 - # via - # dask - # typeguard + # via dask jinja2==3.1.4 - # via feast (setup.py) -jsonschema==4.21.1 - # via feast (setup.py) + # via fastapi +jsonschema==4.22.0 jsonschema-specifications==2023.12.1 # via jsonschema locket==1.0.0 # via partd +markdown-it-py==3.0.0 + # via rich markupsafe==2.1.5 # via jinja2 +mdurl==0.1.2 + # via markdown-it-py mmh3==4.1.0 - # via feast (setup.py) -moreorless==0.4.0 - # via bowler mypy==1.10.0 # via sqlalchemy mypy-extensions==1.0.0 # via mypy mypy-protobuf==3.6.0 - # via feast (setup.py) numpy==1.26.4 # via # dask - # feast (setup.py) # pandas # pyarrow +orjson==3.10.3 + # via fastapi packaging==24.0 # via # dask @@ -100,95 +96,86 @@ pandas==2.2.2 # via # dask # dask-expr - # feast (setup.py) -partd==1.4.1 +partd==1.4.2 # via dask protobuf==4.25.3 - # via - # feast (setup.py) - # mypy-protobuf + # via mypy-protobuf pyarrow==16.0.0 - # via - # dask-expr - # feast (setup.py) + # via dask-expr pydantic==2.7.1 - # via - # fastapi - # feast (setup.py) + # via fastapi pydantic-core==2.18.2 # via pydantic -pygments==2.17.2 - # via feast (setup.py) +pygments==2.18.0 + # via rich python-dateutil==2.9.0.post0 # via pandas python-dotenv==1.0.1 # via uvicorn +python-multipart==0.0.9 + # via fastapi pytz==2024.1 # via pandas pyyaml==6.0.1 # via # dask - # feast (setup.py) # uvicorn -referencing==0.35.0 +referencing==0.35.1 # via # jsonschema # jsonschema-specifications requests==2.31.0 - # via feast (setup.py) -rpds-py==0.18.0 +rich==13.7.1 + # via typer +rpds-py==0.18.1 # via # jsonschema # referencing +shellingham==1.5.4 + # via typer six==1.16.0 # via python-dateutil sniffio==1.3.1 - # via anyio -sqlalchemy[mypy]==2.0.29 # via - # feast (setup.py) - # sqlalchemy + # anyio + # httpx +sqlalchemy[mypy]==2.0.30 starlette==0.37.2 # via fastapi tabulate==0.9.0 - # via feast (setup.py) -tenacity==8.2.3 - # via feast (setup.py) +tenacity==8.3.0 toml==0.10.2 - # via feast (setup.py) -tomli==2.0.1 - # via mypy toolz==0.12.1 # via # dask # partd -tqdm==4.66.3 - # via feast (setup.py) +tqdm==4.66.4 typeguard==4.2.1 - # via feast (setup.py) +typer==0.12.3 + # via fastapi-cli types-protobuf==5.26.0.20240422 # via mypy-protobuf typing-extensions==4.11.0 # via - # anyio # fastapi # mypy # pydantic # pydantic-core # sqlalchemy - # starlette # typeguard - # uvicorn + # typer tzdata==2024.1 # via pandas +ujson==5.9.0 + # via fastapi urllib3==2.2.1 # via requests uvicorn[standard]==0.29.0 - # via feast (setup.py) + # via + # fastapi + # fastapi-cli uvloop==0.19.0 # via uvicorn -volatile==2.1.0 - # via bowler watchfiles==0.21.0 # via uvicorn websockets==12.0 diff --git a/sdk/python/requirements/py3.9-ci-requirements.txt b/sdk/python/requirements/py3.9-ci-requirements.txt index 874ef1d58df..dc4bbbd60f1 100644 --- a/sdk/python/requirements/py3.9-ci-requirements.txt +++ b/sdk/python/requirements/py3.9-ci-requirements.txt @@ -1,9 +1,5 @@ -# -# This file is autogenerated by pip-compile with Python 3.9 -# by the following command: -# -# pip-compile --extra=ci --output-file=sdk/python/requirements/py3.9-ci-requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --system --no-strip-extras setup.py --extra ci --output-file sdk/python/requirements/py3.9-ci-requirements.txt alabaster==0.7.16 # via sphinx altair==4.2.2 @@ -25,7 +21,6 @@ arrow==1.3.0 asn1crypto==1.5.1 # via snowflake-connector-python assertpy==1.1 - # via feast (setup.py) asttokens==2.4.1 # via stack-data async-lru==2.0.4 @@ -43,10 +38,8 @@ azure-core==1.30.1 # azure-identity # azure-storage-blob azure-identity==1.16.0 - # via feast (setup.py) azure-storage-blob==12.19.1 - # via feast (setup.py) -babel==2.14.0 +babel==2.15.0 # via # jupyterlab-server # sphinx @@ -56,25 +49,20 @@ bidict==0.23.1 # via ibis-framework bleach==6.1.0 # via nbconvert -boto3==1.34.88 - # via - # feast (setup.py) - # moto -botocore==1.34.88 +boto3==1.34.99 + # via moto +botocore==1.34.99 # via # boto3 # moto # s3transfer build==1.2.1 - # via - # feast (setup.py) - # pip-tools + # via pip-tools cachecontrol==0.14.0 # via firebase-admin cachetools==5.3.3 # via google-auth cassandra-driver==3.29.1 - # via feast (setup.py) certifi==2024.2.2 # via # httpcore @@ -97,28 +85,25 @@ charset-normalizer==3.3.2 click==8.1.7 # via # dask - # feast (setup.py) # geomet # great-expectations # pip-tools + # typer # uvicorn cloudpickle==3.0.0 # via dask colorama==0.4.6 - # via - # feast (setup.py) - # great-expectations + # via great-expectations comm==0.2.2 # via # ipykernel # ipywidgets -coverage[toml]==7.4.4 +coverage[toml]==7.5.1 # via pytest-cov -cryptography==42.0.5 +cryptography==42.0.7 # via # azure-identity # azure-storage-blob - # feast (setup.py) # great-expectations # moto # msal @@ -127,11 +112,9 @@ cryptography==42.0.5 # snowflake-connector-python # types-pyopenssl # types-redis -dask[array,dataframe]==2024.4.2 - # via - # dask-expr - # feast (setup.py) -dask-expr==1.0.12 +dask[dataframe]==2024.5.0 + # via dask-expr +dask-expr==1.1.0 # via dask db-dtypes==1.2.0 # via google-cloud-bigquery @@ -141,24 +124,20 @@ decorator==5.1.1 # via ipython defusedxml==0.7.1 # via nbconvert -deltalake==0.16.4 - # via feast (setup.py) +deltalake==0.17.3 dill==0.3.8 - # via feast (setup.py) distlib==0.3.8 # via virtualenv +dnspython==2.6.1 + # via email-validator docker==7.0.0 - # via - # feast (setup.py) - # testcontainers + # via testcontainers docutils==0.19 # via sphinx duckdb==0.10.2 - # via - # duckdb-engine - # ibis-framework -duckdb-engine==0.11.5 # via ibis-framework +email-validator==2.1.1 + # via fastapi entrypoints==0.4 # via altair exceptiongroup==1.2.1 @@ -170,29 +149,27 @@ execnet==2.1.1 # via pytest-xdist executing==2.0.1 # via stack-data -fastapi==0.110.2 - # via feast (setup.py) +fastapi==0.111.0 + # via fastapi-cli +fastapi-cli==0.0.2 + # via fastapi fastjsonschema==2.19.1 # via nbformat -filelock==3.13.4 +filelock==3.14.0 # via # snowflake-connector-python # virtualenv firebase-admin==5.4.0 - # via feast (setup.py) fqdn==1.5.1 # via jsonschema fsspec==2023.12.2 - # via - # dask - # feast (setup.py) + # via dask geojson==2.5.0 # via rockset geomet==0.2.1.post1 # via cassandra-driver -google-api-core[grpc]==2.18.0 +google-api-core[grpc]==2.19.0 # via - # feast (setup.py) # firebase-admin # google-api-python-client # google-cloud-bigquery @@ -202,13 +179,14 @@ google-api-core[grpc]==2.18.0 # google-cloud-datastore # google-cloud-firestore # google-cloud-storage -google-api-python-client==2.126.0 +google-api-python-client==2.128.0 # via firebase-admin google-auth==2.29.0 # via # google-api-core # google-api-python-client # google-auth-httplib2 + # google-cloud-bigquery-storage # google-cloud-core # google-cloud-firestore # google-cloud-storage @@ -216,11 +194,8 @@ google-auth==2.29.0 google-auth-httplib2==0.2.0 # via google-api-python-client google-cloud-bigquery[pandas]==3.12.0 - # via feast (setup.py) -google-cloud-bigquery-storage==2.24.0 - # via feast (setup.py) +google-cloud-bigquery-storage==2.25.0 google-cloud-bigtable==2.23.1 - # via feast (setup.py) google-cloud-core==2.4.1 # via # google-cloud-bigquery @@ -229,13 +204,10 @@ google-cloud-core==2.4.1 # google-cloud-firestore # google-cloud-storage google-cloud-datastore==2.19.0 - # via feast (setup.py) google-cloud-firestore==2.16.0 # via firebase-admin google-cloud-storage==2.16.0 - # via - # feast (setup.py) - # firebase-admin + # via firebase-admin google-crc32c==1.5.0 # via # google-cloud-storage @@ -246,19 +218,16 @@ google-resumable-media==2.7.0 # google-cloud-storage googleapis-common-protos[grpc]==1.63.0 # via - # feast (setup.py) # google-api-core # grpc-google-iam-v1 # grpcio-status -great-expectations==0.18.12 - # via feast (setup.py) +great-expectations==0.18.13 greenlet==3.0.3 # via sqlalchemy grpc-google-iam-v1==0.13.0 # via google-cloud-bigtable -grpcio==1.62.2 +grpcio==1.63.0 # via - # feast (setup.py) # google-api-core # google-cloud-bigquery # googleapis-common-protos @@ -269,27 +238,19 @@ grpcio==1.62.2 # grpcio-testing # grpcio-tools grpcio-health-checking==1.62.2 - # via feast (setup.py) grpcio-reflection==1.62.2 - # via feast (setup.py) grpcio-status==1.62.2 # via google-api-core grpcio-testing==1.62.2 - # via feast (setup.py) grpcio-tools==1.62.2 - # via feast (setup.py) -gunicorn==22.0.0 ; platform_system != "Windows" - # via feast (setup.py) +gunicorn==22.0.0 h11==0.14.0 # via # httpcore # uvicorn happybase==1.2.0 - # via feast (setup.py) hazelcast-python-client==5.3.0 - # via feast (setup.py) hiredis==2.3.2 - # via feast (setup.py) httpcore==1.0.5 # via httpx httplib2==0.22.0 @@ -300,19 +261,17 @@ httptools==0.6.1 # via uvicorn httpx==0.27.0 # via - # feast (setup.py) + # fastapi # jupyterlab -ibis-framework[duckdb]==8.0.0 - # via - # feast (setup.py) - # ibis-substrait +ibis-framework[duckdb]==9.0.0 + # via ibis-substrait ibis-substrait==3.2.0 - # via feast (setup.py) -identify==2.5.35 +identify==2.5.36 # via pre-commit idna==3.7 # via # anyio + # email-validator # httpx # jsonschema # requests @@ -350,7 +309,7 @@ jedi==0.19.1 jinja2==3.1.4 # via # altair - # feast (setup.py) + # fastapi # great-expectations # jupyter-server # jupyterlab @@ -370,10 +329,9 @@ jsonpointer==2.4 # via # jsonpatch # jsonschema -jsonschema[format-nongpl]==4.21.1 +jsonschema[format-nongpl]==4.22.0 # via # altair - # feast (setup.py) # great-expectations # jupyter-events # jupyterlab-server @@ -407,18 +365,17 @@ jupyter-server==2.14.0 # notebook-shim jupyter-server-terminals==0.5.3 # via jupyter-server -jupyterlab==4.1.6 +jupyterlab==4.1.8 # via notebook jupyterlab-pygments==0.3.0 # via nbconvert -jupyterlab-server==2.26.0 +jupyterlab-server==2.27.1 # via # jupyterlab # notebook jupyterlab-widgets==3.0.10 # via ipywidgets kubernetes==20.13.0 - # via feast (setup.py) locket==1.0.0 # via partd makefun==1.15.2 @@ -430,7 +387,7 @@ markupsafe==2.1.5 # jinja2 # nbconvert # werkzeug -marshmallow==3.21.1 +marshmallow==3.21.2 # via great-expectations matplotlib-inline==0.1.7 # via @@ -439,17 +396,13 @@ matplotlib-inline==0.1.7 mdurl==0.1.2 # via markdown-it-py minio==7.1.0 - # via feast (setup.py) mistune==3.0.2 # via # great-expectations # nbconvert mmh3==4.1.0 - # via feast (setup.py) mock==2.0.0 - # via feast (setup.py) moto==4.2.14 - # via feast (setup.py) msal==1.28.0 # via # azure-identity @@ -458,19 +411,14 @@ msal-extensions==1.1.0 # via azure-identity msgpack==1.0.8 # via cachecontrol -multipledispatch==1.0.0 - # via ibis-framework -mypy==1.9.0 - # via - # feast (setup.py) - # sqlalchemy +mypy==1.10.0 + # via sqlalchemy mypy-extensions==1.0.0 # via mypy mypy-protobuf==3.3.0 - # via feast (setup.py) nbclient==0.10.0 # via nbconvert -nbconvert==7.16.3 +nbconvert==7.16.4 # via jupyter-server nbformat==5.10.4 # via @@ -493,7 +441,6 @@ numpy==1.26.4 # altair # dask # db-dtypes - # feast (setup.py) # great-expectations # ibis-framework # pandas @@ -501,6 +448,8 @@ numpy==1.26.4 # scipy oauthlib==3.2.2 # via requests-oauthlib +orjson==3.10.3 + # via fastapi overrides==7.7.0 # via jupyter-server packaging==24.0 @@ -509,7 +458,6 @@ packaging==24.0 # dask # db-dtypes # docker - # duckdb-engine # google-cloud-bigquery # great-expectations # gunicorn @@ -530,7 +478,6 @@ pandas==2.2.2 # dask # dask-expr # db-dtypes - # feast (setup.py) # google-cloud-bigquery # great-expectations # ibis-framework @@ -541,27 +488,27 @@ parso==0.8.4 # via jedi parsy==2.1 # via ibis-framework -partd==1.4.1 +partd==1.4.2 # via dask pbr==6.0.0 # via mock pexpect==4.9.0 # via ipython +pip==24.0 + # via pip-tools pip-tools==7.4.1 - # via feast (setup.py) platformdirs==3.11.0 # via # jupyter-core # snowflake-connector-python # virtualenv -pluggy==1.4.0 +pluggy==1.5.0 # via pytest ply==3.11 # via thriftpy2 portalocker==2.8.2 # via msal-extensions pre-commit==3.3.1 - # via feast (setup.py) prometheus-client==0.20.0 # via jupyter-server prompt-toolkit==3.0.43 @@ -576,7 +523,6 @@ proto-plus==1.23.0 # google-cloud-firestore protobuf==4.25.3 # via - # feast (setup.py) # google-api-core # google-cloud-bigquery # google-cloud-bigquery-storage @@ -594,11 +540,8 @@ protobuf==4.25.3 # proto-plus # substrait psutil==5.9.0 - # via - # feast (setup.py) - # ipykernel + # via ipykernel psycopg2-binary==2.9.9 - # via feast (setup.py) ptyprocess==0.7.0 # via # pexpect @@ -606,17 +549,15 @@ ptyprocess==0.7.0 pure-eval==0.2.2 # via stack-data py==1.11.0 - # via feast (setup.py) py-cpuinfo==9.0.0 # via pytest-benchmark py4j==0.10.9.7 # via pyspark -pyarrow==15.0.2 +pyarrow==16.0.0 # via # dask-expr # db-dtypes # deltalake - # feast (setup.py) # google-cloud-bigquery # ibis-framework # snowflake-connector-python @@ -631,19 +572,16 @@ pyasn1==0.6.0 pyasn1-modules==0.4.0 # via google-auth pybindgen==0.22.1 - # via feast (setup.py) pycparser==2.22 # via cffi -pydantic==2.7.0 +pydantic==2.7.1 # via # fastapi - # feast (setup.py) # great-expectations -pydantic-core==2.18.1 +pydantic-core==2.18.2 # via pydantic -pygments==2.17.2 +pygments==2.18.0 # via - # feast (setup.py) # ipython # nbconvert # rich @@ -653,26 +591,21 @@ pyjwt[crypto]==2.8.0 # msal # snowflake-connector-python pymssql==2.3.0 - # via feast (setup.py) pymysql==1.1.0 - # via feast (setup.py) pyodbc==5.1.0 - # via feast (setup.py) pyopenssl==24.1.0 # via snowflake-connector-python pyparsing==3.1.2 # via # great-expectations # httplib2 -pyproject-hooks==1.0.0 +pyproject-hooks==1.1.0 # via # build # pip-tools pyspark==3.5.1 - # via feast (setup.py) pytest==7.4.4 # via - # feast (setup.py) # pytest-benchmark # pytest-cov # pytest-env @@ -682,21 +615,13 @@ pytest==7.4.4 # pytest-timeout # pytest-xdist pytest-benchmark==3.4.1 - # via feast (setup.py) pytest-cov==5.0.0 - # via feast (setup.py) pytest-env==1.1.3 - # via feast (setup.py) pytest-lazy-fixture==0.6.3 - # via feast (setup.py) pytest-mock==1.10.4 - # via feast (setup.py) pytest-ordering==0.6 - # via feast (setup.py) pytest-timeout==1.4.2 - # via feast (setup.py) -pytest-xdist==3.6.0 - # via feast (setup.py) +pytest-xdist==3.6.1 python-dateutil==2.9.0.post0 # via # arrow @@ -714,6 +639,8 @@ python-dotenv==1.0.1 # via uvicorn python-json-logger==2.0.7 # via jupyter-events +python-multipart==0.0.9 + # via fastapi pytz==2024.1 # via # great-expectations @@ -724,33 +651,29 @@ pytz==2024.1 pyyaml==6.0.1 # via # dask - # feast (setup.py) # ibis-substrait # jupyter-events # kubernetes # pre-commit # responses # uvicorn -pyzmq==26.0.2 +pyzmq==26.0.3 # via # ipykernel # jupyter-client # jupyter-server redis==4.6.0 - # via feast (setup.py) -referencing==0.34.0 +referencing==0.35.1 # via # jsonschema # jsonschema-specifications # jupyter-events -regex==2024.4.16 - # via feast (setup.py) +regex==2024.4.28 requests==2.31.0 # via # azure-core # cachecontrol # docker - # feast (setup.py) # google-api-core # google-cloud-bigquery # google-cloud-storage @@ -777,10 +700,11 @@ rfc3986-validator==0.1.1 # jsonschema # jupyter-events rich==13.7.1 - # via ibis-framework -rockset==2.1.1 - # via feast (setup.py) -rpds-py==0.18.0 + # via + # ibis-framework + # typer +rockset==2.1.2 +rpds-py==0.18.1 # via # jsonschema # referencing @@ -790,14 +714,21 @@ ruamel-yaml==0.17.17 # via great-expectations ruamel-yaml-clib==0.2.8 # via ruamel-yaml -ruff==0.4.1 - # via feast (setup.py) +ruff==0.4.3 s3transfer==0.10.1 # via boto3 scipy==1.13.0 # via great-expectations send2trash==1.8.3 # via jupyter-server +setuptools==69.5.1 + # via + # grpcio-tools + # kubernetes + # nodeenv + # pip-tools +shellingham==1.5.4 + # via typer six==1.16.0 # via # asttokens @@ -817,14 +748,12 @@ sniffio==1.3.1 # httpx snowballstemmer==2.2.0 # via sphinx -snowflake-connector-python[pandas]==3.9.0 - # via feast (setup.py) +snowflake-connector-python[pandas]==3.10.0 sortedcontainers==2.4.0 # via snowflake-connector-python soupsieve==2.5 # via beautifulsoup4 sphinx==6.2.1 - # via feast (setup.py) sphinxcontrib-applehelp==1.0.8 # via sphinx sphinxcontrib-devhelp==1.0.6 @@ -837,39 +766,27 @@ sphinxcontrib-qthelp==1.0.7 # via sphinx sphinxcontrib-serializinghtml==1.1.10 # via sphinx -sqlalchemy[mypy]==2.0.29 - # via - # duckdb-engine - # feast (setup.py) - # ibis-framework - # sqlalchemy - # sqlalchemy-views -sqlalchemy-views==0.3.2 - # via ibis-framework -sqlglot==20.11.0 +sqlalchemy[mypy]==2.0.30 +sqlglot==23.12.2 # via ibis-framework stack-data==0.6.3 # via ipython starlette==0.37.2 # via fastapi -substrait==0.16.0 +substrait==0.17.0 # via ibis-substrait tabulate==0.9.0 - # via feast (setup.py) -tenacity==8.2.3 - # via feast (setup.py) +tenacity==8.3.0 terminado==0.18.1 # via # jupyter-server # jupyter-server-terminals -testcontainers==4.3.3 - # via feast (setup.py) -thriftpy2==0.4.20 +testcontainers==4.4.0 +thriftpy2==0.5.0 # via happybase -tinycss2==1.2.1 +tinycss2==1.3.0 # via nbconvert toml==0.10.2 - # via feast (setup.py) tomli==2.0.1 # via # build @@ -877,7 +794,6 @@ tomli==2.0.1 # jupyterlab # mypy # pip-tools - # pyproject-hooks # pytest # pytest-env tomlkit==0.12.4 @@ -896,10 +812,8 @@ tornado==6.4 # jupyterlab # notebook # terminado -tqdm==4.66.3 - # via - # feast (setup.py) - # great-expectations +tqdm==4.66.4 + # via great-expectations traitlets==5.14.3 # via # comm @@ -916,37 +830,25 @@ traitlets==5.14.3 # nbconvert # nbformat trino==0.328.0 - # via feast (setup.py) typeguard==4.2.1 - # via feast (setup.py) +typer==0.12.3 + # via fastapi-cli types-cffi==1.16.0.20240331 # via types-pyopenssl types-protobuf==3.19.22 - # via - # feast (setup.py) - # mypy-protobuf -types-pymysql==1.1.0.1 - # via feast (setup.py) -types-pyopenssl==24.0.0.20240417 + # via mypy-protobuf +types-pymysql==1.1.0.20240425 +types-pyopenssl==24.1.0.20240425 # via types-redis types-python-dateutil==2.9.0.20240316 - # via - # arrow - # feast (setup.py) + # via arrow types-pytz==2024.1.0.20240417 - # via feast (setup.py) types-pyyaml==6.0.12.20240311 - # via feast (setup.py) -types-redis==4.6.0.20240417 - # via feast (setup.py) +types-redis==4.6.0.20240425 types-requests==2.30.0.0 - # via feast (setup.py) -types-setuptools==69.5.0.20240415 - # via - # feast (setup.py) - # types-cffi +types-setuptools==69.5.0.20240423 + # via types-cffi types-tabulate==0.9.0.20240106 - # via feast (setup.py) types-urllib3==1.26.25.14 # via types-requests typing-extensions==4.11.0 @@ -967,6 +869,7 @@ typing-extensions==4.11.0 # starlette # testcontainers # typeguard + # typer # uvicorn tzdata==2024.1 # via pandas @@ -974,6 +877,8 @@ tzlocal==5.2 # via # great-expectations # trino +ujson==5.9.0 + # via fastapi uri-template==1.3.0 # via jsonschema uritemplate==4.1.1 @@ -982,7 +887,6 @@ urllib3==1.26.18 # via # botocore # docker - # feast (setup.py) # great-expectations # kubernetes # minio @@ -992,13 +896,13 @@ urllib3==1.26.18 # snowflake-connector-python # testcontainers uvicorn[standard]==0.29.0 - # via feast (setup.py) + # via + # fastapi + # fastapi-cli uvloop==0.19.0 # via uvicorn virtualenv==20.23.0 - # via - # feast (setup.py) - # pre-commit + # via pre-commit watchfiles==0.21.0 # via uvicorn wcwidth==0.2.13 @@ -1009,7 +913,7 @@ webencodings==0.5.1 # via # bleach # tinycss2 -websocket-client==1.7.0 +websocket-client==1.8.0 # via # jupyter-server # kubernetes @@ -1027,7 +931,3 @@ xmltodict==0.13.0 # via moto zipp==3.18.1 # via importlib-metadata - -# The following packages are considered to be unsafe in a requirements file: -# pip -# setuptools diff --git a/sdk/python/requirements/py3.9-requirements.txt b/sdk/python/requirements/py3.9-requirements.txt index 041bd0c2880..149a96626ef 100644 --- a/sdk/python/requirements/py3.9-requirements.txt +++ b/sdk/python/requirements/py3.9-requirements.txt @@ -1,13 +1,10 @@ -# -# This file is autogenerated by pip-compile with Python 3.9 -# by the following command: -# -# pip-compile --output-file=sdk/python/requirements/py3.9-requirements.txt -# +# This file was autogenerated by uv via the following command: +# uv pip compile --system --no-strip-extras setup.py --output-file sdk/python/requirements/py3.9-requirements.txt annotated-types==0.6.0 # via pydantic anyio==4.3.0 # via + # httpx # starlette # watchfiles attrs==23.2.0 @@ -15,72 +12,86 @@ attrs==23.2.0 # jsonschema # referencing certifi==2024.2.2 - # via requests + # via + # httpcore + # httpx + # requests charset-normalizer==3.3.2 # via requests click==8.1.7 # via # dask - # feast (setup.py) + # typer # uvicorn cloudpickle==3.0.0 # via dask colorama==0.4.6 - # via feast (setup.py) -dask[array,dataframe]==2024.4.2 - # via - # dask-expr - # feast (setup.py) -dask-expr==1.0.12 +dask[dataframe]==2024.5.0 + # via dask-expr +dask-expr==1.1.0 # via dask dill==0.3.8 - # via feast (setup.py) +dnspython==2.6.1 + # via email-validator +email-validator==2.1.1 + # via fastapi exceptiongroup==1.2.1 # via anyio -fastapi==0.110.2 - # via feast (setup.py) +fastapi==0.111.0 + # via fastapi-cli +fastapi-cli==0.0.2 + # via fastapi fsspec==2024.3.1 # via dask greenlet==3.0.3 # via sqlalchemy -gunicorn==22.0.0 ; platform_system != "Windows" - # via feast (setup.py) +gunicorn==22.0.0 h11==0.14.0 - # via uvicorn + # via + # httpcore + # uvicorn +httpcore==1.0.5 + # via httpx httptools==0.6.1 # via uvicorn +httpx==0.27.0 + # via fastapi idna==3.7 # via # anyio + # email-validator + # httpx # requests importlib-metadata==7.1.0 # via # dask # typeguard jinja2==3.1.4 - # via feast (setup.py) -jsonschema==4.21.1 - # via feast (setup.py) + # via fastapi +jsonschema==4.22.0 jsonschema-specifications==2023.12.1 # via jsonschema locket==1.0.0 # via partd +markdown-it-py==3.0.0 + # via rich markupsafe==2.1.5 # via jinja2 +mdurl==0.1.2 + # via markdown-it-py mmh3==4.1.0 - # via feast (setup.py) -mypy==1.9.0 +mypy==1.10.0 # via sqlalchemy mypy-extensions==1.0.0 # via mypy mypy-protobuf==3.6.0 - # via feast (setup.py) numpy==1.26.4 # via # dask - # feast (setup.py) # pandas # pyarrow +orjson==3.10.3 + # via fastapi packaging==24.0 # via # dask @@ -89,73 +100,66 @@ pandas==2.2.2 # via # dask # dask-expr - # feast (setup.py) -partd==1.4.1 +partd==1.4.2 # via dask protobuf==4.25.3 - # via - # feast (setup.py) - # mypy-protobuf -pyarrow==15.0.2 - # via - # dask-expr - # feast (setup.py) -pydantic==2.7.0 - # via - # fastapi - # feast (setup.py) -pydantic-core==2.18.1 + # via mypy-protobuf +pyarrow==16.0.0 + # via dask-expr +pydantic==2.7.1 + # via fastapi +pydantic-core==2.18.2 # via pydantic -pygments==2.17.2 - # via feast (setup.py) +pygments==2.18.0 + # via rich python-dateutil==2.9.0.post0 # via pandas python-dotenv==1.0.1 # via uvicorn +python-multipart==0.0.9 + # via fastapi pytz==2024.1 # via pandas pyyaml==6.0.1 # via # dask - # feast (setup.py) # uvicorn -referencing==0.34.0 +referencing==0.35.1 # via # jsonschema # jsonschema-specifications requests==2.31.0 - # via feast (setup.py) -rpds-py==0.18.0 +rich==13.7.1 + # via typer +rpds-py==0.18.1 # via # jsonschema # referencing +shellingham==1.5.4 + # via typer six==1.16.0 # via python-dateutil sniffio==1.3.1 - # via anyio -sqlalchemy[mypy]==2.0.29 # via - # feast (setup.py) - # sqlalchemy + # anyio + # httpx +sqlalchemy[mypy]==2.0.30 starlette==0.37.2 # via fastapi tabulate==0.9.0 - # via feast (setup.py) -tenacity==8.2.3 - # via feast (setup.py) +tenacity==8.3.0 toml==0.10.2 - # via feast (setup.py) tomli==2.0.1 # via mypy toolz==0.12.1 # via # dask # partd -tqdm==4.66.3 - # via feast (setup.py) +tqdm==4.66.4 typeguard==4.2.1 - # via feast (setup.py) -types-protobuf==5.26.0.20240420 +typer==0.12.3 + # via fastapi-cli +types-protobuf==5.26.0.20240422 # via mypy-protobuf typing-extensions==4.11.0 # via @@ -167,13 +171,18 @@ typing-extensions==4.11.0 # sqlalchemy # starlette # typeguard + # typer # uvicorn tzdata==2024.1 # via pandas +ujson==5.9.0 + # via fastapi urllib3==2.2.1 # via requests uvicorn[standard]==0.29.0 - # via feast (setup.py) + # via + # fastapi + # fastapi-cli uvloop==0.19.0 # via uvicorn watchfiles==0.21.0 From ee07c7d37b87a88baac9c259c299871905680f6b Mon Sep 17 00:00:00 2001 From: tokoko Date: Tue, 7 May 2024 18:59:08 +0000 Subject: [PATCH 2/3] pin ibis versions Signed-off-by: tokoko --- .../requirements/py3.10-ci-requirements.txt | 19 ++++++++++++++++--- .../requirements/py3.11-ci-requirements.txt | 19 ++++++++++++++++--- .../requirements/py3.9-ci-requirements.txt | 19 ++++++++++++++++--- setup.py | 6 +++--- 4 files changed, 51 insertions(+), 12 deletions(-) diff --git a/sdk/python/requirements/py3.10-ci-requirements.txt b/sdk/python/requirements/py3.10-ci-requirements.txt index 970d429fd85..e7ca9ca35b6 100644 --- a/sdk/python/requirements/py3.10-ci-requirements.txt +++ b/sdk/python/requirements/py3.10-ci-requirements.txt @@ -135,6 +135,10 @@ docker==7.0.0 docutils==0.19 # via sphinx duckdb==0.10.2 + # via + # duckdb-engine + # ibis-framework +duckdb-engine==0.12.0 # via ibis-framework email-validator==2.1.1 # via fastapi @@ -263,7 +267,7 @@ httpx==0.27.0 # via # fastapi # jupyterlab -ibis-framework[duckdb]==9.0.0 +ibis-framework[duckdb]==8.0.0 # via ibis-substrait ibis-substrait==3.2.0 identify==2.5.36 @@ -402,6 +406,8 @@ msal-extensions==1.1.0 # via azure-identity msgpack==1.0.8 # via cachecontrol +multipledispatch==1.0.0 + # via ibis-framework mypy==1.10.0 # via sqlalchemy mypy-extensions==1.0.0 @@ -449,6 +455,7 @@ packaging==24.0 # dask # db-dtypes # docker + # duckdb-engine # google-cloud-bigquery # great-expectations # gunicorn @@ -544,7 +551,7 @@ py-cpuinfo==9.0.0 # via pytest-benchmark py4j==0.10.9.7 # via pyspark -pyarrow==16.0.0 +pyarrow==15.0.2 # via # dask-expr # db-dtypes @@ -756,7 +763,13 @@ sphinxcontrib-qthelp==1.0.7 sphinxcontrib-serializinghtml==1.1.10 # via sphinx sqlalchemy[mypy]==2.0.30 -sqlglot==23.12.2 + # via + # duckdb-engine + # ibis-framework + # sqlalchemy-views +sqlalchemy-views==0.3.2 + # via ibis-framework +sqlglot==20.11.0 # via ibis-framework stack-data==0.6.3 # via ipython diff --git a/sdk/python/requirements/py3.11-ci-requirements.txt b/sdk/python/requirements/py3.11-ci-requirements.txt index fd9700cf7f1..3b76237f599 100644 --- a/sdk/python/requirements/py3.11-ci-requirements.txt +++ b/sdk/python/requirements/py3.11-ci-requirements.txt @@ -133,6 +133,10 @@ docker==7.0.0 docutils==0.19 # via sphinx duckdb==0.10.2 + # via + # duckdb-engine + # ibis-framework +duckdb-engine==0.12.0 # via ibis-framework email-validator==2.1.1 # via fastapi @@ -256,7 +260,7 @@ httpx==0.27.0 # via # fastapi # jupyterlab -ibis-framework[duckdb]==9.0.0 +ibis-framework[duckdb]==8.0.0 # via ibis-substrait ibis-substrait==3.2.0 identify==2.5.36 @@ -395,6 +399,8 @@ msal-extensions==1.1.0 # via azure-identity msgpack==1.0.8 # via cachecontrol +multipledispatch==1.0.0 + # via ibis-framework mypy==1.10.0 # via sqlalchemy mypy-extensions==1.0.0 @@ -442,6 +448,7 @@ packaging==24.0 # dask # db-dtypes # docker + # duckdb-engine # google-cloud-bigquery # great-expectations # gunicorn @@ -537,7 +544,7 @@ py-cpuinfo==9.0.0 # via pytest-benchmark py4j==0.10.9.7 # via pyspark -pyarrow==16.0.0 +pyarrow==15.0.2 # via # dask-expr # db-dtypes @@ -749,7 +756,13 @@ sphinxcontrib-qthelp==1.0.7 sphinxcontrib-serializinghtml==1.1.10 # via sphinx sqlalchemy[mypy]==2.0.30 -sqlglot==23.12.2 + # via + # duckdb-engine + # ibis-framework + # sqlalchemy-views +sqlalchemy-views==0.3.2 + # via ibis-framework +sqlglot==20.11.0 # via ibis-framework stack-data==0.6.3 # via ipython diff --git a/sdk/python/requirements/py3.9-ci-requirements.txt b/sdk/python/requirements/py3.9-ci-requirements.txt index dc4bbbd60f1..a628f0823db 100644 --- a/sdk/python/requirements/py3.9-ci-requirements.txt +++ b/sdk/python/requirements/py3.9-ci-requirements.txt @@ -135,6 +135,10 @@ docker==7.0.0 docutils==0.19 # via sphinx duckdb==0.10.2 + # via + # duckdb-engine + # ibis-framework +duckdb-engine==0.12.0 # via ibis-framework email-validator==2.1.1 # via fastapi @@ -263,7 +267,7 @@ httpx==0.27.0 # via # fastapi # jupyterlab -ibis-framework[duckdb]==9.0.0 +ibis-framework[duckdb]==8.0.0 # via ibis-substrait ibis-substrait==3.2.0 identify==2.5.36 @@ -411,6 +415,8 @@ msal-extensions==1.1.0 # via azure-identity msgpack==1.0.8 # via cachecontrol +multipledispatch==1.0.0 + # via ibis-framework mypy==1.10.0 # via sqlalchemy mypy-extensions==1.0.0 @@ -458,6 +464,7 @@ packaging==24.0 # dask # db-dtypes # docker + # duckdb-engine # google-cloud-bigquery # great-expectations # gunicorn @@ -553,7 +560,7 @@ py-cpuinfo==9.0.0 # via pytest-benchmark py4j==0.10.9.7 # via pyspark -pyarrow==16.0.0 +pyarrow==15.0.2 # via # dask-expr # db-dtypes @@ -767,7 +774,13 @@ sphinxcontrib-qthelp==1.0.7 sphinxcontrib-serializinghtml==1.1.10 # via sphinx sqlalchemy[mypy]==2.0.30 -sqlglot==23.12.2 + # via + # duckdb-engine + # ibis-framework + # sqlalchemy-views +sqlalchemy-views==0.3.2 + # via ibis-framework +sqlglot==20.11.0 # via ibis-framework stack-data==0.6.3 # via ipython diff --git a/setup.py b/setup.py index ef5986f1579..6cc728ee98d 100644 --- a/setup.py +++ b/setup.py @@ -135,8 +135,8 @@ ] IBIS_REQUIRED = [ - "ibis-framework", - "ibis-substrait", + "ibis-framework>=8.0.0,<9", + "ibis-substrait<=3.2.0", ] GRPCIO_REQUIRED = [ @@ -146,7 +146,7 @@ "grpcio-health-checking>=1.56.2,<2", ] -DUCKDB_REQUIRED = ["ibis-framework[duckdb]"] +DUCKDB_REQUIRED = ["ibis-framework[duckdb]>=8.0.0,<9"] DELTA_REQUIRED = ["deltalake"] From 951c35741afb0ec80950326457428a779526a032 Mon Sep 17 00:00:00 2001 From: tokoko Date: Tue, 7 May 2024 22:08:29 +0000 Subject: [PATCH 3/3] remove redundant make command Signed-off-by: tokoko --- Makefile | 3 --- 1 file changed, 3 deletions(-) diff --git a/Makefile b/Makefile index 6d4518aa449..18006fe7d1c 100644 --- a/Makefile +++ b/Makefile @@ -361,9 +361,6 @@ kill-trino-locally: install-protoc-dependencies: pip install --ignore-installed protobuf==4.24.0 "grpcio-tools>=1.56.2,<2" mypy-protobuf==3.1.0 -install-feast-ci-locally: - pip install -e ".[ci]" - # Docker build-docker: build-feature-server-python-aws-docker build-feature-transformation-server-docker build-feature-server-java-docker