Bug#733489: [PATCH] Added rawtype property to Dependency class.
This change also includes changes to the constructor of the Dependency class
and the Version.get_dependencies method to use a common terminology.
---
apt/package.py | 21 +++++++++++++++++----
1 file changed, 17 insertions(+), 4 deletions(-)
diff --git a/apt/package.py b/apt/package.py
index 1bc73c8..3efd095 100644
--- a/apt/package.py
+++ b/apt/package.py
@@ -153,14 +153,27 @@ class Dependency(list):
or_dependencies - The possible choices
"""
- def __init__(self, alternatives):
- super(Dependency, self).__init__()
- self.extend(alternatives)
+ def __init__(self, base_deps, rawtype):
+ super(Dependency, self).__init__(base_deps)
+ self._rawtype = rawtype
@property
def or_dependencies(self):
return self
+ @property
+ def rawtype(self):
+ """Type of the Or-group of dependency.
+
+ This should be one of 'Breaks', 'Conflicts', 'Depends', 'Enhances',
+ 'PreDepends', 'Recommends', 'Replaces', 'Suggests'.
+
+ Additional types might be added in the future.
+
+ .. versionadded:: 0.9.4
+ """
+ return self._rawtype
+
class Origin(object):
"""The origin of a version.
@@ -473,7 +486,7 @@ class Version(object):
base_deps = []
for dep_or in dep_ver_list:
base_deps.append(BaseDependency(dep_or))
- depends_list.append(Dependency(base_deps))
+ depends_list.append(Dependency(base_deps, type_))
except KeyError:
pass
return depends_list
--
1.8.3.2
Reply to: