-
Notifications
You must be signed in to change notification settings - Fork 418
MSC4335: M_USER_LIMIT_EXCEEDED error code #4335
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
base: main
Are you sure you want to change the base?
Conversation
|
@mscbot fcp merge |
|
Team member @mscbot has proposed to merge this. The next step is review by the rest of the tagged people: Concerns:
Once at least 75% of reviewers approve (and there are no outstanding concerns), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up! See this document for information about what commands tagged team members can give me. |
|
MSCs proposed for Final Comment Period (FCP) should meet the requirements outlined in the checklist prior to being accepted into the spec. This checklist is a bit long, but aims to reduce the number of follow-on MSCs after a feature lands. SCT members: please check off things you check for, and raise a concern against FCP if the checklist is incomplete. If an item doesn't apply, prefer to check it rather than remove it. Unchecking items is encouraged where applicable. Checklist:
|
|
@mscbot concern Checklist not complete/started (any SCT member can resolve this) |
|
I have added an alternative of using server side translations here instead of I think this would actually provide a better UX overall, albeit at the expense of complexity for the homeserver operator and error payload size. I would welcome input on this. |
| * `soft_limit` boolean (optional, default `false`) - `true` means that the specific limit encountered can be increased. | ||
| Otherwise it is a hard limit that cannot be increased. | ||
| * `increase_uri` (required if `soft_limit` is `true`) - an opaque URI where the user can undertake actions to increase | ||
| the encountered limit. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we just include increase_uri if the limit can be increased, otherwise omit it?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you mean not have the soft_limit flag?
|
|
||
| > This homeserver has exceeded one of its resource limits | ||
|
|
||
| As such, I think this message would be confusing to users the interim whilst clients updated their implementations and |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| As such, I think this message would be confusing to users the interim whilst clients updated their implementations and | |
| As such, I think this message would be confusing to users in the interim whilst clients updated their implementations and |
| Separate error codes could be introduced for different types | ||
| of limits (e.g., `M_STORAGE_LIMIT_EXCEEDED`, `M_ROOM_LIMIT_EXCEEDED`). However, this approach | ||
| would require many new error codes and doesn't provide significant benefits over a single code | ||
| with descriptive error messages. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It also prevents homeservers for implementing new limits without writing an MSC (the next alternative also speaks to this).
However, it would solve the translation problem without the homeserver needing to define every translation.
| ```json | ||
| { | ||
| "errcode": "M_USER_LIMIT_EXCEEDED", | ||
| "error": "User has exceeded their storage quota of 10GB", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: since clients sometimes show the error to the user, I think
| "error": "User has exceeded their storage quota of 10GB", | |
| "error": "You have exceeded your storage quota of 10GB", |
would look better. (same below)
Rendered
Implementations:
In the prototype implementation when this error code is encountered for a file upload, it is rendered as follows for a soft limit:
And like this for a hard limit:
I am employed by Element to write this MSC on behalf of the Matrix Foundation for use on the matrix.org homeserver. Hence the use of the
org.matrixnamespace on the unstable values.SCT Stuff:
MSC checklist
FCP tickyboxes