blob: bcc7549f7c7117fe037634b571416769c99b4031 [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
19Tkinter} at
20\url{http://www.pythonware.com/library/tkinter/introduction} for
21on-line reference material.
Guido van Rossum612316f1997-03-14 04:12:52 +000022
Fred Drake95638f51998-04-14 04:55:43 +000023\item[Tkdnd.py]
24--- Drag-and-drop support for \module{Tkinter}.
25
Fred Drake211f22c1998-08-11 18:13:31 +000026\item[test]
27--- Regression testing framework. This is used for the Python
28regression test, but is useful for other Python libraries as well.
29This is a package rather than a module.
Fred Drake272fb3a1998-04-07 14:15:28 +000030\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000031
Guido van Rossum612316f1997-03-14 04:12:52 +000032
Guido van Rossum612316f1997-03-14 04:12:52 +000033\section{Miscellaneous useful utilities}
34
35Some of these are very old and/or not very robust; marked with ``hmm''.
36
Fred Drake272fb3a1998-04-07 14:15:28 +000037\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +000038\item[dircmp.py]
39--- class to build directory diff tools on
Guido van Rossum612316f1997-03-14 04:12:52 +000040
Fred Drake272fb3a1998-04-07 14:15:28 +000041\item[pipes.py]
42--- Conversion pipeline templates (hmm)
Guido van Rossum612316f1997-03-14 04:12:52 +000043
Fred Drake272fb3a1998-04-07 14:15:28 +000044\item[pty.py]
45--- Pseudo terminal utilities
Guido van Rossum612316f1997-03-14 04:12:52 +000046
Fred Drake272fb3a1998-04-07 14:15:28 +000047\item[tty.py]
48--- Terminal utilities
Guido van Rossum612316f1997-03-14 04:12:52 +000049
Fred Drake272fb3a1998-04-07 14:15:28 +000050\item[bdb.py]
51--- A generic Python debugger base class (used by pdb)
Guido van Rossum612316f1997-03-14 04:12:52 +000052
Fred Drake6b9ff721998-04-07 19:09:32 +000053\item[wdb.py]
54--- A primitive windowing debugger based on STDWIN.
55
Fred Drake272fb3a1998-04-07 14:15:28 +000056\item[ihooks.py]
57--- Import hook support (for rexec)
Fred Drake272fb3a1998-04-07 14:15:28 +000058\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000059
Guido van Rossum90858221997-08-15 02:52:46 +000060
Guido van Rossum612316f1997-03-14 04:12:52 +000061\section{Platform specific modules}
62
Guido van Rossum612316f1997-03-14 04:12:52 +000063
Fred Drake560bcae1999-02-02 18:59:58 +000064These modules are used to implement the \refmodule{os.path} module, and
65are not documented beyond this mention.
66
67\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +000068\item[dospath.py]
Fred Drake560bcae1999-02-02 18:59:58 +000069--- implementation of \module{os.path} on MS-DOS
70
71\item[ntpath.py]
72--- implementation on \module{os.path} on 32-bit Windows
73
74\item[posixpath.py]
75--- implementation on \module{os.path} on \POSIX{}
Fred Drake272fb3a1998-04-07 14:15:28 +000076\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000077
Guido van Rossum612316f1997-03-14 04:12:52 +000078
Guido van Rossum612316f1997-03-14 04:12:52 +000079\section{Multimedia}
80
Fred Drake272fb3a1998-04-07 14:15:28 +000081\begin{description}
82\item[audiodev.py]
83--- Plays audio files
Guido van Rossum612316f1997-03-14 04:12:52 +000084
Fred Drake272fb3a1998-04-07 14:15:28 +000085\item[sunau.py]
86--- parse Sun and NeXT audio files
Guido van Rossum612316f1997-03-14 04:12:52 +000087
Fred Drake272fb3a1998-04-07 14:15:28 +000088\item[sunaudio.py]
89--- interpret sun audio headers
Guido van Rossum612316f1997-03-14 04:12:52 +000090
Fred Drake272fb3a1998-04-07 14:15:28 +000091\item[toaiff.py]
92--- Convert "arbitrary" sound files to AIFF files
Fred Drake272fb3a1998-04-07 14:15:28 +000093\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +000094
95
96\section{Oddities}
97
98These modules are probably also obsolete, or just not very useful.
99
Fred Drake272fb3a1998-04-07 14:15:28 +0000100\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +0000101\item[find.py]
102--- find files matching pattern in directory tree
Guido van Rossum612316f1997-03-14 04:12:52 +0000103
Fred Drake272fb3a1998-04-07 14:15:28 +0000104\item[grep.py]
105--- grep
Guido van Rossum612316f1997-03-14 04:12:52 +0000106
Fred Drake272fb3a1998-04-07 14:15:28 +0000107\item[mutex.py]
108--- Mutual exclusion --- for use with module sched
Guido van Rossum612316f1997-03-14 04:12:52 +0000109
Fred Drake272fb3a1998-04-07 14:15:28 +0000110\item[packmail.py]
111--- create a self-unpacking \UNIX{} shell archive
Guido van Rossum612316f1997-03-14 04:12:52 +0000112
Fred Drake272fb3a1998-04-07 14:15:28 +0000113\item[sched.py]
114--- event scheduler class
Guido van Rossum612316f1997-03-14 04:12:52 +0000115
Fred Drake272fb3a1998-04-07 14:15:28 +0000116\item[tzparse.py]
117--- Parse a timezone specification (unfinished)
118\end{description}
Guido van Rossum612316f1997-03-14 04:12:52 +0000119
120
121\section{Obsolete}
122
Fred Drake71c1e501998-04-04 07:03:19 +0000123These modules are not on the standard module search path;
124\indexiii{module}{search}{path}
125but are available in the directory \file{lib-old/} installed under
Fred Drake3700b6f1998-08-07 16:02:28 +0000126\file{\textrm{\$prefix}/lib/python1.5/}. % $ <-- bow to font lock
127To use any of these modules, add that directory to \code{sys.path},
128possibly using \envvar{PYTHONPATH}.
Guido van Rossumcfaf1431997-07-16 15:48:20 +0000129
Fred Drake272fb3a1998-04-07 14:15:28 +0000130\begin{description}
131\item[newdir.py]
132--- New dir() function (the standard dir() is now just as good)
Guido van Rossum612316f1997-03-14 04:12:52 +0000133
Fred Drake272fb3a1998-04-07 14:15:28 +0000134\item[addpack.py]
135--- standard support for "packages"
Guido van Rossum612316f1997-03-14 04:12:52 +0000136
Fred Drake9ed1a0af1998-11-02 15:46:21 +0000137\item[codehack.py]
138--- Extract function name or line number from a function
139code object (these are now accessible as attributes: co.co_name,
140func.func_name, co.co_firstlineno).
141
Fred Drake46e1a321999-06-18 17:12:15 +0000142\item[dump.py]
143--- Print python code that reconstructs a variable
144
Fred Drake272fb3a1998-04-07 14:15:28 +0000145\item[fmt.py]
146--- text formatting abstractions (too slow)
Guido van Rossum612316f1997-03-14 04:12:52 +0000147
Fred Drake272fb3a1998-04-07 14:15:28 +0000148\item[Para.py]
149--- helper for fmt.py
Fred Drake71c1e501998-04-04 07:03:19 +0000150
Fred Drake272fb3a1998-04-07 14:15:28 +0000151\item[lockfile.py]
152--- wrapper around FCNTL file locking (use
Fred Drake3700b6f1998-08-07 16:02:28 +0000153\function{fcntl.lockf()}/\function{flock()} intead)
Guido van Rossum612316f1997-03-14 04:12:52 +0000154
Fred Drake9ed1a0af1998-11-02 15:46:21 +0000155\item[poly.py]
156--- Polynomials
157
Fred Drake272fb3a1998-04-07 14:15:28 +0000158\item[tb.py]
159--- Print tracebacks, with a dump of local variables (use
Fred Drakee36e4e61999-01-13 17:11:52 +0000160\function{pdb.pm()} or \refmodule{traceback} instead)
Guido van Rossum612316f1997-03-14 04:12:52 +0000161
Fred Drake3700b6f1998-08-07 16:02:28 +0000162\item[timingmodule]
163--- Measure time intervals to high resolution (use
164\function{time.clock()} instead). (This is an extension module.)
Fred Drake9ed1a0af1998-11-02 15:46:21 +0000165
Fred Drake4d5c87b1999-06-10 21:17:11 +0000166\item[util.py]
167--- Useful functions that don't fit elsewhere.
168
Fred Drake60adb361999-01-05 23:09:12 +0000169\item[whatsound.py]
Fred Drakee36e4e61999-01-13 17:11:52 +0000170--- Recognize sound files; use \refmodule{sndhdr} instead.
Fred Drake60adb361999-01-05 23:09:12 +0000171
Fred Drake9ed1a0af1998-11-02 15:46:21 +0000172\item[zmod.py]
173--- Compute properties of mathematical "fields"
Fred Drake272fb3a1998-04-07 14:15:28 +0000174\end{description}
Guido van Rossum61c27031997-07-18 21:08:07 +0000175
Fred Drake20ca9171998-04-09 14:32:28 +0000176The following modules were documented in previous versions of this
177manual, but are now considered obsolete:
178
179\begin{description}
180\item[ni]
Fred Drake3700b6f1998-08-07 16:02:28 +0000181--- Import modules in ``packages.'' Basic package support is now
182built in.
Fred Drake20ca9171998-04-09 14:32:28 +0000183
184\item[rand]
185--- Old interface to the random number generator.
186
187\item[soundex]
188--- Algorithm for collapsing names which sound similar to a shared
189key. (This is an extension module.)
190\end{description}
191
Guido van Rossum612316f1997-03-14 04:12:52 +0000192
193\section{Extension modules}
194
Fred Drake272fb3a1998-04-07 14:15:28 +0000195\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +0000196\item[cursesmodule.c]
197--- Curses interface.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000198
Fred Drake272fb3a1998-04-07 14:15:28 +0000199\item[dlmodule.c]
200--- A highly experimental and dangerous device for calling
Fred Drake3700b6f1998-08-07 16:02:28 +0000201arbitrary \C{} functions in arbitrary shared libraries.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000202
Fred Drake272fb3a1998-04-07 14:15:28 +0000203\item[nismodule.c]
204--- NIS (a.k.a. Sun's Yellow Pages) interface.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000205
Fred Drake272fb3a1998-04-07 14:15:28 +0000206\item[stdwinmodule.c]
207--- Interface to STDWIN (an old, unsupported
Guido van Rossumb9ee9c21997-06-02 17:34:02 +0000208platform-independent GUI package). Obsolete; use Tkinter for a
209platform-independent GUI instead.
Fred Drake3700b6f1998-08-07 16:02:28 +0000210\end{description}
Guido van Rossumb9ee9c21997-06-02 17:34:02 +0000211
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000212The following are SGI specific:
213
Fred Drake3700b6f1998-08-07 16:02:28 +0000214\begin{description}
Fred Drake272fb3a1998-04-07 14:15:28 +0000215\item[clmodule.c]
216--- Interface to the SGI compression library.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000217
Fred Drake272fb3a1998-04-07 14:15:28 +0000218\item[svmodule.c]
219--- Interface to the ``simple video'' board on SGI Indigo
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000220(obsolete hardware).
Fred Drake3700b6f1998-08-07 16:02:28 +0000221\end{description}