Print proper tracebacks when inlineCallbacks + yield involved
This commit is contained in:
		
							parent
							
								
									2a332471d3
								
							
						
					
					
						commit
						026c8fd093
					
				|  | @ -3,7 +3,7 @@ from __future__ import print_function | ||||||
| import os | import os | ||||||
| import time | import time | ||||||
| start = time.time() | start = time.time() | ||||||
| import traceback | from os.path import expanduser, exists | ||||||
| from textwrap import fill, dedent | from textwrap import fill, dedent | ||||||
| from sys import stdout, stderr | from sys import stdout, stderr | ||||||
| from . import public_relay | from . import public_relay | ||||||
|  | @ -11,6 +11,7 @@ from .. import __version__ | ||||||
| from ..timing import DebugTiming | from ..timing import DebugTiming | ||||||
| from ..errors import WrongPasswordError, WelcomeError, KeyFormatError | from ..errors import WrongPasswordError, WelcomeError, KeyFormatError | ||||||
| from twisted.internet.defer import inlineCallbacks, maybeDeferred | from twisted.internet.defer import inlineCallbacks, maybeDeferred | ||||||
|  | from twisted.python.failure import Failure | ||||||
| from twisted.internet.task import react | from twisted.internet.task import react | ||||||
| 
 | 
 | ||||||
| import click | import click | ||||||
|  | @ -111,7 +112,10 @@ def _dispatch_command(reactor, cfg, command): | ||||||
|         msg = fill("ERROR: " + dedent(e.__doc__)) |         msg = fill("ERROR: " + dedent(e.__doc__)) | ||||||
|         print(msg, file=stderr) |         print(msg, file=stderr) | ||||||
|     except Exception as e: |     except Exception as e: | ||||||
|         traceback.print_exc() |         # this prints a proper traceback, whereas | ||||||
|  |         # traceback.print_exc() just prints a TB to the "yield" | ||||||
|  |         # line above ... | ||||||
|  |         Failure().printTraceback(file=stderr) | ||||||
|         print("ERROR:", e, file=stderr) |         print("ERROR:", e, file=stderr) | ||||||
|         raise SystemExit(1) |         raise SystemExit(1) | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user