This method had been deprecated since Python 2.0 and is
no longer used in Python 3. Item access was unified
under __setitem__.
The __setitem__ method has been udpated to work with
list values in slice assignments.
Signed-off-by: Jan Tluka <jtluka(a)redhat.com>
---
lnst/RecipeCommon/Perf/Results.py | 16 +++++++++-------
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/lnst/RecipeCommon/Perf/Results.py b/lnst/RecipeCommon/Perf/Results.py
index 4519fb8..2d4c9f5 100644
--- a/lnst/RecipeCommon/Perf/Results.py
+++ b/lnst/RecipeCommon/Perf/Results.py
@@ -106,15 +106,17 @@ class PerfList(list):
super(PerfList, self).__iadd__(iterable)
def __setitem__(self, i, item):
- self._validate_item(item)
-
- super(PerfList, self).__setitem__(i, item)
+ if isinstance(item, list):
+ if not isinstance(i, slice):
+ raise LnstError("{} accepts list values in slice assignment "
+ "only".format(self.__class__.__name__))
- def __setslice__(self, i, j, iterable):
- for i in iterable:
- self._validate_item(i)
+ for j in item:
+ self._validate_item(j)
+ else:
+ self._validate_item(item)
- super(PerfList, self).__setslice__(i, j, iterable)
+ super(PerfList, self).__setitem__(i, item)
class SequentialPerfResult(PerfResult, PerfList):
@property
--
2.21.1