LocalVars
This commit is contained in:
parent
41752e1f2e
commit
ac135614cc
@ -134,14 +134,11 @@ class ErepublikErrorHTTTPHandler(handlers.HTTPHandler):
|
|||||||
|
|
||||||
def _get_local_vars(self) -> str:
|
def _get_local_vars(self) -> str:
|
||||||
trace = inspect.trace()
|
trace = inspect.trace()
|
||||||
local_vars = {}
|
|
||||||
if trace:
|
if trace:
|
||||||
local_vars = trace[-1][0].f_locals
|
local_vars = trace[-1][0].f_locals
|
||||||
if local_vars.get('__name__') == '__main__':
|
if local_vars.get('__name__') == '__main__':
|
||||||
local_vars.update(commit_id=local_vars.get('COMMIT_ID'), interactive=local_vars.get('INTERACTIVE'),
|
local_vars.update(commit_id=local_vars.get('COMMIT_ID'), interactive=local_vars.get('INTERACTIVE'),
|
||||||
version=local_vars.get('__version__'), config=local_vars.get('CONFIG'))
|
version=local_vars.get('__version__'), config=local_vars.get('CONFIG'))
|
||||||
|
|
||||||
if local_vars:
|
|
||||||
if 'state_thread' in local_vars:
|
if 'state_thread' in local_vars:
|
||||||
local_vars.pop('state_thread', None)
|
local_vars.pop('state_thread', None)
|
||||||
from erepublik import Citizen
|
from erepublik import Citizen
|
||||||
@ -151,6 +148,20 @@ class ErepublikErrorHTTTPHandler(handlers.HTTPHandler):
|
|||||||
local_vars['player'] = repr(local_vars['player'])
|
local_vars['player'] = repr(local_vars['player'])
|
||||||
if isinstance(local_vars.get('citizen'), Citizen):
|
if isinstance(local_vars.get('citizen'), Citizen):
|
||||||
local_vars['citizen'] = repr(local_vars['citizen'])
|
local_vars['citizen'] = repr(local_vars['citizen'])
|
||||||
|
else:
|
||||||
|
stack = inspect.stack()
|
||||||
|
local_vars = [(str(f.frame), f.frame.f_locals) for f in stack]
|
||||||
|
for frame, frame_vars in local_vars:
|
||||||
|
if 'state_thread' in frame_vars:
|
||||||
|
frame_vars.pop('state_thread', None)
|
||||||
|
from erepublik import Citizen
|
||||||
|
if isinstance(frame_vars.get('self'), Citizen):
|
||||||
|
frame_vars['self'] = repr(frame_vars['self'])
|
||||||
|
if isinstance(frame_vars.get('player'), Citizen):
|
||||||
|
frame_vars['player'] = repr(frame_vars['player'])
|
||||||
|
if isinstance(frame_vars.get('citizen'), Citizen):
|
||||||
|
frame_vars['citizen'] = repr(frame_vars['citizen'])
|
||||||
|
|
||||||
return json_dumps(local_vars)
|
return json_dumps(local_vars)
|
||||||
|
|
||||||
def _get_instance_json(self) -> str:
|
def _get_instance_json(self) -> str:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user