summary refs log tree commit diff
path: root/synapse/config/homeserver.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Bring auto-accept invite logic into Synapse (#17147)devonh2024-05-211-0/+2
| | | | | | | | | | | | | | This PR ports the logic from the [synapse_auto_accept_invite](https://github.com/matrix-org/synapse-auto-accept-invite) module into synapse. I went with the naive approach of injecting the "module" next to where third party modules are currently loaded. If there is a better/preferred way to handle this, I'm all ears. It wasn't obvious to me if there was a better location to add this logic that would cleanly apply to all incoming invite events. Relies on https://github.com/element-hq/synapse/pull/17166 to fix linter errors.
* Correctly mention previous copyright (#16820)Erik Johnston2024-01-231-0/+1
| | | | | During the migration the automated script to update the copyright headers accidentally got rid of some of the existing copyright lines. Reinstate them.
* Update license headersPatrick Cloke2023-11-211-10/+16
|
* Bump black from 22.12.0 to 23.1.0 (#15103)dependabot[bot]2023-02-221-1/+0
|
* Remove backing code for groups/communities (#12558)Patrick Cloke2022-05-261-2/+0
| | | | Including handlers, configuration code, appservice support, and the GroupID construct.
* Add config settings for background update parameters (#11980)Shay2022-03-111-0/+2
|
* Move experimental & retention config out of the server module. (#11070)Patrick Cloke2021-10-151-0/+2
|
* Allow configuration of the oEmbed URLs. (#10714)Patrick Cloke2021-08-311-0/+2
| | | | | This adds configuration options (under an `oembed` section) to configure which URLs are matched to use oEmbed for URL previews.
* Standardise the module interface (#10062)Brendan Abolivier2021-06-181-2/+3
| | | This PR adds a common configuration section for all modules (see docs). These modules are then loaded at startup by the homeserver. Modules register their hooks and web resources using the new `register_[...]_callbacks` and `register_web_resource` methods of the module API.
* Enable experimental spaces by default. (#10011)Patrick Cloke2021-05-241-1/+1
| | | | The previous spaces_enabled flag now defaults to true and is exposed in the sample config.
* Rename handler and config modules which end in handler/config. (#9816)Patrick Cloke2021-04-201-5/+5
|
* Port "Allow users to click account renewal links multiple times without ↵Andrew Morgan2021-04-191-1/+2
| | | | | hitting an 'Invalid Token' page #74" from synapse-dinsic (#9832) This attempts to be a direct port of https://github.com/matrix-org/synapse-dinsic/pull/74 to mainline. There was some fiddling required to deal with the changes that have been made to mainline since (mainly dealing with the split of `RegistrationWorkerStore` from `RegistrationStore`, and the changes made to `self.make_request` in test code).
* Remove redundant "coding: utf-8" lines (#9786)Jonathan de Jong2021-04-141-1/+0
| | | | | | | Part of #9744 Removes all redundant `# -*- coding: utf-8 -*-` lines from files, as python 3 automatically reads source code as utf-8 now. `Signed-off-by: Jonathan de Jong <jonathan@automatia.nl>`
* Implement MSC2858 support (#9183)Richard van der Hoff2021-01-271-0/+2
| | | Fixes #8928.
* Allow re-using a UI auth validation for a period of time (#8970)Patrick Cloke2020-12-181-2/+2
|
* Add prometheus metrics to track federation delays (#8430)Richard van der Hoff2020-10-011-1/+0
| | | | | Add a pair of federation metrics to track the delays in sending PDUs to/from particular servers.
* Update worker docs with recent enhancements (#7969)Erik Johnston2020-07-291-1/+1
|
* Add ability to shard the federation sender (#7798)Erik Johnston2020-07-101-0/+3
|
* Add option to enable encryption by default for new rooms (#7639)Andrew Morgan2020-06-101-0/+2
| | | | | | | | | Fixes https://github.com/matrix-org/synapse/issues/2431 Adds config option `encryption_enabled_by_default_for_room_type`, which determines whether encryption should be enabled with the default encryption algorithm in private or public rooms upon creation. Whether the room is private or public is decided based upon the room creation preset that is used. Part of this PR is also pulling out all of the individual instances of `m.megolm.v1.aes-sha2` into a constant variable to eliminate typos ala https://github.com/matrix-org/synapse/pull/7637 Based on #7637
* Allow configuration of Synapse's cache without using synctl or environment ↵Amber Brown2020-05-111-0/+2
| | | | variables (#6391)
* Implement OpenID Connect-based login (#7256)Quentin Gliech2020-05-081-0/+2
|
* Add ability to run replication protocol over redis. (#7040)Erik Johnston2020-04-221-0/+2
| | | This is configured via the `redis` config options.
* Add a confirmation step to the SSO login flowBrendan Abolivier2020-03-021-0/+2
|
* Refactor HomeserverConfig so it can be typechecked (#6137)Amber Brown2019-10-101-33/+35
|
* Add basic opentracing support (#5544)Jorik Schellekens2019-07-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Configure and initialise tracer Includes config options for the tracer and sets up JaegerClient. * Scope manager using LogContexts We piggy-back our tracer scopes by using log context. The current log context gives us the current scope. If new scope is created we create a stack of scopes in the context. * jaeger is a dependency now * Carrier inject and extraction for Twisted Headers * Trace federation requests on the way in and out. The span is created in _started_processing and closed in _finished_processing because we need a meaningful log context. * Create logcontext for new scope. Instead of having a stack of scopes in a logcontext we create a new context for a new scope if the current logcontext already has a scope. * Remove scope from logcontext if logcontext is top level * Disable tracer if not configured * typo * Remove dependence on jaeger internals * bools * Set service name * :Explicitely state that the tracer is disabled * Black is the new black * Newsfile * Code style * Use the new config setup. * Generate config. * Copyright * Rename config to opentracing * Remove user whitelisting * Empty whitelist by default * User ConfigError instead of RuntimeError * Use isinstance * Use tag constants for opentracing. * Remove debug comment and no need to explicitely record error * Two errors a "s(c)entry" * Docstrings! * Remove debugging brainslip * Homeserver Whitlisting * Better opentracing config comment * linting * Inclue worker name in service_name * Make opentracing an optional dependency * Neater config retreival * Clean up dummy tags * Instantiate tracing as object instead of global class * Inlcude opentracing as a homeserver member. * Thread opentracing to the request level * Reference opetnracing through hs * Instantiate dummy opentracin g for tests. * About to revert, just keeping the unfinished changes just in case * Revert back to global state, commit number: 9ce4a3d9067bf9889b86c360c05ac88618b85c4f * Use class level methods in tracerutils * Start and stop requests spans in a place where we have access to the authenticated entity * Seen it, isort it * Make sure to close the active span. * I'm getting black and blue from this. * Logger formatting Co-Authored-By: Erik Johnston <erik@matrix.org> * Outdated comment * Import opentracing at the top * Return a contextmanager * Start tracing client requests from the servlet * Return noop context manager if not tracing * Explicitely say that these are federation requests * Include servlet name in client requests * Use context manager * Move opentracing to logging/ * Seen it, isort it again! * Ignore twisted return exceptions on context exit * Escape the scope * Scopes should be entered to make them useful. * Nicer decorator names * Just one init, init? * Don't need to close something that isn't open * Docs make you smarter
* Add plugin APIs for implementations of custom event rules.Brendan Abolivier2019-06-141-0/+2
|
* Room Statistics (#4338)Amber Brown2019-05-211-10/+32
|
* Infer no_tls from presence of TLS listenersRichard van der Hoff2019-02-111-1/+1
| | | | | Rather than have to specify `no_tls` explicitly, infer whether we need to load the TLS keys etc from whether we have any TLS-enabled listeners.
* Add a script to generate a clean config file (#4315)Richard van der Hoff2018-12-221-7/+0
|
* Implement SAML2 authentication (#4267)Richard van der Hoff2018-12-071-1/+2
| | | | | | | | | | | This implements both a SAML2 metadata endpoint (at `/_matrix/saml2/metadata.xml`), and a SAML2 response receiver (at `/_matrix/saml2/authn_response`). If the SAML2 response matches what's been configured, we complete the SSO login flow by redirecting to the client url (aka `RelayState` in SAML2 jargon) with a login token. What we don't yet have is anything to build a SAML2 request and redirect the user to the identity provider. That is left as an exercise for the reader.
* Rip out half-implemented m.login.saml2 support (#4265)Richard van der Hoff2018-12-061-2/+1
| | | | | | | | | | | | | * Rip out half-implemented m.login.saml2 support This was implemented in an odd way that left most of the work to the client, in a way that I really didn't understand. It's going to be a pain to maintain, so let's start by ripping it out. * drop undocumented dependency on dateutil It turns out we were relying on dateutil being pulled in transitively by pysaml2. There's no need for that bloat.
* Add config option to control alias creationErik Johnston2018-10-191-1/+2
|
* Fix jwt import checkRichard van der Hoff2018-09-071-1/+1
| | | | | | | This handy code attempted to check that we could import jwt, but utterly failed to check it was the right jwt. Fixes https://github.com/matrix-org/synapse/issues/3793
* run isortAmber Brown2018-07-091-18/+18
|
* Infrastructure for a server notices roomRichard van der Hoff2018-05-171-1/+4
| | | | | | | Server Notices use a special room which the user can't dismiss. They are created on demand when some other bit of the code calls send_notice. (This doesn't actually do much yet becuse we don't call send_notice anywhere)
* ConsentResource to gather policy consent from usersRichard van der Hoff2018-05-151-3/+5
| | | | | Hopefully there are enough comments and docs in this that it makes sense on its own.
* Add user_directory_include_pattern config param to expand search results to ↵Matthew Hodgson2017-11-291-1/+2
| | | | | | | | | | additional users Initial commit; this doesn't work yet - the LIKE filtering seems too aggressive. It also needs _do_initial_spam to be aware of prepopulating the whole user_directory_search table with all users... ...and it needs a handle_user_signup() or something to be added so that new signups get incrementally added to the table too. Committing it here as a WIP
* Add config to enable group creationErik Johnston2017-10-191-1/+2
|
* Make the spam checker a moduleDavid Baker2017-09-261-1/+3
|
* Fix TravisCI tests for PR #2301Caleb James DeLisle2017-06-231-1/+1
|
* Add configuration parameter to allow redaction of content from push messages ↵Caleb James DeLisle2017-06-231-1/+2
| | | | for google/apple devices
* Implement pluggable password authErik Johnston2016-10-031-3/+3
| | | | | | Allows delegating the password auth to an external module. This also moves the LDAP auth to using this system, allowing it to be removed from the synapse tree entirely in the future.
* Inline the synchrotron and pusher configs into the main configMark Haines2016-06-161-1/+3
|
* Send a rather basic email notifDavid Baker2016-04-201-1/+2
| | | | Also pep8 fixes
* Introduce LDAP authenticationChristoph Witzany2016-04-061-1/+2
|
* Add JWT supportNiklas Riekenbrauck2016-03-291-1/+2
|
* config,handlers/_base: added homeserver config for what state is included in ↵Patrik Oldsberg2016-03-041-1/+2
| | | | | | a room invite Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com>
* copyrightsMatthew Hodgson2016-01-071-1/+1
|
* Add config option to disable password loginErik Johnston2015-10-221-1/+3
|
* Provide ability to login using CASSteven Hammerton2015-10-101-1/+2
|
* code beautifyMuthu Subramanian2015-07-081-0/+1
|
* Integrate SAML2 basic authentication - uses pysaml2Muthu Subramanian2015-07-081-3/+3
|
* Allow multiple config files, set up a default config before applying the ↵Mark Haines2015-04-301-1/+1
| | | | config files
* Manually generate the default config yaml, remove most of the commandline ↵Mark Haines2015-04-301-1/+3
| | | | arguments for synapse anticipating that people will use the yaml instead. Simpify implementing config options by not requiring the classes to hit the super class
* Merge branch 'develop' into key_distributionMark Haines2015-04-291-2/+1
|\ | | | | | | | | Conflicts: synapse/config/homeserver.py
| * Remove now-redundant email configDavid Baker2015-04-231-2/+1
| |
* | Move the key related config parser into a separate fileMark Haines2015-04-241-1/+2
|/
* Add AppServiceConfigKegan Dougal2015-03-311-1/+2
|
* Commandline option to enable metrics systemPaul "LeoNerd" Evans2015-03-121-1/+3
|
* Add config option to disable registration.Erik Johnston2015-02-191-1/+2
|
* Update copyright noticesMark Haines2015-01-061-1/+1
|
* Add support for TURN servers as per the TURN REST API ↵David Baker2014-09-231-1/+2
| | | | (http://tools.ietf.org/html/draft-uberti-behave-turn-rest-00)
* Added support for the HS to send emails. Use it to send password resets. ↵Kegan Dougal2014-09-161-2/+6
| | | | Added email_smtp_server and email_from_address config args. Added emailutils.
* Added a captcha config to the HS, to enable registration captcha checking ↵Kegan Dougal2014-09-051-1/+2
| | | | and for the recaptcha private key.
* fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org ↵Matthew Hodgson2014-09-031-1/+1
| | | | hasn't been incorporated in time for launch.
* Limit the size of uploadsMark Haines2014-09-031-1/+2
|
* Add ratelimiting function to basehandlerMark Haines2014-09-021-1/+3
|
* Add config tree to synapse. Add support for reading config from a fileMark Haines2014-08-311-0/+26