From 30110fcfc29293927a6c497c49440cf28ef620ee Mon Sep 17 00:00:00 2001 From: Alexander Neumann Date: Fri, 30 Mar 2018 11:48:16 +0200 Subject: [PATCH] Update vendored library github.com/cpuguy83/go-md2man --- Gopkg.lock | 4 +- .../cpuguy83/go-md2man/.gometalinter.json | 20 +++++++ .../github.com/cpuguy83/go-md2man/.travis.yml | 13 +++++ vendor/github.com/cpuguy83/go-md2man/Makefile | 2 + .../github.com/cpuguy83/go-md2man/README.md | 7 ++- .../github.com/cpuguy83/go-md2man/md2man.go | 4 +- .../cpuguy83/go-md2man/md2man/md2man.go | 1 + .../cpuguy83/go-md2man/md2man/roff.go | 54 +++++++------------ .../cpuguy83/go-md2man/md2man/roff_test.go | 16 +++++- .../cpuguy83/go-md2man/script/setup/dev-tools | 7 +++ .../cpuguy83/go-md2man/script/validate/vendor | 18 +++++++ 11 files changed, 104 insertions(+), 42 deletions(-) create mode 100644 vendor/github.com/cpuguy83/go-md2man/.gometalinter.json create mode 100644 vendor/github.com/cpuguy83/go-md2man/.travis.yml create mode 100644 vendor/github.com/cpuguy83/go-md2man/Makefile create mode 100755 vendor/github.com/cpuguy83/go-md2man/script/setup/dev-tools create mode 100755 vendor/github.com/cpuguy83/go-md2man/script/validate/vendor diff --git a/Gopkg.lock b/Gopkg.lock index c215f1b0e..d5ba5f610 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -34,8 +34,8 @@ [[projects]] name = "github.com/cpuguy83/go-md2man" packages = ["md2man"] - revision = "1d903dcb749992f3741d744c0f8376b4bd7eb3e1" - version = "v1.0.7" + revision = "20f5889cbdc3c73dbd2862796665e7c465ade7d1" + version = "v1.0.8" [[projects]] name = "github.com/dgrijalva/jwt-go" diff --git a/vendor/github.com/cpuguy83/go-md2man/.gometalinter.json b/vendor/github.com/cpuguy83/go-md2man/.gometalinter.json new file mode 100644 index 000000000..a5f831632 --- /dev/null +++ b/vendor/github.com/cpuguy83/go-md2man/.gometalinter.json @@ -0,0 +1,20 @@ +{ + "Vendor": true, + "Deadline": "2m", + "Sort": ["linter", "severity", "path", "line"], + "Enable": [ + "deadcode", + "errcheck", + "structcheck", + "unused", + "varcheck", + "unconvert", + "gofmt", + "goimports", + "golint", + "ineffassign", + "vet", + "goconst", + "megacheck" + ] +} diff --git a/vendor/github.com/cpuguy83/go-md2man/.travis.yml b/vendor/github.com/cpuguy83/go-md2man/.travis.yml new file mode 100644 index 000000000..e1891f1f9 --- /dev/null +++ b/vendor/github.com/cpuguy83/go-md2man/.travis.yml @@ -0,0 +1,13 @@ +language: go +go: + - 1.x + - 1.8.x + - 1.9.x + - tip +script: + - script/setup/dev-tools + - script/validate/vendor + - go build -i . + - make check + - go build + - go test -v ./... diff --git a/vendor/github.com/cpuguy83/go-md2man/Makefile b/vendor/github.com/cpuguy83/go-md2man/Makefile new file mode 100644 index 000000000..6e30faf82 --- /dev/null +++ b/vendor/github.com/cpuguy83/go-md2man/Makefile @@ -0,0 +1,2 @@ +check: + gometalinter --config .gometalinter.json ./... diff --git a/vendor/github.com/cpuguy83/go-md2man/README.md b/vendor/github.com/cpuguy83/go-md2man/README.md index b7aae65d2..29ed7c9e9 100644 --- a/vendor/github.com/cpuguy83/go-md2man/README.md +++ b/vendor/github.com/cpuguy83/go-md2man/README.md @@ -12,7 +12,10 @@ Uses blackfriday to process markdown into man pages. ### How to contribute -We use [govend](https://github.com/govend/govend) for vendoring Go packages. +We use [dep](https://github.com/golang/dep/) for vendoring Go packages. +See dep documentation for how to update. -How to update dependencies: `govend -v -u --prune` +### TODO +- Needs oh so much testing love +- Look into blackfriday's 2.0 API diff --git a/vendor/github.com/cpuguy83/go-md2man/md2man.go b/vendor/github.com/cpuguy83/go-md2man/md2man.go index 8f6dcdaed..c35dd3352 100644 --- a/vendor/github.com/cpuguy83/go-md2man/md2man.go +++ b/vendor/github.com/cpuguy83/go-md2man/md2man.go @@ -24,7 +24,7 @@ func main() { os.Exit(1) } } - defer inFile.Close() + defer inFile.Close() // nolint: errcheck doc, err := ioutil.ReadAll(inFile) if err != nil { @@ -41,7 +41,7 @@ func main() { fmt.Println(err) os.Exit(1) } - defer outFile.Close() + defer outFile.Close() // nolint: errcheck } _, err = outFile.Write(out) if err != nil { diff --git a/vendor/github.com/cpuguy83/go-md2man/md2man/md2man.go b/vendor/github.com/cpuguy83/go-md2man/md2man/md2man.go index 8f44fa155..af62279a6 100644 --- a/vendor/github.com/cpuguy83/go-md2man/md2man/md2man.go +++ b/vendor/github.com/cpuguy83/go-md2man/md2man/md2man.go @@ -4,6 +4,7 @@ import ( "github.com/russross/blackfriday" ) +// Render converts a markdown document into a roff formatted document. func Render(doc []byte) []byte { renderer := RoffRenderer(0) extensions := 0 diff --git a/vendor/github.com/cpuguy83/go-md2man/md2man/roff.go b/vendor/github.com/cpuguy83/go-md2man/md2man/roff.go index 292fca343..8c29ec687 100644 --- a/vendor/github.com/cpuguy83/go-md2man/md2man/roff.go +++ b/vendor/github.com/cpuguy83/go-md2man/md2man/roff.go @@ -9,10 +9,12 @@ import ( "github.com/russross/blackfriday" ) -type roffRenderer struct{} - -var listCounter int +type roffRenderer struct { + ListCounters []int +} +// RoffRenderer creates a new blackfriday Renderer for generating roff documents +// from markdown func RoffRenderer(flags int) blackfriday.Renderer { return &roffRenderer{} } @@ -55,7 +57,7 @@ func (r *roffRenderer) BlockQuote(out *bytes.Buffer, text []byte) { out.WriteString("\n.RE\n") } -func (r *roffRenderer) BlockHtml(out *bytes.Buffer, text []byte) { +func (r *roffRenderer) BlockHtml(out *bytes.Buffer, text []byte) { // nolint: golint out.Write(text) } @@ -86,19 +88,20 @@ func (r *roffRenderer) HRule(out *bytes.Buffer) { func (r *roffRenderer) List(out *bytes.Buffer, text func() bool, flags int) { marker := out.Len() - if flags&blackfriday.LIST_TYPE_ORDERED != 0 { - listCounter = 1 - } + r.ListCounters = append(r.ListCounters, 1) + out.WriteString("\n.RS\n") if !text() { out.Truncate(marker) return } + r.ListCounters = r.ListCounters[:len(r.ListCounters)-1] + out.WriteString("\n.RE\n") } func (r *roffRenderer) ListItem(out *bytes.Buffer, text []byte, flags int) { if flags&blackfriday.LIST_TYPE_ORDERED != 0 { - out.WriteString(fmt.Sprintf(".IP \"%3d.\" 5\n", listCounter)) - listCounter += 1 + out.WriteString(fmt.Sprintf(".IP \"%3d.\" 5\n", r.ListCounters[len(r.ListCounters)-1])) + r.ListCounters[len(r.ListCounters)-1]++ } else { out.WriteString(".IP \\(bu 2\n") } @@ -121,16 +124,16 @@ func (r *roffRenderer) Paragraph(out *bytes.Buffer, text func() bool) { func (r *roffRenderer) Table(out *bytes.Buffer, header []byte, body []byte, columnData []int) { out.WriteString("\n.TS\nallbox;\n") - max_delims := 0 + maxDelims := 0 lines := strings.Split(strings.TrimRight(string(header), "\n")+"\n"+strings.TrimRight(string(body), "\n"), "\n") for _, w := range lines { - cur_delims := strings.Count(w, "\t") - if cur_delims > max_delims { - max_delims = cur_delims + curDelims := strings.Count(w, "\t") + if curDelims > maxDelims { + maxDelims = curDelims } } - out.Write([]byte(strings.Repeat("l ", max_delims+1) + "\n")) - out.Write([]byte(strings.Repeat("l ", max_delims+1) + ".\n")) + out.Write([]byte(strings.Repeat("l ", maxDelims+1) + "\n")) + out.Write([]byte(strings.Repeat("l ", maxDelims+1) + ".\n")) out.Write(header) if len(header) > 0 { out.Write([]byte("\n")) @@ -215,7 +218,7 @@ func (r *roffRenderer) Link(out *bytes.Buffer, link []byte, title []byte, conten r.AutoLink(out, link, 0) } -func (r *roffRenderer) RawHtmlTag(out *bytes.Buffer, tag []byte) { +func (r *roffRenderer) RawHtmlTag(out *bytes.Buffer, tag []byte) { // nolint: golint out.Write(tag) } @@ -236,25 +239,6 @@ func (r *roffRenderer) Entity(out *bytes.Buffer, entity []byte) { out.WriteString(html.UnescapeString(string(entity))) } -func processFooterText(text []byte) []byte { - text = bytes.TrimPrefix(text, []byte("% ")) - newText := []byte{} - textArr := strings.Split(string(text), ") ") - - for i, w := range textArr { - if i == 0 { - w = strings.Replace(w, "(", "\" \"", 1) - w = fmt.Sprintf("\"%s\"", w) - } else { - w = fmt.Sprintf(" \"%s\"", w) - } - newText = append(newText, []byte(w)...) - } - newText = append(newText, []byte(" \"\"")...) - - return newText -} - func (r *roffRenderer) NormalText(out *bytes.Buffer, text []byte) { escapeSpecialChars(out, text) } diff --git a/vendor/github.com/cpuguy83/go-md2man/md2man/roff_test.go b/vendor/github.com/cpuguy83/go-md2man/md2man/roff_test.go index b8804f133..eb5fab639 100644 --- a/vendor/github.com/cpuguy83/go-md2man/md2man/roff_test.go +++ b/vendor/github.com/cpuguy83/go-md2man/md2man/roff_test.go @@ -5,6 +5,20 @@ import ( "testing" ) +func TestTitleBlock(t *testing.T) { + r := &roffRenderer{} + buf := bytes.NewBuffer(nil) + + title := []byte("% stuff\n% more stuff\n% even more stuff") + + r.TitleBlock(buf, title) + expected := ".TH \"stuff\" \"more stuff\" \"even more stuff\" \n.nh\n.ad l\n" + actual := buf.String() + if expected != actual { + t.Fatalf("expected:\n%s\nactual:\n%s", expected, actual) + } +} + func TestBlockCode(t *testing.T) { r := &roffRenderer{} buf := bytes.NewBuffer(nil) @@ -37,7 +51,7 @@ func TestTableCell(t *testing.T) { r.TableCell(buf, cell, 0) expected := " " if buf.String() != expected { - t.Fatal("expected %q, got %q", expected, buf.String()) + t.Fatalf("expected %q, got %q", expected, buf.String()) } r.TableCell(buf, cell, 0) diff --git a/vendor/github.com/cpuguy83/go-md2man/script/setup/dev-tools b/vendor/github.com/cpuguy83/go-md2man/script/setup/dev-tools new file mode 100755 index 000000000..8efe701e9 --- /dev/null +++ b/vendor/github.com/cpuguy83/go-md2man/script/setup/dev-tools @@ -0,0 +1,7 @@ +#!/usr/bin/env bash + +set -eu -o pipefail + +go get -u github.com/alecthomas/gometalinter +gometalinter --install >/dev/null +go get -u github.com/golang/dep/cmd/dep diff --git a/vendor/github.com/cpuguy83/go-md2man/script/validate/vendor b/vendor/github.com/cpuguy83/go-md2man/script/validate/vendor new file mode 100755 index 000000000..ef29b4cde --- /dev/null +++ b/vendor/github.com/cpuguy83/go-md2man/script/validate/vendor @@ -0,0 +1,18 @@ +#!/usr/bin/env bash +set -eu -o pipefail + +dep ensure + +DIFF_PATH="vendor/" +DIFF=$(git status --porcelain -- "$DIFF_PATH") + +if [ "$DIFF" ]; then + echo + echo "These files were modified:" + echo + echo "$DIFF" + echo + exit 1 +else + echo "$DIFF_PATH is correct" +fi