Patrick K. O'Brien wrote: > Patrick K. O'Brien wrote: >> I'm still working out the kinks, but the following might interest some >> of you: >> >>> Can you say Schevo.NET? :-) > > If anyone wants to help with our IronPython efforts, please create an > account on CodePlex and vote for the following support tickets so that > MS fixes things in IronPython that we need for Schevo (and Durus): > > Class with slots and getattr not compatible > http://www.codeplex.com/WorkItem/View.aspx?ProjectName=IronPython&WorkItemId=5 801 > > Unpickler.persistent_load needs to be supported > http://www.codeplex.com/WorkItem/View.aspx?ProjectName=IronPython&WorkItemId=5 799 > > Import in exec doesn't publish into provided dictionary > http://www.codeplex.com/WorkItem/View.aspx?ProjectName=IronPython&WorkItemId=5 755 > > Since this also effects Durus, I'm sending this to their list as well. > > Thanks! For the Durus folks -- I've gotten Schevo to work on IronPython but it required some hacks that would be nice to eliminate. Here is an example of what can be done with Schevo in IronPython now: C:\IronPython>schevo db create --app=schevo.example.todo -p todo.db Schevo 3.0b3dev-r2694 :: Database Activities :: Create Database Creating new database... Evolving database... Database is already at latest version. Importing icons... Populating with sample data... Packing the database... Database version is now at 1. Database created. C:\IronPython>ipy.exe -X:TabCompletion -X:ColorfulConsole IronPython 1.0 (1.0.61005.1977) on .NET 2.0.50727.42 Copyright (c) Microsoft Corporation. All rights reserved. >>> import schevo.database Using Python base classes for persistence. >>> db = schevo.database.open('todo.db') >>> for gender in db.Gender: .... print gender.name .... Female Male Unknown >>> person = db.execute(db.Person.t.create(name='John Doe', gender=db.Gender.findone(code='M'))) >>> person.name 'John Doe' >>> person.gender >>> person.gender.name 'Male' >>> db.execute(person.t.update(name='Joe Q. Public')) >>> person.name 'Joe Q. Public' >>> male = db.Gender.findone(name='Male') >>> db.execute(male.t.delete()) Traceback (most recent call last): File , line 0, in ##1133 File database, line unknown, in execute File c:\code\1_schevo\branches\bugfixes\schevo\schevo\database.py, line 235, in execute schevo.error.DeleteRestricted: cannot be deleted; it is referred to by .gender >>> Any Durus folks interested in IronPython and .NET? -- Patrick K. O'Brien Orbtech http://www.orbtech.com Schevo http://www.schevo.org Louie http://www.pylouie.org