Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Cache the result of fetching the room hierarchy over federation. (#10647) | Patrick Cloke | 2021-08-26 | 1 | -40/+66 |
| | |||||
* | Do not include stack traces for known exceptions when trying multiple ↵ | Patrick Cloke | 2021-08-23 | 1 | -1/+6 |
| | | | | federation destinations. (#10662) | ||||
* | Attempt to pull from the legacy spaces summary API over federation. (#10583) | Patrick Cloke | 2021-08-17 | 1 | -9/+55 |
| | | | | | | | If the new /hierarchy API does not exist on all destinations, fallback to querying the /spaces API and translating the results. This is a backwards compatibility hack since not all of the federated homeservers will update at the same time. | ||||
* | Support federation in the new spaces summary API (MSC2946). (#10569) | Patrick Cloke | 2021-08-16 | 1 | -0/+82 |
| | |||||
* | Fix exceptions in logs when failing to get remote room list (#10541) | Erik Johnston | 2021-08-06 | 1 | -1/+2 |
| | |||||
* | Refactoring before implementing the updated spaces summary. (#10527) | Patrick Cloke | 2021-08-05 | 1 | -9/+14 |
| | | | | | This should have no user-visible changes, but refactors some pieces of the SpaceSummaryHandler before adding support for the updated MSC2946. | ||||
* | Improve failover logic for MSC3083 restricted rooms. (#10447) | Patrick Cloke | 2021-07-29 | 1 | -4/+39 |
| | | | | | If the federation client receives an M_UNABLE_TO_AUTHORISE_JOIN or M_UNABLE_TO_GRANT_JOIN response it will attempt another server before giving up completely. | ||||
* | Update the MSC3083 support to verify if joins are from an authorized server. ↵ | Patrick Cloke | 2021-07-26 | 1 | -12/+49 |
| | | | | (#10254) | ||||
* | Use inline type hints in various other places (in `synapse/`) (#10380) | Jonathan de Jong | 2021-07-15 | 1 | -5/+5 |
| | |||||
* | Remove the experimental flag for knocking and use stable prefixes / ↵ | Patrick Cloke | 2021-06-15 | 1 | -7/+2 |
| | | | | | | | endpoints. (#10167) * Room version 7 for knocking. * Stable prefixes and endpoints (both client and federation) for knocking. * Removes the experimental configuration flag. | ||||
* | Implement knock feature (#6739) | Sorunome | 2021-06-09 | 1 | -1/+71 |
| | | | | | | This PR aims to implement the knock feature as proposed in https://github.com/matrix-org/matrix-doc/pull/2403 Signed-off-by: Sorunome mail@sorunome.de Signed-off-by: Andrew Morgan andrewm@element.io | ||||
* | When joining a remote room limit the number of events we concurrently check ↵ | Erik Johnston | 2021-06-08 | 1 | -54/+93 |
| | | | | | signatures/hashes for (#10117) If we do hundreds of thousands at once the memory overhead can easily reach 500+ MB. | ||||
* | Use ijson to parse the response to `/send_join`, reducing memory usage. (#9958) | Erik Johnston | 2021-05-20 | 1 | -18/+10 |
| | | | Instead of parsing the full response to `/send_join` into Python objects (which can be huge for large rooms) and *then* parsing that into events, we instead use ijson to stream parse the response directly into `EventBase` objects. | ||||
* | Pass errors back to the client when trying multiple federation destinations. ↵ | Patrick Cloke | 2021-04-27 | 1 | -58/+60 |
| | | | | | | | | (#9868) This ensures that something like an auth error (403) will be returned to the requester instead of attempting to try more servers, which will likely result in the same error, and then passing back a generic 400 error. | ||||
* | Remove redundant "coding: utf-8" lines (#9786) | Jonathan de Jong | 2021-04-14 | 1 | -1/+0 |
| | | | | | | | Part of #9744 Removes all redundant `# -*- coding: utf-8 -*-` lines from files, as python 3 automatically reads source code as utf-8 now. `Signed-off-by: Jonathan de Jong <jonathan@automatia.nl>` | ||||
* | Add type hints to expiring cache. (#9730) | Patrick Cloke | 2021-04-06 | 1 | -1/+1 |
| | |||||
* | Spaces summary: call out to other servers (#9653) | Richard van der Hoff | 2021-03-24 | 1 | -10/+170 |
| | | | | | When we hit an unknown room in the space tree, see if there are other servers that we might be able to poll to get the data. Fixes: #9447 | ||||
* | Import HomeServer from the proper module. (#9665) | Patrick Cloke | 2021-03-23 | 1 | -1/+1 |
| | |||||
* | Update black, and run auto formatting over the codebase (#9381) | Eric Eastwood | 2021-02-16 | 1 | -1/+5 |
| | | | | | | | - Update black version to the latest - Run black auto formatting over the codebase - Run autoformatting according to [`docs/code_style.md `](https://github.com/matrix-org/synapse/blob/80d6dc9783aa80886a133756028984dbf8920168/docs/code_style.md) - Update `code_style.md` docs around installing black to use the correct version | ||||
* | Ratelimit invites by room and target user (#9258) | Erik Johnston | 2021-01-29 | 1 | -1/+1 |
| | |||||
* | Various improvements to the federation client. (#9129) | Patrick Cloke | 2021-01-20 | 1 | -58/+67 |
| | | | | * Type hints for `FederationClient`. * Using `async` functions instead of returning `Awaitable` instances. | ||||
* | Mypy fixes for `synapse.handlers.federation` (#8422) | Richard van der Hoff | 2020-09-29 | 1 | -1/+3 |
| | | | For some reason, an apparently unrelated PR upset mypy about this module. Here are a number of little fixes. | ||||
* | Merge tag 'v1.20.0rc5' into develop | Patrick Cloke | 2020-09-18 | 1 | -5/+3 |
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Synapse 1.20.0rc5 (2020-09-18) ============================== In addition to the below, Synapse 1.20.0rc5 also includes the bug fix that was included in 1.19.3. Features -------- - Add flags to the `/versions` endpoint for whether new rooms default to using E2EE. ([\#8343](https://github.com/matrix-org/synapse/issues/8343)) Bugfixes -------- - Fix rate limiting of federation `/send` requests. ([\#8342](https://github.com/matrix-org/synapse/issues/8342)) - Fix a longstanding bug where back pagination over federation could get stuck if it failed to handle a received event. ([\#8349](https://github.com/matrix-org/synapse/issues/8349)) Internal Changes ---------------- - Blacklist [MSC2753](https://github.com/matrix-org/matrix-doc/pull/2753) SyTests until it is implemented. ([\#8285](https://github.com/matrix-org/synapse/issues/8285)) | ||||
| * | Use _check_sigs_and_hash_and_fetch to validate backfill requests (#8350) | Andrew Morgan | 2020-09-18 | 1 | -5/+3 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a bit of a hack, as `_check_sigs_and_hash_and_fetch` is intended for attempting to pull an event from the database/(re)pull it from the server that originally sent the event if checking the signature of the event fails. During backfill we *know* that we won't have the event in our database, however it is still useful to be able to query the original sending server as the server we're backfilling from may be acting maliciously. The main benefit and reason for this change however is that `_check_sigs_and_hash_and_fetch` will drop an event during backfill if it cannot be successfully validated, whereas the current code will simply fail the backfill request - resulting in the client's /messages request silently being dropped. This is a quick patch to fix backfilling rooms that contain malformed events. A better implementation in planned in future. | ||||
* | | Simplify super() calls to Python 3 syntax. (#8344) | Patrick Cloke | 2020-09-18 | 1 | -1/+1 |
|/ | | | | | | | This converts calls like super(Foo, self) -> super(). Generated with: sed -i "" -Ee 's/super\([^\(]+\)/super()/g' **/*.py | ||||
* | Don't assume that an event has an origin field | Erik Johnston | 2020-09-16 | 1 | -3/+4 |
| | | | | This fixes #8319. | ||||
* | Convert federation client to async/await. (#7975) | Patrick Cloke | 2020-07-30 | 1 | -4/+4 |
| | |||||
* | Convert synapse.app to async/await. (#7868) | Patrick Cloke | 2020-07-17 | 1 | -21/+19 |
| | |||||
* | Fix some spelling mistakes / typos. (#7811) | Patrick Cloke | 2020-07-09 | 1 | -2/+2 |
| | |||||
* | Add `HomeServer.signing_key` property (#7805) | Richard van der Hoff | 2020-07-08 | 1 | -1/+1 |
| | | | ... instead of duplicating `config.signing_key[0]` everywhere | ||||
* | async/await is_server_admin (#7363) | Andrew Morgan | 2020-05-01 | 1 | -3/+2 |
| | |||||
* | Further improvements to requesting the public rooms list on a homeserver ↵ | Andrew Morgan | 2020-05-01 | 1 | -9/+28 |
| | | | | which has it set to private (#7368) | ||||
* | Fix a bug in the federation API which could cause occasional "Failed to get ↵ | Patrick Cloke | 2020-03-19 | 1 | -11/+8 |
| | | | | PDU" errors (#7089). | ||||
* | Remove unused federation endpoint (`query_auth`) (#7026) | Patrick Cloke | 2020-03-17 | 1 | -1/+79 |
| | |||||
* | Add some type annotations to the federation base & client classes (#6995) | Patrick Cloke | 2020-02-28 | 1 | -5/+5 |
| | |||||
* | Pass room_version into `event_from_pdu_json` | Richard van der Hoff | 2020-02-06 | 1 | -19/+16 |
| | | | | It's called from all over the shop, so this one's a bit messy. | ||||
* | pass room version into FederationClient.send_join (#6854) | Richard van der Hoff | 2020-02-06 | 1 | -28/+32 |
| | | | | ... which allows us to sanity-check the create event. | ||||
* | Simplify `room_version` handling in `FederationClient.send_invite` | Richard van der Hoff | 2020-02-05 | 1 | -10/+6 |
| | |||||
* | Pass room version object into `FederationClient.get_pdu` | Richard van der Hoff | 2020-02-05 | 1 | -3/+5 |
| | |||||
* | make FederationClient._do_send_invite async | Richard van der Hoff | 2020-02-05 | 1 | -10/+7 |
| | |||||
* | Apply suggestions from code review | Richard van der Hoff | 2020-02-05 | 1 | -2/+4 |
| | | | Co-Authored-By: Erik Johnston <erik@matrix.org> | ||||
* | make FederationClient.send_invite async | Richard van der Hoff | 2020-02-03 | 1 | -6/+5 |
| | |||||
* | make FederationClient.get_missing_events async | Richard van der Hoff | 2020-02-03 | 1 | -20/+20 |
| | |||||
* | make FederationClient._do_send_leave async | Richard van der Hoff | 2020-02-03 | 1 | -4/+3 |
| | |||||
* | make FederationClient.send_leave.send_request async | Richard van der Hoff | 2020-02-03 | 1 | -5/+2 |
| | |||||
* | make FederationClient._do_send_join async | Richard van der Hoff | 2020-02-03 | 1 | -4/+3 |
| | |||||
* | make FederationClient.send_join.send_request async | Richard van der Hoff | 2020-02-03 | 1 | -4/+3 |
| | |||||
* | make FederationClient.make_membership_event.send_request async | Richard van der Hoff | 2020-02-03 | 1 | -4/+3 |
| | |||||
* | make FederationClient._try_destination_list async | Richard van der Hoff | 2020-02-03 | 1 | -10/+26 |
| | |||||
* | make FederationClient.send_leave async | Richard van der Hoff | 2020-02-03 | 1 | -10/+9 |
| | |||||
* | make FederationClient.send_join async | Richard van der Hoff | 2020-02-03 | 1 | -11/+13 |
| | |||||
* | make FederationClient.make_membership_event async | Richard van der Hoff | 2020-02-03 | 1 | -10/+11 |
| | |||||
* | make FederationClient.get_event_auth async | Richard van der Hoff | 2020-02-03 | 1 | -6/+4 |
| | |||||
* | make FederationClient.get_room_state_ids async | Richard van der Hoff | 2020-02-03 | 1 | -4/+5 |
| | |||||
* | make FederationClient.get_pdu async | Richard van der Hoff | 2020-02-03 | 1 | -15/+17 |
| | |||||
* | make FederationClient.backfill async | Richard van der Hoff | 2020-02-03 | 1 | -15/+11 |
| | |||||
* | Merge pull request #6806 from matrix-org/rav/redact_changes/3 | Richard van der Hoff | 2020-01-31 | 1 | -3/+1 |
|\ | | | | | Pass room_version into add_hashes_and_signatures | ||||
| * | Pass room_version into create_local_event_from_event_dict | Richard van der Hoff | 2020-01-30 | 1 | -3/+1 |
| | | |||||
* | | s/get_room_version/get_room_version_id/ | Richard van der Hoff | 2020-01-31 | 1 | -5/+5 |
|/ | | | | | ... to make way for a forthcoming get_room_version which returns a RoomVersion object. | ||||
* | Add `rooms.room_version` column (#6729) | Erik Johnston | 2020-01-27 | 1 | -17/+33 |
| | | | This is so that we don't have to rely on pulling it out from `current_state_events` table. | ||||
* | Merge pull request #6349 from matrix-org/babolivier/msc1802 | Brendan Abolivier | 2019-12-11 | 1 | -12/+76 |
|\ | | | | | Implement v2 APIs for send_join and send_leave | ||||
| * | Merge branch 'develop' into babolivier/msc1802 | Brendan Abolivier | 2019-12-05 | 1 | -3/+3 |
| |\ | |||||
| * | | Lint | Brendan Abolivier | 2019-11-11 | 1 | -3/+2 |
| | | | |||||
| * | | Implement v2 API for send_leave | Brendan Abolivier | 2019-11-11 | 1 | -4/+37 |
| | | | |||||
| * | | Add missing yield | Brendan Abolivier | 2019-11-11 | 1 | -1/+1 |
| | | | |||||
| * | | Implement v2 API for send_join | Brendan Abolivier | 2019-11-11 | 1 | -7/+39 |
| | | | |||||
* | | | Move get_state methods into FederationHandler (#6503) | Richard van der Hoff | 2019-12-10 | 1 | -80/+11 |
| | | | | | | | | | | | | | | | This is a non-functional refactor as a precursor to some other work. | ||||
* | | | Refactor get_events_from_store_or_dest to return a dict (#6501) | Richard van der Hoff | 2019-12-10 | 1 | -29/+15 |
| | | | | | | | | | | | | | | | There was a bunch of unnecessary conversion back and forth between dict and list going on here. We can simplify a bunch of the code. | ||||
* | | | Remove fallback for missing /federation/v1/state_ids API (#6488) | Richard van der Hoff | 2019-12-09 | 1 | -72/+17 |
| |/ |/| | | | | | This API was added way back in 0.17.0; the code here is annoying to maintain and entirely redundant. | ||||
* | | Replace instance variations of homeserver with correct case/spacing | Andrew Morgan | 2019-11-12 | 1 | -3/+3 |
|/ | |||||
* | Depublish a room from the public rooms list when it is upgraded (#6232) | Andrew Morgan | 2019-11-01 | 1 | -1/+1 |
| | |||||
* | Remove usage of deprecated logger.warn method from codebase (#6271) | Andrew Morgan | 2019-10-31 | 1 | -3/+5 |
| | | | Replace every instance of `logger.warn` with `logger.warning` as the former is deprecated. | ||||
* | use %r to __repr__ objects | Michael Kaye | 2019-10-24 | 1 | -1/+1 |
| | | | | This avoids calculating __repr__ unless we are going to log. | ||||
* | rip out some unreachable code | Richard van der Hoff | 2019-10-17 | 1 | -38/+0 |
| | | | | The only possible rejection reason is AUTH_ERROR, so all of this is unreachable. | ||||
* | Remove unnecessary parentheses around return statements (#5931) | Andrew Morgan | 2019-08-30 | 1 | -4/+4 |
| | | | | | Python will return a tuple whether there are parentheses around the returned values or not. I'm just sick of my editor complaining about this all over the place :) | ||||
* | Return 502 not 500 when failing to reach any remote server. | Erik Johnston | 2019-08-01 | 1 | -4/+3 |
| | |||||
* | Room Complexity Client Implementation (#5783) | Amber Brown | 2019-07-30 | 1 | -0/+36 |
| | |||||
* | Replace returnValue with return (#5736) | Amber Brown | 2019-07-23 | 1 | -24/+22 |
| | |||||
* | Move logging utilities out of the side drawer of util/ and into logging/ (#5606) | Amber Brown | 2019-07-04 | 1 | -4/+4 |
| | |||||
* | Run Black. (#5482) | Amber Brown | 2019-06-20 | 1 | -109/+108 |
| | |||||
* | Clean up debug logging (#5347) | Richard van der Hoff | 2019-06-05 | 1 | -3/+13 |
| | | | Remove some spurious stuff, clarify some other stuff | ||||
* | Fix failure to fetch batches of PDUs (#5342) | Richard van der Hoff | 2019-06-04 | 1 | -0/+1 |
| | | | | | FederationClient.get_pdu is called in a loop to fetch a batch of PDUs. A failure to fetch one should not result in a failure of the whole batch. Add the missing `continue`. | ||||
* | Rename get_events->get_events_from_store_or_dest (#5344) | Richard van der Hoff | 2019-06-04 | 1 | -20/+13 |
| | | | | | We have too many things called get_event, and it's hard to figure out what we mean. Also remove some unused params from the signature, and add some logging. | ||||
* | Collect room-version variations into one place (#4969) | Richard van der Hoff | 2019-04-01 | 1 | -14/+15 |
| | | | | Collect all the things that make room-versions different to one another into one place, so that it's easier to define new room versions. | ||||
* | MSC 1866 - Use M_UNSUPPORTED_ROOM_VERSION for invite API | Erik Johnston | 2019-02-23 | 1 | -1/+17 |
| | |||||
* | Only check event ID domain for signatures for V1 events | Erik Johnston | 2019-01-29 | 1 | -3/+3 |
| | | | | | In future version events won't have an event ID, so we won't be able to do this check. | ||||
* | Merge pull request #4481 from matrix-org/erikj/event_builder | Erik Johnston | 2019-01-29 | 1 | -14/+6 |
|\ | | | | | Refactor event building into EventBuilder | ||||
| * | Refactor event building into EventBuilder | Erik Johnston | 2019-01-29 | 1 | -14/+6 |
| | | | | | | | | | | This is so that everything is done in one place, making it easier to change the event format based on room version | ||||
* | | Implement fallback for V2 invite API | Erik Johnston | 2019-01-28 | 1 | -12/+52 |
|/ | | | | | If the room version is either 1 or 2 then a server should retry failed `/v2/invite` requests with the v1 API | ||||
* | Require event format version to parse or create events | Erik Johnston | 2019-01-25 | 1 | -23/+37 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/msc_1813 | Erik Johnston | 2019-01-25 | 1 | -9/+53 |
|\ | |||||
| * | Merge pull request #4448 from matrix-org/erikj/get_pdu_versions | Erik Johnston | 2019-01-24 | 1 | -7/+40 |
| |\ | | | | | | | Add room_version param to get_pdu | ||||
| | * | Review comments | Erik Johnston | 2019-01-24 | 1 | -1/+2 |
| | | | |||||
| | * | Add room_version param to get_pdu | Erik Johnston | 2019-01-23 | 1 | -7/+39 |
| | | | | | | | | | | | | | | | When we add new event format we'll need to know the event format or room version when parsing events. | ||||
| * | | Update make_membership_event docs | Erik Johnston | 2019-01-24 | 1 | -2/+5 |
| | | | |||||
| * | | Remove unnecessary '_sign_event' | Erik Johnston | 2019-01-23 | 1 | -1/+8 |
| | | | |||||
| * | | Store rejected remote invite events as outliers | Erik Johnston | 2019-01-23 | 1 | -2/+8 |
| |/ | | | | | | | | | | | | | | | | | | | | | Currently they're stored as non-outliers even though the server isn't in the room, which can be problematic in places where the code assumes it has the state for all non outlier events. In particular, there is an edge case where persisting the leave event triggers a state resolution, which requires looking up the room version from state. Since the server doesn't have the state, this causes an exception to be thrown. | ||||
* | | Review comments | Erik Johnston | 2019-01-24 | 1 | -1/+2 |
| | | |||||
* | | Implement MSC 1813 - Add room version to make APIs | Erik Johnston | 2019-01-23 | 1 | -5/+16 |
|/ | | | | | We also implement `make_membership_event` converting the returned room version to an event format version. | ||||
* | more comments | Richard van der Hoff | 2018-09-27 | 1 | -2/+0 |
| | |||||
* | fix docstring for FederationClient.get_state_for_room | Richard van der Hoff | 2018-09-26 | 1 | -4/+4 |
| | | | | trivial fixes for docstring | ||||
* | Fix some instances of ExpiringCache not expiring cache items | Erik Johnston | 2018-09-21 | 1 | -16/+12 |
| | | | | | | | | ExpiringCache required that `start()` be called before it would actually start expiring entries. A number of places didn't do that. This PR removes `start` from ExpiringCache, and automatically starts backround reaping process on creation instead. | ||||
* | Port federation/ to py3 (#3847) | Amber Brown | 2018-09-12 | 1 | -4/+4 |
| | |||||
* | Check m.room.create for sane room_versions | Richard van der Hoff | 2018-08-06 | 1 | -3/+23 |
| | |||||
* | include known room versions in outgoing make_joins | Richard van der Hoff | 2018-08-06 | 1 | -3/+5 |
| | |||||
* | sanity check response from make_join | Richard van der Hoff | 2018-08-03 | 1 | -1/+3 |
| | |||||
* | Refactor code for turning HttpResponseException into SynapseError | Richard van der Hoff | 2018-08-01 | 1 | -2/+2 |
| | | | | | | | | This commit replaces SynapseError.from_http_response_exception with HttpResponseException.to_synapse_error. The new method actually returns a ProxiedRequestError, which allows us to pass through additional metadata from the API call. | ||||
* | Be more careful which errors we send back over the C-S API | Richard van der Hoff | 2018-08-01 | 1 | -12/+17 |
| | | | | | | | | | | | | We really shouldn't be sending all CodeMessageExceptions back over the C-S API; it will include things like 401s which we shouldn't proxy. That means that we need to explicitly turn a few HttpResponseExceptions into SynapseErrors in the federation layer. The effect of the latter is that the matrix errcode will get passed through correctly to calling clients, which might help with some of the random M_UNKNOWN errors when trying to join rooms. | ||||
* | Factor out exception handling in federation_client | Richard van der Hoff | 2018-08-01 | 1 | -129/+148 |
| | | | | | Factor out the error handling from make_membership_event, send_join, and send_leave, so that it can be shared. | ||||
* | run isort | Amber Brown | 2018-07-09 | 1 | -7/+7 |
| | |||||
* | Consistently use six's iteritems and wrap lazy keys/values in list() if ↵ | Amber Brown | 2018-05-31 | 1 | -2/+2 |
| | | | | they're not meant to be lazy (#3307) | ||||
* | replacing portions | Amber Brown | 2018-05-21 | 1 | -10/+7 |
| | |||||
* | Merge branch 'develop' into py3-xrange-1 | Richard van der Hoff | 2018-04-30 | 1 | -2/+3 |
|\ | |||||
| * | Use run_in_background in preference to preserve_fn | Richard van der Hoff | 2018-04-27 | 1 | -2/+3 |
| | | | | | | | | | | | | While I was going through uses of preserve_fn for other PRs, I converted places which only use the wrapped function once to use run_in_background, to avoid creating the function object. | ||||
* | | Move more xrange to six | Adrian Tschira | 2018-04-28 | 1 | -1/+3 |
|/ | | | | | | plus a bonus next() Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | Refactor store.have_events | Richard van der Hoff | 2018-04-20 | 1 | -1/+1 |
| | | | | | | It turns out that most of the time we were calling have_events, we were only using half of the result. Replace have_events with have_seen_events and get_rejection_reasons, so that we can see what's going on a bit more clearly. | ||||
* | Move property setting from ReplicationLayer to FederationBase | Erik Johnston | 2018-03-13 | 1 | -0/+1 |
| | |||||
* | Add federation_domain_whitelist option (#2820) | Matthew Hodgson | 2018-01-22 | 1 | -1/+4 |
| | | | | | | Add federation_domain_whitelist gives a way to restrict which domains your HS is allowed to federate with. useful mainly for gracefully preventing a private but internet-connected HS from trying to federate to the wider public Matrix network | ||||
* | Factor out `event_from_pdu_json` | Richard van der Hoff | 2017-12-30 | 1 | -21/+15 |
| | | | | | turns out we have two copies of this, and neither needs to be an instance method | ||||
* | federation_client: clean up imports | Richard van der Hoff | 2017-12-30 | 1 | -13/+10 |
| | |||||
* | Remove preserve_context_over_{fn, deferred} | Richard van der Hoff | 2017-11-14 | 1 | -2/+2 |
| | | | | | Both of these functions ae known to leak logcontexts. Replace the remaining calls to them and kill them off. | ||||
* | Fix logcontexts in _check_sigs_and_hashes | Richard van der Hoff | 2017-09-20 | 1 | -4/+4 |
| | |||||
* | Fix some lies, and other clarifications, in docstrings | Richard van der Hoff | 2017-04-21 | 1 | -2/+48 |
| | | | | | The documentation on get_json has been wrong ever since the very first commit to synapse... | ||||
* | Ignore backoff history for invites, aliases, and roomdirs | Richard van der Hoff | 2017-03-23 | 1 | -2/+5 |
| | | | | | Add a param to the federation client which lets us ignore historical backoff data for federation queries, and set it for a handful of operations. | ||||
* | push federation retry limiter down to matrixfederationclient | Richard van der Hoff | 2017-03-23 | 1 | -20/+13 |
| | | | | | rather than having to instrument everywhere we make a federation call, make the MatrixFederationHttpClient manage the retry limiter. | ||||
* | Fix docstring | Richard van der Hoff | 2017-03-09 | 1 | -2/+1 |
| | |||||
* | Implement device key caching over federation | Erik Johnston | 2017-01-26 | 1 | -0/+10 |
| | |||||
* | Fix couple of federation state bugs | Erik Johnston | 2017-01-17 | 1 | -2/+4 |
| | |||||
* | limit total timeout for get_missing_events to 10s | Matthew Hodgson | 2016-12-31 | 1 | -1/+3 |
| | |||||
* | Remove fallback from get_missing_events. | Mark Haines | 2016-12-30 | 1 | -69/+0 |
| | | | | | | | get_missing_events used to fallback to fetching the missing events individually requesting from every server in the room, one by one.e This could be unacceptably slow, possibly causing #1732 | ||||
* | Add new API appservice specific public room list | Erik Johnston | 2016-12-06 | 1 | -2/+5 |
| | |||||
* | Use new federation_sender DI | Erik Johnston | 2016-11-16 | 1 | -49/+0 |
| | |||||
* | Add transaction queue and transport layer to DI | Erik Johnston | 2016-11-16 | 1 | -1/+0 |
| | |||||
* | Move logic into transaction_queue | Erik Johnston | 2016-11-16 | 1 | -14/+2 |
| | |||||
* | Rename transaction queue functions to send_* | Erik Johnston | 2016-11-16 | 1 | -7/+7 |
| | |||||
* | Time out typing over federation | Erik Johnston | 2016-09-23 | 1 | -2/+0 |
| | |||||
* | Support filtering remote room lists | Erik Johnston | 2016-09-16 | 1 | -2/+5 |
| | |||||
* | Pass since/from parameters over federation | Erik Johnston | 2016-09-15 | 1 | -18/+4 |
| | |||||
* | Merge pull request #1110 from matrix-org/markjh/e2e_timeout | Mark Haines | 2016-09-13 | 1 | -4/+8 |
|\ | | | | | Add a timeout parameter for end2end key queries. | ||||
| * | Add a timeout parameter for end2end key queries. | Mark Haines | 2016-09-12 | 1 | -4/+8 |
| | | | | | | | | | | | | | | | | | | | | Add a timeout parameter for controlling how long synapse will wait for responses from remote servers. For servers that fail include how they failed to make it easier to debug. Fetch keys from different servers in parallel rather than in series. Set the default timeout to 10s. | ||||
* | | Fix backfill when cannot find an event. | Erik Johnston | 2016-09-12 | 1 | -1/+1 |
|/ | | | | `get_pdu` can succeed but return None. | ||||
* | Clobber EDUs in send queue | Erik Johnston | 2016-09-09 | 1 | -2/+6 |
| | |||||
* | Add a new method to enqueue the device messages rather than sending a dummy EDU | Mark Haines | 2016-09-07 | 1 | -0/+6 |
| | |||||
* | Merge branch 'erikj/pdu_check' of github.com:matrix-org/synapse into develop | Erik Johnston | 2016-09-01 | 1 | -5/+5 |
|\ | |||||
| * | Ensure we only return a validated pdu in get_pdu | Erik Johnston | 2016-09-01 | 1 | -5/+5 |
| | | |||||
* | | Use state handler instead of get_users_in_room/get_joined_hosts | Erik Johnston | 2016-08-26 | 1 | -1/+4 |
|/ | |||||
* | Preserve some logcontexts | Erik Johnston | 2016-08-24 | 1 | -6/+11 |
| | |||||
* | Don't stop on 4xx series errors | Erik Johnston | 2016-08-10 | 1 | -11/+1 |
| | |||||
* | Also pull out rejected events | Erik Johnston | 2016-08-10 | 1 | -1/+1 |
| | |||||
* | Store if we fail to fetch an event from a destination | Erik Johnston | 2016-08-10 | 1 | -1/+36 |
| | |||||
* | Fix a couple of python bugs | Erik Johnston | 2016-08-05 | 1 | -6/+8 |
| | |||||
* | Retry joining via other servers if first one failed | Erik Johnston | 2016-08-05 | 1 | -5/+16 |
| | |||||
* | Fix typo | Erik Johnston | 2016-08-05 | 1 | -1/+1 |
| | |||||
* | Check if we already have the events returned by /state/ | Erik Johnston | 2016-08-05 | 1 | -2/+16 |
| | |||||
* | Fallback to /state/ on both 400 and 404 | Erik Johnston | 2016-08-05 | 1 | -1/+1 |
| | |||||
* | Tweak integrity error recovery to work as intended | Benjamin Saunders | 2016-08-04 | 1 | -1/+1 |
| | |||||
* | Fix typos. | Erik Johnston | 2016-08-04 | 1 | -3/+3 |
| | |||||
* | Tidy up get_events | Erik Johnston | 2016-08-04 | 1 | -12/+10 |
| | |||||
* | Rename fields to _ids | Erik Johnston | 2016-08-03 | 1 | -2/+2 |
| | |||||
* | Fix copy + paste fails | Erik Johnston | 2016-08-03 | 1 | -5/+10 |
| | |||||
* | Actually call get_room_state | Erik Johnston | 2016-08-03 | 1 | -0/+4 |
| | |||||
* | Fix syntax error | Erik Johnston | 2016-08-03 | 1 | -1/+8 |
| | |||||
* | Comment | Erik Johnston | 2016-08-03 | 1 | -0/+14 |
| | |||||
* | Add /state_ids federation API | Erik Johnston | 2016-08-03 | 1 | -3/+70 |
| | | | | | The new API only returns the event_ids for the state, as most requesters will already have the vast majority of the events already. | ||||
* | Linearize fetching of gaps on incoming events | Erik Johnston | 2016-06-15 | 1 | -0/+2 |
| | | | | | This potentially stops the server from doing multiple requests for the same data. | ||||
* | Apparently I am not permitted to have two blank lines here | David Baker | 2016-05-31 | 1 | -1/+0 |
| | |||||
* | Basic, un-cached support for secondary_directory_servers | David Baker | 2016-05-31 | 1 | -0/+21 |
| | |||||
* | Intern all the things | Erik Johnston | 2016-03-23 | 1 | -0/+1 |
| | |||||
* | Add profile information to invites | Erik Johnston | 2016-03-04 | 1 | -1/+1 |
| | |||||
* | Fix flake8 warnings for new flake8 | Daniel Wagner-Hall | 2016-02-02 | 1 | -1/+1 |
| | |||||
* | copyrights | Matthew Hodgson | 2016-01-07 | 1 | -1/+1 |
| | |||||
* | Don't complain if /make_join response lacks 'prev_state' list (SYN-517) | Paul "LeoNerd" Evans | 2015-11-13 | 1 | -0/+6 |
| | |||||
* | Fix missing profile data in federation joins | Erik Johnston | 2015-11-12 | 1 | -1/+4 |
| | | | | | There was a regression where we stopped including profile data in initial joins for rooms joined over federation. | ||||
* | Exchange 3pid invites for m.room.member invites | Daniel Wagner-Hall | 2015-11-05 | 1 | -8/+25 |
| | |||||
* | Allow rejecting invites | Daniel Wagner-Hall | 2015-10-20 | 1 | -6/+61 |
| | | | | | This is done by using the same /leave flow as you would use if you had already accepted the invite and wanted to leave. | ||||
* | Look for keys on the right objects | Daniel Wagner-Hall | 2015-10-15 | 1 | -1/+3 |
| | |||||
* | Remove unnecessary class-wrapping | Daniel Wagner-Hall | 2015-10-13 | 1 | -3/+3 |
| | |||||
* | Move event contents into third_party_layout field | Daniel Wagner-Hall | 2015-10-13 | 1 | -2/+2 |
| | |||||
* | Fix lint errors | Daniel Wagner-Hall | 2015-10-06 | 1 | -1/+0 |
| | |||||
* | Implement third party identifier invites | Daniel Wagner-Hall | 2015-10-01 | 1 | -2/+7 |
| | |||||
* | Merge pull request #208 from matrix-org/markjh/end-to-end-key-federation | Mark Haines | 2015-08-18 | 1 | -0/+30 |
|\ | | | | | Federation for end-to-end key requests. | ||||
| * | Get the end-to-end key federation working | Mark Haines | 2015-07-24 | 1 | -8/+4 |
| | | |||||
| * | Add federation support for end-to-end key requests | Mark Haines | 2015-07-23 | 1 | -0/+34 |
| | | |||||
* | | Move all the caches into their own package, synapse.util.caches | Erik Johnston | 2015-08-11 | 1 | -1/+1 |
|/ | |||||
* | Implement bulk verify_signed_json API | Erik Johnston | 2015-06-26 | 1 | -14/+43 |
| | |||||
* | Remove redundant for loop | Erik Johnston | 2015-05-22 | 1 | -3/+0 |
| | |||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-05-22 | 1 | -0/+2 |
|\ | | | | | | | erikj/backfill_fixes | ||||
| * | Add doc strings | Erik Johnston | 2015-05-22 | 1 | -0/+2 |
| | | |||||
* | | Merge branch 'erikj/join_perf' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-05-21 | 1 | -3/+3 |
|\| | | | | | | | erikj/backfill_fixes | ||||
| * | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/join_perf | Erik Johnston | 2015-05-21 | 1 | -3/+3 |
| |\ | |||||
| | * | Remove pointless newline | Erik Johnston | 2015-05-18 | 1 | -1/+0 |
| | | | |||||
| | * | Remove debug logging | Erik Johnston | 2015-05-18 | 1 | -8/+0 |
| | | | |||||
| | * | Fix daedlock | Erik Johnston | 2015-05-15 | 1 | -3/+12 |
| | | | |||||
* | | | Actually fetch state for new backwards extremeties when backfilling. | Erik Johnston | 2015-05-20 | 1 | -1/+5 |
|/ / | |||||
* | | Add None check | Erik Johnston | 2015-05-19 | 1 | -1/+1 |
| | | |||||
* | | Add a timeout param to get_event | Erik Johnston | 2015-05-19 | 1 | -9/+14 |
|/ | |||||
* | Missed events are not outliers | Erik Johnston | 2015-05-05 | 1 | -1/+1 |
| | |||||
* | Replace the @metrics.counted annotations in federation with ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -12/+15 |
| | | | | specifically-written counters and distributions | ||||
* | Initial attempt at sprinkling some @metrics.counted decorations around the ↵ | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -0/+14 |
| | | | | federation code | ||||
* | Delete pointless (and unreachable) __init__ method from FederationClient | Paul "LeoNerd" Evans | 2015-03-12 | 1 | -2/+0 |
| | |||||
* | Remove unecessary check | Erik Johnston | 2015-03-05 | 1 | -6/+0 |
| | |||||
* | Respect min_depth argument | Erik Johnston | 2015-03-05 | 1 | -4/+6 |
| | |||||
* | Docs. | Erik Johnston | 2015-03-05 | 1 | -0/+16 |
| | |||||
* | Handle if get_missing_pdu returns 400 or not all events. | Erik Johnston | 2015-03-05 | 1 | -13/+96 |
| | |||||
* | Implement and use new batched get missing pdu | Erik Johnston | 2015-02-23 | 1 | -0/+19 |
| | |||||
* | Merge branch 'keyclient_retry_scheme' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2015-02-18 | 1 | -12/+25 |
|\ | | | | | | | develop | ||||
| * | Add per server retry limiting. | Erik Johnston | 2015-02-17 | 1 | -12/+24 |
| | | | | | | | | | | Factor out the pre destination retry logic from TransactionQueue so it can be reused in both get_pdu and crypto.keyring | ||||
* | | Rename _fail_fetch_pdu_cache to _get_pdu_cache | Erik Johnston | 2015-02-18 | 1 | -8/+8 |
| | | |||||
* | | Cache results of get_pdu. | Erik Johnston | 2015-02-16 | 1 | -3/+39 |
|/ | |||||
* | Connection errors in twisted aren't RuntimeErrors | Erik Johnston | 2015-02-05 | 1 | -2/+2 |
| | |||||
* | Pass through list of room hosts from room alias query to federation so that ↵ | Erik Johnston | 2015-02-05 | 1 | -1/+4 |
| | | | | it can retry against different room hosts | ||||
* | Apply sanity to the transport client interface. Convert 'make_join' and ↵ | Erik Johnston | 2015-02-04 | 1 | -31/+51 |
| | | | | 'send_join' to accept iterables of destinations | ||||
* | Retry make_join | Erik Johnston | 2015-02-04 | 1 | -7/+12 |
| | |||||
* | Keep around the old (buggy) version of the prune_event function so that we ↵ | Erik Johnston | 2015-02-03 | 1 | -94/+2 |
| | | | | can use it to check signatures for events on old servers | ||||
* | PEP8 | Erik Johnston | 2015-02-03 | 1 | -1/+0 |
| | |||||
* | Don't bother requesting PDUs with bad signatures from the same server | Erik Johnston | 2015-02-02 | 1 | -16/+17 |
| | |||||
* | Don't fail an entire request if one of the returned events fails a signature ↵ | Erik Johnston | 2015-02-02 | 1 | -26/+81 |
| | | | | check. If an event does fail a signature check, look in the local database and request it from the originator. | ||||
* | Fix bug where we superfluously asked for current state. Change API of ↵ | Erik Johnston | 2015-01-30 | 1 | -6/+1 |
| | | | | /query_auth/ so that we don't duplicate events in the response. | ||||
* | Initial implementation of auth conflict resolution | Erik Johnston | 2015-01-29 | 1 | -1/+1 |
| | |||||
* | Start implementing auth conflict res | Erik Johnston | 2015-01-28 | 1 | -0/+39 |
| | |||||
* | Make it the responsibility of the replication layer to check signature and ↵ | Erik Johnston | 2015-01-26 | 1 | -13/+95 |
| | | | | hashes. | ||||
* | Split up replication_layer module into client, server and transaction queue | Erik Johnston | 2015-01-26 | 1 | -0/+293 |