From 3cb5d2262db6a9e5edad55127d6aa6883f5c5967 Mon Sep 17 00:00:00 2001 From: Kevin Liu Date: Thu, 12 Mar 2026 08:49:41 -0700 Subject: [PATCH 1/4] upgrade df --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index c06fad1270..af4a8e167d 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -94,7 +94,7 @@ gcsfs = ["gcsfs>=2023.1.0"] rest-sigv4 = ["boto3>=1.24.59"] hf = ["huggingface-hub>=0.24.0"] pyiceberg-core = ["pyiceberg-core>=0.5.1,<0.9.0"] -datafusion = ["datafusion>=51,<52"] +datafusion = ["datafusion==52"] gcp-auth = ["google-auth>=2.4.0"] entra-auth = ["azure-identity>=1.25.1"] geoarrow = ["geoarrow-pyarrow>=0.2.0"] From f1231321a15c222d94552df49b3ed7093677037d Mon Sep 17 00:00:00 2001 From: Kevin Liu Date: Thu, 12 Mar 2026 08:56:34 -0700 Subject: [PATCH 2/4] add uv.lock check in ci --- .github/workflows/python-ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/python-ci.yml b/.github/workflows/python-ci.yml index d1bc3a0ff0..6472fcbcfe 100644 --- a/.github/workflows/python-ci.yml +++ b/.github/workflows/python-ci.yml @@ -65,6 +65,8 @@ jobs: enable-cache: true - name: Install system dependencies run: sudo apt-get update && sudo apt-get install -y libkrb5-dev # for kerberos + - name: Check uv.lock is up to date + run: uv lock --check - name: Install run: make install - name: Run linters From 9ce3b0fb2e68a45768e301d2ab786c44b1023945 Mon Sep 17 00:00:00 2001 From: Kevin Liu Date: Thu, 12 Mar 2026 09:08:31 -0700 Subject: [PATCH 3/4] add docs --- mkdocs/docs/contributing.md | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/mkdocs/docs/contributing.md b/mkdocs/docs/contributing.md index 50100b9bef..0155907a65 100644 --- a/mkdocs/docs/contributing.md +++ b/mkdocs/docs/contributing.md @@ -88,25 +88,25 @@ For full control over your environment, you can use uv commands directly. See th - Managing dependencies with `uv add` and `uv remove` - Python version management with `uv python` - Running commands with `uv run` -- Lock file management with `uv.lock` +- Lock file management with `uv lock` ### Lock File Management -`uv.lock` is a cross-platform lockfile that contains exact information about the project's dependencies. -See the [uv.lock documentation](https://docs.astral.sh/uv/guides/projects/#uvlock) for more details. +`uv.lock` is a cross-platform lockfile that contains the exact versions of all project dependencies. See the [uv.lock documentation](https://docs.astral.sh/uv/guides/projects/#uvlock) for more details. -When modifying dependencies in `pyproject.toml`, regenerate the lock file: +**Automatic lock file management:** +When you commit changes to `pyproject.toml` or dependencies, the [`uv-pre-commit`](https://github.com/astral-sh/uv-pre-commit) pre-commit hook will automatically update `uv.lock` if needed. If the lockfile changes, your commit will be stopped and you will be prompted to add the updated `uv.lock` to your commit. -```bash -make uv-lock -``` - -Separately, to verify that the lock file is up to date without modifying it: +**Manual update:** +If you want to update the lockfile yourself (for example, after editing `pyproject.toml`), run: ```bash -make uv-lock-check +uv lock ``` +**CI enforcement:** +Our continuous integration (CI) system checks that `uv.lock` is up to date with `pyproject.toml` on every pull request or push. If they are out of sync, the CI build will fail. This ensures that dependencies are always consistent and up to date for all contributors. + ## Installation from source Clone the repository for local development: From 0c069b28490cdbda02a886c14a83fb2d94a6fdfb Mon Sep 17 00:00:00 2001 From: Kevin Liu Date: Thu, 12 Mar 2026 09:08:51 -0700 Subject: [PATCH 4/4] Revert "upgrade df" This reverts commit 3cb5d2262db6a9e5edad55127d6aa6883f5c5967. --- pyproject.toml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index af4a8e167d..c06fad1270 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -94,7 +94,7 @@ gcsfs = ["gcsfs>=2023.1.0"] rest-sigv4 = ["boto3>=1.24.59"] hf = ["huggingface-hub>=0.24.0"] pyiceberg-core = ["pyiceberg-core>=0.5.1,<0.9.0"] -datafusion = ["datafusion==52"] +datafusion = ["datafusion>=51,<52"] gcp-auth = ["google-auth>=2.4.0"] entra-auth = ["azure-identity>=1.25.1"] geoarrow = ["geoarrow-pyarrow>=0.2.0"]