drop patch for old Deb822 (Closes: #919864)

上级 84b08b0f
...@@ -46,6 +46,7 @@ import subprocess ...@@ -46,6 +46,7 @@ import subprocess
import traceback import traceback
from datetime import datetime, timedelta from datetime import datetime, timedelta
from debian.debfile import Deb822
from errno import ENOENT from errno import ENOENT
from tempfile import mkstemp, mkdtemp from tempfile import mkstemp, mkdtemp
from tarfile import TarFile from tarfile import TarFile
...@@ -1536,62 +1537,6 @@ __all__.append('SrcContents') ...@@ -1536,62 +1537,6 @@ __all__.append('SrcContents')
################################################################################ ################################################################################
from debian.debfile import Deb822
# Temporary Deb822 subclass to fix bugs with : handling; see #597249
class Dak822(Deb822):
def _internal_parser(self, sequence, fields=None):
# The key is non-whitespace, non-colon characters before any colon.
key_part = r"^(?P<key>[^: \t\n\r\f\v]+)\s*:\s*"
single = re.compile(key_part + r"(?P<data>\S.*?)\s*$")
multi = re.compile(key_part + r"$")
multidata = re.compile(r"^\s(?P<data>.+?)\s*$")
wanted_field = lambda f: fields is None or f in fields
if isinstance(sequence, basestring):
sequence = sequence.splitlines()
curkey = None
content = ""
for line in self.gpg_stripped_paragraph(sequence):
m = single.match(line)
if m:
if curkey:
self[curkey] = content
if not wanted_field(m.group('key')):
curkey = None
continue
curkey = m.group('key')
content = m.group('data')
continue
m = multi.match(line)
if m:
if curkey:
self[curkey] = content
if not wanted_field(m.group('key')):
curkey = None
continue
curkey = m.group('key')
content = ""
continue
m = multidata.match(line)
if m:
content += '\n' + line # XXX not m.group('data')?
continue
if curkey:
self[curkey] = content
class DBSource(ORMObject): class DBSource(ORMObject):
def __init__(self, source=None, version=None, maintainer=None, def __init__(self, source=None, version=None, maintainer=None,
changedby=None, poolfile=None, install_date=None, fingerprint=None): changedby=None, poolfile=None, install_date=None, fingerprint=None):
...@@ -1620,7 +1565,7 @@ class DBSource(ORMObject): ...@@ -1620,7 +1565,7 @@ class DBSource(ORMObject):
@return: fields is the dsc information in a dictionary form @return: fields is the dsc information in a dictionary form
''' '''
fullpath = self.poolfile.fullpath fullpath = self.poolfile.fullpath
fields = Dak822(open(self.poolfile.fullpath, 'r')) fields = Deb822(open(self.poolfile.fullpath, 'r'))
return fields return fields
metadata = association_proxy('key', 'value') metadata = association_proxy('key', 'value')
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册