summary refs log tree commit diff
path: root/synapse (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #2561 from matrix-org/rav/id_checkingRichard van der Hoff2017-10-233-33/+47
|\ | | | | Updates to ID checking
| * Validate group ids when parsingRichard van der Hoff2017-10-212-16/+22
| | | | | | | | | | May as well do it whenever we parse a Group ID. We check the sigil and basic structure here so it makes sense to check the grammar in the same place.
| * Allow = in mxids and groupidsRichard van der Hoff2017-10-203-5/+4
| | | | | | | | ... because the spec says we should.
| * Disallow capital letters in useridsRichard van der Hoff2017-10-203-16/+25
| | | | | | | | | | Factor out a common function for checking user ids and group ids, which forbids capitals.
* | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-10-231-1/+1
|\ \
| * | Bump version and changelog github/release-v0.24.0 release-v0.24.0Erik Johnston2017-10-231-1/+1
| | |
| * | Correctly bump version v0.24.0-rc1Erik Johnston2017-10-191-1/+1
| | |
| * | Bump version and changelogErik Johnston2017-10-191-1/+1
| |/
* / Remove pointless create() methodRichard van der Hoff2017-10-206-12/+8
|/ | | | | It just calls the constructor, so we may as well kill it rather than having random codepaths.
* Flake8Erik Johnston2017-10-192-6/+4
|
* Add missing file...Erik Johnston2017-10-191-0/+36
|
* Add config to enable group creationErik Johnston2017-10-192-3/+12
|
* Enforce sensible group IDsErik Johnston2017-10-191-1/+19
|
* Fix typoErik Johnston2017-10-191-1/+1
|
* Fix typo in group attestation handlingErik Johnston2017-10-192-2/+3
|
* Fix typo in thumbnail generationErik Johnston2017-10-191-2/+5
|
* Fix typoErik Johnston2017-10-191-1/+1
|
* Merge pull request #2553 from matrix-org/rav/fix_500_on_event_sendRichard van der Hoff2017-10-181-1/+0
|\ | | | | Fix 500 error when we get an error handling a PDU
| * Fix 500 error when we get an error handling a PDURichard van der Hoff2017-10-171-1/+0
| | | | | | | | | | | | | | | | | | | | FederationServer doesn't have a send_failure (and nor does its subclass, ReplicationLayer), so this was failing. I'm not really sure what the idea behind send_failure is, given (a) we don't do anything at the other end with it except log it, and (b) we also send back the failure via the transaction response. I suspect there's a whole lot of dead code around it, but for now I'm just removing the broken bit.
* | Merge pull request #2552 from matrix-org/rav/fix_500_on_dodgy_powerlevelsRichard van der Hoff2017-10-171-3/+3
|\ \ | |/ |/| Fix 500 error when fields missing from power_levels event
| * Fix 500 error when fields missing from power_levels eventRichard van der Hoff2017-10-171-3/+3
| | | | | | | | | | If the users or events keys were missing from a power_levels event, then we would throw 500s when trying to auth them.
* | Doc some more dynamic Homeserver methodsRichard van der Hoff2017-10-171-0/+8
| |
* | Merge pull request #2550 from krombel/fix_thumbnail_2548Erik Johnston2017-10-171-2/+2
|\ \ | |/ |/| fix thumbnailing (#2548)
| * fix thumbnailing (#2548)Krombel2017-10-171-2/+2
| | | | | | | | | | | | | | in commit 0e28281a the code for thumbnailing got refactored and the renaming of this variables was not done correctly. Signed-Off-by: Matthias Kesler <krombel@krombel.de>
* | Improve error handling for missing files (#2551)Richard van der Hoff2017-10-173-17/+33
| | | | | | | | | | | | | | | | | | | | | | `os.path.exists` doesn't allow us to distinguish between permissions errors and the path actually not existing, which repeatedly confuses people. It also means that we try to overwrite existing key files, which is super-confusing. (cf issues #2455, #2379). Use os.stat instead. Also, don't recomemnd the the use of --generate-config, which screws everything up if you're using debian (cf #2455).
* | Merge pull request #2549 from matrix-org/rav/event_persist_logcontextsRichard van der Hoff2017-10-172-7/+22
|\ \ | | | | | | Fix logcontext handling for persist_events
| * | Fix logcontext handling for persist_eventsRichard van der Hoff2017-10-172-7/+22
| |/ | | | | | | | | | | | | | | * don't use preserve_context_over_deferred, which is known broken. * remove a redundant preserve_fn. * add/improve some comments
* | Merge pull request #2545 from matrix-org/dbkr/auto_join_roomsDavid Baker2017-10-172-0/+41
|\ \ | |/ |/| Add config option to auto-join new users to rooms
| * pep8David Baker2017-10-171-1/+2
| |
| * Add config option to auto-join new users to roomsDavid Baker2017-10-162-0/+40
| | | | | | | | | | New users who register on the server will be dumped into all rooms in auto_join_rooms in the config.
* | DelintLuke Barnard2017-10-163-1/+3
| |
* | Make it work. Warn about lack of user profileLuke Barnard2017-10-161-2/+2
| |
* | _create_rererouter for get_invited_users_in_groupLuke Barnard2017-10-161-17/+2
| |
* | Merge branch 'develop' into luke/groups-invited-usersLuke Barnard2017-10-161-1/+1
|\ \
| * \ Merge pull request #2543 from matrix-org/luke/fix-on-group-invite-no-profileLuke Barnard2017-10-161-2/+5
| |\ \ | | |/ | |/| Log a warning when no profile for invited member
| * | Omit the *s for @room notificationsDavid Baker2017-10-161-1/+1
| | | | | | | | | | | | They're just redundant
* | | Implement GET /groups/$groupId/invited_usersLuke Barnard2017-10-166-1/+115
| |/ |/|
* | Log a warning when no profile for invited memberLuke Barnard2017-10-161-2/+5
|/ | | | And return empty profile
* Add try/finally block to close t_byte_sourceErik Johnston2017-10-131-24/+41
|
* Remove old commentErik Johnston2017-10-131-1/+0
|
* Don't reuse source but instead copy from primary media store to backupErik Johnston2017-10-132-22/+9
|
* PEP8Erik Johnston2017-10-131-1/+1
|
* Move type into keyErik Johnston2017-10-131-3/+3
|
* CommentErik Johnston2017-10-131-1/+1
|
* Remove spurious additionErik Johnston2017-10-131-4/+0
|
* Don't needlessly rename variableErik Johnston2017-10-131-13/+13
|
* Add paths back in...Erik Johnston2017-10-131-4/+4
|
* Remove unnecessary diffErik Johnston2017-10-131-3/+1
|
* Make things be absolute paths againErik Johnston2017-10-131-7/+7
|
* s/write_to_file/write_to_file_and_backup/Erik Johnston2017-10-131-5/+5
|
* Fix upErik Johnston2017-10-132-43/+32
|
* Fix up thumbnailing functionErik Johnston2017-10-133-75/+73
|
* Fix typoErik Johnston2017-10-131-1/+1
|
* Fix up commentsErik Johnston2017-10-131-2/+26
|
* Move makedirs to threadErik Johnston2017-10-131-2/+1
|
* Use make_deferred_yieldableErik Johnston2017-10-131-7/+7
|
* Fix commentsErik Johnston2017-10-122-1/+4
|
* Don't close prematurely..Erik Johnston2017-10-121-2/+5
|
* getvalue closes bufferErik Johnston2017-10-121-11/+10
|
* Get len before closeErik Johnston2017-10-121-6/+11
|
* Don't close file prematurelyErik Johnston2017-10-122-8/+18
|
* Copy everything to backupErik Johnston2017-10-125-77/+151
|
* TypoErik Johnston2017-10-121-1/+1
|
* Remove dead codeErik Johnston2017-10-121-3/+0
|
* Fix typosErik Johnston2017-10-121-20/+26
|
* Fix typoErik Johnston2017-10-121-1/+1
|
* Basic implementation of backup media storeErik Johnston2017-10-124-126/+131
|
* log when we get an exception handling replication updateshera2017-10-121-1/+5
|
* Merge pull request #2531 from matrix-org/dbkr/spamcheck_error_messagesDavid Baker2017-10-121-2/+6
|\ | | | | Allow error strings from spam checker
| * fix isinstanceDavid Baker2017-10-111-1/+1
| |
| * Allow error strings from spam checkerDavid Baker2017-10-111-2/+6
| |
* | Merge pull request #2532 from matrix-org/rav/fix_linearizerRichard van der Hoff2017-10-111-2/+22
|\ \ | | | | | | Fix stackoverflow and logcontexts from linearizer
| * | Fix stackoverflow and logcontexts from linearizerRichard van der Hoff2017-10-111-2/+22
| | | | | | | | | | | | | | | | | | | | | 1. make it not blow out the stack when there are more than 50 things waiting for a lock. Fixes https://github.com/matrix-org/synapse/issues/2505. 2. Make it not mess up the log contexts.
* | | Merge pull request #2529 from matrix-org/rav/fix_transaction_failure_handlingRichard van der Hoff2017-10-111-2/+3
|\ \ \ | | | | | | | | log pdu_failures from incoming transactions
| * | | log pdu_failures from incoming transactionsRichard van der Hoff2017-10-111-2/+3
| |/ / | | | | | | | | | | | | | | | | | | ... even if we have no EDUs. This appears to have been introduced in 476899295f5fd6cff64799bcbc84cd4bf9005e33.
* | | Merge pull request #2515 from matrix-org/rav/fix_receipt_logcontextRichard van der Hoff2017-10-111-0/+51
|\ \ \ | | | | | | | | | | | | | | | | A logformatter which includes the stack when the exception was caught when logging exceptions.
| * | | logformatter: fix AttributeErrorRichard van der Hoff2017-10-111-3/+11
| | | | | | | | | | | | | | | | make sure we have the relevant fields before we try to log them.
| * | | Fancy logformatter to format exceptions betterRichard van der Hoff2017-10-091-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bit of an experimental change at this point; the idea is to see if it helps us track down where our stack overflows are coming from by logging the stack when the exception was caught and turned into a Failure. (We'll also need https://github.com/richvdh/twisted/commit/edf27044200e74680ea67c525768e36dc9d9af2b). If we deploy this, we'll be able to enable it via the log config yaml.
* | | | Fix fetching remote summariesErik Johnston2017-10-111-2/+2
| | | |
* | | | peeeeeeeeep8888888888888888888888888888Erik Johnston2017-10-111-1/+1
| | | |
* | | | Fix group stream replicationErik Johnston2017-10-111-7/+7
| | | | | | | | | | | | | | | | | | | | The stream update functions expect the storage function to return a list of tuples.
* | | | Merge pull request #2530 from matrix-org/rav/fix_receipt_logcontextRichard van der Hoff2017-10-111-0/+4
|\ \ \ \ | | | | | | | | | | fix a logcontext leak in read receipt handling
| * | | | fix a logcontext leak in read receipt handlingRichard van der Hoff2017-10-111-0/+4
| | |/ / | |/| |
* | | | Fix typo in invite to groupErik Johnston2017-10-111-1/+1
| | | |
* | | | Fix typoErik Johnston2017-10-111-1/+1
| | | |
* | | | Fix attestations to check correct server nameErik Johnston2017-10-111-10/+20
| |_|/ |/| |
* | | Fix schema delta versionsErik Johnston2017-10-113-1/+1
| | |
* | | Merge pull request #2466 from matrix-org/erikj/groups_mergedErik Johnston2017-10-1131-57/+4786
|\ \ \ | | | | | | | | Initial Group Implementation
| * | | Validate room idsErik Johnston2017-10-111-1/+5
| | | |
| * | | Don't corrupt cacheErik Johnston2017-10-051-0/+1
| | | |
| * | | Merge branch 'develop' into erikj/groups_mergedDavid Baker2017-10-0226-273/+930
| |\ \ \
| * | | | Add remove room APIErik Johnston2017-09-266-1/+72
| | | | |
| * | | | Add unique index to group_rooms tableErik Johnston2017-09-262-3/+1
| | | | |
| * | | | Add is_publicised to group summaryErik Johnston2017-09-261-25/+31
| | | | |
| * | | | Remove user from group summary when the leave the groupErik Johnston2017-09-211-0/+8
| | | | |
| * | | | Revert: Keep room_id's in group summaryErik Johnston2017-09-211-0/+1
| | | | |
| * | | | Keep room_id's in group summaryErik Johnston2017-09-211-1/+0
| | | | |
| * | | | Correctly return next tokenErik Johnston2017-09-201-1/+2
| | | | |
| * | | | Fix initial syncErik Johnston2017-09-201-1/+9
| | | | |
| * | | | Ensure that creator of group sees group down /syncErik Johnston2017-09-192-4/+31
| | | | |
| * | | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/groups_mergedErik Johnston2017-09-1924-546/+580
| |\ \ \ \
| * | | | | Add user profiles to summary from group serverErik Johnston2017-08-253-2/+30
| | | | | |
| * | | | | Fix typos and reinheritErik Johnston2017-08-251-12/+6
| | | | | |
| * | | | | Split out profile handler to fix testsErik Johnston2017-08-258-22/+30
| | | | | |
| * | | | | Add remote profile cacheErik Johnston2017-08-255-5/+237
| | | | | |
| * | | | | Add _simple_updateErik Johnston2017-08-251-19/+32
| | | | | |
| * | | | | Merge pull request #2410 from matrix-org/erikj/groups_publiciseErik Johnston2017-08-216-0/+197
| |\ \ \ \ \ | | | | | | | | | | | | | | Add ability to publicise group membership
| | * | | | | Use BOOLEAN rather than TEXT typeErik Johnston2017-08-211-1/+1
| | | | | | |
| | * | | | | FixupErik Johnston2017-08-112-9/+14
| | | | | | |
| | * | | | | Add bulk group publicised lookup APIErik Johnston2017-08-095-0/+142
| | | | | | |
| | * | | | | Allow update group publicityErik Johnston2017-08-082-0/+43
| | | | | | |
| | * | | | | Store whether the user wants to publicise their membership of a groupErik Johnston2017-08-083-0/+7
| | | | | | |
| * | | | | | Groups: Fix mising json.load in initial syncErik Johnston2017-08-211-1/+7
| |/ / / / /
| * | | | | Remove stale TODO commentsErik Johnston2017-08-041-10/+0
| | | | | |
| * | | | | Update commentErik Johnston2017-07-241-2/+2
| | | | | |
| * | | | | Use join rather than joined, etc.Erik Johnston2017-07-241-2/+2
| | | | | |
| * | | | | Fix all the typosErik Johnston2017-07-241-8/+7
| | | | | |
| * | | | | Include users membership in group in summary APIErik Johnston2017-07-242-0/+60
| | | | | |
| * | | | | Check users/rooms are in group before adding to summaryErik Johnston2017-07-241-0/+25
| | | | | |
| * | | | | Correctly add joins to correct segmentErik Johnston2017-07-241-1/+1
| | | | | |
| * | | | | Merge pull request #2378 from matrix-org/erikj/group_sync_supportErik Johnston2017-07-2111-10/+281
| |\ \ \ \ \ | | | | | | | | | | | | | | Add groups to sync stream
| | * | | | | Add notifierErik Johnston2017-07-201-0/+1
| | | | | | |
| | * | | | | Fix replication. And notifyErik Johnston2017-07-205-4/+119
| | | | | | |
| | * | | | | Remember to cast to boolErik Johnston2017-07-201-1/+1
| | | | | | |
| | * | | | | Fix bug in generating current tokenErik Johnston2017-07-201-0/+2
| | | | | | |
| | * | | | | Add groups to sync streamErik Johnston2017-07-207-6/+159
| | | | | | |
| * | | | | | Merge pull request #2377 from matrix-org/erikj/group_profile_updateErik Johnston2017-07-205-0/+55
| |\ \ \ \ \ \ | | |/ / / / / | |/| | | | | Add update group profile API
| | * | | | | Remove spurious content paramErik Johnston2017-07-201-1/+1
| | | | | | |
| | * | | | | Check values are stringsErik Johnston2017-07-201-1/+4
| | | | | | |
| | * | | | | Fix a storage descErik Johnston2017-07-201-1/+1
| | | | | | |
| | * | | | | Add update group profile APIErik Johnston2017-07-205-0/+52
| | | | | | |
| * | | | | | Fix typoErik Johnston2017-07-201-1/+1
| |/ / / / /
| * | | | | CommentsErik Johnston2017-07-184-13/+24
| | | | | |
| * | | | | CommentsErik Johnston2017-07-182-103/+88
| | | | | |
| * | | | | Fix permissionsErik Johnston2017-07-181-2/+6
| | | | | |
| * | | | | Add DELETEErik Johnston2017-07-181-0/+46
| | | | | |
| * | | | | Add 'args' param to post_jsonErik Johnston2017-07-181-9/+15
| | | | | |
| * | | | | Fix typosErik Johnston2017-07-183-12/+22
| | | | | |
| * | | | | Correctly parse query paramsErik Johnston2017-07-181-19/+19
| | | | | |
| * | | | | Update federation client pokesErik Johnston2017-07-181-13/+22
| | | | | |
| * | | | | Add client apisErik Johnston2017-07-182-10/+188
| | | | | |
| * | | | | CommentsErik Johnston2017-07-182-15/+22
| | | | | |
| * | | | | Use transport client directlyErik Johnston2017-07-181-18/+25
| | | | | |
| * | | | | CommentErik Johnston2017-07-181-0/+14
| | | | | |
| * | | | | Remove sync stuffErik Johnston2017-07-182-29/+1
| | | | | |
| * | | | | Add GroupID typeErik Johnston2017-07-181-0/+5
| | | | | |
| * | | | | Remove unused tablesErik Johnston2017-07-181-7/+0
| | | | | |
| * | | | | Remove sync stuffErik Johnston2017-07-182-70/+0
| | | | | |
| * | | | | Add local group server supportErik Johnston2017-07-1710-2/+1248
| | | | | |
| * | | | | Ensure category and role ids are non-nullErik Johnston2017-07-141-0/+24
| | | | | |
| * | | | | Add DEFAULT_ROLE_IDErik Johnston2017-07-141-4/+5
| | | | | |
| * | | | | Correctly increment ordersErik Johnston2017-07-141-2/+2
| | | | | |
| * | | | | Remove unused functionsErik Johnston2017-07-131-152/+0
| | | | | |
| * | | | | CommentsErik Johnston2017-07-132-12/+32
| | | | | |
| * | | | | Remove TODOErik Johnston2017-07-131-1/+0
| | | | | |
| * | | | | Add summary APIs to federationErik Johnston2017-07-131-11/+223
| | | | | |
| * | | | | raise NotImplementedErrorErik Johnston2017-07-131-5/+2
| | | | | |
| * | | | | CommentsErik Johnston2017-07-123-5/+79
| | | | | |
| * | | | | Simplify checking if adminErik Johnston2017-07-121-53/+19
| | | | | |
| * | | | | Add group summary APIsErik Johnston2017-07-124-2/+970
| | | | | |
| * | | | | Merge pull request #2352 from matrix-org/erikj/group_server_splitErik Johnston2017-07-1211-11/+1206
| |\ \ \ \ \ | | | | | | | | | | | | | | Initial Group Server
| | * | | | | CommentErik Johnston2017-07-121-1/+1
| | | | | | |
| | * | | | | Move commentErik Johnston2017-07-111-2/+2
| | | | | | |
| | * | | | | Add federation API for adding room to groupErik Johnston2017-07-111-0/+18
| | | | | | |
| | * | | | | CommentErik Johnston2017-07-111-5/+8
| | | | | | |
| | * | | | | TypoErik Johnston2017-07-111-1/+1
| | | | | | |
| | * | | | | Rename column to attestation_jsonErik Johnston2017-07-112-5/+5
| | | | | | |
| | * | | | | CommentsErik Johnston2017-07-113-5/+9
| | | | | | |
| | * | | | | CommentErik Johnston2017-07-112-0/+26
| | | | | | |
| | * | | | | Remove u/ requirementErik Johnston2017-07-111-2/+3
| | | | | | |
| | * | | | | Lift out visibility parsingErik Johnston2017-07-111-20/+21
| | | | | | |
| | * | | | | CommentsErik Johnston2017-07-114-43/+132
| | | | | | |
| | * | | | | Initial group server implementationErik Johnston2017-07-1011-11/+1064
| | | | | | |
* | | | | | | Merge pull request #2501 from matrix-org/dbkr/channel_notificationsErik Johnston2017-10-113-7/+85
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Support for channel notifications
| * | | | | | | pep8David Baker2017-10-102-3/+5
| | | | | | | |
| * | | | | | | Don't KeyError if no power_levels eventDavid Baker2017-10-101-1/+3
| | | | | | | |
| * | | | | | | Use notification levels in power_levelsDavid Baker2017-10-103-12/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than making the condition directly require a specific power level. This way the level require to notify a room can be configured per room.
| * | | | | | | There was already a constant for thisDavid Baker2017-10-101-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | also update copyright
| * | | | | | | More optimisationDavid Baker2017-10-101-6/+9
| | | | | | | |
| * | | | | | | What year is it!? Who's the president!?David Baker2017-10-101-1/+1
| | | | | | | |
| * | | | | | | Merge branch 'develop' into dbkr/channel_notificationsDavid Baker2017-10-107-107/+183
| |\ \ \ \ \ \ \
| * | | | | | | | Make be fasterDavid Baker2017-10-051-3/+3
| | | | | | | | |
| * | | | | | | | Add fastpath optimisationDavid Baker2017-10-051-3/+9
| | | | | | | | |
| * | | | | | | | pep8David Baker2017-10-051-0/+3
| | | | | | | | |
| * | | | | | | | They're called roomsDavid Baker2017-10-051-4/+4
| | | | | | | | |
| * | | | | | | | Get rule type rightDavid Baker2017-10-051-1/+1
| | | | | | | | |
| * | | | | | | | Support for channel notificationsDavid Baker2017-10-053-8/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add condition type to check the sender's power level and add a base rule using it for @channel notifications.
* | | | | | | | | Merge pull request #2483 from jeremycline/unfreeze-ujson-dumpErik Johnston2017-10-111-1/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Unfreeze event before serializing with ujson
| * | | | | | | | | Unfreeze event before serializing with ujsonJeremy Cline2017-09-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In newer versions of https://github.com/esnme/ultrajson, ujson does not serialize frozendicts (introduced in esnme/ultrajson@53f85b1). Although the PyPI version is still 1.35, Fedora ships with a build from commit esnme/ultrajson@2f1d487. This causes the serialization to fail if the distribution-provided package is used. This runs the event through the unfreeze utility before serializing it. Thanks to @ignatenkobrain for tracking down the root cause. fixes #2351 Signed-off-by: Jeremy Cline <jeremy@jcline.org>
* | | | | | | | | | Merge pull request #2490 from matrix-org/erikj/drop_left_room_eventsErik Johnston2017-10-103-0/+65
|\ \ \ \ \ \ \ \ \ \ | |_|_|/ / / / / / / |/| | | | | | | | | Ignore incoming events for rooms that we have left
| * | | | | | | | | Fix up commentErik Johnston2017-10-091-1/+2
| | | | | | | | | |
| * | | | | | | | | Invalidate cacheErik Johnston2017-10-031-0/+3
| | | | | | | | | |
| * | | | | | | | | Update commentsErik Johnston2017-10-032-1/+8
| | | | | | | | | |
| * | | | | | | | | Remove spurious line feedErik Johnston2017-10-031-1/+0
| | | | | | | | | |
| * | | | | | | | | Ignore incoming events for rooms that we have leftErik Johnston2017-10-032-0/+55
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When synapse receives an event for a room its not in over federation, it double checks with the remote server to see if it is in fact in the room. This is done so that if the server has forgotten about the room (usually as a result of the database being dropped) it can recover from it. However, in the presence of state resets in large rooms, this can cause a lot of work for servers that have legitimately left. As a hacky solution that supports both cases we drop incoming events for rooms that we have explicitly left. This means that we no longer support the case of servers having forgotten that they've rejoined a room, but that is sufficiently rare that we're not going to support it for now.
* | | | | | | | | | fed server: process PDUs for different rooms in parallelRichard van der Hoff2017-10-091-19/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With luck, this will give a real-time improvement when there are many rooms and the server ends up calling out to fetch missing events.
* | | | | | | | | | Fed server: use a linearizer for ongoing transactionsRichard van der Hoff2017-10-091-1/+29
| |_|_|_|_|_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We don't want to process the same transaction multiple times concurrently, so use a linearizer.
* | | | | | | | | fed server: refactor on_incoming_transactionRichard van der Hoff2017-10-091-24/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move as much as possible to after the have_responded check, and reduce the number of times we iterate over the pdu list.
* | | | | | | | | Fed server: Move origin-check code to _handle_received_pduRichard van der Hoff2017-10-091-24/+24
| |_|_|_|_|_|_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The response-building code expects there to be an entry in the `results` list for each entry in the pdu_list, so the early `continue` was messing this up. That doesn't really matter, because all that the federation client does is log any errors, but it's pretty poor form.
* | | | | | | | Merge pull request #2508 from matrix-org/rav/federation_queue_logcontextsRichard van der Hoff2017-10-091-16/+32
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Fix up logcontext handling in (federation) TransactionQueue
| * | | | | | | | Fix up logcontext handling in (federation) TransactionQueueRichard van der Hoff2017-10-061-16/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid using preserve_context_over_function, which has problems with respect to logcontexts.
* | | | | | | | | Merge pull request #2507 from matrix-org/rav/execute_concurrently_log_contextsRichard van der Hoff2017-10-091-2/+2
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Fix logcontext handling for concurrently_execute
| * | | | | | | | | Fix logcontext handling for concurrently_executeRichard van der Hoff2017-10-061-2/+2
| |/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid preserve_context_over_deferred, which is broken.
* / / / / / / / / Fix up deferred handling in federation.pyRichard van der Hoff2017-10-061-24/+21
|/ / / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Avoid preserve_context_over_deferred, which is broken * set consumeErrors=True on defer.gatherResults, to avoid spurious "unhandled failure" erros
* | | | | | | | some comments in the state res codeRichard van der Hoff2017-10-051-0/+13
| | | | | | | |
* | | | | | | | Spam checking: add the invitee to user_may_inviteDavid Baker2017-10-053-8/+10
| |_|/ / / / / |/| | | | | |
* | | | | | | Use better method for word boundary searchingDavid Baker2017-10-051-11/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | From https://github.com/matrix-org/matrix-js-sdk/commit/ebc95667b8a5777d13e5d3c679972bedae022fd5
* | | | | | | pep8David Baker2017-10-051-0/+1
| | | | | | |
* | | | | | | Fix notif kws that start/end with non-word charsDavid Baker2017-10-051-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Only prepend / append word bounary characters if the search expression starts or ends with a word character, otherwise they don't work because there's no word bounary between whitespace and a non-word char.
* | | | | | | spam check room publishingDavid Baker2017-10-042-0/+26
| | | | | | |
* | | | | | | un-double indentDavid Baker2017-10-041-1/+1
| | | | | | |
* | | | | | | Add room creation checks to spam checkerDavid Baker2017-10-043-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Lets the spam checker deny attempts to create rooms and add aliases to them.
* | | | | | | s/roomid/room_id/David Baker2017-10-031-2/+2
| | | | | | |
* | | | | | | pass room id tooDavid Baker2017-10-033-4/+6
| | | | | | |
* | | | | | | Federation was passing strings anywayDavid Baker2017-10-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | so pass string everywhere
* | | | | | | this shouldn't be debugDavid Baker2017-10-031-2/+2
| | | | | | |
* | | | | | | better loggingDavid Baker2017-10-031-4/+9
| | | | | | |
* | | | | | | Actually write warpper functionDavid Baker2017-10-031-0/+16
| | | | | | |
* | | | | | | Skip spam check for admin usersDavid Baker2017-10-031-8/+8
| | | | | | |
* | | | | | | Fix param name & lintDavid Baker2017-10-031-2/+4
| | | | | | |
* | | | | | | Allow spam checker to reject invites tooDavid Baker2017-10-032-6/+18
|/ / / / / /
* | | | | | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-10-024-13/+29
|\ \ \ \ \ \
| * | | | | | Bump version and changelog v0.23.1Erik Johnston2017-10-021-1/+1
| | | | | | |
| * | | | | | Make 'affinity' package optionalErik Johnston2017-10-022-2/+17
| | | | | | |
| * | | | | | Move quit_with_errorErik Johnston2017-10-022-10/+11
| | | | | | |
* | | | | | | Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2017-10-021-1/+1
|\| | | | | | | |_|_|_|_|/ |/| | | | |
| * | | | | Bump version and change log github/release-v0.23.0 release-v0.23.0Erik Johnston2017-10-021-1/+1
| | | | | |
* | | | | | Merge pull request #2480 from matrix-org/rav/federation_client_loggingRichard van der Hoff2017-09-291-7/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | Improve logging of failures in matrixfederationclient
| * | | | | | Improve logging of failures in matrixfederationclientRichard van der Hoff2017-09-281-7/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * don't log exception types twice * not all exceptions have a meaningful 'message'. Use the repr rather than attempting to build a string ourselves.
* | | | | | | Only log if we've removed mediaErik Johnston2017-09-281-2/+4
|/ / / / / /
* | | | | | Handle SERVFAILs when doing AAAA lookups for federation (#2477)Richard van der Hoff2017-09-281-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ... to cope with people with broken dnssec setups, mostly
* | | | | | Up the limits on number of url cache entries to delete at one timeErik Johnston2017-09-281-2/+2
| | | | | |
* | | | | | Add old indicesErik Johnston2017-09-281-0/+2
| | | | | |
* | | | | | Clear up expired url cache every 10sErik Johnston2017-09-281-1/+1
| | | | | |
* | | | | | Actually assign result to variableErik Johnston2017-09-281-1/+1
| | | | | |
* | | | | | Only pull out local media that were for url cacheErik Johnston2017-09-281-1/+1
| | | | | |
* | | | | | Fix typo in url cache expiry timerErik Johnston2017-09-281-1/+1
| | | | | |
* | | | | | Merge pull request #2479 from matrix-org/erikj/expire_url_cache_thumbnailsErik Johnston2017-09-281-31/+81
|\ \ \ \ \ \ | | | | | | | | | | | | | | Support new and old style media id formats
| * | | | | | Support new and old style media id formatsErik Johnston2017-09-281-31/+81
| | | | | | |
* | | | | | | Fix typoErik Johnston2017-09-281-3/+3
|/ / / / / /
* | | | | | Change expires column to expires_tsErik Johnston2017-09-283-10/+29
| | | | | |
* | | | | | More bracketsErik Johnston2017-09-281-1/+1
| | | | | |
* | | | | | Delete expired url cache dataErik Johnston2017-09-285-5/+208
| | | | | |
* | | | | | Fix /joined_members to work with AS usersErik Johnston2017-09-282-13/+26
| | | | | |
* | | | | | Fix bug where /joined_members didn't check user was in roomErik Johnston2017-09-272-10/+38
| | | | | |
* | | | | | Don't test is spam_checker not NoneDavid Baker2017-09-271-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes it's a Mock object which is not none but is still not what we're after
* | | | | | Remove unintentional debuggingDavid Baker2017-09-271-1/+0
| | | | | |
* | | | | | pep8David Baker2017-09-272-0/+2
| | | | | |
* | | | | | Forgot the new file again :(David Baker2017-09-271-0/+35
| | | | | |
* | | | | | Make the spam checker a moduleDavid Baker2017-09-265-23/+33
| | | | | |