diff --git a/.github/workflows/paimon-python-checks.yml b/.github/workflows/paimon-python-checks.yml index 367668453d5b..720214666f46 100755 --- a/.github/workflows/paimon-python-checks.yml +++ b/.github/workflows/paimon-python-checks.yml @@ -81,6 +81,24 @@ jobs: - name: Verify Python version run: python --version + - name: Verify requirements.txt dependencies can be installed + shell: bash + run: | + cd paimon-python + python -m pip install --upgrade pip + # Use --target to install to a temporary directory to verify dependencies + # This works for both Python 3.6 (pip 21.3.1) and Python 3.10+ (pip 22.2+) + # since --target is supported in all pip versions + TEMP_DIR=$(mktemp -d) + python -m pip install -r dev/requirements.txt --target "$TEMP_DIR" || { + echo "ERROR: Failed to resolve dependencies from dev/requirements.txt" + echo "This indicates a version conflict or unavailable package version" + rm -rf "$TEMP_DIR" + exit 1 + } + rm -rf "$TEMP_DIR" + echo "✓ All dependencies in dev/requirements.txt can be resolved" + - name: Build Java run: | echo "Start compiling modules" diff --git a/paimon-python/dev/requirements.txt b/paimon-python/dev/requirements.txt index 9f0779803724..103ec94b32ef 100644 --- a/paimon-python/dev/requirements.txt +++ b/paimon-python/dev/requirements.txt @@ -35,8 +35,8 @@ pyarrow>=16,<20; python_version >= "3.8" pylance>=0.20,<1; python_version>="3.9" pylance>=0.10,<1; python_version>="3.8" and python_version<"3.9" pyroaring -ray>=2.10,<3 +ray>=2.10,<3; python_version>="3.7" readerwriterlock>=1,<2 torch zstandard>=0.19,<1 -cramjam>=0.6,<1; python_version>="3.7" +cramjam>=1.3.0,<3; python_version>="3.7"