Merge remote-tracking branch 'origin/develop' into matrix-org-hotfixes
commit
dbf46f3891
169
CHANGES.md
169
CHANGES.md
|
@ -1,3 +1,102 @@
|
|||
Synapse 1.23.0 (2020-11-18)
|
||||
===========================
|
||||
|
||||
This release changes the way structured logging is configured. See the [upgrade notes](UPGRADE.rst#upgrading-to-v1230) for details.
|
||||
|
||||
**Note**: We are aware of a trivially exploitable denial of service vulnerability in versions of Synapse prior to 1.20.0. Complete details will be disclosed on Monday, November 23rd. If you have not upgraded recently, please do so.
|
||||
|
||||
Bugfixes
|
||||
--------
|
||||
|
||||
- Fix a dependency versioning bug in the Dockerfile that prevented Synapse from starting. ([\#8767](https://github.com/matrix-org/synapse/issues/8767))
|
||||
|
||||
|
||||
Synapse 1.23.0rc1 (2020-11-13)
|
||||
==============================
|
||||
|
||||
Features
|
||||
--------
|
||||
|
||||
- Add a push rule that highlights when a jitsi conference is created in a room. ([\#8286](https://github.com/matrix-org/synapse/issues/8286))
|
||||
- Add an admin api to delete a single file or files that were not used for a defined time from server. Contributed by @dklimpel. ([\#8519](https://github.com/matrix-org/synapse/issues/8519))
|
||||
- Split admin API for reported events (`GET /_synapse/admin/v1/event_reports`) into detail and list endpoints. This is a breaking change to #8217 which was introduced in Synapse v1.21.0. Those who already use this API should check their scripts. Contributed by @dklimpel. ([\#8539](https://github.com/matrix-org/synapse/issues/8539))
|
||||
- Support generating structured logs via the standard logging configuration. ([\#8607](https://github.com/matrix-org/synapse/issues/8607), [\#8685](https://github.com/matrix-org/synapse/issues/8685))
|
||||
- Add an admin API to allow server admins to list users' pushers. Contributed by @dklimpel. ([\#8610](https://github.com/matrix-org/synapse/issues/8610), [\#8689](https://github.com/matrix-org/synapse/issues/8689))
|
||||
- Add an admin API `GET /_synapse/admin/v1/users/<user_id>/media` to get information about uploaded media. Contributed by @dklimpel. ([\#8647](https://github.com/matrix-org/synapse/issues/8647))
|
||||
- Add an admin API for local user media statistics. Contributed by @dklimpel. ([\#8700](https://github.com/matrix-org/synapse/issues/8700))
|
||||
- Add `displayname` to Shared-Secret Registration for admins. ([\#8722](https://github.com/matrix-org/synapse/issues/8722))
|
||||
|
||||
|
||||
Bugfixes
|
||||
--------
|
||||
|
||||
- Fix fetching of E2E cross signing keys over federation when only one of the master key and device signing key is cached already. ([\#8455](https://github.com/matrix-org/synapse/issues/8455))
|
||||
- Fix a bug where Synapse would blindly forward bad responses from federation to clients when retrieving profile information. ([\#8580](https://github.com/matrix-org/synapse/issues/8580))
|
||||
- Fix a bug where the account validity endpoint would silently fail if the user ID did not have an expiration time. It now returns a 400 error. ([\#8620](https://github.com/matrix-org/synapse/issues/8620))
|
||||
- Fix email notifications for invites without local state. ([\#8627](https://github.com/matrix-org/synapse/issues/8627))
|
||||
- Fix handling of invalid group IDs to return a 400 rather than log an exception and return a 500. ([\#8628](https://github.com/matrix-org/synapse/issues/8628))
|
||||
- Fix handling of User-Agent headers that are invalid UTF-8, which caused user agents of users to not get correctly recorded. ([\#8632](https://github.com/matrix-org/synapse/issues/8632))
|
||||
- Fix a bug in the `joined_rooms` admin API if the user has never joined any rooms. The bug was introduced, along with the API, in v1.21.0. ([\#8643](https://github.com/matrix-org/synapse/issues/8643))
|
||||
- Fix exception during handling multiple concurrent requests for remote media when using multiple media repositories. ([\#8682](https://github.com/matrix-org/synapse/issues/8682))
|
||||
- Fix bug that prevented Synapse from recovering after losing connection to the database. ([\#8726](https://github.com/matrix-org/synapse/issues/8726))
|
||||
- Fix bug where the `/_synapse/admin/v1/send_server_notice` API could send notices to non-notice rooms. ([\#8728](https://github.com/matrix-org/synapse/issues/8728))
|
||||
- Fix PostgreSQL port script fails when DB has no backfilled events. Broke in v1.21.0. ([\#8729](https://github.com/matrix-org/synapse/issues/8729))
|
||||
- Fix PostgreSQL port script to correctly handle foreign key constraints. Broke in v1.21.0. ([\#8730](https://github.com/matrix-org/synapse/issues/8730))
|
||||
- Fix PostgreSQL port script so that it can be run again after a failure. Broke in v1.21.0. ([\#8755](https://github.com/matrix-org/synapse/issues/8755))
|
||||
|
||||
|
||||
Improved Documentation
|
||||
----------------------
|
||||
|
||||
- Instructions for Azure AD in the OpenID Connect documentation. Contributed by peterk. ([\#8582](https://github.com/matrix-org/synapse/issues/8582))
|
||||
- Improve the sample configuration for single sign-on providers. ([\#8635](https://github.com/matrix-org/synapse/issues/8635))
|
||||
- Fix the filepath of Dex's example config and the link to Dex's Getting Started guide in the OpenID Connect docs. ([\#8657](https://github.com/matrix-org/synapse/issues/8657))
|
||||
- Note support for Python 3.9. ([\#8665](https://github.com/matrix-org/synapse/issues/8665))
|
||||
- Minor updates to docs on running tests. ([\#8666](https://github.com/matrix-org/synapse/issues/8666))
|
||||
- Interlink prometheus/grafana documentation. ([\#8667](https://github.com/matrix-org/synapse/issues/8667))
|
||||
- Notes on SSO logins and media_repository worker. ([\#8701](https://github.com/matrix-org/synapse/issues/8701))
|
||||
- Document experimental support for running multiple event persisters. ([\#8706](https://github.com/matrix-org/synapse/issues/8706))
|
||||
- Add information regarding the various sources of, and expected contributions to, Synapse's documentation to `CONTRIBUTING.md`. ([\#8714](https://github.com/matrix-org/synapse/issues/8714))
|
||||
- Migrate documentation `docs/admin_api/event_reports` to markdown. ([\#8742](https://github.com/matrix-org/synapse/issues/8742))
|
||||
- Add some helpful hints to the README for new Synapse developers. Contributed by @chagai95. ([\#8746](https://github.com/matrix-org/synapse/issues/8746))
|
||||
|
||||
|
||||
Internal Changes
|
||||
----------------
|
||||
|
||||
- Optimise `/createRoom` with multiple invited users. ([\#8559](https://github.com/matrix-org/synapse/issues/8559))
|
||||
- Implement and use an `@lru_cache` decorator. ([\#8595](https://github.com/matrix-org/synapse/issues/8595))
|
||||
- Don't instansiate Requester directly. ([\#8614](https://github.com/matrix-org/synapse/issues/8614))
|
||||
- Type hints for `RegistrationStore`. ([\#8615](https://github.com/matrix-org/synapse/issues/8615))
|
||||
- Change schema to support access tokens belonging to one user but granting access to another. ([\#8616](https://github.com/matrix-org/synapse/issues/8616))
|
||||
- Remove unused OPTIONS handlers. ([\#8621](https://github.com/matrix-org/synapse/issues/8621))
|
||||
- Run `mypy` as part of the lint.sh script. ([\#8633](https://github.com/matrix-org/synapse/issues/8633))
|
||||
- Correct Synapse's PyPI package name in the OpenID Connect installation instructions. ([\#8634](https://github.com/matrix-org/synapse/issues/8634))
|
||||
- Catch exceptions during initialization of `password_providers`. Contributed by Nicolai Søborg. ([\#8636](https://github.com/matrix-org/synapse/issues/8636))
|
||||
- Fix typos and spelling errors in the code. ([\#8639](https://github.com/matrix-org/synapse/issues/8639))
|
||||
- Reduce number of OpenTracing spans started. ([\#8640](https://github.com/matrix-org/synapse/issues/8640), [\#8668](https://github.com/matrix-org/synapse/issues/8668), [\#8670](https://github.com/matrix-org/synapse/issues/8670))
|
||||
- Add field `total` to device list in admin API. ([\#8644](https://github.com/matrix-org/synapse/issues/8644))
|
||||
- Add more type hints to the application services code. ([\#8655](https://github.com/matrix-org/synapse/issues/8655), [\#8693](https://github.com/matrix-org/synapse/issues/8693))
|
||||
- Tell Black to format code for Python 3.5. ([\#8664](https://github.com/matrix-org/synapse/issues/8664))
|
||||
- Don't pull event from DB when handling replication traffic. ([\#8669](https://github.com/matrix-org/synapse/issues/8669))
|
||||
- Abstract some invite-related code in preparation for landing knocking. ([\#8671](https://github.com/matrix-org/synapse/issues/8671), [\#8688](https://github.com/matrix-org/synapse/issues/8688))
|
||||
- Clarify representation of events in logfiles. ([\#8679](https://github.com/matrix-org/synapse/issues/8679))
|
||||
- Don't require `hiredis` package to be installed to run unit tests. ([\#8680](https://github.com/matrix-org/synapse/issues/8680))
|
||||
- Fix typing info on cache call signature to accept `on_invalidate`. ([\#8684](https://github.com/matrix-org/synapse/issues/8684))
|
||||
- Fail tests if they do not await coroutines. ([\#8690](https://github.com/matrix-org/synapse/issues/8690))
|
||||
- Improve start time by adding an index to `e2e_cross_signing_keys.stream_id`. ([\#8694](https://github.com/matrix-org/synapse/issues/8694))
|
||||
- Re-organize the structured logging code to separate the TCP transport handling from the JSON formatting. ([\#8697](https://github.com/matrix-org/synapse/issues/8697))
|
||||
- Use Python 3.8 in Docker images by default. ([\#8698](https://github.com/matrix-org/synapse/issues/8698))
|
||||
- Remove the "draft" status of the Room Details Admin API. ([\#8702](https://github.com/matrix-org/synapse/issues/8702))
|
||||
- Improve the error returned when a non-string displayname or avatar_url is used when updating a user's profile. ([\#8705](https://github.com/matrix-org/synapse/issues/8705))
|
||||
- Block attempts by clients to send server ACLs, or redactions of server ACLs, that would result in the local server being blocked from the room. ([\#8708](https://github.com/matrix-org/synapse/issues/8708))
|
||||
- Add metrics the allow the local sysadmin to track 3PID `/requestToken` requests. ([\#8712](https://github.com/matrix-org/synapse/issues/8712))
|
||||
- Consolidate duplicated lists of purged tables that are checked in tests. ([\#8713](https://github.com/matrix-org/synapse/issues/8713))
|
||||
- Add some `mdui:UIInfo` element examples for `saml2_config` in the homeserver config. ([\#8718](https://github.com/matrix-org/synapse/issues/8718))
|
||||
- Improve the error message returned when a remote server incorrectly sets the `Content-Type` header in response to a JSON request. ([\#8719](https://github.com/matrix-org/synapse/issues/8719))
|
||||
- Speed up repeated state resolutions on the same room by caching event ID to auth event ID lookups. ([\#8752](https://github.com/matrix-org/synapse/issues/8752))
|
||||
|
||||
|
||||
Synapse 1.22.1 (2020-10-30)
|
||||
===========================
|
||||
|
||||
|
@ -6223,8 +6322,8 @@ Changes in synapse 0.5.1 (2014-11-26)
|
|||
|
||||
See UPGRADES.rst for specific instructions on how to upgrade.
|
||||
|
||||
> - Fix bug where we served up an Event that did not match its signatures.
|
||||
> - Fix regression where we no longer correctly handled the case where a homeserver receives an event for a room it doesn\'t recognise (but is in.)
|
||||
- Fix bug where we served up an Event that did not match its signatures.
|
||||
- Fix regression where we no longer correctly handled the case where a homeserver receives an event for a room it doesn\'t recognise (but is in.)
|
||||
|
||||
Changes in synapse 0.5.0 (2014-11-19)
|
||||
=====================================
|
||||
|
@ -6235,7 +6334,7 @@ This release also changes the internal database schemas and so requires servers
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Add authentication and authorization to the federation protocol. Events are now signed by their originating homeservers.
|
||||
- Add authentication and authorization to the federation protocol. Events are now signed by their originating homeservers.
|
||||
- Implement the new authorization model for rooms.
|
||||
- Split out web client into a seperate repository: matrix-angular-sdk.
|
||||
- Change the structure of PDUs.
|
||||
|
@ -6247,19 +6346,19 @@ Homeserver:
|
|||
|
||||
Webclient:
|
||||
|
||||
: - The webclient has been moved to a seperate repository.
|
||||
- The webclient has been moved to a seperate repository.
|
||||
|
||||
Changes in synapse 0.4.2 (2014-10-31)
|
||||
=====================================
|
||||
|
||||
Homeserver:
|
||||
|
||||
: - Fix bugs where we did not notify users of correct presence updates.
|
||||
- Fix bugs where we did not notify users of correct presence updates.
|
||||
- Fix bug where we did not handle sub second event stream timeouts.
|
||||
|
||||
Webclient:
|
||||
|
||||
: - Add ability to click on messages to see JSON.
|
||||
- Add ability to click on messages to see JSON.
|
||||
- Add ability to redact messages.
|
||||
- Add ability to view and edit all room state JSON.
|
||||
- Handle incoming redactions.
|
||||
|
@ -6272,7 +6371,7 @@ Changes in synapse 0.4.1 (2014-10-17)
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Fix bug with display of timestamps.
|
||||
- Fix bug with display of timestamps.
|
||||
|
||||
Changes in synpase 0.4.0 (2014-10-17)
|
||||
=====================================
|
||||
|
@ -6285,7 +6384,7 @@ You will also need an updated syutil and config. See UPGRADES.rst.
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Sign federation transactions to assert strong identity over federation.
|
||||
- Sign federation transactions to assert strong identity over federation.
|
||||
- Rename timestamp keys in PDUs and events from \'ts\' and \'hsob\_ts\' to \'origin\_server\_ts\'.
|
||||
|
||||
Changes in synapse 0.3.4 (2014-09-25)
|
||||
|
@ -6295,14 +6394,14 @@ This version adds support for using a TURN server. See docs/turn-howto.rst on ho
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Add support for redaction of messages.
|
||||
- Add support for redaction of messages.
|
||||
- Fix bug where inviting a user on a remote home server could take up to 20-30s.
|
||||
- Implement a get current room state API.
|
||||
- Add support specifying and retrieving turn server configuration.
|
||||
|
||||
Webclient:
|
||||
|
||||
: - Add button to send messages to users from the home page.
|
||||
- Add button to send messages to users from the home page.
|
||||
- Add support for using TURN for VoIP calls.
|
||||
- Show display name change messages.
|
||||
- Fix bug where the client didn\'t get the state of a newly joined room until after it has been refreshed.
|
||||
|
@ -6317,11 +6416,11 @@ Changes in synapse 0.3.3 (2014-09-22)
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Fix bug where you continued to get events for rooms you had left.
|
||||
- Fix bug where you continued to get events for rooms you had left.
|
||||
|
||||
Webclient:
|
||||
|
||||
: - Add support for video calls with basic UI.
|
||||
- Add support for video calls with basic UI.
|
||||
- Fix bug where one to one chats were named after your display name rather than the other person\'s.
|
||||
- Fix bug which caused lag when typing in the textarea.
|
||||
- Refuse to run on browsers we know won\'t work.
|
||||
|
@ -6336,7 +6435,7 @@ Changes in synapse 0.3.2 (2014-09-18)
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Fix bug where an empty \"bing words\" list in old accounts didn\'t send notifications when it should have done.
|
||||
- Fix bug where an empty \"bing words\" list in old accounts didn\'t send notifications when it should have done.
|
||||
|
||||
Changes in synapse 0.3.1 (2014-09-18)
|
||||
=====================================
|
||||
|
@ -6345,7 +6444,7 @@ This is a release to hotfix v0.3.0 to fix two regressions.
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Fix a regression where we sometimes displayed duplicate events.
|
||||
- Fix a regression where we sometimes displayed duplicate events.
|
||||
- Fix a regression where we didn\'t immediately remove rooms you were banned in from the recents list.
|
||||
|
||||
Changes in synapse 0.3.0 (2014-09-18)
|
||||
|
@ -6355,7 +6454,7 @@ See UPGRADE for information about changes to the client server API, including br
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - When a user changes their displayname or avatar the server will now update all their join states to reflect this.
|
||||
- When a user changes their displayname or avatar the server will now update all their join states to reflect this.
|
||||
- The server now adds \"age\" key to events to indicate how old they are. This is clock independent, so at no point does any server or webclient have to assume their clock is in sync with everyone else.
|
||||
- Fix bug where we didn\'t correctly pull in missing PDUs.
|
||||
- Fix bug where prev\_content key wasn\'t always returned.
|
||||
|
@ -6363,7 +6462,7 @@ Homeserver:
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Improve page content loading.
|
||||
- Improve page content loading.
|
||||
- Join/parts now trigger desktop notifications.
|
||||
- Always show room aliases in the UI if one is present.
|
||||
- No longer show user-count in the recents side panel.
|
||||
|
@ -6376,7 +6475,7 @@ Webclient:
|
|||
|
||||
Registration API:
|
||||
|
||||
: - The registration API has been overhauled to function like the login API. In practice, this means registration requests must now include the following: \'type\':\'m.login.password\'. See UPGRADE for more information on this.
|
||||
- The registration API has been overhauled to function like the login API. In practice, this means registration requests must now include the following: \'type\':\'m.login.password\'. See UPGRADE for more information on this.
|
||||
- The \'user\_id\' key has been renamed to \'user\' to better match the login API.
|
||||
- There is an additional login type: \'m.login.email.identity\'.
|
||||
- The command client and web client have been updated to reflect these changes.
|
||||
|
@ -6386,12 +6485,12 @@ Changes in synapse 0.2.3 (2014-09-12)
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Fix bug where we stopped sending events to remote home servers if a user from that home server left, even if there were some still in the room.
|
||||
- Fix bug where we stopped sending events to remote home servers if a user from that home server left, even if there were some still in the room.
|
||||
- Fix bugs in the state conflict resolution where it was incorrectly rejecting events.
|
||||
|
||||
Webclient:
|
||||
|
||||
: - Display room names and topics.
|
||||
- Display room names and topics.
|
||||
- Allow setting/editing of room names and topics.
|
||||
- Display information about rooms on the main page.
|
||||
- Handle ban and kick events in real time.
|
||||
|
@ -6408,14 +6507,14 @@ Changes in synapse 0.2.2 (2014-09-06)
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - When the server returns state events it now also includes the previous content.
|
||||
- When the server returns state events it now also includes the previous content.
|
||||
- Add support for inviting people when creating a new room.
|
||||
- Make the homeserver inform the room via m.room.aliases when a new alias is added for a room.
|
||||
- Validate m.room.power\_level events.
|
||||
|
||||
Webclient:
|
||||
|
||||
: - Add support for captchas on registration.
|
||||
- Add support for captchas on registration.
|
||||
- Handle m.room.aliases events.
|
||||
- Asynchronously send messages and show a local echo.
|
||||
- Inform the UI when a message failed to send.
|
||||
|
@ -6427,7 +6526,7 @@ Changes in synapse 0.2.1 (2014-09-03)
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Added support for signing up with a third party id.
|
||||
- Added support for signing up with a third party id.
|
||||
- Add synctl scripts.
|
||||
- Added rate limiting.
|
||||
- Add option to change the external address the content repo uses.
|
||||
|
@ -6435,7 +6534,7 @@ Homeserver:
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Added support for signing up with a third party id.
|
||||
- Added support for signing up with a third party id.
|
||||
- Added support for banning and kicking users.
|
||||
- Added support for displaying and setting ops.
|
||||
- Added support for room names.
|
||||
|
@ -6448,7 +6547,7 @@ This update changes many configuration options, updates the database schema and
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Require SSL for server-server connections.
|
||||
- Require SSL for server-server connections.
|
||||
- Add SSL listener for client-server connections.
|
||||
- Add ability to use config files.
|
||||
- Add support for kicking/banning and power levels.
|
||||
|
@ -6459,7 +6558,7 @@ Homeserver:
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Reskin the CSS for registration and login.
|
||||
- Reskin the CSS for registration and login.
|
||||
- Various improvements to rooms CSS.
|
||||
- Support changes in client-server API.
|
||||
- Bug fixes to VOIP UI.
|
||||
|
@ -6470,14 +6569,14 @@ Changes in synapse 0.1.2 (2014-08-29)
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Add basic call state UI for VoIP calls.
|
||||
- Add basic call state UI for VoIP calls.
|
||||
|
||||
Changes in synapse 0.1.1 (2014-08-29)
|
||||
=====================================
|
||||
|
||||
Homeserver:
|
||||
|
||||
: - Fix bug that caused the event stream to not notify some clients about changes.
|
||||
- Fix bug that caused the event stream to not notify some clients about changes.
|
||||
|
||||
Changes in synapse 0.1.0 (2014-08-29)
|
||||
=====================================
|
||||
|
@ -6486,20 +6585,16 @@ Presence has been reenabled in this release.
|
|||
|
||||
Homeserver:
|
||||
|
||||
: -
|
||||
|
||||
Update client to server API, including:
|
||||
|
||||
: - Use a more consistent url scheme.
|
||||
- Update client to server API, including:
|
||||
- Use a more consistent url scheme.
|
||||
- Provide more useful information in the initial sync api.
|
||||
|
||||
- Change the presence handling to be much more efficient.
|
||||
- Change the presence server to server API to not require explicit polling of all users who share a room with a user.
|
||||
- Fix races in the event streaming logic.
|
||||
|
||||
Webclient:
|
||||
|
||||
: - Update to use new client to server API.
|
||||
- Update to use new client to server API.
|
||||
- Add basic VOIP support.
|
||||
- Add idle timers that change your status to away.
|
||||
- Add recent rooms column when viewing a room.
|
||||
|
@ -6514,7 +6609,7 @@ Presence has been disabled in this release due to a bug that caused the homeserv
|
|||
|
||||
Homeserver:
|
||||
|
||||
: - Completely change the database schema to support generic event types.
|
||||
- Completely change the database schema to support generic event types.
|
||||
- Improve presence reliability.
|
||||
- Improve reliability of joining remote rooms.
|
||||
- Fix bug where room join events were duplicated.
|
||||
|
@ -6523,7 +6618,7 @@ Homeserver:
|
|||
|
||||
Webclient:
|
||||
|
||||
: - Add tab completion of names.
|
||||
- Add tab completion of names.
|
||||
- Add ability to upload and send images.
|
||||
- Add profile pages.
|
||||
- Improve CSS layout of room.
|
||||
|
@ -6536,4 +6631,4 @@ Webclient:
|
|||
Changes in synapse 0.0.0 (2014-08-13)
|
||||
=====================================
|
||||
|
||||
> - Initial alpha release
|
||||
- Initial alpha release
|
||||
|
|
|
@ -487,7 +487,7 @@ In nginx this would be something like:
|
|||
```
|
||||
location /.well-known/matrix/client {
|
||||
return 200 '{"m.homeserver": {"base_url": "https://<matrix.example.com>"}}';
|
||||
add_header Content-Type application/json;
|
||||
default_type application/json;
|
||||
add_header Access-Control-Allow-Origin *;
|
||||
}
|
||||
```
|
||||
|
|
16
README.rst
16
README.rst
|
@ -261,18 +261,22 @@ to install using pip and a virtualenv::
|
|||
pip install -e ".[all,test]"
|
||||
|
||||
This will run a process of downloading and installing all the needed
|
||||
dependencies into a virtual env.
|
||||
dependencies into a virtual env. If any dependencies fail to install,
|
||||
try installing the failing modules individually::
|
||||
|
||||
Once this is done, you may wish to run Synapse's unit tests, to
|
||||
check that everything is installed as it should be::
|
||||
pip install -e "module-name"
|
||||
|
||||
Once this is done, you may wish to run Synapse's unit tests to
|
||||
check that everything is installed correctly::
|
||||
|
||||
python -m twisted.trial tests
|
||||
|
||||
This should end with a 'PASSED' result::
|
||||
This should end with a 'PASSED' result (note that exact numbers will
|
||||
differ)::
|
||||
|
||||
Ran 1266 tests in 643.930s
|
||||
Ran 1337 tests in 716.064s
|
||||
|
||||
PASSED (skips=15, successes=1251)
|
||||
PASSED (skips=15, successes=1322)
|
||||
|
||||
Running the Integration Tests
|
||||
=============================
|
||||
|
|
54
UPGRADE.rst
54
UPGRADE.rst
|
@ -75,6 +75,58 @@ for example:
|
|||
wget https://packages.matrix.org/debian/pool/main/m/matrix-synapse-py3/matrix-synapse-py3_1.3.0+stretch1_amd64.deb
|
||||
dpkg -i matrix-synapse-py3_1.3.0+stretch1_amd64.deb
|
||||
|
||||
Upgrading to v1.24.0
|
||||
====================
|
||||
|
||||
Custom OpenID Connect mapping provider breaking change
|
||||
------------------------------------------------------
|
||||
|
||||
This release allows the OpenID Connect mapping provider to perform normalisation
|
||||
of the localpart of the Matrix ID. This allows for the mapping provider to
|
||||
specify different algorithms, instead of the [default way](https://matrix.org/docs/spec/appendices#mapping-from-other-character-sets).
|
||||
|
||||
If your Synapse configuration uses a custom mapping provider
|
||||
(`oidc_config.user_mapping_provider.module` is specified and not equal to
|
||||
`synapse.handlers.oidc_handler.JinjaOidcMappingProvider`) then you *must* ensure
|
||||
that `map_user_attributes` of the mapping provider performs some normalisation
|
||||
of the `localpart` returned. To match previous behaviour you can use the
|
||||
`map_username_to_mxid_localpart` function provided by Synapse. An example is
|
||||
shown below:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
from synapse.types import map_username_to_mxid_localpart
|
||||
|
||||
class MyMappingProvider:
|
||||
def map_user_attributes(self, userinfo, token):
|
||||
# ... your custom logic ...
|
||||
sso_user_id = ...
|
||||
localpart = map_username_to_mxid_localpart(sso_user_id)
|
||||
|
||||
return {"localpart": localpart}
|
||||
|
||||
Removal historical Synapse Admin API
|
||||
------------------------------------
|
||||
|
||||
Historically, the Synapse Admin API has been accessible under:
|
||||
|
||||
* ``/_matrix/client/api/v1/admin``
|
||||
* ``/_matrix/client/unstable/admin``
|
||||
* ``/_matrix/client/r0/admin``
|
||||
* ``/_synapse/admin/v1``
|
||||
|
||||
The endpoints with ``/_matrix/client/*`` prefixes have been removed as of v1.24.0.
|
||||
The Admin API is now only accessible under:
|
||||
|
||||
* ``/_synapse/admin/v1``
|
||||
|
||||
The only exception is the `/admin/whois` endpoint, which is
|
||||
`also available via the client-server API <https://matrix.org/docs/spec/client_server/r0.6.1#get-matrix-client-r0-admin-whois-userid>`_.
|
||||
|
||||
The deprecation of the old endpoints was announced with Synapse 1.20.0 (released
|
||||
on 2020-09-22) and makes it easier for homeserver admins to lock down external
|
||||
access to the Admin API endpoints.
|
||||
|
||||
Upgrading to v1.23.0
|
||||
====================
|
||||
|
||||
|
@ -87,7 +139,7 @@ then it should be modified based on the `structured logging documentation
|
|||
<https://github.com/matrix-org/synapse/blob/master/docs/structured_logging.md>`_.
|
||||
|
||||
The ``structured`` and ``drains`` logging options are now deprecated and should
|
||||
be replaced by standard logging configuration of ``handlers`` and ``formatters`.
|
||||
be replaced by standard logging configuration of ``handlers`` and ``formatters``.
|
||||
|
||||
A future will release of Synapse will make using ``structured: true`` an error.
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
Add a push rule that highlights when a jitsi conference is created in a room.
|
|
@ -1 +0,0 @@
|
|||
Fix fetching of E2E cross signing keys over federation when only one of the master key and device signing key is cached already.
|
|
@ -1 +0,0 @@
|
|||
Add an admin api to delete a single file or files were not used for a defined time from server. Contributed by @dklimpel.
|
|
@ -1 +0,0 @@
|
|||
Split admin API for reported events (`GET /_synapse/admin/v1/event_reports`) into detail and list endpoints. This is a breaking change to #8217 which was introduced in Synapse v1.21.0. Those who already use this API should check their scripts. Contributed by @dklimpel.
|
|
@ -1 +0,0 @@
|
|||
Optimise `/createRoom` with multiple invited users.
|
|
@ -1 +0,0 @@
|
|||
Fix a bug where Synapse would blindly forward bad responses from federation to clients when retrieving profile information.
|
|
@ -1 +0,0 @@
|
|||
Instructions for Azure AD in the OpenID Connect documentation. Contributed by peterk.
|
|
@ -1 +0,0 @@
|
|||
Implement and use an @lru_cache decorator.
|
|
@ -1 +0,0 @@
|
|||
Support generating structured logs via the standard logging configuration.
|
|
@ -1 +0,0 @@
|
|||
Add an admin APIs to allow server admins to list users' pushers. Contributed by @dklimpel.
|
|
@ -1 +0,0 @@
|
|||
Don't instansiate Requester directly.
|
|
@ -1 +0,0 @@
|
|||
Type hints for `RegistrationStore`.
|
|
@ -1 +0,0 @@
|
|||
Change schema to support access tokens belonging to one user but granting access to another.
|
|
@ -0,0 +1 @@
|
|||
Add admin API for logging in as a user.
|
|
@ -1 +0,0 @@
|
|||
Fix a bug where the account validity endpoint would silently fail if the user ID did not have an expiration time. It now returns a 400 error.
|
|
@ -1 +0,0 @@
|
|||
Remove unused OPTIONS handlers.
|
|
@ -1 +0,0 @@
|
|||
Fix email notifications for invites without local state.
|
|
@ -1 +0,0 @@
|
|||
Fix handling of invalid group IDs to return a 400 rather than log an exception and return a 500.
|
|
@ -0,0 +1 @@
|
|||
Allow specification of the SAML IdP if the metadata returns multiple IdPs.
|
|
@ -1 +0,0 @@
|
|||
Fix handling of User-Agent headers that are invalid UTF-8, which caused user agents of users to not get correctly recorded.
|
|
@ -1 +0,0 @@
|
|||
Run `mypy` as part of the lint.sh script.
|
|
@ -1 +0,0 @@
|
|||
Correct Synapse's PyPI package name in the OpenID Connect installation instructions.
|
|
@ -1 +0,0 @@
|
|||
Improve the sample configuration for single sign-on providers.
|
|
@ -1 +0,0 @@
|
|||
Catch exceptions during initialization of `password_providers`. Contributed by Nicolai Søborg.
|
|
@ -1 +0,0 @@
|
|||
Fix typos and spelling errors in the code.
|
|
@ -1 +0,0 @@
|
|||
Reduce number of OpenTracing spans started.
|
|
@ -1 +0,0 @@
|
|||
Fix a bug in the `joined_rooms` admin API if the user has never joined any rooms. The bug was introduced, along with the API, in v1.21.0.
|
|
@ -1 +0,0 @@
|
|||
Add field `total` to device list in admin API.
|
|
@ -1 +0,0 @@
|
|||
Add an admin API `GET /_synapse/admin/v1/users/<user_id>/media` to get information about uploaded media. Contributed by @dklimpel.
|
|
@ -1 +0,0 @@
|
|||
Add more type hints to the application services code.
|
|
@ -1 +0,0 @@
|
|||
Fix the filepath of Dex's example config and the link to Dex's Getting Started guide in the OpenID Connect docs.
|
|
@ -1 +0,0 @@
|
|||
Tell Black to format code for Python 3.5.
|
|
@ -1 +0,0 @@
|
|||
Note support for Python 3.9.
|
|
@ -1 +0,0 @@
|
|||
Minor updates to docs on running tests.
|
|
@ -1 +0,0 @@
|
|||
Interlink prometheus/grafana documentation.
|
|
@ -1 +0,0 @@
|
|||
Reduce number of OpenTracing spans started.
|
|
@ -1 +0,0 @@
|
|||
Don't pull event from DB when handling replication traffic.
|
|
@ -1 +0,0 @@
|
|||
Reduce number of OpenTracing spans started.
|
|
@ -1 +0,0 @@
|
|||
Abstract some invite-related code in preparation for landing knocking.
|
|
@ -1 +0,0 @@
|
|||
Clarify representation of events in logfiles.
|
|
@ -1 +0,0 @@
|
|||
Don't require `hiredis` package to be installed to run unit tests.
|
|
@ -1 +0,0 @@
|
|||
Fix exception during handling multiple concurrent requests for remote media when using multiple media repositories.
|
|
@ -1 +0,0 @@
|
|||
Fix typing info on cache call signature to accept `on_invalidate`.
|
|
@ -1 +0,0 @@
|
|||
Support generating structured logs via the standard logging configuration.
|
|
@ -1 +0,0 @@
|
|||
Abstract some invite-related code in preparation for landing knocking.
|
|
@ -1 +0,0 @@
|
|||
Add an admin APIs to allow server admins to list users' pushers. Contributed by @dklimpel.
|
|
@ -1 +0,0 @@
|
|||
Fail tests if they do not await coroutines.
|
|
@ -1 +0,0 @@
|
|||
Add more type hints to the application services code.
|
|
@ -1 +0,0 @@
|
|||
Improve start time by adding an index to `e2e_cross_signing_keys.stream_id`.
|
|
@ -1 +0,0 @@
|
|||
Re-organize the structured logging code to separate the TCP transport handling from the JSON formatting.
|
|
@ -1 +0,0 @@
|
|||
Use Python 3.8 in Docker images by default.
|
|
@ -1 +0,0 @@
|
|||
Add an admin API for local user media statistics. Contributed by @dklimpel.
|
|
@ -1 +0,0 @@
|
|||
Notes on SSO logins and media_repository worker.
|
|
@ -1 +0,0 @@
|
|||
Remove the "draft" status of the Room Details Admin API.
|
|
@ -1 +0,0 @@
|
|||
Improve the error returned when a non-string displayname or avatar_url is used when updating a user's profile.
|
|
@ -1 +0,0 @@
|
|||
Document experimental support for running multiple event persisters.
|
|
@ -1 +0,0 @@
|
|||
Block attempts by clients to send server ACLs, or redactions of server ACLs, that would result in the local server being blocked from the room.
|
|
@ -1 +0,0 @@
|
|||
Add metrics the allow the local sysadmin to track 3PID `/requestToken` requests.
|
|
@ -1 +0,0 @@
|
|||
Consolidate duplicated lists of purged tables that are checked in tests.
|
|
@ -1 +0,0 @@
|
|||
Add information regarding the various sources of, and expected contributions to, Synapse's documentation to `CONTRIBUTING.md`.
|
|
@ -1 +0,0 @@
|
|||
Improve the error message returned when a remote server incorrectly sets the `Content-Type` header in response to a JSON request.
|
|
@ -1 +0,0 @@
|
|||
Add `displayname` to Shared-Secret Registration for admins.
|
|
@ -1 +0,0 @@
|
|||
Fix bug where Synapse would not recover after losing connection to the database.
|
|
@ -1 +0,0 @@
|
|||
Fix bug where the `/_synapse/admin/v1/send_server_notice` API could send notices to non-notice rooms.
|
|
@ -1 +0,0 @@
|
|||
Fix port script fails when DB has no backfilled events. Broke in v1.21.0.
|
|
@ -1 +0,0 @@
|
|||
Fix port script to correctly handle foreign key constraints. Broke in v1.21.0.
|
|
@ -0,0 +1 @@
|
|||
Add an example and documentation for clock skew to the SAML2 sample configuration to allow for clock/time difference between the homserver and IdP. Contributed by @localguru.
|
|
@ -0,0 +1 @@
|
|||
Clarify the usecase for an msisdn delegate. Contributed by Adrian Wannenmacher.
|
|
@ -0,0 +1 @@
|
|||
Fix a bug where appservices may be sent an excessive amount of read receipts and presence. Broke in v1.22.0.
|
|
@ -0,0 +1 @@
|
|||
Generalise `RoomMemberHandler._locally_reject_invite` to apply to more flows than just invite.
|
|
@ -1 +0,0 @@
|
|||
Speed up repeated state resolutions on the same room by caching event ID to auth event ID lookups.
|
|
@ -0,0 +1 @@
|
|||
Generalise `RoomStore.maybe_store_room_on_invite` to handle other, non-invite membership events.
|
|
@ -1 +0,0 @@
|
|||
Fix port script so that it can be run again after a failure. Broke in v1.21.0.
|
|
@ -0,0 +1 @@
|
|||
Refactor test utilities for injecting HTTP requests.
|
|
@ -0,0 +1 @@
|
|||
Refactor test utilities for injecting HTTP requests.
|
|
@ -0,0 +1 @@
|
|||
Refactor test utilities for injecting HTTP requests.
|
|
@ -0,0 +1 @@
|
|||
Refactor test utilities for injecting HTTP requests.
|
|
@ -0,0 +1 @@
|
|||
Refactor test utilities for injecting HTTP requests.
|
|
@ -0,0 +1 @@
|
|||
Consolidate logic between the OpenID Connect and SAML code.
|
|
@ -0,0 +1 @@
|
|||
Use `TYPE_CHECKING` instead of magic `MYPY` variable.
|
|
@ -0,0 +1 @@
|
|||
Remove extraneous comma from JSON example in User Admin API docs.
|
|
@ -0,0 +1 @@
|
|||
Add a commandline script to sign arbitrary json objects.
|
|
@ -0,0 +1 @@
|
|||
Minor log line improvements for the SSO mapping code used to generate Matrix IDs from SSO IDs.
|
|
@ -0,0 +1 @@
|
|||
Add additional error checking for OpenID Connect and SAML mapping providers.
|
|
@ -0,0 +1 @@
|
|||
Fix a bug in some federation APIs which could lead to unexpected behaviour if different parameters were set in the URI and the request body.
|
|
@ -0,0 +1 @@
|
|||
Refactor test utilities for injecting HTTP requests.
|
|
@ -0,0 +1 @@
|
|||
Update `turn-howto.md` with troubleshooting notes.
|
|
@ -0,0 +1 @@
|
|||
Fix a bug introduced in v1.20.0 where the user-agent and IP address reported during user registration for CAS, OpenID Connect, and SAML were of the wrong form.
|
|
@ -0,0 +1 @@
|
|||
Remove old `/_matrix/client/*/admin` endpoints which was deprecated since Synapse 1.20.0.
|
|
@ -0,0 +1 @@
|
|||
Fix the example on how to set the `Content-Type` header in nginx for the Client Well-Known URI.
|
|
@ -0,0 +1 @@
|
|||
Improve the documentation for the admin API to list all media in a room with respect to encrypted events.
|
|
@ -0,0 +1 @@
|
|||
Fix a bug where synctl could spawn duplicate copies of a worker. Contributed by Waylon Cude.
|
|
@ -0,0 +1 @@
|
|||
Add support for re-trying generation of a localpart for OpenID Connect mapping providers.
|
|
@ -0,0 +1 @@
|
|||
Add type hints to HTTP abstractions.
|
|
@ -0,0 +1 @@
|
|||
Add type hints to HTTP abstractions.
|
|
@ -0,0 +1 @@
|
|||
Optimise the lookup for an invite from another homeserver when trying to reject it.
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue