I've been having a good deal of fun mangling and managing with SQLObject, including perverting it to use Postgres table inheritance. I know, not portable at all but fun.
Lots of chatter about Ruby and "Rails" lately. Without knowing Ruby or looking too carefully at the Active Record API, it seems to me that SQLObject does more in some areas, perhaps a little less in others, but goes further in hitting the sweet spot which is - I think:
- Make it easy to do new projects where you have total control over schema
- Make it simple to adapt SQL Objects to an existing schema.
Its easier to use SQLObject than it is to use plain DBI access to tables, even if only using SQLObject for really simple minded stuff. It would be rather nice to take a great broom through it and make it oh-so-complete across all the supported platforms, or at least head down that road. Having used three different Python ORMs now, two fairly extensively and now getting there with SQLObject, I think your project ends up being closest to what is immediately usable for the new-to-Python or new-to-Python and DBI crowd.
Active Record and Ruby are starting to get some attention from disillusioned Java developers - they need to look around a little more.
I'm not giving up my whitespace in exchange for a bunch of end block closures!