You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@opendal.apache.org by "Xuanwo (via GitHub)" <gi...@apache.org> on 2026/08/26 09:55:29 UTC

[PR] feat: support if_not_changed preconditions [opendal]

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

   # Which issue does this PR close?
   
   Closes #7889.
   
   # Rationale for this change
   
   RFC #8147 defines `if_not_changed(&Metadata)` as a portable optimistic-concurrency condition. S3 and Azure can guard mutations with ETags, while GCS uses object generations. OpenDAL needs to select the supported identity without requiring applications to branch on the service.
   
   # What changes are included in this PR?
   
   This implements version match and non-match preconditions for stat, read, write, delete, and copy, then lowers `if_not_changed` to a supported version or ETag match condition at dispatch. It maps GCS versions to generation preconditions, preserves ETag conditions for S3 and Azure Blob, and adds capability and behavior coverage for the new conditions.
   
   # Are there any user-facing changes?
   
   Yes. Rust users can set `if_version_match`, `if_version_not_match`, and `if_not_changed` through the corresponding operation options and fluent APIs. Services expose support through per-operation capabilities.
   
   # AI Usage Statement
   
   AI materially assisted the implementation, merge-conflict resolution, and test construction under maintainer direction. Request construction and local behavior tests were verified, but this change has not been exercised against live GCS, S3, or Azure Blob accounts in this environment.
   


-- 
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: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


Re: [PR] feat: support if_not_changed preconditions [opendal]

Posted by "Xuanwo (via GitHub)" <gi...@apache.org>.
Xuanwo merged PR #8156:
URL: https://github.com/apache/opendal/pull/8156


-- 
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: commits-unsubscribe@opendal.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org