Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Commit

Permalink
Merge branch 'develop' into rei/mypy_prom_fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
reivilibre committed Feb 2, 2022
2 parents d84bf39 + 513913c commit b2c97df
Show file tree
Hide file tree
Showing 89 changed files with 2,015 additions and 753 deletions.
60 changes: 60 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,63 @@
Synapse 1.52.0rc1 (2022-02-01)
==============================

Features
--------

- Remove account data (including client config, push rules and ignored users) upon user deactivation. ([\#11621](https://github.com/matrix-org/synapse/issues/11621), [\#11788](https://github.com/matrix-org/synapse/issues/11788), [\#11789](https://github.com/matrix-org/synapse/issues/11789))
- Add an admin API to reset connection timeouts for remote server. ([\#11639](https://github.com/matrix-org/synapse/issues/11639))
- Add an admin API to get a list of rooms that federate with a given remote homeserver. ([\#11658](https://github.com/matrix-org/synapse/issues/11658))
- Add a config flag to inhibit M_USER_IN_USE during registration. ([\#11743](https://github.com/matrix-org/synapse/issues/11743))
- Add a module callback to set username at registration. ([\#11790](https://github.com/matrix-org/synapse/issues/11790))
- Allow configuring a maximum file size as well as a list of allowed content types for avatars. ([\#11846](https://github.com/matrix-org/synapse/issues/11846))


Bugfixes
--------

- Include the bundled aggregations in the `/sync` response, per [MSC2675](https://github.com/matrix-org/matrix-doc/pull/2675). ([\#11612](https://github.com/matrix-org/synapse/issues/11612))
- Fix a long-standing bug when previewing Reddit URLs which do not contain an image. ([\#11767](https://github.com/matrix-org/synapse/issues/11767))
- Fix a long-standing bug that media streams could cause long-lived connections when generating URL previews. ([\#11784](https://github.com/matrix-org/synapse/issues/11784))
- Include a `prev_content` field in state events sent to Application Services. Contributed by @totallynotvaishnav. ([\#11798](https://github.com/matrix-org/synapse/issues/11798))
- Fix a bug introduced in Synapse 0.33.3 causing requests to sometimes log strings such as `HTTPStatus.OK` instead of integer status codes. ([\#11827](https://github.com/matrix-org/synapse/issues/11827))


Improved Documentation
----------------------

- Update pypi installation docs to indicate that we now support Python 3.10. ([\#11820](https://github.com/matrix-org/synapse/issues/11820))
- Add missing steps to the contribution submission process in the documentation. Contributed by @sequentialread. ([\#11821](https://github.com/matrix-org/synapse/issues/11821))
- Remove not needed old table of contents in documentation. ([\#11860](https://github.com/matrix-org/synapse/issues/11860))
- Consolidate the `access_token` information at the top of each relevant page in the Admin API documentation. ([\#11861](https://github.com/matrix-org/synapse/issues/11861))


Deprecations and Removals
-------------------------

- Drop support for Python 3.6, which is EOL. ([\#11683](https://github.com/matrix-org/synapse/issues/11683))
- Remove the `experimental_msc1849_support_enabled` flag as the features are now stable. ([\#11843](https://github.com/matrix-org/synapse/issues/11843))


Internal Changes
----------------

- Preparation for database schema simplifications: add `state_key` and `rejection_reason` columns to `events` table. ([\#11792](https://github.com/matrix-org/synapse/issues/11792))
- Add `FrozenEvent.get_state_key` and use it in a couple of places. ([\#11793](https://github.com/matrix-org/synapse/issues/11793))
- Preparation for database schema simplifications: stop reading from `event_reference_hashes`. ([\#11794](https://github.com/matrix-org/synapse/issues/11794))
- Drop unused table `public_room_list_stream`. ([\#11795](https://github.com/matrix-org/synapse/issues/11795))
- Preparation for reducing Postgres serialization errors: allow setting transaction isolation level. Contributed by Nick @ Beeper. ([\#11799](https://github.com/matrix-org/synapse/issues/11799), [\#11847](https://github.com/matrix-org/synapse/issues/11847))
- Docker: skip the initial amd64-only build and go straight to multiarch. ([\#11810](https://github.com/matrix-org/synapse/issues/11810))
- Run Complement on the Github Actions VM and not inside a Docker container. ([\#11811](https://github.com/matrix-org/synapse/issues/11811))
- Log module names at startup. ([\#11813](https://github.com/matrix-org/synapse/issues/11813))
- Improve type safety of bundled aggregations code. ([\#11815](https://github.com/matrix-org/synapse/issues/11815))
- Correct a type annotation in the event validation logic. ([\#11817](https://github.com/matrix-org/synapse/issues/11817), [\#11830](https://github.com/matrix-org/synapse/issues/11830))
- Minor updates and documentation for database schema delta files. ([\#11823](https://github.com/matrix-org/synapse/issues/11823))
- Workaround a type annotation problem in `prometheus_client` 0.13.0. ([\#11834](https://github.com/matrix-org/synapse/issues/11834))
- Minor performance improvement in room state lookup. ([\#11836](https://github.com/matrix-org/synapse/issues/11836))
- Fix some indentation inconsistencies in the sample config. ([\#11838](https://github.com/matrix-org/synapse/issues/11838))
- Add type hints to `tests/rest/admin`. ([\#11851](https://github.com/matrix-org/synapse/issues/11851))


Synapse 1.51.0 (2022-01-25)
===========================

Expand Down
1 change: 1 addition & 0 deletions changelog.d/11215.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Add experimental support for sending to-device messages to application services, as specified by [MSC2409](https://github.com/matrix-org/matrix-doc/pull/2409). Disabled by default.
1 change: 0 additions & 1 deletion changelog.d/11612.bugfix

This file was deleted.

1 change: 1 addition & 0 deletions changelog.d/11615.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Expose the registered device ID from the `register_appservice_user` test helper.
1 change: 0 additions & 1 deletion changelog.d/11621.feature

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11639.feature

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11658.feature

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11683.removal

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11743.feature

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11767.bugfix

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11784.bugfix

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11788.feature

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11789.feature

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11792.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11793.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11794.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11795.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11799.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11810.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11811.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11813.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11816.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11817.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11821.doc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11823.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11830.misc

This file was deleted.

1 change: 0 additions & 1 deletion changelog.d/11834.misc

This file was deleted.

1 change: 1 addition & 0 deletions changelog.d/11868.feature
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Allow modules to retrieve the current instance's server name and worker name.
1 change: 1 addition & 0 deletions changelog.d/11880.misc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Convert `ApplicationServiceTestCase` to use `simple_async_mock`.
6 changes: 6 additions & 0 deletions debian/changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
matrix-synapse-py3 (1.52.0~rc1) stable; urgency=medium

* New synapse release 1.52.0~rc1.

-- Synapse Packaging team <packages@matrix.org> Tue, 01 Feb 2022 11:04:09 +0000

matrix-synapse-py3 (1.51.0) stable; urgency=medium

* New synapse release 1.51.0.
Expand Down
21 changes: 0 additions & 21 deletions docs/MSC1711_certificates_FAQ.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,27 +44,6 @@ For more details and context on the release of the r0.1 Server/Server API and
imminent Matrix 1.0 release, you can also see our
[main talk from FOSDEM 2019](https://matrix.org/blog/2019/02/04/matrix-at-fosdem-2019/).

## Contents
* Timeline
* Configuring certificates for compatibility with Synapse 1.0
* FAQ
* Synapse 0.99.0 has just been released, what do I need to do right now?
* How do I upgrade?
* What will happen if I do not set up a valid federation certificate
immediately?
* What will happen if I do nothing at all?
* When do I need a SRV record or .well-known URI?
* Can I still use an SRV record?
* I have created a .well-known URI. Do I still need an SRV record?
* It used to work just fine, why are you breaking everything?
* Can I manage my own certificates rather than having Synapse renew
certificates itself?
* Do you still recommend against using a reverse proxy on the federation port?
* Do I still need to give my TLS certificates to Synapse if I am using a
reverse proxy?
* Do I need the same certificate for the client and federation port?
* How do I tell Synapse to reload my keys/certificates after I replace them?

## Timeline

**5th Feb 2019 - Synapse 0.99.0 is released.**
Expand Down
3 changes: 3 additions & 0 deletions docs/admin_api/account_validity.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ This API allows a server administrator to manage the validity of an account. To
use it, you must enable the account validity feature (under
`account_validity`) in Synapse's configuration.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

## Renew account

This API extends the validity of an account by as much time as configured in the
Expand Down
6 changes: 3 additions & 3 deletions docs/admin_api/delete_group.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,11 @@ This API lets a server admin delete a local group. Doing so will kick all
users out of the group so that their clients will correctly handle the group
being deleted.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

The API is:

```
POST /_synapse/admin/v1/delete_group/<group_id>
```

To use it, you will need to authenticate by providing an `access_token` for a
server admin: see [Admin API](../usage/administration/admin_api).
7 changes: 3 additions & 4 deletions docs/admin_api/event_reports.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@

This API returns information about reported events.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

The api is:
```
GET /_synapse/admin/v1/event_reports?from=0&limit=10
```
To use it, you will need to authenticate by providing an `access_token` for a
server admin: see [Admin API](../usage/administration/admin_api).

It returns a JSON body like the following:

Expand Down Expand Up @@ -94,8 +95,6 @@ The api is:
```
GET /_synapse/admin/v1/event_reports/<report_id>
```
To use it, you will need to authenticate by providing an `access_token` for a
server admin: see [Admin API](../usage/administration/admin_api).

It returns a JSON body like the following:

Expand Down
25 changes: 3 additions & 22 deletions docs/admin_api/media_admin_api.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,10 @@
# Contents
- [Querying media](#querying-media)
* [List all media in a room](#list-all-media-in-a-room)
* [List all media uploaded by a user](#list-all-media-uploaded-by-a-user)
- [Quarantine media](#quarantine-media)
* [Quarantining media by ID](#quarantining-media-by-id)
* [Remove media from quarantine by ID](#remove-media-from-quarantine-by-id)
* [Quarantining media in a room](#quarantining-media-in-a-room)
* [Quarantining all media of a user](#quarantining-all-media-of-a-user)
* [Protecting media from being quarantined](#protecting-media-from-being-quarantined)
* [Unprotecting media from being quarantined](#unprotecting-media-from-being-quarantined)
- [Delete local media](#delete-local-media)
* [Delete a specific local media](#delete-a-specific-local-media)
* [Delete local media by date or size](#delete-local-media-by-date-or-size)
* [Delete media uploaded by a user](#delete-media-uploaded-by-a-user)
- [Purge Remote Media API](#purge-remote-media-api)

# Querying media

These APIs allow extracting media information from the homeserver.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

## List all media in a room

This API gets a list of known media in a room.
Expand All @@ -28,8 +14,6 @@ The API is:
```
GET /_synapse/admin/v1/room/<room_id>/media
```
To use it, you will need to authenticate by providing an `access_token` for a
server admin: see [Admin API](../usage/administration/admin_api).

The API returns a JSON body like the following:
```json
Expand Down Expand Up @@ -317,8 +301,5 @@ The following fields are returned in the JSON response body:

* `deleted`: integer - The number of media items successfully deleted

To use it, you will need to authenticate by providing an `access_token` for a
server admin: see [Admin API](../usage/administration/admin_api).

If the user re-requests purged remote media, synapse will re-request the media
from the originating server.
9 changes: 3 additions & 6 deletions docs/admin_api/purge_history_api.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,15 @@ paginate further back in the room from the point being purged from.
Note that Synapse requires at least one message in each room, so it will never
delete the last message in a room.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

The API is:

```
POST /_synapse/admin/v1/purge_history/<room_id>[/<event_id>]
```

To use it, you will need to authenticate by providing an `access_token` for a
server admin: [Admin API](../usage/administration/admin_api)

By default, events sent by local users are not deleted, as they may represent
the only copies of this content in existence. (Events sent by remote users are
deleted.)
Expand Down Expand Up @@ -57,9 +57,6 @@ It is possible to poll for updates on recent purges with a second API;
GET /_synapse/admin/v1/purge_history_status/<purge_id>
```

Again, you will need to authenticate by providing an `access_token` for a
server admin.

This API returns a JSON body like the following:

```json
Expand Down
6 changes: 3 additions & 3 deletions docs/admin_api/room_membership.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,9 @@ to a room with a given `room_id_or_alias`. You can only modify the membership of
local users. The server administrator must be in the room and have permission to
invite users.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

## Parameters

The following parameters are available:
Expand All @@ -23,9 +26,6 @@ POST /_synapse/admin/v1/join/<room_id_or_alias>
}
```

To use it, you will need to authenticate by providing an `access_token` for a
server admin: see [Admin API](../usage/administration/admin_api).

Response:

```json
Expand Down
21 changes: 3 additions & 18 deletions docs/admin_api/rooms.md
Original file line number Diff line number Diff line change
@@ -1,24 +1,12 @@
# Contents
- [List Room API](#list-room-api)
- [Room Details API](#room-details-api)
- [Room Members API](#room-members-api)
- [Room State API](#room-state-api)
- [Block Room API](#block-room-api)
- [Delete Room API](#delete-room-api)
* [Version 1 (old version)](#version-1-old-version)
* [Version 2 (new version)](#version-2-new-version)
* [Status of deleting rooms](#status-of-deleting-rooms)
* [Undoing room shutdowns](#undoing-room-shutdowns)
- [Make Room Admin API](#make-room-admin-api)
- [Forward Extremities Admin API](#forward-extremities-admin-api)
- [Event Context API](#event-context-api)

# List Room API

The List Room admin API allows server admins to get a list of rooms on their
server. There are various parameters available that allow for filtering and
sorting the returned list. This API supports pagination.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

**Parameters**

The following query parameters are available:
Expand Down Expand Up @@ -493,9 +481,6 @@ several minutes or longer.
The local server will only have the power to move local user and room aliases to
the new room. Users on other servers will be unaffected.

To use it, you will need to authenticate by providing an ``access_token`` for a
server admin: see [Admin API](../usage/administration/admin_api).

## Version 1 (old version)

This version works synchronously. That means you only get the response once the server has
Expand Down
6 changes: 3 additions & 3 deletions docs/admin_api/statistics.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,15 +3,15 @@
Returns information about all local media usage of users. Gives the
possibility to filter them by time and user.

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

The API is:

```
GET /_synapse/admin/v1/statistics/users/media
```

To use it, you will need to authenticate by providing an `access_token`
for a server admin: see [Admin API](../usage/administration/admin_api).

A response body like the following is returned:

```json
Expand Down
Loading

0 comments on commit b2c97df

Please sign in to comment.