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
1 Hi,
2
3 This is something I'd like to pass to the Council for the next meeting.
4
5 TL;DR: I'd like to allow using pkgcheck instead of repoman because it's
6 5-26 times faster and more convenient to use.
7
8
9 The current policy requires you to test your packages with repoman prior
10 to committing. However, repoman is both pretty inconvenient, unreadable
11 and slow. For example, for the cleanup of old versions in 4 packages I
12 have staged right now:
13
14 $ time sh -c '(for x in $(git diff --name-only origin | cut -d/ -f1-2 | uniq); do ( cd $x && repoman full -d ); done)'
15
16 RepoMan scours the neighborhood...
17 RepoMan sez: "If everyone were like you, I'd be out of business!"
18
19 RepoMan scours the neighborhood...
20 RepoMan sez: "If everyone were like you, I'd be out of business!"
21
22 RepoMan scours the neighborhood...
23 repo.eapi-deprecated 1
24 media-libs/stops/stops-0.3.0-r1.ebuild: 5
25 RepoMan sez: "You're only giving me a partial QA payment?
26 I'll take it this time, but I'm not happy."
27
28 RepoMan scours the neighborhood...
29 RepoMan sez: "If everyone were like you, I'd be out of business!"
30
31 real 1m46,236s
32 user 1m38,524s
33 sys 0m7,818s
34
35
36 For comparison, pkgcheck:
37
38 $ time pkgcheck scan --git-disable $(git diff origin --name-only | cut -d/ -f1-2 | sort -u)
39 media-libs/stops
40 DeprecatedEAPI: version 0.3.0-r1: uses deprecated EAPI 5
41
42 real 0m4,408s
43 user 0m3,985s
44 sys 0m0,559s
45
46
47 Note that this is with warm profile cache. Without it:
48
49 $ time pkgcheck scan --profile-cache false --git-disable $(git diff origin --name-only | cut -d/ -f1-2 | sort -u)
50 media-libs/stops
51 DeprecatedEAPI: version 0.3.0-r1: uses deprecated EAPI 5
52
53 real 0m18,791s
54 user 0m16,279s
55 sys 0m0,611s
56
57
58 PkgCheck implements most of the checks currently in repoman,
59 and implements some more (e.g. for bad SRC_URI filenames). It finally
60 had new releases recently, and I think it's matured enough for basic
61 development work.
62
63 WDYT?
64
65 --
66 Best regards,
67 Michał Górny

Attachments

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

Replies