From: Ian B. <ia...@co...> - 2003-05-24 21:34:49
|
On Thu, 2003-05-22 at 10:18, Luke Opperman wrote: > My thoughts for post-0.4: > > * MemoryTransaction or an equivalent. Sure. > * Some decision on concurrency control/resolution (should SQLObject offer any, > and if so then let's do it.) If we can come to decisions ;) And implementations, of course. > * Actual enforcement of a constraints/validators system, at least providing > toSQL/toPython functionality. (Ian, I know you've been busy on FormEncode, and > that will be a help here :) Yes, that's distracted me from SQLObject stuff recently. I'd also like to do some cleanup of names: sqlRepr -> __sqlrepr__ *Connection -> *Store Maybe others. _columns -> __columns__ ? I don't like the _setting style, but maybe lots of __setting__ names just get excessive, and they shouldn't be public (i.e., no underscores). The old names would still work for a version or two, with warnings being printed maybe in 0.6. sqlRepr might be more quickly deprecated, but none of the others. The constraints/conversion stuff is getting closer. I want to do one more renaming on Validator, and change the class hierarchy slightly (so there's an option for a more trimmed-down validators), but that's it. So it should be able to go in fine. Joins will be redone, definitely. They'll be put in their own module, like Col, and a Join/SOJoin distinction will be made. That should make the code significantly cleaner -- not so much shorter, but it will be clear what code gets invoked at what point of the process. I'll probably add a one-to-one join, and maybe a more generic join for annotated relations (like the Worker-Customer + rate example). Maybe implement orderBy in the database too. Open to consideration is join results becomimg iterators, ala select results... I think that's all that's been on my mind, at least short-term. FormEncode will start to become more involved at some point, but the coupling will be loose -- I'm going to try to create an interface for publishing objects (and classes) via FormEncode, and SQLObject should be able to implement that fairly trivially (once I figure out what "that" is). Ian |