summary refs log tree commit diff
path: root/synapse/handlers (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove presence lists (#4989)Neil Johnson2019-04-031-165/+2
| | | Remove presence list support as per MSC 1819
* Merge pull request #4982 from matrix-org/erikj/msc1915Erik Johnston2019-04-033-15/+71
|\ | | | | Implement MSC1915 - 3PID unbind APIs
| * Correctly handle id_server paramErik Johnston2019-04-021-0/+1
| |
| * Remove threepid binding if id server returns 400/404/501Erik Johnston2019-04-021-9/+10
| |
| * Fixup docstringsErik Johnston2019-04-021-2/+4
| |
| * Allowing specifying IS to use in unbind API.Erik Johnston2019-04-013-7/+18
| | | | | | | | | | | | | | | | | | | | By default the homeserver will use the identity server used during the binding of the 3PID to unbind the 3PID. However, we need to allow clients to explicitly ask the homeserver to unbind via a particular identity server, for the case where the 3PID was bound out of band from the homeserver. Implements MSC915.
| * For unbind poke IS used during binding of 3PIDErik Johnston2019-04-011-9/+35
| | | | | | | | | | | | | | | | This changes the behaviour from using the server specified trusted identity server to using the IS that used during the binding of the 3PID, if known. This is the behaviour specified by MSC1915.
| * Track IS used to bind 3PIDsErik Johnston2019-04-011-0/+15
| | | | | | | | | | This will then be used to know which IS to default to when unbinding the threepid.
* | Transfer related groups on room upgrade (#4990)Andrew Morgan2019-04-021-0/+1
| | | | | | Transfers the m.room.related_groups state event on room upgrade.
* | Collect room-version variations into one place (#4969)Richard van der Hoff2019-04-013-18/+13
|/ | | | Collect all the things that make room-versions different to one another into one place, so that it's easier to define new room versions.
* Allow password providers to bind emails (#4947)Andrew Morgan2019-03-281-0/+17
| | | This PR allows password provider modules to bind email addresses when a user is registering and is motivated by matrix-org/matrix-synapse-ldap3#58
* Use an assertErik Johnston2019-03-281-2/+1
|
* Review commentsErik Johnston2019-03-281-44/+62
|
* Use event streams to calculate presenceErik Johnston2019-03-271-29/+130
| | | | | | | | | | | | | | | | | Primarily this fixes a bug in the handling of remote users joining a room where the server sent out the presence for all local users in the room to all servers in the room. We also change to using the state delta stream, rather than the distributor, as it will make it easier to split processing out of the master process (as well as being more flexible). Finally, when sending presence states to newly joined servers we filter out old presence states to reduce the number sent. Initially we filter out states that are offline and have a last active more than a week ago, though this can be changed down the line. Fixes #3962
* Support 3PID login in password providers (#4931)Andrew Morgan2019-03-263-8/+51
| | | | | Adds a new method, check_3pid_auth, which gives password providers the chance to allow authentication with third-party identifiers such as email or msisdn.
* Refactor out state delta handling into its own class (#4917)Amber Brown2019-03-252-46/+75
|
* Merge pull request #4908 from matrix-org/erikj/block_peek_on_blocked_roomsErik Johnston2019-03-212-2/+11
|\ | | | | Deny peeking into rooms that have been blocked
| * Deny peeking into rooms that have been blockedErik Johnston2019-03-212-2/+11
| |
* | Merge pull request #4904 from matrix-org/erikj/fix_shutdownErik Johnston2019-03-214-2/+13
|\| | | | | Fixup shutdown room API
| * Revert spurious deleteErik Johnston2019-03-201-0/+4
| |
| * Use flagsErik Johnston2019-03-204-13/+13
| |
| * Move requester check into assert_accepted_privacy_policyErik Johnston2019-03-201-5/+8
| |
| * Only require consent for events with an associated requestErik Johnston2019-03-201-1/+5
| | | | | | | | | | | | | | | | | | There are a number of instances where a server or admin may puppet a user to join/leave rooms, which we don't want to fail if the user has not consented to the privacy policy. We fix this by adding a check to test if the requester has an associated access_token, which is used as a proxy to answer the question of whether the action is being done on behalf of a real request from the user.
* | Merge pull request #4896 from matrix-org/erikj/disable_room_directoryErik Johnston2019-03-212-0/+22
|\ \ | |/ |/| Add option to disable search room lists
| * Disable publishing to room list when its disabledErik Johnston2019-03-201-0/+8
| |
| * Pull out config optionErik Johnston2019-03-201-3/+3
| |
| * Return before we logErik Johnston2019-03-201-4/+5
| |
| * Add option to disable search room listsErik Johnston2019-03-191-0/+13
| | | | | | | | This disables both local and remote room list searching.
* | Batch up outgoing read-receipts to reduce federation traffic. (#4890)Richard van der Hoff2019-03-201-1/+1
|/ | | | Rate-limit outgoing read-receipts as per #4730.
* fix test_auto_create_auto_join_where_no_consent (#4886)Neil Johnson2019-03-192-3/+15
|
* Migrate the user directory initial population to a background task (#4864)Amber Brown2019-03-191-160/+13
|
* Add ratelimiting on failed login attempts (#4865)Brendan Abolivier2019-03-181-5/+23
|
* Add ratelimiting on login (#4821)Brendan Abolivier2019-03-152-2/+38
| | | Add two ratelimiters on login (per-IP address and per-userID).
* Merge pull request #4852 from matrix-org/rav/move_rr_sending_to_workerRichard van der Hoff2019-03-151-55/+24
|\ | | | | Move client receipt processing to federation sender worker.
| * Move client receipt processing to federation sender worker.Richard van der Hoff2019-03-131-33/+4
| | | | | | | | | | This is mostly a prerequisite for #4730, but also fits with the general theme of "move everything off the master that we possibly can".
| * declare a ReadReceipt classRichard van der Hoff2019-03-131-24/+22
| | | | | | | | | | I'm going to use this in queues and things, so it'll be useful to give it more of a structure.
* | Merge pull request #4846 from matrix-org/hawkowl/userdir-searchErik Johnston2019-03-141-48/+77
|\ \ | |/ |/| Improve searching in the userdir
| * fixupAmber Brown2019-03-131-1/+1
| |
| * fixupAmber Brown2019-03-121-47/+70
| |
| * fixesAmber Brown2019-03-121-39/+6
| |
| * initialAmber Brown2019-03-111-1/+40
| |
* | Transfer local user's push rules on room upgrade (#4838)Andrew Morgan2019-03-121-0/+4
|/ | | Transfer push rules (notifications) on room upgrade
* Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-03-084-205/+155
|\ | | | | | | erikj/soft_fail_impl
| * Merge pull request #4829 from matrix-org/erikj/device_list_seen_updatesErik Johnston2019-03-081-3/+7
| |\ | | | | | | When re-syncing device lists reset the state
| | * When re-syncing device lists reset the stateErik Johnston2019-03-071-3/+7
| | | | | | | | | | | | | | | | | | | | | We keep track of what stream IDs we've seen so that we know what updates we've handled or missed. If we re-sync we don't know if the updates we've seen are included in the re-sync (there may be a race), so we should reset the seen updates.
| * | Add some debug logging for device list handlingErik Johnston2019-03-071-2/+38
| |/
| * Rewrite userdir to be faster (#4537)Amber Brown2019-03-071-185/+37
| |
| * Merge pull request #4815 from matrix-org/erikj/docstringsErik Johnston2019-03-061-7/+26
| |\ | | | | | | Add docstrings from matrix-org-hotfixes
| | * Add docstrings from matrix-org-hotfixesErik Johnston2019-03-061-7/+26
| | |
| * | Port #4422 debug logging from hotfixesErik Johnston2019-03-061-7/+46
| |/
| * Make registration ratelimiter separate from the main events oneBrendan Abolivier2019-03-061-1/+1
| |
| * Revert "Split ratelimiters in two (one for events, one for registration)"Brendan Abolivier2019-03-063-3/+3
| | | | | | | | This reverts commit d7dbad3526136cfc9fdbd568635be5016fb637db.
| * Split ratelimiters in two (one for events, one for registration)Brendan Abolivier2019-03-053-3/+3
| |
* | Factor out soft fail checksErik Johnston2019-03-081-5/+22
| |
* | Implement soft failErik Johnston2019-03-061-1/+76
|/
* Add rate-limiting on registration (#4735)Brendan Abolivier2019-03-052-10/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rate-limiting for registration * Add unit test for registration rate limiting * Add config parameters for rate limiting on auth endpoints * Doc * Fix doc of rate limiting function Co-Authored-By: babolivier <contact@brendanabolivier.com> * Incorporate review * Fix config parsing * Fix linting errors * Set default config for auth rate limiting * Fix tests * Add changelog * Advance reactor instead of mocked clock * Move parameters to registration specific config and give them more sensible default values * Remove unused config options * Don't mock the rate limiter un MAU tests * Rename _register_with_store into register_with_store * Make CI happy * Remove unused import * Update sample config * Fix ratelimiting test for py2 * Add non-guest test
* Merge pull request #4699 from matrix-org/erikj/stop_fed_not_in_roomErik Johnston2019-03-051-0/+46
|\ | | | | Stop backpaginating when events not visible
| * clarify commentsErik Johnston2019-03-051-8/+11
| |
| * Only check history visibility when filteringErik Johnston2019-03-041-1/+3
| | | | | | | | | | | | When filtering events to send to server we check more than just history visibility. However when deciding whether to backfill or not we only care about the history visibility.
| * s/get_forward_events/get_successor_events/Erik Johnston2019-03-041-1/+1
| |
| * Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-03-046-52/+137
| |\ | | | | | | | | | erikj/stop_fed_not_in_room
| * | Update commentsErik Johnston2019-02-271-3/+13
| | |
| * | Stop backpaginating when events not visibleErik Johnston2019-02-201-0/+31
| | |
* | | Merge pull request #4796 from matrix-org/erikj/factor_out_e2e_keysErik Johnston2019-03-051-168/+174
|\ \ \ | | | | | | | | Allow /keys/{changes,query} API to run on worker
| * | | Allow /keys/{changes,query} API to run on workerErik Johnston2019-03-041-2/+2
| | | |
| * | | Split DeviceHandler into master and workerErik Johnston2019-03-041-168/+174
| | | |
* | | | Clean up read-receipt handling.Richard van der Hoff2019-03-041-59/+44
|/ / / | | | | | | | | | | | | | | | | | | Remove a call to run_as_background_process: there is no need to run this as a background process, because build_and_send_edu does not block. We may as well inline the whole of _push_remotes.
* | / Avoid rebuilding Edu objects in worker mode (#4770)Richard van der Hoff2019-03-043-5/+5
| |/ |/| | | | | | | In worker mode, on the federation sender, when we receive an edu for sending over the replication socket, it is parsed into an Edu object. There is no point extracting the contents of it so that we can then immediately build another Edu.
* | Fix incorrect log about not persisting duplicate state event. (#4776)Richard van der Hoff2019-03-011-3/+4
| | | | | | We were logging this when it was not true.
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2019-02-2621-482/+1672
|\ \ | | | | | | | | | anoa/public_rooms_federate_develop
| * | Revert "Prevent showing non-fed rooms in fed /publicRooms"Andrew Morgan2019-02-261-65/+11
| | |
| * | Merge pull request #4736 from matrix-org/anoa/public_rooms_federateAndrew Morgan2019-02-261-11/+65
| |\ \ | | | | | | | | Config option to prevent showing non-fed rooms in fed /publicRooms
| | * | Cleaner chunk logicAndrew Morgan2019-02-261-5/+4
| | | |
| | * | Correct indentAndrew Morgan2019-02-261-3/+3
| | | |
| | * | Correct docstring types and chunk logicAndrew Morgan2019-02-261-10/+11
| | | |
| | * | Clean up room chunk logicAndrew Morgan2019-02-261-6/+8
| | | |
| | * | Make not showing non-federated rooms the defaultAndrew Morgan2019-02-261-1/+1
| | | |
| | * | Result may be NoneAndrew Morgan2019-02-261-1/+1
| | | |
| | * | Address rich commentsAndrew Morgan2019-02-261-6/+30
| | | |
| | * | elif not else ifAndrew Morgan2019-02-251-1/+1
| | | |
| | * | syntax derpAndrew Morgan2019-02-251-1/+1
| | | |
| | * | Simplify call to generate_room_entryAndrew Morgan2019-02-251-17/+13
| | | |
| | * | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-02-2521-477/+1620
| | |\ \ | | | | | | | | | | | | | | | anoa/public_rooms_federate
| | * | | Docs and arg name clarificationAndrew Morgan2019-02-251-2/+15
| | | | |
| | * | | Don't restrict non-fed rooms over client APIsAndrew Morgan2019-02-251-11/+18
| | | | |
| | * | | Config option to prevent showing non-fed rooms in fed /publicRoomsAndrew Morgan2019-02-251-2/+15
| | | | |
| * | | | switch from google.com to recaptcha.net for reCAPTCHA (#4731)Matthew Hodgson2019-02-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * add trivial clarification about jemalloc * switch from google.com to recaptcha.net because https://developers.google.com/recaptcha/docs/faq#can-i-use-recaptcha-globally
| * | | | Merge pull request #4737 from matrix-org/erikj/failure_log_tbErik Johnston2019-02-251-1/+5
| |\ \ \ \ | | | | | | | | | | | | Log tracebacks correctly
| | * | | | Log tracebacks correctlyErik Johnston2019-02-251-1/+5
| | | |/ / | | |/| |
| * | | | Fix typoErik Johnston2019-02-251-1/+1
| | | | |
| * | | | More commentsErik Johnston2019-02-251-0/+4
| | | | |
| * | | | Assert rather than clobber the valuesErik Johnston2019-02-251-2/+2
| | | | |
| * | | | Add comments and paranoiaErik Johnston2019-02-251-2/+23
| | | | |
| * | | | Fix backfill storing incorrect state for eventsErik Johnston2019-02-221-1/+4
| |/ / /
| * | | Run push_receipts_to_remotes as background job (#4707)Richard van der Hoff2019-02-211-34/+34
| | | | | | | | | | | | I suspect the CPU usage metrics for this are going to /dev/null at the moment.
| * | | Merge pull request #4263 from rkfg/developErik Johnston2019-02-211-1/+1
| |\ \ \ | | |_|/ | |/| | Prevent crash on pagination.
| | * | Prevent crash on pagination.rkfg2018-12-061-1/+1
| | | |
| * | | Fix registration on workers (#4682)Erik Johnston2019-02-203-8/+196
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Move RegistrationHandler init to HomeServer * Move post registration actions to RegistrationHandler * Add post regisration replication endpoint * Newsfile
| * | | Merge pull request #4652 from matrix-org/babolivier/acme-delegatedBrendan Abolivier2019-02-191-4/+5
| |\ \ \ | | | | | | | | | | Support .well-known delegation when issuing certificates through ACME
| | * | | 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-181-25/+4
| | | | |
| | * | | Merge branch 'develop' into babolivier/acme-delegatedBrendan Abolivier2019-02-183-10/+35
| | |\ \ \
| | * | | | 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 #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 #4666 from matrix-org/erikj/register_login_splitErik Johnston2019-02-181-8/+106
| |\ \ \ \ \ | | | | | | | | | | | | | | Split out registration to worker
| | * | | | | Move register_device into handlerErik Johnston2019-02-181-4/+47
| | | | | | |
| | * | | | | Split out registration to workerErik Johnston2019-02-181-4/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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 #4667 from matrix-org/erikj/fix_revoke_guest_access_workersErik Johnston2019-02-181-1/+1
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | | Fix kicking guest users in worker mode
| | * | | | | Fix kicking guest users in worker modeErik Johnston2019-02-181-1/+1
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-182-5/+11
| |\ \ \ \ \ | | |/ / / / | |/| | | | Correctly handle RequestSendFailed exceptions
| | * | | | Correctly handle RequestSendFailed exceptionsErik Johnston2019-02-142-5/+11
| | |/ / / | | | | | | | | | | | | | | | This mainly reduces the number of exceptions we log.
| * | | | Only fetch aliases when publishing roomsErik Johnston2019-02-141-15/+15
| | | | |
| * | | | Add configurable room list publishing rulesErik Johnston2019-02-141-5/+24
| |/ / / | | | | | | | | | | | | | | | | This allows specifying who and what is allowed to be published onto the public room list
| * | | Run `black` on user directory code (#4635)Amber Brown2019-02-131-44/+50
| | | |
| * | | 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
| | | | |
| * | | | make sure version is in body and wrap in linearizer queueHubert Chathi2019-02-081-11/+26
| | | | | | | | | | | | | | | | | | | | 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-061-1/+33
| | | | |
| * | | | return proper error codes for some 404sHubert Chathi2019-02-061-4/+16
| |/ / /
| * | | Merge pull request #4530 from matrix-org/anoa/room_upgrade_federatableAndrew Morgan2019-01-311-0/+10
| |\ \ \ | | | | | | | | | | Copy over non-federatable trait on room upgrade
| | * | | New function for getting room's create eventAndrew Morgan2019-01-311-7/+1
| | | | |
| | * | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2019-01-311-1/+13
| | |\ \ \ | | | | | | | | | | | | | | | | | | anoa/room_upgrade_federatable
| | * | | | lintAndrew Morgan2019-01-311-2/+4
| | | | | |
| | * | | | Copy over non-federatable trait on room upgradeAndrew Morgan2019-01-301-0/+14
| | | | | |
| * | | | | 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 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.
| * | | ACME config cleanups (#4525)Richard van der Hoff2019-01-301-12/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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
| * | | Fix flake8 (#4519)Amber Brown2019-01-302-3/+3
| | | |
| * | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-292-1/+10
| |\ \ \ | | | | | | | | | | | | | | | erikj/redactions_eiah
| | * | | Use snder and not event ID domain to check if oursErik Johnston2019-01-291-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-01-292-29/+7
| |\| | | | | | | | | | | | | | | | | | erikj/redactions_eiah
| | * | | Merge pull request #4481 from matrix-org/erikj/event_builderErik Johnston2019-01-291-28/+6
| | |\ \ \ | | | | | | | | | | | | Refactor event building into EventBuilder
| | | * | | Correctly set context.app_serviceErik Johnston2019-01-291-0/+2
| | | | | |
| | | * | | Refactor event building into EventBuilderErik Johnston2019-01-291-29/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is so that everything is done in one place, making it easier to change the event format based on room version
| | * | | | Fixup calls to `comput_event_signature`Erik Johnston2019-01-291-1/+1
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
| * / / / Implement rechecking of redactionsErik Johnston2019-01-291-1/+5
| |/ / /
| * | | Merge pull request #4494 from matrix-org/erikj/fixup_event_validatorErik Johnston2019-01-292-3/+8
| |\ \ \ | | | | | | | | | | Split up event validation between event and builder
| | * | | Split up event validation between event and builderErik Johnston2019-01-282-3/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | | Merge pull request #4482 from matrix-org/erikj/event_auth_room_versionErik Johnston2019-01-283-11/+23
| |\ \ \ \ | | |/ / / | |/| | | 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-253-10/+22
| | | | |
| * | | | Change return syntax in doc stringAndrew Morgan2019-01-281-1/+1
| | | | |
| * | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Andrew Morgan2019-01-282-29/+53
| |\| | | | | | | | | | | | | | | | | | anoa/dm_room_upgrade
| | * | | Merge pull request #4470 from matrix-org/erikj/require_format_versionErik Johnston2019-01-252-29/+53
| | |\ \ \ | | | | | | | | | | | | Require event format version to parse or create events
| | | * | | Require event format version to parse or create eventsErik Johnston2019-01-252-29/+53
| | | | | |
| * | | | | 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-255-34/+231
| |\| | | | | | | | | | | | | | | | | | | | | | anoa/dm_room_upgrade
| | * | | | Merge pull request #4415 from matrix-org/anoa/full_search_upgraded_roomsAndrew Morgan2019-01-251-0/+47
| | |\ \ \ \ | | | |/ / / | | |/| | | Ability to search entire room history after upgrading room
| | | * | | Apply suggestions from code reviewRichard van der Hoff2019-01-241-1/+1
| | | | | | | | | | | | | | | | | | Co-Authored-By: anoadragon453 <1342360+anoadragon453@users.noreply.github.com>
| | | * | | Fix a bug with single-room search searching all roomsAndrew Morgan2019-01-221-32/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Create a new method for getting predecessor rooms * Remove formatting change
| | | * | | Search for messages across predecessor roomsAndrew Morgan2019-01-181-0/+69
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Andrew Morgan <andrew@amorgan.xyz>
| | * | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/msc_1813Erik Johnston2019-01-254-33/+183
| | |\ \ \ \
| | | * \ \ \ Merge pull request #4448 from matrix-org/erikj/get_pdu_versionsErik Johnston2019-01-241-2/+15
| | | |\ \ \ \ | | | | | | | | | | | | | | | | Add room_version param to get_pdu
| | | | * | | | Review commentsErik Johnston2019-01-241-0/+5
| | | | | | | |
| | | | * | | | Add room_version param to get_pduErik Johnston2019-01-231-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-241-29/+3
| | | |\ \ \ \ \ | | | | | | | | | | | | | | | | | | Store rejected remote invite events as outliers
| | | | * | | | | Remove unecessary setting of outlier bitErik Johnston2019-01-241-2/+0
| | | | | | | | |
| | | | * | | | | Use term 'out of band membership' insteadErik Johnston2019-01-241-2/+2
| | | | | | | | |
| | | | * | | | | Clarify the invite flowsErik Johnston2019-01-231-1/+11
| | | | | | | | |
| | | | * | | | | Remove unnecessary '_sign_event'Erik Johnston2019-01-231-14/+0
| | | | | | | | |
| | | | * | | | | Store rejected remote invite events as outliersErik Johnston2019-01-231-32/+12
| | | | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| | | * | | | | 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
| | | |/ / / /
| | | * | | | Add metric for user dir current event stream positionAndrew Morgan2019-01-231-0/+6
| | | | | | |
| | | * | | | Support ACME for certificate provisioning (#4384)Amber Brown2019-01-231-0/+147
| | | | | | |
| | * | | | | Implement MSC 1813 - Add room version to make APIsErik Johnston2019-01-231-1/+1
| | |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | We also implement `make_membership_event` converting the returned room version to an event format version.
| * | | | | Move tag and direct state copying into separate functionAndrew Morgan2019-01-251-43/+63
| | | | | |
| * | | | | lintAndrew Morgan2019-01-221-1/+3
| | | | | |
| * | | | | Prevent duplicate room IDs in m.directAndrew Morgan2019-01-221-10/+9
| | | | | |
| * | | | | Fix commentsAndrew Morgan2019-01-221-2/+2
| | | | | |
| * | | | | Join logic covers both room creator and arbitrary usersAndrew Morgan2019-01-221-33/+0
| | | | | |
| * | | | | tags, m.direct copying over correctlyAndrew Morgan2019-01-222-11/+62
| | | | | |
| * | | | | Fix typosAndrew Morgan2019-01-221-8/+8
| | | | | |
| * | | | | Migrating dm and room tags work for migratorAndrew Morgan2019-01-221-2/+13
| | | | | |
| * | | | | Prevent crash on user who doesn't have any direct roomsAndrew Morgan2019-01-221-1/+1
| | | | | |
| * | | | | Preserve DM status of a room on upgradeAndrew Morgan2019-01-221-0/+19
| | | | | | | | | | | | | | | | | | | | | | | | Signed-off-by: Andrew Morgan <andrew@amorgan.xyz>
| * | | | | Fix typoAndrew Morgan2019-01-221-2/+2
| |/ / / /
| * / / / Migrate encryption state on room upgrade (#4411)Andrew Morgan2019-01-211-0/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Migrate encryption state on room upgrade Signed-off-by: Andrew Morgan <andrew@amorgan.xyz> * Add changelog file
| * | | sign_request -> build_auth_headers (#4408)Richard van der Hoff2019-01-171-3/+6
| | | | | | | | | | | | | | | | | | | | Just got very confused about the fact that the headers are only an output, not an input.
| * | | don't store more remote device lists if they have more than 1K devices (#4397)Richard van der Hoff2019-01-161-0/+19
| | | |
| * | | fix NPE in /messages by checking if all events were filtered out (#4330)Matthew Hodgson2019-01-021-10/+11
| | | |
| * | | Fixed line lengthNathan Pennie2018-12-191-1/+5
| | | |
| * | | Fix the variable names used for account_dataNathan Pennie2018-12-191-3/+3
| | | |
| * | | create support user (#4141)Neil Johnson2018-12-143-23/+39
| | | | | | | | | | | | | | | | | | | | | | | | Allow for the creation of a support user. A support user can access the server, join rooms, interact with other users, but does not appear in the user directory nor does it contribute to monthly active user limits.
| * | | Initialise user displayname from SAML2 data (#4272)Richard van der Hoff2018-12-071-7/+16
| | | | | | | | | | | | | | | | | | | | When we register a new user from SAML2 data, initialise their displayname correctly.
| * | | Factor SSO success handling out of CAS login (#4264)Richard van der Hoff2018-12-071-2/+11
| | | | | | | | | | | | | | | | This is mostly factoring out the post-CAS-login code to somewhere we can reuse it for other SSO flows, but it also fixes the userid mapping while we're at it.
| * | | Rip out half-implemented m.login.saml2 support (#4265)Richard van der Hoff2018-12-061-29/+0
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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 an option to disable search for homeservers which may not be interested ↵Travis Ralston2018-12-041-0/+3
| | | | | | | | | | | | | | | | | | in it (#4230) This is useful for homeservers not intended for users, such as bot-only homeservers or ones that only process IoT data.
| * | Neilj/fix autojoin (#4223)Neil Johnson2018-11-281-2/+21
| | | | | | | | | | | | | | | | | | * Fix auto join failures for servers that require user consent * Fix auto join failures for servers that require user consent
| * | Remove duplicate slashes in generated consent URLsTravis Ralston2018-11-151-1/+1
| | |
| * | Remove hack to support rejoining roomsErik Johnston2018-11-091-74/+42
| | |
| * | Simplify to always drop events if server isn't in the roomErik Johnston2018-11-091-14/+9
| | |
| * | Add config variables for enabling terms auth and the policy name (#4142)Travis Ralston2018-11-061-1/+1
| | | | | | | | | | | | So people can still collect consent the old way if they want to.
| * | handle empty backups according to latest spec proposal (#4123)Hubert Chathi2018-11-051-7/+15
| | | | | | | | | fixes #4056
| * | Add helpers for getting prev and auth events (#4139)Erik Johnston2018-11-061-24/+24
| | | | | | | | | | | | | | | | | | | | | * Add helpers for getting prev and auth events This is in preparation for allowing the event format to change between room versions.
| * | Fix typing being reset causing infinite syncs (#4127)Amber Brown2018-11-031-4/+10
| | |
| * | Include a version query string arg for the consent routeTravis Ralston2018-10-311-1/+4
| | |
| * | Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-318-133/+515
| |\ \
| | * \ Merge pull request #4101 from matrix-org/rav/aliases_for_upgradesRichard van der Hoff2018-10-312-14/+140
| | |\ \ | | | | | | | | | | Attempt to move room aliases on room upgrades
| | | * | Avoid else clause on exception for clarityRichard van der Hoff2018-10-311-2/+1
| | | | |
| | | * | Attempt to move room aliases on room upgradesRichard van der Hoff2018-10-312-14/+141
| | | | |
| | * | | Log some bits about event creation (#4121)Richard van der Hoff2018-10-312-0/+7
| | | | | | | | | | | | | | | | | | | | I found these helpful in debugging my room upgrade tests.
| | * | | Fix search 500ing (#4122)Amber Brown2018-10-311-2/+6
| | | | |
| | * | | Delete the disused & unspecced identicon functionality (#4106)Amber Brown2018-10-291-3/+0
| | |/ /
| | * | Merge pull request #4100 from matrix-org/rav/room_upgrade_avatarRichard van der Hoff2018-10-291-1/+2
| | |\ \ | | | | | | | | | | Remember to copy the avatar on room upgrades
| | | * | Remember to copy the avatar on room upgradesRichard van der Hoff2018-10-261-1/+2
| | | | |
| | * | | Better handling of odd PLs during room upgradesRichard van der Hoff2018-10-271-44/+81
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | Fixes handling of rooms where we have permission to send the tombstone, but not other state. We need to (a) fail more gracefully when we can't send the PLs in the old room, and (b) not set the PLs in the new room until we are done with the other stuff.
| | * | optimise state copyingRichard van der Hoff2018-10-261-7/+5
| | | |
| | * | Address review commentsRichard van der Hoff2018-10-261-7/+9
| | | | | | | | | | | | | | | | Improve comments, get old room state from the context we already have
| | * | restrict PLs in old roomRichard van der Hoff2018-10-251-1/+43
| | | |
| | * | copy stateRichard van der Hoff2018-10-251-11/+26
| | | |
| | * | preserve PLsRichard van der Hoff2018-10-251-1/+7
| | | |
| | * | preserve room visibilityRichard van der Hoff2018-10-251-3/+5
| | | |
| | * | Basic initial support for room upgradesRichard van der Hoff2018-10-251-0/+121
| | | | | | | | | | | | | | | | | | | | Currently just creates a new, empty, room, and sends a tombstone in the old room.
| | * | Allow power_level_content_override=None for _send_events_for_new_roomRichard van der Hoff2018-10-251-5/+6
| | | |
| | * | Make room_member_handler a member of RoomCreationHandlerRichard van der Hoff2018-10-252-8/+7
| | | | | | | | | | | | | | | | ... to save passing it into `_send_events_for_new_room`
| | * | Factor _generate_room_id out of create_roomRichard van der Hoff2018-10-251-22/+23
| | | | | | | | | | | | | | | | we're going to need this for room upgrades.
| * | | Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-249-74/+100
| |\ \ \
| * \ \ \ Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-182-9/+14
| |\ \ \ \
| * | | | | pep8Travis Ralston2018-10-151-1/+1
| | | | | |
| * | | | | Ensure the terms params are actually providedTravis Ralston2018-10-151-0/+1
| | | | | |
| * | | | | Python is hardTravis Ralston2018-10-151-5/+6
| | | | | |
| * | | | | Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-151-0/+289
| |\ \ \ \ \
| * | | | | | Update login terms structure for the proposed language supportTravis Ralston2018-10-121-4/+7
| | | | | | |
| * | | | | | Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-122-20/+37
| |\ \ \ \ \ \
| * | | | | | | Use a flag rather than a new route for the public policyTravis Ralston2018-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This also means that the template now has optional parameters, which will need to be documented somehow.
| * | | | | | | Supply params for terms auth stageTravis Ralston2018-10-031-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | As per https://github.com/matrix-org/matrix-doc/pull/1692
| * | | | | | | Incorporate Dave's work for GDPR login flowsTravis Ralston2018-10-031-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | As per https://github.com/vector-im/riot-web/issues/7168#issuecomment-419996117