From c8d4eddaf3ed28fa0664bd2a4672e88fb21cf2b8 Mon Sep 17 00:00:00 2001
From: Levin Zimmermann <levin.zimmermann@nexedi.com>
Date: Tue, 14 Jun 2022 16:14:40 +0000
Subject: [PATCH] erp5_wendelin: Fix IngestionPolicyTool.unpack_lazy

This didn't work anymore in restricted python.
---
 .../document.erp5.IngestionPolicyTool.py      | 14 +---------
 .../document.erp5.IngestionPolicyTool.xml     | 27 +++----------------
 2 files changed, 4 insertions(+), 37 deletions(-)

diff --git a/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.py b/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.py
index 9ec2692..035027b 100644
--- a/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.py
+++ b/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.py
@@ -31,18 +31,6 @@ from Products.ERP5Type.Core.Folder import Folder
 from cStringIO import StringIO
 import msgpack
 
-class RestrictedUnpacker:
-  """
-  A lazy Unpacker which works in zopes restricted environment
-  """
-  def __init__(self, unpacker):
-    self.unpacker = unpacker
-    
-  def __iter__(self):
-    return self
-    
-  def next(self):
-    return self.unpacker.next()
 
 class IngestionPolicyTool(Folder):
   """
@@ -83,4 +71,4 @@ class IngestionPolicyTool(Folder):
       Setting use_list=False uses tuples instead of lists which is faster
     """
     data_file = StringIO(data)
-    return RestrictedUnpacker(msgpack.Unpacker(data_file, use_list=use_list))
\ No newline at end of file
+    return (x for x in msgpack.Unpacker(data_file, use_list=use_list))
\ No newline at end of file
diff --git a/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.xml b/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.xml
index 202cd3e..069b04e 100644
--- a/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.xml
+++ b/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.IngestionPolicyTool.xml
@@ -6,12 +6,6 @@
     </pickle>
     <pickle>
       <dictionary>
-        <item>
-            <key> <string>_recorded_property_dict</string> </key>
-            <value>
-              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
-            </value>
-        </item>
         <item>
             <key> <string>default_reference</string> </key>
             <value> <string>IngestionPolicyTool</string> </value>
@@ -55,28 +49,13 @@
         <item>
             <key> <string>workflow_history</string> </key>
             <value>
-              <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
             </value>
         </item>
       </dictionary>
     </pickle>
   </record>
   <record id="2" aka="AAAAAAAAAAI=">
-    <pickle>
-      <global name="PersistentMapping" module="Persistence.mapping"/>
-    </pickle>
-    <pickle>
-      <dictionary>
-        <item>
-            <key> <string>data</string> </key>
-            <value>
-              <dictionary/>
-            </value>
-        </item>
-      </dictionary>
-    </pickle>
-  </record>
-  <record id="3" aka="AAAAAAAAAAM=">
     <pickle>
       <global name="PersistentMapping" module="Persistence.mapping"/>
     </pickle>
@@ -89,7 +68,7 @@
                 <item>
                     <key> <string>component_validation_workflow</string> </key>
                     <value>
-                      <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
+                      <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
                     </value>
                 </item>
               </dictionary>
@@ -98,7 +77,7 @@
       </dictionary>
     </pickle>
   </record>
-  <record id="4" aka="AAAAAAAAAAQ=">
+  <record id="3" aka="AAAAAAAAAAM=">
     <pickle>
       <global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
     </pickle>
-- 
GitLab