Documentation
¶
Index ¶
- type Info
- type InfoDownloads
- type Package
- type PackageIndex
- func (p *PackageIndex) CheckSourceDeps(projectName string) error
- func (p *PackageIndex) Get(ctx context.Context, projectName, version string) (*Package, error)
- func (p *PackageIndex) GetLatest(ctx context.Context, projectName string) (*Package, error)
- func (p *PackageIndex) GetVersion(ctx context.Context, projectName, version string) (*Package, error)
- type PythonContext
- type Release
- type ReleaseDigests
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Info ¶
type Info struct {
Author string `json:"author"`
AuthorEmail string `json:"author_email"`
BugtrackURL string `json:"bugtrack_url"`
Classifiers []string `json:"classifiers"`
Description string `json:"description"`
DescriptionContentType string `json:"description_content_type"`
DocsURL string `json:"docs_url"`
DownloadURL string `json:"download_url"`
Downloads InfoDownloads `json:"downloads"`
HomePage string `json:"home_page"`
Keywords string `json:"keywords"`
License string `json:"license"`
Maintainer string `json:"maintainer"`
MaintainerEmail string `json:"maintainer_email"`
Name string `json:"name"`
PackageURL string `json:"package_url"`
Platform string `json:"platform"`
ProjectURL string `json:"project_url"`
ProjectURLs map[string]string `json:"project_urls"`
ReleaseURL string `json:"release_url"`
RequiresDist []string `json:"requires_dist"`
RequiresPython string `json:"requires_python"`
Summary string `json:"summary"`
Version string `json:"version"`
Yanked bool `json:"yanked"`
YankedReason string `json:"yanked_reason"`
}
func (*Info) GetSourceURL ¶ added in v0.5.0
GetSourceURL returns the source url for the package. This is sometimes Homepage, sometimes in the ProjectUrls as Homepage or Source.
type InfoDownloads ¶
type Package ¶
type Package struct {
Info Info `json:"info"`
LastSerial int `json:"last_serial"`
Releases map[string][]Release `json:"releases"`
URLs []Release `json:"urls"`
Dependencies []string `json:"dependencies"`
}
Package is the json response from https://pypi.org/pypi/PACKAGE_NAME/json more details at https://warehouse.pypa.io/api-reference/json.html
type PackageIndex ¶
type PackageIndex struct {
Client *rlhttp.RLHTTPClient
// contains filtered or unexported fields
}
func NewPackageIndex ¶
func NewPackageIndex(url string) *PackageIndex
func (*PackageIndex) CheckSourceDeps ¶
func (p *PackageIndex) CheckSourceDeps(projectName string) error
CheckSourceDeps not all packages list requirements, so we may need to dive into the source code to find deps
func (*PackageIndex) GetVersion ¶
type PythonContext ¶
type PythonContext struct {
// PackageName is the name of the python package to build and install
PackageName string
// PackageVersion is the version of python package to build and install
PackageVersion string
// PythonVersion is the version of python to build the package against
PythonVersion string
// PackageIndex - Client for talking to pypi
PackageIndex *PackageIndex
// OutDir is the output directory for the generated melange files.
OutDir string
// BaseURIFormat is the base URI which should contain a %s for the
// package name.
BaseURIFormat string
// AdditionalRepositories contains any additional apk repos to add
// to the manifest.
AdditionalRepositories []string
// AdditionalKeyrings contains any additional apk keys to add
// to the manifest.
AdditionalKeyrings []string
// ToGenerate is the map of dependencies that have been visited when the
// transitive dependency list is being calculated.
ToGenerate map[string]Package
// Pypi Package metadata about package
Package Package
// ToCheck is the list of dependencies that have yet to be checked for
// transitive dependencies.
ToCheck []string
// If non-nil, this is the github client to use for fetching metadata
// to get the commit data for the package.
GithubClient *github.Client
// If non-nil, this is the Release Monitoring client to use for fetching
// metadata to get the monitoring data for the package.
MonitoringClient *relmon.MonitorFinder
}
PythonContext is the execution context for the python subcommand.
type Release ¶
type Release struct {
CommentText string `json:"comment_text"`
Digest ReleaseDigests `json:"digests"`
Downloads int `json:"downloads"`
Filename string `json:"filename"`
HasSig bool `json:"has_sig"`
Md5Digest string `json:"md5_digest"`
PackageType string `json:"packagetype"`
PythonVersion string `json:"python_version"`
Size int `json:"size"`
UploadTimeIso8601 string `json:"upload_time_iso_8601"`
URL string `json:"url"`
Yanked bool `json:"yanked"`
YankedReason string `json:"yanked_reason"`
}
type ReleaseDigests ¶
Click to show internal directories.
Click to hide internal directories.