changeset 395:fcd6caf13cf7 0.6.6

runserver: Make auto-resolve work in synchronous update mode. Pages need to auto-resolve themselves when nobody else will.
author Ludovic Chabant <ludovic@chabant.com>
date Wed, 14 Oct 2015 23:11:58 -0700
parents dbe7dde07e85
children 2a70f537337d
files wikked/webimpl/__init__.py
diffstat 1 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/wikked/webimpl/__init__.py	Wed Oct 14 22:58:00 2015 -0700
+++ b/wikked/webimpl/__init__.py	Wed Oct 14 23:11:58 2015 -0700
@@ -54,6 +54,9 @@
             fields.append('path')
         if 'cache_time' not in fields:
             fields.append('cache_time')
+
+    async_update = app.config.get('WIKI_ASYNC_UPDATE', False)
+    if not async_update and fields is not None:
         if 'is_resolved' not in fields:
             fields.append('is_resolved')
 
@@ -66,7 +69,9 @@
             logger.info("Page '%s' has changed, reloading." % url)
             wiki.updatePage(path=page.path)
             page = wiki.getPage(url, fields=fields)
-        elif not page.is_resolved:
+
+    if not async_update:
+        if not page.is_resolved:
             logger.info("Page '%s' was not resolved, resolving now." % url)
             wiki.resolve(only_urls=[url])
             wiki.index.updatePage(wiki.db.getPage(