]> git.maquefel.me Git - brevno-suite/hugo/commitdiff
hugolib: Allow regular pages to cascade to self
authorJoe Mooring <joe.mooring@veriphor.com>
Sun, 15 Mar 2026 04:25:40 +0000 (21:25 -0700)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sun, 15 Mar 2026 09:17:45 +0000 (10:17 +0100)
Closes #14627

hugolib/cascade_test.go
hugolib/page__meta.go

index 21d8e20c498bc3884efffab1e1be4b582593c61a..86c9d27f095f0809a8a8cc32d945eac6962f3f1c 100644 (file)
@@ -481,3 +481,65 @@ title: p1 de
        b.AssertFileExists("public/de/s1/p1/index.html", true)
        b.AssertFileExists("public/en/s1/p1/index.html", false)
 }
+
+// Issue 14627
+func TestRegularPageCascadeToSelf(t *testing.T) {
+       t.Parallel()
+
+       files := `
+-- hugo.toml --
+disableKinds = ['home','rss','sitemap','taxonomy','term']
+environment = 'pubweb'
+-- content/s1/_index.md --
+---
+title: s1
+cascade:
+  target:
+    environment: pubweb
+  build:
+    list: never
+    render: never
+    publishResources: false
+---
+-- content/s1/p1.md --
+---
+title: p1
+---
+-- content/s2/_index.md --
+---
+title: s2
+---
+-- content/s2/p2.md --
+---
+title: p2
+cascade:
+  target:
+    environment: pubweb
+  build:
+    list: never
+    render: never
+    publishResources: false
+---
+-- content/s2/p3/index.md --
+---
+title: p3
+cascade:
+  target:
+    environment: pubweb
+  build:
+    list: never
+    render: never
+    publishResources: false
+---
+-- layouts/all.html --
+{{ .Title }}|
+`
+
+       b := Test(t, files)
+
+       b.AssertFileExists("public/s1/index.html", false)
+       b.AssertFileExists("public/s1/p1/index.html", false)
+       b.AssertFileExists("public/s2/index.html", true)
+       b.AssertFileExists("public/s2/p2/index.html", false)
+       b.AssertFileExists("public/s2/p3/index.html", false)
+}
index 92569e010366bdd893a06cb7439a68b4d914f5a8..7253be4aa7ec786e10807d6181fc76302a4f0751 100644 (file)
@@ -204,7 +204,7 @@ func (m *pageMetaSource) doInitEarly(h *HugoSites, cascades *page.PageMatcherPar
                return err
        }
 
-       if cnh.isBranchNode(m) && m.pageConfigSource.Frontmatter != nil {
+       if m.pageConfigSource.Frontmatter != nil {
                if err := m.setCascadeFromMap(m.pageConfigSource.Frontmatter, m.pageConfigSource.SitesMatrix, h.Conf.ConfiguredDimensions(), h.Log); err != nil {
                        return err
                }