Clear cached Liquid template scope before render (#7967)
Merge pull request 7967
This commit is contained in:
parent
1cf04b8857
commit
67380a2738
|
@ -18,6 +18,8 @@ module Jekyll
|
||||||
end
|
end
|
||||||
|
|
||||||
def render(*args)
|
def render(*args)
|
||||||
|
reset_template_assigns
|
||||||
|
|
||||||
measure_time do
|
measure_time do
|
||||||
measure_bytes do
|
measure_bytes do
|
||||||
measure_counts do
|
measure_counts do
|
||||||
|
@ -29,6 +31,8 @@ module Jekyll
|
||||||
|
|
||||||
# This method simply 'rethrows any error' before attempting to render the template.
|
# This method simply 'rethrows any error' before attempting to render the template.
|
||||||
def render!(*args)
|
def render!(*args)
|
||||||
|
reset_template_assigns
|
||||||
|
|
||||||
measure_time do
|
measure_time do
|
||||||
measure_bytes do
|
measure_bytes do
|
||||||
measure_counts do
|
measure_counts do
|
||||||
|
@ -44,6 +48,12 @@ module Jekyll
|
||||||
|
|
||||||
private
|
private
|
||||||
|
|
||||||
|
# clear assigns to `Liquid::Template` instance prior to rendering since
|
||||||
|
# `Liquid::Template` instances are cached in Jekyll 4.
|
||||||
|
def reset_template_assigns
|
||||||
|
@template.instance_assigns.clear
|
||||||
|
end
|
||||||
|
|
||||||
def measure_counts
|
def measure_counts
|
||||||
@renderer.increment_count(@filename)
|
@renderer.increment_count(@filename)
|
||||||
yield
|
yield
|
||||||
|
|
Loading…
Reference in New Issue