diff --git a/Doc/c-api/init.rst b/Doc/c-api/init.rst
index c2971e9..7f18e92 100644
--- a/Doc/c-api/init.rst
+++ b/Doc/c-api/init.rst
@@ -419,10 +419,9 @@
 The Python interpreter needs to keep some bookkeeping information separate per
 thread --- for this it uses a data structure called :ctype:`PyThreadState`.
 There's one global variable, however: the pointer to the current
-:ctype:`PyThreadState` structure.  While most thread packages have a way to
-store "per-thread global data," Python's internal platform independent thread
-abstraction doesn't support this yet.  Therefore, the current thread state must
-be manipulated explicitly.
+:ctype:`PyThreadState` structure.  Before the addition of :dfn:`thread-local
+storage` (:dfn:`TLS`) the current thread state had to be manipulated
+explicitly.
 
 This is easy enough in most cases.  Most code manipulating the global
 interpreter lock has the following simple structure::
diff --git a/Doc/c-api/intro.rst b/Doc/c-api/intro.rst
index e8a3fc4..c56000e 100644
--- a/Doc/c-api/intro.rst
+++ b/Doc/c-api/intro.rst
@@ -44,7 +44,7 @@
 ``<string.h>``, ``<errno.h>``, ``<limits.h>``, and ``<stdlib.h>`` (if
 available).
 
-.. warning::
+.. note::
 
    Since Python may define some pre-processor definitions which affect the standard
    headers on some systems, you *must* include :file:`Python.h` before any standard
diff --git a/Doc/distutils/apiref.rst b/Doc/distutils/apiref.rst
index 20bb31a..a7db455 100644
--- a/Doc/distutils/apiref.rst
+++ b/Doc/distutils/apiref.rst
@@ -886,9 +886,7 @@
    prefix of all files and directories in the archive.  *root_dir* and *base_dir*
    both default to the current directory.  Returns the name of the archive file.
 
-   .. warning::
-
-      This should be changed to support bz2 files
+   .. XXX This should be changed to support bz2 files.
 
 
 .. function:: make_tarball(base_name, base_dir[, compress='gzip', verbose=0, dry_run=0])
@@ -901,9 +899,7 @@
    possibly plus the appropriate compression extension (:file:`.gz`, :file:`.bz2`
    or :file:`.Z`).  Return the output filename.
 
-   .. warning::
-
-      This should be replaced with calls to the :mod:`tarfile` module.
+   .. XXX This should be replaced with calls to the :mod:`tarfile` module.
 
 
 .. function:: make_zipfile(base_name, base_dir[, verbose=0, dry_run=0])
@@ -1346,10 +1342,8 @@
 
    Wraps *text* to less than *width* wide.
 
-   .. warning::
-
-      Should be replaced with :mod:`textwrap` (which is available  in Python 2.3 and
-      later).
+   .. XXX Should be replaced with :mod:`textwrap` (which is available in Python
+      2.3 and later).
 
 
 .. class:: FancyGetopt([option_table=None])
@@ -1398,8 +1392,8 @@
 ================================================
 
 .. module:: distutils.filelist
-   :synopsis: The FileList class, used for poking about the file system and building lists of
-              files.
+   :synopsis: The FileList class, used for poking about the file system and
+              building lists of files.
 
 
 This module provides the :class:`FileList` class, used for poking about the
@@ -1413,13 +1407,8 @@
    :synopsis: A simple logging mechanism, 282-style
 
 
-.. warning::
+.. XXX Should be replaced with standard :mod:`logging` module.
 
-   Should be replaced with standard :mod:`logging` module.
-
-.. % \subsubsection{\module{} --- }
-.. % \declaremodule{standard}{distutils.magic}
-.. % \modulesynopsis{ }
 
 
 :mod:`distutils.spawn` --- Spawn a sub-process
