◐ Shell
clean mode source ↗

Message 215595 - Python tracker

Using generators in pdb are very handy but since Python3 they don't work properly. For example:

import pdb
def foo():
  items = [1, 2, 3]
  limit = 5
  pdb.set_trace()

foo()

in pdb prompt the following fails:

(pdf) all(x < limit for x in items)
*** NameError: global name 'items' is not defined

I can express that in a lambda expression (i.e. pass items as an argument) but this seems unnecessary and very inelegant.