Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Doc/deprecations/pending-removal-in-3.17.rst
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ Pending removal in Python 3.17
is deprecated and scheduled for removal in Python 3.17.
(Contributed by Stan Ulbrych in :gh:`136702`.)


* :mod:`typing`:

- Before Python 3.14, old-style unions were implemented using the private class
Expand Down
16 changes: 11 additions & 5 deletions Doc/deprecations/pending-removal-in-3.20.rst
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
Pending removal in Python 3.20
------------------------------

* Calling the ``__new__()`` method of :class:`struct.Struct` without the
*format* argument is deprecated and will be removed in Python 3.20. Calling
:meth:`~object.__init__` method on initialized :class:`~struct.Struct`
objects is deprecated and will be removed in Python 3.20.
* :mod:`struct`:

- Calling the ``__new__()`` method of :class:`struct.Struct` without the
*format* argument is deprecated and will be removed in Python 3.20. Calling
:meth:`~object.__init__` method on initialized :class:`~struct.Struct`
objects is deprecated and will be removed in Python 3.20.
(Contributed by Sergey B Kirpichev and Serhiy Storchaka in :gh:`143715`.)

- Support for ``'F'`` and ``'D'`` format type codes (the :c:expr:`float
complex` and :c:expr:`double complex` C types, respectively)
(Contributed by Sergey B Kirpichev in :gh:`121249`.)

(Contributed by Sergey B Kirpichev and Serhiy Storchaka in :gh:`143715`.)

* The ``__version__``, ``version`` and ``VERSION`` attributes have been
deprecated in these standard library modules and will be removed in
Expand Down
13 changes: 7 additions & 6 deletions Doc/library/struct.rst
Original file line number Diff line number Diff line change
Expand Up @@ -260,10 +260,6 @@ platform-dependent.
+--------+--------------------------+--------------------+----------------+------------+
| ``d`` | :c:expr:`double` | float | 8 | \(4) |
+--------+--------------------------+--------------------+----------------+------------+
| ``F`` | :c:expr:`float complex` | complex | 8 | \(10) |
+--------+--------------------------+--------------------+----------------+------------+
| ``D`` | :c:expr:`double complex` | complex | 16 | \(10) |
+--------+--------------------------+--------------------+----------------+------------+
| ``Zf`` | :c:expr:`float complex` | complex | 8 | \(10) |
+--------+--------------------------+--------------------+----------------+------------+
| ``Zd`` | :c:expr:`double complex` | complex | 16 | \(10) |
Expand All @@ -287,6 +283,9 @@ platform-dependent.
.. versionchanged:: next
Added support for the ``'Zf'`` and ``'Zd'`` formats.

.. deprecated-removed:: 3.15 3.20
Support for the ``'F'`` and ``'D'`` format codes.

.. seealso::

The :mod:`array` and :ref:`ctypes <ctypes-fundamental-data-types>` modules,
Expand Down Expand Up @@ -376,13 +375,15 @@ Notes:
are accepted.

(10)
For the ``'F'`` and ``'D'`` format characters, the packed representation uses
For the ``'Zf'`` and ``'Zd'`` format characters, the packed representation uses
the IEEE 754 binary32 and binary64 format for components of the complex
number, regardless of the floating-point format used by the platform.
Note that complex types (``F``/``Zf`` and ``D``/``Zd``) are available unconditionally,
Note that complex types are available unconditionally,
despite complex types being an optional feature in C.
As specified in the C11 standard, each complex type is represented by a
two-element C array containing, respectively, the real and imaginary parts.
The ``'F'`` and ``'D'`` (for ``'Zf'`` and ``'Zd'``, respectively) format
characters are supported for compatibility.


A format character may be preceded by an integral repeat count. For example,
Expand Down
5 changes: 5 additions & 0 deletions Doc/whatsnew/3.15.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2054,6 +2054,11 @@ New deprecations

(Contributed by Sergey B Kirpichev and Serhiy Storchaka in :gh:`143715`.)

- Support for ``'F'`` and ``'D'`` format type codes (the :c:expr:`float
complex` and :c:expr:`double complex` C types, respectively)
(Contributed by Sergey B Kirpichev in :gh:`121249`.)


* :mod:`typing`:

* The following statements now cause ``DeprecationWarning``\ s to be emitted
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Deprecate support for complex types in the :mod:`struct` module (formatting
characters ``'F'`` and ``'D'`` respectively).
Loading