This is an automated email from the ASF dual-hosted git repository.

github-merge-queue[bot] pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/texera.git


The following commit(s) were added to refs/heads/main by this push:
     new 1366b872c7 chore(deps): drop redundant transitive pins from 
requirements (#6110)
1366b872c7 is described below

commit 1366b872c70ab29924fa5a8470a1c2317f0eba4a
Author: Yicong Huang <[email protected]>
AuthorDate: Fri Jul 17 14:21:04 2026 -0700

    chore(deps): drop redundant transitive pins from requirements (#6110)
    
    ### What changes were proposed in this PR?
    
    Audits the explicit transitive pins in `amber/requirements.txt` and
    removes the two that serve no purpose. Verified with the pip dependency
    graph (`Required-by`) and a full `pip install --dry-run --report`
    resolution:
    
    | Pin | Verdict | Why |
    | --- | --- | --- |
    | `python-dateutil==2.8.2` | **Drop** | Required by six installed
    packages (pandas, botocore, betterproto, pg8000, aiobotocore,
    strictyaml) — always installed regardless. A `pip freeze` leftover from
    the original requirements.txt (#1259); every dependent declares `>=2.8`,
    so the pin only held us on a 2021 release. Resolves to 2.9.0.post0 |
    | `aiobotocore==3.7.0` | **Drop** | Hard dependency of s3fs; its version
    is already uniquely constrained by the `botocore==1.42.90` pin
    (aiobotocore's per-release botocore window is very narrow). Removing it
    eliminates a manual pairing hazard when bumping the boto3/botocore pins.
    Still resolves to 3.7.0 |
    | `s3fs`, `SQLAlchemy`, `pg8000` | Keep | Empty `Required-by` —
    pyiceberg only pulls them via extras, so dropping them would actually
    uninstall them (Iceberg S3 FileIO / SqlCatalog would break at runtime).
    pg8000 deliberately replaces LGPL psycopg2 (#3299) |
    | `setuptools==80.10.2` | Keep | Guards `fs`'s `pkg_resources` import
    against newer setuptools removing it (#4199); `fs` declares setuptools
    with no version bound |
    
    `amber/LICENSE-binary-python` updates `python-dateutil` to the resolved
    2.9.0.post0 (it stays installed transitively, so the
    `check_binary_deps.py` gate still requires the claim); aiobotocore
    already claims 3.7.0, which is unchanged by the resolution.
    
    ### Any related issues, documentation, discussions?
    
    Closes #6108. Follow-up to #6101 / #6103.
    
    ### How was this PR tested?
    
    - `pip install --dry-run --ignore-installed --report` without the pins:
    resolution unchanged except python-dateutil → 2.9.0.post0;
    aiobotocore/botocore/boto3 stay at their current versions.
    - Upgraded the local venv to the resolved versions and ran the existing
    pyamber suite (`pytest -m "not integration"`) — passes.
    - CI's pyamber leg re-resolves from scratch and `check_binary_deps.py`
    verifies the LICENSE-binary-python claims.
    
    ### Was this PR authored or co-authored using generative AI tooling?
    
    Generated-by: Claude Code (claude-fable-5)
    
    🤖 Generated with [Claude Code](https://claude.com/claude-code)
    
    ---------
    
    Signed-off-by: Yicong Huang <[email protected]>
    Co-authored-by: Claude Fable 5 <[email protected]>
---
 amber/LICENSE-binary-python | 2 +-
 amber/requirements.txt      | 3 ---
 2 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/amber/LICENSE-binary-python b/amber/LICENSE-binary-python
index 5f226e4fd5..b50b5cada7 100644
--- a/amber/LICENSE-binary-python
+++ b/amber/LICENSE-binary-python
@@ -226,7 +226,7 @@ Python packages:
   - pyarrow==23.0.1
   - pyiceberg==0.11.1
   - pympler==1.1
-  - python-dateutil==2.8.2
+  - python-dateutil==2.9.0.post0
   - regex==2026.7.10
   - requests==2.34.2
   - s3transfer==0.16.1
diff --git a/amber/requirements.txt b/amber/requirements.txt
index 512ef93f69..8baa0aee95 100644
--- a/amber/requirements.txt
+++ b/amber/requirements.txt
@@ -21,8 +21,6 @@ numpy==2.1.0
 pandas==2.2.3
 loguru==0.7.3
 pyarrow==23.0.1
-# Not imported directly: runtime dependency of betterproto and pg8000.
-python-dateutil==2.8.2
 betterproto==2.0.0b7
 pampy==0.3.0
 overrides==7.7.0
@@ -35,7 +33,6 @@ tzlocal==2.1
 # Not imported directly: s3fs (with aiobotocore) backs pyiceberg's
 # fsspec-based S3 FileIO (#4272).
 s3fs==2026.6.0
-aiobotocore==3.7.0
 botocore==1.42.90
 pyiceberg==0.11.1
 readerwriterlock==1.0.9

Reply via email to