diff --git a/Doc/documenting/markup.rst b/Doc/documenting/markup.rst
index 3ca8983..1d1023a 100644
--- a/Doc/documenting/markup.rst
+++ b/Doc/documenting/markup.rst
@@ -594,11 +594,11 @@
 
 .. describe:: warning
 
-   An important bit of information about an API that a user should be very aware
-   of when using whatever bit of API the warning pertains to.  The content of
-   the directive should be written in complete sentences and include all
-   appropriate punctuation. This differs from ``note`` in that it is recommended
-   over ``note`` for information regarding security.
+   An important bit of information about an API that a user should be aware of
+   when using whatever bit of API the warning pertains to.  The content of the
+   directive should be written in complete sentences and include all appropriate
+   punctuation.  This should only be chosen over ``note`` for information
+   regarding the possibility of crashes, data loss, or security implications.
 
 .. describe:: versionadded
 
diff --git a/Doc/extending/extending.rst b/Doc/extending/extending.rst
index b3ceb94..d052ec2 100644
--- a/Doc/extending/extending.rst
+++ b/Doc/extending/extending.rst
@@ -47,7 +47,7 @@
 which pulls in the Python API (you can add a comment describing the purpose of
 the module and a copyright notice if you like).
 
-.. warning::
+.. note::
 
    Since Python may define some pre-processor definitions which affect the standard
    headers on some systems, you *must* include :file:`Python.h` before any standard
diff --git a/Doc/library/2to3.rst b/Doc/library/2to3.rst
index b1c2dd7..56b3061 100644
--- a/Doc/library/2to3.rst
+++ b/Doc/library/2to3.rst
@@ -101,7 +101,7 @@
 .. moduleauthor:: Collin Winter
 
 
-.. warning::
+.. note::
 
    The :mod:`lib2to3` API should be considered unstable and may change
    drastically in the future.
diff --git a/Doc/library/aepack.rst b/Doc/library/aepack.rst
index 798d603..a2adc9c 100644
--- a/Doc/library/aepack.rst
+++ b/Doc/library/aepack.rst
@@ -14,9 +14,9 @@
 AppleEvent descriptor is handled by Python objects of built-in type
 :class:`AEDesc`, defined in module :mod:`Carbon.AE`.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 
 The :mod:`aepack` module defines the following functions:
diff --git a/Doc/library/aetools.rst b/Doc/library/aetools.rst
index 76b5e17..0b8ec77 100644
--- a/Doc/library/aetools.rst
+++ b/Doc/library/aetools.rst
@@ -22,9 +22,9 @@
 manager, see section :ref:`osx-gui-scripts` for details. This restriction may be
 lifted in future releases.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 
 The :mod:`aetools` module defines the following functions:
diff --git a/Doc/library/aetypes.rst b/Doc/library/aetypes.rst
index 997203e..1e1067f 100644
--- a/Doc/library/aetypes.rst
+++ b/Doc/library/aetypes.rst
@@ -31,9 +31,9 @@
 contains object specifiers for a number of common OSA classes such as
 ``Document``, ``Window``, ``Character``, etc.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 
 
diff --git a/Doc/library/aifc.rst b/Doc/library/aifc.rst
index e3bb51a..062f1f2 100644
--- a/Doc/library/aifc.rst
+++ b/Doc/library/aifc.rst
@@ -1,4 +1,3 @@
-
 :mod:`aifc` --- Read and write AIFF and AIFC files
 ==================================================
 
@@ -16,10 +15,11 @@
 samples in a file.  AIFF-C is a newer version of the format that includes the
 ability to compress the audio data.
 
-.. warning::
+.. note::
 
    Some operations may only work under IRIX; these will raise :exc:`ImportError`
-   when attempting to import the :mod:`cl` module, which is only available on IRIX.
+   when attempting to import the :mod:`cl` module, which is only available on
+   IRIX.
 
 Audio files have a number of parameters that describe the audio data. The
 sampling rate or frame rate is the number of times per second the sound is
