go.mondoo.com/cnquery@v0.0.0-20231005093811-59568235f6ea/providers/core/resources/versions/apk/version.go (about)

     1  // Copyright (c) Mondoo, Inc.
     2  // SPDX-License-Identifier: BUSL-1.1
     3  
     4  package apk
     5  
     6  import (
     7  	apk_version "github.com/knqyf263/go-apk-version"
     8  )
     9  
    10  type Parser struct{}
    11  
    12  func (p Parser) Compare(a, b string) (int, error) {
    13  	v1, err := apk_version.NewVersion(a)
    14  	if err != nil {
    15  		return 0, err
    16  	}
    17  
    18  	v2, err := apk_version.NewVersion(b)
    19  	if err != nil {
    20  		return 0, err
    21  	}
    22  
    23  	// Quick check
    24  	if v1 == v2 {
    25  		return 0, nil
    26  	}
    27  
    28  	return v1.Compare(v2), nil
    29  }