Hugo already, in its server mode, support partial rebuilds. To put it simply: If you change `about.md`, only that content page is read and processed, then Hugo does some processing (taxonomies etc.) and the full site is rendered.
This commit covers the rendering part: We now only re-render the pages you work on, i.e. the last n pages you watched in the browser (which obviously also includes the page in the example above).
To be more specific: When you are running the hugo server in watch (aka. livereload) mode, and change a template or a content file, then we do a partial re-rendering of the following:
* The current content page (if it is a content change)
* The home page
* Up to the last 10 pages you visited on the site.
This should in most cases be enough, but if you navigate to something completely different, you may see stale content. Doing an edit will then refresh that page.
Note that this feature is enabled by default. To turn it off, run `hugo server --disableFastRender`.
Fixes#3962
See #1643
This commit adds a "cache potential" column when running `hugo --templateMetrics --templateMetricsHints`.
This is only calculated when `--templateMetricsHints` is set, as these calculations has an negative effect on the other timings.
This gives a value for partials only, and is a number between 0-100 that indicates if `partial` can be replaced with `partialCached`.
100 means that all execution of the same partial resulted in the same output.
You should do some manual research before going "all cache".
The use of `---` and `...` delimiters in the YAML examples seem to
suggest that those delimiters are necessary in a .yaml/.yml file when in
fact they are optional. Also, it seems to be common practice to *not*
use `---` and `...` in .yaml/.yml files. Similarly, it's less common to
use `+++` in .toml files. The examples on TOML's Github repo don't use
it, and Hugo-generated .toml files don't use it either. This commit
removes the delimiters mentioned above to conform with the more common
styles.
Additionally this modifies the example for shortcut to find
configuration option
- add `cd` to make it clear that user has to change to the hugo site's
directory first
- separate the command and the output of the command
Add template function that will build a string from the given format
string and arguments, then log it to ERROR. This has an intended
side-effect of causing the build to fail, when executed.
Resolves#3817
Add template function that will build a string from the given format
string and arguments, then log it to ERROR. This has an intended
side-effect of causing the build to fail, when executed.
Resolves#3817
Add template function that will build a string from the given format
string and arguments, then log it to ERROR. This has an intended
side-effect of causing the build to fail, when executed.
Resolves#3817
The documentname parameter to `ref` and `relref` shortcodes must include file extension. Including the file extension in the given usage patterns will make it much easier for users to follow.
Changes fall into one of the following:
- gofmt -s
- receiver name is inconsistent
- omit unused 2nd value from range
- godoc comment formed incorrectly
- err assigned and not used
- if block ends with a return statement followed by else
* Add a Build Performance page draft
* Update Build Performance page
* Add step analysis to build performance guide
* Remove wip and draft status from front matter
cdaa89c8 Add Pygments style CSS class for Chroma
c735cec1 Add highlight color to Chroma css, take 2
54cf963a Add highlight color to Chroma css
002a7fad Add Chroma css
git-subtree-dir: themes/gohugoioTheme
git-subtree-split: cdaa89c87c927e549fc824867b4e26dcd0d7c282
Move SummaryLength into the ContentSpec struct and refactor the
relevant summary functions to be methods of ContentSpec. The new
summaryLength struct member is configurable by the summaryLength config
value, and the default remains 70. Also updates hugolib/page to use the
refactored methods.
Resolves#3734