summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Update `user_filters` table to have a unique index, and non-null columns (#1172)Andrew Morgan2020-02-261-0/+46
|\
| * Update `user_filters` table to have a unique index, and non-null columns (#1172)Alexander Maznev2019-10-041-0/+46
| |
* | media/thumbnailer: Better quality for 1-bit / 8-bit color palette images (#2142)Andrew Morgan2020-02-261-3/+11
|\|
| * media/thumbnailer: Better quality for 1-bit / 8-bit color palette images (#2142)Robert Swain2019-10-041-3/+11
| | | | | | | | | | | | Pillow will use nearest neighbour as the resampling algorithm if the source image is either 1-bit or a color palette using 8 bits. If we convert to RGB before scaling, we'll probably get a better result.
* | add some metrics on the federation sender (#6160)Andrew Morgan2020-02-264-19/+43
|\|
| * add some metrics on the federation sender (#6160)Richard van der Hoff2019-10-034-19/+43
| |
| * Merge branch 'master' into developAndrew Morgan2019-10-032-3/+5
| |\
* | \ 1.4.0Andrew Morgan2020-02-261-1/+1
|\ \ \ | | |/ | |/|
| * | 1.4.0 v1.4.0 github/release-v1.4.0 release-v1.4.0Andrew Morgan2019-10-031-1/+1
| | |
* | | Replace client_secret with <redacted> in server logs (#6158)Andrew Morgan2020-02-261-2/+4
|\| |
| * | Replace client_secret with <redacted> in server logs (#6158)Andrew Morgan2019-10-031-2/+4
| | | | | | | | | Replace `client_secret` query parameter values with `<redacted>` in the logs. Prevents a scenario where a MITM of server traffic can horde 3pids on their account.
* | | Merge pull request #6154 from matrix-org/erikj/fix_appservice_paginationAndrew Morgan2020-02-261-18/+18
|\ \ \ | | |/ | |/|
| * | Merge pull request #6154 from matrix-org/erikj/fix_appservice_paginationErik Johnston2019-10-021-18/+18
| |\ \ | | | | | | | | Fix appservice room list pagination
| | * | Fix appservice room list paginationErik Johnston2019-10-021-18/+18
| | | |
* | | | Merge pull request #6153 from matrix-org/erikj/fix_room_list_non_federatableAndrew Morgan2020-02-261-0/+3
|\| | |
| * | | Merge pull request #6153 from matrix-org/erikj/fix_room_list_non_federatableErik Johnston2019-10-021-0/+3
| |\ \ \ | | | | | | | | | | Fix not showing non-federatable rooms to remote room list queries
| | * | | Fix not showing non-federatable rooms to remote room list queriesErik Johnston2019-10-021-0/+3
| | |/ /
* | | | Merge pull request #6148 from matrix-org/erikj/find_next_generatedAndrew Morgan2020-02-261-1/+3
|\| | |
| * | | Merge pull request #6148 from matrix-org/erikj/find_next_generatedErik Johnston2019-10-021-1/+3
| |\ \ \ | | |/ / | |/| | Bound find_next_generated_user_id DB query.
| | * | Bound find_next_generated_user_id DB query.Erik Johnston2019-10-021-1/+3
| | | | | | | | | | | | | | | | | | | | We can easily bound the set of user IDs we pull out of the DB, so lets do that.
* | | | Merge pull request #6152 from matrix-org/erikj/fix_room_listAndrew Morgan2020-02-262-27/+59
|\| | |
| * | | Fix public room list pagination.Erik Johnston2019-10-022-27/+59
| | | | | | | | | | | | | | | | | | | | | | | | We incorrectly used `room_id` as to bound the result set, even though we order by `joined_members, room_id`, leading to incorrect results after pagination.
* | | | Land improved room list based on room stats (#6019)Andrew Morgan2020-02-265-311/+272
|\| | |
| * | | Land improved room list based on room stats (#6019)Erik Johnston2019-10-025-311/+272
| | | | | | | | | | | | | | | | Use room_stats and room_state for room directory search
* | | | 1.4.0rc2Andrew Morgan2020-02-261-1/+1
|\ \ \ \ | | |_|/ | |/| |
| * | | 1.4.0rc2 v1.4.0rc2Andrew Morgan2019-10-021-1/+1
| | | |
* | | | Fix up some typechecking (#6150)Andrew Morgan2020-02-2620-40/+102
|\ \ \ \ | | |/ / | |/| |
| * | | Fix up some typechecking (#6150)Amber Brown2019-10-0220-40/+102
| | | | | | | | | | | | | | | | | | | | | | | | * type checking fixes * changelog
* | | | Fix yields and copy instead of move push rules on room upgrade (#6144)Andrew Morgan2020-02-262-12/+8
|\| | |
| * | | Fix yields and copy instead of move push rules on room upgrade (#6144)Andrew Morgan2019-10-022-12/+8
| | |/ | |/| | | | | | | | | | | | | | | | Copy push rules during a room upgrade from the old room to the new room, instead of deleting them from the old room. For instance, we've defined upgrading of a room multiple times to be possible, and push rules won't be transferred on the second upgrade if they're deleted during the first. Also fix some missing yields that probably broke things quite a bit.
| * | Merge branch 'release-v1.4.0' of github.com:matrix-org/synapse into developErik Johnston2019-10-026-19/+143
| |\|
| * | Merge branch 'erikj/fixup_devices_last_seen_query' of ↵Erik Johnston2019-10-014-8/+55
| |\ \ | | | | | | | | | | | | github.com:matrix-org/synapse into develop
* | \ \ Merge pull request #6146 from matrix-org/erikj/fix_destination_retry_timingsAndrew Morgan2020-02-262-1/+19
|\ \ \ \ | | |_|/ | |/| |
| * | | Merge pull request #6146 from matrix-org/erikj/fix_destination_retry_timingsErik Johnston2019-10-022-1/+19
| |\ \ \ | | | | | | | | | | Fix errors storing large retry intervals.
| | * | | Fix errors storing large retry intervals.Erik Johnston2019-10-022-1/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have set the max retry interval to a value larger than a postgres or sqlite int can hold, which caused exceptions when updating the destinations table. To fix postgres we need to change the column to a bigint, and for sqlite we lower the max interval to 2**62 (which is still incredibly long).
* | | | | Merge pull request #6145 from matrix-org/erikj/fix_censored_redactionsAndrew Morgan2020-02-261-0/+14
|\| | | |
| * | | | Merge pull request #6145 from matrix-org/erikj/fix_censored_redactionsErik Johnston2019-10-021-0/+14
| |\ \ \ \ | | |/ / / | |/| | | Fix fetching censored redactions from DB
| | * | | Fix fetching censored redactions from DBErik Johnston2019-10-021-0/+14
| | | |/ | | |/| | | | | | | | | | | | | | | | | Fetching a censored redactions caused an exception due to the code expecting redactions to have a `redact` key, which redacted redactions don't have.
* | | | Merge pull request #6141 from matrix-org/erikj/censor_redactions_fixAndrew Morgan2020-02-263-18/+110
|\| | |
| * | | Use `received_ts` to find uncensored redacted eventsErik Johnston2019-10-011-14/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Joining against `events` and ordering by `stream_ordering` is inefficient as it forced scanning the entirety of the redactions table. This isn't the case if we use `redactions.received_ts` column as we can then use an index.
| * | | Add received_ts column to redactions.Erik Johnston2019-10-013-9/+92
| | | | | | | | | | | | | | | | | | | | This will allow us to efficiently search for uncensored redactions in the DB before a given time.
| * | | Don't repeatedly attempt to censor events we don't have.Erik Johnston2019-10-011-1/+17
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | Currently we don't set `have_censored` column if we don't have the target event of a redaction, which means we repeatedly attempt to censor the same non-existant event. When we persist non-redacted events we unset the `have_censored` column for any redactions that target said event.
* | | Merge pull request #6135 from matrix-org/erikj/fixup_devices_last_seen_queryAndrew Morgan2020-02-263-7/+54
|\| |
| * | Fix `devices_last_seen` background update.Erik Johnston2019-09-303-7/+54
| | | | | | | | | | | | Fixes #6134.
* | | Drop unused tables (#6115)Andrew Morgan2020-02-261-0/+20
|\ \ \ | | |/ | |/|
| * | Drop unused tables (#6115)Richard van der Hoff2019-09-301-0/+20
| | | | | | | | | | | | | | | | | | These tables are unused since #5893 (as amended by #6047), so we can now drop them. Fixes #6048.
* | | Edit SimpleHttpClient to reference that header keys can be passed as str or ↵Andrew Morgan2020-02-261-6/+6
|\| | | | | | | | | | | bytes (#6077)
| * | Edit SimpleHttpClient to reference that header keys can be passed as str or ↵Andrew Morgan2019-09-271-6/+6
| | | | | | | | | | | | bytes (#6077)
| * | Incorporate reviewBrendan Abolivier2019-09-271-4/+2
| | |
| * | Update synapse/handlers/deactivate_account.pyBrendan Abolivier2019-09-271-1/+3
| | | | | | | | | Co-Authored-By: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
| * | Update synapse/handlers/deactivate_account.pyBrendan Abolivier2019-09-271-1/+1
| | | | | | | | | Co-Authored-By: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
| * | LintBrendan Abolivier2019-09-271-3/+1
| | |
| * | Fixup and add some loggingBrendan Abolivier2019-09-271-1/+9
| | |
| * | Reject pending invites on deactivationBrendan Abolivier2019-09-271-0/+31
| | |
* | | Move lookup-related functions from RoomMemberHandler to IdentityHandler (#5978)Andrew Morgan2020-02-263-386/+356
|\| |
| * | Move lookup-related functions from RoomMemberHandler to IdentityHandler (#5978)Andrew Morgan2019-09-272-364/+359
| | | | | | | | | Just to have all the methods that make calls to identity services in one place.
* | | Merge pull request #6108 from matrix-org/erikj/remove_get_user_by_req-spanAndrew Morgan2020-02-252-1/+21
|\| |
| * | Merge pull request #6108 from matrix-org/erikj/remove_get_user_by_req-spanErik Johnston2019-09-272-1/+21
| |\ \ | | | | | | | | Add some helpful opentracing tags and remove get_user_by_req span
| | * | isortErik Johnston2019-09-251-1/+1
| | | |
| | * | Add device and appservice tagsErik Johnston2019-09-251-0/+3
| | | |
| | * | Add tags for event_id and txn_id in event sendingErik Johnston2019-09-251-0/+18
| | | | | | | | | | | | | | | | This will make it easier to search for sending event requests.
| | * | Don't create new span for get_user_by_reqErik Johnston2019-09-251-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | We don't actually care about what happens in `get_user_by_req` and having it as a separate span means that the entity tag isn't added to the servlet spans, making it harder to search.
* | | | Merge pull request #6117 from matrix-org/erikj/fix_sample_configAndrew Morgan2020-02-251-1/+1
|\ \ \ \ | | |_|/ | |/| |
| * | | Fix 'redaction_retention_period' sampel config to match guidelinesErik Johnston2019-09-261-1/+1
| | | |
* | | | Kill off half-implemented password-reset via sms (#6101)Andrew Morgan2020-02-251-66/+1
|\ \ \ \ | | |/ / | |/| |
| * | | Kill off half-implemented password-reset via sms (#6101)Richard van der Hoff2019-09-261-64/+1
| |/ / | | | | | | | | | | | | | | | | | | Doing a password reset via SMS has never worked, and in any case is a silly idea because msisdn recycling is a thing. See also matrix-org/matrix-doc#2303.
* | | Explicitly log when a homeserver does not have a trusted key server ↵Andrew Morgan2020-02-252-12/+52
|\| | | | | | | | | | | configured (#6090)
| * | Explicitly log when a homeserver does not have a trusted key server ↵Neil Johnson2019-09-262-12/+52
| | | | | | | | | | | | configured (#6090)
* | | bump versionAndrew Morgan2020-02-251-1/+1
|\| |
| * | bump versionRichard van der Hoff2019-09-261-1/+1
| | |
* | | Fix dummy event insertion consent bug (#6053)Andrew Morgan2020-02-252-30/+87
|\| |
| * | Fix dummy event insertion consent bug (#6053)Neil Johnson2019-09-262-30/+87
| | | | | | | | | Fixes #5905
* | | Merge pull request #6098 from matrix-org/erikj/cleanup_user_ips_2Andrew Morgan2020-02-254-11/+119
|\| |
| * | Update comments and docstringRichard van der Hoff2019-09-251-4/+6
| | |
| * | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-09-2519-404/+1106
| |\ \ | | | | | | | | | | | | erikj/cleanup_user_ips_2
| * | | Review commentsErik Johnston2019-09-253-6/+3
| | | |
| * | | Prune rows in user_ips older than configured periodErik Johnston2019-09-242-8/+67
| | | | | | | | | | | | | | | | Defaults to pruning everything older than 28d.
| * | | Add has_completed_background_updateErik Johnston2019-09-241-1/+24
| | | | | | | | | | | | | | | | This allows checking if a specific background update has completed.
| * | | Add wrap_as_background_process decorator.Erik Johnston2019-09-241-1/+28
| | | | | | | | | | | | | | | | | | | | This does the same thing as `run_as_background_process` but means we don't need to create superfluous functions.
* | | | Merge pull request #6089 from matrix-org/erikj/cleanup_user_ipsAndrew Morgan2020-02-252-49/+99
|\ \ \ \ | | |/ / | |/| |
| * | | Merge pull request #6089 from matrix-org/erikj/cleanup_user_ipsErik Johnston2019-09-252-49/+99
| |\ \ \ | | | | | | | | | | Move last seen info into devices table
| | * \ \ Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-09-2518-400/+1104
| | |\ \ \ | | | | | | | | | | | | | | | | | | erikj/cleanup_user_ips
| | * | | | Use if `is not None`Erik Johnston2019-09-251-1/+1
| | | |/ / | | |/| | | | | | | Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
| | * | | Query devices table for last seen info.Erik Johnston2019-09-231-49/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a) simpler than querying user_ips directly and b) means we can purge older entries from user_ips without losing the required info. The storage functions now no longer return the access_token, since it was unused.
| | * | | Add BG update to populate devices last seen infoErik Johnston2019-09-232-0/+55
| | | | |
| | * | | Add last seen info to devices table.Erik Johnston2019-09-232-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | This allows us to purge old user_ips entries without having to preserve the latest last seen info for active devices.
* | | | | Enable cleaning up extremities with dummy events by default to prevent undue ↵Andrew Morgan2020-02-252-32/+35
|\| | | | | | | | | | | | | | | | | | | build up of forward extremities. (#5884)
| * | | | Enable cleaning up extremities with dummy events by default to prevent undue ↵Neil Johnson2019-09-251-3/+1
| | |/ / | |/| | | | | | | | | | build up of forward extremities. (#5884)
| * | | Threepid validity checks on msisdns should not be dependent on ↵Neil Johnson2019-09-251-29/+34
| | | | | | | | | | | | | | | | | | | | | | | | 'threepid_behaviour_email'. (#6104) Fixes #6103
* | | | Stop advertising unsupported flows for registration (#6107)Andrew Morgan2020-02-253-4/+65
|\| | |
| * | | Stop advertising unsupported flows for registration (#6107)Richard van der Hoff2019-09-253-4/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If email or msisdn verification aren't supported, let's stop advertising them for registration. Fixes #6100.
* | | | Refactor the user-interactive auth handling (#6105)Andrew Morgan2020-02-253-131/+248
|\| | |
| * | | Refactor the user-interactive auth handling (#6105)Richard van der Hoff2019-09-253-131/+248
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull the checkers out to their own classes, rather than having them lost in a massive 1000-line class which does everything. This is also preparation for some more intelligent advertising of flows, as per #6100
* | | | Refactor code for calculating registration flows (#6106)Andrew Morgan2020-02-251-62/+62
|\| | |
| * | | Refactor code for calculating registration flows (#6106)Richard van der Hoff2019-09-251-62/+62
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | because, frankly, it looked like it was written by an axe-murderer. This should be a non-functional change, except that where `m.login.dummy` was previously advertised *before* `m.login.terms`, it will now be advertised afterwards. AFAICT that should have no effect, and will be more consistent with the flows that involve passing a 3pid.
* | | Merge pull request #6092 from ↵Andrew Morgan2020-02-252-6/+6
|\| | | | | | | | | | | matrix-org/babolivier/background_update_deactivated_return
| * | Merge pull request #6092 from ↵Brendan Abolivier2019-09-242-6/+6
| |\ \ | | | | | | | | | | | | | | | | matrix-org/babolivier/background_update_deactivated_return Fix the return value in the users_set_deactivated_flag background job
| | * | Incorporate reviewBrendan Abolivier2019-09-241-3/+3
| | | |
| | * | Fix loggingBrendan Abolivier2019-09-241-1/+1
| | | |
| | * | TypoBrendan Abolivier2019-09-231-1/+1
| | | |
| | * | Fix the return value in the users_set_deactivated_flag background jobBrendan Abolivier2019-09-231-4/+4
| | | |
* | | | Merge pull request #6037 from matrix-org/rav/saml_mapping_workAndrew Morgan2020-02-255-10/+253
|\| | |
| * | | Merge remote-tracking branch 'origin/develop' into rav/saml_mapping_workRichard van der Hoff2019-09-244-8/+72
| |\ \ \
| * \ \ \ Merge remote-tracking branch 'origin/develop' into rav/saml_mapping_workRichard van der Hoff2019-09-2420-196/+674
| |\ \ \ \
| * \ \ \ \ Merge commit '33757bad1' into rav/saml_mapping_workRichard van der Hoff2019-09-201-1/+2
| |\ \ \ \ \
| | * | | | | More better loggingRichard van der Hoff2019-09-201-1/+2
| | | | | | |
| * | | | | | Merge branch 'develop' into rav/saml_mapping_workRichard van der Hoff2019-09-19181-2622/+6021
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | |
| * | | | | | better loggingRichard van der Hoff2019-09-191-0/+2
| | | | | | |
| * | | | | | Record mappings from saml users in an external tableRichard van der Hoff2019-09-135-10/+250
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We want to assign unique mxids to saml users based on an incrementing suffix. For that to work, we need to record the allocated mxid in a separate table.
* | | | | | | remove unused parameter to get_user_id_by_threepid (#6099)Andrew Morgan2020-02-251-1/+1
|\ \ \ \ \ \ \ | | |_|_|/ / / | |/| | | | |
| * | | | | | remove unused parameter to get_user_id_by_threepid (#6099)Richard van der Hoff2019-09-241-1/+1
| | | | | | | | | | | | | | | | | | | | | Added in #5377, apparently in error
* | | | | | | Merge pull request #6069 from matrix-org/rav/fix_attribute_mappingAndrew Morgan2020-02-252-7/+61
|\| | | | | |
| * | | | | | Merge pull request #6069 from matrix-org/rav/fix_attribute_mappingRichard van der Hoff2019-09-242-7/+61
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Fix a bug with saml attribute maps.
| | * | | | | | docstrings and commentsRichard van der Hoff2019-09-241-7/+21
| | | | | | | |
| | * | | | | | Merge branch 'develop' into rav/fix_attribute_mappingRichard van der Hoff2019-09-19181-2622/+6021
| | |\ \ \ \ \ \ | | | | |/ / / / | | | |/| | | |
| | * | | | | | Fix a bug with saml attribute maps.Richard van der Hoff2019-09-192-7/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes a bug where the default attribute maps were prioritised over user-specified ones, resulting in incorrect mappings. The problem is that if you call SPConfig.load() multiple times, it adds new attribute mappers to a list. So by calling it with the default config first, and then the user-specified config, we would always get the default mappers before the user-specified mappers. To solve this, let's merge the config dicts first, and then pass them to SPConfig.
* | | | | | | | Add sid to next_link for email validation (#6097)Andrew Morgan2020-02-251-0/+10
|\| | | | | | |
| * | | | | | | Add sid to next_link for email validation (#6097)J. Ryan Stinnett2019-09-241-0/+10
| | |_|_|/ / / | |/| | | | |
* | | | | | | Add submit_url response parameter to msisdn /requestToken (#6079)Andrew Morgan2020-02-252-1/+13
|\| | | | | |
| * | | | | | Add submit_url response parameter to msisdn /requestToken (#6079)Andrew Morgan2019-09-232-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Second part of solving #6076 Fixes #6076 We return a submit_url parameter on calls to POST */msisdn/requestToken so that clients know where to submit token information to.
* | | | | | | Add an unstable feature flag for separate add/bind 3pid APIs (#6044)Andrew Morgan2020-02-251-0/+2
|\| | | | | |
| * | | | | | Add an unstable feature flag for separate add/bind 3pid APIs (#6044)Andrew Morgan2019-09-231-0/+2
| | | | | | | | | | | | | | | | | | | | | Add a m.separate_add_and_bind flag set to True. See MSC2290's Backward Compatibility section for details.
* | | | | | | Merge pull request #6064 from matrix-org/rav/saml_config_cleanupAndrew Morgan2020-02-251-51/+62
|\| | | | | |
| * | | | | | Merge pull request #6064 from matrix-org/rav/saml_config_cleanupRichard van der Hoff2019-09-231-51/+62
| |\ \ \ \ \ \ | | | | | | | | | | | | | | | | Make the sample saml config closer to our standards
| | * \ \ \ \ \ Merge branch 'develop' into rav/saml_config_cleanupRichard van der Hoff2019-09-19181-2622/+6021
| | |\ \ \ \ \ \ | | | | |/ / / / | | | |/| / / / | | | |_|/ / / | | |/| | | |
| | * | | | | Make the sample saml config closer to our standardsRichard van der Hoff2019-09-131-51/+62
| | | |/ / / | | |/| | | | | | | | | | | | | | | It' still not great, thanks to the nested dictionaries, but it's better.
* | | | | | Use the federation blacklist for requests to untrusted Identity Servers (#6000)Andrew Morgan2020-02-253-3/+23
|\| | | | |
| * | | | | Use the federation blacklist for requests to untrusted Identity Servers (#6000)Andrew Morgan2019-09-233-4/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Uses a SimpleHttpClient instance equipped with the federation_ip_range_blacklist list for requests to identity servers provided by user input. Does not use a blacklist when contacting identity servers specified by account_threepid_delegates. The homeserver trusts the latter and we don't want to prevent homeserver admins from specifying delegates that are on internal IP addresses. Fixes #5935
* | | | | | Add m.id_access_token to /versions unstable_features (MSC2264) (#5974)Andrew Morgan2020-02-251-0/+3
|\| | | | |
| * | | | | Add m.id_access_token to /versions unstable_features (MSC2264) (#5974)Andrew Morgan2019-09-231-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a flag to /versions' unstable_features section indicating that this Synapse understands what an id_access_token is, as per MSC2264. Fixes #5927
* | | | | | Add m.require_identity_server to /versions unstable_flags (#5972)Andrew Morgan2020-02-251-1/+13
|\| | | | |
| * | | | | Add m.require_identity_server to /versions unstable_flags (#5972)Andrew Morgan2019-09-231-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As MSC2263 states, m.require_identity_server must be set to false when it does not require an identity server to be provided by the client for the purposes of email registration or password reset. Adds an m.require_identity_server flag to /versionss unstable_flags section. This will advertise that Synapse no longer needs id_server as a parameter.
* | | | | | Add POST submit_token endpoint for MSISDN (#6078)Andrew Morgan2020-02-252-2/+79
|\| | | | |
| * | | | | Add POST submit_token endpoint for MSISDN (#6078)Andrew Morgan2019-09-232-2/+79
| | |_|/ / | |/| | | | | | | | First part of solving #6076
* | | | | Implement MSC2290 (#6043)Andrew Morgan2020-02-255-124/+235
|\| | | |
| * | | | Implement MSC2290 (#6043)Andrew Morgan2019-09-235-125/+202
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | Implements MSC2290. This PR adds two new endpoints, /unstable/account/3pid/add and /unstable/account/3pid/bind. Depending on the progress of that MSC the unstable prefix may go away. This PR also removes the blacklist on some 3PID tests which occurs in #6042, as the corresponding Sytest PR changes them to use the new endpoints. Finally, it also modifies the account deactivation code such that it doesn't just try to deactivate 3PIDs that were bound to the user's account, but any 3PIDs that were bound through the homeserver on that user's account.
* | | | Disable /register/available if registration is disabled (#6082)Andrew Morgan2020-02-251-0/+5
|\| | |
| * | | Disable /register/available if registration is disabled (#6082)Andrew Morgan2019-09-231-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes #6066 This register endpoint should be disabled if registration is disabled, otherwise we're giving anyone the ability to check if a username exists on a server when we don't need to be. Error code is 403 (Forbidden) as that's the same returned by /register when registration is disabled.
* | | | Generalize email sending logging (#6075)Andrew Morgan2020-02-251-1/+1
|\| | |
| * | | Generalize email sending logging (#6075)Andrew Morgan2019-09-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | In ancient times Synapse would only send emails when it was notifying a user about a message they received... Now it can do all sorts of neat things! Change the logging so it's not just about notifications.
* | | | Return timeout error to user for identity server calls (#6073)Andrew Morgan2020-02-252-11/+37
|\| | |
| * | | Return timeout error to user for identity server calls (#6073)Andrew Morgan2019-09-232-11/+37
| | | |
* | | | Merge pull request #6072 from matrix-org/rav/fix_retry_resetAndrew Morgan2020-02-253-3/+3
|\| | |
| * | | Merge pull request #6072 from matrix-org/rav/fix_retry_resetRichard van der Hoff2019-09-231-1/+1
| |\ \ \ | | | | | | | | | | Fix exception when resetting retry timings
| | * | | Fix exception when resetting retry timingsRichard van der Hoff2019-09-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: > TypeError: set_destination_retry_timings() missing 1 required positional argument: 'retry_interval' Introduced in #6016.
| * | | | fix broken copyrightsMatthew Hodgson2019-09-232-2/+2
| | | | |
* | | | | Allow HS to send emails when adding an email to the HS (#6042)Andrew Morgan2020-02-2510-81/+372
|\| | | |
| * | | | Allow HS to send emails when adding an email to the HS (#6042)Andrew Morgan2019-09-2010-72/+346
| | | | |
* | | | | Remove trailing slash ability from password reset's submit_token endpoint ↵Andrew Morgan2020-02-251-1/+1
|\| | | | | | | | | | | | | | | | | | | (#6074)
| * | | | Remove trailing slash ability from password reset's submit_token endpoint ↵Andrew Morgan2019-09-201-1/+1
| |/ / / | | | | | | | | | | | | | | | | (#6074) Remove trailing slash ability from the password reset submit_token endpoint. Since we provide the link in an email, and have never sent it with a trailing slash, there's no point for us to accept them on the endpoint.
* | | | Ensure email validation link parameters are URL-encoded (#6063)Andrew Morgan2020-02-251-4/+6
|\| | |
| * | | Ensure email validation link parameters are URL-encoded (#6063)Andrew Morgan2019-09-201-4/+6
| | | | | | | | | | | | The validation links sent via email had their query parameters inserted without any URL-encoding. Surprisingly this didn't seem to cause any issues, but if a user were to put a `/` in their client_secret it could lead to problems.
* | | | Drop support for bind param on POST /account/3pid (MSC2290) (#6067)Andrew Morgan2020-02-251-4/+0
|\| | |
| * | | Drop support for bind param on POST /account/3pid (MSC2290) (#6067)Andrew Morgan2019-09-201-4/+0
| | | | | | | | | | | | As per [MSC2290](https://github.com/matrix-org/matrix-doc/pull/2290/files#diff-05cde9463e9209b701312b3baf2fb2ebR151), we're dropping the bind parameter from `/account/3pid`. This endpoint can now only be used for adding threepid's to the user's account on the homeserver.
* | | | Use unstable prefix for 3PID unbind API (#6062)Andrew Morgan2020-02-251-1/+1
|\| | |
| * | | Use unstable prefix for 3PID unbind API (#6062)J. Ryan Stinnett2019-09-191-1/+1
| | | |
* | | | Undo the deletion of some tables (#6047)Andrew Morgan2020-02-251-20/+0
|\| | |
| * | | Undo the deletion of some tables (#6047)Richard van der Hoff2019-09-191-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a partial revert of #5893. The problem is that if we drop these tables in the same release as removing the code that writes to them, it prevents users users from being able to roll back to a previous release. So let's leave the tables in place for now, and remember to drop them in a subsequent release. (Note that these tables haven't been *read* for *years*, so any missing rows resulting from a temporary upgrade to vNext won't cause a problem.)
* | | | Remove POST method from password reset submit_token endpoint (#6056)Andrew Morgan2020-02-251-19/+0
|\| | |
| * | | Remove POST method from password reset submit_token endpoint (#6056)Andrew Morgan2019-09-191-17/+0
| | | | | | | | | | | | Removes the POST method from `/password_reset/<medium>/submit_token/` as it's only used by phone number verification which Synapse does not support yet.
* | | | Fix typo in account_threepid_delegates config (#6028)Andrew Morgan2020-02-251-1/+1
|\| | |
| * | | Fix typo in account_threepid_delegates config (#6028)Jorik Schellekens2019-09-181-1/+1
| | | |
* | | | Fix logcontext spam on non-Linux platforms (#6059)Andrew Morgan2020-02-251-2/+11
|\| | |
| * | | Fix logcontext spam on non-Linux platforms (#6059)J. Ryan Stinnett2019-09-181-2/+11
| | |/ | |/| | | | | | | | | | | | | | | | This checks whether the current platform supports thread resource usage tracking before logging a warning to avoid log spam. Fixes https://github.com/matrix-org/synapse/issues/6055
* | | v2 3PID Invites (part of MSC2140) (#5979)Andrew Morgan2020-02-251-25/+84
|\| |
| * | v2 3PID Invites (part of MSC2140) (#5979)Andrew Morgan2019-09-171-23/+81
| | | | | | | | | | | | | | | | | | | | | 3PID invites require making a request to an identity server to check that the invited 3PID has an Matrix ID linked, and if so, what it is. These requests are being made on behalf of a user. The user will supply an identity server and an access token for that identity server. The homeserver will then forward this request with the access token (using an `Authorization` header) and, if the given identity server doesn't support v2 endpoints, will fall back to v1 (which doesn't require any access tokens). Requires: ~~#5976~~
* | | (#5849) Convert rst to markdown (#6040)Andrew Morgan2020-02-251-6/+6
|\| |
| * | (#5849) Convert rst to markdown (#6040)dstipp2019-09-171-6/+6
| | | | | | | | | | | | | | | Converting some of the rst documentation to markdown. Attempted to preserve whitespace and line breaks to minimize cosmetic change.
* | | Fix race condition in room stats. (#6029)Andrew Morgan2020-02-251-4/+10
|\| |
| * | Fix race condition in room stats. (#6029)Erik Johnston2019-09-171-4/+10
| | | | | | | | | | | | | | | Broke in #5971 Basically the bug is that if get_current_state_deltas returns no new updates and we then take the max pos, its possible that we miss an update that happens in between the two calls. (e.g. get_current_state_deltas looks up to stream pos 5, then an event persists and so getting the max stream pos returns 6, meaning that next time we check for things with a stream pos bigger than 6)
* | | Add 'failure_ts' column to 'destinations' table (#6016)Andrew Morgan2020-02-253-8/+56
|\| |
| * | Add 'failure_ts' column to 'destinations' table (#6016)Richard van der Hoff2019-09-173-8/+56
| | | | | | | | | | | | Track the time that a server started failing at, for general analysis purposes.
* | | Fix well-known lookups with the federation certificate whitelist (#5997)Andrew Morgan2020-02-253-15/+22
|\| |
| * | Fix well-known lookups with the federation certificate whitelist (#5997)Amber Brown2019-09-143-15/+22
| | |
* | | Fix for structured logging tests stomping on logs (#6023)Andrew Morgan2020-02-257-24/+45
|\| |
| * | Fix for structured logging tests stomping on logs (#6023)Amber Brown2019-09-137-24/+45
| | |
* | | Remove the cap on federation retry interval. (#6026)Andrew Morgan2020-02-251-2/+2
|\| |
| * | Remove the cap on federation retry interval. (#6026)Richard van der Hoff2019-09-121-2/+2
| | | | | | | | | | | | | | | | | | Essentially the intention here is to end up blacklisting servers which never respond to federation requests. Fixes https://github.com/matrix-org/synapse/issues/5113.
* | | Fix bug in calculating the federation retry backoff period (#6025)Andrew Morgan2020-02-251-2/+3
|\| |
| * | Fix bug in calculating the federation retry backoff period (#6025)Richard van der Hoff2019-09-121-2/+3
| | | | | | | | | | | | This was intended to introduce an element of jitter; instead it gave you a 30/60 chance of resetting to zero.
* | | Merge pull request #6024 from matrix-org/dbkr/fix_sso_fallback_loginAndrew Morgan2020-02-251-1/+1
|\| |
| * | Fix SSO fallback loginDavid Baker2019-09-121-1/+1
| | | | | | | | | | | | | | | Well, it worked, but forgot to remove the thing saying login was unavailable.
* | | add report_stats_endpoint config option (#6012)Andrew Morgan2020-02-252-2/+13
|\| |
| * | add report_stats_endpoint config option (#6012)Sorunome2019-09-122-2/+13
| | | | | | | | | This PR adds the optional `report_stats_endpoint` to configure where stats are reported to, if enabled.
* | | Blow up config if opentracing is missing (#5985)Andrew Morgan2020-02-251-0/+7
|\| |
| * | Blow up config if opentracing is missing (#5985)Jorik Schellekens2019-09-121-0/+7
| | | | | | | | | | | | * Blow up config if opentracing is missing
* | | Merge pull request #6020 from matrix-org/jaywink/allow-support-users-to-registerAndrew Morgan2020-02-251-2/+9
|\| |
| * | Ensure support users can be registered even if MAU limit is reachedJason Robinson2019-09-111-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | This allows support users to be created even on MAU limits via the admin API. Support users are excluded from MAU after creation, so it makes sense to exclude them in creation - except if the whole host is in disabled state. Signed-off-by: Jason Robinson <jasonr@matrix.org>
* | | Use the v2 Identity Service API for lookups (MSC2134 + MSC2140) (#5976)Andrew Morgan2020-02-255-32/+273
|\| |
| * | Use the v2 Identity Service API for lookups (MSC2134 + MSC2140) (#5976)Andrew Morgan2019-09-115-35/+237
| | | | | | | | | | | | | | | | | | | | | This is a redo of https://github.com/matrix-org/synapse/pull/5897 but with `id_access_token` accepted. Implements [MSC2134](https://github.com/matrix-org/matrix-doc/pull/2134) plus Identity Service v2 authentication ala [MSC2140](https://github.com/matrix-org/matrix-doc/pull/2140). Identity lookup-related functions were also moved from `RoomMemberHandler` to `IdentityHandler`.
* | | Merge pull request #6015 from matrix-org/erikj/ratelimit_admin_redactionAndrew Morgan2020-02-254-12/+70
|\| |
| * | Merge pull request #6015 from matrix-org/erikj/ratelimit_admin_redactionErik Johnston2019-09-114-12/+70
| |\ \ | | | | | | | | Allow use of different ratelimits for admin redactions.
| | * | Fix commentsErik Johnston2019-09-113-3/+3
| | | | | | | | | | | | Co-Authored-By: Andrew Morgan <1342360+anoadragon453@users.noreply.github.com>
| | * | Fix how we check for self redactionErik Johnston2019-09-111-4/+18
| | | |
| | * | Allow use of different ratelimits for admin redactions.Erik Johnston2019-09-114-12/+56
| | | | | | | | | | | | | | | | | | | | This is useful to allow room admins to quickly deal with a large number of abusive messages.
* | | | Clean up some code in the retry logic (#6017)Andrew Morgan2020-02-252-36/+13
|\| | |
| * | | Clean up some code in the retry logic (#6017)Richard van der Hoff2019-09-112-36/+13
| | | | | | | | | | | | | | | | * remove some unused code * make things which were constants into constants for efficiency and clarity
* | | | Add note about extra arg to send_membership_event, remove arg in ↵Andrew Morgan2020-02-251-10/+2
|\| | | | | | | | | | | | | | | remote_reject_invite (#6009)
| * | | Add note about extra arg to send_membership_event, remove arg in ↵Andrew Morgan2019-09-111-10/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | remote_reject_invite (#6009) Some small fixes to `room_member.py` found while doing other PRs. 1. Add requester to the base `_remote_reject_invite` method. 2. `send_membership_event`'s docstring was out of date and took in a `remote_room_hosts` arg that was not used and no calling function provided.
* | | | Check dependencies on setup in the nicer way. (#5989)Andrew Morgan2020-02-253-28/+19
|\| | |
| * | | Check dependencies on setup in the nicer way. (#5989)Jorik Schellekens2019-09-113-28/+19
| | | |
* | | | Fix existing v2 identity server calls (MSC2140) (#6013)Andrew Morgan2020-02-251-2/+26
|\| | |
| * | | Fix existing v2 identity server calls (MSC2140) (#6013)Andrew Morgan2019-09-111-2/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two things I missed while implementing [MSC2140](https://github.com/matrix-org/matrix-doc/pull/2140/files#diff-c03a26de5ac40fb532de19cb7fc2aaf7R80). 1. Access tokens should be provided to the identity server as `access_token`, not `id_access_token`, even though the homeserver may accept the tokens as `id_access_token`. 2. Access tokens must be sent to the identity server in a query parameter, the JSON body is not allowed. We now send the access token as part of an `Authorization: ...` header, which fixes both things. The breaking code was added in https://github.com/matrix-org/synapse/pull/5892 Sytest PR: https://github.com/matrix-org/sytest/pull/697
* | | | Remove origin parameter from add_display_name_to_third_party_invite and add ↵Andrew Morgan2020-02-253-4/+9
|\| | | | | | | | | | | | | | | params to docstring (#6010)
| * | | Remove origin parameter from add_display_name_to_third_party_invite and add ↵Andrew Morgan2019-09-113-4/+9
| |/ / | | | | | | | | | | | | | | | | | | params to docstring (#6010) Another small fixup noticed during work on a larger PR. The `origin` field of `add_display_name_to_third_party_invite` is not used and likely was just carried over from the `on_PUT` method of `FederationThirdPartyInviteExchangeServlet` which, like all other servlets, provides an `origin` argument. Since it's not used anywhere in the handler function though, we should remove it from the function arguments.
* | | Merge pull request #6011 from matrix-org/anoa/fix_3pid_validationAndrew Morgan2020-02-253-41/+45
|\| |
| * | Merge pull request #6011 from matrix-org/anoa/fix_3pid_validationErik Johnston2019-09-103-42/+45
| |\ \ | | | | | | | | Use account_threepid_delegate for 3pid validation
| | * | Add changelogAndrew Morgan2019-09-102-4/+4
| | | |
| | * | Use account_threepid_delegate for 3pid validationAndrew Morgan2019-09-103-42/+45
| | | |
* | | | Merge pull request #6004 from matrix-org/jaywink/autojoin-create-real-usersAndrew Morgan2020-02-252-8/+41
|\| | |
| * | | Merge pull request #6004 from matrix-org/jaywink/autojoin-create-real-usersJason Robinson2019-09-092-8/+41
| |\ \ \ | | | | | | | | | | Only count real users when checking for auto-creation of auto-join room
| | * | | Fix code style, againJason Robinson2019-09-091-3/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Jason Robinson <jasonr@matrix.org>
| | * | | Simplify count_real_users SQL to only count user_type is null rowsJason Robinson2019-09-091-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Jason Robinson <jasonr@matrix.org>
| | * | | Simplify is_real_user_txn check to trust user_type is null if real userJason Robinson2019-09-091-1/+1
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Jason Robinson <jasonr@matrix.org>
| | * | | Auto-fix a few code style issuesJason Robinson2019-09-091-4/+4
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Jason Robinson <jasonr@matrix.org>
| | * | | Only count real users when checking for auto-creation of auto-join roomJason Robinson2019-09-092-8/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously if the first registered user was a "support" or "bot" user, when the first real user registers, the auto-join rooms were not created. Fix to exclude non-real (ie users with a special user type) users when counting how many users there are to determine whether we should auto-create a room. Signed-off-by: Jason Robinson <jasonr@matrix.org>
* | | | | Merge pull request #5934 from matrix-org/erikj/censor_redactionsAndrew Morgan2020-02-253-1/+136
|\| | | |
| * | | | Merge pull request #5934 from matrix-org/erikj/censor_redactionsErik Johnston2019-09-093-1/+136
| |\ \ \ \ | | | | | | | | | | | | Censor redactions in DB after a month
| | * | | | Fix commentsErik Johnston2019-09-091-2/+3
| | | | | |
| | * | | | Default to censoring redactions after seven daysErik Johnston2019-09-091-4/+6
| | | | | |
| | * | | | Use better names in SQLErik Johnston2019-09-091-5/+8
| | | | | |
| | * | | | Fixup commentErik Johnston2019-09-091-4/+12
| | | | | |
| | * | | | Don't start looping call unless enabledErik Johnston2019-09-091-1/+2
| | | | | |
| | * | | | Handle setting retention period to 0Erik Johnston2019-09-092-2/+2
| | | | | |
| | * | | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-09-05102-1339/+1680
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | erikj/censor_redactions
| | * | | | | Make redaction retention period configurableErik Johnston2019-09-052-2/+19
| | | | | | |
| | * | | | | Censor redactions in DB after a monthErik Johnston2019-08-302-1/+104
| | | | | | |
* | | | | | | Add a build info metric to Prometheus (#6005)Andrew Morgan2020-02-251-0/+12
|\| | | | | |
| * | | | | | Add a build info metric to Prometheus (#6005)Amber Brown2019-09-101-0/+12
| | | | | | |
* | | | | | | Merge pull request #6003 from matrix-org/erikj/push_opentracingAndrew Morgan2020-02-251-1/+12
|\| | | | | |
| * | | | | | Add opentracing span for HTTP pushErik Johnston2019-09-091-1/+12
| | |_|/ / / | |/| | | |
* | | | | | Servers-known-about statistic (#5981)Andrew Morgan2020-02-252-0/+90
|\| | | | |
| * | | | | Servers-known-about statistic (#5981)Amber Brown2019-09-072-0/+90
| | | | | |
* | | | | | Ensure a sid parameter is passed to bind_threepid (#5995)Andrew Morgan2020-02-251-1/+7
|\| | | | |
| * | | | | Ensure a sid parameter is passed to bind_threepid (#5995)Andrew Morgan2019-09-061-1/+7
| | | | | | | | | | | | | | | | | | `sid` is required to be part of `three_pid_creds`. We were 500'ing if it wasn't provided instead of returning `M_MISSING_PARAM`.
* | | | | | Merge pull request #5998 from matrix-org/erikj/fixup_federate_flagAndrew Morgan2020-02-252-2/+6
|\| | | | |
| * | | | | Merge pull request #5998 from matrix-org/erikj/fixup_federate_flagErik Johnston2019-09-062-2/+6
| |\ \ \ \ \ | | |_|_|/ / | |/| | | | Correctly handle non-bool m.federate flag
| | * | | | Correctly handle non-bool m.federate flagErik Johnston2019-09-062-2/+6
| | | | | |
* | | | | | Merge pull request #5993 from matrix-org/anoa/worker_store_regAndrew Morgan2020-02-251-79/+79
|\| | | | |
| * | | | | Merge pull request #5993 from matrix-org/anoa/worker_store_regErik Johnston2019-09-061-79/+79
| |\ \ \ \ \ | | | | | | | | | | | | | | Move get_threepid_validation_session and delete_threepid_session into RegistrationWorkerStore
| | * | | | | Move delete_threepid_session into RegistrationWorkerStoreAndrew Morgan2019-09-061-25/+25
| | | | | | |
| | * | | | | Move get_threepid_validation_session into RegistrationWorkerStoreAndrew Morgan2019-09-061-54/+54
| | |/ / / /
* | | | | | Merge pull request #5994 from matrix-org/anoa/html_template_fixAndrew Morgan2020-02-252-2/+2
|\| | | | |
| * | | | | Apply suggestions from code reviewAndrew Morgan2019-09-062-2/+2
| | | | | | | | | | | | | | | | | | Co-Authored-By: Erik Johnston <erik@matrix.org>
| * | | | | Fix destructuring assumption bugAndrew Morgan2019-09-062-2/+2
| |/ / / /
* | | | | Merge pull request #5991 from matrix-org/erikj/fix_tracing_funcsAndrew Morgan2020-02-251-5/+5
|\| | | |
| * | | | Merge pull request #5991 from matrix-org/erikj/fix_tracing_funcsErik Johnston2019-09-061-5/+5
| |\ \ \ \ | | | | | | | | | | | | Don't assume there is a 'self' arg in @trace decorator
| | * | | | Don't assume there is a 'self' arg in @trace decoratorErik Johnston2019-09-061-5/+5
| | | | | |
* | | | | | Allow Synapse to send registration emails + choose Synapse or an external ↵Andrew Morgan2020-02-2520-292/+706
|\| | | | | | | | | | | | | | | | | | | | | | | server to handle 3pid validation (#5987)
| * | | | | Allow Synapse to send registration emails + choose Synapse or an external ↵Andrew Morgan2019-09-0620-289/+706
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | server to handle 3pid validation (#5987) This is a combination of a few different PRs, finally all being merged into `develop`: * #5875 * #5876 * #5868 (This one added the `/versions` flag but the flag itself was actually [backed out](https://github.com/matrix-org/synapse/commit/891afb57cbdf9867f2848341b29c75d6f35eef5a#diff-e591d42d30690ffb79f63bb726200891) in #5969. What's left is just giving /versions access to the config file, which could be useful in the future) * #5835 * #5969 * #5940 Clients should not actually use the new registration functionality until https://github.com/matrix-org/synapse/pull/5972 is merged. UPGRADE.rst, changelog entries and config file changes should all be reviewed closely before this PR is merged.