On Thu, 10 Mar 2022 12:07:40 -0600
William Hubbs <willi...@gentoo.org> wrote:

> On Thu, Mar 10, 2022 at 09:29:59AM -0800, Matt Turner wrote:
> > On Wed, Mar 9, 2022 at 11:09 PM Joonas Niilola <juip...@gentoo.org>
> > wrote:  
> > >
> > > On 9.3.2022 23.00, Matt Turner wrote:  
> > > > I'd like to deprecate and ultimately remove repoman. I believe
> > > > that dev-util/pkgcheck and pkgcommit (from
> > > > app-portage/mgorny-dev-scripts) are far superior replacements,
> > > > and it makes sense to have people using the same tool and
> > > > seeing the same warnings as in the CI.
> > > >
> > > > Are there any useful checks or behaviors of repoman that are
> > > > missing from pkgcheck and pkgcommit?
> > > >
> > > > Thanks,
> > > > Matt
> > > >  
> > >
> > > I still fail to see the "why" in here. Repoman is better than
> > > pure 'git commit' that I know some people still like to use, and
> > > as long as it's kept maintained.  
> > 
> > repoman is inferior to other tooling mentioned. The other tooling is
> > actually run in CI. Developers should get the same warnings locally
> > as in CI. Restated another way: I'm tired of telling people to stop
> > using repoman or "pkgcheck would have caught that".  
> 
> I am going to nit-pick here, but pkgcheck pulls in pkgcore still. As
> far asI know, pkgcore was meant to be a portage-like package manager,
> but it isn't maintained. So, can we break that dependency before we
> make pkgcheck the official tool for qa checks? I would rather not have
> pkgcore landing on everyone's systems unless it is usable. If I am
> wrong about pkgcore, please correct me and I'll be quiet, but if not
> let's make pkgcheck independent from it before we deprecate repoman.
> 
> Thanks,
> 
> William

William.  pkgcheck uses pkgcore base code as it's library for accessing
and evaluating repositories and ebuilds just like repoman uses portage
api's to do the same.   This is why pkgcheck is primarily faster than
repoman.  pkgcore was a re-design from the ground up of how to handle
repositories and ebuilds within them, with efficiency and speed in mind.

Unfortunately, pkgcore never gained enough developer support to to keep
up with EAPI changes and the miriad of portage options that kept
expanding.   So pkgcore never ended up replacing portage as our main
package manager.   This is one reason why Brian eventually gave up on it
and subsequently left gentoo.


While I put a lot of effort into the re-write of repoman so that the
code is maintainable, more easily extendable. It will never be as fast
as pkgcheck due to the legacy portage code it is based on.

Yes, repoman could be updated to do more checks and catch everything
that pkgcheck does.   It can be made to do many of the checks in
parrallel, but it will never be as efficient as pkgcheck due to the
underlying portage code it uses.   I largely stopped working on
repoman/gentoo due to the near constant bitching about nearly everything
I did from another (ahem) gentoo developer which shall remain un-named.


My only concern about the possible deprecation of repoman, is the fact
that is is based on the current official and primary package manager
code used in gentoo.  While pkgcheck is not.   For that reason,
changes made to the core code is mostly automatically carried
over to repoman without need to change repoman as well.   Ideally,
development should be moved to pkgcore and portage be put into
maintenance mode only. With pkgcore taking over as the primary package
manager for gentoo. But Zac is just too damn efficient at
updating/fixing portage bugs!  As well as adding features and
options... (too damn many to remember half of them now)



Reply via email to