Original proposals: * https://github.com/matrix-org/matrix-doc/pull/1753 * https://github.com/matrix-org/matrix-doc/pull/1804 Implementation proof: * https://github.com/matrix-org/synapse/pull/4472 * https://github.com/matrix-org/matrix-js-sdk/pull/830 There is one change to MSC1753 which is included in this commit. MSC1804 remains unchanged. In the original proposal, the change password capability being present was an indication that password changes were possible. It was found that this doesn't really communicate the state very well to clients in that lack of a capability (or a 404, etc) would mean that users would erroneously not be able to change their passwords. A simple boolean flag was added to assist clients in detecting this capability. |
||
---|---|---|
.. | ||
application_service | ||
client_server | ||
identity_service | ||
push_gateway | ||
server_server | ||
application_service.rst | ||
client_server.rst | ||
identity_service.rst | ||
push_gateway.rst | ||
README.md | ||
server_server.rst |
Changelogs
Towncrier is used to manage the changelog and keep it up to date. Because of this, updating a changelog is really easy.
How to update a changelog when releasing an API
- Ensure you're in your Python 3 virtual environment
cd
your way to the API you're releasing (eg:cd changelogs/client_server
)- Run
towncrier --version "r0.4.0" --name "client-server" --yes
substituting the variables as approprite. Note that--name
is required although the value is ignored. - Commit the changes and finish the release process.
How to prepare a changelog for a new API
For this example, we're going to pretend that the server_server
API doesn't exist.
- Create the file
changelogs/server_server.rst
- Create the folder
changelogs/server_server
- In the new folder, create a
pyproject.toml
file with these contents:[tool.towncrier] filename = "../server_server.rst" directory = "newsfragments" issue_format = "`#{issue} <https://github.com/matrix-org/matrix-doc/issues/{issue}>`_" title_format = "{version}" [[tool.towncrier.type]] directory = "breaking" name = "Breaking Changes" showcontent = true [[tool.towncrier.type]] directory = "deprecation" name = "Deprecations" showcontent = true [[tool.towncrier.type]] directory = "new" name = "New Endpoints" showcontent = true [[tool.towncrier.type]] directory = "feature" name = "Backwards Compatible Changes" showcontent = true [[tool.towncrier.type]] directory = "clarification" name = "Spec Clarifications" showcontent = true
- Create a
.gitignore
inchangelogs/server_server/newsfragments
with the contents!.gitignore