Hello community, here is the log from the commit of package python-tornado for openSUSE:Factory checked in at 2013-11-18 10:54:10 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-tornado (Old) and /work/SRC/openSUSE:Factory/.python-tornado.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-tornado" Changes: -------- --- /work/SRC/openSUSE:Factory/python-tornado/python-tornado.changes 2013-08-15 20:03:53.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.python-tornado.new/python-tornado.changes 2013-11-18 10:54:12.000000000 +0100 @@ -1,0 +2,9 @@ +Sun Nov 17 16:07:37 UTC 2013 - [email protected] + +- Update to version 3.1.1 + + StaticFileHandler no longer fails if the client requests a Range that + is larger than the entire file (Facebook has a crawler that does this). + + RequestHandler.on_connection_close now works correctly on subsequent + requests of a keep-alive connection. + +------------------------------------------------------------------- Old: ---- tornado-3.1.tar.gz New: ---- tornado-3.1.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-tornado.spec ++++++ --- /var/tmp/diff_new_pack.W6XQ5t/_old 2013-11-18 10:54:13.000000000 +0100 +++ /var/tmp/diff_new_pack.W6XQ5t/_new 2013-11-18 10:54:13.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-tornado # -# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2013 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,7 +16,7 @@ # Name: python-tornado -Version: 3.1 +Version: 3.1.1 Release: 0 Url: http://www.tornadoweb.org Summary: Open source version of scalable, non-blocking web server that power FriendFeed ++++++ tornado-3.1.tar.gz -> tornado-3.1.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tornado-3.1/PKG-INFO new/tornado-3.1.1/PKG-INFO --- old/tornado-3.1/PKG-INFO 2013-06-15 20:19:14.000000000 +0200 +++ new/tornado-3.1.1/PKG-INFO 2013-09-01 20:44:12.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: tornado -Version: 3.1 +Version: 3.1.1 Summary: Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. Home-page: http://www.tornadoweb.org/ Author: Facebook diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tornado-3.1/setup.py new/tornado-3.1.1/setup.py --- old/tornado-3.1/setup.py 2013-06-15 20:15:41.000000000 +0200 +++ new/tornado-3.1.1/setup.py 2013-09-01 20:41:35.000000000 +0200 @@ -25,7 +25,7 @@ kwargs = {} -version = "3.1" +version = "3.1.1" with open('README.rst') as f: long_description = f.read() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tornado-3.1/tornado/__init__.py new/tornado-3.1.1/tornado/__init__.py --- old/tornado-3.1/tornado/__init__.py 2013-06-15 20:15:50.000000000 +0200 +++ new/tornado-3.1.1/tornado/__init__.py 2013-09-01 20:41:35.000000000 +0200 @@ -25,5 +25,5 @@ # is zero for an official release, positive for a development branch, # or negative for a release candidate or beta (after the base version # number has been incremented) -version = "3.1" -version_info = (3, 1, 0, 0) +version = "3.1.1" +version_info = (3, 1, 1, 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tornado-3.1/tornado/test/web_test.py new/tornado-3.1.1/tornado/test/web_test.py --- old/tornado-3.1/tornado/test/web_test.py 2013-06-03 03:15:15.000000000 +0200 +++ new/tornado-3.1.1/tornado/test/web_test.py 2013-09-01 20:41:35.000000000 +0200 @@ -900,6 +900,26 @@ self.assertEqual(response.headers.get("Content-Length"), "26") self.assertEqual(response.headers.get("Content-Range"), None) + def test_static_with_range_full_past_end(self): + response = self.fetch('/static/robots.txt', headers={ + 'Range': 'bytes=0-10000000'}) + self.assertEqual(response.code, 200) + robots_file_path = os.path.join(self.static_dir, "robots.txt") + with open(robots_file_path) as f: + self.assertEqual(response.body, utf8(f.read())) + self.assertEqual(response.headers.get("Content-Length"), "26") + self.assertEqual(response.headers.get("Content-Range"), None) + + def test_static_with_range_partial_past_end(self): + response = self.fetch('/static/robots.txt', headers={ + 'Range': 'bytes=1-10000000'}) + self.assertEqual(response.code, 206) + robots_file_path = os.path.join(self.static_dir, "robots.txt") + with open(robots_file_path) as f: + self.assertEqual(response.body, utf8(f.read()[1:])) + self.assertEqual(response.headers.get("Content-Length"), "25") + self.assertEqual(response.headers.get("Content-Range"), "bytes 1-25/26") + def test_static_with_range_end_edge(self): response = self.fetch('/static/robots.txt', headers={ 'Range': 'bytes=22-'}) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tornado-3.1/tornado/web.py new/tornado-3.1.1/tornado/web.py --- old/tornado-3.1/tornado/web.py 2013-06-03 03:15:15.000000000 +0200 +++ new/tornado-3.1.1/tornado/web.py 2013-09-01 20:41:35.000000000 +0200 @@ -751,10 +751,10 @@ if hasattr(self.request, "connection"): # Now that the request is finished, clear the callback we - # set on the IOStream (which would otherwise prevent the + # set on the HTTPConnection (which would otherwise prevent the # garbage collection of the RequestHandler when there # are keepalive connections) - self.request.connection.stream.set_close_callback(None) + self.request.connection.set_close_callback(None) if not self.application._wsgi: self.flush(include_footers=True) @@ -1827,6 +1827,10 @@ return if start is not None and start < 0: start += size + if end is not None and end > size: + # Clients sometimes blindly use a large range to limit their + # download size; cap the endpoint at the actual file size. + end = size # Note: only return HTTP 206 if less than the entire range has been # requested. Not only is this semantically correct, but Chrome # refuses to play audio if it gets an HTTP 206 in response to diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/tornado-3.1/tornado.egg-info/PKG-INFO new/tornado-3.1.1/tornado.egg-info/PKG-INFO --- old/tornado-3.1/tornado.egg-info/PKG-INFO 2013-06-15 20:19:11.000000000 +0200 +++ new/tornado-3.1.1/tornado.egg-info/PKG-INFO 2013-09-01 20:44:08.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: tornado -Version: 3.1 +Version: 3.1.1 Summary: Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed. Home-page: http://www.tornadoweb.org/ Author: Facebook -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
