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