Python 3.10.0a4
diff --git a/Lib/pydoc_data/topics.py b/Lib/pydoc_data/topics.py
index 49630bb..93d2ddf 100644
--- a/Lib/pydoc_data/topics.py
+++ b/Lib/pydoc_data/topics.py
@@ -1,5 +1,5 @@
 # -*- coding: utf-8 -*-
-# Autogenerated by Sphinx on Mon Dec  7 19:34:00 2020
+# Autogenerated by Sphinx on Mon Jan  4 17:25:50 2021
 topics = {'assert': 'The "assert" statement\n'
            '**********************\n'
            '\n'
@@ -461,13 +461,12 @@
           '\n'
           '   async_for_stmt ::= "async" for_stmt\n'
           '\n'
-          'An *asynchronous iterable* is able to call asynchronous code in '
-          'its\n'
-          '*iter* implementation, and *asynchronous iterator* can call\n'
-          'asynchronous code in its *next* method.\n'
+          'An *asynchronous iterable* provides an "__aiter__" method that\n'
+          'directly returns an *asynchronous iterator*, which can call\n'
+          'asynchronous code in its "__anext__" method.\n'
           '\n'
           'The "async for" statement allows convenient iteration over\n'
-          'asynchronous iterators.\n'
+          'asynchronous iterables.\n'
           '\n'
           'The following code:\n'
           '\n'
@@ -2383,8 +2382,9 @@
              'compatible\n'
              'with an exception if it is the class or a base class of the '
              'exception\n'
-             'object or a tuple containing an item compatible with the '
-             'exception.\n'
+             'object, or a tuple containing an item that is the class or a '
+             'base\n'
+             'class of the exception object.\n'
              '\n'
              'If no except clause matches the exception, the search for an '
              'exception\n'
@@ -2451,11 +2451,32 @@
              '(see\n'
              'section The standard type hierarchy) identifying the point in '
              'the\n'
-             'program where the exception occurred.  "sys.exc_info()" values '
-             'are\n'
-             'restored to their previous values (before the call) when '
-             'returning\n'
-             'from a function that handled an exception.\n'
+             'program where the exception occurred.  The details about the '
+             'exception\n'
+             'accessed via "sys.exc_info()" are restored to their previous '
+             'values\n'
+             'when leaving an exception handler:\n'
+             '\n'
+             '   >>> print(sys.exc_info())\n'
+             '   (None, None, None)\n'
+             '   >>> try:\n'
+             '   ...     raise TypeError\n'
+             '   ... except:\n'
+             '   ...     print(sys.exc_info())\n'
+             '   ...     try:\n'
+             '   ...          raise ValueError\n'
+             '   ...     except:\n'
+             '   ...         print(sys.exc_info())\n'
+             '   ...     print(sys.exc_info())\n'
+             '   ...\n'
+             "   (<class 'TypeError'>, TypeError(), <traceback object at "
+             '0x10efad080>)\n'
+             "   (<class 'ValueError'>, ValueError(), <traceback object at "
+             '0x10efad040>)\n'
+             "   (<class 'TypeError'>, TypeError(), <traceback object at "
+             '0x10efad080>)\n'
+             '   >>> print(sys.exc_info())\n'
+             '   (None, None, None)\n'
              '\n'
              'The optional "else" clause is executed if the control flow '
              'leaves the\n'
@@ -2985,13 +3006,12 @@
              '\n'
              '   async_for_stmt ::= "async" for_stmt\n'
              '\n'
-             'An *asynchronous iterable* is able to call asynchronous code in '
-             'its\n'
-             '*iter* implementation, and *asynchronous iterator* can call\n'
-             'asynchronous code in its *next* method.\n'
+             'An *asynchronous iterable* provides an "__aiter__" method that\n'
+             'directly returns an *asynchronous iterator*, which can call\n'
+             'asynchronous code in its "__anext__" method.\n'
              '\n'
              'The "async for" statement allows convenient iteration over\n'
-             'asynchronous iterators.\n'
+             'asynchronous iterables.\n'
              '\n'
              'The following code:\n'
              '\n'
@@ -5524,44 +5544,51 @@
                   '   |           | formats the result in either fixed-point '
                   'format or in      |\n'
                   '   |           | scientific notation, depending on its '
-                  'magnitude.  The      |\n'
-                  '   |           | precise rules are as follows: suppose that '
-                  'the result      |\n'
+                  'magnitude. A         |\n'
+                  '   |           | precision of "0" is treated as equivalent '
+                  'to a precision   |\n'
+                  '   |           | of "1".  The precise rules are as follows: '
+                  'suppose that    |\n'
+                  '   |           | the result formatted with presentation '
+                  'type "\'e\'" and      |\n'
+                  '   |           | precision "p-1" would have exponent '
+                  '"exp".  Then, if "m <= |\n'
+                  '   |           | exp < p", where "m" is -4 for floats and '
+                  '-6 for            |\n'
+                  '   |           | "Decimals", the number is formatted with '
+                  'presentation type |\n'
+                  '   |           | "\'f\'" and precision "p-1-exp".  '
+                  'Otherwise, the number is   |\n'
                   '   |           | formatted with presentation type "\'e\'" '
-                  'and precision "p-1" |\n'
-                  '   |           | would have exponent "exp".  Then, if "m <= '
-                  'exp < p", where |\n'
-                  '   |           | "m" is -4 for floats and -6 for '
-                  '"Decimals", the number is  |\n'
-                  '   |           | formatted with presentation type "\'f\'" '
                   'and precision       |\n'
-                  '   |           | "p-1-exp".  Otherwise, the number is '
-                  'formatted with        |\n'
-                  '   |           | presentation type "\'e\'" and precision '
-                  '"p-1". In both cases |\n'
-                  '   |           | insignificant trailing zeros are removed '
-                  'from the          |\n'
-                  '   |           | significand, and the decimal point is also '
-                  'removed if      |\n'
-                  '   |           | there are no remaining digits following '
-                  'it, unless the     |\n'
-                  '   |           | "\'#\'" option is used.  Positive and '
-                  'negative infinity,     |\n'
-                  '   |           | positive and negative zero, and nans, are '
-                  'formatted as     |\n'
-                  '   |           | "inf", "-inf", "0", "-0" and "nan" '
-                  'respectively,           |\n'
-                  '   |           | regardless of the precision.  A precision '
-                  'of "0" is        |\n'
-                  '   |           | treated as equivalent to a precision of '
-                  '"1". With no       |\n'
-                  '   |           | precision given, uses a precision of "6" '
-                  'significant       |\n'
-                  '   |           | digits for "float", and shows all '
-                  'coefficient digits for   |\n'
-                  '   |           | '
-                  '"Decimal".                                                 '
-                  '|\n'
+                  '   |           | "p-1". In both cases insignificant '
+                  'trailing zeros are      |\n'
+                  '   |           | removed from the significand, and the '
+                  'decimal point is     |\n'
+                  '   |           | also removed if there are no remaining '
+                  'digits following    |\n'
+                  '   |           | it, unless the "\'#\'" option is used.  '
+                  'With no precision    |\n'
+                  '   |           | given, uses a precision of "6" significant '
+                  'digits for      |\n'
+                  '   |           | "float". For "Decimal", the coefficient of '
+                  'the result is   |\n'
+                  '   |           | formed from the coefficient digits of the '
+                  'value;           |\n'
+                  '   |           | scientific notation is used for values '
+                  'smaller than "1e-6" |\n'
+                  '   |           | in absolute value and values where the '
+                  'place value of the  |\n'
+                  '   |           | least significant digit is larger than 1, '
+                  'and fixed-point  |\n'
+                  '   |           | notation is used otherwise.  Positive and '
+                  'negative         |\n'
+                  '   |           | infinity, positive and negative zero, and '
+                  'nans, are        |\n'
+                  '   |           | formatted as "inf", "-inf", "0", "-0" and '
+                  '"nan"            |\n'
+                  '   |           | respectively, regardless of the '
+                  'precision.                 |\n'
                   '   '
                   '+-----------+------------------------------------------------------------+\n'
                   '   | "\'G\'"     | General format. Same as "\'g\'" except '
@@ -5586,19 +5613,24 @@
                   'percent sign.          |\n'
                   '   '
                   '+-----------+------------------------------------------------------------+\n'
-                  '   | None      | Similar to "\'g\'", except that '
-                  'fixed-point notation, when   |\n'
-                  '   |           | used, has at least one digit past the '
-                  'decimal point. The   |\n'
-                  '   |           | default precision is as high as needed to '
-                  'represent the    |\n'
-                  '   |           | particular value. The overall effect is to '
-                  'match the       |\n'
-                  '   |           | output of "str()" as altered by the other '
-                  'format           |\n'
-                  '   |           | '
-                  'modifiers.                                                 '
-                  '|\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'
+                  '   |           | 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'
+                  '   |           | "context.capitals" for the current decimal '
+                  'context.  The   |\n'
+                  '   |           | overall effect is to match the output of '
+                  '"str()" as        |\n'
+                  '   |           | altered by the other format '
+                  'modifiers.                     |\n'
                   '   '
                   '+-----------+------------------------------------------------------------+\n'
                   '\n'
@@ -5972,8 +6004,10 @@
            '\n'
            'Names listed in a "global" statement must not be defined as '
            'formal\n'
-           'parameters or in a "for" loop control target, "class" definition,\n'
-           'function definition, "import" statement, or variable annotation.\n'
+           'parameters, or as targets in "with" statements or "except" '
+           'clauses, or\n'
+           'in a "for" target list, "class" definition, function definition,\n'
+           '"import" statement, or variable annotation.\n'
            '\n'
            '**CPython implementation detail:** The current implementation does '
            'not\n'
@@ -7925,7 +7959,7 @@
                  'immediate\n'
                  '   subclasses.  This method returns a list of all those '
                  'references\n'
-                 '   still alive. Example:\n'
+                 '   still alive.  The list is in definition order.  Example:\n'
                  '\n'
                  '      >>> int.__subclasses__()\n'
                  "      [<class 'bool'>]\n"
@@ -11224,7 +11258,8 @@
         'object is “compatible” with the exception.  An object is compatible\n'
         'with an exception if it is the class or a base class of the '
         'exception\n'
-        'object or a tuple containing an item compatible with the exception.\n'
+        'object, or a tuple containing an item that is the class or a base\n'
+        'class of the exception object.\n'
         '\n'
         'If no except clause matches the exception, the search for an '
         'exception\n'
@@ -11279,9 +11314,31 @@
         'the\n'
         'exception class, the exception instance and a traceback object (see\n'
         'section The standard type hierarchy) identifying the point in the\n'
-        'program where the exception occurred.  "sys.exc_info()" values are\n'
-        'restored to their previous values (before the call) when returning\n'
-        'from a function that handled an exception.\n'
+        'program where the exception occurred.  The details about the '
+        'exception\n'
+        'accessed via "sys.exc_info()" are restored to their previous values\n'
+        'when leaving an exception handler:\n'
+        '\n'
+        '   >>> print(sys.exc_info())\n'
+        '   (None, None, None)\n'
+        '   >>> try:\n'
+        '   ...     raise TypeError\n'
+        '   ... except:\n'
+        '   ...     print(sys.exc_info())\n'
+        '   ...     try:\n'
+        '   ...          raise ValueError\n'
+        '   ...     except:\n'
+        '   ...         print(sys.exc_info())\n'
+        '   ...     print(sys.exc_info())\n'
+        '   ...\n'
+        "   (<class 'TypeError'>, TypeError(), <traceback object at "
+        '0x10efad080>)\n'
+        "   (<class 'ValueError'>, ValueError(), <traceback object at "
+        '0x10efad040>)\n'
+        "   (<class 'TypeError'>, TypeError(), <traceback object at "
+        '0x10efad080>)\n'
+        '   >>> print(sys.exc_info())\n'
+        '   (None, None, None)\n'
         '\n'
         'The optional "else" clause is executed if the control flow leaves '
         'the\n'
@@ -11445,7 +11502,6 @@
           '      There are two types of integers:\n'
           '\n'
           '      Integers ("int")\n'
-          '\n'
           '         These represent numbers in an unlimited range, subject to\n'
           '         available (virtual) memory only.  For the purpose of '
           'shift\n'