diff --git a/Doc/library/autogil.rst b/Doc/library/autogil.rst
index 938bf56..1c25cb1 100644
--- a/Doc/library/autogil.rst
+++ b/Doc/library/autogil.rst
@@ -13,9 +13,9 @@
 automatically locks and unlocks Python's :term:`Global Interpreter Lock` when
 running an event loop.
 
-.. warning::
+.. note::
 
-   This module has been removed in 3.0.
+   This module has been removed in Python 3.x.
 
 
 .. exception:: AutoGILError
diff --git a/Doc/library/bastion.rst b/Doc/library/bastion.rst
index 5916af4..8f103e7 100644
--- a/Doc/library/bastion.rst
+++ b/Doc/library/bastion.rst
@@ -15,7 +15,7 @@
 .. versionchanged:: 2.3
    Disabled module.
 
-.. warning::
+.. note::
 
    The documentation has been left in place to help in reading old code that uses
    the module.
diff --git a/Doc/library/binhex.rst b/Doc/library/binhex.rst
index b24e00a..a112813 100644
--- a/Doc/library/binhex.rst
+++ b/Doc/library/binhex.rst
@@ -1,4 +1,3 @@
-
 :mod:`binhex` --- Encode and decode binhex4 files
 =================================================
 
@@ -11,9 +10,9 @@
 file and the finder information are encoded (or decoded), on other platforms
 only the data fork is handled.
 
-.. warning::
+.. note::
 
-   In 3.0, special Macintosh support is removed.
+   In Python 3.x, special Macintosh support has been removed.
 
 
 The :mod:`binhex` module defines the following functions:
diff --git a/Doc/library/carbon.rst b/Doc/library/carbon.rst
index 7c63f18..c53c1b6 100644
--- a/Doc/library/carbon.rst
+++ b/Doc/library/carbon.rst
@@ -22,9 +22,9 @@
 
    from Carbon import AE
 
-.. warning::
+.. note::
 
-   The Carbon modules are removed in 3.0.
+   The Carbon modules have been removed in Python 3.0.
 
 
 :mod:`Carbon.AE` --- Apple Events
diff --git a/Doc/library/codeop.rst b/Doc/library/codeop.rst
index 39981ca..674c51f 100644
--- a/Doc/library/codeop.rst
+++ b/Doc/library/codeop.rst
@@ -42,7 +42,7 @@
    (``'single'``, the default) or as an :term:`expression` (``'eval'``).  Any
    other value will cause :exc:`ValueError` to  be raised.
 
-   .. warning::
+   .. note::
 
       It is possible (but not likely) that the parser stops parsing with a
       successful outcome before reaching the end of the source; in this case,
diff --git a/Doc/library/colorpicker.rst b/Doc/library/colorpicker.rst
index e0771ac..b1a5a73 100644
--- a/Doc/library/colorpicker.rst
+++ b/Doc/library/colorpicker.rst
@@ -13,9 +13,9 @@
 The :mod:`ColorPicker` module provides access to the standard color picker
 dialog.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 
 .. function:: GetColor(prompt, rgb)
diff --git a/Doc/library/commands.rst b/Doc/library/commands.rst
index 84ef257..0b347f7 100644
--- a/Doc/library/commands.rst
+++ b/Doc/library/commands.rst
@@ -16,11 +16,12 @@
 processes and retrieving their results.  Using the :mod:`subprocess` module is
 preferable to using the :mod:`commands` module.
 
-.. warning::
+.. note::
 
-   In 3.x, :func:`getstatus` and two undocumented functions (:func:`mk2arg` and
-   :func:`mkarg`) have been removed.  Also, :func:`getstatusoutput` and
-   :func:`getoutput` have been moved to the :mod:`subprocess` module.
+   In Python 3.x, :func:`getstatus` and two undocumented functions
+   (:func:`mk2arg` and :func:`mkarg`) have been removed.  Also,
+   :func:`getstatusoutput` and :func:`getoutput` have been moved to the
+   :mod:`subprocess` module.
 
 The :mod:`commands` module defines the following functions:
 
