Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Initial draft of 1.2 beta release notes.

git-svn-id: http://code.djangoproject.com/svn/django/trunk@12388 bcc190cf-cafb-0310-a4f2-bffc1f526a37
  • Loading branch information...
commit 7f975df129f2f664178d5f9d32c94cba70f75174 1 parent 091a631
@ubernostrum ubernostrum authored
Showing with 218 additions and 0 deletions.
  1. +218 −0 docs/releases/1.2-beta-1.txt
View
218 docs/releases/1.2-beta-1.txt
@@ -0,0 +1,218 @@
+.. _releases-1.2-beta-1:
+
+===============================
+Django 1.2 beta 1 release notes
+===============================
+
+February 5, 2010
+
+Welcome to Django 1.2 beta 1!
+
+This is the second in a series of preview/development releases leading
+up to the eventual release of Django 1.2, currently scheduled to take
+place in March 2010. This release is primarily targeted at developers
+who are interested in trying out new features and testing the Django
+codebase to help identify and resolve bugs prior to the final 1.2
+release.
+
+As such, this release is *not* intended for production use, and any
+such use is discouraged.
+
+This document covers changes since the Django 1.2 alpha release; the
+:ref:`1.2 alpha release notes <releases-1.2-alpha-1>` cover new and
+updated features in Django between 1.1 and 1.2 alpha.
+
+
+What's new in 1.2 beta
+======================
+
+This 1.2 beta release marks the final feature freeze for Django 1.2;
+while most feature development was completed for 1.2 alpha (which
+constituted a freeze on major features), a few other new features were
+added afterward and so are new as of 1.2 beta.
+
+Additionally, some existing APIs have been deprecated; under `our API
+stability policy <misc-api-stability>`, these APIs will continue to
+work for now, but will raise ``PendingDeprecationWarning`` in Django
+1.2 and ``DeprecationWarning`` in Django 1.3, before being removed in
+Django 1.4.
+
+
+Class-based test runners
+------------------------
+
+Django 1.2 changes the test runner tools to use a class-based
+approach. Old style function-based test runners will still work, but
+should be updated to use the new :ref:`class-based runners
+<topics-testing-test_runner>`.
+
+
+``Feed`` in ``django.contrib.syndication.feeds``
+------------------------------------------------
+
+The :class:`django.contrib.syndication.feeds.Feed` class is being
+replaced by the :class:`django.contrib.syndication.views.Feed` class.
+The old ``feeds.Feed`` class is deprecated, and will be removed in
+Django 1.4.
+
+The new class has an almost identical API, but allows instances to be
+used as views. For example, consider the use of the old framework in
+the following :ref:`URLconf <topics-http-urls>`::
+
+ from django.conf.urls.defaults import *
+ from myproject.feeds import LatestEntries, LatestEntriesByCategory
+
+ feeds = {
+ 'latest': LatestEntries,
+ 'categories': LatestEntriesByCategory,
+ }
+
+ urlpatterns = patterns('',
+ # ...
+ (r'^feeds/(?P<url>.*)/$', 'django.contrib.syndication.views.feed',
+ {'feed_dict': feeds}),
+ # ...
+ )
+
+Using the new Feed class, these feeds can be deployed directly as views::
+
+ from django.conf.urls.defaults import *
+ from myproject.feeds import LatestEntries, LatestEntriesByCategory
+
+ urlpatterns = patterns('',
+ # ...
+ (r'^feeds/latest/$', LatestEntries()),
+ (r'^feeds/categories/(?P<category_id>\d+)/$', LatestEntriesByCategory()),
+ # ...
+ )
+
+If you currently use the ``feed()`` view, the ``LatestEntries`` class
+would not need to be modified apart from subclassing the new
+:class:`~django.contrib.syndication.views.Feed` class.
+
+However, ``LatestEntriesByCategory`` uses the ``get_object()`` method
+with the ``bits`` argument to specify a specific category to show. In
+the new :class:`~django.contrib.syndication.views.Feed` class,
+``get_object()`` method takes a ``request`` and arguments from the
+URL, so it would look like this::
+
+ from django.contrib.syndication.views import Feed
+ from django.shortcuts import get_object_or_404
+ from myproject.models import Category
+
+ class LatestEntriesByCategory(Feed):
+ def get_object(self, request, category_id):
+ return get_object_or_404(Category, id=category_id)
+
+ # ...
+
+Additionally, the ``get_feed()`` method on ``Feed`` classes now take
+different arguments, which may impact you if you use the ``Feed``
+classes directly. Instead of just taking an optional ``url`` argument,
+it now takes two arguments: the object returned by its own
+``get_object()`` method, and the current ``request`` object.
+
+To take into account ``Feed`` classes not being initialized for each
+request, the ``__init__()`` method now takes no arguments by default.
+Previously it would have taken the ``slug`` from the URL and the
+``request`` object.
+
+In accordance with `RSS best practices`_, RSS feeds will now include
+an ``atom:link`` element. You may need to update your tests to take
+this into account.
+
+For more information, see the full :ref:`syndication framework
+documentation <ref-contrib-syndication>`.
+
+.. _RSS best practices: http://www.rssboard.org/rss-profile
+
+
+Cookie encoding
+---------------
+
+Due to cookie-handling bugs in Internet Explorer, Safari, and possibly
+other browsers, our encoding of cookie values was changed so that the
+characters comma (',') and semi-colon (';') are treated as non-safe
+characters, and are therefore encoded as ``\054`` and ``\073``
+respectively. This could produce backwards incompatibilities if you
+are relying on the ability to set these characters directly in cookie
+values.
+
+
+Object-level permissions
+------------------------
+
+A foundation for specifying permissions at the per-object level has
+been added. The default authentication backends shipped with Django do
+not make use of this, but third-party authentication backends are free
+to do so. See the :ref:`authentication docs <topics-auth>` for more
+information.
+
+Permissions for anonymous users
+-------------------------------
+
+If you provide a custom authentication backend with the attribute
+``supports_anonymous_user`` set to ``True``, the ``AnonymousUser``
+class will check the backend for permissions, just as the normal
+``User`` does. This is intended to help centralize permission
+handling; apps can always delegate the question of whether something
+is allowed or not to the authorization/authentication system. See the
+:ref:`authentication docs <topics-auth>` for more details.
+
+
+The Django 1.2 roadmap
+======================
+
+Before the final Django 1.2 release, at least one additional
+preview/development releases will be made available. The current
+schedule consists of at least the following:
+
+* Week of **March 2, 2010**: First Django 1.2 release
+ candidate. String freeze for translations.
+
+* Week of **March 9, 2010**: Django 1.2 final release.
+
+If necessary, additional beta or release-candidate packages will be
+issued prior to the final 1.2 release. Django 1.2 will be released
+approximately one week after the final release candidate.
+
+
+What you can do to help
+=======================
+
+In order to provide a high-quality 1.2 release, we need your
+help. Although this beta release is, again, *not* intended for
+production use, you can help the Django team by trying out the beta
+codebase in a safe test environment and reporting any bugs or issues
+you encounter. The Django ticket tracker is the central place to
+search for open issues:
+
+ * http://code.djangoproject.com/timeline
+
+Please open new tickets if no existing ticket corresponds to a problem
+you're running into.
+
+Additionally, discussion of Django development, including progress
+toward the 1.2 release, takes place daily on the django-developers
+mailing list:
+
+ * http://groups.google.com/group/django-developers
+
+... and in the ``#django-dev`` IRC channel on ``irc.freenode.net``. If
+... you're
+interested in helping out with Django's development, feel free to join the
+discussions there.
+
+Django's online documentation also includes pointers on how to
+contribute to Django:
+
+ * :ref:`How to contribute to Django <internals-contributing>`
+
+Contributions on any level -- developing code, writing documentation
+or simply triaging tickets and helping to test proposed bugfixes --
+are always welcome and appreciated.
+
+Development sprints for Django 1.2 will also be taking place at PyCon
+US 2010, on the dedicated sprint days (February 22 through 25), and
+anyone who wants to help out is welcome to join in, either in person
+at PyCon or virtually in the IRC channel or on the mailing list.

0 comments on commit 7f975df

Please sign in to comment.
Something went wrong with that request. Please try again.