]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Python 3.12.7 v3.12.7
authorThomas Wouters <thomas@python.org>
Tue, 1 Oct 2024 02:01:22 +0000 (04:01 +0200)
committerThomas Wouters <thomas@python.org>
Tue, 1 Oct 2024 02:05:46 +0000 (04:05 +0200)
40 files changed:
Include/patchlevel.h
Lib/pydoc_data/topics.py
Misc/NEWS.d/3.12.7.rst [new file with mode: 0644]
Misc/NEWS.d/next/Build/2024-09-11-16-06-42.gh-issue-123917.JuZl0r.rst [deleted file]
Misc/NEWS.d/next/Build/2024-09-27-15-58-10.gh-issue-124487.PAZTQf.rst [deleted file]
Misc/NEWS.d/next/C API/2024-07-04-15-41-10.gh-issue-113993.cLSiWV.rst [deleted file]
Misc/NEWS.d/next/Core and Builtins/2024-06-14-22-02-25.gh-issue-113993.MiA0vX.rst [deleted file]
Misc/NEWS.d/next/Core and Builtins/2024-06-19-21-34-21.gh-issue-98442.cqhjkN.rst [deleted file]
Misc/NEWS.d/next/Core_and_Builtins/2024-09-10-13-27-16.gh-issue-77894.ZC-Olu.rst [deleted file]
Misc/NEWS.d/next/Core_and_Builtins/2024-09-17-22-06-01.gh-issue-124188.aFqNAB.rst [deleted file]
Misc/NEWS.d/next/Core_and_Builtins/2024-09-25-12-05-45.gh-issue-116510.dhn8w8.rst [deleted file]
Misc/NEWS.d/next/IDLE/2024-09-21-23-12-18.gh-issue-112938.OeiDru.rst [deleted file]
Misc/NEWS.d/next/Library/2021-08-24-19-37-46.bpo-44864.KzxaDh.rst [deleted file]
Misc/NEWS.d/next/Library/2024-07-03-14-23-04.gh-issue-119004.L5MoUu.rst [deleted file]
Misc/NEWS.d/next/Library/2024-08-15-09-45-34.gh-issue-121735._1q0qf.rst [deleted file]
Misc/NEWS.d/next/Library/2024-08-23-15-49-10.gh-issue-116810.QLBUU8.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-10-11-26-14.gh-issue-123892.2gzIrz.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-11-13-33-19.gh-issue-123935.fRZ_56.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-13-10-34-19.gh-issue-123934.yMe7mL.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-17-18-06-42.gh-issue-124171.PHCvRJ.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-19-03-46-59.gh-issue-87041.9Ox7Bv.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-19-10-36-18.gh-issue-81691.Hyhp_U.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-19-11-47-39.gh-issue-124248.g7rufd.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-20-12-23-11.gh-issue-53780.mrV1zi.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-21-19-02-37.gh-issue-59317.OAhNZZ.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-21-22-32-21.gh-issue-72795.naLmkX.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-21-23-56-41.gh-issue-63143.YKu-LQ.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-23-17-33-47.gh-issue-104860.O86OSc.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-24-12-34-48.gh-issue-124345.s3vKql.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-25-12-14-58.gh-issue-124498.Ozxs55.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-25-18-08-29.gh-issue-80259.kO5Tw7.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-26-09-18-09.gh-issue-61181.dwjmch.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-26-22-14-12.gh-issue-58573.hozbm9.rst [deleted file]
Misc/NEWS.d/next/Library/2024-09-27-15-16-04.gh-issue-116850.dBkR0-.rst [deleted file]
Misc/NEWS.d/next/Security/2024-08-07-10-42-13.gh-issue-122792.oiTMo9.rst [deleted file]
Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst [deleted file]
Misc/NEWS.d/next/Windows/2024-04-24-22-50-33.gh-issue-117505.gcTb_p.rst [deleted file]
Misc/NEWS.d/next/Windows/2024-09-10-19-23-00.gh-issue-123915.yZMEDO.rst [deleted file]
README.rst

index e2a0d8db2d26359e2efd7ad329bafeaa649ed8d8..4f0c8fb1aa4e48dd43562ce59566838f7896324b 100644 (file)
 /*--start constants--*/
 #define PY_MAJOR_VERSION        3
 #define PY_MINOR_VERSION        12
-#define PY_MICRO_VERSION        6
+#define PY_MICRO_VERSION        7
 #define PY_RELEASE_LEVEL        PY_RELEASE_LEVEL_FINAL
 #define PY_RELEASE_SERIAL       0
 
 /* Version as a string */
-#define PY_VERSION              "3.12.6+"
+#define PY_VERSION              "3.12.7"
 /*--end constants--*/
 
 /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2.
