From 5108738265a8991b38b87040a2d4add5c96be23b Mon Sep 17 00:00:00 2001 From: Thomas Adamcik Date: Tue, 22 Jul 2014 00:34:19 +0200 Subject: [PATCH 1/7] docs: Basic documentation for pbuilder setup. --- docs/devtools.rst | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/docs/devtools.rst b/docs/devtools.rst index f495b6e8..93798071 100644 --- a/docs/devtools.rst +++ b/docs/devtools.rst @@ -118,6 +118,11 @@ packages is maintained. sudo apt-get install build-essential git-buildpackage +#. Create a Wheezy pbuilder env if running on Ubuntu and this the first time. + See :issue:`561` for details about why this is needed:: + + DIST=wheezy sudo git-pbuilder update --mirror=http://mirror.rackspace.com/debian/ --debootstrapopts --keyring=/usr/share/keyrings/debian-archive-keyring.gpg + #. Check out the ``debian`` branch of the repo:: git checkout -t origin/debian @@ -142,15 +147,27 @@ packages is maintained. git buildpackage -uc -us + If you are using the pbuilder make sure this command is:: + + sudo git buildpackage -uc -us --git-ignore-new --git-pbuilder --git-dist=wheezy --git-no-pbuilder-autoconf + #. Install and test newly built package:: sudo debi + Again for pbuilder use:: + + sudo debi --debs-dir /var/cache/pbuilder/result/ + #. If everything is OK, build the package a final time to tag the package version:: git buildpackage -uc -us --git-tag + Pbuilder:: + + sudo git buildpackage -uc -us --git-ignore-new --git-pbuilder --git-dist=wheezy --git-no-pbuilder-autoconf --git-tag + #. Push the changes you've done to the ``debian`` branch and the new tag:: git push @@ -161,6 +178,8 @@ packages is maintained. git buildpackage -uc -us + Modify as above to use the pbuilder as needed. + #. Copy files to the APT server. Make sure to select the correct part of the repo, e.g. main, contrib, or non-free:: From 0c10199632f7805e82e83d632fbe2b5166ecf9f5 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Tue, 22 Jul 2014 13:43:42 +0200 Subject: [PATCH 2/7] http: Only require Tornado >= 2.3 --- docs/changelog.rst | 9 +++++++++ mopidy/http/handlers.py | 8 +++++++- setup.py | 2 +- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/docs/changelog.rst b/docs/changelog.rst index 908a59a2..c73c5a44 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -4,6 +4,15 @@ Changelog This changelog is used to track all major changes to Mopidy. +v0.19.1 (UNRELEASED) +==================== + +**Dependencies** + +- Mopidy now requires Tornado >= 2.3, instead of >= 3.1. This should make + Mopidy continue to work on Debian/Raspbian stable, where Tornado 2.3 is the + newest version available. + v0.19.0 (2014-07-21) ==================== diff --git a/mopidy/http/handlers.py b/mopidy/http/handlers.py index 048c9ddf..03a97940 100644 --- a/mopidy/http/handlers.py +++ b/mopidy/http/handlers.py @@ -2,6 +2,7 @@ from __future__ import unicode_literals import logging import os +import socket import tornado.escape import tornado.web @@ -76,7 +77,12 @@ class WebSocketHandler(tornado.websocket.WebSocketHandler): self.jsonrpc = make_jsonrpc_wrapper(core) def open(self): - self.set_nodelay(True) + if hasattr(self, 'set_nodelay'): + # New in Tornado 3.1 + self.set_nodelay(True) + else: + self.handler.connection.socket.setsockopt( + socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) self.clients.add(self) logger.debug( 'New WebSocket connection from %s', self.request.remote_ip) diff --git a/setup.py b/setup.py index 3f69591d..900fcf38 100644 --- a/setup.py +++ b/setup.py @@ -26,7 +26,7 @@ setup( install_requires=[ 'setuptools', 'Pykka >= 1.1', - 'tornado >= 3.1', + 'tornado >= 2.3', ], extras_require={'http': []}, test_suite='nose.collector', From f55f3d75c10b4f36bc32e3807e7c5ddde8e3a54e Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Tue, 22 Jul 2014 14:01:22 +0200 Subject: [PATCH 3/7] http: Fix path to socket object --- mopidy/http/handlers.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mopidy/http/handlers.py b/mopidy/http/handlers.py index 03a97940..4ea2e97d 100644 --- a/mopidy/http/handlers.py +++ b/mopidy/http/handlers.py @@ -81,7 +81,7 @@ class WebSocketHandler(tornado.websocket.WebSocketHandler): # New in Tornado 3.1 self.set_nodelay(True) else: - self.handler.connection.socket.setsockopt( + self.stream.socket.setsockopt( socket.IPPROTO_TCP, socket.TCP_NODELAY, 1) self.clients.add(self) logger.debug( From 292cf8f32d5c50aeed1641ffd95aafc4341350e7 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Tue, 22 Jul 2014 16:26:39 +0200 Subject: [PATCH 4/7] Fix Mopidy version when run from another Git repo (related to #706) --- docs/changelog.rst | 6 ++++++ mopidy/utils/versioning.py | 13 +++++++++---- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/docs/changelog.rst b/docs/changelog.rst index c73c5a44..c461db63 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -13,6 +13,12 @@ v0.19.1 (UNRELEASED) Mopidy continue to work on Debian/Raspbian stable, where Tornado 2.3 is the newest version available. +**Development** + +- ``mopidy --version`` and :meth:`mopidy.core.Core.get_version` now returns the + correct version when Mopidy is run from a Git repo other than Mopidy's own. + (Related to :issue:`706`) + v0.19.0 (2014-07-21) ==================== diff --git a/mopidy/utils/versioning.py b/mopidy/utils/versioning.py index e8856473..94578121 100644 --- a/mopidy/utils/versioning.py +++ b/mopidy/utils/versioning.py @@ -1,19 +1,24 @@ from __future__ import unicode_literals -from subprocess import PIPE, Popen +import os +import subprocess -from mopidy import __version__ +import mopidy def get_version(): try: return get_git_version() except EnvironmentError: - return __version__ + return mopidy.__version__ def get_git_version(): - process = Popen(['git', 'describe'], stdout=PIPE, stderr=PIPE) + project_dir = os.path.abspath( + os.path.join(os.path.dirname(mopidy.__file__), '..')) + process = subprocess.Popen( + ['git', 'describe'], + stdout=subprocess.PIPE, stderr=subprocess.PIPE, cwd=project_dir) if process.wait() != 0: raise EnvironmentError('Execution of "git describe" failed') version = process.stdout.read().strip() From ae49c4d113085b3032b43c225ad3d9ea0c26734a Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Wed, 23 Jul 2014 17:35:55 +0200 Subject: [PATCH 5/7] http: Add missing string interpolation placeholder --- docs/changelog.rst | 4 ++++ mopidy/http/handlers.py | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/changelog.rst b/docs/changelog.rst index c461db63..7a218f98 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -13,6 +13,10 @@ v0.19.1 (UNRELEASED) Mopidy continue to work on Debian/Raspbian stable, where Tornado 2.3 is the newest version available. +**HTTP** + +- Add missing string interpolation placeholder. + **Development** - ``mopidy --version`` and :meth:`mopidy.core.Core.get_version` now returns the diff --git a/mopidy/http/handlers.py b/mopidy/http/handlers.py index 4ea2e97d..f35b5c7c 100644 --- a/mopidy/http/handlers.py +++ b/mopidy/http/handlers.py @@ -144,7 +144,7 @@ class JsonRpcHandler(tornado.web.RequestHandler): 'Sent RPC message to %s: %r', self.request.remote_ip, response) except Exception as e: - logger.error('HTTP JSON-RPC request error:', e) + logger.error('HTTP JSON-RPC request error: %s', e) self.write_error(500) def set_extra_headers(self): From d7cbac5a44689e494c65226f24c147b801c20093 Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Wed, 23 Jul 2014 18:13:14 +0200 Subject: [PATCH 6/7] docs: Update changelog --- docs/changelog.rst | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/changelog.rst b/docs/changelog.rst index 7a218f98..f28bd8e9 100644 --- a/docs/changelog.rst +++ b/docs/changelog.rst @@ -4,9 +4,11 @@ Changelog This changelog is used to track all major changes to Mopidy. -v0.19.1 (UNRELEASED) +v0.19.1 (2014-07-23) ==================== +Bug fix release. + **Dependencies** - Mopidy now requires Tornado >= 2.3, instead of >= 3.1. This should make From 19dae1057549ee7c9e2c5e59c1b570a20cbc863e Mon Sep 17 00:00:00 2001 From: Stein Magnus Jodal Date: Wed, 23 Jul 2014 18:14:00 +0200 Subject: [PATCH 7/7] Bump version to 0.19.1 --- mopidy/__init__.py | 2 +- tests/test_version.py | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/mopidy/__init__.py b/mopidy/__init__.py index 6018a2ca..6ac5f6c0 100644 --- a/mopidy/__init__.py +++ b/mopidy/__init__.py @@ -21,4 +21,4 @@ if (isinstance(pykka.__version__, basestring) warnings.filterwarnings('ignore', 'could not open display') -__version__ = '0.19.0' +__version__ = '0.19.1' diff --git a/tests/test_version.py b/tests/test_version.py index c166922c..c596defd 100644 --- a/tests/test_version.py +++ b/tests/test_version.py @@ -46,5 +46,6 @@ class VersionTest(unittest.TestCase): self.assertLess(SV('0.18.0'), SV('0.18.1')) self.assertLess(SV('0.18.1'), SV('0.18.2')) self.assertLess(SV('0.18.2'), SV('0.18.3')) - self.assertLess(SV('0.18.3'), SV(__version__)) - self.assertLess(SV(__version__), SV('0.19.1')) + self.assertLess(SV('0.18.3'), SV('0.19.0')) + self.assertLess(SV('0.19.0'), SV(__version__)) + self.assertLess(SV(__version__), SV('0.19.2'))