changeset a64f23678358 in trytond:default
details: https://hg.tryton.org/trytond?cmd=changeset;node=a64f23678358
description:
        Remove useless deepcopy call

        The copy is having a big impact when computing huge views

        issue9557
        review300321002
diffstat:

 trytond/model/modelview.py |  9 ++++-----
 1 files changed, 4 insertions(+), 5 deletions(-)

diffs (42 lines):

diff -r 98a106a6fd84 -r a64f23678358 trytond/model/modelview.py
--- a/trytond/model/modelview.py        Fri Sep 18 00:06:31 2020 +0200
+++ b/trytond/model/modelview.py        Fri Sep 18 16:27:29 2020 +0200
@@ -2,7 +2,6 @@
 # this repository contains the full copyright notices and license terms.
 from lxml import etree
 from functools import wraps
-import copy
 import collections
 
 from trytond.exceptions import UserError
@@ -529,7 +528,7 @@
 
     @classmethod
     def __view_look_dom(cls, element, type, fields_width=None,
-            fields_attrs=None):
+            _fields_attrs=None):
         pool = Pool()
         Translation = pool.get('ir.translation')
         ModelData = pool.get('ir.model.data')
@@ -540,10 +539,10 @@
 
         if fields_width is None:
             fields_width = {}
-        if not fields_attrs:
+        if _fields_attrs is None:
             fields_attrs = {}
         else:
-            fields_attrs = copy.deepcopy(fields_attrs)
+            fields_attrs = _fields_attrs
 
         def set_view_ids(element):
             view_ids = []
@@ -686,7 +685,7 @@
 
         for field in element:
             fields_attrs = cls.__view_look_dom(field, type,
-                fields_width=fields_width, fields_attrs=fields_attrs)
+                fields_width=fields_width, _fields_attrs=fields_attrs)
         return fields_attrs
 
     @staticmethod

Reply via email to