n-dlms opened a new pull request, #17531:
URL: https://github.com/apache/iceberg/pull/17531

   ## Motivation
   
   Issue #7516 asks that users who only need `S3FileIO` not be forced to ship 
the full set of AWS SDK clients (Glue, DynamoDB, KMS, etc.). The factory-level 
split already exists (`S3FileIOAwsClientFactory` + `s3.client-factory-impl`, 
#7590), but the artifact users actually deploy — `iceberg-aws-bundle` — still 
shades every client, which is the ~450MB "just dump the bundle jar" problem the 
issue calls out.
   
   ## What this PR does
   
   Adds a new shadow bundle module `iceberg-aws-s3-bundle` that contains only 
the S3-path AWS dependencies:
   
   - `s3`, `auth`, `apache-client`, `url-connection-client`
   - `crt-core`, `http-auth-aws-crt` (async/CRT path)
   - `s3accessgrants`, `analyticsaccelerator` (S3FileIO features)
   
   and **excludes** the catalog/lock/KMS clients: `glue`, `dynamodb`, `kms`, 
`lakeformation`, `sso`.
   
   The existing `iceberg-aws-bundle` is left unchanged for Glue catalog, 
DynamoDB lock, and KMS users.
   
   Measured locally: `iceberg-aws-s3-bundle` shadow jar is **48MB vs 65MB** for 
the full bundle (~26% smaller), while `:iceberg-aws:test` (S3FileIO, 
S3InputStream, access grants, etc.) passes unchanged.
   
   ## Changes
   
   - `aws-s3-bundle/` — new module (build.gradle mirroring `aws-bundle` with 
the slim dep set, plus LICENSE/NOTICE and the generated `runtime-deps.txt` 
baseline)
   - `settings.gradle` — register the module
   - `.github/workflows/cve-scan.yml` — scan the new distribution
   - `.github/labeler.yml` — AWS label covers the new module
   - `docs/docs/aws.md` — document the S3-only option for Spark with a 
REST-catalog example
   
   ## Compatibility
   
   Fully additive — no existing artifact or API changes. Users who need 
Glue/DynamoDB/KMS continue using `iceberg-aws-bundle`.
   
   Closes #7516
   ---
   **AI Disclosure**
   - Model: Claude Opus 4.7
   - Platform/Tool: Claude Code
   - Human Oversight: fully reviewed
   - Prompt Summary: Implement a slim S3-only AWS bundle artifact to close 
issue #7516; verify build, tests, and jar size locally
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to