Title: Refactor itertools
Type: Severity: normal
Components: Versions:
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: fwierzbicki Nosy List: fwierzbicki, int3
Priority: normal Keywords:

Created on 2012-06-25.07:32:13 by int3, last changed 2012-07-03.18:23:11 by fwierzbicki.

File name Uploaded Description Edit Remove
itertools int3, 2012-06-25.07:32:12
msg7260 (view) Author: Jez Ng (int3) Date: 2012-06-25.07:32:12
So here's my patch and it's 99% done. It refactors itertools to move all the functions out into their own classes so they can act as new-style Python classes. I've also fixed numerous bugs -- mostly edge-cases -- so that all but three of the tests pass. This is down from 20+ failures / errors when I first started working on it.

I had to rewrite tee() extensively to fit CPython's copy semantics, but the structure of the other functions are largely the same. Two of the remaining test failures stem from Jython's lack of support for large integers, so I guess we can skip those tests for now. The other failing test is that deleting tee() objects don't make weakref proxies to them throw ReferenceErrors. I'm not really sure how to solve this one. Anyway, my patch with my progress thus far is attached.
msg7310 (view) Author: Frank Wierzbicki (fwierzbicki) Date: 2012-07-03.18:23:10
This is now applied on the default branch. Great work Jez Ng! I also skipped the bits of test_itertools that aren't currently working for now.
Date User Action Args
2012-07-03 18:23:11fwierzbickisetstatus: open -> closed
resolution: accepted -> fixed
messages: + msg7310
2012-06-27 18:30:21fwierzbickisetpriority: normal
assignee: fwierzbicki
resolution: accepted
nosy: + fwierzbicki
2012-06-25 07:32:13int3create