blob: 50dc1ba7608fbde0a5224b3734d741af19bb0dcc [file] [log] [blame]
Guido van Rossum612316f1997-03-14 04:12:52 +00001\chapter{Undocumented Modules}
2
3Here's a quick listing of modules that are currently undocumented, but
4that should be documented. Feel free to contribute documentation for
5them! (The idea and most contents for this chapter were taken from a
6posting by Fredrik Lundh; I have revised some modules' status.)
7
8
9\section{Fundamental, and pretty straightforward to document}
10
Guido van Rossum08157f81997-08-21 02:29:19 +000011cPickle.c -- mostly the same as pickle but no subclassing
12
13cStringIO.c -- mostly the same as StringIO but no subclassing
14
Guido van Rossum612316f1997-03-14 04:12:52 +000015
16\section{Frameworks; somewhat harder to document, but
17well worth the effort}
18
19Tkinter.py -- Interface to Tcl/Tk for graphical user interfaces;
Guido van Rossum15085381997-04-03 23:49:28 +000020Fredrik Lundh is working on this one!
Guido van Rossum612316f1997-03-14 04:12:52 +000021
22BaseHTTPServer.py -- HTTP server base class
23
24CGIHTTPServer.py -- CGI-savvy HTTP Server
25
26SimpleHTTPServer.py -- Simple HTTP Server
27
Guido van Rossum612316f1997-03-14 04:12:52 +000028
29\section{Stuff useful to a lot of people, including the CGI crowd}
30
31MimeWriter.py -- Generic MIME writer
32
Guido van Rossum612316f1997-03-14 04:12:52 +000033multifile.py -- make each part of a multipart message ``feel'' like
34
Guido van Rossum612316f1997-03-14 04:12:52 +000035
36\section{Miscellaneous useful utilities}
37
38Some of these are very old and/or not very robust; marked with ``hmm''.
39
Guido van Rossum612316f1997-03-14 04:12:52 +000040calendar.py -- Calendar printing functions
41
42cmp.py -- Efficiently compare files
43
44cmpcache.py -- Efficiently compare files (uses statcache)
45
46dircache.py -- like os.listdir, but caches results
47
48dircmp.py -- class to build directory diff tools on
49
50linecache.py -- Cache lines from files (used by pdb)
51
52pipes.py -- Conversion pipeline templates (hmm)
53
Guido van Rossum5bbf0f71997-04-30 19:41:48 +000054popen2.py -- improved popen, can read AND write simultaneously
Guido van Rossum612316f1997-03-14 04:12:52 +000055
Guido van Rossum612316f1997-03-14 04:12:52 +000056statcache.py -- Maintain a cache of file stats
57
58colorsys.py -- Conversion between RGB and other color systems
59
Guido van Rossum15085381997-04-03 23:49:28 +000060dbhash.py -- (g)dbm-like wrapper for bsdhash.hashopen
61
Guido van Rossum612316f1997-03-14 04:12:52 +000062mhlib.py -- MH interface
63
64pty.py -- Pseudo terminal utilities
65
66tty.py -- Terminal utilities
67
68cmd.py -- build line-oriented command interpreters (used by pdb)
69
Guido van Rossum612316f1997-03-14 04:12:52 +000070bdb.py -- A generic Python debugger base class (used by pdb)
71
72ihooks.py -- Import hook support (for ni and rexec)
73
Guido van Rossum90858221997-08-15 02:52:46 +000074
Guido van Rossum612316f1997-03-14 04:12:52 +000075\section{Parsing Python}
76
77(One could argue that these should all be documented together with the
Fred Drakec2112541997-10-06 21:41:30 +000078parser module.)
Guido van Rossumcfaf1431997-07-16 15:48:20 +000079
Guido van Rossum90858221997-08-15 02:52:46 +000080tokenize.py -- regular expression that recognizes Python tokens; also
81contains helper code for colorizing Python source code.
Guido van Rossum612316f1997-03-14 04:12:52 +000082
Guido van Rossum612316f1997-03-14 04:12:52 +000083pyclbr.py -- Parse a Python file and retrieve classes and methods
84
85
86\section{Platform specific modules}
87
88ntpath.py -- equivalent of posixpath on 32-bit Windows
89
90dospath.py -- equivalent of posixpath on MS-DOS
91
Guido van Rossum612316f1997-03-14 04:12:52 +000092
93\section{Code objects and files, debugger etc.}
94
95compileall.py -- force "compilation" of all .py files in a directory
96
97py_compile.py -- "compile" a .py file to a .pyc file
98
Guido van Rossum612316f1997-03-14 04:12:52 +000099dis.py -- Disassembler for Python bytecode objects
100
101repr.py -- Redo the `...` (representation) but with limits on most
102sizes (used by pdb)
103
Guido van Rossumcfaf1431997-07-16 15:48:20 +0000104copy_reg.py -- helper to provide extensibility for pickle/cPickle
Guido van Rossum612316f1997-03-14 04:12:52 +0000105
106
107\section{Multimedia}
108
109audiodev.py -- Plays audio files
110
111sunau.py -- parse Sun and NeXT audio files
112
113sunaudio.py -- interpret sun audio headers
114
115toaiff.py -- Convert "arbitrary" sound files to AIFF files
116
117sndhdr.py -- recognizing sound files
118
119wave.py -- parse WAVE files
120
121whatsound.py -- recognizing sound files
122
123
124\section{Oddities}
125
126These modules are probably also obsolete, or just not very useful.
127
128Queue.py -- A multi-producer, multi-consumer queue
Fred Drake2df75831997-10-06 21:52:31 +0000129
Guido van Rossum612316f1997-03-14 04:12:52 +0000130bisect.py -- Bisection algorithms
131
132dump.py -- Print python code that reconstructs a variable
133
Guido van Rossum612316f1997-03-14 04:12:52 +0000134find.py -- find files matching pattern in directory tree
135
Guido van Rossum15085381997-04-03 23:49:28 +0000136fpformat.py -- General floating point formatting functions -- obsolete
Guido van Rossum612316f1997-03-14 04:12:52 +0000137
138grep.py -- grep
139
140mutex.py -- Mutual exclusion -- for use with module sched
141
Guido van Rossum5bbf0f71997-04-30 19:41:48 +0000142packmail.py -- create a self-unpacking \UNIX{} shell archive
Guido van Rossum612316f1997-03-14 04:12:52 +0000143
144poly.py -- Polynomials
145
146sched.py -- event scheduler class
147
148shutil.py -- utility functions usable in a shell-like program
149
150util.py -- useful functions that don't fit elsewhere
151
152zmod.py -- Compute properties of mathematical "fields"
153
154tzparse.py -- Parse a timezone specification (unfinished)
155
156
157\section{Obsolete}
158
Guido van Rossumcfaf1431997-07-16 15:48:20 +0000159newdir.py -- New dir() function (the standard dir() is now just as good)
160
Guido van Rossum612316f1997-03-14 04:12:52 +0000161addpack.py -- standard support for "packages" (use ni instead)
162
Guido van Rossum15085381997-04-03 23:49:28 +0000163fmt.py -- text formatting abstractions (too slow)
Guido van Rossum612316f1997-03-14 04:12:52 +0000164
165Para.py -- helper for fmt.py
166
167lockfile.py -- wrapper around FCNTL file locking (use
168fcntl.lockf/flock intead)
169
170tb.py -- Print tracebacks, with a dump of local variables (use
171pdb.pm() or traceback.py instead)
172
Guido van Rossum61c27031997-07-18 21:08:07 +0000173codehack.py -- extract function name or line number from a function
174code object (these are now accessible as attributes: co.co_name,
175func.func_name, co.co_firstlineno)
176
Guido van Rossum612316f1997-03-14 04:12:52 +0000177
178\section{Extension modules}
179
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000180bsddbmodule.c -- Interface to the Berkeley DB interface (yet another
181dbm clone).
182
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000183cursesmodule.c -- Curses interface.
184
Guido van Rossumb9ee9c21997-06-02 17:34:02 +0000185dbhashmodule.c -- Obsolete; this functionality is now provided by
186bsddbmodule.c.
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000187
188dlmodule.c -- A highly experimental and dangerous device for calling
189arbitrary C functions in arbitrary shared libraries.
190
191newmodule.c -- Tommy Burnette's `new' module (creates new empty
192objects of certain kinds) -- dangerous.
193
194nismodule.c -- NIS (a.k.a. Sun's Yellow Pages) interface.
195
196timingmodule.c -- Measure time intervals to high resolution (obsolete
197-- use time.clock() instead).
198
Guido van Rossum5bbf0f71997-04-30 19:41:48 +0000199resource.c -- Interface to getrusage() and friends.
200
Guido van Rossumb9ee9c21997-06-02 17:34:02 +0000201stdwinmodule.c -- Interface to STDWIN (an old, unsupported
202platform-independent GUI package). Obsolete; use Tkinter for a
203platform-independent GUI instead.
204
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000205The following are SGI specific:
206
207clmodule.c -- Interface to the SGI compression library.
208
209svmodule.c -- Interface to the ``simple video'' board on SGI Indigo
210(obsolete hardware).