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