-
-
Notifications
You must be signed in to change notification settings - Fork 366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
yay
tries to build each split package, ignoring previous failures in the same pkgbase
#2560
Comments
Hey @yurikoles can you try yay-git. I believe this has already been fixed but unreleased |
Yes, this should be fixed since #2534 was merged. EDIT: this specific case might not be fixed. The fix PR only adds a package to EDIT2: this is still broken, a failed package is still built multiple times if multiple of its subpackages are in the list of to-build packages. A fix could be the following small patch: diff --git a/pkg/sync/build/installer.go b/pkg/sync/build/installer.go
index a01815d..2b53e23 100644
--- a/pkg/sync/build/installer.go
+++ b/pkg/sync/build/installer.go
@@ -238,6 +238,8 @@ func (installer *Installer) installAURPackages(ctx context.Context,
} else {
var errMake error
installer.log.Debugln("building pkgbase", base, "package", name)
+ builtPkgDests[base] = pkgdests
+
pkgdests, errMake = installer.buildPkg(ctx, dir, base,
installIncompatible, cmdArgs.ExistsArg("needed"), aurOrigTargetBases.Contains(base))
if errMake != nil {
@@ -249,8 +251,6 @@ func (installer *Installer) installAURPackages(ctx context.Context,
installer.log.Errorln(gotext.Get("error making: %s", base), "-", errMake)
continue
}
-
- builtPkgDests[base] = pkgdests
}
if len(pkgdests) == 0 { |
The previous fix commit ec837c8 failed to address the case where the build fails, as packages are only added to builtPkgDests on a successful build. This commit addresses this by adding the package to the map earlier. Fixes Jguer#2560.
…error The previous fix commit ec837c8 failed to address the case where the build fails, as packages are only added to builtPkgDests on a successful build. This commit addresses this by adding the package to the map earlier. Fixes Jguer#2560.
I can still reproduce this issue on |
That's what I expected and is consistent with my testing. The linked fix PR is not 100% ready yet, some some tests are still failing, but I've been using it the last few days and it appears to work in regular usage, you can try it out if you need a fix urgently, but YMMV. |
Affected Version
yay v12.4.2 - libalpm v15.0.0
Describe the bug
yay
tries to build each split package in the same run, even if attempt to build the samepkgbase
was failed.Reproduction Steps
I discovered this bug during upgrade with
--devel
, but it's also reproducible with new installation.These packages are currently failing, but I'm unsure how long it will take upstream for to fix them.
Or
yay
makes 3 build attempts during install or upgrade.Expected behaviour
yay
should make exactly one build attempt perpkgbase
.Output
I uploaded debug.log to gist due to extreme size.
The text was updated successfully, but these errors were encountered: