diff --git a/hugolib/page_test.go b/hugolib/page_test.go index 47f7c59c9..66afd7d96 100644 --- a/hugolib/page_test.go +++ b/hugolib/page_test.go @@ -523,7 +523,7 @@ categories: ["cool stuff"] for _, p := range s.Pages() { checkDated(p, p.Kind()) } - checkDate(s.LastChange(), "site") + checkDate(s.Lastmod(), "site") } func TestPageDatesSections(t *testing.T) { diff --git a/hugolib/securitypolicies_test.go b/hugolib/securitypolicies_test.go index b0d39c697..3ddda7d6a 100644 --- a/hugolib/securitypolicies_test.go +++ b/hugolib/securitypolicies_test.go @@ -185,35 +185,6 @@ urls="none" [security.http] mediaTypes=["application/json"] -`) - }) - }) - - c.Run("getJSON, OK", func(c *qt.C) { - c.Parallel() - httpTestVariant(c, `{{ $json := getJSON "%[1]s/fruits.json" }}{{ $json.Content }}`, "", nil) - }) - - c.Run("getJSON, denied URL", func(c *qt.C) { - c.Parallel() - httpTestVariant(c, `{{ $json := getJSON "%[1]s/fruits.json" }}{{ $json.Content }}`, `(?s).*is not whitelisted in policy "security\.http\.urls".*`, - func(b *sitesBuilder) { - b.WithConfigFile("toml", ` -[security] -[security.http] -urls="none" -`) - }) - }) - - c.Run("getCSV, denied URL", func(c *qt.C) { - c.Parallel() - httpTestVariant(c, `{{ $d := getCSV ";" "%[1]s/cities.csv" }}{{ $d.Content }}`, `(?s).*is not whitelisted in policy "security\.http\.urls".*`, - func(b *sitesBuilder) { - b.WithConfigFile("toml", ` -[security] -[security.http] -urls="none" `) }) }) diff --git a/hugolib/site_stats_test.go b/hugolib/site_stats_test.go index 167194ef5..7fd68ff44 100644 --- a/hugolib/site_stats_test.go +++ b/hugolib/site_stats_test.go @@ -121,11 +121,10 @@ date: 2023-04-01 --- -- layouts/index.html -- site.Lastmod: {{ .Site.Lastmod.Format "2006-01-02" }} -site.LastChange: {{ .Site.LastChange.Format "2006-01-02" }} home.Lastmod: {{ site.Home.Lastmod.Format "2006-01-02" }} ` b := Test(t, files) - b.AssertFileContent("public/index.html", "site.Lastmod: 2023-04-01\nsite.LastChange: 2023-04-01\nhome.Lastmod: 2023-01-01") + b.AssertFileContent("public/index.html", "site.Lastmod: 2023-04-01\nhome.Lastmod: 2023-01-01") } diff --git a/hugolib/site_test.go b/hugolib/site_test.go index 37546824a..2ee33da24 100644 --- a/hugolib/site_test.go +++ b/hugolib/site_test.go @@ -147,8 +147,8 @@ func TestLastChange(t *testing.T) { s := buildSingleSite(t, deps.DepsCfg{Fs: fs, Configs: configs}, BuildCfg{SkipRender: true}) - c.Assert(s.LastChange().IsZero(), qt.Equals, false) - c.Assert(s.LastChange().Year(), qt.Equals, 2017) + c.Assert(s.Lastmod().IsZero(), qt.Equals, false) + c.Assert(s.Lastmod().Year(), qt.Equals, 2017) } // Issue #_index diff --git a/markup/goldmark/blockquotes/blockquotes.go b/markup/goldmark/blockquotes/blockquotes.go index f6d1a590e..f9d518850 100644 --- a/markup/goldmark/blockquotes/blockquotes.go +++ b/markup/goldmark/blockquotes/blockquotes.go @@ -164,10 +164,12 @@ var blockQuoteAlertRe = regexp.MustCompile(`^

\[!([a-zA-Z]+)\](-|\+)?[^\S\r\n] func resolveBlockQuoteAlert(s string) blockQuoteAlert { m := blockQuoteAlertRe.FindStringSubmatch(s) if len(m) == 4 { + title := strings.TrimSpace(m[3]) + title = strings.TrimRight(title, "

") return blockQuoteAlert{ typ: strings.ToLower(m[1]), sign: m[2], - title: m[3], + title: title, } } diff --git a/markup/goldmark/blockquotes/blockquotes_integration_test.go b/markup/goldmark/blockquotes/blockquotes_integration_test.go index af3c1fba4..1f671df2b 100644 --- a/markup/goldmark/blockquotes/blockquotes_integration_test.go +++ b/markup/goldmark/blockquotes/blockquotes_integration_test.go @@ -123,7 +123,6 @@ title: "Home" > [!danger] > Do not approach or handle without protective gear. - > [!tip] Callouts can have custom titles > Like this one. @@ -135,6 +134,10 @@ title: "Home" > [!faq]+ Foldable callout > Yes! In a foldable callout, the contents are hidden when the callout is collapsed +> [!info] Can callouts be nested? +> > [!important] Yes!, they can. +> > > [!tip] You can even use multiple layers of nesting. + -- layouts/index.html -- {{ .Content }} -- layouts/_default/_markup/render-blockquote.html -- @@ -145,9 +148,11 @@ AlertType: {{ .AlertType }}|AlertTitle: {{ .AlertTitle }}|AlertSign: {{ .AlertSi b := hugolib.Test(t, files) b.AssertFileContentExact("public/index.html", "AlertType: tip|AlertTitle: Callouts can have custom titles|AlertSign: |", - "AlertType: tip|AlertTitle: Title-only callout

|AlertSign: |", - "AlertType: faq|AlertTitle: Foldable negated callout|AlertSign: -|Text:

Yes!", - "AlertType: faq|AlertTitle: Foldable callout|AlertSign: +|", + "AlertType: tip|AlertTitle: Title-only callout|AlertSign: |", + "AlertType: faq|AlertTitle: Foldable negated callout|AlertSign: -|Text:

Yes! In a foldable callout, the contents are hidden when the callout is collapsed

\n|", + "AlertType: faq|AlertTitle: Foldable callout|AlertSign: +|Text:

Yes! In a foldable callout, the contents are hidden when the callout is collapsed

\n|", "AlertType: danger|AlertTitle: |AlertSign: |Text:

Do not approach or handle without protective gear.

\n|", + "AlertTitle: Can callouts be nested?|", + "AlertTitle: You can even use multiple layers of nesting.|", ) } diff --git a/markup/goldmark/blockquotes/blockquotes_test.go b/markup/goldmark/blockquotes/blockquotes_test.go index 8b948af08..067cf366e 100644 --- a/markup/goldmark/blockquotes/blockquotes_test.go +++ b/markup/goldmark/blockquotes/blockquotes_test.go @@ -63,6 +63,6 @@ func TestResolveBlockQuoteAlert(t *testing.T) { } for i, test := range tests { - c.Assert(resolveBlockQuoteAlert("

"+test.input), qt.Equals, test.expected, qt.Commentf("Test %d", i)) + c.Assert(resolveBlockQuoteAlert("

"+test.input+"

"), qt.Equals, test.expected, qt.Commentf("Test %d", i)) } }