QuakeWang opened a new pull request, #7886:
URL: https://github.com/apache/opendal/pull/7886

   # Which issue does this PR close?
   
   Closes #.
   
   # Rationale for this change
   
   S3 stat and read requests built `versionId` query values with 
`percent_decode_path`. If a version id contains reserved query characters like 
`+`, `=`, `%`, or `&`, the generated URI can contain an unescaped query value. 
This can split the query incorrectly or make signing use a different query 
structure.
   
   # What changes are included in this PR?
   
   This PR encodes `versionId` for S3 stat and read requests with 
`percent_encode_path`, matching delete, copy, and list-version handling.
   
   It also adds regression tests for presigned stat and read URLs with special 
characters in the version id.
   
   # Are there any user-facing changes?
   
   Yes. S3 `stat`, `read`, `presign_stat`, and `presign_read` now work 
correctly with version ids that contain reserved query characters.
   
   # AI Usage Statement
   
   I used OpenAI Codex to implement the test in this change.


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