cpython/Lib
Barry Warsaw 00decd7835 Patch #1520294: Support for getset and member descriptors in types.py,
inspect.py, and pydoc.py.  Specifically, this allows for querying the type of
an object against these built-in C types and more importantly, for getting
their docstrings printed in the interactive interpreter's help() function.

This patch includes a new built-in module called _types which provides
definitions of getset and member descriptors for use by the types.py module.
These types are exposed as types.GetSetDescriptorType and
types.MemberDescriptorType.  Query functions are provided as
inspect.isgetsetdescriptor() and inspect.ismemberdescriptor().  The
implementations of these are robust enough to work with Python implementations
other than CPython, which may not have these fundamental types.

The patch also includes documentation and test suite updates.

I commit these changes now under these guiding principles:

1. Silence is assent.  The release manager has not said "no", and of the few
   people that cared enough to respond to the thread, the worst vote was "0".

2. It's easier to ask for forgiveness than permission.

3. It's so dang easy to revert stuff in svn, that you could view this as a
   forcing function. :)

Windows build patches will follow.
2006-07-27 23:43:15 +00:00
..
bsddb - bsddb: multithreaded DB access using the simple bsddb module interface 2006-06-15 08:52:32 +00:00
compiler Whitespace normalization. 2006-06-27 11:52:49 +00:00
ctypes Remove code that is no longer used (ctypes.com). 2006-07-27 18:39:55 +00:00
curses
distutils Bump distutils version to 2.5, as several new features 2006-07-27 06:38:16 +00:00
email Forward port some fixes that were in email 2.5 but for some reason didn't make 2006-07-26 05:54:46 +00:00
encodings Make import/lookup of mbcs fail on non-Windows systems. 2006-06-15 06:45:05 +00:00
hotshot
idlelib Fix bug #1517990: IDLE keybindings on OSX 2006-07-25 20:28:55 +00:00
lib-tk Patch #1524429: Use repr instead of backticks again. 2006-07-18 17:46:31 +00:00
logging Addressed SF#1524081 by using a dictionary to map level names to syslog priority names, rather than a string.lower(). 2006-07-20 23:20:12 +00:00
msilib Properly generate logical file ids. Fixes #1515998. 2006-07-06 19:28:03 +00:00
plat-aix3
plat-aix4
plat-atheos
plat-beos5
plat-darwin
plat-freebsd2
plat-freebsd3
plat-freebsd4
plat-freebsd5
plat-freebsd6
plat-freebsd7
plat-generic
plat-irix5
plat-irix6
plat-linux2
plat-mac * If BuildApplet.py is used as an applet it starts with a version of 2006-06-07 20:18:44 +00:00
plat-netbsd1
plat-next3
plat-os2emx
plat-riscos
plat-sunos5
plat-unixware7
site-packages
sqlite3 The sqlite3 module did cut off data from the SQLite database at the first null 2006-07-02 17:48:30 +00:00
test Patch #1520294: Support for getset and member descriptors in types.py, 2006-07-27 23:43:15 +00:00
wsgiref Sync w/external release 0.1.2. Please see PEP 360 before making changes to external packages. 2006-06-12 04:04:32 +00:00
xmlcore added XMLParser alias for cElementTree compatibility 2006-07-06 12:29:24 +00:00
__future__.py
__phello__.foo.py
_LWPCookieJar.py Remove unused import. 2006-05-18 06:18:06 +00:00
_MozillaCookieJar.py Make use of new str.startswith/endswith semantics. 2006-06-09 20:43:48 +00:00
_strptime.py
_threading_local.py Finally figured out why this module did its imports at the 2006-04-18 03:28:32 +00:00
aifc.py Add a length check to aifc to ensure it doesn't write a bogus file 2006-05-30 00:26:01 +00:00
anydbm.py
asynchat.py
asyncore.py
atexit.py
audiodev.py
base64.py ("Forward-port" of r46506) 2006-05-28 19:13:17 +00:00
BaseHTTPServer.py
Bastion.py
bdb.py Patch #721464: pdb.Pdb instances can now be given explicit stdin and 2006-05-10 17:13:20 +00:00
binhex.py Patch #1220874: Update the binhex module for Mach-O. 2006-07-15 16:53:15 +00:00
bisect.py
calendar.py Get rid of __context__, per the latest changes to PEP 343 and python-dev 2006-05-02 19:47:52 +00:00
cgi.py
CGIHTTPServer.py
cgitb.py
chunk.py
cmd.py
code.py
codecs.py Add a BufferedIncrementalEncoder class that can be used for implementing 2006-04-14 18:25:39 +00:00
codeop.py Conversion of exceptions over from faked-up classes to new-style C types. 2006-05-27 12:29:24 +00:00
colorsys.py
commands.py
compileall.py
ConfigParser.py
contextlib.py Finish bringing SVN into line with latest version of PEP 343 by getting rid of all remaining references to context objects that I could find. Without a __context__() method context objects no longer exist. Also get test_with working again, and adopt a suggestion from Neal for decimal.Context.get_manager() 2006-05-03 13:02:47 +00:00
Cookie.py
cookielib.py Little cleanup 2006-05-18 06:51:46 +00:00
copy.py
copy_reg.py
cProfile.py
csv.py
dbhash.py
decimal.py Revert r50706 (Whitespace normalization) and 2006-07-19 17:18:32 +00:00
difflib.py Repaired typo in new comment. 2006-06-14 04:13:00 +00:00
dircache.py
dis.py
doctest.py Remove unused import 2006-06-12 03:05:03 +00:00
DocXMLRPCServer.py [Bug #1473048] 2006-05-31 14:08:48 +00:00
dumbdbm.py
dummy_thread.py fix exception usage 2006-06-13 17:14:36 +00:00
dummy_threading.py
filecmp.py
fileinput.py
fnmatch.py
formatter.py
fpformat.py
ftplib.py
functools.py Add functools.update_wrapper() and functools.wraps() as described in PEP 356 2006-06-08 13:54:49 +00:00
getopt.py
getpass.py
gettext.py
glob.py
gopherlib.py
gzip.py Apply revised patch for GzipFile.readline performance #1281707 2006-05-22 15:59:12 +00:00
hashlib.py
heapq.py
hmac.py
htmlentitydefs.py
htmllib.py
HTMLParser.py
httplib.py Bug #978833: Really close underlying socket in _socketobject.close. 2006-07-26 12:12:56 +00:00
ihooks.py
imaplib.py
imghdr.py
imputil.py Bug #1481530: allow "from os.path import ..." with imputil 2006-05-04 05:08:10 +00:00
inspect.py Patch #1520294: Support for getset and member descriptors in types.py, 2006-07-27 23:43:15 +00:00
keyword.py
linecache.py Linecache contains support for PEP302 loaders, but fails to deal with loaders 2006-06-13 11:19:56 +00:00
locale.py Whitespace normalization. 2006-05-18 02:06:40 +00:00
macpath.py
macurl2path.py
mailbox.py Get mailbox module working on OS/2 EMX port. 2006-07-23 13:04:00 +00:00
mailcap.py
markupbase.py Normalized a few cases of whitespace in function declarations. 2006-06-06 12:46:55 +00:00
md5.py
mhlib.py
mimetools.py
mimetypes.py Bug #1202018: add some common mime.types locations. 2006-06-14 08:42:11 +00:00
MimeWriter.py
mimify.py
modulefinder.py
multifile.py
mutex.py
netrc.py
new.py
nntplib.py
ntpath.py SF bug #1473760 TempFile can hang on Windows. 2006-04-21 21:18:10 +00:00
nturl2path.py
opcode.py
optparse.py Resync optparse with Optik 1.5.3: minor tweaks for/to tests. 2006-07-23 16:05:51 +00:00
os.py
os2emxpath.py
pdb.doc
pdb.py Whitespace normalization. 2006-07-27 15:11:00 +00:00
pickle.py
pickletools.py
pipes.py
pkgutil.py Whitespace normalization. 2006-07-26 23:23:15 +00:00
platform.py Teach platform about darwin/x86 2006-04-17 13:37:15 +00:00
popen2.py Fix check for empty list (vs. None). 2006-07-21 17:36:31 +00:00
poplib.py In stdlib, use hashlib instead of deprecated md5 and sha modules. 2006-04-30 08:57:35 +00:00
posixfile.py
posixpath.py
pprint.py pprint functions used to sort a dict (by key) if and only if 2006-06-02 23:22:51 +00:00
profile.py
pstats.py Fix errors found by pychecker. 2006-06-11 07:27:56 +00:00
pty.py
py_compile.py
pyclbr.py Fix #1494787 (pyclbr counts whitespace as superclass name) 2006-05-29 14:39:00 +00:00
pydoc.py Patch #1520294: Support for getset and member descriptors in types.py, 2006-07-27 23:43:15 +00:00
Queue.py document the class, not its initializer 2006-06-10 14:09:11 +00:00
quopri.py
random.py shuffle() doscstring: Removed warning about sequence length 2006-06-10 22:51:45 +00:00
re.py
repr.py
rexec.py
rfc822.py Port forward from 2.4 branch: 2006-05-01 03:03:02 +00:00
rlcompleter.py Patch #1472854: make the rlcompleter.Completer class usable on non- 2006-04-30 18:14:54 +00:00
robotparser.py
runpy.py Revert the __module_name__ changes made in rev 47142. We'll revisit this in Python 2.6 2006-07-06 12:53:04 +00:00
sched.py
sets.py
sgmllib.py SF bug #1504333: sgmlib should allow angle brackets in quoted values 2006-06-29 00:51:53 +00:00
sha.py
shelve.py Bug #1339007: Shelf objects now don't raise an exception in their 2006-06-14 06:08:31 +00:00
shlex.py
shutil.py Bug #1472949: stringify IOErrors in shutil.copytree when appending 2006-04-28 16:54:25 +00:00
SimpleHTTPServer.py Whitespace normalization. 2006-06-14 22:38:13 +00:00
SimpleXMLRPCServer.py Whitespace normalization. 2006-06-01 13:41:46 +00:00
site.py Fix site module docstring to match the code for Mac OSX, too 2006-06-12 08:23:02 +00:00
smtpd.py
smtplib.py Normalized a few cases of whitespace in function declarations. 2006-06-06 12:46:55 +00:00
sndhdr.py
socket.py Bug #978833: Really close underlying socket in _socketobject.close. 2006-07-26 12:12:56 +00:00
SocketServer.py
sre.py
sre_compile.py
sre_constants.py
sre_parse.py
stat.py
statvfs.py
string.py Fix bug in passing tuples to string.Template. All other values (with working 2006-07-05 11:03:49 +00:00
StringIO.py
stringold.py
stringprep.py
struct.py Fixes in struct and socket from merge reviews. 2006-06-04 13:49:49 +00:00
subprocess.py Guard for _active being None in __del__ method. 2006-07-20 16:28:39 +00:00
sunau.py
sunaudio.py
symbol.py
symtable.py
tabnanny.py
tarfile.py Part of SF patch #1484695. This removes dead code. The chksum was 2006-07-10 00:23:17 +00:00
telnetlib.py Patch #825417: Fix timeout processing in expect, 2006-07-03 13:01:35 +00:00
tempfile.py Param name is dir, not directory. Update docstring. Backport candidate 2006-06-16 04:31:06 +00:00
textwrap.py Whitespace normalization. 2006-06-11 19:42:51 +00:00
this.py
threading.py Patch #1454481: Make thread stack size runtime tunable. 2006-06-13 15:04:24 +00:00
timeit.py
toaiff.py
token.py
tokenize.py
trace.py Make use of new str.startswith/endswith semantics. 2006-06-09 20:43:48 +00:00
traceback.py Whitespace normalization. 2006-07-24 21:02:15 +00:00
tty.py
types.py Patch #1520294: Support for getset and member descriptors in types.py, 2006-07-27 23:43:15 +00:00
unittest.py
urllib.py Bug #1459963: properly capitalize HTTP header names. 2006-07-26 07:40:17 +00:00
urllib2.py Bug #1459963: properly capitalize HTTP header names. 2006-07-26 07:40:17 +00:00
urlparse.py
user.py
UserDict.py
UserList.py
UserString.py Cleanup: Remove import of types to get StringTypes, we can just use basestring. 2006-06-12 02:07:24 +00:00
uu.py
uuid.py Make uuid test suite pass on this box by requesting output with LC_ALL=C. 2006-07-27 16:08:15 +00:00
warnings.py Ignore ImportWarning by default 2006-07-06 13:35:27 +00:00
wave.py
weakref.py SF #1479988: add methods to allow access to weakrefs for the 2006-05-02 06:53:59 +00:00
webbrowser.py Make use of new str.startswith/endswith semantics. 2006-06-09 20:43:48 +00:00
whichdb.py
wsgiref.egg-info Sync w/external release 0.1.2. Please see PEP 360 before making changes to external packages. 2006-06-12 04:04:32 +00:00
xdrlib.py
xml.py
xmllib.py
xmlrpclib.py
zipfile.py Whitespace normalization. 2006-06-15 18:06:29 +00:00