mirror of
https://mau.dev/maunium/synapse.git
synced 2024-10-01 01:36:05 -04:00
Merge branch 'master' of github.com:matrix-org/synapse into release-v0.2.0
Conflicts: synapse/notifier.py webclient/room/room-controller.js webclient/room/room.html
This commit is contained in:
commit
464e1fcfa5
35
CHANGES.rst
35
CHANGES.rst
@ -1,3 +1,38 @@
|
|||||||
|
Changes in synapse 0.1.2 (2014-08-29)
|
||||||
|
=====================================
|
||||||
|
|
||||||
|
Webclient:
|
||||||
|
* Add basic call state UI for VoIP calls.
|
||||||
|
|
||||||
|
Changes in synapse 0.1.1 (2014-08-29)
|
||||||
|
=====================================
|
||||||
|
|
||||||
|
Homeserver:
|
||||||
|
* Fix bug that caused the event stream to not notify some clients about
|
||||||
|
changes.
|
||||||
|
|
||||||
|
Changes in synapse 0.1.0 (2014-08-29)
|
||||||
|
=====================================
|
||||||
|
Presence has been reenabled in this release.
|
||||||
|
|
||||||
|
Homeserver:
|
||||||
|
* Update client to server API, including:
|
||||||
|
- Use a more consistent url scheme.
|
||||||
|
- Provide more useful information in the initial sync api.
|
||||||
|
* Change the presence handling to be much more efficient.
|
||||||
|
* Change the presence server to server API to not require explicit polling of
|
||||||
|
all users who share a room with a user.
|
||||||
|
* Fix races in the event streaming logic.
|
||||||
|
|
||||||
|
Webclient:
|
||||||
|
* Update to use new client to server API.
|
||||||
|
* Add basic VOIP support.
|
||||||
|
* Add idle timers that change your status to away.
|
||||||
|
* Add recent rooms column when viewing a room.
|
||||||
|
* Various network efficiency improvements.
|
||||||
|
* Add basic mobile browser support.
|
||||||
|
* Add a settings page.
|
||||||
|
|
||||||
Changes in synapse 0.0.1 (2014-08-22)
|
Changes in synapse 0.0.1 (2014-08-22)
|
||||||
=====================================
|
=====================================
|
||||||
Presence has been disabled in this release due to a bug that caused the
|
Presence has been disabled in this release due to a bug that caused the
|
||||||
|
@ -16,4 +16,4 @@
|
|||||||
""" This is a reference implementation of a synapse home server.
|
""" This is a reference implementation of a synapse home server.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
__version__ = "0.0.1"
|
__version__ = "0.1.2"
|
||||||
|
@ -106,7 +106,9 @@ class Notifier(object):
|
|||||||
|
|
||||||
# TODO (erikj): Can we make this more efficient by hitting the
|
# TODO (erikj): Can we make this more efficient by hitting the
|
||||||
# db once?
|
# db once?
|
||||||
for listener in listeners:
|
|
||||||
|
@defer.inlineCallbacks
|
||||||
|
def notify(listener):
|
||||||
events, end_key = yield room_source.get_new_events_for_user(
|
events, end_key = yield room_source.get_new_events_for_user(
|
||||||
listener.user,
|
listener.user,
|
||||||
listener.from_token.room_key,
|
listener.from_token.room_key,
|
||||||
@ -122,6 +124,13 @@ class Notifier(object):
|
|||||||
self, events, listener.from_token, end_token
|
self, events, listener.from_token, end_token
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def eb(failure):
|
||||||
|
logger.exception("Failed to notify listener", failure)
|
||||||
|
|
||||||
|
yield defer.DeferredList(
|
||||||
|
[notify(l).addErrback(eb) for l in listeners]
|
||||||
|
)
|
||||||
|
|
||||||
@defer.inlineCallbacks
|
@defer.inlineCallbacks
|
||||||
@log_function
|
@log_function
|
||||||
def on_new_user_event(self, users=[], rooms=[]):
|
def on_new_user_event(self, users=[], rooms=[]):
|
||||||
@ -140,7 +149,8 @@ class Notifier(object):
|
|||||||
for room in rooms:
|
for room in rooms:
|
||||||
listeners |= self.rooms_to_listeners.get(room, set()).copy()
|
listeners |= self.rooms_to_listeners.get(room, set()).copy()
|
||||||
|
|
||||||
for listener in listeners:
|
@defer.inlineCallbacks
|
||||||
|
def notify(listener):
|
||||||
events, end_key = yield presence_source.get_new_events_for_user(
|
events, end_key = yield presence_source.get_new_events_for_user(
|
||||||
listener.user,
|
listener.user,
|
||||||
listener.from_token.presence_key,
|
listener.from_token.presence_key,
|
||||||
@ -156,6 +166,13 @@ class Notifier(object):
|
|||||||
self, events, listener.from_token, end_token
|
self, events, listener.from_token, end_token
|
||||||
)
|
)
|
||||||
|
|
||||||
|
def eb(failure):
|
||||||
|
logger.exception("Failed to notify listener", failure)
|
||||||
|
|
||||||
|
yield defer.DeferredList(
|
||||||
|
[notify(l).addErrback(eb) for l in listeners]
|
||||||
|
)
|
||||||
|
|
||||||
def get_events_for(self, user, rooms, pagination_config, timeout):
|
def get_events_for(self, user, rooms, pagination_config, timeout):
|
||||||
""" For the given user and rooms, return any new events for them. If
|
""" For the given user and rooms, return any new events for them. If
|
||||||
there are no new events wait for up to `timeout` milliseconds for any
|
there are no new events wait for up to `timeout` milliseconds for any
|
||||||
|
Loading…
Reference in New Issue
Block a user