Mercurial > piecrust2
comparison piecrust/environment.py @ 991:1857dbd4580f
bake: Fix bugs introduced by bake optimizations, of course.
- Make the execution stats JSON-serializable.
- Re-add ability to differentiate between sources used during segment rendering
and during layout rendering. Fixes problems with cache invalidation of
pages that use other sources.
- Make taxonomy-related stuff JSON-serializable.
author | Ludovic Chabant <ludovic@chabant.com> |
---|---|
date | Mon, 20 Nov 2017 23:06:47 -0800 |
parents | 08e02c2a2a1a |
children | a9a592f655e3 |
comparison
equal
deleted
inserted
replaced
990:22cf13b86cc3 | 991:1857dbd4580f |
---|---|
58 self.counters[oc] = v + ov | 58 self.counters[oc] = v + ov |
59 for oc, ov in other.manifests.items(): | 59 for oc, ov in other.manifests.items(): |
60 v = self.manifests.setdefault(oc, []) | 60 v = self.manifests.setdefault(oc, []) |
61 self.manifests[oc] = v + ov | 61 self.manifests[oc] = v + ov |
62 | 62 |
63 def toData(self): | |
64 return { | |
65 'timers': self.timers.copy(), | |
66 'counters': self.counters.copy(), | |
67 'manifests': self.manifests.copy()} | |
68 | |
69 def fromData(self, data): | |
70 self.timers = data['timers'] | |
71 self.counters = data['counters'] | |
72 self.manifests = data['manifests'] | |
73 | |
63 | 74 |
64 class Environment: | 75 class Environment: |
65 def __init__(self): | 76 def __init__(self): |
66 from piecrust.cache import MemCache | 77 from piecrust.cache import MemCache |
67 from piecrust.rendering import RenderingContextStack | 78 from piecrust.rendering import RenderingContextStack |