PageRenderTime 103ms CodeModel.GetById 60ms app.highlight 1ms RepoModel.GetById 39ms app.codeStats 0ms

/docs/releases/1.2-beta-1.txt

https://code.google.com/p/mango-py/
Plain Text | 173 lines | 122 code | 51 blank | 0 comment | 0 complexity | 4c637b3ea89922c98a48bef06ce42f9a MD5 | raw file
  1===============================
  2Django 1.2 beta 1 release notes
  3===============================
  4
  5February 5, 2010
  6
  7Welcome to Django 1.2 beta 1!
  8
  9This is the second in a series of preview/development releases leading
 10up to the eventual release of Django 1.2, currently scheduled to take
 11place in March 2010. This release is primarily targeted at developers
 12who are interested in trying out new features and testing the Django
 13codebase to help identify and resolve bugs prior to the final 1.2
 14release.
 15
 16As such, this release is *not* intended for production use, and any
 17such use is discouraged.
 18
 19This document covers changes since the Django 1.2 alpha release; the
 20:doc:`1.2 alpha release notes </releases/1.2-alpha-1>` cover new and
 21updated features in Django between 1.1 and 1.2 alpha.
 22
 23
 24Deprecations and other changes in 1.2 beta
 25==========================================
 26
 27This beta release deprecates two portions of public API, and
 28introduces a potentially backwards-incompatible change to
 29another. Under :doc:`our API stability policy </misc/api-stability>`,
 30deprecation proceeds over multiple release cycles: initially, the
 31deprecated API will raise ``PendingDeprecationWarning``, followed by
 32raising ``DeprecationWarning`` in the next release, and finally
 33removal of the deprecated API in the release after that. APIs
 34beginning the deprecation process in Django 1.2 will be removed in the
 35Django 1.4 release.
 36
 37
 38Unit test runners
 39-----------------
 40
 41Django 1.2 changes the test runner tools to use a class-based
 42approach. Old style function-based test runners will still work, but
 43should be updated to use the new :ref:`class-based runners
 44<topics-testing-test_runner>`.
 45
 46
 47Syndication feeds
 48-----------------
 49
 50The :class:`django.contrib.syndication.feeds.Feed` class is being
 51replaced by the :class:`django.contrib.syndication.views.Feed` class.
 52The old ``feeds.Feed`` class is deprecated. The new class has an
 53almost identical API, but allows instances to be used as views.
 54
 55Also, in accordance with `RSS best practices`_, RSS feeds will now
 56include an ``atom:link`` element. You may need to update your tests to
 57take this into account.
 58
 59For more information, see the full :doc:`syndication framework
 60documentation </ref/contrib/syndication>`.
 61
 62.. _RSS best practices: http://www.rssboard.org/rss-profile
 63
 64
 65Cookie encoding
 66---------------
 67
 68Due to cookie-handling bugs in Internet Explorer, Safari, and possibly
 69other browsers, Django's encoding of cookie values was changed so that
 70the characters comma (',') and semi-colon (';') are treated as
 71non-safe characters, and are therefore encoded as ``\054`` and
 72``\073`` respectively. This could produce backwards incompatibilities
 73if you are relying on the ability to set these characters directly in
 74cookie values.
 75
 76
 77What's new in 1.2 beta
 78======================
 79
 80This 1.2 beta release marks the final feature freeze for Django 1.2;
 81while most feature development was completed for 1.2 alpha (which
 82constituted a freeze on major features), a few other new features were
 83added afterward and so are new as of 1.2 beta.
 84
 85
 86Object-level permissions
 87------------------------
 88
 89A foundation for specifying permissions at the per-object level was
 90added in Django 1.2 alpha but not documented with the alpha release.
 91
 92The default authentication backends shipped with Django do not
 93currently make use of this, but third-party authentication backends
 94are free to do so. See the :doc:`authentication docs </topics/auth>`
 95for more information.
 96
 97
 98Permissions for anonymous users
 99-------------------------------
100
101If you provide a custom authentication backend with the attribute
102``supports_anonymous_user`` set to ``True``, the ``AnonymousUser``
103class will check the backend for permissions, just as the normal
104``User`` does. This is intended to help centralize permission
105handling; apps can always delegate the question of whether something
106is allowed or not to the authorization/authentication system. See the
107:doc:`authentication docs </topics/auth>` for more details.
108
109
110``select_related()`` improvements
111---------------------------------
112
113The ``select_related()`` method of ``QuerySet`` now accepts the
114``related_name`` of a reverse one-to-one relation in the list of
115fields to select. One-to-one relations will not, however, be traversed
116by a depth-based ``select_related()`` call.
117
118
119The Django 1.2 roadmap
120======================
121
122Before the final Django 1.2 release, at least one additional
123preview/development releases will be made available. The current
124schedule consists of at least the following:
125
126* Week of **March 2, 2010**: First Django 1.2 release
127  candidate. String freeze for translations.
128
129* Week of **March 9, 2010**: Django 1.2 final release.
130
131If necessary, additional beta or release-candidate packages will be
132issued prior to the final 1.2 release. Django 1.2 will be released
133approximately one week after the final release candidate.
134
135
136What you can do to help
137=======================
138
139In order to provide a high-quality 1.2 release, we need your
140help. Although this beta release is, again, *not* intended for
141production use, you can help the Django team by trying out the beta
142codebase in a safe test environment and reporting any bugs or issues
143you encounter. The Django ticket tracker is the central place to
144search for open issues:
145
146    * http://code.djangoproject.com/timeline
147
148Please open new tickets if no existing ticket corresponds to a problem
149you're running into.
150
151Additionally, discussion of Django development, including progress
152toward the 1.2 release, takes place daily on the django-developers
153mailing list:
154
155    * http://groups.google.com/group/django-developers
156
157... and in the ``#django-dev`` IRC channel on ``irc.freenode.net``. If you're
158interested in helping out with Django's development, feel free to join the
159discussions there.
160
161Django's online documentation also includes pointers on how to
162contribute to Django:
163
164    * :doc:`How to contribute to Django </internals/contributing>`
165
166Contributions on any level -- developing code, writing documentation
167or simply triaging tickets and helping to test proposed bugfixes --
168are always welcome and appreciated.
169
170Development sprints for Django 1.2 will also be taking place at PyCon
171US 2010, on the dedicated sprint days (February 22 through 25), and
172anyone who wants to help out is welcome to join in, either in person
173at PyCon or virtually in the IRC channel or on the mailing list.