diff options
author | Guido Günther <agx@sigxcpu.org> | 2016-06-30 10:57:43 +0200 |
---|---|---|
committer | Guido Günther <agx@sigxcpu.org> | 2016-06-30 11:17:55 +0200 |
commit | 7a6641a7b417abeca9cad41538103cbd0f251db8 (patch) | |
tree | 3c28a77b04544843490ae862d76b109bdea27d1c /gbp | |
parent | 4e9479d508a69cef1c3ac3313c0a2239b3e1f835 (diff) |
import-dsc: Don't fail on 1.0 non-native packages without a Debian version
Closes: #829070
Diffstat (limited to 'gbp')
-rw-r--r-- | gbp/deb/dscfile.py | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/gbp/deb/dscfile.py b/gbp/deb/dscfile.py index 16133b44..e64cf565 100644 --- a/gbp/deb/dscfile.py +++ b/gbp/deb/dscfile.py @@ -97,14 +97,19 @@ class DscFile(object): continue f.close() + # Source format 1.0 can have non-native packages without a Debian revision: + # e.g. http://snapshot.debian.org/archive/debian/20090801T192339Z/pool/main/l/latencytop/latencytop_0.5.dsc + if self.pkgformat == "1.0" and self.diff: + self.native = False + elif not self.native and not self.debian_version: + raise GbpError("Cannot parse Debian version number from '%s'" % self.dscfile) + if not self.pkg: raise GbpError("Cannot parse package name from '%s'" % self.dscfile) elif not self.tgz: raise GbpError("Cannot parse archive name from '%s'" % self.dscfile) if not self.upstream_version: raise GbpError("Cannot parse version number from '%s'" % self.dscfile) - if not self.native and not self.debian_version: - raise GbpError("Cannot parse Debian version number from '%s'" % self.dscfile) self.additional_tarballs = dict(add_tars) def _get_version(self): @@ -112,7 +117,10 @@ class DscFile(object): if self.native: version += self.upstream_version else: - version += "%s-%s" % (self.upstream_version, self.debian_version) + if self.debian_version != '': + version += "%s-%s" % (self.upstream_version, self.debian_version) + else: # possible in 1.0 + version += "%s" % self.upstream_version return version version = property(_get_version) |