blob: 2967cb8d1d56cc088e32526e51ed224d22113868 [file] [log] [blame]
Guido van Rossum612316f1997-03-14 04:12:52 +00001\chapter{Undocumented Modules}
Fred Drake710c0351998-02-18 15:47:17 +00002\label{undoc}
Guido van Rossum612316f1997-03-14 04:12:52 +00003
4Here's a quick listing of modules that are currently undocumented, but
5that should be documented. Feel free to contribute documentation for
Fred Drake16e81f41999-02-24 19:57:14 +00006them! (The idea and original contents for this chapter were taken
7from a posting by Fredrik Lundh; I have revised some modules' status.)
Guido van Rossum612316f1997-03-14 04:12:52 +00008
9
Fred Drake16e81f41999-02-24 19:57:14 +000010\section{Frameworks}
11
12Frameworks tend to be harder to document, but are well worth the
13effort spent.
Guido van Rossum612316f1997-03-14 04:12:52 +000014
Fred Drake272fb3a1998-04-07 14:15:28 +000015\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +000016\item[\module{Tkinter}]
Fred Drake272fb3a1998-04-07 14:15:28 +000017--- Interface to Tcl/Tk for graphical user interfaces;
Fred Drakedac9a4e1999-04-16 18:26:22 +000018Fredrik Lundh is working on this one! See \emph{An Introduction to
Fred Drake6f49e0a1999-06-18 19:58:59 +000019Tkinter} at \url{http://www.pythonware.com/library/} for on-line
20reference material.
Guido van Rossum612316f1997-03-14 04:12:52 +000021
Fred Drakee4694eb1999-07-01 20:42:57 +000022\item[\module{Tkdnd}]
Fred Drake95638f51998-04-14 04:55:43 +000023--- Drag-and-drop support for \module{Tkinter}.
24
Fred Drakee4694eb1999-07-01 20:42:57 +000025\item[\module{test}]
Fred Drake211f22c1998-08-11 18:13:31 +000026--- Regression testing framework. This is used for the Python
27regression test, but is useful for other Python libraries as well.
28This is a package rather than a module.
Fred Drake272fb3a1998-04-07 14:15:28 +000029\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000030
Guido van Rossum612316f1997-03-14 04:12:52 +000031
Guido van Rossum612316f1997-03-14 04:12:52 +000032\section{Miscellaneous useful utilities}
33
Fred Drakeae4d5c21999-06-23 14:56:13 +000034Some of these are very old and/or not very robust; marked with ``hmm.''
Guido van Rossum612316f1997-03-14 04:12:52 +000035
Fred Drake272fb3a1998-04-07 14:15:28 +000036\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +000037\item[\module{dircmp}]
Fred Drakeae4d5c21999-06-23 14:56:13 +000038--- class to build directory diff tools on (may become a demo or tool)
Guido van Rossum612316f1997-03-14 04:12:52 +000039
Fred Drakee4694eb1999-07-01 20:42:57 +000040\item[\module{bdb}]
Fred Drake272fb3a1998-04-07 14:15:28 +000041--- A generic Python debugger base class (used by pdb)
Guido van Rossum612316f1997-03-14 04:12:52 +000042
Fred Drakee4694eb1999-07-01 20:42:57 +000043\item[\module{ihooks}]
Fred Drakeae4d5c21999-06-23 14:56:13 +000044--- Import hook support (for \refmodule{rexec}; may become obsolete)
Fred Drakee4694eb1999-07-01 20:42:57 +000045
46\item[\module{tzparse}]
47--- Parse a timezone specification (unfinished; may disappear in the
48future)
Fred Drake272fb3a1998-04-07 14:15:28 +000049\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000050
Guido van Rossum90858221997-08-15 02:52:46 +000051
Guido van Rossum612316f1997-03-14 04:12:52 +000052\section{Platform specific modules}
53
Fred Drake6f49e0a1999-06-18 19:58:59 +000054These modules are used to implement the \refmodule{os.path} module,
55and are not documented beyond this mention. There's little need to
56document these.
Fred Drake560bcae1999-02-02 18:59:58 +000057
58\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +000059\item[\module{dospath}]
Fred Drake560bcae1999-02-02 18:59:58 +000060--- implementation of \module{os.path} on MS-DOS
61
Fred Drakee4694eb1999-07-01 20:42:57 +000062\item[\module{ntpath}]
Fred Drake560bcae1999-02-02 18:59:58 +000063--- implementation on \module{os.path} on 32-bit Windows
64
Fred Drakee4694eb1999-07-01 20:42:57 +000065\item[\module{posixpath}]
Fred Drake560bcae1999-02-02 18:59:58 +000066--- implementation on \module{os.path} on \POSIX{}
Fred Drake272fb3a1998-04-07 14:15:28 +000067\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000068
Guido van Rossum612316f1997-03-14 04:12:52 +000069
Guido van Rossum612316f1997-03-14 04:12:52 +000070\section{Multimedia}
71
Fred Drake272fb3a1998-04-07 14:15:28 +000072\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +000073\item[\module{audiodev}]
Fred Drakeae4d5c21999-06-23 14:56:13 +000074--- Platform-independent API for playing audio data
Guido van Rossum612316f1997-03-14 04:12:52 +000075
Fred Drakee4694eb1999-07-01 20:42:57 +000076\item[\module{sunaudio}]
Fred Drakeae4d5c21999-06-23 14:56:13 +000077--- interpret sun audio headers (may become obsolete or a tool/demo)
Guido van Rossum612316f1997-03-14 04:12:52 +000078
Fred Drakee4694eb1999-07-01 20:42:57 +000079\item[\module{toaiff}]
Fred Drake6f49e0a1999-06-18 19:58:59 +000080--- Convert "arbitrary" sound files to AIFF files; should probably
Fred Drakeae4d5c21999-06-23 14:56:13 +000081become a tool or demo. Requires the external program \program{sox}.
Fred Drake272fb3a1998-04-07 14:15:28 +000082\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000083
84
Guido van Rossum612316f1997-03-14 04:12:52 +000085\section{Obsolete}
86
Fred Drake71c1e501998-04-04 07:03:19 +000087These modules are not on the standard module search path;
88\indexiii{module}{search}{path}
89but are available in the directory \file{lib-old/} installed under
Fred Drake3700b6f1998-08-07 16:02:28 +000090\file{\textrm{\$prefix}/lib/python1.5/}. % $ <-- bow to font lock
91To use any of these modules, add that directory to \code{sys.path},
92possibly using \envvar{PYTHONPATH}.
Guido van Rossumcfaf1431997-07-16 15:48:20 +000093
Fred Drake272fb3a1998-04-07 14:15:28 +000094\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +000095\item[\module{addpack}]
96--- alternate approach to packages
Guido van Rossum612316f1997-03-14 04:12:52 +000097
Fred Drakea8052a31999-10-26 16:27:28 +000098\item[\module{cmp}]
Fred Drake47a27b61999-10-29 17:25:59 +000099--- File comparison function. Use the newer \refmodule{filecmp} instead.
Fred Drakea8052a31999-10-26 16:27:28 +0000100
101\item[\module{cmpcache}]
102--- Caching version of the obsolete \module{cmp} module. Use the
Fred Drake47a27b61999-10-29 17:25:59 +0000103newer \refmodule{filecmp} instead.
Fred Drakea8052a31999-10-26 16:27:28 +0000104
Fred Drakee4694eb1999-07-01 20:42:57 +0000105\item[\module{codehack}]
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000106--- Extract function name or line number from a function
Fred Drakeae4d5c21999-06-23 14:56:13 +0000107code object (these are now accessible as attributes:
108\member{co.co_name}, \member{func.func_name},
109\member{co.co_firstlineno}).
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000110
Fred Drakee4694eb1999-07-01 20:42:57 +0000111\item[\module{dump}]
Fred Drake46e1a321999-06-18 17:12:15 +0000112--- Print python code that reconstructs a variable
113
Fred Drakee4694eb1999-07-01 20:42:57 +0000114\item[\module{fmt}]
Fred Drake272fb3a1998-04-07 14:15:28 +0000115--- text formatting abstractions (too slow)
Guido van Rossum612316f1997-03-14 04:12:52 +0000116
Fred Drakee4694eb1999-07-01 20:42:57 +0000117\item[\module{lockfile}]
Fred Drake272fb3a1998-04-07 14:15:28 +0000118--- wrapper around FCNTL file locking (use
Fred Drakeae4d5c21999-06-23 14:56:13 +0000119\function{fcntl.lockf()}/\function{flock()} intead; see \refmodule{fcntl})
Guido van Rossum612316f1997-03-14 04:12:52 +0000120
Fred Drakea8052a31999-10-26 16:27:28 +0000121\item[\module{newdir}]
122--- New \function{dir()} function (the standard \function{dir()} is
123now just as good)
124
125\item[\module{Para}]
126--- helper for fmt.py
127
Fred Drakee4694eb1999-07-01 20:42:57 +0000128\item[\module{poly}]
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000129--- Polynomials
130
Fred Drakee4694eb1999-07-01 20:42:57 +0000131\item[\module{tb}]
Fred Drake272fb3a1998-04-07 14:15:28 +0000132--- Print tracebacks, with a dump of local variables (use
Fred Drakee36e4e61999-01-13 17:11:52 +0000133\function{pdb.pm()} or \refmodule{traceback} instead)
Guido van Rossum612316f1997-03-14 04:12:52 +0000134
Fred Drakee4694eb1999-07-01 20:42:57 +0000135\item[\module{timing}]
Fred Drake3700b6f1998-08-07 16:02:28 +0000136--- Measure time intervals to high resolution (use
137\function{time.clock()} instead). (This is an extension module.)
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000138
Fred Drakee4694eb1999-07-01 20:42:57 +0000139\item[\module{util}]
Fred Drake4d5c87b1999-06-10 21:17:11 +0000140--- Useful functions that don't fit elsewhere.
141
Fred Drakee4694eb1999-07-01 20:42:57 +0000142\item[\module{wdb}]
Fred Drake6f49e0a1999-06-18 19:58:59 +0000143--- A primitive windowing debugger based on STDWIN.
144
Fred Drakee4694eb1999-07-01 20:42:57 +0000145\item[\module{whatsound}]
Fred Drakee36e4e61999-01-13 17:11:52 +0000146--- Recognize sound files; use \refmodule{sndhdr} instead.
Fred Drake60adb361999-01-05 23:09:12 +0000147
Fred Drakee4694eb1999-07-01 20:42:57 +0000148\item[\module{zmod}]
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000149--- Compute properties of mathematical "fields"
Fred Drake272fb3a1998-04-07 14:15:28 +0000150\end{description}
Guido van Rossum61c27031997-07-18 21:08:07 +0000151
Fred Drakee4694eb1999-07-01 20:42:57 +0000152
153The following modules are obsolete, but are likely re-surface as tools
154or scripts.
155
156\begin{description}
157\item[\module{find}]
158--- find files matching pattern in directory tree
159
160\item[\module{grep}]
161--- grep
162
163\item[\module{packmail}]
164--- create a self-unpacking \UNIX{} shell archive
165\end{description}
166
167
Fred Drake20ca9171998-04-09 14:32:28 +0000168The following modules were documented in previous versions of this
Fred Drakeae4d5c21999-06-23 14:56:13 +0000169manual, but are now considered obsolete. The source for the
170documentation is still available as part of the documentation source
171archive.
Fred Drake20ca9171998-04-09 14:32:28 +0000172
173\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +0000174\item[\module{ni}]
Fred Drake3700b6f1998-08-07 16:02:28 +0000175--- Import modules in ``packages.'' Basic package support is now
176built in.
Fred Drake20ca9171998-04-09 14:32:28 +0000177
Fred Drakee4694eb1999-07-01 20:42:57 +0000178\item[\module{rand}]
Fred Drake20ca9171998-04-09 14:32:28 +0000179--- Old interface to the random number generator.
180
Fred Drakee4694eb1999-07-01 20:42:57 +0000181\item[\module{soundex}]
Fred Drake20ca9171998-04-09 14:32:28 +0000182--- Algorithm for collapsing names which sound similar to a shared
183key. (This is an extension module.)
184\end{description}
185
Guido van Rossum612316f1997-03-14 04:12:52 +0000186
187\section{Extension modules}
188
Fred Drake272fb3a1998-04-07 14:15:28 +0000189\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +0000190\item[\module{stdwin}]
Fred Drake272fb3a1998-04-07 14:15:28 +0000191--- Interface to STDWIN (an old, unsupported
Fred Drakee4694eb1999-07-01 20:42:57 +0000192platform-independent GUI package). Obsolete; use \module{Tkinter} for
193a platform-independent GUI instead.
Fred Drake3700b6f1998-08-07 16:02:28 +0000194\end{description}
Guido van Rossumb9ee9c21997-06-02 17:34:02 +0000195
Fred Drakeae4d5c21999-06-23 14:56:13 +0000196The following are SGI specific, and may be out of touch with the
197current version of reality.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000198
Fred Drake3700b6f1998-08-07 16:02:28 +0000199\begin{description}
Fred Drakee4694eb1999-07-01 20:42:57 +0000200\item[\module{cl}]
Fred Drake272fb3a1998-04-07 14:15:28 +0000201--- Interface to the SGI compression library.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000202
Fred Drakee4694eb1999-07-01 20:42:57 +0000203\item[\module{sv}]
Fred Drake272fb3a1998-04-07 14:15:28 +0000204--- Interface to the ``simple video'' board on SGI Indigo
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000205(obsolete hardware).
Fred Drake3700b6f1998-08-07 16:02:28 +0000206\end{description}