mirror of
https://github.com/Jguer/yay.git
synced 2025-12-27 10:01:53 -05:00
40 lines
899 B
Go
40 lines
899 B
Go
package dep
|
|
|
|
import (
|
|
"context"
|
|
|
|
"github.com/leonelquinteros/gotext"
|
|
|
|
"github.com/Jguer/yay/v12/pkg/db"
|
|
"github.com/Jguer/yay/v12/pkg/dep/topo"
|
|
)
|
|
|
|
func (h *AllSyncHandler) GraphUpgrades(ctx context.Context, graph *topo.Graph[string, *InstallInfo],
|
|
enableDowngrade bool, filter Filter,
|
|
) error {
|
|
h.log.OperationInfoln(gotext.Get("Searching databases for updates..."))
|
|
|
|
syncUpgrades, err := h.db.SyncUpgrades(enableDowngrade)
|
|
if err != nil {
|
|
return err
|
|
}
|
|
|
|
for _, up := range syncUpgrades {
|
|
if filter != nil && !filter(&db.Upgrade{
|
|
Name: up.Package.Name(),
|
|
RemoteVersion: up.Package.Version(),
|
|
Repository: up.Package.DB().Name(),
|
|
Base: up.Package.Base(),
|
|
LocalVersion: up.LocalVersion,
|
|
Reason: up.Reason,
|
|
}) {
|
|
continue
|
|
}
|
|
|
|
upgradeInfo := up
|
|
graph = graphSyncPkg(ctx, h.db, graph, h.log, up.Package, &upgradeInfo)
|
|
}
|
|
|
|
return nil
|
|
}
|