diff piecrust/pipelines/_procrecords.py @ 989:8adc27285d93

bake: Big pass on bake performance. - Reduce the amount of data passed between processes. - Make inter-process data simple objects to make it easier to test with alternatives to pickle. - Make sources have the basic requirement to be able to find a content item from an item spec (path). - Make Hoedown the default Markdown formatter.
author Ludovic Chabant <ludovic@chabant.com>
date Sun, 19 Nov 2017 14:29:17 -0800
parents 448710d84121
children
line wrap: on
line diff
--- a/piecrust/pipelines/_procrecords.py	Fri Nov 03 23:14:56 2017 -0700
+++ b/piecrust/pipelines/_procrecords.py	Sun Nov 19 14:29:17 2017 -0800
@@ -43,6 +43,22 @@
         return self.out_paths
 
 
+def add_asset_job_result(result):
+    result.update({
+        'item_spec': None,
+        'flags': AssetPipelineRecordEntry.FLAG_NONE,
+        'proc_tree': None,
+        'out_paths': [],
+    })
+
+
+def merge_job_result_into_record_entry(record_entry, result):
+    record_entry.item_spec = result['item_spec']
+    record_entry.flags |= result['flags']
+    record_entry.proc_tree = result['proc_tree']
+    record_entry.out_paths = result['out_paths']
+
+
 flag_descriptions = {
     AssetPipelineRecordEntry.FLAG_PREPARED: 'prepared',
     AssetPipelineRecordEntry.FLAG_PROCESSED: 'processed',