summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 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.
* 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.
| | * | | | Don't require sqlite3 when using postgres (#4466)Andrew Morgan2019-01-251-2/+1
| | | | | |
| * | | | | Disable native upserts for sqlite, as they don't workErik Johnston2019-01-251-3/+7
| | |/ / / | |/| | |
* | | | | Reuse predecessor methodAndrew Morgan2019-01-281-12/+8
| | | | |
* | | | | FixesAndrew Morgan2019-01-251-39/+39
| | | | |
* | | | | Clean up direct_rooms accessAndrew Morgan2019-01-251-3/+3
| | | | |
* | | | | Use python magicAndrew Morgan2019-01-251-2/+1
| | | | |
* | | | | Destructure account data tuple before useAndrew Morgan2019-01-251-3/+3
| | | | |
* | | | | Remove unnecessary null checkAndrew Morgan2019-01-251-7/+6
| | | | |
* | | | | Move room_tag declaration to be closer to its useAndrew Morgan2019-01-251-4/+5
| | | | |
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2019-01-2538-409/+1140
|\ \ \ \ \ | | |/ / / | |/| | | | | | | | anoa/dm_room_upgrade
| * | | | Merge pull request #4415 from matrix-org/anoa/full_search_upgraded_roomsAndrew Morgan2019-01-253-0/+85
| |\ \ \ \ | | |/ / / | |/| | | Ability to search entire room history after upgrading room
| | * | | Merge branch 'anoa/full_search_upgraded_rooms' of ↵Andrew Morgan2019-01-243-3/+3
| | |\ \ \ | | | | | | | | | | | | | | | | | | github.com:matrix-org/synapse into anoa/full_search_upgraded_rooms
| | | * | | Apply suggestions from code reviewRichard van der Hoff2019-01-242-2/+2
| | | | | | | | | | | | | | | | | | Co-Authored-By: anoadragon453 <1342360+anoadragon453@users.noreply.github.com>
| | | * | | Update synapse/api/filtering.pyRichard van der Hoff2019-01-241-1/+1
| | | | | | | | | | | | | | | | | | Co-Authored-By: anoadragon453 <1342360+anoadragon453@users.noreply.github.com>
| | * | | | Remove redundant create event None checkAndrew Morgan2019-01-241-3/+0
| | |/ / /
| | * | | Do not return in a deferred functionAndrew Morgan2019-01-221-3/+3
| | | | |
| | * | | Ensure new filter is actually createdAndrew Morgan2019-01-222-2/+1
| | | | |
| | * | | Fix a bug with single-room search searching all roomsAndrew Morgan2019-01-223-35/+51
| | | | | | | | | | | | | | | | | | | | | | | | | * Create a new method for getting predecessor rooms * Remove formatting change
| | * | | Search for messages across predecessor roomsAndrew Morgan2019-01-183-0/+73
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Andrew Morgan <andrew@amorgan.xyz>
| * | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/msc_1813Erik Johnston2019-01-2530-364/+920
| |\ \ \ \
| | * \ \ \ Merge pull request #4448 from matrix-org/erikj/get_pdu_versionsErik Johnston2019-01-244-13/+66
| | |\ \ \ \ | | | | | | | | | | | | | | Add room_version param to get_pdu
| | | * | | | Review commentsErik Johnston2019-01-242-1/+7
| | | | | | |
| | | * | | | Add room_version param to get_pduErik Johnston2019-01-234-13/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we add new event format we'll need to know the event format or room version when parsing events.
| | * | | | | Merge pull request #4405 from matrix-org/erikj/fixup_rejecting_invitesErik Johnston2019-01-244-39/+34
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | Store rejected remote invite events as outliers
| | | * | | | | Update make_membership_event docsErik Johnston2019-01-241-2/+5
| | | | | | | |
| | | * | | | | Remove unecessary setting of outlier bitErik Johnston2019-01-241-2/+0
| | | | | | | |
| | | * | | | | Use term 'out of band membership' insteadErik Johnston2019-01-243-9/+10
| | | | | | | |
| | | * | | | | Clarify the invite flowsErik Johnston2019-01-233-7/+24
| | | | | | | |
| | | * | | | | Remove unnecessary '_sign_event'Erik Johnston2019-01-232-15/+8
| | | | | | | |
| | | * | | | | Store rejected remote invite events as outliersErik Johnston2019-01-233-38/+21
| | | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently they're stored as non-outliers even though the server isn't in the room, which can be problematic in places where the code assumes it has the state for all non outlier events. In particular, there is an edge case where persisting the leave event triggers a state resolution, which requires looking up the room version from state. Since the server doesn't have the state, this causes an exception to be thrown.
| | * | | | | Merge pull request #4437 from matrix-org/erikj/event_format_version_v2Erik Johnston2019-01-245-4/+48
| | |\ \ \ \ \ | | | |_|_|/ / | | |/| | | | Add support for persisting event format versions
| | * | | | | Merge pull request #4461 from matrix-org/anoa/room_dir_quick_fixAndrew Morgan2019-01-241-2/+12
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | Add a 60s timeout to filtered room directory queries
| | | * | | | | Change default timeout value from 0 to NoneAndrew Morgan2019-01-241-1/+1
| | | | | | | |
| | | * | | | | Use self.clock instead of datetimeAndrew Morgan2019-01-241-4/+3
| | | | | | | |
| | | * | | | | isortAndrew Morgan2019-01-241-1/+1
| | | | | | | |
| | | * | | | | lintAndrew Morgan2019-01-241-1/+2
| | | | | | | |
| | | * | | | | Time out filtered room dir queries after 60sAndrew Morgan2019-01-241-2/+12
| | | | | | | |
| | * | | | | | Merge pull request #4464 from matrix-org/rav/fix_srv_lookupRichard van der Hoff2019-01-241-1/+2
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | MatrixFederationAgent: Look up the right SRV record
| | | * | | | | | Look up the right SRV recordRichard van der Hoff2019-01-241-1/+2
| | | | | | | | |
| | * | | | | | | Fix UnboundLocalError in post_urlencoded_get_json (#4460)Richard van der Hoff2019-01-241-2/+3
| | |/ / / / / / | | | | | | | | | | | | | | | | This could cause exceptions if the id server returned 4xx responses.
| | * | | | | | Merge pull request #4435 from matrix-org/neilj/fix_threepid_auth_checkNeil Johnson2019-01-243-8/+12
| | |\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Neilj/fix threepid auth check
| | | * | | | | | move guard out of is_threepid_reserved and into register.pyNeil Johnson2019-01-222-6/+5
| | | | | | | | |
| | | * | | | | | Fix None guard in config.server.is_threepid_reservedNeil Johnson2019-01-223-7/+12
| | | | | | | | |
| | * | | | | | | Merge pull request #4458 from matrix-org/dbkr/public_baseurl_docNeil Johnson2019-01-241-1/+5
| | |\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Clarify docs for public_baseurl
| | | * | | | | | | Clarify docs for public_baseurlDavid Baker2019-01-241-1/+5
| | | | |/ / / / / | | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is leading to problems with people upgrading to clients that support MSC1730 because people have this misconfigured, so try to make the docs completely unambiguous.
| | * / | | | | | Fix UPSERT check (#4459)Amber Brown2019-01-241-5/+28
| | |/ / / / / /
| | * | | | | | Use native UPSERTs where possible (#4306)Amber Brown2019-01-247-30/+212
| | | | | | | |
| | * | | | | | Don't send IP addresses as SNI (#4452)Richard van der Hoff2019-01-241-3/+12
| | | |_|/ / / | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The problem here is that we have cut-and-pasted an impl from Twisted, and then failed to maintain it. It was fixed in Twisted in https://github.com/twisted/twisted/pull/1047/files; let's do the same here.
| | * | | | | Merge pull request #4445 from matrix-org/anoa/user_dir_develop_backportAndrew Morgan2019-01-231-0/+6
| | |\ \ \ \ \ | | | | | | | | | | | | | | | | Add metric for user dir current event stream position
| | | * | | | | Add metric for user dir current event stream positionAndrew Morgan2019-01-231-0/+6
| | | | | | | |
| | * | | | | | Merge pull request #4428 from matrix-org/rav/matrix_federation_agentRichard van der Hoff2019-01-234-232/+240
| | |\ \ \ \ \ \ | | | |/ / / / / | | |/| | | | | Move SRV magic into an Agent-like thing
| | | * | | | | put resolve_service in an objectRichard van der Hoff2019-01-222-63/+86
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this makes it easier to stub things out for tests.
| | | * | | | | Require that service_name be a byte stringRichard van der Hoff2019-01-221-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | it is only ever a bytes now, so let's enforce that.
| | | * | | | | Kill off matrix_federation_endpointRichard van der Hoff2019-01-222-145/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | this thing is now redundant.
| | | * | | | | Make MatrixFederationClient use MatrixFederationAgentRichard van der Hoff2019-01-221-27/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... instead of the matrix_federation_endpoint
| | | * | | | | MatrixFederationAgentRichard van der Hoff2019-01-222-0/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull the magic that is currently in matrix_federation_endpoint and friends into an agent-like thing
| | * | | | | | Fixup removal of duplicate `user_ips` rows (#4432)Erik Johnston2019-01-231-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Remove unnecessary ORDER BY clause * Add logging * Newsfile
| | * | | | | | Support ACME for certificate provisioning (#4384)Amber Brown2019-01-236-35/+296
| | | |_|_|_|/ | | |/| | | |
| * | | | | | Review commentsErik Johnston2019-01-242-2/+4
| | | | | | |
| * | | | | | Implement MSC 1813 - Add room version to make APIsErik Johnston2019-01-234-8/+40
| | |_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | We also implement `make_membership_event` converting the returned room version to an event format version.
| * | | | | isortErik Johnston2019-01-232-4/+2
| | | | | |
| * | | | | Add support for persisting event format versionsErik Johnston2019-01-235-4/+50
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently we only have the one event format version defined, but this adds the necessary infrastructure to persist and fetch the format versions alongside the events. We specify the format version rather than the room version as: 1. We don't necessarily know the room version, existing events may be either v1 or v2. 2. We'd need to be careful to prevent/handle correctly if different events in the same room reported to be of different versions, which sounds annoying.
| * | | | Merge pull request #4434 from matrix-org/erikj/fix_user_ips_dedupErik Johnston2019-01-221-26/+35
| |\ \ \ \ | | |_|/ / | |/| | | Fix bug when removing duplicate rows from user_ips
| | * | | Refactor to rewrite the SQL insteadErik Johnston2019-01-221-13/+16
| | | | |
| | * | | Don't shadow paramsErik Johnston2019-01-221-4/+3
| | | | |
| | * | | Fix bug when removing duplicate rows from user_ipsErik Johnston2019-01-221-13/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was caused by accidentally overwritting a `last_seen` variable in a for loop, causing the wrong value to be written to the progress table. The result of which was that we didn't scan sections of the table when searching for duplicates, and so some duplicates did not get deleted.
| * | | | Merge pull request #4423 from matrix-org/neilj/disable_msisdn_on_registrationNeil Johnson2019-01-222-11/+14
| |\ \ \ \ | | |_|/ / | |/| | | Config option to disable requesting MSISDN on registration
| | * | | fix line lengthNeil Johnson2019-01-211-1/+3
| | | | |
| | * | | Config option to disable requesting MSISDN on registrationNeil Johnson2019-01-212-11/+12
| | | | |
* | | | | Move tag and direct state copying into separate functionAndrew Morgan2019-01-251-43/+63
| | | | |
* | | | | lintAndrew Morgan2019-01-221-1/+3
| | | | |
* | | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2019-01-222-172/+7
|\| | | | | | | | | | | | | | | | | | | anoa/dm_room_upgrade