1 ================================
2 Django 1.0 alpha release notes
3 ================================
5 Welcome to Django 1.0 alpha!
7 This is the first in a series of preview/development releases leading
8 up to the eventual release of Django 1.0, currently scheduled to take
9 place in early September 2008. This release is primarily targeted at
10 developers who are interested in testing the Django codebase and
11 helping to identify and resolve bugs prior to the final 1.0 release.
13 As such, this release is *not* intended for production use, and any
14 such use is strongly discouraged.
17 What's new in Django 1.0 alpha
18 ==============================
20 Django's development trunk has been the site of nearly constant
21 activity over the past year, with several major new features landing
22 since the 0.96 release. Some of the highlights include:
24 Refactored admin application (newforms-admin)
25 The Django administrative interface (``django.contrib.admin``) has
26 been completely refactored; admin definitions are now completely
27 decoupled from model definitions (no more ``class Admin``
28 declaration in models!), rewritten to use Django's new
29 form-handling library (introduced in the 0.96 release as
30 ``django.newforms``, and now available as simply ``django.forms``)
31 and redesigned with extensibility and customization in mind. Full
32 documentation for the admin application is available online in the
33 official Django documentation:
35 http://www.djangoproject.com/documentation/admin/
37 Improved Unicode handling
38 Django's internals have been refactored to use Unicode throughout;
39 this drastically simplifies the task of dealing with
40 non-Western-European content and data in Django. Additionally,
41 utility functions have been provided to ease interoperability with
42 third-party libraries and systems which may or may not handle
43 Unicode gracefully. Details are available in Django's
44 Unicode-handling documentation:
46 http://www.djangoproject.com/documentation/unicode/
48 An improved Django ORM
49 Django's object-relational mapper -- the component which provides
50 the mapping between Django model classes and your database, and
51 which mediates your database queries -- has been dramatically
52 improved by a massive refactoring. For most users of Django this
53 is backwards-compatible; the public-facing API for database
54 querying underwent a few minor changes, but most of the updates
55 took place in the ORM's internals. A guide to the changes,
56 including backwards-incompatible modifications and mentions of new
57 features opened up by this refactoring, is available on the Django
60 http://code.djangoproject.com/wiki/QuerysetRefactorBranch
62 Automatic escaping of template variables
63 To provide improved security against cross-site scripting (XSS)
64 vulnerabilities, Django's template system now automatically
65 escapes the output of variables. This behavior is configurable,
66 and allows both variables and larger template constructs to be
67 marked as safe (requiring no escaping) or unsafe (requiring
68 escaping). A full guide to this feature is in the documentation
69 for the Django template system:
71 http://www.djangoproject.com/documentation/templates/#automatic-html-escaping
73 There are many more new features, many bugfixes and many enhancements
74 to existing features from previous releases. The ``newforms`` library,
75 for example, has undergone massive improvements including several
76 useful add-ons in ``django.contrib`` which complement and build on
77 Django's form-handling capabilities, and Django's file-uploading
78 handlers have been refactored to allow finer-grained control over the
79 uploading process as well as streaming uploads of large files.
81 Along with these improvements and additions, we've made a number of
82 of backwards-incompatible changes to the framework, as features have been
83 fleshed out and APIs have been finalized for the 1.0 release. A
84 complete guide to these changes will be available as part of the final
85 Django 1.0 release, and a comprehensive list of backwards-incompatible
86 changes is also available on the Django wiki for those who want to
87 begin developing and testing their upgrade process:
89 http://code.djangoproject.com/wiki/BackwardsIncompatibleChanges
92 The Django 1.0 roadmap
93 ======================
95 One of the primary goals of this alpha release is to focus attention
96 on the remaining features to be implemented for Django 1.0, and on the
97 bugs that need to be resolved before the final release. Following
98 this release, we'll be conducting a series of sprints building up to a
99 series of beta releases and a release-candidate stage, followed soon
100 after by Django 1.0. The timeline is projected to be:
102 * August 1, 2008: Sprint (based in Washington, DC, and online).
104 * August 5, 2008: Django 1.0 beta 1 release. This will also constitute
105 the feature freeze for 1.0. Any feature to be included in 1.0 must
106 be completed and in trunk by this time.
108 * August 8, 2008: Sprint (based in Lawrence, KS, and online).
110 * August 12, 2008: Django 1.0 beta 2 release.
112 * August 15, 2008: Sprint (based in Austin, TX, and online).
114 * August 19, 2008: Django 1.0 release candidate 1.
116 * August 22, 2008: Sprint (based in Portland, OR, and online).
118 * August 26, 2008: Django 1.0 release candidate 2.
120 * September 2, 2008: Django 1.0 final release. The official Django 1.0
121 release party will take place during the first-ever DjangoCon, to be
122 held in Mountain View, CA, September 6-7.
124 Of course, like any estimated timeline, this is subject to change as
125 requirements dictate. The latest information will always be available
126 on the Django project wiki:
128 http://code.djangoproject.com/wiki/VersionOneRoadmap
131 What you can do to help
132 =======================
134 In order to provide a high-quality 1.0 release, we need your
135 help. Although this alpha release is, again, *not* intended for
136 production use, you can help the Django team by trying out the alpha
137 codebase in a safe test environment and reporting any bugs or issues
138 you encounter. The Django ticket tracker is the central place to
139 search for open issues:
141 http://code.djangoproject.com/timeline
143 Please open new tickets if no existing ticket corresponds to a problem
146 Additionally, discussion of Django development, including progress
147 toward the 1.0 release, takes place daily on the django-developers
150 http://groups.google.com/group/django-developers
152 ...and in the ``#django-dev`` IRC channel on ``irc.freenode.net``. If
153 you're interested in helping out with Django's development, feel free
154 to join the discussions there.
156 Django's online documentation also includes pointers on how to
157 contribute to Django:
159 http://www.djangoproject.com/documentation/contributing/
161 Contributions on any level -- developing code, writing
162 documentation or simply triaging tickets and helping to test proposed
163 bugfixes -- are always welcome and appreciated.