Documentation ¶
Index ¶
- type ModuleError
- type ModuleInfo
- func GetDependencies(log *logger.Logger, moduleDir string) (*ModuleInfo, map[string]*ModuleInfo, error)
- func GetDependenciesWithUpdates(log *logger.Logger, moduleDir string) (*ModuleInfo, map[string]*ModuleInfo, error)
- func GetModule(log *logger.Logger, moduleDir string, targetModule string) (*ModuleInfo, error)
- func GetModuleWithUpdate(log *logger.Logger, moduleDir string, targetModule string) (*ModuleInfo, error)
- type PackageError
- type PackageInfo
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ModuleError ¶
type ModuleError struct {
Err string // the error itself
}
ModuleError represents the data that is returned whenever Go tooling was unable to load a given module's information.
type ModuleInfo ¶
type ModuleInfo struct { Main bool // is this the main module? Indirect bool // is it an indirect dependency? Path string // module path Replace *ModuleInfo // replaced by this module Version string // module version Time *time.Time // time version was created Dir string // location of the module's source Update *ModuleInfo // available update, if any (with -u) GoMod string // the path to this module's go.mod file GoVersion string // the Go version associated with the module Error *ModuleError // error loading module }
ModuleInfo represents the data returned by 'go list -m --json' for a Go module. It's content is extracted directly from the Go documentation.
func GetDependencies ¶
func GetDependencies(log *logger.Logger, moduleDir string) (*ModuleInfo, map[string]*ModuleInfo, error)
Retrieve the Module information for all dependencies of the Go module found at the specified path.
func GetDependenciesWithUpdates ¶
func GetDependenciesWithUpdates(log *logger.Logger, moduleDir string) (*ModuleInfo, map[string]*ModuleInfo, error)
Retrieve the Module information for all dependencies of the Go module found at the specified path, including any potentially available updates. This requires internet connectivity in order to return the results. Lack of connectivity should result in an error being returned but this is not a hard guarantee.
func GetModule ¶
Retrieve the Module information for the specified target module which must be a dependency of the Go module found at the specified path.
func GetModuleWithUpdate ¶
func GetModuleWithUpdate(log *logger.Logger, moduleDir string, targetModule string) (*ModuleInfo, error)
Retrieve the Module information for the specified target module which must be a dependency of the Go module found at the specified path, including any potentially available updates. This requires internet connectivity in order to return the results. Lack of connectivity should result in an error being returned but this is not a hard guarantee.
type PackageError ¶
type PackageInfo ¶
type PackageInfo struct { Dir string // directory containing package sources ImportPath string // import path of package in dir ImportComment string // path in import comment on package statement Name string // package name Doc string // package documentation string Target string // install path Shlib string // the shared library that contains this package (only set when -linkshared) Goroot bool // is this package in the Go root? Standard bool // is this package part of the standard Go library? Stale bool // would 'go install' do anything for this package? StaleReason string // explanation for Stale==true Root string // Go root or Go path dir containing this package ConflictDir string // this directory shadows Dir in $GOPATH BinaryOnly bool // binary-only package (no longer supported) ForTest string // package is only for use in named test Export string // file containing export data (when using -export) Module *ModuleInfo // info about package's containing module, if any (can be nil) Match []string // command-line patterns matching this package DepOnly bool // package is only a dependency, not explicitly listed // Source files GoFiles []string // .go source files (excluding CgoFiles, TestGoFiles, XTestGoFiles) CgoFiles []string // .go source files that import "C" CompiledGoFiles []string // .go files presented to compiler (when using -compiled) IgnoredGoFiles []string // .go source files ignored due to build constraints CFiles []string // .c source files CXXFiles []string // .cc, .cxx and .cpp source files MFiles []string // .m source files HFiles []string // .h, .hh, .hpp and .hxx source files FFiles []string // .f, .F, .for and .f90 Fortran source files SFiles []string // .s source files SwigFiles []string // .swig files SwigCXXFiles []string // .swigcxx files SysoFiles []string // .syso object files to add to archive TestGoFiles []string // _test.go files in package XTestGoFiles []string // _test.go files outside package // Cgo directives CgoCFLAGS []string // cgo: flags for C compiler CgoCPPFLAGS []string // cgo: flags for C preprocessor CgoCXXFLAGS []string // cgo: flags for C++ compiler CgoFFLAGS []string // cgo: flags for Fortran compiler CgoLDFLAGS []string // cgo: flags for linker CgoPkgConfig []string // cgo: pkg-config names // Dependency information Imports []string // import paths used by this package ImportMap map[string]string // map from source import to ImportPath (identity entries omitted) Deps []string // all (recursively) imported dependencies TestImports []string // imports from TestGoFiles XTestImports []string // imports from XTestGoFiles // Error information Incomplete bool // this package or a dependency has an error Error *PackageError // error loading package DepsErrors []*PackageError // errors loading dependencies }
PackageInfo represents the data returned by 'go list --json' for a Go package. It's content is extracted directly from the Go documentation.