diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-12-02 15:23:25 +0300 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2020-12-03 15:12:58 +0300 |
commit | d90e37e0c6e812f9913bf256c9c81aa05b7a08aa (patch) | |
tree | 7b1b14464eefec1188ca2eed53c64e4823453cc9 /resources | |
parent | 32471b57bde51c55a15dbf1db75d6e5f7232c347 (diff) |
all: Format code with gofumpt
See https://github.com/mvdan/gofumpt
Diffstat (limited to 'resources')
71 files changed, 154 insertions, 264 deletions
diff --git a/resources/image.go b/resources/image.go index e999c5d96..ac0a0cc97 100644 --- a/resources/image.go +++ b/resources/image.go @@ -76,13 +76,10 @@ func (i *imageResource) Exif() *exif.Exif { } func (i *imageResource) getExif() *exif.Exif { - i.metaInit.Do(func() { - supportsExif := i.Format == images.JPEG || i.Format == images.TIFF if !supportsExif { return - } key := i.getImageMetaCacheTargetPath() @@ -104,7 +101,6 @@ func (i *imageResource) getExif() *exif.Exif { } create := func(info filecache.ItemInfo, w io.WriteCloser) (err error) { - f, err := i.root.ReadSeekCloser() if err != nil { i.metaInitErr = err @@ -123,11 +119,9 @@ func (i *imageResource) getExif() *exif.Exif { // Also write it to cache enc := json.NewEncoder(w) return enc.Encode(i.meta) - } _, i.metaInitErr = i.getSpec().imageCache.fileCache.ReadOrCreate(key, read, create) - }) if i.metaInitErr != nil { @@ -296,7 +290,6 @@ func (i *imageResource) doWithImageConfig(conf images.ImageConfig, f func(src im return ci, converted, nil }) - if err != nil { if i.root != nil && i.root.getFileInfo() != nil { return nil, errors.Wrapf(err, "image %q", i.root.getFileInfo().Meta().Filename()) diff --git a/resources/image_test.go b/resources/image_test.go index 1be9a5f8d..542ecb9b9 100644 --- a/resources/image_test.go +++ b/resources/image_test.go @@ -413,11 +413,9 @@ func TestImageExif(t *testing.T) { image = fetchResourceForSpec(spec, c, "sunset.jpg").(resource.Image) // This will read from file cache. getAndCheckExif(c, image) - } func BenchmarkImageExif(b *testing.B) { - getImages := func(c *qt.C, b *testing.B, fs afero.Fs) []resource.Image { spec := newTestResourceSpec(specDescriptor{fs: fs, c: c}) images := make([]resource.Image, b.N) @@ -431,7 +429,6 @@ func BenchmarkImageExif(b *testing.B) { x := image.Exif() c.Assert(x, qt.Not(qt.IsNil)) c.Assert(x.Long, qt.Equals, float64(-4.50846)) - } b.Run("Cold cache", func(b *testing.B) { @@ -443,7 +440,6 @@ func BenchmarkImageExif(b *testing.B) { for i := 0; i < b.N; i++ { getAndCheckExif(c, images[i]) } - }) b.Run("Cold cache, 10", func(b *testing.B) { @@ -457,7 +453,6 @@ func BenchmarkImageExif(b *testing.B) { getAndCheckExif(c, images[i]) } } - }) b.Run("Warm cache", func(b *testing.B) { @@ -475,9 +470,7 @@ func BenchmarkImageExif(b *testing.B) { for i := 0; i < b.N; i++ { getAndCheckExif(c, images[i]) } - }) - } // usesFMA indicates whether "fused multiply and add" (FMA) instruction is @@ -680,7 +673,6 @@ func TestImageOperationsGolden(t *testing.T) { f1.Close() f2.Close() } - } func BenchmarkResizeParallel(b *testing.B) { diff --git a/resources/images/color.go b/resources/images/color.go index b17173e26..0a0db9fe0 100644 --- a/resources/images/color.go +++ b/resources/images/color.go @@ -81,5 +81,4 @@ func hexStringToColor(s string) (color.Color, error) { } return color.RGBA{b[0], b[1], b[2], b[3]}, nil - } diff --git a/resources/images/color_test.go b/resources/images/color_test.go index 3ef9f76cc..0a1718180 100644 --- a/resources/images/color_test.go +++ b/resources/images/color_test.go @@ -74,7 +74,6 @@ func TestAddColorToPalette(t *testing.T) { c.Assert(AddColorToPalette(white, palette), qt.HasLen, 2) c.Assert(AddColorToPalette(blue1, palette), qt.HasLen, 3) c.Assert(AddColorToPalette(blue2, palette), qt.HasLen, 3) - } func TestReplaceColorInPalette(t *testing.T) { diff --git a/resources/images/config_test.go b/resources/images/config_test.go index f60cce9ef..2a0de9ec0 100644 --- a/resources/images/config_test.go +++ b/resources/images/config_test.go @@ -77,7 +77,6 @@ func TestDecodeConfig(t *testing.T) { imaging = imagingConfig.Cfg c.Assert(imaging.Exif.DisableLatLong, qt.Equals, true) c.Assert(imaging.Exif.ExcludeFields, qt.Equals, "GPS|Exif|Exposure[M|P|B]|Contrast|Resolution|Sharp|JPEG|Metering|Sensing|Saturation|ColorSpace|Flash|WhiteBalance") - } func TestDecodeImageConfig(t *testing.T) { diff --git a/resources/images/exif/exif.go b/resources/images/exif/exif.go index b5161f770..720d200c9 100644 --- a/resources/images/exif/exif.go +++ b/resources/images/exif/exif.go @@ -93,7 +93,6 @@ func compileRegexp(expression string) (*regexp.Regexp, error) { } return regexp.Compile(expression) - } func NewDecoder(options ...func(*Decoder) error) (*Decoder, error) { @@ -118,7 +117,6 @@ func (d *Decoder) Decode(r io.Reader) (ex *Exif, err error) { x, err = _exif.Decode(r) if err != nil { if err.Error() == "EOF" { - // Found no Exif return nil, nil } @@ -190,7 +188,6 @@ func decodeTag(x *_exif.Exif, f _exif.FieldName, t *tiff.Tag) (interface{}, erro } return rv, nil - } // Code borrowed from exif.DateTime and adjusted. @@ -202,7 +199,6 @@ func tryParseDate(x *_exif.Exif, s string) (time.Time, error) { timeZone = tz } return time.ParseInLocation(exifTimeLayout, dateStr, timeZone) - } type exifWalker struct { diff --git a/resources/images/exif/exif_test.go b/resources/images/exif/exif_test.go index c3cfad1cc..12e3b7f71 100644 --- a/resources/images/exif/exif_test.go +++ b/resources/images/exif/exif_test.go @@ -60,7 +60,6 @@ func TestExif(t *testing.T) { err = json.Unmarshal(data, x2) c.Assert(x2, eq, x) - } func TestExifPNG(t *testing.T) { diff --git a/resources/images/filters_test.go b/resources/images/filters_test.go index 1243e483b..84c8b540d 100644 --- a/resources/images/filters_test.go +++ b/resources/images/filters_test.go @@ -30,5 +30,4 @@ func TestFilterHash(t *testing.T) { c.Assert(helpers.HashString(f.Grayscale()), qt.Not(qt.Equals), helpers.HashString(f.Invert())) c.Assert(helpers.HashString(f.Gamma(32)), qt.Not(qt.Equals), helpers.HashString(f.Gamma(33))) c.Assert(helpers.HashString(f.Gamma(32)), qt.Equals, helpers.HashString(f.Gamma(32))) - } diff --git a/resources/images/image.go b/resources/images/image.go index a13c1a59e..88eed2f7e 100644 --- a/resources/images/image.go +++ b/resources/images/image.go @@ -92,7 +92,6 @@ func (i *Image) EncodeTo(conf ImageConfig, img image.Image, w io.Writer) error { default: return errors.New("format not supported") } - } // Height returns i's height. @@ -165,7 +164,6 @@ func NewImageProcessor(cfg ImagingConfig) (*ImageProcessor, error) { exif.ExcludeFields(e.ExcludeFields), exif.IncludeFields(e.IncludeFields), ) - if err != nil { return nil, err } @@ -174,7 +172,6 @@ func NewImageProcessor(cfg ImagingConfig) (*ImageProcessor, error) { Cfg: cfg, exifDecoder: exifDecoder, }, nil - } type ImageProcessor struct { diff --git a/resources/images/smartcrop.go b/resources/images/smartcrop.go index e0181b671..76f547ef0 100644 --- a/resources/images/smartcrop.go +++ b/resources/images/smartcrop.go @@ -70,5 +70,4 @@ func (p *ImageProcessor) smartCrop(img image.Image, width, height int, filter gi } return img.Bounds().Intersect(rect), nil - } diff --git a/resources/internal/key.go b/resources/internal/key.go index d67d4a7e1..ba13bd2f8 100644 --- a/resources/internal/key.go +++ b/resources/internal/key.go @@ -39,5 +39,4 @@ func (k ResourceTransformationKey) Value() string { } return k.Name + "_" + helpers.HashString(k.elements...) - } diff --git a/resources/jsconfig/jsconfig.go b/resources/jsconfig/jsconfig.go index 9b399bfe7..1fd6d6103 100644 --- a/resources/jsconfig/jsconfig.go +++ b/resources/jsconfig/jsconfig.go @@ -69,7 +69,6 @@ func (b *Builder) AddSourceRoot(root string) { b.sourceRootsMu.Lock() b.sourceRoots[root] = true b.sourceRootsMu.Unlock() - } // CompilerOptions holds compilerOptions for jsonconfig.json. diff --git a/resources/page/page_data_test.go b/resources/page/page_data_test.go index f161fad3c..c7d764d8a 100644 --- a/resources/page/page_data_test.go +++ b/resources/page/page_data_test.go @@ -16,7 +16,6 @@ package page import ( "bytes" "testing" - "text/template" qt "github.com/frankban/quicktest" @@ -53,5 +52,4 @@ func TestPageData(t *testing.T) { c.Assert(templ.Execute(&buff, data), qt.IsNil) c.Assert(buff.String(), qt.Contains, "Pages(2)") - } diff --git a/resources/page/page_generate/generate_page_wrappers.go b/resources/page/page_generate/generate_page_wrappers.go index 4c63962fa..ff3744c20 100644 --- a/resources/page/page_generate/generate_page_wrappers.go +++ b/resources/page/page_generate/generate_page_wrappers.go @@ -56,7 +56,6 @@ var ( func Generate(c *codegen.Inspector) error { if err := generateMarshalJSON(c); err != nil { return errors.Wrap(err, "failed to generate JSON marshaler") - } if err := generateDeprecatedWrappers(c); err != nil { @@ -73,7 +72,6 @@ func Generate(c *codegen.Inspector) error { func generateMarshalJSON(c *codegen.Inspector) error { filename := filepath.Join(c.ProjectRootDir, packageDir, "page_marshaljson.autogen.go") f, err := os.Create(filename) - if err != nil { return err } diff --git a/resources/page/page_kinds_test.go b/resources/page/page_kinds_test.go index 8ad3493ee..357be6739 100644 --- a/resources/page/page_kinds_test.go +++ b/resources/page/page_kinds_test.go @@ -34,5 +34,4 @@ func TestKind(t *testing.T) { c.Assert(GetKind("Page"), qt.Equals, KindPage) c.Assert(GetKind("Home"), qt.Equals, KindHome) c.Assert(GetKind("SEction"), qt.Equals, KindSection) - } diff --git a/resources/page/page_marshaljson.autogen.go b/resources/page/page_marshaljson.autogen.go index 2286f1e63..ace475909 100644 --- a/resources/page/page_marshaljson.autogen.go +++ b/resources/page/page_marshaljson.autogen.go @@ -17,6 +17,9 @@ package page import ( "encoding/json" + "html/template" + "time" + "github.com/bep/gitmap" "github.com/gohugoio/hugo/common/maps" "github.com/gohugoio/hugo/config" @@ -26,8 +29,6 @@ import ( "github.com/gohugoio/hugo/media" "github.com/gohugoio/hugo/navigation" "github.com/gohugoio/hugo/source" - "html/template" - "time" ) func MarshalPageToJSON(p Page) ([]byte, error) { diff --git a/resources/page/page_matcher.go b/resources/page/page_matcher.go index 881f76e33..7d3db373b 100644 --- a/resources/page/page_matcher.go +++ b/resources/page/page_matcher.go @@ -41,7 +41,6 @@ type PageMatcher struct { // Matches returns whether p matches this matcher. func (m PageMatcher) Matches(p Page) bool { - if m.Kind != "" { g, err := glob.GetGlob(m.Kind) if err == nil && !g.Match(p.Kind()) { @@ -87,5 +86,4 @@ func DecodePageMatcher(m interface{}, v *PageMatcher) error { v.Path = filepath.ToSlash(strings.ToLower(v.Path)) return nil - } diff --git a/resources/page/page_matcher_test.go b/resources/page/page_matcher_test.go index 24b304772..745a6aa32 100644 --- a/resources/page/page_matcher_test.go +++ b/resources/page/page_matcher_test.go @@ -50,7 +50,6 @@ func TestPageMatcher(t *testing.T) { c.Assert(m.Matches(p1), qt.Equals, true) c.Assert(m.Matches(p2), qt.Equals, false) c.Assert(m.Matches(p3), qt.Equals, true) - }) c.Run("Decode", func(c *qt.C) { @@ -59,5 +58,4 @@ func TestPageMatcher(t *testing.T) { c.Assert(DecodePageMatcher(map[string]interface{}{"kind": "home", "path": filepath.FromSlash("/a/b/**")}, &v), qt.IsNil) c.Assert(v, qt.Equals, PageMatcher{Kind: "home", Path: "/a/b/**"}) }) - } diff --git a/resources/page/page_nop.go b/resources/page/page_nop.go index 293b399c7..94515d27d 100644 --- a/resources/page/page_nop.go +++ b/resources/page/page_nop.go @@ -66,8 +66,8 @@ func (p *nopPage) RSSLink() template.URL { func (p *nopPage) Author() Author { return Author{} - } + func (p *nopPage) Authors() AuthorList { return nil } @@ -119,6 +119,7 @@ func (p *nopPage) Description() string { func (p *nopPage) RefFrom(argsm map[string]interface{}, source interface{}) (string, error) { return "", nil } + func (p *nopPage) RelRefFrom(argsm map[string]interface{}, source interface{}) (string, error) { return "", nil } @@ -356,6 +357,7 @@ func (p *nopPage) PublishDate() (t time.Time) { func (p *nopPage) PrevInSection() Page { return nil } + func (p *nopPage) NextInSection() Page { return nil } diff --git a/resources/page/page_paths.go b/resources/page/page_paths.go index 6ef9bced6..fc576f05a 100644 --- a/resources/page/page_paths.go +++ b/resources/page/page_paths.go @@ -16,7 +16,6 @@ package page import ( "path" "path/filepath" - "strings" "github.com/gohugoio/hugo/helpers" @@ -112,7 +111,6 @@ func isHtmlIndex(s string) bool { } func CreateTargetPaths(d TargetPathDescriptor) (tp TargetPaths) { - if d.Type.Name == "" { panic("CreateTargetPath: missing type") } @@ -205,7 +203,6 @@ func CreateTargetPaths(d TargetPathDescriptor) (tp TargetPaths) { if d.ExpandedPermalink != "" { pagePath = pjoin(pagePath, d.ExpandedPermalink) - } else { if d.Dir != "" { pagePath = pjoin(pagePath, d.Dir) @@ -273,7 +270,6 @@ func CreateTargetPaths(d TargetPathDescriptor) (tp TargetPaths) { pagePath = path.Join(pagePath, addSuffix(base, d.Type.MediaType.FullSuffix())) } else { pagePath = addSuffix(pagePath, d.Type.MediaType.FullSuffix()) - } if !isHtmlIndex(pagePath) { diff --git a/resources/page/page_paths_test.go b/resources/page/page_paths_test.go index 53f8b80ef..ab7164f46 100644 --- a/resources/page/page_paths_test.go +++ b/resources/page/page_paths_test.go @@ -14,19 +14,17 @@ package page import ( + "fmt" "path/filepath" "strings" "testing" "github.com/gohugoio/hugo/media" - "fmt" - "github.com/gohugoio/hugo/output" ) func TestPageTargetPath(t *testing.T) { - pathSpec := newTestPathSpec() noExtNoDelimMediaType := media.TextType @@ -57,24 +55,29 @@ func TestPageTargetPath(t *testing.T) { Kind: KindSection, Sections: []string{"sect1"}, BaseName: "_index", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/sect1/index.html", SubResourceBaseTarget: "/sect1", Link: "/sect1/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/sect1/index.html", SubResourceBaseTarget: "/sect1", Link: "/sect1/"}}, {"HTML taxonomy term", TargetPathDescriptor{ Kind: KindTerm, Sections: []string{"tags", "hugo"}, BaseName: "_index", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/tags/hugo/index.html", SubResourceBaseTarget: "/tags/hugo", Link: "/tags/hugo/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/tags/hugo/index.html", SubResourceBaseTarget: "/tags/hugo", Link: "/tags/hugo/"}}, {"HTML taxonomy", TargetPathDescriptor{ Kind: KindTaxonomy, Sections: []string{"tags"}, BaseName: "_index", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/tags/index.html", SubResourceBaseTarget: "/tags", Link: "/tags/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/tags/index.html", SubResourceBaseTarget: "/tags", Link: "/tags/"}}, { "HTML page", TargetPathDescriptor{ Kind: KindPage, Dir: "/a/b", BaseName: "mypage", Sections: []string{"a"}, - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/a/b/mypage/index.html", SubResourceBaseTarget: "/a/b/mypage", Link: "/a/b/mypage/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/a/b/mypage/index.html", SubResourceBaseTarget: "/a/b/mypage", Link: "/a/b/mypage/"}, + }, { "HTML page with index as base", TargetPathDescriptor{ @@ -82,93 +85,117 @@ func TestPageTargetPath(t *testing.T) { Dir: "/a/b", BaseName: "index", Sections: []string{"a"}, - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/a/b/index.html", SubResourceBaseTarget: "/a/b", Link: "/a/b/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/a/b/index.html", SubResourceBaseTarget: "/a/b", Link: "/a/b/"}, + }, { "HTML page with special chars", TargetPathDescriptor{ Kind: KindPage, Dir: "/a/b", BaseName: "My Page!", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/a/b/my-page/index.html", SubResourceBaseTarget: "/a/b/my-page", Link: "/a/b/my-page/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/a/b/my-page/index.html", SubResourceBaseTarget: "/a/b/my-page", Link: "/a/b/my-page/"}, + }, {"RSS home", TargetPathDescriptor{Kind: "rss", Type: output.RSSFormat}, TargetPaths{TargetFilename: "/index.xml", SubResourceBaseTarget: "", Link: "/index.xml"}}, {"RSS section list", TargetPathDescriptor{ Kind: "rss", Sections: []string{"sect1"}, - Type: output.RSSFormat}, TargetPaths{TargetFilename: "/sect1/index.xml", SubResourceBaseTarget: "/sect1", Link: "/sect1/index.xml"}}, + Type: output.RSSFormat, + }, TargetPaths{TargetFilename: "/sect1/index.xml", SubResourceBaseTarget: "/sect1", Link: "/sect1/index.xml"}}, { "AMP page", TargetPathDescriptor{ Kind: KindPage, Dir: "/a/b/c", BaseName: "myamp", - Type: output.AMPFormat}, TargetPaths{TargetFilename: "/amp/a/b/c/myamp/index.html", SubResourceBaseTarget: "/amp/a/b/c/myamp", Link: "/amp/a/b/c/myamp/"}}, + Type: output.AMPFormat, + }, TargetPaths{TargetFilename: "/amp/a/b/c/myamp/index.html", SubResourceBaseTarget: "/amp/a/b/c/myamp", Link: "/amp/a/b/c/myamp/"}, + }, { "AMP page with URL with suffix", TargetPathDescriptor{ Kind: KindPage, Dir: "/sect/", BaseName: "mypage", URL: "/some/other/url.xhtml", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/some/other/url.xhtml", SubResourceBaseTarget: "/some/other", Link: "/some/other/url.xhtml"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/some/other/url.xhtml", SubResourceBaseTarget: "/some/other", Link: "/some/other/url.xhtml"}, + }, { "JSON page with URL without suffix", TargetPathDescriptor{ Kind: KindPage, Dir: "/sect/", BaseName: "mypage", URL: "/some/other/path/", - Type: output.JSONFormat}, TargetPaths{TargetFilename: "/some/other/path/index.json", SubResourceBaseTarget: "/some/other/path", Link: "/some/other/path/index.json"}}, + Type: output.JSONFormat, + }, TargetPaths{TargetFilename: "/some/other/path/index.json", SubResourceBaseTarget: "/some/other/path", Link: "/some/other/path/index.json"}, + }, { "JSON page with URL without suffix and no trailing slash", TargetPathDescriptor{ Kind: KindPage, Dir: "/sect/", BaseName: "mypage", URL: "/some/other/path", - Type: output.JSONFormat}, TargetPaths{TargetFilename: "/some/other/path/index.json", SubResourceBaseTarget: "/some/other/path", Link: "/some/other/path/index.json"}}, + Type: output.JSONFormat, + }, TargetPaths{TargetFilename: "/some/other/path/index.json", SubResourceBaseTarget: "/some/other/path", Link: "/some/other/path/index.json"}, + }, { "HTML page with URL without suffix and no trailing slash", TargetPathDescriptor{ Kind: KindPage, Dir: "/sect/", BaseName: "mypage", URL: "/some/other/path", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/some/other/path/index.html", SubResourceBaseTarget: "/some/other/path", Link: "/some/other/path/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/some/other/path/index.html", SubResourceBaseTarget: "/some/other/path", Link: "/some/other/path/"}, + }, { "HTML page with URL containing double hyphen", TargetPathDescriptor{ Kind: KindPage, Dir: "/sect/", BaseName: "mypage", URL: "/some/other--url/", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/some/other--url/index.html", SubResourceBaseTarget: "/some/other--url", Link: "/some/other--url/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/some/other--url/index.html", SubResourceBaseTarget: "/some/other--url", Link: "/some/other--url/"}, + }, { "HTML page with expanded permalink", TargetPathDescriptor{ Kind: KindPage, Dir: "/a/b", BaseName: "mypage", ExpandedPermalink: "/2017/10/my-title/", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/2017/10/my-title/index.html", SubResourceBaseTarget: "/2017/10/my-title", Link: "/2017/10/my-title/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/2017/10/my-title/index.html", SubResourceBaseTarget: "/2017/10/my-title", Link: "/2017/10/my-title/"}, + }, { "Paginated HTML home", TargetPathDescriptor{ Kind: KindHome, BaseName: "_index", Type: output.HTMLFormat, - Addends: "page/3"}, TargetPaths{TargetFilename: "/page/3/index.html", SubResourceBaseTarget: "/page/3", Link: "/page/3/"}}, + Addends: "page/3", + }, TargetPaths{TargetFilename: "/page/3/index.html", SubResourceBaseTarget: "/page/3", Link: "/page/3/"}, + }, { "Paginated Taxonomy terms list", TargetPathDescriptor{ Kind: KindTerm, BaseName: "_index", Sections: []string{"tags", "hugo"}, Type: output.HTMLFormat, - Addends: "page/3"}, TargetPaths{TargetFilename: "/tags/hugo/page/3/index.html", SubResourceBaseTarget: "/tags/hugo/page/3", Link: "/tags/hugo/page/3/"}}, + Addends: "page/3", + }, TargetPaths{TargetFilename: "/tags/hugo/page/3/index.html", SubResourceBaseTarget: "/tags/hugo/page/3", Link: "/tags/hugo/page/3/"}, + }, { "Regular page with addend", TargetPathDescriptor{ Kind: KindPage, Dir: "/a/b", BaseName: "mypage", Addends: "c/d/e", - Type: output.HTMLFormat}, TargetPaths{TargetFilename: "/a/b/mypage/c/d/e/index.html", SubResourceBaseTarget: "/a/b/mypage/c/d/e", Link: "/a/b/mypage/c/d/e/"}}, + Type: output.HTMLFormat, + }, TargetPaths{TargetFilename: "/a/b/mypage/c/d/e/index.html", SubResourceBaseTarget: "/a/b/mypage/c/d/e", Link: "/a/b/mypage/c/d/e/"}, + }, } for i, test := range tests { t.Run(fmt.Sprintf("langPrefixPath=%s,langPrefixLink=%s,uglyURLs=%t,name=%s", langPrefixPath, langPrefixLink, uglyURLs, test.name), func(t *testing.T) { - test.d.ForcePrefix = true test.d.PathSpec = pathSpec test.d.UglyURLs = uglyURLs @@ -206,12 +233,10 @@ func TestPageTargetPath(t *testing.T) { if !eqTargetPaths(pagePath, expected) { t.Fatalf("[%d] [%s] targetPath expected\n%#v, got:\n%#v", i, test.name, expected, pagePath) - } }) } } - } } } @@ -223,10 +248,16 @@ func TestPageTargetPathPrefix(t *testing.T) { d TargetPathDescriptor expected TargetPaths }{ - {"URL set, prefix both, no force", TargetPathDescriptor{Kind: KindPage, Type: output.JSONFormat, URL: "/mydir/my.json", ForcePrefix: false, PrefixFilePath: "pf", PrefixLink: "pl"}, - TargetPaths{TargetFilename: "/mydir/my.json", SubResourceBaseTarget: "/mydir", SubResourceBaseLink: "/mydir", Link: "/mydir/my.json"}}, - {"URL set, prefix both, force", TargetPathDescriptor{Kind: KindPage, Type: output.JSONFormat, URL: "/mydir/my.json", ForcePrefix: true, PrefixFilePath: "pf", PrefixLink: "pl"}, - TargetPaths{TargetFilename: "/pf/mydir/my.json", SubResourceBaseTarget: "/pf/mydir", SubResourceBaseLink: "/pl/mydir", Link: "/pl/mydir/my.json"}}, + { + "URL set, prefix both, no force", + TargetPathDescriptor{Kind: KindPage, Type: output.JSONFormat, URL: "/mydir/my.json", ForcePrefix: false, PrefixFilePath: "pf", PrefixLink: "pl"}, + TargetPaths{TargetFilename: "/mydir/my.json", SubResourceBaseTarget: "/mydir", SubResourceBaseLink: "/mydir", Link: "/mydir/my.json"}, + }, + { + "URL set, prefix both, force", + TargetPathDescriptor{Kind: KindPage, Type: output.JSONFormat, URL: "/mydir/my.json", ForcePrefix: true, PrefixFilePath: "pf", PrefixLink: "pl"}, + TargetPaths{TargetFilename: "/pf/mydir/my.json", SubResourceBaseTarget: "/pf/mydir", SubResourceBaseLink: "/pl/mydir", Link: "/pl/mydir/my.json"}, + }, } for i, test := range tests { @@ -244,11 +275,9 @@ func TestPageTargetPathPrefix(t *testing.T) { } }) } - } func eqTargetPaths(p1, p2 TargetPaths) bool { - if p1.Link != p2.Link { return false } diff --git a/resources/page/page_wrappers.autogen.go b/resources/page/page_wrappers.autogen.go index bc2cf968c..eefbbe2c1 100644 --- a/resources/page/page_wrappers.autogen.go +++ b/resources/page/page_wrappers.autogen.go @@ -16,10 +16,11 @@ package page import ( + "html/template" + "github.com/gohugoio/hugo/common/hugo" "github.com/gohugoio/hugo/helpers" "github.com/gohugoio/hugo/hugofs" - "html/template" ) // NewDeprecatedWarningPage adds deprecation warnings to the given implementation. @@ -35,62 +36,77 @@ func (p *pageDeprecated) Filename() string { helpers.Deprecated("Page.Filename", "Use .File.Filename", false) return p.p.Filename() } + func (p *pageDeprecated) Dir() string { helpers.Deprecated("Page.Dir", "Use .File.Dir", false) return p.p.Dir() } + func (p *pageDeprecated) IsDraft() bool { helpers.Deprecated("Page.IsDraft", "Use .Draft.", false) return p.p.IsDraft() } + func (p *pageDeprecated) Extension() string { helpers.Deprecated("Page.Extension", "Use .File.Extension", false) return p.p.Extension() } + func (p *pageDeprecated) Hugo() hugo.Info { helpers.Deprecated("Page.Hugo", "Use the global hugo function.", false) return p.p.Hugo() } + func (p *pageDeprecated) Ext() string { helpers.Deprecated("Page.Ext", "Use .File.Ext", false) return p.p.Ext() } + func (p *pageDeprecated) LanguagePrefix() string { helpers.Deprecated("Page.LanguagePrefix", "Use .Site.LanguagePrefix.", false) return p.p.LanguagePrefix() } + func (p *pageDeprecated) GetParam(arg0 string) interface{} { helpers.Deprecated("Page.GetParam", "Use .Param or .Params.myParam.", false) return p.p.GetParam(arg0) } + func (p *pageDeprecated) LogicalName() string { helpers.Deprecated("Page.LogicalName", "Use .File.LogicalName", false) return p.p.LogicalName() } + func (p *pageDeprecated) BaseFileName() string { helpers.Deprecated("Page.BaseFileName", "Use .File.BaseFileName", false) return p.p.BaseFileName() } + func (p *pageDeprecated) RSSLink() template.URL { helpers.Deprecated("Page.RSSLink", "Use the Output Format's link, e.g. something like: \n {{ with .OutputFormats.Get \"RSS\" }}{{ .RelPermalink }}{{ end }}", false) return p.p.RSSLink() } + func (p *pageDeprecated) TranslationBaseName() string { helpers.Deprecated("Page.TranslationBaseName", "Use .File.TranslationBaseName", false) return p.p.TranslationBaseName() } + func (p *pageDeprecated) URL() string { helpers.Deprecated("Page.URL", "Use .Permalink or .RelPermalink. If what you want is the front matter URL value, use .Params.url", false) return p.p.URL() } + func (p *pageDeprecated) ContentBaseName() string { helpers.Deprecated("Page.ContentBaseName", "Use .File.ContentBaseName", false) return p.p.ContentBaseName() } + func (p *pageDeprecated) UniqueID() string { helpers.Deprecated("Page.UniqueID", "Use .File.UniqueID", false) return p.p.UniqueID() } + func (p *pageDeprecated) FileInfo() hugofs.FileMetaInfo { helpers.Deprecated("Page.FileInfo", "Use .File.FileInfo", false) return p.p.FileInfo() diff --git a/resources/page/pagegroup.go b/resources/page/pagegroup.go index fcae9add7..07ccbfedd 100644 --- a/resources/page/pagegroup.go +++ b/resources/page/pagegroup.go @@ -355,7 +355,6 @@ func (p PageGroup) ProbablyEq(other interface{}) bool { } return p.Pages.ProbablyEq(otherP.Pages) - } // Slice is not meant to be used externally. It's a bridge function @@ -406,7 +405,6 @@ func (psg PagesGroup) ProbablyEq(other interface{}) bool { } return true - } // ToPagesGroup tries to convert seq into a PagesGroup. diff --git a/resources/page/pagegroup_test.go b/resources/page/pagegroup_test.go index d4a3f36a6..218bd841d 100644 --- a/resources/page/pagegroup_test.go +++ b/resources/page/pagegroup_test.go @@ -216,7 +216,6 @@ func TestGroupByParamCalledWithCapitalLetterString(t *testing.T) { c.Assert(err, qt.IsNil) c.Assert(groups[0].Key, qt.Equals, testStr) - } func TestGroupByParamCalledWithSomeUnavailableParams(t *testing.T) { diff --git a/resources/page/pagemeta/page_frontmatter.go b/resources/page/pagemeta/page_frontmatter.go index 5033d70b7..a32fc5884 100644 --- a/resources/page/pagemeta/page_frontmatter.go +++ b/resources/page/pagemeta/page_frontmatter.go @@ -70,14 +70,12 @@ type FrontMatterDescriptor struct { PageURLs *URLPath } -var ( - dateFieldAliases = map[string][]string{ - fmDate: {}, - fmLastmod: {"modified"}, - fmPubDate: {"pubdate", "published"}, - fmExpiryDate: {"unpublishdate"}, - } -) +var dateFieldAliases = map[string][]string{ + fmDate: {}, + fmLastmod: {"modified"}, + fmPubDate: {"pubdate", "published"}, + fmExpiryDate: {"unpublishdate"}, +} // HandleDates updates all the dates given the current configuration and the // supplied front matter params. Note that this requires all lower-case keys @@ -263,7 +261,6 @@ func toLowerSlice(in interface{}) []string { // NewFrontmatterHandler creates a new FrontMatterHandler with the given logger and configuration. // If no logger is provided, one will be created. func NewFrontmatterHandler(logger loggers.Logger, cfg config.Provider) (FrontMatterHandler, error) { - if logger == nil { logger = loggers.NewErrorLogger() } @@ -359,7 +356,6 @@ func (f FrontMatterHandler) createDateHandler(identifiers []string, setter func( } return f.newChainedFrontMatterFieldHandler(handlers...), nil - } type frontmatterFieldHandlers int diff --git a/resources/page/pagemeta/page_frontmatter_test.go b/resources/page/pagemeta/page_frontmatter_test.go index f96d186da..7c4c77a91 100644 --- a/resources/page/pagemeta/page_frontmatter_test.go +++ b/resources/page/pagemeta/page_frontmatter_test.go @@ -25,7 +25,6 @@ import ( ) func TestDateAndSlugFromBaseFilename(t *testing.T) { - t.Parallel() c := qt.New(t) @@ -111,7 +110,6 @@ func TestFrontMatterNewConfig(t *testing.T) { c.Assert(fc.lastmod, qt.DeepEquals, []string{"d2", ":git", "lastmod", "modified", "date", "publishdate", "pubdate", "published"}) c.Assert(fc.expiryDate, qt.DeepEquals, []string{"d3", "expirydate", "unpublishdate"}) c.Assert(fc.publishDate, qt.DeepEquals, []string{"d4", "publishdate", "pubdate", "published", "date"}) - } func TestFrontMatterDatesHandlers(t *testing.T) { @@ -199,7 +197,6 @@ func TestFrontMatterDatesCustomConfig(t *testing.T) { c.Assert(handler.IsDateKey("mydate"), qt.Equals, true) c.Assert(handler.IsDateKey("publishdate"), qt.Equals, true) c.Assert(handler.IsDateKey("pubdate"), qt.Equals, true) - } func TestFrontMatterDatesDefaultKeyword(t *testing.T) { @@ -230,7 +227,6 @@ func TestFrontMatterDatesDefaultKeyword(t *testing.T) { c.Assert(d.Dates.FLastmod.Day(), qt.Equals, 2) c.Assert(d.Dates.FPublishDate.Day(), qt.Equals, 4) c.Assert(d.Dates.FExpiryDate.IsZero(), qt.Equals, true) - } func TestExpandDefaultValues(t *testing.T) { @@ -238,7 +234,6 @@ func TestExpandDefaultValues(t *testing.T) { c.Assert(expandDefaultValues([]string{"a", ":default", "d"}, []string{"b", "c"}), qt.DeepEquals, []string{"a", "b", "c", "d"}) c.Assert(expandDefaultValues([]string{"a", "b", "c"}, []string{"a", "b", "c"}), qt.DeepEquals, []string{"a", "b", "c"}) c.Assert(expandDefaultValues([]string{":default", "a", ":default", "d"}, []string{"b", "c"}), qt.DeepEquals, []string{"b", "c", "a", "b", "c", "d"}) - } func TestFrontMatterDateFieldHandler(t *testing.T) { diff --git a/resources/page/pagemeta/pagemeta_test.go b/resources/page/pagemeta/pagemeta_test.go index c251e7dab..d09b38e27 100644 --- a/resources/page/pagemeta/pagemeta_test.go +++ b/resources/page/pagemeta/pagemeta_test.go @@ -46,7 +46,8 @@ publishResources = true` List: Always, PublishResources: true, set: true, - }}, + }, + }, {[]interface{}{"true", "false"}, BuildConfig{ Render: Always, List: Never, @@ -88,5 +89,4 @@ publishResources = true` c.Assert(bcfg, eq, test.expect) } - } diff --git a/resources/page/pages_cache.go b/resources/page/pages_cache.go index e82d9a8cf..9435cb308 100644 --- a/resources/page/pages_cache.go +++ b/resources/page/pages_cache.go @@ -106,7 +106,6 @@ func (c *pageCache) getP(key string, apply func(p *Pages), pageLists ...Pages) ( } return pagesCopy, false - } // pagesEqual returns whether p1 and p2 are equal. diff --git a/resources/page/pages_language_merge.go b/resources/page/pages_language_merge.go index 11393a754..dd18b64a2 100644 --- a/resources/page/pages_language_merge.go +++ b/resources/page/pages_language_merge.go @@ -17,9 +17,7 @@ import ( "fmt" ) -var ( - _ pagesLanguageMerger = (*Pages)(nil) -) +var _ pagesLanguageMerger = (*Pages)(nil) type pagesLanguageMerger interface { MergeByLanguage(other Pages) Pages diff --git a/resources/page/pages_prev_next.go b/resources/page/pages_prev_next.go index dd767c667..f30a55da5 100644 --- a/resources/page/pages_prev_next.go +++ b/resources/page/pages_prev_next.go @@ -31,5 +31,4 @@ func (p Pages) Prev(cur Page) Page { } return p[x+1] - } diff --git a/resources/page/pages_prev_next_test.go b/resources/page/pages_prev_next_test.go index 689e102c2..0ee1564cd 100644 --- a/resources/page/pages_prev_next_test.go +++ b/resources/page/pages_prev_next_test.go @@ -78,7 +78,6 @@ func TestWeightedPagesPrev(t *testing.T) { c.Assert(w.Prev(w[0].Page), qt.Equals, w[1].Page) c.Assert(w.Prev(w[1].Page), qt.Equals, w[2].Page) c.Assert(w.Prev(w[4].Page), qt.IsNil) - } func TestWeightedPagesNext(t *testing.T) { @@ -89,5 +88,4 @@ func TestWeightedPagesNext(t *testing.T) { c.Assert(w.Next(w[0].Page), qt.IsNil) c.Assert(w.Next(w[1].Page), qt.Equals, w[0].Page) c.Assert(w.Next(w[4].Page), qt.Equals, w[3].Page) - } diff --git a/resources/page/pages_related.go b/resources/page/pages_related.go index 1a4386135..026026572 100644 --- a/resources/page/pages_related.go +++ b/resources/page/pages_related.go @@ -58,7 +58,6 @@ func (p Pages) Related(doc related.Document) (Pages, error) { } return result, nil - } // RelatedIndices searches the given indices with the search keywords from the @@ -79,7 +78,6 @@ func (p Pages) RelatedIndices(doc related.Document, indices ...interface{}) (Pag } return result, nil - } // RelatedTo searches the given indices with the corresponding values. @@ -89,14 +87,12 @@ func (p Pages) RelatedTo(args ...types.KeyValues) (Pages, error) { } return p.search(args...) - } func (p Pages) search(args ...types.KeyValues) (Pages, error) { return p.withInvertedIndex(func(idx *related.InvertedIndex) ([]related.Document, error) { return idx.SearchKeyValues(args...) }) - } func (p Pages) searchDoc(doc related.Document, indices ...string) (Pages, error) { diff --git a/resources/page/pages_sort.go b/resources/page/pages_sort.go index 85817ffda..644f67e1e 100644 --- a/resources/page/pages_sort.go +++ b/resources/page/pages_sort.go @@ -96,7 +96,6 @@ var ( } lessPageLanguage = func(p1, p2 Page) bool { - if p1.Language().Weight == p2.Language().Weight { if p1.Date().Unix() == p2.Date().Unix() { c := compare.Strings(p1.LinkTitle(), p2.LinkTitle()) @@ -174,7 +173,6 @@ func SortByDefault(pages Pages) { // // This may safely be executed in parallel. func (p Pages) ByTitle() Pages { - const key = "pageSort.ByTitle" pages, _ := spc.get(key, pageBy(lessPageTitle).Sort, p) @@ -187,7 +185,6 @@ func (p Pages) ByTitle() Pages { // // This may safely be executed in parallel. func (p Pages) ByLinkTitle() Pages { - const key = "pageSort.ByLinkTitle" pages, _ := spc.get(key, pageBy(lessPageLinkTitle).Sort, p) @@ -201,7 +198,6 @@ func (p Pages) ByLinkTitle() Pages { // // This may safely be executed in parallel. func (p Pages) ByDate() Pages { - const key = "pageSort.ByDate" pages, _ := spc.get(key, pageBy(lessPageDate).Sort, p) @@ -215,7 +211,6 @@ func (p Pages) ByDate() Pages { // // This may safely be executed in parallel. func (p Pages) ByPublishDate() Pages { - const key = "pageSort.ByPublishDate" pages, _ := spc.get(key, pageBy(lessPagePubDate).Sort, p) @@ -229,7 +224,6 @@ func (p Pages) ByPublishDate() Pages { // // This may safely be executed in parallel. func (p Pages) ByExpiryDate() Pages { - const key = "pageSort.ByExpiryDate" expDate := func(p1, p2 Page) bool { @@ -247,7 +241,6 @@ func (p Pages) ByExpiryDate() Pages { // // This may safely be executed in parallel. func (p Pages) ByLastmod() Pages { - const key = "pageSort.ByLastmod" date := func(p1, p2 Page) bool { @@ -265,11 +258,9 @@ func (p Pages) ByLastmod() Pages { // // This may safely be executed in parallel. func (p Pages) ByLength() Pages { - const key = "pageSort.ByLength" length := func(p1, p2 Page) bool { - p1l, ok1 := p1.(resource.LengthProvider) p2l, ok2 := p2.(resource.LengthProvider) @@ -295,7 +286,6 @@ func (p Pages) ByLength() Pages { // // This may safely be executed in parallel. func (p Pages) ByLanguage() Pages { - const key = "pageSort.ByLanguage" pages, _ := spc.get(key, pageBy(lessPageLanguage).Sort, p) @@ -365,7 +355,6 @@ func (p Pages) ByParam(paramsKey interface{}) Pages { s2 := cast.ToString(v2) return compare.LessStrings(s1, s2) - } pages, _ := spc.get(key, pageBy(paramsKeyComparator).Sort, p) diff --git a/resources/page/pages_sort_search.go b/resources/page/pages_sort_search.go index ff44e42d5..b400f61e8 100644 --- a/resources/page/pages_sort_search.go +++ b/resources/page/pages_sort_search.go @@ -69,7 +69,6 @@ func searchPageBinary(p Page, pages Pages, less func(p1, p2 Page) bool) int { } return searchPageLinear(p, pages, i) - } // isProbablySorted tests if the pages slice is probably sorted. diff --git a/resources/page/pages_sort_search_test.go b/resources/page/pages_sort_search_test.go index 6cc4ed5ea..8f115109c 100644 --- a/resources/page/pages_sort_search_test.go +++ b/resources/page/pages_sort_search_test.go @@ -38,7 +38,6 @@ func TestSearchPage(t *testing.T) { c.Assert(idx, qt.Equals, i) } } - } func BenchmarkSearchPage(b *testing.B) { @@ -72,23 +71,23 @@ func BenchmarkSearchPage(b *testing.B) { } for _, variant := range []Variant{ - Variant{"Shuffled", shufflePages, searchPage}, - Variant{"ByWeight", func(pages Pages) Pages { + {"Shuffled", shufflePages, searchPage}, + {"ByWeight", func(pages Pages) Pages { return pages.ByWeight() }, searchPage}, - Variant{"ByWeight.Reverse", func(pages Pages) Pages { + {"ByWeight.Reverse", func(pages Pages) Pages { return pages.ByWeight().Reverse() }, searchPage}, - Variant{"ByDate", func(pages Pages) Pages { + {"ByDate", func(pages Pages) Pages { return pages.ByDate() }, searchPage}, - Variant{"ByPublishDate", func(pages Pages) Pages { + {"ByPublishDate", func(pages Pages) Pages { return pages.ByPublishDate() }, searchPage}, - Variant{"ByTitle", func(pages Pages) Pages { + {"ByTitle", func(pages Pages) Pages { return pages.ByTitle() }, searchPage}, - Variant{"ByTitle Linear", func(pages Pages) Pages { + {"ByTitle Linear", func(pages Pages) Pages { return pages.ByTitle() }, linearSearch}, } { @@ -120,5 +119,4 @@ func TestIsPagesProbablySorted(t *testing.T) { c.Assert(isPagesProbablySorted(createSortTestPages(300).ByWeight(), DefaultPageSort), qt.Not(qt.IsNil)) c.Assert(isPagesProbablySorted(createSortTestPages(6), DefaultPageSort), qt.IsNil) c.Assert(isPagesProbablySorted(createSortTestPages(300).ByTitle(), pageLessFunctions...), qt.Not(qt.IsNil)) - } diff --git a/resources/page/pages_sort_test.go b/resources/page/pages_sort_test.go index 670abb90a..737a4f540 100644 --- a/resources/page/pages_sort_test.go +++ b/resources/page/pages_sort_test.go @@ -126,7 +126,6 @@ func TestSortByN(t *testing.T) { t.Errorf("[%d] sort error", i) } } - } func TestLimit(t *testing.T) { @@ -260,7 +259,6 @@ func setSortVals(dates [4]time.Time, titles [4]string, weights [4]int, pages Pag for _, p := range pages { p.(*testPage).content = "" } - } func createSortTestPages(num int) Pages { diff --git a/resources/page/pages_test.go b/resources/page/pages_test.go index 18b10f5bd..829b029b4 100644 --- a/resources/page/pages_test.go +++ b/resources/page/pages_test.go @@ -20,7 +20,6 @@ import ( ) func TestProbablyEq(t *testing.T) { - p1, p2, p3 := &testPage{title: "p1"}, &testPage{title: "p2"}, &testPage{title: "p3"} pages12 := Pages{p1, p2} pages21 := Pages{p2, p1} @@ -39,7 +38,6 @@ func TestProbablyEq(t *testing.T) { c.Assert(PageGroup{Key: "a", Pages: pages12}.ProbablyEq(PageGroup{Key: "a", Pages: pages12}), qt.Equals, true) c.Assert(PageGroup{Key: "a", Pages: pages12}.ProbablyEq(PageGroup{Key: "b", Pages: pages12}), qt.Equals, false) - }) t.Run("PagesGroup", func(t *testing.T) { @@ -49,9 +47,7 @@ func TestProbablyEq(t *testing.T) { c.Assert(PagesGroup{pg1, pg2}.ProbablyEq(PagesGroup{pg1, pg2}), qt.Equals, true) c.Assert(PagesGroup{pg1, pg2}.ProbablyEq(PagesGroup{pg2, pg1}), qt.Equals, false) - }) - } func TestToPages(t *testing.T) { diff --git a/resources/page/pagination.go b/resources/page/pagination.go index 6d5da966e..f41433183 100644 --- a/resources/page/pagination.go +++ b/resources/page/pagination.go @@ -110,7 +110,6 @@ func (p *Pager) element() paginatedElement { // page returns the Page with the given index func (p *Pager) page(index int) (Page, error) { - if pages, ok := p.element().(Pages); ok { if pages != nil && len(pages) > index { return pages[index], nil @@ -207,7 +206,6 @@ func splitPages(pages Pages, size int) []paginatedElement { } func splitPageGroups(pageGroups PagesGroup, size int) []paginatedElement { - type keyPage struct { key interface{} page Page @@ -269,7 +267,6 @@ func ResolvePagerSize(cfg config.Provider, options ...interface{}) (int, error) } func Paginate(td TargetPathDescriptor, seq interface{}, pagerSize int) (*Paginator, error) { - if pagerSize <= 0 { return nil, errors.New("'paginate' configuration setting must be positive to paginate") } @@ -300,7 +297,6 @@ func Paginate(td TargetPathDescriptor, seq interface{}, pagerSize int) (*Paginat // The motivation behind this is to avoid potential costly reflect.DeepEqual // when "probably" is good enough. func probablyEqualPageLists(a1 interface{}, a2 interface{}) bool { - if a1 == nil || a2 == nil { return a1 == a2 } @@ -347,7 +343,6 @@ func probablyEqualPageLists(a1 interface{}, a2 interface{}) bool { } func newPaginatorFromPages(pages Pages, size int, urlFactory paginationURLFactory) (*Paginator, error) { - if size <= 0 { return nil, errors.New("Paginator size must be positive") } @@ -358,7 +353,6 @@ func newPaginatorFromPages(pages Pages, size int, urlFactory paginationURLFactor } func newPaginatorFromPageGroups(pageGroups PagesGroup, size int, urlFactory paginationURLFactory) (*Paginator, error) { - if size <= 0 { return nil, errors.New("Paginator size must be positive") } @@ -389,7 +383,6 @@ func newPaginator(elements []paginatedElement, total, size int, urlFactory pagin } func newPaginationURLFactory(d TargetPathDescriptor) paginationURLFactory { - return func(pageNumber int) string { pathDescriptor := d var rel string @@ -399,6 +392,5 @@ func newPaginationURLFactory(d TargetPathDescriptor) paginationURLFactory { } return CreateTargetPaths(pathDescriptor).RelPermalink(d.PathSpec) - } } diff --git a/resources/page/pagination_test.go b/resources/page/pagination_test.go index f4441a892..8d4f857d7 100644 --- a/resources/page/pagination_test.go +++ b/resources/page/pagination_test.go @@ -37,7 +37,6 @@ func TestSplitPages(t *testing.T) { lastChunk := chunks[4] c.Assert(lastChunk.Len(), qt.Equals, 1) - } func TestSplitPageGroups(t *testing.T) { @@ -78,7 +77,6 @@ func TestSplitPageGroups(t *testing.T) { } else { t.Fatal("Excepted PageGroup") } - } func TestPager(t *testing.T) { @@ -111,7 +109,6 @@ func TestPager(t *testing.T) { first = pag.Pagers()[0].First() c.Assert(first.PageGroups(), qt.Not(qt.HasLen), 0) c.Assert(first.Pages(), qt.HasLen, 0) - } func doTestPages(t *testing.T, paginator *Paginator) { @@ -171,7 +168,6 @@ func TestPagerNoPages(t *testing.T) { first = paginator.Pagers()[0].First() c.Assert(first.PageGroups(), qt.HasLen, 0) c.Assert(first.Pages(), qt.HasLen, 0) - } func doTestPagerNoPages(t *testing.T, paginator *Paginator) { @@ -195,7 +191,6 @@ func doTestPagerNoPages(t *testing.T, paginator *Paginator) { c.Assert(pageOne.TotalPages(), qt.Equals, 0) c.Assert(pageOne.PageNumber(), qt.Equals, 1) c.Assert(pageOne.PageSize(), qt.Equals, 5) - } func TestPaginationURLFactory(t *testing.T) { @@ -206,7 +201,6 @@ func TestPaginationURLFactory(t *testing.T) { for _, uglyURLs := range []bool{false, true} { c.Run(fmt.Sprintf("uglyURLs=%t", uglyURLs), func(c *qt.C) { - tests := []struct { name string d TargetPathDescriptor @@ -215,10 +209,16 @@ func TestPaginationURLFactory(t *testing.T) { expected string expectedUgly string }{ - {"HTML home page 32", - TargetPathDescriptor{Kind: KindHome, Type: output.HTMLFormat}, "http://example.com/", 32, "/zoo/32/", "/zoo/32.html"}, - {"JSON home page 42", - TargetPathDescriptor{Kind: KindHome, Type: output.JSONFormat}, "http://example.com/", 42, "/zoo/42/index.json", "/zoo/42.json"}, + { + "HTML home page 32", + TargetPathDescriptor{Kind: KindHome, Type: output.HTMLFormat}, + "http://example.com/", 32, "/zoo/32/", "/zoo/32.html", + }, + { + "JSON home page 42", + TargetPathDescriptor{Kind: KindHome, Type: output.JSONFormat}, + "http://example.com/", 42, "/zoo/42/index.json", "/zoo/42.json", + }, } for _, test := range tests { @@ -242,7 +242,6 @@ func TestPaginationURLFactory(t *testing.T) { } }) - } } @@ -276,7 +275,6 @@ func TestProbablyEqualPageLists(t *testing.T) { if result != this.expect { t.Errorf("[%d] got %t but expected %t", i, result, this.expect) - } } } diff --git a/resources/page/permalinks.go b/resources/page/permalinks.go index 0e9b9e212..19ac52172 100644 --- a/resources/page/permalinks.go +++ b/resources/page/permalinks.go @@ -60,7 +60,6 @@ func (p PermalinkExpander) callback(attr string) (pageToPermaAttribute, bool) { // NewPermalinkExpander creates a new PermalinkExpander configured by the given // PathSpec. func NewPermalinkExpander(ps *helpers.PathSpec) (PermalinkExpander, error) { - p := PermalinkExpander{ps: ps} p.knownPermalinkAttributes = map[string]pageToPermaAttribute{ @@ -103,11 +102,9 @@ func (l PermalinkExpander) Expand(key string, p Page) (string, error) { } return expand(p) - } func (l PermalinkExpander) parse(patterns map[string]string) (map[string]func(Page) (string, error), error) { - expanders := make(map[string]func(Page) (string, error)) // Allow " " and / to represent the root section. @@ -138,7 +135,6 @@ func (l PermalinkExpander) parse(patterns map[string]string) (map[string]func(Pa } expanders[k] = func(p Page) (string, error) { - if matches == nil { return pattern, nil } @@ -149,7 +145,6 @@ func (l PermalinkExpander) parse(patterns map[string]string) (map[string]func(Pa attr := replacement[1:] callback := callbacks[i] newAttr, err := callback(p, attr) - if err != nil { return "", &permalinkExpandError{pattern: pattern, err: err} } @@ -159,7 +154,6 @@ func (l PermalinkExpander) parse(patterns map[string]string) (map[string]func(Pa } return newField, nil - } } @@ -176,7 +170,7 @@ var attributeRegexp = regexp.MustCompile(`:\w+`) // validate determines if a PathPattern is well-formed func (l PermalinkExpander) validate(pp string) bool { fragments := strings.Split(pp[1:], "/") - var bail = false + bail := false for i := range fragments { if bail { return false diff --git a/resources/page/permalinks_test.go b/resources/page/permalinks_test.go index e4eeda748..e40e7e0ef 100644 --- a/resources/page/permalinks_test.go +++ b/resources/page/permalinks_test.go @@ -113,7 +113,6 @@ func TestPermalinkExpansionMultiSection(t *testing.T) { expanded, err = expander.Expand("blog", page) c.Assert(err, qt.IsNil) c.Assert(expanded, qt.Equals, "/blue/2012") - } func TestPermalinkExpansionConcurrent(t *testing.T) { diff --git a/resources/page/testhelpers_test.go b/resources/page/testhelpers_test.go index 54a908d3b..963848439 100644 --- a/resources/page/testhelpers_test.go +++ b/resources/page/testhelpers_test.go @@ -128,8 +128,8 @@ func (p *testPage) AlternativeOutputFormats() OutputFormats { func (p *testPage) Author() Author { return Author{} - } + func (p *testPage) Authors() AuthorList { return nil } @@ -165,6 +165,7 @@ func (p *testPage) Sitemap() config.Sitemap { func (p *testPage) Layout() string { return "" } + func (p *testPage) Date() time.Time { return p.date } diff --git a/resources/page/weighted.go b/resources/page/weighted.go index 7e5e25451..af8b54446 100644 --- a/resources/page/weighted.go +++ b/resources/page/weighted.go @@ -20,9 +20,7 @@ import ( "github.com/gohugoio/hugo/common/collections" ) -var ( - _ collections.Slicer = WeightedPage{} -) +var _ collections.Slicer = WeightedPage{} // WeightedPages is a list of Pages with their corresponding (and relative) weight // [{Weight: 30, Page: *1}, {Weight: 40, Page: *2}] diff --git a/resources/page/zero_file.autogen.go b/resources/page/zero_file.autogen.go index 23e36b764..f928982e0 100644 --- a/resources/page/zero_file.autogen.go +++ b/resources/page/zero_file.autogen.go @@ -38,50 +38,62 @@ func (z zeroFile) Path() (o0 string) { z.log.Println(".File.Path on zero object. Wrap it in if or with: {{ with .File }}{{ .Path }}{{ end }}") return } + func (z zeroFile) Section() (o0 string) { z.log.Println(".File.Section on zero object. Wrap it in if or with: {{ with .File }}{{ .Section }}{{ end }}") return } + func (z zeroFile) Lang() (o0 string) { z.log.Println(".File.Lang on zero object. Wrap it in if or with: {{ with .File }}{{ .Lang }}{{ end }}") return } + func (z zeroFile) Filename() (o0 string) { z.log.Println(".File.Filename on zero object. Wrap it in if or with: {{ with .File }}{{ .Filename }}{{ end }}") return } + func (z zeroFile) Dir() (o0 string) { z.log.Println(".File.Dir on zero object. Wrap it in if or with: {{ with .File }}{{ .Dir }}{{ end }}") return } + func (z zeroFile) Extension() (o0 string) { z.log.Println(".File.Extension on zero object. Wrap it in if or with: {{ with .File }}{{ .Extension }}{{ end }}") return } + func (z zeroFile) Ext() (o0 string) { z.log.Println(".File.Ext on zero object. Wrap it in if or with: {{ with .File }}{{ .Ext }}{{ end }}") return } + func (z zeroFile) LogicalName() (o0 string) { z.log.Println(".File.LogicalName on zero object. Wrap it in if or with: {{ with .File }}{{ .LogicalName }}{{ end }}") return } + func (z zeroFile) BaseFileName() (o0 string) { z.log.Println(".File.BaseFileName on zero object. Wrap it in if or with: {{ with .File }}{{ .BaseFileName }}{{ end }}") return } + func (z zeroFile) TranslationBaseName() (o0 string) { z.log.Println(".File.TranslationBaseName on zero object. Wrap it in if or with: {{ with .File }}{{ .TranslationBaseName }}{{ end }}") return } + func (z zeroFile) ContentBaseName() (o0 string) { z.log.Println(".File.ContentBaseName on zero object. Wrap it in if or with: {{ with .File }}{{ .ContentBaseName }}{{ end }}") return } + func (z zeroFile) UniqueID() (o0 string) { z.log.Println(".File.UniqueID on zero object. Wrap it in if or with: {{ with .File }}{{ .UniqueID }}{{ end }}") return } + func (z zeroFile) FileInfo() (o0 hugofs.FileMetaInfo) { z.log.Println(".File.FileInfo on zero object. Wrap it in if or with: {{ with .File }}{{ .FileInfo }}{{ end }}") return diff --git a/resources/postpub/fields.go b/resources/postpub/fields.go index f1cfe6092..ed3491438 100644 --- a/resources/postpub/fields.go +++ b/resources/postpub/fields.go @@ -53,7 +53,7 @@ func structToMap(s interface{}) map[string]interface{} { // insert placeholder for the templates. Do it very shallow for now. func insertFieldPlaceholders(root string, m map[string]interface{}, createPlaceholder func(s string) string) { - for k, _ := range m { + for k := range m { m[k] = createPlaceholder(root + "." + k) } } diff --git a/resources/postpub/fields_test.go b/resources/postpub/fields_test.go index d67c7c9a9..10a68ac5a 100644 --- a/resources/postpub/fields_test.go +++ b/resources/postpub/fields_test.go @@ -42,5 +42,4 @@ func TestCreatePlaceholders(t *testing.T) { "SubType": "pre_foo.SubType_post", "Suffixes": "pre_foo.Suffixes_post", }) - } diff --git a/resources/postpub/postpub.go b/resources/postpub/postpub.go index 3a1dd2f85..85b4221fd 100644 --- a/resources/postpub/postpub.go +++ b/resources/postpub/postpub.go @@ -108,7 +108,6 @@ func (r *PostPublishResource) GetFieldString(pattern string) (string, bool) { default: panic(fmt.Sprintf("unknown field accessor %q", fieldAccessor)) } - } func (r *PostPublishResource) fieldToString(receiver interface{}, path string) string { diff --git a/resources/resource.go b/resources/resource.go index acdf2d744..64f9f12f3 100644 --- a/resources/resource.go +++ b/resources/resource.go @@ -276,7 +276,6 @@ func (l *genericResource) Publish() error { defer fw.Close() _, err = io.Copy(fw, fr) - }) return err @@ -435,7 +434,6 @@ func (l genericResource) clone() *genericResource { // returns an opened file or nil if nothing to write (it may already be published). func (l *genericResource) openDestinationsForWriting() (w io.WriteCloser, err error) { - l.publishInit.Do(func() { targetFilenames := l.getTargetFilenames() var changedFilenames []string @@ -456,11 +454,9 @@ func (l *genericResource) openDestinationsForWriting() (w io.WriteCloser, err er } w, err = helpers.OpenFilesForWriting(l.getSpec().BaseFs.PublishFs, changedFilenames...) - }) return - } func (r *genericResource) openPublishFileForWriting(relTargetPath string) (io.WriteCloser, error) { diff --git a/resources/resource/params.go b/resources/resource/params.go index 89da718ec..c76eedeab 100644 --- a/resources/resource/params.go +++ b/resources/resource/params.go @@ -30,5 +30,4 @@ func Param(r ResourceParamsProvider, fallback maps.Params, key interface{}) (int } return maps.GetNestedParam(keyStr, ".", r.Params(), fallback) - } diff --git a/resources/resource_cache.go b/resources/resource_cache.go index 6c4ba951b..f498bb0c0 100644 --- a/resources/resource_cache.go +++ b/resources/resource_cache.go @@ -69,8 +69,8 @@ func resourceKeyPartition(filename string) string { // Commonly used aliases and directory names used for some types. var extAliasKeywords = map[string][]string{ - "sass": []string{"scss"}, - "scss": []string{"sass"}, + "sass": {"scss"}, + "scss": {"sass"}, } // ResourceKeyPartitions resolves a ordered slice of partitions that is @@ -201,7 +201,6 @@ func (c *ResourceCache) getOrCreate(key string, f func() (interface{}, error)) ( c.set(key, r) return r, nil - } func (c *ResourceCache) getFilenames(key string) (string, string) { @@ -230,7 +229,6 @@ func (c *ResourceCache) getFromFile(key string) (filecache.ItemInfo, io.ReadClos fi, rc, _ := c.fileCache.Get(filenameContent) return fi, rc, meta, rc != nil - } // writeMeta writes the metadata to file and returns a writer for the content part. @@ -254,7 +252,6 @@ func (c *ResourceCache) writeMeta(key string, meta transformedResourceMetadata) fi, fc, err := c.fileCache.WriteCloser(filenameContent) return fi, fc, err - } func (c *ResourceCache) set(key string, r interface{}) { @@ -294,7 +291,6 @@ func (c *ResourceCache) DeletePartitions(partitions ...string) { delete(c.cache, k) } } - } func (c *ResourceCache) DeleteMatches(re *regexp.Regexp) { @@ -305,7 +301,5 @@ func (c *ResourceCache) DeleteMatches(re *regexp.Regexp) { if re.MatchString(k) { delete(c.cache, k) } - } - } diff --git a/resources/resource_factories/bundler/bundler.go b/resources/resource_factories/bundler/bundler.go index 1ea92bea3..7de228227 100644 --- a/resources/resource_factories/bundler/bundler.go +++ b/resources/resource_factories/bundler/bundler.go @@ -130,7 +130,6 @@ func (c *Client) Concat(targetPath string, r resource.Resources) (resource.Resou } return newMultiReadSeekCloser(rcsources...), nil - } composite, err := c.rs.New( @@ -138,13 +137,12 @@ func (c *Client) Concat(targetPath string, r resource.Resources) (resource.Resou Fs: c.rs.FileCaches.AssetsCache().Fs, LazyPublish: true, OpenReadSeekCloser: concatr, - RelTargetFilename: filepath.Clean(targetPath)}) - + RelTargetFilename: filepath.Clean(targetPath), + }) if err != nil { return nil, err } return composite, nil }) - } diff --git a/resources/resource_factories/bundler/bundler_test.go b/resources/resource_factories/bundler/bundler_test.go index 16a5215ba..17a74cc88 100644 --- a/resources/resource_factories/bundler/bundler_test.go +++ b/resources/resource_factories/bundler/bundler_test.go @@ -37,5 +37,4 @@ func TestMultiReadSeekCloser(t *testing.T) { _, err := rc.Seek(0, 0) c.Assert(err, qt.IsNil) } - } diff --git a/resources/resource_factories/create/create.go b/resources/resource_factories/create/create.go index 4ac20d36e..1bba98d21 100644 --- a/resources/resource_factories/create/create.go +++ b/resources/resource_factories/create/create.go @@ -47,9 +47,9 @@ func (c *Client) Get(filename string) (resource.Resource, error) { return c.rs.New(resources.ResourceSourceDescriptor{ Fs: c.rs.BaseFs.Assets.Fs, LazyPublish: true, - SourceFilename: filename}) + SourceFilename: filename, + }) }) - } // Match gets the resources matching the given pattern from the assets filesystem. @@ -93,8 +93,8 @@ func (c *Client) match(pattern string, firstOnly bool) (resource.Resources, erro OpenReadSeekCloser: func() (hugio.ReadSeekCloser, error) { return meta.Open() }, - RelTargetFilename: meta.Path()}) - + RelTargetFilename: meta.Path(), + }) if err != nil { return true, err } @@ -102,7 +102,6 @@ func (c *Client) match(pattern string, firstOnly bool) (resource.Resources, erro res = append(res, r) return firstOnly, nil - } if err := hugofs.Glob(c.rs.BaseFs.Assets.Fs, pattern, handle); err != nil { @@ -110,7 +109,6 @@ func (c *Client) match(pattern string, firstOnly bool) (resource.Resources, erro } return res, nil - }) } @@ -124,8 +122,7 @@ func (c *Client) FromString(targetPath, content string) (resource.Resource, erro OpenReadSeekCloser: func() (hugio.ReadSeekCloser, error) { return hugio.NewReadSeekerNoOpCloserFromString(content), nil }, - RelTargetFilename: filepath.Clean(targetPath)}) - + RelTargetFilename: filepath.Clean(targetPath), + }) }) - } diff --git a/resources/resource_metadata.go b/resources/resource_metadata.go index 7bf7479a3..a0c232c67 100644 --- a/resources/resource_metadata.go +++ b/resources/resource_metadata.go @@ -16,6 +16,7 @@ package resources import ( "fmt" "strconv" + "strings" "github.com/gohugoio/hugo/hugofs/glob" "github.com/gohugoio/hugo/media" @@ -24,8 +25,6 @@ import ( "github.com/pkg/errors" "github.com/spf13/cast" - "strings" - "github.com/gohugoio/hugo/common/maps" ) diff --git a/resources/resource_metadata_test.go b/resources/resource_metadata_test.go index c79a50021..87a537f74 100644 --- a/resources/resource_metadata_test.go +++ b/resources/resource_metadata_test.go @@ -43,7 +43,6 @@ func TestAssignMetadata(t *testing.T) { c.Assert(logo1.Title(), qt.Equals, "My Resource") c.Assert(logo1.Name(), qt.Equals, "My Name") c.Assert(foo2.Name(), qt.Equals, "My Name") - }}, {[]map[string]interface{}{ { @@ -62,7 +61,6 @@ func TestAssignMetadata(t *testing.T) { c.Assert(foo2.Name(), qt.Equals, "My Name") c.Assert(foo3.Name(), qt.Equals, "My Name") c.Assert(foo3.Title(), qt.Equals, "My Resource") - }}, {[]map[string]interface{}{ { @@ -102,7 +100,6 @@ func TestAssignMetadata(t *testing.T) { c.Assert(icon1, qt.Equals, "logo") c.Assert(icon2, qt.Equals, "resource") - }}, {[]map[string]interface{}{ { @@ -126,7 +123,6 @@ func TestAssignMetadata(t *testing.T) { c.Assert(foo3.Title(), qt.Equals, "Resource #5") c.Assert(resources.GetMatch("logo name #1*"), qt.Equals, logo2) - }}, {[]map[string]interface{}{ { @@ -146,7 +142,6 @@ func TestAssignMetadata(t *testing.T) { c.Assert(logo2.Name(), qt.Equals, "Name #1") c.Assert(logo1.Title(), qt.Equals, "Other Logo #2") c.Assert(logo1.Name(), qt.Equals, "Name #2") - }}, {[]map[string]interface{}{ { @@ -166,7 +161,6 @@ func TestAssignMetadata(t *testing.T) { c.Assert(logo2.Name(), qt.Equals, "Name #1") c.Assert(logo1.Title(), qt.Equals, "Other Logo #2") c.Assert(logo1.Name(), qt.Equals, "Name #2") - }}, {[]map[string]interface{}{ { @@ -186,7 +180,6 @@ func TestAssignMetadata(t *testing.T) { c.Assert(logo2.Name(), qt.Equals, "Name #1") c.Assert(logo1.Title(), qt.Equals, "Logo #2") c.Assert(logo1.Name(), qt.Equals, "Name #2") - }}, {[]map[string]interface{}{ { @@ -195,7 +188,6 @@ func TestAssignMetadata(t *testing.T) { }, func(err error) { // Missing src c.Assert(err, qt.Not(qt.IsNil)) - }}, {[]map[string]interface{}{ { @@ -205,7 +197,6 @@ func TestAssignMetadata(t *testing.T) { }, func(err error) { // Invalid pattern c.Assert(err, qt.Not(qt.IsNil)) - }}, } { @@ -227,5 +218,4 @@ func TestAssignMetadata(t *testing.T) { this.assertFunc(AssignMetadata(this.metaData, resources...)) } - } diff --git a/resources/resource_spec.go b/resources/resource_spec.go index 0ca60fe31..1659332ab 100644 --- a/resources/resource_spec.go +++ b/resources/resource_spec.go @@ -53,7 +53,6 @@ func NewSpec( errorHandler herrors.ErrorSender, outputFormats output.Formats, mimeTypes media.Types) (*Spec, error) { - imgConfig, err := images.DecodeConfig(s.Cfg.GetStringMap("imaging")) if err != nil { return nil, err @@ -96,12 +95,12 @@ func NewSpec( fileCaches.ImageCache(), s, - )} + ), + } rs.ResourceCache = newResourceCache(rs) return rs, nil - } type Spec struct { @@ -189,7 +188,6 @@ func (r *Spec) newGenericResource(sourceFs afero.Fs, baseFilename, mediaType, ) - } func (r *Spec) newGenericResourceWithBase( @@ -201,7 +199,6 @@ func (r *Spec) newGenericResourceWithBase( sourceFilename, baseFilename string, mediaType media.Type) *genericResource { - if osFileInfo != nil && osFileInfo.IsDir() { panic(fmt.Sprintf("dirs not supported resource types: %v", osFileInfo)) } @@ -250,7 +247,6 @@ func (r *Spec) newGenericResourceWithBase( } return g - } func (r *Spec) newResource(sourceFs afero.Fs, fd ResourceSourceDescriptor) (resource.Resource, error) { @@ -318,7 +314,6 @@ func (r *Spec) newResource(sourceFs afero.Fs, fd ResourceSourceDescriptor) (reso } return newResourceAdapter(gr.spec, fd.LazyPublish, gr), nil - } func (r *Spec) newResourceFor(fd ResourceSourceDescriptor) (resource.Resource, error) { diff --git a/resources/resource_test.go b/resources/resource_test.go index 7a0b8069d..bf7a94529 100644 --- a/resources/resource_test.go +++ b/resources/resource_test.go @@ -39,7 +39,6 @@ func TestGenericResource(t *testing.T) { c.Assert(r.Permalink(), qt.Equals, "https://example.com/foo.css") c.Assert(r.RelPermalink(), qt.Equals, "/foo.css") c.Assert(r.ResourceType(), qt.Equals, "css") - } func TestGenericResourceWithLinkFacory(t *testing.T) { @@ -78,7 +77,6 @@ func TestNewResourceFromFilename(t *testing.T) { c.Assert(err, qt.IsNil) c.Assert(r, qt.Not(qt.IsNil)) c.Assert(r.ResourceType(), qt.Equals, "json") - } func TestNewResourceFromFilenameSubPathInBaseURL(t *testing.T) { @@ -96,7 +94,6 @@ func TestNewResourceFromFilenameSubPathInBaseURL(t *testing.T) { c.Assert(r.ResourceType(), qt.Equals, "image") c.Assert(r.RelPermalink(), qt.Equals, "/docs/a/b/logo.png") c.Assert(r.Permalink(), qt.Equals, "https://example.com/docs/a/b/logo.png") - } var pngType, _ = media.FromStringAndExt("image/png", "png") @@ -108,11 +105,11 @@ func TestResourcesByType(t *testing.T) { spec.newGenericResource(nil, nil, nil, "/a/foo1.css", "foo1.css", media.CSSType), spec.newGenericResource(nil, nil, nil, "/a/logo.png", "logo.css", pngType), spec.newGenericResource(nil, nil, nil, "/a/foo2.css", "foo2.css", media.CSSType), - spec.newGenericResource(nil, nil, nil, "/a/foo3.css", "foo3.css", media.CSSType)} + spec.newGenericResource(nil, nil, nil, "/a/foo3.css", "foo3.css", media.CSSType), + } c.Assert(len(resources.ByType("css")), qt.Equals, 3) c.Assert(len(resources.ByType("image")), qt.Equals, 1) - } func TestResourcesGetByPrefix(t *testing.T) { @@ -123,7 +120,8 @@ func TestResourcesGetByPrefix(t *testing.T) { spec.newGenericResource(nil, nil, nil, "/a/logo1.png", "logo1.png", pngType), spec.newGenericResource(nil, nil, nil, "/b/Logo2.png", "Logo2.png", pngType), spec.newGenericResource(nil, nil, nil, "/b/foo2.css", "foo2.css", media.CSSType), - spec.newGenericResource(nil, nil, nil, "/b/foo3.css", "foo3.css", media.CSSType)} + spec.newGenericResource(nil, nil, nil, "/b/foo3.css", "foo3.css", media.CSSType), + } c.Assert(resources.GetMatch("asdf*"), qt.IsNil) c.Assert(resources.GetMatch("logo*").RelPermalink(), qt.Equals, "/logo1.png") @@ -141,7 +139,6 @@ func TestResourcesGetByPrefix(t *testing.T) { c.Assert(logo.Params(), qt.Not(qt.IsNil)) c.Assert(logo.Name(), qt.Equals, "logo1.png") c.Assert(logo.Title(), qt.Equals, "logo1.png") - } func TestResourcesGetMatch(t *testing.T) { @@ -187,7 +184,6 @@ func TestResourcesGetMatch(t *testing.T) { // (it is possible for users to do a rename) // This is analogous to standing in a directory and doing "ls *.*". c.Assert(len(resources.Match("/c/**.css")), qt.Equals, 0) - } func BenchmarkResourcesMatch(b *testing.B) { @@ -218,7 +214,6 @@ func BenchmarkResourcesMatchA100(b *testing.B) { for i := 0; i < b.N; i++ { resources.Match(pattern) } - } func benchResources(b *testing.B) resource.Resources { @@ -242,7 +237,6 @@ func benchResources(b *testing.B) resource.Resources { } return resources - } func BenchmarkAssignMetadata(b *testing.B) { @@ -252,7 +246,7 @@ func BenchmarkAssignMetadata(b *testing.B) { for i := 0; i < b.N; i++ { b.StopTimer() var resources resource.Resources - var meta = []map[string]interface{}{ + meta := []map[string]interface{}{ { "title": "Foo #:counter", "name": "Foo Name #:counter", diff --git a/resources/resource_transformers/babel/babel.go b/resources/resource_transformers/babel/babel.go index a9d39d31b..a7598f820 100644 --- a/resources/resource_transformers/babel/babel.go +++ b/resources/resource_transformers/babel/babel.go @@ -51,6 +51,7 @@ func DecodeOptions(m map[string]interface{}) (opts Options, err error) { err = mapstructure.WeakDecode(m, &opts) return } + func (opts Options) toArgs() []string { var args []string @@ -111,7 +112,6 @@ func (t *babelTransformation) Transform(ctx *resources.ResourceTransformationCtx // Try PATH binary = binaryName if _, err := exec.LookPath(binary); err != nil { - // This may be on a CI server etc. Will fall back to pre-built assets. return herrors.ErrFeatureNotAvailable } diff --git a/resources/resource_transformers/integrity/integrity.go b/resources/resource_transformers/integrity/integrity.go index 1b74de7eb..bbd0b6675 100644 --- a/resources/resource_transformers/integrity/integrity.go +++ b/resources/resource_transformers/integrity/integrity.go @@ -55,7 +55,6 @@ func (t *fingerprintTransformation) Key() internal.ResourceTransformationKey { // Transform creates a MD5 hash of the Resource content and inserts that hash before // the extension in the filename. func (t *fingerprintTransformation) Transform(ctx *resources.ResourceTransformationCtx) error { - h, err := newHash(t.algo) if err != nil { return err diff --git a/resources/resource_transformers/integrity/integrity_test.go b/resources/resource_transformers/integrity/integrity_test.go index 3759e6313..8a17fef7a 100644 --- a/resources/resource_transformers/integrity/integrity_test.go +++ b/resources/resource_transformers/integrity/integrity_test.go @@ -24,7 +24,6 @@ import ( ) func TestHashFromAlgo(t *testing.T) { - for _, algo := range []struct { name string bits int @@ -35,7 +34,6 @@ func TestHashFromAlgo(t *testing.T) { {"sha512", 512}, {"shaman", -1}, } { - t.Run(algo.name, func(t *testing.T) { c := qt.New(t) h, err := newHash(algo.name) @@ -46,7 +44,6 @@ func TestHashFromAlgo(t *testing.T) { c.Assert(err, qt.Not(qt.IsNil)) c.Assert(err.Error(), qt.Contains, "use either md5, sha256, sha384 or sha512") } - }) } } diff --git a/resources/resource_transformers/js/options.go b/resources/resource_transformers/js/options.go index 925b19956..75daa0cad 100644 --- a/resources/resource_transformers/js/options.go +++ b/resources/resource_transformers/js/options.go @@ -212,12 +212,10 @@ func createBuildPlugins(c *Client, opts Options) ([]api.Plugin, error) { build.OnResolve(api.OnResolveOptions{Filter: `.*`}, func(args api.OnResolveArgs) (api.OnResolveResult, error) { return resolveImport(args) - }) build.OnLoad(api.OnLoadOptions{Filter: `.*`, Namespace: nsImportHugo}, func(args api.OnLoadArgs) (api.OnLoadResult, error) { b, err := ioutil.ReadFile(args.Path) - if err != nil { return api.OnLoadResult{}, errors.Wrapf(err, "failed to read %q", args.Path) } @@ -266,11 +264,9 @@ func createBuildPlugins(c *Client, opts Options) ([]api.Plugin, error) { } return []api.Plugin{importResolver, paramsPlugin}, nil - } func toBuildOptions(opts Options) (buildOptions api.BuildOptions, err error) { - var target api.Target switch opts.Target { case "", "esnext": @@ -336,8 +332,8 @@ func toBuildOptions(opts Options) (buildOptions api.BuildOptions, err error) { } // By default we only need to specify outDir and no outFile - var outDir = opts.outDir - var outFile = "" + outDir := opts.outDir + outFile := "" var sourceMap api.SourceMap switch opts.SourceMap { case "inline": @@ -381,5 +377,4 @@ func toBuildOptions(opts Options) (buildOptions api.BuildOptions, err error) { }, } return - } diff --git a/resources/resource_transformers/js/options_test.go b/resources/resource_transformers/js/options_test.go index ef8c203ce..f07ccc26b 100644 --- a/resources/resource_transformers/js/options_test.go +++ b/resources/resource_transformers/js/options_test.go @@ -76,7 +76,8 @@ func TestToBuildOptions(t *testing.T) { opts, err = toBuildOptions(Options{ Target: "es2018", Format: "cjs", Minify: true, mediaType: media.JavascriptType, - SourceMap: "inline"}) + SourceMap: "inline", + }) c.Assert(err, qt.IsNil) c.Assert(opts, qt.DeepEquals, api.BuildOptions{ Bundle: true, @@ -93,7 +94,8 @@ func TestToBuildOptions(t *testing.T) { opts, err = toBuildOptions(Options{ Target: "es2018", Format: "cjs", Minify: true, mediaType: media.JavascriptType, - SourceMap: "inline"}) + SourceMap: "inline", + }) c.Assert(err, qt.IsNil) c.Assert(opts, qt.DeepEquals, api.BuildOptions{ Bundle: true, @@ -107,5 +109,4 @@ func TestToBuildOptions(t *testing.T) { Loader: api.LoaderJS, }, }) - } diff --git a/resources/resource_transformers/minifier/minify.go b/resources/resource_transformers/minifier/minify.go index 060485e80..51a3f4047 100644 --- a/resources/resource_transformers/minifier/minify.go +++ b/resources/resource_transformers/minifier/minify.go @@ -57,5 +57,4 @@ func (c *Client) Minify(res resources.ResourceTransformer) (resource.Resource, e rs: c.rs, m: c.m, }) - } diff --git a/resources/resource_transformers/minifier/minify_test.go b/resources/resource_transformers/minifier/minify_test.go index 38828c17c..b0ebe3171 100644 --- a/resources/resource_transformers/minifier/minify_test.go +++ b/resources/resource_transformers/minifier/minify_test.go @@ -39,5 +39,4 @@ func TestTransform(t *testing.T) { content, err := transformed.(resource.ContentProvider).Content() c.Assert(err, qt.IsNil) c.Assert(content, qt.Equals, "<h1>Hugo Rocks!</h1>") - } diff --git a/resources/resource_transformers/postcss/postcss.go b/resources/resource_transformers/postcss/postcss.go index daeb7212a..8ba40ebd1 100644 --- a/resources/resource_transformers/postcss/postcss.go +++ b/resources/resource_transformers/postcss/postcss.go @@ -19,6 +19,7 @@ import ( "encoding/hex" "io" "io/ioutil" + "os/exec" "path" "path/filepath" "regexp" @@ -36,8 +37,6 @@ import ( "github.com/gohugoio/hugo/hugofs" "github.com/pkg/errors" - "os/exec" - "github.com/mitchellh/mapstructure" "github.com/gohugoio/hugo/common/herrors" @@ -139,7 +138,6 @@ func (t *postcssTransformation) Key() internal.ResourceTransformationKey { // npm install -g postcss-cli // npm install -g autoprefixer func (t *postcssTransformation) Transform(ctx *resources.ResourceTransformationCtx) error { - const localPostCSSPath = "node_modules/.bin/" const binaryName = "postcss" @@ -174,7 +172,6 @@ func (t *postcssTransformation) Transform(ctx *resources.ResourceTransformationC if configFile == "" && t.options.Config != "" { // Only fail if the user specificed config file is not found. return errors.Errorf("postcss config %q not found:", configFile) - } } @@ -271,7 +268,6 @@ func (imp *importResolver) importRecursive( lineNum int, content string, inPath string) (int, string, error) { - basePath := path.Dir(inPath) var replacements []string @@ -350,7 +346,6 @@ func (imp *importResolver) resolve() (io.Reader, error) { } return strings.NewReader(newContent), nil - } // See https://www.w3schools.com/cssref/pr_import_rule.asp diff --git a/resources/resource_transformers/postcss/postcss_test.go b/resources/resource_transformers/postcss/postcss_test.go index a49487c97..c5f855445 100644 --- a/resources/resource_transformers/postcss/postcss_test.go +++ b/resources/resource_transformers/postcss/postcss_test.go @@ -44,7 +44,6 @@ func TestDecodeOptions(t *testing.T) { c.Assert(err, qt.IsNil) c.Assert(opts2.NoMap, qt.Equals, true) - } func TestShouldImport(t *testing.T) { @@ -117,7 +116,6 @@ E_STYLE Offset: 1, Filename: "d.css", }) - } func BenchmarkImportResolver(b *testing.B) { diff --git a/resources/resource_transformers/tocss/scss/client_test.go b/resources/resource_transformers/tocss/scss/client_test.go index f9adac226..9dddd3869 100644 --- a/resources/resource_transformers/tocss/scss/client_test.go +++ b/resources/resource_transformers/tocss/scss/client_test.go @@ -46,5 +46,4 @@ func TestReplaceRegularCSSImports(t *testing.T) { reverted := replaceRegularImportsOut(res) c.Assert(reverted, qt.Equals, scssWithImport) - } diff --git a/resources/resource_transformers/tocss/scss/tocss.go b/resources/resource_transformers/tocss/scss/tocss.go index fc7a19f33..f4f15fad1 100644 --- a/resources/resource_transformers/tocss/scss/tocss.go +++ b/resources/resource_transformers/tocss/scss/tocss.go @@ -127,7 +127,7 @@ func (t *toCSSTransformation) Transform(ctx *resources.ResourceTransformationCtx // more correct for the main entry path (main.scss typically), but // it will mess up the import mappings. As a workaround, we do a replacement // in the source map itself (see below). - //options.InputPath = inputPath + // options.InputPath = inputPath options.to.SourceMapOptions.OutputPath = outName options.to.SourceMapOptions.Contents = true options.to.SourceMapOptions.OmitURL = false diff --git a/resources/testhelpers_test.go b/resources/testhelpers_test.go index 0462f7ecd..32e4213ea 100644 --- a/resources/testhelpers_test.go +++ b/resources/testhelpers_test.go @@ -1,15 +1,14 @@ package resources import ( - "path/filepath" - "testing" - "image" "io" "io/ioutil" "os" + "path/filepath" "runtime" "strings" + "testing" "github.com/gohugoio/hugo/langs" "github.com/gohugoio/hugo/modules" @@ -51,11 +50,9 @@ func createTestCfg() *viper.Viper { cfg.Set("allModules", modules.Modules{mod}) return cfg - } func newTestResourceSpec(desc specDescriptor) *Spec { - baseURL := desc.baseURL if baseURL == "" { baseURL = "https://example.com/" @@ -133,7 +130,6 @@ func newTestResourceOsFs(c *qt.C) (*Spec, string) { c.Assert(err, qt.IsNil) return spec, workDir - } func fetchSunset(c *qt.C) resource.Image { diff --git a/resources/transform.go b/resources/transform.go index 354a20eec..d995bb46b 100644 --- a/resources/transform.go +++ b/resources/transform.go @@ -293,7 +293,6 @@ func (r *resourceAdapter) publish() { r.spec.Logger.Errorf("Failed to publish Resource: %s", r.publisherErr) } }) - } func (r *resourceAdapter) TransformationKey() string { @@ -397,7 +396,6 @@ func (r *resourceAdapter) transform(publish, setContent bool) error { } newErr := func(err error) error { - msg := fmt.Sprintf("%s: failed to transform %q (%s)", strings.ToUpper(tr.Key().Name), tctx.InPath, tctx.InMediaType.Type()) if err == herrors.ErrFeatureNotAvailable { @@ -416,7 +414,6 @@ func (r *resourceAdapter) transform(publish, setContent bool) error { } return errors.Wrap(err, msg) - } var tryFileCache bool diff --git a/resources/transform_test.go b/resources/transform_test.go index b2dad2210..488fefd6e 100644 --- a/resources/transform_test.go +++ b/resources/transform_test.go @@ -385,11 +385,10 @@ func TestTransform(t *testing.T) { resizedNotPublished, err := img.Resize("50x50") c.Assert(err, qt.IsNil) c.Assert(resizedNotPublished.Height(), qt.Equals, 50) - //c.Assert(resized.RelPermalink(), qt.Equals, "/gopher.changed_hu2e827f5a78333ebc04166dd643235dea_1462_50x50_resize_linear_2.png") + // c.Assert(resized.RelPermalink(), qt.Equals, "/gopher.changed_hu2e827f5a78333ebc04166dd643235dea_1462_50x50_resize_linear_2.png") assertShouldExist(c, spec, "public/gopher.changed_hu2e827f5a78333ebc04166dd643235dea_1462_50x50_resize_linear_2.png", false) assertNoDuplicateWrites(c, spec) - }) c.Run("Concurrent", func(c *qt.C) { |