summary refs log tree commit diff
path: root/docs (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Uniformize spam-checker API: github/ts/spam-errors ts/spam-errorsDavid Teller2022-05-111-0/+11
| | | | | | - Some callbacks should return `True` to allow, `False` to deny, while others should return `True` to deny and `False` to allow. With this PR, all callbacks return `ALLOW` to allow or a `Codes` (typically `Codes.FORBIDDEN`) to deny. - Similarly, some methods returned `True` to allow, `False` to deny, while others returned `True` to deny and `False` to allow. They now all return `ALLOW` to allow or a `Codes` to deny. - Spam-checker implementations may now return an explicit code, e.g. to differentiate between "User account has been suspended" (which is in practice required by law in some countries, including UK) and "This message looks like spam".
* Add the `update_user_directory_from_worker` configuration option ↵reivilibre2022-05-102-12/+39
| | | | | (superseding `update_user_directory`) to allow a generic worker to be designated as the worker to update the user directory. (#12654) Co-authored-by: Shay <hillerys@element.io>
* Update `replication.md` with info on TCP module structure (#12621)Shay2022-05-091-0/+5
|
* Update SQL statements in docs for Synapse Admins (#12536)Dirk Klimpel2022-05-091-70/+121
|
* Fix docs on how to run specific Complement tests after recent ↵Eric Eastwood2022-05-091-2/+2
| | | | `complement.sh` change (#12664)
* Add the `notify_appservices_from_worker` configuration option (superseding ↵reivilibre2022-05-062-0/+47
| | | | `notify_appservices`) to allow a generic worker to be designated as the worker to send traffic to Application Services. (#12452)
* Add `mau_appservice_trial_days` config (#12619)Will Hunt2022-05-042-0/+21
| | | | | | | | | | | | | | | | | | | | | * Add mau_appservice_trial_days * Add a test * Tweaks * changelog * Ensure we sync after the delay * Fix types * Add config statement * Fix test * Reinstate logging that got removed * Fix feature name
* Disable device name lookup over federation by default (#12616)Andrew Morgan2022-05-043-7/+18
|
* Remove unstable/unspecced login types. (#12597)Patrick Cloke2022-05-041-3/+0
| | | | | | * `m.login.jwt`, which was never specced and has been deprecated since Synapse 1.16.0. (`org.matrix.login.jwt` can be used instead.) * `uk.half-shot.msc2778.login.application_service`, which was stabilized as part of the Matrix spec v1.2 release.
* Improve logging for cancelled requests (#12587)Sean Quah2022-05-041-1/+1
| | | | | | | Don't log stack traces for cancelled requests and use a custom HTTP status code of 499. Signed-off-by: Sean Quah <seanq@element.io>
* Remove special-case for `twisted` logger (#12589)Richard van der Hoff2022-04-291-7/+0
| | | | | | | | | | | | | | | This was originally added when we first added a `MemoryHandler` to the default log config back in https://github.com/matrix-org/synapse/pull/8040, to ensure that we didn't explode with an infinite loop if there was an error formatting the logs. Since then, we made additional improvements to logging which make this workaround redundant. In particular: * we no longer attempt to log un-UTF8-decodable byte sequences, which were the most likely cause of an error in the first place. * https://github.com/matrix-org/synapse/pull/8268 ensures that in the unlikely case that there *is* an error, it won't cause an infinite loop.
* Add option to enable token registration without requiring 3pids (#12526)Will Hunt2022-04-271-0/+6
|
* Add a table of contents to config manual (#12527)Shay2022-04-251-2/+44
| | | * Update config_documentation.md
* Correct typo in user_admin_api.md device deletion JSON (#12533)Sami Olmari2022-04-251-1/+1
| | | | Signed-off-by: Sami Olmari <sami@olmari.fi>
* Add HAProxy delegation example to docs (#12501)villepeh2022-04-251-0/+22
| | | Signed-off-by: Ville Petteri Huh
* Add some example configurations for worker (#12492)Dirk Klimpel2022-04-254-24/+55
| | | Signed-off-by: Dirk Klimpel <dirk@klimpel.org>
* turn-howto: fix some linksRichard van der Hoff2022-04-221-2/+2
|
* Recommend poetry in docs (#12475)David Robertson2022-04-203-36/+283
| | | | | | | | | | | * Recommend poetry in docs - readme - contributor guide - upgrade notes - new dev cheat sheet for poetry Co-authored-by: Shay <hillerys@element.io> Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* Merge branch 'master' into developOlivier Wilkinson (reivilibre)2022-04-191-1/+1
|\
| * fix typo in upgrade notesRichard van der Hoff2022-04-191-1/+1
| |
* | Add a manual documenting config file options (#12368)Shay2022-04-182-0/+3413
| |
* | Update documentation to reflect that `run_background_tasks_on` is no longer ↵reivilibre2022-04-141-4/+4
| | | | | | | | | | | | | | | | | | | | | | experimental. (#12451) * Background workers aren't experimental anymore * Newsfile Signed-off-by: Olivier Wilkinson (reivilibre) <oliverw@matrix.org> * Stream writers aren't experimental either
* | Replace `federation_reader` with `generic_worker` in docs (#12457)Dirk Klimpel2022-04-144-24/+22
| |
* | Reintroduce the lint targets in the linter script (#12455)David Robertson2022-04-141-39/+15
| |
* | docs: Don't render the table of contents on the print page (#12340)Andrew Morgan2022-04-131-0/+14
| |
* | Merge branch 'release-v1.57' into developErik Johnston2022-04-126-8/+9445
|\|
| * Update UPGRADE notes to include more details about v1.57 upgrade failure ↵Richard van der Hoff2022-04-121-8/+47
| | | | | | | | mode (#12448)
| * Split changelogs by year v1.57.0rc1Erik Johnston2022-04-125-0/+9398
| |
* | Disable groups/communities by default. (#12344)Patrick Cloke2022-04-121-0/+7
|/ | | | This disables the endpoints (and sync response fields) for groups/communities by default.
* Stop maintaining a list of lint targets in `lint.sh` (#12420)David Robertson2022-04-081-5/+3
|
* Clarify that we mark as outliers because we don't have any state for them ↵Eric Eastwood2022-04-061-1/+2
| | | | | (#12345) As discussed at https://github.com/matrix-org/synapse/pull/12179#discussion_r837263852
* Remove docs for converting a legacy structured logging config. (#12392)Patrick Cloke2022-04-062-81/+2
| | | And update the upgrade notes to point at old versions of the documentation.
* Merge branch 'master' into developSean Quah2022-04-051-6/+5
|\
| * Move warning of open registration to v1.56 upgrade notes (#12322)Andrew Morgan2022-03-291-6/+5
| |
* | Allow specifying the Postgres database's port when running unit tests with ↵reivilibre2022-04-051-3/+11
| | | | | | | | Postgres. (#12376)
* | Update broken link in `workers.md` (#12369)Shay2022-04-041-1/+1
| |
* | Use a sequence to generate AS transaction IDs, drop `last_txn` AS state (#12209)Nick Mills-Barrett2022-04-011-0/+13
| | | | | | | | | | | | | | | | Switching to a sequence means there's no need to track `last_txn` on the AS state table to generate new TXN IDs. This also means that there is no longer contention between the AS scheduler and AS handler on updates to the `application_services_state` table, which will prevent serialization errors during the complete AS txn transaction.
* | Add a module callback to react to account data changes (#12327)Brendan Abolivier2022-04-013-1/+108
| | | | | | | | Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com> Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* | Add a callback to react to 3PID associations (#12302)Brendan Abolivier2022-03-311-0/+18
| |
* | Remove `dockerfile-pgtests` (#12336)David Robertson2022-03-311-21/+0
| |
* | Flesh out documentation for running SyTest against Synapse, including use of ↵reivilibre2022-03-301-1/+7
| | | | | | | | | | Postgres and worker mode. (#12271) Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* | Add a configuration to exclude rooms from sync response (#12310)Brendan Abolivier2022-03-301-0/+9
|/
* HAProxy guide update (#12279)villepeh2022-03-281-2/+2
| | | HAproxy reverse proxy guide update to stop sending IPv4-mapped address to HS.
* Add restrictions by default to open registration in Synapse (#12091)Shay2022-03-252-1/+15
|
* Authentik OpenID minor doc update (#12275)IronTooch2022-03-251-1/+3
|
* Mention the new behaviour on unsafe database locale in the upgrade notes ↵Brendan Abolivier2022-03-251-0/+7
| | | | | (#12288) Co-authored-by: Shay <hillerys@element.io>
* Refuse to start if DB has an unsafe locale (#12262)Shay2022-03-232-3/+10
|
* Remove mutual_rooms `update_user_directory` check, and add extra ↵Jonathan de Jong2022-03-231-1/+10
| | | | | documentation (#12038) Resolves #10339
* Sync more worker regexes in the documentation. (#12243)Patrick Cloke2022-03-181-16/+14
|
* Correct `check_username_for_spam` annotations and docs (#12246)David Robertson2022-03-181-4/+6
| | | | | | | * Formally type the UserProfile in user searches * export UserProfile in synapse.module_api * Update docs Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com>
* Deprecate the groups/communities endpoints and add an experimental ↵Patrick Cloke2022-03-121-0/+14
| | | | configuration flag. (#12200)
* Add config settings for background update parameters (#11980)Shay2022-03-111-0/+32
|
* Implement a Jinja2 filter to extract localparts from email addresses (#12212)Brendan Abolivier2022-03-112-1/+9
|
* Update the SSO username picker template to comply with SIWA guidelines (#12210)Brendan Abolivier2022-03-112-4/+12
| | | Fixes https://github.com/matrix-org/synapse/issues/12205
* Note that contributors can sign off privately (#12204)Andrew Morgan2022-03-111-0/+11
| | | Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* Document that most streams can only have a single writer. (#12196)~creme2022-03-101-14/+17
| | | | This includes the `typing`, `to_device`, `account_data`, `receipts`, and `presence` streams (really anything except the `events` stream).
* Remove workaround introduced in Synapse v1.50.0rc1 for Mjolnir ↵reivilibre2022-03-101-0/+8
| | | | compatibility. Breaks compatibility with Mjolnir v1.3.1 and earlier. (#11700)
* Updates to the Room DAG concepts development document (#12179)Richard van der Hoff2022-03-101-18/+53
| | | | Some stuff that came up while we were talking about #12173.
* Add third_party module callbacks to check if a user can delete a room and ↵Will Hunt2022-03-091-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | deactivate a user (#12028) * Add check_can_deactivate_user * Add check_can_shutdown_rooms * Documentation * callbacks, not functions * Various suggested tweaks * Add tests for test_check_can_shutdown_room and test_check_can_deactivate_user * Update check_can_deactivate_user to not take a Requester * Fix check_can_shutdown_room docs * Renegade and use `by_admin` instead of `admin_user_id` * fix lint * Update docs/modules/third_party_rules_callbacks.md Co-authored-by: Brendan Abolivier <babolivier@matrix.org> * Update docs/modules/third_party_rules_callbacks.md Co-authored-by: Brendan Abolivier <babolivier@matrix.org> * Update docs/modules/third_party_rules_callbacks.md Co-authored-by: Brendan Abolivier <babolivier@matrix.org> * Update docs/modules/third_party_rules_callbacks.md Co-authored-by: Brendan Abolivier <babolivier@matrix.org> Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
* Clean-up demo scripts & documentation (#12143)Patrick Cloke2022-03-083-1/+44
| | | | | | | | | * Rewrites the demo documentation to be clearer, accurate, and moves it to our documentation tree. * Improvements to the demo scripts: * `clean.sh` now runs `stop.sh` first to avoid zombie processes. * Uses more modern Synapse configuration (and removes some obsolete configuration). * Consistently use the HTTP ports for server name, etc. * Remove the `demo/etc` directory and place everything into the `demo/808x` directories.
* Move synctl into `synapse._scripts` and expose as an entrypoint (#12140)David Robertson2022-03-043-7/+29
|
* Add suffices to scripts in scripts-dev (#12137)David Robertson2022-03-021-1/+1
| | | | | | | | | * Rename scripts-dev to have suffices * Update references to `scripts-dev` * Changelog * These scripts don't pass mypy
* Enable complexity checking in complexity checking docs example (#11998)Andrew Morgan2022-03-021-9/+10
|
* Move scripts directory inside synapse, exposing as setuptools entry_points ↵David Robertson2022-03-022-4/+4
| | | | | | | | | | | | (#12118) * Two scripts are basically entry_points already * Move and rename scripts/* to synapse/_scripts/*.py * Delete sync_room_to_group.pl * Expose entry points in setup.py * Update linter script and config * Fixup scripts & docs mentioning scripts that moved Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* Add module callbacks called for reacting to deactivation status change and ↵Brendan Abolivier2022-03-011-0/+56
| | | | profile update (#12062)
* Remove the unstable `/spaces` endpoint. (#12073)Patrick Cloke2022-02-281-2/+0
| | | | | | | | ...and various code supporting it. The /spaces endpoint was from an old version of MSC2946 and included both a Client-Server and Server-Server API. Note that the unstable /hierarchy endpoint (from the final version of MSC2946) is not yet removed.
* Add documentation for missing worker types. (#11599)Patrick Cloke2022-02-231-14/+76
| | | And clean-up the endpoints which should be routed to workers.
* Remove `HomeServer.get_datastore()` (#12031)Richard van der Hoff2022-02-231-1/+1
| | | | | | | The presence of this method was confusing, and mostly present for backwards compatibility. Let's get rid of it. Part of #11733
* Use room version 9 as the default room version (per MSC3589). (#12058)Patrick Cloke2022-02-221-1/+1
|
* Merge remote-tracking branch 'origin/master' into developErik Johnston2022-02-221-1/+1
|\
| * Recommend upgrading treq alongside twisted (#11943)Brendan Abolivier2022-02-091-1/+1
| |
* | Document why auth providers aren't validated in the admin API. (#12004)Patrick Cloke2022-02-181-1/+2
| | | | | | | | Since it is reasonable to give a future or past auth provider, which might not be in the current configuration.
* | Allow modules to set a display name on registration (#12009)Brendan Abolivier2022-02-171-4/+31
| | | | | | Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* | Remove support for the legacy structured logging configuration. (#12008)Patrick Cloke2022-02-172-8/+15
| |
* | Explain the meaning of spam checker callbacks' return values (#12003)David Robertson2022-02-161-13/+27
| | | | | | Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* | Note when unstable MSC3283 prefixes will be removed (#11989)Andrew Morgan2022-02-141-1/+1
| |
* | remove empty file, reword/rename newsfragment, and add line to upgrade docH. Shay2022-02-141-0/+1
| |
* | Enable cache time-based expiry by default (#11849)Shay2022-02-112-4/+16
| |
* | Remove deprecated user_may_create_room_with_invites callback (#11950)Brendan Abolivier2022-02-111-10/+19
| | | | | | Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* | Support the stable API endpoint for MSC3283: new settings in `/capabilities` ↵Dirk Klimpel2022-02-111-0/+19
| | | | | | | | endpoint (#11933)
* | Basic documentation for the release cycle. (#11954)Patrick Cloke2022-02-102-0/+38
| |
* | Fix example for structured logging. (#11946)Brad Jones2022-02-091-1/+1
| | | | | | The StreamHandler takes a stream parameter, not location.
* | Merge branch 'master' into developBrendan Abolivier2022-02-081-0/+12
|\|
| * Fix wordingBrendan Abolivier2022-02-081-6/+7
| |
| * Add words about the Twisted security fix v1.52.0Brendan Abolivier2022-02-081-0/+11
| |
* | Add a callback to allow modules to deny 3PID (#11854)Brendan Abolivier2022-02-081-0/+19
| | | | | | | | | | Part of the Tchap Synapse mainlining. This allows modules to implement extra logic to figure out whether a given 3PID can be added to the local homeserver. In the Tchap use case, this will allow a Synapse module to interface with the custom endpoint /internal_info.
* | Clarify that users' media are also preview images (#11862)Dirk Klimpel2022-02-042-1/+11
| |
* | Stabilise MSC3231 (Token Based Registration) (#11867)Jonathan de Jong2022-02-043-2/+17
| |
* | Delete MSC1711_certificates_FAQ.md (#11907)Richard van der Hoff2022-02-043-321/+2
| | | | | | This document isn't really relevant any more, and its existence is more confusing than helpful.
* | Remove support for the webclient listener. (#11895)Patrick Cloke2022-02-031-0/+13
| | | | | | Also remove support for non-HTTP(S) web_client_location.
* | Fix typo: unpind -> unbind (#11859)Christian Paul2022-02-031-1/+1
| | | | | | Co-authored-by: reivilibre <olivier@librepush.net>
* | Add a ratelimiter for 3pid invite (#11892)Brendan Abolivier2022-02-031-0/+7
|/
* Consolidate the `access_token` information in the admin api (#11861)Dirk Klimpel2022-01-319-95/+29
| | | Co-authored-by: reivilibre <olivier@librepush.net>
* Remove not needed old table of contents in documentation (#11860)Dirk Klimpel2022-01-313-53/+0
|
* Configurable limits on avatars (#11846)Brendan Abolivier2022-01-281-0/+14
| | | | | | Only allow files which file size and content types match configured limits to be set as avatar. Most of the inspiration from the non-test code comes from matrix-org/synapse-dinsic#19
* Fix some indentation inconsistencies in the sample config (modules) (#11838)Dirk Klimpel2022-01-271-5/+5
|
* Update installation docs to indicate that we support Python 3.10 (#11820)Shay2022-01-261-1/+1
|
* Add a module callback to set username at registration (#11790)Brendan Abolivier2022-01-261-0/+62
| | | | | | This is in the context of mainlining the Tchap fork of Synapse. Currently in Tchap usernames are derived from the user's email address (extracted from the UIA results, more specifically the m.login.email.identity step). This change also exports the check_username method from the registration handler as part of the module API, so that a module can check if the username it's trying to generate is correct and doesn't conflict with an existing one, and fallback gracefully if not. Co-authored-by: David Robertson <davidr@element.io>
* Add a config flag to inhibit `M_USER_IN_USE` during registration (#11743)Brendan Abolivier2022-01-261-0/+10
| | | | | | | This is mostly motivated by the tchap use case, where usernames are automatically generated from the user's email address (in a way that allows figuring out the email address from the username). Therefore, it's an issue if we respond to requests on /register and /register/available with M_USER_IN_USE, because it can potentially leak email addresses (which include the user's real name and place of work). This commit adds a flag to inhibit the M_USER_IN_USE errors that are raised both by /register/available, and when providing a username early into the registration process. This error will still be raised if the user completes the registration process but the username conflicts. This is particularly useful when using modules (https://github.com/matrix-org/synapse/pull/11790 adds a module callback to set the username of users at registration) or SSO, since they can ensure the username is unique. More context is available in the PR that introduced this behaviour to synapse-dinsic: matrix-org/synapse-dinsic#48 - as well as the issue in the matrix-dinsic repo: matrix-org/matrix-dinsic#476
* Add admin API to get a list of federated rooms (#11658)Dirk Klimpel2022-01-251-0/+60
|
* Minor updates, and docs, for schema delta files (#11823)Richard van der Hoff2022-01-251-0/+54
| | | | | | | | | * Make functions in python deltas optional It's annoying to always have to write stubs for these. * Documentation for delta files * changelog
* Docs: add missing PR submission process how-tos (#11821)Forest Johnson2022-01-251-1/+2
| | | | | | | * Docs: add missing PR submission process how-tos The documentation says that in order to submit a pull request you have to run the linter and links to [Run the linters](https://matrix-org.github.io/synapse/latest/development/contributing_guide.html#run-the-linters). IMO "Run the linters" should explain that development dependencies are a pre-requisite. I also included `pip install wheel` which I had to run inside my virtual environment on ubuntu before I `pip install -e ".[all,dev]"` would succeed.
* Add admin API to reset connection timeouts for remote server (#11639)Dirk Klimpel2022-01-251-1/+39
| | | * Fix get federation status of destination if no error occured
* Remove account data (including client config, push rules and ignored users) ↵reivilibre2022-01-241-1/+5
| | | | | upon user deactivation. (#11621) Co-authored-by: Patrick Cloke <clokep@users.noreply.github.com>
* Drop support for and remove references to EOL Python 3.6 (#11683)Shay2022-01-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * remove reference in comments to python3.6 * upgrade tox python env in script * bump python version in example for completeness * upgrade python version requirement in setup doc * upgrade necessary python version in __init__.py * upgrade python version in setup.py * newsfragment * drops refs to bionic and replace with focal * bump refs to postgres 9.6 to 10 * fix hanging ci * try installing tzdata first * revert change made in b979f336 * ignore new random mypy error while debugging other error * fix lint error for temporary workaround * revert change to install list * try passing env var * export debian frontend var? * move line and add comment * bump pillow dependency * bump lxml depenency * install libjpeg-dev for pillow * bump automat version to one compatible with py3.8 * add libwebp for pillow * bump twisted trunk python version * change suffix of newsfragment * remove redundant python 3.7 checks * lint
* installation.md: drop python 3.6 support (#11781)Richard van der Hoff2022-01-201-1/+1
| | | #11595 dropped support for python 3.6, but forgot to update this doc.
* Add deprecation warnings for `webclient` listener and non-HTTP(S) ↵Patrick Cloke2022-01-202-9/+12
| | | | | | | `web_client_location`. (#11774) This changes the behaviour of the root endpoint to redirect directly to the configuration of `web_client_location` if it is given an HTTP(S) URL.
* Fix preview of imgur and Tenor URLs. (#11669)Philippe Daouadi2022-01-181-1/+6
| | | | | | By scraping Open Graph information from the HTML even when an autodiscovery endpoint is found. The results are then combined to capture as much information as possible from the page.
* Warn against using Let's Encrypt certs for encrypted TURN (#11686)AndrewFerr2022-01-171-0/+16
| | | | | | | | | * Warn against using Let's Encrypt certs for encrypted TURN This helps to avoid client-side issues: * https://github.com/vector-im/element-android/issues/1533 * https://github.com/vector-im/element-ios/issues/2712 Signed-off-by: Andrew Ferrazzutti <fair@miscworks.net>
* Fix up docs for `track_puppeted_user_ips` (again) (#11757)Richard van der Hoff2022-01-171-4/+12
| | | Fixes #11741
* Update documentation for configuring facebook login (#11755)Richard van der Hoff2022-01-172-15/+19
| | | ... and a minor thinko fix in the sample config.
* Remove the 'password_hash' from the Users Admin API endpoint response ↵Andrew Morgan2022-01-141-4/+5
| | | | dictionary (#11576)
* Fix sample_config.yaml in regards track_puppeted_user_ips (#11749)Jason Robinson2022-01-141-5/+6
| | | | | | | * Fix sample_config.yaml in regards track_puppeted_user_ips Closes #11741 Signed-off-by: Jason Robinson <jasonr@matrix.org>
* update room spec url in config files (#11739)qwertyforce2022-01-131-1/+1
| | | | | | | * change spec url in config files * Create 11739.txt * .txt -> .doc
* Mention python3-venv and libpq-dev dependencies in contribution guide (#11740)Andy Balaam2022-01-131-1/+3
|
* Allow tracking puppeted users for MAU (#11561)Jason Robinson2022-01-121-0/+6
| | | | | | | | | | | | | | | Currently when puppeting another user, the user doing the puppeting is tracked for client IPs and MAU (if configured). When tracking MAU is important, it becomes necessary to be possible to also track the client IPs and MAU of puppeted users. As an example a client that manages user creation and creation of tokens via the Synapse admin API, passing those tokens for the client to use. This PR adds optional configuration to enable tracking of puppeted users into monthly active users. The default behaviour stays the same. Signed-off-by: Jason Robinson <jasonr@matrix.org>
* Fix documentation of supported PostgreSQL version (#11725)haslersn2022-01-121-1/+1
| | | Signed-off-by: Sebastian Hasler <sebastian.hasler@stuvus.uni-stuttgart.de>
* Document the `SYNAPSE_TEST_PERSIST_SQLITE_DB` unit test env var (#11715)Andrew Morgan2022-01-101-0/+21
|
* Add support removal notice to the upgrade notesOlivier Wilkinson (reivilibre)2022-01-051-0/+11
|
* Fix link from generated configuration file to documentation (#11678)Philipp Matthias Schäfer2022-01-051-1/+1
| | | | Co-authored-by: reivilibre <olivier@librepush.net> Co-authored-by: reivilibre <oliverw@matrix.org>
* Add admin API to get users' account data (#11664)Dirk Klimpel2022-01-051-0/+75
| | | Co-authored-by: reivilibre <olivier@librepush.net>
* Clarify SSO mapping provider documentation by writing `def` or `async def` ↵reivilibre2022-01-051-12/+12
| | | | before the names of methods, as appropriate. (#11681)
* Correct Synapse install command for FreeBSD. (#11267)Donny Johnson2022-01-051-1/+1
| | | Co-authored-by: reivilibre <olivier@librepush.net>
* update ngnix reverse-proxy example (#11680)Richard van der Hoff2022-01-041-1/+1
| | | this should not be a case-insensitive match.
* Include the topic event in the prejoin state, per MSC3173. (#11666)Patrick Cloke2022-01-041-0/+1
| | | | Invites and knocks will now include the topic in the stripped state send to clients before joining the room.
* Add details for how to set up TURN behind NAT (#11553)AndrewFerr2021-12-231-15/+52
| | | | Signed-off-by: Andrew Ferrazzutti <fair@miscworks.net>
* Merge branch 'master' into developRichard van der Hoff2021-12-211-2/+2
|\
| * Add notes about dropping support for Python 3.6 and Postgres 9.6. v1.49.1Richard van der Hoff2021-12-211-2/+2
| |
* | Document the usage of refresh tokens. (#11427)reivilibre2021-12-082-0/+140
|/ | | Co-authored-by: David Robertson <davidr@element.io>
* Stabilise support for MSC2918 refresh tokens as they have now been merged ↵reivilibre2021-12-061-0/+38
| | | | into the Matrix specification. (#11435)
* Add admin API to get some information about federation status (#11407)Dirk Klimpel2021-12-062-0/+115
|
* Update backward extremity docs to make it clear that it does not indicate ↵Eric Eastwood2021-12-031-9/+7
| | | | | | | whether we have fetched an events' `prev_events` (#11469) Spawning from https://github.com/matrix-org/synapse/pull/9445#discussion_r758958181 Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Minor cleanup on recently ported doc pages (#11466)Shay2021-12-023-43/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * move wiki pages to synapse/docs and add a few titles where necessary * update SUMMARY.md with added pages * add changelog * move incorrectly located newsfragment * update changelog number * snake case added files and update summary.md accordingly * update issue/pr links * update relative links to docs * update changelog to indicate that we moved wiki pages to the docs and state reasoning * requested changes to admin_faq.md * requested changes to database_maintenance_tools.md * requested changes to understanding_synapse_through_graphana_graphs.md * add changelog * fix leftover merge errata * fix unwanted changes from merge * use two spaces between entries * outdent code blocks
* Port wiki pages to documentation website (#11402)Shay2021-12-017-0/+465
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * move wiki pages to synapse/docs and add a few titles where necessary * update SUMMARY.md with added pages * add changelog * move incorrectly located newsfragment * update changelog number * snake case added files and update summary.md accordingly * update issue/pr links * update relative links to docs * update changelog to indicate that we moved wiki pages to the docs and state reasoning * revert unintentional change to CHANGES.md * add link Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> * Update CHANGES.md Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com> Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* Link background update controller docs to summary (#11475)Brendan Abolivier2021-12-011-0/+1
|
* Update openid.mdRichard van der Hoff2021-12-011-1/+1
| | | fix header level
* Remove mention of OIDC certification from Dex (#11470)Etienne Dysli Metref2021-12-011-1/+1
| | | | | | | Dex isn't yet [1,2] a certified OpenID Provider implementation. As of today, it's not on the list maintained by the OpenID Foundation. [3] [1] https://github.com/dexidp/dex/issues/42 [2] https://github.com/dexidp/dex/issues/262 [3] https://openid.net/certification/
* Add a note about huge pages to our Postgres doc (#11467)Shay2021-11-301-0/+3
| | | | | * Add note to postgres doc about hugepages * Newsfragment
* Improved push typing (#11409)Marcus2021-11-301-0/+5
| | | Co-authored-by: Sean Quah <8349537+squahtx@users.noreply.github.com>
* Support the stable /hierarchy endpoint from MSC2946 (#11329)Patrick Cloke2021-11-291-2/+2
| | | | | | This also makes additional updates where the implementation had drifted from the approved MSC. Unstable endpoints will be removed at a later data.
* Make background updates controllable via a plugin (#11306)Erik Johnston2021-11-292-6/+77
| | | Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
* Update the media repository documentation (#11415)Sean Quah2021-11-291-19/+70
|
* Add config for customizing the claim used for JWT logins. (#11361)Kostas2021-11-222-2/+9
| | | | | Allows specifying a different claim (from the default "sub") to use when calculating the localpart of the Matrix ID used during the JWT login.
* Update README.mdShay2021-11-191-2/+4
|
* Add an admin API to run background jobs. (#11352)Dirk Klimpel2021-11-193-6/+31
| | | | | | Instead of having admins poke into the database directly. Can currently run jobs to populate stats and to populate the user directory.
* Add dedicated admin API for blocking a room (#11324)Dirk Klimpel2021-11-181-0/+78
|
* Docs: Quote wildcard `federation_certificate_verification_whitelist` (#11381)Nicolai Søborg2021-11-181-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise I get this beautiful stacktrace: ``` python3 -m synapse.app.homeserver --config-path /etc/matrix/homeserver.yaml Traceback (most recent call last): File "/usr/lib/python3.8/runpy.py", line 194, in _run_module_as_main return _run_code(code, main_globals, None, File "/usr/lib/python3.8/runpy.py", line 87, in _run_code exec(code, run_globals) File "/root/synapse/synapse/app/homeserver.py", line 455, in <module> main() File "/root/synapse/synapse/app/homeserver.py", line 445, in main hs = setup(sys.argv[1:]) File "/root/synapse/synapse/app/homeserver.py", line 345, in setup config = HomeServerConfig.load_or_generate_config( File "/root/synapse/synapse/config/_base.py", line 671, in load_or_generate_config config_dict = read_config_files(config_files) File "/root/synapse/synapse/config/_base.py", line 717, in read_config_files yaml_config = yaml.safe_load(file_stream) File "/root/synapse/env/lib/python3.8/site-packages/yaml/__init__.py", line 125, in safe_load return load(stream, SafeLoader) File "/root/synapse/env/lib/python3.8/site-packages/yaml/__init__.py", line 81, in load return loader.get_single_data() File "/root/synapse/env/lib/python3.8/site-packages/yaml/constructor.py", line 49, in get_single_data node = self.get_single_node() File "/root/synapse/env/lib/python3.8/site-packages/yaml/composer.py", line 36, in get_single_node document = self.compose_document() File "/root/synapse/env/lib/python3.8/site-packages/yaml/composer.py", line 55, in compose_document node = self.compose_node(None, None) File "/root/synapse/env/lib/python3.8/site-packages/yaml/composer.py", line 84, in compose_node node = self.compose_mapping_node(anchor) File "/root/synapse/env/lib/python3.8/site-packages/yaml/composer.py", line 133, in compose_mapping_node item_value = self.compose_node(node, item_key) File "/root/synapse/env/lib/python3.8/site-packages/yaml/composer.py", line 82, in compose_node node = self.compose_sequence_node(anchor) File "/root/synapse/env/lib/python3.8/site-packages/yaml/composer.py", line 110, in compose_sequence_node while not self.check_event(SequenceEndEvent): File "/root/synapse/env/lib/python3.8/site-packages/yaml/parser.py", line 98, in check_event self.current_event = self.state() File "/root/synapse/env/lib/python3.8/site-packages/yaml/parser.py", line 379, in parse_block_sequence_first_entry return self.parse_block_sequence_entry() File "/root/synapse/env/lib/python3.8/site-packages/yaml/parser.py", line 384, in parse_block_sequence_entry if not self.check_token(BlockEntryToken, BlockEndToken): File "/root/synapse/env/lib/python3.8/site-packages/yaml/scanner.py", line 116, in check_token self.fetch_more_tokens() File "/root/synapse/env/lib/python3.8/site-packages/yaml/scanner.py", line 227, in fetch_more_tokens return self.fetch_alias() File "/root/synapse/env/lib/python3.8/site-packages/yaml/scanner.py", line 610, in fetch_alias self.tokens.append(self.scan_anchor(AliasToken)) File "/root/synapse/env/lib/python3.8/site-packages/yaml/scanner.py", line 922, in scan_anchor raise ScannerError("while scanning an %s" % name, start_mark, yaml.scanner.ScannerError: while scanning an alias in "/etc/matrix/homeserver.yaml", line 614, column 5 expected alphabetic or numeric character, but found '.' in "/etc/matrix/homeserver.yaml", line 614, column 6 ``` Signed-off-by: Nicolai Søborg <git@xn--sb-lka.org>
* Add support for `/_matrix/media/v3` APIs (#11371)Aaron R2021-11-171-35/+35
| | | | | | | | | | | | | * Add support for `/_matrix/media/v3` APIs Signed-off-by: Aaron Raimist <aaron@raim.ist> * Update `workers.md` to use v3 client and media APIs Signed-off-by: Aaron Raimist <aaron@raim.ist> * Add changelog Signed-off-by: Aaron Raimist <aaron@raim.ist>
* Merge branch 'master' into developDavid Robertson2021-11-172-2/+2
|\
| * Merge remote-tracking branch 'origin/release-v1.47'David Robertson2021-11-1729-277/+535
| |\
| * | Correct target of link to the modules page from the Password Auth Providers ↵reivilibre2021-11-121-1/+1
| | | | | | | | | | | | page (#11309)
| * | Wrong DTLS port in "Troubleshooting" (#11268)jmcparland2021-11-081-1/+1
| | | | | | | | | Port 5349, not 5479.
* | | Add ability to un-shadow-ban via the admin API. (#11347)Patrick Cloke2021-11-161-3/+9
| | |
* | | change 'Home Server' to one word 'homeserver' (#11320)Ashwin Nair2021-11-162-11/+11
| | | | | | | | | Signed-off-by: Ashwin S. Nair <58840757+Ashwin-exe@users.noreply.github.com>
* | | Suggest using `/etc/matrix-synapse/conf.d/` for configuration with Debian ↵reivilibre2021-11-121-0/+6
| | | | | | | | | | | | packages (#11281)
* | | Convert delete room admin API to async endpoint (#11223)Dirk Klimpel2021-11-122-16/+175
| | | | | | | | | Signed-off-by: Dirk Klimpel dirk@klimpel.org
* | | Add documentation page stubs for Single Sign-On, SAML and CAS pages (#11298)Andrew Morgan2021-11-104-3/+24
| | |
* | | Fix typos in the `username_available` admin API documentation. (#11286)Stanislav Motylkov2021-11-091-1/+1
| | |
* | | Allow admins to proactively block rooms (#11228)David Robertson2021-11-091-5/+11
| |/ |/| | | | | Co-authored-by: Dirk Klimpel <5740567+dklimpel@users.noreply.github.com> Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* | Add some background update admin APIs (#11263)Erik Johnston2021-11-082-0/+85
| | | | | | Fixes #11259
* | Default value for `public_baseurl` (#11210)Richard van der Hoff2021-11-081-7/+6
| | | | | | | | | | We might as well use a default value for `public_baseurl` based on `server_name` - in many cases, it will be correct.
* | Minor cleanup to Debian packaging (#11269)Dan Callahan2021-11-072-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove unused Vagrant scripts * Change package Architecture to any * Preinstall the wheel package when building venvs. Addresses the following warnings during Debian builds: Using legacy 'setup.py install' for jaeger-client, since package 'wheel' is not installed. Using legacy 'setup.py install' for matrix-synapse-ldap3, since package 'wheel' is not installed. Using legacy 'setup.py install' for opentracing, since package 'wheel' is not installed. Using legacy 'setup.py install' for psycopg2, since package 'wheel' is not installed. Using legacy 'setup.py install' for systemd-python, since package 'wheel' is not installed. Using legacy 'setup.py install' for pympler, since package 'wheel' is not installed. Using legacy 'setup.py install' for threadloop, since package 'wheel' is not installed. Using legacy 'setup.py install' for thrift, since package 'wheel' is not installed. * Allow /etc/default/matrix-synapse to be missing Per the systemd.exec manpage, prefixing an EnvironmentFile with "-": > indicates that if the file does not exist, it will not be read and no > error or warning message is logged. Signed-off-by: Dan Callahan <danc@element.io>
* | Add doc to integrate synapse with LemonLDAP OIDC (#11257)Julian2021-11-051-0/+38
| | | | | | | | Co-authored-by: David Robertson <david.m.robertson1@gmail.com> Co-authored-by: Julian Vanden Broeck <julian.vandenbroeck@dalibo.com>
* | Make minor correction to type of auth_checkers callbacks (#11253)reivilibre2021-11-041-1/+1
| |
* | fix a small typo in the delete room api docsAndrew Morgan2021-11-031-1/+1
| |
* | Add search by room ID and room alias to List Room admin API (#11099)Dirk Klimpel2021-11-021-3/+8
| | | | | | | | Fixes: #10874 Signed-off-by: Dirk Klimpel dirk@klimpel.org
* | Make `check_event_allowed` module API callback not fail open (accept events) ↵reivilibre2021-11-011-0/+8
| | | | | | | | when an exception is raised (#11033)
* | Remove deprecated delete room admin API (#11213)Dirk Klimpel2021-11-012-10/+10
| | | | | | | | | | Remove deprecated delete room admin API, `POST /_synapse/admin/v1/rooms/<room_id>/delete`
* | Support for serving server well-known files (#11211)Richard van der Hoff2021-11-012-37/+63
| | | | | | | | Fixes https://github.com/matrix-org/synapse/issues/8308
* | Add domain specific matching for haproxy config (#11128)Brett Bethke2021-11-011-1/+1
| |
* | Improve code formatting and fix a few typos in docs (#11221)Sumner Evans2021-11-0119-168/+232
| | | | | | | | | | | | * Labeled a lot more code blocks with the appropriate type * Fixed a couple of minor typos (missing/extraneous commas) Signed-off-by: Sumner Evans <me@sumnerevans.com>
* | Deprecate user_may_create_room_with_invites (#11206)Brendan Abolivier2021-11-012-36/+13
| |
* | Clarify lack of Windows support in documentation (#11198)Sean Quah2021-10-292-12/+13
| |
* | docs/openid: Add Authentik documentation. (#11151)Skyler Mäntysaari2021-10-281-0/+34
| |
* | Implement an `on_new_event` callback (#11126)Brendan Abolivier2021-10-261-0/+21
|/ | | Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* Enable changing user type via users admin API (#11174)Jason Robinson2021-10-261-2/+7
| | | | | | | | Users admin API can now also modify user type in addition to allowing it to be set on user creation. Signed-off-by: Jason Robinson <jasonr@matrix.org> Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
* Add more information what happens when a user is deactivated (#11083)Dirk Klimpel2021-10-221-0/+10
|
* Show error when timestamp in seconds is provided to the /purge_media_cache ↵Aaron R2021-10-201-3/+3
| | | | API (#11101)
* Remove false warning about copying the log config to a homeserver.yaml (#11092)Travis Ralston2021-10-201-6/+6
| | | Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* Document the version of Synapse each module callback was introduced in (#11132)Brendan Abolivier2021-10-205-0/+44
| | | | | | | | | | | | | | | | | | | | | * Mention callbacks introduced in v1.37.0 According to the documentation introduced in https://github.com/matrix-org/synapse/pull/10062 * Mention callbacks introduced in v1.39.0 According to https://github.com/matrix-org/synapse/pull/10386 and https://github.com/matrix-org/synapse/pull/9884 * Mention callbacks introduced in v1.42.0 According to https://github.com/matrix-org/synapse/pull/10524 * Mention callbacks introduced in v1.44.0 and v1.45.0 As per https://github.com/matrix-org/synapse/pull/10898, https://github.com/matrix-org/synapse/pull/10910 and https://github.com/matrix-org/synapse/pull/10894 * Mention callbacks introduced in v1.46.0 According to https://github.com/matrix-org/synapse/pull/10548
* Fix instances of [example]{.title-ref} in the upgrade notes (#11118)Andrew Morgan2021-10-191-27/+27
|
* Document Synapse's behaviour when dealing with multiple modules (#11096)Brendan Abolivier2021-10-187-8/+153
| | | | | | Document Synapse's behaviour when multiple modules register the same callback/web resource/etc. Co-authored-by: reivilibre <oliverw@matrix.org>
* Move experimental & retention config out of the server module. (#11070)Patrick Cloke2021-10-151-41/+42
|
* Update doc of the allowed characters for registration tokens (#11093)Dirk Klimpel2021-10-151-1/+1
| | | Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
* Fix upgrade dead links (#11069)David Robertson2021-10-131-4/+4
|
* Port the Password Auth Providers module interface to the new generic ↵Azrenbeth2021-10-135-28/+163
| | | | | | interface (#10548) Co-authored-by: Azrenbeth <7782548+Azrenbeth@users.noreply.github.com> Co-authored-by: Brendan Abolivier <babolivier@matrix.org>
* Update upgrade notesBrendan Abolivier2021-10-121-0/+9
|
* Include the requirements for [mypy,lint] in [dev] (#11034)reivilibre2021-10-111-1/+1
|
* Revert accidental push to develop.Olivier Wilkinson (reivilibre)2021-10-081-1/+1
|
* Update contributing guide to use [all,dev]Olivier Wilkinson (reivilibre)2021-10-081-1/+1
|
* Add content to the Synapse documentation intro page (#10990)Andrew Morgan2021-10-062-1/+75
| | | Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Add a spamchecker method to allow or deny 3pid invites (#10894)Brendan Abolivier2021-10-061-0/+35
| | | | | This is in the context of creating new module callbacks that modules in https://github.com/matrix-org/synapse-dinsic can use, in an effort to reconcile the spam checker API in synapse-dinsic with the one in mainline. Note that a module callback already exists for 3pid invites (https://matrix-org.github.io/synapse/develop/modules/third_party_rules_callbacks.html#check_threepid_can_be_invited) but it doesn't check whether the sender of the invite is allowed to send it.
* Add a spamchecker callback to allow or deny room joins (#10910)Brendan Abolivier2021-10-061-0/+15
| | | Co-authored-by: Erik Johnston <erik@matrix.org>
* Updated development doc on samling environment for testing. (#10973)Max Kratz2021-10-061-6/+5
|
* Remove "reference" wording according Synapse homeserver (#10971)Max Kratz2021-10-062-5/+6
|
* Update links to MSCs in documentation (#10991)Dirk Klimpel2021-10-052-3/+4
| | | | Based on matrix-doc switching from master -> main and MSCs being merged.
* Update installation instructions (#10919)Richard van der Hoff2021-09-291-163/+165
| | | Various updates to the install docs.
* Avoid storing URL cache files in storage providers (#10911)Sean Quah2021-09-271-0/+7
| | | | | URL cache files are short-lived and it does not make sense to offload them (eg. to the cloud) or back them up.
* Add a spamchecker callback to allow or deny room creation based on invites ↵Brendan Abolivier2021-09-241-0/+29
| | | | | | | (#10898) This is in the context of creating new module callbacks that modules in https://github.com/matrix-org/synapse-dinsic can use, in an effort to reconcile the spam checker API in synapse-dinsic with the one in mainline. This adds a callback that's fairly similar to user_may_create_room except it also allows processing based on the invites sent at room creation.
* Update postgresql testing script (#10906)David Robertson2021-09-241-0/+47
| | | | | | | | | | | | | | | | | | - Use sytest:bionic. Sytest:latest is two years old (do we want CI to push out latest at all?) and comes with Python 3.5, which we explictly no longer support. The script now runs under PostgreSQL 10 as a result. - Advertise script in the docs - Move pg testing script to scripts-dev directory - Write to host as the script's exector, not root A few changes to make it speedier to re-run the tests: - Create blank DB in the container, not the script, so we don't have to `initdb` each time - Use a named volume to persist the tox environment, so we don't have to fetch and install a bunch of packages from PyPI each time Co-authored-by: reivilibre <olivier@librepush.net>
* Add documentation for experimental feature flags. (#10865)Patrick Cloke2021-09-222-0/+38
|
* Refactor oEmbed previews (#10814)Patrick Cloke2021-09-211-8/+13
| | | | | | | | | | | | | The major change is moving the decision of whether to use oEmbed further up the call-stack. This reverts the _download_url method to being a "dumb" functionwhich takes a single URL and downloads it (as it was before #7920). This also makes more minor refactorings: * Renames internal variables for clarity. * Factors out shared code between the HTML and rich oEmbed previews. * Fixes tests to preview an oEmbed image.
* Always add local users to the user directory (#10796)David Robertson2021-09-211-5/+9
| | | | | | | | | | | | | | | | | | | | | | | It's a simplification, but one that'll help make the user directory logic easier to follow with the other changes upcoming. It's not strictly required for those changes, but this will help simplify the resulting logic that listens for `m.room.member` events and generally make the logic easier to follow. This means the config option `search_all_users` ends up controlling the search query only, and not the data we store. The cost of doing so is an extra row in the `user_directory` and `user_directory_search` tables for each local user which - belongs to no public rooms - belongs to no private rooms of size ≥ 2 I think the cost of this will be marginal (since they'll already have entries in `users` and `profiles` anyway). As a small upside, a homeserver whose directory was built with this change can toggle `search_all_users` without having to rebuild their directory. Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
* Fix #10837 by adding JSON encoding/decoding to the Module API example… ↵Charles Wright2021-09-171-2/+2
| | | | (#10845)
* Fix copy-paste error in the password section of the sample-config. (#10804)BramvdnHeuvel2021-09-131-1/+1
|
* Fix 2 typos in docs/log_contexts.md (#10795)reivilibre2021-09-101-2/+2
|
* Easy refactors of the user directory (#10789)David Robertson2021-09-101-0/+37
| | | No functional changes here. This came out as I was working to tackle #5677
* Improve the modules doc (#10758)Brendan Abolivier2021-09-089-404/+536
| | | | | | * Split up the documentation in several files rather than one huge one * Add examples for each callback category * Other niceties like fixing https://github.com/matrix-org/synapse/issues/10632 * Add titles to callbacks so they're easier to find in the navigation panels and link to
* Document that /spaces & /hierarchy can be routed to workers. (#10648)Patrick Cloke2021-09-082-1/+14
| | | Also refactors some of the registration of endpoints on workers.
* Use attrs internally for the URL preview code & add documentation. (#10753)Patrick Cloke2021-09-073-77/+52
|
* Add config option to use non-default manhole password and keys (#10643)Azrenbeth2021-09-062-4/+43
|
* Doc: Clarifying undoing room shutdowns (#10480)David Teller2021-09-061-15/+27
|
* Fix documentation of directory name for remote thumbnails (#10556)cuttingedge11092021-09-021-1/+1
|
* Merge tag 'v1.42.0rc1' into developOlivier Wilkinson (reivilibre)2021-09-011-3/+3
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Synapse 1.42.0rc1 (2021-09-01) ============================== Server administrators are reminded to read [the upgrade notes](docs/upgrade.md#upgrading-to-v1420). Features -------- - Add support for [MSC3231](https://github.com/matrix-org/matrix-doc/pull/3231): Token authenticated registration. Users can be required to submit a token during registration to authenticate themselves. Contributed by Callum Brown. ([\#10142](https://github.com/matrix-org/synapse/issues/10142)) - Add support for [MSC3283](https://github.com/matrix-org/matrix-doc/pull/3283): Expose `enable_set_displayname` in capabilities. ([\#10452](https://github.com/matrix-org/synapse/issues/10452)) - Port the `PresenceRouter` module interface to the new generic interface. ([\#10524](https://github.com/matrix-org/synapse/issues/10524)) - Add pagination to the spaces summary based on updates to [MSC2946](https://github.com/matrix-org/matrix-doc/pull/2946). ([\#10613](https://github.com/matrix-org/synapse/issues/10613), [\#10725](https://github.com/matrix-org/synapse/issues/10725)) Bugfixes -------- - Validate new `m.room.power_levels` events. Contributed by @aaronraimist. ([\#10232](https://github.com/matrix-org/synapse/issues/10232)) - Display an error on User-Interactive Authentication fallback pages when authentication fails. Contributed by Callum Brown. ([\#10561](https://github.com/matrix-org/synapse/issues/10561)) - Remove pushers when deleting an e-mail address from an account. Pushers for old unlinked emails will also be deleted. ([\#10581](https://github.com/matrix-org/synapse/issues/10581), [\#10734](https://github.com/matrix-org/synapse/issues/10734)) - Reject Client-Server `/keys/query` requests which provide `device_ids` incorrectly. ([\#10593](https://github.com/matrix-org/synapse/issues/10593)) - Rooms with unsupported room versions are no longer returned via `/sync`. ([\#10644](https://github.com/matrix-org/synapse/issues/10644)) - Enforce the maximum length for per-room display names and avatar URLs. ([\#10654](https://github.com/matrix-org/synapse/issues/10654)) - Fix a bug which caused the `synapse_user_logins_total` Prometheus metric not to be correctly initialised on restart. ([\#10677](https://github.com/matrix-org/synapse/issues/10677)) - Improve `ServerNoticeServlet` to avoid duplicate requests and add unit tests. ([\#10679](https://github.com/matrix-org/synapse/issues/10679)) - Fix long-standing issue which caused an error when a thumbnail is requested and there are multiple thumbnails with the same quality rating. ([\#10684](https://github.com/matrix-org/synapse/issues/10684)) - Fix a regression introduced in v1.41.0 which affected the performance of concurrent fetches of large sets of events, in extreme cases causing the process to hang. ([\#10703](https://github.com/matrix-org/synapse/issues/10703)) - Fix a regression introduced in Synapse 1.41 which broke email transmission on Systems using older versions of the Twisted library. ([\#10713](https://github.com/matrix-org/synapse/issues/10713)) Improved Documentation ---------------------- - Add documentation on how to connect Django with Synapse using OpenID Connect and django-oauth-toolkit. Contributed by @HugoDelval. ([\#10192](https://github.com/matrix-org/synapse/issues/10192)) - Advertise https://matrix-org.github.io/synapse documentation in the `README` and `CONTRIBUTING` files. ([\#10595](https://github.com/matrix-org/synapse/issues/10595)) - Fix some of the titles not rendering in the OpenID Connect documentation. ([\#10639](https://github.com/matrix-org/synapse/issues/10639)) - Minor clarifications to the documentation for reverse proxies. ([\#10708](https://github.com/matrix-org/synapse/issues/10708)) - Remove table of contents from the top of installation and contributing documentation pages. ([\#10711](https://github.com/matrix-org/synapse/issues/10711)) Deprecations and Removals ------------------------- - Remove deprecated Shutdown Room and Purge Room Admin API. ([\#8830](https://github.com/matrix-org/synapse/issues/8830)) Internal Changes ---------------- - Improve type hints for the proxy agent and SRV resolver modules. Contributed by @dklimpel. ([\#10608](https://github.com/matrix-org/synapse/issues/10608)) - Clean up some of the federation event authentication code for clarity. ([\#10614](https://github.com/matrix-org/synapse/issues/10614), [\#10615](https://github.com/matrix-org/synapse/issues/10615), [\#10624](https://github.com/matrix-org/synapse/issues/10624), [\#10640](https://github.com/matrix-org/synapse/issues/10640)) - Add a comment asking developers to leave a reason when bumping the database schema version. ([\#10621](https://github.com/matrix-org/synapse/issues/10621)) - Remove not needed database updates in modify user admin API. ([\#10627](https://github.com/matrix-org/synapse/issues/10627)) - Convert room member storage tuples to `attrs` classes. ([\#10629](https://github.com/matrix-org/synapse/issues/10629), [\#10642](https://github.com/matrix-org/synapse/issues/10642)) - Use auto-attribs for the attrs classes used in sync. ([\#10630](https://github.com/matrix-org/synapse/issues/10630)) - Make `backfill` and `get_missing_events` use the same codepath. ([\#10645](https://github.com/matrix-org/synapse/issues/10645)) - Improve the performance of the `/hierarchy` API (from [MSC2946](https://github.com/matrix-org/matrix-doc/pull/2946)) by caching responses received over federation. ([\#10647](https://github.com/matrix-org/synapse/issues/10647)) - Run a nightly CI build against Twisted trunk. ([\#10651](https://github.com/matrix-org/synapse/issues/10651), [\#10672](https://github.com/matrix-org/synapse/issues/10672)) - Do not print out stack traces for network errors when fetching data over federation. ([\#10662](https://github.com/matrix-org/synapse/issues/10662)) - Simplify tests for device admin rest API. ([\#10664](https://github.com/matrix-org/synapse/issues/10664)) - Add missing type hints to REST servlets. ([\#10665](https://github.com/matrix-org/synapse/issues/10665), [\#10666](https://github.com/matrix-org/synapse/issues/10666), [\#10674](https://github.com/matrix-org/synapse/issues/10674)) - Flatten the `tests.synapse.rests` package by moving the contents of `v1` and `v2_alpha` into the parent. ([\#10667](https://github.com/matrix-org/synapse/issues/10667)) - Update `complement.sh` to rebuild the base Docker image when run with workers. ([\#10686](https://github.com/matrix-org/synapse/issues/10686)) - Split the event-processing methods in `FederationHandler` into a separate `FederationEventHandler`. ([\#10692](https://github.com/matrix-org/synapse/issues/10692)) - Remove unused `compare_digest` function. ([\#10706](https://github.com/matrix-org/synapse/issues/10706))
| * 1.42.0rc1Olivier Wilkinson (reivilibre)2021-09-011-3/+3
| |
* | Allow configuration of the oEmbed URLs. (#10714)Patrick Cloke2021-08-311-0/+21
|/ | | | | This adds configuration options (under an `oembed` section) to configure which URLs are matched to use oEmbed for URL previews.
* Advertise matrix-org.github.io/synapse docs (#10595)David Robertson2021-08-311-5/+425
| | | | | Point to the book where possible, and use hyperlinks to github to refer to files not included in the book. Co-authored-by: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
* Removed page summaries from the top of installation and contributing doc ↵Azrenbeth2021-08-272-40/+6
| | | | | | | | | pages (#10711) - Removed page summaries from CONTRIBUTING and installation pages as this information was already in the table of contents on the right hand side - Fixed some broken links in CONTRIBUTING - Added margin-right tag for when table of contents is being shown (otherwise the text in the page sometimes overlaps with it)
* Clarifications to reverse_proxy.md (#10708)Richard van der Hoff2021-08-271-5/+5
| | | | | * Update reverse_proxy.md * Create 10708.doc
* Remove pushers when deleting 3pid from account (#10581)Azrenbeth2021-08-261-0/+5
| | | | | When a user deletes an email from their account it will now also remove all pushers for that email and that user (even if these pushers were created by a different client)
* doc: add django-oauth-toolkit to oidc doc (#10192)Hugo DELVAL2021-08-231-0/+48
| | | | Signed-off-by: Hugo Delval <hugo.delval@gmail.com>
* Fix the titles in the OIDC documentation (#10639)Andrew Morgan2021-08-231-6/+10
| | | | | | | | | | * Fix the titles in the OIDC documentation Having them as links broke the table-of-contents rendering in mdbook. Plus there's no reason for only some of the provider titles to be links. * Changelog * Add link to google idp docs
* Implement MSC3231: Token authenticated registration (#10142)Callum Brown2021-08-214-0/+312
| | | | | Signed-off-by: Callum Brown <callum@calcuode.com> This is part of my GSoC project implementing [MSC3231](https://github.com/matrix-org/matrix-doc/pull/3231).
* Remove not needed database updates in modify user admin API (#10627)Dirk Klimpel2021-08-191-2/+6
|
* Merge branch 'release-v1.41' into developErik Johnston2021-08-186-222/+309
|\
| * Update docs/upgrade.md with new versionErik Johnston2021-08-181-1/+1
| |
| * Mount /_synapse/admin/v1/users/{userId}/media admin API on media workers ↵Andrew Morgan2021-08-182-1/+9
| | | | | | | | | | only (#10628) Co-authored-by: Patrick Cloke <patrickc@matrix.org>
| * Allow /createRoom to be run on workers (#10564)Andrew Morgan2021-08-171-0/+1
| | | | | | Fixes https://github.com/matrix-org/synapse/issues/7867
| * Centralise the custom template directory (#10596)Brendan Abolivier2021-08-174-206/+270
| | | | | | Several configuration sections are using separate settings for custom template directories, which can be confusing. This PR adds a new top-level configuration for a custom template directory which is then used for every module. The only exception is the consent templates, since the consent template directory require a specific hierarchy, so it's probably better that it stays separate from everything else.
| * Make `PeriodicallyFlushingMemoryHandler` the default logging handler. (#10518)reivilibre2021-08-171-7/+20
| |
* | Display an error page during failure of fallback UIA. (#10561)Callum Brown2021-08-181-0/+8
| |
* | Remove deprecated Shutdown Room and Purge Room Admin API (#8830)Dirk Klimpel2021-08-174-125/+13
| |
* | Port the PresenceRouter module interface to the new generic interface (#10524)Azrenbeth2021-08-173-14/+52
|/ | | Port the PresenceRouter module interface to the new generic interface introduced in v1.37.0
* Allow to edit `external_ids` by Edit User admin API (#10598)Dirk Klimpel2021-08-171-11/+29
| | | Signed-off-by: Dirk Klimpel dirk@klimpel.org
* Add an admin API to check if a username is available (#10578)Will Hunt2021-08-171-0/+20
| | | This adds a new API GET /_synapse/admin/v1/username_available?username=foo to check if a username is available. It is the counterpart to https://matrix.org/docs/spec/client_server/r0.6.0#get-matrix-client-r0-register-available, except that it works even if registration is disabled.
* Manhole: wrap coroutines in `defer.ensureDeferred` automatically (#10602)reivilibre2021-08-161-1/+1
|
* Admin API to delete media for a specific user (#10558)Dirk Klimpel2021-08-112-6/+57
|
* support federation queries through http connect proxy (#10475)Dirk Klimpel2021-08-112-3/+30
| | | | | Signed-off-by: Marcus Hoffmann <bubu@bubu1.eu> Signed-off-by: Dirk Klimpel dirk@klimpel.org
* Moved homeserver documentation above reverse proxy examples (#10551)Drew Short2021-08-091-10/+13
| | | | Signed-off-by: Drew Short <warrick@sothr.com>
* Add a setting to disable TLS for sending email (#10546)Richard van der Hoff2021-08-061-0/+8
| | | This is mostly useful in case the server offers TLS, but doesn't present a valid certificate.
* Merge remote-tracking branch 'origin/release-v1.40' into developRichard van der Hoff2021-08-051-28/+23
|\
| * fix broken links in `upgrade.md` (#10543)Dirk Klimpel2021-08-051-28/+23
| | | | | | Signed-off-by: Dirk Klimpel dirk@klimpel.org
* | Add documentation for configuring a forward proxy. (#10443)Dirk Klimpel2021-08-052-0/+75
| |
* | Add warnings to ip_range_blacklist usage with proxies (#10129)Kento Okamoto2021-08-031-0/+4
| | | | | | | | | | | | | | | | Per issue #9812 using `url_preview_ip_range_blacklist` with a proxy via `HTTPS_PROXY` or `HTTP_PROXY` environment variables has some inconsistent bahavior than mentioned. This PR changes the following: - Changes the Sample Config file to include a note mentioning that `url_preview_ip_range_blacklist` and `ip_range_blacklist` is ignored when using a proxy - Changes some logic in synapse/config/repository.py to send a warning when both `*ip_range_blacklist` configs and a proxy environment variable are set and but no longer throws an error. Signed-off-by: Kento Okamoto <kentokamoto@protonmail.com>
* | Make sync response cache time configurable. (#10513)Richard van der Hoff2021-08-031-0/+9
|/
* Revert use of PeriodicallyFlushingMemoryHandler by default (#10515)reivilibre2021-08-031-4/+1
|
* Add developer documentation to explain room DAG concepts like `outliers` and ↵Eric Eastwood2021-08-032-0/+80
| | | | `state_groups` (#10464)
* Allow setting transaction limit for db connections (#10440)Toni Spets2021-08-021-0/+4
| | | | | | | Setting the value will help PostgreSQL free up memory by recycling the connections in the connection pool. Signed-off-by: Toni Spets <toni.spets@iki.fi>
* Add a PeriodicallyFlushingMemoryHandler to prevent logging silence (#10407)reivilibre2021-07-271-1/+4
| | | Signed-off-by: Olivier Wilkinson (reivilibre) <olivier@librepush.net>
* Add `creation_ts` to list users admin API (#10448)Dirk Klimpel2021-07-221-3/+7
| | | Signed-off-by: Dirk Klimpel dirk@klimpel.org