Skip to content

Get rid of redundant viper.Get* calls #2728

@n10v

Description

@n10v

I was just interested, how often hugo calls viper.Get* with specific keys. The results are:
examples/blog

  17 uglyurls
  17 removepathaccents
  17 paginatepath
  17 multilingual
  17 disablepathtolower
  17 defaultcontentlanguageinsubdir
  17 defaultcontentlanguage
  17 currentcontentlanguage
  17 canonifyurls
  13 currentContentLanguage
  10 rssuri
   3 taxonomies
   2 blackfriday
   2 CurrentContentLanguage
   1 title
   1 social
   1 sectionpagesmenu
   1 preservetaxonomynames
   1 menu
   1 languagecode
   1 googleanalytics
   1 disqusshortname
   1 copyright
   1 author

Built site for language en:
0 draft content
0 future content
0 expired content
13 pages created
0 non-page files copied
0 paginator pages created
4 tags created
3 categories created

examples/multilingual

  23 uglyurls
  23 removepathaccents
  23 paginatepath
  23 multilingual
  23 disablepathtolower
  23 defaultcontentlanguageinsubdir
  23 defaultcontentlanguage
  23 currentcontentlanguage
  23 canonifyurls
  15 currentContentLanguage
  10 blackfriday
   8 rssuri
   5 taxonomies
   4 CurrentContentLanguage
   2 social
   2 sectionpagesmenu
   2 preservetaxonomynames
   2 languagecode
   2 googleanalytics
   2 disqusshortname
   2 copyright
   2 author

Built site for language en:
0 draft content
0 future content
0 expired content
9 pages created
0 non-page files copied
0 paginator pages created
1 groups created
Built site for language et:
0 draft content
0 future content
0 expired content
9 pages created
0 non-page files copied
0 paginator pages created
1 groups created

docs

45925 sectionpagesmenu
 434 uglyurls
 434 removepathaccents
 434 paginatepath
 434 multilingual
 434 disablepathtolower
 434 defaultcontentlanguageinsubdir
 434 defaultcontentlanguage
 434 currentcontentlanguage
 434 canonifyurls
 430 currentContentLanguage
 206 blackfriday
  72 rssuri
   2 taxonomies
   2 CurrentContentLanguage
   1 title
   1 social
   1 preservetaxonomynames
   1 menu
   1 languagecode
   1 googleanalytics
   1 disqusshortname
   1 copyright

Built site for language en:
0 draft content
0 future content
0 expired content
277 pages created
0 non-page files copied
0 paginator pages created
0 groups created
58 tags created

version of hugo: dev dbb0c1c

I think, what the most of these accesses are redundant and could be removed, so the performance will be better. And the repeating helpers.AbsPathify calls should also be considered.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions