On Sun, Sep 8, 2019 at 11:24 PM Michał Górny <[email protected]> wrote:

> 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.
>

Generally speaking if stuff passes CI I'm happy, and if it doesn't I'm
unhappy. That being said, do we think there any critical repoman checks
that pkgcore does not implement?

Is there a plan for continued maintenance? E.g. when EAPI-next comes out I
suspect repoman will get it (via portage), but pkgcore struggled to pick up
new EAPIs as quickly. You mentioned pkgcheck had some releases; do we
expect this to continue?

-A


> WDYT?
>
> --
> Best regards,
> Michał Górny
>
>

Reply via email to