4 ms·
Worth mentioning that if someone wants to ask me (I'm running this) questions about this I'll be checking here!
by andrewgodwin 14y ago
Worth mentioning that if someone wants to ask me (I'm running this) questions about this I'll be checking here!
- kmfrk 14y agoWhat are the problems with South, as you point to? I think those are a big part of the selling point for your project. :) Additionally, could you explain how the project will not be obviated by Django's plans to implement built-in schema migration in, I think, 1.6 or 1.7? You taken on one of the most important aspects of managing Django services, so I'm genuinely interested, but I just want to know what the thinking is behind this.
- StavrosK 14y agoI will second this. What's wrong with South, currently? By the way, this is the first Kickstarter project I've considered funding.
- Glyptodon 14y agoSouth can often fail for reasons that are surprisingly silly, at least in my experience. Though it's still pretty useful compared to having nothing.
- stevejalim 14y agoIs that with MySQL? I've used it for scores of projects, always with Postgres, and it's never failed me, even if it's been a bit slow when there are lots of rows in play (which isn't really South's fault)
- Glyptodon 14y agoYeah, with MySQL. You've probably got a pretty good point there. If I were to start a site myself one of the first things I'd do is never use MySQL, though it does improve ever so slowly. In the latest version(beta?) you can actually have a column with 'default current_timestamp' and a column with 'on update current_timestamp' in the same table after years of only being able to have 1 column per table auto that way. I don't remember the details, but I think I had to fill a column with zeros all the way down just to drop the whole column in the migration anyway or something along those lines.
- andrewgodwin 14y agoI try to address the key points in the Kickstarter, but essentially South is too fragile (it relies on exactly linear histories) and too verbose (bakes the entire ORM state into every migration) - the main point is to fix those. It's also worth pointing out that this IS the built-in schema migration that's going in in 1.6 or 1.7.
- mladenkovacevic 14y agoYou should reiterate in this thread that you are the originator of South as well so if anyone knows its limitations it should be you :)
- kmfrk 14y agoAlright, alright, have my money then. :)
- antihero 14y agoAre you going to do something about fields needing dependencies? So say you have a django-tinymce field in one of your migrations but remove it later, South will currently still depend on django-tinymce, even though in the database it's just a text field.
- zalew 14y ago> how the project will not be obviated by Django's plans to implement built-in schema migration in, I think, 1.6 or 1.7? uhmm, it's exactly this project :)
- mhb 14y agoAdditionally, could you explain how the project will not be obviated by Django's plans to implement built-in schema migration in, I think, 1.6 or 1.7? Maybe he added it in the last 7 minutes, but this is answered in the Kickstarter description.
- shill 14y agoAwesome. I will make a donation if I can get approval. How will the new rebase command be different from truncating the migration table and regenerating initial migrations?
- andrewgodwin 14y agoYou won't need to tell other machines that there's a new migration set - they'll just realise and migrate appropriately (new machines on the new initial, old ones on the left-over old ones until they're all done and you can remove them).
- shill 14y agoI didn't think of that. And that would be nice. Thanks!
- babarock 14y agoThanks! You say "Schema migration with Django has had a long and complex history". Can you explain, even briefly, why migrations haven't been a part of Django's core so far? I was under the impression that it was a deliberate design choice. What made you change your mind now?
- EmilStenstrom 14y agoThe basic stumbling block as I understood it was that there were no consensus on how to build a good migrations system. Instead of just picking one system and bundling it into Django the decision was to do iteration in third party libraries. We got dmigrations, django-evolution, and south, and over time south won the race...
- mctx 14y agoCongratulations - you've just passed £3500!
- andrewgodwin 14y agoI know. So happy.
- zalew 14y agohttps://twitter.com/andrewgodwin/status/315123380275773440 https://twitter.com/andrewgodwin/status/315123380275773440 wow
- neo2001 14y agoAre non-django field types like (postgresql hstore) going to have some love as part of these migrations? If not, a proper and standardized way to write plugins to extend it would be awesome in order to be able to migrate "nonstandard" field types.
- andrewgodwin 14y agoPart of this is coming up with a new spec for Django field types to allow this stuff to work better, so that'll hopefully do what you want.
- bmelton 14y agoDoes this mean anything will happen with Oracle? I know that I'm perhaps the odd man out, but South just doesn't work reliably on Oracle, and I really, really miss it. Alternately, if I were to donate a running RDS instance with Oracle on it, would that help in any way? I seem to remember an issue (that affects me) reported, and effectively disregarded with a message similar to, but not necessarily that you don't have Oracle, so it wasn't likely to get fixed.
- jsmeaton 14y agoI'm in exactly the same boat. "Oracle support is in beta". The kickstarter mentions Oracle briefly, but only in a "if there's money and time" kind of way. I don't think a feature like this should be considered complete until all of the officially supported backends have support. The problem really seems to be the lack of access to an Oracle instance. Unfortunately my company isn't in a position to make available an instance, but I'm sure we could contribute an on-going dollar amount towards one.
- codesuela 14y agoAs of now you have collected 10k GBP, what are you going to do with the money with the 3k+ in unplanned additional funds? Are you going to adjust you hourly rate (not that I mind your initial "quote" wasn't that high to begin with), donate to charity, deliver more code/value, buy the Django core devs a beer? Genuinely curious. And congrats on making your goal, I love this model and I love that you had the courage to make this effort. Succeeding with this campaign publicly shows that contributing to open source software has to be an unpaid endeavor (yes I know that there are employees who get paid to contribute to open software). I wouldn't mind if more talented devs sought out crowdfunding to enhance OSS.
- shuzchen 14y agoIs there a reason to include this directly in Django rather than leaving it as a pluggable app? Updates/bug-fixes/features are way easier to push when it's not tied into the official update cycle, letting you be a lot more agile.