Start annotating which version of the spec added a thing (#3425)

* Introduce a new "added-in" template and use it on endpoints

* Use "added-in" on schema properties too

* Annotate sections of the spec with their added versions

* Demo of "added-in" on a room version (to be fleshed out)

* Use clearer versioning semantics

* Update and fix validator for Swagger custom properties

* Fix docs
This commit is contained in:
Travis Ralston 2021-10-14 13:23:04 -06:00 committed by GitHub
parent 649fc2bdd2
commit 5be0df02c5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
32 changed files with 380 additions and 22 deletions

View file

@ -60,6 +60,7 @@ paths:
type: string
description: The fully qualified user ID of the user being banned.
reason:
x-addedInMatrixVersion: "1.1"
type: string
description: The reason the user has been banned. This will be supplied as the
`reason` on the target's updated [`m.room.member`](/client-server-api/#mroommember) event.
@ -119,6 +120,7 @@ paths:
type: string
description: The fully qualified user ID of the user being unbanned.
reason:
x-addedInMatrixVersion: "1.1"
type: string
description: |-
Optional reason to be included as the `reason` on the subsequent

View file

@ -29,6 +29,7 @@ securityDefinitions:
paths:
"/keys/device_signing/upload":
post:
x-addedInMatrixVersion: "1.1"
summary: Upload cross-signing keys.
description: |-
Publishes cross-signing keys for the user.
@ -140,6 +141,7 @@ paths:
- End-to-end encryption
"/keys/signatures/upload":
post:
x-addedInMatrixVersion: "1.1"
summary: Upload cross-signing signatures.
description: |-
Publishes cross-signing signatures for the user. The request body is a

View file

@ -72,6 +72,7 @@ paths:
type: string
description: The fully qualified user ID of the invitee.
reason:
x-addedInMatrixVersion: "1.1"
type: string
description: |-
Optional reason to be included as the `reason` on the subsequent

View file

@ -66,6 +66,7 @@ paths:
`m.room.third_party_invite` event in the room, and perform
key validity checking if required by the event.
reason:
x-addedInMatrixVersion: "1.1"
type: string
description: |-
Optional reason to be included as the `reason` on the subsequent
@ -152,6 +153,7 @@ paths:
that it matches a pending `m.room.third_party_invite` event in the
room, and perform key validity checking if required by the event.
reason:
x-addedInMatrixVersion: "1.1"
type: string
description: |-
Optional reason to be included as the `reason` on the subsequent

View file

@ -29,6 +29,7 @@ securityDefinitions:
paths:
"/room_keys/version":
post:
x-addedInMatrixVersion: "1.1"
summary: Create a new backup.
description: |-
Creates a new backup.
@ -157,6 +158,7 @@ paths:
- End-to-end encryption
"/room_keys/version/{version}":
get:
x-addedInMatrixVersion: "1.1"
summary: Get information about an existing backup.
description: |-
Get information about an existing backup.
@ -734,6 +736,7 @@ paths:
- End-to-end encryption
"/room_keys/keys":
put:
x-addedInMatrixVersion: "1.1"
summary: Store several keys in the backup.
description: |-
Store several keys in the backup.

View file

@ -238,6 +238,7 @@ paths:
}
}
master_keys:
x-addedInMatrixVersion: "1.1"
type: object
description: |-
Information on the master cross-signing keys of the queried users.
@ -259,6 +260,7 @@ paths:
}
}
self_signing_keys:
x-addedInMatrixVersion: "1.1"
type: object
description: |-
Information on the self-signing keys of the queried users. A map

View file

@ -29,6 +29,7 @@ securityDefinitions:
paths:
"/knock/{roomIdOrAlias}":
post:
x-addedInMatrixVersion: "1.1"
summary: Knock on a room, requesting permission to join.
description: |-
*Note that this API takes either a room ID or alias, unlike other membership APIs.*

View file

@ -62,6 +62,7 @@ paths:
}
properties:
reason:
x-addedInMatrixVersion: "1.1"
type: string
description: |-
Optional reason to be included as the `reason` on the subsequent

View file

@ -23,6 +23,7 @@ basePath: /_matrix/client/v3
paths:
"/login/sso/redirect":
get:
x-addedInMatrixVersion: "1.1"
summary: Redirect the user's browser to the SSO interface.
description: |-
A web-based Matrix client should instruct the user's browser to
@ -50,6 +51,7 @@ paths:
- Session management
"/login/sso/redirect/{idpId}":
get:
x-addedInMatrixVersion: "1.1"
summary: Redirect the user's browser to the SSO interface for an IdP.
description: |-
This endpoint is the same as `/login/sso/redirect`, though with an

View file

@ -58,6 +58,7 @@ paths:
type: string
description: The user ID that owns the access token.
device_id:
x-addedInMatrixVersion: "1.1"
type: string
description: |-
Device ID associated with the access token. If no device