|
1 ================================ |
|
2 Django 1.0 alpha release notes |
|
3 ================================ |
|
4 |
|
5 Welcome to Django 1.0 alpha! |
|
6 |
|
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. |
|
12 |
|
13 As such, this release is *not* intended for production use, and any |
|
14 such use is strongly discouraged. |
|
15 |
|
16 |
|
17 What's new in Django 1.0 alpha |
|
18 ============================== |
|
19 |
|
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: |
|
23 |
|
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: |
|
34 |
|
35 :doc:`admin reference </ref/contrib/admin/index>` |
|
36 |
|
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: |
|
45 |
|
46 :doc:`unicode reference </ref/unicode>` |
|
47 |
|
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 |
|
58 wiki: |
|
59 |
|
60 http://code.djangoproject.com/wiki/QuerysetRefactorBranch |
|
61 |
|
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 :ttag:`autoescape` tag. |
|
70 |
|
71 There are many more new features, many bugfixes and many enhancements |
|
72 to existing features from previous releases. The ``newforms`` library, |
|
73 for example, has undergone massive improvements including several |
|
74 useful add-ons in ``django.contrib`` which complement and build on |
|
75 Django's form-handling capabilities, and Django's file-uploading |
|
76 handlers have been refactored to allow finer-grained control over the |
|
77 uploading process as well as streaming uploads of large files. |
|
78 |
|
79 Along with these improvements and additions, we've made a number of |
|
80 of backwards-incompatible changes to the framework, as features have been |
|
81 fleshed out and APIs have been finalized for the 1.0 release. A |
|
82 complete guide to these changes will be available as part of the final |
|
83 Django 1.0 release, and a comprehensive list of backwards-incompatible |
|
84 changes is also available on the Django wiki for those who want to |
|
85 begin developing and testing their upgrade process: |
|
86 |
|
87 http://code.djangoproject.com/wiki/BackwardsIncompatibleChanges |
|
88 |
|
89 |
|
90 The Django 1.0 roadmap |
|
91 ====================== |
|
92 |
|
93 One of the primary goals of this alpha release is to focus attention |
|
94 on the remaining features to be implemented for Django 1.0, and on the |
|
95 bugs that need to be resolved before the final release. Following |
|
96 this release, we'll be conducting a series of sprints building up to a |
|
97 series of beta releases and a release-candidate stage, followed soon |
|
98 after by Django 1.0. The timeline is projected to be: |
|
99 |
|
100 * August 1, 2008: Sprint (based in Washington, DC, and online). |
|
101 |
|
102 * August 5, 2008: Django 1.0 beta 1 release. This will also constitute |
|
103 the feature freeze for 1.0. Any feature to be included in 1.0 must |
|
104 be completed and in trunk by this time. |
|
105 |
|
106 * August 8, 2008: Sprint (based in Lawrence, KS, and online). |
|
107 |
|
108 * August 12, 2008: Django 1.0 beta 2 release. |
|
109 |
|
110 * August 15, 2008: Sprint (based in Austin, TX, and online). |
|
111 |
|
112 * August 19, 2008: Django 1.0 release candidate 1. |
|
113 |
|
114 * August 22, 2008: Sprint (based in Portland, OR, and online). |
|
115 |
|
116 * August 26, 2008: Django 1.0 release candidate 2. |
|
117 |
|
118 * September 2, 2008: Django 1.0 final release. The official Django 1.0 |
|
119 release party will take place during the first-ever DjangoCon, to be |
|
120 held in Mountain View, CA, September 6-7. |
|
121 |
|
122 Of course, like any estimated timeline, this is subject to change as |
|
123 requirements dictate. The latest information will always be available |
|
124 on the Django project wiki: |
|
125 |
|
126 http://code.djangoproject.com/wiki/VersionOneRoadmap |
|
127 |
|
128 |
|
129 What you can do to help |
|
130 ======================= |
|
131 |
|
132 In order to provide a high-quality 1.0 release, we need your |
|
133 help. Although this alpha release is, again, *not* intended for |
|
134 production use, you can help the Django team by trying out the alpha |
|
135 codebase in a safe test environment and reporting any bugs or issues |
|
136 you encounter. The Django ticket tracker is the central place to |
|
137 search for open issues: |
|
138 |
|
139 http://code.djangoproject.com/timeline |
|
140 |
|
141 Please open new tickets if no existing ticket corresponds to a problem |
|
142 you're running into. |
|
143 |
|
144 Additionally, discussion of Django development, including progress |
|
145 toward the 1.0 release, takes place daily on the django-developers |
|
146 mailing list: |
|
147 |
|
148 http://groups.google.com/group/django-developers |
|
149 |
|
150 ...and in the ``#django-dev`` IRC channel on ``irc.freenode.net``. If |
|
151 you're interested in helping out with Django's development, feel free |
|
152 to join the discussions there. |
|
153 |
|
154 Django's online documentation also includes pointers on how to |
|
155 contribute to Django: |
|
156 |
|
157 :doc:`contributing to Django </internals/contributing>` |
|
158 |
|
159 Contributions on any level -- developing code, writing |
|
160 documentation or simply triaging tickets and helping to test proposed |
|
161 bugfixes -- are always welcome and appreciated. |