mirror of
				https://github.com/django/django.git
				synced 2025-10-31 09:41:08 +00:00 
			
		
		
		
	git-svn-id: http://code.djangoproject.com/svn/django/trunk@15892 bcc190cf-cafb-0310-a4f2-bffc1f526a37
		
			
				
	
	
		
			180 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			180 lines
		
	
	
		
			8.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| ===========================
 | |
| Django Deprecation Timeline
 | |
| ===========================
 | |
| 
 | |
| This document outlines when various pieces of Django will be removed, following
 | |
| their deprecation, as per the :ref:`Django deprecation policy
 | |
| <internal-release-deprecation-policy>`
 | |
| 
 | |
|     * 1.3
 | |
|         * ``AdminSite.root()``.  This release will remove the old method for
 | |
|           hooking up admin URLs.  This has been deprecated since the 1.1
 | |
|           release.
 | |
| 
 | |
|         * Authentication backends need to define the boolean attributes
 | |
|           ``supports_object_permissions`` and ``supports_anonymous_user``.
 | |
|           The old backend style is deprecated since the 1.2 release.
 | |
| 
 | |
|         * The :mod:`django.contrib.gis.db.backend` module, including the
 | |
|           ``SpatialBackend`` interface, is deprecated since the 1.2 release.
 | |
| 
 | |
|     * 1.4
 | |
|         * ``CsrfResponseMiddleware``.  This has been deprecated since the 1.2
 | |
|           release, in favour of the template tag method for inserting the CSRF
 | |
|           token.  ``CsrfMiddleware``, which combines ``CsrfResponseMiddleware``
 | |
|           and ``CsrfViewMiddleware``, is also deprecated.
 | |
| 
 | |
|         * The old imports for CSRF functionality (``django.contrib.csrf.*``),
 | |
|           which moved to core in 1.2, will be removed.
 | |
| 
 | |
|         * ``SMTPConnection``. The 1.2 release deprecated the ``SMTPConnection``
 | |
|           class in favor of a generic E-mail backend API.
 | |
| 
 | |
|         * The many to many SQL generation functions on the database backends
 | |
|           will be removed.
 | |
| 
 | |
|         * The ability to use the ``DATABASE_*`` family of top-level settings to
 | |
|           define database connections will be removed.
 | |
| 
 | |
|         * The ability to use shorthand notation to specify a database backend
 | |
|           (i.e., ``sqlite3`` instead of ``django.db.backends.sqlite3``) will be
 | |
|           removed.
 | |
| 
 | |
|         * The ``get_db_prep_save``, ``get_db_prep_value`` and
 | |
|           ``get_db_prep_lookup`` methods on Field were modified in 1.2
 | |
|           to support multiple databases. In 1.4, the support functions
 | |
|           that allow methods with the old prototype to continue
 | |
|           working will be removed.
 | |
| 
 | |
|         * The ``Message`` model (in ``django.contrib.auth``), its related
 | |
|           manager in the ``User`` model (``user.message_set``), and the
 | |
|           associated methods (``user.message_set.create()`` and
 | |
|           ``user.get_and_delete_messages()``), which have
 | |
|           been deprecated since the 1.2 release, will be removed.  The
 | |
|           :doc:`messages framework </ref/contrib/messages>` should be used
 | |
|           instead.
 | |
| 
 | |
|         * Authentication backends need to support the ``obj`` parameter for
 | |
|           permission checking. The ``supports_object_permissions`` variable
 | |
|           is not checked any longer and can be removed.
 | |
| 
 | |
|         * Authentication backends need to support the ``AnonymousUser``
 | |
|           being passed to all methods dealing with permissions.
 | |
|           The ``supports_anonymous_user`` variable is not checked any
 | |
|           longer and can be removed.
 | |
| 
 | |
|         * The ability to specify a callable template loader rather than a
 | |
|           ``Loader`` class will be removed, as will the ``load_template_source``
 | |
|           functions that are included with the built in template loaders for
 | |
|           backwards compatibility. These have been deprecated since the 1.2
 | |
|           release.
 | |
| 
 | |
|         * ``django.utils.translation.get_date_formats()`` and
 | |
|           ``django.utils.translation.get_partial_date_formats()``. These
 | |
|           functions are replaced by the new locale aware formatting; use
 | |
|           ``django.utils.formats.get_format()`` to get the appropriate
 | |
|           formats.
 | |
| 
 | |
|         * In ``django.forms.fields``: ``DEFAULT_DATE_INPUT_FORMATS``,
 | |
|           ``DEFAULT_TIME_INPUT_FORMATS`` and
 | |
|           ``DEFAULT_DATETIME_INPUT_FORMATS``. Use
 | |
|           ``django.utils.formats.get_format()`` to get the appropriate
 | |
|           formats.
 | |
| 
 | |
|         * The ability to use a function-based test runners will be removed,
 | |
|           along with the ``django.test.simple.run_tests()`` test runner.
 | |
| 
 | |
|         * The ``views.feed()`` view and ``feeds.Feed`` class in
 | |
