<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://www.codeplex.com/rss.xsl"?><rss version="2.0"><channel><title>Coils: a static class wrapper for IronPython</title><link>http://www.codeplex.com/coils/Project/ProjectRss.aspx</link><description>The goal of the Coils project is to generate static CLR class wrappers for classes implemented in &amp;#40;Iron&amp;#41;Python. In addition to simplifiying use of Python code from non-DLR environments, this will a...</description><item><title>CREATED ISSUE: Create PowerShell extension in Python</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1988</link><description>This would be a good demo of the technology.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Wed, 09 Apr 2008 20:54:05 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Create PowerShell extension in Python 20080409085405P</guid></item><item><title>NEW POST: Design Thoughts</title><link>http://www.codeplex.com/coils/Thread/View.aspx?ThreadId=24581</link><description>&lt;div class="wikidoc"&gt;
A single application of Coils to a Python project should result in a single assembly being created.  This assembly should be associated with its own ScriptRuntime object so that it's isolated from any other script-based code in the same process.&lt;br /&gt; &lt;br /&gt;The assembly will create a single &amp;quot;manager&amp;quot; class with references to the ScriptRuntime and ScriptEngine.  It will also create one &amp;quot;wrapper&amp;quot; class for each Python type being wrapped.&lt;br /&gt; &lt;br /&gt;The wrapper class will have a shared reference to the PythonType and a per-instance reference to the actual object being wrapped.&lt;br /&gt;
&lt;/div&gt;</description><author>CurtHagenlocher</author><pubDate>Mon, 24 Mar 2008 16:16:57 GMT</pubDate><guid isPermaLink="false">NEW POST: Design Thoughts 20080324041657P</guid></item><item><title>CREATED ISSUE: Create explicit wrapper constructor</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1315</link><description>It should be possible to wrap an existing IronPython &amp;#40;dynamic&amp;#41; object with the static class.  This could be done as a static function&lt;br /&gt;T FromObject&amp;#40;object obj, bool suppressCheck&amp;#41;&lt;br /&gt;which tests to make sure that the object is of the appropriate type &amp;#40;unless suppressCheck &amp;#61; true&amp;#41;&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Wed, 13 Feb 2008 23:02:54 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Create explicit wrapper constructor 20080213110254P</guid></item><item><title>CREATED ISSUE: Recognize Pythonic default parameters</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1314</link><description>A Python method declaration like this&amp;#58;&lt;br /&gt;def DoThis&amp;#40;self, a, b&amp;#61;1, c&amp;#61;2&amp;#41;&amp;#58;&lt;br /&gt;&lt;br /&gt;should be translated into three methods on the wrapper&amp;#58;&lt;br /&gt;void DoThis&amp;#40;a&amp;#41;&lt;br /&gt;void DoThis&amp;#40;a, b&amp;#41;&lt;br /&gt;void DoThis&amp;#40;a, b, c&amp;#41;&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Wed, 13 Feb 2008 22:51:14 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Recognize Pythonic default parameters 20080213105114P</guid></item><item><title>CREATED ISSUE: Allow constructor to have parameters</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1313</link><description>The current wrapper assumes that the Python __init__ function is parameterless.  It should not.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Wed, 13 Feb 2008 22:46:43 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Allow constructor to have parameters 20080213104643P</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/coils/SourceControl/ListDownloadableCommits.aspx</link><description>Fixed constructor to call __init__</description><author>CurtHagenlocher</author><pubDate>Sun, 10 Feb 2008 00:01:05 GMT</pubDate><guid isPermaLink="false">Source code checked in 20080210120105A</guid></item><item><title>CLOSED FEATURE: Expose Python properties on generated class</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1119</link><description>Wrap Python properties &amp;#40;at least the &amp;#34;get&amp;#34; and &amp;#34;set&amp;#34; functions&amp;#41; as properties on the generated class&lt;br /&gt;Comments: Implemented.</description><author>CurtHagenlocher</author><pubDate>Sat, 09 Feb 2008 00:30:42 GMT</pubDate><guid isPermaLink="false">CLOSED FEATURE: Expose Python properties on generated class 20080209123042A</guid></item><item><title>COMMENTED FEATURE: Expose Python properties on generated class</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1119</link><description>Wrap Python properties &amp;#40;at least the &amp;#34;get&amp;#34; and &amp;#34;set&amp;#34; functions&amp;#41; as properties on the generated class&lt;br /&gt;Comments: ** Comment from web user: CurtHagenlocher ** &lt;p&gt;Use &amp;#34;ClrProperty&amp;#34; instead of &amp;#34;property&amp;#34; to specify the type of the property.&lt;/p&gt;</description><author>CurtHagenlocher</author><pubDate>Sat, 09 Feb 2008 00:30:10 GMT</pubDate><guid isPermaLink="false">COMMENTED FEATURE: Expose Python properties on generated class 20080209123010A</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/coils/SourceControl/ListDownloadableCommits.aspx</link><description>Added support for properties</description><author>CurtHagenlocher</author><pubDate>Sat, 09 Feb 2008 00:29:03 GMT</pubDate><guid isPermaLink="false">Source code checked in 20080209122903A</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/coils/Wiki/View.aspx?title=Home&amp;version=4</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;The goal of the Coils project is to generate static CLR class wrappers for classes implemented in &amp;#40;Iron&amp;#41;Python. In addition to simplifiying use of Python code from non-DLR environments, this will allow access to .NET features which require class- and method-level attributes &amp;#40;such as serialization and WCF&amp;#41;.&lt;br /&gt;
&lt;br /&gt; &lt;br /&gt;This project is still in the very preliminary stages.&lt;br /&gt;
&lt;/div&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:56:52 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080207035652P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/coils/Wiki/View.aspx?title=Home&amp;version=3</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt; &lt;br /&gt;The goal of the Coils project is to generate static CLR class wrappers for classes implemented in (Iron)Python.  In addition to simplifiying use of Python code from non-DLR environments, this will allow access to .NET features which require class- and method-level attributes (such as serialization and WCF).&lt;br /&gt; &lt;br /&gt;This project is still in the very preliminary stages.&lt;br /&gt;
&lt;/div&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:55:17 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080207035517P</guid></item><item><title>CREATED ISSUE: Expose interfaces on generated code</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1125</link><description>Identify CLR interfaces that are bases of the class being wrapped but are not part of the IronPython implementation.  Expose those interfaces on the wrapper and generate appropriate methods that forward to the Python implementation.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:53:59 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Expose interfaces on generated code 20080207035359P</guid></item><item><title>CREATED ISSUE: Scan multiple .py files</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1124</link><description>Allow scanning of multiple .py files in a single pass by specifying multiple file names using wild cards on the command line.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:48:56 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Scan multiple .py files 20080207034856P</guid></item><item><title>CREATED ISSUE: Embed .py files as resources</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1123</link><description>Allow .py files to be embedded in the assembly as resources.  Modify code generation to allow loading of modules from resources.  This would allow an IronPython library or application to be delivered with no external .py files.  Once this is working, Coils can be distributed as an actual .EXE.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:46:58 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Embed .py files as resources 20080207034658P</guid></item><item><title>CREATED ISSUE: Support IronPython 1.1</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1122</link><description>Have two code generators and pick between them using a command-line switch.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:43:00 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Support IronPython 1.1 20080207034300P</guid></item><item><title>CREATED FEATURE: Allow EXE generation</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1121</link><description>Use a command-line switch to choose between &amp;#47;target&amp;#58;exe, &amp;#47;target&amp;#58;winexe or &amp;#47;target&amp;#58;library.  For exe and winexe, exactly one class being wrapped must define a classmethod or staticmethod named &amp;#34;Main&amp;#34; with an appropriate signature.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:42:12 GMT</pubDate><guid isPermaLink="false">CREATED FEATURE: Allow EXE generation 20080207034212P</guid></item><item><title>CREATED TASK: Separate inspection from code generation</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1120</link><description>Currently, the code performs inspection and code generation as basically a single step.  Change this so that inspection happens first and generates a description of the classes to be created.  Pass this description to the code generator.&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:40:21 GMT</pubDate><guid isPermaLink="false">CREATED TASK: Separate inspection from code generation 20080207034021P</guid></item><item><title>CREATED FEATURE: Expose Python properties on generated class</title><link>http://www.codeplex.com/coils/WorkItem/View.aspx?WorkItemId=1119</link><description>Wrap Python properties &amp;#40;at least the &amp;#34;get&amp;#34; and &amp;#34;set&amp;#34; functions&amp;#41; as properties on the generated class&lt;br /&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 15:38:05 GMT</pubDate><guid isPermaLink="false">CREATED FEATURE: Expose Python properties on generated class 20080207033805P</guid></item><item><title>UPDATED WIKI: Home</title><link>http://www.codeplex.com/coils/Wiki/View.aspx?title=Home&amp;version=2</link><description>&lt;div class="wikidoc"&gt;
&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;
&lt;br /&gt; &lt;br /&gt;The goal of the Coils project is to generate static CLR class wrappers for classes defined in IronPython.  In addition to simplifiying use of Python code from non-DLR environments, this will allow access to .NET features such as serialization and WCF that require class- and method-level attributes.&lt;br /&gt;
&lt;/div&gt;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 13:53:40 GMT</pubDate><guid isPermaLink="false">UPDATED WIKI: Home 20080207015340P</guid></item><item><title>Source code checked in</title><link>http://www.codeplex.com/coils/SourceControl/ListDownloadableCommits.aspx</link><description>Initial version&amp;#59; really just a &amp;#34;proof-of-concept&amp;#34;</description><author>CurtHagenlocher</author><pubDate>Thu, 07 Feb 2008 13:50:39 GMT</pubDate><guid isPermaLink="false">Source code checked in 20080207015039P</guid></item></channel></rss>