--- pym/getbinpkg.py.bak 2005-09-16 17:37:00.000000000 -0300 +++ pym/getbinpkg.py 2005-09-16 17:52:45.000000000 -0300 @@ -502,9 +502,11 @@ 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") + sys.stderr.write(yellow("cache miss: 'x'")+" --- "+green("cache hit: 'o'")+" --- "+red("removed from server: 'X'")+"\n") + base_tbz2list = [] for x in tbz2list: x = os.path.basename(x) + base_tbz2list.append(x) if ((not metadata[baseurl]["data"].has_key(x)) or \ (x not in metadata[baseurl]["data"].keys())): sys.stderr.write(yellow("x")) @@ -517,6 +519,16 @@ sys.stderr.write(red("!!! Failed to retrieve metadata on: ")+str(x)+"\n") else: sys.stderr.write(green("o")) + # Now remove local cache that isn't anymore in server. + del_cachelist = [] + for x in metadata[baseurl]["data"]: + if (x not in base_tbz2list): + del_cachelist.append(x) + sys.stderr.write(red("X")) + for x in del_cachelist: + del metadata[baseurl]["data"][x] + del del_cachelist + del base_tbz2list sys.stderr.write("\n") try: