Clarify specific ETag requirements and align with RFC 9110 - #228
Conversation
Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
Co-authored-by: Ted Thibodeau Jr <tthibodeau@openlinksw.com>
elf-pavlik
left a comment
There was a problem hiding this comment.
I understand various issues with ETags. It would still be worthwhile to provide some examples of sync mechanisms being advertised in Storage Description. I would see it as an opporutunity for another PR, and it may require some form of non-normative LWS Primer - Note Track
I think sync mechanisms should be decided on the client-side. Servers should just be required to implement the bare minimum of HTTP affordances that make it possible to build sync mechanisms. |
|
In my reading of RFC9110, I found a concurrency section that does not mention ETag, and an ETag section that does not mention concurrency. This text needs to be reworked if it's going to defer to RFC9110 on either subject. |
|
@raucao, FYI we discussed this PR and the broader issue of concurrency controls in LWS at today's WG meeting. The consensus was that we want to require ETags as a baseline. I will be reworking this PR to retain the ETag requirements at While there are some edge cases with content-negotiated, writable content in the context of ETags, the group felt that we can provide specific recommendations in a best practices document while retaining the baseline requirement for ETags. |
|
This PR has been reworked to clarify that there is now a baseline ETag requirement on the various LWS resource types (DataResource, Container, Metadata). |
elf-pavlik
left a comment
There was a problem hiding this comment.
For the future I would suggest to keep PRs like this limited to the minimal proposed changes and submit formatting improvements in a separate PR. Parts of the diff seem to be such formatting improvements not directly related to clarifying ETag
Resolves #62
This removes the specific requirements related to ETags, as discussed in #62 and at the WG meeting on 2026-10-03.Since RFC 9110 already recommends the use of concurrency controls (such as ETags), the consensus was to defer to that specification rather than restate ETag-specific requirements. This will allow for the possibility of using CRDTs and other concurrency control mechanisms beyond what is outlined in RFC 9110.This clarifies the ETag requirements in LWS, making support for ETags a baseline requirement (MUST). This also adds links to RFC 9110, where appropriate.
Preview | Diff