diff -Nru websockify-0.8.0+dfsg1/debian/changelog websockify-0.8.0+dfsg1/debian/changelog --- websockify-0.8.0+dfsg1/debian/changelog 2017-06-21 03:45:04.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/changelog 2017-11-03 02:24:43.000000000 +0000 @@ -1,15 +1,32 @@ -websockify (0.8.0+dfsg1-7ubuntu1~cloud0) xenial-pike; urgency=medium +websockify (0.8.0+dfsg1-9~cloud0) xenial-queens; urgency=medium * New update for the Ubuntu Cloud Archive. - -- Openstack Ubuntu Testing Bot Wed, 21 Jun 2017 03:45:04 +0000 + -- Openstack Ubuntu Testing Bot Fri, 03 Nov 2017 02:24:43 +0000 -websockify (0.8.0+dfsg1-7ubuntu1) artful; urgency=medium +websockify (0.8.0+dfsg1-9) unstable; urgency=medium - * Add d/patches/add-send_error-stub.patch, adapted from upstream to fix ftbfs - with Python 3.6. + * Add runtime depends on python{3,}-pkg-resources (Closes: #879224). + * Removed old Breaks+Replaces. + * Using pkgos-dh_auto_install. - -- Michael Hudson-Doyle Wed, 21 Jun 2017 15:01:59 +1200 + -- Thomas Goirand Thu, 26 Oct 2017 03:15:54 +0000 + +websockify (0.8.0+dfsg1-8) unstable; urgency=medium + + [ Ondřej Nový ] + * d/control: Using OpenStack's Gerrit as VCS URLs. + * Bumped debhelper compat version to 10 + + [ Thomas Goirand ] + * Ran wrap-and-sort -bast. + * Fixed VCS URLs. + * Updating copyright format url. + * Updating maintainer field. + * Updating standards version to 4.1.1. + * Add patch to fix Py 3.6 FTBFS (Closes: #879223). + + -- Thomas Goirand Tue, 24 Oct 2017 20:34:51 +0000 websockify (0.8.0+dfsg1-7) unstable; urgency=medium diff -Nru websockify-0.8.0+dfsg1/debian/compat websockify-0.8.0+dfsg1/debian/compat --- websockify-0.8.0+dfsg1/debian/compat 2016-10-11 14:14:26.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/compat 2017-10-26 03:15:54.000000000 +0000 @@ -1 +1 @@ -9 +10 diff -Nru websockify-0.8.0+dfsg1/debian/control websockify-0.8.0+dfsg1/debian/control --- websockify-0.8.0+dfsg1/debian/control 2017-06-21 03:03:03.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/control 2017-10-26 03:15:54.000000000 +0000 @@ -1,33 +1,38 @@ Source: websockify Section: python Priority: optional -Maintainer: Ubuntu Developers -XSBC-Original-Maintainer: PKG OpenStack -Uploaders: Thomas Goirand , -Build-Depends: debhelper (>= 9), - dh-python, - openstack-pkg-tools, - python-dev, - python-mox3, - python-nose, - python-numpy, - python-setuptools, - python3-dev, - python3-mox3, - python3-nose, - python3-numpy, - python3-setuptools, -Standards-Version: 3.9.8 -Vcs-Browser: https://anonscm.debian.org/cgit/openstack/websockify.git/ +Maintainer: Debian OpenStack +Uploaders: + Thomas Goirand , +Build-Depends: + debhelper (>= 10), + dh-python, + openstack-pkg-tools, + python-dev, + python-mox3, + python-nose, + python-numpy, + python-setuptools, + python3-dev, + python3-mox3, + python3-nose, + python3-numpy, + python3-setuptools, +Standards-Version: 4.1.1 +Vcs-Browser: https://anonscm.debian.org/cgit/openstack/python/websockify.git Vcs-Git: https://anonscm.debian.org/git/openstack/websockify.git Homepage: https://pypi.python.org/pypi/websockify -Package: websockify-common -Architecture: all -Depends: ${misc:Depends}, -Breaks: websockify (<< 0.8.0+dfsg1-2~), -Replaces: websockify (<< 0.8.0+dfsg1-2~), -Description: WebSockets support for any application/server - shared files +Package: python-websockify +Architecture: any +Depends: + python-numpy, + python-pkg-resources, + websockify-common (= ${source:Version}), + ${misc:Depends}, + ${python:Depends}, + ${shlibs:Depends}, +Description: WebSockets support for any application/server - Python 2 websockify was formerly named wsproxy and was part of the noVNC project. . At the most basic level, websockify just translates WebSockets traffic to @@ -52,18 +57,18 @@ Chrome and iOS versions) do not support binary data which is why the negotiation is necessary. . - This package provides common files for Python 2 and 3 modules. + This package provides the Python 2 module. -Package: python-websockify +Package: python3-websockify Architecture: any -Depends: python-numpy, - websockify-common (= ${source:Version}), - ${misc:Depends}, - ${python:Depends}, - ${shlibs:Depends}, -Breaks: websockify (<< 0.8.0+dfsg1-2~), -Replaces: websockify (<< 0.8.0+dfsg1-2~), -Description: WebSockets support for any application/server - Python 2 +Depends: + python3-numpy, + python3-pkg-resources, + websockify-common (= ${source:Version}), + ${misc:Depends}, + ${python3:Depends}, + ${shlibs:Depends}, +Description: WebSockets support for any application/server - Python 3 websockify was formerly named wsproxy and was part of the noVNC project. . At the most basic level, websockify just translates WebSockets traffic to @@ -88,16 +93,17 @@ Chrome and iOS versions) do not support binary data which is why the negotiation is necessary. . - This package provides the Python 2 module. + This package provides the Python 3 module. -Package: python3-websockify +Package: websockify Architecture: any -Depends: python3-numpy, - websockify-common (= ${source:Version}), - ${misc:Depends}, - ${python3:Depends}, - ${shlibs:Depends}, -Description: WebSockets support for any application/server - Python 3 +Depends: + python-numpy, + python-websockify (>= ${source:Version}) | python3-websockify (>= ${source:Version}), + ${misc:Depends}, + ${python:Depends}, + ${shlibs:Depends}, +Description: WebSockets support for any application/server websockify was formerly named wsproxy and was part of the noVNC project. . At the most basic level, websockify just translates WebSockets traffic to @@ -121,19 +127,12 @@ WebSocket frames. Some HyBi clients (such as the Flash fallback and older Chrome and iOS versions) do not support binary data which is why the negotiation is necessary. - . - This package provides the Python 3 module. -Package: websockify -Architecture: any -Depends: python-numpy, - python-websockify (>= ${source:Version}) | python3-websockify (>= ${source:Version}), - ${misc:Depends}, - ${python:Depends}, - ${shlibs:Depends}, -Breaks: novnc (<< 1:0.4+dfsg+1-6), -Replaces: novnc (<< 1:0.4+dfsg+1-6), -Description: WebSockets support for any application/server +Package: websockify-common +Architecture: all +Depends: + ${misc:Depends}, +Description: WebSockets support for any application/server - shared files websockify was formerly named wsproxy and was part of the noVNC project. . At the most basic level, websockify just translates WebSockets traffic to @@ -157,3 +156,5 @@ WebSocket frames. Some HyBi clients (such as the Flash fallback and older Chrome and iOS versions) do not support binary data which is why the negotiation is necessary. + . + This package provides common files for Python 2 and 3 modules. diff -Nru websockify-0.8.0+dfsg1/debian/copyright websockify-0.8.0+dfsg1/debian/copyright --- websockify-0.8.0+dfsg1/debian/copyright 2016-10-11 14:14:26.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/copyright 2017-10-26 03:15:54.000000000 +0000 @@ -1,4 +1,4 @@ -Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: websockify Source: https://github.com/kanaka/websockify diff -Nru websockify-0.8.0+dfsg1/debian/gbp.conf websockify-0.8.0+dfsg1/debian/gbp.conf --- websockify-0.8.0+dfsg1/debian/gbp.conf 2016-10-11 14:14:26.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/gbp.conf 1970-01-01 00:00:00.000000000 +0000 @@ -1,8 +0,0 @@ -[DEFAULT] -upstream-branch = master -debian-branch = debian/newton -upstream-tag = %(version)s -compression = xz - -[buildpackage] -export-dir = ../build-area/ diff -Nru websockify-0.8.0+dfsg1/debian/patches/add-send_error-stub.patch websockify-0.8.0+dfsg1/debian/patches/add-send_error-stub.patch --- websockify-0.8.0+dfsg1/debian/patches/add-send_error-stub.patch 2017-06-21 03:09:06.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/patches/add-send_error-stub.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,102 +0,0 @@ -From a45b960983e115181dd170f9fc67679998e69ae5 Mon Sep 17 00:00:00 2001 -From: Zac Medico -Date: Thu, 11 May 2017 19:04:25 -0700 -Subject: [PATCH] test_websockifyserver: add send_error stub - -The socket.sendall method is called indirectly via calls -to the python3.6 BaseHTTPRequestHandler.send_error method -which is called by both the Web*RequestHandler classes as -shown below: - -====================================================================== -ERROR: test_list_dir_with_file_only_returns_error (test_websockifyserver.WebSockifyRequestHandlerTestCase) ----------------------------------------------------------------------- -Traceback (most recent call last): - File "tests/test_websockifyserver.py", line 115, in test_list_dir_with_file_only_returns_error - FakeSocket('GET / HTTP/1.1'), '127.0.0.1', server) - File "websockify/websockifyserver.py", line 94, in __init__ - WebSocketRequestHandler.__init__(self, req, addr, server) - File "websockify/websocketserver.py", line 34, in __init__ - BaseHTTPRequestHandler.__init__(self, request, client_address, server) - File "/usr/lib64/python3.6/socketserver.py", line 696, in __init__ - self.handle() - File "websockify/websockifyserver.py", line 293, in handle - SimpleHTTPRequestHandler.handle(self) - File "/usr/lib64/python3.6/http/server.py", line 418, in handle - self.handle_one_request() - File "websockify/websocketserver.py", line 46, in handle_one_request - BaseHTTPRequestHandler.handle_one_request(self) - File "/usr/lib64/python3.6/http/server.py", line 406, in handle_one_request - method() - File "websockify/websocketserver.py", line 58, in _websocket_do_GET - self.do_GET() - File "websockify/websockifyserver.py", line 259, in do_GET - SimpleHTTPRequestHandler.do_GET(self) - File "/usr/lib64/python3.6/http/server.py", line 636, in do_GET - f = self.send_head() - File "/usr/lib64/python3.6/http/server.py", line 679, in send_head - return self.list_directory(path) - File "websockify/websockifyserver.py", line 263, in list_directory - self.send_error(404, "No such file") - File "/usr/lib64/python3.6/http/server.py", line 470, in send_error - self.end_headers() - File "/usr/lib64/python3.6/http/server.py", line 520, in end_headers - self.flush_headers() - File "/usr/lib64/python3.6/http/server.py", line 524, in flush_headers - self.wfile.write(b"".join(self._headers_buffer)) - File "/usr/lib64/python3.6/socketserver.py", line 775, in write - self._sock.sendall(b) -AttributeError: 'FakeSocket' object has no attribute 'sendall' - -====================================================================== -ERROR: test_normal_get_with_only_upgrade_returns_error (test_websockifyserver.WebSockifyRequestHandlerTestCase) ----------------------------------------------------------------------- -Traceback (most recent call last): - File "tests/test_websockifyserver.py", line 101, in test_normal_get_with_only_upgrade_returns_error - FakeSocket('GET /tmp.txt HTTP/1.1'), '127.0.0.1', server) - File "websockify/websockifyserver.py", line 94, in __init__ - WebSocketRequestHandler.__init__(self, req, addr, server) - File "websockify/websocketserver.py", line 34, in __init__ - BaseHTTPRequestHandler.__init__(self, request, client_address, server) - File "/usr/lib64/python3.6/socketserver.py", line 696, in __init__ - self.handle() - File "websockify/websockifyserver.py", line 293, in handle - SimpleHTTPRequestHandler.handle(self) - File "/usr/lib64/python3.6/http/server.py", line 418, in handle - self.handle_one_request() - File "websockify/websocketserver.py", line 46, in handle_one_request - BaseHTTPRequestHandler.handle_one_request(self) - File "/usr/lib64/python3.6/http/server.py", line 406, in handle_one_request - method() - File "websockify/websocketserver.py", line 58, in _websocket_do_GET - self.do_GET() - File "websockify/websockifyserver.py", line 257, in do_GET - self.send_error(405, "Method Not Allowed") - File "/usr/lib64/python3.6/http/server.py", line 470, in send_error - self.end_headers() - File "/usr/lib64/python3.6/http/server.py", line 520, in end_headers - self.flush_headers() - File "/usr/lib64/python3.6/http/server.py", line 524, in flush_headers - self.wfile.write(b"".join(self._headers_buffer)) - File "/usr/lib64/python3.6/socketserver.py", line 775, in write - self._sock.sendall(b) -AttributeError: 'FakeSocket' object has no attribute 'sendall' ---- - tests/test_websockifyserver.py | 6 ++++++ - 1 file changed, 6 insertions(+) - ---- a/tests/test_websocket.py -+++ b/tests/test_websocket.py -@@ -80,6 +80,12 @@ - self.stubs.Set(SimpleHTTPRequestHandler, 'send_response', - lambda *args, **kwargs: None) - -+ def fake_send_error(self, code, message=None, explain=None): -+ self.last_code = code -+ -+ self.stubs.Set(SimpleHTTPRequestHandler, 'send_error', -+ fake_send_error) -+ - def tearDown(self): - """Called automatically after each test.""" - self.stubs.UnsetAll() diff -Nru websockify-0.8.0+dfsg1/debian/patches/fix-ftbfs-with-python-3.6.patch websockify-0.8.0+dfsg1/debian/patches/fix-ftbfs-with-python-3.6.patch --- websockify-0.8.0+dfsg1/debian/patches/fix-ftbfs-with-python-3.6.patch 1970-01-01 00:00:00.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/patches/fix-ftbfs-with-python-3.6.patch 2017-10-26 03:15:54.000000000 +0000 @@ -0,0 +1,18 @@ +Description: Fix FTBFS with Python 3.6 +Author: Andreas Stührk +Bug-Debian: https://bugs.debian.org/879223 +Forwarded: no +Last-Update: 2017-10-24 + +--- websockify-0.8.0+dfsg1.orig/tests/test_websocket.py ++++ websockify-0.8.0+dfsg1/tests/test_websocket.py +@@ -69,6 +69,9 @@ class FakeSocket(object): + else: + return StringIO(self._data.decode('latin_1')) + ++ def sendall(self, data, flags=None): ++ return len(data) ++ + + class WebSocketRequestHandlerTestCase(unittest.TestCase): + def setUp(self): diff -Nru websockify-0.8.0+dfsg1/debian/patches/series websockify-0.8.0+dfsg1/debian/patches/series --- websockify-0.8.0+dfsg1/debian/patches/series 2017-06-21 03:02:48.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/patches/series 2017-10-26 03:15:54.000000000 +0000 @@ -2,4 +2,4 @@ fixes-rebind-wrapper.patch mox3.patch TCP-options-not-available-in-non-linux.patch -add-send_error-stub.patch +fix-ftbfs-with-python-3.6.patch diff -Nru websockify-0.8.0+dfsg1/debian/rules websockify-0.8.0+dfsg1/debian/rules --- websockify-0.8.0+dfsg1/debian/rules 2016-10-11 14:14:26.000000000 +0000 +++ websockify-0.8.0+dfsg1/debian/rules 2017-10-26 03:15:54.000000000 +0000 @@ -1,7 +1,6 @@ #!/usr/bin/make -f UPSTREAM_GIT := https://github.com/kanaka/websockify.git - include /usr/share/openstack-pkg-tools/pkgos.make %: @@ -13,11 +12,9 @@ python3 setup.py build override_dh_auto_install: + pkgos-dh_auto_install dh_auto_install - python setup.py install -O1 --skip-build --root=$(CURDIR)/debian/python-websockify --install-layout=deb - python3 setup.py install -O1 --skip-build --root=$(CURDIR)/debian/python3-websockify --install-layout=deb - mv $(CURDIR)/debian/python-websockify/usr/bin/websockify $(CURDIR)/debian/python-websockify/usr/bin/python2-websockify - mv $(CURDIR)/debian/python3-websockify/usr/bin/websockify $(CURDIR)/debian/python3-websockify/usr/bin/python3-websockify + mkdir -p $(CURDIR)/debian/websockify-common/usr/share mv $(CURDIR)/debian/python-websockify/usr/share/websockify $(CURDIR)/debian/websockify-common/usr/share rm -rf $(CURDIR)/debian/python3-websockify/usr/share/websockify