diff --git a/Doc/library/configparser.rst b/Doc/library/configparser.rst
index bab44d4..f8351da 100644
--- a/Doc/library/configparser.rst
+++ b/Doc/library/configparser.rst
@@ -27,10 +27,10 @@
 can use this to write Python programs which can be customized by end users
 easily.
 
-.. warning::
+.. note::
 
-   This library does *not* interpret or write the value-type prefixes used in the
-   Windows Registry extended version of INI syntax.
+   This library does *not* interpret or write the value-type prefixes used in
+   the Windows Registry extended version of INI syntax.
 
 The configuration file consists of sections, led by a ``[section]`` header and
 followed by ``name: value`` entries, with continuations in the style of
diff --git a/Doc/library/easydialogs.rst b/Doc/library/easydialogs.rst
index ad478a5..f672af6 100644
--- a/Doc/library/easydialogs.rst
+++ b/Doc/library/easydialogs.rst
@@ -16,9 +16,9 @@
 type and item number) to those in the default :const:`DLOG` resource. See source
 code for details.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 
 The :mod:`EasyDialogs` module defines the following functions:
diff --git a/Doc/library/fileinput.rst b/Doc/library/fileinput.rst
index 269d856..3253a07 100644
--- a/Doc/library/fileinput.rst
+++ b/Doc/library/fileinput.rst
@@ -150,7 +150,7 @@
 it is deleted when the output file is closed.  In-place filtering is disabled
 when standard input is read.
 
-.. warning::
+.. note::
 
    The current implementation does not work for MS-DOS 8+3 filesystems.
 
diff --git a/Doc/library/framework.rst b/Doc/library/framework.rst
index ea58c05..1237e56 100644
--- a/Doc/library/framework.rst
+++ b/Doc/library/framework.rst
@@ -16,9 +16,9 @@
 dialog window in a non-standard way it is not necessary to override the complete
 event handling.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 Work on the :mod:`FrameWork` has pretty much stopped, now that :mod:`PyObjC` is
 available for full Cocoa access from Python, and the documentation describes
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst
index 547439a..b989e8e 100644
--- a/Doc/library/functions.rst
+++ b/Doc/library/functions.rst
@@ -364,7 +364,7 @@
    If both dictionaries are omitted, the expression is executed in the environment
    where :func:`execfile` is called.  The return value is ``None``.
 
-   .. warning::
+   .. note::
 
       The default *locals* act as described for function :func:`locals` below:
       modifications to the default *locals* dictionary should not be attempted.  Pass
@@ -625,7 +625,7 @@
 
    Update and return a dictionary representing the current local symbol table.
 
-   .. warning::
+   .. note::
 
       The contents of this dictionary should not be modified; changes may not affect
       the values of local variables used by the interpreter.
@@ -1348,7 +1348,7 @@
    else that has a :attr:`__dict__` attribute), returns a dictionary corresponding
    to the object's symbol table.
 
