-
Notifications
You must be signed in to change notification settings - Fork 146
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Documentation uses the word "mandated" for requirement levels other than MUST #1425
Comments
That's fair feedback. Would you see the rule documentation verbiage softened e.g.
This is a separate discussion, but having a PATCH that only supports full replace isn't a PATCH, it's a PUT without the POST-semantics if missing. So I'm wondering why we'd want to qualify inclusion of Edit: typo |
This is very easy to consider in theory. Until/unless you add any new fields, there's no need to bother implementing partial update support (especially if you require etags). It can always be added later, meaning adding any new mutable field to the resource would require adding an |
Note that there's not always much value in supporting update masks. For example, if the only mutable field on your resource is an unordered list. Furthermore, protobuf libraries for FieldMask don't support all of AIP-161 (e.g. wildcards and maps). This further reduces the cases where update masks are useful. |
I see and you're right in a lot of ways, thanks for taking the time to respond. Fixing the rule docs! |
The term "mandated" implies a requirement level of MUST. The API linter documentation is misleading in this regard, as it uses that term even when the requirement level is SHOULD.
Example:
core::0134::request-mask-required
However in the AIP in question:
and
The must here is conditional on the should above, meaning this is not actually mandated by the AIP.
The text was updated successfully, but these errors were encountered: