summaryrefslogtreecommitdiff
path: root/docs/misc/api-stability.txt
diff options
context:
space:
mode:
Diffstat (limited to 'docs/misc/api-stability.txt')
-rw-r--r--docs/misc/api-stability.txt168
1 files changed, 84 insertions, 84 deletions
diff --git a/docs/misc/api-stability.txt b/docs/misc/api-stability.txt
index 3ff563dc67..75fa6b4418 100644
--- a/docs/misc/api-stability.txt
+++ b/docs/misc/api-stability.txt
@@ -12,24 +12,24 @@ What "stable" means
In this context, stable means:
- - All the public APIs -- everything documented in the linked documents below,
- and all methods that don't begin with an underscore -- will not be moved or
- renamed without providing backwards-compatible aliases.
+- All the public APIs -- everything documented in the linked documents below,
+ and all methods that don't begin with an underscore -- will not be moved or
+ renamed without providing backwards-compatible aliases.
- - If new features are added to these APIs -- which is quite possible --
- they will not break or change the meaning of existing methods. In other
- words, "stable" does not (necessarily) mean "complete."
+- If new features are added to these APIs -- which is quite possible --
+ they will not break or change the meaning of existing methods. In other
+ words, "stable" does not (necessarily) mean "complete."
- - If, for some reason, an API declared stable must be removed or replaced, it
- will be declared deprecated but will remain in the API for at least two
- minor version releases. Warnings will be issued when the deprecated method
- is called.
+- If, for some reason, an API declared stable must be removed or replaced, it
+ will be declared deprecated but will remain in the API for at least two
+ minor version releases. Warnings will be issued when the deprecated method
+ is called.
- See :ref:`official-releases` for more details on how Django's version
- numbering scheme works, and how features will be deprecated.
+ See :ref:`official-releases` for more details on how Django's version
+ numbering scheme works, and how features will be deprecated.
- - We'll only break backwards compatibility of these APIs if a bug or
- security hole makes it completely unavoidable.
+- We'll only break backwards compatibility of these APIs if a bug or
+ security hole makes it completely unavoidable.
Stable APIs
===========
@@ -38,58 +38,58 @@ In general, everything covered in the documentation -- with the exception of
anything in the :doc:`internals area </internals/index>` is considered stable as
of 1.0. This includes these APIs:
- - :doc:`Authorization </topics/auth>`
+- :doc:`Authorization </topics/auth>`
- - :doc:`Caching </topics/cache>`.
+- :doc:`Caching </topics/cache>`.
- - :doc:`Model definition, managers, querying and transactions
- </topics/db/index>`
+- :doc:`Model definition, managers, querying and transactions
+ </topics/db/index>`
- - :doc:`Sending email </topics/email>`.
+- :doc:`Sending email </topics/email>`.
- - :doc:`File handling and storage </topics/files>`
+- :doc:`File handling and storage </topics/files>`
- - :doc:`Forms </topics/forms/index>`
+- :doc:`Forms </topics/forms/index>`
- - :doc:`HTTP request/response handling </topics/http/index>`, including file
- uploads, middleware, sessions, URL resolution, view, and shortcut APIs.
+- :doc:`HTTP request/response handling </topics/http/index>`, including file
+ uploads, middleware, sessions, URL resolution, view, and shortcut APIs.
- - :doc:`Generic views </topics/http/generic-views>`.
+- :doc:`Generic views </topics/http/generic-views>`.
- - :doc:`Internationalization </topics/i18n/index>`.
+- :doc:`Internationalization </topics/i18n/index>`.
- - :doc:`Pagination </topics/pagination>`
+- :doc:`Pagination </topics/pagination>`
- - :doc:`Serialization </topics/serialization>`
+- :doc:`Serialization </topics/serialization>`
- - :doc:`Signals </topics/signals>`
+- :doc:`Signals </topics/signals>`
- - :doc:`Templates </topics/templates>`, including the language, Python-level
- :doc:`template APIs </ref/templates/index>`, and :doc:`custom template tags
- and libraries </howto/custom-template-tags>`. We may add new template
- tags in the future and the names may inadvertently clash with
- external template tags. Before adding any such tags, we'll ensure that
- Django raises an error if it tries to load tags with duplicate names.
+- :doc:`Templates </topics/templates>`, including the language, Python-level
+ :doc:`template APIs </ref/templates/index>`, and :doc:`custom template tags
+ and libraries </howto/custom-template-tags>`. We may add new template
+ tags in the future and the names may inadvertently clash with
+ external template tags. Before adding any such tags, we'll ensure that
+ Django raises an error if it tries to load tags with duplicate names.
- - :doc:`Testing </topics/testing>`
+- :doc:`Testing </topics/testing>`
- - :doc:`django-admin utility </ref/django-admin>`.
+- :doc:`django-admin utility </ref/django-admin>`.
- - :doc:`Built-in middleware </ref/middleware>`
+- :doc:`Built-in middleware </ref/middleware>`
- - :doc:`Request/response objects </ref/request-response>`.
+- :doc:`Request/response objects </ref/request-response>`.
- - :doc:`Settings </ref/settings>`. Note, though that while the :doc:`list of
- built-in settings </ref/settings>` can be considered complete we may -- and
- probably will -- add new settings in future versions. This is one of those
- places where "'stable' does not mean 'complete.'"
+- :doc:`Settings </ref/settings>`. Note, though that while the :doc:`list of
+ built-in settings </ref/settings>` can be considered complete we may -- and
+ probably will -- add new settings in future versions. This is one of those
+ places where "'stable' does not mean 'complete.'"
- - :doc:`Built-in signals </ref/signals>`. Like settings, we'll probably add
- new signals in the future, but the existing ones won't break.
+- :doc:`Built-in signals </ref/signals>`. Like settings, we'll probably add
+ new signals in the future, but the existing ones won't break.
- - :doc:`Unicode handling </ref/unicode>`.
+- :doc:`Unicode handling </ref/unicode>`.
- - Everything covered by the :doc:`HOWTO guides </howto/index>`.
+- Everything covered by the :doc:`HOWTO guides </howto/index>`.
``django.utils``
----------------
@@ -97,15 +97,15 @@ of 1.0. This includes these APIs:
Most of the modules in ``django.utils`` are designed for internal use. Only
the following parts of :doc:`django.utils </ref/utils>` can be considered stable:
- - ``django.utils.cache``
- - ``django.utils.datastructures.SortedDict`` -- only this single class; the
- rest of the module is for internal use.
- - ``django.utils.encoding``
- - ``django.utils.feedgenerator``
- - ``django.utils.http``
- - ``django.utils.safestring``
- - ``django.utils.translation``
- - ``django.utils.tzinfo``
+- ``django.utils.cache``
+- ``django.utils.datastructures.SortedDict`` -- only this single class; the
+ rest of the module is for internal use.
+- ``django.utils.encoding``
+- ``django.utils.feedgenerator``
+- ``django.utils.http``
+- ``django.utils.safestring``
+- ``django.utils.translation``
+- ``django.utils.tzinfo``
Exceptions
==========
@@ -142,13 +142,13 @@ APIs marked as internal
Certain APIs are explicitly marked as "internal" in a couple of ways:
- - Some documentation refers to internals and mentions them as such. If the
- documentation says that something is internal, we reserve the right to
- change it.
+- Some documentation refers to internals and mentions them as such. If the
+ documentation says that something is internal, we reserve the right to
+ change it.
- - Functions, methods, and other objects prefixed by a leading underscore
- (``_``). This is the standard Python way of indicating that something is
- private; if any method starts with a single ``_``, it's an internal API.
+- Functions, methods, and other objects prefixed by a leading underscore
+ (``_``). This is the standard Python way of indicating that something is
+ private; if any method starts with a single ``_``, it's an internal API.
.. _misc-api-stability-localflavor:
@@ -174,29 +174,29 @@ database -- including values that may no longer be valid.
Therefore, Django has the following policy with respect to changes in
local flavor:
- * At the time of a Django release, the data and algorithms
- contained in :mod:`django.contrib.localflavor` will, to the best
- of our ability, reflect the officially gazetted policies of the
- appropriate local government authority. If a province has been
- added, altered, or removed, that change will be reflected in
- Django's localflavor.
-
- * These changes will *not* be backported to the previous stable
- release. Upgrading a minor version of Django should not require
- any data migration or audits for UI changes; therefore, if you
- want to get the latest province list, you will either need to
- upgrade your Django install, or backport the province list you
- need.
-
- * For one release, the affected localflavor module will raise a
- ``RuntimeWarning`` when it is imported.
-
- * The change will be announced in the release notes as a backwards
- incompatible change requiring attention. The change will also be
- annotated in the documentation for the localflavor module.
-
- * Where necessary and feasible, a migration script will be provided
- to aid the migration process.
+* At the time of a Django release, the data and algorithms
+ contained in :mod:`django.contrib.localflavor` will, to the best
+ of our ability, reflect the officially gazetted policies of the
+ appropriate local government authority. If a province has been
+ added, altered, or removed, that change will be reflected in
+ Django's localflavor.
+
+* These changes will *not* be backported to the previous stable
+ release. Upgrading a minor version of Django should not require
+ any data migration or audits for UI changes; therefore, if you
+ want to get the latest province list, you will either need to
+ upgrade your Django install, or backport the province list you
+ need.
+
+* For one release, the affected localflavor module will raise a
+ ``RuntimeWarning`` when it is imported.
+
+* The change will be announced in the release notes as a backwards
+ incompatible change requiring attention. The change will also be
+ annotated in the documentation for the localflavor module.
+
+* Where necessary and feasible, a migration script will be provided
+ to aid the migration process.
For example, Django 1.2 contains an Indonesian localflavor. It has a
province list that includes "Nanggroe Aceh Darussalam (NAD)" as a