6 ms·
Django 1.8 beta 1 released
- Spiritus 12y agoLink to release notes https://docs.djangoproject.com/en/dev/releases/1.8/ https://docs.djangoproject.com/en/dev/releases/1.8/
- arthursilva 12y agoReading it put a smile in my face. Looking forward to the final release.
- stefantalpalaru 12y agoNow read this and try to explain your clients why you're billing them extra for an upgrade they did not request: https://docs.djangoproject.com/en/dev/releases/1.8/#backwards-incompatible-changes-in-1-8 https://docs.djangoproject.com/en/dev/releases/1.8/#backward...
- noobhater1000 12y agoI read that I'm not sure what the point is?
- stefantalpalaru 12y agoThe point is that instead of the upstream developers doing their job and maintaining backwards compatibility or providing automated migration scripts, tens of thousands of downstream developers will waste tens of thousands of hours fixing that intentional breakage. That's why a new Django major/minor version is never a good news, but a periodic reminder of how broken the ecosystem is.
- jgroszko 12y agoThose features were marked to be deprecated 2 major releases ago (2 years ago), per their deprecation policy. At some point features or behavior will need to be deprecated so the framework can move forward. That doesn't sound broken at all to me...
- stefantalpalaru 12y agoThat is broken by design.
- jsmeaton 12y agoBroken by design is leaving data corrupting bugs in the framework when a fix exists, just to preserve "working" code. Granted, there are still a lot of backwards incompatible changes that aren't so severe. But every single change that is backwards incompatible is scrutinised, and only makes the cut if the deemed benefits outweigh the projected costs. If the costs aren't worth it to you or your client, then hang around on 1.7 until it goes out of support. I'm looking (..and have contributed to) the list of backward incompatible changes in 1.8 and, frankly, there isn't a whole lot there that will cause the majority of users any pain. There is a big list you have to analyse, yes, but there shouldn't be a lot of work to bump versions. Frameworks evolve. If they don't, they crumble under their own weight and die, and then no one is using them anyway. Most people are fairly reasonable with regards to upgrades and changes. Are you happy with any of the features that are landing in 1.8? Because chances are that at least some of those incompatible changes are required for that feature to work or that bug you hated to get fixed.
- lazerscience 12y agoMaybe you can elaborate why this is supposed to be "broken by design"? Django's deprecation policy is one of the best, and also older versions receive (security) updates for a long time. If you're not content with the functionality provided by an open source software there's still much room left to take actively part in its development.
- 12y ago
- nkuttler 12y agoIf that is a big concern for you, you should have gone with the LTS. Or, you know, a decent support contract.
- stefantalpalaru 12y agoI will not be blackmailed into paying for commercial support.
- jMyles 12y agoRight. Volunteer work on an open source project is a giant conspiracy to blackmail you into contracting for a commercial support contract. The beneficiaries, of course, are the dark cabal of Caktus, RevSys, Lincoln Loop, slashRoot, 791 tech, and so on. Behemoths all, and existential threats to your clients without exception.
- stefantalpalaru 12y agoIs that a proper response to criticism? Labeling every dissenting opinion as a conspiracy nut's crazy talk just because the project is open source?
- jMyles 12y agoYou are correct that cornering people as conspiracy nuts is not a proper response and, in the presence of a fact pattern of tenuous certain, is a logical fallacy. However, in this case, you've implied, at least enough to set off my detector of hostility, that all of us that work on Django are engaged in a plot to force you to pay for fancy expensive service contracts. This is simply crazy on its face. I hardly commit to Django core at all, but when I do, I do so with an intent to make the world a better place - and I say that unironically. I am psyched for the capacity of Django and frameworks like it to make communication and archival of the human condition ever more accessible and powerful. Do you know how intensely Andrew, Carl, Russell, Jannis, and Aymeric (the 1.8 technical team) work on Django? It's a full-on lifestyle choice. I'm so happy to have the privilege of watching them work, let alone using their product, that I simply cannot imagine the kind of cruelty it must take to accuse them of not working hard enough to ensure that your clients are happy. We all have clients. If yours aren't sufficiently happy with Django 1.8 (or 1.9 - already time to get going on it), then get your ass over to github and fix whatever's bugging you. If it's seriously reverse incompatibility with features that have had deprecation warnings for TWO YEARS now, then I want to suggest that you need to zoom out your perspective a little. How many companies do you know that were on PHP frameworks two years ago and have happily switched to Django? Better yet, closed-source CMS systems? I respect that you have a dissenting opinion, and I really hope you do outline more of your position. But don't you dare cast these people who bust their ass for you - for free - as villains of some sinister plot to bilk all the people who didn't read the deprecation warnings.
- bad_devs_suck 12y agoI am glad I am not your client. You are upset at an open source project because it makes new versions and progresses? Sigh - this is why we need an engineering style qualification before we let all these blaggers run around crapping out software, hurting their clients, and calling themselves developers!
- stefantalpalaru 12y agoYou created a throwaway account just to insult me? I'll take it as a compliment :-)
- baq 12y agowhy upgrade something that works? calm down.
- jMyles 12y agoI think parent is way out of line, but are you serious? Are you suggesting that keeping people on 1.4, which is slated to stop receiving security upgrades in October, is anything but reckless?
- collyw 12y agoI only upgraded to 1.7 a month or two back..... Still sounds good.
- JshWright 12y agoThe Django project shoots for 6-9 months between major releases. This will be on the early side of that window, but still > 6 months.
- noobhater1000 12y agoit is just me or is this a bigger release than normal? Great job to the Django team, this is more proof that Django is the defacto choice when building web applications in Python. Flask is good, but Django comes with many more batteries included, which all major websites need.
- getup8 12y agoI used Django a few years ago but am now learning Flask and coupled with SQLAlchemy, WTForms and a few other extensions seems to be very intuitive and powerful. Just curious, what batteries in Django make it preferable to you over Flask+SQLAlchemy+Jinja2?
- andrewfong 12y agoApparently Jinja2 will now be one of the batteries included, so there's that.
- wldcordeiro 12y agoNot so much included, it's more like the battery slot that the Django template language fits in is now easily accessible. So you can change your "Duracell" [Django Template Language] for "Energizer" [Jinja2]. But it's a pretty great change as there are legitimate times that Jinja2 is worth using over the Django system.
- nnain 12y agoI learnt Flask first and then Django. I like Django more. Figuring out which Flask package to pick is lot of unnecessary work. In most cases, you would end up using templates, ORM, Security, Forms, Admin, Migration anyway. Django's defaults for these (now including Jinja2 with this release!) are quite good. Also I found SQLAlchemy tooo complicated. Too much to learn there. It might be really cool for edge cases, but I'm happy using raw SQL when/if the Django ORM (ever) falls short of my needs. Also performance benchmarks seem to suggest that Django is faster than Flask. This was a surprise to me. As in, it seems as if Flask is leaner so would be faster, but Django performs better than flask. Also, I kinda like the Django community more.
- Alex3917 12y agoThis release is going to be huge. With support for Postgres arrays, UUIDs, security checks, jinja2, better fixtures support, etc., the gap between professionals and amateurs is getting smaller and smaller. I remember five years ago when you could make enormous amounts of money if you knew how to send a tweet, ten years ago when you could make enormous amounts of money if you knew how to install anti-virus software, etc. And now these things have gotten so easy that the value of knowing how to do them is basically zero. Releases like this show that web development is quickly going the same way. I would add though, the one thing I'm hoping to see in an upcoming release is native support for JWT auth. Right now it's annoying to have to add Rest Framework just to be able to follow current best practices for having an API-driven front end, assuming you don't also have a need to serialize your endpoints into YAML or whatever.
- vezzy-fnord 12y agoI remember five years ago when you could make enormous amounts of money if you knew how to send a tweet... I don't. Wow, what a missed opportunity. ten years ago when you could make enormous amounts of money if you knew how to install anti-virus software I don't remember that, either. That said, you can still make passable money doing charlatan "computer repair" that amounts to running an antivirus scan, CCleaner, disk cleanup and maybe some graphics tweaks to speed things up a bit. And now these things have gotten so easy that the value of knowing how to do them is basically zero. They've always been easy? Releases like this show that web development is quickly going the same way. It's an arms race, really. You have a lot more batteries than ever before, but the expectations for today's web applications are so high that the real value comes in being able to compose vast and multifaceted technological stacks, which as it turns out, is not so easy. There's almost this zealotry against building a native application that makes people take ridiculous hoops just so they can view things under a web browser. Additionally, the abstractions are still pretty leaky thus far, so building a complex app requires a lot of domain-specific knowledge that has yet to become invisible.
- mtbcoder 12y ago> " And now these things have gotten so easy that the value of knowing how to do them is basically zero." Have they gotten easier...or have you, yourself, gained more experience and knowledge that you understand things better now?
- deleted 12y ago[deleted]
- mangeletti 12y agoSince 1.8 is an LTS release, those of you using 1.4 can finally upgrade without having to do so again for a couple years.
- bebop 12y agoJust as a tip, it might be easier to do a progressive upgrade, i.e. move to 1.5 -> 1.6 -> 1.7 -> 1.8 on older code bases. This way you will get deprecation warning, instead of failure. IIRC Django moves from deprecation to removal in two releases. On a side note, it is also a good time to try out Python 3, as most packages now support both 2 and 3.
- mangeletti 12y agoDjango 1.5 is no longer supported (even for security patches), 1.6 will only receive security and data loss bug fixes after 1.8 is released, and (IMHO) upgrading from 1.4 to 1.6 (or esp 1.7) is almost as difficult and time consuming as just going straight to 1.8, whereas upgrading from 1.4 to 1.5 was a breeze. Python 3 is wonderful to work with now, compared to just a year ago. Django's support for Python 3 really helped speed up the ultra-slow process of getting many of the popular libraries to support it. IOW, now is a great time to start using Python 3 for new projects.
- chr15 12y agoI'm in the middle of this process, but from an even older version. Since 1.7 introduced migrations, I recommend upgrading to 1.6 first and getting your South migrations caught up with third party apps. Some may have data and schema migrations e.g. django-photologue. Then jump to 1.7 or 1.8. You'll likely have to update your requirements.txt with the latest packages, so you'll want to see if they're compatible with the version you're upgrading to. I recommend keeping it up-to-date with every release if possible. Much easier to make incremental updates than spend months on upgrading 4 major versions. And read ALL the release notes.
- mangeletti 12y agoSee my comment above, pertaining supported versions, etc. Do try out migrations in 1.8, btw. When Andrew Godwin migrated them into Django, a lot of things were changed, and now migrations are truly great to work with.
- asdf1234 12y agoIs there a specific asset pipeline library that most people that use Django recommend? I'm mainly concerned with filename asset fingerprinting.
- mkolodny 12y agoDjango has a `CachedStaticFilesStorage` storage class that you can use to store the MD5 hashed names of your processed files [1]. I use that with django-storages to store my files in S3/Cloudfront [2]. [1] https://docs.djangoproject.com/en/1.7/ref/contrib/staticfiles/#cachedstaticfilesstorage https://docs.djangoproject.com/en/1.7/ref/contrib/staticfile... [2] https://mike.tig.as/blog/2011/12/22/django-14-first-thoughts-cachedstaticfilesstorage/ https://mike.tig.as/blog/2011/12/22/django-14-first-thoughts...
- larrik 12y agoAnyone know if there will be an official guide for moving between LTS releases? (1.4 > 1.8)
- jsmeaton 12y agoNo, there won't be. If you upgrade to 1.5, then 1.6, then 1.7, then 1.8 using the release notes from each version, that's your best bet. Any guide moving from LTS to LTS would just be a copy paste job between incremental versions anyway.
- ay1n 12y agoWow, release notes look great. I'm so impressed with the whole Django ecosystem - I'm yet to find a problem without a good answer on SO, there's a package for most of the repetitive stuff when building a web app. I tried to follow the development process on GitHub for some time and while it was a valuable experience [1], it can be like a side project on its own, just to keep up with all the issues and bigger commits. Anyway, I'm incredibly thankful for all the contributors. Learning and using Django let me meet great people, experience new things and had quite an impact on my life. Yay Open Source! ;). [1] In general, I think that watching big project on GitHub for just a few weeks can be better lesson than reading a book on the topic (it depends, of course, but it's a great learning experience nonetheless)