...

Package modinfo

import "cmd/go/internal/modinfo"
Overview
Index

Overview ▾

type ModuleError

type ModuleError struct {
    Err string // error text
}

func (*ModuleError) UnmarshalJSON

func (e *ModuleError) UnmarshalJSON(data []byte) error

UnmarshalJSON accepts both {"Err":"text"} and "text", so that the output of go mod download -json can still be unmarshalled into a ModulePublic during -reuse processing.

type ModulePublic

type ModulePublic struct {
    Path       string        `json:",omitempty"` // module path
    Version    string        `json:",omitempty"` // module version
    Query      string        `json:",omitempty"` // version query corresponding to this version
    Versions   []string      `json:",omitempty"` // available module versions
    Replace    *ModulePublic `json:",omitempty"` // replaced by this module
    Time       *time.Time    `json:",omitempty"` // time version was created
    Update     *ModulePublic `json:",omitempty"` // available update (with -u)
    Main       bool          `json:",omitempty"` // is this the main module?
    Indirect   bool          `json:",omitempty"` // module is only indirectly needed by main module
    Dir        string        `json:",omitempty"` // directory holding local copy of files, if any
    GoMod      string        `json:",omitempty"` // path to go.mod file describing module, if any
    GoVersion  string        `json:",omitempty"` // go version used in module
    Retracted  []string      `json:",omitempty"` // retraction information, if any (with -retracted or -u)
    Deprecated string        `json:",omitempty"` // deprecation message, if any (with -u)
    Error      *ModuleError  `json:",omitempty"` // error loading module

    Origin *codehost.Origin `json:",omitempty"` // provenance of module
    Reuse  bool             `json:",omitempty"` // reuse of old module info is safe
}

func (*ModulePublic) String

func (m *ModulePublic) String() string