

Django 1.8 beta 1 released - Spiritus
https://www.djangoproject.com/weblog/2015/feb/25/releases/

======
Spiritus
Link to release notes
[https://docs.djangoproject.com/en/dev/releases/1.8/](https://docs.djangoproject.com/en/dev/releases/1.8/)

~~~
arthursilva
Reading it put a smile in my face. Looking forward to the final release.

~~~
stefantalpalaru
Now 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/#backward...](https://docs.djangoproject.com/en/dev/releases/1.8/#backwards-
incompatible-changes-in-1-8)

~~~
jMyles
Right. 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
Is 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
You 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.

------
mangeletti
Since 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
Just 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
Django 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.

------
Alex3917
This 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.

~~~
e12e
> I remember five years ago when you could make enormous amounts of money if
> you knew how to send a tweet

What? Do you mean programatically send a tweet based on some event? I think
you can still make money from that.

> ten years ago when you could make enormous amounts of money if you knew how
> to install anti-virus software

Still don't know what you're talking about. While the demography that had
difficulty installing anti-virus on their windows box 10 years ago, now get a
bare-bones anti-virus bundled with windows 8 -- this same demographic still
need help with a lot of the same things they needed help with 10 years ago. So
I'm not quite sure what you think have changed?

------
larrik
Anyone know if there will be an official guide for moving between LTS
releases? (1.4 > 1.8)

~~~
jsmeaton
No, 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
Wow, 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)

------
asdf1234
Is there a specific asset pipeline library that most people that use Django
recommend? I'm mainly concerned with filename asset fingerprinting.

~~~
mkolodny
Django 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/staticfile...](https://docs.djangoproject.com/en/1.7/ref/contrib/staticfiles/#cachedstaticfilesstorage)
[2] [https://mike.tig.as/blog/2011/12/22/django-14-first-
thoughts...](https://mike.tig.as/blog/2011/12/22/django-14-first-thoughts-
cachedstaticfilesstorage/)

------
collyw
I only upgraded to 1.7 a month or two back.....

Still sounds good.

~~~
JshWright
The 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
it 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
I 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?

~~~
nnain
I 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.

~~~
noobhater1000
not to mention the vast number of packages, documentation and questions and
answers on stack overflow for just about every topic that exists.

rest api's (no out of the box support but plenty of documentation to make your
own or just go with Django-rest-framework)

Built in administration system/back end.

easy cache plugins, middleware extensions,

GIS support with Geo-Django

~~~
getup8
I think this has been my biggest annoyance with Flask to date. Searching
Google/SO on issues I run into provide far fewer results (and often none that
directly answer my question) than Django.

Still probably think Flask is worth learning first though as it gets you
closer to the Python core and hoping if I switch back to Django the transition
will be easy enough.

