mirror of
https://git.vectorsigma.ru/public/atlantis.git
synced 2026-07-29 14:58:19 +00:00
Vendor using dep
This commit is contained in:
57
vendor/github.com/google/go-github/github/github.go
generated
vendored
57
vendor/github.com/google/go-github/github/github.go
generated
vendored
@@ -27,7 +27,7 @@ import (
|
||||
)
|
||||
|
||||
const (
|
||||
libraryVersion = "8"
|
||||
libraryVersion = "11"
|
||||
defaultBaseURL = "https://api.github.com/"
|
||||
uploadBaseURL = "https://uploads.github.com/"
|
||||
userAgent = "go-github/" + libraryVersion
|
||||
@@ -67,10 +67,6 @@ const (
|
||||
// https://developer.github.com/changes/2016-05-12-reactions-api-preview/
|
||||
mediaTypeReactionsPreview = "application/vnd.github.squirrel-girl-preview"
|
||||
|
||||
// https://developer.github.com/changes/2016-04-01-squash-api-preview/
|
||||
// https://developer.github.com/changes/2016-09-26-pull-request-merge-api-update/
|
||||
mediaTypeSquashPreview = "application/vnd.github.polaris-preview+json"
|
||||
|
||||
// https://developer.github.com/changes/2016-04-04-git-signing-api-preview/
|
||||
mediaTypeGitSigningPreview = "application/vnd.github.cryptographer-preview+json"
|
||||
|
||||
@@ -100,6 +96,12 @@ const (
|
||||
|
||||
// https://developer.github.com/changes/2017-05-23-coc-api/
|
||||
mediaTypeCodesOfConductPreview = "application/vnd.github.scarlet-witch-preview+json"
|
||||
|
||||
// https://developer.github.com/changes/2017-07-17-update-topics-on-repositories/
|
||||
mediaTypeTopicsPreview = "application/vnd.github.mercy-preview+json"
|
||||
|
||||
// https://developer.github.com/changes/2017-07-26-team-review-request-thor-preview/
|
||||
mediaTypeTeamReviewPreview = "application/vnd.github.thor-preview+json"
|
||||
)
|
||||
|
||||
// A Client manages communication with the GitHub API.
|
||||
@@ -239,13 +241,14 @@ func NewClient(httpClient *http.Client) *Client {
|
||||
// specified, the value pointed to by body is JSON encoded and included as the
|
||||
// request body.
|
||||
func (c *Client) NewRequest(method, urlStr string, body interface{}) (*http.Request, error) {
|
||||
rel, err := url.Parse(urlStr)
|
||||
if !strings.HasSuffix(c.BaseURL.Path, "/") {
|
||||
return nil, fmt.Errorf("BaseURL must have a trailing slash, but %q does not", c.BaseURL)
|
||||
}
|
||||
u, err := c.BaseURL.Parse(urlStr)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
u := c.BaseURL.ResolveReference(rel)
|
||||
|
||||
var buf io.ReadWriter
|
||||
if body != nil {
|
||||
buf = new(bytes.Buffer)
|
||||
@@ -274,12 +277,14 @@ func (c *Client) NewRequest(method, urlStr string, body interface{}) (*http.Requ
|
||||
// urlStr, in which case it is resolved relative to the UploadURL of the Client.
|
||||
// Relative URLs should always be specified without a preceding slash.
|
||||
func (c *Client) NewUploadRequest(urlStr string, reader io.Reader, size int64, mediaType string) (*http.Request, error) {
|
||||
rel, err := url.Parse(urlStr)
|
||||
if !strings.HasSuffix(c.UploadURL.Path, "/") {
|
||||
return nil, fmt.Errorf("UploadURL must have a trailing slash, but %q does not", c.UploadURL)
|
||||
}
|
||||
u, err := c.UploadURL.Parse(urlStr)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
u := c.UploadURL.ResolveReference(rel)
|
||||
req, err := http.NewRequest("POST", u.String(), reader)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
@@ -315,6 +320,7 @@ type Response struct {
|
||||
}
|
||||
|
||||
// newResponse creates a new Response for the provided http.Response.
|
||||
// r must not be nil.
|
||||
func newResponse(r *http.Response) *Response {
|
||||
response := &Response{Response: r}
|
||||
response.populatePageValues()
|
||||
@@ -393,7 +399,7 @@ func parseRate(r *http.Response) Rate {
|
||||
// The provided ctx must be non-nil. If it is canceled or times out,
|
||||
// ctx.Err() will be returned.
|
||||
func (c *Client) Do(ctx context.Context, req *http.Request, v interface{}) (*Response, error) {
|
||||
ctx, req = withContext(ctx, req)
|
||||
req = withContext(ctx, req)
|
||||
|
||||
rateLimitCategory := category(req.URL.Path)
|
||||
|
||||
@@ -530,9 +536,9 @@ type RateLimitError struct {
|
||||
}
|
||||
|
||||
func (r *RateLimitError) Error() string {
|
||||
return fmt.Sprintf("%v %v: %d %v; rate reset in %v",
|
||||
return fmt.Sprintf("%v %v: %d %v %v",
|
||||
r.Response.Request.Method, sanitizeURL(r.Response.Request.URL),
|
||||
r.Response.StatusCode, r.Message, r.Rate.Reset.Time.Sub(time.Now()))
|
||||
r.Response.StatusCode, r.Message, formatRateReset(r.Rate.Reset.Time.Sub(time.Now())))
|
||||
}
|
||||
|
||||
// AcceptedError occurs when GitHub returns 202 Accepted response with an
|
||||
@@ -880,6 +886,31 @@ func cloneRequest(r *http.Request) *http.Request {
|
||||
return r2
|
||||
}
|
||||
|
||||
// formatRateReset formats d to look like "[rate reset in 2s]" or
|
||||
// "[rate reset in 87m02s]" for the positive durations. And like "[rate limit was reset 87m02s ago]"
|
||||
// for the negative cases.
|
||||
func formatRateReset(d time.Duration) string {
|
||||
isNegative := d < 0
|
||||
if isNegative {
|
||||
d *= -1
|
||||
}
|
||||
secondsTotal := int(0.5 + d.Seconds())
|
||||
minutes := secondsTotal / 60
|
||||
seconds := secondsTotal - minutes*60
|
||||
|
||||
var timeString string
|
||||
if minutes > 0 {
|
||||
timeString = fmt.Sprintf("%dm%02ds", minutes, seconds)
|
||||
} else {
|
||||
timeString = fmt.Sprintf("%ds", seconds)
|
||||
}
|
||||
|
||||
if isNegative {
|
||||
return fmt.Sprintf("[rate limit was reset %v ago]", timeString)
|
||||
}
|
||||
return fmt.Sprintf("[rate reset in %v]", timeString)
|
||||
}
|
||||
|
||||
// Bool is a helper routine that allocates a new bool value
|
||||
// to store v and returns a pointer to it.
|
||||
func Bool(v bool) *bool { return &v }
|
||||
|
||||
Reference in New Issue
Block a user