@@ -25,13 +25,19 @@ web: ## Rebuild all web content (not PDFs) # The file vitreous.sqlite is a cache of the rendered HTML and metadata. If it is older than any of # its dependencies (or missing) all of the articles will be rebuilt. Its dependencies are also on # the Pollen cache watchlist (see pollen.rkt) +# +# After articles are rendered in this way, all the series pages are "touched", to trick Pollen into +# re-rendering those pages without relying on its cache. Without this step, it seems those pages +# are rendered “transitively” during the article render, and the listings are incomplete. vitreous.sqlite: $(core-files) $(html-deps) template.html.p + racket -tm util/init.rkt raco pollen setup -p articles/ raco pollen render -p -t html articles/*.poly.pm + touch series/*.poly.pm raco pollen setup -p series/ raco pollen render -p -t html series/*.poly.pm rm -f template.html series/template.html tidy -quiet -modify -indent --wrap 100 --wrap-attributes no --tidy-mark no articles/*.html || true tidy -quiet -modify -indent --wrap 100 --wrap-attributes no --tidy-mark no series/*.html || true