mirror of
https://github.com/Jguer/yay
synced 2024-10-02 22:33:47 +00:00
Update go-alpm
This commit is contained in:
parent
a645353c17
commit
895788e01b
2
cmd.go
2
cmd.go
|
@ -419,7 +419,7 @@ func syncList(parser *arguments) error {
|
|||
} else {
|
||||
fmt.Printf("%s %s %s", magenta("aur"), bold(name), bold(green("unknown-version")))
|
||||
|
||||
if _, err := localDB.Pkg(name); err == nil {
|
||||
if localDB.Pkg(name) != nil {
|
||||
fmt.Print(bold(blue(" [Installed]")))
|
||||
}
|
||||
|
||||
|
|
|
@ -134,8 +134,8 @@ func (dp *depPool) ResolveTargets(pkgs []string) error {
|
|||
//the user specified a db but there's no easy way to do
|
||||
//it without making alpm_lists so don't bother for now
|
||||
//db/group is probably a rare use case
|
||||
group, err := dp.SyncDB.FindGroupPkgs(target.Name)
|
||||
if err == nil {
|
||||
group := dp.SyncDB.FindGroupPkgs(target.Name)
|
||||
if !group.Empty() {
|
||||
dp.Groups = append(dp.Groups, target.String())
|
||||
group.ForEach(func(pkg alpm.Package) error {
|
||||
dp.Explicit.set(pkg.Name())
|
||||
|
@ -207,7 +207,7 @@ func (dp *depPool) findProvides(pkgs stringSet) error {
|
|||
}
|
||||
|
||||
for pkg := range pkgs {
|
||||
if _, err := dp.LocalDB.Pkg(pkg); err == nil {
|
||||
if dp.LocalDB.Pkg(pkg) != nil {
|
||||
continue
|
||||
}
|
||||
wg.Add(1)
|
||||
|
@ -389,7 +389,7 @@ func (dp *depPool) findSatisfierAurCache(dep string) *rpc.Pkg {
|
|||
seen := make(stringSet)
|
||||
providers := makeProviders(depName)
|
||||
|
||||
if _, err := dp.LocalDB.Pkg(depName); err == nil {
|
||||
if dp.LocalDB.Pkg(depName) != nil {
|
||||
if pkg, ok := dp.AurCache[dep]; ok && pkgSatisfies(pkg.Name, pkg.Version, dep) {
|
||||
return pkg
|
||||
}
|
||||
|
|
|
@ -216,11 +216,11 @@ func getPkgbuildsfromABS(pkgs []string, path string) (bool, error) {
|
|||
|
||||
if pkgDB != "" {
|
||||
if db, err := alpmHandle.SyncDBByName(pkgDB); err == nil {
|
||||
pkg, err = db.Pkg(name)
|
||||
pkg = db.Pkg(name)
|
||||
}
|
||||
} else {
|
||||
dbList.ForEach(func(db alpm.DB) error {
|
||||
if pkg, err = db.Pkg(name); err == nil {
|
||||
if pkg = db.Pkg(name); pkg != nil {
|
||||
return fmt.Errorf("")
|
||||
}
|
||||
return nil
|
||||
|
|
2
go.mod
2
go.mod
|
@ -3,6 +3,6 @@ module github.com/Jguer/yay/v9
|
|||
require (
|
||||
github.com/Morganamilo/go-pacmanconf v0.0.0-20180910220353-9c5265e1b14f
|
||||
github.com/Morganamilo/go-srcinfo v0.0.0-20180702014333-368edc79b2c5
|
||||
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0
|
||||
github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b
|
||||
github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9
|
||||
)
|
||||
|
|
2
go.sum
2
go.sum
|
@ -6,6 +6,8 @@ github.com/jguer/go-alpm v0.0.0-20180914002751-643c287316a5 h1:JPIXUHXLZYwYUTlGp
|
|||
github.com/jguer/go-alpm v0.0.0-20180914002751-643c287316a5/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
||||
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0 h1:MtH4SM1pw+23QhMERYK38DyGNqf6F3zUhxeKmQhuHC0=
|
||||
github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
||||
github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b h1:lQICb6Gw0HDAZlAGdveIp/zww2TVBwQvOM5VtAMpulc=
|
||||
github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b/go.mod h1:1F60/e8oQFVJrZRH0TBqwtiB5ajJ5avOc4MoGRY9CFU=
|
||||
github.com/mikkeloscar/aur v0.0.0-20180725140122-f998dbf94dc4 h1:qgHSZbD0g3W7KAkZFzXlSqgriYnzEUFS1gkgEiv2GrE=
|
||||
github.com/mikkeloscar/aur v0.0.0-20180725140122-f998dbf94dc4/go.mod h1:n1NKHoldRNhIEufSx1PiDYcd2W+wpbz5/5K+p2eNDVk=
|
||||
github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9 h1:g4TBYa1sjv/TZfU9t82oYlRneu8cCVr3dnazE7os5vw=
|
||||
|
|
|
@ -364,12 +364,7 @@ func inRepos(syncDB alpm.DBList, pkg string) bool {
|
|||
return true
|
||||
}
|
||||
|
||||
_, err = syncDB.FindGroupPkgs(target.Name)
|
||||
if err == nil {
|
||||
return true
|
||||
}
|
||||
|
||||
return false
|
||||
return !syncDB.FindGroupPkgs(target.Name).Empty()
|
||||
}
|
||||
|
||||
func earlyPacmanCall(parser *arguments) error {
|
||||
|
@ -950,7 +945,7 @@ func buildInstallPkgbuilds(dp *depPool, do *depOrder, srcinfos map[string]*gosrc
|
|||
if cmdArgs.existsArg("needed") {
|
||||
installed := true
|
||||
for _, split := range base {
|
||||
if alpmpkg, err := dp.LocalDB.Pkg(split.Name); err != nil || alpmpkg.Version() != version {
|
||||
if alpmpkg := dp.LocalDB.Pkg(split.Name); alpmpkg == nil || alpmpkg.Version() != version {
|
||||
installed = false
|
||||
}
|
||||
}
|
||||
|
|
4
print.go
4
print.go
|
@ -88,7 +88,7 @@ func (q aurQuery) printSearch(start int) {
|
|||
toprint += bold(red("(Out-of-date "+formatTime(res.OutOfDate)+")")) + " "
|
||||
}
|
||||
|
||||
if pkg, err := localDB.Pkg(res.Name); err == nil {
|
||||
if pkg := localDB.Pkg(res.Name); pkg != nil {
|
||||
if pkg.Version() != res.Version {
|
||||
toprint += bold(green("(Installed: " + pkg.Version() + ")"))
|
||||
} else {
|
||||
|
@ -126,7 +126,7 @@ func (s repoQuery) printSearch() {
|
|||
|
||||
localDB, err := alpmHandle.LocalDB()
|
||||
if err == nil {
|
||||
if pkg, err := localDB.Pkg(res.Name()); err == nil {
|
||||
if pkg := localDB.Pkg(res.Name()); pkg != nil {
|
||||
if pkg.Version() != res.Version() {
|
||||
toprint += bold(green("(Installed: " + pkg.Version() + ")"))
|
||||
} else {
|
||||
|
|
11
query.go
11
query.go
|
@ -80,8 +80,8 @@ func filterPackages() (local []alpm.Package, remote []alpm.Package,
|
|||
if found {
|
||||
return nil
|
||||
}
|
||||
_, err := d.Pkg(k.Name())
|
||||
if err == nil {
|
||||
|
||||
if d.Pkg(k.Name()) != nil {
|
||||
found = true
|
||||
local = append(local, k)
|
||||
localNames = append(localNames, k.Name())
|
||||
|
@ -301,9 +301,7 @@ func packageSlices(toCheck []string) (aur []string, repo []string, err error) {
|
|||
}
|
||||
|
||||
_ = dbList.ForEach(func(db alpm.DB) error {
|
||||
_, err := db.Pkg(name)
|
||||
|
||||
if err == nil {
|
||||
if db.Pkg(name) != nil {
|
||||
found = true
|
||||
return fmt.Errorf("")
|
||||
|
||||
|
@ -312,8 +310,7 @@ func packageSlices(toCheck []string) (aur []string, repo []string, err error) {
|
|||
})
|
||||
|
||||
if !found {
|
||||
_, errdb := dbList.FindGroupPkgs(name)
|
||||
found = errdb == nil
|
||||
found = !dbList.FindGroupPkgs(name).Empty()
|
||||
}
|
||||
|
||||
if found {
|
||||
|
|
|
@ -304,10 +304,9 @@ func upRepo(local []alpm.Package) (upSlice, error) {
|
|||
|
||||
alpmHandle.SyncSysupgrade(cmdArgs.existsDouble("u", "sysupgrade"))
|
||||
alpmHandle.TransGetAdd().ForEach(func(pkg alpm.Package) error {
|
||||
localPkg, err := localDB.Pkg(pkg.Name())
|
||||
localVer := "-"
|
||||
|
||||
if err == nil {
|
||||
if localPkg := localDB.Pkg(pkg.Name()); localPkg != nil {
|
||||
localVer = localPkg.Version()
|
||||
}
|
||||
|
||||
|
|
16
vendor/github.com/jguer/go-alpm/db.go
generated
vendored
16
vendor/github.com/jguer/go-alpm/db.go
generated
vendored
|
@ -130,28 +130,20 @@ func (db *DB) SetUsage(usage Usage) {
|
|||
}
|
||||
|
||||
// Name searches a package in db.
|
||||
func (db *DB) Pkg(name string) (*Package, error) {
|
||||
func (db *DB) Pkg(name string) *Package {
|
||||
cName := C.CString(name)
|
||||
defer C.free(unsafe.Pointer(cName))
|
||||
ptr := C.alpm_db_get_pkg(db.ptr, cName)
|
||||
if ptr == nil {
|
||||
return nil, db.handle.LastError()
|
||||
}
|
||||
return &Package{ptr, db.handle}, nil
|
||||
return &Package{ptr, db.handle}
|
||||
}
|
||||
|
||||
// PkgCachebyGroup returns a PackageList of packages belonging to a group
|
||||
func (l DBList) FindGroupPkgs(name string) (PackageList, error) {
|
||||
func (l DBList) FindGroupPkgs(name string) PackageList {
|
||||
cName := C.CString(name)
|
||||
defer C.free(unsafe.Pointer(cName))
|
||||
pkglist := (*C.struct___alpm_list_t)(unsafe.Pointer(l.list))
|
||||
|
||||
pkgcache := (*list)(unsafe.Pointer(C.alpm_find_group_pkgs(pkglist, cName)))
|
||||
if pkgcache == nil {
|
||||
return PackageList{pkgcache, l.handle}, l.handle.LastError()
|
||||
}
|
||||
|
||||
return PackageList{pkgcache, l.handle}, nil
|
||||
return PackageList{pkgcache, l.handle}
|
||||
}
|
||||
|
||||
// PkgCache returns the list of packages of the database
|
||||
|
|
12
vendor/github.com/jguer/go-alpm/types.go
generated
vendored
12
vendor/github.com/jguer/go-alpm/types.go
generated
vendored
|
@ -106,6 +106,18 @@ func (l *list) forEach(f func(unsafe.Pointer) error) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (l *list) Len() int {
|
||||
count := 0
|
||||
for ; l != nil; l = l.Next {
|
||||
count++
|
||||
}
|
||||
return count
|
||||
}
|
||||
|
||||
func (l *list) Empty() bool {
|
||||
return l == nil
|
||||
}
|
||||
|
||||
type StringList struct {
|
||||
*list
|
||||
}
|
||||
|
|
2
vendor/modules.txt
vendored
2
vendor/modules.txt
vendored
|
@ -3,7 +3,7 @@ github.com/Morganamilo/go-pacmanconf
|
|||
github.com/Morganamilo/go-pacmanconf/ini
|
||||
# github.com/Morganamilo/go-srcinfo v0.0.0-20180702014333-368edc79b2c5
|
||||
github.com/Morganamilo/go-srcinfo
|
||||
# github.com/jguer/go-alpm v0.0.0-20181021002825-676ad6bbf3c0
|
||||
# github.com/jguer/go-alpm v0.0.0-20190214204021-327c7630865b
|
||||
github.com/jguer/go-alpm
|
||||
# github.com/mikkeloscar/aur v0.0.0-20181111113612-b71516da3ae9
|
||||
github.com/mikkeloscar/aur
|
||||
|
|
Loading…
Reference in a new issue