Skip to content

feat(services/swift): add conditional request headers for stat and read#7208

Merged
Xuanwo merged 1 commit intoapache:mainfrom
benroeder:swift/conditional-requests
Feb 23, 2026
Merged

feat(services/swift): add conditional request headers for stat and read#7208
Xuanwo merged 1 commit intoapache:mainfrom
benroeder:swift/conditional-requests

Conversation

@benroeder
Copy link
Contributor

Summary

Test plan

  • test_stat_with_if_match, test_stat_with_if_none_match, test_stat_with_if_modified_since, test_stat_with_if_unmodified_since, test_read_with_if_match, test_read_with_if_none_match, test_read_with_if_modified_since, test_read_with_if_unmodified_since now execute instead of being silently skipped
  • All 93 behavior tests pass against both local SAIO and a real Swift cluster

Add If-Match, If-None-Match, If-Modified-Since, If-Unmodified-Since
support for stat and read operations.

Map HTTP 304 Not Modified to ConditionNotMatch error kind.

Note: Swift does not support If-Match on PUT and only supports
If-None-Match: * (not specific etag values) on PUT, so write
conditional capabilities are not declared.
@benroeder benroeder requested a review from Xuanwo as a code owner February 23, 2026 00:23
@dosubot dosubot bot added the size:M This PR changes 30-99 lines, ignoring generated files. label Feb 23, 2026
@dosubot
Copy link

dosubot bot commented Feb 23, 2026

Related Documentation

Checked 0 published document(s) in 1 knowledge base(s). No updates required.

How did I do? Any feedback?  Join Discord

@dosubot dosubot bot added the releases-note/feat The PR implements a new feature or has a title that begins with "feat" label Feb 23, 2026
Copy link
Member

@Xuanwo Xuanwo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for working on this!

@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Feb 23, 2026
@Xuanwo Xuanwo merged commit 0f8b461 into apache:main Feb 23, 2026
336 of 338 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

lgtm This PR has been approved by a maintainer releases-note/feat The PR implements a new feature or has a title that begins with "feat" size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat: Swift service should support conditional request headers

2 participants