index 8113889a1f6c34e60c21c0ef91b8af5b118ade2d..b5464cb4d04b9b692d2793cc49fa8a34c5d2a157 100644 (file)
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-# Autogenerated by Sphinx on Fri Sep  6 21:00:45 2024
+# Autogenerated by Sphinx on Tue Oct  1 04:02:04 2024
 # as part of the release process.
 topics = {'assert': 'The "assert" statement\n'
            '**********************\n'
@@ -1094,11 +1094,13 @@ topics = {'assert': 'The "assert" statement\n'
                      'to the class\n'
                      '  where it is defined.  *__slots__* declared in parents '
                      'are available\n'
-                     '  in child classes. However, child subclasses will get a '
-                     '"__dict__"\n'
-                     '  and *__weakref__* unless they also define *__slots__* '
-                     '(which should\n'
-                     '  only contain names of any *additional* slots).\n'
+                     '  in child classes. However, instances of a child '
+                     'subclass will get a\n'
+                     '  "__dict__" and *__weakref__* unless the subclass also '
+                     'defines\n'
+                     '  *__slots__* (which should only contain names of any '
+                     '*additional*\n'
+                     '  slots).\n'
                      '\n'
                      '* If a class defines a slot also defined in a base '
                      'class, the instance\n'
@@ -3571,10 +3573,12 @@ topics = {'assert': 'The "assert" statement\n'
              '   parameter_list_no_posonly ::= defparameter ("," '
              'defparameter)* ["," [parameter_list_starargs]]\n'
              '                                 | parameter_list_starargs\n'
-             '   parameter_list_starargs   ::= "*" [parameter] ("," '
+             '   parameter_list_starargs   ::= "*" [star_parameter] ("," '
              'defparameter)* ["," ["**" parameter [","]]]\n'
              '                               | "**" parameter [","]\n'
              '   parameter                 ::= identifier [":" expression]\n'
+             '   star_parameter            ::= identifier [":" ["*"] '
+             'expression]\n'
              '   defparameter              ::= parameter ["=" expression]\n'
              '   funcname                  ::= identifier\n'
              '\n'
@@ -3702,27 +3706,31 @@ topics = {'assert': 'The "assert" statement\n'
              'expression"”\n'
              'following the parameter name.  Any parameter may have an '
              'annotation,\n'
-             'even those of the form "*identifier" or "**identifier".  '
-             'Functions may\n'
-             'have “return” annotation of the form “"-> expression"” after '
-             'the\n'
-             'parameter list.  These annotations can be any valid Python '
-             'expression.\n'
-             'The presence of annotations does not change the semantics of a\n'
-             'function.  The annotation values are available as values of a\n'
-             'dictionary keyed by the parameters’ names in the '
-             '"__annotations__"\n'
-             'attribute of the function object.  If the "annotations" import '
-             'from\n'
-             '"__future__" is used, annotations are preserved as strings at '
-             'runtime\n'
-             'which enables postponed evaluation.  Otherwise, they are '
-             'evaluated\n'
-             'when the function definition is executed.  In this case '
-             'annotations\n'
-             'may be evaluated in a different order than they appear in the '
-             'source\n'
-             'code.\n'
+             'even those of the form "*identifier" or "**identifier". (As a '
+             'special\n'
+             'case, parameters of the form "*identifier" may have an '
+             'annotation “":\n'
+             '*expression"”.) Functions may have “return” annotation of the '
+             'form\n'
+             '“"-> expression"” after the parameter list.  These annotations '
+             'can be\n'
+             'any valid Python expression.  The presence of annotations does '
+             'not\n'
+             'change the semantics of a function.  The annotation values are\n'
+             'available as values of a dictionary keyed by the parameters’ '
+             'names in\n'
+             'the "__annotations__" attribute of the function object.  If the\n'
+             '"annotations" import from "__future__" is used, annotations are\n'
+             'preserved as strings at runtime which enables postponed '
+             'evaluation.\n'
+             'Otherwise, they are evaluated when the function definition is\n'
+             'executed.  In this case annotations may be evaluated in a '
+             'different\n'
+             'order than they appear in the source code.\n'
+             '\n'
+             'Changed in version 3.11: Parameters of the form “"*identifier"” '
+             'may\n'
+             'have an annotation “": *expression"”. See **PEP 646**.\n'
              '\n'
              'It is also possible to create anonymous functions (functions not '
              'bound\n'
@@ -6231,11 +6239,11 @@ topics = {'assert': 'The "assert" statement\n'
               '\n'
               '* While annotation scopes have an internal name, that name is '
               'not\n'
-              '  reflected in the *__qualname__* of objects defined within the '
-              'scope.\n'
-              '  Instead, the "__qualname__" of such objects is as if the '
-              'object were\n'
-              '  defined in the enclosing scope.\n'
+              '  reflected in the *qualified name* of objects defined within '
+              'the\n'
+              '  scope. Instead, the "__qualname__" of such objects is as if '
+              'the\n'
+              '  object were defined in the enclosing scope.\n'
               '\n'
               'Added in version 3.12: Annotation scopes were introduced in '
               'Python\n'
@@ -6433,12 +6441,17 @@ topics = {'assert': 'The "assert" statement\n'
  'exprlists': 'Expression lists\n'
               '****************\n'
               '\n'
-              '   expression_list    ::= expression ("," expression)* [","]\n'
-              '   starred_list       ::= starred_item ("," starred_item)* '
+              '   starred_expression       ::= ["*"] or_expr\n'
+              '   flexible_expression      ::= assignment_expression | '
+              'starred_expression\n'
+              '   flexible_expression_list ::= flexible_expression ("," '
+              'flexible_expression)* [","]\n'
+              '   starred_expression_list  ::= starred_expression ("," '
+              'starred_expression)* [","]\n'
+              '   expression_list          ::= expression ("," expression)* '
               '[","]\n'
-              '   starred_expression ::= expression | (starred_item ",")* '
-              '[starred_item]\n'
-              '   starred_item       ::= assignment_expression | "*" or_expr\n'
+              '   yield_list               ::= expression_list | '
+              'starred_expression "," [starred_expression_list]\n'
               '\n'
               'Except when part of a list or set display, an expression list\n'
               'containing at least one comma yields a tuple.  The length of '
@@ -6457,6 +6470,10 @@ topics = {'assert': 'The "assert" statement\n'
               'Added in version 3.5: Iterable unpacking in expression lists,\n'
               'originally proposed by **PEP 448**.\n'
               '\n'
+              'Added in version 3.11: Any item in an expression list may be '
+              'starred.\n'
+              'See **PEP 646**.\n'
+              '\n'
               'A trailing comma is required only to create a one-item tuple, '
               'such as\n'
               '"1,"; it is optional in all other cases. A single expression '
@@ -7142,18 +7159,22 @@ topics = {'assert': 'The "assert" statement\n'
                   'percent sign.          |\n'
                   '   '
                   '+-----------+------------------------------------------------------------+\n'
-                  '   | None      | For "float" this is the same as "\'g\'", '
-                  'except that when    |\n'
-                  '   |           | fixed-point notation is used to format the '
-                  'result, it      |\n'
+                  '   | None      | For "float" this is like the "\'g\'" type, '
+                  'except that when  |\n'
+                  '   |           | fixed- point notation is used to format '
+                  'the result, it     |\n'
                   '   |           | always includes at least one digit past '
-                  'the decimal point. |\n'
-                  '   |           | The precision used is as large as needed '
-                  'to represent the  |\n'
-                  '   |           | given value faithfully.  For "Decimal", '
-                  'this is the same   |\n'
-                  '   |           | as either "\'g\'" or "\'G\'" depending on '
-                  'the value of         |\n'
+                  'the decimal point, |\n'
+                  '   |           | and switches to the scientific notation '
+                  'when "exp >= p -   |\n'
+                  '   |           | 1".  When the precision is not specified, '
+                  'the latter will  |\n'
+                  '   |           | be as large as needed to represent the '
+                  'given value         |\n'
+                  '   |           | faithfully.  For "Decimal", this is the '
+                  'same as either     |\n'
+                  '   |           | "\'g\'" or "\'G\'" depending on the value '
+                  'of                   |\n'
                   '   |           | "context.capitals" for the current decimal '
                   'context.  The   |\n'
                   '   |           | overall effect is to match the output of '
@@ -7343,10 +7364,12 @@ topics = {'assert': 'The "assert" statement\n'
              '   parameter_list_no_posonly ::= defparameter ("," '
              'defparameter)* ["," [parameter_list_starargs]]\n'
              '                                 | parameter_list_starargs\n'
-             '   parameter_list_starargs   ::= "*" [parameter] ("," '
+             '   parameter_list_starargs   ::= "*" [star_parameter] ("," '
              'defparameter)* ["," ["**" parameter [","]]]\n'
              '                               | "**" parameter [","]\n'
              '   parameter                 ::= identifier [":" expression]\n'
+             '   star_parameter            ::= identifier [":" ["*"] '
+             'expression]\n'
              '   defparameter              ::= parameter ["=" expression]\n'
              '   funcname                  ::= identifier\n'
              '\n'
@@ -7474,27 +7497,31 @@ topics = {'assert': 'The "assert" statement\n'
              'expression"”\n'
              'following the parameter name.  Any parameter may have an '
              'annotation,\n'
-             'even those of the form "*identifier" or "**identifier".  '
-             'Functions may\n'
-             'have “return” annotation of the form “"-> expression"” after '
-             'the\n'
-             'parameter list.  These annotations can be any valid Python '
-             'expression.\n'
-             'The presence of annotations does not change the semantics of a\n'
-             'function.  The annotation values are available as values of a\n'
-             'dictionary keyed by the parameters’ names in the '
-             '"__annotations__"\n'
-             'attribute of the function object.  If the "annotations" import '
-             'from\n'
-             '"__future__" is used, annotations are preserved as strings at '
-             'runtime\n'
-             'which enables postponed evaluation.  Otherwise, they are '
-             'evaluated\n'
-             'when the function definition is executed.  In this case '
-             'annotations\n'
-             'may be evaluated in a different order than they appear in the '
-             'source\n'
-             'code.\n'
+             'even those of the form "*identifier" or "**identifier". (As a '
+             'special\n'
+             'case, parameters of the form "*identifier" may have an '
+             'annotation “":\n'
+             '*expression"”.) Functions may have “return” annotation of the '
+             'form\n'
+             '“"-> expression"” after the parameter list.  These annotations '
+             'can be\n'
+             'any valid Python expression.  The presence of annotations does '
+             'not\n'
+             'change the semantics of a function.  The annotation values are\n'
+             'available as values of a dictionary keyed by the parameters’ '
+             'names in\n'
+             'the "__annotations__" attribute of the function object.  If the\n'
+             '"annotations" import from "__future__" is used, annotations are\n'
+             'preserved as strings at runtime which enables postponed '
+             'evaluation.\n'
+             'Otherwise, they are evaluated when the function definition is\n'
+             'executed.  In this case annotations may be evaluated in a '
+             'different\n'
+             'order than they appear in the source code.\n'
+             '\n'
+             'Changed in version 3.11: Parameters of the form “"*identifier"” '
+             'may\n'
+             'have an annotation “": *expression"”. See **PEP 646**.\n'
              '\n'
              'It is also possible to create anonymous functions (functions not '
              'bound\n'
@@ -8250,7 +8277,8 @@ topics = {'assert': 'The "assert" statement\n'
           'in\n'
           'square brackets:\n'
           '\n'
-          '   list_display ::= "[" [starred_list | comprehension] "]"\n'
+          '   list_display ::= "[" [flexible_expression_list | comprehension] '
+          '"]"\n'
           '\n'
           'A list display yields a new list object, the contents being '
           'specified\n'
@@ -8501,11 +8529,9 @@ topics = {'assert': 'The "assert" statement\n'
            '  can introduce new names.\n'
            '\n'
            '* While annotation scopes have an internal name, that name is not\n'
-           '  reflected in the *__qualname__* of objects defined within the '
-           'scope.\n'
-           '  Instead, the "__qualname__" of such objects is as if the object '
-           'were\n'
-           '  defined in the enclosing scope.\n'
+           '  reflected in the *qualified name* of objects defined within the\n'
+           '  scope. Instead, the "__qualname__" of such objects is as if the\n'
+           '  object were defined in the enclosing scope.\n'
            '\n'
            'Added in version 3.12: Annotation scopes were introduced in '
            'Python\n'
@@ -9721,20 +9747,6 @@ topics = {'assert': 'The "assert" statement\n'
                  'not reported\n'
                  'by the "dir()" built-in function.\n'
                  '\n'
-                 'object.__dict__\n'
-                 '\n'
-                 '   A dictionary or other mapping object used to store an '
-                 'object’s\n'
-                 '   (writable) attributes.\n'
-                 '\n'
-                 'instance.__class__\n'
-                 '\n'
-                 '   The class to which a class instance belongs.\n'
-                 '\n'
-                 'class.__bases__\n'
-                 '\n'
-                 '   The tuple of base classes of a class object.\n'
-                 '\n'
                  'definition.__name__\n'
                  '\n'
                  '   The name of the class, function, method, descriptor, or '
@@ -9749,39 +9761,26 @@ topics = {'assert': 'The "assert" statement\n'
                  '\n'
                  '   Added in version 3.3.\n'
                  '\n'
-                 'definition.__type_params__\n'
-                 '\n'
-                 '   The type parameters of generic classes, functions, and '
-                 'type\n'
-                 '   aliases.\n'
-                 '\n'
-                 '   Added in version 3.12.\n'
-                 '\n'
-                 'class.__mro__\n'
+                 'definition.__module__\n'
                  '\n'
-                 '   This attribute is a tuple of classes that are considered '
-                 'when\n'
-                 '   looking for base classes during method resolution.\n'
+                 '   The name of the module in which a class or function was '
+                 'defined.\n'
                  '\n'
-                 'class.mro()\n'
+                 'definition.__doc__\n'
                  '\n'
-                 '   This method can be overridden by a metaclass to customize '
-                 'the\n'
-                 '   method resolution order for its instances.  It is called '
-                 'at class\n'
-                 '   instantiation, and its result is stored in "__mro__".\n'
+                 '   The documentation string of a class or function, or '
+                 '"None" if\n'
+                 '   undefined.\n'
                  '\n'
-                 'class.__subclasses__()\n'
+                 'definition.__type_params__\n'
                  '\n'
-                 '   Each class keeps a list of weak references to its '
-                 'immediate\n'
-                 '   subclasses.  This method returns a list of all those '
-                 'references\n'
-                 '   still alive.  The list is in definition order.  Example:\n'
+                 '   The type parameters of generic classes, functions, and '
+                 'type\n'
+                 '   aliases. For classes and functions that are not generic, '
+                 'this will\n'
+                 '   be an empty tuple.\n'
                  '\n'
-                 '      >>> int.__subclasses__()\n'
-                 "      [<class 'bool'>, <enum 'IntEnum'>, <flag 'IntFlag'>, "
-                 "<class 're._constants._NamedIntConstant'>]\n",
+                 '   Added in version 3.12.\n',
  'specialnames': 'Special method names\n'
                  '********************\n'
                  '\n'
@@ -10727,11 +10726,13 @@ topics = {'assert': 'The "assert" statement\n'
                  'the class\n'
                  '  where it is defined.  *__slots__* declared in parents are '
                  'available\n'
-                 '  in child classes. However, child subclasses will get a '
-                 '"__dict__"\n'
-                 '  and *__weakref__* unless they also define *__slots__* '
-                 '(which should\n'
-                 '  only contain names of any *additional* slots).\n'
+                 '  in child classes. However, instances of a child subclass '
+                 'will get a\n'
+                 '  "__dict__" and *__weakref__* unless the subclass also '
+                 'defines\n'
+                 '  *__slots__* (which should only contain names of any '
+                 '*additional*\n'
+                 '  slots).\n'
                  '\n'
                  '* If a class defines a slot also defined in a base class, '
                  'the instance\n'
@@ -11148,7 +11149,7 @@ topics = {'assert': 'The "assert" statement\n'
                  'built-in\n'
                  'types), including other ABCs.\n'
                  '\n'
-                 'class.__instancecheck__(self, instance)\n'
+                 'type.__instancecheck__(self, instance)\n'
                  '\n'
                  '   Return true if *instance* should be considered a (direct '
                  'or\n'
@@ -11156,7 +11157,7 @@ topics = {'assert': 'The "assert" statement\n'
                  'implement\n'
                  '   "isinstance(instance, class)".\n'
                  '\n'
-                 'class.__subclasscheck__(self, subclass)\n'
+                 'type.__subclasscheck__(self, subclass)\n'
                  '\n'
                  '   Return true if *subclass* should be considered a (direct '
                  'or\n'
@@ -13278,7 +13279,8 @@ topics = {'assert': 'The "assert" statement\n'
                   '*generic\n'
                   'class* will generally return a GenericAlias object.\n'
                   '\n'
-                  '   subscription ::= primary "[" expression_list "]"\n'
+                  '   subscription ::= primary "[" flexible_expression_list '
+                  '"]"\n'
                   '\n'
                   'When an object is subscripted, the interpreter will '
                   'evaluate the\n'
@@ -13297,13 +13299,18 @@ topics = {'assert': 'The "assert" statement\n'
                   'see\n'
                   '__class_getitem__ versus __getitem__.\n'
                   '\n'
-                  'If the expression list contains at least one comma, it will '
-                  'evaluate\n'
-                  'to a "tuple" containing the items of the expression list. '
-                  'Otherwise,\n'
-                  'the expression list will evaluate to the value of the '
-                  'list’s sole\n'
-                  'member.\n'
+                  'If the expression list contains at least one comma, or if '
+                  'any of the\n'
+                  'expressions are starred, the expression list will evaluate '
+                  'to a\n'
+                  '"tuple" containing the items of the expression list. '
+                  'Otherwise, the\n'
+                  'expression list will evaluate to the value of the list’s '
+                  'sole member.\n'
+                  '\n'
+                  'Changed in version 3.11: Expressions in an expression list '
+                  'may be\n'
+                  'starred. See **PEP 646**.\n'
                   '\n'
                   'For built-in objects, there are two types of objects that '
                   'support\n'
@@ -14052,8 +14059,8 @@ topics = {'assert': 'The "assert" statement\n'
           '|====================================================|====================================================|\n'
           '| function.__doc__                                   | The '
           'function’s documentation string, or "None" if  |\n'
-          '|                                                    | unavailable. '
-          'Not inherited by subclasses.          |\n'
+          '|                                                    | '
+          'unavailable.                                       |\n'
           '+----------------------------------------------------+----------------------------------------------------+\n'
           '| function.__name__                                  | The '
           'function’s name. See also: "__name__           |\n'
@@ -14423,32 +14430,104 @@ topics = {'assert': 'The "assert" statement\n'
           'A class object can be called (see above) to yield a class instance\n'
           '(see below).\n'
           '\n'
-          'Special attributes:\n'
           '\n'
-          '   "__name__"\n'
-          '      The class name.\n'
+          'Special attributes\n'
+          '------------------\n'
           '\n'
-          '   "__module__"\n'
-          '      The name of the module in which the class was defined.\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| Attribute                                          | '
+          'Meaning                                            |\n'
+          '|====================================================|====================================================|\n'
+          '| type.__name__                                      | The class’s '
+          'name. See also: "__name__ attributes". |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__qualname__                                  | The class’s '
+          '*qualified name*. See also:            |\n'
+          '|                                                    | '
+          '"__qualname__ attributes".                         |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__module__                                    | The name of '
+          'the module in which the class was      |\n'
+          '|                                                    | '
+          'defined.                                           |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__dict__                                      | A "mapping '
+          'proxy" providing a read-only view of    |\n'
+          '|                                                    | the class’s '
+          'namespace. See also: "__dict__         |\n'
+          '|                                                    | '
+          'attributes".                                       |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__bases__                                     | A "tuple" '
+          'containing the class’s bases. In most    |\n'
+          '|                                                    | cases, for a '
+          'class defined as "class X(A, B, C)",  |\n'
+          '|                                                    | '
+          '"X.__bases__" will be exactly equal to "(A, B,     |\n'
+          '|                                                    | '
+          'C)".                                               |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__doc__                                       | The class’s '
+          'documentation string, or "None" if     |\n'
+          '|                                                    | undefined. '
+          'Not inherited by subclasses.            |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__annotations__                               | A dictionary '
+          'containing *variable annotations*     |\n'
+          '|                                                    | collected '
+          'during class body execution. For best    |\n'
+          '|                                                    | practices on '
+          'working with "__annotations__",       |\n'
+          '|                                                    | please see '
+          'Annotations Best Practices.  Caution:   |\n'
+          '|                                                    | Accessing '
+          'the "__annotations__" attribute of a     |\n'
+          '|                                                    | class object '
+          'directly may yield incorrect results  |\n'
+          '|                                                    | in the '
+          'presence of metaclasses. In addition, the   |\n'
+          '|                                                    | attribute '
+          'may not exist for some classes. Use      |\n'
+          '|                                                    | '
+          '"inspect.get_annotations()" to retrieve class      |\n'
+          '|                                                    | annotations '
+          'safely.                                |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__type_params__                               | A "tuple" '
+          'containing the type parameters of a      |\n'
+          '|                                                    | generic '
+          'class.  Added in version 3.12.             |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
+          '| type.__mro__                                       | The "tuple" '
+          'of classes that are considered when    |\n'
+          '|                                                    | looking for '
+          'base classes during method resolution. |\n'
+          '+----------------------------------------------------+----------------------------------------------------+\n'
           '\n'
-          '   "__dict__"\n'
-          '      The dictionary containing the class’s namespace.\n'
           '\n'
-          '   "__bases__"\n'
-          '      A tuple containing the base classes, in the order of their\n'
-          '      occurrence in the base class list.\n'
+          'Special methods\n'
+          '---------------\n'
           '\n'
-          '   "__doc__"\n'
-          '      The class’s documentation string, or "None" if undefined.\n'
+          'In addition to the special attributes described above, all Python\n'
+          'classes also have the following two methods available:\n'
           '\n'
-          '   "__annotations__"\n'
-          '      A dictionary containing *variable annotations* collected '
-          'during\n'
-          '      class body execution.  For best practices on working with\n'
-          '      "__annotations__", please see Annotations Best Practices.\n'
+          'type.mro()\n'
           '\n'
-          '   "__type_params__"\n'
-          '      A tuple containing the type parameters of a generic class.\n'
+          '   This method can be overridden by a metaclass to customize the\n'
+          '   method resolution order for its instances.  It is called at '
+          'class\n'
+          '   instantiation, and its result is stored in "__mro__".\n'
+          '\n'
+          'type.__subclasses__()\n'
+          '\n'
+          '   Each class keeps a list of weak references to its immediate\n'
+          '   subclasses. This method returns a list of all those references\n'
+          '   still alive. The list is in definition order. Example:\n'
+          '\n'
+          '      >>> class A: pass\n'
+          '      >>> class B(A): pass\n'
+          '      >>> A.__subclasses__()\n'
+          "      [<class 'B'>]\n"
           '\n'
           '\n'
           'Class instances\n'
@@ -14488,8 +14567,19 @@ topics = {'assert': 'The "assert" statement\n'
           'they have methods with certain special names.  See section Special\n'
           'method names.\n'
           '\n'
-          'Special attributes: "__dict__" is the attribute dictionary;\n'
-          '"__class__" is the instance’s class.\n'
+          '\n'
+          'Special attributes\n'
+          '------------------\n'
+          '\n'
+          'object.__class__\n'
+          '\n'
+          '   The class to which a class instance belongs.\n'
+          '\n'
+          'object.__dict__\n'
+          '\n'
+          '   A dictionary or other mapping object used to store an object’s\n'
+          '   (writable) attributes. Not all instances have a "__dict__"\n'
+          '   attribute; see the section on __slots__ for more details.\n'
           '\n'
           '\n'
           'I/O objects (also known as file objects)\n'
diff --git a/Misc/NEWS.d/3.12.7.rst b/Misc/NEWS.d/3.12.7.rst
new file mode 100644 (file)
index 0000000..276166d
--- /dev/null
@@ -0,0 +1,377 @@
+.. date: 2024-09-10-19-23-00
+.. gh-issue: 123915
+.. nonce: yZMEDO
+.. release date: 2024-10-01
+.. section: Windows
+
+Ensure that ``Tools\msi\buildrelease.bat`` uses different directories for
+AMD64 and ARM64 builds.
+
+..
+
+.. date: 2024-04-24-22-50-33
+.. gh-issue: 117505
+.. nonce: gcTb_p
+.. section: Windows
+
+Fixes an issue with the Windows installer not running ensurepip in a fully
+isolated environment. This could cause unexpected interactions with the user
+site-packages.
+
+..
+
+.. date: 2024-09-25-12-39-34
+.. gh-issue: 124378
+.. nonce: Ywwgia
+.. section: Tests
+
+Updated ``test_ttk`` to pass with Tcl/Tk 8.6.15.
+
+..
+
+.. date: 2024-08-07-10-42-13
+.. gh-issue: 122792
+.. nonce: oiTMo9
+.. section: Security
+
+Changed IPv4-mapped ``ipaddress.IPv6Address`` to consistently use the mapped
+IPv4 address value for deciding properties. Properties which have their
+behavior fixed are ``is_multicast``, ``is_reserved``, ``is_link_local``,
+``is_global``, and ``is_unspecified``.
+
+..
+
+.. date: 2024-09-27-15-16-04
+.. gh-issue: 116850
+.. nonce: dBkR0-
+.. section: Library
+
+Fix :mod:`argparse` for namespaces with not directly writable dict (e.g.
+classes).
+
+..
+
+.. date: 2024-09-26-22-14-12
+.. gh-issue: 58573
+.. nonce: hozbm9
+.. section: Library
+
+Fix conflicts between abbreviated long options in the parent parser and
+subparsers in :mod:`argparse`.
+
+..
+
+.. date: 2024-09-26-09-18-09
+.. gh-issue: 61181
+.. nonce: dwjmch
+.. section: Library
+
+Fix support of :ref:`choices` with string value in :mod:`argparse`.
+Substrings of the specified string no longer considered valid values.
+
+..
+
+.. date: 2024-09-25-18-08-29
+.. gh-issue: 80259
+.. nonce: kO5Tw7
+.. section: Library
+
+Fix :mod:`argparse` support of positional arguments with ``nargs='?'``,
+``default=argparse.SUPPRESS`` and specified ``type``.
+
+..
+
+.. date: 2024-09-25-12-14-58
+.. gh-issue: 124498
+.. nonce: Ozxs55
+.. section: Library
+
+Fix :class:`typing.TypeAliasType` not to be generic, when ``type_params`` is
+an empty tuple.
+
+..
+
+.. date: 2024-09-24-12-34-48
+.. gh-issue: 124345
+.. nonce: s3vKql
+.. section: Library
+
+:mod:`argparse` vim supports abbreviated single-dash long options separated
+by ``=`` from its value.
+
+..
+
+.. date: 2024-09-23-17-33-47
+.. gh-issue: 104860
+.. nonce: O86OSc
+.. section: Library
+
+Fix disallowing abbreviation of single-dash long options in :mod:`argparse`
+with ``allow_abbrev=False``.
+
+..
+
+.. date: 2024-09-21-23-56-41
+.. gh-issue: 63143
+.. nonce: YKu-LQ
+.. section: Library
+
+Fix parsing mutually exclusive arguments in :mod:`argparse`. Arguments with
+the value identical to the default value (e.g. booleans, small integers,
+empty or 1-character strings) are no longer considered "not present".
+
+..
+
+.. date: 2024-09-21-22-32-21
+.. gh-issue: 72795
+.. nonce: naLmkX
+.. section: Library
+
+Positional arguments with :ref:`nargs` equal to ``'*'`` or
+:data:`!argparse.REMAINDER` are no longer required. This allows to use
+positional argument with ``nargs='*'`` and without ``default`` in mutually
+exclusive group and improves error message about required arguments.
+
+..
+
+.. date: 2024-09-21-19-02-37
+.. gh-issue: 59317
+.. nonce: OAhNZZ
+.. section: Library
+
+Fix parsing positional argument with :ref:`nargs` equal to ``'?'`` or
+``'*'`` if it is preceded by an option and another positional argument.
+
+..
+
+.. date: 2024-09-20-12-23-11
+.. gh-issue: 53780
+.. nonce: mrV1zi
+.. section: Library
+
+:mod:`argparse` now ignores the first ``"--"`` (double dash) between an
+option and command.
+
+..
+
+.. date: 2024-09-19-20-15-00
+.. gh-issue: 124217
+.. nonce: j0KlQB
+.. section: Library
+
+Add RFC 9637 reserved IPv6 block ``3fff::/20`` in :mod:`ipaddress` module.
+
+..
+
+.. date: 2024-09-19-11-47-39
+.. gh-issue: 124248
+.. nonce: g7rufd
+.. section: Library
+
+Fixed potential crash when using :mod:`struct` to process zero-width 'Pascal
+string' fields (``0p``).
+
+..
+
+.. date: 2024-09-19-10-36-18
+.. gh-issue: 81691
+.. nonce: Hyhp_U
+.. section: Library
+
+Fix handling of multiple ``"--"`` (double dashes) in :mod:`argparse`. Only
+the first one has now been removed, all subsequent ones are now taken
+literally.
+
+..
+
+.. date: 2024-09-19-03-46-59
+.. gh-issue: 87041
+.. nonce: 9Ox7Bv
+.. section: Library
+
+Fix a bug in :mod:`argparse` where lengthy subparser argument help is
+incorrectly indented.
+
+..
+
+.. date: 2024-09-17-18-06-42
+.. gh-issue: 124171
+.. nonce: PHCvRJ
+.. section: Library
+
+Add workaround for broken :c:func:`!fmod()` implementations on Windows, that
+loose zero sign (e.g. ``fmod(-10, 1)`` returns ``0.0``).  Patch by Sergey B
+Kirpichev.
+
+..
+
+.. date: 2024-09-13-10-34-19
+.. gh-issue: 123934
+.. nonce: yMe7mL
+.. section: Library
+
+Fix :class:`unittest.mock.MagicMock` reseting magic methods return values
+after ``.reset_mock(return_value=True)`` was called.
+
+..
+
+.. date: 2024-09-11-13-33-19
+.. gh-issue: 123935
+.. nonce: fRZ_56
+.. section: Library
+
+Fix parent slots detection for dataclasses that inherit from classes with
+``__dictoffset__``.
+
+..
+
+.. date: 2024-09-10-11-26-14
+.. gh-issue: 123892
+.. nonce: 2gzIrz
+.. section: Library
+
+Add ``"_wmi"`` to :data:`sys.stdlib_module_names`. Patch by Victor Stinner.
+
+..
+
+.. date: 2024-08-23-15-49-10
+.. gh-issue: 116810
+.. nonce: QLBUU8
+.. section: Library
+
+Resolve a memory leak introduced in CPython 3.10's :mod:`ssl` when the
+:attr:`ssl.SSLSocket.session` property was accessed.  Speeds up read and
+write access to said property by no longer unnecessarily cloning session
+objects via serialization.
+
+..
+
+.. date: 2024-08-15-09-45-34
+.. gh-issue: 121735
+.. nonce: _1q0qf
+.. section: Library
+
+When working with zip archives, importlib.resources now properly honors
+module-adjacent references (e.g. ``files(pkg.mod)`` and not just
+``files(pkg)``).
+
+..
+
+.. date: 2024-07-03-14-23-04
+.. gh-issue: 119004
+.. nonce: L5MoUu
+.. section: Library
+
+Fix a crash in :ref:`OrderedDict.__eq__ <collections_OrderedDict__eq__>`
+when operands are mutated during the check. Patch by Bénédikt Tran.
+
+..
+
+.. bpo: 44864
+.. date: 2021-08-24-19-37-46
+.. nonce: KzxaDh
+.. section: Library
+
+Do not translate user-provided strings in :class:`argparse.ArgumentParser`.
+
+..
+
+.. date: 2024-09-21-23-12-18
+.. gh-issue: 112938
+.. nonce: OeiDru
+.. section: IDLE
+
+Fix uninteruptable hang when Shell gets rapid continuous output.
+
+..
+
+.. date: 2024-09-25-12-05-45
+.. gh-issue: 116510
+.. nonce: dhn8w8
+.. section: Core and Builtins
+
+Fix a bug that can cause a crash when sub-interpreters use "basic"
+single-phase extension modules.  Shared objects could refer to PyGC_Head
+nodes that had been freed as part of interpreter cleanup.
+
+..
+
+.. date: 2024-09-17-22-06-01
+.. gh-issue: 124188
+.. nonce: aFqNAB
+.. section: Core and Builtins
+
+Fix reading and decoding a line from the source file witn non-UTF-8 encoding
+for syntax errors raised in the compiler.
+
+..
+
+.. date: 2024-09-10-13-27-16
+.. gh-issue: 77894
+.. nonce: ZC-Olu
+.. section: Core and Builtins
+
+Fix possible crash in the garbage collector when it tries to break a
+reference loop containing a :class:`memoryview` object. Now a
+:class:`!memoryview` object can only be cleared if there are no buffers that
+refer it.
+
+..
+
+.. date: 2024-06-19-21-34-21
+.. gh-issue: 98442
+.. nonce: cqhjkN
+.. section: Core and Builtins
+
+Fix too wide source locations of the cleanup instructions of a with
+statement.
+
+..
+
+.. date: 2024-06-14-22-02-25
+.. gh-issue: 113993
+.. nonce: MiA0vX
+.. section: Core and Builtins
+
+Strings interned with :func:`sys.intern` are again garbage-collected when no
+longer used, as per the documentation. Strings interned with the C function
+:c:func:`PyUnicode_InternInPlace` are still immortal. Internals of the
+string interning mechanism have been changed. This may affect performance
+and identities of :class:`str` objects.
+
+..
+
+.. date: 2024-07-04-15-41-10
+.. gh-issue: 113993
+.. nonce: cLSiWV
+.. section: C API
+
+:c:func:`PyUnicode_InternInPlace` no longer prevents its argument from being
+garbage collected.
+
+Several functions that take ``char *`` are now documented as possibly
+preventing string objects from being garbage collected; refer to their
+documentation for details: :c:func:`PyUnicode_InternFromString`,
+:c:func:`PyDict_SetItemString`, :c:func:`PyObject_SetAttrString`,
+:c:func:`PyObject_DelAttrString`, :c:func:`PyUnicode_InternFromString`, and
+``PyModule_Add*`` convenience functions.
+
+..
+
+.. date: 2024-09-27-15-58-10
+.. gh-issue: 124487
+.. nonce: PAZTQf
+.. section: Build
+
+Windows builds now use Windows 8.1 as their API baseline (installation
+already required Windows 8.1).
+
+..
+
+.. date: 2024-09-11-16-06-42
+.. gh-issue: 123917
+.. nonce: JuZl0r
+.. section: Build
+
+Fix the check for the ``crypt()`` function in the configure script. Patch by
+Paul Smith and Victor Stinner.
diff --git a/Misc/NEWS.d/next/Build/2024-09-11-16-06-42.gh-issue-123917.JuZl0r.rst b/Misc/NEWS.d/next/Build/2024-09-11-16-06-42.gh-issue-123917.JuZl0r.rst
deleted file mode 100644 (file)
index 4cf4a17..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix the check for the ``crypt()`` function in the configure script. Patch by
-Paul Smith and Victor Stinner.
diff --git a/Misc/NEWS.d/next/Build/2024-09-27-15-58-10.gh-issue-124487.PAZTQf.rst b/Misc/NEWS.d/next/Build/2024-09-27-15-58-10.gh-issue-124487.PAZTQf.rst
deleted file mode 100644 (file)
index 0ffadb2..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Windows builds now use Windows 8.1 as their API baseline (installation
-already required Windows 8.1).
diff --git a/Misc/NEWS.d/next/C API/2024-07-04-15-41-10.gh-issue-113993.cLSiWV.rst b/Misc/NEWS.d/next/C API/2024-07-04-15-41-10.gh-issue-113993.cLSiWV.rst
deleted file mode 100644 (file)
index 9b7f208..0000000
+++ /dev/null
@@ -1,12 +0,0 @@
-:c:func:`PyUnicode_InternInPlace` no longer prevents its argument from being
-garbage collected.
-
-Several functions that take ``char *`` are now
-documented as possibly preventing string objects from being garbage
-collected; refer to their documentation for details:
-:c:func:`PyUnicode_InternFromString`,
-:c:func:`PyDict_SetItemString`,
-:c:func:`PyObject_SetAttrString`,
-:c:func:`PyObject_DelAttrString`,
-:c:func:`PyUnicode_InternFromString`,
-and ``PyModule_Add*`` convenience functions.
diff --git a/Misc/NEWS.d/next/Core and Builtins/2024-06-14-22-02-25.gh-issue-113993.MiA0vX.rst b/Misc/NEWS.d/next/Core and Builtins/2024-06-14-22-02-25.gh-issue-113993.MiA0vX.rst
deleted file mode 100644 (file)
index 9931787..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-Strings interned with :func:`sys.intern` are again garbage-collected when no
-longer used, as per the documentation. Strings interned with the C function
-:c:func:`PyUnicode_InternInPlace` are still immortal. Internals of the
-string interning mechanism have been changed. This may affect performance
-and identities of :class:`str` objects.
diff --git a/Misc/NEWS.d/next/Core and Builtins/2024-06-19-21-34-21.gh-issue-98442.cqhjkN.rst b/Misc/NEWS.d/next/Core and Builtins/2024-06-19-21-34-21.gh-issue-98442.cqhjkN.rst
deleted file mode 100644 (file)
index fb0a93f..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix too wide source locations of the cleanup instructions of a with
-statement.
diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2024-09-10-13-27-16.gh-issue-77894.ZC-Olu.rst b/Misc/NEWS.d/next/Core_and_Builtins/2024-09-10-13-27-16.gh-issue-77894.ZC-Olu.rst
deleted file mode 100644 (file)
index a714033..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-Fix possible crash in the garbage collector when it tries to break a
-reference loop containing a :class:`memoryview` object. Now a
-:class:`!memoryview` object can only be cleared if there are no buffers that
-refer it.
diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2024-09-17-22-06-01.gh-issue-124188.aFqNAB.rst b/Misc/NEWS.d/next/Core_and_Builtins/2024-09-17-22-06-01.gh-issue-124188.aFqNAB.rst
deleted file mode 100644 (file)
index 0c2935f..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix reading and decoding a line from the source file witn non-UTF-8 encoding
-for syntax errors raised in the compiler.
diff --git a/Misc/NEWS.d/next/Core_and_Builtins/2024-09-25-12-05-45.gh-issue-116510.dhn8w8.rst b/Misc/NEWS.d/next/Core_and_Builtins/2024-09-25-12-05-45.gh-issue-116510.dhn8w8.rst
deleted file mode 100644 (file)
index fc3f8af..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix a bug that can cause a crash when sub-interpreters use "basic"
-single-phase extension modules.  Shared objects could refer to PyGC_Head
-nodes that had been freed as part of interpreter cleanup.
diff --git a/Misc/NEWS.d/next/IDLE/2024-09-21-23-12-18.gh-issue-112938.OeiDru.rst b/Misc/NEWS.d/next/IDLE/2024-09-21-23-12-18.gh-issue-112938.OeiDru.rst
deleted file mode 100644 (file)
index 0cd058e..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Fix uninteruptable hang when Shell gets rapid continuous output.
diff --git a/Misc/NEWS.d/next/Library/2021-08-24-19-37-46.bpo-44864.KzxaDh.rst b/Misc/NEWS.d/next/Library/2021-08-24-19-37-46.bpo-44864.KzxaDh.rst
deleted file mode 100644 (file)
index 9610fa9..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Do not translate user-provided strings in :class:`argparse.ArgumentParser`.
diff --git a/Misc/NEWS.d/next/Library/2024-07-03-14-23-04.gh-issue-119004.L5MoUu.rst b/Misc/NEWS.d/next/Library/2024-07-03-14-23-04.gh-issue-119004.L5MoUu.rst
deleted file mode 100644 (file)
index 899bd16..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix a crash in :ref:`OrderedDict.__eq__ <collections_OrderedDict__eq__>`
-when operands are mutated during the check. Patch by Bénédikt Tran.
diff --git a/Misc/NEWS.d/next/Library/2024-08-15-09-45-34.gh-issue-121735._1q0qf.rst b/Misc/NEWS.d/next/Library/2024-08-15-09-45-34.gh-issue-121735._1q0qf.rst
deleted file mode 100644 (file)
index e10b2e7..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-When working with zip archives, importlib.resources now properly honors
-module-adjacent references (e.g. ``files(pkg.mod)`` and not just
-``files(pkg)``).
diff --git a/Misc/NEWS.d/next/Library/2024-08-23-15-49-10.gh-issue-116810.QLBUU8.rst b/Misc/NEWS.d/next/Library/2024-08-23-15-49-10.gh-issue-116810.QLBUU8.rst
deleted file mode 100644 (file)
index 0e5256e..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-Resolve a memory leak introduced in CPython 3.10's :mod:`ssl` when the
-:attr:`ssl.SSLSocket.session` property was accessed.  Speeds up read and
-write access to said property by no longer unnecessarily cloning session
-objects via serialization.
diff --git a/Misc/NEWS.d/next/Library/2024-09-10-11-26-14.gh-issue-123892.2gzIrz.rst b/Misc/NEWS.d/next/Library/2024-09-10-11-26-14.gh-issue-123892.2gzIrz.rst
deleted file mode 100644 (file)
index bef5344..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Add ``"_wmi"`` to :data:`sys.stdlib_module_names`. Patch by Victor Stinner.
diff --git a/Misc/NEWS.d/next/Library/2024-09-11-13-33-19.gh-issue-123935.fRZ_56.rst b/Misc/NEWS.d/next/Library/2024-09-11-13-33-19.gh-issue-123935.fRZ_56.rst
deleted file mode 100644 (file)
index de720c3..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix parent slots detection for dataclasses that inherit from classes with
-``__dictoffset__``.
diff --git a/Misc/NEWS.d/next/Library/2024-09-13-10-34-19.gh-issue-123934.yMe7mL.rst b/Misc/NEWS.d/next/Library/2024-09-13-10-34-19.gh-issue-123934.yMe7mL.rst
deleted file mode 100644 (file)
index cec7741..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :class:`unittest.mock.MagicMock` reseting magic methods return values
-after ``.reset_mock(return_value=True)`` was called.
diff --git a/Misc/NEWS.d/next/Library/2024-09-17-18-06-42.gh-issue-124171.PHCvRJ.rst b/Misc/NEWS.d/next/Library/2024-09-17-18-06-42.gh-issue-124171.PHCvRJ.rst
deleted file mode 100644 (file)
index c2f0bb1..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Add workaround for broken :c:func:`!fmod()` implementations on Windows, that
-loose zero sign (e.g. ``fmod(-10, 1)`` returns ``0.0``).  Patch by Sergey B
-Kirpichev.
diff --git a/Misc/NEWS.d/next/Library/2024-09-19-03-46-59.gh-issue-87041.9Ox7Bv.rst b/Misc/NEWS.d/next/Library/2024-09-19-03-46-59.gh-issue-87041.9Ox7Bv.rst
deleted file mode 100644 (file)
index 47a5f0c..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Fix a bug in :mod:`argparse` where lengthy subparser argument help is incorrectly indented.
diff --git a/Misc/NEWS.d/next/Library/2024-09-19-10-36-18.gh-issue-81691.Hyhp_U.rst b/Misc/NEWS.d/next/Library/2024-09-19-10-36-18.gh-issue-81691.Hyhp_U.rst
deleted file mode 100644 (file)
index 8f01085..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix handling of multiple ``"--"`` (double dashes) in :mod:`argparse`. Only
-the first one has now been removed, all subsequent ones are now taken
-literally.
diff --git a/Misc/NEWS.d/next/Library/2024-09-19-11-47-39.gh-issue-124248.g7rufd.rst b/Misc/NEWS.d/next/Library/2024-09-19-11-47-39.gh-issue-124248.g7rufd.rst
deleted file mode 100644 (file)
index 1bd333f..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fixed potential crash when using :mod:`struct` to process zero-width
-'Pascal string' fields (``0p``).
diff --git a/Misc/NEWS.d/next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst b/Misc/NEWS.d/next/Library/2024-09-19-20-15-00.gh-issue-124217.j0KlQB.rst
deleted file mode 100644 (file)
index 46f9866..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Add RFC 9637 reserved IPv6 block ``3fff::/20`` in :mod:`ipaddress` module.
diff --git a/Misc/NEWS.d/next/Library/2024-09-20-12-23-11.gh-issue-53780.mrV1zi.rst b/Misc/NEWS.d/next/Library/2024-09-20-12-23-11.gh-issue-53780.mrV1zi.rst
deleted file mode 100644 (file)
index fb700c7..0000000
+++ /dev/null
@@ -1 +0,0 @@
-:mod:`argparse` now ignores the first ``"--"`` (double dash) between an option and command.
diff --git a/Misc/NEWS.d/next/Library/2024-09-21-19-02-37.gh-issue-59317.OAhNZZ.rst b/Misc/NEWS.d/next/Library/2024-09-21-19-02-37.gh-issue-59317.OAhNZZ.rst
deleted file mode 100644 (file)
index 0b1df9e..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix parsing positional argument with :ref:`nargs` equal to ``'?'`` or ``'*'``
-if it is preceded by an option and another positional argument.
diff --git a/Misc/NEWS.d/next/Library/2024-09-21-22-32-21.gh-issue-72795.naLmkX.rst b/Misc/NEWS.d/next/Library/2024-09-21-22-32-21.gh-issue-72795.naLmkX.rst
deleted file mode 100644 (file)
index 15c0918..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-Positional arguments with :ref:`nargs` equal to ``'*'`` or
-:data:`!argparse.REMAINDER` are no longer required. This allows to use
-positional argument with ``nargs='*'`` and without ``default`` in mutually
-exclusive group and improves error message about required arguments.
diff --git a/Misc/NEWS.d/next/Library/2024-09-21-23-56-41.gh-issue-63143.YKu-LQ.rst b/Misc/NEWS.d/next/Library/2024-09-21-23-56-41.gh-issue-63143.YKu-LQ.rst
deleted file mode 100644 (file)
index cb031fd..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Fix parsing mutually exclusive arguments in :mod:`argparse`. Arguments with
-the value identical to the default value (e.g. booleans, small integers,
-empty or 1-character strings) are no longer considered "not present".
diff --git a/Misc/NEWS.d/next/Library/2024-09-23-17-33-47.gh-issue-104860.O86OSc.rst b/Misc/NEWS.d/next/Library/2024-09-23-17-33-47.gh-issue-104860.O86OSc.rst
deleted file mode 100644 (file)
index 707c4d6..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix disallowing abbreviation of single-dash long options in :mod:`argparse`
-with ``allow_abbrev=False``.
diff --git a/Misc/NEWS.d/next/Library/2024-09-24-12-34-48.gh-issue-124345.s3vKql.rst b/Misc/NEWS.d/next/Library/2024-09-24-12-34-48.gh-issue-124345.s3vKql.rst
deleted file mode 100644 (file)
index dff902d..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-:mod:`argparse` vim supports abbreviated single-dash long options separated
-by ``=`` from its value.
diff --git a/Misc/NEWS.d/next/Library/2024-09-25-12-14-58.gh-issue-124498.Ozxs55.rst b/Misc/NEWS.d/next/Library/2024-09-25-12-14-58.gh-issue-124498.Ozxs55.rst
deleted file mode 100644 (file)
index 4dbf4eb..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :class:`typing.TypeAliasType` not to be generic, when ``type_params`` is
-an empty tuple.
diff --git a/Misc/NEWS.d/next/Library/2024-09-25-18-08-29.gh-issue-80259.kO5Tw7.rst b/Misc/NEWS.d/next/Library/2024-09-25-18-08-29.gh-issue-80259.kO5Tw7.rst
deleted file mode 100644 (file)
index bb451cd..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :mod:`argparse` support of positional arguments with ``nargs='?'``,
-``default=argparse.SUPPRESS`` and specified ``type``.
diff --git a/Misc/NEWS.d/next/Library/2024-09-26-09-18-09.gh-issue-61181.dwjmch.rst b/Misc/NEWS.d/next/Library/2024-09-26-09-18-09.gh-issue-61181.dwjmch.rst
deleted file mode 100644 (file)
index 801a5fd..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix support of :ref:`choices` with string value in :mod:`argparse`. Substrings
-of the specified string no longer considered valid values.
diff --git a/Misc/NEWS.d/next/Library/2024-09-26-22-14-12.gh-issue-58573.hozbm9.rst b/Misc/NEWS.d/next/Library/2024-09-26-22-14-12.gh-issue-58573.hozbm9.rst
deleted file mode 100644 (file)
index 37d64ee..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix conflicts between abbreviated long options in the parent parser and
-subparsers in :mod:`argparse`.
diff --git a/Misc/NEWS.d/next/Library/2024-09-27-15-16-04.gh-issue-116850.dBkR0-.rst b/Misc/NEWS.d/next/Library/2024-09-27-15-16-04.gh-issue-116850.dBkR0-.rst
deleted file mode 100644 (file)
index 62639a1..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-Fix :mod:`argparse` for namespaces with not directly writable dict (e.g.
-classes).
diff --git a/Misc/NEWS.d/next/Security/2024-08-07-10-42-13.gh-issue-122792.oiTMo9.rst b/Misc/NEWS.d/next/Security/2024-08-07-10-42-13.gh-issue-122792.oiTMo9.rst
deleted file mode 100644 (file)
index 18e293b..0000000
+++ /dev/null
@@ -1,3 +0,0 @@
-Changed IPv4-mapped ``ipaddress.IPv6Address`` to consistently use the mapped IPv4
-address value for deciding properties. Properties which have their behavior fixed
-are ``is_multicast``, ``is_reserved``, ``is_link_local``, ``is_global``, and ``is_unspecified``.
diff --git a/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst b/Misc/NEWS.d/next/Tests/2024-09-25-12-39-34.gh-issue-124378.Ywwgia.rst
deleted file mode 100644 (file)
index 9ddcca0..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Updated ``test_ttk`` to pass with Tcl/Tk 8.6.15.
diff --git a/Misc/NEWS.d/next/Windows/2024-04-24-22-50-33.gh-issue-117505.gcTb_p.rst b/Misc/NEWS.d/next/Windows/2024-04-24-22-50-33.gh-issue-117505.gcTb_p.rst
deleted file mode 100644 (file)
index 0931687..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Fixes an issue with the Windows installer not running ensurepip in a fully isolated environment. This could cause unexpected interactions with the user site-packages.
diff --git a/Misc/NEWS.d/next/Windows/2024-09-10-19-23-00.gh-issue-123915.yZMEDO.rst b/Misc/NEWS.d/next/Windows/2024-09-10-19-23-00.gh-issue-123915.yZMEDO.rst
deleted file mode 100644 (file)
index 026b09d..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Ensure that ``Tools\msi\buildrelease.bat`` uses different directories for AMD64 and ARM64 builds.
index 49d503bbe458dffd44652b6cc2a9ac5b24ccaa5d..f7fbe2083d87742fc279b0d6ba4285767785edd7 100644 (file)
@@ -1,4 +1,4 @@
-This is Python version 3.12.6
+This is Python version 3.12.7
 =============================
 
 .. image:: https://github.com/python/cpython/workflows/Tests/badge.svg