Stacktrace (edited slightly for anonymity):
File "/usr/lib/python2.7/bdb.py", line 49, in trace_dispatch
return self.dispatch_line(frame)
File ".../site-packages/pudb/debugger.py", line 160, in dispatch_line
self.user_line(frame)
File ".../site-packages/pudb/debugger.py", line 381, in user_line
self.interaction(frame)
File ".../site-packages/pudb/debugger.py", line 349, in interaction
show_exc_dialog=show_exc_dialog)
File ".../site-packages/pudb/debugger.py", line 2084, in call_with_ui
return f(*args, **kwargs)
File ".../site-packages/pudb/debugger.py", line 2322, in interaction
self.event_loop()
File ".../site-packages/pudb/debugger.py", line 2280, in event_loop
canvas = toplevel.render(self.size, focus=True)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/widget.py", line 1751, in render
canv = get_delegate(self).render(size, focus=focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/container.py", line 1083, in render
focus and self.focus_part == 'body')
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/decoration.py", line 225, in render
canv = self._original_widget.render(size, focus=focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/container.py", line 2085, in render
focus = focus and self.focus_position == i)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/widget.py", line 1751, in render
canv = get_delegate(self).render(size, focus=focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/container.py", line 1526, in render
canv = w.render((maxcol, rows), focus=focus and item_focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/decoration.py", line 225, in render
canv = self._original_widget.render(size, focus=focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/container.py", line 1526, in render
canv = w.render((maxcol, rows), focus=focus and item_focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/decoration.py", line 225, in render
canv = self._original_widget.render(size, focus=focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/widget.py", line 1751, in render
canv = get_delegate(self).render(size, focus=focus)
File ".../site-packages/urwid/widget.py", line 141, in cached_render
canv = fn(self, size, focus=focus)
File ".../site-packages/urwid/listbox.py", line 489, in render
raise ListBoxError, "Widget %r at position %r within listbox calculated %d rows but rendered %d!"% (widget,w_pos,w_rows, canvas.rows())
ListBoxError: Widget <VariableWidget selectable flow widget> at position 3 within listbox calculated 1 rows but rendered 0!
This happens under Ubuntu 17.04 using Gnome Terminal (pudb is being run inside of a docker container also running Ubuntu 17.04 if it matters). The error goes away when using PuDB 2017.1.2. It also seems to be dependent on the terminal size. For example it happens both with my "maximized" terminal size (158x46) as well as at 132x43, but it does not happen when the terminal is resized to 80x24. My pudb.cfg:
[pudb]
breakpoints_weight = 1
current_stack_frame = top
custom_shell =
custom_stringifier =
custom_theme =
display = auto
line_numbers = True
prompt_on_quit = True
seen_welcome = e032
shell = internal
sidebar_width = 0.5
stack_weight = 1
stringifier = type
theme = classic
variables_weight = 1
wrap_variables = True
This is also potentially related to #269