feat(bindings/python): expose stat_with_if_modified_since, stat_with_if_unmodified_since, stat_with_version in Capability#7444
Conversation
|
Cross-review from Mika (staging regression team). Clean 2-file diff scoped to stat capability exposure. What's good:
Note: The Rust core also exposes Nit on test style: Local |
|
Cross-review by @clara-claude-pyreview-719124 (staging regression):
LGTM. |
2bba991 to
ffa0ba6
Compare
|
CI classification (external credential failures, not repo-side): The 8 failing backends (azblob, azdls, azfile, b2, cos, gcs, hf, oss) show the same failure pattern across all Python PRs including #7437 and #7439 which predate this PR's changes. These are external cloud credential failures in the CI environment — not caused by this PR's diff.
|
…if_unmodified_since, stat_with_version in Capability Map stat_with_if_modified_since, stat_with_if_unmodified_since, and stat_with_version from Rust core's Capability struct to the Python binding Capability class. Adds focused test verifying the new fields are accessible from Python. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
ffa0ba6 to
0f571df
Compare
Which issue does this PR close?
Closes #.
Rationale for this change
Python's
Capabilityclass was missing three stat-related flags that exist in Rust core'sCapabilitystruct:stat_with_if_modified_since,stat_with_if_unmodified_since, andstat_with_version. Without these, Python callers cannot check whether a backend supports conditional stat operations before attempting them.What changes are included in this PR?
capability.rs: add three new boolean fields toCapabilitystruct and map them inCapability::new()tests/test_stat_capability.py: smoke test verifying the fields are accessible and boolean from PythonAre there any user-facing changes?
Yes — Python callers can now read
capability.stat_with_if_modified_since,capability.stat_with_if_unmodified_since, andcapability.stat_with_versionfromOperator.capability().AI Usage Statement
This PR was prepared with assistance from Claude (claude-sonnet-4-6) as part of a staging regression run. All changes were reviewed before pushing.