On 13/06/12 17:15, Luke Plant wrote: > I think this is a very necessary piece of work. The problem with that > layer of code is that it is very difficult to really grok and therefore > to review patches. It would take almost as much effort to do a review of > a substantial patch as the patch itself. You have to really understand > what Query is doing, and it is a huge class, that takes hours to even > vaguely get the hang of and get in your head. > > I would like to be able to help, and if I dropped everything else I > might otherwise do on Django, that should be possible. I think with two > pairs of eyes on these changes, and with a good test suite, we should be > reasonably safe, but getting more review than that would be hard.
I'm happy to look over any patches as well - while I generally know more about the actual backends rather than Query, the more eyes the better on this kind of stuff, I think. > I do actually have another proposal, that has been a growing draft email > on my computer for a few weeks: that we rewrite our backend using > SQLAlchemy Core (not the ORM). I've used SQLAlchemy a bit, and I'm very > confident we could use it profitably. While the ORM works significantly > differently to ours, the lower layer (Core - the SQL Expression > Language) can indeed build queries that can do all the joins etc that we > would need - it's a full wrapper around SQL. Some of the complexity in > our code comes from not having this wrapper. > > SQLAlchemy is a really excellent library, and I fear that long term if > we don't switch to it, we will just produce an ad-hoc, informally > specified, buggy, slow implementation of half of SQLAlchemy. I'd love to see the full proposal for this - it's been a while since I've heard rumblings about SQLAlchemy, and I've forgotten what the major objections/drawbacks were. It would certainly save me some work if I could rely on it for some DDL code generation, though because of the way models are defined in terms of Fields that's unlikely to be possible soon without some serious mapping and wrapping. Andrew -- You received this message because you are subscribed to the Google Groups "Django developers" group. To post to this group, send email to django-developers@googlegroups.com. To unsubscribe from this group, send email to django-developers+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.