summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Ensure media is in local cache before thumbnailingErik Johnston2018-01-183-10/+40
|
* Do logcontexts correctlyErik Johnston2018-01-181-2/+2
|
* Move test stuff to testsErik Johnston2018-01-181-25/+1
|
* Make all fields privateErik Johnston2018-01-181-31/+31
|
* Ensure we registerProducer isn't called twiceErik Johnston2018-01-181-0/+3
|
* Fix _notify_empty typoErik Johnston2018-01-181-1/+1
|
* Move definition of paused_producer to __init__Erik Johnston2018-01-181-2/+4
|
* Fix commentsErik Johnston2018-01-181-3/+3
|
* Add decent impl of a FileConsumerErik Johnston2018-01-171-0/+158
| | | | | | | | | | Twisted core doesn't have a general purpose one, so we need to write one ourselves. Features: - All writing happens in background thread - Supports both push and pull producers - Push producers get paused if the consumer falls behind
* Merge pull request #2789 from matrix-org/erikj/fix_thumbnailsErik Johnston2018-01-173-24/+68
|\ | | | | Fix thumbnailing remote files
| * Add docstringErik Johnston2018-01-171-1/+1
| |
| * Use local varsErik Johnston2018-01-161-6/+2
| |
| * Change _generate_thumbnails to take media_typeErik Johnston2018-01-162-7/+10
| |
| * Move setting of file_id up to callerErik Johnston2018-01-162-13/+14
| |
| * Fix typoErik Johnston2018-01-161-7/+10
| |
| * Fix up log linesErik Johnston2018-01-162-7/+10
| |
| * Correctly use server_name/file_id when generating/fetching remote thumbnailsErik Johnston2018-01-162-5/+8
| |
| * Log when we respond with 404Erik Johnston2018-01-162-1/+8
| |
| * Fix thumbnailing remote filesErik Johnston2018-01-162-2/+30
| |
* | fix typoMatthew Hodgson2018-01-161-1/+1
| |
* | Merge pull request #2785 from matrix-org/rav/reorganise_metrics_againRichard van der Hoff2018-01-163-39/+151
|\ \ | | | | | | Reorganise request and block metrics
| * | Reorganise request and block metricsRichard van der Hoff2018-01-152-25/+84
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In order to circumvent the number of duplicate foo:count metrics increasing without bounds, it's time for a rearrangement. The following are all deprecated, and replaced with synapse_util_metrics_block_count: synapse_util_metrics_block_timer:count synapse_util_metrics_block_ru_utime:count synapse_util_metrics_block_ru_stime:count synapse_util_metrics_block_db_txn_count:count synapse_util_metrics_block_db_txn_duration:count The following are all deprecated, and replaced with synapse_http_server_response_count: synapse_http_server_requests synapse_http_server_response_time:count synapse_http_server_response_ru_utime:count synapse_http_server_response_ru_stime:count synapse_http_server_response_db_txn_count:count synapse_http_server_response_db_txn_duration:count The following are renamed (the old metrics are kept for now, but deprecated): synapse_util_metrics_block_timer:total -> synapse_util_metrics_block_time_seconds synapse_util_metrics_block_ru_utime:total -> synapse_util_metrics_block_ru_utime_seconds synapse_util_metrics_block_ru_stime:total -> synapse_util_metrics_block_ru_stime_seconds synapse_util_metrics_block_db_txn_count:total -> synapse_util_metrics_block_db_txn_count synapse_util_metrics_block_db_txn_duration:total -> synapse_util_metrics_block_db_txn_duration_seconds synapse_http_server_response_time:total -> synapse_http_server_response_time_seconds synapse_http_server_response_ru_utime:total -> synapse_http_server_response_ru_utime_seconds synapse_http_server_response_ru_stime:total -> synapse_http_server_response_ru_stime_seconds synapse_http_server_response_db_txn_count:total -> synapse_http_server_response_db_txn_count synapse_http_server_response_db_txn_duration:total synapse_http_server_response_db_txn_duration_seconds
| * | mechanism to render metrics with alternative namesRichard van der Hoff2018-01-151-13/+40
| | |
| * | Add some comments to metrics classesRichard van der Hoff2018-01-151-1/+27
| | |
* | | Merge pull request #2790 from matrix-org/rav/preserve_event_logcontext_leakRichard van der Hoff2018-01-161-1/+8
|\ \ \ | | | | | | | | Fix a logcontext leak in persist_events
| * | | Fix a logcontext leak in persist_eventsRichard van der Hoff2018-01-161-1/+8
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ObserveableDeferred expects its callbacks to be called without any logcontexts, whereas it turns out we were calling them with the logcontext of the request which initiated the persistence loop. It seems wrong that we are attributing work done in the persistence loop to the request that happened to initiate it, so let's solve this by dropping the logcontext for it. (I'm not sure this actually causes any real problems other than messages in the debug log, but let's clean it up anyway)
* | | Merge pull request #2787 from matrix-org/rav/worker_event_countsRichard van der Hoff2018-01-162-0/+11
|\ \ \ | | | | | | | | Metrics for events processed in appservice and fed sender
| * | | Metrics for events processed in appservice and fed senderRichard van der Hoff2018-01-152-0/+11
| |/ / | | | | | | | | | More metrics I wished I'd had
* | | Merge pull request #2786 from matrix-org/rav/rdata_metricsRichard van der Hoff2018-01-161-5/+14
|\ \ \ | |_|/ |/| | Metrics for number of RDATA commands received
| * | Metrics for number of RDATA commands receivedRichard van der Hoff2018-01-151-5/+14
| |/ | | | | | | I found myself wishing we had this.
* | Merge pull request #2767 from matrix-org/erikj/media_storage_refactorErik Johnston2018-01-167-346/+843
|\ \ | |/ |/| Refactor MediaRepository to separate out storage
| * Fix up commentsErik Johnston2018-01-122-7/+16
| |
| * Correctly reraise exceptionErik Johnston2018-01-121-2/+4
| |
| * Make Responder a context managerErik Johnston2018-01-122-9/+10
| |
| * Add missing class varErik Johnston2018-01-121-0/+3
| |
| * Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-01-127-28/+68
| |\ | | | | | | | | | erikj/media_storage_refactor
| * | Remove unnecessary conditionErik Johnston2018-01-121-4/+1
| | |
| * | Remove unused variablesErik Johnston2018-01-121-3/+0
| | |
| * | Make class var localErik Johnston2018-01-121-3/+3
| | |
| * | CommentsErik Johnston2018-01-123-15/+65
| | |
| * | Add StorageProvider conceptErik Johnston2018-01-093-9/+162
| | |
| * | Make PreviewUrlResource use MediaStorageErik Johnston2018-01-092-8/+14
| | |
| * | Make ThumbnailResource use MediaStorageErik Johnston2018-01-092-48/+68
| | |
| * | Use MediaStorage for remote mediaErik Johnston2018-01-092-136/+156
| | |
| * | Use MediaStorage for local filesErik Johnston2018-01-092-119/+73
| | |
| * | Add MediaStorage classErik Johnston2018-01-091-0/+198
| | |
| * | Add some helper classesErik Johnston2018-01-091-0/+73
| | |
| * | Split out add_file_headersErik Johnston2018-01-091-28/+42
| | |
* | | Make Counter render floatsRichard van der Hoff2018-01-121-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | Prometheus handles all metrics as floats, and sometimes we store non-integer values in them (notably, durations in seconds), so let's render them as floats too. (Note that the standard client libraries also treat Counters as floats.)
* | | Reinstate media download on thumbnail requestRichard van der Hoff2018-01-121-0/+5
| | | | | | | | | | | | | | | We need to actually download the remote media when we get a request for a thumbnail.
* | | Merge pull request #2774 from matrix-org/erikj/synctlErik Johnston2018-01-122-5/+31
|\ \ \ | |_|/ |/| | When using synctl with workers, don't start the main synapse automatically
| * | Actually make it workErik Johnston2018-01-122-2/+15
| | |
| * | RefactorErik Johnston2018-01-121-9/+4
| | |
| * | When using synctl with workers, don't start the main synapse automaticallyErik Johnston2018-01-111-8/+26
| | |
* | | Merge pull request #2766 from matrix-org/rav/room_eventRichard van der Hoff2018-01-111-3/+26
|\ \ \ | |/ / |/| | Add /room/{id}/event/{id} to synapse
| * | Add /room/{id}/event/{id} to synapseRichard van der Hoff2018-01-091-3/+26
| | | | | | | | | | | | | | | | | | Turns out that there is a valid usecase for retrieving event by id (notably having received a push), but event ids should be scoped to room, so /event/{id} is wrong.
* | | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2018-01-111-1/+1
|\ \ \
| * | | Bump version and changelog release-v0.26.0Erik Johnston2018-01-051-1/+1
| | | |
| * | | Bump changelog and versionErik Johnston2017-12-131-1/+1
| | | |
* | | | Merge pull request #2773 from matrix-org/erikj/hash_bgErik Johnston2018-01-103-10/+18
|\ \ \ \ | | | | | | | | | | Do bcrypt hashing in a background thread
| * | | | Do bcrypt hashing in a background threadErik Johnston2018-01-103-10/+18
| | | | |
* | | | | fix order of operations derp and also use `.get` to default to {}Michael Telatynski2018-01-101-2/+3
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* | | | | Fix publicised groups API (singular) over federationMichael Telatynski2018-01-101-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | which was missing its fed client API, since there is no other API it might as well reuse the bulk one and unwrap it Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
* | | | | Merge pull request #2770 from matrix-org/rav/fix_request_metricsRichard van der Hoff2018-01-101-11/+19
|\ \ \ \ \ | |_|_|_|/ |/| | | | Update http request metrics before calling servlet
| * | | | Update http request metrics before calling servletRichard van der Hoff2018-01-091-11/+19
| | |_|/ | |/| | | | | | | | | | | | | | Make sure that we set the servlet name in the metrics object *before* calling the servlet, in case the servlet throws an exception.
* | | | Remove dead TODOErik Johnston2018-01-091-2/+0
| | | |
* | | | Remove dead code related to default thumbnailsErik Johnston2018-01-092-76/+3
|/ / /
* | | Merge pull request #2763 from matrix-org/rav/fix_config_utsRichard van der Hoff2018-01-091-2/+2
|\ \ \ | | | | | | | | Fix broken config UTs
| * | | Fix broken config UTsRichard van der Hoff2018-01-091-2/+2
| | | | | | | | | | | | | | | | | | | | https://github.com/matrix-org/synapse/pull/2755 broke log-config generation, which in turn broke the unit tests.
* | | | Make indentation of generated log config consistentRichard van der Hoff2018-01-091-17/+17
|/ / / | | | | | | | | | (we had a mix of 2- and 4-space indents)
* | | Fix templating error with unban permission messageTravis Ralston2018-01-071-1/+1
| | | | | | | | | | | | | | | Fixes https://github.com/matrix-org/synapse/issues/2759 Signed-off-by: Travis Ralston <travpc@gmail.com>
* | | Remove 'verbosity'/'log_file' from generated cfgRichard van der Hoff2018-01-051-8/+4
| | | | | | | | | | | | | | | | | | ... because these only really exist to confuse people nowadays. Also bring log config more into line with the generated log config, by making `level_for_storage` apply to the `synapse.storage.SQL` logger rather than `synapse.storage`.
* | | Merge pull request #2744 from matrix-org/rav/login_loggingRichard van der Hoff2018-01-051-4/+10
|\ \ \ | | | | | | | | Better logging when login can't find a 3pid
| * | | Better logging when login can't find a 3pidRichard van der Hoff2017-12-201-4/+10
| | | |
* | | | Check missing fields in event_from_pdu_jsonRichard van der Hoff2017-12-301-0/+7
| | | | | | | | | | | | | | | | Return a 400 rather than a 500 when somebody messes up their send_join
* | | | Factor out `event_from_pdu_json`Richard van der Hoff2017-12-303-37/+44
| | | | | | | | | | | | | | | | | | | | turns out we have two copies of this, and neither needs to be an instance method
* | | | federation_server: clean up importsRichard van der Hoff2017-12-301-14/+11
| | | |
* | | | federation_client: clean up importsRichard van der Hoff2017-12-301-13/+10
|/ / /
* | | Merge pull request #2683 from seckrv/fix_pwd_auth_prov_typoRichard van der Hoff2017-12-181-2/+2
|\ \ \ | | | | | | | | synapse/config/password_auth_providers: Fixed bracket typo
| * | | synapse/config/password_auth_providers: Fixed bracket typoRichard von Seck2017-11-161-2/+2
| | | | | | | | | | | | | | | | Signed-off-by: Richard von Seck <richard.von-seck@gmx.net>
* | | | Implement listen_tcp method in remaining workersSilke2017-12-1810-192/+155
| | | | | | | | | | | | | | | | Signed-off-by: Silke <silke@slxh.eu>
* | | | Remove logger argument and do not catch replication listenerSilke2017-12-182-24/+18
| | | | | | | | | | | | | | | | Signed-off-by: Silke <silke@slxh.eu>
* | | | Add methods for listening on multiple addressesSilke Hofstra2017-12-172-51/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add listen_tcp and listen_ssl which implement Twisted's reactor.listenTCP and reactor.listenSSL for multiple addresses. Signed-off-by: Silke Hofstra <silke@slxh.eu>
* | | | Allow binds to both :: and 0.0.0.0Silke Hofstra2017-12-172-42/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Binding on 0.0.0.0 when :: is specified in the bind_addresses is now allowed. This causes a warning explaining the behaviour. Configuration changed to match. See #2232 Signed-off-by: Silke Hofstra <silke@slxh.eu>
* | | | Adapt the default config to bind on IPv6.Willem Mulder2017-12-171-8/+9
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | Most deployments are on Linux (or Mac OS), so this would actually bind on both IPv4 and IPv6. Resolves #1886. Signed-off-by: Willem Mulder <willemmaster@hotmail.com>
* | | Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2017-12-0763-781/+1462
|\ \ \ | | | | | | | | | | | | erikj/createroom_content
| * \ \ Merge pull request #2723 from matrix-org/matthew/search-all-local-usersMatthew Hodgson2017-12-0510-36/+221
| |\ \ \ | | | | | | | | | | Add all local users to the user_directory and optionally search them
| | * | | fix StoreError syntaxMatthew Hodgson2017-12-051-1/+1
| | | | |
| | * | | speed up the rate of initial spam for usersMatthew Hodgson2017-12-041-11/+12
| | | | |
| | * | | better docMatthew Hodgson2017-12-041-1/+4
| | | | |
| | * | | fix pep8 and testsMatthew Hodgson2017-12-043-8/+6
| | | | |
| | * | | switch to a simpler 'search_all_users' button as per review feedbackMatthew Hodgson2017-12-045-37/+30
| | | | |
| | * | | Merge branch 'develop' into matthew/search-all-local-usersMatthew Hodgson2017-11-3031-179/+497
| | |\ \ \ | | | | |/ | | | |/|
| | * | | specify default user_directory_include_patternMatthew Hodgson2017-11-301-0/+1
| | | | |
| | * | | remove null constraint on user_dir.room_idMatthew Hodgson2017-11-301-0/+35
| | | | |
| | * | | fix alternation operator for FTS4 - how did this ever work!?Matthew Hodgson2017-11-301-1/+1
| | | | |
| | * | | fix thinkos galoreMatthew Hodgson2017-11-303-20/+41
| | | | |
| | * | | kick the user_directory index when new users registerMatthew Hodgson2017-11-291-0/+8
| | | | |
| | * | | untested WIP but might actually workMatthew Hodgson2017-11-296-20/+96
| | | | |
| | * | | Add user_directory_include_pattern config param to expand search results to ↵Matthew Hodgson2017-11-295-9/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | additional users Initial commit; this doesn't work yet - the LIKE filtering seems too aggressive. It also needs _do_initial_spam to be aware of prepopulating the whole user_directory_search table with all users... ...and it needs a handle_user_signup() or something to be added so that new signups get incrementally added to the table too. Committing it here as a WIP
| * | | | Fix error when deleting devicesRichard van der Hoff2017-12-051-1/+1
| | | | | | | | | | | | | | | | | | | | This was introduced in d7ea8c4 / PR #2728
| * | | | support custom login types for validating usersRichard van der Hoff2017-12-051-24/+57
| | | | | | | | | | | | | | | | | | | | | | | | | Wire the custom login type support from password providers into the UI-auth user-validation flows.
| * | | | Factor out a validate_user_via_ui_auth methodRichard van der Hoff2017-12-053-74/+102
| | | | | | | | | | | | | | | | | | | | Collect together all the places that validate a logged-in user via UI auth.
| * | | | Refactor UI auth implementationRichard van der Hoff2017-12-056-44/+96
| | |/ / | |/| | | | | | | | | | | | | | Instead of returning False when auth is incomplete, throw an exception which can be caught with a wrapper.
| * | | Merge pull request #2721 from matrix-org/rav/get_user_by_access_token_commentsRichard van der Hoff2017-11-291-1/+5
| |\ \ \ | | | | | | | | | | Improve comments on get_user_by_access_token
| | * | | Improve comments on get_user_by_access_tokenRichard van der Hoff2017-11-291-1/+5
| | | | | | | | | | | | | | | | | | | | because I have to reverse-engineer this every time.
| * | | | Delete devices in various logout situationsRichard van der Hoff2017-11-295-5/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure that we delete devices whenever a user is logged out due to any of the following situations: * /logout * /logout_all * change password * deactivate account (by the user or by an admin) * invalidate access token from a dynamic module Fixes #2672.
| * | | | Move set_password into its own handlerRichard van der Hoff2017-11-296-19/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Non-functional refactoring to move set_password. This means that we'll be able to properly deactivate devices and access tokens without introducing a dependency loop.
| * | | | Move deactivate_account into its own handlerRichard van der Hoff2017-11-296-22/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Non-functional refactoring to move deactivate_account. This means that we'll be able to properly deactivate devices and access tokens without introducing a dependency loop.
| * | | | Remove pushers when deleting access tokensRichard van der Hoff2017-11-293-18/+32
| | | | | | | | | | | | | | | | | | | | | | | | | Whenever an access token is invalidated, we should remove the associated pushers.
| * | | | Merge pull request #2718 from matrix-org/rav/notify_logcontextsRichard van der Hoff2017-11-292-9/+18
| |\ \ \ \ | | | | | | | | | | | | Clear logcontext before starting fed txn queue runner
| | * | | | Clear logcontext before starting fed txn queue runnerRichard van der Hoff2017-11-282-9/+18
| | |/ / / | | | | | | | | | | | | | | | | | | | | These processes take a long time compared to the request, so there is lots of "Entering|Restoring dead context" in the logs. Let's try to shut it up a bit.
| * | | | Merge pull request #2719 from matrix-org/rav/handle_missing_hashesRichard van der Hoff2017-11-291-3/+10
| |\ \ \ \ | | | | | | | | | | | | Fix 500 when joining matrix-dev
| | * | | | Fix 500 when joining matrix-devRichard van der Hoff2017-11-291-3/+10
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | matrix-dev has an event (`$/6ANj/9QWQyd71N6DpRQPf+SDUu11+HVMeKSpMzBCwM:zemos.net`) which has no `hashes` member. Check for missing `hashes` element in events.
| * / / / Allow guest access to group APIs for readingLuke Barnard2017-11-281-11/+11
| |/ / /
| * | | Merge pull request #2697 from matrix-org/rav/fix_urlcache_index_errorRichard van der Hoff2017-11-276-17/+89
| |\ \ \ | | | | | | | | | | Fix error on sqlite 3.7
| | * | | fix sql failsRichard van der Hoff2017-11-221-1/+1
| | | | |
| | * | | Check database in has_completed_background_updatesRichard van der Hoff2017-11-223-12/+33
| | | | | | | | | | | | | | | | | | | | so that the right thing happens on workers.
| | * | | Fix error on sqlite 3.7Richard van der Hoff2017-11-215-8/+59
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Create the url_cache index on local_media_repository as a background update, so that we can detect whether we are on sqlite or not and create a partial or complete index accordingly. To avoid running the cleanup job before we have built the index, add a bailout which will defer the cleanup if the bg updates are still running. Fixes https://github.com/matrix-org/synapse/issues/2572.
| * | | Merge pull request #2713 from matrix-org/rav/no_upsert_foreverRichard van der Hoff2017-11-271-0/+7
| |\ \ \ | | | | | | | | | | Avoid retrying forever on IntegrityError
| | * | | Avoid retrying forever on IntegrityErrorRichard van der Hoff2017-11-271-0/+7
| | | | |
| * | | | Merge pull request #2711 from matrix-org/rav/fix_dns_errhandlerRichard van der Hoff2017-11-271-2/+4
| |\ \ \ \ | | | | | | | | | | | | Fix error handling on dns lookup
| | * | | | Fix error handling on dns lookupRichard van der Hoff2017-11-241-2/+4
| | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | pass the right arguments to the errback handler Fixes "TypeError('eb() takes exactly 2 arguments (1 given)',)"
| * | | | Merge pull request #2710 from matrix-org/rav/remove_dead_codeRichard van der Hoff2017-11-271-2/+1
| |\ \ \ \ | | | | | | | | | | | | Tiny code cleanups
| | * | | | Add a comment which might save some confusionRichard van der Hoff2017-11-241-0/+1
| | | | | |
| | * | | | Remove dead sync_callbackRichard van der Hoff2017-11-241-2/+0
| | |/ / / | | | | | | | | | | | | | | | This is never used; let's remove it to stop confusing things.
| * | | | Merge pull request #2708 from matrix-org/rav/replication_logcontext_leaksRichard van der Hoff2017-11-271-2/+4
| |\ \ \ \ | | | | | | | | | | | | Fix some logcontext leaks in replication resource
| | * | | | Fix some logcontext leaks in replication resourceRichard van der Hoff2017-11-231-2/+4
| | |/ / / | | | | | | | | | | | | | | | | | | | | The @measure_func annotations rely on the wrapped function respecting the logcontext rules. Add the necessary yields to make this work.
| * | | | Merge pull request #2707 from matrix-org/rav/fix_urlpreviewRichard van der Hoff2017-11-271-1/+5
| |\ \ \ \ | | | | | | | | | | | | Fix OPTIONS on preview_url
| | * | | | Fix OPTIONS on preview_urlRichard van der Hoff2017-11-231-1/+5
| | |/ / / | | | | | | | | | | | | | | | Fixes #2706
| * / / / Improve tracebacks on exceptionsRichard van der Hoff2017-11-271-3/+9
| |/ / / | | | | | | | | | | | | | | | | Use failure.Failure to recover our failure, which will give us a useful stacktrace, unlike the rethrown exception.
| * | | Add config option to disable media_repo on main synapseRichard van der Hoff2017-11-223-8/+26
| | | | | | | | | | | | | | | | ... to stop us doing the cache cleanup jobs on the master.
| * | | Build MediaRepositoryResource as a homeserver dependencyRichard van der Hoff2017-11-224-5/+19
| | | | | | | | | | | | | | | | | | | | | | | | This avoids the scenario where we have four different PreviewUrlResources configured on a single app, each of which have their own caches and cache clearing jobs.
| * | | Merge pull request #2698 from matrix-org/rav/remove_dead_dependenciesRichard van der Hoff2017-11-211-16/+15
| |\ \ \ | | | | | | | | | | Clean up dependency list
| | * | | Clean up dependency listRichard van der Hoff2017-11-211-16/+15
| | |/ / | | | | | | | | | | | | | | | | remove those that aren't used at all, and replace the ones that don't have builders with simple getters rather than dynamically-generated methods.
| * | | Merge pull request #2689 from matrix-org/rav/unlock_account_data_upsertRichard van der Hoff2017-11-211-36/+49
| |\ \ \ | | |/ / | |/| | Avoid locking account_data tables for upserts
| | * | Avoid locking account_data tables for upsertsRichard van der Hoff2017-11-161-36/+49
| | | |
| * | | Merge pull request #2688 from matrix-org/rav/unlock_more_upsertRichard van der Hoff2017-11-172-5/+51
| |\ \ \ | | | | | | | | | | Avoid locking for upsert on pushers tables
| | * | | Avoid locking for upsert on pushers tablesRichard van der Hoff2017-11-162-5/+51
| | | | | | | | | | | | | | | | | | | | | | | | | * replace the upsert into deleted_pushers with an insert * no need to lock for upsert on pusher_throttle
| * | | | Merge branch 'master' into developRichard van der Hoff2017-11-171-1/+1
| |\ \ \ \
| * \ \ \ \ Merge pull request #2686 from matrix-org/luke/as-flairLuke Barnard2017-11-173-1/+48
| |\ \ \ \ \ | | | | | | | | | | | | | | Add automagical AS Publicised Group(s)
| | * | | | | Extract group_id from the dict for multiple useLuke Barnard2017-11-161-4/+5
| | | | | | |
| | * | | | | Remove unused GROUP_ID_REGEXLuke Barnard2017-11-161-2/+0
| | | | | | |
| | * | | | | Document get_groups_for_userLuke Barnard2017-11-161-0/+6
| | | | | | |
| | * | | | | Flake8Luke Barnard2017-11-161-1/+1
| | | | | | |
| | * | | | | Use a generator instead of a listLuke Barnard2017-11-161-2/+2
| | | | | | |
| | * | | | | Make sure we check AS groups for lookup on bulkLuke Barnard2017-11-161-0/+5
| | | | | | |
| | * | | | | Check group_id belongs to this domainLuke Barnard2017-11-162-3/+12
| | | | | | |
| | * | | | | Add automagical AS Publicised Group(s)Luke Barnard2017-11-162-0/+28
| | | |_|_|/ | | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | via registration file "users" namespace: ```YAML ... namespaces: users: - exclusive: true regex: '.*luke.*' group_id: '+all_the_lukes:hsdomain' ... ``` This is part of giving App Services their own groups for matching users. With this, ghost users will be given the appeareance that they are in a group and that they have publicised the fact, but _only_ from the perspective of the `get_publicised_groups_for_user` API.
| * | | | | typoMatthew Hodgson2017-11-171-1/+1
| | |_|_|/ | |/| | |
| * | | | Fix auth handler #2678Jurek2017-11-161-1/+1
| | |_|/ | |/| |
| * | | Fix broken ref to IntegrityErrorRichard van der Hoff2017-11-161-1/+1
| | | |
| * | | Avoid locking `pushers` table on upsertRichard van der Hoff2017-11-161-27/+28
| | | | | | | | | | | | | | | | | | | | Now that _simple_upsert will retry on IntegrityError, we don't need to lock the table.
| * | | _simple_upsert: retry on IntegrityErrorRichard van der Hoff2017-11-161-6/+29
| | | | | | | | | | | | | | | | | | | | | | | | wrap the call to _simple_upsert_txn in a loop so that we retry on an integrityerror: this means we can avoid locking the table provided there is an unique index.
| * | | Cleanup in _simple_upsert_txnRichard van der Hoff2017-11-161-16/+17
| |/ / | | | | | | | | | Bail out early to reduce indentation
| * | Merge pull request #2661 from matrix-org/rav/statereadstoreRichard van der Hoff2017-11-153-249/+237
| |\ \ | | | | | | | | Pull out bits of StateStore to a mixin
| | * | Pull out bits of StateStore to a mixinRichard van der Hoff2017-11-142-237/+226
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... so that we don't need to secretly gut-wrench it for use in the slaved stores. I haven't done the other stores yet, but we should. I'm tired of the workers breaking every time we tweak the stores because I forgot to gut-wrench the right method. fixes https://github.com/matrix-org/synapse/issues/2655.
| | * | Revert "Revert "move _state_group_cache to statestore""Richard van der Hoff2017-11-142-13/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | We're going to fix this properly on this branch, so that the _state_group_cache can end up in StateGroupReadStore. This reverts commit ab335edb023d66cd0be439e045b10ca104b73cb5.
| * | | Declare support for r0.3.0Richard van der Hoff2017-11-151-0/+1
| | | |
| * | | Merge pull request #2675 from matrix-org/rav/remove_broken_logcontext_funcsRichard van der Hoff2017-11-159-92/+23
| |\ \ \ | | | | | | | | | | Remove preserve_context_over_{fn, deferred}
| | * | | Remove __PreservingContextDeferred tooRichard van der Hoff2017-11-141-30/+0
| | | | |
| | * | | Remove preserve_context_over_{fn, deferred}Richard van der Hoff2017-11-149-62/+23
| | | | | | | | | | | | | | | | | | | | | | | | | Both of these functions ae known to leak logcontexts. Replace the remaining calls to them and kill them off.
| * | | | Merge pull request #2650 from matrix-org/dbkr/push_include_content_optionDavid Baker2017-11-152-15/+32
| |\ \ \ \ | | | | | | | | | | | | Rename redact_content option to include_content
| | * | | | Print instead of loggingDavid Baker2017-11-131-11/+4
| | | | | | | | | | | | | | | | | | | | | | | | because we had to wait until the logger was set up
| | * | | | Make the commented config have the defaultDavid Baker2017-11-091-1/+1
| | | | | |
| | * | | | better commentsDavid Baker2017-11-081-2/+5
| | | | | |
| | * | | | Log if any of the old config flags are setDavid Baker2017-11-081-2/+24
| | | | | |
| | * | | | Rename redact_content option to include_contentDavid Baker2017-11-082-16/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The redact_content option never worked because it read the wrong config section. The PR introducing it (https://github.com/matrix-org/synapse/pull/2301) had feedback suggesting the name be changed to not re-use the term 'redact' but this wasn't incorporated. This reanmes the option to give it a less confusing name, and also means that people who've set the redact_content option won't suddenly see a behaviour change when upgrading synapse, but instead can set include_content if they want to. This PR also updates the wording of the config comment to clarify that this has no effect on event_id_only push. Includes https://github.com/matrix-org/synapse/pull/2422
| * | | | | Merge pull request #2671 from matrix-org/rav/room_list_fixesRichard van der Hoff2017-11-141-20/+30
| |\ \ \ \ \ | | | | | | | | | | | | | | Reshuffle room list request code
| | * | | | | Reshuffle room list request codeRichard van der Hoff2017-11-141-27/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm not entirely sure if this will actually help anything, but it simplifies the code and might give further clues about why room list search requests are blowing out the get_current_state_ids caches.
| | * | | | | Add a load of logging to the room_list handlerRichard van der Hoff2017-11-141-0/+13
| | | |/ / / | | |/| | | | | | | | | | | | | | | So we can see what it gets up to.
* | | | | | Copy dict in update_membership tooErik Johnston2017-12-071-0/+4
| | | | | |
* | | | | | PEP8Erik Johnston2017-11-281-1/+1
| | | | | |
* | | | | | Fix wrong avatars when inviting multiple users when creating roomErik Johnston2017-11-281-5/+5
| |_|_|_|/ |/| | | | | | | | | We reused the `content` dictionary between invite requests, which meant they could end up reusing the profile info for a previous user
* | | | | Bump version in __init__.py v0.25.1 release-v0.25.1Richard van der Hoff2017-11-171-1/+1
| | | | |
* | | | | Fix auth handler #2678Jurek2017-11-171-1/+1
|/ / / /
* | | / Bump version and changelog v0.25.0-rc1Erik Johnston2017-11-141-1/+1
| |_|/ |/| |
* | | Merge pull request #2658 from matrix-org/rav/store_heirarchy_initRichard van der Hoff2017-11-1417-33/+33
|\ \ \ | |/ / |/| | Make __init__ consistent across Store hierarchy
| * | Make __init__ consitstent across Store heirarchyRichard van der Hoff2017-11-1317-33/+33
| | | | | | | | | | | | | | | | | | Add db_conn parameters to the `__init__` methods of the *Store classes, so that they are all consistent, which makes the multiple inheritance work correctly (and so that we can later extract mixins which can be used in the slavedstores)
* | | Merge pull request #2668 from turt2live/travis/whoamiRichard van der Hoff2017-11-141-0/+15
|\ \ \ | | | | | | | | Add a route for determining who you are
| * | | Remove redundent callTravis Ralston2017-11-131-2/+0
| | | | | | | | | | | | Signed-off-by: Travis Ralston <travpc@gmail.com>
| * | | Add a route for determining who you areTravis Ralston2017-11-121-0/+17
| | | | | | | | | | | | | | | | | | | | Useful for applications which may have an access token, but no idea as to who owns it. Signed-off-by: Travis Ralston <travpc@gmail.com>
* | | | Merge pull request #2669 from matrix-org/rav/cache_urlpreview_failureRichard van der Hoff2017-11-131-41/+47
|\ \ \ \ | | | | | | | | | | Cache failures in url_preview handler
| * | | | Bit more loggingRichard van der Hoff2017-11-101-0/+2
| | | | |
| * | | | Cache failures in url_preview handlerRichard van der Hoff2017-11-101-41/+45
| |/ / / | | | | | | | | | | | | | | | | Reshuffle the caching logic in the url_preview handler so that failures are cached (and to generally simplify things and fix the logcontext leaks).
* | | | Merge branch 'develop' into rav/invalid_request_utf8Richard van der Hoff2017-11-136-18/+46
|\ \ \ \ | | |/ / | |/| |
| * | | Revert "move _state_group_cache to statestore"Erik Johnston2017-11-132-12/+13
| | | | | | | | | | | | | | | | This reverts commit f5cf3638e9c6086e1c33ddad8eda9298cf53a58e.
| * | | Up cache size of get_global_account_data_by_type_for_userErik Johnston2017-11-131-1/+1
| |/ /
| * | Add some more comments appservice user registrationRichard van der Hoff2017-11-101-1/+4
| | | | | | | | | | | | Explain why we don't validate userids registered via app services
| * | Downcase userids for shared-secret registrationRichard van der Hoff2017-11-102-3/+21
| | |
| * | Downcase userid on registrationRichard van der Hoff2017-11-091-1/+7
| | | | | | | | | | | | | | | | | | Force username to lowercase before attempting to register https://github.com/matrix-org/synapse/issues/2660
| * | Revert "Allow upper-case characters in mxids"Richard van der Hoff2017-11-091-3/+3
| | | | | | | | | | | | This reverts commit b70b64690330c25cbd04c1b2cacf8276b566efc8.
* | | Fix 500 on invalid utf-8 in requestRichard van der Hoff2017-11-101-1/+2
|/ / | | | | | | | | | | | | | | | | If somebody sends us a request where the the body is invalid utf-8, we should return a 400 rather than a 500. (json.loads throws a UnicodeError in this situation) We might as well catch all Exceptions here: it seems very unlikely that we would get a request that *isn't caused by invalid json.
* | Allow upper-case characters in mxidsRichard van der Hoff2017-11-091-3/+3
| | | | | | | | Because we're never going to be able to fix this :'(
* | Fix typoErik Johnston2017-11-091-1/+1
| |
* | Register group servletErik Johnston2017-11-091-0/+1
| |
* | Namespace visibility options for groupsErik Johnston2017-11-091-9/+19
| |
* | Merge pull request #2656 from matrix-org/rav/fix_deactivateRichard van der Hoff2017-11-091-2/+1
|\ \ | | | | | | Fix 'NoneType' not iterable in /deactivate
| * | Fix 'NoneType' not iterable in /deactivateRichard van der Hoff2017-11-091-2/+1
| | | | | | | | | | | | make sure we actually return a value from user_delete_access_tokens
* | | Add bracketsErik Johnston2017-11-091-2/+4
| | |
* | | Have an explicit API to update room configErik Johnston2017-11-086-1/+100
| | |
* | | Revert "Modify group room association API to allow modification of is_public"Erik Johnston2017-11-086-32/+22
| | |
* | | Merge pull request #2631 from xyzz/fix_appservice_event_backlogErik Johnston2017-11-081-5/+1
|\ \ \ | | | | | | | | Fix appservices being backlogged and not receiving new events due to a bug in notify_interested_services
| * | | Remove useless assignment in notify_interested_servicesIlya Zhuravlev2017-11-071-1/+0
| | | |
| * | | Fix appservices being backlogged and not receiving new events due to a bug ↵Ilya Zhuravlev2017-11-021-4/+1
| | | | | | | | | | | | | | | | in notify_interested_services
* | | | Merge pull request #2637 from spantaleev/avoid-noop-media-deletesErik Johnston2017-11-081-0/+6
|\ \ \ \ | |_|_|/ |/| | | Avoid no-op media deletes
| * | | Avoid no-op media deletesSlavi Pantaleev2017-11-041-0/+6
| |/ / | | | | | | | | | | | | | | | | | | | | | If there are no media entries to delete, avoid creating transactions, prepared statements and unnecessary log entries. Signed-off-by: Slavi Pantaleev <slavi@devture.com>
* | | Merge pull request #2649 from matrix-org/rav/fix_delta_on_state_resRichard van der Hoff2017-11-083-33/+58
|\ \ \ | | | | | | | | Fix bug in state group storage
| * | | s/items/iteritems/Richard van der Hoff2017-11-081-2/+2
| | | |
| * | | Update deltas when doing auth resolutionRichard van der Hoff2017-11-071-3/+7
| | | | | | | | | | | | | | | | | | | | Fixes a bug where the persisted state groups were different to those actually being used after auth resolution.
| * | | factor out _update_context_for_auth_eventsRichard van der Hoff2017-11-071-20/+42
| | | | | | | | | | | | | | | | This is duplicated, so let's factor it out before fixing it
| * | | move _state_group_cache to statestoreRichard van der Hoff2017-11-072-13/+12
| | |/ | |/| | | | | | | this is internal to statestore, so let's keep it there.
* | | Merge pull request #2643 from matrix-org/matthew/user_dir_typosMatthew Hodgson2017-11-075-14/+38
|\ \ \ | |/ / |/| | Fix various embarrassing typos around user_directory and add some doc.
| * | create new indexes before dropping old ones to keep safetynet in placeMatthew Hodgson2017-11-071-2/+4
| | |
| * | s/users_in_pubic_room/users_in_public_rooms/gMatthew Hodgson2017-11-041-2/+2
| | |
| * | s/users_in_pubic_room/users_in_public_rooms/gMatthew Hodgson2017-11-042-10/+32
| | |
| * | fix copyright....Matthew Hodgson2017-11-041-1/+1
| | |
| * | s/popualte/populate/Matthew Hodgson2017-11-041-1/+1
| | |
| * | s/intial/initial/Matthew Hodgson2017-11-041-2/+2
| |/
* | Merge pull request #2636 from farialima/me-masterErik Johnston2017-11-071-13/+8
|\ \ | | | | | | Fix for #2635: correctly update rooms avatar/display name when modified by admin
| * | removed unused import flagged by flake8aFrancois Granade2017-11-031-1/+0
| | |
| * | Fix for issue 2635: correctly update rooms avatar/display name when modified ↵Francois Granade2017-11-031-12/+8
| | | | | | | | | | | | by admin
* | | Revert "Merge branch 'master' of github.com:matrix-org/synapse into develop"Erik Johnston2017-11-071-1/+10
| | | | | | | | | | | | | | | This reverts commit f9b255cd62fe724e16b2222f6af623b2d39282ab, reversing changes made to 1bd654dabde776bbb7ee365c115b307cd6a110b8.
* | | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-11-071-10/+1
|\| |
| * | Revert "Add jitter to validity period of attestations"Erik Johnston2017-10-271-12/+1
| | |
* | | Remember to pick is_admin out of the dbLuke Barnard2017-11-071-1/+1
| | |
* | | Return whether a user is an admin within a groupLuke Barnard2017-11-071-2/+3
| | |
* | | Merge pull request #2576 from maximevaillancourt/exclude-noscript-url-previewMatthew Hodgson2017-11-071-1/+8
|\ \ \ | | | | | | | | Ignore <noscript> tags when generating URL preview descriptions
| * | | Ignore noscript tags when generating URL previewsMaxime Vaillancourt2017-10-251-1/+8
| | | |
* | | | Logging and logcontext fixes for LimiterRichard van der Hoff2017-11-071-7/+17
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | Add some logging to the Limiter in a similar spirit to the Linearizer, to help debug issues. Also fix a logcontext leak. Also refactor slightly to avoid throwing exceptions.
* | | Merge pull request #2630 from matrix-org/luke/fix-rooms-in-groupDavid Baker2017-11-021-3/+1
|\ \ \ | | | | | | | | Make the get_rooms_in_group API more sane
| * | | Make the get_rooms_in_group API more saneLuke Barnard2017-11-021-3/+1
| | | | | | | | | | | | | | | | Return entries with is_public = True when they're public and is_public = False otherwise.
* | | | Merge pull request #2629 from matrix-org/rav/register_inhibit_loginDavid Baker2017-11-021-12/+16
|\ \ \ \ | |/ / / |/| | | support inhibit_login in /register
| * | | support inhibit_login in /registerRichard van der Hoff2017-11-021-12/+16
| | | | | | | | | | | | | | | | Allow things to pass inhibit_login when registering to ... inhibit logins.
* | | | Merge remote-tracking branch 'origin/develop' into rav/module_api_hooksDavid Baker2017-11-023-45/+137
|\ \ \ \
| * \ \ \ Merge pull request #2627 from matrix-org/rav/custom_rest_endpointsDavid Baker2017-11-023-0/+74
| |\ \ \ \ | | | | | | | | | | | | Add a hook for custom rest endpoints
| | * | | | Add a hook for custom rest endpointsRichard van der Hoff2017-11-023-0/+74
| | |/ / / | | | | | | | | | | | | | | | | | | | | Let the user specify custom modules which can be used for implementing extra endpoints.
| * | | | Merge pull request #2626 from matrix-org/rav/refactor_module_apiDavid Baker2017-11-022-69/+82
| |\ \ \ \ | | | | | | | | | | | | Factor _AccountHandler proxy out to ModuleApi
| * | | | | Factor out _configure_named_resourceRichard van der Hoff2017-11-021-46/+64
| | |/ / / | |/| | | | | | | | | | | | | This was a bit of a code vomit, so let's factor it out to preserve some sanity
* | | | | Add more hooks to ModuleApiRichard van der Hoff2017-11-021-0/+34
| |/ / / |/| | | | | | | | | | | add `get_user_by_req` and `invalidate_access_token`
* | | | Factor _AccountHandler proxy out to ModuleApiRichard van der Hoff2017-11-022-69/+82
|/ / / | | | | | | | | | | | | We're going to need to use this from places that aren't password auth, so let's move it to a proper class.
* | | Merge pull request #2624 from matrix-org/rav/password_provider_notify_logoutDavid Baker2017-11-022-7/+32
|\ \ \ | | | | | | | | Notify auth providers on logout
| * | | Notify auth providers on logoutRichard van der Hoff2017-11-012-7/+32
| | | | | | | | | | | | | | | | Provide a hook by which auth providers can be notified of logouts.
* | | | Merge pull request #2623 from matrix-org/rav/callbacks_for_auth_providersDavid Baker2017-11-022-7/+15
|\ \ \ \ | | | | | | | | | | Allow password_auth_providers to return a callback
| * | | | Fix user-interactive password authRichard van der Hoff2017-11-011-1/+3
| | | | | | | | | | | | | | | | | | | | this got broken in the previous commit
| * | | | Allow password_auth_providers to return a callbackRichard van der Hoff2017-11-012-6/+12
| |/ / / | | | | | | | | | | | | ... so that they have a way to record access tokens.
* | | | Merge pull request #2622 from matrix-org/rav/db_access_for_auth_providersDavid Baker2017-11-021-0/+16
|\ \ \ \ | |/ / / |/| | | Let auth providers get to the database
| * | | Let auth providers get to the databaseRichard van der Hoff2017-10-311-0/+16
| | | | | | | | | | | | | | | | Somewhat open to abuse, but also somewhat unavoidable :/
* | | | Merge pull request #2620 from matrix-org/rav/auth_non_passwordRichard van der Hoff2017-11-011-22/+96
|\ \ \ \ | | | | | | | | | | Let password auth providers handle arbitrary login types
| * | | | Let password auth providers handle arbitrary login typesRichard van der Hoff2017-11-011-22/+96
| |/ / / | | | | | | | | | | | | | | | | Provide a hook where password auth providers can say they know about other login types, and get passed the relevant parameters