summary refs log tree commit diff
path: root/synapse/server.py (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/develop' into dbkr/e2e_backupsDavid Baker2018-10-091-2/+12
|\
| * use abc.abstractpropertyRichard van der Hoff2018-08-281-5/+4
| | | | | | | | This gives clearer messages when someone gets it wrong
| * Make sure that we close db connections opened during initRichard van der Hoff2018-08-281-2/+13
| | | | | | | | | | | | | | | | | | We should explicitly close any db connections we open, because failing to do so can block other transactions as per https://github.com/matrix-org/synapse/issues/3682. Let's also try to factor out some of the boilerplate by having server classes define their datastore class rather than duplicating the whole of `setup`.
* | Merge branch 'develop' into e2e_backupsHubert Chathi2018-08-241-3/+10
|\|
| * Rename WorkerProfileHandler to BaseProfileHandlerErik Johnston2018-08-221-2/+2
| |
| * Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-08-171-1/+5
| |\ | | | | | | | | | erikj/split_profiles
| | * Add EDU/query handling over replicationErik Johnston2018-08-061-1/+5
| | |
| * | Split ProfileHandler into master and workerErik Johnston2018-08-171-2/+5
| |/
* / make it work and fix pep8Matthew Hodgson2018-08-121-0/+5
|/
* Merge branch 'develop' of github.com:matrix-org/synapse into ↵Erik Johnston2018-07-231-0/+5
|\ | | | | | | erikj/client_apis_move
| * Admin API for creating new users (#3415)Amber Brown2018-07-201-0/+5
| |
* | Move PaginationHandler to its own fileErik Johnston2018-07-201-5/+2
| |
* | Move RoomContextHandler out of HandlersErik Johnston2018-07-181-1/+5
| | | | | | | | This is in preparation for moving GET /context/ to a worker
* | Split MessageHandler into read only and writersErik Johnston2018-07-181-1/+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.
* run isortAmber Brown2018-07-091-17/+17
|
* Pass around the reactor explicitly (#3385)Amber Brown2018-06-221-4/+15
|
* Stub out ServerNoticesSender on the workersRichard van der Hoff2018-05-221-0/+7
| | | | | ... and have the sync endpoints call it directly rather than obsure indirection via PresenceHandler
* Send users a server notice about consentRichard van der Hoff2018-05-221-0/+5
| | | | | When a user first syncs, we will send them a server notice asking them to consent to the privacy policy if they have not already done so.
* Infrastructure for a server notices roomRichard van der Hoff2018-05-171-0/+5
| | | | | | | Server Notices use a special room which the user can't dismiss. They are created on demand when some other bit of the code calls send_notice. (This doesn't actually do much yet becuse we don't call send_notice anywhere)
* Move RoomCreationHandler out of synapse.handlers.HandlersRichard van der Hoff2018-05-171-0/+5
| | | | | | | 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.
* ConsentResource to gather policy consent from usersRichard van der Hoff2018-05-151-0/+3
| | | | | Hopefully there are enough comments and docs in this that it makes sense on its own.
* Burminate v1authAdrian Tschira2018-04-301-10/+0
| | | | | | | | | | | | | | | | | | 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>
* Split RoomMemberWorkerHandler to separate fileErik Johnston2018-03-141-3/+2
|
* Implement RoomMemberWorkerHandlerErik Johnston2018-03-131-2/+4
|
* Merge pull request #2987 from matrix-org/erikj/split_room_member_handlerErik Johnston2018-03-131-2/+4
|\ | | | | Split RoomMemberHandler into base and master class
| * Raise, don't return, exceptionErik Johnston2018-03-131-1/+1
| |
| * Split RoomMemberHandler into base and master classErik Johnston2018-03-131-2/+4
| | | | | | | | | | | | | | | | The intention here is to split the class into the bits that can be done on workers and the bits that have to be done on the master. In future there will also be a class that can be run on the worker, which will delegate work to the master when necessary.
* | s/replication_client/federation_client/Erik Johnston2018-03-131-2/+2
| |
* | s/replication_server/federation_serverErik Johnston2018-03-131-2/+2
| |
* | Split replication layer into twoErik Johnston2018-03-131-4/+9
|/
* Split out edu/query registration to a separate classErik Johnston2018-03-131-0/+5
|
* Move RoomMemberHandler out of HandlersErik Johnston2018-03-011-0/+5
|
* Update places where we create eventsErik Johnston2018-02-051-0/+5
|
* Factor out resolve_state_groups to a separate handlerRichard van der Hoff2018-02-011-1/+5
| | | | | | We extract the storage-independent bits of the state group resolution out to a separate functiom, and stick it in a new handler, in preparation for its use from the storage layer.
* Factor out get_db_conn to HomeServer base classRichard van der Hoff2018-01-261-0/+17
| | | | | This function is identical to all subclasses, so we may as well push it up to the base class to reduce duplication (and make use of it in the tests)
* Merge branch 'develop' into matthew/search-all-local-usersMatthew Hodgson2017-11-301-17/+35
|\
| * Move set_password into its own handlerRichard van der Hoff2017-11-291-0/+5
| | | | | | | | | | | | 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-0/+5
| | | | | | | | | | | | 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.
| * Build MediaRepositoryResource as a homeserver dependencyRichard van der Hoff2017-11-221-1/+10
| | | | | | | | | | | | This avoids the scenario where we have four different PreviewUrlResources configured on a single app, each of which have their own caches and cache clearing jobs.
| * Clean up dependency listRichard van der Hoff2017-11-211-16/+15
| | | | | | | | | | remove those that aren't used at all, and replace the ones that don't have builders with simple getters rather than dynamically-generated methods.
* | Add user_directory_include_pattern config param to expand search results to ↵Matthew Hodgson2017-11-291-2/+2
|/ | | | | | | | | | additional users Initial commit; this doesn't work yet - the LIKE filtering seems too aggressive. It also needs _do_initial_spam to be aware of prepopulating the whole user_directory_search table with all users... ...and it needs a handle_user_signup() or something to be added so that new signups get incrementally added to the table too. Committing it here as a WIP
* Merge branch 'develop' into erikj/groups_mergedDavid Baker2017-10-021-0/+5
|\
| * Make the spam checker a moduleDavid Baker2017-09-261-0/+5
| |
* | Split out profile handler to fix testsErik Johnston2017-08-251-0/+5
| |
* | Add local group server supportErik Johnston2017-07-171-0/+5
| |
* | Initial group server implementationErik Johnston2017-07-101-0/+14
|/
* Add user_directory to databaseErik Johnston2017-05-311-0/+5
|
* Store ActionGenerator in HomeServerErik Johnston2017-05-191-0/+5
|
* Finish implementing RM endpointLuke Barnard2017-04-111-0/+5
| | | | | - 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.
* Update all the workers and master to use TCP replicationErik Johnston2017-04-031-0/+4
|
* Fix email push in pusher workerErik Johnston2017-02-021-1/+5
| | | | | | This was broken when device list updates were implemented, as Mailer could no longer instantiate an AuthHandler due to a dependency on federation sending.
* Shuffle receipt handler around so that worker apps don't need to load itErik Johnston2016-11-231-0/+5
|
* Ensure only main or federation_sender process can send federation trafficErik Johnston2016-11-231-2/+11
|
* Hook up the send queue and create a federation sender workerErik Johnston2016-11-161-1/+5
|
* Add transaction queue and transport layer to DIErik Johnston2016-11-161-0/+10
|
* Support /initialSync in synchrotron workerErik Johnston2016-09-211-0/+5
|
* Move RoomListHandler into a separate fileErik Johnston2016-09-141-1/+1
|
* Send device messages over federationMark Haines2016-09-061-0/+5
|
* Make synchrotron accept /eventsErik Johnston2016-08-121-0/+9
|
* Move e2e query logic into a handlerRichard van der Hoff2016-08-011-21/+24
|
* Add device_id support to /loginRichard van der Hoff2016-07-181-0/+5
| | | | | | | | | | | | | 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.
* Implement purge_media_cache admin APIErik Johnston2016-06-291-0/+5
|
* Split out the auth handlerDavid Baker2016-06-021-0/+5
|
* Move the AS handler out of the Handlers object.Mark Haines2016-05-311-0/+15
| | | | | | Access it directly from the homeserver itself. It already wasn't inheriting from BaseHandler storing it on the Handlers object was already somewhat dubious.
* Split out the room list handlerDavid Baker2016-05-311-0/+5
| | | | So I can use it from federation bits without pulling in all the handlers.
* Move typing handler out of the Handlers objectMark Haines2016-05-171-0/+5
|
* Move SyncHandler out of the Handlers objectMark Haines2016-05-161-0/+5
|
* Move the presence handler out of the Handlers objectMark Haines2016-05-161-0/+5
|
* Optionally split out the pushers into a separate processMark Haines2016-04-211-0/+3
|
* Fix flake8 warnings for new flake8Daniel Wagner-Hall2016-02-021-1/+1
|
* Clean up a bit. Add commentErik Johnston2016-01-281-2/+2
|
* PEP 8Erik Johnston2016-01-271-1/+0
|
* Add a Homeserver.setup method.Erik Johnston2016-01-261-15/+17
| | | | | | This is for setting up dependencies that require work on startup. This is useful for the DataStore that wants to read a bunch from the database before initiliazing.
* Remove redundated BaseHomeServerErik Johnston2016-01-261-49/+57
|
* Use split rather than endswithErik Johnston2016-01-191-2/+1
|
* Add regex cache. Only caculate push actions for users that have sent read ↵Erik Johnston2016-01-191-0/+4
| | | | receipts, and are on that server
* copyrightsMatthew Hodgson2016-01-071-1/+1
|
* Actually host r0 and unstable prefixesDaniel Wagner-Hall2015-12-081-2/+1
|
* Remove the LockManager class because it wasn't being usedMark Haines2015-11-041-5/+0
|
* Use shorter config key nameDaniel Wagner-Hall2015-09-151-1/+2
|
* Rename context factoryDaniel Wagner-Hall2015-09-151-2/+2
| | | | Mjark is officially no fun.
* Allow configuration to ignore invalid SSL certsDaniel Wagner-Hall2015-09-091-0/+14
| | | | | This will be useful for sytest, and sytest only, hence the aggressive config key name.
* Correctly handle x_forwaded listener optionErik Johnston2015-06-121-10/+2
|
* Manually generate the default config yaml, remove most of the commandline ↵Mark Haines2015-04-301-1/+0
| | | | arguments for synapse anticipating that people will use the yaml instead. Simpify implementing config options by not requiring the classes to hit the super class
* Merge branch 'develop' into key_distributionMark Haines2015-04-291-0/+10
|\ | | | | | | | | Conflicts: synapse/config/homeserver.py
| * Merge branch 'develop' into csauthDavid Baker2015-04-171-1/+0
| |\
| * | 1) Pushers are now associated with an access tokenDavid Baker2015-03-241-0/+10
| | | | | | | | | | | | 2) Change places where we mean unauthenticated to 401, not 403, in C/S v2: hack so it stays as 403 in v1 because web client relies on it.
* | | Add a version 2 of the key server apiMark Haines2015-04-141-0/+1
| |/ |/|
* | Remove appservice REST servletsKegan Dougal2015-03-311-1/+0
|/
* Build MetricsResource as a specific HomeServer dependencyPaul "LeoNerd" Evans2015-03-121-0/+1
|
* Expose 'config' as a real HomeServer dependency keyPaul "LeoNerd" Evans2015-03-121-0/+1
|
* Actually treat this as static content, not random Resources.Kegan Dougal2015-02-231-0/+1
|
* Merge branch 'develop' into application-servicesKegan Dougal2015-02-021-0/+10
|\ | | | | | | | | | | Conflicts: synapse/handlers/__init__.py synapse/storage/__init__.py
| * Merge changes from developMark Haines2015-01-291-0/+5
| |\
| | * Merge branch 'develop' into pushersDavid Baker2015-01-281-39/+1
| | |\ | | | | | | | | | | | | | | | | | | | | Conflicts: synapse/handlers/events.py synapse/server.py
| | * \ Merge branch 'develop' into pushersDavid Baker2015-01-221-1/+1
| | |\ \ | | | | | | | | | | | | | | | | | | | | Conflicts: synapse/rest/__init__.py
| | * \ \ Merge branch 'develop' into pushersDavid Baker2015-01-131-3/+3
| | |\ \ \
| | * \ \ \ Merge branch 'develop' into pushersDavid Baker2014-12-181-15/+17
| | |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: synapse/api/errors.py synapse/server.py synapse/storage/__init__.py
| | * | | | | Start creating a module to do generic notifications (just prints them to ↵David Baker2014-11-191-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | stdout currently!)
| * | | | | | Initial trivial implementation of an actual 'Filtering' object; move storage ↵Paul "LeoNerd" Evans2015-01-271-0/+5
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | of user filters into there
* / | | | | Add stub application services REST API.Kegan Dougal2015-01-271-0/+1
|/ / / / /
* | | | | Remove unused import from server.pyMark Haines2015-01-261-1/+0
| | | | |
* | | | | Pass the current time to serialize event, rather than passing anMark Haines2015-01-261-3/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HS and getting a clock from it and calling time_msec on the clock. Remove the serialize_event method from the HS since it is no longer needed.
* | | | | Add client v2_alpha resource to synapse server resource treeMark Haines2015-01-231-0/+1
| | | | |
* | | | | Remove hs.parse_eventidMark Haines2015-01-231-9/+0
| | | | |
* | | | | Replace hs.parse_roomalias with RoomAlias.from_stringMark Haines2015-01-231-6/+1
| | | | |
* | | | | Replace hs.parse_roomid with RoomID.from_stringMark Haines2015-01-231-6/+1
| | | | |
* | | | | Replace hs.parse_userid with UserID.from_stringMark Haines2015-01-231-6/+0
| | | | |
* | | | | Merge rest servlets into the client json resource objectMark Haines2015-01-231-10/+0
| |_|_|/ |/| | |
* | | | Move rest APIs back under the rest directoryMark Haines2015-01-221-1/+1
| | | |
* | | | Move client v1 api rest servlets into a "client/v1" directoryMark Haines2015-01-221-1/+1
| |_|/ |/| |
* | | Return the raw federation event rather than adding extra keys for federation ↵Kegan Dougal2015-01-081-2/+2
| | | | | | | | | | | | data.
* | | Add 'raw' query parameter to expose the event graph and signatures to savvy ↵Kegan Dougal2015-01-081-2/+2
| | | | | | | | | | | | clients.
* | | Update copyright noticesMark Haines2015-01-061-1/+1
| |/ |/|
* | Kill off synapse.api.events.*Erik Johnston2014-12-161-10/+0
| |
* | Merge branch 'develop' of github.com:matrix-org/synapse into events_refactorErik Johnston2014-12-111-0/+1
|\ \ | | | | | | | | | | | | Conflicts: setup.py
| * | Get uploads working with new media repoMark Haines2014-12-021-0/+1
| |/
* | Start making more things use EventContext rather than event.*Erik Johnston2014-12-051-1/+1
| |
* | Convert rest and handlers to use new event structureErik Johnston2014-12-041-0/+8
| |
* | Change DomainSpecificString so that it doesn't use a HomeServer objectErik Johnston2014-12-021-4/+7
|/
* Add an EventValidator. Fix bugs in auth ++ storageErik Johnston2014-11-101-0/+5
|
* Convert event ids to be of the form :example.comErik Johnston2014-10-301-1/+6
|
* Merge branch 'develop' into server2server_signingMark Haines2014-09-301-0/+12
|\ | | | | | | | | | | Conflicts: synapse/storage/__init__.py tests/rest/test_presence.py
| * Track the IP users connect with. Add an admin column to users table.Erik Johnston2014-09-261-0/+12
| |
* | SYN-75 Verify signatures on server to server transactionsMark Haines2014-09-301-0/+5
| |
* | Add a _matrix/key/v1 resource with the verification keys of the local serverMark Haines2014-09-231-0/+1
|/
* Merge remote-tracking branch 'origin/develop' into test-sqlite-memoryPaul "LeoNerd" Evans2014-09-151-0/+4
|\
| * Correctly handle the 'age' key in events and pdusErik Johnston2014-09-151-0/+4
| |
* | Move database preparing code out of homserver.py into storage where it belongsPaul "LeoNerd" Evans2014-09-101-0/+1
|/
* fix the copyright holder from matrix.org to OpenMarket Ltd, as matrix.org ↵Matthew Hodgson2014-09-031-1/+1
| | | | hasn't been incorporated in time for launch.
* Add ratelimiting function to basehandlerMark Haines2014-09-021-0/+5
|
* Fix pyflakes warningsMark Haines2014-08-281-5/+0
|
* Merge branch 'develop' into storage_transactionsMark Haines2014-08-271-1/+6
|\ | | | | | | | | | | Conflicts: synapse/handlers/room.py synapse/storage/stream.py
| * Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactorErik Johnston2014-08-271-1/+14
| |\ | | | | | | | | | | | | | | | | | | Conflicts: synapse/handlers/events.py synapse/rest/events.py synapse/rest/room.py
| * | WIP: Completely change how event streaming and pagination work. This ↵Erik Johnston2014-08-261-1/+6
| | | | | | | | | | | | reflects the change in the underlying storage model.
* | | Merge branch 'develop' into storage_transactionsMark Haines2014-08-271-0/+5
|\ \ \ | | |/ | |/|
| * | Added parse_roomid() helperPaul "LeoNerd" Evans2014-08-271-0/+5
| | |
* | | Merge branch 'develop' into storage_transactionsMark Haines2014-08-271-1/+9
|\| |
| * | Modified /join/$identifier to support $identifier being a room ID in ↵Kegan Dougal2014-08-271-1/+9
| |/ | | | | | | addition to a room alias.
* / Fold federation/handler into handlers/federationMark Haines2014-08-261-5/+0
|/
* Add ts field to all events.Erik Johnston2014-08-211-1/+1
|
* Added /matrix/content path, HS resource_for_content_repo attribute and ↵Kegan Dougal2014-08-181-0/+2
| | | | FileUploadResource. Added stub methods.
* Removed http_server from HomeServer. Updated unit tests to use either ↵Kegan Dougal2014-08-141-2/+3
| | | | resource_for_federation or resource_for_client depending on what is being tested.
* Start phasing out HttpServer: we should be using Resources instead. Added ↵Kegan Dougal2014-08-141-4/+4
| | | | resource_for_client/federation/web_client to the HomeServer and hooked the C-S servlets to operate on resource_for_client. Dynamically construct the Resource tree.
* Add a HomeServer.parse_roomalias() to avoid having to ↵Paul "LeoNerd" Evans2014-08-131-1/+6
| | | | RoomAlias.from_sring(..., hs=hs) - similar to parse_userid()
* Don't pass host_web_client flag to register_servlets, it needs to be a ↵Kegan Dougal2014-08-131-3/+1
| | | | Resource not a RestServlet.
* Added a -w flag which will host the web client if specified. Currently this ↵Kegan Dougal2014-08-131-4/+10
| | | | just delegates to the webclient RestServlet.
* add in whitespace after copyright statements to improve legibilityMatthew Hodgson2014-08-131-0/+1
|
* Reference Matrix Home Servermatrix.org2014-08-121-0/+176