URI: 
       hubolib: Headless bundles should not be listed in .Pages - hugo - [fork] hugo port for 9front
  HTML git clone git@git.drkhsh.at/hugo.git
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
   DIR README
   DIR LICENSE
       ---
   DIR commit d1d1f240a25945b37eebe8a9a3f439f290832b33
   DIR parent 70a1aa345b95bcf325f19c6e7184bcd6f885e454
  HTML Author: Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
       Date:   Sun, 10 Nov 2019 13:36:33 +0100
       
       hubolib: Headless bundles should not be listed in .Pages
       
       Fixes #6492
       
       Diffstat:
         M hugolib/pagebundler_test.go         |       6 ++++++
         M hugolib/pagecollections.go          |      11 ++++++-----
         M hugolib/pages_map.go                |      12 +++++++++---
       
       3 files changed, 21 insertions(+), 8 deletions(-)
       ---
   DIR diff --git a/hugolib/pagebundler_test.go b/hugolib/pagebundler_test.go
       @@ -579,6 +579,12 @@ HEADLESS {{< myShort >}}
                // 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) {
   DIR diff --git a/hugolib/pagecollections.go b/hugolib/pagecollections.go
       @@ -490,14 +490,15 @@ func (c *PageCollections) createWorkAllPages() error {
                        }
        
                        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)
   DIR diff --git a/hugolib/pages_map.go b/hugolib/pages_map.go
       @@ -107,7 +107,12 @@ func (m *pagesMap) initPageMetaFor(prefix string, bucket *pagesMapBucket) error 
                        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 @@ type pagesMapBucket struct {
                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