aboutsummaryrefslogtreecommitdiffstats
path: root/packaging-tools/threadedwork.py
diff options
context:
space:
mode:
authorTim Jenssen <tim.jenssen@qt.io>2018-01-22 19:21:48 +0100
committerTim Jenssen <tim.jenssen@qt.io>2018-01-26 10:51:02 +0000
commit127bc5ff91b0a1bf3879a5e1df4d03fb3bb38014 (patch)
treefe351dc861ec6e86365fbf3f5cbb99918a40aa70 /packaging-tools/threadedwork.py
parentbf9635e6815b1a0f28ef7d2e06f0a1689dc1cd1d (diff)
improve error message if a task fails
Change-Id: Ibaf8ec5fb060d3bdfa95ddb0fc034b657a0797d3 Reviewed-by: Eike Ziller <eike.ziller@qt.io> Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Diffstat (limited to 'packaging-tools/threadedwork.py')
-rw-r--r--packaging-tools/threadedwork.py7
1 files changed, 6 insertions, 1 deletions
diff --git a/packaging-tools/threadedwork.py b/packaging-tools/threadedwork.py
index b632b5921..7ed56da6c 100644
--- a/packaging-tools/threadedwork.py
+++ b/packaging-tools/threadedwork.py
@@ -48,6 +48,7 @@ import itertools
import multiprocessing
import os
import threading
+import traceback
import time
import Queue as queue # The Queue module has been renamed to queue in Python 3.
import sys
@@ -127,6 +128,8 @@ class TaskFunction():
def __init__(self, function, *arguments):
self.function = function
self.arguments = arguments
+ def __str__(self):
+ return str(self.__dict__)
class Task():
def __init__(self, description, function = None, *arguments):
@@ -153,8 +156,10 @@ class Task():
with outputLock:
# there is no clean exit so we adding linesep here
sys.__stdout__.write(os.linesep)
- sys.__stderr__.write(e.message)
sys.__stdout__.flush()
+ sys.__stderr__.write(format(taskFunction))
+ sys.__stderr__.write(os.linesep)
+ sys.__stderr__.write(traceback.format_exc())
sys.__stderr__.flush()
self.exitFunction(*(self.exitFunctionArguments))
print("Done")