Commit Graph

1486 Commits (7d9304fdde9569a4cb0733ea058fc6ed1754f1f6)

Author SHA1 Message Date
Travis Ralston 6cfd761204 Spec the v2 lookup API
Spec for [MSC2134](https://github.com/matrix-org/matrix-doc/pull/2134)
5 years ago
Travis Ralston a24bcc2c0a
Merge pull request #2258 from matrix-org/travis/spec/is-terms
Spec IS terms of service
5 years ago
Travis Ralston f7e00b19e9
Merge pull request #2255 from matrix-org/travis/spec/is-auth
Spec the v2 IS auth APIs
5 years ago
Travis Ralston 54fb5eb5cf
Merge pull request #2281 from matrix-org/travis/spec/identity-server-storage
Spec m.identity_server account data
5 years ago
Charlie Varley 4d835c1753
Update index.rst 5 years ago
Travis Ralston 958cffd330 Spec m.identity_server account data
As per [MSC2230](https://github.com/matrix-org/matrix-doc/pull/2230)
5 years ago
Travis Ralston afd5018494 Spec the terms of service handling for identity servers
Part of MSC2140

Convert status codes to strings if there is a string status code. Fixes a build error when we mix 4xx and 403 in the same definition. We also have to correct stringified numbers to pass the build.
5 years ago
Travis Ralston 8f48b4e717 Merge branch 'master' into travis/spec/is-auth 5 years ago
Travis Ralston 2b8c8ad512 MSC1779 is actually merged now 5 years ago
Ben Parsons d346099cf7 deduplicate MSC1779 ref in proposals list 5 years ago
Matthew Hodgson 1f2acbcf29 RST is not MD 5 years ago
Travis Ralston 91f862d9e8 Use the right error code for 401 errors 5 years ago
Travis Ralston 0408373cf9 Litter the client-server API with id_access_token 5 years ago
Travis Ralston 4d0ea64121 Define authentication, ripping off the client-server API description 5 years ago
Travis Ralston b0acaeddfa Reference the v2 API where possible 5 years ago
Damir Jelić a96a2f3fce Fix the action of a room key request cancellation.
The spec states that the action of a room key request cancellation
should be "cancel_request" but every known implementation uses
"request_cancellation" instead.

This patch fixes the spec to reflect the implementations.
5 years ago
Andrew Morgan 92c6f4c38e
Add M_USER_DEACTIVATED to list of error codes (#2234)
Spec PR for [MSC 2181](https://github.com/matrix-org/matrix-doc/pull/2181).

Adds the `M_USER_DEACTIVATED` error code and a short description to the client-server API.
5 years ago
Travis Ralston a171d5f6fd Check for a state_key on the tombstone push rule
This is an oversight from the proposal.
5 years ago
Luca Becker f4d6b6c261
Fixed broken indentations 5 years ago
Luca Becker c7a23557d4
Last cosmetic changes
switched back to the use of `.. NOTE::`
5 years ago
Luca Becker d43111cdd2
Incorporated @turt2live suggestions.
Used **Note** to describe notes around the authorisation rules. Otherwise restored the original state for the consequences from the auth rules.
Moved the clarification regarding default power levels up above the auth rules. Removed third sentence. And followed @turt2live's example, but opted for "for users in that room" because the default user power level is applied to all users.
5 years ago
Luca Becker 094005dca1
Incorporated @turt2live suggestions.
Added missing added and removed to the rule, because these keys are not required for m.room.power_levels. Also moved the note down to the Note section.
5 years ago
Luca Becker 8aece4f644
Incorporated @richvdh suggestions 5 years ago
Luca Becker 15994c61a5
Clarification regarding authorisation rules
The rules for m.room.power_levels power were somewhat unclear regarding the behaviour towards the always present keys, such as kick and ban. Additionally, it is now also clarified that in the users and events dictionary also added and removed keys are taken into consideration.
5 years ago
Travis Ralston 7b0f5ea77b
Merge pull request #2159 from jimmycuadra/reference-hash-purpose
Clarify the purpose of reference hashes.
5 years ago
Jimmy Cuadra a3d2d14dae Rephrase explanation of the purpose of reference hashes and link to the
room version spec.

Signed-off-by: Jimmy Cuadra <jimmy@jimmycuadra.com>
5 years ago
Andrew Morgan 52643a92c6
Less confusing wording on Application Service's Legacy Routes (#2160)
https://matrix.org/docs/spec/application_service/r0.1.1#legacy-routes

The "becomes" wording made it a little bit confusing for which was the new route and which was the old.
5 years ago
Jimmy Cuadra 5df86dabe0 Clarify the purpose of reference hashes.
The server-server specification describes a "reference hash" of an event
and how to calculate it, but is otherwise not mentioned anywhere else in
the document. This change adds a sentence to explain that they are used
for event identifiers in later room versions, which are described in
other documents.

Signed-off-by: Jimmy Cuadra <jimmy@jimmycuadra.com>
5 years ago
J. Ryan Stinnett 4c65660b96 Clarify `.m.rule.room_one_to_one` push rule
This clarifies the `.m.rule.room_one_to_one` push rule by adding a condition on
event type. Some parts of the spec already had this info, while others were
missing it. Synapse has had this behaviour since the push rule appeared.

Fixes https://github.com/matrix-org/matrix-doc/issues/2150
5 years ago
Andrew Morgan 4997abc4b7 as as -> as 5 years ago
Travis Ralston 6f460ad70a minus spec
according to the apache .htaccess we use
6 years ago
Travis Ralston 33ca891e71 Fix link to Olm signing specification
See https://github.com/matrix-org/matrix.org/issues/478
6 years ago
Matthew Hodgson aadf1cc733
Merge pull request #2131 from jimmycuadra/e2ee-easier-typo
Fix typo in key verification framework section.
6 years ago
Jimmy Cuadra 2dd0da7d50 Fix typo in key verification framework section.
Signed-off-by: Jimmy Cuadra <jimmy@jimmycuadra.com>
6 years ago
Travis Ralston 50dee76fa7
Merge pull request #2122 from matrix-org/travis/fix-changelog
Fix changelog generation
6 years ago
Travis Ralston 18eca90022 Exclude DEL from historical user IDs
The range is inclusive, so don't include 7F
6 years ago
Travis Ralston e60d2defbd Fix changelog generation
Only include the target version, not all versions. Additionally, make sure the appservice spec isn't hardcoded as "unstable".
6 years ago
Travis Ralston 19a3d574b7 Fix HKDF rationale 6 years ago
Travis Ralston ba5479e46f Reference Canonical JSON 6 years ago
Travis Ralston 98c9d93b20
Merge pull request #2113 from matrix-org/client_server/release-r0.5.0
Client-Server r0.5.0
6 years ago
Travis Ralston 497c6875ac
Merge pull request #2112 from matrix-org/server_server/release-r0.1.2
Federation r0.1.2
6 years ago
Travis Ralston 67d12165e8
Merge pull request #2111 from matrix-org/identity_service/release-r0.2.0
Identity r0.2.0
6 years ago
Travis Ralston 1ca60bf5d7 Client-Server r0.5.0 6 years ago
Travis Ralston 8e6ccf0a0e Federation r0.1.2 6 years ago
Travis Ralston 34ad81e81b Identity r0.2.0 6 years ago
Travis Ralston 4f915f2760 Appservice r0.1.1 6 years ago
Travis Ralston f44483a8cf
Merge pull request #2099 from matrix-org/travis/1.0/1.0-notice
Declare Matrix 1.0 in the index
6 years ago
Travis Ralston 2d18f81807
Merge pull request #2087 from matrix-org/travis/1.0/events-are-extensible
Reorganize event structure in c2s spec and clarify event capabilities
6 years ago
Travis Ralston c9345ba6a3 Never forget the past 6 years ago
Travis Ralston 19f017f9bd
Merge pull request #2035 from matrix-org/travis/1.0/msc688-msc1227-lazy-loading
Spec lazy-loading room members
6 years ago
Travis Ralston fbdb56a29f
Merge pull request #2101 from matrix-org/anoa/hs_3pid_tokens
Add submit_url field to requestToken responses, clarify HS's can send tokens themselves
6 years ago
Travis Ralston 6d60258e25
Merge pull request #2080 from matrix-org/travis/1.0/msc2076-msc2077-v5-rooms
Spec v5 rooms: Key validity
6 years ago
Travis Ralston b32f0e768f clarify that UIA can now be done by the HS 6 years ago
Travis Ralston 370ae8b9fe
Merge pull request #2068 from matrix-org/travis/1.0/mxc
Refactor documentation for content/media repository
6 years ago
Travis Ralston ad3aa5edf0
Merge pull request #2104 from matrix-org/travis/1.0/event-ids
Clarify that the common identifier format can be broken
6 years ago
Travis Ralston b7378a860a
Merge pull request #2097 from matrix-org/travis/1.0/common-themes
Specify some of the common concepts for Matrix in the index
6 years ago
Travis Ralston c1c26859e2
Merge pull request #2096 from matrix-org/travis/1.0/read-notifs
Clarify how notification counts are calculated in /sync
6 years ago
Travis Ralston ad2eefdde9 Shuffle and clarify identifier grammar
Specifically, make it clearer that event IDs are the weird exception in this section.
6 years ago
Travis Ralston 32761fc108
Merge pull request #2098 from matrix-org/travis/1.0/modules-update
Clarify what a "module" is and update feature profiles for clients
6 years ago
Travis Ralston 37e2d81d58 Hardcode the state event fields table into the spec
See comment for why.
6 years ago
Travis Ralston 51698a5dd5 Clarify that people must own the namespace to use it 6 years ago
Travis Ralston 19c827e581 Remove trailing slashes section 6 years ago
Travis Ralston 49831fb74f Clarifications about namespaces 6 years ago
Travis Ralston 1886a2346a Move explanation of notifications to notifications module 6 years ago
Travis Ralston cf19f52576 Enforce 7 day validity requirement everywhere
also misc formatting fixes
6 years ago
Matthew Hodgson 0506d09cf7 incorporate LL review from matthew 6 years ago
Travis Ralston 7fe7d365e2
Merge pull request #2089 from matrix-org/travis/1.0/cors
Clarify when and where CORS headers should be returned
6 years ago
Travis Ralston 29340c6eb8 Clarify that the common identifier format can be broken
We already reference in the Event IDs section that the format depends on the room version, so we just need to link there.

Fixes https://github.com/matrix-org/matrix-doc/issues/2103
6 years ago
Matthew Hodgson 950415c72a
Merge branch 'master' into matthew/msc1779 6 years ago
Travis Ralston a38af2009f
Apply suggestions from code review
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
6 years ago
Travis Ralston 4b6e2cc956
Merge pull request #2072 from matrix-org/travis/1.0/msc1717-msc1267-sas-verification
Spec SAS verification and the common key verification framework
6 years ago
Travis Ralston 46747e897e ing 6 years ago
Travis Ralston 00588efd3f
Merge pull request #2086 from matrix-org/travis/1.0/fed-content-type
Clarify that the default s2s transport is JSON over HTTP
6 years ago
Travis Ralston ac27728c0a
Merge pull request #2082 from matrix-org/travis/1.0/v4-default
Make v4 the "default" room version
6 years ago
Travis Ralston e4339fd687 More clarity 6 years ago
Travis Ralston 6a4a6db1bd
Merge pull request #2081 from matrix-org/travis/1.0/pdu-signatures
Clarify which servers are supposed to sign events
6 years ago
Travis Ralston 4c82553df4
Merge pull request #2047 from matrix-org/travis/1.0/test-vectors
Fix test vectors with invalid JSON and signature
6 years ago
Travis Ralston 360ac0b900
Update specification/server_server_api.rst
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
6 years ago
Travis Ralston 77c4c4b07c Add general clarity 6 years ago
Travis Ralston 5ec1a50b94 Linefeeds and other clarifications 6 years ago
Travis Ralston 3877896a4c Clarify how we now expect verification to be done 6 years ago
Travis Ralston d49c7fb3b0
Apply suggestions from code review
Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
6 years ago
Travis Ralston 00fee74636 Update example 6 years ago
Travis Ralston f4e85853d4
Merge pull request #2054 from matrix-org/travis/1.0/uia-clarifications
Clarify that UIA stages cannot be attempted twice
6 years ago
Jamie McClymont d7858354f2 Fix 404s in links from room v1 spec 6 years ago
Travis Ralston 7f01346bba Provide a more complete example of a "minimally-sized event"
Using all the required fields of a v1 event.
6 years ago
Travis Ralston ae9abe798e Revert signature change for redactable event test
The previous signature was calculated on the unredacted event, which means the signature produced was wrong.
6 years ago
Travis Ralston 4f665f06e6 Clarify what Matrix 1.0 is further
And add a table for minimum versions.
6 years ago
Travis Ralston 06ee60f004 Clarify what compliant implementations are 6 years ago
Travis Ralston 49dbb3ee4f Declare Matrix 1.0 in the index
Fixes https://github.com/matrix-org/matrix-doc/issues/2044
6 years ago
Travis Ralston 87d8d97074 Remove incomplete and weird sentence 6 years ago
Travis Ralston cd6b012523 Clarify what a "module" is and update feature profiles for clients
Fixes https://github.com/matrix-org/matrix-doc/issues/2009
6 years ago
Travis Ralston b9c9396c11 Specify some of the common concepts for Matrix in the index
See https://github.com/matrix-org/matrix-doc/pull/2061
Fixes https://github.com/matrix-org/matrix-doc/issues/1468
Fixes https://github.com/matrix-org/matrix-doc/issues/1528

The section is not referenced by the specifications yet - they do a fairly good job of explaining it over and over. In future, it would be good to point all the references to the index.
6 years ago
Travis Ralston f0eb495cee Clarify how notification counts are calculated in /sync
Fixes https://github.com/matrix-org/matrix-doc/issues/2015
6 years ago
Travis Ralston e644227f4b Clarify that the server shouldn't process retries for UIA 6 years ago
Travis Ralston e1266b859f
Merge pull request #2030 from matrix-org/travis/1.0/bind-msisdn
Spec MSISDN UIA support
6 years ago
Travis Ralston bbc7401973 Clarify when and where CORS headers should be returned
Fixes https://github.com/matrix-org/matrix-doc/issues/1736
Fixes https://github.com/matrix-org/matrix-doc/issues/2013
6 years ago
Travis Ralston 8fd5b15594 Reorganize event structure in c2s spec and clarify event capabilities
Fixes https://github.com/matrix-org/matrix-doc/issues/1166
Fixes https://github.com/matrix-org/matrix-doc/issues/1527
Fixes https://github.com/matrix-org/matrix-doc/issues/1827

Note: In order to fix the "state events have the following fields: [no words]" bug (1827) we need to resolve references on common event types. When doing this we ultimately end up with more fields than may be required to explain the section, however this commit alters the section descriptions to just say "these fields" instead of "these additional fields".

This is also preferable over trying to get the inheritance reversed in the common event types, as the `/sync` endpoint has a high amount of reliance on partial events definitions.
6 years ago
Travis Ralston 500f3d3bf1 Clarify that the default s2s transport is JSON over HTTP
Fixes https://github.com/matrix-org/matrix-doc/issues/1713
6 years ago
Travis Ralston 80aa5a24dc Make v4 the "default" room version
As per [MSC2002](https://github.com/matrix-org/matrix-doc/pull/2002). This was missed in https://github.com/matrix-org/matrix-doc/pull/2019

Fixes https://github.com/matrix-org/matrix-doc/issues/2071
6 years ago
Travis Ralston 7ce1ff2135 Clarify which servers are supposed to sign events
Fixes https://github.com/matrix-org/matrix-doc/issues/2074
6 years ago
Travis Ralston a6314df44c Spec v5 rooms: Key validity
Proposals:
* [MSC2076](https://github.com/matrix-org/matrix-doc/pull/2076)
* [MSC2077](https://github.com/matrix-org/matrix-doc/pull/2077)

Implementation references:
* 00bf99fa62
* https://github.com/matrix-org/synapse/pull/5354
* https://github.com/matrix-org/synapse/pull/5321

No known differences from the proposals are included here - alterations are accidental.
6 years ago
Travis Ralston de725c26cc Add more clarity to the media repo 6 years ago
Travis Ralston aa110b2be2
Merge pull request #2025 from matrix-org/travis/1.0/3rdpartysigned
Fix third party signed definitions for join APIs
6 years ago
Travis Ralston a3364ff357 Spec SAS verification and the common key verification framework
Reference implementations:
* 94f664e725
* https://github.com/matrix-org/matrix-react-sdk/pull/2461
* https://github.com/matrix-org/matrix-js-sdk/pull/818
* https://github.com/matrix-org/matrix-react-sdk/pull/2596
* https://github.com/matrix-org/matrix-js-sdk/pull/837

Proposals:
* [MSC1717](https://github.com/matrix-org/matrix-doc/pull/1717)
* [MSC1267](https://github.com/matrix-org/matrix-doc/issues/1267)

No alterations to either proposal have been made intentionally here.
6 years ago
Travis Ralston 9cb60fa468
Merge pull request #2059 from matrix-org/travis/1.0/msc1719-olm-unwedge
Add Olm unwedging
6 years ago
Travis Ralston 39144942da
Fix title ordering 6 years ago
Travis Ralston 1f86e8e31b Refactor documentation for content/media repository
Fixes https://github.com/matrix-org/matrix-doc/issues/2060
Fixes https://github.com/matrix-org/matrix-doc/issues/772
Fixes https://github.com/matrix-org/matrix-doc/issues/888
6 years ago
Travis Ralston 57e3b152b0 Move section to under Olm stuff 6 years ago
Travis Ralston 754b19bb92
typo
Co-Authored-By: Hubert Chathi <hubert@uhoreg.ca>
6 years ago
Travis Ralston ff768ec75f
Merge pull request #2036 from matrix-org/travis/1.0/wk-fail-error
Clarify that FAIL_ERROR is not limited to just homeservers.
6 years ago
Travis Ralston 54f74cd877 Add Olm unwedging
As per [MSC1719](https://github.com/matrix-org/matrix-doc/pull/1719)

No known alterations have been made to the proposal.

Implementation proof: https://github.com/matrix-org/matrix-js-sdk/pull/780
6 years ago
Travis Ralston 0f623113f1 Clarify that UIA stages cannot be attempted twice
Fixes https://github.com/matrix-org/matrix-doc/issues/1987

Note: Synapse currently does not care, however the spirit of the text in the spec implies that completed == done forever, so we're just reinforcing it here.
6 years ago
Travis Ralston 41a036a453
Merge pull request #2050 from matrix-org/travis/1.0/clarify-proposals
Synchronize proposals_intro.rst and CONTRIBUTING.rst
6 years ago
Travis Ralston d2232aca97
Merge pull request #2042 from matrix-org/travis/1.0/ordered-flows
Clarify that login flows must be completed in order
6 years ago
Travis Ralston 78d93432f4 Synchronize proposals_intro.rst and CONTRIBUTING.rst 6 years ago
Travis Ralston 6706d772c9 Fix test vectors with invalid JSON and signature
Fixes https://github.com/matrix-org/matrix-doc/issues/2023

The content hashes appear correct, however applying the algorithm defined in the spec never resulted in the signatures previously demonstrated.
6 years ago
Travis Ralston 3ade2a9ae7 List the endpoints which support LL 6 years ago
Travis Ralston 76829ad988
Merge pull request #2037 from matrix-org/travis/1.0/appservice-hs-token
Clarify how homeservers are meant to auth themselves to appservices
6 years ago
Travis Ralston e2da3728a0 Only error if the token doesn't match 6 years ago
Travis Ralston a8f61697d1
Merge pull request #2032 from matrix-org/travis/1.0/redaction-effects
Clarify how redactions affect room state
6 years ago
Travis Ralston 8151aa331f
Update specification/client_server_api.rst
Co-Authored-By: Hubert Chathi <hubert@uhoreg.ca>
6 years ago
Travis Ralston 0580f51206 Clarify that failing to follow the flows == 401 6 years ago
Travis Ralston 4e58414b26 Clarify that clients should not ack their own messages
Fixes https://github.com/matrix-org/matrix-doc/issues/567
6 years ago
Travis Ralston 572a6056ad Clarify that login flows must be completed in order
Fixes https://github.com/matrix-org/matrix-doc/issues/1134

Evidence of this being the case is shown here: https://github.com/matrix-org/synapse/pull/5174
6 years ago
Travis Ralston d0fd20fdb4 Clarify how homeservers are meant to auth themselves to appservices
Fixes https://github.com/matrix-org/matrix-doc/issues/1765

Note that the swagger definitions already say that authorization is required. It just wasn't mentioned in the spec.
6 years ago
Travis Ralston 10648aa9e8 Clarify that FAIL_ERROR is not limited to just homeservers.
Fixes https://github.com/matrix-org/matrix-doc/issues/1735
6 years ago
Travis Ralston bf8ca3abba
Merge pull request #2026 from matrix-org/travis/1.0/msc1452-server-notices
Add server notices support
6 years ago
Travis Ralston 9acd960cf6
Update specification/client_server_api.rst
Co-Authored-By: Kitsune Ral <Kitsune-Ral@users.sf.net>
6 years ago
Travis Ralston ade346f8cc Add m.server_notice to reserved tags 6 years ago
Travis Ralston d14dc1d8e1 Clarify that redacted state events affect the room with default values 6 years ago
Travis Ralston 8330810e95 Specify the new room naming scheme 6 years ago
Travis Ralston e610f085a9
Merge pull request #2019 from matrix-org/travis/1.0/msc1884-msc2002-v4-rooms
Add version 4 rooms to the spec
6 years ago
Travis Ralston ba520df004 Move lazy loading to a section in Filtering 6 years ago
Travis Ralston 23ab1c527a Clarify how redactions affect room state
Fixes https://github.com/matrix-org/matrix-doc/issues/1726
6 years ago
Travis Ralston 1bda3fe2b2 Spec MSISDN UIA support
Fixes https://github.com/matrix-org/matrix-doc/issues/1702

1702 describes the lack of `bind_msisdn` parameter, however the whole login type was missing from UIA.
6 years ago
Travis Ralston 5eea4a477f Add server notices support
As per [MSC1452](https://github.com/matrix-org/matrix-doc/issues/1452) 

Fixes https://github.com/matrix-org/matrix-doc/issues/1254

Although MSC1452 focuses on just the warnings part of the server notices, the base for notices has not been established in the spec. This commit adds the needed support to be able to handle notices.

No intentional divergences from the proposal are included in this changeset. There are a few additions which are used in practice although not defined in the proposal, such as who is responsible for aesthetics, sending notices, and other misc rules.
6 years ago
Travis Ralston 2b96d73305 Fix third party signed definitions for join APIs
Fixes https://github.com/matrix-org/matrix-doc/issues/1978
6 years ago
Travis Ralston 5c268ef21f
Merge pull request #2020 from matrix-org/travis/1.0/msc1930-tombstone-notif
Add a .m.rule.tombstone default push rule for room upgrades
6 years ago
Travis Ralston ceaccffdf7 Add a .m.rule.tombstone default push rule for room upgrades
As per [MSC1930](https://github.com/matrix-org/matrix-doc/pull/1930)

There are no known changes to this proposal since it was accepted.
6 years ago
Travis Ralston 3b0e194ff7 Add version 4 rooms to the spec
As per [MSC1884](https://github.com/matrix-org/matrix-doc/pull/1884) and [MSC2002](https://github.com/matrix-org/matrix-doc/pull/2002).

No known changes since the proposals were accepted.

Due to being in the area: This fixes https://github.com/matrix-org/matrix-doc/issues/1863
6 years ago
Travis Ralston 3c38956510 Remove prev_content from the redaction essential keys list
As per [MSC1954](https://github.com/matrix-org/matrix-doc/pull/1954)

No known changes since the proposal was accepted.
6 years ago
David Baker c38581fb86
Too many spaces
Co-Authored-By: Travis Ralston <travpc@gmail.com>
6 years ago
David Baker 383e02835e Words on using m.login.dummy for disambiguation
Add some text on how m.login.dummy can be used to distinguish
a flow that would otherwise be a subset of other flows.
6 years ago
Travis Ralston ba18a6e9fa
Merge pull request #1992 from matrix-org/anoa/missing_punctuation3
Add missing period
6 years ago
Travis Ralston ce904f9750
Merge pull request #1990 from matrix-org/anoa/missing_punctuation
Add missing period
6 years ago
Travis Ralston c54a5fc3df
Merge pull request #1989 from matrix-org/anoa/typo2
Add missing 'as'
6 years ago
Andrew Morgan 57cf1aaa96 Add missing period 6 years ago
Andrew Morgan 40482f7616 Add missing period 6 years ago
Andrew Morgan c233535de0 fix typo 6 years ago