[IronPython] IronPython 2.6 CodePlex Source Update
merllab at microsoft.com
merllab at microsoft.com
Fri Aug 21 17:53:44 CEST 2009
This is an automated email letting you know that sources
have recently been pushed out. You can download these newer
sources directly from http://ironpython.codeplex.com/SourceControl/changeset/view/58283.
MODIFIED SOURCES
$/IronPython/IronPython_Main/Src/IronPython/Compiler/RunnableScriptCode.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/DictionaryGlobalAllocator.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/PythonScriptCode.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/ArrayGlobalAllocator.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/SavableGlobalAllocator.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/RuntimeScriptCode.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/OnDiskScriptCode.cs
$/IronPython/IronPython_Main/Src/IronPython.Modules/array.cs
$/IronPython/IronPython_Main/Src/IronPython.Modules/cStringIO.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/Ast/FunctionDefinition.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/Ast/ClassDefinition.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/Ast/AstGenerator.cs
$/IronPython/IronPython_Main/Src/IronPython/Runtime/PythonDynamicStackFrame.cs
$/IronPython/IronPython_Main/Src/IronPython/Modules/Builtin.cs
$/IronPython/IronPython_Main/Src/IronPython/Modules/sys.cs
$/IronPython/IronPython_Main/Src/IronPython/Runtime/PythonTracebackListener.cs
$/IronPython/IronPython_Main/Src/Runtime/Microsoft.Scripting/Runtime/LanguageContext.cs
$/IronPython/IronPython_Main/Src/Runtime/Microsoft.Scripting/SourceUnit.cs
$/IronPython/IronPython_Main/Src/Runtime/Microsoft.Scripting/Generation/ToDiskRewriter.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/SavableScriptCode.cs
$/IronPython/IronPython_Main/Src/IronPython/Compiler/StaticGlobalAllocator.cs
$/IronPython/IronPython_Main/Src/IronPython/Runtime/PythonOptions.cs
$/IronPython/IronPython_Main/Src/IronPython/Runtime/FunctionCode.cs
$/IronPython/IronPython_Main/Src/IronPython/Runtime/Exceptions/TraceBack.cs
$/IronPython/IronPython_Main/Src/IronPython/Runtime/Operations/PythonOps.cs
$/IronPython/IronPython_Main/Src/IronPython/Runtime/PythonContext.cs
$/IronPython/IronPython_Main/Src/IronPythonTest/EngineTest.cs
$/IronPython/IronPython_Main/Src/IronPython/Hosting/PythonOptionsParser.cs
$/IronPython/IronPython_Main/Src/Tests/Modes/ConsoleHelp.Debug.out
$/IronPython/IronPython_Main/Src/Tests/Modes/ConsoleHelp.Release.out
$/IronPython/IronPython_Main/Src/Runtime/Microsoft.Scripting/Utils/WeakDictionary.cs
$/IronPython/IronPython_Main/Src/Tests/interop/net/derivation/test_property_override.py
$/IronPython/IronPython_Main/Src/Tests/test_function.py
$/IronPython/IronPython_Main/Src/Tests/test_cStringIO.py
$/IronPython/IronPython_Main/Src/Tests/test_cliclass.py
$/IronPython/IronPython_Main/Src/Tests/test_class.py
$/IronPython/IronPython_Main/Src/Tests/test_metaclass.py
$/IronPython/IronPython_Main/Src/Tests/test_generator_throw.py
$/IronPython/IronPython_Main/Src/Tests/test_nt.py
$/IronPython/IronPython_Main/Src/Tests/test_namebinding.py
$/IronPython/IronPython_Main/Src/Tests/test_slots.py
$/IronPython/IronPython_Main/Src/Tests/test_sys.py
CHECKIN COMMENTS
--------------------------------------------------------------------------------
Changeset Id: 1072305
Date: 8/20/2009 3:26:06 PM
(dfugate) - test_array.py: 315192 is fixed
- test_descr.py: 316449 is fixed which enabled finding many more bugs (all under CP21116 for now)
- test_float.py: float(unicode(huge number)) is a bug (24383), not an incompat
- test_gettext.py: a tearDown method wasn't broken due to 315224
- test_cStringIO.py: 151029 is fixed
- test_metclass.py: 364860 is fixed
- test_namebinding.py: 233393 is fixed
- test_nt.py: CP24235 is fixed
- test_property_override.py: 372528 appears to be fixed
(Shelveset: CP74;REDMOND\dfugate | SNAP CheckinId: m9995)
--------------------------------------------------------------------------------
Changeset Id: 1071937
Date: 8/20/2009 12:01:56 PM
(dinov) Fixes for two tracing related bugs:
24313 The frame received from sys.settrace is not the actual frame
This is the bulk of the change. This includes:
We no longer create fake FunctionCode objects when building up traceback frames. Instead our code gen, stack trace updates, and PythonDynamicStackFrame objects have been updated to have the FunctionCode object for the actual function. For modules this means we need to flow the function code object into the generated module function. We also get a new DelayedFunctionCode expression which allows us to create the function code object after the code generation for module/class/function definitions is complete. This lets us create the function code which can hold onto the generated lambda and the generated lambda can refere back to the function code object.
It also has a cleanup to function code to remove support for ScriptCode’s over there. This ends a circular dependency between our code objects and ScriptCode objects.
Our trace back listener is updated to only use 1 thread static for storing all frames. Previously we had a stack of traceback listeners (which still needs to exist) and inside each traceback listener we had our own list of frames. This unifies all lists of frames. Because of this there’s some additional coordination needed when a traceback function throws an exception.
But when the user calls sys._getframe now we can go and look at this unified static list of traceback frames and pull the frame object from there. And now all the frames have consistent identities.
23650 Pdb set_trace and post_mortem
Adding a new –X:Tracing option which enables these to work. The problem here is that tracing needs to be enabled all the time, not just when sys.settrace() has been called. This option makes that possible.
Also fixing a bug reported by Mike Stall that del frame.f_trace doesn’t work.
(Shelveset: TracingFrameIdentityFinal;REDMOND\dinov | SNAP CheckinId: 9194)
--------------------------------------------------------------------------------
Changeset Id: 1070492
Date: 8/20/2009 9:59:49 AM
(dinov) 23703 Trivial: missing cStringIO.isatty
Adding check to see if cStringIO is closed, enabling test in test_stringIO
23704 iter(x) == x when x is cStringIO.StringIO instance
Already passing, Enabling test in test_StringIO
23741 re.match(re.escape(chr(92),chr(92)) throws value error
Enabling test in test_re
23772 NotImplemented returned when calling builtinfunciton.__call__ with keyword args
Adding test to test_cliclass
23791 the itemsize return different result when typecode is 'u' for Ironpython and Cpython
Fixing site in array, adding new check for Unicode in verifying size for fromunicode, enabling test in test_array
23792 binascii.a2b_base64("\n") throw a TypeError
Enabling test in test_gettext
23795 AttributeError: 'type' object has no attribute '__getformat__'
Enabling test in test_float except for the test which is clearly marked as an implementation detail
23722 locals() fails in nested functions if locals() is also used in an outer function
Enabling test in test_namebinding
23822 locals() in nested member function can't view locals in outer function
Adding test case to test_namebinding (1st new test case)
23823 nested function's locals() affected by sibling nested function's locals().
Adding test case to test_namebinding (2nd new test case)
23908 calling OldClass with list can fail.
Adding test to test_class
23903 negative scenario: new-style class can't have only classic bases when using "type" to create it
Enabling test case in test_metaclass
23901 valid scenario: deriving a class from multiple new styles with __slots__
Adding test case to test_slots
23899 subtype's __slots__ not working
Enabling test case in test_slots (bug 364438)
23852 Trivial: lack of 'digest_size', 'digestsize', 'name' attribute for md5 module compare to ...
(Shelveset: Enable261tESTS;REDMOND\dinov | SNAP CheckinId: 9192)
More information about the Ironpython-users
mailing list