hashobject / perun

Programmable static site generator built with Clojure and Boot (HELP NEEDED!)
https://perun.io
Eclipse Public License 1.0
350 stars 38 forks source link

Fix #165 - Allow multiple `update!` calls in the same render pod #167

Closed bhagany closed 7 years ago

bhagany commented 7 years ago

All tasks that have a renderer option use the same pod, for efficiency. Because of this, when multiple renderer tasks were used in the same task chain, only the first one would pick up on namespace refreshes, which meant that things that ought to be re-rendered would not be.

This change causes each pod to track whether it has any refreshed namespaces on this task loop, and to return the correct status, even if the refreshing had actually be done by a task further up in the chain. Then, after the chain runs, the atom that tracks each pod's status is reset.

Due to this change the names content-pre-wrap, render-pre-wrap, and assortment-pre-wrap are no longer accurate, because the render pod's atom is reset after subsequent tasks run. They have been changed to content-task, render-task, and assortment-task.

runnabot commented 7 years ago

Deployed perun/render-refresh. View on Runnable. From Runnable

bhagany commented 7 years ago

No API changes here, and it fixes an annoying bug, so I'm merging.