From 5ca8ee594f6fc6b7e3c413172109256f3f83df18 Mon Sep 17 00:00:00 2001 From: Fabio Manganiello Date: Fri, 16 Aug 2019 19:04:15 +0200 Subject: [PATCH] If a for loop argument returns a native Python iterable then expand that iterable --- platypush/procedure/__init__.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/platypush/procedure/__init__.py b/platypush/procedure/__init__.py index cd1ff26c..f255b6bd 100644 --- a/platypush/procedure/__init__.py +++ b/platypush/procedure/__init__.py @@ -186,7 +186,14 @@ class LoopProcedure(Procedure): self.requests = requests def execute(self, _async=None, **context): - iterable = Request.expand_value_from_context(self.iterable, **context) + # noinspection PyBroadException + try: + iterable = eval(self.iterable) + if not hasattr(iterable, '__iter__'): + raise RuntimeError + except: + iterable = Request.expand_value_from_context(self.iterable, **context) + response = Response() for item in iterable: