Commit Graph

1225 Commits (main)

Author SHA1 Message Date
David Baker 9198182f1a
Add error codes from MSC4178 (#1944)
* Add error codes from MSC4178

* changelog

* Put changelog in the right place

* Move newsfile

* Add the codes to the right endpoint

* Also add M_THREEPID_IN_USE

which was always used and is specified in the IS API, but not in the
C/S API. We decided this was well-specced enough that it didn't need
its own MSC.
11 hours ago
Kévin Commaille f819403bd5
Change the accessible role of info boxes to `note` (#2022)
The `alert` role is intrusive and should only be used when the user's immediate attention is required.

Given that this boxes only provide additional content to the current paragraph,
the `note` role seems more appropriate.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
22 hours ago
Kévin Commaille 7867ebb250
Remove `type` and `language` attributes of `script` element (#2021)
The `type` attribute is not needed when the content is JavaScript,
and the `language` attribute is deprecated.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
22 hours ago
Kévin Commaille 1accb9e93f
Optimize generated CSS by removing unused selectors (#2008)
Hugo generates stats about the HTML elements, IDs and classes that can be found in the website,
and we post-process the rendered CSS with postcss-purgecss that uses those stats to remove unused selectors.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
22 hours ago
Kévin Commaille 54d872e19b
Fix added-in Matrix spec version for report room endpoint (#2028)
See #1938 where they were incorrectly marked as 1.12 instead of 1.13.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 days ago
Richard van der Hoff 075a98d619
Add hyperlinks to endpoints (#2016)
... because there's nothing more infuriating than someone talking about an
endpoint, then having to search through 150 pages of spec for it.
2 days ago
Denis Kasak 336b855d7a
Clarify rule 4.3.1 of the auth rules in room version 11 (#2024)
Signed-off-by: Denis Kasak <dkasak@termina.org.uk>
1 week ago
Kévin Commaille 8ab2988824
Remove reply fallbacks (#1994)
As per MSC2781.
2 weeks ago
Kévin Commaille 7ec9b7f2e1
Restore heading self links (#2007)
It was a change I did not notice when upgrading Docsy from 0.8.0 to 0.11.0. Docsy changed the way heading self links are generated: they used to be rendered with JS and now they use a Hugo render hook.

This means two things:
- We need to enable them explicitly by overriding the `_default/_markup/render-heading.html` template.
- We need to add the self heading ourselves to headings that are not rendered by Hugo, i.e. HTML headings that we create ourselves.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 weeks ago
Kévin Commaille f64eec5a93
Use `json` instead of `json5` for syntax highlighting (#2017)
* Use json instead of json5 for syntax highlighting

Chroma, the library used for syntax highlighting in Hugo, does not support JSON5 so those code blocks were not highlighted.
However it supports comments in JSON so they are highlighted correctly in the rendered spec.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add changelog

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

---------

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 weeks ago
Richard van der Hoff f8119f5336
Remove distinction between `StateFilter` and `RoomEventFilter` (#2015)
They are exactly the same type, so let's combine their tables together.
2 weeks ago
Kévin Commaille c5eac010be
Fix `changed-in` partial when used with multiple paragraphs (#2006)
When used with a text that includes multiple paragraphs, the partial created invalid HTML by nesting `<p>` elements.
It also changed the rendering by making "Changed in vX.XX:" a separate paragraph, when it is inline with a single paragraph.

To change that we do as with "Required" and add "Changed in vX.XX:" to the text before it is rendered, making it inline with the first paragraph.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 weeks ago
Kévin Commaille f3130f70e6
Fix regression introduced when inlining "Required" (#2005)
If the description is not set in the object definition, Hugo generates a weird string after "Required": `%!s(<nil>)`.

To avoid that, we default the description to an empty string when it is not set.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 weeks ago
Kévin Commaille c16788f991
Remove trailing slash on void HTML elements (#2009)
According to the W3C's HTML validator, trailing slashes in void-element have no effect,
and might interact badly in some cases.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
3 weeks ago
Kévin Commaille 69e162e5fe
Fix author links in the proposals lists (#1997)
Links were broken since the upgrade of the hugo version.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
3 weeks ago
Kévin Commaille d67dd88457
Clean up unused CSS classes in openapi/render-operation partial (#2003)
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
3 weeks ago
Kévin Commaille b4c52ab7bd
Use a proper favicon (#2001)
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
3 weeks ago
Kévin Commaille 0657cc1848
Fix error in ToC script at the bottom of the page (#2002)
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
3 weeks ago
Kévin Commaille 0ce83512fc
Update Inter font and set `display: swap` (#2000)
The version of Inter is updated to use a variable font, which is supported widely among modern browsers.

Using `display: swap` means that the browser will render the text of the spec even before Inter is loaded, making the website appear to load faster on mobile.

Allow the browser to use the local Inter font if it exists.
3 weeks ago
Kévin Commaille 9882d95775
Improve the quality of the rendered diagrams (#1999)
The first commit allows to lazy-load the diagrams, which should improve the loading time of the CS API on mobile. In the process it also improves the alt text of the images.

The second commit serves the diagrams as high-resolution WebPs. Encoding a high resolution diagram as WebP gives a file of approximately the same size as the lower resolution PNG. For maximum compatibility we also serve them as a lower resolution WebP and a fallback PNG. WebP was chosen because it is one of the export formats of draw.io/diagrams.net, and it is widely available in modern browsers.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
3 weeks ago
Kévin Commaille d5c56a4f17
Upgrade docsy to 0.11.0 and hugo to 0.139.0 (#1996)
Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
3 weeks ago
Kévin Commaille c5d7eb7a2d
Add `PATCH` and `HEAD` to the allowed HTTP methods in CORS responses (#1995) 4 weeks ago
Kévin Commaille bf8dee74eb
Fix relative URLs when serving the specification with a custom `baseURL` (#1984) 4 weeks ago
Kévin Commaille b1f66d1b71
Improve the JS script to highlight the current ToC entry (#1991)
The code relied on an IntersectionOberver, so the ToC was only updated when a heading was in the viewport.
It meant that if we jumped to a part of the text that has no heading, the ToC would still point to the old entry.

The new code looks for the correct heading when the view is scrolled so the correct entry is always selected.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
4 weeks ago
DeepBlueV7.X 9799b892de
Clarify parameter definition for third-party location lookups (#1947)
While 1405184765 redefined most fields to
be the appropriate object type, it missed one of them.

Signed-off-by: Nicolas Werner <nicolas.werner@hotmail.de>
4 weeks ago
Johannes Marbach 74e8be3fd9
Clarify that pusher URLs have a fixed path (#1974)
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
1 month ago
Kévin Commaille 909c4614ac
Clarify formats of string types for the `GET /.well-known/matrix/support` endpoint (#1978) 1 month ago
Benjamin Bouvier 6cd7038d01
Clarify that the async upload endpoint will return 404 in some cases (#1983) 1 month ago
Kévin Commaille e0bd054373
Clarify formats of string types for the `POST /_matrix/client/v3/login` endpoint (#1980)
Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
1 month ago
Kévin Commaille f730987da6
Clarify format of string type for `m.login.terms_params` (#1979) 1 month ago
Kévin Commaille 1e0919ad12
Rename `custom-formats.yaml` to `string-formats.yaml` (#1977)
It does not contain only custom formats, so the name didn't fit anymore.
Update also the docs to reflect that.
1 month ago
Johannes Marbach 88f0c56ad9
Clarify that servers must forward custom keys in `PusherData` (#1973)
Relates to: #921
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
1 month ago
Srinjoy Sen Chowdhury 0b4d1c0237
Add 403 error response to federation/v1/state_ids (#1926)
fixes #1912 by adding a 403 error response to /_matrix/federation/v1/state_ids/{roomId}

Signed-off-by: Srinjoy Sen Chowdhury  <srinjoysen123@gmail.com>
1 month ago
Kévin Commaille 611d6c3e7e
Always use `%` delimiter for `added-in` and `changed-in` shortcodes (#1975)
The `<>` delimiters are not necessary for the shortcode to be rendered inline, and in some cases they break some expectations: a shortcode that is separated from other text to be in its own paragraph is not actually wrapped by a `p` element, breaking the spacing between paragraphs.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 month ago
Kévin Commaille 3b8f3a09aa
Remove CSS workaround for scroll-anchoring (#1976)
Docsy does not set the `height` anymore, but the `min-height`, which doesn't seem to affect scroll-anchoring.
See f22a70ec56

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 month ago
Kévin Commaille 1f5f2c4d83
Enforce consistent vertical spacing between paragraphs in endpoint definitions (#1969)
Use `p` elements to separate paragraphs instead of `br` and enforce single paragraphs to be wrapped in `p` for consistency.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 month ago
Johannes Marbach 32f41f88bc
Document schema of PusherData in push gateway API (#1968)
Fixes: #910
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
1 month ago
Kévin Commaille b1ebbb9a1c
Rename `.htmltest.yaml` to `.htmltest.yml` (#1985)
* Rename .htmltest.yaml to .htmltest.yml

This is almost nothing but htmltest expects this exact name by default, so when running the
binary locally, it avoids to have to bother with providing the name of the config file.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

* Add changelog

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>

---------

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
1 month ago
Johannes Marbach 285cd2bda2
Sort VoIP events semantically (#1967) 2 months ago
Kévin Commaille 69d7dbf703
Remove `span` element from `added-in` and `changed-in` shortcodes (#1972) 2 months ago
Kévin Commaille 48afe4faa5
Remove `withVersioning` parameter of `rver-fragment` shortcode. (#1971) 2 months ago
Kévin Commaille 1e47d7ec48
Remove `boxes/added-in-paragraph` shortcode (#1970) 2 months ago
Johannes Marbach ae3673d2ef
Remove note about reference implementations (#1966)
Fixes: #1962
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
2 months ago
Johannes Marbach c74105db43
MSC4151: Reporting rooms (#1938) 2 months ago
Travis Ralston 9e6233d0dd v1.12 changelog 2 months ago
Travis Ralston 634c271654 Normalize changelog 2 months ago
Johannes Marbach 871c10577e
MSC4170: 403 error responses for profile APIs (#1867)
Signed-off-by: Johannes Marbach <n0-0ne+github@mailbox.org>
2 months ago
Kévin Commaille 27b4cdcc9e
Add the `deprecated` field to OpenAPI definitions and JSON Schemas (#1940)
I did a quick search of the "deprecated" word in the data folder and set the
field where the description says that a property is deprecated.

This does not change the rendering of the spec because the
descriptions already talk about the deprecation,
but it can be used by tools that rely on the OpenAPI definitions and JSON Schemas.

Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
2 months ago
Travis Ralston 9486237f1b
Allow guests to access media (MSC4189) (#1959)
MSC: https://github.com/matrix-org/matrix-spec-proposals/pull/4189
2 months ago
Johannes Marbach c8ad740ba4
Use relative permalink to redirect to latest changelog (#1956) 2 months ago