diff --git a/main.go b/main.go index 34d6ac2..6f659b3 100644 --- a/main.go +++ b/main.go @@ -280,6 +280,14 @@ func (b *BuildManager) parseWorker() { b.repoPurge[pkg.FullRepo] <- pkg b.parseWG.Done() continue + case UnableToSatisfyError: + log.Debugf("Skipped %s: unable to resolve dependencies: %v", info.Pkgbase, err) + dbLock.Lock() + dbPkg = dbPkg.Update().SetStatus(SKIPPED).SetSkipReason("unable to resolve dependencies").SaveX(context.Background()) + dbLock.Unlock() + b.repoPurge[pkg.FullRepo] <- pkg + b.parseWG.Done() + continue } } diff --git a/utils.go b/utils.go index 8b15b6f..c88f4fd 100644 --- a/utils.go +++ b/utils.go @@ -90,6 +90,9 @@ type Globs []string type MultiplePKGBUILDError struct { error } +type UnableToSatisfyError struct { + error +} func check(e error) { if e != nil { @@ -474,7 +477,7 @@ func isMirrorLatest(h *alpm.Handle, buildPkg *BuildPackage) (bool, alpm.IPackage for _, dep := range allDepends { pkg, err := dbs.FindSatisfier(dep.Value) if err != nil { - return false, nil, "", err + return false, nil, "", UnableToSatisfyError{err} } svn2gitVer, err := getSVN2GITVersion(&BuildPackage{