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]
