|
@@ -267,10 +267,11 @@ func upAUR(remote []alpm.Package, aurdata map[string]*rpc.Pkg) (upSlice, error)
|
|
|
func printIgnoringPackage(pkg alpm.Package, newPkgVersion string) {
|
|
|
left, right := getVersionDiff(pkg.Version(), newPkgVersion)
|
|
|
|
|
|
- fmt.Println(
|
|
|
- yellow(bold(smallArrow)) + fmt.Sprintf(
|
|
|
- " Ignoring package upgrade: %s (%s -> %s)",
|
|
|
- cyan(pkg.Name()), left, right))
|
|
|
+ fmt.Printf("%s %s: ignoring package upgrade (%s => %s)\n",
|
|
|
+ yellow(bold(smallArrow)),
|
|
|
+ cyan(pkg.Name()),
|
|
|
+ left, right,
|
|
|
+ )
|
|
|
}
|
|
|
|
|
|
func printLocalNewerThanAUR(
|
|
@@ -283,12 +284,12 @@ func printLocalNewerThanAUR(
|
|
|
|
|
|
left, right := getVersionDiff(pkg.Version(), aurPkg.Version)
|
|
|
|
|
|
- if !isDevelName(pkg.Name()) &&
|
|
|
- alpm.VerCmp(pkg.Version(), aurPkg.Version) > 0 {
|
|
|
- fmt.Println(
|
|
|
- yellow(bold(smallArrow)) + fmt.Sprintf(
|
|
|
- " Local package is newer than AUR: %s (%s -> %s)",
|
|
|
- cyan(pkg.Name()), left, right))
|
|
|
+ if !isDevelName(pkg.Name()) && alpm.VerCmp(pkg.Version(), aurPkg.Version) > 0 {
|
|
|
+ fmt.Printf("%s %s: local (%s) is newer than AUR (%s)\n",
|
|
|
+ yellow(bold(smallArrow)),
|
|
|
+ cyan(pkg.Name()),
|
|
|
+ left, right,
|
|
|
+ )
|
|
|
}
|
|
|
}
|
|
|
}
|
|
@@ -296,23 +297,38 @@ func printLocalNewerThanAUR(
|
|
|
// upRepo gathers local packages and checks if they have new versions.
|
|
|
// Output: Upgrade type package list.
|
|
|
func upRepo(local []alpm.Package) (upSlice, error) {
|
|
|
- dbList, err := alpmHandle.SyncDbs()
|
|
|
+ slice := upSlice{}
|
|
|
+
|
|
|
+ localDB, err := alpmHandle.LocalDb()
|
|
|
if err != nil {
|
|
|
- return nil, err
|
|
|
+ return slice, err
|
|
|
}
|
|
|
|
|
|
- slice := upSlice{}
|
|
|
+ err = alpmHandle.TransInit(alpm.TransFlagNoLock)
|
|
|
+ if err != nil {
|
|
|
+ return slice, err
|
|
|
+ }
|
|
|
|
|
|
- for _, pkg := range local {
|
|
|
- newPkg := pkg.NewVersion(dbList)
|
|
|
- if newPkg != nil {
|
|
|
- if pkg.ShouldIgnore() {
|
|
|
- printIgnoringPackage(pkg, newPkg.Version())
|
|
|
- } else {
|
|
|
- slice = append(slice, upgrade{pkg.Name(), newPkg.DB().Name(), pkg.Version(), newPkg.Version()})
|
|
|
- }
|
|
|
+ defer alpmHandle.TransRelease()
|
|
|
+
|
|
|
+ alpmHandle.SyncSysupgrade(cmdArgs.existsDouble("u", "sysupgrade"))
|
|
|
+ alpmHandle.TransGetAdd().ForEach(func(pkg alpm.Package) error {
|
|
|
+ localPkg, err := localDB.PkgByName(pkg.Name())
|
|
|
+ localVer := "-"
|
|
|
+
|
|
|
+ if err == nil {
|
|
|
+ localVer = localPkg.Version()
|
|
|
}
|
|
|
- }
|
|
|
+
|
|
|
+ slice = append(slice, upgrade{
|
|
|
+ pkg.Name(),
|
|
|
+ pkg.DB().Name(),
|
|
|
+ localVer,
|
|
|
+ pkg.Version(),
|
|
|
+ })
|
|
|
+ return nil
|
|
|
+ })
|
|
|
+
|
|
|
return slice, nil
|
|
|
}
|
|
|
|