(b) Pdb supports conditions with `filename:lineno, statement`. Statement will have access to local scope. E.g.:
$ python -m manage.py runserver
(Pdb) break manage.py:11, os.environ["DJANGO_SETTINGS_MODULE"] == "myproj.settings"
Breakpoint 1 at /Users/hcarvalhoalves/Projetos/myproj/manage.py:11
(Pdb) break
Num Type Disp Enb Where
1 breakpoint keep yes at /Users/hcarvalhoalves/Projetos/myproj/manage.py:11
stop only if os.environ["DJANGO_SETTINGS_MODULE"] == "myproj.settings"
Really, it does a bunch of things. I wonder why developers are unaware of it.