fix: pin boto3<1.40 to keep non-AWS S3 uploads working#224
fix: pin boto3<1.40 to keep non-AWS S3 uploads working#224TimPietruskyRunPod wants to merge 1 commit into
Conversation
boto3 1.40 ships a botocore release that enforces stricter AWS-only auth flows. Uploads to S3-compatible endpoints (Cloudflare R2, Google Cloud Storage) started failing with SignatureDoesNotMatch. Pin to <1.40 in the handler dependencies line until upstream runpod and aioboto3 stabilize against the new botocore. Refs #156
|
Validation status
Best test would be to ping @yxzhao6 on #156 and ask them to retry with the PR image. I'll do that once #223 merges so they can pull the image without manual |
|
Verified the pin holds in the built image: ``` `boto3==1.39.17` is comfortably under the 1.40 wall. The pin works as intended at install time. All that's left is the live-against-GCS-or-R2 confirmation, which I can't do without those provider credentials. Pinging @yxzhao6 on #156 once #223 merges so they can pull the image and verify against their setup. LGTM from my side. |
Summary
Closes #156.
boto3 1.40 ships a botocore release that enforces stricter AWS-only auth flows. Uploads to S3-compatible endpoints (Cloudflare R2, Google Cloud Storage) began failing with `SignatureDoesNotMatch`. The reporter on #156 narrowed it down precisely:
Related upstream: terricain/aioboto3#358
Fix
Pin `boto3<1.40` in the handler runtime install line in `Dockerfile` (boto3 isn't a direct dep — it comes transitively through `runpod`, so we add an explicit constraint).
Test plan