Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev <gentoo-dev@l.g.o>
Subject: [gentoo-dev] [RFC] Allowing pkgcheck as a replacement for repoman
Date: Mon, 09 Sep 2019 06:24:10
Message-Id: 5c96ec43b596a283da4e01cd241cfe412cbef589.camel@gentoo.org
Hi,

This is something I'd like to pass to the Council for the next meeting.

TL;DR: I'd like to allow using pkgcheck instead of repoman because it's
5-26 times faster and more convenient to use.


The current policy requires you to test your packages with repoman prior
to committing.  However, repoman is both pretty inconvenient, unreadable
and slow.  For example, for the cleanup of old versions in 4 packages I
have staged right now:

$ time sh -c '(for x in $(git diff --name-only origin | cut -d/ -f1-2 | uniq); do ( cd $x && repoman full -d ); done)'

RepoMan scours the neighborhood...
RepoMan sez: "If everyone were like you, I'd be out of business!"

RepoMan scours the neighborhood...
RepoMan sez: "If everyone were like you, I'd be out of business!"

RepoMan scours the neighborhood...
  repo.eapi-deprecated          1
   media-libs/stops/stops-0.3.0-r1.ebuild: 5
RepoMan sez: "You're only giving me a partial QA payment?
              I'll take it this time, but I'm not happy."

RepoMan scours the neighborhood...
RepoMan sez: "If everyone were like you, I'd be out of business!"

real	1m46,236s
user	1m38,524s
sys	0m7,818s


For comparison, pkgcheck:

$ time pkgcheck scan --git-disable $(git diff origin --name-only | cut -d/ -f1-2 | sort -u)
media-libs/stops
  DeprecatedEAPI: version 0.3.0-r1: uses deprecated EAPI 5

real	0m4,408s
user	0m3,985s
sys	0m0,559s


Note that this is with warm profile cache.  Without it:

$ time pkgcheck scan --profile-cache false --git-disable $(git diff origin --name-only | cut -d/ -f1-2 | sort -u)
media-libs/stops
  DeprecatedEAPI: version 0.3.0-r1: uses deprecated EAPI 5

real	0m18,791s
user	0m16,279s
sys	0m0,611s


PkgCheck implements most of the checks currently in repoman,
and implements some more (e.g. for bad SRC_URI filenames).  It finally
had new releases recently, and I think it's matured enough for basic
development work.

WDYT?

-- 
Best regards,
Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies