1
0
mirror of https://github.com/django/django.git synced 2025-08-09 11:29:13 +00:00

Removed versionadded/changed annotations for 4.2.

This also removes remaining versionadded/changed annotations for older
versions.
This commit is contained in:
Mariusz Felisiak 2023-09-11 09:57:44 +02:00
parent 590a31eb10
commit 295467c04a
55 changed files with 0 additions and 346 deletions

View File

@ -125,8 +125,6 @@ obtain an alternative name.
Use your custom storage engine Use your custom storage engine
============================== ==============================
.. versionadded:: 4.2
The first step to using your custom storage with Django is to tell Django about The first step to using your custom storage with Django is to tell Django about
the file storage backend you'll be using. This is done using the the file storage backend you'll be using. This is done using the
:setting:`STORAGES` setting. This setting maps storage aliases, which are a way :setting:`STORAGES` setting. This setting maps storage aliases, which are a way

View File

@ -306,10 +306,6 @@ following attributes and methods:
re.compile(r"API|TOKEN|KEY|SECRET|PASS|SIGNATURE|HTTP_COOKIE", flags=re.IGNORECASE) re.compile(r"API|TOKEN|KEY|SECRET|PASS|SIGNATURE|HTTP_COOKIE", flags=re.IGNORECASE)
.. versionchanged:: 4.2
``HTTP_COOKIE`` was added.
.. method:: is_active(request) .. method:: is_active(request)
Returns ``True`` to activate the filtering in Returns ``True`` to activate the filtering in

View File

@ -106,10 +106,6 @@ provide storage backends for many common file storage APIs. A good starting
point is the `overview at djangopackages.org point is the `overview at djangopackages.org
<https://djangopackages.org/grids/g/storage-backends/>`_. <https://djangopackages.org/grids/g/storage-backends/>`_.
.. versionchanged:: 4.2
The :setting:`STORAGES` setting was added.
Learn more Learn more
========== ==========

View File

@ -262,11 +262,6 @@ documentation:
also need to define a reference to the documentation for that environment also need to define a reference to the documentation for that environment
variable using :rst:dir:`.. envvar:: <envvar>`. variable using :rst:dir:`.. envvar:: <envvar>`.
.. versionchanged:: 4.2
All Python code blocks in the Django documentation were reformatted with
:pypi:`blacken-docs`.
Django-specific markup Django-specific markup
====================== ======================

View File

@ -2142,10 +2142,6 @@ forms or widgets depending on ``django.jQuery`` must specify
``js=['admin/js/jquery.init.js', …]`` when :ref:`declaring form media assets ``js=['admin/js/jquery.init.js', …]`` when :ref:`declaring form media assets
<assets-as-a-static-definition>`. <assets-as-a-static-definition>`.
.. versionchanged:: 4.2
jQuery was upgraded from 3.6.0 to 3.6.4.
.. versionchanged:: 5.0 .. versionchanged:: 5.0
jQuery was upgraded from 3.6.4 to 3.7.1. jQuery was upgraded from 3.6.4 to 3.7.1.

View File

@ -716,10 +716,6 @@ Utility functions
backend's ``get_user()`` method, or if the session auth hash doesn't backend's ``get_user()`` method, or if the session auth hash doesn't
validate. validate.
.. versionchanged:: 4.1.8
Fallback verification with :setting:`SECRET_KEY_FALLBACKS` was added.
.. versionchanged:: 5.0 .. versionchanged:: 5.0
``aget_user()`` function was added. ``aget_user()`` function was added.

View File

@ -354,8 +354,6 @@ are returned unchanged.
``FromWKB`` ``FromWKB``
=========== ===========
.. versionadded:: 4.2
.. class:: FromWKB(expression, **extra) .. class:: FromWKB(expression, **extra)
*Availability*: MariaDB, `MySQL *Availability*: MariaDB, `MySQL
@ -367,8 +365,6 @@ Creates geometry from `Well-known binary (WKB)`_ representation.
``FromWKT`` ``FromWKT``
=========== ===========
.. versionadded:: 4.2
.. class:: FromWKT(expression, **extra) .. class:: FromWKT(expression, **extra)
*Availability*: MariaDB, `MySQL *Availability*: MariaDB, `MySQL
@ -421,8 +417,6 @@ intersection between them.
``IsEmpty`` ``IsEmpty``
=========== ===========
.. versionadded:: 4.2
.. class:: IsEmpty(expr) .. class:: IsEmpty(expr)
*Availability*: `PostGIS <https://postgis.net/docs/ST_IsEmpty.html>`__ *Availability*: `PostGIS <https://postgis.net/docs/ST_IsEmpty.html>`__

View File

@ -1282,10 +1282,6 @@ blue.
>>> rst.name # Stored in a random path in the vsimem filesystem. >>> rst.name # Stored in a random path in the vsimem filesystem.
'/vsimem/da300bdb-129d-49a8-b336-e410a9428dad' '/vsimem/da300bdb-129d-49a8-b336-e410a9428dad'
.. versionchanged:: 4.2
Support for :class:`pathlib.Path` ``ds_input`` was added.
.. attribute:: name .. attribute:: name
The name of the source which is equivalent to the input file path or the name The name of the source which is equivalent to the input file path or the name

View File

@ -23,10 +23,6 @@ __ https://dev.maxmind.com/geoip/geolite2-free-geolocation-data
__ https://db-ip.com/db/lite.php __ https://db-ip.com/db/lite.php
__ https://github.com/maxmind/libmaxminddb/ __ https://github.com/maxmind/libmaxminddb/
.. versionchanged:: 4.2
Support for ``.mmdb`` files downloaded from DB-IP was added.
Example Example
======= =======

View File

@ -351,8 +351,6 @@ SpatiaLite ``Intersects(poly, geom)``
``isempty`` ``isempty``
----------- -----------
.. versionadded:: 4.2
*Availability*: `PostGIS <https://postgis.net/docs/ST_IsEmpty.html>`__ *Availability*: `PostGIS <https://postgis.net/docs/ST_IsEmpty.html>`__
Tests if the geometry is empty. Tests if the geometry is empty.

View File

@ -22,10 +22,6 @@ platform-specific instructions if you are on :ref:`macos` or :ref:`windows`.
.. _PostGIS requirements: https://postgis.net/docs/postgis_installation.html#install_requirements .. _PostGIS requirements: https://postgis.net/docs/postgis_installation.html#install_requirements
.. _build from source: https://postgis.net/docs/postgis_installation.html#install_short_version .. _build from source: https://postgis.net/docs/postgis_installation.html#install_short_version
.. versionchanged:: 4.2
Support for ``psycopg`` 3.1.8+ was added.
Post-installation Post-installation
================= =================

View File

@ -60,8 +60,3 @@ Would output::
When the ``fields`` parameter is not specified, the ``geojson`` serializer adds When the ``fields`` parameter is not specified, the ``geojson`` serializer adds
a ``pk`` key to the ``properties`` dictionary with the primary key of the a ``pk`` key to the ``properties`` dictionary with the primary key of the
object as the value. object as the value.
.. versionchanged:: 4.2
The ``id`` key for serialized features was added. Also, the ``id_field``
option was added to the ``geojson`` serializer.

View File

@ -196,11 +196,6 @@ the SQL operator ``&&``. For example:
>>> Post.objects.filter(tags__overlap=Post.objects.values_list("tags")) >>> Post.objects.filter(tags__overlap=Post.objects.values_list("tags"))
<QuerySet [<Post: First post>, <Post: Second post>, <Post: Third post>]> <QuerySet [<Post: First post>, <Post: Second post>, <Post: Third post>]>
.. versionchanged:: 4.2
Support for ``QuerySet.values()`` and ``values_list()`` as a right-hand
side was added.
.. fieldlookup:: arrayfield.len .. fieldlookup:: arrayfield.len
``len`` ``len``

View File

@ -61,8 +61,6 @@ The ``trigram_word_similar`` lookup can be used on
``trigram_strict_word_similar`` ``trigram_strict_word_similar``
------------------------------- -------------------------------
.. versionadded:: 4.2
Similar to :lookup:`trigram_word_similar`, except that it forces extent Similar to :lookup:`trigram_word_similar`, except that it forces extent
boundaries to match word boundaries. boundaries to match word boundaries.

View File

@ -378,8 +378,6 @@ Usage example:
.. class:: TrigramStrictWordSimilarity(string, expression, **extra) .. class:: TrigramStrictWordSimilarity(string, expression, **extra)
.. versionadded:: 4.2
Accepts a string or expression, and a field name or expression. Returns the Accepts a string or expression, and a field name or expression. Returns the
trigram strict word similarity between the two arguments. Similar to trigram strict word similarity between the two arguments. Similar to
:class:`TrigramWordSimilarity() <TrigramWordSimilarity>`, except that it forces :class:`TrigramWordSimilarity() <TrigramWordSimilarity>`, except that it forces
@ -436,7 +434,5 @@ Usage example:
.. class:: TrigramStrictWordDistance(string, expression, **extra) .. class:: TrigramStrictWordDistance(string, expression, **extra)
.. versionadded:: 4.2
Accepts a string or expression, and a field name or expression. Returns the Accepts a string or expression, and a field name or expression. Returns the
trigram strict word distance between the two arguments. trigram strict word distance between the two arguments.

View File

@ -316,8 +316,6 @@ Note:
.. method:: Sitemap.get_languages_for_item(item) .. method:: Sitemap.get_languages_for_item(item)
.. versionadded:: 4.2
**Optional.** A method that returns the sequence of language codes for **Optional.** A method that returns the sequence of language codes for
which the item is displayed. By default which the item is displayed. By default
:meth:`~Sitemap.get_languages_for_item` returns :meth:`~Sitemap.get_languages_for_item` returns

View File

@ -345,15 +345,8 @@ argument. For example::
commented out. This :ticket:`may crash on the nonexistent paths <21080>`. commented out. This :ticket:`may crash on the nonexistent paths <21080>`.
You should check and eventually strip comments. You should check and eventually strip comments.
.. versionchanged:: 4.2
Experimental optional support for finding paths to JavaScript modules in
``import`` and ``export`` statements was added.
.. attribute:: storage.ManifestStaticFilesStorage.manifest_hash .. attribute:: storage.ManifestStaticFilesStorage.manifest_hash
.. versionadded:: 4.2
This attribute provides a single hash that changes whenever a file in the This attribute provides a single hash that changes whenever a file in the
manifest changes. This can be useful to communicate to SPAs that the assets on manifest changes. This can be useful to communicate to SPAs that the assets on
the server have changed (due to a new deployment). the server have changed (due to a new deployment).

View File

@ -122,10 +122,6 @@ Django supports PostgreSQL 12 and higher. `psycopg`_ 3.1.8+ or `psycopg2`_
Support for ``psycopg2`` is likely to be deprecated and removed at some Support for ``psycopg2`` is likely to be deprecated and removed at some
point in the future. point in the future.
.. versionchanged:: 4.2
Support for ``psycopg`` 3.1.8+ was added.
.. _postgresql-connection-settings: .. _postgresql-connection-settings:
PostgreSQL connection settings PostgreSQL connection settings
@ -223,17 +219,11 @@ configuration in :setting:`DATABASES`::
.. _isolation level: https://www.postgresql.org/docs/current/transaction-iso.html .. _isolation level: https://www.postgresql.org/docs/current/transaction-iso.html
.. versionchanged:: 4.2
``IsolationLevel`` was added.
.. _database-role: .. _database-role:
Role Role
---- ----
.. versionadded:: 4.2
If you need to use a different role for database connections than the role use If you need to use a different role for database connections than the role use
to establish the connection, set it in the :setting:`OPTIONS` part of your to establish the connection, set it in the :setting:`OPTIONS` part of your
database configuration in :setting:`DATABASES`:: database configuration in :setting:`DATABASES`::
@ -253,8 +243,6 @@ database configuration in :setting:`DATABASES`::
Server-side parameters binding Server-side parameters binding
------------------------------ ------------------------------
.. versionadded:: 4.2
With `psycopg`_ 3.1.8+, Django defaults to the :ref:`client-side binding With `psycopg`_ 3.1.8+, Django defaults to the :ref:`client-side binding
cursors <psycopg:client-side-binding-cursors>`. If you want to use the cursors <psycopg:client-side-binding-cursors>`. If you want to use the
:ref:`server-side binding <psycopg:server-side-binding>` set it in the :ref:`server-side binding <psycopg:server-side-binding>` set it in the

View File

@ -744,11 +744,6 @@ Generate migration files without Django version and timestamp header.
Makes ``makemigrations`` exit with a non-zero status when model changes without Makes ``makemigrations`` exit with a non-zero status when model changes without
migrations are detected. migrations are detected.
.. versionchanged:: 4.2
In older versions, the missing migrations were also created when using the
``--check`` option.
.. django-admin-option:: --scriptable .. django-admin-option:: --scriptable
Diverts log output and input prompts to ``stderr``, writing only paths of Diverts log output and input prompts to ``stderr``, writing only paths of
@ -756,8 +751,6 @@ generated migration files to ``stdout``.
.. django-admin-option:: --update .. django-admin-option:: --update
.. versionadded:: 4.2
Merges model changes into the latest migration and optimize the resulting Merges model changes into the latest migration and optimize the resulting
operations. operations.

View File

@ -47,8 +47,6 @@ Django core exception classes are defined in ``django.core.exceptions``.
.. exception:: FullResultSet .. exception:: FullResultSet
.. versionadded:: 4.2
``FullResultSet`` may be raised during query generation if a query will ``FullResultSet`` may be raised during query generation if a query will
match everything. Most Django projects won't encounter this exception, but match everything. Most Django projects won't encounter this exception, but
it might be useful for implementing custom lookups and expressions. it might be useful for implementing custom lookups and expressions.
@ -102,10 +100,6 @@ Django core exception classes are defined in ``django.core.exceptions``.
a :class:`~django.http.HttpResponseBadRequest`. See the :doc:`logging a :class:`~django.http.HttpResponseBadRequest`. See the :doc:`logging
documentation </topics/logging/>` for more information. documentation </topics/logging/>` for more information.
.. versionchanged:: 3.2.18
``SuspiciousOperation`` is raised when too many files are submitted.
``PermissionDenied`` ``PermissionDenied``
-------------------- --------------------

View File

@ -11,8 +11,6 @@ Django provides convenient ways to access the default storage class:
.. data:: storages .. data:: storages
.. versionadded:: 4.2
Storage instances as defined by :setting:`STORAGES`. Storage instances as defined by :setting:`STORAGES`.
.. class:: DefaultStorage .. class:: DefaultStorage
@ -88,8 +86,6 @@ The ``FileSystemStorage`` class
The ``InMemoryStorage`` class The ``InMemoryStorage`` class
============================= =============================
.. versionadded:: 4.2
.. class:: InMemoryStorage(location=None, base_url=None, file_permissions_mode=None, directory_permissions_mode=None) .. class:: InMemoryStorage(location=None, base_url=None, file_permissions_mode=None, directory_permissions_mode=None)
The :class:`~django.core.files.storage.InMemoryStorage` class implements The :class:`~django.core.files.storage.InMemoryStorage` class implements

View File

@ -656,10 +656,6 @@ For each field, we describe the default widget used if you don't specify
``empty_value`` which work just as they do for :class:`CharField`. The ``empty_value`` which work just as they do for :class:`CharField`. The
``max_length`` argument defaults to 320 (see :rfc:`3696#section-3`). ``max_length`` argument defaults to 320 (see :rfc:`3696#section-3`).
.. versionchanged:: 3.2.20
The default value for ``max_length`` was changed to 320 characters.
``FileField`` ``FileField``
------------- -------------

View File

@ -199,11 +199,6 @@ This logging does not include framework-level initialization (e.g.
``SET TIMEZONE``). Turn on query logging in your database if you wish to view ``SET TIMEZONE``). Turn on query logging in your database if you wish to view
all database queries. all database queries.
.. versionchanged:: 4.2
Support for logging transaction management queries (``BEGIN``, ``COMMIT``,
and ``ROLLBACK``) was added.
.. _django-security-logger: .. _django-security-logger:
``django.security.*`` ``django.security.*``

View File

@ -118,10 +118,6 @@ GZip middleware
.. _breachattack.com: https://www.breachattack.com/ .. _breachattack.com: https://www.breachattack.com/
.. _Heal The Breach (HTB) paper: https://ieeexplore.ieee.org/document/9754554 .. _Heal The Breach (HTB) paper: https://ieeexplore.ieee.org/document/9754554
.. versionchanged:: 4.2
Mitigation for the BREACH attack was added.
The ``django.middleware.gzip.GZipMiddleware`` compresses content for browsers The ``django.middleware.gzip.GZipMiddleware`` compresses content for browsers
that understand GZip compression (all modern browsers). that understand GZip compression (all modern browsers).

View File

@ -91,8 +91,6 @@ option on the ``Meta`` subclass).
``AlterModelTableComment`` ``AlterModelTableComment``
-------------------------- --------------------------
.. versionadded:: 4.2
.. class:: AlterModelTableComment(name, table_comment) .. class:: AlterModelTableComment(name, table_comment)
Changes the model's table comment (the Changes the model's table comment (the

View File

@ -567,11 +567,6 @@ Usage example:
On Oracle, the SQL ``LOCALTIMESTAMP`` is used to avoid issues with casting On Oracle, the SQL ``LOCALTIMESTAMP`` is used to avoid issues with casting
``CURRENT_TIMESTAMP`` to ``DateTimeField``. ``CURRENT_TIMESTAMP`` to ``DateTimeField``.
.. versionchanged:: 4.2
Support for microsecond precision on MySQL and millisecond precision on
SQLite were added.
.. versionchanged:: 5.0 .. versionchanged:: 5.0
In older versions, the SQL ``CURRENT_TIMESTAMP`` was used on Oracle instead In older versions, the SQL ``CURRENT_TIMESTAMP`` was used on Oracle instead

View File

@ -282,8 +282,6 @@ is null) after companies that have been contacted::
Using ``F()`` with logical operations Using ``F()`` with logical operations
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. versionadded:: 4.2
``F()`` expressions that output ``BooleanField`` can be logically negated with ``F()`` expressions that output ``BooleanField`` can be logically negated with
the inversion operator ``~F()``. For example, to swap the activation status of the inversion operator ``~F()``. For example, to swap the activation status of
companies:: companies::
@ -876,10 +874,6 @@ from groups to be included:
NotImplementedError: Heterogeneous disjunctive predicates against window functions NotImplementedError: Heterogeneous disjunctive predicates against window functions
are not implemented when performing conditional aggregation. are not implemented when performing conditional aggregation.
.. versionchanged:: 4.2
Support for filtering against window functions was added.
Among Django's built-in database backends, MySQL, PostgreSQL, and Oracle Among Django's built-in database backends, MySQL, PostgreSQL, and Oracle
support window expressions. Support for different window expression features support window expressions. Support for different window expression features
varies among the different databases. For example, the options in varies among the different databases. For example, the options in
@ -1100,10 +1094,6 @@ calling the appropriate methods on the wrapped expression.
nested expressions. ``F()`` objects, in particular, hold a reference nested expressions. ``F()`` objects, in particular, hold a reference
to a column. to a column.
.. versionchanged:: 4.2
The ``alias=None`` keyword argument was removed.
.. method:: asc(nulls_first=None, nulls_last=None) .. method:: asc(nulls_first=None, nulls_last=None)
Returns the expression ready to be sorted in ascending order. Returns the expression ready to be sorted in ascending order.

View File

@ -392,8 +392,6 @@ scenes.
``db_comment`` ``db_comment``
-------------- --------------
.. versionadded:: 4.2
.. attribute:: Field.db_comment .. attribute:: Field.db_comment
The comment on the database column to use for this field. It is useful for The comment on the database column to use for this field. It is useful for
@ -740,10 +738,6 @@ The default form widget for this field is a :class:`~django.forms.TextInput`.
``max_length`` for some backends. Refer to the :doc:`database backend ``max_length`` for some backends. Refer to the :doc:`database backend
notes </ref/databases>` for details. notes </ref/databases>` for details.
.. versionchanged:: 4.2
Support for unlimited ``VARCHAR`` columns was added on PostgreSQL.
.. attribute:: CharField.db_collation .. attribute:: CharField.db_collation
Optional. The database collation name of the field. Optional. The database collation name of the field.
@ -2469,11 +2463,6 @@ Registering and fetching lookups
The API can be used to customize which lookups are available for a field class The API can be used to customize which lookups are available for a field class
and its instances, and how lookups are fetched from a field. and its instances, and how lookups are fetched from a field.
.. versionchanged:: 4.2
Support for registering lookups on :class:`~django.db.models.Field`
instances was added.
.. _model-field-attributes: .. _model-field-attributes:
========================= =========================

View File

@ -200,10 +200,6 @@ all of the instance's fields when a deferred field is reloaded::
A helper method that returns a set containing the attribute names of all those A helper method that returns a set containing the attribute names of all those
fields that are currently deferred for this model. fields that are currently deferred for this model.
.. versionchanged:: 4.2
``arefresh_from_db()`` method was added.
.. _validating-objects: .. _validating-objects:
Validating objects Validating objects
@ -426,10 +422,6 @@ method. See :ref:`overriding-model-methods` for more details.
The model save process also has some subtleties; see the sections below. The model save process also has some subtleties; see the sections below.
.. versionchanged:: 4.2
``asave()`` method was added.
Auto-incrementing primary keys Auto-incrementing primary keys
------------------------------ ------------------------------
@ -709,10 +701,6 @@ Sometimes with :ref:`multi-table inheritance <multi-table-inheritance>` you may
want to delete only a child model's data. Specifying ``keep_parents=True`` will want to delete only a child model's data. Specifying ``keep_parents=True`` will
keep the parent model's data. keep the parent model's data.
.. versionchanged:: 4.2
``adelete()`` method was added.
Pickling objects Pickling objects
================ ================

View File

@ -82,11 +82,6 @@ For a class to be a lookup, it must follow the :ref:`Query Expression API
<query-expression>`. :class:`~Lookup` and :class:`~Transform` naturally <query-expression>`. :class:`~Lookup` and :class:`~Transform` naturally
follow this API. follow this API.
.. versionchanged:: 4.2
Support for registering lookups on :class:`~django.db.models.Field`
instances was added.
.. _query-expression: .. _query-expression:
The Query Expression API The Query Expression API

View File

@ -94,8 +94,6 @@ Django quotes column and table names behind the scenes.
``db_table_comment`` ``db_table_comment``
-------------------- --------------------
.. versionadded:: 4.2
.. attribute:: Options.db_table_comment .. attribute:: Options.db_table_comment
The comment on the database table to use for this model. It is useful for The comment on the database table to use for this model. It is useful for

View File

@ -2353,11 +2353,6 @@ Like :meth:`get_or_create` and :meth:`create`, if you're using manually
specified primary keys and an object needs to be created but the key already specified primary keys and an object needs to be created but the key already
exists in the database, an :exc:`~django.db.IntegrityError` is raised. exists in the database, an :exc:`~django.db.IntegrityError` is raised.
.. versionchanged:: 4.2
In older versions, ``update_or_create()`` didn't specify ``update_fields``
when calling :meth:`Model.save() <django.db.models.Model.save>`.
.. versionchanged:: 5.0 .. versionchanged:: 5.0
The ``create_defaults`` argument was added. The ``create_defaults`` argument was added.

View File

@ -84,10 +84,6 @@ Related objects reference
dictionary and they will be evaluated once before creating any dictionary and they will be evaluated once before creating any
intermediate instance(s). intermediate instance(s).
.. versionchanged:: 4.2
``aadd()`` method was added.
.. method:: create(through_defaults=None, **kwargs) .. method:: create(through_defaults=None, **kwargs)
.. method:: acreate(through_defaults=None, **kwargs) .. method:: acreate(through_defaults=None, **kwargs)
@ -168,10 +164,6 @@ Related objects reference
For many-to-many relationships, the ``bulk`` keyword argument doesn't For many-to-many relationships, the ``bulk`` keyword argument doesn't
exist. exist.
.. versionchanged:: 4.2
``aremove()`` method was added.
.. method:: clear(bulk=True) .. method:: clear(bulk=True)
.. method:: aclear(bulk=True) .. method:: aclear(bulk=True)
@ -194,10 +186,6 @@ Related objects reference
For many-to-many relationships, the ``bulk`` keyword argument doesn't For many-to-many relationships, the ``bulk`` keyword argument doesn't
exist. exist.
.. versionchanged:: 4.2
``aclear()`` method was added.
.. method:: set(objs, bulk=True, clear=False, through_defaults=None) .. method:: set(objs, bulk=True, clear=False, through_defaults=None)
.. method:: aset(objs, bulk=True, clear=False, through_defaults=None) .. method:: aset(objs, bulk=True, clear=False, through_defaults=None)
@ -236,10 +224,6 @@ Related objects reference
dictionary and they will be evaluated once before creating any dictionary and they will be evaluated once before creating any
intermediate instance(s). intermediate instance(s).
.. versionchanged:: 4.2
``aset()`` method was added.
.. note:: .. note::
Note that ``add()``, ``aadd()``, ``create()``, ``acreate()``, Note that ``add()``, ``aadd()``, ``create()``, ``acreate()``,

View File

@ -1246,10 +1246,6 @@ with the following notable differences:
The :class:`HttpResponseBase` base class is common between The :class:`HttpResponseBase` base class is common between
:class:`HttpResponse` and :class:`StreamingHttpResponse`. :class:`HttpResponse` and :class:`StreamingHttpResponse`.
.. versionchanged:: 4.2
Support for asynchronous iteration was added.
Attributes Attributes
---------- ----------
@ -1280,8 +1276,6 @@ Attributes
.. attribute:: StreamingHttpResponse.is_async .. attribute:: StreamingHttpResponse.is_async
.. versionadded:: 4.2
Boolean indicating whether :attr:`StreamingHttpResponse.streaming_content` Boolean indicating whether :attr:`StreamingHttpResponse.streaming_content`
is an asynchronous iterator or not. is an asynchronous iterator or not.

View File

@ -128,8 +128,6 @@ Renames the model's table from ``old_db_table`` to ``new_db_table``.
``alter_db_table_comment()`` ``alter_db_table_comment()``
---------------------------- ----------------------------
.. versionadded:: 4.2
.. method:: BaseDatabaseSchemaEditor.alter_db_table_comment(model, old_db_table_comment, new_db_table_comment) .. method:: BaseDatabaseSchemaEditor.alter_db_table_comment(model, old_db_table_comment, new_db_table_comment)
Change the ``model``s table comment to ``new_db_table_comment``. Change the ``model``s table comment to ``new_db_table_comment``.

View File

@ -1067,8 +1067,6 @@ perform a similar check at that level.
``DATA_UPLOAD_MAX_NUMBER_FILES`` ``DATA_UPLOAD_MAX_NUMBER_FILES``
-------------------------------- --------------------------------
.. versionadded:: 3.2.18
Default: ``100`` Default: ``100``
The maximum number of files that may be received via POST in a The maximum number of files that may be received via POST in a
@ -2597,8 +2595,6 @@ See also the :doc:`/ref/checks` documentation.
``STORAGES`` ``STORAGES``
------------ ------------
.. versionadded:: 4.2
Default:: Default::
{ {

View File

@ -244,11 +244,6 @@ Outputs a whole load of debugging information, including the current context
and imported modules. ``{% debug %}`` outputs nothing when the :setting:`DEBUG` and imported modules. ``{% debug %}`` outputs nothing when the :setting:`DEBUG`
setting is ``False``. setting is ``False``.
.. versionchanged:: 2.2.27
In older versions, debugging information was displayed when the
:setting:`DEBUG` setting was ``False``.
.. templatetag:: extends .. templatetag:: extends
``extends`` ``extends``
@ -1803,11 +1798,6 @@ produce empty output:
Ordering by elements at specified index is not supported on dictionaries. Ordering by elements at specified index is not supported on dictionaries.
.. versionchanged:: 2.2.26
In older versions, ordering elements at specified index was supported on
dictionaries.
.. templatefilter:: dictsortreversed .. templatefilter:: dictsortreversed
``dictsortreversed`` ``dictsortreversed``

View File

@ -79,11 +79,6 @@ pattern (:py:func:`re.fullmatch` is used).
The ``view``, ``kwargs`` and ``name`` arguments are the same as for The ``view``, ``kwargs`` and ``name`` arguments are the same as for
:func:`~django.urls.path()`. :func:`~django.urls.path()`.
.. versionchanged:: 2.2.25
In older versions, a full-match wasn't required for a ``route`` which ends
with ``$``.
``include()`` ``include()``
============= =============

View File

@ -685,10 +685,6 @@ escaping HTML.
serialize the data. See :ref:`JSON serialization serialize the data. See :ref:`JSON serialization
<serialization-formats-json>` for more details about this serializer. <serialization-formats-json>` for more details about this serializer.
.. versionchanged:: 4.2
The ``encoder`` argument was added.
.. function:: strip_tags(value) .. function:: strip_tags(value)
Tries to remove anything that looks like an HTML tag from the string, that Tries to remove anything that looks like an HTML tag from the string, that
@ -742,8 +738,6 @@ escaping HTML.
.. function:: content_disposition_header(as_attachment, filename) .. function:: content_disposition_header(as_attachment, filename)
.. versionadded:: 4.2
Constructs a ``Content-Disposition`` HTTP header value from the given Constructs a ``Content-Disposition`` HTTP header value from the given
``filename`` as specified by :rfc:`6266`. Returns ``None`` if ``filename`` as specified by :rfc:`6266`. Returns ``None`` if
``as_attachment`` is ``False`` and ``filename`` is ``None``, otherwise ``as_attachment`` is ``False`` and ``filename`` is ``None``, otherwise

View File

@ -159,11 +159,6 @@ to, or in lieu of custom ``field.clean()`` methods.
validation, so you'd need to add them to the ``allowlist`` as validation, so you'd need to add them to the ``allowlist`` as
necessary. necessary.
.. versionchanged:: 3.2.20
In older versions, values longer than 320 characters could be
considered valid.
``URLValidator`` ``URLValidator``
---------------- ----------------
@ -190,16 +185,9 @@ to, or in lieu of custom ``field.clean()`` methods.
.. attribute:: max_length .. attribute:: max_length
.. versionadded:: 3.2.20
The maximum length of values that could be considered valid. Defaults The maximum length of values that could be considered valid. Defaults
to 2048 characters. to 2048 characters.
.. versionchanged:: 3.2.20
In older versions, values longer than 2048 characters could be
considered valid.
``validate_email`` ``validate_email``
------------------ ------------------

View File

@ -150,10 +150,6 @@ Transactions do not yet work in async mode. If you have a piece of code that
needs transactions behavior, we recommend you write that piece as a single needs transactions behavior, we recommend you write that piece as a single
synchronous function and call it using :func:`sync_to_async`. synchronous function and call it using :func:`sync_to_async`.
.. versionchanged:: 4.2
Asynchronous model and related manager interfaces were added.
.. _async_performance: .. _async_performance:
Performance Performance

View File

@ -731,8 +731,6 @@ The following attributes and methods are available on any subclass of
.. method:: models.AbstractBaseUser.get_session_auth_fallback_hash() .. method:: models.AbstractBaseUser.get_session_auth_fallback_hash()
.. versionadded:: 4.1.8
Yields the HMAC of the password field using Yields the HMAC of the password field using
:setting:`SECRET_KEY_FALLBACKS`. Used by ``get_user()``. :setting:`SECRET_KEY_FALLBACKS`. Used by ``get_user()``.
@ -871,11 +869,6 @@ extend these forms in this manner::
model = CustomUser model = CustomUser
fields = UserCreationForm.Meta.fields + ("custom_field",) fields = UserCreationForm.Meta.fields + ("custom_field",)
.. versionchanged:: 4.2
In older versions, :class:`~django.contrib.auth.forms.UserCreationForm`
didn't save many-to-many form fields for a custom user model.
Custom users and :mod:`django.contrib.admin` Custom users and :mod:`django.contrib.admin`
-------------------------------------------- --------------------------------------------

View File

@ -1723,8 +1723,6 @@ provides several built-in forms located in :mod:`django.contrib.auth.forms`:
.. class:: BaseUserCreationForm .. class:: BaseUserCreationForm
.. versionadded:: 4.2
A :class:`~django.forms.ModelForm` for creating a new user. This is the A :class:`~django.forms.ModelForm` for creating a new user. This is the
recommended base class if you need to customize the user creation form. recommended base class if you need to customize the user creation form.
@ -1741,13 +1739,6 @@ provides several built-in forms located in :mod:`django.contrib.auth.forms`:
similar usernames, the form doesn't allow usernames that differ only in similar usernames, the form doesn't allow usernames that differ only in
case. case.
.. versionchanged:: 4.2
In older versions, :class:`UserCreationForm` didn't save many-to-many
form fields for a custom user model.
In older versions, usernames that differ only in case are allowed.
.. currentmodule:: django.contrib.auth .. currentmodule:: django.contrib.auth
Authentication data in templates Authentication data in templates

View File

@ -620,10 +620,6 @@ Django includes four validators:
``user_attributes``, whereas a value of 1.0 rejects only passwords that are ``user_attributes``, whereas a value of 1.0 rejects only passwords that are
identical to an attribute's value. identical to an attribute's value.
.. versionchanged:: 2.2.26
The ``max_similarity`` parameter was limited to a minimum value of 0.1.
.. class:: CommonPasswordValidator(password_list_path=DEFAULT_PASSWORD_LIST_PATH) .. class:: CommonPasswordValidator(password_list_path=DEFAULT_PASSWORD_LIST_PATH)
Validates that the password is not a common password. This converts the Validates that the password is not a common password. This converts the
@ -635,11 +631,6 @@ Django includes four validators:
common passwords. This file should contain one lowercase password per line common passwords. This file should contain one lowercase password per line
and may be plain text or gzipped. and may be plain text or gzipped.
.. versionchanged:: 4.2
The list of 20,000 common passwords was updated to the most recent
version.
.. class:: NumericPasswordValidator() .. class:: NumericPasswordValidator()
Validate that the password is not entirely numeric. Validate that the password is not entirely numeric.

View File

@ -1085,11 +1085,6 @@ Unless you are sure you wish to work with SQL ``NULL`` values, consider setting
Storing JSON scalar ``null`` does not violate :attr:`null=False Storing JSON scalar ``null`` does not violate :attr:`null=False
<django.db.models.Field.null>`. <django.db.models.Field.null>`.
.. versionchanged:: 4.2
Support for expressing JSON ``null`` using ``Value(None, JSONField())`` was
added.
.. deprecated:: 4.2 .. deprecated:: 4.2
Passing ``Value("null")`` to express JSON ``null`` is deprecated. Passing ``Value("null")`` to express JSON ``null`` is deprecated.
@ -1162,8 +1157,6 @@ To query for missing keys, use the ``isnull`` lookup:
``KT()`` expressions ``KT()`` expressions
~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~
.. versionadded:: 4.2
.. module:: django.db.models.fields.json .. module:: django.db.models.fields.json
.. class:: KT(lookup) .. class:: KT(lookup)

View File

@ -332,10 +332,6 @@ are caught and logged to the ``django.db.backends.base`` logger.
You can use :meth:`.TestCase.captureOnCommitCallbacks` to test callbacks You can use :meth:`.TestCase.captureOnCommitCallbacks` to test callbacks
registered with :func:`on_commit`. registered with :func:`on_commit`.
.. versionchanged:: 4.2
The ``robust`` argument was added.
Savepoints Savepoints
---------- ----------
@ -382,10 +378,6 @@ transaction raises an uncaught exception, no later registered functions in that
same transaction will run. This is the same behavior as if you'd executed the same transaction will run. This is the same behavior as if you'd executed the
functions sequentially yourself without :func:`on_commit`. functions sequentially yourself without :func:`on_commit`.
.. versionchanged:: 4.2
The ``robust`` argument was added.
Timing of execution Timing of execution
------------------- -------------------

View File

@ -272,7 +272,3 @@ use :data:`~django.core.files.storage.storages`::
class MyModel(models.Model): class MyModel(models.Model):
upload = models.FileField(storage=select_storage) upload = models.FileField(storage=select_storage)
.. versionchanged:: 4.2
Support for ``storages`` was added.

View File

@ -676,10 +676,6 @@ the field declaratively and setting its ``validators`` parameter::
See the :doc:`form field documentation </ref/forms/fields>` for more information See the :doc:`form field documentation </ref/forms/fields>` for more information
on fields and their arguments. on fields and their arguments.
.. versionchanged:: 4.2
The ``Meta.formfield_callback`` attribute was added.
Enabling localization of fields Enabling localization of fields
------------------------------- -------------------------------

View File

@ -230,14 +230,6 @@ uploads:
instance (in a single field), for example, even if the custom widget is used instance (in a single field), for example, even if the custom widget is used
with a form field related to a model ``FileField``. with a form field related to a model ``FileField``.
.. versionchanged:: 3.2.19
In previous versions, there was no support for the ``allow_multiple_selected``
class attribute, and users were advised to create the widget with the HTML
attribute ``multiple`` set through the ``attrs`` argument. However, this
caused validation of the form field to be applied only to the last file
submitted, which could have adverse security implications.
Upload Handlers Upload Handlers
=============== ===============

View File

@ -273,10 +273,6 @@ asynchronous iterators. The wrapping function must match. Check
<django.http.StreamingHttpResponse.is_async>` if your middleware needs to <django.http.StreamingHttpResponse.is_async>` if your middleware needs to
support both types of iterator. support both types of iterator.
.. versionchanged:: 4.2
Support for streaming responses with asynchronous iterators was added.
Exception handling Exception handling
================== ==================

View File

@ -741,11 +741,6 @@ In practice you'll use this to get a string you can use in multiple places in a
template or so you can use the output as an argument for other template tags or template or so you can use the output as an argument for other template tags or
filters. filters.
.. versionchanged:: 4.2
In older versions, ``asvar`` instances weren't marked as safe for (HTML)
output purposes.
``{% blocktranslate %}`` also supports :ref:`contextual ``{% blocktranslate %}`` also supports :ref:`contextual
markers<contextual-markers>` using the ``context`` keyword: markers<contextual-markers>` using the ``context`` keyword:

View File

@ -795,10 +795,6 @@ Django can serialize the following:
- Any class reference (must be in module's top-level scope) - Any class reference (must be in module's top-level scope)
- Anything with a custom ``deconstruct()`` method (:ref:`see below <custom-deconstruct-method>`) - Anything with a custom ``deconstruct()`` method (:ref:`see below <custom-deconstruct-method>`)
.. versionchanged:: 4.2
Serialization support for ``enum.Flag`` was added.
.. versionchanged:: 5.0 .. versionchanged:: 5.0
Serialization support for functions decorated with :func:`functools.cache` Serialization support for functions decorated with :func:`functools.cache`

View File

@ -32,10 +32,6 @@ restricted subset of the test client API:
attributes must be supplied by the test itself if required attributes must be supplied by the test itself if required
for the view to function properly. for the view to function properly.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
Example Example
------- -------
@ -89,10 +85,6 @@ difference being that it returns ``ASGIRequest`` instances rather than
Arbitrary keyword arguments in ``defaults`` are added directly into the ASGI Arbitrary keyword arguments in ``defaults`` are added directly into the ASGI
scope. scope.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
Testing class-based views Testing class-based views
========================= =========================

View File

@ -381,8 +381,6 @@ time to run tests.
Avoiding disk access for media files Avoiding disk access for media files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. versionadded:: 4.2
The :class:`~django.core.files.storage.InMemoryStorage` is a convenient way to The :class:`~django.core.files.storage.InMemoryStorage` is a convenient way to
prevent disk access for media files. All data is kept in memory, then it gets prevent disk access for media files. All data is kept in memory, then it gets
discarded after tests run. discarded after tests run.

View File

@ -158,10 +158,6 @@ Use the ``django.test.Client`` class to make requests.
Once you have a ``Client`` instance, you can call any of the following Once you have a ``Client`` instance, you can call any of the following
methods: methods:
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.get(path, data=None, follow=False, secure=False, *, headers=None, **extra) .. method:: Client.get(path, data=None, follow=False, secure=False, *, headers=None, **extra)
Makes a GET request on the provided ``path`` and returns a ``Response`` Makes a GET request on the provided ``path`` and returns a ``Response``
@ -234,10 +230,6 @@ Use the ``django.test.Client`` class to make requests.
If you set ``secure`` to ``True`` the client will emulate an HTTPS If you set ``secure`` to ``True`` the client will emulate an HTTPS
request. request.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.post(path, data=None, content_type=MULTIPART_CONTENT, follow=False, secure=False, *, headers=None, **extra) .. method:: Client.post(path, data=None, content_type=MULTIPART_CONTENT, follow=False, secure=False, *, headers=None, **extra)
Makes a POST request on the provided ``path`` and returns a Makes a POST request on the provided ``path`` and returns a
@ -351,10 +343,6 @@ Use the ``django.test.Client`` class to make requests.
If you set ``secure`` to ``True`` the client will emulate an HTTPS If you set ``secure`` to ``True`` the client will emulate an HTTPS
request. request.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.head(path, data=None, follow=False, secure=False, *, headers=None, **extra) .. method:: Client.head(path, data=None, follow=False, secure=False, *, headers=None, **extra)
Makes a HEAD request on the provided ``path`` and returns a Makes a HEAD request on the provided ``path`` and returns a
@ -362,10 +350,6 @@ Use the ``django.test.Client`` class to make requests.
including the ``follow``, ``secure``, ``headers``, and ``extra`` including the ``follow``, ``secure``, ``headers``, and ``extra``
parameters, except it does not return a message body. parameters, except it does not return a message body.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.options(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra) .. method:: Client.options(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra)
Makes an OPTIONS request on the provided ``path`` and returns a Makes an OPTIONS request on the provided ``path`` and returns a
@ -377,10 +361,6 @@ Use the ``django.test.Client`` class to make requests.
The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act
the same as for :meth:`Client.get`. the same as for :meth:`Client.get`.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.put(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra) .. method:: Client.put(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra)
Makes a PUT request on the provided ``path`` and returns a Makes a PUT request on the provided ``path`` and returns a
@ -392,10 +372,6 @@ Use the ``django.test.Client`` class to make requests.
The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act
the same as for :meth:`Client.get`. the same as for :meth:`Client.get`.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.patch(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra) .. method:: Client.patch(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra)
Makes a PATCH request on the provided ``path`` and returns a Makes a PATCH request on the provided ``path`` and returns a
@ -404,10 +380,6 @@ Use the ``django.test.Client`` class to make requests.
The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act
the same as for :meth:`Client.get`. the same as for :meth:`Client.get`.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.delete(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra) .. method:: Client.delete(path, data='', content_type='application/octet-stream', follow=False, secure=False, *, headers=None, **extra)
Makes a DELETE request on the provided ``path`` and returns a Makes a DELETE request on the provided ``path`` and returns a
@ -419,10 +391,6 @@ Use the ``django.test.Client`` class to make requests.
The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act
the same as for :meth:`Client.get`. the same as for :meth:`Client.get`.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.trace(path, follow=False, secure=False, *, headers=None, **extra) .. method:: Client.trace(path, follow=False, secure=False, *, headers=None, **extra)
Makes a TRACE request on the provided ``path`` and returns a Makes a TRACE request on the provided ``path`` and returns a
@ -435,10 +403,6 @@ Use the ``django.test.Client`` class to make requests.
The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act The ``follow``, ``secure``, ``headers``, and ``extra`` parameters act
the same as for :meth:`Client.get`. the same as for :meth:`Client.get`.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.login(**credentials) .. method:: Client.login(**credentials)
.. method:: Client.alogin(**credentials) .. method:: Client.alogin(**credentials)
@ -2041,10 +2005,6 @@ test client, with the following exceptions:
>>> c = AsyncClient() >>> c = AsyncClient()
>>> c.get("/customers/details/", {"name": "fred", "age": 7}, ACCEPT="application/json") >>> c.get("/customers/details/", {"name": "fred", "age": 7}, ACCEPT="application/json")
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. versionchanged:: 5.0 .. versionchanged:: 5.0
Support for the ``follow`` parameter was added to the ``AsyncClient``. Support for the ``follow`` parameter was added to the ``AsyncClient``.