Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Merge pull request #3620 from fuzzmz/return-404-room-not-found | Richard van der Hoff | 2018-08-01 | 1 | -2/+2 |
|\ | | | | | return 404 if room not found | ||||
| * | return NotFoundError if room not found | Serban Constantin | 2018-07-31 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | Per the Client-Server API[0] we should return `M_NOT_FOUND` if the room isn't found instead of generic SynapseError. This ensures that /directory/list API returns 404 for room not found instead of 400. [0]: https://matrix.org/docs/spec/client_server/unstable.html#get-matrix-client-r0-directory-list-room-roomid Signed-off-by: Serban Constantin <serban.constantin@gmail.com> | ||||
* | | Python 3: Convert some unicode/bytes uses (#3569) | Amber Brown | 2018-08-02 | 1 | -7/+15 |
|/ | |||||
* | make /context lazyload & filter aware (#3567) | Matthew Hodgson | 2018-07-27 | 1 | -0/+9 |
| | | | make /context lazyload & filter aware. | ||||
* | Merge branch 'develop' of github.com:matrix-org/synapse into ↵ | Erik Johnston | 2018-07-23 | 3 | -437/+126 |
|\ | | | | | | | erikj/client_apis_move | ||||
| * | Admin API for creating new users (#3415) | Amber Brown | 2018-07-20 | 1 | -0/+122 |
| | | |||||
| * | Move v1-only APIs into their own module & isolate deprecated ones (#3460) | Amber Brown | 2018-07-19 | 2 | -437/+4 |
| | | |||||
* | | Move RoomContextHandler out of Handlers | Erik Johnston | 2018-07-18 | 1 | -2/+2 |
| | | | | | | | | This is in preparation for moving GET /context/ to a worker | ||||
* | | Split MessageHandler into read only and writers | Erik Johnston | 2018-07-18 | 2 | -15/+13 |
|/ | | | | | This will let us call the read only parts from workers, and so be able to move some APIs off of master, e.g. the `/state` API. | ||||
* | check isort by travis | Krombel | 2018-07-16 | 2 | -3/+3 |
| | |||||
* | Fix develop because I broke it :( (#3535) | Amber Brown | 2018-07-14 | 1 | -2/+2 |
| | |||||
* | Merge pull request #3534 from krombel/use_parse_and_asserts_from_servlet | Amber Brown | 2018-07-14 | 7 | -74/+42 |
|\ | | | | | Use parse and asserts from http.servlet | ||||
| * | fix sytests | Amber Brown | 2018-07-14 | 1 | -1/+1 |
| | | |||||
| * | add changelog | Krombel | 2018-07-13 | 1 | -1/+1 |
| | | |||||
| * | rename assert_params_in_request to assert_params_in_dict | Krombel | 2018-07-13 | 5 | -14/+14 |
| | | | | | | | | | | | | the method "assert_params_in_request" does handle dicts and not requests. A request body has to be parsed to json before this method can be used | ||||
| * | Use parse_{int,str} and assert from http.servlet | Krombel | 2018-07-13 | 7 | -75/+43 |
| | | | | | | | | | | | | | | parse_integer and parse_string can take a request and raise errors in case we have wrong or missing params. This PR tries to use them more to deduplicate some code and make it better readable | ||||
* | | Make auth & transactions more testable (#3499) | Amber Brown | 2018-07-14 | 3 | -6/+5 |
|/ | |||||
* | run isort | Amber Brown | 2018-07-09 | 14 | -86/+88 |
| | |||||
* | Attempt to be more performant on PyPy (#3462) | Amber Brown | 2018-06-28 | 2 | -2/+3 |
| | |||||
* | update doc for deactivate API | Matthew Hodgson | 2018-06-26 | 1 | -1/+1 |
| | |||||
* | add GDPR erase param to deactivate API | Matthew Hodgson | 2018-06-26 | 1 | -1/+12 |
| | |||||
* | Revert "Revert "Merge pull request #3431 from ↵ | Erik Johnston | 2018-06-25 | 1 | -1/+3 |
| | | | | | | matrix-org/rav/erasure_visibility"" This reverts commit 1d009013b3c3e814177afc59f066e02a202b21cd. | ||||
* | Revert "Merge pull request #3431 from matrix-org/rav/erasure_visibility" | Richard van der Hoff | 2018-06-22 | 1 | -3/+1 |
| | | | | | This reverts commit ce0d911156b355c5bf452120bfb08653dad96497, reversing changes made to b4a5d767a94f1680d07edfd583aae54ce422573e. | ||||
* | Merge pull request #3431 from matrix-org/rav/erasure_visibility | Erik Johnston | 2018-06-22 | 1 | -1/+3 |
|\ | | | | | Support hiding events from deleted users | ||||
| * | mark accounts as erased when requested | Richard van der Hoff | 2018-06-12 | 1 | -1/+3 |
| | | |||||
* | | Remove run_on_reactor (#3395) | Amber Brown | 2018-06-14 | 1 | -7/+0 |
|/ | |||||
* | fix log | Richard van der Hoff | 2018-06-07 | 1 | -1/+1 |
| | |||||
* | Fix event-purge-by-ts admin API | Richard van der Hoff | 2018-06-07 | 1 | -6/+4 |
| | | | | | | This got completely broken in 0.30. Fixes #3300. | ||||
* | Replace some more comparisons with six | Adrian Tschira | 2018-05-19 | 1 | -3/+5 |
| | | | | | | plus a bonus b"" string I missed last time Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | Merge pull request #3221 from matrix-org/erikj/purge_token | Erik Johnston | 2018-05-18 | 1 | -7/+10 |
|\ | | | | | Make purge_history operate on tokens | ||||
| * | Make purge_history operate on tokens | Erik Johnston | 2018-05-15 | 1 | -7/+10 |
| | | | | | | | | As we're soon going to change how topological_ordering works | ||||
* | | Move RoomCreationHandler out of synapse.handlers.Handlers | Richard van der Hoff | 2018-05-17 | 2 | -5/+4 |
|/ | | | | | | | Handlers is deprecated nowadays, so let's move this out before I add a new dependency on it. Also fix the docstrings on create_room. | ||||
* | Set Server header in SynapseRequest | Richard van der Hoff | 2018-05-10 | 1 | -1/+0 |
| | | | | | | | | | | | | (instead of everywhere that writes a response. Or rather, the subset of places which write responses where we haven't forgotten it). This also means that we don't have to have the mysterious version_string attribute in anything with a request handler. Unfortunately it does mean that we have to pass the version string wherever we instantiate a SynapseSite, which has been c&ped 150 times, but that is code that ought to be cleaned up anyway really. | ||||
* | Burminate v1auth | Adrian Tschira | 2018-04-30 | 2 | -2/+6 |
| | | | | | | | | | | | | | | | | | | This closes #2602 v1auth was created to account for the differences in status code between the v1 and v2_alpha revisions of the protocol (401 vs 403 for invalid tokens). However since those protocols were merged, this makes the r0 version/endpoint internally inconsistent, and violates the specification for the r0 endpoint. This might break clients that rely on this inconsistency with the specification. This is said to affect the legacy angular reference client. However, I feel that restoring parity with the spec is more important. Either way, it is critical to inform developers about this change, in case they rely on the illegal behaviour. Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | add guard for None on purge_history api | Krombel | 2018-04-30 | 1 | -1/+14 |
| | |||||
* | Merge pull request #3156 from NotAFile/py3-hmac-bytes | Richard van der Hoff | 2018-04-30 | 1 | -7/+9 |
|\ | | | | | Construct HMAC as bytes on py3 | ||||
| * | Construct HMAC as bytes on py3 | Adrian Tschira | 2018-04-29 | 1 | -7/+9 |
| | | | | | | | | Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | | Use six.moves.urlparse | Adrian Tschira | 2018-04-15 | 2 | -5/+6 |
|/ | | | | | | The imports were shuffled around a bunch in py3 Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | Merge pull request #3079 from matrix-org/erikj/limit_concurrent_sends | Erik Johnston | 2018-04-10 | 1 | -6/+1 |
|\ | | | | | Limit concurrent event sends for a room | ||||
| * | Use create_and_send_nonmember_event everywhere | Erik Johnston | 2018-04-09 | 1 | -6/+1 |
| | | |||||
* | | Merge pull request #3061 from NotAFile/add-some-byte-strings | Richard van der Hoff | 2018-04-09 | 1 | -2/+2 |
|\ \ | | | | | | | Add b prefixes to some strings that are bytes in py3 | ||||
| * | | Add b prefixes to some strings that are bytes in py3 | Adrian Tschira | 2018-04-04 | 1 | -2/+2 |
| | | | | | | | | | | | | | | | | | | This has no effect on python2 Signed-off-by: Adrian Tschira <nota@notafile.com> | ||||
* | | | Merge pull request #2938 from dklug/develop | Richard van der Hoff | 2018-04-09 | 1 | -1/+4 |
|\ \ \ | |_|/ |/| | | Return 401 for invalid access_token on logout | ||||
| * | | Return 401 for invalid access_token on logout | dklug | 2018-03-02 | 1 | -1/+4 |
| | | | | | | | | | | | | Signed-off-by: Duncan Klug <dklug@ucmerced.edu> | ||||
* | | | Merge pull request #2986 from jplatte/join_reponse_room_id | Richard van der Hoff | 2018-04-05 | 1 | -1/+6 |
|\ \ \ | |_|/ |/| | | Add room_id to the response of `rooms/{roomId}/join` | ||||
| * | | Add room_id to the response of `rooms/{roomId}/join` | Jonas Platte | 2018-03-13 | 1 | -1/+6 |
| | | | | | | | | | | | | Fixes #2349 | ||||
* | | | Merge branch 'master' of github.com:matrix-org/synapse into develop | Erik Johnston | 2018-03-19 | 1 | -1/+1 |
|\ \ \ | |/ / |/| | | |||||
| * | | Replace ujson with simplejson | Erik Johnston | 2018-03-15 | 1 | -1/+1 |
| | | | |||||
* | | | RoomMembershipRestServlet doesn't handle /forget | Erik Johnston | 2018-03-13 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | Due to the order we register the REST handlers `/forget` was handled by the correct handler. | ||||
* | | | Add transactional API to history purge | Richard van der Hoff | 2018-03-12 | 1 | -3/+35 |
| | | | | | | | | | | | | Make the purge request return quickly, and allow scripts to poll for updates. | ||||
* | | | Provide a means to pass a timestamp to purge_history | Richard van der Hoff | 2018-03-05 | 1 | -3/+55 |
| |/ |/| | |||||
* | | Move RoomMemberHandler out of Handlers | Erik Johnston | 2018-03-01 | 2 | -12/+14 |
| | | |||||
* | | Merge pull request #2854 from matrix-org/erikj/event_create_worker | Erik Johnston | 2018-02-13 | 1 | -1/+0 |
|\ \ | | | | | | | Create a worker for event creation | ||||
| * | | Add event_creator worker | Erik Johnston | 2018-02-07 | 1 | -1/+0 |
| | | | |||||
* | | | Fix typos in purge api & doc | Richard van der Hoff | 2018-02-13 | 1 | -3/+1 |
| | | | | | | | | | | | | | | | * It's supposed to be purge_local_events, not ..._history * Fix the doc to have valid json | ||||
* | | | Merge pull request #2858 from matrix-org/rav/purge_updates | Richard van der Hoff | 2018-02-09 | 1 | -1/+10 |
|\ \ \ | |/ / |/| | | delete_local_events for purge_room_history | ||||
| * | | delete_local_events for purge_history | Richard van der Hoff | 2018-02-09 | 1 | -1/+10 |
| | | | | | | | | | | | | Add a flag which makes the purger delete local events | ||||
* | | | Update copyright | Erik Johnston | 2018-02-06 | 2 | -0/+2 |
| | | | |||||
* | | | Update places where we create events | Erik Johnston | 2018-02-05 | 2 | -9/+11 |
| | | | |||||
* | | | Merge branch 'develop' into travis/admin-list-media | Travis Ralston | 2018-02-01 | 2 | -17/+34 |
|\ \ \ | |||||
| * | | | add ?ts massaging for ASes (#2754) | Matthew Hodgson | 2018-01-23 | 1 | -6/+11 |
| | | | | | | | | | | | | blindly implement ?ts for AS. untested | ||||
| * | | | rewrite based on PR feedback: | Matthew Hodgson | 2018-01-19 | 1 | -13/+7 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * [ ] split config options into allowed_local_3pids and registrations_require_3pid * [ ] simplify and comment logic for picking registration flows * [ ] fix docstring and move check_3pid_allowed into a new util module * [ ] use check_3pid_allowed everywhere @erikjohnston PTAL | ||||
| * | | | fix up v1, and improve errors | Matthew Hodgson | 2018-01-19 | 1 | -11/+29 |
| |/ / | |||||
* / / | Add an admin route to get all the media in a room | Travis Ralston | 2018-01-20 | 1 | -0/+22 |
|/ / | | | | | | | | | This is intended to be used by administrators to monitor the media that is passing through their server, if they wish. Signed-off-by: Travis Ralston <travpc@gmail.com> | ||||
* | | Add /room/{id}/event/{id} to synapse | Richard van der Hoff | 2018-01-09 | 1 | -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. | ||||
* | | Better logging when login can't find a 3pid | Richard van der Hoff | 2017-12-20 | 1 | -4/+10 |
|/ | |||||
* | Delete devices in various logout situations | Richard van der Hoff | 2017-11-29 | 1 | -2/+25 |
| | | | | | | | | | | | | | 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 handler | Richard van der Hoff | 2017-11-29 | 1 | -2/+2 |
| | | | | | | 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 handler | Richard van der Hoff | 2017-11-29 | 1 | -2/+2 |
| | | | | | | 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. | ||||
* | Downcase userids for shared-secret registration | Richard van der Hoff | 2017-11-10 | 1 | -1/+1 |
| | |||||
* | Allow password_auth_providers to return a callback | Richard van der Hoff | 2017-11-01 | 1 | -1/+4 |
| | | | | ... so that they have a way to record access tokens. | ||||
* | Merge remote-tracking branch 'origin/develop' into ↵ | David Baker | 2017-11-01 | 1 | -3/+10 |
|\ | | | | | | | rav/refactor_accesstoken_delete | ||||
| * | Merge pull request #2615 from matrix-org/rav/break_auth_device_dep | David Baker | 2017-11-01 | 1 | -3/+0 |
| |\ | | | | | | | Break dependency of auth_handler on device_handler | ||||
| | * | Break dependency of auth_handler on device_handler | Richard van der Hoff | 2017-11-01 | 1 | -3/+0 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | I'm going to need to make the device_handler depend on the auth_handler, so I need to break this dependency to avoid a cycle. It turns out that the auth_handler was only using the device_handler in one place which was an edge case which we can more elegantly handle by throwing an error rather than fixing it up. | ||||
| * | | Apparently this is python | David Baker | 2017-11-01 | 1 | -1/+1 |
| | | | |||||
| * | | Log login requests | David Baker | 2017-11-01 | 1 | -0/+10 |
| |/ | | | | | | | Carefully though, to avoid logging passwords | ||||
* / | Move access token deletion into auth handler | Richard van der Hoff | 2017-11-01 | 2 | -11/+6 |
|/ | | | | | | | Also move duplicated deactivation code into the auth handler. I want to add some hooks when we deactivate an access token, so let's bring it all in here so that there's somewhere to put it. | ||||
* | Refactor some logic from LoginRestServlet into AuthHandler | Richard van der Hoff | 2017-10-31 | 1 | -29/+26 |
| | | | | | | | | | | | | | | I'm going to need some more flexibility in handling login types in password auth providers, so as a first step, move some stuff from LoginRestServlet into AuthHandler. In particular, we pass everything other than SAML, JWT and token logins down to the AuthHandler, which now has responsibility for checking the login type and fishing the password out of the login dictionary, as well as qualifying the user_id if need be. Ideally SAML, JWT and token would go that way too, but there's no real need for it right now and I'm trying to minimise impact. This commit *should* be non-functional. | ||||
* | replace 'except:' with 'except Exception:' | Richard van der Hoff | 2017-10-23 | 4 | -7/+7 |
| | | | | what could possibly go wrong | ||||
* | Remove pointless create() method | Richard van der Hoff | 2017-10-20 | 1 | -3/+3 |
| | | | | | It just calls the constructor, so we may as well kill it rather than having random codepaths. | ||||
* | Merge branch 'develop' into erikj/groups_merged | David Baker | 2017-10-02 | 1 | -10/+6 |
|\ | |||||
| * | Fix /joined_members to work with AS users | Erik Johnston | 2017-09-28 | 1 | -2/+1 |
| | | |||||
| * | Fix bug where /joined_members didn't check user was in room | Erik Johnston | 2017-09-27 | 1 | -10/+7 |
| | | |||||
* | | Merge branch 'develop' of github.com:matrix-org/synapse into erikj/groups_merged | Erik Johnston | 2017-09-19 | 1 | -8/+8 |
|\| | |||||
| * | fix english | hera | 2017-08-04 | 1 | -7/+7 |
| | | |||||
| * | typo | hera | 2017-08-04 | 1 | -1/+1 |
| | | |||||
* | | Split out profile handler to fix tests | Erik Johnston | 2017-08-25 | 1 | -9/+9 |
|/ | |||||
* | Fix bug where pusherpool didn't start and broke some rooms | Erik Johnston | 2017-07-06 | 1 | -8/+6 |
| | | | | | | | | Since we didn't instansiate the PusherPool at start time it could fail at run time, which it did for some users. This may or may not fix things for those users, but it should happen at start time and stop the server from starting. | ||||
* | Add API to quarantine media | Erik Johnston | 2017-06-19 | 1 | -0/+25 |
| | |||||
* | Remove unused import | Erik Johnston | 2017-06-19 | 1 | -1/+1 |
| | |||||
* | Change to create new room and join other users | Erik Johnston | 2017-06-19 | 1 | -6/+53 |
| | |||||
* | Forget room | Erik Johnston | 2017-06-19 | 1 | -0/+2 |
| | |||||
* | Add shutdown room API | Erik Johnston | 2017-06-19 | 1 | -1/+66 |
| | |||||
* | Add more granular event send metrics | Erik Johnston | 2017-05-02 | 1 | -0/+1 |
| | |||||
* | Merge pull request #2130 from APwhitehat/roomexists | Erik Johnston | 2017-04-27 | 1 | -1/+5 |
|\ | | | | | Check that requested room_id exists | ||||
| * | Check that requested room_id exists | Anant Prakash | 2017-04-14 | 1 | -1/+5 |
| | | |||||
* | | Reduce size of joined_user cache | Erik Johnston | 2017-04-25 | 1 | -1/+7 |
|/ | | | | | | | | The _get_joined_users_from_context cache stores a mapping from user_id to avatar_url and display_name. Instead of storing those in a dict, store them in a namedtuple as that uses much less memory. We also try converting the string to ascii to further reduce the size. | ||||
* | Merge pull request #2011 from matrix-org/matthew/turn_allow_guests | Erik Johnston | 2017-03-31 | 1 | -1/+4 |
|\ | | | | | add setting (on by default) to support TURN for guests | ||||
| * | add setting (on by default) to support TURN for guests | Matthew Hodgson | 2017-03-15 | 1 | -1/+4 |
| | | |||||
* | | Don't recreate so many sets | Erik Johnston | 2017-03-16 | 1 | -2/+1 |
| | | |||||
* | | Format presence events on the edges instead of reformatting them multiple times | Erik Johnston | 2017-03-15 | 1 | -0/+3 |
| | | |||||
* | | Merge pull request #1997 from matrix-org/dbkr/cas_partialdownload | David Baker | 2017-03-15 | 1 | -1/+8 |
|\ \ | |/ |/| | Handle PartialDownloadError in CAS login | ||||
| * | Handle PartialDownloadError in CAS login | David Baker | 2017-03-14 | 1 | -1/+8 |
| | | |||||
* | | Support registration / login with phone number | David Baker | 2017-03-13 | 1 | -6/+82 |
|/ | | | | Changes from https://github.com/matrix-org/synapse/pull/1971 | ||||
* | Revert "Support registration & login with phone number" | Erik Johnston | 2017-03-13 | 1 | -82/+6 |
| | |||||
* | Not any more, it doesn't | David Baker | 2017-03-08 | 1 | -1/+0 |
| | |||||
* | Minor fixes from PR feedback | David Baker | 2017-03-08 | 1 | -1/+1 |
| | |||||
* | Factor out msisdn canonicalisation | David Baker | 2017-03-08 | 1 | -13/+5 |
| | | | | Plus a couple of other minor fixes | ||||
* | Fix pep8 | David Baker | 2017-03-08 | 1 | -3/+3 |
| | |||||
* | Support new login format | David Baker | 2017-03-07 | 1 | -6/+91 |
| | | | | https://docs.google.com/document/d/1-6ZSSW5YvCGhVFDyD2QExAUAdpCWjccvJT5xiyTTG2Y/edit# | ||||
* | Remove unused param | Erik Johnston | 2017-02-20 | 1 | -1/+0 |
| | |||||
* | Make kick & ban reasons work | David Baker | 2017-02-14 | 1 | -0/+5 |
| | | | | | | We somehow specced APIs with reason strings, preserve the content in the events and even have the clients display them, but failed to actually pass the parameter through to the event content. | ||||
* | admin,storage: added more administrator functionalities | Morteza Araby | 2017-02-02 | 2 | -2/+224 |
| | | | | | | | | | | | | | | administrators can now: - Set displayname of users - Update user avatars - Search for users by user_id - Browse all users in a paginated API - Reset user passwords - Deactivate users Helpers for doing paginated queries has also been added to storage Signed-off-by: Morteza Araby <morteza.araby@ericsson.com> | ||||
* | Fix email push in pusher worker | Erik Johnston | 2017-02-02 | 1 | -1/+4 |
| | | | | | | This was broken when device list updates were implemented, as Mailer could no longer instantiate an AuthHandler due to a dependency on federation sending. | ||||
* | Added username and password for turn server | Marvin Steadfast | 2017-01-19 | 1 | -9/+17 |
| | | | | | It makes it possible to use a turn server that needs a username and password instead of a token. | ||||
* | Lowercase all email addresses before querying db | David Baker | 2017-01-18 | 1 | -1/+7 |
| | | | | | Since we store all emails in the DB in lowercase (https://github.com/matrix-org/synapse/pull/1170) | ||||
* | Linearize updates to membership via PUT /state/ | Erik Johnston | 2017-01-09 | 1 | -11/+17 |
| | |||||
* | Merge pull request #1676 from matrix-org/erikj/room_list | Erik Johnston | 2016-12-12 | 2 | -1/+52 |
|\ | | | | | Add new API appservice specific public room list | ||||
| * | Add new API appservice specific public room list | Erik Johnston | 2016-12-06 | 2 | -1/+52 |
| | | |||||
* | | Add /room/<room_id>/joined_members API | Erik Johnston | 2016-12-08 | 1 | -0/+19 |
| | | | | | | | | | | | | This returns the currently joined members in the room with their display names and avatar urls. This is more efficient than /members for large rooms where you don't need the full events. | ||||
* | | Add joined_rooms servlet | Erik Johnston | 2016-12-08 | 1 | -0/+17 |
|/ | |||||
* | Merge branch 'develop' into rav/no_more_refresh_tokens | Richard van der Hoff | 2016-11-30 | 1 | -12/+0 |
|\ | |||||
| * | Stop putting a time caveat on access tokens | Richard van der Hoff | 2016-11-29 | 1 | -12/+0 |
| | | | | | | | | | | | | | | | | The 'time' caveat on the access tokens was something of a lie, since we weren't enforcing it; more pertinently its presence stops us ever adding useful time caveats. Let's move in the right direction by not lying in our caveats. | ||||
* | | Stop generating refresh tokens | Richard van der Hoff | 2016-11-28 | 1 | -18/+10 |
|/ | | | | | | | Since we're not doing refresh tokens any more, we should start killing off the dead code paths. /tokenrefresh itself is a bit of a thornier subject, since there might be apps out there using it, but we can at least not generate refresh tokens on new logins. | ||||
* | Clean transactions based on time. Add HttpTransactionCache tests. | Kegan Dougal | 2016-11-14 | 1 | -1/+1 |
| | |||||
* | Move .observe() up to the cache to make things neater | Kegan Dougal | 2016-11-14 | 1 | -24/+6 |
| | |||||
* | Review comments | Kegan Dougal | 2016-11-11 | 3 | -146/+29 |
| | |||||
* | More flake8 | Kegan Dougal | 2016-11-11 | 1 | -1/+3 |
| | |||||
* | Flake8 and fix whoopsie | Kegan Dougal | 2016-11-11 | 1 | -4/+8 |
| | |||||
* | Use ObservableDeferreds instead of Deferreds as they behave as intended | Kegan Dougal | 2016-11-11 | 2 | -30/+31 |
| | |||||
* | Flake8 | Kegan Dougal | 2016-11-10 | 1 | -3/+3 |
| | |||||
* | Store Promise<Response> instead of Response for HTTP API transactions | Kegan Dougal | 2016-11-10 | 3 | -82/+56 |
| | | | | | | | | | | | | | | | | | | This fixes a race whereby: - User hits an endpoint. - No cached transaction so executes main code. - User hits same endpoint. - No cache transaction so executes main code. - Main code finishes executing and caches response and returns. - Main code finishes executing and caches response and returns. This race is common in the wild when Synapse is struggling under load. This commit fixes the race by: - User hits an endpoint. - Caches the promise to execute the main code and executes main code. - User hits same endpoint. - Yields on the same promise as the first request. - Main code finishes executing and returns, unblocking both requests. | ||||
* | rest/client/v1/register: use the correct requester in createUser | Patrik Oldsberg | 2016-10-06 | 1 | -3/+6 |
| | | | | Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
* | storage/appservice: make appservice methods only relying on the cache ↵ | Patrik Oldsberg | 2016-10-06 | 1 | -1/+1 |
| | | | | synchronous | ||||
* | Time out typing over federation | Erik Johnston | 2016-09-23 | 1 | -1/+4 |
| | |||||
* | Support /initialSync in synchrotron worker | Erik Johnston | 2016-09-21 | 2 | -5/+4 |
| | |||||
* | Enable guest access to POST /publicRooms | Erik Johnston | 2016-09-17 | 1 | -2/+2 |
| | |||||
* | Make POST /publicRooms require auth | Erik Johnston | 2016-09-16 | 1 | -2/+1 |
| | |||||
* | Change the way we calculate new_limit in /publicRooms and add POST API | Erik Johnston | 2016-09-15 | 1 | -0/+29 |
| | |||||
* | Remove default public rooms limit | Erik Johnston | 2016-09-15 | 1 | -1/+1 |
| | |||||
* | By default limit /publicRooms to 100 entries | Erik Johnston | 2016-09-15 | 1 | -1/+1 |
| | |||||
* | Pass since/from parameters over federation | Erik Johnston | 2016-09-15 | 1 | -3/+3 |
| | |||||
* | Allow paginating both forwards and backwards | Erik Johnston | 2016-09-15 | 1 | -3/+15 |
| | |||||
* | Remove support for aggregate room lists | Erik Johnston | 2016-09-15 | 1 | -1/+1 |
| | |||||
* | Conform better to the CAS protocol specification | Shell Turner | 2016-09-09 | 1 | -5/+2 |
| | | | | | | | Redirect to CAS's /login endpoint properly, and don't require an <attributes> element. Signed-off-by: Shell Turner <cam.turn@gmail.com> | ||||
* | Merge pull request #1096 from matrix-org/markjh/get_access_token | Mark Haines | 2016-09-09 | 3 | -16/+10 |
|\ | | | | | Add helper function for getting access_tokens from requests | ||||
| * | Add helper function for getting access_tokens from requests | Mark Haines | 2016-09-09 | 3 | -16/+10 |
| | | | | | | | | | | | | Rather than reimplementing the token parsing in the various places. This will make it easier to change the token parsing to allow access_tokens in HTTP headers. | ||||
* | | Filter returned events for client-facing format | Paul "LeoNerd" Evans | 2016-09-09 | 1 | -2/+3 |
| | | |||||
* | | Allow clients to specify the format a room state event is returned in | Paul "LeoNerd" Evans | 2016-09-09 | 1 | -1/+7 |
|/ | |||||
* | Use parse_string | Erik Johnston | 2016-09-08 | 1 | -2/+2 |
| | |||||
* | Add server param to /publicRooms | Erik Johnston | 2016-09-08 | 1 | -5/+16 |
| | |||||
* | Pass through user-supplied content in /join/$room_id | Kegan Dougal | 2016-08-23 | 1 | -0/+1 |
| | | | | | | | It was always intended to allow custom keys on the join event, but this has at some point been lost. Restore it. If the user specifies keys like "avatar_url" then they will be clobbered. | ||||
* | Make synchrotron accept /events | Erik Johnston | 2016-08-12 | 1 | -5/+4 |
| | |||||
* | Dont invoke get_handlers fromClientV1RestServlet | Erik Johnston | 2016-08-12 | 9 | -1/+86 |
| | | | | | | hs.get_handlers() can not be invoked from split out processes. Moving the invocations down a level means that we can slowly split out individual servlets. | ||||
* | Merge pull request #995 from matrix-org/rav/clean_up_cas_login | David Baker | 2016-08-09 | 1 | -125/+33 |
|\ | | | | | Clean up CAS login code | ||||
| * | Clean up CAS login code | Richard van der Hoff | 2016-08-08 | 1 | -125/+33 |
| | | | | | | | | | | | | | | Remove some apparently unused code. Clean up parse_cas_response, mostly to catch the exception if the CAS response isn't valid XML. | ||||
* | | Fix CAS login | Richard van der Hoff | 2016-08-08 | 1 | -0/+1 |
|/ | | | | Attempting to log in with CAS was giving a 500 error. | ||||
* | Implement deleting devices | Richard van der Hoff | 2016-07-26 | 1 | -3/+10 |
| | |||||
* | Merge pull request #933 from matrix-org/rav/type_annotations | Richard van der Hoff | 2016-07-20 | 2 | -0/+8 |
|\ | | | | | Type annotations | ||||
| * | Type annotations | Richard van der Hoff | 2016-07-19 | 2 | -0/+8 |
| | | | | | | | | | | Add some type annotations to help PyCharm (in particular) to figure out the types of a bunch of things. | ||||
* | | Merge pull request #932 from matrix-org/rav/register_refactor | David Baker | 2016-07-20 | 1 | -1/+3 |
|\ \ | | | | | | | Further registration refactoring | ||||
| * | | Further registration refactoring | Richard van der Hoff | 2016-07-19 | 1 | -1/+3 |
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | * `RegistrationHandler.appservice_register` no longer issues an access token: instead it is left for the caller to do it. (There are two of these, one in `synapse/rest/client/v1/register.py`, which now simply calls `AuthHandler.issue_access_token`, and the other in `synapse/rest/client/v2_alpha/register.py`, which is covered below). * In `synapse/rest/client/v2_alpha/register.py`, move the generation of access_tokens into `_create_registration_details`. This means that the normal flow no longer needs to call `AuthHandler.issue_access_token`; the shared-secret flow can tell `RegistrationHandler.register` not to generate a token; and the appservice flow continues to work despite the above change. | ||||
* | | Merge pull request #922 from matrix-org/erikj/file_api2 | Erik Johnston | 2016-07-20 | 1 | -1/+10 |
|\ \ | |/ |/| | Feature: Add filter to /messages. Add 'contains_url' to filter. | ||||
| * | Add filter param to /messages API | Erik Johnston | 2016-07-14 | 1 | -1/+10 |
| | | |||||
* | | Add device_id support to /login | Richard van der Hoff | 2016-07-18 | 1 | -3/+36 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add a 'devices' table to the storage, as well as a 'device_id' column to refresh_tokens. Allow the client to pass a device_id, and initial_device_display_name, to /login. If login is successful, then register the device in the devices table if it wasn't known already. If no device_id was supplied, make one up. Associate the device_id with the access token and refresh token, so that we can get at it again later. Ensure that the device_id is copied from the refresh token to the access_token when the token is refreshed. | ||||
* | | Refactor login flow | Richard van der Hoff | 2016-07-18 | 1 | -18/+23 |
| | | | | | | | | | | | | | | | | | | | | Make sure that we have the canonical user_id *before* calling get_login_tuple_for_user_id. Replace login_with_password with a method which just validates the password, and have the caller call get_login_tuple_for_user_id. This brings the password flow into line with the other flows, and will give us a place to register the device_id if necessary. | ||||
* | | Bug fix: expire invalid access tokens | Negar Fazeli | 2016-07-13 | 1 | -1/+1 |
|/ | |||||
* | Add rest servlet. Fix SQL. | Erik Johnston | 2016-07-06 | 1 | -0/+1 |
| | |||||
* | Merge branch 'erikj/shared_secret' into erikj/test2 | Erik Johnston | 2016-07-06 | 1 | -4/+16 |
|\ | |||||
| * | Check that there are no null bytes in user and passsword | Erik Johnston | 2016-07-06 | 1 | -0/+6 |
| | | |||||
| * | Add null separator to hmac | Erik Johnston | 2016-07-06 | 1 | -0/+2 |
| | | |||||
| * | Add an admin option to shared secret registration | Erik Johnston | 2016-07-05 | 1 | -0/+1 |
| | | |||||
| * | Protect password when registering using shared secret | Erik Johnston | 2016-07-05 | 1 | -4/+7 |
| | | |||||
* | | Add purge_history API | Erik Johnston | 2016-07-05 | 1 | -0/+18 |
|/ | |||||
* | Fix style violations | Kent Shikama | 2016-07-04 | 1 | -1/+2 |
| | | | | Signed-off-by: Kent Shikama <kent@kentshikama.com> | ||||
* | Use .get() instead of [] to access password_hash | Kent Shikama | 2016-07-04 | 1 | -1/+1 |
| | |||||
* | Optionally include password hash in createUser endpoint | Kent Shikama | 2016-07-03 | 1 | -1/+3 |
| | | | | Signed-off-by: Kent Shikama <kent@kentshikama.com> | ||||
* | Feature: Add deactivate account admin API | Erik Johnston | 2016-06-30 | 1 | -0/+26 |
| | | | | | | | | | | Allows server admins to "deactivate" accounts, which: - Revokes all access tokens - Removes all threepids - Removes password The API is a POST to `/admin/deactivate/<user_id>` | ||||
* | Implement purge_media_cache admin API | Erik Johnston | 2016-06-29 | 1 | -0/+32 |
| | |||||
* | Remove redundant exception log in /events | Erik Johnston | 2016-06-09 | 1 | -24/+21 |
| | |||||
* | Don't make rooms visibile by default | Erik Johnston | 2016-06-08 | 1 | -2/+0 |
| | |||||
* | Log user that is making /publicRooms calls | Erik Johnston | 2016-06-08 | 1 | -0/+7 |
| | |||||
* | Load push rules in storage layer, so that they get cached | Erik Johnston | 2016-06-03 | 1 | -4/+2 |
| | |||||
* | Working unsubscribe links going straight to the HS | David Baker | 2016-06-02 | 1 | -1/+3 |
| | | | | and authed by macaroons that let you delete pushers and nothing else | ||||
* | Merge branch 'dbkr/split_out_auth_handler' into dbkr/email_unsubscribe | David Baker | 2016-06-02 | 1 | -5/+6 |
|\ | |||||
| * | Split out the auth handler | David Baker | 2016-06-02 | 1 | -5/+6 |
| | | |||||
* | | WIP on unsubscribing email notifs without logging in | David Baker | 2016-06-01 | 1 | -1/+54 |
|/ | |||||
* | Basic, un-cached support for secondary_directory_servers | David Baker | 2016-05-31 | 1 | -1/+2 |
| | |||||
* | Split out the room list handler | David Baker | 2016-05-31 | 1 | -1/+1 |
| | | | | So I can use it from federation bits without pulling in all the handlers. | ||||
* | Allow clients to specify a server_name to avoid 'No known servers' | Kegan Dougal | 2016-05-19 | 1 | -1/+4 |
| | | | | Multiple server_names are supported via ?server_name=foo&server_name=bar | ||||
* | Move typing handler out of the Handlers object | Mark Haines | 2016-05-17 | 1 | -4/+3 |
| | |||||
* | Move the presence handler out of the Handlers object | Mark Haines | 2016-05-16 | 2 | -7/+15 |
| | |||||
* | Create user with expiry | Negi Fazeli | 2016-05-13 | 1 | -0/+71 |
| | | | | | | - Add unittests for client, api and handler Signed-off-by: Negar Fazeli <negar.fazeli@ericsson.com> | ||||
* | Make pyjwt dependency optional | Erik Johnston | 2016-04-25 | 1 | -5/+7 |
| | |||||
* | Merge pull request #687 from nikriek/jwt-fix | Erik Johnston | 2016-04-21 | 1 | -3/+6 |
|\ | | | | | Fix issues with JWT login | ||||
| * | Fix issues with JWT login | Niklas Riekenbrauck | 2016-04-21 | 1 | -3/+6 |
| | | |||||
* | | Make the /set part mandatory | David Baker | 2016-04-12 | 1 | -1/+1 |
| | | |||||
* | | Mis-named function | David Baker | 2016-04-12 | 1 | -1/+1 |
| | | |||||
* | | Split into separate servlet classes | David Baker | 2016-04-12 | 1 | -11/+16 |
| | | |||||
* | | Add get endpoint for pushers | David Baker | 2016-04-11 | 1 | -1/+34 |
|/ | | | | As per https://github.com/matrix-org/matrix-doc/pull/308 | ||||
* | Remove spurious comment | Erik Johnston | 2016-03-30 | 1 | -1/+0 |
| | |||||
* | Require user to have left room to forget room | Erik Johnston | 2016-03-30 | 1 | -0/+38 |
| | | | | | This dramatically simplifies the forget API code - in particular it no longer generates a leave event. | ||||
* | Add JWT support | Niklas Riekenbrauck | 2016-03-29 | 1 | -0/+53 |
| | |||||
* | Add published room list edit API | Erik Johnston | 2016-03-21 | 1 | -0/+42 |
| | |||||
* | Update aliases event after deletion | Erik Johnston | 2016-03-17 | 1 | -1/+2 |
| | | | | | | | | Attempt to update the appropriate `m.room.aliases` event after deleting an alias. This may fail due to the deleter not being in the room. Will also check if the canonical alias of the event is set to the deleted alias, and if so will attempt to delete it. | ||||
* | Hook up adding a pusher to the notifier for replication. | Mark Haines | 2016-03-15 | 1 | -0/+6 |
| | |||||
* | Fix regression where synapse checked whether push rules were valid JSON ↵ | Mark Haines | 2016-03-14 | 1 | -2/+2 |
| | | | | before the compatibility hack that handled clients sending invalid JSON | ||||
* | Merge pull request #642 from matrix-org/erikj/logout | Erik Johnston | 2016-03-11 | 1 | -0/+72 |
|\ | | | | | Implement logout | ||||
| * | Implement logout | Erik Johnston | 2016-03-11 | 1 | -0/+72 |
| | | |||||
* | | Use parse_json_object_from_request to parse JSON out of request bodies | Mark Haines | 2016-03-11 | 3 | -22/+13 |
|/ | |||||
* | Add a parse_json_object function | Mark Haines | 2016-03-09 | 6 | -83/+21 |
| | | | | | to deduplicate all the copy+pasted _parse_json functions. Also document the parse_.* functions. | ||||
* | Fix relative imports so they work in both py3 and py27 | Mark Haines | 2016-03-08 | 6 | -6/+6 |
| | |||||
* | Use syntax that works on both py2.7 and py3 | Mark Haines | 2016-03-07 | 1 | -1/+1 |
| | |||||
* | Merge branch 'develop' into markjh/pushrule_stream | Mark Haines | 2016-03-04 | 3 | -10/+11 |
|\ | |||||
| * | Merge pull request #614 from matrix-org/erikj/alias_delete | Erik Johnston | 2016-03-04 | 1 | -3/+0 |
| |\ | | | | | | | Allow alias creators to delete aliases | ||||
| | * | Allow alias creators to delete aliases | Erik Johnston | 2016-03-01 | 1 | -3/+0 |
| | | | |||||
| * | | Pass whole requester to ratelimiting | Daniel Wagner-Hall | 2016-03-03 | 3 | -7/+11 |
| |/ | | | | | | | This will enable more detailed decisions | ||||
* | | Hook up the push rules stream to account_data in /sync | Mark Haines | 2016-03-04 | 1 | -1/+1 |
| | | |||||
* | | Move the code for formatting push rules into a separate function | Mark Haines | 2016-03-03 | 1 | -86/+4 |
| | | |||||
* | | Hook up the push rules to the notifier | Mark Haines | 2016-03-03 | 1 | -15/+29 |
|/ | |||||
* | Add support for changing the actions for default rules | Mark Haines | 2016-02-26 | 1 | -4/+27 |
| | | | | | | See matrix-org/matrix-doc#283 Works by adding dummy rules to the push rules table with a negative priority class and then using those rules to clobber the default rule actions when adding the default rules in ``list_with_base_rules`` | ||||
* | Fix to appease the PEP8 dragon | Gergely Polonkai | 2016-02-26 | 1 | -1/+3 |
| | |||||
* | Add error codes for malformed/bad JSON in /login | Gergely Polonkai | 2016-02-26 | 1 | -2/+2 |
| | | | | Signed-off-by: Gergely Polonkai <gergely@polonkaieu> | ||||
* | Make sure we return a JSON object when returning the values of specif… | Mark Haines | 2016-02-25 | 1 | -1/+3 |
| | | | | …ic keys from a push rule | ||||
* | Remove unused get_rule_attr method | Mark Haines | 2016-02-24 | 1 | -8/+0 |
| | |||||
* | Ignore invalid POST bodies when joining rooms | Daniel Wagner-Hall | 2016-02-24 | 1 | -2/+12 |
| | |||||
* | Allow third_party_signed to be specified on /join | Daniel Wagner-Hall | 2016-02-23 | 1 | -0/+4 |
| | |||||
* | Merge pull request #582 from matrix-org/erikj/presence | Erik Johnston | 2016-02-19 | 2 | -22/+22 |
|\ | | | | | Rewrite presence for performance. | ||||
| * | "You are not..." | Erik Johnston | 2016-02-18 | 1 | -1/+1 |
| | | |||||
| * | Initial cut | Erik Johnston | 2016-02-17 | 2 | -22/+22 |
| | | |||||
* | | Remove dead code for setting device specific rules. | Mark Haines | 2016-02-18 | 2 | -88/+8 |
| | | | | | | | | | | | | It wasn't possible to hit the code from the API because of a typo in parsing the request path. Since no-one was using the feature we might as well remove the dead code. | ||||
* | | Merge branch 'develop' into daniel/roomcleanupincremental | Daniel Wagner-Hall | 2016-02-17 | 2 | -2/+2 |
|\| | | | | | | | | | Conflicts: synapse/rest/client/v1/room.py | ||||
| * | client/v1/room: include event_id in response to state event PUT, in ↵ | Patrik Oldsberg | 2016-02-17 | 1 | -2/+2 |
| | | | | | | | | | | | | accordance with the spec Signed-off-by: Patrik Oldsberg <patrik.oldsberg@ericsson.com> | ||||
| * | Fix typo in request validation for adding push rules. | Mark Haines | 2016-02-16 | 1 | -1/+1 |
| | | |||||
| * | Simplify room creation code | Daniel Wagner-Hall | 2016-02-15 | 1 | -15/+3 |
| | | |||||
* | | Some cleanup | Daniel Wagner-Hall | 2016-02-17 | 1 | -3/+3 |
| | | | | | | | | | | I'm not particularly happy with the "action" switching, but there's no convenient way to defer the work that needs to happen after it, so... :( | ||||
* | | Branch off member and non member sends | Daniel Wagner-Hall | 2016-02-15 | 1 | -5/+16 |
| | | | | | | | | Unclean, needs tidy-up, but works | ||||
* | | Simplify room creation code | Daniel Wagner-Hall | 2016-02-15 | 1 | -15/+3 |
| | | |||||
* | | Reuse update_membership from /join | Daniel Wagner-Hall | 2016-02-15 | 1 | -16/+5 |
| | | |||||
* | | Merge implementation of /join by alias or ID | Daniel Wagner-Hall | 2016-02-15 | 1 | -37/+31 |
| | | | | | | | | | | This code is kind of rough (passing the remote servers down a long chain), but is a step towards improvement. | ||||
* | | Merge some room joining codepaths | Daniel Wagner-Hall | 2016-02-15 | 1 | -1/+1 |
|/ | | | | | | Force joining by alias to go through the send_membership_event checks, rather than bypassing them straight into _do_join. This is the first of many stages of cleanup. | ||||
* | Revert "Merge two of the room join codepaths" | Daniel Wagner-Hall | 2016-02-12 | 1 | -13/+55 |
| | | | | | | This reverts commit cf81375b94c4763766440471e632fc4b103450ab. It subtly violates a guest joining auth check | ||||
* | Merge two of the room join codepaths | Daniel Wagner-Hall | 2016-02-12 | 1 | -55/+13 |
| | | | | | | | | | | | | | There's at least one more to merge in. Side-effects: * Stop reporting None as displayname and avatar_url in some cases * Joining a room by alias populates guest-ness in join event * Remove unspec'd PUT version of /join/<room_id_or_alias> which has not been called on matrix.org according to logs * Stop recording access_token_id on /join/room_id - currently we don't record it on /join/room_alias; I can try to thread it through at some point. | ||||
* | Catch the exceptions thrown by twisted when you write to a closed connection | Mark Haines | 2016-02-12 | 1 | -4/+6 |
| | |||||
* | Revert "Reject additional path segments" | Daniel Wagner-Hall | 2016-02-09 | 3 | -6/+6 |
| | | | | | | This reverts commit 1d19a5ec0fff73af9cee8c21118020b31be47379. iOS Console is apparently relying on these paths. | ||||
* | Reject additional path segments | Daniel Wagner-Hall | 2016-02-08 | 3 | -6/+6 |
| | |||||
* | Merge pull request #557 from matrix-org/dbkr/profile_dont_return_null | David Baker | 2016-02-04 | 1 | -6/+17 |
|\ | | | | | Omit keys rather then returning null in profile API | ||||
| * | No braces here | David Baker | 2016-02-03 | 1 | -1/+1 |
| | | |||||
| * | Don't return null if profile display name / avatar url isn't set: omit them ↵ | David Baker | 2016-02-03 | 1 | -6/+17 |
| | | | | | | | | instead | ||||
* | | Remove old log line | Erik Johnston | 2016-02-03 | 1 | -2/+0 |
|/ |