20.7, although not all of the compatibility code for older Emacsen has
been removed. Specifically, the old "make sure we have a current
custom.el library" stuff is removed, as is the hack-around for an
NTEmacs 19.34.6 make-temp-name bug.
Updated much of the Commentary section in the initial comments.
Much more importantly, I've integrated Ken Manheimer's pdbtrack stuff,
which is way cool. When enabled (as by default), this turns on the
overlay arrow when pdb is entered, either in the shell buffer or in
the *Python* buffer. Specifically:
(py-mode-map): Added C-c C-d to toggle pdb tracking.
(py-pdbtrack-do-tracking-p): New user customizable variable to control
whether overlay arrow tracking is enabled or not. This variable is
buffer local and is turned on by default.
(py-pdbtrack-minor-mode-string): The string that's added to the minor
mode alist when actually doing pdb overlay arrow tracking. User
customizable.
(py-pdbtrack-toggle-stack-tracking, turn-on-pdbtrack,
turn-off-pdbtrack): New commands to control pdb tracking.
(py-pdbtrack-is-tracking-p): Helper variable used to control the
display of py-pdbtrack-minor-mode-string. Set to true when the
overlay arrow is enabled, and false when it's disabled.
(py-pdbtrack-stack-entry-regexp, py-pdbtrack-input-prompt,
py-pdbtrack-track-range): Inherited from pdbtrack.el and renamed.
(py-pdbtrack-overlay-arrow, py-pdbtrack-track-stack-file): New
functions which actually do the tracking.
(py-shell): Add py-pdbtrack-track-stack-file to
comint-output-filter-functions.
Finally, add py-pdbtrack-track-stack-file to
comint-output-filter-functions at the file level. This and the
py-shell addition should ensure that pdb tracking is installed
regardless of the order of operation.
Also, add py-pdbtrack-minor-mode-string to minor-mode-alist.
Fix based on patch #414750 by Michael Hudson.
New functions get_func_name() and get_func_desc() return reasonable
names and descriptions for all objects. XXX Even objects that aren't
actually callable.
Change "EOF" to "end-of-file", on the premise that it is easier for
new programmers to understand (at least a little).
This does not attempt to explain "file or device attached to standard
input."
Added description of optional parameter to the TestSuite constructor.
Added descriptions of the TestLoader and TextTestRunner classes.
Added method descriptions for the TestCase class.
Michael Hudson suggested this fox for the Tru64 problem (SF bug
232597). It looks reasonable, it works on Tru64, and it doesn't beak
anything on Linux, so I say go for it.
catch IOError as well as OverflowError. I found that on Tru64 Unix
this was raised; probably because the OS (or libc) doesn't support
large files but the architecture is 64 bits!
Avoid ever using popen on Windows, since it's broken there.
Factor out the business of getting the summary line into splitdoc().
Use the modulename() routine in inspect.
Show all members of modules and classes rather than filtering on leading '_'.
Small typo and formtating fixes.
Don't show warnings when running "pydoc -k".
pickle.py
The code implicitly assumed that all ints fit in 4 bytes, causing all
sorts of mischief (from nonsense results to corrupted pickles).
Repaired that.
marshal.c
The int marshaling code assumed that right shifts of signed longs
sign-extend. Repaired that.