From 1b5b026c1013dc20b572a7fd2a690fe451248ab0 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Tue, 5 May 2009 11:59:53 +0200 Subject: * apt/progress/__init__.py: - add update_status_full() that takes file_size/partial_size as additional callback arguments - add pulse_items() that takes a addtional "items" tuple that gives the user full access to the individual items that are fetched * python/progress.cc: - low level code for update_status_full and pulse_items() --- debian/changelog | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'debian') diff --git a/debian/changelog b/debian/changelog index 83b00150..a3faab79 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,17 @@ +python-apt (0.7.10.4) UNRELEASED; urgency=low + + [ Stephan Peijnik ] + * apt/progress/__init__.py: + - add update_status_full() that takes file_size/partial_size as + additional callback arguments + - add pulse_items() that takes a addtional "items" tuple that + gives the user full access to the individual items that are + fetched + * python/progress.cc: + - low level code for update_status_full and pulse_items() + + -- Michael Vogt Tue, 05 May 2009 11:57:57 +0200 + python-apt (0.7.10.3) unstable; urgency=low * apt/package.py: Handle cases where no candidate is available, by returning -- cgit v1.2.3 From 1928a8fab432b219c6286ff08b142c57c6df5e6b Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Mon, 15 Jun 2009 10:56:01 +0200 Subject: * python/progress.cc: - fix crash in RunSimpleCallback() * apt/cache.py: - when the cache is run with a alternative rootdir, create required dirs/files automatically --- apt/cache.py | 25 +++++++++++++++++++++++++ debian/changelog | 5 +++++ python/progress.cc | 5 ++++- 3 files changed, 34 insertions(+), 1 deletion(-) (limited to 'debian') diff --git a/apt/cache.py b/apt/cache.py index cc425ccb..94a77fd8 100644 --- a/apt/cache.py +++ b/apt/cache.py @@ -60,8 +60,33 @@ class Cache(object): apt_pkg.Config.Set("Dir", rootdir) apt_pkg.Config.Set("Dir::State::status", rootdir + "/var/lib/dpkg/status") + # create required dirs/files when run with special rootdir + # automatically + self._check_and_create_required_dirs(rootdir) self.open(progress) + def _check_and_create_required_dirs(self, rootdir): + """ + check if the required apt directories/files are there and if + not create them + """ + files = ["/var/lib/dpkg/status", + "/etc/apt/sources.list", + ] + dirs = ["/var/lib/dpkg", + "/etc/apt/", + "/var/cache/apt/archives/partial", + "/var/lib/apt/lists/partial", + ] + for d in dirs: + if not os.path.exists(rootdir+d): + print "creating: ",rootdir+d + os.makedirs(rootdir+d) + for f in files: + if not os.path.exists(rootdir+f): + open(rootdir+f,"w") + + def _runCallbacks(self, name): """ internal helper to run a callback """ if name in self._callbacks: diff --git a/debian/changelog b/debian/changelog index a3faab79..0f9463b2 100644 --- a/debian/changelog +++ b/debian/changelog @@ -99,8 +99,13 @@ python-apt (0.7.9) unstable; urgency=low closes: #497049 * apt/package.py: - avoid uneeded interal references in the Package objects + * python/progress.cc: + - fix crash in RunSimpleCallback() * aptsources/sourceslist.py: - fix bug in invalid lines detection (LP: #324614) + * apt/cache.py: + - when the cache is run with a alternative rootdir, create + required dirs/files automatically -- Michael Vogt Thu, 19 Mar 2009 13:39:21 +0100 diff --git a/python/progress.cc b/python/progress.cc index 14948d3c..95cece3b 100644 --- a/python/progress.cc +++ b/python/progress.cc @@ -27,9 +27,12 @@ bool PyCallbackObj::RunSimpleCallback(const char* method_name, PyObject *method = PyObject_GetAttrString(callbackInst,(char*) method_name); if(method == NULL) { - // FIXME: make this silent //std::cerr << "Can't find '" << method_name << "' method" << std::endl; Py_XDECREF(arglist); + if (res) { + Py_INCREF(Py_None); + *res = Py_None; + } return false; } PyObject *result = PyEval_CallObject(method, arglist); -- cgit v1.2.3 From d28170024ef4d2f01fd9096a3ec785cf424c0846 Mon Sep 17 00:00:00 2001 From: Stephan Peijnik Date: Tue, 7 Jul 2009 18:44:10 +0200 Subject: Removed separate way of defining Py_ssize_t in progress.h. Now using method present in generic.h in progress.cc. --- debian/changelog | 2 +- python/progress.cc | 1 + python/progress.h | 6 ------ 3 files changed, 2 insertions(+), 7 deletions(-) (limited to 'debian') diff --git a/debian/changelog b/debian/changelog index db6204ba..ce96cc9e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,4 +1,4 @@ -python-apt (0.7.10.4) UNRELEASED; urgency=low +python-apt (0.7.11.0) UNRELEASED; urgency=low [ Stephan Peijnik ] * apt/progress/__init__.py: diff --git a/python/progress.cc b/python/progress.cc index cbb49671..94debe40 100644 --- a/python/progress.cc +++ b/python/progress.cc @@ -13,6 +13,7 @@ #include #include #include +#include "generic.h" #include "progress.h" // generic diff --git a/python/progress.h b/python/progress.h index 659eb113..29243bfc 100644 --- a/python/progress.h +++ b/python/progress.h @@ -15,12 +15,6 @@ #include #include -/* Python 2.4 compatibility */ -#if (PY_VERSION_HEX < 0x02050000) -typedef int Py_ssize_t; -#endif - - /* PyCbObj_BEGIN_ALLOW_THREADS and PyCbObj_END_ALLOW_THREADS are sligthly * modified versions of Py_BEGIN_ALLOW_THREADS and Py_END_ALLOW_THREADS. * Instead of storing the thread state in a function-local variable these -- cgit v1.2.3 From d445714639596ac57d4dfeb44eb6ca69fbea8190 Mon Sep 17 00:00:00 2001 From: Michael Vogt Date: Mon, 13 Jul 2009 14:51:21 +0200 Subject: * aptsources/distro.py: - fix indent error that causes incorrect sources.list additons (LP: #372224) --- aptsources/distro.py | 4 ++-- debian/changelog | 5 +++++ 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'debian') diff --git a/aptsources/distro.py b/aptsources/distro.py index bbb8ba50..5398d4a3 100644 --- a/aptsources/distro.py +++ b/aptsources/distro.py @@ -319,12 +319,12 @@ class Distribution: if s.type == self.binary_type: if s.dist not in comps_per_dist: comps_per_dist[s.dist] = set() - map(comps_per_dist[s.dist].add, s.comps) + map(comps_per_dist[s.dist].add, s.comps) for s in self.source_code_sources: if s.type == self.source_type: if s.dist not in comps_per_sdist: comps_per_sdist[s.dist] = set() - map(comps_per_sdist[s.dist].add, s.comps) + map(comps_per_sdist[s.dist].add, s.comps) # check if there is a main source at all if len(self.main_sources) < 1: diff --git a/debian/changelog b/debian/changelog index db6204ba..cb1c932e 100644 --- a/debian/changelog +++ b/debian/changelog @@ -10,6 +10,11 @@ python-apt (0.7.10.4) UNRELEASED; urgency=low * python/progress.cc: - low level code for update_status_full and pulse_items() - better threading support + + [ Michael Vogt ] + * aptsources/distro.py: + - fix indent error that causes incorrect sources.list additons + (LP: #372224) -- Michael Vogt Tue, 05 May 2009 11:57:57 +0200 -- cgit v1.2.3