Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 1 | \chapter{Undocumented Modules} |
Fred Drake | 710c035 | 1998-02-18 15:47:17 +0000 | [diff] [blame] | 2 | \label{undoc} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 3 | |
| 4 | Here's a quick listing of modules that are currently undocumented, but |
| 5 | that should be documented. Feel free to contribute documentation for |
Fred Drake | 16e81f4 | 1999-02-24 19:57:14 +0000 | [diff] [blame] | 6 | them! (The idea and original contents for this chapter were taken |
| 7 | from a posting by Fredrik Lundh; I have revised some modules' status.) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 8 | |
| 9 | |
Fred Drake | 16e81f4 | 1999-02-24 19:57:14 +0000 | [diff] [blame] | 10 | \section{Frameworks} |
| 11 | |
| 12 | Frameworks tend to be harder to document, but are well worth the |
| 13 | effort spent. |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 14 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 15 | \begin{description} |
| 16 | \item[Tkinter.py] |
| 17 | --- Interface to Tcl/Tk for graphical user interfaces; |
Guido van Rossum | 1508538 | 1997-04-03 23:49:28 +0000 | [diff] [blame] | 18 | Fredrik Lundh is working on this one! |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 19 | |
Fred Drake | 95638f5 | 1998-04-14 04:55:43 +0000 | [diff] [blame] | 20 | \item[Tkdnd.py] |
| 21 | --- Drag-and-drop support for \module{Tkinter}. |
| 22 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 23 | \item[CGIHTTPServer.py] |
| 24 | --- CGI-savvy HTTP Server |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 25 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 26 | \item[SimpleHTTPServer.py] |
| 27 | --- Simple HTTP Server |
Fred Drake | 211f22c | 1998-08-11 18:13:31 +0000 | [diff] [blame] | 28 | |
| 29 | \item[test] |
| 30 | --- Regression testing framework. This is used for the Python |
| 31 | regression test, but is useful for other Python libraries as well. |
| 32 | This is a package rather than a module. |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 33 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 34 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 35 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 36 | \section{Miscellaneous useful utilities} |
| 37 | |
| 38 | Some of these are very old and/or not very robust; marked with ``hmm''. |
| 39 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 40 | \begin{description} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 41 | \item[cmp.py] |
| 42 | --- Efficiently compare files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 43 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 44 | \item[cmpcache.py] |
| 45 | --- Efficiently compare files (uses statcache) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 46 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 47 | \item[dircache.py] |
| 48 | --- like os.listdir, but caches results |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 49 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 50 | \item[dircmp.py] |
| 51 | --- class to build directory diff tools on |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 52 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 53 | \item[linecache.py] |
| 54 | --- Cache lines from files (used by pdb) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 55 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 56 | \item[pipes.py] |
| 57 | --- Conversion pipeline templates (hmm) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 58 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 59 | \item[statcache.py] |
| 60 | --- Maintain a cache of file stats |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 61 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 62 | \item[colorsys.py] |
| 63 | --- Conversion between RGB and other color systems |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 64 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 65 | \item[mhlib.py] |
| 66 | --- MH interface |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 67 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 68 | \item[pty.py] |
| 69 | --- Pseudo terminal utilities |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 70 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 71 | \item[tty.py] |
| 72 | --- Terminal utilities |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 73 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 74 | \item[bdb.py] |
| 75 | --- A generic Python debugger base class (used by pdb) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 76 | |
Fred Drake | 6b9ff72 | 1998-04-07 19:09:32 +0000 | [diff] [blame] | 77 | \item[wdb.py] |
| 78 | --- A primitive windowing debugger based on STDWIN. |
| 79 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 80 | \item[ihooks.py] |
| 81 | --- Import hook support (for rexec) |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 82 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 83 | |
Guido van Rossum | 9085822 | 1997-08-15 02:52:46 +0000 | [diff] [blame] | 84 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 85 | \section{Platform specific modules} |
| 86 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 87 | |
Fred Drake | 560bcae | 1999-02-02 18:59:58 +0000 | [diff] [blame] | 88 | These modules are used to implement the \refmodule{os.path} module, and |
| 89 | are not documented beyond this mention. |
| 90 | |
| 91 | \begin{description} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 92 | \item[dospath.py] |
Fred Drake | 560bcae | 1999-02-02 18:59:58 +0000 | [diff] [blame] | 93 | --- implementation of \module{os.path} on MS-DOS |
| 94 | |
| 95 | \item[ntpath.py] |
| 96 | --- implementation on \module{os.path} on 32-bit Windows |
| 97 | |
| 98 | \item[posixpath.py] |
| 99 | --- implementation on \module{os.path} on \POSIX{} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 100 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 101 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 102 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 103 | \section{Multimedia} |
| 104 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 105 | \begin{description} |
| 106 | \item[audiodev.py] |
| 107 | --- Plays audio files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 108 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 109 | \item[sunau.py] |
| 110 | --- parse Sun and NeXT audio files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 111 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 112 | \item[sunaudio.py] |
| 113 | --- interpret sun audio headers |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 114 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 115 | \item[toaiff.py] |
| 116 | --- Convert "arbitrary" sound files to AIFF files |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 117 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 118 | \item[wave.py] |
| 119 | --- parse WAVE files |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 120 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 121 | |
| 122 | |
| 123 | \section{Oddities} |
| 124 | |
| 125 | These modules are probably also obsolete, or just not very useful. |
| 126 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 127 | \begin{description} |
| 128 | \item[dump.py] |
| 129 | --- Print python code that reconstructs a variable |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 130 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 131 | \item[find.py] |
| 132 | --- find files matching pattern in directory tree |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 133 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 134 | \item[fpformat.py] |
| 135 | --- General floating point formatting functions --- |
Fred Drake | 71c1e50 | 1998-04-04 07:03:19 +0000 | [diff] [blame] | 136 | interesting demonstration of how to do this without using the \C{} |
| 137 | library |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 138 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 139 | \item[grep.py] |
| 140 | --- grep |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 141 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 142 | \item[mutex.py] |
| 143 | --- Mutual exclusion --- for use with module sched |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 144 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 145 | \item[packmail.py] |
| 146 | --- create a self-unpacking \UNIX{} shell archive |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 147 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 148 | \item[sched.py] |
| 149 | --- event scheduler class |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 150 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 151 | \item[util.py] |
| 152 | --- useful functions that don't fit elsewhere |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 153 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 154 | \item[tzparse.py] |
| 155 | --- Parse a timezone specification (unfinished) |
| 156 | \end{description} |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 157 | |
| 158 | |
| 159 | \section{Obsolete} |
| 160 | |
Fred Drake | 71c1e50 | 1998-04-04 07:03:19 +0000 | [diff] [blame] | 161 | These modules are not on the standard module search path; |
| 162 | \indexiii{module}{search}{path} |
| 163 | but are available in the directory \file{lib-old/} installed under |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 164 | \file{\textrm{\$prefix}/lib/python1.5/}. % $ <-- bow to font lock |
| 165 | To use any of these modules, add that directory to \code{sys.path}, |
| 166 | possibly using \envvar{PYTHONPATH}. |
Guido van Rossum | cfaf143 | 1997-07-16 15:48:20 +0000 | [diff] [blame] | 167 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 168 | \begin{description} |
| 169 | \item[newdir.py] |
| 170 | --- New dir() function (the standard dir() is now just as good) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 171 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 172 | \item[addpack.py] |
| 173 | --- standard support for "packages" |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 174 | |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 175 | \item[codehack.py] |
| 176 | --- Extract function name or line number from a function |
| 177 | code object (these are now accessible as attributes: co.co_name, |
| 178 | func.func_name, co.co_firstlineno). |
| 179 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 180 | \item[fmt.py] |
| 181 | --- text formatting abstractions (too slow) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 182 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 183 | \item[Para.py] |
| 184 | --- helper for fmt.py |
Fred Drake | 71c1e50 | 1998-04-04 07:03:19 +0000 | [diff] [blame] | 185 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 186 | \item[lockfile.py] |
| 187 | --- wrapper around FCNTL file locking (use |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 188 | \function{fcntl.lockf()}/\function{flock()} intead) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 189 | |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 190 | \item[poly.py] |
| 191 | --- Polynomials |
| 192 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 193 | \item[tb.py] |
| 194 | --- Print tracebacks, with a dump of local variables (use |
Fred Drake | e36e4e6 | 1999-01-13 17:11:52 +0000 | [diff] [blame] | 195 | \function{pdb.pm()} or \refmodule{traceback} instead) |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 196 | |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 197 | \item[timingmodule] |
| 198 | --- Measure time intervals to high resolution (use |
| 199 | \function{time.clock()} instead). (This is an extension module.) |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 200 | |
Fred Drake | 60adb36 | 1999-01-05 23:09:12 +0000 | [diff] [blame] | 201 | \item[whatsound.py] |
Fred Drake | e36e4e6 | 1999-01-13 17:11:52 +0000 | [diff] [blame] | 202 | --- Recognize sound files; use \refmodule{sndhdr} instead. |
Fred Drake | 60adb36 | 1999-01-05 23:09:12 +0000 | [diff] [blame] | 203 | |
Fred Drake | 9ed1a0a | 1998-11-02 15:46:21 +0000 | [diff] [blame] | 204 | \item[zmod.py] |
| 205 | --- Compute properties of mathematical "fields" |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 206 | \end{description} |
Guido van Rossum | 61c2703 | 1997-07-18 21:08:07 +0000 | [diff] [blame] | 207 | |
Fred Drake | 20ca917 | 1998-04-09 14:32:28 +0000 | [diff] [blame] | 208 | The following modules were documented in previous versions of this |
| 209 | manual, but are now considered obsolete: |
| 210 | |
| 211 | \begin{description} |
| 212 | \item[ni] |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 213 | --- Import modules in ``packages.'' Basic package support is now |
| 214 | built in. |
Fred Drake | 20ca917 | 1998-04-09 14:32:28 +0000 | [diff] [blame] | 215 | |
| 216 | \item[rand] |
| 217 | --- Old interface to the random number generator. |
| 218 | |
| 219 | \item[soundex] |
| 220 | --- Algorithm for collapsing names which sound similar to a shared |
| 221 | key. (This is an extension module.) |
| 222 | \end{description} |
| 223 | |
Guido van Rossum | 612316f | 1997-03-14 04:12:52 +0000 | [diff] [blame] | 224 | |
| 225 | \section{Extension modules} |
| 226 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 227 | \begin{description} |
| 228 | \item[bsddbmodule.c] |
| 229 | --- Interface to the Berkeley DB interface (yet another |
Fred Drake | 0ebd548 | 1999-04-15 16:05:29 +0000 | [diff] [blame^] | 230 | dbm clone). See \refmodule{dbhash} for a DBM-style interface. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 231 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 232 | \item[cursesmodule.c] |
| 233 | --- Curses interface. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 234 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 235 | \item[dlmodule.c] |
| 236 | --- A highly experimental and dangerous device for calling |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 237 | arbitrary \C{} functions in arbitrary shared libraries. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 238 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 239 | \item[newmodule.c] |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 240 | --- Tommy Burnette's \module{new} module (creates new empty objects of |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 241 | certain kinds) --- dangerous. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 242 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 243 | \item[nismodule.c] |
| 244 | --- NIS (a.k.a. Sun's Yellow Pages) interface. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 245 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 246 | \item[stdwinmodule.c] |
| 247 | --- Interface to STDWIN (an old, unsupported |
Guido van Rossum | b9ee9c2 | 1997-06-02 17:34:02 +0000 | [diff] [blame] | 248 | platform-independent GUI package). Obsolete; use Tkinter for a |
| 249 | platform-independent GUI instead. |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 250 | \end{description} |
Guido van Rossum | b9ee9c2 | 1997-06-02 17:34:02 +0000 | [diff] [blame] | 251 | |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 252 | The following are SGI specific: |
| 253 | |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 254 | \begin{description} |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 255 | \item[clmodule.c] |
| 256 | --- Interface to the SGI compression library. |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 257 | |
Fred Drake | 272fb3a | 1998-04-07 14:15:28 +0000 | [diff] [blame] | 258 | \item[svmodule.c] |
| 259 | --- Interface to the ``simple video'' board on SGI Indigo |
Guido van Rossum | 8d2893b | 1997-03-27 20:57:52 +0000 | [diff] [blame] | 260 | (obsolete hardware). |
Fred Drake | 3700b6f | 1998-08-07 16:02:28 +0000 | [diff] [blame] | 261 | \end{description} |