diff options
| author | Michael Vogt <michael.vogt@ubuntu.com> | 2010-01-13 14:36:58 +0100 |
|---|---|---|
| committer | Michael Vogt <michael.vogt@ubuntu.com> | 2010-01-13 14:36:58 +0100 |
| commit | 71aad7e28bbaf1ee8efdad77ebfb4e4c0fd0ec26 (patch) | |
| tree | 4db1908b3d8d4896d39b7788488f2bfb141e138f /python | |
| parent | 469ac5b1a7c069d3822bd36cb74958ce3de19c87 (diff) | |
| parent | 1da29f8e4e578e00e5703a7db7dc8e8d3c7a08bd (diff) | |
| download | python-apt-71aad7e28bbaf1ee8efdad77ebfb4e4c0fd0ec26.tar.gz | |
* apt/progress/__init__.py:
- Fix InstallProgress.updateInterface() to cope with read() returning 0
on non-blocking file descriptors (LP: #491027).
* apt/cache.py:
- improved docstring for the cache
- add "enhances" property
* data/templates/Ubuntu.info.in:
- add lucid
* python/cache.cc:
- add UntranslatedDepType attribute to DependencyType
- add DepTypeEnum that returns a value from
{DepDepends, DepPreDepends, ...}
* python/apt_pkgmodule.cc:
- add DepDpkgBreaks, DepEnhances constants
* doc/source/apt_pkg/{cache.rst, index.rst}:
- update documentation as well
Diffstat (limited to 'python')
| -rw-r--r-- | python/apt_pkgmodule.cc | 2 | ||||
| -rw-r--r-- | python/cache.cc | 27 |
2 files changed, 18 insertions, 11 deletions
diff --git a/python/apt_pkgmodule.cc b/python/apt_pkgmodule.cc index 86732781..bfa1227e 100644 --- a/python/apt_pkgmodule.cc +++ b/python/apt_pkgmodule.cc @@ -504,6 +504,8 @@ extern "C" void initapt_pkg() AddInt(Dict,"DepConflicts",pkgCache::Dep::Conflicts); AddInt(Dict,"DepReplaces",pkgCache::Dep::Replaces); AddInt(Dict,"DepObsoletes",pkgCache::Dep::Obsoletes); + AddInt(Dict,"DepDpkgBreaks",pkgCache::Dep::DpkgBreaks); + AddInt(Dict,"DepEnhances",pkgCache::Dep::Enhances); AddInt(Dict,"PriImportant",pkgCache::State::Important); AddInt(Dict,"PriRequired",pkgCache::State::Required); diff --git a/python/cache.cc b/python/cache.cc index a88490bd..023cf041 100644 --- a/python/cache.cc +++ b/python/cache.cc @@ -27,6 +27,17 @@ class pkgSourceList; +// must be in sync with pkgCache::DepType in libapt +// it sucks to have it here duplicated, but we get it +// translated from libapt and that is certainly not what +// we want in a programing interface +const char *UntranslatedDepTypes[] = +{ + "", "Depends","PreDepends","Suggests", + "Recommends","Conflicts","Replaces", + "Obsoletes", "Breaks", "Enhances" +}; + /*}}}*/ struct PkgListStruct { @@ -495,17 +506,7 @@ static PyObject *MakeDepends(PyObject *Owner,pkgCache::VerIterator &Ver, // Switch/create a new dict entry if (LastDepType != Start->Type || LastDep != 0) { - // must be in sync with pkgCache::DepType in libapt - // it sucks to have it here duplicated, but we get it - // translated from libapt and that is certainly not what - // we want in a programing interface - const char *Types[] = - { - "", "Depends","PreDepends","Suggests", - "Recommends","Conflicts","Replaces", - "Obsoletes", "Breaks", "Enhances" - }; - PyObject *Dep = PyString_FromString(Types[Start->Type]); + PyObject *Dep = PyString_FromString(UntranslatedDepTypes[Start->Type]); LastDepType = Start->Type; LastDep = PyDict_GetItem(Dict,Dep); if (LastDep == 0) @@ -823,6 +824,10 @@ static PyObject *DependencyAttr(PyObject *Self,char *Name) return PyString_FromString(Dep.CompType()); else if (strcmp("DepType",Name) == 0) return PyString_FromString(Dep.DepType()); + else if (strcmp("UntranslatedDepType",Name) == 0) + return PyString_FromString(UntranslatedDepTypes[Dep->Type]); + else if (strcmp("DepTypeEnum",Name) == 0) + return Py_BuildValue("i", Dep->Type); else if (strcmp("ID",Name) == 0) return Py_BuildValue("i",Dep->ID); |
