Erik Johnston
8046df6efa
Merge branch 'develop' of github.com:matrix-org/synapse into federation_client_retries
2015-02-04 17:37:34 +00:00
Kegan Dougal
6d3e4f4d0a
Update user/alias query APIs to use new format of SimpleHttpClient.get_json
2015-02-04 17:32:44 +00:00
Kegan Dougal
96d4bf9012
Modify API for SimpleHttpClient.get_json and update usages.
...
Previously, this would only return the HTTP body as JSON, and discard other
response information (e.g. the HTTP response code). This has now been changed
to throw a CodeMessageException on a non-2xx response, with the response code
and body, which can then be parsed as JSON.
Affected modules include:
- Registration/Login (when using an email for IS auth)
2015-02-04 17:07:31 +00:00
Kegan Dougal
aa8cce58bf
Add query_user/alias APIs.
2015-02-04 16:44:53 +00:00
Erik Johnston
d45e2302ed
Merge branch 'signature_failures' of github.com:matrix-org/synapse into federation_client_retries
2015-02-04 16:30:15 +00:00
Erik Johnston
ae46f10fc5
Apply sanity to the transport client interface. Convert 'make_join' and 'send_join' to accept iterables of destinations
2015-02-04 16:28:12 +00:00
David Baker
2e77ba637a
More s/instance_handle/profile_tag/
2015-02-04 16:24:15 +00:00
Kegan Dougal
ce8bc642ae
Merge branch 'develop' into application-services
2015-02-04 15:31:02 +00:00
Kegan Dougal
89f2e8fbdf
Fix bug in store defer. Add more unit tests.
2015-02-04 15:21:03 +00:00
Erik Johnston
95e2d2d36d
When returning lists of servers from alias lookups, put the current server first in the list
2015-02-04 15:02:23 +00:00
Erik Johnston
650e32d455
Change context.auth_events to what the auth_events would be bases on context.current_state, rather than based on the auth_events from the event.
2015-02-04 14:06:46 +00:00
Erik Johnston
ff78eded01
Retry make_join
2015-02-04 13:55:10 +00:00
Kegan Dougal
525a218b2b
Begin to add unit tests for appservice glue and regex testing.
2015-02-04 12:24:20 +00:00
Kegan Dougal
17753f0c20
Add stub ApplicationServiceApi and glue it with the handler.
2015-02-04 11:19:18 +00:00
Erik Johnston
03d415a6a2
Brief comment on why we do some things on every call to persist_event and not others
2015-02-04 10:40:59 +00:00
Erik Johnston
f275ba49bb
Fix state resolution to remember join_rules is a type of auth event.
2015-02-04 10:36:28 +00:00
Erik Johnston
c0462dbf15
Rearrange persist_event so that do all the queries that need to be done before returning early if we have already persisted that event.
2015-02-04 10:16:51 +00:00
Erik Johnston
02be8da5e1
Add doc to get_event
2015-02-03 17:34:07 +00:00
David Baker
dc7bb70f22
s/instance_handle/profile_tag/
2015-02-03 16:51:07 +00:00
Erik Johnston
3c39f42a05
New line
2015-02-03 16:14:19 +00:00
Erik Johnston
7dd1c5c542
Neaten the handling of state and auth_chain up a bit
2015-02-03 16:12:04 +00:00
David Baker
9a71add1c0
Use set_tweak instead of set_sound
2015-02-03 16:06:31 +00:00
Erik Johnston
9bace3a367
Actually, the old prune_event function was non-deterministic, so no point keeping it around :(
2015-02-03 15:32:17 +00:00
Erik Johnston
8dae5c8108
Remove unused imports
2015-02-03 15:01:12 +00:00
Erik Johnston
7b810e136e
Add new FederationBase
2015-02-03 15:00:42 +00:00
Erik Johnston
0dd3aea319
Keep around the old (buggy) version of the prune_event function so that we can use it to check signatures for events on old servers
2015-02-03 14:58:30 +00:00
Kegan Dougal
94a5db9f4d
Add appservice package and move ApplicationService into it.
2015-02-03 14:44:16 +00:00
Erik Johnston
6efd4d1649
Don't completely die if get auth_chain or querying auth_chain requests fail
2015-02-03 13:57:54 +00:00
Erik Johnston
77a076bd25
Set combinations is | and not +
2015-02-03 13:35:17 +00:00
Kegan Dougal
f2c039bfb9
Implement restricted namespace checks. Begin fleshing out the main hook for notifying application services.
2015-02-03 13:29:27 +00:00
Erik Johnston
fed29251d7
Spelling
2015-02-03 13:23:58 +00:00
Kegan Dougal
a060b47b13
Add namespace constants. Add restrict_to option to limit namespace checks.
2015-02-03 13:17:28 +00:00
Kegan Dougal
3bd2841fdb
Everyone loves SQL typos
2015-02-03 11:37:52 +00:00
Kegan Dougal
197f3ea4ba
Implement regex checks for app services.
...
Expose handler.get_services_for_event which manages the checks for all
services.
2015-02-03 11:26:33 +00:00
Erik Johnston
06c34bfbae
Give exception better message
2015-02-03 11:23:44 +00:00
Erik Johnston
4ff2273b30
Add FIXME note.
2015-02-03 11:23:26 +00:00
Erik Johnston
0f48e22ef6
PEP8
2015-02-03 10:43:29 +00:00
Erik Johnston
51969f9e5f
Return rejected events if asked for it over federation.
2015-02-03 10:40:14 +00:00
Erik Johnston
e7ca813dd4
Try to ensure we don't persist an event we have already persisted. In persist_event check if we already have the event, if so then update instead of replacing so that we don't cause a bump of the stream_ordering.
2015-02-03 10:39:41 +00:00
Mark Haines
09601255f5
Merge pull request #46 from matrix-org/identicons
...
Add a media/v1/identicon resource for generating identicons
2015-02-02 18:56:34 +00:00
Kegan Dougal
9ff349a3cb
Add defers in the right places.
2015-02-02 17:42:49 +00:00
Kegan Dougal
1a2de0c5fe
Implement txns for AS (un)registration.
2015-02-02 17:39:41 +00:00
Mark Haines
a2da04b8ab
Add pydenticon to python_dependencies
2015-02-02 17:37:26 +00:00
Mark Haines
4574b5a9e6
Generate a list of dependencies from synapse/python_dependencies.py
2015-02-02 17:23:51 +00:00
Erik Johnston
40c6fe1b81
Don't bother requesting PDUs with bad signatures from the same server
2015-02-02 17:06:37 +00:00
Mark Haines
1bb0528316
Add Cache-Control header to identicon
2015-02-02 16:57:26 +00:00
Erik Johnston
941f59101b
Don't fail an entire request if one of the returned events fails a signature check. If an event does fail a signature check, look in the local database and request it from the originator.
2015-02-02 16:56:01 +00:00
Mark Haines
f2eda123b7
Fix setting identicon width and height
2015-02-02 16:32:33 +00:00
Mark Haines
038f5afb07
Spell height more correctly
2015-02-02 16:29:18 +00:00
Kegan Dougal
a006d168c5
Actually merge into develop.
2015-02-02 16:05:34 +00:00
Mark Haines
22c1ffb0a0
Add a media/v1/identicon resource for generating identicons using pydenticon
2015-02-02 16:02:31 +00:00
Kegan Dougal
c059c9fea5
Merge branch 'develop' into application-services
...
Conflicts:
synapse/handlers/__init__.py
synapse/storage/__init__.py
2015-02-02 15:57:59 +00:00
Mark Haines
6e856d7729
Merge master into develop
...
Conflicts:
README.rst
setup.py
2015-02-02 14:05:42 +00:00
Mark Haines
d8cf06e525
Bump version to 0.6.1d
2015-02-02 13:18:36 +00:00
Erik Johnston
3b33529dfd
Bump version
2015-02-02 13:03:25 +00:00
David Baker
365e007bee
Ignore empty strings for display names & room names in notifications
2015-01-31 12:48:06 +00:00
David Baker
0b354fcb84
Again, don't assume all member events have displayname.
2015-01-30 23:10:35 +00:00
David Baker
fe10b882b7
Don't assume all member events have a display nme.
2015-01-30 23:06:39 +00:00
Erik Johnston
4c0da49d7c
Resign events when we return them via /query_auth/
2015-01-30 22:53:13 +00:00
Mark Haines
0b1cc7cc0b
Return empty list rather than None when there are no emphemeral events for a room
2015-01-30 16:56:13 +00:00
Erik Johnston
2cd29dbdd9
Fix bug where accepting invite over federation didn't work. Add logging.
2015-01-30 16:51:58 +00:00
Erik Johnston
7d897f5bfc
Merge pull request #43 from matrix-org/rejections
...
Rejections
2015-01-30 16:11:14 +00:00
Erik Johnston
776ac820f9
Briefly doc structure of query_auth API.
2015-01-30 15:58:28 +00:00
Erik Johnston
b724a809c4
Only auth_events with event if event in event.auth_events
2015-01-30 15:57:53 +00:00
Erik Johnston
7a1e881665
Remove debug logging
2015-01-30 15:56:32 +00:00
David Baker
b4b892f4a3
Spit out server default rules too.
2015-01-30 15:54:51 +00:00
Mark Haines
6dc92d3427
Merge pull request #41 from matrix-org/client_v2_sync
...
Client v2 sync
2015-01-30 15:54:25 +00:00
Mark Haines
017dfaef4c
Add doc string for __nonzero__ overrides for sync results, raise not implemented if the client attempts to do a gapless sync
2015-01-30 15:52:05 +00:00
Erik Johnston
1bd540ef79
Merge branch 'develop' of github.com:matrix-org/synapse into rejections
...
Conflicts:
synapse/storage/schema/im.sql
2015-01-30 15:16:38 +00:00
Mark Haines
9ec9d6f2cb
Merge pull request #42 from matrix-org/replication_split
...
Replication split
2015-01-30 15:14:10 +00:00
David Baker
4ffac34a64
Add glob asterisks when running rules.
...
Means that now you can't do exact matches even in override rules,
but I think we can live with that. Advantage is that you'll now
always get back what was put in to the API.
2015-01-30 15:03:56 +00:00
Erik Johnston
91015ad008
Remove merge conflict
2015-01-30 14:58:54 +00:00
Erik Johnston
4f7fe63b6d
Remember to add schema file to list
2015-01-30 14:57:53 +00:00
Erik Johnston
fdd2ac495a
Merge branch 'develop' of github.com:matrix-org/synapse into rejections_storage
...
Conflicts:
synapse/storage/__init__.py
2015-01-30 14:57:33 +00:00
Mark Haines
8bc3066e0b
Merge branch 'client_v2_filter' into client_v2_sync
2015-01-30 14:57:04 +00:00
Erik Johnston
471c47441d
Merge pull request #37 from matrix-org/client_v2_filter
...
Client v2 filter
2015-01-30 14:56:08 +00:00
Mark Haines
e97f756a05
Use 'in' to test if the key exists, remove unused _filters_for_user
2015-01-30 14:54:06 +00:00
Erik Johnston
2f4cb04f45
Be more specific in naming columns in selects.
2015-01-30 14:48:11 +00:00
Erik Johnston
472cf532b7
Put CREATE rejections into seperate .sql
2015-01-30 14:48:03 +00:00
David Baker
322a047502
Add room member count condition and default rule to make a noise on rooms of only 2 people.
2015-01-30 14:46:45 +00:00
Erik Johnston
3d7026e709
Add a slightly more helpful comment
2015-01-30 14:37:31 +00:00
Erik Johnston
c515d37797
Merge branch 'replication_split' of github.com:matrix-org/synapse into rejections
...
Conflicts:
synapse/storage/schema/delta/v12.sql
2015-01-30 14:19:49 +00:00
Erik Johnston
84b78c3b5f
Merge branch 'rejections_storage' of github.com:matrix-org/synapse into replication_split
2015-01-30 14:17:47 +00:00
Erik Johnston
2aaedab203
Merge branch 'develop' of github.com:matrix-org/synapse into new_state_resolution
2015-01-30 14:09:32 +00:00
Erik Johnston
e0b7c521cb
Merge branch 'develop' of github.com:matrix-org/synapse into rejections_storage
...
Conflicts:
synapse/storage/__init__.py
synapse/storage/schema/delta/v12.sql
2015-01-30 14:08:28 +00:00
Erik Johnston
875a481a1e
Merge branch 'new_state_resolution' of github.com:matrix-org/synapse into rejections_storage
2015-01-30 14:04:53 +00:00
Erik Johnston
7a9f6f083e
Remove commented line
2015-01-30 13:55:46 +00:00
Erik Johnston
76d7fd39cd
Style changes.
2015-01-30 13:52:02 +00:00
Mark Haines
8fe39a0311
Check if the user has joined the room between incremental syncs
2015-01-30 13:38:34 +00:00
Erik Johnston
a70a801184
Fix bug where we superfluously asked for current state. Change API of /query_auth/ so that we don't duplicate events in the response.
2015-01-30 13:34:01 +00:00
Mark Haines
4a67834bc8
Pass client info to the sync_config
2015-01-30 11:50:15 +00:00
Mark Haines
c562f237f6
Unused import
2015-01-30 11:43:00 +00:00
Mark Haines
8498d348d8
Fix token formatting
2015-01-30 11:42:09 +00:00
Mark Haines
e97de6d96a
Filter the recent events before applying the limit when doing an initial sync
2015-01-30 11:35:20 +00:00
Mark Haines
22dd1cde2d
Filter the recent events before applying the limit when doing an incremental sync with a gap
2015-01-30 11:32:35 +00:00
Erik Johnston
2c9e136d57
Fix bad merge fo python_dependencies.py
2015-01-30 11:14:33 +00:00
David Baker
bd03947c05
We do need Twisted 14, not 15: we use internal Twisted things that have been removed in 15.
2015-01-30 11:13:42 +00:00
Erik Johnston
2ebf795c0a
Merge branch 'develop' of github.com:matrix-org/synapse into rejections
...
Conflicts:
synapse/storage/__init__.py
synapse/storage/schema/delta/v12.sql
2015-01-30 11:10:37 +00:00
Erik Johnston
0c2d245fdf
Update the current state of an event if we update auth events.
2015-01-30 11:08:52 +00:00
Erik Johnston
823999716e
Fix bug in timeout handling in keyclient
2015-01-30 11:08:01 +00:00
Erik Johnston
c1d860870b
Fix regression where we no longer correctly handled the case of gaps in our event graph
2015-01-30 10:48:47 +00:00
Erik Johnston
c1c7b39827
Fix bug where we changes in outlier in metadata dict propogated to other events
2015-01-30 10:30:54 +00:00
David Baker
fc946f3b8d
Include content in notification pokes
2015-01-29 21:59:17 +00:00
David Baker
0b16886397
Change 'from' in notification pokes to 'sender' to match client API v2. Send sender display names where they exist.
2015-01-29 18:51:22 +00:00
David Baker
1235f7f383
Add default push rules including setting a sound for messages mentioning your username / display name
2015-01-29 18:38:22 +00:00
Mark Haines
ece828a7b7
Update todo for the filtering on sync
2015-01-29 18:15:24 +00:00
Mark Haines
365a186729
Add basic filtering support
2015-01-29 18:11:28 +00:00
Mark Haines
7ceda8bf3d
Merge branch 'client_v2_filter' into client_v2_sync
2015-01-29 18:04:07 +00:00
Mark Haines
93ed31dda2
Create a separate filter object to do the actual filtering, so that we can
...
split the storage and management of filters from the actual filter code
and don't have to load a filter from the db each time we filter an event
2015-01-29 17:45:07 +00:00
David Baker
4bdfce30d7
Renumber priority classes so we can use 0 for defaults.
2015-01-29 17:12:11 +00:00
David Baker
e0d2c6889b
Allow kind to be set to null to delete a pusher.
2015-01-29 17:05:00 +00:00
Erik Johnston
78015948a7
Initial implementation of auth conflict resolution
2015-01-29 16:52:33 +00:00
Mark Haines
4ad45f2582
Fix indent
2015-01-29 16:41:49 +00:00
Mark Haines
722b65f461
Move typing notifs to an "emphermal" event list on the room object
2015-01-29 16:41:21 +00:00
Mark Haines
cc42d3f907
Fix check for empty room update
2015-01-29 16:27:38 +00:00
Mark Haines
4d9dd9bdc0
Fix v2 initial sync
2015-01-29 16:23:03 +00:00
Mark Haines
8e571cbed8
Merge branch 'client_v2_filter' into client_v2_sync
2015-01-29 16:18:59 +00:00
Mark Haines
295322048d
Merge branch 'develop' into client_v2_filter
2015-01-29 16:18:34 +00:00
Mark Haines
acb68a39e0
Code style fixes.
2015-01-29 16:12:40 +00:00
David Baker
8b1dd9f57f
Only send a badge-reset if the user actually has unread notifications.
2015-01-29 16:10:01 +00:00
Mark Haines
9150a0d62e
Fix code-style
2015-01-29 16:01:14 +00:00
Mark Haines
cf7c54ec93
Merge branch 'client_v2_filter' into client_v2_sync
2015-01-29 15:55:58 +00:00
Mark Haines
33391db5f8
Merge in auth changes from develop
2015-01-29 15:54:54 +00:00
Mark Haines
396a67a09a
Merge branch 'client_v2_filter' into client_v2_sync
...
Conflicts:
synapse/rest/client/v2_alpha/__init__.py
2015-01-29 14:58:00 +00:00
Mark Haines
9d8f798a3f
Merge changes from develop
2015-01-29 14:55:27 +00:00
Mark Haines
e4f50fa0aa
Move bump schema delta
2015-01-29 14:53:18 +00:00
Mark Haines
e016f4043b
Use get_room_events_stream to get changes to the rooms if the number of changes is small
2015-01-29 14:40:28 +00:00
Erik Johnston
5a3a15f5c1
Make post_json(...) actually send data.
2015-01-29 13:58:22 +00:00
Erik Johnston
c183cec8f6
Add post_json(...) method to federation client
2015-01-29 13:44:52 +00:00
Kegan Dougal
83172487b0
Add basic filtering public API unit tests. Use defers in the right places.
2015-01-29 12:20:59 +00:00
Kegan Dougal
777d9914b5
Implement filter algorithm. Add basic event type unit tests to assert it works.
2015-01-29 11:38:06 +00:00
Kegan Dougal
50de1eaad9
Add filtering public API; outline filtering algorithm.
2015-01-29 10:24:57 +00:00
Kegan Dougal
2a4fda7b88
Add filtering.filter_events function, with stub passes_filter function.
2015-01-29 09:27:16 +00:00
Kegan Dougal
3773759c0f
Also edit the filter column on the delta SQL
2015-01-29 09:15:33 +00:00
Mark Haines
e3e72b8c5c
Remove typing TODO
2015-01-29 03:35:25 +00:00
Mark Haines
3dbce6f4a5
Add typing notifications to sync
2015-01-29 03:33:51 +00:00
Mark Haines
b9c442c85c
Include transaction ids in unsigned section of events in the sync results for the clients that made those requests
2015-01-29 02:46:00 +00:00
Mark Haines
1b4a164c02
Add support for formatting events in the way a v2 client expects
2015-01-29 02:34:35 +00:00
Mark Haines
b0b80074e0
SYN-252: Supply the stream and topological parts in the correct order to the constructor
2015-01-29 01:48:48 +00:00
David Baker
d5bdf3c0c7
Allow the push rule delete method to take more specifiers.
2015-01-28 18:06:04 +00:00
David Baker
8552ed8df2
Change uses of get_user_by_req because it returns a tuple now.
2015-01-28 18:04:40 +00:00
Kegan Dougal
11634017f4
s/definition/filter_json/ since definition is now used to mean a component of the filter, rather than the complete json
2015-01-28 17:42:19 +00:00
Mark Haines
c81a19552f
Add ports back to demo/start.sh
2015-01-28 17:32:49 +00:00
Mark Haines
9c61556504
Merge branch 'develop' into client_v2_sync
2015-01-28 17:29:30 +00:00
Mark Haines
26c8fff19e
Merge pull request #36 from matrix-org/device_id_from_access_token
...
Extract the device id and token id from the access token when autheniticating users
2015-01-28 17:19:28 +00:00
Mark Haines
3cca61e006
Rename ClientID to ClientInfo since it is a pair of IDs rather than a single identifier
2015-01-28 17:16:12 +00:00
Mark Haines
c18e551640
Add a : to the doc string after the type of the return value
2015-01-28 17:08:53 +00:00
Mark Haines
388581e087
Extract the id token of the token when authing users, include the token and device_id in the internal meta data for the event along with the transaction id when sending events
2015-01-28 16:58:23 +00:00
Kegan Dougal
c23e3db544
Add filter JSON sanity checks.
2015-01-28 16:45:18 +00:00
Erik Johnston
0ef5bfd6a9
Start implementing auth conflict res
2015-01-28 16:16:53 +00:00