[Ironpython-users] IronPython, Daily Digest 6/25/2013

CodePlex no_reply at codeplex.com
Wed Jun 26 09:28:53 CEST 2013


Hi ironpython,

Here's your Daily Digest of new issues for project "IronPython".

In today's digest:ISSUES

1. [New comment] Make PythonHiddenAttribute public
2. [New comment] Sockets are not properly closed
3. [New comment] Discrepancy in dict __delitem__ vs CPython
4. [New comment] StackOverflow with continue from try..except

----------------------------------------------

ISSUES

1. [New comment] Make PythonHiddenAttribute public
http://ironpython.codeplex.com/workitem/33073
User jdhardy has commented on the issue:

"<p>Fixed in 5583901.</p"-----------------

2. [New comment] Sockets are not properly closed
http://ironpython.codeplex.com/workitem/33312
User jdhardy has commented on the issue:

"<p>Fixed in 6a5c1f0.</p"-----------------

3. [New comment] Discrepancy in dict __delitem__ vs CPython
http://ironpython.codeplex.com/workitem/33362
User jdhardy has commented on the issue:

"<p>Fixed in b19f90f.</p"-----------------

4. [New comment] StackOverflow with continue from try..except
http://ironpython.codeplex.com/workitem/34186
User shacktoms has commented on the issue:

"<p>I did some poking around and found that the problem seems to be this. The generated code for an except clause includes a "LeaveExceptionHandler" instruction. The code for the "continue" appears to create a branch that skips this instruction.  The result is that Interpreter.HandleException never returns to Interpreter.Run, but instead continues to execute the frame within its loop. Then, on the next iteration, the raised Python exception causes Interpreter.HandleException to call itself recursively.  The stack thus fills with recursive calls to Interpreter.HandleException.</p><p>I also found that this problem also exists in ipy.exe, perhaps I didn't see it earlier because its stack is effectively deeper (maybe this is because the stack frames are smaller).</p><p>Because I thought the problem might arise from the "goto nature" of "continue", and exception handling might be different, I tried a workaround using an exception handling equivalent to the "continue" statement. That is in excon3.py. However, this didn't work, so it appears the problem is more pervasive than just "continue".  A workaround using a flag, placing the continue outside the except, did work.</p><p>===excon3.py===<br>```<br>class Continue(Exception):<br>    pass</p><p>def f(j):<br>    raise Exception("test")</p><p>for j in range(1000):<br>    try:<br>        try:<br>            f(j)<br>        except:<br>            raise Continue()<br>    except Continue:<br>        pass</p><p>print "finished"<br>```<br></p"
----------------------------------------------



----------------------------------------------
You are receiving this email because you subscribed to notifications on CodePlex.

To report a bug, request a feature, or add a comment, visit IronPython Issue Tracker. You can unsubscribe or change your issue notification settings on CodePlex.com.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/ironpython-users/attachments/20130626/9598a277/attachment.html>


More information about the Ironpython-users mailing list