ref: d1d1f240a25945b37eebe8a9a3f439f290832b33
parent: 70a1aa345b95bcf325f19c6e7184bcd6f885e454
author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
date: Sun Nov 10 08:36:33 EST 2019
hubolib: Headless bundles should not be listed in .Pages Fixes #6492
--- a/hugolib/pagebundler_test.go
+++ b/hugolib/pagebundler_test.go
@@ -579,6 +579,12 @@
// But the bundled resources needs to be published
th.assertFileContent(filepath.FromSlash(workDir+"/public/s2/l1.png"), "PNG")
+ // No headless bundles here, please.
+ // https://github.com/gohugoio/hugo/issues/6492
+ c.Assert(s.RegularPages(), qt.HasLen, 1)
+ c.Assert(s.home.RegularPages(), qt.HasLen, 1)
+ c.Assert(s.home.Pages(), qt.HasLen, 1)
+
}
func TestMultiSiteBundles(t *testing.T) {
--- a/hugolib/pagecollections.go
+++ b/hugolib/pagecollections.go
@@ -490,14 +490,15 @@
}
if !bucket.view {
+ for _, p := range bucket.headlessPages {
+ ps := p.(*pageState)
+ ps.parent = bucket.owner
+ c.headlessPages = append(c.headlessPages, ps)
+ }
for _, p := range bucket.pages {
ps := p.(*pageState)
ps.parent = bucket.owner
- if ps.m.headless {
- c.headlessPages = append(c.headlessPages, ps)
- } else {
- c.workAllPages = append(c.workAllPages, ps)
- }
+ c.workAllPages = append(c.workAllPages, ps)
if homeDates != nil {
homeDates.UpdateDateAndLastmodIfAfter(ps)
--- a/hugolib/pages_map.go
+++ b/hugolib/pages_map.go
@@ -107,7 +107,12 @@
tmp := bucket.pages[:0]
for _, x := range bucket.pages {
if m.s.shouldBuild(x) {
- tmp = append(tmp, x)
+ if x.(*pageState).m.headless {
+ bucket.headlessPages = append(bucket.headlessPages, x)
+ } else {
+ tmp = append(tmp, x)
+ }
+
}
}
bucket.pages = tmp
@@ -410,8 +415,9 @@
parent *pagesMapBucket
bucketSections []*pagesMapBucket
- pagesInit sync.Once
- pages page.Pages
+ pagesInit sync.Once
+ pages page.Pages
+ headlessPages page.Pages
pagesAndSectionsInit sync.Once
pagesAndSections page.Pages