Paul "LeoNerd" Evans
|
6797c7f1b1
|
TypingNotificationEventSource has to return proper tokens, not int 0
|
2014-08-29 19:00:55 +01:00 |
Paul "LeoNerd" Evans
|
4bfdec1eb2
|
Rename 'events_key' to 'room_key' so it matches the name of the event source
|
2014-08-29 19:00:55 +01:00 |
David Baker
|
7b79c0f08f
|
v0.1.2
|
2014-08-29 18:13:34 +01:00 |
Paul "LeoNerd" Evans
|
6dd50da54e
|
Define a new event stream data source for typing notifications (currently null)
|
2014-08-29 17:39:33 +01:00 |
Paul "LeoNerd" Evans
|
f85a3757cf
|
Avoid hardcoding names of individual stream token keys in its own implementation; this at least reduces the number of places in source code the individual parts are stored
|
2014-08-29 17:31:39 +01:00 |
Paul "LeoNerd" Evans
|
d4145abd33
|
Use str.join() properly
|
2014-08-29 17:17:11 +01:00 |
Paul "LeoNerd" Evans
|
20d0db6cfb
|
Move the *EventSource classes into the handlers they relate to, so it's easier to find the code
|
2014-08-29 17:10:28 +01:00 |
Erik Johnston
|
52203edbce
|
Version bump for bug fix.
|
2014-08-29 16:15:20 +01:00 |
Erik Johnston
|
f07f538ac7
|
When notifying listeners, don't do so in a serial fashion
|
2014-08-29 16:01:01 +01:00 |
Erik Johnston
|
463b95f0c2
|
Bump version and change log
|
2014-08-29 15:36:53 +01:00 |
Erik Johnston
|
1118f02689
|
Start adding storage for new events.
|
2014-08-29 15:18:30 +01:00 |
Erik Johnston
|
8e2d4c6da5
|
Merge branch 'develop' of github.com:matrix-org/synapse into room_config
|
2014-08-29 14:22:04 +01:00 |
Erik Johnston
|
ee06023573
|
Get the equalities right.
|
2014-08-29 13:28:06 +01:00 |
Erik Johnston
|
47fb286184
|
Merge branch 'presence_logging' into develop
|
2014-08-29 12:10:00 +01:00 |
Erik Johnston
|
5dd38d579b
|
Fix a couple of bugs in presence handler related to pushing updatesto the correct user. Fix presence tests.
|
2014-08-29 12:08:33 +01:00 |
Erik Johnston
|
8113eb7c79
|
Turn of trace_function logging
|
2014-08-28 18:45:00 +01:00 |
Erik Johnston
|
aaf4fd98ee
|
Only poll remote users if they are in our presence list, rather than in a common room
|
2014-08-28 18:43:03 +01:00 |
Mark Haines
|
722c19d033
|
Fix FederationHandler to event.origin
|
2014-08-28 18:32:44 +01:00 |
Mark Haines
|
d7ae9b90a0
|
Add store for server certificates and keys
|
2014-08-28 18:19:47 +01:00 |
Erik Johnston
|
1b7686329e
|
Don't query the rooms members table so much by using the new notifier api that allows you to specify room_ids to notify.
|
2014-08-28 17:43:15 +01:00 |
Paul "LeoNerd" Evans
|
2c7c12bc6e
|
Initial room event stream token must be s0, not s1, or everyone will miss the very first room event
|
2014-08-28 17:39:34 +01:00 |
Erik Johnston
|
54d0a75573
|
Merge branch 'develop' of github.com:matrix-org/synapse into presence_logging
Conflicts:
synapse/handlers/presence.py
|
2014-08-28 16:52:46 +01:00 |
Erik Johnston
|
a8d318cf82
|
Up timeout to 10 minutes
|
2014-08-28 16:44:09 +01:00 |
Paul "LeoNerd" Evans
|
efc5f3440d
|
Only send presence "poll"/"unpoll" EDUs when changing from/to zero remotes
|
2014-08-28 16:43:55 +01:00 |
Paul "LeoNerd" Evans
|
b1da3fa0a7
|
Avoid AlreadyCalledError from EDU sending failures
|
2014-08-28 16:19:16 +01:00 |
Paul "LeoNerd" Evans
|
c46c806126
|
Re-enable presence, un-skip presence tests
|
2014-08-28 16:00:14 +01:00 |
Erik Johnston
|
eb3094ed31
|
And more logging.
|
2014-08-28 15:58:38 +01:00 |
Mark Haines
|
7b079a26a5
|
Remove get_state_for_room function from federation handler
|
2014-08-28 15:32:38 +01:00 |
Mark Haines
|
bddc1d9fff
|
use @wraps to set the __name__ __module__ and __doc__ correctly for logged functions
|
2014-08-28 15:32:38 +01:00 |
Erik Johnston
|
e0ba81344c
|
Add more logging. Up the event stream timer to 10s
|
2014-08-28 15:30:42 +01:00 |
Erik Johnston
|
b8b52ca09d
|
Add logging to try and figure out what is going on with the presence stuff
|
2014-08-28 14:58:51 +01:00 |
Kegan Dougal
|
8d7d251c35
|
Support multiple login flows when deciding how to login. Updated cmdclient and spec. Webclient doesn't need updating for this.
|
2014-08-28 14:56:55 +01:00 |
Mark Haines
|
7acede1e42
|
Fix pyflakes warnings
|
2014-08-28 13:51:50 +01:00 |
Mark Haines
|
15ab5f5ad8
|
Merge backfill_ and backfill in federation handler
|
2014-08-28 13:45:35 +01:00 |
Erik Johnston
|
b485d622cc
|
Fix bug where we used UserID objects instead of strigns
|
2014-08-28 13:40:27 +01:00 |
Erik Johnston
|
d2bc5d6f29
|
Create the correct events with the right configuration when creating a new room.
|
2014-08-28 10:59:15 +01:00 |
Erik Johnston
|
f3f32addca
|
Fix typo in NullSource.get_pagination_rows. Remove unused import.
|
2014-08-28 10:57:53 +01:00 |
Paul "LeoNerd" Evans
|
407c86c013
|
Define a NullSource useful for unit-testing
|
2014-08-27 18:30:09 +01:00 |
Erik Johnston
|
c2b4b73751
|
Split out MessageHandler
|
2014-08-27 17:59:36 +01:00 |
Mark Haines
|
357dd1871d
|
Merge branch 'develop' into storage_transactions
Conflicts:
tests/handlers/test_federation.py
tests/handlers/test_room.py
|
2014-08-27 17:28:55 +01:00 |
Erik Johnston
|
410a74b0f3
|
If timeout=0, return immediately
|
2014-08-27 17:21:48 +01:00 |
Mark Haines
|
2aeaa7b77c
|
Merge branch 'develop' into storage_transactions
Conflicts:
synapse/handlers/room.py
synapse/storage/stream.py
|
2014-08-27 17:15:58 +01:00 |
Erik Johnston
|
7c89d5e97a
|
Merge branch 'develop' of github.com:matrix-org/synapse into develop
|
2014-08-27 17:05:48 +01:00 |
Erik Johnston
|
226025e9ca
|
Comments!
|
2014-08-27 17:04:47 +01:00 |
Mark Haines
|
f54b70520a
|
Return the store_id from persist_event
|
2014-08-27 17:03:45 +01:00 |
Mark Haines
|
1d95e78759
|
Merge branch 'develop' into storage_transactions
|
2014-08-27 16:54:12 +01:00 |
Mark Haines
|
b30358f439
|
add _get_room_member, fix datastore methods
|
2014-08-27 16:51:54 +01:00 |
Kegan Dougal
|
f64887e15c
|
Added RestServlet for /rooms/$roomid/initialSync
|
2014-08-27 16:49:01 +01:00 |
Erik Johnston
|
52cb5e6324
|
Remove stale FIXMEs
|
2014-08-27 16:44:29 +01:00 |
Kegan Dougal
|
4e8d19ee2b
|
Added RestServlet for /rooms/$roomid/state
|
2014-08-27 16:42:33 +01:00 |
Erik Johnston
|
8af5e360d6
|
Remove store_id from notifier.on_new_room_event calls.
|
2014-08-27 16:23:33 +01:00 |
Erik Johnston
|
7917ff1271
|
Turn off presence again.
|
2014-08-27 16:09:48 +01:00 |
Erik Johnston
|
08881d808d
|
Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor
|
2014-08-27 15:34:01 +01:00 |
Erik Johnston
|
bfe9faad5a
|
Index sources in a nicer fashion.
|
2014-08-27 15:33:52 +01:00 |
Erik Johnston
|
05672a6a8c
|
Convert get_paginat_rows to use PaginationConfig. This allows people to supply directions.
|
2014-08-27 15:25:27 +01:00 |
Mark Haines
|
a0d1f5a014
|
Start updating state handling to use snapshots
|
2014-08-27 15:11:51 +01:00 |
Kegan Dougal
|
c585c87c4b
|
Renamed /ds to /directory
|
2014-08-27 14:54:29 +01:00 |
Kegan Dougal
|
1d9d287c7c
|
Renamed /public/rooms to /publicRooms
|
2014-08-27 14:52:07 +01:00 |
Mark Haines
|
46a2f6a816
|
Remove call to get_federation from homeserver
|
2014-08-27 14:36:20 +01:00 |
Mark Haines
|
a03c7f27a8
|
Fill out prev_events before calling persist_event
|
2014-08-27 14:32:19 +01:00 |
Erik Johnston
|
77a255c7c3
|
PEP8 tweaks.
|
2014-08-27 14:19:39 +01:00 |
Erik Johnston
|
47519cd8c2
|
Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor
Conflicts:
synapse/handlers/events.py
synapse/rest/events.py
synapse/rest/room.py
|
2014-08-27 14:13:06 +01:00 |
Erik Johnston
|
bd16b93e8f
|
Implement presence event source. Change the way the notifier indexes listeners
|
2014-08-27 14:03:27 +01:00 |
Paul "LeoNerd" Evans
|
05fa81fee4
|
A reliable logger.info() message /after/ the TCP port has been opened and is listening; this is essential for avoiding races in wrapper scripts e.g. integration testing
|
2014-08-27 13:08:55 +01:00 |
Paul "LeoNerd" Evans
|
5eff05a4ce
|
Initial typing notification support - EDU federation, but no timers, and no actual push to clients
|
2014-08-27 11:45:16 +01:00 |
Paul "LeoNerd" Evans
|
d63f775e06
|
Added parse_roomid() helper
|
2014-08-27 11:45:16 +01:00 |
Paul "LeoNerd" Evans
|
e677a3114e
|
Use SQLite's PRAGMA user_version to check if the database file really matches the schema we have in mind
|
2014-08-27 11:45:16 +01:00 |
Paul "LeoNerd" Evans
|
648796ef1d
|
Neater database setup at application startup time; only .connect() it once, not once per schema file; don't build the db_pool twice
|
2014-08-27 11:45:16 +01:00 |
Kegan Dougal
|
135a1aa229
|
Final url modifications: renamed /presence_list to /presence/list to keep the top-level namespace clean. Updated tests.
|
2014-08-27 11:37:53 +01:00 |
Mark Haines
|
474dcecb11
|
Remove unused populate_previous_pdus
|
2014-08-27 11:34:31 +01:00 |
Kegan Dougal
|
dd661769e1
|
Renamed /rooms to /createRoom. Removed ability to PUT raw room IDs, and removed tests which tested that. Updated cmdclient and webclient.
|
2014-08-27 11:33:56 +01:00 |
Mark Haines
|
bf05218c4b
|
Merge branch 'develop' into storage_transactions
|
2014-08-27 11:19:37 +01:00 |
Kegan Dougal
|
c65885e166
|
Added support for GET /events/$eventid with auth checks.
|
2014-08-27 10:33:01 +01:00 |
Kegan Dougal
|
dfa0cd1d90
|
Modified /join/$identifier to support $identifier being a room ID in addition to a room alias.
|
2014-08-27 09:43:42 +01:00 |
Mark Haines
|
d2798de660
|
Fold federation/handler into handlers/federation
|
2014-08-26 19:49:42 +01:00 |
Erik Johnston
|
67c5f89244
|
Enable presence again. Fix up api to match old api.
|
2014-08-26 19:40:29 +01:00 |
Erik Johnston
|
c1cf0b334e
|
Fix exceptions so that the event stream works. Presence like events are turned off currently.
|
2014-08-26 19:18:11 +01:00 |
Erik Johnston
|
93cff1668c
|
Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor
|
2014-08-26 18:57:55 +01:00 |
Erik Johnston
|
3a2a5b959c
|
WIP: Completely change how event streaming and pagination work. This reflects the change in the underlying storage model.
|
2014-08-26 18:57:46 +01:00 |
Mark Haines
|
6966971a28
|
Use store.persist_event rather than pdu_actions.persist_outgoing/pdu_actions.persist_received
|
2014-08-26 18:57:17 +01:00 |
Mark Haines
|
a498df0428
|
Move new event boilerplate in room handlers into a method on a base clase.
|
2014-08-26 18:49:51 +01:00 |
Mark Haines
|
64e2a5d58e
|
Move pdu and event persistence into a single persist_event function
|
2014-08-26 18:01:36 +01:00 |
Kegan Dougal
|
f84ddc75cb
|
Pepper UT TODOs
|
2014-08-26 17:54:18 +01:00 |
Kegan Dougal
|
5a3df1d029
|
Feedback: Removed FeedbackRestServlet. Modified keys on FeedbackEvent. Expanded the feedback constants to fully explain what type of feedback they are.
|
2014-08-26 17:49:46 +01:00 |
Kegan Dougal
|
5a93bfe1f0
|
Removed MessageRestServlet, use RoomSendEventRestServlet instead. Updated cmdclient, tests and webclient. All appears to work.
|
2014-08-26 17:21:48 +01:00 |
Kegan Dougal
|
ad6d5ac06c
|
Added RoomSendEventRestServlet to send generic non-state events. It even appears to work..!
|
2014-08-26 17:00:24 +01:00 |
Erik Johnston
|
8885c8546c
|
Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor
|
2014-08-26 16:29:44 +01:00 |
Erik Johnston
|
9a93e83d90
|
Respect 'limit' param in initialSync api
|
2014-08-26 16:26:30 +01:00 |
Mark Haines
|
66a4d33524
|
Merge branch 'develop' into storage_transactions
|
2014-08-26 16:20:50 +01:00 |
Kegan Dougal
|
d0103400b5
|
Merge branch 'client_server_url_rename' into develop
|
2014-08-26 16:19:44 +01:00 |
Kegan Dougal
|
2e70de09b9
|
Renaming: /im/sync >> /initialSync. /rooms/$roomid/members/list >> /rooms/$roomid/members. /rooms$roomid/messages/list >> /room/$roomid/messages. Updated cmdclient, tests and webclient.
|
2014-08-26 16:19:17 +01:00 |
Mark Haines
|
47c1a3d454
|
Merge branch 'develop' into storage_transactions
|
2014-08-26 16:15:49 +01:00 |
Mark Haines
|
3281fec07a
|
Use state_key rather than target_user_id
|
2014-08-26 16:14:54 +01:00 |
Mark Haines
|
a29d12a18a
|
Use state_key rather than target_user_id
|
2014-08-26 16:13:32 +01:00 |
Mark Haines
|
4b63b06cad
|
Merge branch 'develop' into storage_transactions
Conflicts:
synapse/api/auth.py
synapse/handlers/room.py
synapse/storage/__init__.py
|
2014-08-26 16:07:05 +01:00 |
Erik Johnston
|
3df5cb804f
|
Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor
|
2014-08-26 16:03:56 +01:00 |
Mark Haines
|
ac21dfff6d
|
Fix pyflakes errors
|
2014-08-26 16:02:59 +01:00 |
Mark Haines
|
32347bfcc9
|
fix a few pyflakes errors
|
2014-08-26 16:01:29 +01:00 |
Erik Johnston
|
ff3709e577
|
Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor
|
2014-08-26 15:45:03 +01:00 |
Kegan Dougal
|
27979028b2
|
Merge branch 'develop' of github.com:matrix-org/synapse into client_server_url_rename
|
2014-08-26 14:59:54 +01:00 |
Kegan Dougal
|
5c0be8fde3
|
Implemented /rooms/$roomid/[invite|join|leave] with POST / PUT (incl txn ids)
|
2014-08-26 14:49:44 +01:00 |
Mark Haines
|
4b2ad549d5
|
Move the event storage into a single transaction
|
2014-08-26 14:36:03 +01:00 |
Kegan Dougal
|
732d954f89
|
Added basic in-memory REST transaction storage. Only the latest transaction for a given path/access_token combo is stored in order to prevent storing ALL request/response pairs.
|
2014-08-26 14:13:32 +01:00 |
Erik Johnston
|
485bb64ddb
|
Merge branch 'develop' of github.com:matrix-org/synapse into stream_refactor
|
2014-08-26 13:55:37 +01:00 |
Erik Johnston
|
1291ac93f3
|
Add the ability to turn on the twisted manhole telnet service.
|
2014-08-26 13:43:55 +01:00 |
Erik Johnston
|
a664ec20e0
|
Add a do_users_share_a_room method and use that in the presence handler.
|
2014-08-26 13:38:26 +01:00 |
Kegan Dougal
|
7d79021c42
|
Added servlet for /rooms/$roomid/[invite|join|leave]
|
2014-08-26 12:54:43 +01:00 |
Kegan Dougal
|
5796232cb1
|
Adjusted webclient to use new state paths. Updated membership msg template to actually show the person invited. Factored out common membership functions in matrix service.
|
2014-08-26 10:24:47 +01:00 |
Kegan Dougal
|
52b64617f9
|
Merge branch 'develop' of github.com:matrix-org/synapse into client_server_url_rename
|
2014-08-26 10:04:26 +01:00 |
Erik Johnston
|
fea7b60cf3
|
Add 'state_key' to valid_keys
|
2014-08-26 09:40:58 +01:00 |
Erik Johnston
|
b52b33acf6
|
Send down state_key to clients
|
2014-08-26 09:40:29 +01:00 |
Kegan Dougal
|
47c3a089c5
|
Merge branch 'develop' of github.com:matrix-org/synapse into client_server_url_rename
|
2014-08-26 09:26:33 +01:00 |
Kegan Dougal
|
cab3095803
|
Removed member list servlet: now using generic state paths.
|
2014-08-26 09:26:07 +01:00 |
Erik Johnston
|
be6abdff19
|
Order 'get_recent_events_for_room' correctly.
|
2014-08-26 09:22:58 +01:00 |
Erik Johnston
|
2c4908ed26
|
Ensure that we don't have duplicate hosts in the pdu destinations list
|
2014-08-24 14:35:13 +01:00 |
Erik Johnston
|
0c3b4a1f63
|
For the content repo, don't just use homeserver.hostname as that might not include the port due to SRV.
|
2014-08-24 11:56:55 +01:00 |
Erik Johnston
|
9d86c8c7a6
|
Add a unique constraint on the room hosts table
|
2014-08-24 11:29:29 +01:00 |
Erik Johnston
|
a9a5329a11
|
Encode unicode from json as utf-8. This was required to allow people to register on my laptop
|
2014-08-24 11:29:29 +01:00 |
Erik Johnston
|
cda4ff8519
|
Oops, we need to use defer.returnValue.
|
2014-08-22 18:23:02 +01:00 |
Erik Johnston
|
5b058a79cb
|
Make is_presence_visible always return true as it was thrashing the database.
|
2014-08-22 18:21:21 +01:00 |
Erik Johnston
|
b18db63c06
|
Turn off more spammy logging.
|
2014-08-22 18:13:50 +01:00 |
Erik Johnston
|
537ecd4e99
|
Turn off spammy logging
|
2014-08-22 18:12:38 +01:00 |
Erik Johnston
|
9f514915af
|
Add indices to schema
|
2014-08-22 18:03:39 +01:00 |
Mark Haines
|
1379dcae6f
|
Take a snapshot of the state of the room before performing updates
|
2014-08-22 17:00:10 +01:00 |
Kegan Dougal
|
f690b7b827
|
Impl: /rooms/roomid/state/eventtype/state_key - Renamed RoomTopicRestServlet to RoomStateEventRestServlet. Support generic state event sending.
|
2014-08-22 15:59:15 +01:00 |
Erik Johnston
|
808f663ed1
|
Don't return state event outlier's when paginating.
|
2014-08-22 13:06:07 +01:00 |
Erik Johnston
|
c2e983b8db
|
Bump versions to 0.0.1
|
2014-08-22 12:06:50 +01:00 |
Erik Johnston
|
acf5127604
|
Make the content repo work with in daemon mode. Return the full url on upload. Update the webclient to use new content repo api.
|
2014-08-22 10:25:32 +01:00 |
Matthew Hodgson
|
1b0d427285
|
host a webclient by default
|
2014-08-21 23:35:45 +01:00 |
Erik Johnston
|
5670da1c1e
|
Add ts field to all events.
|
2014-08-21 17:46:52 +01:00 |
Erik Johnston
|
e7ee0b9fc1
|
Change IM sync api to also return the current presence list.
|
2014-08-21 16:40:21 +01:00 |
Erik Johnston
|
3d1cae0e79
|
In the initial sync api, return the inviter for rooms in the 'invited' state
|
2014-08-21 15:07:08 +01:00 |
Erik Johnston
|
c6950b18cc
|
Return the current state in the initial sync api.
|
2014-08-21 15:06:22 +01:00 |
Erik Johnston
|
063e1b22e6
|
Stop internal keys from getting into SynapseEvents
|
2014-08-21 15:06:00 +01:00 |
Erik Johnston
|
1587ea26fe
|
Wait for getting a Join in response to an invite/join dance.
|
2014-08-21 14:38:22 +01:00 |
Erik Johnston
|
81a95937de
|
Use new StreamToken in pagination config
|
2014-08-21 11:01:33 +01:00 |
Erik Johnston
|
7bec359408
|
Add in StreamToken type
|
2014-08-21 11:01:33 +01:00 |
Erik Johnston
|
ebd3c41ede
|
Make event stream storage return all membership events about the user, regardless of if they were in the room or not.
|
2014-08-20 17:09:44 +01:00 |
Paul "LeoNerd" Evans
|
583add34fe
|
Use the "collect_presencelike_data" distributor signal instead of re-implementing its behaviour
|
2014-08-20 16:06:47 +01:00 |
Paul "LeoNerd" Evans
|
50718825bd
|
Fix exception name in _fill_out_join_content() exception
|
2014-08-20 16:06:47 +01:00 |
Paul "LeoNerd" Evans
|
e01bdf2432
|
Define __copy__ and __deepcopy__ as identity functions on DomainSpecificString, so that copy.deepcopy() will work on them
|
2014-08-20 16:06:47 +01:00 |
Paul "LeoNerd" Evans
|
9c0e570496
|
Kill the "_homeserver_" injected messages for room membership changes
|
2014-08-20 16:06:47 +01:00 |
Erik Johnston
|
e8244c23ba
|
Give the event_id of the failed event
|
2014-08-20 15:53:07 +01:00 |
Erik Johnston
|
5ef0948eaa
|
Better handle the edge cases of trying to remote join rooms
|
2014-08-20 14:42:47 +01:00 |
Erik Johnston
|
849627b82e
|
Don't generate room membership messages. Include previous state of in membership messages.
|
2014-08-20 11:53:57 +01:00 |
Erik Johnston
|
d4fb1c8a92
|
Only hit get_room_events_stream if we have a valid user_id
|
2014-08-19 17:18:19 +01:00 |
Erik Johnston
|
ae493c9418
|
Fix token to correct format
|
2014-08-19 16:45:55 +01:00 |
Erik Johnston
|
e2b861cc67
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
|
2014-08-19 16:41:13 +01:00 |
Erik Johnston
|
eea2dc7dde
|
Remove debug logging from token parsing funcs.
|
2014-08-19 16:40:38 +01:00 |
Erik Johnston
|
d94765999d
|
Add comment about what strorage.stream does
|
2014-08-19 16:40:25 +01:00 |
Erik Johnston
|
7c60905ee7
|
Default from param to 'END'
|
2014-08-19 15:52:10 +01:00 |
Erik Johnston
|
5c00614aab
|
PresenceStreamData was expecting *_key to be ints
|
2014-08-19 15:51:10 +01:00 |
Paul "LeoNerd" Evans
|
89cabba3e0
|
Don't delete OFFLINE users from the presence cache, so we can report on their offline mtime
|
2014-08-19 14:51:15 +01:00 |
Erik Johnston
|
347242a5c4
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
Conflicts:
tests/rest/test_presence.py
tests/rest/test_rooms.py
tests/utils.py
|
2014-08-19 14:48:19 +01:00 |
Erik Johnston
|
840771190f
|
Fix bug where we sometimes set min_token to None.
|
2014-08-19 14:32:47 +01:00 |
Erik Johnston
|
234128586b
|
Print out stacktrace when we failed to persist event.
|
2014-08-19 14:30:28 +01:00 |
Paul "LeoNerd" Evans
|
992782b9f5
|
Ensure that federation's .send_edu() returns a Deferred
|
2014-08-19 14:26:06 +01:00 |
Erik Johnston
|
75b6d982a0
|
Add a 'backfill room' button
|
2014-08-19 14:20:03 +01:00 |
Erik Johnston
|
598a1d8ff9
|
Change the way pagination works to support out of order events.
|
2014-08-19 14:19:48 +01:00 |
Kegan Dougal
|
caef65d819
|
More unquotes. Also, don't return the room_id on membership state changes, they already know it.
|
2014-08-19 12:30:28 +01:00 |
Kegan Dougal
|
ece7a6d995
|
Unquote sender IDs.
|
2014-08-19 11:50:57 +01:00 |
Paul "LeoNerd" Evans
|
88f7482b92
|
Perform the 'REST'-level tests of Presence against the real Presence handler as well, mocking out the datastore beneath it
|
2014-08-19 11:16:23 +01:00 |
Paul "LeoNerd" Evans
|
83f031207e
|
Implement and test presence dropping of remote users
|
2014-08-19 11:16:23 +01:00 |
Paul "LeoNerd" Evans
|
6fafa878f6
|
Deny __iter__ on UserID/RoomID/RoomName instances as it's a subtle bug that will bite you
|
2014-08-19 11:16:23 +01:00 |
Kegan Dougal
|
f48792eec4
|
Reduce the amount of incredibly spammy stack traces. Expected errors (e.g. SynapseErrors) shouldn't have their full trace logged every time. Don't send responses to disconnected requests.
|
2014-08-19 10:56:43 +01:00 |
Kegan Dougal
|
e37b040bc3
|
Small amounts of cleanup and bonus round comments.
|
2014-08-18 17:22:31 +01:00 |
Kegan Dougal
|
58548ab557
|
Implemented GETs for the ContentRepoResource. It all actually appears to be working.
|
2014-08-18 17:18:54 +01:00 |
Kegan Dougal
|
590ab24c85
|
hs: Make the uploads directory if it doesn't exist. Namespace uploads by the base64 encoded user id of the uploader. Make a reasonable attempt to retry clashing upload paths. Try to guess a sensible file extension depending on the content type.
|
2014-08-18 17:18:54 +01:00 |
Kegan Dougal
|
35da1bf4a3
|
Auth content uploads. Added a mapping function from request > filename. Added exception handling for content uploads. webclient: Only prefix the client API path on doRequest, not doBaseRequest (this would've broken the identity server auth too). Added matrixService.uploadContent. May not require mFileUpload anymore.
|
2014-08-18 17:18:54 +01:00 |
Kegan Dougal
|
a18b1a649c
|
Added /matrix/content path, HS resource_for_content_repo attribute and FileUploadResource. Added stub methods.
|
2014-08-18 17:18:54 +01:00 |
Erik Johnston
|
1422a22970
|
Fix typos in SQL and where we still had rowid's (which no longer exist)
|
2014-08-18 16:25:18 +01:00 |
Erik Johnston
|
4eb8f84aa8
|
Make snapshot_all_rooms return results in the correct form, including start and end tokens.
|
2014-08-18 16:20:21 +01:00 |
Erik Johnston
|
709a92cee8
|
SQL doesn't allow AUTOINCREMENT on non PRIMARY KEY columns.
|
2014-08-18 16:00:46 +01:00 |
Erik Johnston
|
b4a1f2ccb5
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
|
2014-08-18 15:53:40 +01:00 |
Erik Johnston
|
fc26275bb3
|
Add two different columns for ordering the events table, one which can be used for pagination and one which can be as tokens for notifying clients. Also add a 'processed' field which is currently always set to True
|
2014-08-18 15:50:41 +01:00 |
Kegan Dougal
|
b37ced8f63
|
Update the default longpoll timeout time.
|
2014-08-18 14:30:07 +01:00 |
Paul "LeoNerd" Evans
|
faf25e3a83
|
Allow room presence visibility between users who share a room
|
2014-08-18 13:41:43 +01:00 |
Paul "LeoNerd" Evans
|
7d324612ec
|
Precent lack of presence visiblity from causing room /members/list to fail
|
2014-08-18 13:17:35 +01:00 |
Erik Johnston
|
1c2caacd67
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
|
2014-08-18 11:14:57 +01:00 |
Erik Johnston
|
291010f100
|
Not all event streams returns SynapseEvents
|
2014-08-18 11:06:59 +01:00 |
Erik Johnston
|
2f91d16033
|
We don't need to do a json.loads here
|
2014-08-18 11:00:22 +01:00 |
Erik Johnston
|
1a1e0384ef
|
Ensure we have a 'membership' key in RoomMemberEvents
|
2014-08-18 10:59:57 +01:00 |
Erik Johnston
|
dccb2f57be
|
Disable the ability to GET individualy messages. We need to think about the correct API to do this, as the current one doesn't make much sense.
|
2014-08-18 10:59:04 +01:00 |
Matthew Hodgson
|
98ed3d0222
|
improve comment
|
2014-08-16 01:52:03 +01:00 |
Matthew Hodgson
|
fc846aa771
|
emergency bodges to turn off presence ACLs in order to make
matrix.org:8080 actually work
|
2014-08-16 01:47:17 +01:00 |
Matthew Hodgson
|
0f9b633af7
|
retcols is mandatory. i have no idea how this could ever have worked?
|
2014-08-16 01:46:35 +01:00 |
Erik Johnston
|
7f5c7ddea9
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
|
2014-08-15 17:50:27 +01:00 |
Paul "LeoNerd" Evans
|
9c41f635a9
|
When starting to poll for presence, also include members of all shared rooms
|
2014-08-15 17:12:07 +01:00 |
Erik Johnston
|
40c020ad13
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
|
2014-08-15 16:48:16 +01:00 |
Paul "LeoNerd" Evans
|
ec1fd20e59
|
Also include users' presence when responding to /rooms/:room_id/members/list
|
2014-08-15 16:47:50 +01:00 |
Erik Johnston
|
0e938b1ff7
|
Rename method name to not clash with other ones in storage.
|
2014-08-15 16:47:48 +01:00 |
Erik Johnston
|
6efc688917
|
Fix typo of key name
|
2014-08-15 16:47:26 +01:00 |
Erik Johnston
|
506711749f
|
We no longer need to special case room config events.
|
2014-08-15 16:45:16 +01:00 |
Erik Johnston
|
d260a42ca2
|
PEP8 cleanups
|
2014-08-15 16:17:36 +01:00 |
Erik Johnston
|
8fa3cc37f9
|
Comment.
|
2014-08-15 16:11:25 +01:00 |
Erik Johnston
|
19946509a4
|
Support generic events.
|
2014-08-15 16:06:08 +01:00 |
Erik Johnston
|
cd2967d271
|
Fix bug when generating a key when get_room_events_stream returned zero rows
|
2014-08-15 16:05:46 +01:00 |
Erik Johnston
|
86be66c34e
|
Actually use MAX_STREAM_SIZE constant.
|
2014-08-15 16:04:54 +01:00 |
Erik Johnston
|
8d1f763209
|
Fix pagination to work with new db schema
|
2014-08-15 15:53:06 +01:00 |
Paul "LeoNerd" Evans
|
3c532314ec
|
Fix imsync's SELECT query to only find the rooms I'm actually joined in, not every room I have ever joined
|
2014-08-15 15:44:53 +01:00 |
Erik Johnston
|
01f089d9fb
|
Correctly return new token when returning events. Serialize events correctly.
|
2014-08-15 15:28:54 +01:00 |
Erik Johnston
|
114984a236
|
Start chagning the events stream to work with the new DB schema
|
2014-08-15 13:58:28 +01:00 |
Erik Johnston
|
d72f897f07
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
Conflicts:
synapse/storage/stream.py
|
2014-08-15 11:50:14 +01:00 |
Erik Johnston
|
c5f2da5875
|
Add a check to make sure that during state conflict res we only request a PDU we don't have.
|
2014-08-15 11:47:01 +01:00 |
Erik Johnston
|
1a26905cc9
|
Fix pontenial bug in state resolution handler that compared dicts rather than their id's
|
2014-08-15 11:41:20 +01:00 |
Paul "LeoNerd" Evans
|
33d62c2c66
|
Remember to reflect membership LEAVE events to the leaving member so they know it happened
|
2014-08-15 11:40:58 +01:00 |
Erik Johnston
|
5002efa31b
|
Reimplement the get public rooms api to work with new DB schema
|
2014-08-15 10:26:35 +01:00 |
Erik Johnston
|
2c46bb6208
|
Fix up typos and correct sql queries
|
2014-08-14 18:40:50 +01:00 |
Erik Johnston
|
7e681ad778
|
Update StreamStore
|
2014-08-14 18:01:39 +01:00 |
Erik Johnston
|
661c711765
|
Start fixing places that use the data store.
|
2014-08-14 17:34:37 +01:00 |
Erik Johnston
|
78b501eba6
|
Fix typo
|
2014-08-14 17:09:28 +01:00 |
Erik Johnston
|
2529f2bc01
|
Rename _execute_query
|
2014-08-14 16:58:51 +01:00 |
Kegan Dougal
|
fef3183461
|
Pass back the user_id in the response to /login in case it has changed. Store and use that on the webclient rather than the input field.
|
2014-08-14 16:40:15 +01:00 |
Kegan Dougal
|
ca3747fb2f
|
hs: Make /login accept full user IDs or just local parts. webclient: Only enable Register button when both password fields match.
|
2014-08-14 16:29:51 +01:00 |
Paul "LeoNerd" Evans
|
53147e5ae4
|
Reflect user's messages up to themselves before pushing it to federatoin; also release roomlock before touching federation so we don't halt progress on the world
|
2014-08-14 16:22:08 +01:00 |
Paul "LeoNerd" Evans
|
93a8be7bef
|
We really don't need debug logging of all the SQL statements we execute; we're quite happy these all work now
|
2014-08-14 16:15:57 +01:00 |
Paul "LeoNerd" Evans
|
657ab9ba9d
|
Put some DEBUG logging in lockutils.py so we can debug roomlocks
|
2014-08-14 16:06:05 +01:00 |
Kegan Dougal
|
fb93e14e53
|
Be more helpful when failing to register/login, stating why (communication error, user in user, wrong credentials, etc). Make the HS send M_USER_IN_USE.
|
2014-08-14 16:03:04 +01:00 |
Erik Johnston
|
937c175029
|
Fix up RoomMemberStore to work with the new schema.
|
2014-08-14 16:02:10 +01:00 |
Erik Johnston
|
6d6a1c3454
|
Actually encode dicts as json in the DB
|
2014-08-14 14:30:25 +01:00 |
Kegan Dougal
|
5a5f37ca17
|
Send forbidden codes when doing login attempts.
|
2014-08-14 14:29:06 +01:00 |
Paul "LeoNerd" Evans
|
0fa05ea331
|
Round Presence mtime and mtime_age to nearest msec; avoids floats for msec values over the wire
|
2014-08-14 14:16:01 +01:00 |
Erik Johnston
|
cbd5d55222
|
Change relative db paths to absolute paths in case we daemonize.
|
2014-08-14 14:08:57 +01:00 |
Erik Johnston
|
e4061383b8
|
Change relative db paths to absolute paths in case we daemonize.
|
2014-08-14 14:07:22 +01:00 |
Paul "LeoNerd" Evans
|
e37de2aef3
|
chmod +x homeserver.py
|
2014-08-14 14:05:05 +01:00 |
Kegan Dougal
|
61933f8e52
|
Added M_UNKNOWN_TOKEN error code and send it when there is an unrecognised access_token
|
2014-08-14 13:47:39 +01:00 |
Kegan Dougal
|
2a793a6c42
|
Default error code BAD_PAGINATION for EventStreamErrors
|
2014-08-14 11:57:25 +01:00 |
Kegan Dougal
|
d253a35539
|
Added web client prefix
|
2014-08-14 11:54:37 +01:00 |
Kegan Dougal
|
c75add6ec8
|
Added a urls module for keeping client and federation prefixes.
|
2014-08-14 11:52:56 +01:00 |
Kegan Dougal
|
9fd445eb92
|
If the web client is enabled, automatically redirect root '/' to the web client path.
|
2014-08-14 11:37:13 +01:00 |
Kegan Dougal
|
e543d6a91d
|
Fixed dynamic resource mapping to clobber dummy Resources with the actual desired Resource in the event of a collision (as is the case for '/matrix/client' and '/matrix/client/api/v1')
|
2014-08-14 11:18:18 +01:00 |
Kegan Dougal
|
de65c34fcf
|
Honour the -w flag to enable the web client at /matrix/client
|
2014-08-14 10:24:17 +01:00 |
Kegan Dougal
|
9a1638ed21
|
Removed http_server from HomeServer. Updated unit tests to use either resource_for_federation or resource_for_client depending on what is being tested.
|
2014-08-14 10:18:54 +01:00 |
Kegan Dougal
|
29aa13f0d4
|
Make federation use resource_for_federation as well.
|
2014-08-14 10:05:06 +01:00 |
Erik Johnston
|
10294b6082
|
Merge branch 'master' of github.com:matrix-org/synapse into sql_refactor
Conflicts:
synapse/storage/_base.py
|
2014-08-14 10:01:04 +01:00 |
Kegan Dougal
|
9f863d3466
|
Start phasing out HttpServer: we should be using Resources instead. Added 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.
|
2014-08-14 09:55:16 +01:00 |
Matthew Hodgson
|
a4da962bab
|
fix http client GET parameters; somehow missing named param. how could this have ever worked!?
|
2014-08-14 02:59:54 +01:00 |
Matthew Hodgson
|
aebe5ce08a
|
fix whitespace
|
2014-08-14 02:14:15 +01:00 |
Paul "LeoNerd" Evans
|
d05aa651f8
|
An initial hack at storing presence state-change mtimes in database and presenting age durations to clients/federation events
|
2014-08-13 19:19:15 +01:00 |
Paul "LeoNerd" Evans
|
baf04be5cf
|
Set datastore's .hs field in SQLBaseStore rather than in the toplevel DataStore mixed-in result class
|
2014-08-13 19:19:15 +01:00 |
Matthew Hodgson
|
59dfbaba3b
|
when we're talking about backfilling data in federation, call it backfilling - not pagination.
|
2014-08-13 18:17:09 +01:00 |
Erik Johnston
|
beaf4384d9
|
Make feedback table also store sender.
|
2014-08-13 18:03:41 +01:00 |
Paul "LeoNerd" Evans
|
3a1cfe18cf
|
Implement directory service federation by Federation Queries; avoid local_only hack; add unit tests
|
2014-08-13 18:03:41 +01:00 |
Erik Johnston
|
336987bb8d
|
Initial stab at refactoring the SQL tables, including rejigging some of the storage layer.
|
2014-08-13 18:03:41 +01:00 |
Paul "LeoNerd" Evans
|
7fb93f2a47
|
Add a HomeServer.parse_roomalias() to avoid having to RoomAlias.from_sring(..., hs=hs) - similar to parse_userid()
|
2014-08-13 18:03:41 +01:00 |
Erik Johnston
|
3dfa84bec8
|
Convert im schema to a 'one' table structure
|
2014-08-13 18:03:41 +01:00 |
Paul "LeoNerd" Evans
|
80c056c148
|
Now that HS->HS Profile lookups use Federation Queries, we don't need the 'local_only' antirecursion hack
|
2014-08-13 17:23:49 +01:00 |
Paul "LeoNerd" Evans
|
505917cb97
|
Use new Federation Query API to implement HS->HS fetching of remote users' profile information instead of (ab)using the client-side REST API
|
2014-08-13 17:23:49 +01:00 |
Paul "LeoNerd" Evans
|
827de7cee9
|
Define the concept of a 'federation Query'; creating API for making and handling Queries on the Federation's increasingly-inaccurately-named ReplicationLayer
|
2014-08-13 17:23:49 +01:00 |
Paul "LeoNerd" Evans
|
1ddae5f40b
|
Update get_json()'s documentation to match the actual observed behaviour
|
2014-08-13 17:23:49 +01:00 |
Erik Johnston
|
6df83555cc
|
Handle a potential race in the notifier when calling get_events_for which resulted in an uncaught KeyError
|
2014-08-13 17:13:26 +01:00 |
Kegan Dougal
|
2da1e1526e
|
Don't pass host_web_client flag to register_servlets, it needs to be a Resource not a RestServlet.
|
2014-08-13 15:57:58 +01:00 |
Kegan Dougal
|
38c7e92331
|
Merge branch 'master' of github.com:matrix-org/synapse
|
2014-08-13 15:53:44 +01:00 |
Paul "LeoNerd" Evans
|
b370f9903c
|
Fix logging verbosity parsing code
|
2014-08-13 15:14:22 +01:00 |
Paul "LeoNerd" Evans
|
820ed34abe
|
Namespace all the Federation HTTP URLs to /matrix/federation/v1/...
|
2014-08-13 15:07:55 +01:00 |
Paul "LeoNerd" Evans
|
55944ccf72
|
Use strings instead of opaque magic-number constants for presence states; rename AWAY to UNAVAILABLE
|
2014-08-13 14:31:48 +01:00 |
Kegan Dougal
|
5a59da8a94
|
Merge branch 'master' of github.com:matrix-org/synapse
|
2014-08-13 13:50:05 +01:00 |
Kegan Dougal
|
7f40fa1d46
|
Added a -w flag which will host the web client if specified. Currently this just delegates to the webclient RestServlet.
|
2014-08-13 13:50:01 +01:00 |
Matthew Hodgson
|
2a0f7541c7
|
verbose by default please
|
2014-08-13 12:06:58 +01:00 |
Kegan Dougal
|
9b3702c924
|
Return the room_alias when GETing public rooms.
|
2014-08-13 11:57:49 +01:00 |
Matthew Hodgson
|
f98e6380f1
|
add in whitespace after copyright statements to improve legibility
|
2014-08-13 03:14:34 +01:00 |
Matthew Hodgson
|
514df1f648
|
actually register the login servlet (uncommitted code thinko?)
|
2014-08-13 02:33:04 +01:00 |
Erik Johnston
|
4add1c70e9
|
Just say yes to OPTIONS requests, since we want to turn on CORS headers for all paths
|
2014-08-12 17:17:14 +01:00 |
matrix.org
|
4f475c7697
|
Reference Matrix Home Server
|
2014-08-12 15:10:52 +01:00 |