diff options
author | Antoine GIRARD <sapk@users.noreply.github.com> | 2019-07-31 18:45:42 +0200 |
---|---|---|
committer | techknowlogick <techknowlogick@gitea.io> | 2019-07-31 12:45:42 -0400 |
commit | a9b4c8171f3b62a951079cdca67e4cf703eb4cc1 (patch) | |
tree | b52f51ec06fb0b91958708b958f7c15c1623e9d1 /vendor/github.com | |
parent | bb875e98a1ee4a30c67a3b879f924e88789baf67 (diff) | |
download | gitea-a9b4c8171f3b62a951079cdca67e4cf703eb4cc1.tar.gz gitea-a9b4c8171f3b62a951079cdca67e4cf703eb4cc1.zip |
Update src-d/go-git to v4.13.0 (#7688)
* update gopkg.in/src-d/go-git.v4 v4.13.0
* mod tidy
* vendor
Diffstat (limited to 'vendor/github.com')
13 files changed, 66 insertions, 240 deletions
diff --git a/vendor/github.com/kevinburke/ssh_config/.gitignore b/vendor/github.com/kevinburke/ssh_config/.gitignore index a6ef824c1f..e69de29bb2 100644 --- a/vendor/github.com/kevinburke/ssh_config/.gitignore +++ b/vendor/github.com/kevinburke/ssh_config/.gitignore @@ -1 +0,0 @@ -/bazel-* diff --git a/vendor/github.com/kevinburke/ssh_config/.mailmap b/vendor/github.com/kevinburke/ssh_config/.mailmap new file mode 100644 index 0000000000..253406b1cc --- /dev/null +++ b/vendor/github.com/kevinburke/ssh_config/.mailmap @@ -0,0 +1 @@ +Kevin Burke <kevin@burke.dev> Kevin Burke <kev@inburke.com> diff --git a/vendor/github.com/kevinburke/ssh_config/.travis.yml b/vendor/github.com/kevinburke/ssh_config/.travis.yml index 8b5964dd52..4306f30f85 100644 --- a/vendor/github.com/kevinburke/ssh_config/.travis.yml +++ b/vendor/github.com/kevinburke/ssh_config/.travis.yml @@ -3,9 +3,8 @@ go_import_path: github.com/kevinburke/ssh_config language: go go: - - 1.9.x - - 1.10.x - 1.11.x + - 1.12.x - master before_script: diff --git a/vendor/github.com/kevinburke/ssh_config/AUTHORS.txt b/vendor/github.com/kevinburke/ssh_config/AUTHORS.txt index 51b98f897a..cd3379400d 100644 --- a/vendor/github.com/kevinburke/ssh_config/AUTHORS.txt +++ b/vendor/github.com/kevinburke/ssh_config/AUTHORS.txt @@ -1,4 +1,5 @@ Eugene Terentev <eugene@terentev.net> -Kevin Burke <kev@inburke.com> +Kevin Burke <kevin@burke.dev> +Mark Nevill <nev@improbable.io> Sergey Lukjanov <me@slukjanov.name> Wayne Ashley Berry <wayneashleyberry@gmail.com> diff --git a/vendor/github.com/kevinburke/ssh_config/Makefile b/vendor/github.com/kevinburke/ssh_config/Makefile index 90c3a28616..a1880d18e1 100644 --- a/vendor/github.com/kevinburke/ssh_config/Makefile +++ b/vendor/github.com/kevinburke/ssh_config/Makefile @@ -1,15 +1,13 @@ BUMP_VERSION := $(GOPATH)/bin/bump_version -MEGACHECK := $(GOPATH)/bin/megacheck +STATICCHECK := $(GOPATH)/bin/staticcheck WRITE_MAILMAP := $(GOPATH)/bin/write_mailmap -IGNORES := 'github.com/kevinburke/ssh_config/config.go:U1000 github.com/kevinburke/ssh_config/config.go:S1002 github.com/kevinburke/ssh_config/token.go:U1000' +$(STATICCHECK): + go get honnef.co/go/tools/cmd/staticcheck -$(MEGACHECK): - go get honnef.co/go/tools/cmd/megacheck - -lint: $(MEGACHECK) +lint: $(STATICCHECK) go vet ./... - $(MEGACHECK) --ignore=$(IGNORES) ./... + $(STATICCHECK) test: lint @# the timeout helps guard against infinite recursion diff --git a/vendor/github.com/kevinburke/ssh_config/config.go b/vendor/github.com/kevinburke/ssh_config/config.go index f400cef9c5..136f0c35c6 100644 --- a/vendor/github.com/kevinburke/ssh_config/config.go +++ b/vendor/github.com/kevinburke/ssh_config/config.go @@ -34,6 +34,7 @@ import ( "errors" "fmt" "io" + "io/ioutil" "os" osuser "os/user" "path/filepath" @@ -43,7 +44,9 @@ import ( "sync" ) -const version = "0.5" +const version = "1.0" + +var _ = version type configFinder func() string @@ -156,6 +159,7 @@ func (u *UserSettings) GetStrict(alias, key string) (string, error) { } var err error u.userConfig, err = parseFile(filename) + //lint:ignore S1002 I prefer it this way if err != nil && os.IsNotExist(err) == false { u.onceErr = err return @@ -166,11 +170,13 @@ func (u *UserSettings) GetStrict(alias, key string) (string, error) { filename = u.systemConfigFinder() } u.systemConfig, err = parseFile(filename) + //lint:ignore S1002 I prefer it this way if err != nil && os.IsNotExist(err) == false { u.onceErr = err return } }) + //lint:ignore S1002 I prefer it this way if u.onceErr != nil && u.IgnoreErrors == false { return "", u.onceErr } @@ -190,26 +196,29 @@ func parseFile(filename string) (*Config, error) { } func parseWithDepth(filename string, depth uint8) (*Config, error) { - f, err := os.Open(filename) + b, err := ioutil.ReadFile(filename) if err != nil { return nil, err } - defer f.Close() - return decode(f, isSystem(filename), depth) + return decodeBytes(b, isSystem(filename), depth) } func isSystem(filename string) bool { - // TODO i'm not sure this is the best way to detect a system repo + // TODO: not sure this is the best way to detect a system repo return strings.HasPrefix(filepath.Clean(filename), "/etc/ssh") } // Decode reads r into a Config, or returns an error if r could not be parsed as // an SSH config file. func Decode(r io.Reader) (*Config, error) { - return decode(r, false, 0) + b, err := ioutil.ReadAll(r) + if err != nil { + return nil, err + } + return decodeBytes(b, false, 0) } -func decode(r io.Reader, system bool, depth uint8) (c *Config, err error) { +func decodeBytes(b []byte, system bool, depth uint8) (c *Config, err error) { defer func() { if r := recover(); r != nil { if _, ok := r.(runtime.Error); ok { @@ -223,7 +232,7 @@ func decode(r io.Reader, system bool, depth uint8) (c *Config, err error) { } }() - c = parseSSH(lexSSH(r), system, depth) + c = parseSSH(lexSSH(b), system, depth) return c, err } @@ -367,7 +376,7 @@ type Host struct { // EOLComment is the comment (if any) terminating the Host line. EOLComment string hasEquals bool - leadingSpace uint16 // TODO: handle spaces vs tabs here. + leadingSpace int // TODO: handle spaces vs tabs here. // The file starts with an implicit "Host *" declaration. implicit bool } @@ -379,7 +388,7 @@ func (h *Host) Matches(alias string) bool { found := false for i := range h.Patterns { if h.Patterns[i].regex.MatchString(alias) { - if h.Patterns[i].not == true { + if h.Patterns[i].not { // Negated match. "A pattern entry may be negated by prefixing // it with an exclamation mark (`!'). If a negated entry is // matched, then the Host entry is ignored, regardless of @@ -398,6 +407,7 @@ func (h *Host) Matches(alias string) bool { // present in the whitespace in the printed file. func (h *Host) String() string { var buf bytes.Buffer + //lint:ignore S1002 I prefer to write it this way if h.implicit == false { buf.WriteString(strings.Repeat(" ", int(h.leadingSpace))) buf.WriteString("Host") @@ -438,7 +448,7 @@ type KV struct { Value string Comment string hasEquals bool - leadingSpace uint16 // Space before the key. TODO handle spaces vs tabs. + leadingSpace int // Space before the key. TODO handle spaces vs tabs. position Position } @@ -467,7 +477,7 @@ func (k *KV) String() string { // Empty is a line in the config file that contains only whitespace or comments. type Empty struct { Comment string - leadingSpace uint16 // TODO handle spaces vs tabs. + leadingSpace int // TODO handle spaces vs tabs. position Position } @@ -494,7 +504,6 @@ type Include struct { // Comment is the contents of any comment at the end of the Include // statement. Comment string - parsed bool // an include directive can include several different files, and wildcards directives []string @@ -504,7 +513,7 @@ type Include struct { matches []string // actual filenames are listed here files map[string]*Config - leadingSpace uint16 + leadingSpace int position Position depth uint8 hasEquals bool @@ -523,6 +532,7 @@ func removeDups(arr []string) []string { result := make([]string, 0) for v := range arr { + //lint:ignore S1002 I prefer it this way if encountered[arr[v]] == false { encountered[arr[v]] = true result = append(result, arr[v]) @@ -544,7 +554,7 @@ func NewInclude(directives []string, hasEquals bool, pos Position, comment strin directives: directives, files: make(map[string]*Config), position: pos, - leadingSpace: uint16(pos.Col) - 1, + leadingSpace: pos.Col - 1, depth: depth, hasEquals: hasEquals, } diff --git a/vendor/github.com/kevinburke/ssh_config/lexer.go b/vendor/github.com/kevinburke/ssh_config/lexer.go index b0c6a8650c..11680b4c74 100644 --- a/vendor/github.com/kevinburke/ssh_config/lexer.go +++ b/vendor/github.com/kevinburke/ssh_config/lexer.go @@ -1,22 +1,22 @@ package ssh_config import ( - "io" - - buffruneio "github.com/pelletier/go-buffruneio" + "bytes" ) // Define state functions type sshLexStateFn func() sshLexStateFn type sshLexer struct { - input *buffruneio.Reader // Textual source - buffer []rune // Runes composing the current token + inputIdx int + input []rune // Textual source + + buffer []rune // Runes composing the current token tokens chan token - line uint32 - col uint16 - endbufferLine uint32 - endbufferCol uint16 + line int + col int + endbufferLine int + endbufferCol int } func (s *sshLexer) lexComment(previousState sshLexStateFn) sshLexStateFn { @@ -114,16 +114,14 @@ func (s *sshLexer) lexRvalue() sshLexStateFn { } func (s *sshLexer) read() rune { - r, _, err := s.input.ReadRune() - if err != nil { - panic(err) - } + r := s.peek() if r == '\n' { s.endbufferLine++ s.endbufferCol = 1 } else { s.endbufferCol++ } + s.inputIdx++ return r } @@ -197,21 +195,22 @@ func (s *sshLexer) emitWithValue(t tokenType, value string) { } func (s *sshLexer) peek() rune { - r, _, err := s.input.ReadRune() - if err != nil { - panic(err) + if s.inputIdx >= len(s.input) { + return eof } - s.input.UnreadRune() + + r := s.input[s.inputIdx] return r } func (s *sshLexer) follow(next string) bool { + inputIdx := s.inputIdx for _, expectedRune := range next { - r, _, err := s.input.ReadRune() - defer s.input.UnreadRune() - if err != nil { - panic(err) + if inputIdx >= len(s.input) { + return false } + r := s.input[inputIdx] + inputIdx++ if expectedRune != r { return false } @@ -226,10 +225,10 @@ func (s *sshLexer) run() { close(s.tokens) } -func lexSSH(input io.Reader) chan token { - bufferedInput := buffruneio.NewReader(input) +func lexSSH(input []byte) chan token { + runes := bytes.Runes(input) l := &sshLexer{ - input: bufferedInput, + input: runes, tokens: make(chan token), line: 1, col: 1, diff --git a/vendor/github.com/kevinburke/ssh_config/parser.go b/vendor/github.com/kevinburke/ssh_config/parser.go index 02745b4b29..36c42055f5 100644 --- a/vendor/github.com/kevinburke/ssh_config/parser.go +++ b/vendor/github.com/kevinburke/ssh_config/parser.go @@ -149,7 +149,7 @@ func (p *sshParser) parseKV() sshParserStateFn { Value: val.val, Comment: comment, hasEquals: hasEquals, - leadingSpace: uint16(key.Position.Col) - 1, + leadingSpace: key.Position.Col - 1, position: key.Position, } lastHost.Nodes = append(lastHost.Nodes, kv) @@ -169,6 +169,12 @@ func (p *sshParser) parseComment() sshParserStateFn { } func parseSSH(flow chan token, system bool, depth uint8) *Config { + // Ensure we consume tokens to completion even if parser exits early + defer func() { + for range flow { + } + }() + result := newConfig() result.position = Position{1, 1} parser := &sshParser{ diff --git a/vendor/github.com/kevinburke/ssh_config/position.go b/vendor/github.com/kevinburke/ssh_config/position.go index 7304bc3b7f..e0b5e3fb33 100644 --- a/vendor/github.com/kevinburke/ssh_config/position.go +++ b/vendor/github.com/kevinburke/ssh_config/position.go @@ -8,8 +8,8 @@ import "fmt" // column number, respectively. Values of zero or less will cause Invalid(), // to return true. type Position struct { - Line uint32 // line within the document - Col uint16 // column within the line + Line int // line within the document + Col int // column within the line } // String representation of the position. diff --git a/vendor/github.com/pelletier/go-buffruneio/.gitignore b/vendor/github.com/pelletier/go-buffruneio/.gitignore deleted file mode 100644 index c56069fe26..0000000000 --- a/vendor/github.com/pelletier/go-buffruneio/.gitignore +++ /dev/null @@ -1 +0,0 @@ -*.test
\ No newline at end of file diff --git a/vendor/github.com/pelletier/go-buffruneio/.travis.yml b/vendor/github.com/pelletier/go-buffruneio/.travis.yml deleted file mode 100644 index 9720442cd8..0000000000 --- a/vendor/github.com/pelletier/go-buffruneio/.travis.yml +++ /dev/null @@ -1,7 +0,0 @@ -language: go -sudo: false -go: - - 1.3.3 - - 1.4.3 - - 1.5.3 - - tip diff --git a/vendor/github.com/pelletier/go-buffruneio/README.md b/vendor/github.com/pelletier/go-buffruneio/README.md deleted file mode 100644 index ff608b3ab8..0000000000 --- a/vendor/github.com/pelletier/go-buffruneio/README.md +++ /dev/null @@ -1,62 +0,0 @@ -# buffruneio - -[![Tests Status](https://travis-ci.org/pelletier/go-buffruneio.svg?branch=master)](https://travis-ci.org/pelletier/go-buffruneio) -[![GoDoc](https://godoc.org/github.com/pelletier/go-buffruneio?status.svg)](https://godoc.org/github.com/pelletier/go-buffruneio) - -Buffruneio is a wrapper around bufio to provide buffered runes access with -unlimited unreads. - -```go -import "github.com/pelletier/go-buffruneio" -``` - -## Examples - -```go -import ( - "fmt" - "github.com/pelletier/go-buffruneio" - "strings" -) - -reader := buffruneio.NewReader(strings.NewReader("abcd")) -fmt.Println(reader.ReadRune()) // 'a' -fmt.Println(reader.ReadRune()) // 'b' -fmt.Println(reader.ReadRune()) // 'c' -reader.UnreadRune() -reader.UnreadRune() -fmt.Println(reader.ReadRune()) // 'b' -fmt.Println(reader.ReadRune()) // 'c' -``` - -## Documentation - -The documentation and additional examples are available at -[godoc.org](http://godoc.org/github.com/pelletier/go-buffruneio). - -## Contribute - -Feel free to report bugs and patches using GitHub's pull requests system on -[pelletier/go-toml](https://github.com/pelletier/go-buffruneio). Any feedback is -much appreciated! - -## LICENSE - -Copyright (c) 2016 Thomas Pelletier - -Permission is hereby granted, free of charge, to any person obtaining a copy of -this software and associated documentation files (the "Software"), to deal in -the Software without restriction, including without limitation the rights to -use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software is furnished to do so, -subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS -FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR -COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER -IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/vendor/github.com/pelletier/go-buffruneio/buffruneio.go b/vendor/github.com/pelletier/go-buffruneio/buffruneio.go deleted file mode 100644 index 4e6d6ea610..0000000000 --- a/vendor/github.com/pelletier/go-buffruneio/buffruneio.go +++ /dev/null @@ -1,117 +0,0 @@ -// Package buffruneio is a wrapper around bufio to provide buffered runes access with unlimited unreads. -package buffruneio - -import ( - "bufio" - "container/list" - "errors" - "io" -) - -// Rune to indicate end of file. -const ( - EOF = -(iota + 1) -) - -// ErrNoRuneToUnread is returned by UnreadRune() when the read index is already at the beginning of the buffer. -var ErrNoRuneToUnread = errors.New("no rune to unwind") - -// Reader implements runes buffering for an io.Reader object. -type Reader struct { - buffer *list.List - current *list.Element - input *bufio.Reader -} - -// NewReader returns a new Reader. -func NewReader(rd io.Reader) *Reader { - return &Reader{ - buffer: list.New(), - input: bufio.NewReader(rd), - } -} - -type runeWithSize struct { - r rune - size int -} - -func (rd *Reader) feedBuffer() error { - r, size, err := rd.input.ReadRune() - - if err != nil { - if err != io.EOF { - return err - } - r = EOF - } - - newRuneWithSize := runeWithSize{r, size} - - rd.buffer.PushBack(newRuneWithSize) - if rd.current == nil { - rd.current = rd.buffer.Back() - } - return nil -} - -// ReadRune reads the next rune from buffer, or from the underlying reader if needed. -func (rd *Reader) ReadRune() (rune, int, error) { - if rd.current == rd.buffer.Back() || rd.current == nil { - err := rd.feedBuffer() - if err != nil { - return EOF, 0, err - } - } - - runeWithSize := rd.current.Value.(runeWithSize) - rd.current = rd.current.Next() - return runeWithSize.r, runeWithSize.size, nil -} - -// UnreadRune pushes back the previously read rune in the buffer, extending it if needed. -func (rd *Reader) UnreadRune() error { - if rd.current == rd.buffer.Front() { - return ErrNoRuneToUnread - } - if rd.current == nil { - rd.current = rd.buffer.Back() - } else { - rd.current = rd.current.Prev() - } - return nil -} - -// Forget removes runes stored before the current stream position index. -func (rd *Reader) Forget() { - if rd.current == nil { - rd.current = rd.buffer.Back() - } - for ; rd.current != rd.buffer.Front(); rd.buffer.Remove(rd.current.Prev()) { - } -} - -// PeekRune returns at most the next n runes, reading from the uderlying source if -// needed. Does not move the current index. It includes EOF if reached. -func (rd *Reader) PeekRunes(n int) []rune { - res := make([]rune, 0, n) - cursor := rd.current - for i := 0; i < n; i++ { - if cursor == nil { - err := rd.feedBuffer() - if err != nil { - return res - } - cursor = rd.buffer.Back() - } - if cursor != nil { - r := cursor.Value.(runeWithSize).r - res = append(res, r) - if r == EOF { - return res - } - cursor = cursor.Next() - } - } - return res -} |