hugolib: Add some more details to the "paginator not supported" error - hugo - [fork] hugo port for 9front
(HTM) git clone git@git.drkhsh.at/hugo.git
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) Submodules
(DIR) README
(DIR) LICENSE
---
(DIR) commit 1891d5e6b5575e3abb7e0f80c3fbce1670f9bd5e
(DIR) parent 156f08de351a3148f59fd010930d33d5ffaabf43
(HTM) Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Date: Thu, 1 Feb 2024 08:18:11 +0100
hugolib: Add some more details to the "paginator not supported" error
See #11949
Diffstat:
M hugolib/page.go | 8 ++++++++
M hugolib/page__output.go | 2 +-
M hugolib/paginator_test.go | 2 +-
3 files changed, 10 insertions(+), 2 deletions(-)
---
(DIR) diff --git a/hugolib/page.go b/hugolib/page.go
@@ -553,6 +553,14 @@ func (p *pageState) wrapError(err error) error {
return p.m.wrapError(err, p.s.h.SourceFs)
}
+func (p *pageState) getPageInfoForError() string {
+ s := fmt.Sprintf("kind: %q, path: %q", p.Kind(), p.Path())
+ if p.File() != nil {
+ s += fmt.Sprintf(", file: %q", p.File().Filename())
+ }
+ return s
+}
+
func (p *pageState) getContentConverter() converter.Converter {
var err error
p.contentConverterInit.Do(func() {
(DIR) diff --git a/hugolib/page__output.go b/hugolib/page__output.go
@@ -47,7 +47,7 @@ func newPageOutput(
paginatorProvider = pag
} else {
paginatorProvider = page.PaginatorNotSupportedFunc(func() error {
- return fmt.Errorf("pagination not supported for pages of kind %q", ps.Kind())
+ return fmt.Errorf("pagination not supported for this page: %s", ps.getPageInfoForError())
})
}
(DIR) diff --git a/hugolib/paginator_test.go b/hugolib/paginator_test.go
@@ -168,5 +168,5 @@ Paginator: {{ .Paginator }}
`
b, err := TestE(t, files)
b.Assert(err, qt.IsNotNil)
- b.Assert(err.Error(), qt.Contains, `error calling Paginator: pagination not supported for pages of kind "page"`)
+ b.Assert(err.Error(), qt.Contains, `error calling Paginator: pagination not supported for this page: kind: "page", path: "/p1", file: `+filepath.FromSlash(`"/content/p1.md"`))
}