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
==============================
.. versionadded:: 4.2
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
: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)
.. versionchanged:: 4.2
``HTTP_COOKIE`` was added.
.. method:: is_active(request)
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
<https://djangopackages.org/grids/g/storage-backends/>`_.
.. versionchanged:: 4.2
The :setting:`STORAGES` setting was added.
Learn more
==========

View File

@ -262,11 +262,6 @@ documentation:
also need to define a reference to the documentation for that environment
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
======================

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
<assets-as-a-static-definition>`.
.. versionchanged:: 4.2
jQuery was upgraded from 3.6.0 to 3.6.4.
.. versionchanged:: 5.0
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
validate.
.. versionchanged:: 4.1.8
Fallback verification with :setting:`SECRET_KEY_FALLBACKS` was added.
.. versionchanged:: 5.0
``aget_user()`` function was added.

View File

@ -354,8 +354,6 @@ are returned unchanged.
``FromWKB``
===========
.. versionadded:: 4.2
.. class:: FromWKB(expression, **extra)
*Availability*: MariaDB, `MySQL
@ -367,8 +365,6 @@ Creates geometry from `Well-known binary (WKB)`_ representation.
``FromWKT``
===========
.. versionadded:: 4.2
.. class:: FromWKT(expression, **extra)
*Availability*: MariaDB, `MySQL
@ -421,8 +417,6 @@ intersection between them.
``IsEmpty``
===========
.. versionadded:: 4.2
.. class:: IsEmpty(expr)
*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.
'/vsimem/da300bdb-129d-49a8-b336-e410a9428dad'
.. versionchanged:: 4.2
Support for :class:`pathlib.Path` ``ds_input`` was added.
.. attribute:: 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://github.com/maxmind/libmaxminddb/
.. versionchanged:: 4.2
Support for ``.mmdb`` files downloaded from DB-IP was added.
Example
=======

View File

@ -351,8 +351,6 @@ SpatiaLite ``Intersects(poly, geom)``
``isempty``
-----------
.. versionadded:: 4.2
*Availability*: `PostGIS <https://postgis.net/docs/ST_IsEmpty.html>`__
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
.. _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
=================

View File

@ -60,8 +60,3 @@ Would output::
When the ``fields`` parameter is not specified, the ``geojson`` serializer adds
a ``pk`` key to the ``properties`` dictionary with the primary key of the
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"))
<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
``len``

View File

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

View File

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

View File

@ -316,8 +316,6 @@ Note:
.. method:: Sitemap.get_languages_for_item(item)
.. versionadded:: 4.2
**Optional.** A method that returns the sequence of language codes for
which the item is displayed. By default
: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>`.
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
.. versionadded:: 4.2
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
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
point in the future.
.. versionchanged:: 4.2
Support for ``psycopg`` 3.1.8+ was added.
.. _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
.. versionchanged:: 4.2
``IsolationLevel`` was added.
.. _database-role:
Role
----
.. versionadded:: 4.2
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
database configuration in :setting:`DATABASES`::
@ -253,8 +243,6 @@ database configuration in :setting:`DATABASES`::
Server-side parameters binding
------------------------------
.. versionadded:: 4.2
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
: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
migrations are detected.
.. versionchanged:: 4.2
In older versions, the missing migrations were also created when using the
``--check`` option.
.. django-admin-option:: --scriptable
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
.. versionadded:: 4.2
Merges model changes into the latest migration and optimize the resulting
operations.

View File

@ -47,8 +47,6 @@ Django core exception classes are defined in ``django.core.exceptions``.
.. exception:: FullResultSet
.. versionadded:: 4.2
``FullResultSet`` may be raised during query generation if a query will
match everything. Most Django projects won't encounter this exception, but
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
documentation </topics/logging/>` for more information.
.. versionchanged:: 3.2.18
``SuspiciousOperation`` is raised when too many files are submitted.
``PermissionDenied``
--------------------

View File

@ -11,8 +11,6 @@ Django provides convenient ways to access the default storage class:
.. data:: storages
.. versionadded:: 4.2
Storage instances as defined by :setting:`STORAGES`.
.. class:: DefaultStorage
@ -88,8 +86,6 @@ The ``FileSystemStorage`` class
The ``InMemoryStorage`` class
=============================
.. versionadded:: 4.2
.. class:: InMemoryStorage(location=None, base_url=None, file_permissions_mode=None, directory_permissions_mode=None)
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
``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``
-------------

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
all database queries.
.. versionchanged:: 4.2
Support for logging transaction management queries (``BEGIN``, ``COMMIT``,
and ``ROLLBACK``) was added.
.. _django-security-logger:
``django.security.*``

View File

@ -118,10 +118,6 @@ GZip middleware
.. _breachattack.com: https://www.breachattack.com/
.. _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
that understand GZip compression (all modern browsers).

View File

@ -91,8 +91,6 @@ option on the ``Meta`` subclass).
``AlterModelTableComment``
--------------------------
.. versionadded:: 4.2
.. class:: AlterModelTableComment(name, table_comment)
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
``CURRENT_TIMESTAMP`` to ``DateTimeField``.
.. versionchanged:: 4.2
Support for microsecond precision on MySQL and millisecond precision on
SQLite were added.
.. versionchanged:: 5.0
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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. versionadded:: 4.2
``F()`` expressions that output ``BooleanField`` can be logically negated with
the inversion operator ``~F()``. For example, to swap the activation status of
companies::
@ -876,10 +874,6 @@ from groups to be included:
NotImplementedError: Heterogeneous disjunctive predicates against window functions
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
support window expressions. Support for different window expression features
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
to a column.
.. versionchanged:: 4.2
The ``alias=None`` keyword argument was removed.
.. method:: asc(nulls_first=None, nulls_last=None)
Returns the expression ready to be sorted in ascending order.

View File

@ -392,8 +392,6 @@ scenes.
``db_comment``
--------------
.. versionadded:: 4.2
.. attribute:: Field.db_comment
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
notes </ref/databases>` for details.
.. versionchanged:: 4.2
Support for unlimited ``VARCHAR`` columns was added on PostgreSQL.
.. attribute:: CharField.db_collation
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
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:
=========================

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
fields that are currently deferred for this model.
.. versionchanged:: 4.2
``arefresh_from_db()`` method was added.
.. _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.
.. versionchanged:: 4.2
``asave()`` method was added.
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
keep the parent model's data.
.. versionchanged:: 4.2
``adelete()`` method was added.
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
follow this API.
.. versionchanged:: 4.2
Support for registering lookups on :class:`~django.db.models.Field`
instances was added.
.. _query-expression:
The Query Expression API

View File

@ -94,8 +94,6 @@ Django quotes column and table names behind the scenes.
``db_table_comment``
--------------------
.. versionadded:: 4.2
.. attribute:: Options.db_table_comment
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
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
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
intermediate instance(s).
.. versionchanged:: 4.2
``aadd()`` method was added.
.. method:: create(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
exist.
.. versionchanged:: 4.2
``aremove()`` method was added.
.. method:: clear(bulk=True)
.. method:: aclear(bulk=True)
@ -194,10 +186,6 @@ Related objects reference
For many-to-many relationships, the ``bulk`` keyword argument doesn't
exist.
.. versionchanged:: 4.2
``aclear()`` method was added.
.. method:: set(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
intermediate instance(s).
.. versionchanged:: 4.2
``aset()`` method was added.
.. note::
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
:class:`HttpResponse` and :class:`StreamingHttpResponse`.
.. versionchanged:: 4.2
Support for asynchronous iteration was added.
Attributes
----------
@ -1280,8 +1276,6 @@ Attributes
.. attribute:: StreamingHttpResponse.is_async
.. versionadded:: 4.2
Boolean indicating whether :attr:`StreamingHttpResponse.streaming_content`
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()``
----------------------------
.. versionadded:: 4.2
.. 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``.

View File

@ -1067,8 +1067,6 @@ perform a similar check at that level.
``DATA_UPLOAD_MAX_NUMBER_FILES``
--------------------------------
.. versionadded:: 3.2.18
Default: ``100``
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``
------------
.. versionadded:: 4.2
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`
setting is ``False``.
.. versionchanged:: 2.2.27
In older versions, debugging information was displayed when the
:setting:`DEBUG` setting was ``False``.
.. templatetag:: extends
``extends``
@ -1803,11 +1798,6 @@ produce empty output:
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
``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
:func:`~django.urls.path()`.
.. versionchanged:: 2.2.25
In older versions, a full-match wasn't required for a ``route`` which ends
with ``$``.
``include()``
=============

View File

@ -685,10 +685,6 @@ escaping HTML.
serialize the data. See :ref:`JSON serialization
<serialization-formats-json>` for more details about this serializer.
.. versionchanged:: 4.2
The ``encoder`` argument was added.
.. function:: strip_tags(value)
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)
.. versionadded:: 4.2
Constructs a ``Content-Disposition`` HTTP header value from the given
``filename`` as specified by :rfc:`6266`. Returns ``None`` if
``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
necessary.
.. versionchanged:: 3.2.20
In older versions, values longer than 320 characters could be
considered valid.
``URLValidator``
----------------
@ -190,16 +185,9 @@ to, or in lieu of custom ``field.clean()`` methods.
.. attribute:: max_length
.. versionadded:: 3.2.20
The maximum length of values that could be considered valid. Defaults
to 2048 characters.
.. versionchanged:: 3.2.20
In older versions, values longer than 2048 characters could be
considered valid.
``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
synchronous function and call it using :func:`sync_to_async`.
.. versionchanged:: 4.2
Asynchronous model and related manager interfaces were added.
.. _async_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()
.. versionadded:: 4.1.8
Yields the HMAC of the password field using
:setting:`SECRET_KEY_FALLBACKS`. Used by ``get_user()``.
@ -871,11 +869,6 @@ extend these forms in this manner::
model = CustomUser
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`
--------------------------------------------

View File

@ -1723,8 +1723,6 @@ provides several built-in forms located in :mod:`django.contrib.auth.forms`:
.. class:: BaseUserCreationForm
.. versionadded:: 4.2
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.
@ -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
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
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
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)
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
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()
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
<django.db.models.Field.null>`.
.. versionchanged:: 4.2
Support for expressing JSON ``null`` using ``Value(None, JSONField())`` was
added.
.. deprecated:: 4.2
Passing ``Value("null")`` to express JSON ``null`` is deprecated.
@ -1162,8 +1157,6 @@ To query for missing keys, use the ``isnull`` lookup:
``KT()`` expressions
~~~~~~~~~~~~~~~~~~~~
.. versionadded:: 4.2
.. module:: django.db.models.fields.json
.. 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
registered with :func:`on_commit`.
.. versionchanged:: 4.2
The ``robust`` argument was added.
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
functions sequentially yourself without :func:`on_commit`.
.. versionchanged:: 4.2
The ``robust`` argument was added.
Timing of execution
-------------------

View File

@ -272,7 +272,3 @@ use :data:`~django.core.files.storage.storages`::
class MyModel(models.Model):
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
on fields and their arguments.
.. versionchanged:: 4.2
The ``Meta.formfield_callback`` attribute was added.
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
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
===============

View File

@ -273,10 +273,6 @@ asynchronous iterators. The wrapping function must match. Check
<django.http.StreamingHttpResponse.is_async>` if your middleware needs to
support both types of iterator.
.. versionchanged:: 4.2
Support for streaming responses with asynchronous iterators was added.
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
filters.
.. versionchanged:: 4.2
In older versions, ``asvar`` instances weren't marked as safe for (HTML)
output purposes.
``{% blocktranslate %}`` also supports :ref:`contextual
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)
- 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
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
for the view to function properly.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
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
scope.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
Testing class-based views
=========================

View File

@ -381,8 +381,6 @@ time to run tests.
Avoiding disk access for media files
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.. versionadded:: 4.2
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
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
methods:
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. 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``
@ -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
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)
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
request.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.head(path, data=None, follow=False, secure=False, *, headers=None, **extra)
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``
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)
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 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)
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 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)
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 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)
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 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)
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 same as for :meth:`Client.get`.
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. method:: Client.login(**credentials)
.. method:: Client.alogin(**credentials)
@ -2041,10 +2005,6 @@ test client, with the following exceptions:
>>> c = AsyncClient()
>>> c.get("/customers/details/", {"name": "fred", "age": 7}, ACCEPT="application/json")
.. versionchanged:: 4.2
The ``headers`` parameter was added.
.. versionchanged:: 5.0
Support for the ``follow`` parameter was added to the ``AsyncClient``.