-   .. warning::
+   .. note::
 
       The returned dictionary should not be modified:
       the effects on the corresponding symbol table are undefined. [#]_
diff --git a/Doc/library/gl.rst b/Doc/library/gl.rst
index cbc175a..0d189dc 100644
--- a/Doc/library/gl.rst
+++ b/Doc/library/gl.rst
@@ -1,4 +1,3 @@
-
 :mod:`gl` --- *Graphics Library* interface
 ==========================================
 
@@ -17,9 +16,9 @@
 
 .. warning::
 
-   Some illegal calls to the GL library cause the Python interpreter to dump core.
-   In particular, the use of most GL calls is unsafe before the first window is
-   opened.
+   Some illegal calls to the GL library cause the Python interpreter to dump
+   core.  In particular, the use of most GL calls is unsafe before the first
+   window is opened.
 
 The module is too large to document here in its entirety, but the following
 should help you to get started. The parameter conventions for the C functions
diff --git a/Doc/library/hotshot.rst b/Doc/library/hotshot.rst
index 21c76a9..b59d2b9 100644
--- a/Doc/library/hotshot.rst
+++ b/Doc/library/hotshot.rst
@@ -26,7 +26,7 @@
    The results should be more meaningful than in the past: the timing core
    contained a critical bug.
 
-.. warning::
+.. note::
 
    The :mod:`hotshot` profiler does not yet work well with threads. It is useful to
    use an unthreaded script to run the profiler over the code you're interested in
diff --git a/Doc/library/httplib.rst b/Doc/library/httplib.rst
index 874fd54..e48c95c 100644
--- a/Doc/library/httplib.rst
+++ b/Doc/library/httplib.rst
@@ -68,9 +68,9 @@
    formatted file that contains your private key. *cert_file* is a PEM formatted
    certificate chain file.
 
-   .. warning::
+   .. note::
 
-      This does not do any certificate verification!
+      This does not do any certificate verification.
 
    .. versionadded:: 2.0
 
diff --git a/Doc/library/ic.rst b/Doc/library/ic.rst
index 88d4eee..ab40e7a 100644
--- a/Doc/library/ic.rst
+++ b/Doc/library/ic.rst
@@ -1,4 +1,3 @@
-
 :mod:`ic` --- Access to the Mac OS X Internet Config
 ====================================================
 
@@ -11,9 +10,9 @@
 This module provides access to various internet-related preferences set through
 :program:`System Preferences` or the :program:`Finder`.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 
 .. index:: module: icglue
diff --git a/Doc/library/inspect.rst b/Doc/library/inspect.rst
index 5af020e..bea12c9 100644
--- a/Doc/library/inspect.rst
+++ b/Doc/library/inspect.rst
@@ -510,7 +510,7 @@
 the function name, a list of lines of context from the source code, and the
 index of the current line within that list.
 
-.. warning::
+.. note::
 
    Keeping references to frame objects, as found in the first element of the frame
    records these functions return, can cause your program to create reference
diff --git a/Doc/library/locale.rst b/Doc/library/locale.rst
index 750fb2e..0366d77 100644
--- a/Doc/library/locale.rst
+++ b/Doc/library/locale.rst
@@ -398,7 +398,7 @@
 
    Return name of the n-th day of the week.
 
-   .. warning::
+   .. note::
 
       This follows the US convention of :const:`DAY_1` being Sunday, not the
       international convention (ISO 8601) that Monday is the first day of the week.
@@ -434,7 +434,7 @@
    Return a regular expression that can be used with the regex function to
    recognize a positive response to a yes/no question.
 
-   .. warning::
+   .. note::
 
       The expression is in the syntax suitable for the :cfunc:`regex` function from
       the C library, which might differ from the syntax used in :mod:`re`.
diff --git a/Doc/library/mac.rst b/Doc/library/mac.rst
index f5fa969..7ac1ca2 100644
--- a/Doc/library/mac.rst
+++ b/Doc/library/mac.rst
@@ -10,9 +10,9 @@
 modules, and the HOWTO :ref:`using-on-mac` for a general introduction to
 Mac-specific Python programming.
 
-.. warning::
+.. note::
 
-   These modules are deprecated and are removed in 3.0.
+   These modules are deprecated and have been removed in Python 3.x.
 
 
 .. toctree::
diff --git a/Doc/library/macos.rst b/Doc/library/macos.rst
index 526fb3c..75cbb19 100644
--- a/Doc/library/macos.rst
+++ b/Doc/library/macos.rst
@@ -11,9 +11,9 @@
 interpreter, such as how the interpreter eventloop functions and the like. Use
 with care.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.x.
 
 Note the capitalization of the module name; this is a historical artifact.
 
diff --git a/Doc/library/macostools.rst b/Doc/library/macostools.rst
index eae867d..96d2897 100644
--- a/Doc/library/macostools.rst
+++ b/Doc/library/macostools.rst
@@ -13,9 +13,9 @@
 :class:`FSSpec` objects.  This module expects a filesystem which supports forked
 files, so it should not be used on UFS partitions.
 
-.. warning::
+.. note::
 
-   This module is removed in 3.0.
+   This module has been removed in Python 3.0.
 
 The :mod:`macostools` module defines the following functions:
 
diff --git a/Doc/library/marshal.rst b/Doc/library/marshal.rst
index a9d6ea8..84fb138 100644
--- a/Doc/library/marshal.rst
+++ b/Doc/library/marshal.rst
@@ -85,7 +85,7 @@
    file must be an open file object opened in binary mode (``'rb'`` or
    ``'r+b'``).
 
-   .. warning::
+   .. note::
 
       If an object containing an unsupported type was marshalled with :func:`dump`,
       :func:`load` will substitute ``None`` for the unmarshallable type.
diff --git a/Doc/library/os.path.rst b/Doc/library/os.path.rst
index 0e7f376..2075468 100644
--- a/Doc/library/os.path.rst
+++ b/Doc/library/os.path.rst
@@ -10,7 +10,7 @@
 write files see :func:`open`, and for accessing the filesystem see the
 :mod:`os` module.
 
-.. warning::
+.. note::
 
    On Windows, many of these functions do not properly support UNC pathnames.
    :func:`splitunc` and :func:`ismount` do handle them correctly.
@@ -317,7 +317,7 @@
       identify them with ``os.path.islink(file)`` and ``os.path.isdir(file)``, and
       invoke :func:`walk` as necessary.
 
-   .. warning::
+   .. note::
 
       This function is deprecated and has been removed in 3.0 in favor of
       :func:`os.walk`.
diff --git a/Doc/library/pickle.rst b/Doc/library/pickle.rst
index f6b7ae4..a3e5ad4 100644
--- a/Doc/library/pickle.rst
+++ b/Doc/library/pickle.rst
@@ -77,8 +77,8 @@
 .. warning::
 
    The :mod:`pickle` module is not intended to be secure against erroneous or
-   maliciously constructed data.  Never unpickle data received from an untrusted or
-   unauthenticated source.
+   maliciously constructed data.  Never unpickle data received from an untrusted
+   or unauthenticated source.
 
 Note that serialization is a more primitive notion than persistence; although
 :mod:`pickle` reads and writes file objects, it does not handle the issue of
@@ -453,7 +453,7 @@
    :meth:`__getstate__` and :meth:`__setstate__`, the state object needn't be a
    dictionary and these methods can do what they want. [#]_
 
-   .. warning::
+   .. note::
 
       For :term:`new-style class`\es, if :meth:`__getstate__` returns a false
       value, the :meth:`__setstate__` method will not be called.
diff --git a/Doc/library/plistlib.rst b/Doc/library/plistlib.rst
index d8694e8..239e3f6 100644
--- a/Doc/library/plistlib.rst
+++ b/Doc/library/plistlib.rst
@@ -75,10 +75,9 @@
     Read a plist from the resource with type *restype* from the resource fork of
     *path*.  Availability: Mac OS X.
 
-    .. warning::
+    .. note::
 
-       In 3.0, this function is removed.
-
+       In Python 3.x, this function has been removed.
 
 
 .. function:: writePlistToResource(rootObject, path[, restype='plst'[, resid=0]])
@@ -86,9 +85,9 @@
     Write *rootObject* as a resource with type *restype* to the resource fork of
     *path*.  Availability: Mac OS X.
 
-    .. warning::
+    .. note::
 
-       In 3.0, this function is removed.
+       In Python 3.x, this function has been removed.
 
 
 
diff --git a/Doc/library/rexec.rst b/Doc/library/rexec.rst
index e25e5c9..7736904 100644
--- a/Doc/library/rexec.rst
+++ b/Doc/library/rexec.rst
@@ -1,4 +1,3 @@
-
 :mod:`rexec` --- Restricted execution framework
 ===============================================
 
diff --git a/Doc/library/string.rst b/Doc/library/string.rst
index 4c3be4f..6d97592 100644
--- a/Doc/library/string.rst
+++ b/Doc/library/string.rst
@@ -592,7 +592,7 @@
    map each character in *from* into the character at the same position in *to*;
    *from* and *to* must have the same length.
 
-   .. warning::
+   .. note::
 
       Don't use strings derived from :const:`lowercase` and :const:`uppercase` as
       arguments; in some locales, these don't have the same length.  For case
diff --git a/Doc/library/subprocess.rst b/Doc/library/subprocess.rst
index 5c73174..efac7e6 100644
--- a/Doc/library/subprocess.rst
+++ b/Doc/library/subprocess.rst
@@ -276,10 +276,10 @@
 
 .. warning::
 
-   Use :meth:`communicate` rather than :meth:`.stdin.write`,
-   :meth:`.stdout.read` or :meth:`.stderr.read` to avoid deadlocks due
-   to any of the other OS pipe buffers filling up and blocking the child
-   process.
+   Use :meth:`communicate` rather than :attr:`.stdin.write <stdin>`,
+   :attr:`.stdout.read <stdout>` or :attr:`.stderr.read <stderr>` to avoid
+   deadlocks due to any of the other OS pipe buffers filling up and blocking the
+   child process.
 
 
 .. attribute:: Popen.stdin
diff --git a/Doc/library/tabnanny.rst b/Doc/library/tabnanny.rst
index 875f3aa..b86971d 100644
--- a/Doc/library/tabnanny.rst
+++ b/Doc/library/tabnanny.rst
@@ -1,4 +1,3 @@
-
 :mod:`tabnanny` --- Detection of ambiguous indentation
 ======================================================
 
@@ -14,9 +13,9 @@
 is possible to import it into an IDE and use the function :func:`check`
 described below.
 
-.. warning::
+.. note::
 
-   The API provided by this module is likely to change  in future releases; such
+   The API provided by this module is likely to change in future releases; such
    changes may not be backward compatible.
 
 
diff --git a/Doc/library/traceback.rst b/Doc/library/traceback.rst
index 1260037..31a4583 100644
--- a/Doc/library/traceback.rst
+++ b/Doc/library/traceback.rst
@@ -1,4 +1,3 @@
-
 :mod:`traceback` --- Print or retrieve a stack traceback
 ========================================================
 
@@ -275,10 +274,10 @@
 This last example demonstrates the final few formatting functions::
 
    >>> import traceback
-   >>> format_list([('spam.py', 3, '<module>', 'spam.eggs()'),
-   ...              ('eggs.py', 42, 'eggs', 'return "bacon"')])
+   >>> traceback.format_list([('spam.py', 3, '<module>', 'spam.eggs()'),
+   ...                        ('eggs.py', 42, 'eggs', 'return "bacon"')])
    ['  File "spam.py", line 3, in <module>\n    spam.eggs()\n',
     '  File "eggs.py", line 42, in eggs\n    return "bacon"\n']
-   >>> theError = IndexError('tuple indx out of range')
-   >>> traceback.format_exception_only(type(theError), theError)
+   >>> an_error = IndexError('tuple index out of range')
+   >>> traceback.format_exception_only(type(an_error), an_error)
    ['IndexError: tuple index out of range\n']
diff --git a/Doc/library/undoc.rst b/Doc/library/undoc.rst
index ac646c5..f62c96a 100644
--- a/Doc/library/undoc.rst
+++ b/Doc/library/undoc.rst
@@ -20,9 +20,8 @@
 Some of these are very old and/or not very robust; marked with "hmm."
 
 :mod:`ihooks`
-   --- Import hook support (for :mod:`rexec`; may become obsolete).
-
-   .. warning:: The :mod:`ihooks` module has been removed in Python 3.0.
+   --- Import hook support (for :mod:`rexec`; may become obsolete).  Removed in
+   Python 3.x.
 
 
 Platform specific modules
@@ -47,27 +46,19 @@
 ==========
 
 :mod:`audiodev`
-   --- Platform-independent API for playing audio data.
-
-   .. warning:: The :mod:`audiodev` module has been removed in 3.0.
+   --- Platform-independent API for playing audio data.  Removed in Python 3.x.
 
 :mod:`linuxaudiodev`
    --- Play audio data on the Linux audio device.  Replaced in Python 2.3 by the
-   :mod:`ossaudiodev` module.
-
-   .. warning:: The :mod:`linuxaudiodev` module has been removed in Python 3.0.
+   :mod:`ossaudiodev` module.  Removed in Python 3.x.
 
 :mod:`sunaudio`
    --- Interpret Sun audio headers (may become obsolete or a tool/demo).
-
-   .. warning:: The :mod:`sunaudio` module has been removed in Python 3.0.
+   Removed in Python 3.x.
 
 :mod:`toaiff`
    --- Convert "arbitrary" sound files to AIFF files; should probably become a tool
-   or demo.  Requires the external program :program:`sox`.
-
-
-   .. warning:: The :mod:`toaiff` module has been removed in 3.0.
+   or demo.  Requires the external program :program:`sox`.  Removed in Python 3.x.
 
 
 .. _undoc-mac-modules:
@@ -239,9 +230,8 @@
    \envvar{PYTHONPATH}.
 
 :mod:`timing`
-   --- Measure time intervals to high resolution (use :func:`time.clock` instead).
-
-   .. warning:: The :mod:`timing` module has been removed in Python 3.0.
+   --- Measure time intervals to high resolution (use :func:`time.clock`
+   instead).  Removed in Python 3.x.
 
 
 SGI-specific Extension modules
@@ -255,6 +245,4 @@
 
 :mod:`sv`
    --- Interface to the "simple video" board on SGI Indigo (obsolete hardware).
-
-   .. warning:: The :mod:`sv` module has been removed in Python 3.0.
-
+   Removed in Python 3.x.
diff --git a/Doc/reference/compound_stmts.rst b/Doc/reference/compound_stmts.rst
index 4d7addb..3c716b2 100644
--- a/Doc/reference/compound_stmts.rst
+++ b/Doc/reference/compound_stmts.rst
@@ -178,7 +178,7 @@
 effect of Pascal's ``for i := a to b do``; e.g., ``range(3)`` returns the list
 ``[0, 1, 2]``.
 
-.. warning::
+.. note::
 
    .. index::
       single: loop; over mutable sequence
diff --git a/Doc/reference/executionmodel.rst b/Doc/reference/executionmodel.rst
index 05f8b92..9690a93 100644
--- a/Doc/reference/executionmodel.rst
+++ b/Doc/reference/executionmodel.rst
@@ -231,7 +231,7 @@
 :keyword:`except` clause is selected by object identity.  An arbitrary value can
 be raised along with the identifying string which can be passed to the handler.
 
-.. warning::
+.. note::
 
    Messages to exceptions are not part of the Python API.  Their contents may
    change from one version of Python to the next without warning and should not be
diff --git a/Doc/using/cmdline.rst b/Doc/using/cmdline.rst
index 2dd85f4..fa73ea2 100644
--- a/Doc/using/cmdline.rst
+++ b/Doc/using/cmdline.rst
@@ -351,7 +351,7 @@
    Skip the first line of the source, allowing use of non-Unix forms of
    ``#!cmd``.  This is intended for a DOS specific hack only.
 
-   .. warning:: The line numbers in error messages will be off by one!
+   .. note:: The line numbers in error messages will be off by one.
 
 
 .. cmdoption:: -3
