summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Fix TaskStopped exceptions when outbound requests time out (#4690)Richard van der Hoff2019-02-203-18/+29
|
* Merge pull request #4678 from matrix-org/rav/tls_install_instructionsRichard van der Hoff2019-02-2024-196/+248
|\ | | | | Attempt to clarify installation/config instructions
| * Attempt to make default config more consistentRichard van der Hoff2019-02-1924-196/+248
| | | | | | | | | | | | The general idea here is that config examples should just have a hash and no extraneous whitespace, both to make it easier for people who don't understand yaml, and to make the examples stand out from the comments.
* | Fix registration on workers (#4682)Erik Johnston2019-02-2012-150/+275
| | | | | | | | | | | | | | | | | | | | * Move RegistrationHandler init to HomeServer * Move post registration actions to RegistrationHandler * Add post regisration replication endpoint * Newsfile
* | Merge pull request #4671 from matrix-org/erikj/state_cache_invalidationErik Johnston2019-02-193-32/+70
|\ \ | |/ |/| Batch cache invalidation over replication
| * DocsErik Johnston2019-02-191-2/+3
| |
| * Use itertoolsErik Johnston2019-02-191-2/+2
| |
| * DocumentationErik Johnston2019-02-191-4/+4
| |
| * Batch cache invalidation over replicationErik Johnston2019-02-183-32/+69
| | | | | | | | | | | | | | | | | | | | Currently whenever the current state changes in a room invalidate a lot of caches, which cause *a lot* of traffic over replication. Instead, lets batch up all those invalidations and send a single poke down the replication streams. Hopefully this will reduce load on the master process by substantially reducing traffic.
* | Merge pull request #4652 from matrix-org/babolivier/acme-delegatedBrendan Abolivier2019-02-192-4/+20
|\ \ | | | | | | Support .well-known delegation when issuing certificates through ACME
| * | Improve config documentationBrendan Abolivier2019-02-191-3/+11
| | |
| * | Fetch ACME domain into an instance memberBrendan Abolivier2019-02-191-4/+5
| | |
| * | Use a configuration parameter to give the domain to generate a certificate forBrendan Abolivier2019-02-182-25/+11
| | |
| * | Merge branch 'develop' into babolivier/acme-delegatedBrendan Abolivier2019-02-188-40/+213
| |\ \
| * | | Typo in info logAndrew Morgan2019-02-181-1/+1
| | | | | | | | | | | | Co-Authored-By: babolivier <contact@brendanabolivier.com>
| * | | Various cosmetics to make TravisCI happyBrendan Abolivier2019-02-151-2/+5
| | | |
| * | | Remove unused importBrendan Abolivier2019-02-151-1/+0
| | | |
| * | | Support .well-known delegation when issuing certificates through ACMEBrendan Abolivier2019-02-151-4/+23
| | | |
* | | | Merge pull request #4670 from matrix-org/erikj/register_login_splitErik Johnston2019-02-192-41/+43
|\ \ \ \ | | | | | | | | | | Split /login into client_reader
| * | | | Split /login into client_readerErik Johnston2019-02-182-41/+43
| | | | |
* | | | | Try and make TLS federation client code faster (#4674)Richard van der Hoff2019-02-191-8/+6
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | * fix to use makeContext so that we don't need to rebuild the certificateoptions each time
| * | | | | fix to use makeContext so that we don't need to rebuild the ↵Amber Brown2019-02-191-8/+6
| | |_|_|/ | |/| | | | | | | | | | | | | certificateoptions each time
* | | | | Merge pull request #4642 from matrix-org/anoa/bans_room_upgradeAndrew Morgan2019-02-191-0/+22
|\ \ \ \ \ | |/ / / / |/| | | | Transfer bans on room upgrade
| * | | | lintAndrew Morgan2019-02-181-1/+3
| | | | |
| * | | | Move member event processing and changelog fixAndrew Morgan2019-02-181-9/+7
| | | | |
| * | | | Membership events are done laterAndrew Morgan2019-02-181-12/+20
| | | | |
| * | | | Transfer bans on room upgradeAndrew Morgan2019-02-181-0/+14
| | | | |
* | | | | Merge pull request #4632 from matrix-org/erikj/basic_sentryErik Johnston2019-02-183-1/+60
|\ \ \ \ \ | | | | | | | | | | | | Add basic optional sentry.io integration
| * | | | | Fixup error handling and messageErik Johnston2019-02-181-5/+6
| | | | | |
| * | | | | FixupErik Johnston2019-02-181-1/+1
| | | | | |
| * | | | | Fixup comments and add warningErik Johnston2019-02-132-5/+10
| | | | | |
| * | | | | CommentsErik Johnston2019-02-121-0/+8
| | | | | |
| * | | | | Raise an appropriate error message if sentry_sdk missingErik Johnston2019-02-121-1/+15
| | | | | |
| * | | | | Basic sentry integrationErik Johnston2019-02-123-0/+31
| | | | | |
* | | | | | Merge pull request #4666 from matrix-org/erikj/register_login_splitErik Johnston2019-02-188-193/+419
|\ \ \ \ \ \ | | |_|/ / / | |/| | | | Split out registration to worker
| * | | | | Move register_device into handlerErik Johnston2019-02-184-102/+74
| | | | | |
| * | | | | Update docsErik Johnston2019-02-181-1/+1
| | | | | |
| * | | | | Split out registration to workerErik Johnston2019-02-187-147/+401
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows registration to be handled by a worker, though the actual write to the database still happens on master. Note: due to the in-memory session map all registration requests must be handled by the same worker.
* | | | | | Merge pull request #4668 from matrix-org/erikj/catch_exceptionsErik Johnston2019-02-181-5/+9
|\ \ \ \ \ \ | | | | | | | | | | | | | | Correctly handle HttpResponseException when handling device updates
| * | | | | | pep8Erik Johnston2019-02-181-1/+5
| | | | | | |
| * | | | | | Correctly handle HttpResponseExceptionErik Johnston2019-02-181-4/+4
| | |_|_|_|/ | |/| | | |
* | | | | | Merge pull request #4669 from matrix-org/erikj/log_exceptionErik Johnston2019-02-181-3/+3
|\ \ \ \ \ \ | | | | | | | | | | | | | | Cleanup top level request exception logging
| * | | | | | Cleanup top level request exception loggingErik Johnston2019-02-181-3/+3
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Firstly, we always logged that the request was being handled via `JsonResource._async_render`, so we change that to use the servlet name we add to the request. Secondly, we pass the exception information to the logger rather than formatting it manually. This makes it consistent with other exception logging, allwoing logging hooks and formatters to access the exception information.
* | | | | | Merge pull request #4651 from matrix-org/matthew/well-known-corsErik Johnston2019-02-181-0/+3
|\ \ \ \ \ \ | | | | | | | | | | | | | | set CORS on .well-known URI to unbreak modular
| * | | | | | FixupErik Johnston2019-02-181-0/+1
| | | | | | |
| * | | | | | fix missig importMatthew Hodgson2019-02-181-0/+1
| | | | | | |
| * | | | | | tabsMatthew Hodgson2019-02-141-1/+1
| | | | | | |
| * | | | | | set CORS on .well-known URI to unbreak modularMatthew Hodgson2019-02-141-0/+1
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | | | | | | | otherwise a riot/web running on foo.riot.im can't query the .well-known on foo.modular.im...
* | | | | | Merge pull request #4667 from matrix-org/erikj/fix_revoke_guest_access_workersErik Johnston2019-02-182-1/+3
|\ \ \ \ \ \ | |_|/ / / / |/| | | | | Fix kicking guest users in worker mode
| * | | | | Fix kicking guest users in worker modeErik Johnston2019-02-182-1/+3
| | |/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When guest_access changes from allowed to forbidden all local guest users should be kicked from the room. This did not happen when revocation was received from federation on a worker. Presumably broken in #4141
* | | | | Merge pull request #4643 from matrix-org/erikj/catch_exceptionsErik Johnston2019-02-184-8/+19
|\ \ \ \ \ | |/ / / / |/| | | | Correctly handle RequestSendFailed exceptions
| * | | | Correctly handle RequestSendFailed exceptionsErik Johnston2019-02-144-8/+19
| | |_|/ | |/| | | | | | | | | | This mainly reduces the number of exceptions we log.
* | | | config: Remove a repeated word from a logger warningJuuso "Linda" Lapinlampi2019-02-151-1/+1
| | | | | | | | | | | | | | | | The warning for missing macaroon_secret_key was "missing missing".
* | | | Merge pull request #4647 from matrix-org/erikj/add_room_publishing_rulesErik Johnston2019-02-153-31/+193
|\ \ \ \ | |_|/ / |/| | | Add configurable room list publishing rules
| * | | Move defaults up into codeErik Johnston2019-02-151-22/+44
| | | |
| * | | Hoist up checks to reduce overall workErik Johnston2019-02-151-17/+15
| | | |
| * | | Fixup commentsErik Johnston2019-02-151-8/+27
| | | |
| * | | Clarify commentsErik Johnston2019-02-141-3/+3
| | | |
| * | | Clarify and fix behaviour when there are multiple aliasesErik Johnston2019-02-141-6/+18
| | | |
| * | | Only fetch aliases when publishing roomsErik Johnston2019-02-141-15/+15
| | | |
| * | | Fixup commentsErik Johnston2019-02-141-8/+15
| | | |
| * | | Add configurable room list publishing rulesErik Johnston2019-02-143-22/+126
| |/ / | | | | | | | | | | | | This allows specifying who and what is allowed to be published onto the public room list
* | | Merge branch 'master' into developRichard van der Hoff2019-02-143-7/+16
|\ \ \
| * | | 0.99.1.1 v0.99.1.1Richard van der Hoff2019-02-141-1/+1
| | | |
| * | | Fix errors in acme provisioning (#4648)Richard van der Hoff2019-02-142-6/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Better logging for errors on startup * Fix "TypeError: '>' not supported" when starting without an existing certificate * Fix a bug where an existing certificate would be reprovisoned every day
* | | | Merge branch 'master' into developRichard van der Hoff2019-02-141-2/+2
|\| | | | |/ / |/| |
| * | 0.99.1 v0.99.1Richard van der Hoff2019-02-141-2/+2
| | |
| * | 0.99.1rc2 v0.99.1rc2Richard van der Hoff2019-02-131-1/+1
| | |
* | | Merge pull request #4450 from 14mRh4X0r/fix-dependency-messageRichard van der Hoff2019-02-131-2/+5
|\ \ \ | | | | | | | | Fix error message for optional dependencies
| * | | Fix error message for optional dependenciesWillem Mulder2019-01-231-2/+5
| | | | | | | | | | | | | | | | Signed-off-by: Willem Mulder <willemmaster@hotmail.com>
* | | | Merge remote-tracking branch 'origin/release-v0.99.1' into developRichard van der Hoff2019-02-133-22/+34
|\ \ \ \ | | |/ / | |/| |
| * | | Update synapse/app/_base.pyErik Johnston2019-02-131-1/+1
| | | | | | | | | | | | Co-Authored-By: richvdh <1389908+richvdh@users.noreply.github.com>
| * | | Use `listen_tcp` for the replication listenerRichard van der Hoff2019-02-131-7/+7
| | | | | | | | | | | | | | | | | | | | Fixes the "can't listen on 0.0.0.0" error. Also makes it more consistent with what we do elsewhere.
| * | | Improve logging around listening servicesRichard van der Hoff2019-02-132-11/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I wanted to bring listen_tcp into line with listen_ssl in terms of returning a list of ports, and wanted to check that was a safe thing to do - hence the logging in `refresh_certificate`. Also, pull the 'Synapse now listening' message up to homeserver.py, because it was being duplicated everywhere else.
| * | | Special-case the default bind_addresses for metrics listenerRichard van der Hoff2019-02-132-4/+7
| | | | | | | | | | | | | | | | | | | | turns out it doesn't really support ipv6, so let's hack around that by only listening on ipv4 by default.
* | | | Run `black` on user directory code (#4635)Amber Brown2019-02-132-131/+116
|/ / /
* | | Update changelog and versionErik Johnston2019-02-121-1/+1
| | |
* | | Merge pull request #4608 from matrix-org/anoa/acls_room_upgradeErik Johnston2019-02-121-0/+1
|\ \ \ | |_|/ |/| | Transfer Server ACLs on room upgrade
| * | Transfer Server ACLs on room upgradeAndrew Morgan2019-02-111-0/+1
| | |
* | | Merge pull request #4627 from matrix-org/erikj/user_ips_analyzeErik Johnston2019-02-122-3/+31
|\ \ \ | | | | | | | | Analyze user_ips before running deduplication
| * | | Fix pep8Erik Johnston2019-02-121-1/+1
| | | |
| * | | Analyze user_ips before running deduplicationErik Johnston2019-02-122-3/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Due to the table locks taken out by the naive upsert, the table statistics may be out of date. During deduplication it is important that the correct index is used as otherwise a full table scan may be incorrectly used, which can end up thrashing the database badly.
* | | | Merge pull request #4626 from matrix-org/erikj/fixup_user_ips_dedupeErik Johnston2019-02-121-3/+60
|\ \ \ \ | | | | | | | | | | Reduce user_ips bloat during dedupe background update
| * | | | Reduce user_ips bloat during dedupe background updateErik Johnston2019-02-121-3/+60
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The background update to remove duplicate rows naively deleted and reinserted the duplicates. For large tables with a large number of duplicates this causes a lot of bloat (with postgres), as the inserted rows are appended to the table, since deleted rows will not be overwritten until a VACUUM has happened. This should hopefully also help ensure that the query in the last batch uses the correct index, as inserting a large number of new rows without analyzing will upset the query planner.
* | | | Merge pull request #4625 from matrix-org/rav/fix_generate_config_warningsErik Johnston2019-02-121-7/+2
|\ \ \ \ | | | | | | | | | | fix self-signed cert notice from generate-config
| * | | | fix self-signed cert notice from generate-configRichard van der Hoff2019-02-121-7/+2
| |/ / / | | | | | | | | | | | | fixes #4620
* | | | Disable TLS by default (#4614)Richard van der Hoff2019-02-122-27/+27
| | | |
* | | | Fix error when loading cert if tls is disabled (#4618)Richard van der Hoff2019-02-122-17/+45
|/ / / | | | | | | | | | | | | | | | If TLS is disabled, it should not be an error if no cert is given. Fixes #4554.
* | | fix testsRichard van der Hoff2019-02-111-1/+1
| | |
* | | Infer no_tls from presence of TLS listenersRichard van der Hoff2019-02-115-18/+24
| | | | | | | | | | | | | | | 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.
* | | Merge branch 'rav/no_create_server_contexts_if_no_tls' into rav/tls_cert/workRichard van der Hoff2019-02-112-3/+6
|\ \ \
| * | | Don't create server contexts when TLS is disabledRichard van der Hoff2019-02-112-3/+6
| | | | | | | | | | | | | | | | we aren't going to use them anyway.
* | | | Merge branch 'rav/tls_config_logging_fixes' into rav/tls_cert/workRichard van der Hoff2019-02-112-22/+38
|\| | |
| * | | Logging improvements around TLS certsRichard van der Hoff2019-02-112-22/+38
| | | | | | | | | | | | | | | | | | | | Log which file we're reading keys and certs from, and refactor the code a bit in preparation for other work
* | | | Fail cleanly if listener config lacks a 'port'Richard van der Hoff2019-02-111-0/+5
|/ / / | | | | | | | | | ... otherwise we would fail with a mysterious KeyError or something later.
* | | Move ClientTLSOptionsFactory init out of refresh_certificates (#4611)Richard van der Hoff2019-02-113-6/+7
| | | | | | | | | | | | | | | It's nothing to do with refreshing the certificates. No idea why it was here.
* | | Merge pull request #4580 from matrix-org/uhoreg/e2e_backup_add_updatingErik Johnston2019-02-113-5/+124
|\ \ \ | | | | | | | | add updating of backup versions
| * | | make sure version is in body and wrap in linearizer queueHubert Chathi2019-02-082-12/+28
| | | | | | | | | | | | | | | | also add tests
| * | | re-try to make isort happyHubert Chathi2019-02-061-1/+1
| | | |
| * | | fix import to make isort happyHubert Chathi2019-02-061-2/+7
| | | |
| * | | add new endpoint to update backup versionsHubert Chathi2019-02-063-1/+87
| | | |
| * | | return proper error codes for some 404sHubert Chathi2019-02-061-4/+16
| | | |
* | | | Clean up default listener configuration (#4586)Richard van der Hoff2019-02-111-48/+81
| |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | Rearrange the comments to try to clarify them, and expand on what some of it means. Use a sensible default 'bind_addresses' setting. For the insecure port, only bind to localhost, and enable x_forwarded, since apparently it's for use behind a load-balancer.
* | | ACME Reprovisioning (#4522)Amber Brown2019-02-114-25/+88
| | |
* | | Be tolerant of blank TLS fingerprints config (#4589)Amber Brown2019-02-111-1/+5
| | |
* | | Merge pull request #4420 from matrix-org/jaywink/openid-listenerErik Johnston2019-02-115-45/+130
|\ \ \ | | | | | | | | New listener resource for the federation API "openid/userinfo" endpoint
| * | | Fix flake8 issuesJason Robinson2019-01-232-2/+5
| | | | | | | | | | | | | | | | Signed-off-by: Jason Robinson <jasonr@matrix.org>
| * | | Remove openid resource from default configJason Robinson2019-01-231-4/+13
| | | | | | | | | | | | | | | | | | | | | | | | Instead document it commented out. Signed-off-by: Jason Robinson <jasonr@matrix.org>
| * | | Document `servlet_groups` parametersJason Robinson2019-01-231-0/+23
| | | | | | | | | | | | | | | | Signed-off-by: Jason Robinson <jasonr@matrix.org>
| * | | Split federation OpenID userinfo endpoint out of the federation resourceJason Robinson2019-01-234-46/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the OpenID userinfo endpoint to be active even if the federation resource is not active. The OpenID userinfo endpoint is called by integration managers to verify user actions using the client API OpenID access token. Without this verification, the integration manager cannot know that the access token is valid. The OpenID userinfo endpoint will be loaded in the case that either "federation" or "openid" resource is defined. The new "openid" resource is defaulted to active in default configuration. Signed-off-by: Jason Robinson <jasonr@matrix.org>
| * | | Make SynapseHomeServer _http_listener use self.get_reactor()Jason Robinson2019-01-231-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For all the homeserver classes, only the FrontendProxyServer passes its reactor when doing the http listen. Looking at previous PR's looks like this was introduced to make it possible to write a test, otherwise when you try to run a test with the test homeserver it tries to do a real bind to a port. Passing the reactor that the homeserver is instantiated with should probably be the right thing to do anyway? Signed-off-by: Jason Robinson <jasonr@matrix.org>
| * | | Make FederationReaderServer _http_listen use self.get_reactor()Jason Robinson2019-01-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For all the homeserver classes, only the FrontendProxyServer passes its reactor when doing the http listen. Looking at previous PR's looks like this was introduced to make it possible to write a test, otherwise when you try to run a test with the test homeserver it tries to do a real bind to a port. Passing the reactor that the homeserver is instantiated with should probably be the right thing to do anyway? Signed-off-by: Jason Robinson <jasonr@matrix.org>
| * | | Add parameterized Python module to test dependenciesJason Robinson2019-01-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Allows running parameterized tests. BSD license. Signed-off-by: Jason Robinson <jasonr@matrix.org>
* | | | Allow "unavailable" presence status for /sync (#4592)Valentin Anger2019-02-082-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Allow "unavailable" presence status for /sync Closes #3772, closes #3779 Signed-off-by: Valentin Anger <valentin.an.1999@gmail.com> * Add changelog for PR 4592
* | | | Fix 'no unique or exclusion constraint' error (#4591)Richard van der Hoff2019-02-081-6/+21
| | | | | | | | | | | | | | | | | | | | Add more tables to the list of tables which need a background update to complete before we can upsert into them, which fixes a race against the background updates.
* | | | Deduplicate some code in synapse.app (#4567)Amber Brown2019-02-0813-158/+82
| | | |
* | | | Merge branch 'master' into developRichard van der Hoff2019-02-052-4/+4
|\ \ \ \
| * | | | v0.99.0 v0.99.0Richard van der Hoff2019-02-051-1/+1
| | | | |
| * | | | Fix default ACME config for py2 (#4564)Richard van der Hoff2019-02-051-1/+1
| | | | | | | | | | | | | | | Fixes #4559
| * | | | fix typo in config comments (#4557)Richard van der Hoff2019-02-051-2/+2
| | | | |
| * | | | 0.99.0rc4 v0.99.0rc4Richard van der Hoff2019-02-011-1/+1
| | | | |
* | | | | Filter user directory state query to a subset of state events (#4462)Andrew Morgan2019-02-051-4/+12
| |_|/ / |/| | | | | | | | | | | | | | | | | | | * Filter user directory state query to a subset of state events * Add changelog
* | | | Merge pull request #4546 from ↵Richard van der Hoff2019-02-011-2/+15
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | matrix-org/rav/silence_critical_error_from_federation Fix noisy "twisted.internet.task.TaskStopped" errors in logs
| * | | | Fix noisy "twisted.internet.task.TaskStopped" errors in logsRichard van der Hoff2019-02-011-2/+15
| | | | | | | | | | | | | | | | | | | | Fixes #4003
* | | | | Merge remote-tracking branch 'origin/release-v0.99.0' into developRichard van der Hoff2019-02-011-20/+7
|\ \ \ \ \ | | |/ / / | |/| | |
| * | | | Merge pull request #4544 from matrix-org/rav/skip_invalid_well_knownRichard van der Hoff2019-02-011-19/+6
| |\ \ \ \ | | | | | | | | | | | | Treat an invalid .well-known the same as an absent one
| | * | | | Treat an invalid .well-known the same as an absent oneRichard van der Hoff2019-02-011-19/+6
| | | | | | | | | | | | | | | | | | | | | | | | ... basically, carry on and fall back to SRV etc.
| * | | | | Fix b'ab' noise in logsRichard van der Hoff2019-02-011-1/+1
| |/ / / /
* | | | | Merge branch 'release-v0.99.0' into developRichard van der Hoff2019-02-011-22/+63
|\| | | |
| * | | | Cache failures to parse .well-knownRichard van der Hoff2019-02-011-13/+43
| | | | | | | | | | | | | | | | | | | | Also add a Measure block around the .well-known fetch
| * | | | better logging for federation connectionsRichard van der Hoff2019-01-311-5/+16
| | | | |
| * | | | Update federation routing logic to check .well-known before SRVRichard van der Hoff2019-01-311-5/+5
| |/ / /
* | | | Merge pull request #4530 from matrix-org/anoa/room_upgrade_federatableAndrew Morgan2019-01-312-11/+37
|\ \ \ \ | | | | | | | | | | Copy over non-federatable trait on room upgrade
| * | | | Raise an exception instead of returning NoneAndrew Morgan2019-01-311-2/+9
| | | | |
| * | | | New function for getting room's create eventAndrew Morgan2019-01-312-18/+21
| | | | |
| * | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2019-01-315-3/+34
| |\ \ \ \ | | | | | | | | | | | | | | | | | | anoa/room_upgrade_federatable
| * | | | | lintAndrew Morgan2019-01-311-2/+4
| | | | | |
| * | | | | Copy over non-federatable trait on room upgradeAndrew Morgan2019-01-301-0/+14
| | | | | |
* | | | | | Merge branch 'release-v0.99.0' into developRichard van der Hoff2019-01-313-8/+44
|\ \ \ \ \ \ | |_|/ / / / |/| | / / / | | |/ / / | |/| | |
| * | | | v0.99.0rc3 v0.99.0rc3Richard van der Hoff2019-01-311-1/+1
| | | | |
| * | | | Add some debug for membership syncing issues (#4538)Richard van der Hoff2019-01-311-2/+11
| | | | | | | | | | | | | | | I can't figure out what's going on with #4422 and #4436; perhaps this will help.
| * | | | Fix infinite loop when an event is redacted in a v3 room (#4535)Richard van der Hoff2019-01-311-5/+32
| | | | |
* | | | | Reject large transactions on federation (#4513)Andrew Morgan2019-01-311-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Reject large transactions on federation * Add changelog * lint * Simplify large transaction handling
* | | | | Merge remote-tracking branch 'origin/release-v0.99.0' into developRichard van der Hoff2019-01-302-2/+2
|\| | | |
| * | | | v0.99.0rc2 v0.99.0rc2Richard van der Hoff2019-01-301-1/+1
| | | | |
| * | | | Merge remote-tracking branch 'origin/develop' into release-v0.99.0Richard van der Hoff2019-01-301-1/+13
| |\ \ \ \
| * | | | | Update constants.pyNeil Johnson2019-01-301-1/+1
| | | | | | | | | | | | | | | | | | remove trailing ,
| * | | | | 0.99.0rc1 v0.99.0rc1Richard van der Hoff2019-01-301-1/+1
| | |/ / / | |/| | |
* | | | | by default include m.room.encryption on invites (#3902)Matthew Hodgson2019-01-302-0/+3
| |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | * by default include m.room.encryption on invites * fix constant * changelog
* | | | Fix remote invite rejections not comming down syncErik Johnston2019-01-301-1/+13
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | This was broken in PR #4405, commit 886e5ac, where we changed remote rejections to be outliers. The fix is to explicitly add the leave event in when we know its an out of band invite. We can't always add the event as if the server is/was in the room there might be more events to send down the sync than just the leave.
* | | Merge pull request #4472 from matrix-org/neilj/room_capabilitiesErik Johnston2019-01-303-0/+74
|\ \ \ | | | | | | | | Server capabilities support
| * \ \ Merge branch 'neilj/room_capabilities' of github.com:matrix-org/synapse into ↵Neil Johnson2019-01-3053-542/+1641
| |\ \ \ | | | | | | | | | | | | | | | neilj/room_capabilities
| | * \ \ Merge branch 'develop' into neilj/room_capabilitiesNeil Johnson2019-01-3053-542/+1641
| | |\ \ \
| * | | | | isortNeil Johnson2019-01-301-2/+1
| |/ / / /
| * | | | define room dispositions for use in exposing room capabilitiesNeil Johnson2019-01-301-0/+5
| | | | |
| * | | | formatting and use constants where availableNeil Johnson2019-01-301-19/+17
| | | | |
| * | | | Populate default room version from ConstantsNeil Johnson2019-01-301-1/+2
| | | | |
| * | | | reflect that rooms v3 is a stable room versionNeil Johnson2019-01-302-0/+2
| | | | |
| * | | | rework format of change password capabilityNeil Johnson2019-01-291-1/+3
| | | | |
| * | | | support change_password in capabilities end-pointNeil Johnson2019-01-291-2/+12
| | | | |
| * | | | enforce auth for capabilities endpointNeil Johnson2019-01-291-10/+17
| | | | |
| * | | | register capabilities servletNeil Johnson2019-01-291-0/+2
| | | | |
| * | | | backout v3Neil Johnson2019-01-252-2/+0
| | | | |
| * | | | Support room version capabilities in CS API (MSC1804)Neil Johnson2019-01-251-0/+49
| | | | |
| * | | | track unstable room v3Neil Johnson2019-01-251-0/+2
| | | | |
* | | | | Fix replication for room v3 (#4523)Erik Johnston2019-01-301-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Fix replication for room v3 We were not correctly quoting the path fragments over http replication, which meant that it exploded when the event IDs had a slash in them * Newsfile
* | | | | ACME config cleanups (#4525)Richard van der Hoff2019-01-304-60/+114
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Handle listening for ACME requests on IPv6 addresses the weird url-but-not-actually-a-url-string doesn't handle IPv6 addresses without extra quoting. Building a string which you are about to parse again seems like a weird choice. Let's just use listenTCP, which is consistent with what we do elsewhere. * Clean up the default ACME config make it look a bit more consistent with everything else, and tweak the defaults to listen on port 80. * newsfile
* | | | | Raise ConfigError insteadErik Johnston2019-01-301-1/+3
| | | | |
* | | | | _listener_http should return a listErik Johnston2019-01-301-1/+1
| | | | |
* | | | | Merge pull request #4521 from matrix-org/rav/fed_routing/cleanupsRichard van der Hoff2019-01-301-9/+11
|\ \ \ \ \ | | | | | | | | | | | | Tiny .well-known fixes
| * | | | | fix exception textRichard van der Hoff2019-01-301-1/+1
| | | | | |
| * | | | | Also jitter the invalid cache periodRichard van der Hoff2019-01-301-9/+11
| | | | | |
* | | | | | Follow redirects on .well-known (#4520)Richard van der Hoff2019-01-301-2/+4
| | | | | |
* | | | | | SIGHUP for TLS cert reloading (#4495)Amber Brown2019-01-303-20/+79
|/ / / / /
* | | | | Add a caching layer to .well-known responses (#4516)Richard van der Hoff2019-01-302-2/+249
| | | | |
* | | | | Fix flake8 (#4519)Amber Brown2019-01-307-92/+92
| |/ / / |/| | |
* | | | Merge pull request #4486 from xperimental/workaround-4216Richard van der Hoff2019-01-301-1/+4
|\ \ \ \ | | | | | | | | | | Implement workaround for login error.
| * | | | Implement workaround for login error.Robert Jacob2019-01-301-1/+4
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Robert Jacob <xperimental@solidproject.de>
* | | | | No vdh tests!Erik Johnston2019-01-291-2/+1
| | | | |
* | | | | Enable room version v3Erik Johnston2019-01-294-4/+14
| | | | |
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-298-46/+76
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | erikj/redactions_eiah
| * \ \ \ \ Merge pull request #4514 from matrix-org/erikj/remove_event_idErik Johnston2019-01-298-47/+82
| |\ \ \ \ \ | | | | | | | | | | | | | | Remove usages of event ID's domain
| | * | | | | Update commentErik Johnston2019-01-291-3/+3
| | | | | | |
| | * | | | | check event format version not room versionErik Johnston2019-01-291-2/+2
| | | | | | |
| | * | | | | Don't assert an event must have an event IDErik Johnston2019-01-291-2/+3
| | | | | | |
| | * | | | | Only check event ID domain for signatures for V1 eventsErik Johnston2019-01-293-31/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In future version events won't have an event ID, so we won't be able to do this check.
| | * | | | | Use event origin for filtering incoming eventsErik Johnston2019-01-291-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We only process events sent to us from a server if the event ID matches the server, to help guard against federation storms. We replace this with a check against the event origin.
| | * | | | | Use snder and not event ID domain to check if oursErik Johnston2019-01-292-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The transaction queue only sends out events that we generate. This was done by checking domain of event ID, but that can no longer be used. Instead, we may as well use the sender field.
| | * | | | | Remove event ID usage when checking if new roomErik Johnston2019-01-291-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The event ID is changing, so we can no longer get the domain from it. On the other hand, the check is unnecessary.
| | * | | | | Only check event IDs domain signed event for V1 and V2Erik Johnston2019-01-291-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Since newer versions of events don't have the same format for event ID.
* | | | | | | Fixup commentErik Johnston2019-01-291-2/+2
| | | | | | |
* | | | | | | kill vdh test some moreErik Johnston2019-01-291-2/+1
| | | | | | |
* | | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-2917-208/+503
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | erikj/redactions_eiah
| * | | | | | Merge pull request #4483 from matrix-org/erikj/event_v2Erik Johnston2019-01-294-19/+108
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Implement event format V2
| | * | | | | | Implement event format v2Erik Johnston2019-01-294-19/+108
| | | | | | | |
| * | | | | | | Merge pull request #4512 from matrix-org/anoa/consent_dirAndrew Morgan2019-01-292-11/+14
| |\ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | | | Check consent dir path on startup
| | * | | | | | Check consent dir path on startupAndrew Morgan2019-01-292-11/+14
| | | | | | | |
| * | | | | | | Relax requirement for a content-type on .well-known (#4511)Richard van der Hoff2019-01-291-20/+13
| | | | | | | |
| * | | | | | | Merge pull request #4498 from matrix-org/travis/fix-docs-public_baseurlTravis Ralston2019-01-291-1/+1
| |\ \ \ \ \ \ \ | | |/ / / / / / | |/| | | | | | Don't recommend :8448 to people on public_baseurl
| | * | | | | | Don't recommend :8448 to people on public_baseurlTravis Ralston2019-01-281-1/+1
| | | | | | | |
| * | | | | | | Do not generate self-signed TLS certificates by default. (#4509)Amber Brown2019-01-291-43/+18
| | |/ / / / / | |/| | | | |
| * | | | | | Merge pull request #4481 from matrix-org/erikj/event_builderErik Johnston2019-01-297-133/+260
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Refactor event building into EventBuilder
| | * | | | | | Correctly set context.app_serviceErik Johnston2019-01-291-0/+2
| | | | | | | |
| | * | | | | | Don't set event_id twiceErik Johnston2019-01-291-2/+0
| | | | | | | |
| | * | | | | | Remove dead functionErik Johnston2019-01-291-11/+0
| | | | | | | |
| | * | | | | | Replace usage of builder.user_id with builder.senderErik Johnston2019-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `.user_id` is proxed to `.sender` in FrozenEvent, so this has no functional change
| | * | | | | | Refactor event building into EventBuilderErik Johnston2019-01-295-112/+254
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is so that everything is done in one place, making it easier to change the event format based on room version
| | * | | | | | Make add_hashes_and_signatures operate on dictsErik Johnston2019-01-291-10/+6
| | | | | | | |
| * | | | | | | Implement MSC1708 (.well-known lookups for server routing) (#4489)Richard van der Hoff2019-01-291-4/+110
| | | | | | | |
| * | | | | | | Merge pull request #4510 from matrix-org/erikj/fixup_compute_event_signatureErik Johnston2019-01-292-2/+2
| |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Fixup calls to `comput_event_signature`
| | * | | | | | | Fixup calls to `comput_event_signature`Erik Johnston2019-01-292-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We currently pass FrozenEvent instead of `dict` to `compute_event_signature`, which works by accident due to `dict(event)` producing the correct result. This fixes PR #4493 commit 855a151
* | | | | | | | | Update synapse/storage/events_worker.pyErik Johnston2019-01-291-1/+1
| | | | | | | | |
* | | | | | | | | Check redaction state when event is pulled out of the databaseErik Johnston2019-01-291-0/+13
| | | | | | | | |
* | | | | | | | | Fix typoErik Johnston2019-01-291-1/+1
| | | | | | | | |
* | | | | | | | | Remove unused argErik Johnston2019-01-291-2/+1
| | | | | | | | |
* | | | | | | | | Drop vdh supportErik Johnston2019-01-294-6/+2
| | | | | | | | |
* | | | | | | | | Add docstringErik Johnston2019-01-291-0/+12
| | | | | | | | |
* | | | | | | | | Update synapse/storage/events_worker.pyRichard van der Hoff2019-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Co-Authored-By: erikjohnston <erikj@jki.re>
* | | | | | | | | Finish comment...Erik Johnston2019-01-291-1/+1
| | | | | | | | |
* | | | | | | | | Implement rechecking of redactionsErik Johnston2019-01-295-10/+53
| | | | | | | | |
* | | | | | | | | Add RoomVersions.V3 constant, without enabling itErik Johnston2019-01-291-0/+1
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We add the constant, but don't add it to the known room versions. This lets us start adding V3 logic, but the servers will never join or create V3 rooms
* | | | | | | | Merge pull request #4496 from matrix-org/erikj/invite_fallbackErik Johnston2019-01-292-14/+89
|\ \ \ \ \ \ \ \ | |/ / / / / / / |/| | | | | | | Implement fallback for V2 invite API
| * | | | | | | Implement fallback for V2 invite APIErik Johnston2019-01-282-14/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the room version is either 1 or 2 then a server should retry failed `/v2/invite` requests with the v1 API
* | | | | | | | Make linearizer more quiet (#4507)Amber Brown2019-01-291-5/+5
| |/ / / / / / |/| | | | | |
* | | | | | | Merge pull request #4494 from matrix-org/erikj/fixup_event_validatorErik Johnston2019-01-293-26/+45
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Split up event validation between event and builder
| * | | | | | | Remove duplicate checksErik Johnston2019-01-291-14/+0
| | | | | | | |
| * | | | | | | Fix up error messagesErik Johnston2019-01-291-2/+2
| | | | | | | |
| * | | | | | | Fold validate into validate_newErik Johnston2019-01-291-16/+11
| | | | | | | |
| * | | | | | | Split up event validation between event and builderErik Johnston2019-01-283-23/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The validator was being run on the EventBuilder objects, and so the validator only checked a subset of fields. With the upcoming EventBuilder refactor even fewer fields will be there to validate. To get around this we split the validation into those that can be run against an EventBuilder and those run against a fully fledged event.
* | | | | | | | Fix receiving events from federation via a workerErik Johnston2019-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bug was introduced in PR #4470, commit 678a92cb56d547dcadffa723e29b4855a27d0901
* | | | | | | | Fix typo in upserts code (#4505)Amber Brown2019-01-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fix obvious problem :| * changelog
* | | | | | | | Merge pull request #4493 from matrix-org/erikj/refactor_event_signingErik Johnston2019-01-292-42/+104
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Refactor event signing to work on dicts
| * | | | | | | | Refactor event signing to work on dictsErik Johnston2019-01-282-42/+104
| |/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is in preparation for making EventBuilder format agnostic, which means event signing should be done against the event dict rather than the EventBuilder object.
* | | | | | | | Merge pull request #4482 from matrix-org/erikj/event_auth_room_versionErik Johnston2019-01-288-25/+56
|\ \ \ \ \ \ \ \ | |_|_|/ / / / / |/| | | | | | | Pass through room version to event auth
| * | | | | | | Correctly use default room version if none is setErik Johnston2019-01-281-2/+2
| | | | | | | |
| * | | | | | | Pass through room version to event authErik Johnston2019-01-258-24/+55
| | |_|/ / / / | |/| | | | |
* | | | | | | Fix worker TLS (#4492)Amber Brown2019-01-287-48/+48
| |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * load cert * changelog * fix
* | | | | | Fix UPSERTs on SQLite 3.24+ (#4477)Amber Brown2019-01-283-12/+20
| | | | | |
* | | | | | Change return syntax in doc stringAndrew Morgan2019-01-281-1/+1
| | | | | |
* | | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2019-01-2815-107/+342
|\ \ \ \ \ \ | | |/ / / / | |/| | | | | | | | | | anoa/dm_room_upgrade
| * | | | | docstrings for _RoutingResultRichard van der Hoff2019-01-281-0/+36
| | | | | |
| * | | | | Handle IP literals explicitlyRichard van der Hoff2019-01-281-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | We don't want to be doing .well-known lookups on these guys.
| * | | | | MatrixFederationAgent: factor out routing logicRichard van der Hoff2019-01-281-18/+62
| | | | | | | | | | | | | | | | | | | | | | | | This is going to get too big and unmanageable.
| * | | | | Fix idna and ipv6 literal handling in MatrixFederationAgent (#4487)Richard van der Hoff2019-01-281-11/+12
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Turns out that the library does a better job of parsing URIs than our reinvented wheel. Who knew. There are two things going on here. The first is that, unlike parse_server_name, URI.fromBytes will strip off square brackets from IPv6 literals, which means that it is valid input to ClientTLSOptionsFactory and HostnameEndpoint. The second is that we stay in `bytes` throughout (except for the argument to ClientTLSOptionsFactory), which avoids the weirdness of (sometimes) ending up with idna-encoded values being held in `unicode` variables. TBH it probably would have been ok but it made the tests fragile.
| * | | | Merge pull request #4470 from matrix-org/erikj/require_format_versionErik Johnston2019-01-2511-82/+205
| |\ \ \ \ | | | | | | | | | | | | Require event format version to parse or create events
| | * | | | Replace missed usages of FrozenEventErik Johnston2019-01-253-10/+14
| | | | | |
| | * | | | Require event format version to parse or create eventsErik Johnston2019-01-258-72/+191
| | | | | |
| * | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-257-6/+99
| |\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | erikj/sqlite_native_upsert
| | * | | | | Fix quoting for allowed_local_3pids example config (#4476)Richard van der Hoff2019-01-251-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If you use double-quotes here, you have to escape your backslashes. It's much easier with single-quotes. (Note that the existing double-backslashes are already interpreted by python's """ parsing.)
| | * | | | | Fix Host header sent by MatrixFederationAgent (#4468)Richard van der Hoff2019-01-252-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the Host header logic down here so that (a) it is used if we reuse the agent elsewhere, and (b) we can mess about with it with .well-known.