venkateshwaracholan opened a new pull request, #4805:
URL: https://github.com/apache/polaris/pull/4805

   ## Summary
   
   Fixes #4804
   
   While working with the S3 testcontainer integrations, I noticed that both 
`MinioAccess` and `RustfsAccess` contained the same S3 access API definitions 
along with identical default implementations of `s3put()`. Since these 
interfaces were effectively copies of one another, any future change would need 
to be applied in two places, increasing maintenance effort and creating a risk 
of the implementations drifting apart over time.
   
   This refactoring extracts the shared functionality into a new 
`S3TestcontainerAccess` interface within `polaris-container-spec-helper`. The 
common S3 access contract and default `s3put()` implementation now live in a 
single location, while `MinioAccess` and `RustfsAccess` simply extend the 
shared interface.
   
   The change removes duplicated code, improves maintainability, and keeps the 
existing API and runtime behavior unchanged.
   
   ### What Changed
   
   * Added a new shared `S3TestcontainerAccess` interface.
   * Moved the common S3 access methods and default `s3put()` implementation 
into the shared interface.
   * Updated `MinioAccess` to extend `S3TestcontainerAccess`.
   * Updated `RustfsAccess` to extend `S3TestcontainerAccess`.
   * Added the required module dependencies for the shared abstraction.
   * Updated copied-code attribution documentation to reflect the refactoring.
   
   ### Compatibility
   
   This is a refactoring-only change with no functional impact.
   
   * No production code is affected.
   * No public APIs have changed.
   * Existing tests and downstream integrations can continue using 
`MinioAccess` and `RustfsAccess` without modification.
   * Runtime behavior remains the same.
   
   
   
   ## Checklist
   - [ ] ๐Ÿ›ก๏ธ Don't disclose security issues! (contact [email protected])
   - [ ] ๐Ÿ”— Clearly explained why the changes are needed, or linked related 
issues: Fixes #
   - [ ] ๐Ÿงช Added/updated tests with good coverage, or manually tested (and 
explained how)
   - [ ] ๐Ÿ’ก Added comments for complex logic
   - [ ] ๐Ÿงพ Updated `CHANGELOG.md` (if needed)
   - [ ] ๐Ÿ“š Updated documentation in `site/content/in-dev/unreleased` (if needed)
   


-- 
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]

Reply via email to