blob: 16c99da1bb935c0cc2f551ad5019e8c9cecf9a84 [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}
16\item[Tkinter.py]
17--- 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 Drake95638f51998-04-14 04:55:43 +000022\item[Tkdnd.py]
23--- Drag-and-drop support for \module{Tkinter}.
24
Fred Drake211f22c1998-08-11 18:13:31 +000025\item[test]
26--- 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 Drake272fb3a1998-04-07 14:15:28 +000037\item[dircmp.py]
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 Drake272fb3a1998-04-07 14:15:28 +000040\item[pty.py]
41--- Pseudo terminal utilities
Guido van Rossum612316f1997-03-14 04:12:52 +000042
Fred Drake272fb3a1998-04-07 14:15:28 +000043\item[bdb.py]
44--- A generic Python debugger base class (used by pdb)
Guido van Rossum612316f1997-03-14 04:12:52 +000045
Fred Drake272fb3a1998-04-07 14:15:28 +000046\item[ihooks.py]
Fred Drakeae4d5c21999-06-23 14:56:13 +000047--- Import hook support (for \refmodule{rexec}; may become obsolete)
Fred Drake272fb3a1998-04-07 14:15:28 +000048\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000049
Guido van Rossum90858221997-08-15 02:52:46 +000050
Guido van Rossum612316f1997-03-14 04:12:52 +000051\section{Platform specific modules}
52
Fred Drake6f49e0a1999-06-18 19:58:59 +000053These modules are used to implement the \refmodule{os.path} module,
54and are not documented beyond this mention. There's little need to
55document these.
Fred Drake560bcae1999-02-02 18:59:58 +000056
57\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +000058\item[dospath.py]
Fred Drake560bcae1999-02-02 18:59:58 +000059--- implementation of \module{os.path} on MS-DOS
60
61\item[ntpath.py]
62--- implementation on \module{os.path} on 32-bit Windows
63
64\item[posixpath.py]
65--- implementation on \module{os.path} on \POSIX{}
Fred Drake272fb3a1998-04-07 14:15:28 +000066\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000067
Guido van Rossum612316f1997-03-14 04:12:52 +000068
Guido van Rossum612316f1997-03-14 04:12:52 +000069\section{Multimedia}
70
Fred Drake272fb3a1998-04-07 14:15:28 +000071\begin{description}
72\item[audiodev.py]
Fred Drakeae4d5c21999-06-23 14:56:13 +000073--- Platform-independent API for playing audio data
Guido van Rossum612316f1997-03-14 04:12:52 +000074
Fred Drake272fb3a1998-04-07 14:15:28 +000075\item[sunaudio.py]
Fred Drakeae4d5c21999-06-23 14:56:13 +000076--- interpret sun audio headers (may become obsolete or a tool/demo)
Guido van Rossum612316f1997-03-14 04:12:52 +000077
Fred Drake272fb3a1998-04-07 14:15:28 +000078\item[toaiff.py]
Fred Drake6f49e0a1999-06-18 19:58:59 +000079--- Convert "arbitrary" sound files to AIFF files; should probably
Fred Drakeae4d5c21999-06-23 14:56:13 +000080become a tool or demo. Requires the external program \program{sox}.
Fred Drake272fb3a1998-04-07 14:15:28 +000081\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000082
83
84\section{Oddities}
85
86These modules are probably also obsolete, or just not very useful.
Fred Drake6f49e0a1999-06-18 19:58:59 +000087Some of these may be made into tools or demos in future releases.
Guido van Rossum612316f1997-03-14 04:12:52 +000088
Fred Drake272fb3a1998-04-07 14:15:28 +000089\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +000090\item[find.py]
Fred Drakeae4d5c21999-06-23 14:56:13 +000091--- find files matching pattern in directory tree (may become a demo
92or tool, or possibly obsolete)
Guido van Rossum612316f1997-03-14 04:12:52 +000093
Fred Drake272fb3a1998-04-07 14:15:28 +000094\item[grep.py]
Fred Drakeae4d5c21999-06-23 14:56:13 +000095--- grep (may become a demo or tool)
Guido van Rossum612316f1997-03-14 04:12:52 +000096
Fred Drake272fb3a1998-04-07 14:15:28 +000097\item[mutex.py]
98--- Mutual exclusion --- for use with module sched
Guido van Rossum612316f1997-03-14 04:12:52 +000099
Fred Drake272fb3a1998-04-07 14:15:28 +0000100\item[packmail.py]
101--- create a self-unpacking \UNIX{} shell archive
Guido van Rossum612316f1997-03-14 04:12:52 +0000102
Fred Drake272fb3a1998-04-07 14:15:28 +0000103\item[sched.py]
104--- event scheduler class
Guido van Rossum612316f1997-03-14 04:12:52 +0000105
Fred Drake272fb3a1998-04-07 14:15:28 +0000106\item[tzparse.py]
107--- Parse a timezone specification (unfinished)
108\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +0000109
110
111\section{Obsolete}
112
Fred Drake71c1e501998-04-04 07:03:19 +0000113These modules are not on the standard module search path;
114\indexiii{module}{search}{path}
115but are available in the directory \file{lib-old/} installed under
Fred Drake3700b6f1998-08-07 16:02:28 +0000116\file{\textrm{\$prefix}/lib/python1.5/}. % $ <-- bow to font lock
117To use any of these modules, add that directory to \code{sys.path},
118possibly using \envvar{PYTHONPATH}.
Guido van Rossumcfaf1431997-07-16 15:48:20 +0000119
Fred Drake272fb3a1998-04-07 14:15:28 +0000120\begin{description}
121\item[newdir.py]
Fred Drakeae4d5c21999-06-23 14:56:13 +0000122--- New \function{dir()} function (the standard \function{dir()} is
123now just as good)
Guido van Rossum612316f1997-03-14 04:12:52 +0000124
Fred Drake272fb3a1998-04-07 14:15:28 +0000125\item[addpack.py]
126--- standard support for "packages"
Guido van Rossum612316f1997-03-14 04:12:52 +0000127
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000128\item[codehack.py]
129--- Extract function name or line number from a function
Fred Drakeae4d5c21999-06-23 14:56:13 +0000130code object (these are now accessible as attributes:
131\member{co.co_name}, \member{func.func_name},
132\member{co.co_firstlineno}).
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000133
Fred Drake46e1a321999-06-18 17:12:15 +0000134\item[dump.py]
135--- Print python code that reconstructs a variable
136
Fred Drake272fb3a1998-04-07 14:15:28 +0000137\item[fmt.py]
138--- text formatting abstractions (too slow)
Guido van Rossum612316f1997-03-14 04:12:52 +0000139
Fred Drake272fb3a1998-04-07 14:15:28 +0000140\item[Para.py]
141--- helper for fmt.py
Fred Drake71c1e501998-04-04 07:03:19 +0000142
Fred Drake272fb3a1998-04-07 14:15:28 +0000143\item[lockfile.py]
144--- wrapper around FCNTL file locking (use
Fred Drakeae4d5c21999-06-23 14:56:13 +0000145\function{fcntl.lockf()}/\function{flock()} intead; see \refmodule{fcntl})
Guido van Rossum612316f1997-03-14 04:12:52 +0000146
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000147\item[poly.py]
148--- Polynomials
149
Fred Drake272fb3a1998-04-07 14:15:28 +0000150\item[tb.py]
151--- Print tracebacks, with a dump of local variables (use
Fred Drakee36e4e61999-01-13 17:11:52 +0000152\function{pdb.pm()} or \refmodule{traceback} instead)
Guido van Rossum612316f1997-03-14 04:12:52 +0000153
Fred Drake3700b6f1998-08-07 16:02:28 +0000154\item[timingmodule]
155--- Measure time intervals to high resolution (use
156\function{time.clock()} instead). (This is an extension module.)
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000157
Fred Drake4d5c87b1999-06-10 21:17:11 +0000158\item[util.py]
159--- Useful functions that don't fit elsewhere.
160
Fred Drake6f49e0a1999-06-18 19:58:59 +0000161\item[wdb.py]
162--- A primitive windowing debugger based on STDWIN.
163
Fred Drake60adb361999-01-05 23:09:12 +0000164\item[whatsound.py]
Fred Drakee36e4e61999-01-13 17:11:52 +0000165--- Recognize sound files; use \refmodule{sndhdr} instead.
Fred Drake60adb361999-01-05 23:09:12 +0000166
Fred Drake9ed1a0a1998-11-02 15:46:21 +0000167\item[zmod.py]
168--- Compute properties of mathematical "fields"
Fred Drake272fb3a1998-04-07 14:15:28 +0000169\end{description}
Guido van Rossum61c27031997-07-18 21:08:07 +0000170
Fred Drake20ca9171998-04-09 14:32:28 +0000171The following modules were documented in previous versions of this
Fred Drakeae4d5c21999-06-23 14:56:13 +0000172manual, but are now considered obsolete. The source for the
173documentation is still available as part of the documentation source
174archive.
Fred Drake20ca9171998-04-09 14:32:28 +0000175
176\begin{description}
177\item[ni]
Fred Drake3700b6f1998-08-07 16:02:28 +0000178--- Import modules in ``packages.'' Basic package support is now
179built in.
Fred Drake20ca9171998-04-09 14:32:28 +0000180
181\item[rand]
182--- Old interface to the random number generator.
183
184\item[soundex]
185--- Algorithm for collapsing names which sound similar to a shared
186key. (This is an extension module.)
187\end{description}
188
Guido van Rossum612316f1997-03-14 04:12:52 +0000189
190\section{Extension modules}
191
Fred Drake272fb3a1998-04-07 14:15:28 +0000192\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +0000193\item[dlmodule.c]
194--- A highly experimental and dangerous device for calling
Fred Drake3700b6f1998-08-07 16:02:28 +0000195arbitrary \C{} functions in arbitrary shared libraries.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000196
Fred Drake272fb3a1998-04-07 14:15:28 +0000197\item[nismodule.c]
198--- NIS (a.k.a. Sun's Yellow Pages) interface.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000199
Fred Drake272fb3a1998-04-07 14:15:28 +0000200\item[stdwinmodule.c]
201--- Interface to STDWIN (an old, unsupported
Guido van Rossumb9ee9c21997-06-02 17:34:02 +0000202platform-independent GUI package). Obsolete; use Tkinter for a
203platform-independent GUI instead.
Fred Drake3700b6f1998-08-07 16:02:28 +0000204\end{description}
Guido van Rossumb9ee9c21997-06-02 17:34:02 +0000205
Fred Drakeae4d5c21999-06-23 14:56:13 +0000206The following are SGI specific, and may be out of touch with the
207current version of reality.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000208
Fred Drake3700b6f1998-08-07 16:02:28 +0000209\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +0000210\item[clmodule.c]
211--- Interface to the SGI compression library.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000212
Fred Drake272fb3a1998-04-07 14:15:28 +0000213\item[svmodule.c]
214--- Interface to the ``simple video'' board on SGI Indigo
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000215(obsolete hardware).
Fred Drake3700b6f1998-08-07 16:02:28 +0000216\end{description}