@@ -45,6 +45,11 @@ def page():
4545RELOAD_BUSY .set ()
4646
4747
48+ def _delete_cached_page (page ):
49+ if page in LAST_TIME_RENDERED :
50+ del LAST_TIME_RENDERED [page ]
51+
52+
4853def translation_callback (wtp , wiki_page , page ):
4954 for wikilink in wtp .wikilinks :
5055 if wikilink .target .startswith ("Translation:" ):
@@ -56,8 +61,7 @@ def translation_callback(wtp, wiki_page, page):
5661 # Reset the last time rendered for all translations too, as
5762 # otherwise a new translation won't show up on those pages.
5863 for translation in TRANSLATIONS [target ]:
59- if translation in LAST_TIME_RENDERED :
60- del LAST_TIME_RENDERED [translation ]
64+ _delete_cached_page (translation )
6165
6266
6367def category_callback (wtp , wiki_page , page ):
@@ -69,8 +73,7 @@ def category_callback(wtp, wiki_page, page):
6973 CATEGORIES [target ].append (page )
7074
7175 # Reset the last time rendered for the category.
72- if f"Category/{ target } " in LAST_TIME_RENDERED :
73- del LAST_TIME_RENDERED [f"Category/{ target } " ]
76+ _delete_cached_page (f"Category/{ target } " )
7477
7578
7679def file_callback (wtp , wiki_page , page ):
@@ -82,8 +85,7 @@ def file_callback(wtp, wiki_page, page):
8285 FILES [target ].append (page )
8386
8487 # Reset the last time rendered for the file.
85- if f"File/{ target } " in LAST_TIME_RENDERED :
86- del LAST_TIME_RENDERED [f"File/{ target } " ]
88+ _delete_cached_page (f"File/{ target } " )
8789
8890
8991def links_callback (wtp , wiki_page , page ):
@@ -125,14 +127,10 @@ def template_callback(wtp, wiki_page, page):
125127def _forget_page (page ):
126128 for category in PAGES [page ]["categories" ]:
127129 CATEGORIES [category ].remove (page )
128-
129- if f"Category/{ category } " in LAST_TIME_RENDERED :
130- del LAST_TIME_RENDERED [f"Category/{ category } " ]
130+ _delete_cached_page (f"Category/{ category } " )
131131 for file in PAGES [page ]["files" ]:
132132 FILES [file ].remove (page )
133-
134- if f"File/{ file } " in LAST_TIME_RENDERED :
135- del LAST_TIME_RENDERED [f"File/{ file } " ]
133+ _delete_cached_page (f"File/{ file } " )
136134 for link in PAGES [page ]["links" ]:
137135 LINKS [link ].remove (page )
138136 for template in PAGES [page ]["templates" ]:
@@ -144,9 +142,7 @@ def _forget_page(page):
144142 # otherwise a removed translation will still show up on those pages.
145143 if not translation .startswith (("Category/" , "File/" , "Template/" )):
146144 translation = f"Page/{ translation } "
147-
148- if translation in LAST_TIME_RENDERED :
149- del LAST_TIME_RENDERED [translation ]
145+ _delete_cached_page (translation )
150146
151147 PAGES [page ]["categories" ].clear ()
152148 PAGES [page ]["files" ].clear ()
@@ -200,8 +196,7 @@ async def _page_changed(page, notified=None):
200196 # As we are invalidating this page, also reset when we last rendered it.
201197 # This means that on a next request for this page, browsers will be
202198 # given a new version too.
203- if page in LAST_TIME_RENDERED :
204- del LAST_TIME_RENDERED [page ]
199+ _delete_cached_page (page )
205200
206201 # Capture the current templates ued. After analysis, this might have
207202 # changed, but those are still pages that need to be analyzed again.
0 commit comments