Now isn't the right time for that discussion - we're in the final
stages of delivering v1.1, so the core developers are concentrating on
squashing bugs, not new features.
However, I agree that schema evolution is something that should be "in
the box"; we just need to make sure that what we put in the box really
will solve the problem.
I'd like to think this could happen in the v1.2 timeframe, but I know
my life will be a bit hectic over the next 6-9 months, so I'm not
really in a position to make promises in this regard. Rest assured
that this is on the radar - it's just a matter of when someone can fit
it into their schedule.
Yours,
Russ Magee %-)
Have you written up your comparison of South with the other major
options anywhere that we can need? Perhaps doing the same migration work
with each framework to see the work involved?
Regards,
Malcolm
I agree with this completely; the core devs I've spoken to don't yet
want to roll in a migration solution, and I'm 100% behind that, as I
still think there's no clear winner.
http://code.djangoproject.com/wiki/SchemaEvolution lists six active
migration solutions, and there's obviously a reason there's more than
one; Django has always been about swappable components, and rolling one
solution in might easily make people think that's the only choice. (In
addition, it would slow down development progress into a 6 month release
cycle, and that's something I personally think South in particular
wouldn't benefit from at the moment)
That said, I would like to see some mention of schema evolution in the
Django docs at some point; it's a very common problem, and we could
easily come up with a neutral page to point people at all their options,
rather than leaving them to find that wiki page on their own.
Andrew
Permit me to correct that impression: you are mistaken.
> But as I said,
> there is no wrong one.
That's also not a really valid assumption. There are still significant
differences and different limitations and advantages with each approach
to database migration. A bit more convergence and experience -- which is
happening -- is already going on and will continue to do so. Look at all
the active projects in this space. They are all changing their
approaches as time goes by, based on feedback, maintenance experience
and general whims.
> People with other needs can always choose some of the other
> solutions.
Which is no different from right now. Django permits and encourages
external applications. You shouldn't be surprised when they exist.
Moving anything into contrib right this minute adds a relatively small
advantage to the current situation: it saves you from one extra
download. It has a number of disadvantages, including added maintenance
burden and expectation management.
There is a clear policy for things going into contrib and clear reasons
for not putting things in there. Database evolution is one of the prime
examples of wy not to include something before time.
> There's no way there will migrations in django ever which will fit all
> django users in the world,
> this is pretty clear after all discussions there have been.
>
> Thats the nice thing about loose coupling.
>
> I don't see why this is a terrible time for discussions, the whole
> idea of discussions is to laborate with ideas. I don't see how that
> makes it difficult for us to get 1.1 out.
Look at the major contributors to this list and the people who have the
deepest understanding of the platform. Now look at the list of people
doing the reviews and commits to get 1.1 out. Notice the large overlap.
Consider that thinking about these problems is actually fairly difficult
and takes time. Then realise that database migration is only one of
maybe a dozen large things that people want to discuss. Clearer now? If
not, repeat the process.
Regards,
Malcolm