hackage

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 12, 2019 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// TarballAPI is the format string for the Hackage Tarball API
	TarballAPI = "https://hackage.haskell.org/package/%s-%s/%s-%s.tar.gz"
	// UploadTimeAPI is the format string for the Hackage Upload Time API
	UploadTimeAPI = "https://hackage.haskell.org/package/%s-%s/upload-time"
	// VersionsAPI is the format string for the Hackage Versions API
	VersionsAPI = "https://hackage.haskell.org/package/%s/preferred"
)

Variables

View Source
var TarballRegex = regexp.MustCompile("https?://hackage.haskell.org/package/.*/(.*)-(.*?).tar.gz")

TarballRegex matches HAckage tarballs

Functions

This section is empty.

Types

type Provider

type Provider struct{}

Provider is the upstream provider interface for hackage

func (Provider) Latest

func (c Provider) Latest(name string) (r *results.Result, s results.Status)

Latest finds the newest release for a hackage package

func (Provider) Match

func (c Provider) Match(query string) string

Match checks to see if this provider can handle this kind of query

func (Provider) Name

func (c Provider) Name() string

Name gives the name of this provider

func (Provider) Releases

func (c Provider) Releases(name string) (rs *results.ResultSet, s results.Status)

Releases finds all matching releases for a hackage package

type Release

type Release struct {
	// contains filtered or unexported fields
}

Release is a local representation of a Hackage release

func (*Release) Convert

func (hr *Release) Convert() *results.Result

Convert turns a Hackage release into a Cuppa result

type Releases

type Releases struct {
	Releases []Release
}

Releases is a representation of one or more Hackage releases

func (*Releases) Convert

func (hrs *Releases) Convert(name string) *results.ResultSet

Convert turns a Hackage result set into a Cuppa result set

type Versions

type Versions struct {
	Normal []string `json:"normal-version"`
}

Versions is a JSON representation of Hackage release version numbers

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL