PageRenderTime 21ms CodeModel.GetById 18ms app.highlight 1ms RepoModel.GetById 1ms app.codeStats 0ms

Plain Text | 124 lines | 93 code | 31 blank | 0 comment | 0 complexity | dc63cb08d66ed4e6f1bc8c2fc803efa8 MD5 | raw file
  2Django version 0.95 release notes
  5Welcome to the Django 0.95 release.
  7This represents a significant advance in Django development since the 0.91
  8release in January 2006. The details of every change in this release would be
  9too extensive to list in full, but a summary is presented below.
 11Suitability and API stability
 14This release is intended to provide a stable reference point for developers
 15wanting to work on production-level applications that use Django.
 17However, it's not the 1.0 release, and we'll be introducing further changes
 18before 1.0. For a clear look at which areas of the framework will change (and
 19which ones will *not* change) before 1.0, see the api-stability.txt file, which
 20lives in the docs/ directory of the distribution.
 22You may have a need to use some of the features that are marked as
 23"subject to API change" in that document, but that's OK with us as long as it's
 24OK with you, and as long as you understand APIs may change in the future.
 26Fortunately, most of Django's core APIs won't be changing before version 1.0.
 27There likely won't be as big of a change between 0.95 and 1.0 versions as there
 28was between 0.91 and 0.95.
 30Changes and new features
 33The major changes in this release (for developers currently using the 0.91
 34release) are a result of merging the 'magic-removal' branch of development.
 35This branch removed a number of constraints in the way Django code had to be
 36written that were a consequence of decisions made in the early days of Django,
 37prior to its open-source release. It's now possible to write more natural,
 38Pythonic code that works as expected, and there's less "black magic" happening
 39behind the scenes.
 41Aside from that, another main theme of this release is a dramatic increase in
 42usability. We've made countless improvements in error messages, documentation,
 43etc., to improve developers' quality of life.
 45The new features and changes introduced in 0.95 include:
 47    * Django now uses a more consistent and natural filtering interface for
 48      retrieving objects from the database.
 50    * User-defined models, functions and constants now appear in the module
 51      namespace they were defined in. (Previously everything was magically
 52      transferred to the django.models.* namespace.)
 54    * Some optional applications, such as the FlatPage, Sites and Redirects
 55      apps, have been decoupled and moved into django.contrib. If you don't
 56      want to use these applications, you no longer have to install their
 57      database tables.
 59    * Django now has support for managing database transactions.
 61    * We've added the ability to write custom authentication and authorization
 62      backends for authenticating users against alternate systems, such as
 63      LDAP.
 65    * We've made it easier to add custom table-level functions to models,
 66      through a new "Manager" API.
 68    * It's now possible to use Django without a database. This simply means
 69      that the framework no longer requires you to have a working database set
 70      up just to serve dynamic pages. In other words, you can just use
 71      URLconfs/views on their own. Previously, the framework required that a
 72      database be configured, regardless of whether you actually used it.
 74    * It's now more explicit and natural to override save() and delete()
 75      methods on models, rather than needing to hook into the pre_save() and
 76      post_save() method hooks.
 78    * Individual pieces of the framework now can be configured without
 79      requiring the setting of an environment variable. This permits use of,
 80      for example, the Django templating system inside other applications.
 82    * More and more parts of the framework have been internationalized, as
 83      we've expanded internationalization (i18n) support. The Django
 84      codebase, including code and templates, has now been translated, at least
 85      in part, into 31 languages. From Arabic to Chinese to Hungarian to Welsh,
 86      it is now possible to use Django's admin site in your native language.
 88The number of changes required to port from 0.91-compatible code to the 0.95
 89code base are significant in some cases. However, they are, for the most part,
 90reasonably routine and only need to be done once. A list of the necessary
 91changes is described in the `Removing The Magic`_ wiki page. There is also an
 92easy checklist_ for reference when undertaking the porting operation.
 94.. _Removing The Magic:
 95.. _checklist:
 97Problem reports and getting help
100Need help resolving a problem with Django? The documentation in the distribution
101is also available online_ at the `Django Web site`_. The :doc:`FAQ </faq/index>`
102document is especially recommended, as it contains a number of issues that come
103up time and again.
105For more personalized help, the `django-users`_ mailing list is a very active
106list, with more than 2,000 subscribers who can help you solve any sort of
107Django problem. We recommend you search the archives first, though, because
108many common questions appear with some regularity, and any particular problem
109may already have been answered.
111Finally, for those who prefer the more immediate feedback offered by IRC,
112there's a #django channel on that is regularly populated by
113Django users and developers from around the world. Friendly people are usually
114available at any hour of the day -- to help, or just to chat.
116.. _online:
117.. _Django Web site:
118.. _django-users:
120Thanks for using Django!
122The Django Team
123July 2006