Schema Alteration - Review needed!

610 views
Skip to first unread message

Andrew Godwin

unread,
Sep 17, 2012, 6:59:55 PM9/17/12
to django-d...@googlegroups.com
Hi all,

I have now, I believe, got a working, feature-complete schema alteration branch ready to go. It has full support for PostgreSQL, MySQL, and SQLite, and follows the rough design principles I emailed the list about a while back.

It's fully tested, but no documentation yet - I'm not sure what level of documentation we should give this, but it is my intention for it to be an API usable by third-party apps. In the meantime, the tests file should give you a reasonable idea of the way the API can be used (if you ignore the slightly cheap way to make new model classes - 'migrations' has a much nicer one of those).

It should be Python 3 compatible, too - I've checked the major pain points and run the test suite under Python 3, and it all passes.

The branch is schema-alteration in https://github.com/andrewgodwin/django

Feedback is very much welcomed - I want to get this merged in before the feature freeze.

There's doubtless some polishing and bugfixing that will be needed before final release, but I'll be keeping on top of that (by developing an app that uses it, partially) and making sure that 1.5 ships with something that's decently solid, and with an Oracle backend if I can get it working on my machine.

Andrew

Alex Gaynor

unread,
Sep 17, 2012, 7:01:36 PM9/17/12
to django-d...@googlegroups.com

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-d...@googlegroups.com.
To unsubscribe from this group, send email to django-develop...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/django-developers?hl=en.

Hi Andrew,

Can you put this in a pull-request so I can comment inline?

Thanks,
Alex

--
"I disapprove of what you say, but I will defend to the death your right to say it." -- Evelyn Beatrice Hall (summarizing Voltaire)
"The people's good is the highest law." -- Cicero

Andrew Godwin

unread,
Sep 17, 2012, 7:10:58 PM9/17/12
to django-d...@googlegroups.com

Can you put this in a pull-request so I can comment inline?


Jani Tiainen

unread,
Sep 18, 2012, 1:01:51 AM9/18/12
to django-d...@googlegroups.com
18.9.2012 1:59, Andrew Godwin kirjoitti:
> Hi all,
>
>
> There's doubtless some polishing and bugfixing that will be needed
> before final release, but I'll be keeping on top of that (by developing
> an app that uses it, partially) and making sure that 1.5 ships with
> something that's decently solid, and with an Oracle backend if I can get
> it working on my machine.

I can help with Oracle problems if you encounter a such thing since
that's my main backend I work with. (And I have to deal with all the
pain it causes)

> --
> You received this message because you are subscribed to the Google
> Groups "Django developers" group.
> To post to this group, send email to django-d...@googlegroups.com.
> To unsubscribe from this group, send email to
> django-develop...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/django-developers?hl=en.


--
Jani Tiainen

- Well planned is half done and a half done has been sufficient before...

Andrew Godwin

unread,
Sep 18, 2012, 11:49:23 AM9/18/12
to django-d...@googlegroups.com
An update from discussions with Alex and Anssi - I'm going to modify things a little so we don't have a Borg-pattern AppCache (i.e. you can instantiate it multiple times and get different caches), which should solve most of the problems currently caused by app cache state fiddling. Should take a day or two.

I can help with Oracle problems if you encounter a such thing since that's my main backend I work with. (And I have to deal with all the pain it causes)

Thanks Jani - that would be much appreciated. It should be possible to get a decent way just from the Oracle module, I'll let you know when I get around to it. 

Andrew

Andrew Godwin

unread,
Sep 21, 2012, 7:51:46 PM9/21/12
to django-d...@googlegroups.com
Alright, I've now removed my AppCache state handling and replaced it with swappable AppCaches - surprisingly, doing this hasn't broken anything, but it did need an AppCacheWrapper to stop references going wrong.

The commits are here:


The SQLite test suite all passes after these changes, so this is looking good. Thoughts?

Andrew
Reply all
Reply to author
Forward
0 new messages