bugfix, giving id to dependency resolver
This commit is contained in:
@@ -165,12 +165,10 @@ var installCmd = &cobra.Command{
|
||||
for _, inputName := range args {
|
||||
runtime.GC()
|
||||
|
||||
var exist bool
|
||||
var exist bool = false
|
||||
err := db.QueryRow("SELECT EXISTS(SELECT 1 FROM packages WHERE id = ?)", inputName).Scan(&exist)
|
||||
if err != nil {
|
||||
if err != sql.ErrNoRows {
|
||||
log.Panic(err)
|
||||
}
|
||||
log.Fatal(err)
|
||||
}
|
||||
if exist {
|
||||
installed, err := utils.CheckIfPackageInstalled(inputName)
|
||||
@@ -265,7 +263,7 @@ var installCmd = &cobra.Command{
|
||||
}
|
||||
|
||||
fmt.Printf("Checking dependencies of (%s)\n", inputName)
|
||||
dependenciesRaw, err := utils.GetDependencies(db, inputName)
|
||||
dependenciesRaw, err := utils.GetDependencies(db, id)
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
@@ -274,7 +272,6 @@ var installCmd = &cobra.Command{
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
|
||||
if len(dependencies) > 0 {
|
||||
var wg sync.WaitGroup
|
||||
var mu sync.Mutex
|
||||
|
||||
@@ -289,10 +289,6 @@ func GetDependencies(db *sql.DB, id string) (map[string]string, error) {
|
||||
|
||||
func ResolvDependencies(depnList map[string]string) ([]string, error) {
|
||||
|
||||
if len(depnList) > 0 {
|
||||
return []string{}, nil
|
||||
}
|
||||
|
||||
db, err := sql.Open("sqlite", consts.IndexDB)
|
||||
if err != nil {
|
||||
return []string{}, err
|
||||
@@ -308,13 +304,13 @@ func ResolvDependencies(depnList map[string]string) ([]string, error) {
|
||||
switch {
|
||||
case strings.HasPrefix(constraint, ">"):
|
||||
filter = fmt.Sprintf("AND serial > %s", value)
|
||||
order = "ORDER BY serial ASC LIMIT 1"
|
||||
order = "ORDER BY serial DESC LIMIT 1"
|
||||
case strings.HasPrefix(constraint, "<="):
|
||||
filter = fmt.Sprintf("AND serial <= %s", value)
|
||||
order = "ORDER BY serial DESC LIMIT 1"
|
||||
order = "ORDER BY serial ASC LIMIT 1"
|
||||
case strings.HasPrefix(constraint, "<"):
|
||||
filter = fmt.Sprintf("AND serial < %s", value)
|
||||
order = "ORDER BY serial DESC LIMIT 1"
|
||||
order = "ORDER BY serial ASC LIMIT 1"
|
||||
case strings.HasPrefix(constraint, "="):
|
||||
filter = fmt.Sprintf("AND serial = %s", value)
|
||||
order = ""
|
||||
@@ -331,7 +327,6 @@ func ResolvDependencies(depnList map[string]string) ([]string, error) {
|
||||
}
|
||||
|
||||
resolved = append(resolved, packageId)
|
||||
|
||||
dp, err := GetDependencies(db, packageId)
|
||||
if err != nil {
|
||||
return resolved, err
|
||||
|
||||
Reference in New Issue
Block a user