From 33d733300a4f0b765234706e51bb7e077fdc2471 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Erik=20Pedersen?= Date: Mon, 25 Nov 2019 20:04:49 +0100 Subject: [PATCH] Deprecate mmark Fixes #6486 --- helpers/content.go | 3 ++ helpers/general.go | 24 ++++++-------- hugolib/site.go | 6 ++-- .../page_generate/generate_page_wrappers.go | 2 +- resources/page/page_marshaljson.autogen.go | 3 +- resources/page/page_wrappers.autogen.go | 32 +++++++++---------- 6 files changed, 35 insertions(+), 35 deletions(-) diff --git a/helpers/content.go b/helpers/content.go index 941475461..4dc4cd413 100644 --- a/helpers/content.go +++ b/helpers/content.go @@ -198,6 +198,9 @@ func (c *ContentSpec) ResolveMarkup(in string) string { case "html", "htm": return "html" default: + if in == "mmark" { + Deprecated("Markup type mmark", "See https://gohugo.io//content-management/formats/#list-of-content-formats", false) + } if conv := c.Converters.Get(in); conv != nil { return conv.Name() } diff --git a/helpers/general.go b/helpers/general.go index 259bcf8f4..699ddeb53 100644 --- a/helpers/general.go +++ b/helpers/general.go @@ -252,8 +252,8 @@ type LogPrinter interface { // DistinctLogger ignores duplicate log statements. type DistinctLogger struct { sync.RWMutex - logger LogPrinter - m map[string]bool + getLogger func() LogPrinter + m map[string]bool } func (l *DistinctLogger) Reset() { @@ -289,7 +289,7 @@ func (l *DistinctLogger) print(logStatement string) { l.Lock() if !l.m[logStatement] { - l.logger.Println(logStatement) + l.getLogger().Println(logStatement) l.m[logStatement] = true } l.Unlock() @@ -297,23 +297,23 @@ func (l *DistinctLogger) print(logStatement string) { // NewDistinctErrorLogger creates a new DistinctLogger that logs ERRORs func NewDistinctErrorLogger() *DistinctLogger { - return &DistinctLogger{m: make(map[string]bool), logger: jww.ERROR} + return &DistinctLogger{m: make(map[string]bool), getLogger: func() LogPrinter { return jww.ERROR }} } // NewDistinctLogger creates a new DistinctLogger that logs to the provided logger. func NewDistinctLogger(logger LogPrinter) *DistinctLogger { - return &DistinctLogger{m: make(map[string]bool), logger: logger} + return &DistinctLogger{m: make(map[string]bool), getLogger: func() LogPrinter { return logger }} } // NewDistinctWarnLogger creates a new DistinctLogger that logs WARNs func NewDistinctWarnLogger() *DistinctLogger { - return &DistinctLogger{m: make(map[string]bool), logger: jww.WARN} + return &DistinctLogger{m: make(map[string]bool), getLogger: func() LogPrinter { return jww.WARN }} } // NewDistinctFeedbackLogger creates a new DistinctLogger that can be used // to give feedback to the user while not spamming with duplicates. func NewDistinctFeedbackLogger() *DistinctLogger { - return &DistinctLogger{m: make(map[string]bool), logger: jww.FEEDBACK} + return &DistinctLogger{m: make(map[string]bool), getLogger: func() LogPrinter { return jww.FEEDBACK }} } var ( @@ -339,16 +339,12 @@ func InitLoggers() { // point at the next Hugo release. // The idea is two remove an item in two Hugo releases to give users and theme authors // plenty of time to fix their templates. -func Deprecated(object, item, alternative string, err bool) { - if !strings.HasSuffix(alternative, ".") { - alternative += "." - } - +func Deprecated(item, alternative string, err bool) { if err { - DistinctErrorLog.Printf("%s's %s is deprecated and will be removed in Hugo %s. %s", object, item, hugo.CurrentVersion.Next().ReleaseVersion(), alternative) + DistinctErrorLog.Printf("%s is deprecated and will be removed in Hugo %s. %s", item, hugo.CurrentVersion.Next().ReleaseVersion(), alternative) } else { - DistinctWarnLog.Printf("%s's %s is deprecated and will be removed in a future release. %s", object, item, alternative) + DistinctWarnLog.Printf("%s is deprecated and will be removed in a future release. %s", item, alternative) } } diff --git a/hugolib/site.go b/hugolib/site.go index de41b8fc3..237a1ba8f 100644 --- a/hugolib/site.go +++ b/hugolib/site.go @@ -572,7 +572,7 @@ func (s *SiteInfo) AllRegularPages() page.Pages { func (s *SiteInfo) Permalinks() map[string]string { // Remove in 0.57 - helpers.Deprecated("Site", ".Permalinks", "", false) + helpers.Deprecated(".Site.Permalinks", "", false) return s.permalinks } @@ -794,7 +794,7 @@ func (s *siteRefLinker) refLink(ref string, source interface{}, relative bool, o // Ref will give an absolute URL to ref in the given Page. func (s *SiteInfo) Ref(ref string, page page.Page, options ...string) (string, error) { // Remove in Hugo 0.54 - helpers.Deprecated("Site", ".Ref", "Use .Site.GetPage", true) + helpers.Deprecated(".Site.Ref", "Use .Site.GetPage", true) outputFormat := "" if len(options) > 0 { outputFormat = options[0] @@ -806,7 +806,7 @@ func (s *SiteInfo) Ref(ref string, page page.Page, options ...string) (string, e // RelRef will give an relative URL to ref in the given Page. func (s *SiteInfo) RelRef(ref string, page page.Page, options ...string) (string, error) { // Remove in Hugo 0.54 - helpers.Deprecated("Site", ".RelRef", "Use .Site.GetPage", true) + helpers.Deprecated(".Site.RelRef", "Use .Site.GetPage", true) outputFormat := "" if len(options) > 0 { outputFormat = options[0] diff --git a/resources/page/page_generate/generate_page_wrappers.go b/resources/page/page_generate/generate_page_wrappers.go index 6d421c356..4c63962fa 100644 --- a/resources/page/page_generate/generate_page_wrappers.go +++ b/resources/page/page_generate/generate_page_wrappers.go @@ -165,7 +165,7 @@ func generateDeprecatedWrappers(c *codegen.Inspector) error { } } - return fmt.Sprintf("helpers.Deprecated(%q, %q, %q, false)", "Page", "."+name, alternative) + return fmt.Sprintf("helpers.Deprecated(%q, %q, false)", "Page."+name, alternative) } var buff bytes.Buffer diff --git a/resources/page/page_marshaljson.autogen.go b/resources/page/page_marshaljson.autogen.go index b2a8ef79f..6e08210ac 100644 --- a/resources/page/page_marshaljson.autogen.go +++ b/resources/page/page_marshaljson.autogen.go @@ -18,6 +18,7 @@ package page import ( "encoding/json" "github.com/bep/gitmap" + "github.com/gohugoio/hugo/common/maps" "github.com/gohugoio/hugo/config" "github.com/gohugoio/hugo/langs" "github.com/gohugoio/hugo/media" @@ -104,7 +105,7 @@ func MarshalPageToJSON(p Page) ([]byte, error) { RelPermalink string Name string Title string - Params map[string]interface{} + Params maps.Params Data interface{} Date time.Time Lastmod time.Time diff --git a/resources/page/page_wrappers.autogen.go b/resources/page/page_wrappers.autogen.go index d2d14dee6..bc2cf968c 100644 --- a/resources/page/page_wrappers.autogen.go +++ b/resources/page/page_wrappers.autogen.go @@ -32,66 +32,66 @@ type pageDeprecated struct { } func (p *pageDeprecated) Filename() string { - helpers.Deprecated("Page", ".Filename", "Use .File.Filename", false) + helpers.Deprecated("Page.Filename", "Use .File.Filename", false) return p.p.Filename() } func (p *pageDeprecated) Dir() string { - helpers.Deprecated("Page", ".Dir", "Use .File.Dir", false) + helpers.Deprecated("Page.Dir", "Use .File.Dir", false) return p.p.Dir() } func (p *pageDeprecated) IsDraft() bool { - helpers.Deprecated("Page", ".IsDraft", "Use .Draft.", false) + helpers.Deprecated("Page.IsDraft", "Use .Draft.", false) return p.p.IsDraft() } func (p *pageDeprecated) Extension() string { - helpers.Deprecated("Page", ".Extension", "Use .File.Extension", false) + helpers.Deprecated("Page.Extension", "Use .File.Extension", false) return p.p.Extension() } func (p *pageDeprecated) Hugo() hugo.Info { - helpers.Deprecated("Page", ".Hugo", "Use the global hugo function.", false) + helpers.Deprecated("Page.Hugo", "Use the global hugo function.", false) return p.p.Hugo() } func (p *pageDeprecated) Ext() string { - helpers.Deprecated("Page", ".Ext", "Use .File.Ext", false) + helpers.Deprecated("Page.Ext", "Use .File.Ext", false) return p.p.Ext() } func (p *pageDeprecated) LanguagePrefix() string { - helpers.Deprecated("Page", ".LanguagePrefix", "Use .Site.LanguagePrefix.", false) + helpers.Deprecated("Page.LanguagePrefix", "Use .Site.LanguagePrefix.", false) return p.p.LanguagePrefix() } func (p *pageDeprecated) GetParam(arg0 string) interface{} { - helpers.Deprecated("Page", ".GetParam", "Use .Param or .Params.myParam.", false) + helpers.Deprecated("Page.GetParam", "Use .Param or .Params.myParam.", false) return p.p.GetParam(arg0) } func (p *pageDeprecated) LogicalName() string { - helpers.Deprecated("Page", ".LogicalName", "Use .File.LogicalName", false) + helpers.Deprecated("Page.LogicalName", "Use .File.LogicalName", false) return p.p.LogicalName() } func (p *pageDeprecated) BaseFileName() string { - helpers.Deprecated("Page", ".BaseFileName", "Use .File.BaseFileName", false) + helpers.Deprecated("Page.BaseFileName", "Use .File.BaseFileName", false) return p.p.BaseFileName() } func (p *pageDeprecated) RSSLink() template.URL { - helpers.Deprecated("Page", ".RSSLink", "Use the Output Format's link, e.g. something like: \n {{ with .OutputFormats.Get \"RSS\" }}{{ .RelPermalink }}{{ end }}", false) + helpers.Deprecated("Page.RSSLink", "Use the Output Format's link, e.g. something like: \n {{ with .OutputFormats.Get \"RSS\" }}{{ .RelPermalink }}{{ end }}", false) return p.p.RSSLink() } func (p *pageDeprecated) TranslationBaseName() string { - helpers.Deprecated("Page", ".TranslationBaseName", "Use .File.TranslationBaseName", false) + helpers.Deprecated("Page.TranslationBaseName", "Use .File.TranslationBaseName", false) return p.p.TranslationBaseName() } func (p *pageDeprecated) URL() string { - helpers.Deprecated("Page", ".URL", "Use .Permalink or .RelPermalink. If what you want is the front matter URL value, use .Params.url", false) + helpers.Deprecated("Page.URL", "Use .Permalink or .RelPermalink. If what you want is the front matter URL value, use .Params.url", false) return p.p.URL() } func (p *pageDeprecated) ContentBaseName() string { - helpers.Deprecated("Page", ".ContentBaseName", "Use .File.ContentBaseName", false) + helpers.Deprecated("Page.ContentBaseName", "Use .File.ContentBaseName", false) return p.p.ContentBaseName() } func (p *pageDeprecated) UniqueID() string { - helpers.Deprecated("Page", ".UniqueID", "Use .File.UniqueID", false) + helpers.Deprecated("Page.UniqueID", "Use .File.UniqueID", false) return p.p.UniqueID() } func (p *pageDeprecated) FileInfo() hugofs.FileMetaInfo { - helpers.Deprecated("Page", ".FileInfo", "Use .File.FileInfo", false) + helpers.Deprecated("Page.FileInfo", "Use .File.FileInfo", false) return p.p.FileInfo() }