From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 46776138334 for ; Mon, 9 Sep 2019 15:38:52 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id D1466E0ABE; Mon, 9 Sep 2019 15:38:49 +0000 (UTC) Received: from mail-io1-xd2d.google.com (mail-io1-xd2d.google.com [IPv6:2607:f8b0:4864:20::d2d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 8A234E0967 for ; Mon, 9 Sep 2019 15:38:49 +0000 (UTC) Received: by mail-io1-xd2d.google.com with SMTP id r8so4798427iol.10 for ; Mon, 09 Sep 2019 08:38:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gentoo-org.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to; bh=eFCY/01KQiJBRTue8io2oOOZkUCfFErdqsgDZhhwlhU=; b=b049EAVbJG1aTDmg8kDQid+5FYgKC7imfwLld7HCKgfB5oGsytQNtqxSSa+1yy2WQq AK9eq6gyh8Y8jJbF5sdNzxteVNZMiYMuq+dUZvCCkxNTG2dLjHjwLqVfmKtSI2ZHtsVE 0LnUijgSGlzHVvbwtaJqa932S6y5IbM7QSlbNP0oDqyG3zBvxUp2bGdCC193kAR2OkhF aoZpMf6OzgOh9GZGiuV8AY7ztaUDX6zIVEkxxmWKHOlNmvVWDhqdC2RRWkH9EyYLdf+T 4nChhlhQjuo63KqnVkXLA0Y9hy/ZgbF3ya2K8jUSGLaMOFYRBgu+Q8xvjVEXzERrdnoa kJlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=eFCY/01KQiJBRTue8io2oOOZkUCfFErdqsgDZhhwlhU=; b=gaVTr3t5DaoClNmg+tl0MhKtLdrT3jfgicmrTbzzGLTeAUWN+YIQmWXMpuHGQ9cH+n b/6h4/W8FJd5VbygchpxaHsG8ONAFPf5Arm5aBAzd+3I1i2fNsCy15SnxRpbKFeUvSEQ kp1N63LKTQM1mkWHwu5eMGmreDiQyzJabPjRfSvajtzab7allxcb7+0ZNG47aWmZ96e3 T4BMv1Up0TpbSHx58v4x0ySqf7VBvM8JUQR1o6172h1E8AFKE+Op0vW5szRLq1r0KDZS xY0aME3a5v1FW3AFTSPcsEVbT+KwPa5DIZ043LZjWwD60nLEroPdoyypPWVHlTCIKmW/ yN+A== X-Gm-Message-State: APjAAAV165vza5oUXgXydJjosOAPUBWVMBa61yA2IkOuhroV32YimHDU QS8Ws4w4OCLK4YDZ57a9mVjPcbRHWqrkoSRnyrUTMFME X-Google-Smtp-Source: APXvYqwzAdf8PixBhRoH/HnPT8uN1NAkenVQBAoBEx6DyOjFPI70gARFm77ObSOpx6+YMbjWJZAXVypLFRygnIolmgY= X-Received: by 2002:a6b:b445:: with SMTP id d66mr29229594iof.269.1568043528304; Mon, 09 Sep 2019 08:38:48 -0700 (PDT) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 References: <5c96ec43b596a283da4e01cd241cfe412cbef589.camel@gentoo.org> In-Reply-To: <5c96ec43b596a283da4e01cd241cfe412cbef589.camel@gentoo.org> From: Alec Warner Date: Mon, 9 Sep 2019 08:38:38 -0700 Message-ID: Subject: Re: [gentoo-dev] [RFC] Allowing pkgcheck as a replacement for repoman To: Gentoo Dev Content-Type: multipart/alternative; boundary="0000000000007f57670592209587" X-Archives-Salt: 1d792896-2901-4f53-8a2f-95e0b62538bd X-Archives-Hash: 4eec838f90ccbfca0c0d6b135bcfb77a --0000000000007f57670592209587 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, Sep 8, 2019 at 11:24 PM Micha=C5=82 G=C3=B3rny = 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 origi= n > --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=C5=82 G=C3=B3rny > > --0000000000007f57670592209587 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Sun, Sep 8, 2019 at 11:24 PM Micha= =C5=82 G=C3=B3rny <mgorny@gentoo.or= g> 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&#= 39;s
5-26 times faster and more convenient to use.


The current policy requires you to test your packages with repoman prior to committing.=C2=A0 However, repoman is both pretty inconvenient, unreadab= le
and slow.=C2=A0 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!&q= uot;

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

RepoMan scours the neighborhood...
=C2=A0 repo.eapi-deprecated=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 1
=C2=A0 =C2=A0media-libs/stops/stops-0.3.0-r1.ebuild: 5
RepoMan sez: "You're only giving me a partial QA payment?
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 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!&q= uot;

real=C2=A0 =C2=A0 1m46,236s
user=C2=A0 =C2=A0 1m38,524s
sys=C2=A0 =C2=A0 =C2=A00m7,818s


For comparison, pkgcheck:

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

real=C2=A0 =C2=A0 0m4,408s
user=C2=A0 =C2=A0 0m3,985s
sys=C2=A0 =C2=A0 =C2=A00m0,559s


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

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

real=C2=A0 =C2=A0 0m18,791s
user=C2=A0 =C2=A0 0m16,279s
sys=C2=A0 =C2=A0 =C2=A00m0,611s


PkgCheck implements most of the checks currently in repoman,
and implements some more (e.g. for bad SRC_URI filenames).=C2=A0 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=C2=A0checks that pkgcor= e does not implement?

Is there a plan for continue= d maintenance? E.g. when EAPI-next comes out I suspect repoman=C2=A0will ge= t 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=C5=82 G=C3=B3rny

--0000000000007f57670592209587--