\chapter{Undocumented Modules \label{undoc}}

Here's a quick listing of modules that are currently undocumented, but
that should be documented.  Feel free to contribute documentation for
them!  (Send via email to \email{docs@python.org}.)

The idea and original contents for this chapter were taken
from a posting by Fredrik Lundh; the specific contents of this chapter
have been substantially revised.


\section{Frameworks}

Frameworks tend to be harder to document, but are well worth the
effort spent.

\begin{description}
\item None at this time.
\end{description}


\section{Miscellaneous useful utilities}

Some of these are very old and/or not very robust; marked with ``hmm.''

\begin{description}
\item[\module{bdb}]
--- A generic Python debugger base class (used by pdb).

\item[\module{ihooks}]
--- Import hook support (for \refmodule{rexec}; may become obsolete).
\end{description}



\section{Platform specific modules}

These modules are used to implement the \refmodule{os.path} module,
and are not documented beyond this mention.  There's little need to
document these.

\begin{description}
\item[\module{ntpath}]
--- Implementation of \module{os.path} on Win32, Win64, WinCE, and
    OS/2 platforms.

\item[\module{posixpath}]
--- Implementation of \module{os.path} on \POSIX.

\item[\module{bsddb185}]
--- Backwards compatibility module for systems which still use the Berkeley
    DB 1.85 module.  It is normally only available on certain BSD \UNIX-based
    systems.  It should never be used directly.
\end{description}


\section{Multimedia}

\begin{description}
\item[\module{audiodev}]
--- Platform-independent API for playing audio data.

\item[\module{linuxaudiodev}]
--- Play audio data on the Linux audio device.  Replaced in Python 2.3
    by the \module{ossaudiodev} module.

\item[\module{sunaudio}]
--- Interpret Sun audio headers (may become obsolete or a tool/demo).

\item[\module{toaiff}]
--- Convert "arbitrary" sound files to AIFF files; should probably
    become a tool or demo.  Requires the external program \program{sox}.
\end{description}


\section{Obsolete \label{obsolete-modules}}

These modules are not normally available for import; additional work
must be done to make them available.

%%% lib-old is empty as of Python 2.5
% Those which are written in Python will be installed into the directory 
% \file{lib-old/} installed as part of the standard library.  To use
% these, the directory must be added to \code{sys.path}, possibly using
% \envvar{PYTHONPATH}.

These extension modules written in C are not built by default.
Under \UNIX, these must be enabled by uncommenting the appropriate
lines in \file{Modules/Setup} in the build tree and either rebuilding
Python if the modules are statically linked, or building and
installing the shared object if using dynamically-loaded extensions.

% XXX need Windows instructions!

\begin{description}
\item[\module{timing}]
--- Measure time intervals to high resolution (use \function{time.clock()}
    instead).
\end{description}

\section{SGI-specific Extension modules}

The following are SGI specific, and may be out of touch with the
current version of reality.

\begin{description}
\item[\module{cl}]
--- Interface to the SGI compression library.

\item[\module{sv}]
--- Interface to the ``simple video'' board on SGI Indigo
    (obsolete hardware).
\end{description}
