def distro(request, distro): packages = map(PackageHistory, groups.get_group("twenty")) now = datetime.datetime.now() s = DataStats() data = [] for branch in ["future", "current", "past"]: try: h = DistroHistory(distro, packages, branch, now=now) except UnknownDistroError: return render_to_response('unknown_distro.html', {"stats": s, "name" : distro } ) if h.codename == None: h.codename = "" data.append((branch.capitalize(), h.codename.capitalize(), h.snapshot_all_metrics())) return render_to_response('distro.html', {"stats": s, "name": distro, "data": data, "True": True, "zero": 0 } )
def update(self, cache=None): if cache == None: cache = Cache() pkgs = groups.get_group("twenty") upstream = map(history.PackageHistory, pkgs) distros = downstream.list_distros() distros = map(lambda x: history.DistroHistory(x,upstream,self.branch), distros) results = [] for distro in distros: current_obs = distro.get_obsoletion_timeline()[-1] current_obs_count = distro.get_obsoletion_count_timeline()[-1] current_lag = distro.get_lag_timeline()[-1] results.append({"name":distro.name, "codename":distro.codename, "obs":current_obs, "count":current_obs_count, "lag":current_lag}) self.distros = results self.distros.sort(key=lambda x: x["obs"]) cache.put("/distro_ranks/"+self.branch, (self.distros,), [(None, None)])
def home(request, user): vals = {} vals['user'] = user vals['stats'] = DataStats() vals["crawl_stats"] = sidebar() now = datetime.datetime.now() week_ago = now - datetime.timedelta(days=7) timeline = Timeline() group = groups.get_group(".tracked") print group histories = [] for pkg in group: hist = PackageHistory(pkg) histories.append(hist) for date in hist.timeline[week_ago:]: timeline[date] = (None, pkg, hist.timeline[date]) distro = DistroHistory('gentoo', histories) for p in group: downstream = distro.get_pkg(p)[week_ago:] for date in downstream: timeline[date] = (distro.name, date.time(), pkg, downstream[date]) feed = [["Today",[]], ["Yesterday",[]]] for i in range(2,7): day = now - datetime.timedelta(i) feed.append([day.strftime("%A"), []]) for date in timeline: feed[(now.date() - date.date()).days][1].append(timeline[date]) print feed map(lambda x: x[1].reverse(), feed) vals["release_feed"] = feed return render_to_response('home.html', vals)
def distro(request, distro): packages = map(PackageHistory, groups.get_group("twenty")) now = datetime.datetime.now() vals = {} vals["stats"] = DataStats() vals["user"] = maybe_login(request) vals["True"] = True vals["zero"] = 0 vals["name"] = distro data = [] for branch in ["future", "current", "past"]: try: h = DistroHistory(distro, packages, branch, now=now) except UnknownDistroError: return render_to_response('unknown_distro.html', {"stats": s, "name" : distro } ) if h.codename == None: h.codename = "" data.append((branch.capitalize(), h.codename.capitalize(), h.snapshot_all_metrics())) vals["data"] = data return render_to_response('distro.html', vals)
# -*- coding: utf-8 -*- import sys sys.path.append(".") from utils.db import groups if len(sys.argv)==1: print sys.argv[0],"<cmd>","[opts]" print "list" print "list <group>" print "create <name>" print "delete <name>" print "add_to <group> <package>" elif sys.argv[1]=="list" and len(sys.argv)==2: gs = groups.list_groups() for group in gs: print group elif sys.argv[1]=="list": pkgs = groups.get_group(sys.argv[2]) for p in pkgs: print p elif sys.argv[1]=="create": print "new group id:",groups.create_group(sys.argv[2]) elif sys.argv[1]=="delete": groups.delete_group(sys.argv[2]) elif sys.argv[1]=="add_to": groups.add_to_group(sys.argv[3], sys.argv[2]) print "done"
# -*- coding: utf-8 -*- import sys sys.path.append(".") from utils.db import groups if len(sys.argv) == 1: print sys.argv[0], "<cmd>", "[opts]" print "list" print "list <group>" print "create <name>" print "delete <name>" print "add_to <group> <package>" elif sys.argv[1] == "list" and len(sys.argv) == 2: gs = groups.list_groups() for group in gs: print group elif sys.argv[1] == "list": pkgs = groups.get_group(sys.argv[2]) for p in pkgs: print p elif sys.argv[1] == "create": print "new group id:", groups.create_group(sys.argv[2]) elif sys.argv[1] == "delete": groups.delete_group(sys.argv[2]) elif sys.argv[1] == "add_to": groups.add_to_group(sys.argv[3], sys.argv[2]) print "done"