Skip to content

refactor: use CustomAwsCredentialLoader for dynamic AWS credentials#22

Merged
mdub merged 1 commit intomainfrom
mikewilliams/custom-aws-credential-loader
Mar 23, 2026
Merged

refactor: use CustomAwsCredentialLoader for dynamic AWS credentials#22
mdub merged 1 commit intomainfrom
mikewilliams/custom-aws-credential-loader

Conversation

@mdub
Copy link
Copy Markdown
Collaborator

@mdub mdub commented Mar 23, 2026

Summary

  • Implement AwsCredentialLoad to wrap SharedCredentialsProvider, so iceberg's storage layer can refresh credentials dynamically instead of using static strings
  • Pass aws_sdk_s3::Client directly for S3 prefix listing, rather than reconstructing it from FileIO props
  • s3_file_io() is now sync and infallible
  • Drop direct reqsign dep; downgrade reqwest to 0.12 to match iceberg-storage-opendal's AwsCredentialLoad trait

Closes #21

🤖 Generated with Claude Code

Instead of extracting credential strings from SdkConfig, stuffing them
into FileIO props, then extracting them again to build S3 clients:

- Implement AwsCredentialLoad to wrap SharedCredentialsProvider, so
  iceberg's storage layer can refresh credentials dynamically
- Pass aws_sdk_s3::Client directly for S3 prefix listing, rather than
  reconstructing it from FileIO props
- s3_file_io() is now sync and infallible
- Drop direct reqsign dep; downgrade reqwest to 0.12 to match
  iceberg-storage-opendal's AwsCredentialLoad trait

Closes #21

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@mdub mdub changed the base branch from mikewilliams/upgrade-iceberg-0.9 to main March 23, 2026 07:46
@mdub mdub merged commit c86c94e into main Mar 23, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

refactor: use CustomAwsCredentialLoader for dynamic AWS credentials

1 participant