summary refs log tree commit diff
path: root/synapse/rest/client/v2_alpha (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove unnecessary parentheses around return statements (#5931)Andrew Morgan2019-08-3019-92/+92
| | | | | 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 :)
* Merge pull request #5877 from ↵Richard van der Hoff2019-08-221-53/+4
|\ | | | | | | | | Awesome-Technologies/remove_shared_secret_registration Remove shared secret registration
| * Remove shared secret registration from client/r0/register endpointManuel Stahl2019-08-221-53/+4
| | | | | | | | | | | | | | | | | | | | This type of registration was probably never used. It only includes the user name in the HMAC but not the password. Shared secret registration is still available via client/r0/admin/register. Signed-off-by: Manuel Stahl <manuel.stahl@awesome-technologies.de>
* | Revert "Add "require_consent" parameter for registration"Brendan Abolivier2019-08-221-4/+1
| | | | | | | | This reverts commit 3320aaab3a9bba3f5872371aba7053b41af9d0a0.
* | Add "require_consent" parameter for registrationHalf-Shot2019-08-221-1/+4
| |
* | Opentrace e2e keys (#5855)Jorik Schellekens2019-08-221-1/+12
|/ | | Add opentracing tags and logs for e2e keys
* Fix up password reset template config names (#5863)Andrew Morgan2019-08-151-2/+2
| | | | | Fixes #5833 The emailconfig code was attempting to pull incorrect config file names. This corrects that, while also marking a difference between a config file variable that's a filepath versus a str containing HTML.
* LintBrendan Abolivier2019-08-011-4/+2
|
* Allow defining HTML templates to serve the user on account renewalBrendan Abolivier2019-08-011-6/+17
|
* Merge tag 'v1.2.0rc2' into developAndrew Morgan2019-07-241-0/+2
|\ | | | | | | | | | | | | Bugfixes -------- - Fix a regression introduced in v1.2.0rc1 which led to incorrect labels on some prometheus metrics. ([\#5734](https://github.com/matrix-org/synapse/issues/5734))
| * Fix servlet metric names (#5734)Jorik Schellekens2019-07-241-0/+2
| | | | | | | | | | | | | | | | | | | | * Fix servlet metric names Co-Authored-By: Richard van der Hoff <1389908+richvdh@users.noreply.github.com> * Remove redundant check * Cover all return paths
* | Replace returnValue with return (#5736)Amber Brown2019-07-2323-153/+143
|/
* Remove the ability to query relations when the original event was redacted. ↵Andrew Morgan2019-07-181-32/+43
| | | | | | | (#5629) Fixes #5594 Forbid viewing relations on an event once it has been redacted.
* Don't bundle aggregations when retrieving the original event (#5654)Andrew Morgan2019-07-101-2/+12
| | | | | | | A fix for PR #5626, which returned the original event content as part of a call to /relations. Only problem was that we were attempting to aggregate the relations on top of it when we did so. We now set bundle_aggregations to False in the get_event call. We also do this when pulling the relation events as well, because edits of edits are not something we'd like to support here.
* Include the original event in /relations (#5626)Andrew Morgan2019-07-091-3/+5
| | | When asking for the relations of an event, include the original event in the response. This will mostly be used for efficiently showing edit history, but could be useful in other circumstances.
* Remove access-token support from RegistrationHandler.register (#5641)Richard van der Hoff2019-07-081-6/+5
| | | | | | | | Nothing uses this now, so we can remove the dead code, and clean up the API. Since we're changing the shape of the return value anyway, we take the opportunity to give the method a better name.
* Run Black. (#5482)Amber Brown2019-06-2024-509/+419
|
* Merge branch 'master' of github.com:matrix-org/synapse into developErik Johnston2019-06-111-4/+5
|\
| * Change password reset links to /_matrix.Erik Johnston2019-06-111-4/+5
| |
* | Don't warn user about password reset disabling through config code (#5387)Andrew Morgan2019-06-111-4/+15
| | | | | | | | | | | | | | Moves the warning about password resets being disabled to the point where a user actually tries to reset their password. Is this an appropriate place for it to happen? Also removed the disabling of msisdn password resets when you don't have an email config, as that just doesn't make sense. Also change the error a user receives upon disabled passwords to specify that only email-based password reset is disabled.
* | Merge pull request #5363 from ↵Brendan Abolivier2019-06-101-1/+1
|\ \ | |/ |/| | | | | matrix-org/babolivier/account_validity_send_mail_auth Don't check whether the user's account is expired on /send_mail requests
| * Don't check whether the user's account is expired on /send_mail requestsBrendan Abolivier2019-06-051-1/+1
| |
* | Add ability to perform password reset via email without trusting the ↵Andrew Morgan2019-06-061-5/+238
| | | | | | | | | | | | | | | | | | | | | | | | identity server (#5377) Sends password reset emails from the homeserver instead of proxying to the identity server. This is now the default behaviour for security reasons. If you wish to continue proxying password reset requests to the identity server you must now enable the email.trust_identity_server_for_password_resets option. This PR is a culmination of 3 smaller PRs which have each been separately reviewed: * #5308 * #5345 * #5368
* | Unify v1 and v2 REST client APIs (#5226)Amber Brown2019-06-0325-102/+104
| |
* | Merge pull request #5220 from matrix-org/erikj/dont_bundle_live_eventsErik Johnston2019-05-241-0/+3
|\ \ | | | | | | Don't bundle aggregations with events in /sync or /events or state queries
| * | Don't bundle events in /sync or /eventsErik Johnston2019-05-211-0/+3
| | | | | | | | | | | | | | | As we'll send down the annotations too anyway, so this just ends up confusing clients.
* | | Add config option for setting homeserver's default room version (#5223)Andrew Morgan2019-05-231-2/+3
|/ / | | | | | | | | Replaces DEFAULT_ROOM_VERSION constant with a method that first checks the config, then returns a hardcoded value if the option is not present. That hardcoded value is now located in the server.py config file.
* | Merge pull request #5209 from matrix-org/erikj/reactions_baseErik Johnston2019-05-201-0/+338
|\ \ | | | | | | Land basic reaction and edit support.
| * | Move parsing of tokens out of storage layerErik Johnston2019-05-161-0/+19
| | |
| * | Check that event is visible in new APIsErik Johnston2019-05-161-2/+15
| | |
| * | Add aggregations APIErik Johnston2019-05-161-1/+140
| | |
| * | Actually implement idempotencyErik Johnston2019-05-151-1/+8
| | |
| * | Add simple pagination APIErik Johnston2019-05-151-0/+50
| | |
| * | Add simple send_relation API and track in DBErik Johnston2019-05-151-0/+110
| | |
* | | Merge pull request #5174 from matrix-org/dbkr/add_dummy_flow_to_recaptcha_onlyDavid Baker2019-05-161-5/+17
|\ \ \ | |_|/ |/| | Re-order registration stages to do msisdn & email auth last
| * | Re-order flows so that email auth is done lastDavid Baker2019-05-101-4/+12
| | | | | | | | | | | | | | | | | | It's more natural for the user if the bit that takes them away from the registration flow comes last. Adding the dummy stage allows us to do the stages in this order without the ambiguity.
| * | CommentDavid Baker2019-05-101-0/+4
| | |
| * | Add a DUMMY stage to captcha-only registration flowDavid Baker2019-05-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the client to complete the email last which is more natual for the user. Without this stage, if the client would complete the recaptcha (and terms, if enabled) stages and then the registration request would complete because you've now completed a flow, even if you were intending to complete the flow that's the same except has email auth at the end. Adding a dummy auth stage to the recaptcha-only flow means it's always unambiguous which flow the client was trying to complete. Longer term we should think about changing the protocol so the client explicitly says which flow it's trying to complete. vector-im/riot-web#9586
* | | Merge pull request #5187 from ↵David Baker2019-05-161-18/+22
|\ \ \ | | | | | | | | | | | | | | | | matrix-org/dbkr/only_check_threepid_not_in_use_if_actually_registering Only check 3pids not in use when registering
| * | | Only check 3pids not in use when registeringDavid Baker2019-05-141-18/+22
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | We checked that 3pids were not already in use before we checked if we were going to return the account previously registered in the same UI auth session, in which case the 3pids will definitely be in use. https://github.com/vector-im/riot-web/issues/9586
* | | Make all the rate limiting options more consistent (#5181)Amber Brown2019-05-151-10/+13
| | |
* | | Drop support for v2_alpha API prefix (#5190)Richard van der Hoff2019-05-155-20/+15
| |/ |/|
* | NewsfileErik Johnston2019-05-141-6/+6
| |
* | Allow client event serialization to be asyncErik Johnston2019-05-142-29/+28
|/
* Revert 085ae346ace418e0fc043ac5f568f85ebf80038eDavid Baker2019-05-101-1/+1
| | | | Accidentally went straight to develop
* Add a DUMMY stage to captcha-only registration flowDavid Baker2019-05-101-1/+1
| | | | | | | | | | | | | | | | This allows the client to complete the email last which is more natual for the user. Without this stage, if the client would complete the recaptcha (and terms, if enabled) stages and then the registration request would complete because you've now completed a flow, even if you were intending to complete the flow that's the same except has email auth at the end. Adding a dummy auth stage to the recaptcha-only flow means it's always unambiguous which flow the client was trying to complete. Longer term we should think about changing the protocol so the client explicitly says which flow it's trying to complete. https://github.com/vector-im/riot-web/issues/9586
* Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2019-04-174-9/+26
|\ | | | | | | babolivier/account_expiration
| * Merge pull request #5047 from matrix-org/babolivier/account_expirationBrendan Abolivier2019-04-171-0/+62
| |\ | | | | | | Send out emails with links to extend an account's validity period
| * \ Merge pull request #5071 from matrix-org/babolivier/3pid-checkBrendan Abolivier2019-04-171-0/+18
| |\ \ | | | | | | | | Make sure we're not registering the same 3pid twice
| | * | Make sure we're not registering the same 3pid twiceBrendan Abolivier2019-04-171-0/+18
| | | |
| * | | Merge pull request #4982 from matrix-org/erikj/msc1915Erik Johnston2019-04-031-2/+3
| |\ \ \ | | | | | | | | | | Implement MSC1915 - 3PID unbind APIs
| | * | | Add unbind API to /r0 as it is now stabalisedErik Johnston2019-04-011-1/+1
| | | | |
| | * | | Allowing specifying IS to use in unbind API.Erik Johnston2019-04-011-1/+2
| | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By default the homeserver will use the identity server used during the binding of the 3PID to unbind the 3PID. However, we need to allow clients to explicitly ask the homeserver to unbind via a particular identity server, for the case where the 3PID was bound out of band from the homeserver. Implements MSC915.
| * / / Collect room-version variations into one place (#4969)Richard van der Hoff2019-04-012-7/+5
| |/ / | | | | | | | | | 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.
* | / Add management endpoints for account validityBrendan Abolivier2019-04-171-1/+30
| |/ |/|
* | Send out emails with links to extend an account's validity periodBrendan Abolivier2019-04-171-0/+62
|/
* Add option to disable searching in the user dirErik Johnston2019-03-191-0/+6
| | | | We still populate it, as it can still be accessed via the admin API.
* Add ratelimiting on login (#4821)Brendan Abolivier2019-03-151-2/+2
| | | Add two ratelimiters on login (per-IP address and per-userID).
* Make registration ratelimiter separate from the main events oneBrendan Abolivier2019-03-061-1/+1
|
* Revert "Split ratelimiters in two (one for events, one for registration)"Brendan Abolivier2019-03-061-1/+1
| | | | This reverts commit d7dbad3526136cfc9fdbd568635be5016fb637db.
* Split ratelimiters in two (one for events, one for registration)Brendan Abolivier2019-03-051-1/+1
|
* Add rate-limiting on registration (#4735)Brendan Abolivier2019-03-051-4/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rate-limiting for registration * Add unit test for registration rate limiting * Add config parameters for rate limiting on auth endpoints * Doc * Fix doc of rate limiting function Co-Authored-By: babolivier <contact@brendanabolivier.com> * Incorporate review * Fix config parsing * Fix linting errors * Set default config for auth rate limiting * Fix tests * Add changelog * Advance reactor instead of mocked clock * Move parameters to registration specific config and give them more sensible default values * Remove unused config options * Don't mock the rate limiter un MAU tests * Rename _register_with_store into register_with_store * Make CI happy * Remove unused import * Update sample config * Fix ratelimiting test for py2 * Add non-guest test
* switch from google.com to recaptcha.net for reCAPTCHA (#4731)Matthew Hodgson2019-02-251-1/+1
| | | | | | | | * add trivial clarification about jemalloc * switch from google.com to recaptcha.net because https://developers.google.com/recaptcha/docs/faq#can-i-use-recaptcha-globally
* Fix registration on workers (#4682)Erik Johnston2019-02-202-135/+12
| | | | | | | | | | * Move RegistrationHandler init to HomeServer * Move post registration actions to RegistrationHandler * Add post regisration replication endpoint * Newsfile
* Move register_device into handlerErik Johnston2019-02-181-47/+2
|
* Update docsErik Johnston2019-02-181-1/+1
|
* Split out registration to workerErik Johnston2019-02-181-27/+46
| | | | | | | | This allows registration to be handled by a worker, though the actual write to the database still happens on master. Note: due to the in-memory session map all registration requests must be handled by the same worker.
* Merge pull request #4580 from matrix-org/uhoreg/e2e_backup_add_updatingErik Johnston2019-02-111-0/+34
|\ | | | | add updating of backup versions
| * make sure version is in body and wrap in linearizer queueHubert Chathi2019-02-081-1/+2
| | | | | | | | also add tests
| * add new endpoint to update backup versionsHubert Chathi2019-02-061-0/+33
| |
* | Allow "unavailable" presence status for /sync (#4592)Valentin Anger2019-02-081-1/+1
|/ | | | | | | | | | * Allow "unavailable" presence status for /sync Closes #3772, closes #3779 Signed-off-by: Valentin Anger <valentin.an.1999@gmail.com> * Add changelog for PR 4592
* isortNeil Johnson2019-01-301-2/+1
|
* formatting and use constants where availableNeil Johnson2019-01-301-19/+17
|
* Populate default room version from ConstantsNeil Johnson2019-01-301-1/+2
|
* reflect that rooms v3 is a stable room versionNeil Johnson2019-01-301-0/+1
|
* rework format of change password capabilityNeil Johnson2019-01-291-1/+3
|
* support change_password in capabilities end-pointNeil Johnson2019-01-291-2/+12
|
* enforce auth for capabilities endpointNeil Johnson2019-01-291-10/+17
|
* backout v3Neil Johnson2019-01-251-1/+0
|
* Support room version capabilities in CS API (MSC1804)Neil Johnson2019-01-251-0/+49
|
* move guard out of is_threepid_reserved and into register.pyNeil Johnson2019-01-221-4/+5
|
* Fix None guard in config.server.is_threepid_reservedNeil Johnson2019-01-221-1/+3
|
* Config option to disable requesting MSISDN on registrationNeil Johnson2019-01-211-11/+5
|
* Add GET account data routes (#4303)Travis Ralston2019-01-071-1/+33
| | | | As per https://github.com/matrix-org/matrix-doc/issues/1339
* Neilj/fix autojoin (#4223)Neil Johnson2018-11-281-0/+1
| | | | | | * Fix auto join failures for servers that require user consent * Fix auto join failures for servers that require user consent
* Fix fallback auth on Python 3 (#4197)Amber Brown2018-11-191-22/+16
|
* Remove duplicate slashes in generated consent URLsTravis Ralston2018-11-151-2/+2
|
* Add config variables for enabling terms auth and the policy name (#4142)Travis Ralston2018-11-061-1/+1
| | | | So people can still collect consent the old way if they want to.
* handle empty backups according to latest spec proposal (#4123)Hubert Chathi2018-11-051-3/+18
| | | fixes #4056
* Include a version query string arg for the consent routeTravis Ralston2018-10-311-2/+4
|
* Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-311-0/+89
|\
| * Address review commentsRichard van der Hoff2018-10-261-5/+16
| | | | | | | | Improve comments, get old room state from the context we already have
| * Basic initial support for room upgradesRichard van der Hoff2018-10-251-0/+78
| | | | | | | | | | Currently just creates a new, empty, room, and sends a tombstone in the old room.
* | Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-241-1/+1
|\|
| * Fix a number of flake8 errorsRichard van der Hoff2018-10-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Broadly three things here: * disable W504 which seems a bit whacko * remove a bunch of `as e` expressions from exception handlers that don't use them * use `r""` for strings which include backslashes Also, we don't use pep8 any more, so we can get rid of the duplicate config there.
* | pep8Travis Ralston2018-10-152-13/+2
| |
* | Merge branch 'develop' into travis/login-termsTravis Ralston2018-10-151-0/+372
|\|
| * missed oneDavid Baker2018-10-121-0/+1
| |
| * Don't mangle exceptionsDavid Baker2018-10-121-4/+2
| |
| * Split /room_keys/version into 2 servletsDavid Baker2018-10-121-9/+21
| |
| * PR feedback pt. 1David Baker2018-10-121-1/+1
| |
| * isortDavid Baker2018-10-091-1/+1
| |
| * Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backupsDavid Baker2018-10-094-23/+72
| |\
| * | WIP e2e key backupsDavid Baker2018-09-131-4/+10
| | | | | | | | | | | | | | | | | | | | | Continues from uhoreg's branch This just fixed the errcode on /room_keys/version if no backup and updates the schema delta to be on the latest so it gets run
| * | try to make flake8 and isort happyHubert Chathi2018-09-061-1/+4
| | |
| * | Merge branch 'develop' into e2e_backupsHubert Chathi2018-08-242-4/+19
| |\ \
| * | | missing importMatthew Hodgson2018-08-121-1/+1
| | | |
| * | | use parse_stringMatthew Hodgson2018-08-121-3/+3
| | | |
| * | | support DELETE /version with no argsMatthew Hodgson2018-08-121-2/+3
| | | |
| * | | implement remaining tests and make them workMatthew Hodgson2018-08-121-0/+6
| | | |
| * | | improve docstringMatthew Hodgson2018-08-121-1/+5
| | | |
| * | | add a tonne of docstring; make upload_room_keys properly assert versionMatthew Hodgson2018-08-121-1/+10
| | | |
| * | | more docstring for the e2e_room_keys restMatthew Hodgson2018-08-121-0/+51
| | | |
| * | | blindly incorporate PR review - needs testing & fixingMatthew Hodgson2018-08-121-0/+2
| | | |
| * | | make /room_keys/version workMatthew Hodgson2018-08-121-1/+8
| | | |
| * | | implement /room_keys/version too (untested)Matthew Hodgson2018-08-121-0/+47
| | | |
| * | | document the APIMatthew Hodgson2018-08-121-0/+133
| | | |
| * | | make it work and fix pep8Matthew Hodgson2018-08-121-13/+20
| | | |
| * | | interim WIP checkin; doesn't build yetMatthew Hodgson2018-08-121-4/+33
| | | |
| * | | total WIP skeleton for /room_keys APIMatthew Hodgson2018-08-121-0/+56
| | | |
* | | | Rely on the lack of ?u to represent public accessTravis Ralston2018-10-121-2/+2
| | | | | | | | | | | | also general cleanup
* | | | Use a flag rather than a new route for the public policyTravis Ralston2018-10-031-2/+2
| | | | | | | | | | | | This also means that the template now has optional parameters, which will need to be documented somehow.
* | | | Auto-consent to the privacy policy if the user registered with termsTravis Ralston2018-10-031-0/+6
| | | |
* | | | Make the terms flow requriedTravis Ralston2018-10-031-4/+4
| | | |
* | | | Flesh out the fallback auth for termsTravis Ralston2018-10-031-7/+67
| | | |
* | | | Incorporate Dave's work for GDPR login flowsTravis Ralston2018-10-032-0/+35
| |_|/ |/| | | | | As per https://github.com/vector-im/riot-web/issues/7168#issuecomment-419996117
* | | Port rest/ to Python 3 (#3823)Amber Brown2018-09-122-3/+3
| | |
* | | Merge pull request #3790 from matrix-org/rav/respect_event_format_in_filterRichard van der Hoff2018-09-051-13/+38
|\ \ \ | | | | | | | | Implement 'event_format' filter param in /sync
| * | | Implement 'event_format' filter param in /syncRichard van der Hoff2018-09-041-13/+38
| | | | | | | | | | | | | | | | | | | | This has been specced and part-implemented; let's implement it for /sync (but no other endpoints yet :/).
* | | | improve human readable error messageNeil Johnson2018-09-041-1/+2
| | | |
* | | | improve human readable error messagesNeil Johnson2018-09-042-7/+20
|/ / /
* | | move threepid checker to config, add missing yieldsNeil Johnson2018-08-311-2/+3
| | |
* | | ensure post registration auth checks do not fail erroneouslyNeil Johnson2018-08-311-0/+4
| | |
* | | fix bug where preserved threepid user comes to sign up and server is mau blockedNeil Johnson2018-08-311-0/+5
| |/ |/|
* | initial cut at a room summary API (#3574)Matthew Hodgson2018-08-161-0/+1
| |
* | Don't fail requests to unbind 3pids for non supporting ID serversErik Johnston2018-08-081-4/+18
|/ | | | | | | | | | Older identity servers may not support the unbind 3pid request, so we shouldn't fail the requests if we received one of 400/404/501. The request still fails if we receive e.g. 500 responses, allowing clients to retry requests on transient identity server errors that otherwise do support the API. Fixes #3661
* Python 3: Convert some unicode/bytes uses (#3569)Amber Brown2018-08-021-6/+6
|
* Refactor REST API tests to use explicit reactors (#3351)Amber Brown2018-07-171-1/+1
|
* check isort by travisKrombel2018-07-161-1/+1
|
* Merge pull request #3534 from krombel/use_parse_and_asserts_from_servletAmber Brown2018-07-144-59/+40
|\ | | | | Use parse and asserts from http.servlet
| * rename assert_params_in_request to assert_params_in_dictKrombel2018-07-134-16/+16
| | | | | | | | | | | | 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.servletKrombel2018-07-133-51/+32
| | | | | | | | | | | | | | 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 Brown2018-07-143-6/+4
|/
* Merge branch 'develop' into rav/enforce_report_apiRichard van der Hoff2018-07-1217-85/+98
|\
| * run isortAmber Brown2018-07-0917-68/+74
| |
| * Attempt to be more performant on PyPy (#3462)Amber Brown2018-06-281-1/+1
| |
| * Revert "Revert "Merge pull request #3431 from ↵Erik Johnston2018-06-251-2/+11
| | | | | | | | | | | | matrix-org/rav/erasure_visibility"" This reverts commit 1d009013b3c3e814177afc59f066e02a202b21cd.
| * Revert "Merge pull request #3431 from matrix-org/rav/erasure_visibility"Richard van der Hoff2018-06-221-11/+2
| | | | | | | | | | This reverts commit ce0d911156b355c5bf452120bfb08653dad96497, reversing changes made to b4a5d767a94f1680d07edfd583aae54ce422573e.
| * Merge pull request #3431 from matrix-org/rav/erasure_visibilityErik Johnston2018-06-221-2/+11
| |\ | | | | | | Support hiding events from deleted users
| | * mark accounts as erased when requestedRichard van der Hoff2018-06-121-2/+11
| | |
| * | Remove run_on_reactor (#3395)Amber Brown2018-06-142-10/+0
| |/
| * pep8David Baker2018-05-241-1/+1
| |
| * Unbind 3pids when they're deleted tooDavid Baker2018-05-241-3/+10
| |
* | Enforce the specified API for report_eventRichard van der Hoff2018-05-311-2/+23
|/ | | | | as per https://matrix.org/docs/spec/client_server/unstable.html#post-matrix-client-r0-rooms-roomid-report-eventid
* Stub out ServerNoticesSender on the workersRichard van der Hoff2018-05-221-0/+4
| | | | | ... and have the sync endpoints call it directly rather than obsure indirection via PresenceHandler
* Set Server header in SynapseRequestRichard van der Hoff2018-05-101-2/+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.
* notifications: Convert next_token to string according to the specKonstantinos Sideris2018-05-051-1/+1
| | | | | | Currently the parameter is serialized as an integer. Signed-off-by: Konstantinos Sideris <sideris.konstantin@gmail.com>
* Construct HMAC as bytes on py3Adrian Tschira2018-04-291-4/+6
| | | | Signed-off-by: Adrian Tschira <nota@notafile.com>
* Merge pull request #2996 from krombel/allow_auto_join_roomsRichard van der Hoff2018-04-101-32/+0
|\ | | | | move handling of auto_join_rooms to RegisterHandler
| * Merge branch 'develop' of into allow_auto_join_roomsKrombel2018-03-281-1/+1
| |\
| * | move handling of auto_join_rooms to RegisterHandlerKrombel2018-03-141-32/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the handling of auto_join_rooms only works when a user registers itself via public register api. Registrations via registration_shared_secret and ModuleApi do not work This auto_joins the users in the registration handler which enables the auto join feature for all 3 registration paths. This is related to issue #2725 Signed-Off-by: Matthias Kesler <krombel@krombel.de>
* | | Use "/settings/" (plural)Luke Barnard2018-04-051-1/+1
| | |
* | | Use join_policy API instead of joinableLuke Barnard2018-04-031-6/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The API is now under /groups/$group_id/setting/m.join_policy and expects a JSON blob of the shape ```json { "m.join_policy": { "type": "invite" } } ``` where "invite" could alternatively be "open".
* | | This should probably be a PUTDavid Baker2018-03-281-1/+1
| | |
* | | Add joinability for groupsDavid Baker2018-03-281-0/+28
| |/ |/| | | | | | | Adds API to set the 'joinable' flag, and corresponding flag in the table.
* | Replace some ujson with simplejson to make it workErik Johnston2018-03-161-1/+1
|/
* Move RoomMemberHandler out of HandlersErik Johnston2018-03-011-1/+1
|
* fix thinko on 3pid whitelistingMatthew Hodgson2018-01-241-2/+2
|
* fix typo (thanks sytest)Matthew Hodgson2018-01-191-1/+1
|
* oops, check all login typesMatthew Hodgson2018-01-191-14/+11
|
* trailing commasMatthew Hodgson2018-01-192-7/+7
|
* rewrite based on PR feedback:Matthew Hodgson2018-01-193-63/+36
| | | | | | | | | * [ ] 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 errorsMatthew Hodgson2018-01-192-8/+24
|
* fix pep8Matthew Hodgson2018-01-191-2/+1
|
* add registrations_require_3pidMatthew Hodgson2018-01-193-13/+96
| | | | | lets homeservers specify a whitelist for 3PIDs that users are allowed to associate with. Typically useful for stopping people from registering with non-work emails
* Fix error when deleting devicesRichard van der Hoff2017-12-051-1/+1
| | | | This was introduced in d7ea8c4 / PR #2728
* Factor out a validate_user_via_ui_auth methodRichard van der Hoff2017-12-052-74/+59
| | | | Collect together all the places that validate a logged-in user via UI auth.
* Refactor UI auth implementationRichard van der Hoff2017-12-054-27/+51
| | | | | Instead of returning False when auth is incomplete, throw an exception which can be caught with a wrapper.
* Move set_password into its own handlerRichard van der Hoff2017-11-291-1/+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 handlerRichard van der Hoff2017-11-291-3/+4
| | | | | | 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.
* Allow guest access to group APIs for readingLuke Barnard2017-11-281-11/+11
|
* Remove redundent callTravis Ralston2017-11-131-2/+0
| | | Signed-off-by: Travis Ralston <travpc@gmail.com>
* Add a route for determining who you areTravis Ralston2017-11-121-0/+17
| | | | | Useful for applications which may have an access token, but no idea as to who owns it. Signed-off-by: Travis Ralston <travpc@gmail.com>
* Add some more comments appservice user registrationRichard van der Hoff2017-11-101-1/+4
| | | | Explain why we don't validate userids registered via app services
* Downcase userids for shared-secret registrationRichard van der Hoff2017-11-101-2/+20
|
* Downcase userid on registrationRichard van der Hoff2017-11-091-1/+7
| | | | | | Force username to lowercase before attempting to register https://github.com/matrix-org/synapse/issues/2660
* Register group servletErik Johnston2017-11-091-0/+1
|
* Have an explicit API to update room configErik Johnston2017-11-081-0/+27
|
* Revert "Modify group room association API to allow modification of is_public"Erik Johnston2017-11-081-2/+2
|
* support inhibit_login in /registerRichard van der Hoff2017-11-021-12/+16
| | | | Allow things to pass inhibit_login when registering to ... inhibit logins.
* Merge remote-tracking branch 'origin/develop' into ↵David Baker2017-11-012-3/+2
|\ | | | | | | rav/refactor_accesstoken_delete
| * Merge pull request #2615 from matrix-org/rav/break_auth_device_depDavid Baker2017-11-011-1/+0
| |\ | | | | | | Break dependency of auth_handler on device_handler
| | * Break dependency of auth_handler on device_handlerRichard van der Hoff2017-11-011-1/+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.
| * | Modify group room association API to allow modification of is_publicLuke Barnard2017-10-311-2/+2
| |/ | | | | | | also includes renamings to make things more consistent.
* / Move access token deletion into auth handlerRichard van der Hoff2017-11-011-11/+4
|/ | | | | | | 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.
* Merge pull request #2591 from matrix-org/rav/device_delete_authRichard van der Hoff2017-10-271-5/+8
|\ | | | | Device deletion: check UI auth matches access token
| * Device deletion: check UI auth matches access tokenRichard van der Hoff2017-10-271-5/+8
| | | | | | | | (otherwise there's no point in the UI auth)
* | Merge pull request #2589 from matrix-org/rav/as_deactivate_accountRichard van der Hoff2017-10-271-16/+32
|\ \ | | | | | | Allow ASes to deactivate their own users
| * | Allow ASes to deactivate their own usersRichard van der Hoff2017-10-271-16/+32
| | |
* | | Merge pull request #2582 from matrix-org/luke/group-is-publicLuke Barnard2017-10-271-40/+53
|\ \ \ | |_|/ |/| | Add is_public to groups table to allow for private groups
| * | delintLuke Barnard2017-10-261-4/+17
| | |
| * | Add is_public to groups table to allow for private groupsLuke Barnard2017-10-261-40/+40
| |/ | | | | | | | | | | Prevent group API access to non-members for private groups Also make all the group code paths consistent with `requester_user_id` always being the User ID of the requesting user.
* | add release endpoints for /thirdpartyKrombel2017-10-261-7/+4
| |
* | register some /unstable endpoints in /r0 as wellKrombel2017-10-264-20/+9
|/
* replace 'except:' with 'except Exception:'Richard van der Hoff2017-10-233-3/+3
| | | | what could possibly go wrong
* Remove pointless create() methodRichard van der Hoff2017-10-201-1/+1
| | | | | It just calls the constructor, so we may as well kill it rather than having random codepaths.
* Merge pull request #2545 from matrix-org/dbkr/auto_join_roomsDavid Baker2017-10-171-0/+34
|\ | | | | Add config option to auto-join new users to rooms
| * Add config option to auto-join new users to roomsDavid Baker2017-10-161-0/+34
| | | | | | | | | | New users who register on the server will be dumped into all rooms in auto_join_rooms in the config.
* | DelintLuke Barnard2017-10-161-0/+1
| |
* | Implement GET /groups/$groupId/invited_usersLuke Barnard2017-10-161-0/+21
|/
* Add remove room APIErik Johnston2017-09-261-0/+11
|
* Merge branch 'develop' of github.com:matrix-org/synapse into erikj/groups_mergedErik Johnston2017-09-192-6/+5
|\
| * Add left section to /keys/changesErik Johnston2017-09-081-4/+2
| |
| * Send down device list change notif when member leaves/rejoins roomErik Johnston2017-09-071-1/+2
| |
| * Reduce spammy log line in synchrotronsErik Johnston2017-08-021-1/+1
| |
* | FixupErik Johnston2017-08-111-0/+1
| |
* | Add bulk group publicised lookup APIErik Johnston2017-08-091-0/+54
| |
* | Allow update group publicityErik Johnston2017-08-081-0/+28
| |
* | Merge pull request #2378 from matrix-org/erikj/group_sync_supportErik Johnston2017-07-211-0/+5
|\ \ | | | | | | Add groups to sync stream
| * | Add groups to sync streamErik Johnston2017-07-201-0/+5
| | |
* | | Remove spurious content paramErik Johnston2017-07-201-1/+1
| | |
* | | Add update group profile APIErik Johnston2017-07-201-0/+12
|/ /
* | CommentsErik Johnston2017-07-181-1/+3
| |
* | CommentsErik Johnston2017-07-181-103/+48
| |
* | Add local group server supportErik Johnston2017-07-171-0/+642
|/
* split out reducing stuff; just make encode_* staticKrombel2017-07-111-35/+27
|
* fix testKrombel2017-07-101-1/+3
|
* encode sync-response statically; omit empty objects from sync-responseKrombel2017-07-101-33/+48
|
* Include users who share room with requester in user directoryErik Johnston2017-06-151-2/+6
|
* Add commentsErik Johnston2017-05-311-0/+16
|
* Use POSTErik Johnston2017-05-311-1/+1
|
* Add REST APIErik Johnston2017-05-311-0/+59
|
* Add count of one time keys to sync streamErik Johnston2017-05-191-0/+1
|
* Fixed syntax nitsPablo Saavedra2017-05-152-5/+6
|
* Fixed implementation errorsPablo Saavedra2017-05-152-3/+7
| | | | | * Added HS as property in SyncRestServlet * Fixed set_timeline_upper_limit function implementat¡ion
* Configurable maximum number of events requested by /sync and /messages (#2220)Pablo Saavedra2017-05-133-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Set the limit on the returned events in the timeline in the get and sync operations. The default value is -1, means no upper limit. For example, using `filter_timeline_limit: 5000`: POST /_matrix/client/r0/user/user:id/filter { room: { timeline: { limit: 1000000000000000000 } } } GET /_matrix/client/r0/user/user:id/filter/filter:id { room: { timeline: { limit: 5000 } } } The server cuts down the room.timeline.limit.
* Modify register/available to be GET with query paramLuke Barnard2017-05-101-5/+4
| | | | | | | - GET is now the method for register/available - a query parameter "username" is now used Also, empty usernames are now handled with an error message on registration or via register/available: `User ID cannot be empty`
* Change register/available to POST (from GET)Luke Barnard2017-05-101-1/+1
|
* Appease the flake8 godsLuke Barnard2017-05-031-5/+10
|
* Implement username availability checkerLuke Barnard2017-05-031-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Outlined here: https://github.com/vector-im/riot-web/issues/3605#issuecomment-298679388 ```HTTP GET /_matrix/.../register/available { "username": "desiredlocalpart123" } ``` If available, the response looks like ```HTTP HTTP/1.1 200 OK { "available": true } ``` Otherwise, ```HTTP HTTP/1.1 429 { "errcode": "M_LIMIT_EXCEEDED", "error": "Too Many Requests", "retry_after_ms": 2000 } ``` or ```HTTP HTTP/1.1 400 { "errcode": "M_USER_IN_USE", "error": "User ID already taken." } ``` or ```HTTP HTTP/1.1 400 { "errcode": "M_INVALID_USERNAME", "error": "Some reason for username being invalid" } ```
* Comment and remove spurious loggingErik Johnston2017-04-271-1/+0
|
* Fix invite state to always include all eventsErik Johnston2017-04-261-0/+2
|
* m.read_marker -> m.fully_read (#2128)Luke Barnard2017-04-182-5/+5
| | | | | | Also: - change the REST endpoint to have a "S" on the end (so it's now /read_markers) - change the content of the m.read_up_to event to have the key "event_id" instead of "marker".
* More null-guard changesLuke Barnard2017-04-121-4/+4
|
* Remove Unused ref to hsLuke Barnard2017-04-121-1/+0
|
* Move a spaceLuke Barnard2017-04-121-2/+2
|
* flake8Luke Barnard2017-04-112-3/+3
|
* Finish implementing RM endpointLuke Barnard2017-04-112-9/+12
| | | | | - This change causes a 405 to be sent if "m.read_marker" is set via /account_data - This also fixes-up the RM endpoint so that it actually Works.
* Initial commit of RM server-side impllukebarnard2017-04-111-0/+71
| | | | (See https://docs.google.com/document/d/1UWqdS-e1sdwkLDUY0wA4gZyIkRp-ekjsLZ8k6g_Zvso/edit#heading=h.lndohpg8at5u)
* Merge pull request #1986 from matrix-org/matthew/enable_guest_3pErik Johnston2017-03-311-4/+4
|\ | | | | enable guest access for the 3pl/3pid APIs