summaryrefslogtreecommitdiffstats
path: root/pym/portage/getbinpkg.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-08-22 04:05:38 +0000
committerZac Medico <zmedico@gentoo.org>2007-08-22 04:05:38 +0000
commit213d6dffe3ee2083b9435cbbde659d04afb9b691 (patch)
treea94259a081baaeb55b7c3cb91c1162b3d55eaae8 /pym/portage/getbinpkg.py
parent29477a8f8bdf972fbe854ce019d6f85f07f3777e (diff)
downloadportage-213d6dffe3ee2083b9435cbbde659d04afb9b691.tar.gz
portage-213d6dffe3ee2083b9435cbbde659d04afb9b691.tar.bz2
portage-213d6dffe3ee2083b9435cbbde659d04afb9b691.zip
Show cache miss/hit counts all on one line, using \r to return to the beginning of he line and rewrite it each time that a counter is updated. Thanks to Mike "Fuzzy" Partin <fuzzy@smoke.dope.org> for this patch (submitted on the gentoo-portage-dev mailing list).
svn path=/main/trunk/; revision=7655
Diffstat (limited to 'pym/portage/getbinpkg.py')
-rw-r--r--pym/portage/getbinpkg.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/pym/portage/getbinpkg.py b/pym/portage/getbinpkg.py
index 6e0ab5168..8ca6642d2 100644
--- a/pym/portage/getbinpkg.py
+++ b/pym/portage/getbinpkg.py
@@ -541,13 +541,17 @@ def dir_get_metadata(baseurl, conn=None, chunk_size=3000, verbose=1, usingcache=
sys.stderr.write("!!! "+str(e)+"\n")
break
# We may have metadata... now we run through the tbz2 list and check.
- sys.stderr.write(yellow("cache miss: 'x'")+" --- "+green("cache hit: 'o'")+"\n")
+ ext_miss = 0
+ ext_hit = 0
+ sys.stderr.write(yellow("cache miss: '"+str(ext_miss)+"'")+" --- "+green("cache hit: '"+str(ext_hit)+"'"))
binpkg_filenames = set()
for x in tbz2list:
x = os.path.basename(x)
binpkg_filenames.add(x)
if x not in metadata[baseurl]["data"]:
- sys.stderr.write(yellow("x"))
+ ext_miss += 1
+ sys.stderr.write("\r"+yellow("cache miss: '"+str(ext_miss)+"'")+" --- "+green("cache hit: '"+str(ext_hit)+"'"))
+ sys.stderr.flush()
metadata[baseurl]["modified"] = 1
myid = None
for retry in xrange(3):
@@ -569,7 +573,9 @@ def dir_get_metadata(baseurl, conn=None, chunk_size=3000, verbose=1, usingcache=
elif verbose:
sys.stderr.write(red("!!! Failed to retrieve metadata on: ")+str(x)+"\n")
else:
- sys.stderr.write(green("o"))
+ ext_hit += 1
+ sys.stderr.write("\r"+yellow("cache miss: '"+str(ext_miss)+"'")+" --- "+green("cache hit: '"+str(ext_hit)+"'"))
+ sys.stderr.flush()
# Cleanse stale cache for files that don't exist on the server anymore.
stale_cache = set(metadata[baseurl]["data"]).difference(binpkg_filenames)
if stale_cache: