What's new in Django 1.0?
September 2008
18 months
3080 commits, 1505 files changed, 285516 insertions(+), 99315 deletions(-)
Malcolm, Adrian, Russell, Jacob
Slide 3
Slide 3 text
EVERYTHING
What's new in Django 1.0?
September 2008
Slide 4
Slide 4 text
Unicode by default
Template auto escaping
Newforms by default Total admin rewrite
Queryset refactor
Storage backends
GIS
What's new in Django 1.0?
Django wouldn't be the same without…
Slide 5
Slide 5 text
Total contrib.comments rewrite
Jython support
What's new in Django 1.0?
Maybe we shouldn't have been so excited about…
Slide 6
Slide 6 text
Paginator
MultipleObjectsReturned
What's new in Django 1.0?
It's the little things in life…
DecimalField
Dict access to response headers
Slide 7
Slide 7 text
What's new in Django 1.1?
July 2009
10 months
1291 commits, 942 files changed, 95220 insertions(+), 35647 deletions(-)
Malcolm, Russell, Jacob, Karen
Slide 8
Slide 8 text
Aggregates
F()
Transactions in tests
Admin actions
What's new in Django 1.1?
Django wouldn't be the same without…
Unmanaged models
Slide 9
Slide 9 text
URL Namespaces
What's new in Django 1.1?
Maybe we shouldn't have been so excited about…
Slide 10
Slide 10 text
What's new in Django 1.1?
It's the little things in life…
{% empty %}
Slide 11
Slide 11 text
What's new in Django 1.2?
May 2010
10 months
1165 commits, 1322 files changed, 154617 insertions(+), 41590 deletions(-)
Russell, Jannis, Luke, Karen
Slide 12
Slide 12 text
ME!
What's new in Django 1.2?
May 2010
Slide 13
Slide 13 text
Multiple databases
CSRF rewrite
contrib.messages
Email backends
What's new in Django 1.2?
Django wouldn't be the same without…
Slide 14
Slide 14 text
"As a side effect, it is now much easier to support non-
Django template languages."
"A foundation for specifying permissions at the per-object
level has been added."
What's new in Django 1.2?
Maybe we shouldn't have been so excited about…
Slide 15
Slide 15 text
Cached template loader
{% if foo < bar %}
What's new in Django 1.2?
It's the little things in life…
--failfast
Slide 16
Slide 16 text
What's new in Django 1.3?
March 2011
10 months
1590 commits, 3523 files changed, 429793 insertions(+), 296206 deletions(-)
Russell, Jannis, Alex, Luke
Slide 17
Slide 17 text
Class-based views
settings.LOGGING
contrib.staticfiles
What's new in Django 1.3?
Django wouldn't be the same without…
Slide 18
Slide 18 text
ValidationError: ManagementForm data is missing or has
been tampered with
What's new in Django 1.3?
Maybe we shouldn't have been so excited about…
Slide 19
Slide 19 text
What's new in Django 1.3?
It's the little things in life…
{% include … with … only %}
render()
RequestFactory()
Calling functions consistently in templates
Slide 20
Slide 20 text
What's new in Django 1.4?
March 2012
12 months
1689 commits, 4067 files changed, 313692 insertions(+), 142840 deletions(-)
Jannis, Aymeric, Ramiro, Luke
Slide 21
Slide 21 text
Timezone support
What's new in Django 1.4?
Django wouldn't be the same without…
Timezone support
Timezone support
Timezone support
Timezone support
Timezone support
Slide 22
Slide 22 text
bulk_create()
PBKDF2
Project layout
Selenium
What's new in Django 1.4?
Django wouldn't be the same without…
prefetch_related()
Sensitive post parameters
wsgi.py
Slide 23
Slide 23 text
New form wizard
What's new in Django 1.4?
Maybe we shouldn't have been so excited about…
Slide 24
Slide 24 text
Plaintext 500 for ajax
assertHTMLEqual()
What's new in Django 1.4?
It's the little things in life…
{% elif %}
DISTINCT ON
reverse_lazy
Grouped manage.py help
Slide 25
Slide 25 text
What's new in Django 1.5?
February 2013
11 months
1853 commits, 3823 files changed, 164853 insertions(+), 153265 deletions(-)
Claude, Aymeric, Tim, Anssi
Slide 26
Slide 26 text
Pluggable User models
update_fields
Python 3
What's new in Django 1.5?
Django wouldn't be the same without…
Streaming HTTP Responses
Slide 27
Slide 27 text
… I've run out of hindsight
What's new in Django 1.5?
Maybe we shouldn't have been so excited about…
Slide 28
Slide 28 text
What's new in Django 1.5?
It's the little things in life…
{% if True %}
request.body
django.utils.text.slugify
cleaned_data on invalid forms
LOGIN_URL accepts url names
index_together
Slide 29
Slide 29 text
What's new in Django 1.6?
November 2013
9 months
2259 commits, 5497 files changed, 227580 insertions(+), 402846 deletions(-)
Aymeric, Tim, Claude, Anssi
Slide 30
Slide 30 text
For Malcolm
What's new in Django 1.6?
November 2013
Slide 31
Slide 31 text
Persistent database connections
./manage.py check
Transaction management
What's new in Django 1.6?
Django wouldn't be the same without…
Faster model saving
Test discovery
JSON session serializer
Slide 32
Slide 32 text
What's new in Django 1.6?
It's the little things in life…
qs.first()
Deployment checklist
HTML5 inputs
Admin preserves filters
Slide 33
Slide 33 text
What's new in Django 1.7?
September 2014
10 months
3146 commits, 4590 files changed, 221832 insertions(+), 124929 deletions(-)
Tim, Andrew, Aymeric, Claude
Slide 34
Slide 34 text
Prefetch objects
Queryset.as_manager()
Migrations
What's new in Django 1.7?
Django wouldn't be the same without…
Improved form errors
App loading refactor
Custom lookups
Slide 35
Slide 35 text
What's new in Django 1.7?
It's the little things in life…
@admin.site.register
HttpRequest.scheme
Form clean doesn't have to return data
Customisable empty_label
HTTPS test client
Slide 36
Slide 36 text
What's new in Django 1.8?
April 2015
7 months
2726 commits, 4864 files changed, 131781 insertions(+), 197462 deletions(-)
Tim, Claude, Aymeric, Andrew
Slide 37
Slide 37 text
Django-secure
setUpTestData
Template Engines
What's new in Django 1.8?
Django wouldn't be the same without…
Contrib.postgres
Model._meta
UUID and Timedelta
Expressions
Slide 38
Slide 38 text
What's new in Django 1.8?
It's the little things in life…
refresh_from_db
--keepdb --reverse --debug-sql
More care with model types in ORM
MySQL microseconds
Cleaner GIS
Fixed default max_length
Slide 39
Slide 39 text
What's new in Django 1.9?
Scheduled December 2015
8 months
1209 commits, 1319 files changed, 54483 insertions(+), 41497 deletions(-)
Tim, Claude, Aymeric, Markus
Slide 40
Slide 40 text
???
Transaction commit signals
What's new in Django 1.9?
Django wouldn't be the same without…
More contrib.postgres
Permission mixins
Password validation
URLs rewrite?
???
Composite fields?
???
???
Slide 41
Slide 41 text
What's new in Django 1.9?
It's the little things in life…
client.force_login()
Test extensions?
Test client json
Chainable date lookups
???
???
???
???