This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author db3l
Recipients db3l, python-dev, r.david.murray, zach.ware
Date 2015-08-08.19:48:48
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1439063329.66.0.0526428223173.issue24751@psf.upfronthosting.co.za>
In-reply-to
Content
While running a manual test (make buildbottest) on my 2.7 Ubuntu buildbot, I ran into an exception in this patch:

The tail end of the test run:

[401/401/1] test_signal
379 tests OK.
1 test failed:
    test_curses
21 tests skipped:
    test_aepack test_al test_applesingle test_bsddb185 test_cd test_cl
    test_dl test_gl test_imgfile test_kqueue test_linuxaudiodev
    test_macos test_macostools test_msilib test_ossaudiodev
    test_scriptpackages test_startfile test_sunaudiodev test_winreg
    test_winsound test_zipfile64
Those skips are all expected on linux2.
Re-running failed tests in verbose mode
Traceback (most recent call last):
  File "./Lib/test/regrtest.py", line 1598, in <module>
    main()
  File "./Lib/test/regrtest.py", line 655, in main
    for test in bad[:]:
TypeError: 'set' object has no attribute '__getitem__'


The code is attempting to iterate over a sliced copy of bad (bad[:]) due to later possible mutation, but by that point, if you had failures, bad is a set, from the block shortly above where it subtracts out the environment changed list.  I was testing 2.7, but I think the issue affects all branches.

Perhaps list(bad) instead of bad[:]?
History
Date User Action Args
2015-08-08 19:48:49db3lsetrecipients: + db3l, r.david.murray, python-dev, zach.ware
2015-08-08 19:48:49db3lsetmessageid: <1439063329.66.0.0526428223173.issue24751@psf.upfronthosting.co.za>
2015-08-08 19:48:49db3llinkissue24751 messages
2015-08-08 19:48:48db3lcreate