Thanks to the team for facing the heavy changes that were required to improve the compatibility of IronPython and DLR with projects that target .NET Framework 3.5. From Harry's account[1], we can see that it took a lot of smarts and guts to do.
[1] http://devhawk.net/2008/09/17/DLR+Namespace+Change+Fire+Drill.aspx Since that blog post hints that it should be possible to produce a native 3.5 version of IPy and DLR that wouldn't give that warning1685, I tried to follow the instructions: > If you're willing to compile from source yourself, it's fairly easy > to build a set of binaries for a specific version .NET that doesn't > have the warning. If you're building for v3.5, you need to remove > Extension.cs from the three projects that have a copy of it > (Microsoft.Scripting.Core, Microsoft.Scripting, IronPython) and > add a reference to System.Core.dll. Well, I tried that, and I didn't find it fairly easy. My attempt was like this: 1. Open IronPython.sln 2. Remove projects Chiron, IronPythonConsole, IronPythonTest, IronPythonWindow, Microsoft.Scripting.Silverlight 3. Change all 4 remaining projects to target Framework 3.5. 4. Clean and build the solution in release mode. Get errors like: * The referenced component 'System' could not be found. * The referenced component 'mscorlib' could not be found. * The referenced component 'System.Core' could not be found. 5. Remove all references that were not found and add them again. 6. Delete these files: * IronPython\Extension.cs * Microsoft.Scripting.Core\Utils\Extension.cs * Microsoft.Scripting\Utils\Extension.cs 7. Get errors like: * Error 1 'StrongBox' is an ambiguous reference between 'System.Runtime.CompilerServices.StrongBox<bool>' and 'Microsoft.Runtime.CompilerServices.StrongBox<bool>' 8. Replace all occurrences of StrongBox with Microsoft.Runtime.CompilerServices.StrongBox. 9. Repeat for IStrongBox. 10. Get errors like: * 'Func' is an ambiguous reference between 'System.Func<Microsoft.Scripting.Actions.CallSite,object,int>' and 'Microsoft.Func<Microsoft.Scripting.Actions.CallSite,object,int>' 11. Replace all occurrences of Func with Microsoft.Func. 12. Again the same for 'System.Action' and 'Microsoft.Action'. 13. Now all 4 projects compile for framework 3.5. I don't feel like deploying them, though, for fear of some side-efect of all those replacements. If anyone can tell me where I made a mistake, I appreciate. Cheers!
_______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com