euscanwww: charts, about, etc...
Signed-off-by: Corentin Chary <corentincj@iksaif.net>
This commit is contained in:
		@@ -62,7 +62,7 @@ class Command(BaseCommand):
 | 
			
		||||
 | 
			
		||||
	matches = sorted(matches)
 | 
			
		||||
        pkg = matches.pop()
 | 
			
		||||
	if pkg.version == '9999' and len(matches):
 | 
			
		||||
	if '9999' in pkg.version and len(matches):
 | 
			
		||||
		pkg = matches.pop()
 | 
			
		||||
 | 
			
		||||
        obj, created = Package.objects.get_or_create(category=pkg.category, name=pkg.name)
 | 
			
		||||
 
 | 
			
		||||
@@ -103,14 +103,14 @@ class Command(BaseCommand):
 | 
			
		||||
            slot = match.group('slot')
 | 
			
		||||
            overlay = match.group('overlay')
 | 
			
		||||
 | 
			
		||||
            if not package or not cpv.startswith(str(package)):
 | 
			
		||||
                package = self.store_package(options, cpv)
 | 
			
		||||
            cat, pkg, ver, rev = portage.catpkgsplit(cpv)
 | 
			
		||||
 | 
			
		||||
            if not package or not (cat == package.category and pkg == package.name):
 | 
			
		||||
                package = self.store_package(options, cat, pkg)
 | 
			
		||||
 | 
			
		||||
            self.store_version(options, package, cpv, slot, overlay)
 | 
			
		||||
 | 
			
		||||
    def store_package(self, options, cpv):
 | 
			
		||||
        cat, pkg, ver, rev = portage.catpkgsplit(cpv)
 | 
			
		||||
 | 
			
		||||
    def store_package(self, options, cat, pkg):
 | 
			
		||||
        obj, created = Package.objects.get_or_create(category=cat, name=pkg)
 | 
			
		||||
 | 
			
		||||
        if created:
 | 
			
		||||
@@ -121,6 +121,7 @@ class Command(BaseCommand):
 | 
			
		||||
        Version.objects.filter(package=obj, packaged=True).delete()
 | 
			
		||||
 | 
			
		||||
        obj.n_packaged = 0
 | 
			
		||||
        obj.n_overlay = 0
 | 
			
		||||
        obj.n_versions = Version.objects.filter(package=obj).count()
 | 
			
		||||
        obj.save()
 | 
			
		||||
 | 
			
		||||
@@ -144,7 +145,10 @@ class Command(BaseCommand):
 | 
			
		||||
                                                     overlay=overlay)
 | 
			
		||||
 | 
			
		||||
        if created or not package.n_packaged:
 | 
			
		||||
            package.n_packaged += 1
 | 
			
		||||
            if overlay == 'gentoo':
 | 
			
		||||
                package.n_packaged += 1
 | 
			
		||||
            else:
 | 
			
		||||
                package.n_overlay += 1
 | 
			
		||||
        if created:
 | 
			
		||||
            package.n_versions += 1
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -51,40 +51,44 @@ class Command(BaseCommand):
 | 
			
		||||
        for package in Package.objects.all():
 | 
			
		||||
            # Should not be needed, but can't hurt
 | 
			
		||||
            package.n_versions = Version.objects.filter(package=package).count()
 | 
			
		||||
            package.n_packaged != Version.objects.filter(package=package,packaged=True).count()
 | 
			
		||||
            package.n_packaged = Version.objects.filter(package=package, packaged=True, overlay='gentoo').count()
 | 
			
		||||
            package.n_overlay = Version.objects.filter(package=package, packaged=True).exclude(overlay='gentoo').count()
 | 
			
		||||
            package.save()
 | 
			
		||||
 | 
			
		||||
            for herd in package.herds.all():
 | 
			
		||||
                herds[herd].n_packages += 1
 | 
			
		||||
                herds[herd].n_versions += package.n_versions
 | 
			
		||||
                herds[herd].n_packaged += package.n_packaged
 | 
			
		||||
                herds[herd].n_overlay += package.n_overlay
 | 
			
		||||
 | 
			
		||||
            for maintainer in package.maintainers.all():
 | 
			
		||||
                maintainers[maintainer].n_packages += 1
 | 
			
		||||
                maintainers[maintainer].n_versions += package.n_versions
 | 
			
		||||
                maintainers[maintainer].n_packaged += package.n_packaged
 | 
			
		||||
                maintainers[maintainer].n_overlay += package.n_overlay
 | 
			
		||||
 | 
			
		||||
            categories[package.category].n_packages += 1
 | 
			
		||||
            categories[package.category].n_versions += package.n_versions
 | 
			
		||||
            categories[package.category].n_packaged += package.n_packaged
 | 
			
		||||
            categories[package.category].n_overlay += package.n_overlay
 | 
			
		||||
 | 
			
		||||
        for clog in categories.values():
 | 
			
		||||
            if not options['quiet']:
 | 
			
		||||
                self.stdout.write('[c] %s - [%d, %d/%d]\n' %
 | 
			
		||||
                self.stdout.write('[c] %s - [%d, %d/%d/%d]\n' %
 | 
			
		||||
                                  (clog.category, clog.n_packages,
 | 
			
		||||
                                   clog.n_packaged, clog.n_versions))
 | 
			
		||||
                                   clog.n_packaged, clog.n_overlay, clog.n_versions))
 | 
			
		||||
            clog.save()
 | 
			
		||||
 | 
			
		||||
        for hlog in herds.values():
 | 
			
		||||
            if not options['quiet']:
 | 
			
		||||
                self.stdout.write('[h] %s - [%d, %d/%d]\n' %
 | 
			
		||||
                self.stdout.write('[h] %s - [%d, %d/%d/%d]\n' %
 | 
			
		||||
                                  (hlog.herd, hlog.n_packages,
 | 
			
		||||
                                   hlog.n_packaged, hlog.n_versions))
 | 
			
		||||
                                   hlog.n_packaged, hlog.n_overlay, hlog.n_versions))
 | 
			
		||||
            hlog.save()
 | 
			
		||||
 | 
			
		||||
        for mlog in maintainers.values():
 | 
			
		||||
            if not options['quiet']:
 | 
			
		||||
                self.stdout.write('[m] %s - [%d, %d/%d]\n' %
 | 
			
		||||
                self.stdout.write('[m] %s - [%d, %d/%d/%d]\n' %
 | 
			
		||||
                                  (mlog.maintainer, mlog.n_packages,
 | 
			
		||||
                                   mlog.n_packaged, mlog.n_versions))
 | 
			
		||||
                                   mlog.n_packaged, mlog.n_overlay, mlog.n_versions))
 | 
			
		||||
            mlog.save()
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user