feat: Implement MSC4188: Handling 410 Gone Status in Matrix Server Discovery #39
No reviewers
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority
Critical
Priority
High
Priority
Low
Priority
Medium
Reviewed
Confirmed
Reviewed
Duplicate
Reviewed
Invalid
Reviewed
Won't Fix
Status
Abandoned
Status
Blocked
Status
Need More Info
No milestone
No project
No assignees
3 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
continuwuation/resolvematrix!39
Loading…
Reference in a new issue
No description provided.
Delete branch "nex/feat/MSC4188"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Implements MSC4188: Handling 410 Gone Status in Matrix Server Discovery with the feature flag
unstable-msc4188. The 410 status code is honoured and the server is treated as unresolvable with the newServerResolutionError::Goneerror.Closes #38
Closes continuwuation/continuwuity#644
@ -1245,0 +1347,4 @@let resolver = Arc::new(MatrixResolver::new().unwrap());// This server always returns HTTP 410 to `/.well-known/matrix/server`let server_name = "graveyard.matrix.nexy7574.co.uk";could this be a parameter instead of a constant in the test itself? would make testing towards other servers in the future a lot easier
@ -506,0 +556,4 @@tracing::debug!(?url,status = status.as_u16(),"Response status not 200 when fetching .well-known"instead of having an "if not OK" for the MSC being disabled, and a match for it being enabled, can we just use the same match for both (and add special handling for gone)
I don't like the idea of having special handling for it when the spec does explicitly say non-200 and only the MSC modifies that clause. unless you mean something else?
pseudocode example of what I mean:
that would let us keep the existing behaviour (accept 200s, error otherwise) and easily add the 401 case on top of it
i just now realized this is supposed to be 410 not 401
i assume you knew but uh im stupid :3
@ -616,3 +674,3 @@}/// Clear entire cache/// Removes a specific server from the [MSC4188] gone cache.missing a target url for the [] here?