make 'force' urls work properly #54

Closed
opened 9 years ago by mbutterick · 4 comments
mbutterick commented 9 years ago (Migrated from github.com)

Seems to not actually force a refresh as advertised.

Seems to not actually force a refresh as advertised.
mbutterick commented 9 years ago (Migrated from github.com)

A cache-invalidation problem.

A cache-invalidation problem.
mbutterick commented 9 years ago (Migrated from github.com)

Problem is invalidation depth. The idea of force is that everything on the page — and therefore everything the page depends on — would get reloaded. So the force signal needs to propagate through the calling chain (perhaps as a parameter) to prevent cached copies from being used.

Problem is invalidation depth. The idea of `force` is that everything on the page — and therefore everything the page depends on — would get reloaded. So the `force` signal needs to propagate through the calling chain (perhaps as a parameter) to prevent cached copies from being used.
mbutterick commented 9 years ago (Migrated from github.com)

Abandoned as useless.

Abandoned as useless.
mbutterick commented 9 years ago (Migrated from github.com)

The force URL was never going to work properly because it required temporary invalidation of two caches: the render cache (for output files) and the compile cache (for input files).

Instead I added a world:current-render-cache-active that if #f will always regenerate a new output page. When used in combination with the existing ``world:current-compile-cache-active(i.e., when both are#f`) the result is that every page is completely regenerated when it is requested through the project server.

This is more of a blunt instrument, but because these settings can be changed easily in the pollen.rkt, it's OK (the idea of force predated the implementation of configurable project values.)

The `force` URL was never going to work properly because it required temporary invalidation of two caches: the render cache (for output files) and the compile cache (for input files). Instead I added a `world:current-render-cache-active` that if `#f` will always regenerate a new output page. When used in combination with the existing ``world:current-compile-cache-active` (i.e., when both are `#f`) the result is that every page is completely regenerated when it is requested through the project server. This is more of a blunt instrument, but because these settings can be changed easily in the `pollen.rkt`, it's OK (the idea of `force` predated the implementation of configurable project values.)
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: mbutterick/pollen#54
Loading…
There is no content yet.