|           ``django.contrib.syndication`` have been deprecated since the 1.2
 | |
|           release. The class-based view ``views.Feed`` should be used instead.
 | |
| 
 | |
|         * ``django.core.context_processors.auth``.  This release will
 | |
|           remove the old method in favor of the new method in
 | |
|           ``django.contrib.auth.context_processors.auth``.  This has been
 | |
|           deprecated since the 1.2 release.
 | |
| 
 | |
|         * The ``postgresql`` database backend has been deprecated in favor of
 | |
|           the ``postgresql_psycopg2`` backend.
 | |
| 
 | |
|         * The ``no`` language code has been deprecated in favor of the ``nb``
 | |
|           language code.
 | |
| 
 | |
|         * Authentication backends need to define the boolean attribute
 | |
|           ``supports_inactive_user``.
 | |
| 
 | |
|         * ``django.db.models.fields.XMLField`` will be removed. This was
 | |
|           deprecated as part of the 1.3 release. An accelerated deprecation
 | |
|           schedule has been used because the field hasn't performed any role
 | |
|           beyond that of a simple ``TextField`` since the removal of oldforms.
 | |
|           All uses of ``XMLField`` can be replaced with ``TextField``.
 | |
| 
 | |
|     * 1.5
 | |
|         * The ``mod_python`` request handler has been deprecated since the 1.3
 | |
|           release. The ``mod_wsgi`` handler should be used instead.
 | |
| 
 | |
|         * The ``template`` attribute on :class:`~django.test.client.Response`
 | |
|           objects returned by the :ref:`test client <test-client>` has been
 | |
|           deprecated since the 1.3 release. The
 | |
|           :attr:`~django.test.client.Response.templates` attribute should be
 | |
|           used instead.
 | |
| 
 | |
|         * The features of the :class:`django.test.simple.DjangoTestRunner`
 | |
|           (including fail-fast and Ctrl-C test termination) can now be provided
 | |
|           by the unittest-native :class:`TextTestRunner`. The
 | |
|           :class:`~django.test.simple.DjangoTestRunner` will be removed in
 | |
|           favor of using the unittest-native class.
 | |
| 
 | |
|         * The undocumented function
 | |
|           :func:`django.contrib.formtools.utils.security_hash`
 | |
|           is deprecated, in favour of :func:`django.contrib.formtools.utils.form_hmac`
 | |
| 
 | |
|         * The function-based generic views have been deprecated in
 | |
|           favor of their class-based cousins. The following modules
 | |
|           will be removed:
 | |
| 
 | |
|               * :mod:`django.views.generic.create_update`
 | |
|               * :mod:`django.views.generic.date_based`
 | |
|               * :mod:`django.views.generic.list_detail`
 | |
|               * :mod:`django.views.generic.simple`
 | |
| 
 | |
|         * The :class:`~django.core.servers.basehttp.AdminMediaHandler` has
 | |
|           been deprecated in favor of the
 | |
|           :class:`~django.contrib.staticfiles.handlers.StaticFilesHandler`.
 | |
| 
 | |
|         * The :ttag:`url` and :ttag:`ssi` template tags will be
 | |
|           modified so that the first argument to each tag is a
 | |
|           template variable, not an implied string. The new-style
 | |
|           behavior is provided in the ``future`` template tag library.
 | |
| 
 | |
|         * The :djadmin:`reset` and :djadmin:`sqlreset` management commands
 | |
|           are deprecated.
 | |
| 
 | |
|         * Authentication backends need to support a inactive user
 | |
|           being passed to all methods dealing with permissions.
 | |
|           The ``supports_inactive_user`` variable is not checked any
 | |
|           longer and can be removed.
 | |
| 
 | |
|         * :meth:`~django.contrib.gis.geos.GEOSGeometry.transform` will raise
 | |
|           a :class:`~django.contrib.gis.geos.GEOSException` when called
 | |
|           on a geometry with no SRID value.
 | |
| 
 | |
|         * :class:`~django.http.CompatCookie` will be removed in favour of
 | |
|           :class:`~django.http.SimpleCookie`.
 | |
| 
 | |
|         * :class:`django.core.context_processors.PermWrapper` and
 | |
|           :class:`django.core.context_processors.PermLookupDict`
 | |
|           will be moved to :class:`django.contrib.auth.context_processors.PermWrapper`
 | |
|           and :class:`django.contrib.auth.context_processors.PermLookupDict`,
 | |
|           respectively.
 | |
| 
 | |
|         * The ``MEDIA_URL`` or ``STATIC_URL`` settings are required to end
 | |
|           with a trailing slash to ensure there is a consistent way to
 | |
|           combine paths in templates.
 | |
| 
 | |
|     * 2.0
 | |
|         * ``django.views.defaults.shortcut()``. This function has been moved
 | |
|           to ``django.contrib.contenttypes.views.shortcut()`` as part of the
 | |
|           goal of removing all ``django.contrib`` references from the core
 | |
|           Django codebase. The old shortcut will be removed in the 2.0
 | |
|           release.
 |