diff options
| -rw-r--r-- | apt/package.py | 13 | ||||
| -rw-r--r-- | debian/changelog | 3 |
2 files changed, 14 insertions, 2 deletions
diff --git a/apt/package.py b/apt/package.py index 1a2626fa..411f9635 100644 --- a/apt/package.py +++ b/apt/package.py @@ -28,6 +28,11 @@ import socket import subprocess import urllib2 import warnings +try: + from collections import Mapping +except ImportError: + # (for Python < 2.6) pylint: disable-msg=C0103 + Mapping = object import apt_pkg import apt.progress @@ -145,7 +150,7 @@ class Origin(object): self.site, self.trusted) -class Record(object): +class Record(Mapping): """Represent a pkgRecord. It can be accessed like a dictionary and can also give the original package @@ -155,6 +160,9 @@ class Record(object): def __init__(self, record_str): self._rec = apt_pkg.ParseSection(record_str) + def __hash__(self): + return hash(self._rec) + def __str__(self): return str(self._rec) @@ -183,6 +191,9 @@ class Record(object): """deprecated form of ``key in x``.""" return key in self._rec + def __len__(self): + return len(self._rec) + class Version(object): """Representation of a package version. diff --git a/debian/changelog b/debian/changelog index e344c145..e8e14306 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,9 @@ python-apt (0.7.91) UNRELEASED; urgency=low * Rename all methods,functions,attributes to conform to PEP 8 (Closes: #481061) + * Where possible, derive apt.package.Record from collections.Mapping. - -- Julian Andres Klode <jak@debian.org> Thu, 16 Apr 2009 18:54:29 +0200 + -- Julian Andres Klode <jak@debian.org> Fri, 17 Apr 2009 17:48:27 +0200 python-apt (0.7.90) experimental; urgency=low |
