Documentation ¶
Index ¶
- Constants
- Variables
- func CheckCacheFile(name string) (string, bool, error)
- func CheckForHelperTools(lang string)
- func FindPackageInDir(pkg interface{}, dir string) error
- func GetPackageRoot() (string, error)
- func InstallPath(env, relpath string, global bool) (string, error)
- func IsErrAlreadyInstalled(err error) bool
- func IsHash(s string) bool
- func IsSubtoolInstalled(env string) (bool, error)
- func LoadPackage(out interface{}, env, hash string) error
- func LoadPackageFile(pkg interface{}, fname string) error
- func LocalPackageByName(dir, name string, out interface{}) error
- func NewShell() *sh.Shell
- func PackageNameInDir(dir string) (string, error)
- func SavePackageFile(pkg interface{}, fname string) error
- func TryRunHook(hook, env string, req bool, args ...string) error
- func WriteConfig(cfg *Config, file string) error
- type BugsObj
- type Config
- type DepStats
- type Dependency
- type ErrAlreadyInstalled
- type PM
- func (pm *PM) EnumerateDependencies(pkg *Package) (map[string]string, error)
- func (pm *PM) FetchRepo(rpath string, usecache bool) (map[string]string, error)
- func (pm *PM) GetPackageTo(hash, out string) (*Package, error)
- func (pm *PM) ImportPackage(dir, dephash string) (*Dependency, error)
- func (pm *PM) InitPkg(dir, name, lang string, setup func(*Package)) error
- func (pm *PM) InstallDeps(pkg *Package, location string) error
- func (pm *PM) InstallPackage(hash, ipath string) (*Package, error)
- func (pm *PM) PublishPackage(dir string, pkg *PackageBase) (string, error)
- func (pm *PM) QueryRepos(query string) (map[string]string, error)
- func (pm *PM) ResolveDepName(name string) (string, error)
- func (pm *PM) ResolveRepoName(name string, usecache bool) (string, error)
- func (pm *PM) SetGlobal(g bool)
- func (pm *PM) SetProgMeter(meter *prog.ProgMeter)
- func (pm *PM) Shell() *sh.Shell
- func (pm *PM) ShellOnline() bool
- type Package
- type PackageBase
- type PkgStats
- type User
Constants ¶
View Source
const CfgFileName = ".gxrc"
View Source
const GxVersion = "0.12.1"
View Source
const PkgFileName = "package.json"
Variables ¶
View Source
var ErrNotFound = errors.New("cache miss")
View Source
var ErrUnrecognizedName = fmt.Errorf("unrecognized package name")
View Source
var UsingGateway bool
Functions ¶
func CheckForHelperTools ¶
func CheckForHelperTools(lang string)
func FindPackageInDir ¶
func GetPackageRoot ¶ added in v0.9.1
func IsErrAlreadyInstalled ¶
func IsSubtoolInstalled ¶ added in v0.11.0
func LoadPackage ¶
func LoadPackageFile ¶
func LocalPackageByName ¶
func PackageNameInDir ¶
func SavePackageFile ¶
func WriteConfig ¶
Types ¶
type Config ¶
type Config struct { Repos map[string]string `json:"repos,omitempty"` ExtraRepos map[string]string `json:"extra_repos,omitempty"` User User `json:"user,omitempty"` }
func LoadConfig ¶
func LoadConfigFrom ¶
type DepStats ¶ added in v0.10.0
type DepStats struct { TotalCount int TotalUnique int AverageDepth float64 Packages map[string]*PkgStats // contains filtered or unexported fields }
func GetDepStats ¶ added in v0.10.0
type Dependency ¶
type Dependency struct { Author string `json:"author,omitempty"` Name string `json:"name,omitempty"` Hash string `json:"hash"` Version string `json:"version,omitempty"` }
Dependency represents a dependency of a package
type ErrAlreadyInstalled ¶
type ErrAlreadyInstalled struct {
// contains filtered or unexported fields
}
func (ErrAlreadyInstalled) Error ¶
func (eai ErrAlreadyInstalled) Error() string
type PM ¶
func (*PM) EnumerateDependencies ¶
func (*PM) ImportPackage ¶
func (pm *PM) ImportPackage(dir, dephash string) (*Dependency, error)
ImportPackage downloads the package specified by dephash into the package in the directory 'dir'
func (*PM) InstallDeps ¶
InstallDeps recursively installs all dependencies for the given package
func (*PM) PublishPackage ¶
func (pm *PM) PublishPackage(dir string, pkg *PackageBase) (string, error)
func (*PM) ResolveDepName ¶
ResolveDepName resolves a given package name to a hash using configured repos as a mapping.
func (*PM) ResolveRepoName ¶ added in v0.8.0
TODO: once on ipfs 0.4.0, use the files api
func (*PM) SetProgMeter ¶ added in v0.12.0
func (*PM) ShellOnline ¶ added in v0.12.0
type Package ¶
type Package struct { PackageBase Gx json.RawMessage `json:"gx,omitempty"` }
type PackageBase ¶
type PackageBase struct { Name string `json:"name,omitempty"` Author string `json:"author,omitempty"` Description string `json:"description,omitempty"` Keywords []string `json:"keywords,omitempty"` Version string `json:"version,omitempty"` Dependencies []*Dependency `json:"gxDependencies,omitempty"` Bin string `json:"bin,omitempty"` Build string `json:"build,omitempty"` Test string `json:"test,omitempty"` ReleaseCmd string `json:"releaseCmd,omitempty"` SubtoolRequired bool `json:"subtoolRequired,omitempty"` Language string `json:"language,omitempty"` License string `json:"license"` Bugs BugsObj `json:"bugs"` GxVersion string `json:"gxVersion"` }
func (*PackageBase) FindDep ¶
func (pkg *PackageBase) FindDep(ref string) *Dependency
FindDep returns a reference to the named dependency in this package file
func (*PackageBase) ForEachDep ¶
func (pkg *PackageBase) ForEachDep(cb func(dep *Dependency, pkg *Package) error) error
Click to show internal directories.
Click to hide internal directories.