blob: 5e9e7b043328e063feb5584e90893ed8eb934fff [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 Rossum612316f1997-03-14 04:12:52 +000011ni.py -- New import scheme with package support
12
Guido van Rossum612316f1997-03-14 04:12:52 +000013
14\section{Frameworks; somewhat harder to document, but
15well worth the effort}
16
17Tkinter.py -- Interface to Tcl/Tk for graphical user interfaces;
Guido van Rossum15085381997-04-03 23:49:28 +000018Fredrik Lundh is working on this one!
Guido van Rossum612316f1997-03-14 04:12:52 +000019
20BaseHTTPServer.py -- HTTP server base class
21
22CGIHTTPServer.py -- CGI-savvy HTTP Server
23
24SimpleHTTPServer.py -- Simple HTTP Server
25
26SocketServer.py -- Generic socket server classes
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
33mimify.py -- Mimification and unmimification of mail messages
34
35multifile.py -- make each part of a multipart message ``feel'' like
36
Guido van Rossum612316f1997-03-14 04:12:52 +000037mailbox.py -- handle Unix style, MMDF style, and MH style mailboxes
38
Guido van Rossum612316f1997-03-14 04:12:52 +000039
40\section{Miscellaneous useful utilities}
41
42Some of these are very old and/or not very robust; marked with ``hmm''.
43
Guido van Rossum612316f1997-03-14 04:12:52 +000044calendar.py -- Calendar printing functions
45
46cmp.py -- Efficiently compare files
47
48cmpcache.py -- Efficiently compare files (uses statcache)
49
50dircache.py -- like os.listdir, but caches results
51
52dircmp.py -- class to build directory diff tools on
53
54linecache.py -- Cache lines from files (used by pdb)
55
56pipes.py -- Conversion pipeline templates (hmm)
57
Guido van Rossum5bbf0f71997-04-30 19:41:48 +000058popen2.py -- improved popen, can read AND write simultaneously
Guido van Rossum612316f1997-03-14 04:12:52 +000059
Guido van Rossum612316f1997-03-14 04:12:52 +000060statcache.py -- Maintain a cache of file stats
61
62colorsys.py -- Conversion between RGB and other color systems
63
64commands.py -- executing commands and looking at their output and
65status
66
Guido van Rossum15085381997-04-03 23:49:28 +000067dbhash.py -- (g)dbm-like wrapper for bsdhash.hashopen
68
Guido van Rossum612316f1997-03-14 04:12:52 +000069mhlib.py -- MH interface
70
71pty.py -- Pseudo terminal utilities
72
73tty.py -- Terminal utilities
74
75cmd.py -- build line-oriented command interpreters (used by pdb)
76
Guido van Rossum612316f1997-03-14 04:12:52 +000077bdb.py -- A generic Python debugger base class (used by pdb)
78
79ihooks.py -- Import hook support (for ni and rexec)
80
81
82\section{Parsing Python}
83
84(One could argue that these should all be documented together with the
85parser module; in fact the parser module section already references
86the token and symbol modules.)
87
88token.py -- Tokens (from ``token.h'')
89
90symbol.py -- Symbols (from ``graminit.h'')
91
92tokenize.py -- regular expression that recognizes Python tokens
93
Guido van Rossum612316f1997-03-14 04:12:52 +000094pyclbr.py -- Parse a Python file and retrieve classes and methods
95
96
97\section{Platform specific modules}
98
99ntpath.py -- equivalent of posixpath on 32-bit Windows
100
101dospath.py -- equivalent of posixpath on MS-DOS
102
103macpath.py -- equivalent of posixpath on Mac
104
105
106\section{Code objects and files, debugger etc.}
107
108compileall.py -- force "compilation" of all .py files in a directory
109
110py_compile.py -- "compile" a .py file to a .pyc file
111
112codehack.py -- extract a function name from a code object
113
114dis.py -- Disassembler for Python bytecode objects
115
116repr.py -- Redo the `...` (representation) but with limits on most
117sizes (used by pdb)
118
119newdir.py -- New dir() function
120
121
122\section{Multimedia}
123
124audiodev.py -- Plays audio files
125
126sunau.py -- parse Sun and NeXT audio files
127
128sunaudio.py -- interpret sun audio headers
129
130toaiff.py -- Convert "arbitrary" sound files to AIFF files
131
132sndhdr.py -- recognizing sound files
133
134wave.py -- parse WAVE files
135
136whatsound.py -- recognizing sound files
137
138
139\section{Oddities}
140
141These modules are probably also obsolete, or just not very useful.
142
143Queue.py -- A multi-producer, multi-consumer queue
144
145bisect.py -- Bisection algorithms
146
147dump.py -- Print python code that reconstructs a variable
148
149emacs.py -- Execute Emacs code from a Python interpreter
150
151find.py -- find files matching pattern in directory tree
152
Guido van Rossum15085381997-04-03 23:49:28 +0000153fpformat.py -- General floating point formatting functions -- obsolete
Guido van Rossum612316f1997-03-14 04:12:52 +0000154
155grep.py -- grep
156
157mutex.py -- Mutual exclusion -- for use with module sched
158
Guido van Rossum5bbf0f71997-04-30 19:41:48 +0000159packmail.py -- create a self-unpacking \UNIX{} shell archive
Guido van Rossum612316f1997-03-14 04:12:52 +0000160
161poly.py -- Polynomials
162
163sched.py -- event scheduler class
164
165shutil.py -- utility functions usable in a shell-like program
166
167util.py -- useful functions that don't fit elsewhere
168
169zmod.py -- Compute properties of mathematical "fields"
170
171tzparse.py -- Parse a timezone specification (unfinished)
172
173
174\section{Obsolete}
175
176addpack.py -- standard support for "packages" (use ni instead)
177
Guido van Rossum15085381997-04-03 23:49:28 +0000178fmt.py -- text formatting abstractions (too slow)
Guido van Rossum612316f1997-03-14 04:12:52 +0000179
180Para.py -- helper for fmt.py
181
182lockfile.py -- wrapper around FCNTL file locking (use
183fcntl.lockf/flock intead)
184
185tb.py -- Print tracebacks, with a dump of local variables (use
186pdb.pm() or traceback.py instead)
187
188
189\section{Extension modules}
190
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000191bsddbmodule.c -- Interface to the Berkeley DB interface (yet another
192dbm clone).
193
194cmathmodule.c -- Exactly the same as math, except takes complex
195arguments and returns complex results.
196
197cursesmodule.c -- Curses interface.
198
199dbhashmodule.c -- Obsolete.
200
201dlmodule.c -- A highly experimental and dangerous device for calling
202arbitrary C functions in arbitrary shared libraries.
203
204newmodule.c -- Tommy Burnette's `new' module (creates new empty
205objects of certain kinds) -- dangerous.
206
207nismodule.c -- NIS (a.k.a. Sun's Yellow Pages) interface.
208
209timingmodule.c -- Measure time intervals to high resolution (obsolete
210-- use time.clock() instead).
211
Guido van Rossum5bbf0f71997-04-30 19:41:48 +0000212resource.c -- Interface to getrusage() and friends.
213
Guido van Rossum8d2893b1997-03-27 20:57:52 +0000214The following are SGI specific:
215
216clmodule.c -- Interface to the SGI compression library.
217
218svmodule.c -- Interface to the ``simple video'' board on SGI Indigo
219(obsolete hardware).