comparison piecrust/environment.py @ 111:208c652551a3

Quick fix for making the server correctly update referenced pages. Disable the file-system cache for rendered segments when in server mode. We can bring this optimization back when we're actually using the baking record in the server too in order to know dependencies.
author Ludovic Chabant <ludovic@chabant.com>
date Thu, 16 Oct 2014 17:03:42 -0700
parents 0445a2232de7
children 371a6c879ab9
comparison
equal deleted inserted replaced
110:7f00176a3b4d 111:208c652551a3
113 self.start_time = time.clock() 113 self.start_time = time.clock()
114 self.exec_info_stack = ExecutionInfoStack() 114 self.exec_info_stack = ExecutionInfoStack()
115 self.was_cache_cleaned = False 115 self.was_cache_cleaned = False
116 self.page_repository = MemCache() 116 self.page_repository = MemCache()
117 self.rendered_segments_repository = MemCache() 117 self.rendered_segments_repository = MemCache()
118 self.fs_caches = {
119 'renders': self.rendered_segments_repository}
118 self.base_asset_url_format = '%uri%' 120 self.base_asset_url_format = '%uri%'
119 121
120 def initialize(self, app): 122 def initialize(self, app):
121 cache = app.cache.getCache('renders') 123 for name, repo in self.fs_caches.items():
122 self.rendered_segments_repository.fs_cache = cache 124 cache = app.cache.getCache(name)
125 repo.fs_cache = cache
123 126
124 127
125 class StandardEnvironment(Environment): 128 class StandardEnvironment(Environment):
126 def __init__(self): 129 def __init__(self):
127 super(StandardEnvironment, self).__init__() 130 super(StandardEnvironment, self).__init__()