[Piuparts-commits] [SCM] piuparts git repository branch, piatti, updated. 0.45-75-g5fca52d
Andreas Beckmann
debian at abeckmann.de
Thu Jul 26 12:13:21 UTC 2012
The following commit has been merged in the piatti branch:
commit 5e83952edf5b3d097c558c1ff2a6d456b5a05331
Author: Andreas Beckmann <debian at abeckmann.de>
Date: Thu Jul 5 14:56:00 2012 +0200
lib/parser: correctly parse ':any' qualified packages
package names may now have a ":any" qualification, that needs to be
parsed and discarded
Signed-off-by: Andreas Beckmann <debian at abeckmann.de>
diff --git a/debian/changelog b/debian/changelog
index 494bc73..1b67177 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -7,6 +7,9 @@ piuparts (0.46) UNRELEASED; urgency=low
* piuparts.py:
- Add to ignored_files:
+ /var/lib/cdebconf/{questions,templates}.dat-old
+ * piupartslib/dependencyparser.py:
+ - Package names may now have a ":any" qualification in some cases. Extend
+ the parser to recognize and discard this suffix.
* piupartslib/packagesdb.py:
* piuparts-master.py:
- Accept and discard duplicate log submissions, preventing the slave from
diff --git a/piupartslib/dependencyparser.py b/piupartslib/dependencyparser.py
index f559ca8..786ae1d 100644
--- a/piupartslib/dependencyparser.py
+++ b/piupartslib/dependencyparser.py
@@ -152,7 +152,7 @@ class DependencyParser:
version-number ::= epoch? upstream-version debian-revision?
arch-restriction ::= "[" arch-name arch-name* "]" |
"[" "!" arch-name ("!" arch-name)* "]"
- package-name ::= alphanumeric name-char name-char*
+ package-name ::= alphanumeric name-char name-char* ":any"?
epoch ::= integer ":"
upstream-version ::= alphanumeric version-char*
-- policy says "should start with digit", but not all packages do
@@ -237,6 +237,7 @@ class DependencyParser:
return SimpleDependency(name, op, version, arch)
_name_pat = re.compile(r"[a-zA-Z0-9][a-zA-Z0-9+._-]+")
+ _any_suffix_pat = re.compile(r":any")
def _parse_package_name(self):
self._cursor.skip_whitespace()
@@ -246,6 +247,8 @@ class DependencyParser:
if not m:
raise DependencySyntaxError("Expected a package name",
self._cursor)
+ if self._cursor.match(self._any_suffix_pat):
+ pass
return m.group()
_op_pat = re.compile(r"(<<|<=|=|>=|>>|<(?![<=])|>(?![>=]))")
--
piuparts git repository
More information about the Piuparts-commits
mailing list