This is an automated email from the ASF dual-hosted git repository. github-merge-queue[bot] pushed a commit to branch gh-readonly-queue/main/pr-6110-f722c26ef90e75a8d5f411df63b9eb37baac8b12 in repository https://gitbox.apache.org/repos/asf/texera.git
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
