Documentation ¶
Index ¶
- func FindModFile(dir string) (string, error)
- func IsNewerVersion(oldversion, newversion string, major bool) bool
- func JoinPath(modprefix, version, pkgdir string) string
- func MaxVersion(v, w string) string
- func ModMajor(modpath string) (string, bool)
- func ModPrefix(modpath string) string
- func NextMajor(version string) (string, error)
- func SplitPath(modprefix, pkgpath string) (modpath, pkgdir string, ok bool)
- func SplitSpec(spec string) (path, query string)
- func Updates(opt UpdateOptions)
- type Module
- type Update
- type UpdateOptions
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FindModFile ¶
FindModFile recursively searches up the directory structure until it finds the go.mod, reaches the root of the directory tree, or encounters an error.
func IsNewerVersion ¶
IsNewerVersion returns true if newversion is greater than oldversion in terms of semver. If major is true, then newversion must be a major version ahead of oldversion to be considered newer.
func JoinPath ¶
JoinPath creates a full package path given a module prefix, version, and package directory.
func MaxVersion ¶
MaxVersion returns the larger of two versions according to semantic version precedence. Incompatible versions are considered lower than non-incompatible ones. Invalid versions are considered lower than valid ones. If both versions are invalid, the empty string is returned.
func SplitPath ¶
SplitPath splits the package path into the module path and the package subdirectory. It requires the a module path prefix to figure this out.
func Updates ¶
func Updates(opt UpdateOptions)
Updates finds updates for a set of specified modules.
Types ¶
type Module ¶
Module contains the module path and versions
func Latest ¶
Latest finds the latest major version of a module cached sets the Disable-Module-Fetch: true header
func Query ¶
Query the module proxy for all versions of a module. If the module does not exist, the second return parameter will be false cached sets the Disable-Module-Fetch: true header
func QueryPackage ¶
QueryPackage tries to find the module path for the provided package path it does so by repeatedly chopping off the last path element and trying to use it as a path.
func (*Module) MaxVersion ¶
MaxVersion returns the latest version. If there are no versions, the empty string is returned. Prefix can be used to filter the versions based on a prefix. If pre is false, pre-release versions will are excluded.
func (*Module) NextMajorPath ¶
NextMajorPath returns the module path of the next major version
func (*Module) WithMajorPath ¶
WithMajorPath returns the module path for the provided version
type Update ¶
Update reports a newer version of a module. The Err field will be set if an error occured.
type UpdateOptions ¶
type UpdateOptions struct { OnUpdate func(Update) Modules []module.Version Pre bool Cached bool Major bool // Major true compare only major UpMajor bool // UpMajor module up with major }
UpdateOptions specifies a set of modules to check for updates. The OnUpdate callback will be invoked with any updates found.