Hello community,
here is the log from the commit of package python-http-parser for
openSUSE:Factory checked in at 2012-03-29 14:05:09
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-http-parser (Old)
and /work/SRC/openSUSE:Factory/.python-http-parser.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-http-parser", Maintainer is ""
Changes:
--------
--- /work/SRC/openSUSE:Factory/python-http-parser/python-http-parser.changes
2012-02-01 11:53:52.000000000 +0100
+++
/work/SRC/openSUSE:Factory/.python-http-parser.new/python-http-parser.changes
2012-03-29 14:05:11.000000000 +0200
@@ -1,0 +2,8 @@
+Tue Feb 28 18:09:50 UTC 2012 - [email protected]
+
+- Update to version 0.7.5:
+ * fix whitespaces
+ * multiple headers values should be separated by a ", " not ","
+ * regenerate the C code
+
+-------------------------------------------------------------------
Old:
----
http-parser-0.7.4.tar.gz
New:
----
http-parser-0.7.5.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-http-parser.spec ++++++
--- /var/tmp/diff_new_pack.LLlzfw/_old 2012-03-29 14:05:13.000000000 +0200
+++ /var/tmp/diff_new_pack.LLlzfw/_new 2012-03-29 14:05:13.000000000 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-http-parser
#
-# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany.
+# Copyright (c) 2012 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
@@ -11,14 +11,14 @@
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
-#
+
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
Name: python-http-parser
-Version: 0.7.4
+Version: 0.7.5
Release: 0
Url: https://github.com/benoitc/http-parser/
Summary: HTTP Request/Response Parser for Python in C
++++++ http-parser-0.7.4.tar.gz -> http-parser-0.7.5.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/http-parser-0.7.4/PKG-INFO
new/http-parser-0.7.5/PKG-INFO
--- old/http-parser-0.7.4/PKG-INFO 2012-01-31 10:19:57.000000000 +0100
+++ new/http-parser-0.7.5/PKG-INFO 2012-02-28 11:27:25.000000000 +0100
@@ -1,6 +1,6 @@
Metadata-Version: 1.0
Name: http-parser
-Version: 0.7.4
+Version: 0.7.5
Summary: http request/response parser
Home-page: http://github.com/benoitc/http-parser
Author: Benoit Chesneau
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/http-parser-0.7.4/THANKS new/http-parser-0.7.5/THANKS
--- old/http-parser-0.7.4/THANKS 2012-01-25 16:06:08.000000000 +0100
+++ new/http-parser-0.7.5/THANKS 2012-02-23 23:04:24.000000000 +0100
@@ -0,0 +1 @@
+Benoit Calvez <[email protected]>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/http-parser-0.7.4/http_parser/__init__.py
new/http-parser-0.7.5/http_parser/__init__.py
--- old/http-parser-0.7.4/http_parser/__init__.py 2012-01-31
10:18:23.000000000 +0100
+++ new/http-parser-0.7.5/http_parser/__init__.py 2012-02-28
11:25:40.000000000 +0100
@@ -3,5 +3,5 @@
# This file is part of http_parser released under the MIT license.
# See the NOTICE for more information.
-version_info = (0, 7, 4)
+version_info = (0, 7, 5)
__version__ = ".".join(map(str, version_info))
Files old/http-parser-0.7.4/http_parser/__init__.pyc and
new/http-parser-0.7.5/http_parser/__init__.pyc differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/http-parser-0.7.4/http_parser/parser.c
new/http-parser-0.7.5/http_parser/parser.c
--- old/http-parser-0.7.4/http_parser/parser.c 2012-01-25 23:28:37.000000000
+0100
+++ new/http-parser-0.7.5/http_parser/parser.c 2012-02-28 11:20:33.000000000
+0100
@@ -1,4 +1,4 @@
-/* Generated by Cython 0.15.1 on Wed Jan 25 14:28:37 2012 */
+/* Generated by Cython 0.15.1 on Tue Feb 28 11:20:33 2012 */
#define PY_SSIZE_T_CLEAN
#include "Python.h"
@@ -673,7 +673,7 @@
static PyObject *__pyx_builtin_object;
static PyObject *__pyx_builtin_map;
static char __pyx_k_1[] = "";
-static char __pyx_k_2[] = "%s,%s";
+static char __pyx_k_2[] = "%s, %s";
static char __pyx_k_3[] = "HTTP_%s";
static char __pyx_k_4[] = "-";
static char __pyx_k_6[] = "content-encoding";
@@ -1109,7 +1109,7 @@
* header_value = bytes_to_str(PyBytes_FromStringAndSize(at, length))
*
* if res._last_field in res.headers: # <<<<<<<<<<<<<<
- * header_value = "%s,%s" % (res.headers[res._last_field],
+ * header_value = "%s, %s" % (res.headers[res._last_field],
* header_value)
*/
__pyx_t_2 = PyObject_GetAttr(__pyx_v_res, __pyx_n_s___last_field); if
(unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88;
__pyx_clineno = __LINE__; goto __pyx_L1_error;}
@@ -1124,7 +1124,7 @@
/* "http_parser/parser.pyx":89
*
* if res._last_field in res.headers:
- * header_value = "%s,%s" % (res.headers[res._last_field],
# <<<<<<<<<<<<<<
+ * header_value = "%s, %s" % (res.headers[res._last_field],
# <<<<<<<<<<<<<<
* header_value)
*
*/
@@ -1139,7 +1139,7 @@
/* "http_parser/parser.pyx":90
* if res._last_field in res.headers:
- * header_value = "%s,%s" % (res.headers[res._last_field],
+ * header_value = "%s, %s" % (res.headers[res._last_field],
* header_value) # <<<<<<<<<<<<<<
*
* # update wsgi environ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/http-parser-0.7.4/http_parser/parser.pyx
new/http-parser-0.7.5/http_parser/parser.pyx
--- old/http-parser-0.7.4/http_parser/parser.pyx 2012-01-25
23:28:29.000000000 +0100
+++ new/http-parser-0.7.5/http_parser/parser.pyx 2012-02-28
10:46:02.000000000 +0100
@@ -86,7 +86,7 @@
header_value = bytes_to_str(PyBytes_FromStringAndSize(at, length))
if res._last_field in res.headers:
- header_value = "%s,%s" % (res.headers[res._last_field],
+ header_value = "%s, %s" % (res.headers[res._last_field],
header_value)
# update wsgi environ
Files old/http-parser-0.7.4/http_parser/parser.so and
new/http-parser-0.7.5/http_parser/parser.so differ
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/http-parser-0.7.4/http_parser/pyparser.py
new/http-parser-0.7.5/http_parser/pyparser.py
--- old/http-parser-0.7.4/http_parser/pyparser.py 2012-01-25
16:06:08.000000000 +0100
+++ new/http-parser-0.7.5/http_parser/pyparser.py 2012-02-28
10:44:36.000000000 +0100
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -
#
-# This file is part of http-parser released under the MIT license.
+# This file is part of http-parser released under the MIT license.
# See the NOTICE for more information.
import os
@@ -40,9 +40,9 @@
# errors vars
self.errno = None
self.errstr = ""
-
+
# protected variables
- self._buf = []
+ self._buf = []
self._version = None
self._method = None
self._status_code = None
@@ -104,7 +104,7 @@
if hkey in environ:
environ[key] = environ.pop(hkey)
- script_name = environ.get('HTTP_SCRIPT_NAME',
+ script_name = environ.get('HTTP_SCRIPT_NAME',
os.environ.get("SCRIPT_NAME", ""))
if script_name:
path_info = self._path.split(script_name, 1)[1]
@@ -120,7 +120,7 @@
environ['wsgi.url_scheme'] = "https"
else:
environ['wsgi.url_scheme'] = "http"
-
+
return environ
def recv_body(self):
@@ -151,7 +151,7 @@
return self._headers.get('connection', "") == "upgrade"
def is_headers_complete(self):
- """ return True if all headers have been parsed. """
+ """ return True if all headers have been parsed. """
return self.__on_headers_complete
def is_partial_body(self):
@@ -169,7 +169,7 @@
def is_chunked(self):
""" return True if Transfer-Encoding header value is chunked"""
return self._chunked
-
+
def should_keep_alive(self):
""" return True if the connection should be kept alive
"""
@@ -179,7 +179,7 @@
elif hconn == "keep-alive":
return True
return self._version == (1, 1)
-
+
def execute(self, data, length):
# end of body can be passed manually by putting a length of 0
@@ -200,7 +200,7 @@
self._buf.append(data[:idx])
first_line = bytes_to_str(b("").join(self._buf))
nb_parsed = nb_parsed + idx + 2
-
+
rest = data[idx+2:]
data = b("")
if self._parse_firstline(first_line):
@@ -219,7 +219,7 @@
return length
nb_parsed = nb_parsed + (len(to_parse) - ret)
except InvalidHeader, e:
- self.errno = INVALID_HEADER
+ self.errno = INVALID_HEADER
self.errstr = str(e)
return nb_parsed
elif not self.__on_message_complete:
@@ -266,18 +266,18 @@
bits = line.split(None, 1)
if len(bits) != 2:
raise InvalidRequestLine(line)
-
- # version
+
+ # version
matchv = VERSION_RE.match(bits[0])
if matchv is None:
raise InvalidRequestLine("Invalid HTTP version: %s" % bits[0])
self._version = (int(matchv.group(1)), int(matchv.group(2)))
-
+
# status
matchs = STATUS_RE.match(bits[1])
if matchs is None:
raise InvalidRequestLine("Invalid status %" % bits[1])
-
+
self._status = bits[1]
self._status_code = int(matchs.group(1))
self._reason = matchs.group(2)
@@ -298,7 +298,7 @@
self._path = parts.path or ""
self._query_string = parts.query or ""
self._fragment = parts.fragment or ""
-
+
# Version
match = VERSION_RE.match(bits[2])
if match is None:
@@ -312,7 +312,7 @@
"RAW_URI": self._url,
"REQUEST_METHOD": self._method,
"SERVER_PROTOCOL": bits[2]})
-
+
def _parse_headers(self, data):
idx = data.find(b("\r\n\r\n"))
if idx < 0: # we don't have all headers
@@ -321,7 +321,7 @@
# Split lines on \r\n keeping the \r\n on each line
lines = [bytes_to_str(line) + "\r\n" for line in
data[:idx].split(b("\r\n"))]
-
+
# Parse headers into key/value pairs paying attention
# to continuation lines.
while len(lines):
@@ -334,15 +334,15 @@
if HEADER_RE.search(name):
raise InvalidHeader("invalid header name %s" % name)
name, value = name.strip(), [value.lstrip()]
-
+
# Consume value continuation lines
while len(lines) and lines[0].startswith((" ", "\t")):
value.append(lines.pop(0))
value = ''.join(value).rstrip()
-
+
# multiple headers
if name in self._headers:
- value = "%s,%s" % (self._headers[name], value)
+ value = "%s, %s" % (self._headers[name], value)
# store new header value
self._headers[name] = value
@@ -365,13 +365,13 @@
if not self._chunked:
self._clen_rest = sys.maxint
- # detect encoding and set decompress object
+ # detect encoding and set decompress object
encoding = self._headers.get('content-encoding')
if encoding == "gzip":
self.__decompress_obj = zlib.decompressobj(16+zlib.MAX_WBITS)
elif encoding == "deflate":
self.__decompress_obj = zlib.decompressobj()
-
+
rest = data[idx+4:]
self._buf = [rest]
self.__on_headers_complete = True
@@ -392,7 +392,7 @@
if self._clen_rest <= 0:
self.__on_message_complete = True
- return
+ return
else:
data = b("").join(self._buf)
try:
@@ -408,7 +408,7 @@
if size is None or len(rest) < size:
return None
-
+
body_part, rest = rest[:size], rest[size:]
if len(rest) < 2:
--
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]