Merge pull request #1154 from adamcik/v1.0.x

Proposed  1.0.3 fixes.
This commit is contained in:
Stein Magnus Jodal 2015-04-27 23:18:07 +02:00
commit f488a266ac
4 changed files with 19 additions and 3 deletions

View File

@ -4,6 +4,17 @@ Changelog
This changelog is used to track all major changes to Mopidy.
v1.0.3 (unreleased)
===================
- HTTP: An other follow-up to the pre 3.0 fixing. Since the tests aren't run
for 2.3 we didn't catch that our previous fix wasn't sufficient.
(Fixes: :issue:`1153`)
- Audio: Follow-up fix for :issue:`1097` still exhibits issues for certain
setups. We are giving this get an other go by setting the buffer size to
maximum 100ms instead of a fixed number of buffers. (Fixes: :issue:`1147`)
v1.0.2 (2015-04-27)
===================

View File

@ -54,6 +54,8 @@ extension. The cassettes have NFC tags used to select playlists from Spotify.
To get started with Mopidy, start by reading :ref:`installation`.
.. _getting-help:
**Getting help**
If you get stuck, you can get help at the `Mopidy discussion forum

View File

@ -164,7 +164,8 @@ class _Outputs(gst.Bin):
# All tee branches need a queue in front of them.
# But keep the queue short so the volume change isn't to slow:
queue = gst.element_factory_make('queue')
queue.set_property('max-size-buffers', 15)
queue.set_property('max-size-time', 100 * gst.MSECOND)
self.add(element)
self.add(queue)
queue.link(element)

View File

@ -1,5 +1,6 @@
from __future__ import absolute_import, unicode_literals
import functools
import logging
import os
import socket
@ -91,13 +92,14 @@ class WebSocketHandler(tornado.websocket.WebSocketHandler):
if hasattr(tornado.ioloop.IOLoop, 'current'):
loop = tornado.ioloop.IOLoop.current()
else:
loop = tornado.ioloop.IOLoop.instance() # Fallback for 2.3
loop = tornado.ioloop.IOLoop.instance() # Fallback for pre 3.0
# This can be called from outside the Tornado ioloop, so we need to
# safely cross the thread boundary by adding a callback to the loop.
for client in cls.clients:
# One callback per client to keep time we hold up the loop short
loop.add_callback(_send_broadcast, client, msg)
# NOTE: Pre 3.0 does not support *args or **kwargs...
loop.add_callback(functools.partial(_send_broadcast, client, msg))
def initialize(self, core):
self.jsonrpc = make_jsonrpc_wrapper(core)