mirror of
https://github.com/gopasspw/gopass.git
synced 2025-12-08 19:24:54 +00:00
* Improve compatibility with github.com/FiloSottile/passage Part of #2060 RELEASE_NOTES=[ENHANCEMENT] Passage compat improvements Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org> * Add migration tooling to automate upgrades with existing age backends RELEASE_NOTES=n/a Signed-off-by: Dominik Schulz <dominik.schulz@gauner.org>
31 lines
592 B
Go
31 lines
592 B
Go
package debug
|
|
|
|
import (
|
|
rdebug "runtime/debug"
|
|
"strings"
|
|
|
|
"github.com/blang/semver/v4"
|
|
)
|
|
|
|
// ModuleVersion the version of the named import
|
|
func ModuleVersion(m string) semver.Version {
|
|
bi, ok := rdebug.ReadBuildInfo()
|
|
if !ok || bi == nil {
|
|
Log("Failed to read build info")
|
|
return semver.Version{}
|
|
}
|
|
|
|
for _, dep := range bi.Deps {
|
|
if dep.Path != m {
|
|
continue
|
|
}
|
|
sv, err := semver.Parse(strings.TrimPrefix(dep.Version, "v"))
|
|
if err != nil {
|
|
Log("Failed to parse version %s: %s", dep.Version, err)
|
|
return semver.Version{}
|
|
}
|
|
return sv
|
|
}
|
|
return semver.Version{}
|
|
}
|