Return srcinfos instead of using it as a parameter

Also, we do not do a pre and post pkgverbump pass anymore, so theres no
need to name it stale.
This commit is contained in:
morganamilo 2018-08-11 05:00:46 +01:00
parent 29fdf23f50
commit cd21298355
No known key found for this signature in database
GPG Key ID: 6FE9E7996B0B082E
2 changed files with 13 additions and 14 deletions

View File

@ -22,10 +22,10 @@ func install(parser *arguments) error {
var aurUp upSlice var aurUp upSlice
var repoUp upSlice var repoUp upSlice
warnings := &aurWarnings{} var srcinfos map[string]*gosrc.Srcinfo
warnings := &aurWarnings{}
removeMake := false removeMake := false
srcinfosStale := make(map[string]*gosrc.Srcinfo)
if mode == ModeAny || mode == ModeRepo { if mode == ModeAny || mode == ModeRepo {
if config.CombinedUpgrade { if config.CombinedUpgrade {
@ -223,8 +223,7 @@ func install(parser *arguments) error {
return err return err
} }
//initial srcinfo parse before pkgver() bump srcinfos, err = parseSrcinfoFiles(do.Aur, true)
err = parseSrcinfoFiles(do.Aur, srcinfosStale, true)
if err != nil { if err != nil {
return err return err
} }
@ -237,7 +236,7 @@ func install(parser *arguments) error {
} }
if len(toEdit) > 0 { if len(toEdit) > 0 {
err = editPkgbuilds(toEdit, srcinfosStale) err = editPkgbuilds(toEdit, srcinfos)
if err != nil { if err != nil {
return err return err
} }
@ -255,13 +254,13 @@ func install(parser *arguments) error {
} }
//TODO: fix for split packages maybe? //TODO: fix for split packages maybe?
incompatible, err = getIncompatible(do.Aur, srcinfosStale) incompatible, err = getIncompatible(do.Aur, srcinfos)
if err != nil { if err != nil {
return err return err
} }
if config.PGPFetch { if config.PGPFetch {
err = checkPgpKeys(do.Aur, srcinfosStale) err = checkPgpKeys(do.Aur, srcinfos)
if err != nil { if err != nil {
return err return err
} }
@ -317,7 +316,7 @@ func install(parser *arguments) error {
return err return err
} }
err = buildInstallPkgbuilds(dp, do, srcinfosStale, parser, incompatible, conflicts) err = buildInstallPkgbuilds(dp, do, srcinfos, parser, incompatible, conflicts)
if err != nil { if err != nil {
return err return err
} }
@ -748,7 +747,8 @@ func editPkgbuilds(bases []Base, srcinfos map[string]*gosrc.Srcinfo) error {
return nil return nil
} }
func parseSrcinfoFiles(bases []Base, srcinfos map[string]*gosrc.Srcinfo, errIsFatal bool) error { func parseSrcinfoFiles(bases []Base, errIsFatal bool) (map[string]*gosrc.Srcinfo, error) {
srcinfos := make(map[string]*gosrc.Srcinfo)
for k, base := range bases { for k, base := range bases {
pkg := base.Pkgbase() pkg := base.Pkgbase()
dir := filepath.Join(config.BuildDir, pkg) dir := filepath.Join(config.BuildDir, pkg)
@ -762,13 +762,13 @@ func parseSrcinfoFiles(bases []Base, srcinfos map[string]*gosrc.Srcinfo, errIsFa
fmt.Printf("failed to parse %s -- skipping: %s\n", formatPkgbase(base), err) fmt.Printf("failed to parse %s -- skipping: %s\n", formatPkgbase(base), err)
continue continue
} }
return fmt.Errorf("failed to parse %s: %s", formatPkgbase(base), err) return nil, fmt.Errorf("failed to parse %s: %s", formatPkgbase(base), err)
} }
srcinfos[pkg] = pkgbuild srcinfos[pkg] = pkgbuild
} }
return nil return srcinfos, nil
} }
func pkgbuildsToSkip(bases []Base, targets stringSet) stringSet { func pkgbuildsToSkip(bases []Base, targets stringSet) stringSet {

5
vcs.go
View File

@ -27,7 +27,6 @@ func createDevelDB() error {
var mux sync.Mutex var mux sync.Mutex
var wg sync.WaitGroup var wg sync.WaitGroup
infoMap := make(map[string]*rpc.Pkg) infoMap := make(map[string]*rpc.Pkg)
srcinfosStale := make(map[string]*gosrc.Srcinfo)
_, _, _, remoteNames, err := filterPackages() _, _, _, remoteNames, err := filterPackages()
if err != nil { if err != nil {
@ -46,9 +45,9 @@ func createDevelDB() error {
bases := getBases(infoMap) bases := getBases(infoMap)
toSkip := pkgbuildsToSkip(bases, sliceToStringSet(remoteNames)) toSkip := pkgbuildsToSkip(bases, sliceToStringSet(remoteNames))
downloadPkgbuilds(bases, toSkip) downloadPkgbuilds(bases, toSkip)
parseSrcinfoFiles(bases, srcinfosStale, false) srcinfos, _ := parseSrcinfoFiles(bases, false)
for _, pkgbuild := range srcinfosStale { for _, pkgbuild := range srcinfos {
for _, pkg := range pkgbuild.Packages { for _, pkg := range pkgbuild.Packages {
wg.Add(1) wg.Add(1)
go updateVCSData(pkg.Pkgname, pkgbuild.Source, &mux, &wg) go updateVCSData(pkg.Pkgname, pkgbuild.Source, &mux, &wg)