aur_warnings.go 891 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package query
  2. import (
  3. "fmt"
  4. "github.com/leonelquinteros/gotext"
  5. "github.com/Jguer/yay/v10/pkg/stringset"
  6. "github.com/Jguer/yay/v10/pkg/text"
  7. )
  8. type AURWarnings struct {
  9. Orphans []string
  10. OutOfDate []string
  11. Missing []string
  12. Ignore stringset.StringSet
  13. }
  14. func NewWarnings() *AURWarnings {
  15. return &AURWarnings{Ignore: make(stringset.StringSet)}
  16. }
  17. func (warnings *AURWarnings) Print() {
  18. if len(warnings.Missing) > 0 {
  19. text.Warn(gotext.Get("Missing AUR Packages:"))
  20. printRange(warnings.Missing)
  21. }
  22. if len(warnings.Orphans) > 0 {
  23. text.Warn(gotext.Get("Orphaned AUR Packages:"))
  24. printRange(warnings.Orphans)
  25. }
  26. if len(warnings.OutOfDate) > 0 {
  27. text.Warn(gotext.Get("Flagged Out Of Date AUR Packages:"))
  28. printRange(warnings.OutOfDate)
  29. }
  30. }
  31. func printRange(names []string) {
  32. for _, name := range names {
  33. fmt.Print(" " + text.Cyan(name))
  34. }
  35. fmt.Println()
  36. }