From python-dev@python.org Tue Aug 1 00:42:26 2000 From: python-dev@python.org (Fred L. Drake) Date: Mon, 31 Jul 2000 16:42:26 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libstdtypes.tex,1.25,1.26 Message-ID: <200007312342.QAA24864@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv24857/Doc/lib Modified Files: libstdtypes.tex Log Message: Stop lying about [].pop() being experimental! There is no backing it out at this point. Index: libstdtypes.tex =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/lib/libstdtypes.tex,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -r1.25 -r1.26 *** libstdtypes.tex 2000/07/31 20:52:21 1.25 --- libstdtypes.tex 2000/07/31 23:42:23 1.26 *************** *** 507,514 **** \var{s}. ! \item[(4)] The \method{pop()} method is experimental and at the moment ! only supported by the list and array types. The optional argument ! \var{i} defaults to \code{-1}, so that by default the last item is ! removed and returned. \item[(5)] The \method{sort()} and \method{reverse()} methods modify the --- 507,513 ---- \var{s}. ! \item[(4)] The \method{pop()} method only supported by the list and ! array types. The optional argument \var{i} defaults to \code{-1}, ! so that by default the last item is removed and returned. \item[(5)] The \method{sort()} and \method{reverse()} methods modify the From python-dev@python.org Tue Aug 1 00:54:09 2000 From: python-dev@python.org (Fred L. Drake) Date: Mon, 31 Jul 2000 16:54:09 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/xml/parsers - New directory Message-ID: <200007312354.QAA25943@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/xml/parsers In directory slayer.i.sourceforge.net:/tmp/cvs-serv25935/parsers Log Message: Directory /cvsroot/python/python/dist/src/Lib/xml/parsers added to the repository From python-dev@python.org Tue Aug 1 00:59:56 2000 From: python-dev@python.org (Fred L. Drake) Date: Mon, 31 Jul 2000 16:59:56 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/xml/parser __init__.py,1.2,NONE Message-ID: <200007312359.QAA26404@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/xml/parser In directory slayer.i.sourceforge.net:/tmp/cvs-serv26394/parser Removed Files: __init__.py Log Message: Rename the "parser" package to "parsers" to be compatible with the PyXML project. From python-dev@python.org Tue Aug 1 00:59:56 2000 From: python-dev@python.org (Fred L. Drake) Date: Mon, 31 Jul 2000 16:59:56 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/xml/parsers __init__.py,NONE,1.1 Message-ID: <200007312359.QAA26407@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/xml/parsers In directory slayer.i.sourceforge.net:/tmp/cvs-serv26394/parsers Added Files: __init__.py Log Message: Rename the "parser" package to "parsers" to be compatible with the PyXML project. --- NEW FILE --- """Python interfaces to XML parsers. This package contains one module: expat -- Python wrapper for James Clark's Expat parser, with namespace support. """ From python-dev@python.org Tue Aug 1 01:05:18 2000 From: python-dev@python.org (Fred L. Drake) Date: Mon, 31 Jul 2000 17:05:18 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/xml __init__.py,1.3,1.4 Message-ID: <200008010005.RAA27941@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/xml In directory slayer.i.sourceforge.net:/tmp/cvs-serv27883 Modified Files: __init__.py Log Message: Add magic to replace the xml package with _xmlplus at import time. Update docstring to reflect change of name for the parsers subpackage. Index: __init__.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/xml/__init__.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** __init__.py 2000/07/02 13:52:21 1.3 --- __init__.py 2000/08/01 00:05:16 1.4 *************** *** 6,10 **** Namespaces. ! parser -- Python wrappers for XML parsers (currently only supports Expat). sax -- The Simple API for XML, developed by XML-Dev, led by David --- 6,10 ---- Namespaces. ! parsers -- Python wrappers for XML parsers (currently only supports Expat). sax -- The Simple API for XML, developed by XML-Dev, led by David *************** *** 12,13 **** --- 12,23 ---- supports the SAX 2 API. """ + + + if __name__ == "xml": + try: + import _xmlplus + except ImportError: + pass + else: + import sys + sys.modules[__name__] = _xmlplus From python-dev@python.org Tue Aug 1 01:07:21 2000 From: python-dev@python.org (Peter Schneider-Kamp) Date: Mon, 31 Jul 2000 17:07:21 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libstdtypes.tex,1.26,1.27 Message-ID: <200008010007.RAA28516@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv28392 Modified Files: libstdtypes.tex Log Message: fixing a minor spelling mistake Index: libstdtypes.tex =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/lib/libstdtypes.tex,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -r1.26 -r1.27 *** libstdtypes.tex 2000/07/31 23:42:23 1.26 --- libstdtypes.tex 2000/08/01 00:07:17 1.27 *************** *** 507,511 **** \var{s}. ! \item[(4)] The \method{pop()} method only supported by the list and array types. The optional argument \var{i} defaults to \code{-1}, so that by default the last item is removed and returned. --- 507,511 ---- \var{s}. ! \item[(4)] The \method{pop()} method is only supported by the list and array types. The optional argument \var{i} defaults to \code{-1}, so that by default the last item is removed and returned. From python-dev@python.org Tue Aug 1 02:21:15 2000 From: python-dev@python.org (A.M. Kuchling) Date: Mon, 31 Jul 2000 18:21:15 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/curses has_key.py,NONE,1.1 __init__.py,1.2,1.3 Message-ID: <200008010121.SAA14986@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/curses In directory slayer.i.sourceforge.net:/tmp/cvs-serv14935 Modified Files: __init__.py Added Files: has_key.py Log Message: Added Python function to emulate the ncurses has_key() function. --- NEW FILE --- # # Emulation of has_key() function for platforms that don't use ncurses # import _curses # Table mapping curses keys to the terminfo capability name _capability_names = { _curses.KEY_A1: 'ka1', _curses.KEY_A3: 'ka3', _curses.KEY_B2: 'kb2', _curses.KEY_BACKSPACE: 'kbs', _curses.KEY_BEG: 'kbeg', _curses.KEY_BTAB: 'kcbt', _curses.KEY_C1: 'kc1', _curses.KEY_C3: 'kc3', _curses.KEY_CANCEL: 'kcan', _curses.KEY_CATAB: 'ktbc', _curses.KEY_CLEAR: 'kclr', _curses.KEY_CLOSE: 'kclo', _curses.KEY_COMMAND: 'kcmd', _curses.KEY_COPY: 'kcpy', _curses.KEY_CREATE: 'kcrt', _curses.KEY_CTAB: 'kctab', _curses.KEY_DC: 'kdch1', _curses.KEY_DL: 'kdl1', _curses.KEY_DOWN: 'kcud1', _curses.KEY_EIC: 'krmir', _curses.KEY_END: 'kend', _curses.KEY_ENTER: 'kent', _curses.KEY_EOL: 'kel', _curses.KEY_EOS: 'ked', _curses.KEY_EXIT: 'kext', _curses.KEY_F0: 'kf0', _curses.KEY_F1: 'kf1', _curses.KEY_F10: 'kf10', _curses.KEY_F11: 'kf11', _curses.KEY_F12: 'kf12', _curses.KEY_F13: 'kf13', _curses.KEY_F14: 'kf14', _curses.KEY_F15: 'kf15', _curses.KEY_F16: 'kf16', _curses.KEY_F17: 'kf17', _curses.KEY_F18: 'kf18', _curses.KEY_F19: 'kf19', _curses.KEY_F2: 'kf2', _curses.KEY_F20: 'kf20', _curses.KEY_F21: 'kf21', _curses.KEY_F22: 'kf22', _curses.KEY_F23: 'kf23', _curses.KEY_F24: 'kf24', _curses.KEY_F25: 'kf25', _curses.KEY_F26: 'kf26', _curses.KEY_F27: 'kf27', _curses.KEY_F28: 'kf28', _curses.KEY_F29: 'kf29', _curses.KEY_F3: 'kf3', _curses.KEY_F30: 'kf30', _curses.KEY_F31: 'kf31', _curses.KEY_F32: 'kf32', _curses.KEY_F33: 'kf33', _curses.KEY_F34: 'kf34', _curses.KEY_F35: 'kf35', _curses.KEY_F36: 'kf36', _curses.KEY_F37: 'kf37', _curses.KEY_F38: 'kf38', _curses.KEY_F39: 'kf39', _curses.KEY_F4: 'kf4', _curses.KEY_F40: 'kf40', _curses.KEY_F41: 'kf41', _curses.KEY_F42: 'kf42', _curses.KEY_F43: 'kf43', _curses.KEY_F44: 'kf44', _curses.KEY_F45: 'kf45', _curses.KEY_F46: 'kf46', _curses.KEY_F47: 'kf47', _curses.KEY_F48: 'kf48', _curses.KEY_F49: 'kf49', _curses.KEY_F5: 'kf5', _curses.KEY_F50: 'kf50', _curses.KEY_F51: 'kf51', _curses.KEY_F52: 'kf52', _curses.KEY_F53: 'kf53', _curses.KEY_F54: 'kf54', _curses.KEY_F55: 'kf55', _curses.KEY_F56: 'kf56', _curses.KEY_F57: 'kf57', _curses.KEY_F58: 'kf58', _curses.KEY_F59: 'kf59', _curses.KEY_F6: 'kf6', _curses.KEY_F60: 'kf60', _curses.KEY_F61: 'kf61', _curses.KEY_F62: 'kf62', _curses.KEY_F63: 'kf63', _curses.KEY_F7: 'kf7', _curses.KEY_F8: 'kf8', _curses.KEY_F9: 'kf9', _curses.KEY_FIND: 'kfnd', _curses.KEY_HELP: 'khlp', _curses.KEY_HOME: 'khome', _curses.KEY_IC: 'kich1', _curses.KEY_IL: 'kil1', _curses.KEY_LEFT: 'kcub1', _curses.KEY_LL: 'kll', _curses.KEY_MARK: 'kmrk', _curses.KEY_MESSAGE: 'kmsg', _curses.KEY_MOVE: 'kmov', _curses.KEY_NEXT: 'knxt', _curses.KEY_NPAGE: 'knp', _curses.KEY_OPEN: 'kopn', _curses.KEY_OPTIONS: 'kopt', _curses.KEY_PPAGE: 'kpp', _curses.KEY_PREVIOUS: 'kprv', _curses.KEY_PRINT: 'kprt', _curses.KEY_REDO: 'krdo', _curses.KEY_REFERENCE: 'kref', _curses.KEY_REFRESH: 'krfr', _curses.KEY_REPLACE: 'krpl', _curses.KEY_RESTART: 'krst', _curses.KEY_RESUME: 'kres', _curses.KEY_RIGHT: 'kcuf1', _curses.KEY_SAVE: 'ksav', _curses.KEY_SBEG: 'kBEG', _curses.KEY_SCANCEL: 'kCAN', _curses.KEY_SCOMMAND: 'kCMD', _curses.KEY_SCOPY: 'kCPY', _curses.KEY_SCREATE: 'kCRT', _curses.KEY_SDC: 'kDC', _curses.KEY_SDL: 'kDL', _curses.KEY_SELECT: 'kslt', _curses.KEY_SEND: 'kEND', _curses.KEY_SEOL: 'kEOL', _curses.KEY_SEXIT: 'kEXT', _curses.KEY_SF: 'kind', _curses.KEY_SFIND: 'kFND', _curses.KEY_SHELP: 'kHLP', _curses.KEY_SHOME: 'kHOM', _curses.KEY_SIC: 'kIC', _curses.KEY_SLEFT: 'kLFT', _curses.KEY_SMESSAGE: 'kMSG', _curses.KEY_SMOVE: 'kMOV', _curses.KEY_SNEXT: 'kNXT', _curses.KEY_SOPTIONS: 'kOPT', _curses.KEY_SPREVIOUS: 'kPRV', _curses.KEY_SPRINT: 'kPRT', _curses.KEY_SR: 'kri', _curses.KEY_SREDO: 'kRDO', _curses.KEY_SREPLACE: 'kRPL', _curses.KEY_SRIGHT: 'kRIT', _curses.KEY_SRSUME: 'kRES', _curses.KEY_SSAVE: 'kSAV', _curses.KEY_SSUSPEND: 'kSPD', _curses.KEY_STAB: 'khts', _curses.KEY_SUNDO: 'kUND', _curses.KEY_SUSPEND: 'kspd', _curses.KEY_UNDO: 'kund', _curses.KEY_UP: 'kcuu1' } def has_key(ch): if type(ch) == type( '' ): ch = ord(ch) # Figure out the correct capability name for the keycode. capability_name = _capability_names[ch] #Check the current terminal description for that capability; #if present, return true, else return false. if _curses.tigetstr( capability_name ): return 1 else: return 0 if __name__ == '__main__': # Compare the output of this implementation and the ncurses has_key, # on platforms where has_key is already available import _curses try: L = [] _curses.initscr() for key in _capability_names.keys(): system = _curses.has_key(key) python = has_key(key) if system != python: L.append( 'Mismatch for key %s, system=%i, Python=%i' % (_curses.keyname( key ), system, python) ) finally: _curses.endwin() for i in L: print i Index: __init__.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/curses/__init__.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** __init__.py 2000/06/26 23:54:03 1.2 --- __init__.py 2000/08/01 01:21:11 1.3 *************** *** 33,34 **** --- 33,41 ---- return stdscr + # Import Python has_key() implementation if _curses doesn't contain has_key() + + try: + has_key + except NameError: + from has_key import has_key + From python-dev@python.org Tue Aug 1 02:26:04 2000 From: python-dev@python.org (A.M. Kuchling) Date: Mon, 31 Jul 2000 18:26:04 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules shamodule.c,2.8,2.9 Message-ID: <200008010126.SAA15273@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv15247 Modified Files: shamodule.c Log Message: Update e-mail address Index: shamodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/shamodule.c,v retrieving revision 2.8 retrieving revision 2.9 diff -C2 -r2.8 -r2.9 *** shamodule.c 2000/07/21 06:00:07 2.8 --- shamodule.c 2000/08/01 01:26:02 2.9 *************** *** 22,26 **** based upon. Additional work performed by: ! Andrew Kuchling (amk1@erols.com) Greg Stein (gstein@lyra.org) */ --- 22,26 ---- based upon. Additional work performed by: ! Andrew Kuchling (amk1@bigfoot.com) Greg Stein (gstein@lyra.org) */ From python-dev@python.org Tue Aug 1 14:01:46 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 06:01:46 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_sre.py,1.3,1.4 Message-ID: <200008011301.GAA10270@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv10022/Lib/test Modified Files: test_sre.py Log Message: -- SRE 0.9.8: updated test scripts Index: test_sre.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/test_sre.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** test_sre.py 2000/07/03 18:44:21 1.3 --- test_sre.py 2000/08/01 13:01:34 1.4 *************** *** 153,159 **** assert sre.split("(:)*", ":a:b::c") == ['', ':', 'a', ':', 'b', ':', 'c'] assert sre.split("([b:]+)", ":a:b::c") == ['', ':', 'a', ':b::', 'c'] ! # FIXME: group problem ! # assert sre.split("(b)|(:+)", ":a:b::c") == \ ! # ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c'] assert sre.split("(?:b)|(?::+)", ":a:b::c") == ['', 'a', '', '', 'c'] except AssertionError: --- 153,160 ---- assert sre.split("(:)*", ":a:b::c") == ['', ':', 'a', ':', 'b', ':', 'c'] assert sre.split("([b:]+)", ":a:b::c") == ['', ':', 'a', ':b::', 'c'] ! ## print sre.split("(b)|(:+)", ":a:b::c") ! ## print ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c'] ! ## assert sre.split("(b)|(:+)", ":a:b::c") == \ ! ## ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c'] assert sre.split("(?:b)|(?::+)", ":a:b::c") == ['', 'a', '', '', 'c'] except AssertionError: *************** *** 378,383 **** print '=== Fails on locale-sensitive match', t ! # Try the match with UNICODE enabled, and check that it ! # still succeeds. obj=sre.compile(pattern, sre.UNICODE) result=obj.search(s) --- 379,384 ---- print '=== Fails on locale-sensitive match', t ! # Try the match with UNICODE locale enabled, and check ! # that it still succeeds. obj=sre.compile(pattern, sre.UNICODE) result=obj.search(s) From python-dev@python.org Tue Aug 1 14:01:46 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 06:01:46 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test/output test_sre,1.7,1.8 test_re,1.11,1.12 Message-ID: <200008011301.GAA10275@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test/output In directory slayer.i.sourceforge.net:/tmp/cvs-serv10022/Lib/test/output Modified Files: test_sre test_re Log Message: -- SRE 0.9.8: updated test scripts Index: test_sre =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/output/test_sre,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -r1.7 -r1.8 *** test_sre 2000/07/23 21:46:17 1.7 --- test_sre 2000/08/01 13:01:43 1.8 *************** *** 1,6 **** test_sre - === Failed incorrectly ('^(.+)?B', 'AB', 0, 'g1', 'A') - === Failed incorrectly ('(a+)+\\1', 'aa', 0, 'found+"-"+g1', 'aa-a') - === grouping error ('(a)(b)c|ab', 'ab', 0, 'found+"-"+g1+"-"+g2', 'ab-None-None') 'ab-None-b' should be 'ab-None-None' - === grouping error ('(a)+b|aac', 'aac', 0, 'found+"-"+g1', 'aac-None') 'aac-a' should be 'aac-None' - === Failed incorrectly ('^(.+)?B', 'AB', 0, 'g1', 'A') --- 1 ---- Index: test_re =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/output/test_re,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -r1.11 -r1.12 *** test_re 2000/07/24 22:35:11 1.11 --- test_re 2000/08/01 13:01:43 1.12 *************** *** 1,12 **** test_re - === Failed incorrectly ('^(.+)?B', 'AB', 0, 'g1', 'A') - === Fails on case-insensitive match ('^(.+)?B', 'AB', 0, 'g1', 'A') - === Fails on locale-sensitive match ('^(.+)?B', 'AB', 0, 'g1', 'A') - === Failed incorrectly ('(a+)+\\1', 'aa', 0, 'found+"-"+g1', 'aa-a') - === Fails on case-insensitive match ('(a+)+\\1', 'aa', 0, 'found+"-"+g1', 'aa-a') - === Fails on locale-sensitive match ('(a+)+\\1', 'aa', 0, 'found+"-"+g1', 'aa-a') - === grouping error ('(a)(b)c|ab', 'ab', 0, 'found+"-"+g1+"-"+g2', 'ab-None-None') 'ab-None-b' should be 'ab-None-None' - === grouping error ('(a)+b|aac', 'aac', 0, 'found+"-"+g1', 'aac-None') 'aac-a' should be 'aac-None' - === Failed incorrectly ('^(.+)?B', 'AB', 0, 'g1', 'A') - === Fails on case-insensitive match ('^(.+)?B', 'AB', 0, 'g1', 'A') - === Fails on locale-sensitive match ('^(.+)?B', 'AB', 0, 'g1', 'A') --- 1 ---- From python-dev@python.org Tue Aug 1 14:16:58 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 06:16:58 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_sre.py,1.4,1.5 Message-ID: <200008011316.GAA15551@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv14481/Lib/test Modified Files: test_sre.py Log Message: -- SRE 0.9.8: now that the bug is fixed, I might as well enable the test again... Index: test_sre.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/test_sre.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** test_sre.py 2000/08/01 13:01:34 1.4 --- test_sre.py 2000/08/01 13:16:55 1.5 *************** *** 153,160 **** assert sre.split("(:)*", ":a:b::c") == ['', ':', 'a', ':', 'b', ':', 'c'] assert sre.split("([b:]+)", ":a:b::c") == ['', ':', 'a', ':b::', 'c'] ! ## print sre.split("(b)|(:+)", ":a:b::c") ! ## print ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c'] ! ## assert sre.split("(b)|(:+)", ":a:b::c") == \ ! ## ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c'] assert sre.split("(?:b)|(?::+)", ":a:b::c") == ['', 'a', '', '', 'c'] except AssertionError: --- 153,158 ---- assert sre.split("(:)*", ":a:b::c") == ['', ':', 'a', ':', 'b', ':', 'c'] assert sre.split("([b:]+)", ":a:b::c") == ['', ':', 'a', ':b::', 'c'] ! assert sre.split("(b)|(:+)", ":a:b::c") == \ ! ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c'] assert sre.split("(?:b)|(?::+)", ":a:b::c") == ['', 'a', '', '', 'c'] except AssertionError: From python-dev@python.org Tue Aug 1 16:50:12 2000 From: python-dev@python.org (Guido van Rossum) Date: Tue, 1 Aug 2000 08:50:12 -0700 Subject: [Python-checkins] CVS: python/dist/src/PCbuild python20.wse,1.5,1.6 Message-ID: <200008011550.IAA15659@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/PCbuild In directory slayer.i.sourceforge.net:/tmp/cvs-serv15642 Modified Files: python20.wse Log Message: somehow the 'Total Keys=1' disappears. No other changes. Index: python20.wse =================================================================== RCS file: /cvsroot/python/python/dist/src/PCbuild/python20.wse,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** python20.wse 2000/06/30 14:55:26 1.5 --- python20.wse 2000/08/01 15:50:09 1.6 *************** *** 1,1249 **** ! Document Type: WSE ! item: Global ! Version=5.0 ! Title=Python 2.0 beta 1 ! Flags=00010100 ! Languages=65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ! Japanese Font Name=MS Gothic ! Japanese Font Size=10 ! Start Gradient=0 0 255 ! End Gradient=0 0 0 [...2446 lines suppressed...] ! Text=%APPTITLE% has been successfully installed. ! Text= ! Text=Press the Finish button to exit this installation. ! Text French=%APPTITLE% est maintenant installé. ! Text French= ! Text French=Cliquez sur le bouton Fin pour quitter l'installation. ! Text German=%APPTITLE% wurde erfolgreich installiert. ! Text German= ! Text German=Klicken Sie auf "Weiter", um die Installation zu beenden. ! Text Spanish=%APPTITLE% se ha instalado con éxito. ! Text Spanish= ! Text Spanish=Presione el botón Terminar para salir de esta instalación. ! Text Italian=L'installazione %APPTITLE% è stata portata a termine con successo. ! Text Italian= ! Text Italian=Premere il pulsante Fine per uscire dall'installazione. ! end ! end ! end ! item: End Block ! end From python-dev@python.org Tue Aug 1 17:37:05 2000 From: python-dev@python.org (Fred L. Drake) Date: Tue, 1 Aug 2000 09:37:05 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc Makefile,1.195,1.195.2.1 Message-ID: <200008011637.JAA26634@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc In directory slayer.i.sourceforge.net:/tmp/cvs-serv26624 Modified Files: Tag: cnri-16-start Makefile Log Message: Update the release number for the 1.6 branch only. Index: Makefile =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/Makefile,v retrieving revision 1.195 retrieving revision 1.195.2.1 diff -C2 -r1.195 -r1.195.2.1 *** Makefile 2000/04/28 17:09:17 1.195 --- Makefile 2000/08/01 16:37:02 1.195.2.1 *************** *** 62,66 **** # This is the *documentation* release, and is used to construct the file # names of the downloadable tarballs. ! RELEASE=1.6a2 --- 62,66 ---- # This is the *documentation* release, and is used to construct the file # names of the downloadable tarballs. ! RELEASE=1.6b1 From python-dev@python.org Tue Aug 1 17:42:35 2000 From: python-dev@python.org (Fred L. Drake) Date: Tue, 1 Aug 2000 09:42:35 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include patchlevel.h,2.35,2.35.2.1 Message-ID: <200008011642.JAA27103@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv27093 Modified Files: Tag: cnri-16-start patchlevel.h Log Message: Update the release number for the 1.6 branch only. Index: patchlevel.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/patchlevel.h,v retrieving revision 2.35 retrieving revision 2.35.2.1 diff -C2 -r2.35 -r2.35.2.1 *** patchlevel.h 2000/04/06 15:01:30 2.35 --- patchlevel.h 2000/08/01 16:42:32 2.35.2.1 *************** *** 53,64 **** #define PY_MINOR_VERSION 6 #define PY_MICRO_VERSION 0 ! #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_ALPHA ! #define PY_RELEASE_SERIAL 2 /* Version as a string */ ! #define PY_VERSION "1.6a2" /* Historic */ ! #define PATCHLEVEL "1.6a2" /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. --- 53,64 ---- #define PY_MINOR_VERSION 6 #define PY_MICRO_VERSION 0 ! #define PY_RELEASE_LEVEL PY_RELEASE_LEVEL_BETA ! #define PY_RELEASE_SERIAL 1 /* Version as a string */ ! #define PY_VERSION "1.6b1" /* Historic */ ! #define PATCHLEVEL "1.6b1" /* Version as a single 4-byte hex number, e.g. 0x010502B2 == 1.5.2b2. From python-dev@python.org Tue Aug 1 17:53:47 2000 From: python-dev@python.org (Peter Schneider-Kamp) Date: Tue, 1 Aug 2000 09:53:47 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include pyport.h,2.9,2.10 Message-ID: <200008011653.JAA28273@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv28218 Modified Files: pyport.h Log Message: Guido said this is food for the beta-testers Index: pyport.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pyport.h,v retrieving revision 2.9 retrieving revision 2.10 diff -C2 -r2.9 -r2.10 *** pyport.h 2000/07/31 22:19:30 2.9 --- pyport.h 2000/08/01 16:53:44 2.10 *************** *** 282,285 **** --- 282,287 ---- here is a set that should do the job */ + #ifdef 0 /* disabled and probably obsolete */ + #ifndef FD_SETSIZE #define FD_SETSIZE 256 *************** *** 305,308 **** --- 307,313 ---- #endif /* FD_SET */ + + #endif /* fd manipulation macros */ + #ifdef __cplusplus } From python-dev@python.org Tue Aug 1 18:33:35 2000 From: python-dev@python.org (Jeremy Hylton) Date: Tue, 1 Aug 2000 10:33:35 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib httplib.py,1.18,1.19 Message-ID: <200008011733.KAA06829@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv6655 Modified Files: httplib.py Log Message: add support for HTTPS Modify HTTP to use delegation instead of inheritance. The _connection_class attribute of the class defines what class to delegate to. The HTTPS class is a subclass of HTTP that redefines _connection_class. Index: httplib.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/httplib.py,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -r1.18 -r1.19 *** httplib.py 2000/07/18 09:09:47 1.18 --- httplib.py 2000/08/01 17:33:32 1.19 *************** *** 1,7 **** - # - # HTTP/1.1 client library - # - - # ### this may as well go into a doc string... """HTTP/1.1 client library --- 1,2 ---- *************** *** 72,76 **** """ - import socket import string --- 67,70 ---- *************** *** 600,604 **** ! class HTTP(HTTPConnection): "Compatibility class with httplib.py from 1.5." --- 594,598 ---- ! class HTTP: "Compatibility class with httplib.py from 1.5." *************** *** 608,611 **** --- 602,607 ---- debuglevel = 0 + _connection_class = HTTPConnection + def __init__(self, host='', port=None, **x509): "Provide a default host, since the superclass requires one." *************** *** 618,622 **** # an error when we attempt to connect. Presumably, the client code # will call connect before then, with a proper host. ! HTTPConnection.__init__(self, host, port) # we never actually use these for anything, but we keep them here for --- 614,622 ---- # an error when we attempt to connect. Presumably, the client code # will call connect before then, with a proper host. ! self._conn = self._connection_class(host, port) ! # set up delegation to flesh out interface ! self.send = self._conn.send ! self.putrequest = self._conn.putrequest ! self.endheaders = self._conn.endheaders # we never actually use these for anything, but we keep them here for *************** *** 631,636 **** if host is not None: ! self._set_hostport(host, port) ! HTTPConnection.connect(self) def set_debuglevel(self, debuglevel): --- 631,636 ---- if host is not None: ! self._conn._set_hostport(host, port) ! self._conn.connect() def set_debuglevel(self, debuglevel): *************** *** 644,649 **** def putheader(self, header, *values): "The superclass allows only one value argument." ! HTTPConnection.putheader(self, header, ! string.joinfields(values, '\r\n\t')) def getreply(self): --- 644,649 ---- def putheader(self, header, *values): "The superclass allows only one value argument." ! self._conn.putheader(header, ! string.joinfields(values, '\r\n\t')) def getreply(self): *************** *** 656,660 **** """ try: ! response = self.getresponse() except BadStatusLine, e: ### hmm. if getresponse() ever closes the socket on a bad request, --- 656,660 ---- """ try: ! response = self._conn.getresponse() except BadStatusLine, e: ### hmm. if getresponse() ever closes the socket on a bad request, *************** *** 663,667 **** ### should we keep this behavior? do people use it? # keep the socket open (as a file), and return it ! self.file = self.sock.makefile('rb', 0) # close our socket -- we want to restart after any protocol error --- 663,667 ---- ### should we keep this behavior? do people use it? # keep the socket open (as a file), and return it ! self.file = self._conn.sock.makefile('rb', 0) # close our socket -- we want to restart after any protocol error *************** *** 676,680 **** def close(self): ! HTTPConnection.close(self) # note that self.file == response.fp, which gets closed by the --- 676,680 ---- def close(self): ! self._conn.close() # note that self.file == response.fp, which gets closed by the *************** *** 685,688 **** --- 685,699 ---- self.file = None + if hasattr(socket, 'ssl'): + class HTTPS(HTTP): + """Compatibility with 1.5 httplib interface + + Python 1.5.2 did not have an HTTPS class, but it defined an + interface for sending http requests that is also useful for + https. + """ + + _connection_class = HTTPSConnection + class HTTPException(Exception): *************** *** 765,769 **** if hasattr(socket, 'ssl'): ! host = 'www.c2.net' hs = HTTPS() hs.connect(host) --- 776,780 ---- if hasattr(socket, 'ssl'): ! host = 'sourceforge.net' hs = HTTPS() hs.connect(host) From python-dev@python.org Tue Aug 1 18:46:25 2000 From: python-dev@python.org (Fred L. Drake) Date: Tue, 1 Aug 2000 10:46:25 -0700 Subject: [Python-checkins] CVS: python/dist/src/Python Makefile.in,2.24,2.25 Message-ID: <200008011746.KAA08023@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Python In directory slayer.i.sourceforge.net:/tmp/cvs-serv8008/Python Modified Files: Makefile.in Log Message: Include the dependence of sysmodule on the patchlevel.h include, so that sys.version_info will be built properly. Index: Makefile.in =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/Makefile.in,v retrieving revision 2.24 retrieving revision 2.25 diff -C2 -r2.24 -r2.25 *** Makefile.in 2000/05/26 19:04:27 2.24 --- Makefile.in 2000/08/01 17:46:22 2.25 *************** *** 132,136 **** strtod.o: strtod.c structmember.o: structmember.c ! sysmodule.o: sysmodule.c thread.o: thread.c traceback.o: traceback.c --- 132,136 ---- strtod.o: strtod.c structmember.o: structmember.c ! sysmodule.o: sysmodule.c ../Include/patchlevel.h thread.o: thread.c traceback.o: traceback.c From python-dev@python.org Tue Aug 1 19:20:10 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 11:20:10 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.28,2.29 sre.h,2.15,2.16 sre_constants.h,2.7,2.8 Message-ID: <200008011820.LAA14089@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv13106/Modules Modified Files: _sre.c sre.h sre_constants.h Log Message: SRE 0.9.8: passes the entire test suite -- reverted REPEAT operator to use "repeat context" strategy (from 0.8.X), but done right this time. -- got rid of backtracking stack; use nested SRE_MATCH calls instead (should probably put it back again in 0.9.9 ;-) -- properly reset state in scanner mode -- don't use aggressive inlining by default Index: _sre.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v retrieving revision 2.28 retrieving revision 2.29 diff -C2 -r2.28 -r2.29 *** _sre.c 2000/07/23 21:46:17 2.28 --- _sre.c 2000/08/01 18:20:07 2.29 *************** *** 6,22 **** * partial history: * 99-10-24 fl created (based on existing template matcher code) - * 99-11-13 fl added categories, branching, and more (0.2) - * 99-11-16 fl some tweaks to compile on non-Windows platforms - * 99-12-18 fl non-literals, generic maximizing repeat (0.3) - * 00-02-28 fl tons of changes (not all to the better ;-) (0.4) * 00-03-06 fl first alpha, sort of (0.5) - * 00-03-14 fl removed most compatibility stuff (0.6) - * 00-05-10 fl towards third alpha (0.8.2) - * 00-05-13 fl added experimental scanner stuff (0.8.3) [...1355 lines suppressed...] int status; ! state_reset(state); ! state->ptr = state->start; *************** *** 2122,2126 **** int status; ! state->lastindex = -1; state->ptr = state->start; --- 1968,1973 ---- int status; ! state_reset(state); ! state->ptr = state->start; Index: sre.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/sre.h,v retrieving revision 2.15 retrieving revision 2.16 diff -C2 -r2.15 -r2.16 *** sre.h 2000/07/23 21:46:17 2.15 --- sre.h 2000/08/01 18:20:07 2.16 *************** *** 1,4 **** /* - * * Secret Labs' Regular Expression Engine * --- 1,3 ---- *************** *** 45,60 **** typedef unsigned int (*SRE_TOLOWER_HOOK)(unsigned int ch); - typedef struct { - /* stack elements */ - SRE_CODE* pattern; - void* ptr; - int mark; - void* mark0; - void* mark1; - } SRE_STACK; - /* FIXME: shouldn't be a constant, really... */ #define SRE_MARK_SIZE 200 typedef struct { /* string pointers */ --- 44,56 ---- typedef unsigned int (*SRE_TOLOWER_HOOK)(unsigned int ch); /* FIXME: shouldn't be a constant, really... */ #define SRE_MARK_SIZE 200 + typedef struct SRE_REPEAT_T { + int count; + SRE_CODE* pattern; /* points to REPEAT operator arguments */ + struct SRE_REPEAT_T *prev; /* points to previous repeat context */ + } SRE_REPEAT; + typedef struct { /* string pointers */ *************** *** 72,79 **** int lastmark; void* mark[SRE_MARK_SIZE]; ! /* backtracking stack */ ! SRE_STACK* stack; ! int stacksize; ! int stackbase; /* hooks */ SRE_TOLOWER_HOOK lower; --- 68,76 ---- int lastmark; void* mark[SRE_MARK_SIZE]; ! /* dynamically allocated stuff */ ! void** mark_stack; ! int mark_stack_size; ! int mark_stack_base; ! SRE_REPEAT *repeat; /* current repeat context */ /* hooks */ SRE_TOLOWER_HOOK lower; *************** *** 81,85 **** typedef struct { - /* scanner (internal helper object) */ PyObject_HEAD PyObject* pattern; --- 78,81 ---- Index: sre_constants.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/sre_constants.h,v retrieving revision 2.7 retrieving revision 2.8 diff -C2 -r2.7 -r2.8 *** sre_constants.h 2000/07/02 17:33:27 2.7 --- sre_constants.h 2000/08/01 18:20:07 2.8 *************** *** 22,43 **** #define SRE_OP_CATEGORY 8 #define SRE_OP_CHARSET 9 ! #define SRE_OP_GROUP 10 ! #define SRE_OP_GROUP_IGNORE 11 ! #define SRE_OP_INDEX 12 ! #define SRE_OP_IN 13 ! #define SRE_OP_IN_IGNORE 14 ! #define SRE_OP_INFO 15 ! #define SRE_OP_JUMP 16 ! #define SRE_OP_LITERAL 17 ! #define SRE_OP_LITERAL_IGNORE 18 ! #define SRE_OP_MARK 19 ! #define SRE_OP_MAX_REPEAT 20 ! #define SRE_OP_MAX_REPEAT_ONE 21 ! #define SRE_OP_MIN_REPEAT 22 ! #define SRE_OP_NOT_LITERAL 23 ! #define SRE_OP_NOT_LITERAL_IGNORE 24 ! #define SRE_OP_NEGATE 25 ! #define SRE_OP_RANGE 26 ! #define SRE_OP_REPEAT 27 #define SRE_AT_BEGINNING 0 #define SRE_AT_BEGINNING_LINE 1 --- 22,43 ---- #define SRE_OP_CATEGORY 8 #define SRE_OP_CHARSET 9 ! #define SRE_OP_GROUPREF 10 ! #define SRE_OP_GROUPREF_IGNORE 11 ! #define SRE_OP_IN 12 ! #define SRE_OP_IN_IGNORE 13 ! #define SRE_OP_INFO 14 ! #define SRE_OP_JUMP 15 ! #define SRE_OP_LITERAL 16 ! #define SRE_OP_LITERAL_IGNORE 17 ! #define SRE_OP_MARK 18 ! #define SRE_OP_MAX_UNTIL 19 ! #define SRE_OP_MIN_UNTIL 20 ! #define SRE_OP_NOT_LITERAL 21 ! #define SRE_OP_NOT_LITERAL_IGNORE 22 ! #define SRE_OP_NEGATE 23 ! #define SRE_OP_RANGE 24 ! #define SRE_OP_REPEAT 25 ! #define SRE_OP_REPEAT_ONE 26 ! #define SRE_OP_SUBPATTERN 27 #define SRE_AT_BEGINNING 0 #define SRE_AT_BEGINNING_LINE 1 From python-dev@python.org Tue Aug 1 19:20:10 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 11:20:10 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib sre.py,1.21,1.22 sre_compile.py,1.26,1.27 sre_constants.py,1.18,1.19 sre_parse.py,1.26,1.27 Message-ID: <200008011820.LAA14083@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv13106/Lib Modified Files: sre.py sre_compile.py sre_constants.py sre_parse.py Log Message: SRE 0.9.8: passes the entire test suite -- reverted REPEAT operator to use "repeat context" strategy (from 0.8.X), but done right this time. -- got rid of backtracking stack; use nested SRE_MATCH calls instead (should probably put it back again in 0.9.9 ;-) -- properly reset state in scanner mode -- don't use aggressive inlining by default Index: sre.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre.py,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** sre.py 2000/07/23 21:46:17 1.21 --- sre.py 2000/08/01 18:20:06 1.22 *************** *** 6,11 **** # Copyright (c) 1998-2000 by Secret Labs AB. All rights reserved. # # Portions of this engine have been developed in cooperation with ! # CNRI. Hewlett-Packard provided funding for 2.0 integration and # other compatibility work. # --- 6,15 ---- # Copyright (c) 1998-2000 by Secret Labs AB. All rights reserved. # + # This version of the SRE library can be redistributed under CNRI's + # Python 1.6 license. For any other use, please contact Secret Labs + # AB (info@pythonware.com). + # # Portions of this engine have been developed in cooperation with ! # CNRI. Hewlett-Packard provided funding for 1.6 integration and # other compatibility work. # *************** *** 25,29 **** X = VERBOSE = sre_compile.SRE_FLAG_VERBOSE ! # sre extensions (may or may not be in 2.0 final) T = TEMPLATE = sre_compile.SRE_FLAG_TEMPLATE U = UNICODE = sre_compile.SRE_FLAG_UNICODE --- 29,33 ---- X = VERBOSE = sre_compile.SRE_FLAG_VERBOSE ! # sre extensions (may or may not be in 1.6/2.0 final) T = TEMPLATE = sre_compile.SRE_FLAG_TEMPLATE U = UNICODE = sre_compile.SRE_FLAG_UNICODE *************** *** 169,173 **** class Scanner: def __init__(self, lexicon): ! from sre_constants import BRANCH, SUBPATTERN, INDEX self.lexicon = lexicon # combine phrases into a compound pattern --- 173,177 ---- class Scanner: def __init__(self, lexicon): ! from sre_constants import BRANCH, SUBPATTERN self.lexicon = lexicon # combine phrases into a compound pattern *************** *** 176,181 **** for phrase, action in lexicon: p.append(sre_parse.SubPattern(s, [ ! (SUBPATTERN, (None, sre_parse.parse(phrase))), ! (INDEX, len(p)) ])) p = sre_parse.SubPattern(s, [(BRANCH, (None, p))]) --- 180,184 ---- for phrase, action in lexicon: p.append(sre_parse.SubPattern(s, [ ! (SUBPATTERN, (len(p), sre_parse.parse(phrase))), ])) p = sre_parse.SubPattern(s, [(BRANCH, (None, p))]) Index: sre_compile.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_compile.py,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -r1.26 -r1.27 *** sre_compile.py 2000/07/23 21:46:17 1.26 --- sre_compile.py 2000/08/01 18:20:06 1.27 *************** *** 6,12 **** # Copyright (c) 1997-2000 by Secret Labs AB. All rights reserved. # ! # Portions of this engine have been developed in cooperation with ! # CNRI. Hewlett-Packard provided funding for 2.0 integration and ! # other compatibility work. # --- 6,10 ---- # Copyright (c) 1997-2000 by Secret Labs AB. All rights reserved. # ! # See the sre.py file for information on usage and redistribution. # *************** *** 125,128 **** --- 123,127 ---- elif op in (REPEAT, MIN_REPEAT, MAX_REPEAT): if flags & SRE_FLAG_TEMPLATE: + raise error, "internal: unsupported template operator" emit(OPCODES[REPEAT]) skip = len(code); emit(0) *************** *** 137,143 **** raise error, "nothing to repeat" if 0 and lo == hi == 1 and op is MAX_REPEAT: ! # FIXME: need a better way to figure out when ! # it's safe to use this one (in the parser, probably) ! emit(OPCODES[MAX_REPEAT_ONE]) skip = len(code); emit(0) emit(av[0]) --- 136,141 ---- raise error, "nothing to repeat" if 0 and lo == hi == 1 and op is MAX_REPEAT: ! # FIXME: fast and wrong (but we'll fix that) ! emit(OPCODES[REPEAT_ONE]) skip = len(code); emit(0) emit(av[0]) *************** *** 147,173 **** code[skip] = len(code) - skip else: ! emit(OPCODES[op]) skip = len(code); emit(0) emit(av[0]) emit(av[1]) - mark = MAXCODE - if av[2][0][0] == SUBPATTERN: - # repeated subpattern - gid, foo = av[2][0][1] - if gid: - mark = (gid-1)*2 - emit(mark) _compile(code, av[2], flags) - emit(OPCODES[SUCCESS]) code[skip] = len(code) - skip elif op is SUBPATTERN: ! gid = av[0] ! if gid: emit(OPCODES[MARK]) ! emit((gid-1)*2) _compile(code, av[1], flags) ! if gid: emit(OPCODES[MARK]) ! emit((gid-1)*2+1) elif op in (SUCCESS, FAILURE): emit(OPCODES[op]) --- 145,166 ---- code[skip] = len(code) - skip else: ! emit(OPCODES[REPEAT]) skip = len(code); emit(0) emit(av[0]) emit(av[1]) _compile(code, av[2], flags) code[skip] = len(code) - skip + if op == MAX_REPEAT: + emit(OPCODES[MAX_UNTIL]) + else: + emit(OPCODES[MIN_UNTIL]) elif op is SUBPATTERN: ! if av[0]: emit(OPCODES[MARK]) ! emit((av[0]-1)*2) _compile(code, av[1], flags) ! if av[0]: emit(OPCODES[MARK]) ! emit((av[0]-1)*2+1) elif op in (SUCCESS, FAILURE): emit(OPCODES[op]) *************** *** 198,206 **** emit(ATCODES[av]) elif op is BRANCH: tail = [] for av in av[1]: - emit(OPCODES[op]) skip = len(code); emit(0) - emit(MAXCODE) # save mark _compile(code, av, flags) emit(OPCODES[JUMP]) --- 191,198 ---- emit(ATCODES[av]) elif op is BRANCH: + emit(OPCODES[op]) tail = [] for av in av[1]: skip = len(code); emit(0) _compile(code, av, flags) emit(OPCODES[JUMP]) *************** *** 224,230 **** emit(OPCODES[op]) emit(av-1) - elif op in (MARK, INDEX): - emit(OPCODES[op]) - emit(av) else: raise ValueError, ("unsupported operand type", op) --- 216,219 ---- *************** *** 295,309 **** pass ! def compile(p, flags=0): ! # internal: convert pattern list to internal format - # compile, as necessary - if type(p) in STRING_TYPES: - import sre_parse - pattern = p - p = sre_parse.parse(p, flags) - else: - pattern = None - flags = p.pattern.flags | flags code = [] --- 284,289 ---- pass ! def _compile1(p, flags): flags = p.pattern.flags | flags code = [] *************** *** 316,319 **** --- 296,313 ---- code.append(OPCODES[SUCCESS]) + + return code + + def compile(p, flags=0): + # internal: convert pattern list to internal format + + if type(p) in STRING_TYPES: + import sre_parse + pattern = p + p = sre_parse.parse(p, flags) + else: + pattern = None + + code = _compile1(p, flags) # print code Index: sre_constants.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_constants.py,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -r1.18 -r1.19 *** sre_constants.py 2000/07/23 21:46:17 1.18 --- sre_constants.py 2000/08/01 18:20:06 1.19 *************** *** 7,13 **** # Copyright (c) 1998-2000 by Secret Labs AB. All rights reserved. # ! # Portions of this engine have been developed in cooperation with ! # CNRI. Hewlett-Packard provided funding for 2.0 integration and ! # other compatibility work. # --- 7,11 ---- # Copyright (c) 1998-2000 by Secret Labs AB. All rights reserved. # ! # See the sre.py file for information on usage and redistribution. # *************** *** 34,38 **** IN = "in" IN_IGNORE = "in_ignore" - INDEX = "index" INFO = "info" JUMP = "jump" --- 32,35 ---- *************** *** 41,46 **** MARK = "mark" MAX_REPEAT = "max_repeat" ! MAX_REPEAT_ONE = "max_repeat_one" MIN_REPEAT = "min_repeat" NEGATE = "negate" NOT_LITERAL = "not_literal" --- 38,44 ---- MARK = "mark" MAX_REPEAT = "max_repeat" ! MAX_UNTIL = "max_until" MIN_REPEAT = "min_repeat" + MIN_UNTIL = "min_until" NEGATE = "negate" NOT_LITERAL = "not_literal" *************** *** 92,96 **** CHARSET, GROUPREF, GROUPREF_IGNORE, - INDEX, IN, IN_IGNORE, INFO, --- 90,93 ---- *************** *** 98,108 **** LITERAL, LITERAL_IGNORE, MARK, ! MAX_REPEAT, ! MAX_REPEAT_ONE, ! MIN_REPEAT, NOT_LITERAL, NOT_LITERAL_IGNORE, NEGATE, RANGE, ! REPEAT ] --- 95,106 ---- LITERAL, LITERAL_IGNORE, MARK, ! MAX_UNTIL, ! MIN_UNTIL, NOT_LITERAL, NOT_LITERAL_IGNORE, NEGATE, RANGE, ! REPEAT, ! REPEAT_ONE, ! SUBPATTERN ] Index: sre_parse.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_parse.py,v retrieving revision 1.26 retrieving revision 1.27 diff -C2 -r1.26 -r1.27 *** sre_parse.py 2000/07/23 21:46:17 1.26 --- sre_parse.py 2000/08/01 18:20:06 1.27 *************** *** 6,12 **** # Copyright (c) 1998-2000 by Secret Labs AB. All rights reserved. # ! # Portions of this engine have been developed in cooperation with ! # CNRI. Hewlett-Packard provided funding for 2.0 integration and ! # other compatibility work. # --- 6,10 ---- # Copyright (c) 1998-2000 by Secret Labs AB. All rights reserved. # ! # See the sre.py file for information on usage and redistribution. # *************** *** 537,542 **** p = _parse_sub(source, state) subpattern.append((SUBPATTERN, (group, p))) - if group is not None: - p.append((INDEX, group)) else: while 1: --- 535,538 ---- From python-dev@python.org Tue Aug 1 19:28:47 2000 From: python-dev@python.org (Guido van Rossum) Date: Tue, 1 Aug 2000 11:28:47 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include pyport.h,2.10,2.11 Message-ID: <200008011828.LAA16142@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv16132 Modified Files: pyport.h Log Message: Of course, you meant "#if 0" and not "#ifdef 0". :) Index: pyport.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pyport.h,v retrieving revision 2.10 retrieving revision 2.11 diff -C2 -r2.10 -r2.11 *** pyport.h 2000/08/01 16:53:44 2.10 --- pyport.h 2000/08/01 18:28:44 2.11 *************** *** 282,286 **** here is a set that should do the job */ ! #ifdef 0 /* disabled and probably obsolete */ #ifndef FD_SETSIZE --- 282,286 ---- here is a set that should do the job */ ! #if 0 /* disabled and probably obsolete */ #ifndef FD_SETSIZE From python-dev@python.org Tue Aug 1 21:28:36 2000 From: python-dev@python.org (Guido van Rossum) Date: Tue, 1 Aug 2000 13:28:36 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib re.py,1.37,1.38 Message-ID: <200008012028.NAA10085@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv10073 Modified Files: re.py Log Message: Replace the jitterbug page with the SF Bug Tracker page. Index: re.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/re.py,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -r1.37 -r1.38 *** re.py 2000/06/30 22:01:36 1.37 --- re.py 2000/08/01 20:28:33 1.38 *************** *** 9,13 **** # page: # ! # http://www.python.org/search/search_bugs.html # # or send a mail to SRE's author: --- 9,13 ---- # page: # ! # http://sourceforge.net/bugs/?group_id=5470 # # or send a mail to SRE's author: *************** *** 21,26 **** # ! engine = "sre" ! # engine = "pre" if engine == "sre": --- 21,26 ---- # ! # engine = "sre" ! engine = "pre" if engine == "sre": From python-dev@python.org Tue Aug 1 21:30:11 2000 From: python-dev@python.org (Fred L. Drake) Date: Tue, 1 Aug 2000 13:30:11 -0700 Subject: [Python-checkins] CVS: python/dist/src/PCbuild python16.wse,1.8,1.8.2.1 python16.dsp,1.8,1.8.2.1 Message-ID: <200008012030.NAA10334@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/PCbuild In directory slayer.i.sourceforge.net:/tmp/cvs-serv10313 Added Files: Tag: cnri-16-start python16.wse python16.dsp Log Message: Attempt to resurrect the Python 1.6 installer and MSVC project file. From python-dev@python.org Tue Aug 1 21:36:51 2000 From: python-dev@python.org (Guido van Rossum) Date: Tue, 1 Aug 2000 13:36:51 -0700 Subject: [Python-checkins] CVS: python/dist/src/PCbuild python16.dsp,1.8.2.1,1.8.2.2 Message-ID: <200008012036.NAA10834@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/PCbuild In directory slayer.i.sourceforge.net:/tmp/cvs-serv10822 Modified Files: Tag: cnri-16-start python16.dsp Log Message: restore CRLF line endings -- poke-n-hope Index: python16.dsp =================================================================== RCS file: /cvsroot/python/python/dist/src/PCbuild/Attic/python16.dsp,v retrieving revision 1.8.2.1 retrieving revision 1.8.2.2 diff -C2 -r1.8.2.1 -r1.8.2.2 *** python16.dsp 2000/08/01 20:30:08 1.8.2.1 --- python16.dsp 2000/08/01 20:36:48 1.8.2.2 *************** *** 672,676 **** !ENDIF ! # End Source File # Begin Source File --- 672,676 ---- !ENDIF ! # End Source File # Begin Source File From python-dev@python.org Tue Aug 1 22:01:02 2000 From: python-dev@python.org (Tim Peters) Date: Tue, 1 Aug 2000 14:01:02 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules arraymodule.c,2.51,2.52 Message-ID: <200008012101.OAA13954@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv12853/python/dist/src/modules Modified Files: arraymodule.c Log Message: Removed decl of unreferenced vrbl. Index: arraymodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/arraymodule.c,v retrieving revision 2.51 retrieving revision 2.52 diff -C2 -r2.51 -r2.52 *** arraymodule.c 2000/07/31 21:57:30 2.51 --- arraymodule.c 2000/08/01 21:00:58 2.52 *************** *** 795,799 **** int size; PyObject *bb; - arrayobject *np; if (!PyArg_ParseTuple(args, "O:extend", &bb)) --- 795,798 ---- From python-dev@python.org Tue Aug 1 22:05:44 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 14:05:44 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib sre_compile.py,1.27,1.28 sre_parse.py,1.27,1.28 Message-ID: <200008012105.OAA19618@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv12762/Lib Modified Files: sre_compile.py sre_parse.py Log Message: -- fixed width calculations for alternations -- fixed literal check in branch operator (this broke test_tokenize, as reported by Mark Favas) -- added REPEAT_ONE operator (still not enabled, though) -- added some debugging stuff (maxlevel) Index: sre_compile.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_compile.py,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -r1.27 -r1.28 *** sre_compile.py 2000/08/01 18:20:06 1.27 --- sre_compile.py 2000/08/01 21:05:40 1.28 *************** *** 271,274 **** --- 271,275 ---- code.extend(table[1:]) # don't store first entry elif charset: + # FIXME: use charset optimizer! for char in charset: emit(OPCODES[LITERAL]) *************** *** 284,288 **** pass ! def _compile1(p, flags): flags = p.pattern.flags | flags --- 285,289 ---- pass ! def _code(p, flags): flags = p.pattern.flags | flags *************** *** 309,313 **** pattern = None ! code = _compile1(p, flags) # print code --- 310,314 ---- pattern = None ! code = _code(p, flags) # print code Index: sre_parse.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_parse.py,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -r1.27 -r1.28 *** sre_parse.py 2000/08/01 18:20:06 1.27 --- sre_parse.py 2000/08/01 21:05:40 1.28 *************** *** 138,147 **** for op, av in self.data: if op is BRANCH: ! l = sys.maxint ! h = 0 for av in av[1]: ! i, j = av.getwidth() ! l = min(l, i) ! h = min(h, j) lo = lo + i hi = hi + j --- 138,147 ---- for op, av in self.data: if op is BRANCH: ! i = sys.maxint ! j = 0 for av in av[1]: ! l, h = av.getwidth() ! i = min(i, l) ! j = min(j, h) lo = lo + i hi = hi + j From python-dev@python.org Tue Aug 1 22:05:44 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 14:05:44 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.29,2.30 sre.h,2.16,2.17 Message-ID: <200008012105.OAA19622@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv12762/Modules Modified Files: _sre.c sre.h Log Message: -- fixed width calculations for alternations -- fixed literal check in branch operator (this broke test_tokenize, as reported by Mark Favas) -- added REPEAT_ONE operator (still not enabled, though) -- added some debugging stuff (maxlevel) Index: _sre.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v retrieving revision 2.29 retrieving revision 2.30 diff -C2 -r2.29 -r2.30 *** _sre.c 2000/08/01 18:20:07 2.29 --- _sre.c 2000/08/01 21:05:41 2.30 *************** *** 220,223 **** --- 220,231 ---- mark_fini(SRE_STATE* state) { + #if 0 + /* FIXME: debugging */ + if (state->maxlevel > 0) + printf("max %d\n", state->maxlevel); + if (state->mark_stack_base > 0) + printf("mark stack %d\n", state->mark_stack_base); + #endif + if (state->mark_stack) free(state->mark_stack); *************** *** 431,435 **** LOCAL(int) ! SRE_MATCH(SRE_STATE* state, SRE_CODE* pattern) { /* check if string matches the given pattern. returns -1 for --- 439,443 ---- LOCAL(int) ! SRE_MATCH(SRE_STATE* state, SRE_CODE* pattern, int level) { /* check if string matches the given pattern. returns -1 for *************** *** 444,448 **** SRE_REPEAT rep; /* FIXME: allocate in STATE instead */ ! TRACE(("%8d: enter\n", PTR(ptr))); if (pattern[0] == SRE_OP_INFO) { --- 452,456 ---- SRE_REPEAT rep; /* FIXME: allocate in STATE instead */ ! TRACE(("%8d: enter %d\n", PTR(ptr), level)); if (pattern[0] == SRE_OP_INFO) { *************** *** 457,460 **** --- 465,472 ---- } + /* FIXME: debugging */ + if (level > state->maxlevel) + state->maxlevel = level; + for (;;) { *************** *** 624,628 **** if (state->ptr < state->beginning) return 0; ! i = SRE_MATCH(state, pattern + 2); if (i <= 0) return i; --- 636,640 ---- if (state->ptr < state->beginning) return 0; ! i = SRE_MATCH(state, pattern + 2, level + 1); if (i <= 0) return i; *************** *** 639,643 **** if (state->ptr < state->beginning) return 0; ! i = SRE_MATCH(state, pattern + 2); if (i < 0) return i; --- 651,655 ---- if (state->ptr < state->beginning) return 0; ! i = SRE_MATCH(state, pattern + 2, level + 1); if (i < 0) return i; *************** *** 657,664 **** while (pattern[0]) { TRACE(("%8d: try branch\n", PTR(ptr))); ! if (pattern[2] != SRE_OP_LITERAL || ! (ptr < end && (SRE_CODE) ptr[0] == pattern[3])) { state->ptr = ptr; ! i = SRE_MATCH(state, pattern + 1); if (i) return i; --- 669,676 ---- while (pattern[0]) { TRACE(("%8d: try branch\n", PTR(ptr))); ! if (pattern[1] != SRE_OP_LITERAL || ! (ptr < end && (SRE_CODE) ptr[0] == pattern[2])) { state->ptr = ptr; ! i = SRE_MATCH(state, pattern + 1, level + 1); if (i) return i; *************** *** 671,674 **** --- 683,835 ---- return 0; + case SRE_OP_REPEAT_ONE: + /* match repeated sequence (maximizing regexp) */ + + /* this operator only works if the repeated item is + exactly one character wide, and we're not already + collecting backtracking points. for other cases, + use the MAX_REPEAT operator instead */ + + /* <1=min> <2=max> item tail */ + + TRACE(("%8d: max repeat one {%d,%d}\n", PTR(ptr), + pattern[1], pattern[2])); + + count = 0; + + if (pattern[3] == SRE_OP_ANY) { + /* repeated wildcard. skip to the end of the target + string, and backtrack from there */ + /* FIXME: must look for line endings */ + if (ptr + pattern[1] > end) + return 0; /* cannot match */ + count = pattern[2]; + if (count > end - ptr) + count = end - ptr; + ptr += count; + + } else if (pattern[3] == SRE_OP_LITERAL) { + /* repeated literal */ + SRE_CODE chr = pattern[4]; + while (count < (int) pattern[2]) { + if (ptr >= end || (SRE_CODE) ptr[0] != chr) + break; + ptr++; + count++; + } + + } else if (pattern[3] == SRE_OP_LITERAL_IGNORE) { + /* repeated literal */ + SRE_CODE chr = pattern[4]; + while (count < (int) pattern[2]) { + if (ptr >= end || (SRE_CODE) state->lower(*ptr) != chr) + break; + ptr++; + count++; + } + + } else if (pattern[3] == SRE_OP_NOT_LITERAL) { + /* repeated non-literal */ + SRE_CODE chr = pattern[4]; + while (count < (int) pattern[2]) { + if (ptr >= end || (SRE_CODE) ptr[0] == chr) + break; + ptr++; + count++; + } + + } else if (pattern[3] == SRE_OP_NOT_LITERAL_IGNORE) { + /* repeated non-literal */ + SRE_CODE chr = pattern[4]; + while (count < (int) pattern[2]) { + if (ptr >= end || (SRE_CODE) state->lower(ptr[0]) == chr) + break; + ptr++; + count++; + } + + } else if (pattern[3] == SRE_OP_IN) { + /* repeated set */ + while (count < (int) pattern[2]) { + if (ptr >= end || !SRE_MEMBER(pattern + 5, *ptr)) + break; + ptr++; + count++; + } + + } else { + /* repeated single character pattern */ + state->ptr = ptr; + while (count < (int) pattern[2]) { + i = SRE_MATCH(state, pattern + 3, level + 1); + if (i < 0) + return i; + if (!i) + break; + count++; + } + state->ptr = ptr; + ptr += count; + } + + /* when we arrive here, count contains the number of + matches, and ptr points to the tail of the target + string. check if the rest of the pattern matches, + and backtrack if not. */ + + TRACE(("%8d: repeat %d found\n", PTR(ptr), count)); + + if (count < (int) pattern[1]) + return 0; + + if (pattern[pattern[0]] == SRE_OP_SUCCESS) { + /* tail is empty. we're finished */ + TRACE(("%8d: tail is empty\n", PTR(ptr))); + state->ptr = ptr; + return 1; + + } else if (pattern[pattern[0]] == SRE_OP_LITERAL) { + /* tail starts with a literal. skip positions where + the rest of the pattern cannot possibly match */ + SRE_CODE chr = pattern[pattern[0]+1]; + TRACE(("%8d: tail is literal %d\n", PTR(ptr), chr)); + for (;;) { + TRACE(("%8d: scan for tail match\n", PTR(ptr))); + while (count >= (int) pattern[1] && + (ptr >= end || *ptr != chr)) { + ptr--; + count--; + } + TRACE(("%8d: check tail\n", PTR(ptr))); + if (count < (int) pattern[1]) + break; + state->ptr = ptr; + i = SRE_MATCH(state, pattern + pattern[0], level + 1); + if (i > 0) { + TRACE(("%8d: repeat %d picked\n", PTR(ptr), count)); + return 1; + } + ptr--; + count--; + } + + } else { + /* general case */ + TRACE(("%8d: tail is pattern\n", PTR(ptr))); + while (count >= (int) pattern[1]) { + state->ptr = ptr; + i = SRE_MATCH(state, pattern + pattern[0], level + 1); + if (i < 0) + return i; + if (i) { + TRACE(("%8d: repeat %d picked\n", PTR(ptr), count)); + return 1; + } + ptr--; + count--; + } + } + return 0; + case SRE_OP_REPEAT: /* create repeat context. all the hard work is done *************** *** 678,683 **** pattern[1], pattern[2])); - state->ptr = ptr; - rep.count = -1; rep.pattern = pattern; --- 839,842 ---- *************** *** 687,694 **** state->repeat = &rep; ! i = SRE_MATCH(state, pattern + pattern[0]); state->repeat = rep.prev; - /* free(rp); */ return i; --- 846,853 ---- state->repeat = &rep; ! state->ptr = ptr; ! i = SRE_MATCH(state, pattern + pattern[0], level + 1); state->repeat = rep.prev; return i; *************** *** 715,719 **** TRACE(("%8d: match item (required)\n", PTR(ptr))); rp->count = count; ! i = SRE_MATCH(state, rp->pattern + 3); if (i) return i; --- 874,878 ---- TRACE(("%8d: match item (required)\n", PTR(ptr))); rp->count = count; ! i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) return i; *************** *** 730,734 **** lastmark = state->lastmark; mark_save(state, 0, lastmark); ! i = SRE_MATCH(state, rp->pattern + 3); if (i) return i; --- 889,893 ---- lastmark = state->lastmark; mark_save(state, 0, lastmark); ! i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) return i; *************** *** 742,750 **** TRACE(("%8d: match tail\n", PTR(ptr))); state->repeat = rp->prev; ! i = SRE_MATCH(state, pattern); ! if (i) { ! /* free(rp); */ return i; - } state->repeat = rp; return 0; --- 901,907 ---- TRACE(("%8d: match tail\n", PTR(ptr))); state->repeat = rp->prev; ! i = SRE_MATCH(state, pattern, level + 1); ! if (i) return i; state->repeat = rp; return 0; *************** *** 768,772 **** TRACE(("%8d: match item (required)\n", PTR(ptr))); rp->count = count; ! i = SRE_MATCH(state, rp->pattern + 3); if (i) return i; --- 925,929 ---- TRACE(("%8d: match item (required)\n", PTR(ptr))); rp->count = count; ! i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) return i; *************** *** 779,783 **** TRACE(("%8d: match tail\n", PTR(ptr))); state->repeat = rp->prev; ! i = SRE_MATCH(state, pattern); if (i) { /* free(rp); */ --- 936,940 ---- TRACE(("%8d: match tail\n", PTR(ptr))); state->repeat = rp->prev; ! i = SRE_MATCH(state, pattern, level + 1); if (i) { /* free(rp); */ *************** *** 791,795 **** TRACE(("%8d: match item (optional)\n", PTR(ptr))); rp->count = count; ! i = SRE_MATCH(state, rp->pattern + 3); if (i) return i; --- 948,952 ---- TRACE(("%8d: match item (optional)\n", PTR(ptr))); rp->count = count; ! i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) return i; *************** *** 866,870 **** if (flags & SRE_INFO_LITERAL) return 1; /* we got all of it */ ! status = SRE_MATCH(state, pattern + 2*prefix_len); if (status != 0) return status; --- 1023,1027 ---- if (flags & SRE_INFO_LITERAL) return 1; /* we got all of it */ ! status = SRE_MATCH(state, pattern + 2*prefix_len, 1); if (status != 0) return status; *************** *** 894,898 **** state->start = ptr; state->ptr = ++ptr; ! status = SRE_MATCH(state, pattern + 2); if (status != 0) break; --- 1051,1055 ---- state->start = ptr; state->ptr = ++ptr; ! status = SRE_MATCH(state, pattern + 2, 1); if (status != 0) break; *************** *** 908,912 **** state->start = ptr; state->ptr = ptr; ! status = SRE_MATCH(state, pattern); if (status != 0) break; --- 1065,1069 ---- state->start = ptr; state->ptr = ptr; ! status = SRE_MATCH(state, pattern, 1); if (status != 0) break; *************** *** 917,921 **** TRACE(("%8d: === SEARCH ===\n", PTR(ptr))); state->start = state->ptr = ptr++; ! status = SRE_MATCH(state, pattern); if (status != 0) break; --- 1074,1078 ---- TRACE(("%8d: === SEARCH ===\n", PTR(ptr))); state->start = state->ptr = ptr++; ! status = SRE_MATCH(state, pattern, 1); if (status != 0) break; *************** *** 1033,1036 **** --- 1190,1196 ---- state->repeat = NULL; + /* FIXME: debugging */ + state->maxlevel = 0; + mark_fini(state); } *************** *** 1111,1114 **** --- 1271,1275 ---- state->mark_stack = NULL; + state->mark_stack_base = 0; state_reset(state); *************** *** 1263,1270 **** if (state.charsize == 1) { ! status = sre_match(&state, PatternObject_GetCode(self)); } else { #if defined(HAVE_UNICODE) ! status = sre_umatch(&state, PatternObject_GetCode(self)); #endif } --- 1424,1431 ---- if (state.charsize == 1) { ! status = sre_match(&state, PatternObject_GetCode(self), 1); } else { #if defined(HAVE_UNICODE) ! status = sre_umatch(&state, PatternObject_GetCode(self), 1); #endif } *************** *** 1942,1949 **** if (state->charsize == 1) { ! status = sre_match(state, PatternObject_GetCode(self->pattern)); } else { #if defined(HAVE_UNICODE) ! status = sre_umatch(state, PatternObject_GetCode(self->pattern)); #endif } --- 2103,2110 ---- if (state->charsize == 1) { ! status = sre_match(state, PatternObject_GetCode(self->pattern), 1); } else { #if defined(HAVE_UNICODE) ! status = sre_umatch(state, PatternObject_GetCode(self->pattern), 1); #endif } Index: sre.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/sre.h,v retrieving revision 2.16 retrieving revision 2.17 diff -C2 -r2.16 -r2.17 *** sre.h 2000/08/01 18:20:07 2.16 --- sre.h 2000/08/01 21:05:41 2.17 *************** *** 75,78 **** --- 75,80 ---- /* hooks */ SRE_TOLOWER_HOOK lower; + /* debugging */ + int maxlevel; } SRE_STATE; From python-dev@python.org Tue Aug 1 22:22:20 2000 From: python-dev@python.org (Guido van Rossum) Date: Tue, 1 Aug 2000 14:22:20 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib re.py,1.38,1.39 Message-ID: <200008012122.OAA22327@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv22316 Modified Files: re.py Log Message: My fix to the URL accidentally also switched back to the "pre" module. Undo that! Index: re.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/re.py,v retrieving revision 1.38 retrieving revision 1.39 diff -C2 -r1.38 -r1.39 *** re.py 2000/08/01 20:28:33 1.38 --- re.py 2000/08/01 21:22:16 1.39 *************** *** 21,26 **** # ! # engine = "sre" ! engine = "pre" if engine == "sre": --- 21,26 ---- # ! engine = "sre" ! # engine = "pre" if engine == "sre": From python-dev@python.org Tue Aug 1 23:47:51 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 15:47:51 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib sre.py,1.22,1.23 sre_compile.py,1.28,1.29 sre_constants.py,1.19,1.20 sre_parse.py,1.28,1.29 Message-ID: <200008012247.PAA10592@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv10513/Lib Modified Files: sre.py sre_compile.py sre_constants.py sre_parse.py Log Message: final 0.9.8 updates: -- added REPEAT_ONE operator -- added ANY_ALL operator (used to represent "(?s).") Index: sre.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre.py,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -r1.22 -r1.23 *** sre.py 2000/08/01 18:20:06 1.22 --- sre.py 2000/08/01 22:47:48 1.23 *************** *** 99,103 **** except KeyError: pass ! p = sre_compile.compile(pattern, flags) if len(_cache) >= _MAXCACHE: _cache.clear() --- 99,106 ---- except KeyError: pass ! try: ! p = sre_compile.compile(pattern, flags) ! except error, v: ! raise error, v # invalid expression if len(_cache) >= _MAXCACHE: _cache.clear() Index: sre_compile.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_compile.py,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -r1.28 -r1.29 *** sre_compile.py 2000/08/01 21:05:40 1.28 --- sre_compile.py 2000/08/01 22:47:48 1.29 *************** *** 74,77 **** --- 74,84 ---- return charset + def _simple(av): + # check if av is a "simple" operator + lo, hi = av[2].getwidth() + if lo == 0: + raise error, "nothing to repeat" + return lo == hi == 1 and av[2][0][0] != SUBPATTERN + def _compile(code, pattern, flags): # internal: compile a (sub)pattern *************** *** 117,124 **** elif op is ANY: if flags & SRE_FLAG_DOTALL: ! emit(OPCODES[op]) else: ! emit(OPCODES[CATEGORY]) ! emit(CHCODES[CATEGORY_NOT_LINEBREAK]) elif op in (REPEAT, MIN_REPEAT, MAX_REPEAT): if flags & SRE_FLAG_TEMPLATE: --- 124,130 ---- elif op is ANY: if flags & SRE_FLAG_DOTALL: ! emit(OPCODES[ANY_ALL]) else: ! emit(OPCODES[ANY]) elif op in (REPEAT, MIN_REPEAT, MAX_REPEAT): if flags & SRE_FLAG_TEMPLATE: *************** *** 131,158 **** emit(OPCODES[SUCCESS]) code[skip] = len(code) - skip else: ! lo, hi = av[2].getwidth() ! if lo == 0: ! raise error, "nothing to repeat" ! if 0 and lo == hi == 1 and op is MAX_REPEAT: ! # FIXME: fast and wrong (but we'll fix that) ! emit(OPCODES[REPEAT_ONE]) ! skip = len(code); emit(0) ! emit(av[0]) ! emit(av[1]) ! _compile(code, av[2], flags) ! emit(OPCODES[SUCCESS]) ! code[skip] = len(code) - skip else: ! emit(OPCODES[REPEAT]) ! skip = len(code); emit(0) ! emit(av[0]) ! emit(av[1]) ! _compile(code, av[2], flags) ! code[skip] = len(code) - skip ! if op == MAX_REPEAT: ! emit(OPCODES[MAX_UNTIL]) ! else: ! emit(OPCODES[MIN_UNTIL]) elif op is SUBPATTERN: if av[0]: --- 137,159 ---- emit(OPCODES[SUCCESS]) code[skip] = len(code) - skip + elif _simple(av) and op == MAX_REPEAT: + emit(OPCODES[REPEAT_ONE]) + skip = len(code); emit(0) + emit(av[0]) + emit(av[1]) + _compile(code, av[2], flags) + emit(OPCODES[SUCCESS]) + code[skip] = len(code) - skip else: ! emit(OPCODES[REPEAT]) ! skip = len(code); emit(0) ! emit(av[0]) ! emit(av[1]) ! _compile(code, av[2], flags) ! code[skip] = len(code) - skip ! if op == MAX_REPEAT: ! emit(OPCODES[MAX_UNTIL]) else: ! emit(OPCODES[MIN_UNTIL]) elif op is SUBPATTERN: if av[0]: Index: sre_constants.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_constants.py,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -r1.19 -r1.20 *** sre_constants.py 2000/08/01 18:20:06 1.19 --- sre_constants.py 2000/08/01 22:47:48 1.20 *************** *** 21,24 **** --- 21,25 ---- ANY = "any" + ANY_ALL = "any_all" ASSERT = "assert" ASSERT_NOT = "assert_not" *************** *** 82,86 **** FAILURE, SUCCESS, ! ANY, ASSERT, ASSERT_NOT, AT, --- 83,87 ---- FAILURE, SUCCESS, ! ANY, ANY_ALL, ASSERT, ASSERT_NOT, AT, Index: sre_parse.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/sre_parse.py,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -r1.28 -r1.29 *** sre_parse.py 2000/08/01 21:05:40 1.28 --- sre_parse.py 2000/08/01 22:47:48 1.29 *************** *** 143,147 **** l, h = av.getwidth() i = min(i, l) ! j = min(j, h) lo = lo + i hi = hi + j --- 143,147 ---- l, h = av.getwidth() i = min(i, l) ! j = max(j, h) lo = lo + i hi = hi + j From python-dev@python.org Tue Aug 1 23:47:51 2000 From: python-dev@python.org (Fredrik Lundh) Date: Tue, 1 Aug 2000 15:47:51 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.30,2.31 sre_constants.h,2.8,2.9 Message-ID: <200008012247.PAA10594@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv10513/Modules Modified Files: _sre.c sre_constants.h Log Message: final 0.9.8 updates: -- added REPEAT_ONE operator -- added ANY_ALL operator (used to represent "(?s).") Index: _sre.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v retrieving revision 2.30 retrieving revision 2.31 diff -C2 -r2.30 -r2.31 *** _sre.c 2000/08/01 21:05:41 2.30 --- _sre.c 2000/08/01 22:47:49 2.31 *************** *** 449,452 **** --- 449,453 ---- SRE_REPEAT* rp; int lastmark; + SRE_CODE chr; SRE_REPEAT rep; /* FIXME: allocate in STATE instead */ *************** *** 526,531 **** case SRE_OP_ANY: ! /* match anything */ /* */ TRACE(("%8d: anything\n", PTR(ptr))); if (ptr >= end) --- 527,541 ---- case SRE_OP_ANY: ! /* match anything (except a newline) */ /* */ + TRACE(("%8d: anything (except newline)\n", PTR(ptr))); + if (ptr >= end || SRE_IS_LINEBREAK(ptr[0])) + return 0; + ptr++; + break; + + case SRE_OP_ANY_ALL: + /* match anything */ + /* */ TRACE(("%8d: anything\n", PTR(ptr))); if (ptr >= end) *************** *** 696,705 **** pattern[1], pattern[2])); count = 0; ! if (pattern[3] == SRE_OP_ANY) { /* repeated wildcard. skip to the end of the target string, and backtrack from there */ - /* FIXME: must look for line endings */ if (ptr + pattern[1] > end) return 0; /* cannot match */ --- 706,729 ---- pattern[1], pattern[2])); + if (ptr + pattern[1] > end) + return 0; /* cannot match */ + count = 0; + + switch (pattern[3]) { ! case SRE_OP_ANY: ! /* repeated wildcard. */ ! while (count < (int) pattern[2]) { ! if (ptr >= end || SRE_IS_LINEBREAK(ptr[0])) ! break; ! ptr++; ! count++; ! } ! break; ! ! case SRE_OP_ANY_ALL: /* repeated wildcard. skip to the end of the target string, and backtrack from there */ if (ptr + pattern[1] > end) return 0; /* cannot match */ *************** *** 708,715 **** count = end - ptr; ptr += count; ! } else if (pattern[3] == SRE_OP_LITERAL) { /* repeated literal */ ! SRE_CODE chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) ptr[0] != chr) --- 732,740 ---- count = end - ptr; ptr += count; + break; ! case SRE_OP_LITERAL: /* repeated literal */ ! chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) ptr[0] != chr) *************** *** 718,725 **** count++; } ! } else if (pattern[3] == SRE_OP_LITERAL_IGNORE) { /* repeated literal */ ! SRE_CODE chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) state->lower(*ptr) != chr) --- 743,751 ---- count++; } + break; ! case SRE_OP_LITERAL_IGNORE: /* repeated literal */ ! chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) state->lower(*ptr) != chr) *************** *** 728,735 **** count++; } ! } else if (pattern[3] == SRE_OP_NOT_LITERAL) { /* repeated non-literal */ ! SRE_CODE chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) ptr[0] == chr) --- 754,762 ---- count++; } + break; ! case SRE_OP_NOT_LITERAL: /* repeated non-literal */ ! chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) ptr[0] == chr) *************** *** 738,745 **** count++; } ! ! } else if (pattern[3] == SRE_OP_NOT_LITERAL_IGNORE) { /* repeated non-literal */ ! SRE_CODE chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) state->lower(ptr[0]) == chr) --- 765,773 ---- count++; } ! break; ! ! case SRE_OP_NOT_LITERAL_IGNORE: /* repeated non-literal */ ! chr = pattern[4]; while (count < (int) pattern[2]) { if (ptr >= end || (SRE_CODE) state->lower(ptr[0]) == chr) *************** *** 748,753 **** count++; } ! } else if (pattern[3] == SRE_OP_IN) { /* repeated set */ while (count < (int) pattern[2]) { --- 776,782 ---- count++; } + break; ! case SRE_OP_IN: /* repeated set */ while (count < (int) pattern[2]) { *************** *** 757,762 **** count++; } ! } else { /* repeated single character pattern */ state->ptr = ptr; --- 786,792 ---- count++; } + break; ! default: /* repeated single character pattern */ state->ptr = ptr; *************** *** 771,774 **** --- 801,805 ---- state->ptr = ptr; ptr += count; + break; } *************** *** 792,796 **** /* tail starts with a literal. skip positions where the rest of the pattern cannot possibly match */ ! SRE_CODE chr = pattern[pattern[0]+1]; TRACE(("%8d: tail is literal %d\n", PTR(ptr), chr)); for (;;) { --- 823,827 ---- /* tail starts with a literal. skip positions where the rest of the pattern cannot possibly match */ ! chr = pattern[pattern[0]+1]; TRACE(("%8d: tail is literal %d\n", PTR(ptr), chr)); for (;;) { Index: sre_constants.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/sre_constants.h,v retrieving revision 2.8 retrieving revision 2.9 diff -C2 -r2.8 -r2.9 *** sre_constants.h 2000/08/01 18:20:07 2.8 --- sre_constants.h 2000/08/01 22:47:49 2.9 *************** *** 15,43 **** #define SRE_OP_SUCCESS 1 #define SRE_OP_ANY 2 ! #define SRE_OP_ASSERT 3 ! #define SRE_OP_ASSERT_NOT 4 ! #define SRE_OP_AT 5 ! #define SRE_OP_BRANCH 6 ! #define SRE_OP_CALL 7 ! #define SRE_OP_CATEGORY 8 ! #define SRE_OP_CHARSET 9 ! #define SRE_OP_GROUPREF 10 ! #define SRE_OP_GROUPREF_IGNORE 11 ! #define SRE_OP_IN 12 ! #define SRE_OP_IN_IGNORE 13 ! #define SRE_OP_INFO 14 ! #define SRE_OP_JUMP 15 ! #define SRE_OP_LITERAL 16 ! #define SRE_OP_LITERAL_IGNORE 17 ! #define SRE_OP_MARK 18 ! #define SRE_OP_MAX_UNTIL 19 ! #define SRE_OP_MIN_UNTIL 20 ! #define SRE_OP_NOT_LITERAL 21 ! #define SRE_OP_NOT_LITERAL_IGNORE 22 ! #define SRE_OP_NEGATE 23 ! #define SRE_OP_RANGE 24 ! #define SRE_OP_REPEAT 25 ! #define SRE_OP_REPEAT_ONE 26 ! #define SRE_OP_SUBPATTERN 27 #define SRE_AT_BEGINNING 0 #define SRE_AT_BEGINNING_LINE 1 --- 15,44 ---- #define SRE_OP_SUCCESS 1 #define SRE_OP_ANY 2 ! #define SRE_OP_ANY_ALL 3 ! #define SRE_OP_ASSERT 4 ! #define SRE_OP_ASSERT_NOT 5 ! #define SRE_OP_AT 6 ! #define SRE_OP_BRANCH 7 ! #define SRE_OP_CALL 8 ! #define SRE_OP_CATEGORY 9 ! #define SRE_OP_CHARSET 10 ! #define SRE_OP_GROUPREF 11 ! #define SRE_OP_GROUPREF_IGNORE 12 ! #define SRE_OP_IN 13 ! #define SRE_OP_IN_IGNORE 14 ! #define SRE_OP_INFO 15 ! #define SRE_OP_JUMP 16 ! #define SRE_OP_LITERAL 17 ! #define SRE_OP_LITERAL_IGNORE 18 ! #define SRE_OP_MARK 19 ! #define SRE_OP_MAX_UNTIL 20 ! #define SRE_OP_MIN_UNTIL 21 ! #define SRE_OP_NOT_LITERAL 22 ! #define SRE_OP_NOT_LITERAL_IGNORE 23 ! #define SRE_OP_NEGATE 24 ! #define SRE_OP_RANGE 25 ! #define SRE_OP_REPEAT 26 ! #define SRE_OP_REPEAT_ONE 27 ! #define SRE_OP_SUBPATTERN 28 #define SRE_AT_BEGINNING 0 #define SRE_AT_BEGINNING_LINE 1 From python-dev@python.org Wed Aug 2 00:49:52 2000 From: python-dev@python.org (Mark Hammond) Date: Tue, 1 Aug 2000 16:49:52 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libwinreg.tex,1.4,1.5 Message-ID: <200008012349.QAA22857@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv22846 Modified Files: libwinreg.tex Log Message: As requested by Fred - mention that in the future a winreg module may make a comeback. Index: libwinreg.tex =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/lib/libwinreg.tex,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -r1.4 -r1.5 *** libwinreg.tex 2000/07/06 04:38:37 1.4 --- libwinreg.tex 2000/08/01 23:49:50 1.5 *************** *** 15,20 **** This module exposes a very low-level interface to the Windows ! registry; for a more object-oriented interface, use the ! \module{winreg} module. This module offers the following functions: --- 15,21 ---- This module exposes a very low-level interface to the Windows ! registry; it is expected that in the future a new \code{winreg} ! module will be created offering a higher-level interface to the ! registry API. This module offers the following functions: From python-dev@python.org Wed Aug 2 00:54:31 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 16:54:31 -0700 Subject: [Python-checkins] CVS: distutils/distutils/command build_ext.py,1.58,1.59 Message-ID: <200008012354.QAA23245@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils/command In directory slayer.i.sourceforge.net:/tmp/cvs-serv23103/command Modified Files: build_ext.py Log Message: Patch from Rene Liebscher, tweaked by me: - 'export_symbol_file' (and corresponding 'def_file' in the old "build info" dict) are gone; warn if we see 'def_file' in the dict - the MSVC "pre-link hack" is gone -- all that stuff is now handled elsewhere (eg. by using 'export_symbols', etc.) - add 'get_export_symbols()' and 'get_libraries()' methods -- needed because on Windows, both of those things are a tad more complicated than fetching them from the Extension instance Index: build_ext.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/command/build_ext.py,v retrieving revision 1.58 retrieving revision 1.59 diff -C2 -r1.58 -r1.59 *** build_ext.py 2000/07/27 02:13:20 1.58 --- build_ext.py 2000/08/01 23:54:29 1.59 *************** *** 85,89 **** ('help-compiler', None, "list available compilers", show_compilers), ! ] def initialize_options (self): --- 85,89 ---- ('help-compiler', None, "list available compilers", show_compilers), ! ] def initialize_options (self): *************** *** 283,287 **** # Medium-easy stuff: same syntax/semantics, different names. ext.runtime_library_dirs = build_info.get('rpath') ! ext.export_symbol_file = build_info.get('def_file') # Non-trivial stuff: 'macros' split into 'define_macros' --- 283,289 ---- # Medium-easy stuff: same syntax/semantics, different names. ext.runtime_library_dirs = build_info.get('rpath') ! if build_info.has_key('def_file'): ! self.warn("'def_file' element of build info dict " ! "no longer supported") # Non-trivial stuff: 'macros' split into 'define_macros' *************** *** 421,434 **** extra_args = ext.extra_link_args or [] - # Bunch of fixing-up we have to do for Microsoft's linker. - if self.compiler.compiler_type == 'msvc': - self.msvc_prelink_hack(sources, ext, extra_args) self.compiler.link_shared_object ( objects, ext_filename, ! libraries=ext.libraries, library_dirs=ext.library_dirs, runtime_library_dirs=ext.runtime_library_dirs, extra_postargs=extra_args, debug=self.debug, build_temp=self.build_temp) --- 423,434 ---- extra_args = ext.extra_link_args or [] self.compiler.link_shared_object ( objects, ext_filename, ! libraries=self.get_libraries(ext), library_dirs=ext.library_dirs, runtime_library_dirs=ext.runtime_library_dirs, extra_postargs=extra_args, + export_symbols=self.get_export_symbols(ext), debug=self.debug, build_temp=self.build_temp) *************** *** 512,553 **** # find_swig () - - # -- Hooks 'n hacks ------------------------------------------------ - - def msvc_prelink_hack (self, sources, ext, extra_args): - - # XXX this is a kludge! Knowledge of specific compilers or - # platforms really doesn't belong here; in an ideal world, the - # CCompiler interface would provide access to everything in a - # compiler/linker system needs to build Python extensions, and - # we would just do everything nicely and cleanly through that - # interface. However, this is a not an ideal world and the - # CCompiler interface doesn't handle absolutely everything. - # Thus, kludges like this slip in occasionally. (This is no - # excuse for committing more platform- and compiler-specific - # kludges; they are to be avoided if possible!) - - def_file = ext.export_symbol_file - - if def_file is not None: - extra_args.append ('/DEF:' + def_file) - else: - modname = string.split (ext.name, '.')[-1] - extra_args.append('/export:init%s' % modname) - - # The MSVC linker generates .lib and .exp files, which cannot be - # suppressed by any linker switches. The .lib files may even be - # needed! Make sure they are generated in the temporary build - # directory. Since they have different names for debug and release - # builds, they can go into the same directory. - implib_file = os.path.join ( - self.implib_dir, - self.get_ext_libname (ext.name)) - extra_args.append ('/IMPLIB:' + implib_file) - self.mkpath (os.path.dirname (implib_file)) - - # msvc_prelink_hack () - - # -- Name generators ----------------------------------------------- # (extension names, filenames, whatever) --- 512,515 ---- *************** *** 579,582 **** --- 541,579 ---- return apply (os.path.join, ext_path) + '_d.lib' return apply (os.path.join, ext_path) + '.lib' + + + def get_export_symbols (self, ext): + """Return the list of symbols that a shared extension has to + export. This either uses 'ext.export_symbols' or, if it's not + provided, "init" + module_name. Only relevant on Windows, where + the .pyd file (DLL) must export the module "init" function. + """ + + # XXX what if 'export_symbols' defined but it doesn't contain + # "init" + module_name? Should we add it? warn? or just carry + # on doing nothing? + + if ext.export_symbols is None: + return ["init" + string.split(ext.name,'.')[-1]] + else: + return ext.export_symbols + + def get_libraries (self, ext): + """Return the list of libraries to link against when building a + shared extension. On most platforms, this is just 'ext.libraries'; + on Windows, we add the Python library (eg. python20.dll). + """ + # The python library is always needed on Windows. For MSVC, this + # is redundant, since the library is mentioned in a pragma in + # config.h that MSVC groks. The other Windows compilers all seem + # to need it mentioned explicitly, though, so that's what we do. + if sys.platform == "win32": + pythonlib = ("python%d%d" % + (sys.hexversion >> 24, (sys.hexversion >> 16) & 0xff)) + # don't extend ext.libraries, it may be shared with other + # extensions, it is a reference to the original list + return ext.libraries + [pythonlib] + else: + return ext.libraries # class build_ext From python-dev@python.org Wed Aug 2 01:00:33 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 17:00:33 -0700 Subject: [Python-checkins] CVS: distutils/distutils msvccompiler.py,1.35,1.36 Message-ID: <200008020000.RAA25307@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv25004 Modified Files: msvccompiler.py Log Message: Patch from Rene Liebscher: generate an /IMPLIB: option to ensure that the linker leaves the (temporary) .lib file in the temporary dir. (Moved from 'msvc_prelink_hack()' method in build_ext.py.) Index: msvccompiler.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/msvccompiler.py,v retrieving revision 1.35 retrieving revision 1.36 diff -C2 -r1.35 -r1.36 *** msvccompiler.py 2000/06/30 19:37:59 1.35 --- msvccompiler.py 2000/08/02 00:00:30 1.36 *************** *** 381,388 **** objects + ['/OUT:' + output_filename]) if extra_preargs: ld_args[:0] = extra_preargs if extra_postargs: ! ld_args.extend (extra_postargs) print "link_shared_object():" --- 381,400 ---- objects + ['/OUT:' + output_filename]) + # The MSVC linker generates .lib and .exp files, which cannot be + # suppressed by any linker switches. The .lib files may even be + # needed! Make sure they are generated in the temporary build + # directory. Since they have different names for debug and release + # builds, they can go into the same directory. + (dll_name, dll_ext) = os.path.splitext( + os.path.basename(output_filename)) + implib_file = os.path.join( + os.path.dirname(objects[0]), + self.library_filename(dll_name)) + ld_args.append ('/IMPLIB:' + implib_file) + if extra_preargs: ld_args[:0] = extra_preargs if extra_postargs: ! ld_args.extend(extra_postargs) print "link_shared_object():" From python-dev@python.org Wed Aug 2 01:01:58 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 17:01:58 -0700 Subject: [Python-checkins] CVS: distutils/distutils msvccompiler.py,1.36,1.37 Message-ID: <200008020001.RAA29477@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv29217 Modified Files: msvccompiler.py Log Message: Ditched some debugging prints. Index: msvccompiler.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/msvccompiler.py,v retrieving revision 1.36 retrieving revision 1.37 diff -C2 -r1.36 -r1.37 *** msvccompiler.py 2000/08/02 00:00:30 1.36 --- msvccompiler.py 2000/08/02 00:01:56 1.37 *************** *** 398,404 **** ld_args.extend(extra_postargs) - print "link_shared_object():" - print " output_filename =", output_filename - print " mkpath'ing:", os.path.dirname (output_filename) self.mkpath (os.path.dirname (output_filename)) try: --- 398,401 ---- From python-dev@python.org Wed Aug 2 01:04:16 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 17:04:16 -0700 Subject: [Python-checkins] CVS: distutils/distutils extension.py,1.2,1.3 Message-ID: <200008020004.RAA31389@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv31375 Modified Files: extension.py Log Message: Removed 'export_symbol_file'. 'export_symbols' can be None (not sure this is a good idea: it's inconsistent with every other instance attribute of Extension). Index: extension.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/extension.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** extension.py 2000/06/24 00:18:24 1.2 --- extension.py 2000/08/02 00:04:13 1.3 *************** *** 74,82 **** extensions, which typically export exactly one symbol: "init" + extension_name. - export_symbol_file : string - name of file that lists symbols to export; the format of this - file is platform- and compiler-specific. This is even more - gratuitous and unnecessary than 'export_symbols'; I'll be happy - when it goes away forever. """ --- 74,77 ---- *************** *** 92,96 **** extra_link_args=None, export_symbols=None, - export_symbol_file=None, ): --- 87,90 ---- *************** *** 112,117 **** self.extra_compile_args = extra_compile_args or [] self.extra_link_args = extra_link_args or [] ! self.export_symbols = export_symbols or [] ! self.export_symbol_file = export_symbol_file # class Extension --- 106,110 ---- self.extra_compile_args = extra_compile_args or [] self.extra_link_args = extra_link_args or [] ! self.export_symbols = export_symbols # class Extension From python-dev@python.org Wed Aug 2 01:37:36 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 17:37:36 -0700 Subject: [Python-checkins] CVS: distutils/distutils util.py,1.39,1.40 Message-ID: <200008020037.RAA00993@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv985 Modified Files: util.py Log Message: Ditched 'abspath()' -- don't need 1.5.1 compatability hacks anymore. Index: util.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/util.py,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -r1.39 -r1.40 *** util.py 2000/07/27 02:13:19 1.39 --- util.py 2000/08/02 00:37:32 1.40 *************** *** 19,32 **** - # Need to define 'abspath()', because it was new with Python 1.5.2 - if hasattr (os.path, 'abspath'): - abspath = os.path.abspath - else: - def abspath(path): - if not os.path.isabs(path): - path = os.path.join(os.getcwd(), path) - return os.path.normpath(path) - - # More backwards compatibility hacks def extend (list, new_list): --- 19,22 ---- From python-dev@python.org Wed Aug 2 02:03:27 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:03:27 -0700 Subject: [Python-checkins] CVS: distutils/distutils bcppcompiler.py,1.1,1.2 Message-ID: <200008020103.SAA06206@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv2567 Modified Files: bcppcompiler.py Log Message: Patch from Rene Liebscher. Some ugly changes, but supposedly this makes it so BCPPCompiler actually works, so I'm provisionally accepting it -- ugly and working is better than not working! Major changes: - normalize paths (apparently BC++ doesn't like slashes) - overhauled how we search for and specify libraries on the linker command-line - hacked up 'find_library_file()' so it knows about "debug" library naming convention as well as "bcpp_xxx.lib" -- the question is, is this a well-established and sensible convention? Also: - change to use 'util.write_file()' to write the .def file Index: bcppcompiler.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/bcppcompiler.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** bcppcompiler.py 2000/06/28 01:20:35 1.1 --- bcppcompiler.py 2000/08/02 01:03:23 1.2 *************** *** 12,26 **** # WindowsCCompiler! --GPW - # XXX Lyle reports that this doesn't quite work yet: - # """...but this is what I've got so far. The compile step works fine but - # when it runs the link step I get an "out of memory" failure. Since - # spawn() echoes the command it's trying to spawn, I can type the link line - # verbatim at the DOS prompt and it links the Windows DLL correctly -- so - # the syntax is correct. There's just some weird interaction going on when - # it tries to "spawn" the link process from within the setup.py script. I'm - # not really sure how to debug this one right off-hand; obviously there's - # nothing wrong with the "spawn()" function since it's working properly for - # the compile stage.""" - __revision__ = "$Id$" --- 12,15 ---- *************** *** 32,35 **** --- 21,25 ---- from distutils.ccompiler import \ CCompiler, gen_preprocess_options, gen_lib_options + from distutils.file_util import write_file *************** *** 124,135 **** input_opt = "-P" output_opt = "-o" + obj ! ! self.mkpath (os.path.dirname (obj)) # Compiler command line syntax is: "bcc32 [options] file(s)". # Note that the source file names must appear at the end of # the command line. - try: self.spawn ([self.cc] + compile_opts + pp_opts + --- 114,126 ---- input_opt = "-P" + src = os.path.normpath(src) + obj = os.path.normpath(obj) + output_opt = "-o" + obj ! self.mkpath(os.path.dirname(obj)) # Compiler command line syntax is: "bcc32 [options] file(s)". # Note that the source file names must appear at the end of # the command line. try: self.spawn ([self.cc] + compile_opts + pp_opts + *************** *** 213,216 **** --- 204,210 ---- build_temp=None): + # XXX this ignores 'build_temp'! should follow the lead of + # msvccompiler.py + (objects, output_dir) = self._fix_object_args (objects, output_dir) (libraries, library_dirs, runtime_library_dirs) = \ *************** *** 227,237 **** if debug: ! ldflags = self.ldflags_shared_debug else: ! ldflags = self.ldflags_shared startup_obj = 'c0d32' ! libraries.append ('mypylib') libraries.append ('import32') libraries.append ('cw32mt') --- 221,237 ---- if debug: ! ld_args = self.ldflags_shared_debug[:] else: ! ld_args = self.ldflags_shared[:] + # Borland C++ has problems with '/' in paths + objects = map(os.path.normpath, objects) startup_obj = 'c0d32' + objects.insert(0, startup_obj) ! # either exchange python15.lib in the python libs directory against ! # a Borland-like one, or create one with name bcpp_python15.lib ! # there and remove the pragmas from config.h ! #libraries.append ('mypylib') libraries.append ('import32') libraries.append ('cw32mt') *************** *** 240,257 **** head, tail = os.path.split (output_filename) modname, ext = os.path.splitext (tail) ! def_file = os.path.join (build_temp, '%s.def' % modname) ! f = open (def_file, 'w') ! f.write ('EXPORTS\n') for sym in (export_symbols or []): ! f.write (' %s=_%s\n' % (sym, sym)) ! ! ld_args = ldflags + [startup_obj] + objects + \ ! [',%s,,' % output_filename] + \ ! libraries + [',' + def_file] if extra_preargs: ld_args[:0] = extra_preargs if extra_postargs: ! ld_args.extend (extra_postargs) self.mkpath (os.path.dirname (output_filename)) --- 240,281 ---- head, tail = os.path.split (output_filename) modname, ext = os.path.splitext (tail) ! temp_dir = os.path.dirname(objects[0]) # preserve tree structure ! def_file = os.path.join (temp_dir, '%s.def' % modname) ! contents = ['EXPORTS'] for sym in (export_symbols or []): ! contents.append(' %s=_%s' % (sym, sym)) ! self.execute(write_file, (def_file, contents), ! "writing %s" % def_file) ! ! # Start building command line flags and options. ! ! for l in library_dirs: ! ld_args.append("/L%s" % os.path.normpath(l)) ! ! ld_args.extend(objects) # list of object files ! ! # name of dll file ! ld_args.extend([',',output_filename]) ! # no map file and start libraries ! ld_args.extend([',', ',']) ! ! for lib in libraries: ! # see if we find it and if there is a bcpp specific lib ! # (bcpp_xxx.lib) ! libfile = self.find_library_file(library_dirs, lib, debug) ! if libfile is None: ! ld_args.append(lib) ! # probably a BCPP internal library -- don't warn ! # self.warn('library %s not found.' % lib) ! else: ! # full name which prefers bcpp_xxx.lib over xxx.lib ! ld_args.append(libfile) ! # def file for export symbols ! ld_args.extend([',',def_file]) if extra_preargs: ld_args[:0] = extra_preargs if extra_postargs: ! ld_args.extend(extra_postargs) self.mkpath (os.path.dirname (output_filename)) *************** *** 326,338 **** def runtime_library_dir_option (self, dir): raise DistutilsPlatformError, \ ! "don't know how to set runtime library search path for MSVC++" def library_option (self, lib): return self.library_filename (lib) - - def find_library_file (self, dirs, lib): for dir in dirs: libfile = os.path.join (dir, self.library_filename (lib)) if os.path.exists (libfile): --- 350,379 ---- def runtime_library_dir_option (self, dir): raise DistutilsPlatformError, \ ! ("don't know how to set runtime library search path " ! "for Borland C++") def library_option (self, lib): return self.library_filename (lib) + def find_library_file (self, dirs, lib, debug=0): + # find library file + # bcpp_xxx.lib is better than xxx.lib + # and xxx_d.lib is better than xxx.lib if debug is set for dir in dirs: + if debug: + libfile = os.path.join ( + dir, self.library_filename ("bcpp_" + lib + "_d")) + if os.path.exists (libfile): + return libfile + libfile = os.path.join ( + dir, self.library_filename ("bcpp_" + lib)) + if os.path.exists (libfile): + return libfile + if debug: + libfile = os.path.join ( + dir, self.library_filename(lib + '_d')) + if os.path.exists (libfile): + return libfile libfile = os.path.join (dir, self.library_filename (lib)) if os.path.exists (libfile): From python-dev@python.org Wed Aug 2 02:08:04 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:08:04 -0700 Subject: [Python-checkins] CVS: distutils/distutils spawn.py,1.8,1.9 Message-ID: <200008020108.SAA10405@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv10389 Modified Files: spawn.py Log Message: Rene Liebscher: factor 'find_executable()' out of '_spawn_nt()'. Index: spawn.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/spawn.py,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** spawn.py 2000/03/26 21:47:00 1.8 --- spawn.py 2000/08/02 01:08:02 1.9 *************** *** 2,6 **** Provides the 'spawn()' function, a front-end to various platform- ! specific functions for launching another program in a sub-process.""" # created 1999/07/24, Greg Ward --- 2,8 ---- Provides the 'spawn()' function, a front-end to various platform- ! specific functions for launching another program in a sub-process. ! Also provides the 'find_executable()' to search the path for a given ! executable name. """ # created 1999/07/24, Greg Ward *************** *** 66,80 **** cmd = _nt_quote_args (cmd) if search_path: ! paths = string.split( os.environ['PATH'], os.pathsep) ! base,ext = os.path.splitext(executable) ! if (ext != '.exe'): ! executable = executable + '.exe' ! if not os.path.isfile(executable): ! paths.reverse() # go over the paths and keep the last one ! for p in paths: ! f = os.path.join( p, executable ) ! if os.path.isfile ( f ): ! # the file exists, we have a shot at spawn working ! executable = f if verbose: print string.join ([executable] + cmd[1:], ' ') --- 68,73 ---- cmd = _nt_quote_args (cmd) if search_path: ! # either we find one or it stays the same ! executable = find_executable(executable) or executable if verbose: print string.join ([executable] + cmd[1:], ' ') *************** *** 92,96 **** "command '%s' failed with exit status %d" % (cmd[0], rc) - def _spawn_posix (cmd, --- 85,88 ---- *************** *** 148,149 **** --- 140,166 ---- (cmd[0], status) # _spawn_posix () + + + def find_executable(executable, path=None): + """Try to find 'executable' in the directories listed in 'path' (a + string listing directories separated by 'os.pathsep'; defaults to + os.environ['PATH']). Returns the complete filename or None if not + found. + """ + if path is None: + path = os.environ['PATH'] + paths = string.split(path, os.pathsep) + (base, ext) = os.path.splitext(executable) + if (sys.platform == 'win32') and (ext != '.exe'): + executable = executable + '.exe' + if not os.path.isfile(executable): + for p in paths: + f = os.path.join(p, executable) + if os.path.isfile(f): + # the file exists, we have a shot at spawn working + return f + return None + else: + return executable + + # find_executable() From python-dev@python.org Wed Aug 2 02:09:13 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:09:13 -0700 Subject: [Python-checkins] CVS: distutils/distutils sysconfig.py,1.22,1.23 Message-ID: <200008020109.SAA10455@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv10445 Modified Files: sysconfig.py Log Message: Rene Liebscher: deleted unneeded hard-coded assignments of CC, RANLIB, etc. in '_init_nt()' (they were kludges for CygwinCCompiler and no longer needed). Index: sysconfig.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/sysconfig.py,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -r1.22 -r1.23 *** sysconfig.py 2000/06/27 01:59:43 1.22 --- sysconfig.py 2000/08/02 01:09:11 1.23 *************** *** 268,289 **** g['SO'] = '.pyd' - g['exec_prefix'] = EXEC_PREFIX - - # These are needed for the CygwinCCompiler and Mingw32CCompiler - # classes, which are just UnixCCompiler classes that happen to work on - # Windows. UnixCCompiler expects to find these values in sysconfig, so - # here they are. The fact that other Windows compilers don't need - # these values is pure luck (hmmm). - - # XXX I think these are now unnecessary... - - g['CC'] = "cc" # not gcc? - g['RANLIB'] = "ranlib" - g['AR'] = "ar" - g['OPT'] = "-O2" - g['SO'] = ".pyd" - g['LDSHARED'] = "ld" - g['CCSHARED'] = "" g['EXE'] = ".exe" --- 268,273 ---- g['SO'] = '.pyd' g['EXE'] = ".exe" + g['exec_prefix'] = EXEC_PREFIX From python-dev@python.org Wed Aug 2 02:31:58 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:31:58 -0700 Subject: [Python-checkins] CVS: distutils/distutils cygwinccompiler.py,1.3,1.4 Message-ID: <200008020131.SAA12174@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv11708 Modified Files: cygwinccompiler.py Log Message: Latest version from Rene Liebscher; major changes: - added big comment describing possible problems - look for and react to versions of gcc, ld, and dlltool; mainly this is done by the 'get_versions()' function and the CygwinCCompiler and Mingw32CCompiler constructors - move 'check_config_h()' to end of file and defer calling it until we need to (ie. in the CygwinCCompiler constructor) - lots of changes in 'link_shared_object()' -- mostly seems to be library and DLL stuff, but I don't follow it entirely Index: cygwinccompiler.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/cygwinccompiler.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** cygwinccompiler.py 2000/07/27 02:13:19 1.3 --- cygwinccompiler.py 2000/08/02 01:31:56 1.4 *************** *** 7,57 **** """ # created 2000/05/05, Rene Liebscher __revision__ = "$Id$" ! import os,sys,string ! from distutils import sysconfig from distutils.unixccompiler import UnixCCompiler - # Because these compilers aren't configured in Python's config.h file by - # default we should at least warn the user if he is using a unmodified - # version. - - def check_config_h(): - """Checks if the GCC compiler is mentioned in config.h. If it is not, - compiling probably doesn't work, so print a warning to stderr. - """ - - # XXX the result of the check should be returned! - - from distutils import sysconfig - import string,sys - try: - # It would probably better to read single lines to search. - # But we do this only once, and it is fast enough - f=open(sysconfig.get_config_h_filename()) - s=f.read() - f.close() - try: - # is somewhere a #ifdef __GNUC__ or something similar - string.index(s,"__GNUC__") - except ValueError: - sys.stderr.write ("warning: "+ - "Python's config.h doesn't seem to support your compiler.\n") - except IOError: - # if we can't read this file, we cannot say it is wrong - # the compiler will complain later about this file as missing - pass - - - # This is called when the module is imported, so we make this check only once - # XXX why not make it only when the compiler is needed? - check_config_h() - - class CygwinCCompiler (UnixCCompiler): compiler_type = 'cygwin' def __init__ (self, --- 7,58 ---- """ + # problems: + # + # * if you use a msvc compiled python version (1.5.2) + # 1. you have to insert a __GNUC__ section in its config.h + # 2. you have to generate a import library for its dll + # - create a def-file for python??.dll + # - create a import library using + # dlltool --dllname python15.dll --def python15.def \ + # --output-lib libpython15.a + # + # see also http://starship.python.net/crew/kernr/mingw32/Notes.html + # + # * We use put export_symbols in a def-file, and don't use + # --export-all-symbols because it doesn't worked reliable in some + # tested configurations. And because other windows compilers also + # need their symbols specified this no serious problem. + # + # tested configurations: + # + # * cygwin gcc 2.91.57/ld 2.9.4/dllwrap 0.2.4 works + # (after patching python's config.h and for C++ some other include files) + # see also http://starship.python.net/crew/kernr/mingw32/Notes.html + # * mingw32 gcc 2.95.2/ld 2.9.4/dllwrap 0.2.4 works + # (ld doesn't support -shared, so we use dllwrap) + # * cygwin gcc 2.95.2/ld 2.10.90/dllwrap 2.10.90 works now + # - its dllwrap doesn't work, there is a bug in binutils 2.10.90 + # see also ..... + # - using gcc -mdll instead dllwrap doesn't work without -static because + # it tries to link against dlls instead their import libraries. (If + # it finds the dll first.) + # By specifying -static we force ld to link against the import libraries, + # this is windows standard and there are normally not the necessary symbols + # in the dlls. + # created 2000/05/05, Rene Liebscher __revision__ = "$Id$" ! import os,sys from distutils.unixccompiler import UnixCCompiler + from distutils.file_util import write_file class CygwinCCompiler (UnixCCompiler): compiler_type = 'cygwin' + gcc_version = None + dllwrap_version = None + ld_version = None def __init__ (self, *************** *** 62,81 **** UnixCCompiler.__init__ (self, verbose, dry_run, force) # Hard-code GCC because that's what this is all about. # XXX optimization, warnings etc. should be customizable. ! self.set_executables(compiler='gcc -O -Wall', ! compiler_so='gcc -O -Wall', ! linker_exe='gcc', ! linker_so='dllwrap --target=i386-cygwin32') # cygwin and mingw32 need different sets of libraries ! self.dll_libraries=[ ! # cygwin shouldn't need msvcrt, ! # but without the dll's will crash ! # ( gcc version 2.91.57 ) ! # perhaps something about initialization ! # mingw32 needs it in all cases ! "msvcrt" ! ] # __init__ () --- 63,105 ---- UnixCCompiler.__init__ (self, verbose, dry_run, force) + if check_config_h()<=0: + self.warn( + "Python's config.h doesn't seem to support your compiler. " + "Compiling may fail because of undefined preprocessor macros.") + + (self.gcc_version, self.ld_version, self.dllwrap_version) = \ + get_versions() + sys.stderr.write(self.compiler_type + ": gcc %s, ld %s, dllwrap %s\n" % + (self.gcc_version, + self.ld_version, + self.dllwrap_version) ) + + # ld_version >= "2.10.90" should also be able to use + # gcc -mdll instead of dllwrap + # Older dllwraps had own version numbers, newer ones use the + # same as the rest of binutils ( also ld ) + # dllwrap 2.10.90 is buggy + if self.ld_version >= "2.10.90": + self.linker = "gcc" + else: + self.linker = "dllwrap" + # Hard-code GCC because that's what this is all about. # XXX optimization, warnings etc. should be customizable. ! self.set_executables(compiler='gcc -mcygwin -O -Wall', ! compiler_so='gcc -mcygwin -mdll -O -Wall', ! linker_exe='gcc -mcygwin', ! linker_so=('%s -mcygwin -mdll -static' % ! self.linker)) # cygwin and mingw32 need different sets of libraries ! if self.gcc_version == "2.91.57": ! # cygwin shouldn't need msvcrt, but without the dlls will crash ! # (gcc version 2.91.57) -- perhaps something about initialization ! self.dll_libraries=["msvcrt"] ! self.warn( ! "Consider upgrading to a newer version of gcc") ! else: ! self.dll_libraries=[] # __init__ () *************** *** 94,155 **** build_temp=None): ! if libraries == None: ! libraries = [] ! # Additional libraries: the python library is always needed on ! # Windows we need the python version without the dot, eg. '15' ! ! pythonlib = ("python%d%d" % ! (sys.hexversion >> 24, (sys.hexversion >> 16) & 0xff)) ! libraries.append(pythonlib) libraries.extend(self.dll_libraries) ! # name of extension ! # XXX WRONG WRONG WRONG ! # this is NOT the place to make guesses about Python namespaces; ! # that MUST be done in build_ext.py ! ! if not debug: ! ext_name = os.path.basename(output_filename)[:-len(".pyd")] ! else: ! ext_name = os.path.basename(output_filename)[:-len("_d.pyd")] ! ! def_file = os.path.join(build_temp, ext_name + ".def") ! #exp_file = os.path.join(build_temp, ext_name + ".exp") ! #lib_file = os.path.join(build_temp, 'lib' + ext_name + ".a") ! ! # Make .def file ! # (It would probably better to check if we really need this, ! # but for this we had to insert some unchanged parts of ! # UnixCCompiler, and this is not what we want.) ! f = open(def_file,"w") ! f.write("EXPORTS\n") # intro ! if export_symbols == None: ! # export a function "init" + ext_name ! f.write("init" + ext_name + "\n") else: ! # if there are more symbols to export write them into f for sym in export_symbols: ! f.write(sym+"\n") ! f.close() ! ! if extra_preargs == None: ! extra_preargs = [] ! ! extra_preargs = extra_preargs + [ ! #"--verbose", ! #"--output-exp",exp_file, ! #"--output-lib",lib_file, ! "--def",def_file ! ] ! # who wants symbols and a many times larger output file # should explicitly switch the debug mode on ! # otherwise we let dllwrap strip the output file # (On my machine unstripped_file = stripped_file + 254KB # 10KB < stripped_file < ??100KB ) if not debug: ! extra_preargs = extra_preargs + ["-s"] UnixCCompiler.link_shared_object(self, --- 118,182 ---- build_temp=None): ! # use separate copies, so can modify the lists ! extra_preargs = list(extra_preargs or []) ! libraries = list(libraries or []) ! # Additional libraries libraries.extend(self.dll_libraries) + + # we want to put some files in the same directory as the + # object files are, build_temp doesn't help much ! # where are the object files ! temp_dir = os.path.dirname(objects[0]) ! # name of dll to give the helper files (def, lib, exp) the same name ! (dll_name, dll_extension) = os.path.splitext( ! os.path.basename(output_filename)) ! ! # generate the filenames for these files ! def_file = None # this will be done later, if necessary ! exp_file = os.path.join(temp_dir, dll_name + ".exp") ! lib_file = os.path.join(temp_dir, 'lib' + dll_name + ".a") ! ! #extra_preargs.append("--verbose") ! if self.linker == "dllwrap": ! extra_preargs.extend([#"--output-exp",exp_file, ! "--output-lib",lib_file, ! ]) else: ! # doesn't work: bfd_close build\...\libfoo.a: Invalid operation ! extra_preargs.extend([#"-Wl,--out-implib,%s" % lib_file, ! ]) ! ! # check what we got in export_symbols ! if export_symbols is not None: ! # Make .def file ! # (It would probably better to check if we really need this, ! # but for this we had to insert some unchanged parts of ! # UnixCCompiler, and this is not what we want.) ! def_file = os.path.join(temp_dir, dll_name + ".def") ! contents = [ ! "LIBRARY %s" % os.path.basename(output_filename), ! "EXPORTS"] for sym in export_symbols: ! contents.append(sym) ! self.execute(write_file, (def_file, contents), ! "writing %s" % def_file) ! ! if def_file: ! if self.linker == "dllwrap": ! # for dllwrap we have to use a special option ! extra_preargs.append("--def") ! # for gcc/ld it is specified as any other object file ! extra_preargs.append(def_file) ! # who wants symbols and a many times larger output file # should explicitly switch the debug mode on ! # otherwise we let dllwrap/ld strip the output file # (On my machine unstripped_file = stripped_file + 254KB # 10KB < stripped_file < ??100KB ) if not debug: ! extra_preargs.append("-s") UnixCCompiler.link_shared_object(self, *************** *** 160,164 **** library_dirs, runtime_library_dirs, ! None, # export_symbols, we do this with our def-file debug, extra_preargs, --- 187,191 ---- library_dirs, runtime_library_dirs, ! None, # export_symbols, we do this in our def-file debug, extra_preargs, *************** *** 182,199 **** CygwinCCompiler.__init__ (self, verbose, dry_run, force) self.set_executables(compiler='gcc -mno-cygwin -O -Wall', ! compiler_so='gcc -mno-cygwin -O -Wall', linker_exe='gcc -mno-cygwin', ! linker_so='dllwrap' ! + ' --target=i386-mingw32' ! + ' --entry _DllMain@12') ! # mingw32 doesn't really need 'target' and cygwin too (it seems, ! # it is enough to specify a different entry point) ! ! # no additional libraries need ! # (only msvcrt, which is already added by CygwinCCompiler) ! # __init__ () ! # class Mingw32CCompiler --- 209,322 ---- CygwinCCompiler.__init__ (self, verbose, dry_run, force) + + # A real mingw32 doesn't need to specify a different entry point, + # but cygwin 2.91.57 in no-cygwin-mode needs it. + if self.gcc_version <= "2.91.57": + entry_point = '--entry _DllMain@12' + else: + entry_point = '' self.set_executables(compiler='gcc -mno-cygwin -O -Wall', ! compiler_so='gcc -mno-cygwin -mdll -O -Wall', linker_exe='gcc -mno-cygwin', ! linker_so='%s -mno-cygwin -mdll -static %s' ! % (self.linker, entry_point)) ! # Maybe we should also append -mthreads, but then the finished ! # dlls need another dll (mingwm10.dll see Mingw32 docs) ! # (-mthreads: Support thread-safe exception handling on `Mingw32') ! ! # no additional libraries needed ! self.dll_libraries=[] ! # __init__ () ! # class Mingw32CCompiler + + # Because these compilers aren't configured in Python's config.h file by + # default, we should at least warn the user if he is using a unmodified + # version. + + def check_config_h(): + """Checks if the GCC compiler is mentioned in config.h. If it is not, + compiling probably doesn't work. + """ + # return values + # 2: OK, python was compiled with GCC + # 1: OK, python's config.h mentions __GCC__ + # 0: uncertain, because we couldn't check it + # -1: probably not OK, because we didn't found it in config.h + # You could check check_config_h()>0 => OK + + from distutils import sysconfig + import string,sys + # if sys.version contains GCC then python was compiled with + # GCC, and the config.h file should be OK + if -1 == string.find(sys.version,"GCC"): + pass # go to the next test + else: + return 2 + + try: + # It would probably better to read single lines to search. + # But we do this only once, and it is fast enough + f=open(sysconfig.get_config_h_filename()) + s=f.read() + f.close() + + # is somewhere a #ifdef __GNUC__ or something similar + if -1 == string.find(s,"__GNUC__"): + return -1 + else: + return 1 + except IOError: + # if we can't read this file, we cannot say it is wrong + # the compiler will complain later about this file as missing + pass + return 0 + + def get_versions(): + """ Try to find out the versions of gcc, ld and dllwrap. + If not possible it returns None for it. + """ + from distutils.version import StrictVersion + from distutils.spawn import find_executable + import re + + gcc_exe = find_executable('gcc') + if gcc_exe: + out = os.popen(gcc_exe + ' -dumpversion','r') + out_string = out.read() + out.close() + result = re.search('(\d+\.\d+\.\d+)',out_string) + if result: + gcc_version = StrictVersion(result.group(1)) + else: + gcc_version = None + else: + gcc_version = None + ld_exe = find_executable('ld') + if ld_exe: + out = os.popen(ld_exe + ' -v','r') + out_string = out.read() + out.close() + result = re.search('(\d+\.\d+\.\d+)',out_string) + if result: + ld_version = StrictVersion(result.group(1)) + else: + ld_version = None + else: + ld_version = None + dllwrap_exe = find_executable('dllwrap') + if dllwrap_exe: + out = os.popen(dllwrap_exe + ' --version','r') + out_string = out.read() + out.close() + result = re.search(' (\d+\.\d+\.\d+)',out_string) + if result: + dllwrap_version = StrictVersion(result.group(1)) + else: + dllwrap_version = None + else: + dllwrap_version = None + return (gcc_version, ld_version, dllwrap_version) + From python-dev@python.org Wed Aug 2 02:34:21 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:34:21 -0700 Subject: [Python-checkins] CVS: distutils/distutils/command install_lib.py,1.25,1.26 Message-ID: <200008020134.SAA12324@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils/command In directory slayer.i.sourceforge.net:/tmp/cvs-serv12313/command Modified Files: install_lib.py Log Message: Rene Liebscher: fix 'skipping byte-compilation' message for grammatical consistency. Index: install_lib.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/command/install_lib.py,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -r1.25 -r1.26 *** install_lib.py 2000/05/27 17:27:23 1.25 --- install_lib.py 2000/08/02 01:34:18 1.26 *************** *** 75,79 **** compile_msg = "byte-compiling %s to %s" % \ (f, os.path.basename (out_fn)) ! skip_msg = "byte-compilation of %s skipped" % f self.make_file (f, out_fn, compile, (f,), compile_msg, skip_msg) --- 75,79 ---- compile_msg = "byte-compiling %s to %s" % \ (f, os.path.basename (out_fn)) ! skip_msg = "skipping byte-compilation of %s" % f self.make_file (f, out_fn, compile, (f,), compile_msg, skip_msg) From python-dev@python.org Wed Aug 2 02:37:33 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:37:33 -0700 Subject: [Python-checkins] CVS: distutils/distutils util.py,1.40,1.41 Message-ID: <200008020137.SAA12539@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv12526 Modified Files: util.py Log Message: Added the 'execute()' function (moved here from cmd.py with minor tweakage). Index: util.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/util.py,v retrieving revision 1.40 retrieving revision 1.41 diff -C2 -r1.40 -r1.41 *** util.py 2000/08/02 00:37:32 1.40 --- util.py 2000/08/02 01:37:30 1.41 *************** *** 224,225 **** --- 224,251 ---- # split_quoted () + + + def execute (func, args, msg=None, verbose=0, dry_run=0): + """Perform some action that affects the outside world (eg. by writing + to the filesystem). Such actions are special because they are disabled + by the 'dry_run' flag, and announce themselves if 'verbose' is true. + This method takes care of all that bureaucracy for you; all you have to + do is supply the function to call and an argument tuple for it (to + embody the "external action" being performed), and an optional message + to print. + """ + # Generate a message if we weren't passed one + if msg is None: + msg = "%s%s" % (func.__name__, `args`) + if msg[-2:] == ',)': # correct for singleton tuple + msg = msg[0:-2] + ')' + + # Print it if verbosity level is high enough + if verbose: + print msg + + # And do it, as long as we're not in dry-run mode + if not dry_run: + apply(func, args) + + # execute() From python-dev@python.org Wed Aug 2 02:37:55 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:37:55 -0700 Subject: [Python-checkins] CVS: distutils/distutils cmd.py,1.20,1.21 Message-ID: <200008020137.SAA12560@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv12552 Modified Files: cmd.py Log Message: Replaced 'execute()' method with a thin wrapper around 'util.execute()'. Index: cmd.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/cmd.py,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -r1.20 -r1.21 *** cmd.py 2000/07/27 02:13:19 1.20 --- cmd.py 2000/08/02 01:37:53 1.21 *************** *** 319,347 **** def execute (self, func, args, msg=None, level=1): ! """Perform some action that affects the outside world (eg. by ! writing to the filesystem). Such actions are special because they ! should be disabled by the "dry run" flag, and should announce ! themselves if the current verbosity level is high enough. This ! method takes care of all that bureaucracy for you; all you have to ! do is supply the function to call and an argument tuple for it (to ! embody the "external action" being performed), a message to print ! if the verbosity level is high enough, and an optional verbosity ! threshold. ! """ ! ! # Generate a message if we weren't passed one ! if msg is None: ! msg = "%s %s" % (func.__name__, `args`) ! if msg[-2:] == ',)': # correct for singleton tuple ! msg = msg[0:-2] + ')' ! ! # Print it if verbosity level is high enough ! self.announce (msg, level) ! ! # And do it, as long as we're not in dry-run mode ! if not self.dry_run: ! apply (func, args) ! ! # execute() --- 319,323 ---- def execute (self, func, args, msg=None, level=1): ! util.execute(func, args, msg, self.verbose >= level, self.dry_run) From python-dev@python.org Wed Aug 2 02:38:23 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:38:23 -0700 Subject: [Python-checkins] CVS: distutils/distutils ccompiler.py,1.30,1.31 Message-ID: <200008020138.SAA12590@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv12580 Modified Files: ccompiler.py Log Message: Added 'execute()' method, a thin wrapper around 'util.execute() (just like the one in cmd.py). Index: ccompiler.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/ccompiler.py,v retrieving revision 1.30 retrieving revision 1.31 diff -C2 -r1.30 -r1.31 *** ccompiler.py 2000/07/27 02:13:19 1.30 --- ccompiler.py 2000/08/02 01:38:20 1.31 *************** *** 16,20 **** from distutils.dir_util import mkpath from distutils.dep_util import newer_pairwise, newer_group ! from distutils.util import split_quoted --- 16,20 ---- from distutils.dir_util import mkpath from distutils.dep_util import newer_pairwise, newer_group ! from distutils.util import split_quoted, execute *************** *** 784,787 **** --- 784,790 ---- def warn (self, msg): sys.stderr.write ("warning: %s\n" % msg) + + def execute (self, func, args, msg=None, level=1): + execute(func, args, msg, self.verbose >= level, self.dry_run) def spawn (self, cmd): From python-dev@python.org Wed Aug 2 02:42:14 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:42:14 -0700 Subject: [Python-checkins] CVS: distutils mksnap,1.6,1.7 Message-ID: <200008020142.SAA12922@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv12910 Modified Files: mksnap Log Message: Source distributions now go in 'dist' directory, so expect them there. Index: mksnap =================================================================== RCS file: /cvsroot/python/distutils/mksnap,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** mksnap 2000/06/08 01:19:18 1.6 --- mksnap 2000/08/02 01:42:11 1.7 *************** *** 1,3 **** #!/bin/sh ./snapshot_setup.py sdist ! mv distutils-*.{tar,zip}* www/download --- 1,3 ---- #!/bin/sh ./snapshot_setup.py sdist ! mv dist/distutils-*.{tar,zip}* www/download From python-dev@python.org Wed Aug 2 02:44:47 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:44:47 -0700 Subject: [Python-checkins] CVS: distutils/distutils/command bdist.py,1.15,1.16 Message-ID: <200008020144.SAA13026@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils/command In directory slayer.i.sourceforge.net:/tmp/cvs-serv13015 Modified Files: bdist.py Log Message: Added 'wininst' to the 'format_commands' list, so it's included in the --help-formats output. Also moved that list up so it's more obvious when adding formats. Index: bdist.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/command/bdist.py,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -r1.15 -r1.16 *** bdist.py 2000/07/05 03:07:18 1.15 --- bdist.py 2000/08/02 01:44:44 1.16 *************** *** 53,56 **** --- 53,61 ---- 'nt': 'zip', } + # Establish the preferred order (for the --help-formats option). + format_commands = ['rpm', 'gztar', 'bztar', 'ztar', 'tar', + 'wininst', 'zip'] + + # And the real information. format_command = { 'rpm': ('bdist_rpm', "RPM distribution"), 'gztar': ('bdist_dumb', "gzip'ed tar file"), *************** *** 58,67 **** 'ztar': ('bdist_dumb', "compressed tar file"), 'tar': ('bdist_dumb', "tar file"), - 'zip': ('bdist_dumb', "ZIP file"), 'wininst': ('bdist_wininst', "Windows executable installer"), } - # establish the preferred order - format_commands = ['rpm', 'gztar', 'bztar', 'ztar', 'tar', 'zip'] --- 63,70 ---- 'ztar': ('bdist_dumb', "compressed tar file"), 'tar': ('bdist_dumb', "tar file"), 'wininst': ('bdist_wininst', "Windows executable installer"), + 'zip': ('bdist_dumb', "ZIP file"), } From python-dev@python.org Wed Aug 2 02:49:43 2000 From: python-dev@python.org (Greg Ward) Date: Tue, 1 Aug 2000 18:49:43 -0700 Subject: [Python-checkins] CVS: distutils/distutils sysconfig.py,1.23,1.24 Message-ID: <200008020149.SAA13303@slayer.i.sourceforge.net> Update of /cvsroot/python/distutils/distutils In directory slayer.i.sourceforge.net:/tmp/cvs-serv13293 Modified Files: sysconfig.py Log Message: Typo fix. Index: sysconfig.py =================================================================== RCS file: /cvsroot/python/distutils/distutils/sysconfig.py,v retrieving revision 1.23 retrieving revision 1.24 diff -C2 -r1.23 -r1.24 *** sysconfig.py 2000/08/02 01:09:11 1.23 --- sysconfig.py 2000/08/02 01:49:40 1.24 *************** *** 78,82 **** elif os.name == "mac": ! if platform_specific: if standard_lib: return os.path.join(EXEC_PREFIX, "Mac", "Plugins") --- 78,82 ---- elif os.name == "mac": ! if plat_specific: if standard_lib: return os.path.join(EXEC_PREFIX, "Mac", "Plugins") From python-dev@python.org Wed Aug 2 03:35:10 2000 From: python-dev@python.org (Guido van Rossum) Date: Tue, 1 Aug 2000 19:35:10 -0700 Subject: [Python-checkins] CVS: python/dist/src LICENSE,NONE,1.1 Message-ID: <200008020235.TAA23800@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src In directory slayer.i.sourceforge.net:/tmp/cvs-serv23792 Added Files: LICENSE Log Message: Adding a LICENSE file so we can have it in the 1.6 release. --- NEW FILE --- # Placeholder for license information. From python-dev@python.org Wed Aug 2 03:59:04 2000 From: python-dev@python.org (Guido van Rossum) Date: Tue, 1 Aug 2000 19:59:04 -0700 Subject: [Python-checkins] CVS: python/dist/src LICENSE,1.1,1.1.2.1 Message-ID: <200008020259.TAA25379@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src In directory slayer.i.sourceforge.net:/tmp/cvs-serv25370 Modified Files: Tag: cnri-16-start LICENSE Log Message: License ext as Bob Kahn wants it. Index: LICENSE =================================================================== RCS file: /cvsroot/python/python/dist/src/LICENSE,v retrieving revision 1.1 retrieving revision 1.1.2.1 diff -C2 -r1.1 -r1.1.2.1 *** LICENSE 2000/08/02 02:35:08 1.1 --- LICENSE 2000/08/02 02:59:02 1.1.2.1 *************** *** 1 **** ! # Placeholder for license information. --- 1,117 ---- ! A. HISTORY OF THE SOFTWARE ! ! Python originated in 1991 at Stichting Mathematisch Centrum (CWI) in ! the Netherlands as an outgrowth of a language called ABC. Its ! principal author was Guido van Rossum, although it included smaller ! contributions from others at CWI and elsewhere. The last version of ! Python issued by CWI was Python 1.2. In 1995, Mr. van Rossum ! continued his work on Python at the Corporation for National Research ! Initiatives (CNRI) in Reston, Virginia where several versions of the ! software were generated. Python 1.6 is the last of the versions ! developed at CNRI. ! ! ! ! B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING Python 1.6, beta 1 ! ! ! 1. CNRI LICENSE AGREEMENT ! ! PYTHON 1.6, beta 1 ! ! CNRI OPEN SOURCE LICENSE AGREEMENT ! ! ! IMPORTANT: PLEASE READ THE FOLLOWING AGREEMENT CAREFULLY. ! ! BY CLICKING ON "ACCEPT" WHERE INDICATED BELOW, OR BY COPYING, ! INSTALLING OR OTHERWISE USING PYTHON 1.6, beta 1 SOFTWARE, YOU ARE ! DEEMED TO HAVE AGREED TO THE TERMS AND CONDITIONS OF THIS LICENSE ! AGREEMENT. ! ! 1. This LICENSE AGREEMENT is between the Corporation for National ! Research Initiatives, having an office at 1895 Preston White Drive, ! Reston, VA 20191 ("CNRI"), and the Individual or Organization ! ("Licensee") accessing and otherwise using Python 1.6, beta 1 software ! in source or binary form and its associated documentation, as released ! at the www.python.org Internet site on August 5, 2000 ("Python ! 1.6b1"). ! ! 2. Subject to the terms and conditions of this License Agreement, CNRI ! hereby grants Licensee a nonexclusive, royalty-free, world-wide ! license to reproduce, analyze, test, perform and/or display publicly, ! prepare derivative works, distribute, and otherwise use Python 1.6b1 ! alone or in any derivative version, provided, however, that CNRI's ! License Agreement is retained in Python 1.6b1, alone or in any ! derivative version prepared by Licensee. ! ! Alternately, in lieu of CNRI's License Agreement, Licensee may ! substitute the following text (omitting the quotes): "Python 1.6, beta ! 1, is made available subject to the terms and conditions in CNRI's ! License Agreement. This Agreement may be located on the Internet ! using the following unique, persistent identifier (known as a handle): ! 1895.22/1011. This Agreement may also be obtained from a proxy server ! on the Internet using the URL:http://hdl.handle.net/1895.22/1011". ! ! 3. In the event Licensee prepares a derivative work that is based on ! or incorporates Python 1.6b1or any part thereof, and wants to make the ! derivative work available to the public as provided herein, then ! Licensee hereby agrees to indicate in any such work the nature of the ! modifications made to Python 1.6b1. ! ! 4. CNRI is making Python 1.6b1 available to Licensee on an "AS IS" ! basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR ! IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND ! DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS ! FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6b1 WILL NOT ! INFRINGE ANY THIRD PARTY RIGHTS. ! ! 5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE ! SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS ! AS A RESULT OF USING, MODIFYING OR DISTRIBUTING PYTHON 1.6b1, OR ANY ! DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. SOME ! STATES DO NOT ALLOW THE LIMITATION OR EXCLUSION OF LIABILITY SO THE ! ABOVE DISCLAIMER MAY NOT APPLY TO LICENSEE. ! ! 6. This License Agreement will automatically terminate upon a material ! breach of its terms and conditions. ! ! 7. This License Agreement shall be governed by and interpreted in all ! respects by the law of the State of Virginia, excluding conflict of ! law provisions. Nothing in this License Agreement shall be deemed to ! create any relationship of agency, partnership, or joint venture ! between CNRI and Licensee. This License Agreement does not grant ! permission to use CNRI trademarks or trade name in a trademark sense ! to endorse or promote products or services of Licensee, or any third ! party. ! ! 8. By clicking on the "ACCEPT" button where indicated, or by copying ! installing or otherwise using Python 1.6b1, Licensee agrees to be ! bound by the terms and conditions of this License Agreement. ! ! ACCEPT ! ! ! ! 2. CWI PERMISSIONS STATEMENT AND DISCLAIMER ! ! Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, ! The Netherlands. All rights reserved. ! ! Permission to use, copy, modify, and distribute this software and its ! documentation for any purpose and without fee is hereby granted, ! provided that the above copyright notice appear in all copies and that ! both that copyright notice and this permission notice appear in ! supporting documentation, and that the name of Stichting Mathematisch ! Centrum or CWI not be used in advertising or publicity pertaining to ! distribution of the software without specific, written prior ! permission. ! ! STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO ! THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND ! FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE ! FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT ! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ! From python-dev@python.org Wed Aug 2 14:41:21 2000 From: python-dev@python.org (A.M. Kuchling) Date: Wed, 2 Aug 2000 06:41:21 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules pypcre.c,2.21,2.22 Message-ID: <200008021341.GAA15122@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv14555 Modified Files: pypcre.c Log Message: Fix for bug #110651 (Jitterbug PR#343): only use the low 8 bits of an octal escape, as documented in the comment for the check_escape() function Index: pypcre.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/pypcre.c,v retrieving revision 2.21 retrieving revision 2.22 diff -C2 -r2.21 -r2.22 *** pypcre.c 2000/07/31 15:28:04 2.21 --- pypcre.c 2000/08/02 13:41:18 2.22 *************** *** 1033,1037 **** { if (( pcre_ctypes[ ptr[i] ] & ctype_odigit) != 0) ! c = c * 8 + ptr[i]-'0'; else break; /* Non-octal character--break out of the loop */ --- 1033,1037 ---- { if (( pcre_ctypes[ ptr[i] ] & ctype_odigit) != 0) ! c = (c * 8 + ptr[i]-'0') & 255; else break; /* Non-octal character--break out of the loop */ From python-dev@python.org Wed Aug 2 21:46:54 2000 From: python-dev@python.org (Guido van Rossum) Date: Wed, 2 Aug 2000 13:46:54 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules fcntlmodule.c,2.23,2.24 Message-ID: <200008022046.NAA14885@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv14876 Modified Files: fcntlmodule.c Log Message: Rob Hooft (Patch #101046): use PyArg_ParseTuple everywhere. Index: fcntlmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/fcntlmodule.c,v retrieving revision 2.23 retrieving revision 2.24 diff -C2 -r2.23 -r2.24 *** fcntlmodule.c 2000/07/21 06:00:07 2.23 --- fcntlmodule.c 2000/08/02 20:46:51 2.24 *************** *** 38,42 **** char buf[1024]; ! if (PyArg_Parse(args, "(iis#)", &fd, &code, &str, &len)) { if (len > sizeof buf) { PyErr_SetString(PyExc_ValueError, --- 38,42 ---- char buf[1024]; ! if (PyArg_ParseTuple(args, "iis#:fcntl", &fd, &code, &str, &len)) { if (len > sizeof buf) { PyErr_SetString(PyExc_ValueError, *************** *** 56,65 **** PyErr_Clear(); ! if (PyArg_Parse(args, "(ii)", &fd, &code)) ! arg = 0; ! else { ! PyErr_Clear(); ! if (!PyArg_Parse(args, "(iii)", &fd, &code, &arg)) ! return NULL; } Py_BEGIN_ALLOW_THREADS --- 56,63 ---- PyErr_Clear(); ! arg = 0; ! if (!PyArg_ParseTuple(args, "ii|i;fcntl requires 2 integers and optionally a third integer or a string", ! &fd, &code, &arg)) { ! return NULL; } Py_BEGIN_ALLOW_THREADS *************** *** 80,84 **** is defined by op and is operating system dependent. Typically these\n\ codes can be retrieved from the library module FCNTL. The argument arg\n\ ! is optional, and defaults to 0; it may be an int or a string."; --- 78,87 ---- is defined by op and is operating system dependent. Typically these\n\ codes can be retrieved from the library module FCNTL. The argument arg\n\ ! is optional, and defaults to 0; it may be an int or a string. If arg is\n\ ! given as a string, the return value of fcntl is a string of that length,\n\ ! containing the resulting value put in the arg buffer by the operating system.\n\ ! The length of the arg string is not allowed to exceed 1024 bytes. If the arg\n\ ! given is an integer or if none is specified, the result value is an integer\n\ ! corresponding to the return value of the fcntl call in the C code."; *************** *** 96,100 **** char buf[1024]; ! if (PyArg_Parse(args, "(iis#)", &fd, &code, &str, &len)) { if (len > sizeof buf) { PyErr_SetString(PyExc_ValueError, --- 99,103 ---- char buf[1024]; ! if (PyArg_ParseTuple(args, "iis#:ioctl", &fd, &code, &str, &len)) { if (len > sizeof buf) { PyErr_SetString(PyExc_ValueError, *************** *** 114,123 **** PyErr_Clear(); ! if (PyArg_Parse(args, "(ii)", &fd, &code)) ! arg = 0; ! else { ! PyErr_Clear(); ! if (!PyArg_Parse(args, "(iii)", &fd, &code, &arg)) ! return NULL; } Py_BEGIN_ALLOW_THREADS --- 117,124 ---- PyErr_Clear(); ! arg = 0; ! if (!PyArg_ParseTuple(args, "ii|i;ioctl requires 2 integers and optionally a third integer or a string", ! &fd, &code, &arg)) { ! return NULL; } Py_BEGIN_ALLOW_THREADS *************** *** 137,141 **** is defined by op and is operating system dependent. Typically these\n\ codes can be retrieved from the library module IOCTL. The argument arg\n\ ! is optional, and defaults to 0; it may be an int or a string."; --- 138,147 ---- is defined by op and is operating system dependent. Typically these\n\ codes can be retrieved from the library module IOCTL. The argument arg\n\ ! is optional, and defaults to 0; it may be an int or a string. If arg is\n\ ! given as a string, the return value of ioctl is a string of that length,\n\ ! containing the resulting value put in the arg buffer by the operating system.\n\ ! The length of the arg string is not allowed to exceed 1024 bytes. If the arg\n\ ! given is an integer or if none is specified, the result value is an integer\n\ ! corresponding to the return value of the ioctl call in the C code."; *************** *** 149,153 **** int ret; ! if (!PyArg_Parse(args, "(ii)", &fd, &code)) return NULL; --- 155,159 ---- int ret; ! if (!PyArg_ParseTuple(args, "ii:flock", &fd, &code)) return NULL; *************** *** 274,281 **** static PyMethodDef fcntl_methods[] = { ! {"fcntl", fcntl_fcntl, 0, fcntl_doc}, ! {"ioctl", fcntl_ioctl, 0, ioctl_doc}, ! {"flock", fcntl_flock, 0, flock_doc}, ! {"lockf", fcntl_lockf, 1, lockf_doc}, {NULL, NULL} /* sentinel */ }; --- 280,287 ---- static PyMethodDef fcntl_methods[] = { ! {"fcntl", fcntl_fcntl, METH_VARARGS, fcntl_doc}, ! {"ioctl", fcntl_ioctl, METH_VARARGS, ioctl_doc}, ! {"flock", fcntl_flock, METH_VARARGS, flock_doc}, ! {"lockf", fcntl_lockf, METH_VARARGS, lockf_doc}, {NULL, NULL} /* sentinel */ }; From python-dev@python.org Wed Aug 2 21:53:53 2000 From: python-dev@python.org (Fred L. Drake) Date: Wed, 2 Aug 2000 13:53:53 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libfcntl.tex,1.22,1.23 Message-ID: <200008022053.NAA15397@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv15381/lib Modified Files: libfcntl.tex Log Message: Rob Hooft : Description of fcntl(): Added description of what can go wrong. Index: libfcntl.tex =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/lib/libfcntl.tex,v retrieving revision 1.22 retrieving revision 1.23 diff -C2 -r1.22 -r1.23 *** libfcntl.tex 2000/04/03 20:13:53 1.22 --- libfcntl.tex 2000/08/02 20:53:51 1.23 *************** *** 31,36 **** data is copied to a buffer whose address is passed to the C \cfunction{fcntl()} call. The return value after a successful call ! is the contents of the buffer, converted to a string object. In ! case the \cfunction{fcntl()} fails, an \exception{IOError} is raised. \end{funcdesc} --- 31,42 ---- data is copied to a buffer whose address is passed to the C \cfunction{fcntl()} call. The return value after a successful call ! is the contents of the buffer, converted to a string object. The length ! of the returned string will be the same as the length of the \var{arg} ! argument. This is limited to 1024 bytes. If the information returned ! in the buffer by the operating system is larger than 1024 bytes, ! this is most likely to result in a segmentation violation or a more ! subtle data corruption. ! ! If the \cfunction{fcntl()} fails, an \exception{IOError} is raised. \end{funcdesc} From python-dev@python.org Wed Aug 2 22:29:33 2000 From: python-dev@python.org (Guido van Rossum) Date: Wed, 2 Aug 2000 14:29:33 -0700 Subject: [Python-checkins] CVS: python/dist/src README,1.85,1.85.2.1 Message-ID: <200008022129.OAA26057@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src In directory slayer.i.sourceforge.net:/tmp/cvs-serv26035 Modified Files: Tag: cnri-16-start README Log Message: Changes pertaining to the new license, changed email addresses, and so on. Index: README =================================================================== RCS file: /cvsroot/python/python/dist/src/README,v retrieving revision 1.85 retrieving revision 1.85.2.1 diff -C2 -r1.85 -r1.85.2.1 *** README 2000/04/11 17:11:09 1.85 --- README 2000/08/02 21:29:30 1.85.2.1 *************** *** 1,8 **** ! This is Python version 1.6 ! ========================== ! There are various alpha and beta versions -- these are distinguishable ! through Include/patchlevel.h or by the name of the top-level directory ! and the tar file. --- 1,14 ---- ! This is Python version 1.6 beta 1 (1.6b1) ! ========================================= ! License information ! ------------------- ! ! Copyright (c) 1991-1995, Stichting Mathematisch Centrum. ! All rights reserved. ! ! See the file "LICENSE" for information on terms & conditions for ! accessing and otherwise using Python 1.6b1 and for a DISCLAIMER OF ALL ! WARRANTIES. *************** *** 31,49 **** - A modest plug - ------------- - - ************************************************************************ - * Without your support, I won't be able to continue to work on Python! * - ************************************************************************ - - If you use Python, please consider joining the Python Software - Activity (PSA). See http://www.python.org/psa/. - - Organizations that make heavy use of Python are especially encouraged - to become corporate members -- or better still, to join the Python - Consortium (see http://www.python.org/consortium/). - - How do I learn Python? ---------------------- --- 37,40 ---- *************** *** 57,71 **** - Copyright issues - ---------------- - - Python is COPYRIGHTED but free to use for all. See the full copyright - notice at the end of this file and in the file Misc/COPYRIGHT. - - The Python distribution is *not* affected by the GNU Public Licence - (GPL). There are interfaces to some GNU code but these are entirely - optional and no GNU code is distributed with Python. - - Build instructions ================== --- 48,51 ---- *************** *** 680,684 **** Misc/python-mode.el. Originally written by the famous Tim Peters, it is now maintained by the equally famous Barry Warsaw ! . The latest version, along with various other contributed Python-related Emacs goodies, is online at . And if you are planning to --- 660,664 ---- Misc/python-mode.el. Originally written by the famous Tim Peters, it is now maintained by the equally famous Barry Warsaw ! . The latest version, along with various other contributed Python-related Emacs goodies, is online at . And if you are planning to *************** *** 723,734 **** ! Bug reports ! ----------- ! Bugs are best reported to the comp.lang.python newsgroup (or the ! Python mailing list) -- see the section "Newsgroups" above. Before ! posting, check the newsgroup archives (see above) to see if your bug ! has already been reported! If you don't want to go public, send them ! to me: . --- 703,711 ---- ! Bug reports and patches ! ----------------------- ! To report a bug or contribute a patch, use the Python project at ! SourceForge: http://sourceforge.net/projects/python. *************** *** 836,889 **** tags, TAGS Tags files for vi and Emacs - - Author's address - ================ - - Guido van Rossum - CNRI - 1895 Preston White Drive - Reston, VA 20191 - USA - - E-mail: guido@cnri.reston.va.us or guido@python.org - - - - Copyright notice - ================ - - The Python source is copyrighted, but you can freely use and copy it - as long as you don't change or remove the copyright notice: - - ---------------------------------------------------------------------- - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. ! STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH ! REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF ! MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH ! CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL ! DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR ! PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER ! TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ! PERFORMANCE OF THIS SOFTWARE. ! ---------------------------------------------------------------------- ! --Guido van Rossum (home page: http://www.python.org/~guido/) --- 813,820 ---- tags, TAGS Tags files for vi and Emacs ! That's all, folks! ! ------------------ ! --Guido van Rossum (home page: http://www.pythonlabs.com/~guido/) From python-dev@python.org Thu Aug 3 03:04:08 2000 From: python-dev@python.org (A.M. Kuchling) Date: Wed, 2 Aug 2000 19:04:08 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules zlibmodule.c,2.34,2.35 Message-ID: <200008030204.TAA19199@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv17704 Modified Files: zlibmodule.c Log Message: Use METH_VARARGS instead of numeric constant 1 Index: zlibmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/zlibmodule.c,v retrieving revision 2.34 retrieving revision 2.35 diff -C2 -r2.34 -r2.35 *** zlibmodule.c 2000/07/21 06:00:07 2.34 --- zlibmodule.c 2000/08/03 02:04:05 2.35 *************** *** 611,615 **** PyObject *RetVal; ! if (!PyArg_NoArgs(args)) return NULL; if (!(RetVal = PyString_FromStringAndSize(NULL, DEFAULTALLOC))) --- 611,615 ---- PyObject *RetVal; ! if (!PyArg_ParseTuple(args, "")) return NULL; if (!(RetVal = PyString_FromStringAndSize(NULL, DEFAULTALLOC))) *************** *** 676,681 **** static PyMethodDef comp_methods[] = { ! {"compress", (binaryfunc)PyZlib_objcompress, 1, comp_compress__doc__}, ! {"flush", (binaryfunc)PyZlib_flush, 1, comp_flush__doc__}, {NULL, NULL} }; --- 676,683 ---- static PyMethodDef comp_methods[] = { ! {"compress", (binaryfunc)PyZlib_objcompress, ! METH_VARARGS, comp_compress__doc__}, ! {"flush", (binaryfunc)PyZlib_flush, ! METH_VARARGS, comp_flush__doc__}, {NULL, NULL} }; *************** *** 683,688 **** static PyMethodDef Decomp_methods[] = { ! {"decompress", (binaryfunc)PyZlib_objdecompress, 1, decomp_decompress__doc__}, ! {"flush", (binaryfunc)PyZlib_unflush, 0, decomp_flush__doc__}, {NULL, NULL} }; --- 685,692 ---- static PyMethodDef Decomp_methods[] = { ! {"decompress", (binaryfunc)PyZlib_objdecompress, ! METH_VARARGS, decomp_decompress__doc__}, ! {"flush", (binaryfunc)PyZlib_unflush, ! METH_VARARGS, decomp_flush__doc__}, {NULL, NULL} }; *************** *** 751,761 **** static PyMethodDef zlib_methods[] = { ! {"adler32", (PyCFunction)PyZlib_adler32, 1, adler32__doc__}, ! {"compress", (PyCFunction)PyZlib_compress, 1, compress__doc__}, ! {"compressobj", (PyCFunction)PyZlib_compressobj, 1, compressobj__doc__}, ! {"crc32", (PyCFunction)PyZlib_crc32, 1, crc32__doc__}, ! {"decompress", (PyCFunction)PyZlib_decompress, 1, decompress__doc__}, ! {"decompressobj", (PyCFunction)PyZlib_decompressobj, 1, decompressobj__doc__}, ! {NULL, NULL} }; --- 755,771 ---- static PyMethodDef zlib_methods[] = { ! {"adler32", (PyCFunction)PyZlib_adler32, ! METH_VARARGS, adler32__doc__}, ! {"compress", (PyCFunction)PyZlib_compress, ! METH_VARARGS, compress__doc__}, ! {"compressobj", (PyCFunction)PyZlib_compressobj, ! METH_VARARGS, compressobj__doc__}, ! {"crc32", (PyCFunction)PyZlib_crc32, ! METH_VARARGS, crc32__doc__}, ! {"decompress", (PyCFunction)PyZlib_decompress, ! METH_VARARGS, decompress__doc__}, ! {"decompressobj", (PyCFunction)PyZlib_decompressobj, ! METH_VARARGS, decompressobj__doc__}, ! {NULL, NULL} }; From python-dev@python.org Thu Aug 3 03:06:48 2000 From: python-dev@python.org (A.M. Kuchling) Date: Wed, 2 Aug 2000 19:06:48 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_re.py,1.20,1.21 Message-ID: <200008030206.TAA20060@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv20021 Modified Files: test_re.py Log Message: Add nasty test case that overflows the stack with a repeated group Index: test_re.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/test_re.py,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -r1.20 -r1.21 *** test_re.py 2000/06/30 16:25:20 1.20 --- test_re.py 2000/08/03 02:06:45 1.21 *************** *** 29,32 **** --- 29,36 ---- raise TestFailed, "re.search" + # Try nasty case that overflows the straightforward recursive + # implementation of repeated groups. + assert re.match('(x)*', 50000*'x').span() == (0, 50000) + if verbose: print 'Running tests on re.sub' From python-dev@python.org Thu Aug 3 03:06:19 2000 From: python-dev@python.org (A.M. Kuchling) Date: Wed, 2 Aug 2000 19:06:19 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules _localemodule.c,2.13,2.14 binascii.c,2.22,2.23 cStringIO.c,2.24,2.25 cmathmodule.c,2.19,2.20 md5module.c,2.20,2.21 newmodule.c,2.25,2.26 readline.c,2.25,2.26 socketmodule.c,1.124,1.125 soundex.c,2.8,2.9 stropmodule.c,2.70,2.71 threadmodule.c,2.35,2.36 timemodule.c,2.98,2.99 Message-ID: <200008030206.TAA20036@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv19973 Modified Files: _localemodule.c binascii.c cStringIO.c cmathmodule.c md5module.c newmodule.c readline.c socketmodule.c soundex.c stropmodule.c threadmodule.c timemodule.c Log Message: Use METH_VARARGS instead of numeric constant 1 in method def. tables Index: _localemodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_localemodule.c,v retrieving revision 2.13 retrieving revision 2.14 diff -C2 -r2.13 -r2.14 *** _localemodule.c 2000/07/21 06:00:07 2.13 --- _localemodule.c 2000/08/03 02:06:15 2.14 *************** *** 390,397 **** static struct PyMethodDef PyLocale_Methods[] = { ! {"setlocale", (PyCFunction) PyLocale_setlocale, 1, setlocale__doc__}, ! {"localeconv", (PyCFunction) PyLocale_localeconv, 0, localeconv__doc__}, ! {"strcoll", (PyCFunction) PyLocale_strcoll, 1, strcoll__doc__}, ! {"strxfrm", (PyCFunction) PyLocale_strxfrm, 1, strxfrm__doc__}, #if defined(MS_WIN32) || defined(macintosh) {"_getdefaultlocale", (PyCFunction) PyLocale_getdefaultlocale, 0}, --- 390,401 ---- static struct PyMethodDef PyLocale_Methods[] = { ! {"setlocale", (PyCFunction) PyLocale_setlocale, ! METH_VARARGS, setlocale__doc__}, ! {"localeconv", (PyCFunction) PyLocale_localeconv, ! 0, localeconv__doc__}, ! {"strcoll", (PyCFunction) PyLocale_strcoll, ! METH_VARARGS, strcoll__doc__}, ! {"strxfrm", (PyCFunction) PyLocale_strxfrm, ! METH_VARARGS, strxfrm__doc__}, #if defined(MS_WIN32) || defined(macintosh) {"_getdefaultlocale", (PyCFunction) PyLocale_getdefaultlocale, 0}, Index: binascii.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/binascii.c,v retrieving revision 2.22 retrieving revision 2.23 diff -C2 -r2.22 -r2.23 *** binascii.c 2000/07/21 06:00:07 2.22 --- binascii.c 2000/08/03 02:06:15 2.23 *************** *** 878,895 **** static struct PyMethodDef binascii_module_methods[] = { ! {"a2b_uu", binascii_a2b_uu, 1, doc_a2b_uu}, ! {"b2a_uu", binascii_b2a_uu, 1, doc_b2a_uu}, ! {"a2b_base64", binascii_a2b_base64, 1, doc_a2b_base64}, ! {"b2a_base64", binascii_b2a_base64, 1, ! doc_b2a_base64}, ! {"a2b_hqx", binascii_a2b_hqx, 1, doc_a2b_hqx}, ! {"b2a_hqx", binascii_b2a_hqx, 1, doc_b2a_hqx}, ! {"rlecode_hqx", binascii_rlecode_hqx, 1, ! doc_rlecode_hqx}, ! {"rledecode_hqx", binascii_rledecode_hqx, 1, ! doc_rledecode_hqx}, ! {"crc_hqx", binascii_crc_hqx, 1, doc_crc_hqx}, ! {"crc32", binascii_crc32, 1, doc_crc32}, {NULL, NULL} /* sentinel */ }; --- 878,902 ---- static struct PyMethodDef binascii_module_methods[] = { ! {"a2b_uu", binascii_a2b_uu, ! METH_VARARGS, doc_a2b_uu}, ! {"b2a_uu", binascii_b2a_uu, ! METH_VARARGS, doc_b2a_uu}, ! {"a2b_base64", binascii_a2b_base64, ! METH_VARARGS, doc_a2b_base64}, ! {"b2a_base64", binascii_b2a_base64, ! METH_VARARGS, doc_b2a_base64}, ! {"a2b_hqx", binascii_a2b_hqx, ! METH_VARARGS, doc_a2b_hqx}, ! {"b2a_hqx", binascii_b2a_hqx, ! METH_VARARGS, doc_b2a_hqx}, ! {"rlecode_hqx", binascii_rlecode_hqx, ! METH_VARARGS, doc_rlecode_hqx}, ! {"rledecode_hqx", binascii_rledecode_hqx, ! METH_VARARGS, doc_rledecode_hqx}, ! {"crc_hqx", binascii_crc_hqx, ! METH_VARARGS, doc_crc_hqx}, ! {"crc32", binascii_crc32, ! METH_VARARGS, doc_crc32}, {NULL, NULL} /* sentinel */ }; Index: cStringIO.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cStringIO.c,v retrieving revision 2.24 retrieving revision 2.25 diff -C2 -r2.24 -r2.25 *** cStringIO.c 2000/07/24 14:43:35 2.24 --- cStringIO.c 2000/08/03 02:06:16 2.25 *************** *** 618,622 **** static struct PyMethodDef IO_methods[] = { ! {"StringIO", (PyCFunction)IO_StringIO, 1, IO_StringIO__doc__}, {NULL, NULL} /* sentinel */ }; --- 618,623 ---- static struct PyMethodDef IO_methods[] = { ! {"StringIO", (PyCFunction)IO_StringIO, ! METH_VARARGS, IO_StringIO__doc__}, {NULL, NULL} /* sentinel */ }; Index: cmathmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cmathmodule.c,v retrieving revision 2.19 retrieving revision 2.20 diff -C2 -r2.19 -r2.20 *** cmathmodule.c 2000/07/31 15:28:04 2.19 --- cmathmodule.c 2000/08/03 02:06:16 2.20 *************** *** 373,392 **** static PyMethodDef cmath_methods[] = { ! {"acos", cmath_acos, 1, c_acos_doc}, ! {"acosh", cmath_acosh, 1, c_acosh_doc}, ! {"asin", cmath_asin, 1, c_asin_doc}, ! {"asinh", cmath_asinh, 1, c_asinh_doc}, ! {"atan", cmath_atan, 1, c_atan_doc}, ! {"atanh", cmath_atanh, 1, c_atanh_doc}, ! {"cos", cmath_cos, 1, c_cos_doc}, ! {"cosh", cmath_cosh, 1, c_cosh_doc}, ! {"exp", cmath_exp, 1, c_exp_doc}, ! {"log", cmath_log, 1, c_log_doc}, ! {"log10", cmath_log10, 1, c_log10_doc}, ! {"sin", cmath_sin, 1, c_sin_doc}, ! {"sinh", cmath_sinh, 1, c_sinh_doc}, ! {"sqrt", cmath_sqrt, 1, c_sqrt_doc}, ! {"tan", cmath_tan, 1, c_tan_doc}, ! {"tanh", cmath_tanh, 1, c_tanh_doc}, {NULL, NULL} /* sentinel */ }; --- 373,408 ---- static PyMethodDef cmath_methods[] = { ! {"acos", cmath_acos, ! METH_VARARGS, c_acos_doc}, ! {"acosh", cmath_acosh, ! METH_VARARGS, c_acosh_doc}, ! {"asin", cmath_asin, ! METH_VARARGS, c_asin_doc}, ! {"asinh", cmath_asinh, ! METH_VARARGS, c_asinh_doc}, ! {"atan", cmath_atan, ! METH_VARARGS, c_atan_doc}, ! {"atanh", cmath_atanh, ! METH_VARARGS, c_atanh_doc}, ! {"cos", cmath_cos, ! METH_VARARGS, c_cos_doc}, ! {"cosh", cmath_cosh, ! METH_VARARGS, c_cosh_doc}, ! {"exp", cmath_exp, ! METH_VARARGS, c_exp_doc}, ! {"log", cmath_log, ! METH_VARARGS, c_log_doc}, ! {"log10", cmath_log10, ! METH_VARARGS, c_log10_doc}, ! {"sin", cmath_sin, ! METH_VARARGS, c_sin_doc}, ! {"sinh", cmath_sinh, ! METH_VARARGS, c_sinh_doc}, ! {"sqrt", cmath_sqrt, ! METH_VARARGS, c_sqrt_doc}, ! {"tan", cmath_tan, ! METH_VARARGS, c_tan_doc}, ! {"tanh", cmath_tanh, ! METH_VARARGS, c_tanh_doc}, {NULL, NULL} /* sentinel */ }; Index: md5module.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/md5module.c,v retrieving revision 2.20 retrieving revision 2.21 diff -C2 -r2.20 -r2.21 *** md5module.c 2000/07/21 06:00:07 2.20 --- md5module.c 2000/08/03 02:06:16 2.21 *************** *** 228,233 **** static PyMethodDef md5_functions[] = { ! {"new", (PyCFunction)MD5_new, 1, new_doc}, ! {"md5", (PyCFunction)MD5_new, 1, new_doc}, /* Backward compatibility */ {NULL, NULL} /* Sentinel */ }; --- 228,233 ---- static PyMethodDef md5_functions[] = { ! {"new", (PyCFunction)MD5_new, METH_VARARGS, new_doc}, ! {"md5", (PyCFunction)MD5_new, METH_VARARGS, new_doc}, /* Backward compatibility */ {NULL, NULL} /* Sentinel */ }; Index: newmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/newmodule.c,v retrieving revision 2.25 retrieving revision 2.26 diff -C2 -r2.25 -r2.26 *** newmodule.c 2000/07/21 06:00:07 2.25 --- newmodule.c 2000/08/03 02:06:16 2.26 *************** *** 181,190 **** static PyMethodDef new_methods[] = { ! {"instance", new_instance, 1, new_instance_doc}, ! {"instancemethod", new_instancemethod, 1, new_im_doc}, ! {"function", new_function, 1, new_function_doc}, ! {"code", new_code, 1, new_code_doc}, ! {"module", new_module, 1, new_module_doc}, ! {"classobj", new_class, 1, new_class_doc}, {NULL, NULL} /* sentinel */ }; --- 181,196 ---- static PyMethodDef new_methods[] = { ! {"instance", new_instance, ! METH_VARARGS, new_instance_doc}, ! {"instancemethod", new_instancemethod, ! METH_VARARGS, new_im_doc}, ! {"function", new_function, ! METH_VARARGS, new_function_doc}, ! {"code", new_code, ! METH_VARARGS, new_code_doc}, ! {"module", new_module, ! METH_VARARGS, new_module_doc}, ! {"classobj", new_class, ! METH_VARARGS, new_class_doc}, {NULL, NULL} /* sentinel */ }; Index: readline.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/readline.c,v retrieving revision 2.25 retrieving revision 2.26 diff -C2 -r2.25 -r2.26 *** readline.c 2000/07/23 21:18:09 2.25 --- readline.c 2000/08/03 02:06:16 2.26 *************** *** 324,336 **** static struct PyMethodDef readline_methods[] = { ! {"parse_and_bind", parse_and_bind, 1, doc_parse_and_bind}, {"get_line_buffer", get_line_buffer, 0, doc_get_line_buffer}, ! {"insert_text", insert_text, 1, doc_insert_text}, ! {"read_init_file", read_init_file, 1, doc_read_init_file}, ! {"read_history_file", read_history_file, 1, doc_read_history_file}, ! {"write_history_file", write_history_file, 1, doc_write_history_file}, ! {"set_history_length", set_history_length, 1, set_history_length_doc}, ! {"get_history_length", get_history_length, 1, get_history_length_doc}, ! {"set_completer", set_completer, 1, doc_set_completer}, {"get_begidx", get_begidx, 0, doc_get_begidx}, {"get_endidx", get_endidx, 0, doc_get_endidx}, --- 324,340 ---- static struct PyMethodDef readline_methods[] = { ! {"parse_and_bind", parse_and_bind, METH_VARARGS, doc_parse_and_bind}, {"get_line_buffer", get_line_buffer, 0, doc_get_line_buffer}, ! {"insert_text", insert_text, METH_VARARGS, doc_insert_text}, ! {"read_init_file", read_init_file, METH_VARARGS, doc_read_init_file}, ! {"read_history_file", read_history_file, ! METH_VARARGS, doc_read_history_file}, ! {"write_history_file", write_history_file, ! METH_VARARGS, doc_write_history_file}, ! {"set_history_length", set_history_length, ! METH_VARARGS, set_history_length_doc}, ! {"get_history_length", get_history_length, ! METH_VARARGS, get_history_length_doc}, ! {"set_completer", set_completer, METH_VARARGS, doc_set_completer}, {"get_begidx", get_begidx, 0, doc_get_begidx}, {"get_endidx", get_endidx, 0, doc_get_endidx}, Index: socketmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/socketmodule.c,v retrieving revision 1.124 retrieving revision 1.125 diff -C2 -r1.124 -r1.125 *** socketmodule.c 2000/07/31 15:28:04 1.124 --- socketmodule.c 2000/08/03 02:06:16 1.125 *************** *** 1345,1391 **** static PyMethodDef PySocketSock_methods[] = { ! {"accept", (PyCFunction)PySocketSock_accept, 1, accept_doc}, ! {"bind", (PyCFunction)PySocketSock_bind, 1, bind_doc}, ! {"close", (PyCFunction)PySocketSock_close, 1, close_doc}, ! {"connect", (PyCFunction)PySocketSock_connect, 1, connect_doc}, ! {"connect_ex", (PyCFunction)PySocketSock_connect_ex, 1, connect_ex_doc}, #ifndef NO_DUP ! {"dup", (PyCFunction)PySocketSock_dup, 1, dup_doc}, #endif ! {"fileno", (PyCFunction)PySocketSock_fileno, 1, fileno_doc}, #ifdef HAVE_GETPEERNAME ! {"getpeername", (PyCFunction)PySocketSock_getpeername, 1, getpeername_doc}, #endif ! {"getsockname", (PyCFunction)PySocketSock_getsockname, 1, getsockname_doc}, ! {"getsockopt", (PyCFunction)PySocketSock_getsockopt, 1, getsockopt_doc}, ! {"listen", (PyCFunction)PySocketSock_listen, 1, listen_doc}, #ifndef NO_DUP ! {"makefile", (PyCFunction)PySocketSock_makefile, 1, makefile_doc}, #endif ! {"recv", (PyCFunction)PySocketSock_recv, 1, recv_doc}, ! {"recvfrom", (PyCFunction)PySocketSock_recvfrom, 1, recvfrom_doc}, ! {"send", (PyCFunction)PySocketSock_send, 1, send_doc}, ! {"sendto", (PyCFunction)PySocketSock_sendto, 1, sendto_doc}, ! {"setblocking", (PyCFunction)PySocketSock_setblocking, 1, setblocking_doc}, ! {"setsockopt", (PyCFunction)PySocketSock_setsockopt, 1, setsockopt_doc}, ! {"shutdown", (PyCFunction)PySocketSock_shutdown, 1, shutdown_doc}, {NULL, NULL} /* sentinel */ --- 1345,1391 ---- static PyMethodDef PySocketSock_methods[] = { ! {"accept", (PyCFunction)PySocketSock_accept, METH_VARARGS, accept_doc}, ! {"bind", (PyCFunction)PySocketSock_bind, METH_VARARGS, bind_doc}, ! {"close", (PyCFunction)PySocketSock_close, METH_VARARGS, close_doc}, ! {"connect", (PyCFunction)PySocketSock_connect, METH_VARARGS, connect_doc}, ! {"connect_ex", (PyCFunction)PySocketSock_connect_ex, METH_VARARGS, connect_ex_doc}, #ifndef NO_DUP ! {"dup", (PyCFunction)PySocketSock_dup, METH_VARARGS, dup_doc}, #endif ! {"fileno", (PyCFunction)PySocketSock_fileno, METH_VARARGS, fileno_doc}, #ifdef HAVE_GETPEERNAME ! {"getpeername", (PyCFunction)PySocketSock_getpeername, METH_VARARGS, getpeername_doc}, #endif ! {"getsockname", (PyCFunction)PySocketSock_getsockname, METH_VARARGS, getsockname_doc}, ! {"getsockopt", (PyCFunction)PySocketSock_getsockopt, METH_VARARGS, getsockopt_doc}, ! {"listen", (PyCFunction)PySocketSock_listen, METH_VARARGS, listen_doc}, #ifndef NO_DUP ! {"makefile", (PyCFunction)PySocketSock_makefile, METH_VARARGS, makefile_doc}, #endif ! {"recv", (PyCFunction)PySocketSock_recv, METH_VARARGS, recv_doc}, ! {"recvfrom", (PyCFunction)PySocketSock_recvfrom, METH_VARARGS, recvfrom_doc}, ! {"send", (PyCFunction)PySocketSock_send, METH_VARARGS, send_doc}, ! {"sendto", (PyCFunction)PySocketSock_sendto, METH_VARARGS, sendto_doc}, ! {"setblocking", (PyCFunction)PySocketSock_setblocking, METH_VARARGS, setblocking_doc}, ! {"setsockopt", (PyCFunction)PySocketSock_setsockopt, METH_VARARGS, setsockopt_doc}, ! {"shutdown", (PyCFunction)PySocketSock_shutdown, METH_VARARGS, shutdown_doc}, {NULL, NULL} /* sentinel */ *************** *** 2200,2221 **** static PyMethodDef PySocket_methods[] = { ! {"gethostbyname", PySocket_gethostbyname, 1, gethostbyname_doc}, ! {"gethostbyname_ex", PySocket_gethostbyname_ex, 1, ghbn_ex_doc}, ! {"gethostbyaddr", PySocket_gethostbyaddr, 1, gethostbyaddr_doc}, ! {"gethostname", PySocket_gethostname, 1, gethostname_doc}, ! {"getservbyname", PySocket_getservbyname, 1, getservbyname_doc}, ! {"getprotobyname", PySocket_getprotobyname, 1,getprotobyname_doc}, ! {"socket", PySocket_socket, 1, socket_doc}, #ifndef NO_DUP ! {"fromfd", PySocket_fromfd, 1, fromfd_doc}, #endif ! {"ntohs", PySocket_ntohs, 1, ntohs_doc}, ! {"ntohl", PySocket_ntohl, 1, ntohl_doc}, ! {"htons", PySocket_htons, 1, htons_doc}, ! {"htonl", PySocket_htonl, 1, htonl_doc}, ! {"inet_aton", PySocket_inet_aton, 1, inet_aton_doc}, ! {"inet_ntoa", PySocket_inet_ntoa, 1, inet_ntoa_doc}, #ifdef USE_SSL ! {"ssl", PySocket_ssl, 1, ssl_doc}, #endif /* USE_SSL */ {NULL, NULL} /* Sentinel */ --- 2200,2236 ---- static PyMethodDef PySocket_methods[] = { ! {"gethostbyname", PySocket_gethostbyname, ! METH_VARARGS, gethostbyname_doc}, ! {"gethostbyname_ex", PySocket_gethostbyname_ex, ! METH_VARARGS, ghbn_ex_doc}, ! {"gethostbyaddr", PySocket_gethostbyaddr, ! METH_VARARGS, gethostbyaddr_doc}, ! {"gethostname", PySocket_gethostname, ! METH_VARARGS, gethostname_doc}, ! {"getservbyname", PySocket_getservbyname, ! METH_VARARGS, getservbyname_doc}, ! {"getprotobyname", PySocket_getprotobyname, ! METH_VARARGS,getprotobyname_doc}, ! {"socket", PySocket_socket, ! METH_VARARGS, socket_doc}, #ifndef NO_DUP ! {"fromfd", PySocket_fromfd, ! METH_VARARGS, fromfd_doc}, #endif ! {"ntohs", PySocket_ntohs, ! METH_VARARGS, ntohs_doc}, ! {"ntohl", PySocket_ntohl, ! METH_VARARGS, ntohl_doc}, ! {"htons", PySocket_htons, ! METH_VARARGS, htons_doc}, ! {"htonl", PySocket_htonl, ! METH_VARARGS, htonl_doc}, ! {"inet_aton", PySocket_inet_aton, ! METH_VARARGS, inet_aton_doc}, ! {"inet_ntoa", PySocket_inet_ntoa, ! METH_VARARGS, inet_ntoa_doc}, #ifdef USE_SSL ! {"ssl", PySocket_ssl, ! METH_VARARGS, ssl_doc}, #endif /* USE_SSL */ {NULL, NULL} /* Sentinel */ Index: soundex.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/soundex.c,v retrieving revision 2.8 retrieving revision 2.9 diff -C2 -r2.8 -r2.9 *** soundex.c 2000/07/21 06:00:07 2.8 --- soundex.c 2000/08/03 02:06:16 2.9 *************** *** 158,165 **** static PyMethodDef SoundexMethods[] = { ! {"sound_similar", sound_similar, 1, soundex_sound_similar__doc__}, ! {"get_soundex", get_soundex, 1, soundex_get_soundex__doc__}, ! {NULL, NULL } /* sentinel */ }; --- 158,167 ---- static PyMethodDef SoundexMethods[] = { ! {"sound_similar", sound_similar, ! METH_VARARGS, soundex_sound_similar__doc__}, ! {"get_soundex", get_soundex, ! METH_VARARGS, soundex_get_soundex__doc__}, ! {NULL, NULL } /* sentinel */ }; Index: stropmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/stropmodule.c,v retrieving revision 2.70 retrieving revision 2.71 diff -C2 -r2.70 -r2.71 *** stropmodule.c 2000/07/21 06:00:07 2.70 --- stropmodule.c 2000/08/03 02:06:16 2.71 *************** *** 1155,1178 **** static PyMethodDef strop_methods[] = { ! {"atof", strop_atof, 1, atof__doc__}, ! {"atoi", strop_atoi, 1, atoi__doc__}, ! {"atol", strop_atol, 1, atol__doc__}, {"capitalize", strop_capitalize, 0, capitalize__doc__}, ! {"count", strop_count, 1, count__doc__}, ! {"expandtabs", strop_expandtabs, 1, expandtabs__doc__}, ! {"find", strop_find, 1, find__doc__}, ! {"join", strop_joinfields, 1, joinfields__doc__}, ! {"joinfields", strop_joinfields, 1, joinfields__doc__}, {"lstrip", strop_lstrip, 0, lstrip__doc__}, {"lower", strop_lower, 0, lower__doc__}, ! {"maketrans", strop_maketrans, 1, maketrans__doc__}, ! {"replace", strop_replace, 1, replace__doc__}, ! {"rfind", strop_rfind, 1, rfind__doc__}, {"rstrip", strop_rstrip, 0, rstrip__doc__}, ! {"split", strop_splitfields, 1, splitfields__doc__}, ! {"splitfields", strop_splitfields, 1, splitfields__doc__}, {"strip", strop_strip, 0, strip__doc__}, {"swapcase", strop_swapcase, 0, swapcase__doc__}, ! {"translate", strop_translate, 1, translate__doc__}, {"upper", strop_upper, 0, upper__doc__}, {NULL, NULL} /* sentinel */ --- 1155,1192 ---- static PyMethodDef strop_methods[] = { ! {"atof", strop_atof, ! METH_VARARGS, atof__doc__}, ! {"atoi", strop_atoi, ! METH_VARARGS, atoi__doc__}, ! {"atol", strop_atol, ! METH_VARARGS, atol__doc__}, {"capitalize", strop_capitalize, 0, capitalize__doc__}, ! {"count", strop_count, ! METH_VARARGS, count__doc__}, ! {"expandtabs", strop_expandtabs, ! METH_VARARGS, expandtabs__doc__}, ! {"find", strop_find, ! METH_VARARGS, find__doc__}, ! {"join", strop_joinfields, ! METH_VARARGS, joinfields__doc__}, ! {"joinfields", strop_joinfields, ! METH_VARARGS, joinfields__doc__}, {"lstrip", strop_lstrip, 0, lstrip__doc__}, {"lower", strop_lower, 0, lower__doc__}, ! {"maketrans", strop_maketrans, ! METH_VARARGS, maketrans__doc__}, ! {"replace", strop_replace, ! METH_VARARGS, replace__doc__}, ! {"rfind", strop_rfind, ! METH_VARARGS, rfind__doc__}, {"rstrip", strop_rstrip, 0, rstrip__doc__}, ! {"split", strop_splitfields, ! METH_VARARGS, splitfields__doc__}, ! {"splitfields", strop_splitfields, ! METH_VARARGS, splitfields__doc__}, {"strip", strop_strip, 0, strip__doc__}, {"swapcase", strop_swapcase, 0, swapcase__doc__}, ! {"translate", strop_translate, ! METH_VARARGS, translate__doc__}, {"upper", strop_upper, 0, upper__doc__}, {NULL, NULL} /* sentinel */ Index: threadmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/threadmodule.c,v retrieving revision 2.35 retrieving revision 2.36 diff -C2 -r2.35 -r2.36 *** threadmodule.c 2000/07/21 06:00:07 2.35 --- threadmodule.c 2000/08/03 02:06:16 2.36 *************** *** 338,344 **** static PyMethodDef thread_methods[] = { ! {"start_new_thread", (PyCFunction)thread_PyThread_start_new_thread, 1, start_new_doc}, ! {"start_new", (PyCFunction)thread_PyThread_start_new_thread, 1, start_new_doc}, {"allocate_lock", (PyCFunction)thread_PyThread_allocate_lock, 0, --- 338,346 ---- static PyMethodDef thread_methods[] = { ! {"start_new_thread", (PyCFunction)thread_PyThread_start_new_thread, ! METH_VARARGS, start_new_doc}, ! {"start_new", (PyCFunction)thread_PyThread_start_new_thread, ! METH_VARARGS, start_new_doc}, {"allocate_lock", (PyCFunction)thread_PyThread_allocate_lock, 0, Index: timemodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/timemodule.c,v retrieving revision 2.98 retrieving revision 2.99 diff -C2 -r2.98 -r2.99 *** timemodule.c 2000/07/31 15:28:04 2.98 --- timemodule.c 2000/08/03 02:06:16 2.99 *************** *** 499,512 **** {"gmtime", time_gmtime, 0, gmtime_doc}, {"localtime", time_localtime, 0, localtime_doc}, ! {"asctime", time_asctime, 1, asctime_doc}, {"ctime", time_ctime, 0, ctime_doc}, #ifdef HAVE_MKTIME ! {"mktime", time_mktime, 1, mktime_doc}, #endif #ifdef HAVE_STRFTIME ! {"strftime", time_strftime, 1, strftime_doc}, #endif #ifdef HAVE_STRPTIME ! {"strptime", time_strptime, 1, strptime_doc}, #endif {NULL, NULL} /* sentinel */ --- 499,512 ---- {"gmtime", time_gmtime, 0, gmtime_doc}, {"localtime", time_localtime, 0, localtime_doc}, ! {"asctime", time_asctime, METH_VARARGS, asctime_doc}, {"ctime", time_ctime, 0, ctime_doc}, #ifdef HAVE_MKTIME ! {"mktime", time_mktime, METH_VARARGS, mktime_doc}, #endif #ifdef HAVE_STRFTIME ! {"strftime", time_strftime, METH_VARARGS, strftime_doc}, #endif #ifdef HAVE_STRPTIME ! {"strptime", time_strptime, METH_VARARGS, strptime_doc}, #endif {NULL, NULL} /* sentinel */ From python-dev@python.org Thu Aug 3 03:28:57 2000 From: python-dev@python.org (A.M. Kuchling) Date: Wed, 2 Aug 2000 19:28:57 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include methodobject.h,2.20,2.21 Message-ID: <200008030228.TAA21382@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv21360 Modified Files: methodobject.h Log Message: Added #define for oldest version of argument calling Index: methodobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/methodobject.h,v retrieving revision 2.20 retrieving revision 2.21 diff -C2 -r2.20 -r2.21 *** methodobject.h 2000/07/09 03:09:55 2.20 --- methodobject.h 2000/08/03 02:28:54 2.21 *************** *** 51,54 **** --- 51,55 ---- /* Flag passed to newmethodobject */ + #define METH_OLDARGS 0x0000 #define METH_VARARGS 0x0001 #define METH_KEYWORDS 0x0002 From python-dev@python.org Thu Aug 3 03:34:47 2000 From: python-dev@python.org (A.M. Kuchling) Date: Wed, 2 Aug 2000 19:34:47 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules cryptmodule.c,2.9,2.10 md5module.c,2.21,2.22 pwdmodule.c,1.21,1.22 readline.c,2.26,2.27 signalmodule.c,2.52,2.53 stropmodule.c,2.71,2.72 termios.c,2.13,2.14 threadmodule.c,2.36,2.37 timemodule.c,2.99,2.100 Message-ID: <200008030234.TAA21870@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv21741 Modified Files: cryptmodule.c md5module.c pwdmodule.c readline.c signalmodule.c stropmodule.c termios.c threadmodule.c timemodule.c Log Message: Use METH_OLDARGS instead of numeric constant 0 in method def. tables Index: cryptmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cryptmodule.c,v retrieving revision 2.9 retrieving revision 2.10 diff -C2 -r2.9 -r2.10 *** cryptmodule.c 2000/07/22 23:57:55 2.9 --- cryptmodule.c 2000/08/03 02:34:44 2.10 *************** *** 32,36 **** static PyMethodDef crypt_methods[] = { ! {"crypt", crypt_crypt, 0, crypt_crypt__doc__}, {NULL, NULL} /* sentinel */ }; --- 32,36 ---- static PyMethodDef crypt_methods[] = { ! {"crypt", crypt_crypt, METH_OLDARGS, crypt_crypt__doc__}, {NULL, NULL} /* sentinel */ }; Index: md5module.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/md5module.c,v retrieving revision 2.21 retrieving revision 2.22 diff -C2 -r2.21 -r2.22 *** md5module.c 2000/08/03 02:06:16 2.21 --- md5module.c 2000/08/03 02:34:44 2.22 *************** *** 127,133 **** static PyMethodDef md5_methods[] = { ! {"update", (PyCFunction)md5_update, 0, update_doc}, ! {"digest", (PyCFunction)md5_digest, 0, digest_doc}, ! {"copy", (PyCFunction)md5_copy, 0, copy_doc}, {NULL, NULL} /* sentinel */ }; --- 127,136 ---- static PyMethodDef md5_methods[] = { ! {"update", (PyCFunction)md5_update, ! METH_OLDARGS, update_doc}, ! {"digest", (PyCFunction)md5_digest, ! METH_OLDARGS, digest_doc}, ! {"copy", (PyCFunction)md5_copy, ! METH_OLDARGS, copy_doc}, {NULL, NULL} /* sentinel */ }; Index: pwdmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/pwdmodule.c,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** pwdmodule.c 2000/07/21 06:00:07 1.21 --- pwdmodule.c 2000/08/03 02:34:44 1.22 *************** *** 129,136 **** static PyMethodDef pwd_methods[] = { ! {"getpwuid", pwd_getpwuid, 0, pwd_getpwuid__doc__}, ! {"getpwnam", pwd_getpwnam, 0, pwd_getpwnam__doc__}, #ifdef HAVE_GETPWENT ! {"getpwall", pwd_getpwall, 0, pwd_getpwall__doc__}, #endif {NULL, NULL} /* sentinel */ --- 129,136 ---- static PyMethodDef pwd_methods[] = { ! {"getpwuid", pwd_getpwuid, METH_OLDARGS, pwd_getpwuid__doc__}, ! {"getpwnam", pwd_getpwnam, METH_OLDARGS, pwd_getpwnam__doc__}, #ifdef HAVE_GETPWENT ! {"getpwall", pwd_getpwall, METH_OLDARGS, pwd_getpwall__doc__}, #endif {NULL, NULL} /* sentinel */ Index: readline.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/readline.c,v retrieving revision 2.26 retrieving revision 2.27 diff -C2 -r2.26 -r2.27 *** readline.c 2000/08/03 02:06:16 2.26 --- readline.c 2000/08/03 02:34:44 2.27 *************** *** 325,329 **** { {"parse_and_bind", parse_and_bind, METH_VARARGS, doc_parse_and_bind}, ! {"get_line_buffer", get_line_buffer, 0, doc_get_line_buffer}, {"insert_text", insert_text, METH_VARARGS, doc_insert_text}, {"read_init_file", read_init_file, METH_VARARGS, doc_read_init_file}, --- 325,330 ---- { {"parse_and_bind", parse_and_bind, METH_VARARGS, doc_parse_and_bind}, ! {"get_line_buffer", get_line_buffer, ! METH_OLDARGS, doc_get_line_buffer}, {"insert_text", insert_text, METH_VARARGS, doc_insert_text}, {"read_init_file", read_init_file, METH_VARARGS, doc_read_init_file}, *************** *** 337,347 **** METH_VARARGS, get_history_length_doc}, {"set_completer", set_completer, METH_VARARGS, doc_set_completer}, ! {"get_begidx", get_begidx, 0, doc_get_begidx}, ! {"get_endidx", get_endidx, 0, doc_get_endidx}, ! {"set_completer_delims", set_completer_delims, METH_VARARGS, ! doc_set_completer_delims}, ! {"get_completer_delims", get_completer_delims, 0, ! doc_get_completer_delims}, {0, 0} }; --- 338,348 ---- METH_VARARGS, get_history_length_doc}, {"set_completer", set_completer, METH_VARARGS, doc_set_completer}, ! {"get_begidx", get_begidx, METH_OLDARGS, doc_get_begidx}, ! {"get_endidx", get_endidx, METH_OLDARGS, doc_get_endidx}, ! {"set_completer_delims", set_completer_delims, ! METH_VARARGS, doc_set_completer_delims}, ! {"get_completer_delims", get_completer_delims, ! METH_OLDARGS, doc_get_completer_delims}, {0, 0} }; Index: signalmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/signalmodule.c,v retrieving revision 2.52 retrieving revision 2.53 diff -C2 -r2.52 -r2.53 *** signalmodule.c 2000/07/25 12:56:37 2.52 --- signalmodule.c 2000/08/03 02:34:44 2.53 *************** *** 281,293 **** static PyMethodDef signal_methods[] = { #ifdef HAVE_ALARM ! {"alarm", signal_alarm, 0, alarm_doc}, #endif ! {"signal", signal_signal, 0, signal_doc}, ! {"getsignal", signal_getsignal, 0, getsignal_doc}, #ifdef HAVE_PAUSE ! {"pause", signal_pause, 0, pause_doc}, #endif ! {"default_int_handler", signal_default_int_handler, 0, ! default_int_handler_doc}, {NULL, NULL} /* sentinel */ }; --- 281,293 ---- static PyMethodDef signal_methods[] = { #ifdef HAVE_ALARM ! {"alarm", signal_alarm, METH_OLDARGS, alarm_doc}, #endif ! {"signal", signal_signal, METH_OLDARGS, signal_doc}, ! {"getsignal", signal_getsignal, METH_OLDARGS, getsignal_doc}, #ifdef HAVE_PAUSE ! {"pause", signal_pause, METH_OLDARGS, pause_doc}, #endif ! {"default_int_handler", signal_default_int_handler, ! METH_OLDARGS, default_int_handler_doc}, {NULL, NULL} /* sentinel */ }; Index: stropmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/stropmodule.c,v retrieving revision 2.71 retrieving revision 2.72 diff -C2 -r2.71 -r2.72 *** stropmodule.c 2000/08/03 02:06:16 2.71 --- stropmodule.c 2000/08/03 02:34:44 2.72 *************** *** 1161,1165 **** {"atol", strop_atol, METH_VARARGS, atol__doc__}, ! {"capitalize", strop_capitalize, 0, capitalize__doc__}, {"count", strop_count, METH_VARARGS, count__doc__}, --- 1161,1166 ---- {"atol", strop_atol, METH_VARARGS, atol__doc__}, ! {"capitalize", strop_capitalize, ! METH_OLDARGS, capitalize__doc__}, {"count", strop_count, METH_VARARGS, count__doc__}, *************** *** 1172,1177 **** {"joinfields", strop_joinfields, METH_VARARGS, joinfields__doc__}, ! {"lstrip", strop_lstrip, 0, lstrip__doc__}, ! {"lower", strop_lower, 0, lower__doc__}, {"maketrans", strop_maketrans, METH_VARARGS, maketrans__doc__}, --- 1173,1180 ---- {"joinfields", strop_joinfields, METH_VARARGS, joinfields__doc__}, ! {"lstrip", strop_lstrip, ! METH_OLDARGS, lstrip__doc__}, ! {"lower", strop_lower, ! METH_OLDARGS, lower__doc__}, {"maketrans", strop_maketrans, METH_VARARGS, maketrans__doc__}, *************** *** 1180,1193 **** {"rfind", strop_rfind, METH_VARARGS, rfind__doc__}, ! {"rstrip", strop_rstrip, 0, rstrip__doc__}, {"split", strop_splitfields, METH_VARARGS, splitfields__doc__}, {"splitfields", strop_splitfields, METH_VARARGS, splitfields__doc__}, ! {"strip", strop_strip, 0, strip__doc__}, ! {"swapcase", strop_swapcase, 0, swapcase__doc__}, {"translate", strop_translate, METH_VARARGS, translate__doc__}, ! {"upper", strop_upper, 0, upper__doc__}, {NULL, NULL} /* sentinel */ }; --- 1183,1200 ---- {"rfind", strop_rfind, METH_VARARGS, rfind__doc__}, ! {"rstrip", strop_rstrip, ! METH_OLDARGS, rstrip__doc__}, {"split", strop_splitfields, METH_VARARGS, splitfields__doc__}, {"splitfields", strop_splitfields, METH_VARARGS, splitfields__doc__}, ! {"strip", strop_strip, ! METH_OLDARGS, strip__doc__}, ! {"swapcase", strop_swapcase, ! METH_OLDARGS, swapcase__doc__}, {"translate", strop_translate, METH_VARARGS, translate__doc__}, ! {"upper", strop_upper, ! METH_OLDARGS, upper__doc__}, {NULL, NULL} /* sentinel */ }; Index: termios.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/termios.c,v retrieving revision 2.13 retrieving revision 2.14 diff -C2 -r2.13 -r2.14 *** termios.c 2000/07/21 06:00:07 2.13 --- termios.c 2000/08/03 02:34:44 2.14 *************** *** 279,288 **** static PyMethodDef termios_methods[] = { ! {"tcgetattr", termios_tcgetattr, 0, termios_tcgetattr__doc__}, ! {"tcsetattr", termios_tcsetattr, 0, termios_tcsetattr__doc__}, ! {"tcsendbreak", termios_tcsendbreak, 0, termios_tcsendbreak__doc__}, ! {"tcdrain", termios_tcdrain, 0, termios_tcdrain__doc__}, ! {"tcflush", termios_tcflush, 0, termios_tcflush__doc__}, ! {"tcflow", termios_tcflow, 0, termios_tcflow__doc__}, {NULL, NULL} }; --- 279,294 ---- static PyMethodDef termios_methods[] = { ! {"tcgetattr", termios_tcgetattr, ! METH_OLDARGS, termios_tcgetattr__doc__}, ! {"tcsetattr", termios_tcsetattr, ! METH_OLDARGS, termios_tcsetattr__doc__}, ! {"tcsendbreak", termios_tcsendbreak, ! METH_OLDARGS, termios_tcsendbreak__doc__}, ! {"tcdrain", termios_tcdrain, ! METH_OLDARGS, termios_tcdrain__doc__}, ! {"tcflush", termios_tcflush, ! METH_OLDARGS, termios_tcflush__doc__}, ! {"tcflow", termios_tcflow, ! METH_OLDARGS, termios_tcflow__doc__}, {NULL, NULL} }; Index: threadmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/threadmodule.c,v retrieving revision 2.36 retrieving revision 2.37 diff -C2 -r2.36 -r2.37 *** threadmodule.c 2000/08/03 02:06:16 2.36 --- threadmodule.c 2000/08/03 02:34:44 2.37 *************** *** 142,151 **** static PyMethodDef lock_methods[] = { ! {"acquire_lock", (PyCFunction)lock_PyThread_acquire_lock, 0, acquire_doc}, ! {"acquire", (PyCFunction)lock_PyThread_acquire_lock, 0, acquire_doc}, ! {"release_lock", (PyCFunction)lock_PyThread_release_lock, 0, release_doc}, ! {"release", (PyCFunction)lock_PyThread_release_lock, 0, release_doc}, ! {"locked_lock", (PyCFunction)lock_locked_lock, 0, locked_doc}, ! {"locked", (PyCFunction)lock_locked_lock, 0, locked_doc}, {NULL, NULL} /* sentinel */ }; --- 142,157 ---- static PyMethodDef lock_methods[] = { ! {"acquire_lock", (PyCFunction)lock_PyThread_acquire_lock, ! METH_OLDARGS, acquire_doc}, ! {"acquire", (PyCFunction)lock_PyThread_acquire_lock, ! METH_OLDARGS, acquire_doc}, ! {"release_lock", (PyCFunction)lock_PyThread_release_lock, ! METH_OLDARGS, release_doc}, ! {"release", (PyCFunction)lock_PyThread_release_lock, ! METH_OLDARGS, release_doc}, ! {"locked_lock", (PyCFunction)lock_locked_lock, ! METH_OLDARGS, locked_doc}, ! {"locked", (PyCFunction)lock_locked_lock, ! METH_OLDARGS, locked_doc}, {NULL, NULL} /* sentinel */ }; *************** *** 344,357 **** METH_VARARGS, start_new_doc}, ! {"allocate_lock", (PyCFunction)thread_PyThread_allocate_lock, 0, ! allocate_doc}, ! {"allocate", (PyCFunction)thread_PyThread_allocate_lock, 0, ! allocate_doc}, ! {"exit_thread", (PyCFunction)thread_PyThread_exit_thread, 0, ! exit_doc}, ! {"exit", (PyCFunction)thread_PyThread_exit_thread, 0, ! exit_doc}, ! {"get_ident", (PyCFunction)thread_get_ident, 0, ! get_ident_doc}, #ifndef NO_EXIT_PROG {"exit_prog", (PyCFunction)thread_PyThread_exit_prog}, --- 350,363 ---- METH_VARARGS, start_new_doc}, ! {"allocate_lock", (PyCFunction)thread_PyThread_allocate_lock, ! METH_OLDARGS, allocate_doc}, ! {"allocate", (PyCFunction)thread_PyThread_allocate_lock, ! METH_OLDARGS, allocate_doc}, ! {"exit_thread", (PyCFunction)thread_PyThread_exit_thread, ! METH_OLDARGS, exit_doc}, ! {"exit", (PyCFunction)thread_PyThread_exit_thread, ! METH_OLDARGS, exit_doc}, ! {"get_ident", (PyCFunction)thread_get_ident, ! METH_OLDARGS, get_ident_doc}, #ifndef NO_EXIT_PROG {"exit_prog", (PyCFunction)thread_PyThread_exit_prog}, Index: timemodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/timemodule.c,v retrieving revision 2.99 retrieving revision 2.100 diff -C2 -r2.99 -r2.100 *** timemodule.c 2000/08/03 02:06:16 2.99 --- timemodule.c 2000/08/03 02:34:44 2.100 *************** *** 492,504 **** static PyMethodDef time_methods[] = { ! {"time", time_time, 0, time_doc}, #ifdef HAVE_CLOCK ! {"clock", time_clock, 0, clock_doc}, #endif ! {"sleep", time_sleep, 0, sleep_doc}, ! {"gmtime", time_gmtime, 0, gmtime_doc}, ! {"localtime", time_localtime, 0, localtime_doc}, {"asctime", time_asctime, METH_VARARGS, asctime_doc}, ! {"ctime", time_ctime, 0, ctime_doc}, #ifdef HAVE_MKTIME {"mktime", time_mktime, METH_VARARGS, mktime_doc}, --- 492,504 ---- static PyMethodDef time_methods[] = { ! {"time", time_time, METH_OLDARGS, time_doc}, #ifdef HAVE_CLOCK ! {"clock", time_clock, METH_OLDARGS, clock_doc}, #endif ! {"sleep", time_sleep, METH_OLDARGS, sleep_doc}, ! {"gmtime", time_gmtime, METH_OLDARGS, gmtime_doc}, ! {"localtime", time_localtime, METH_OLDARGS, localtime_doc}, {"asctime", time_asctime, METH_VARARGS, asctime_doc}, ! {"ctime", time_ctime, METH_OLDARGS, ctime_doc}, #ifdef HAVE_MKTIME {"mktime", time_mktime, METH_VARARGS, mktime_doc}, From python-dev@python.org Thu Aug 3 04:59:48 2000 From: python-dev@python.org (Guido van Rossum) Date: Wed, 2 Aug 2000 20:59:48 -0700 Subject: [Python-checkins] CVS: python/dist/src/PCbuild python16.dsp,1.8.2.2,1.8.2.3 Message-ID: <200008030359.UAA01889@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/PCbuild In directory slayer.i.sourceforge.net:/tmp/cvs-serv1869 Modified Files: Tag: cnri-16-start python16.dsp Log Message: Removed gcmodule.c and exceptions.c -- these files aren't in 1.6. Index: python16.dsp =================================================================== RCS file: /cvsroot/python/python/dist/src/PCbuild/Attic/python16.dsp,v retrieving revision 1.8.2.2 retrieving revision 1.8.2.3 diff -C2 -r1.8.2.2 -r1.8.2.3 *** python16.dsp 2000/08/01 20:36:48 1.8.2.2 --- python16.dsp 2000/08/03 03:59:45 1.8.2.3 *************** *** 541,559 **** # Begin Source File - SOURCE=..\Python\exceptions.c - - !IF "$(CFG)" == "python16 - Win32 Release" - - !ELSEIF "$(CFG)" == "python16 - Win32 Debug" - - !ELSEIF "$(CFG)" == "python16 - Win32 Alpha Debug" - - !ELSEIF "$(CFG)" == "python16 - Win32 Alpha Release" - - !ENDIF - - # End Source File - # Begin Source File - SOURCE=..\Objects\fileobject.c --- 541,544 ---- *************** *** 647,664 **** SOURCE=..\Objects\funcobject.c - - !IF "$(CFG)" == "python16 - Win32 Release" - - !ELSEIF "$(CFG)" == "python16 - Win32 Debug" - - !ELSEIF "$(CFG)" == "python16 - Win32 Alpha Debug" - - !ELSEIF "$(CFG)" == "python16 - Win32 Alpha Release" - - !ENDIF - - # End Source File - # Begin Source File - SOURCE=..\Modules\gcmodule.c !IF "$(CFG)" == "python16 - Win32 Release" --- 632,635 ---- From python-dev@python.org Thu Aug 3 13:16:33 2000 From: python-dev@python.org (A.M. Kuchling) Date: Thu, 3 Aug 2000 05:16:33 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_re.py,1.21,1.22 Message-ID: <200008031216.FAA15766@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv15596 Modified Files: test_re.py Log Message: Comment out repeated-group test for the moment Index: test_re.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/test_re.py,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** test_re.py 2000/08/03 02:06:45 1.21 --- test_re.py 2000/08/03 12:16:29 1.22 *************** *** 31,35 **** # Try nasty case that overflows the straightforward recursive # implementation of repeated groups. ! assert re.match('(x)*', 50000*'x').span() == (0, 50000) if verbose: --- 31,35 ---- # Try nasty case that overflows the straightforward recursive # implementation of repeated groups. ! #assert re.match('(x)*', 50000*'x').span() == (0, 50000) if verbose: From python-dev@python.org Thu Aug 3 16:41:50 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:41:50 -0700 Subject: [Python-checkins] CVS: python/nondist/peps pep-0201.txt,1.13,1.14 Message-ID: <200008031541.IAA01490@slayer.i.sourceforge.net> Update of /cvsroot/python/python/nondist/peps In directory slayer.i.sourceforge.net:/tmp/cvs-serv1479 Modified Files: pep-0201.txt Log Message: This proposal has been accepted by the BDFL. Index: pep-0201.txt =================================================================== RCS file: /cvsroot/python/python/nondist/peps/pep-0201.txt,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -r1.13 -r1.14 *** pep-0201.txt 2000/07/31 16:52:52 1.13 --- pep-0201.txt 2000/08/03 15:41:47 1.14 *************** *** 4,8 **** Author: bwarsaw@beopen.com (Barry A. Warsaw) Python-Version: 2.0 ! Status: Draft Created: 13-Jul-2000 Post-History: 27-Jul-2000 --- 4,8 ---- Author: bwarsaw@beopen.com (Barry A. Warsaw) Python-Version: 2.0 ! Status: Accepted Created: 13-Jul-2000 Post-History: 27-Jul-2000 From python-dev@python.org Thu Aug 3 16:42:45 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:42:45 -0700 Subject: [Python-checkins] CVS: python/nondist/peps pep-0000.txt,1.18,1.19 Message-ID: <200008031542.IAA01557@slayer.i.sourceforge.net> Update of /cvsroot/python/python/nondist/peps In directory slayer.i.sourceforge.net:/tmp/cvs-serv1547 Modified Files: pep-0000.txt Log Message: PEP 201 has been accepted by the BDFL. Index: pep-0000.txt =================================================================== RCS file: /cvsroot/python/python/nondist/peps/pep-0000.txt,v retrieving revision 1.18 retrieving revision 1.19 diff -C2 -r1.18 -r1.19 *** pep-0000.txt 2000/07/31 20:20:52 1.18 --- pep-0000.txt 2000/08/03 15:42:42 1.19 *************** *** 22,26 **** 200 pep-0200.txt Python 2.0 Release Schedule jhylton ! 201 pep-0201.txt Lockstep Iteration bwarsaw 202 pep-0202.txt List Comprehensions tim_one 203 pep-0203.txt Augmented Assignments twouters --- 22,26 ---- 200 pep-0200.txt Python 2.0 Release Schedule jhylton ! [*] 201 pep-0201.txt Lockstep Iteration bwarsaw 202 pep-0202.txt List Comprehensions tim_one 203 pep-0203.txt Augmented Assignments twouters *************** *** 40,43 **** --- 40,46 ---- 217 pep-0217.txt Display Hook for Interactive Use moshez 218 pep-0218.txt Adding a Built-In Set Object Type gvwilson + + + [*] denotes accepted proposals. From python-dev@python.org Thu Aug 3 16:45:33 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:45:33 -0700 Subject: [Python-checkins] CVS: python/dist/src/Python bltinmodule.c,2.173,2.174 Message-ID: <200008031545.IAA01906@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Python In directory slayer.i.sourceforge.net:/tmp/cvs-serv1893 Modified Files: bltinmodule.c Log Message: Both PEP 201 Lockstep Iteration and SF patch #101030 have been accepted by the BDFL. builtin_zip(): New function to implement the zip() function described in the above proposal. zip_doc[]: Docstring for zip(). builtin_methods[]: added entry for zip() Index: bltinmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/bltinmodule.c,v retrieving revision 2.173 retrieving revision 2.174 diff -C2 -r2.173 -r2.174 *** bltinmodule.c 2000/07/31 15:28:04 2.173 --- bltinmodule.c 2000/08/03 15:45:29 2.174 *************** *** 2151,2154 **** --- 2151,2209 ---- + static PyObject* + builtin_zip(PyObject *self, PyObject *args) + { + PyObject *ret; + int itemsize = PySequence_Length(args); + int i, j; + + if (itemsize < 1) { + PyErr_SetString(PyExc_TypeError, + "at least one sequence is required"); + return NULL; + } + /* args must be a tuple */ + assert(PyTuple_Check(args)); + + if ((ret = PyList_New(0)) == NULL) + return NULL; + + for (i = 0;; i++) { + PyObject *next = PyTuple_New(itemsize); + if (!next) { + Py_DECREF(ret); + return NULL; + } + for (j = 0; j < itemsize; j++) { + PyObject *seq = PyTuple_GET_ITEM(args, j); + PyObject *item = PySequence_GetItem(seq, i); + + if (!item) { + if (PyErr_ExceptionMatches(PyExc_IndexError)) { + PyErr_Clear(); + Py_DECREF(next); + return ret; + } + Py_DECREF(next); + Py_DECREF(ret); + return NULL; + } + PyTuple_SET_ITEM(next, j, item); + } + PyList_Append(ret, next); + Py_DECREF(next); + } + /* no return */ + } + + + static char zip_doc[] = + "zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)]\n\ + \n\ + Return a list of tuples, where each tuple contains the i-th element\n\ + from each of the argument sequences. The returned list is truncated\n\ + in length to the length of the shortest argument sequence."; + + static PyMethodDef builtin_methods[] = { {"__import__", builtin___import__, 1, import_doc}, *************** *** 2208,2211 **** --- 2263,2267 ---- {"vars", builtin_vars, 1, vars_doc}, {"xrange", builtin_xrange, 1, xrange_doc}, + {"zip", builtin_zip, 1, zip_doc}, {NULL, NULL}, }; From python-dev@python.org Thu Aug 3 16:46:20 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:46:20 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libfuncs.tex,1.66,1.67 Message-ID: <200008031546.IAA01956@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv1947 Modified Files: libfuncs.tex Log Message: Both PEP 201 Lockstep Iteration and SF patch #101030 have been accepted by the BDFL. Added documentation for zip() builtin. Index: libfuncs.tex =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/lib/libfuncs.tex,v retrieving revision 1.66 retrieving revision 1.67 diff -C2 -r1.66 -r1.67 *** libfuncs.tex 2000/06/30 16:06:19 1.66 --- libfuncs.tex 2000/08/03 15:46:17 1.67 *************** *** 704,705 **** --- 704,714 ---- used (e.g. when the loop is usually terminated with \keyword{break}). \end{funcdesc} + + \begin{funcdesc}{zip}{seq1\optional{, seq2\optional{, ...}}} + This function returns a list of tuples, where each tuple contains the + i-th element from each of the argument sequences. At least one + sequence is required, otherwise a \exception{TypeError} is raised. + The returned list is truncated in length to the length of the shortest + argument sequence. When the argument sequences are all of the same + length, \function{zip} is similar to \function{map} with an initial + None argument. From python-dev@python.org Thu Aug 3 16:48:10 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:48:10 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_b2.py,1.15,1.16 Message-ID: <200008031548.IAA02053@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv2044 Modified Files: test_b2.py Log Message: Added testsuite for new zip() builtin. Index: test_b2.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/test_b2.py,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -r1.15 -r1.16 *** test_b2.py 1999/12/23 15:36:42 1.15 --- test_b2.py 2000/08/03 15:48:07 1.16 *************** *** 256,259 **** --- 256,295 ---- raise TestFailed, 'xrange(0,10,2)' + print 'zip' + a = (1, 2, 3) + b = (4, 5, 6) + t = [(1, 4), (2, 5), (3, 6)] + if zip(a, b) <> t: raise TestFailed, 'zip(a, b) - same size, both tuples' + b = [4, 5, 6] + if zip(a, b) <> t: raise TestFailed, 'zip(a, b) - same size, tuple/list' + b = (4, 5, 6, 7) + if zip(a, b) <> t: raise TestFailed, 'zip(a, b) - b is longer' + class I: + def __getitem__(self, i): + if i < 0 or i > 2: raise IndexError + return i + 4 + if zip(a, I()) <> t: raise TestFailed, 'zip(a, b) - b is instance' + exc = 0 + try: + zip() + except TypeError: + exc = 1 + except: + e = sys.exc_info()[0] + raise TestFailed, 'zip() - no args, expected TypeError, got', e + if not exc: + raise TestFailed, 'zip() - no args, missing expected TypeError' + + exc = 0 + try: + zip(None) + except TypeError: + exc = 1 + except: + e = sys.exc_info()[0] + raise TestFailed, 'zip(None) - expected TypeError, got', e + if not exc: + raise TestFailed, 'zip(None) - missing expected TypeError' + # Epilogue -- unlink the temp file From python-dev@python.org Thu Aug 3 16:48:33 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:48:33 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test/output test_builtin,1.3,1.4 Message-ID: <200008031548.IAA02087@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test/output In directory slayer.i.sourceforge.net:/tmp/cvs-serv2077 Modified Files: test_builtin Log Message: Added output for testsuite for new zip() builtin. Index: test_builtin =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/output/test_builtin,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -r1.3 -r1.4 *** test_builtin 1997/08/22 21:27:40 1.3 --- test_builtin 2000/08/03 15:48:31 1.4 *************** *** 50,51 **** --- 50,52 ---- vars xrange + zip From python-dev@python.org Thu Aug 3 16:50:40 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:50:40 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test regrtest.py,1.19,1.20 Message-ID: <200008031550.IAA02360@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv2351 Modified Files: regrtest.py Log Message: Added a -l/--leakdebug option which turns on DEBUG_LEAK if the gc module is importable. Index: regrtest.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/regrtest.py,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -r1.19 -r1.20 *** regrtest.py 2000/07/16 12:04:31 1.19 --- regrtest.py 2000/08/03 15:50:37 1.20 *************** *** 9,18 **** Command line options: ! -v: verbose -- run tests in verbose mode with output to stdout ! -q: quiet -- don't print anything except if a test fails ! -g: generate -- write the output file for a test instead of comparing it ! -x: exclude -- arguments are tests to *exclude* ! -s: single -- run only a single test (see below) ! -r: random -- randomize test execution order If non-option arguments are present, they are names for tests to run, --- 9,19 ---- Command line options: ! -v: verbose -- run tests in verbose mode with output to stdout ! -q: quiet -- don't print anything except if a test fails ! -g: generate -- write the output file for a test instead of comparing it ! -x: exclude -- arguments are tests to *exclude* ! -s: single -- run only a single test (see below) ! -r: random -- randomize test execution order ! -l: leakdebug -- if cycle garbage collection is enabled, run with DEBUG_LEAK If non-option arguments are present, they are names for tests to run, *************** *** 40,44 **** def main(tests=None, testdir=None, verbose=0, quiet=0, generate=0, ! exclude=0, single=0, randomize=0): """Execute a test suite. --- 41,45 ---- def main(tests=None, testdir=None, verbose=0, quiet=0, generate=0, ! exclude=0, single=0, randomize=0, leakdebug=0): """Execute a test suite. *************** *** 57,68 **** files beginning with test_ will be used. ! The other six default arguments (verbose, quiet, generate, exclude, ! single, and randomize) allow programmers calling main() directly to ! set the values that would normally be set by flags on the command ! line. """ try: ! opts, args = getopt.getopt(sys.argv[1:], 'vgqxsr') except getopt.error, msg: print msg --- 58,70 ---- files beginning with test_ will be used. ! The other seven default arguments (verbose, quiet, generate, exclude, ! single, randomize, and leakdebug) allow programmers calling main() ! directly to set the values that would normally be set by flags on the ! command line. ! """ try: ! opts, args = getopt.getopt(sys.argv[1:], 'vgqxsrl') except getopt.error, msg: print msg *************** *** 76,79 **** --- 78,82 ---- if o == '-s': single = 1 if o == '-r': randomize = 1 + if o == '-l': leakdebug = 1 if generate and verbose: print "-g and -v don't go together!" *************** *** 82,85 **** --- 85,96 ---- bad = [] skipped = [] + + if leakdebug: + try: + import gc + except ImportError: + print 'cycle garbage collection not available' + else: + gc.set_debug(gc.DEBUG_LEAK) if single: From python-dev@python.org Thu Aug 3 16:52:32 2000 From: python-dev@python.org (Barry Warsaw) Date: Thu, 3 Aug 2000 08:52:32 -0700 Subject: [Python-checkins] CVS: python/dist/src Makefile.in,1.92,1.93 Message-ID: <200008031552.IAA02483@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src In directory slayer.i.sourceforge.net:/tmp/cvs-serv2473 Modified Files: Makefile.in Log Message: TESTOPTS: Since gc is enabled by default now (this may change for the final release), run "make test" with gc's LEAK_DEBUG enabled. This uses the new -l flag to regrtest. Index: Makefile.in =================================================================== RCS file: /cvsroot/python/python/dist/src/Makefile.in,v retrieving revision 1.92 retrieving revision 1.93 diff -C2 -r1.92 -r1.93 *** Makefile.in 2000/07/31 18:26:35 1.92 --- Makefile.in 2000/08/03 15:52:30 1.93 *************** *** 213,217 **** # Test the interpreter (twice, once without .pyc files, once with) ! TESTOPTS= TESTPROG= $(srcdir)/Lib/test/regrtest.py TESTPYTHON= ./python$(EXE) -tt --- 213,217 ---- # Test the interpreter (twice, once without .pyc files, once with) ! TESTOPTS= -l TESTPROG= $(srcdir)/Lib/test/regrtest.py TESTPYTHON= ./python$(EXE) -tt From python-dev@python.org Thu Aug 3 17:24:27 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:24:27 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include codecs.h,2.2,2.3 unicodeobject.h,2.16,2.17 Message-ID: <200008031624.JAA13125@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv12880/Include Modified Files: codecs.h unicodeobject.h Log Message: Changing the CNRI copyright notice according to CNRI's instructions. This is a notice without a date, which apparently is not a claim to copyright but only advice to the reader. IANAL. :-) Index: codecs.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/codecs.h,v retrieving revision 2.2 retrieving revision 2.3 diff -C2 -r2.2 -r2.3 *** codecs.h 2000/05/09 19:51:10 2.2 --- codecs.h 2000/08/03 16:24:24 2.3 *************** *** 12,16 **** Written by Marc-Andre Lemburg (mal@lemburg.com). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. ------------------------------------------------------------------------ */ --- 12,16 ---- Written by Marc-Andre Lemburg (mal@lemburg.com). ! Copyright (c) Corporation for National Research Initiatives. ------------------------------------------------------------------------ */ Index: unicodeobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/unicodeobject.h,v retrieving revision 2.16 retrieving revision 2.17 diff -C2 -r2.16 -r2.17 *** unicodeobject.h 2000/07/22 23:30:03 2.16 --- unicodeobject.h 2000/08/03 16:24:24 2.17 *************** *** 8,12 **** Unicode Integration Proposal (see file Misc/unicode.txt). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. --- 8,12 ---- Unicode Integration Proposal (see file Misc/unicode.txt). ! Copyright (c) Corporation for National Research Initiatives. From python-dev@python.org Thu Aug 3 17:24:28 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:24:28 -0700 Subject: [Python-checkins] CVS: python/dist/src/Python codecs.c,2.11,2.12 Message-ID: <200008031624.JAA13141@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Python In directory slayer.i.sourceforge.net:/tmp/cvs-serv12880/Python Modified Files: codecs.c Log Message: Changing the CNRI copyright notice according to CNRI's instructions. This is a notice without a date, which apparently is not a claim to copyright but only advice to the reader. IANAL. :-) Index: codecs.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/codecs.c,v retrieving revision 2.11 retrieving revision 2.12 diff -C2 -r2.11 -r2.12 *** codecs.c 2000/07/22 18:47:25 2.11 --- codecs.c 2000/08/03 16:24:25 2.12 *************** *** 5,9 **** Written by Marc-Andre Lemburg (mal@lemburg.com). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. ------------------------------------------------------------------------ */ --- 5,9 ---- Written by Marc-Andre Lemburg (mal@lemburg.com). ! Copyright (c) Corporation for National Research Initiatives. ------------------------------------------------------------------------ */ From python-dev@python.org Thu Aug 3 17:24:28 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:24:28 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules _codecsmodule.c,2.4,2.5 unicodedata.c,2.3,2.4 unicodedatabase.c,2.2,2.3 unicodedatabase.h,2.2,2.3 Message-ID: <200008031624.JAA13150@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv12880/Modules Modified Files: _codecsmodule.c unicodedata.c unicodedatabase.c unicodedatabase.h Log Message: Changing the CNRI copyright notice according to CNRI's instructions. This is a notice without a date, which apparently is not a claim to copyright but only advice to the reader. IANAL. :-) Index: _codecsmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_codecsmodule.c,v retrieving revision 2.4 retrieving revision 2.5 diff -C2 -r2.4 -r2.5 *** _codecsmodule.c 2000/07/21 06:00:06 2.4 --- _codecsmodule.c 2000/08/03 16:24:24 2.5 *************** *** 32,36 **** Written by Marc-Andre Lemburg (mal@lemburg.com). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. ------------------------------------------------------------------------ */ --- 32,36 ---- Written by Marc-Andre Lemburg (mal@lemburg.com). ! Copyright (c) Corporation for National Research Initiatives. ------------------------------------------------------------------------ */ Index: unicodedata.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/unicodedata.c,v retrieving revision 2.3 retrieving revision 2.4 diff -C2 -r2.3 -r2.4 *** unicodedata.c 2000/07/21 06:00:07 2.3 --- unicodedata.c 2000/08/03 16:24:24 2.4 *************** *** 7,11 **** Written by Marc-Andre Lemburg (mal@lemburg.com). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. ------------------------------------------------------------------------ */ --- 7,11 ---- Written by Marc-Andre Lemburg (mal@lemburg.com). ! Copyright (c) Corporation for National Research Initiatives. ------------------------------------------------------------------------ */ Index: unicodedatabase.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/unicodedatabase.c,v retrieving revision 2.2 retrieving revision 2.3 diff -C2 -r2.2 -r2.3 *** unicodedatabase.c 2000/03/31 17:26:09 2.2 --- unicodedatabase.c 2000/08/03 16:24:24 2.3 *************** *** 7,11 **** Written by Marc-Andre Lemburg (mal@lemburg.com). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. ------------------------------------------------------------------------ */ --- 7,11 ---- Written by Marc-Andre Lemburg (mal@lemburg.com). ! Copyright (c) Corporation for National Research Initiatives. ------------------------------------------------------------------------ */ Index: unicodedatabase.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/unicodedatabase.h,v retrieving revision 2.2 retrieving revision 2.3 diff -C2 -r2.2 -r2.3 *** unicodedatabase.h 2000/03/31 17:26:12 2.2 --- unicodedatabase.h 2000/08/03 16:24:25 2.3 *************** *** 7,11 **** Written by Marc-Andre Lemburg (mal@lemburg.com). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. ------------------------------------------------------------------------ */ --- 7,11 ---- Written by Marc-Andre Lemburg (mal@lemburg.com). ! Copyright (c) Corporation for National Research Initiatives. ------------------------------------------------------------------------ */ From python-dev@python.org Thu Aug 3 17:24:28 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:24:28 -0700 Subject: [Python-checkins] CVS: python/dist/src/Objects unicodectype.c,2.4,2.5 unicodeobject.c,2.53,2.54 Message-ID: <200008031624.JAA13145@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Objects In directory slayer.i.sourceforge.net:/tmp/cvs-serv12880/Objects Modified Files: unicodectype.c unicodeobject.c Log Message: Changing the CNRI copyright notice according to CNRI's instructions. This is a notice without a date, which apparently is not a claim to copyright but only advice to the reader. IANAL. :-) Index: unicodectype.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/unicodectype.c,v retrieving revision 2.4 retrieving revision 2.5 diff -C2 -r2.4 -r2.5 *** unicodectype.c 2000/07/06 13:57:38 2.4 --- unicodectype.c 2000/08/03 16:24:25 2.5 *************** *** 7,11 **** Written by Marc-Andre Lemburg (mal@lemburg.com). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. */ --- 7,11 ---- Written by Marc-Andre Lemburg (mal@lemburg.com). ! Copyright (c) Corporation for National Research Initiatives. */ Index: unicodeobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/unicodeobject.c,v retrieving revision 2.53 retrieving revision 2.54 diff -C2 -r2.53 -r2.54 *** unicodeobject.c 2000/07/31 15:28:04 2.53 --- unicodeobject.c 2000/08/03 16:24:25 2.54 *************** *** 5,9 **** Unicode Integration Proposal (see file Misc/unicode.txt). ! (c) Copyright CNRI, All Rights Reserved. NO WARRANTY. --- 5,9 ---- Unicode Integration Proposal (see file Misc/unicode.txt). ! Copyright (c) Corporation for National Research Initiatives. From python-dev@python.org Thu Aug 3 17:29:53 2000 From: python-dev@python.org (Fredrik Lundh) Date: Thu, 3 Aug 2000 09:29:53 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_sre.py,1.5,1.6 Message-ID: <200008031629.JAA13749@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv12492/Lib/test Modified Files: test_sre.py Log Message: -- added recursion limit (currently ~10,000 levels) -- improved error messages -- factored out SRE_COUNT; the same code is used by SRE_OP_REPEAT_ONE_TEMPLATE -- minor cleanups Index: test_sre.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/test_sre.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** test_sre.py 2000/08/01 13:16:55 1.5 --- test_sre.py 2000/08/03 16:29:50 1.6 *************** *** 265,268 **** --- 265,278 ---- print 'Exception raised on flag', flags + if verbose: + print 'Test engine limitations' + + # Try nasty case that overflows the straightforward recursive + # implementation of repeated groups. + try: + assert sre.match('(x)*', 50000*'x').span() == (0, 50000) + except RuntimeError, v: + print v + from re_tests import * From python-dev@python.org Thu Aug 3 17:29:53 2000 From: python-dev@python.org (Fredrik Lundh) Date: Thu, 3 Aug 2000 09:29:53 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.31,2.32 sre.h,2.17,2.18 Message-ID: <200008031629.JAA13751@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv12492/Modules Modified Files: _sre.c sre.h Log Message: -- added recursion limit (currently ~10,000 levels) -- improved error messages -- factored out SRE_COUNT; the same code is used by SRE_OP_REPEAT_ONE_TEMPLATE -- minor cleanups Index: _sre.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v retrieving revision 2.31 retrieving revision 2.32 diff -C2 -r2.31 -r2.32 *** _sre.c 2000/08/01 22:47:49 2.31 --- _sre.c 2000/08/03 16:29:50 2.32 *************** *** 14,17 **** --- 14,19 ---- * 00-07-21 fl reset lastindex in scanner methods (0.9.6) * 00-08-01 fl fixes for 1.6b1 (0.9.8) + * 00-08-02 fl moved SRE_COUNT out of the match method + * 00-08-03 fl added recursion limit * * Copyright (c) 1997-2000 by Secret Labs AB. All rights reserved. *************** *** 56,59 **** --- 58,64 ---- /* optional features */ + /* prevent run-away recursion (bad patterns on long strings) */ + #define USE_RECURSION_LIMIT 10000 + /* enables fast searching */ #define USE_FAST_SEARCH *************** *** 78,81 **** --- 83,87 ---- #define SRE_ERROR_ILLEGAL -1 /* illegal opcode */ #define SRE_ERROR_STATE -2 /* illegal state */ + #define SRE_ERROR_RECURSION_LIMIT -3 /* runaway recursion */ #define SRE_ERROR_MEMORY -9 /* out of memory */ *************** *** 211,234 **** static void - mark_init(SRE_STATE* state) - { - state->mark_stack = NULL; - state->mark_stack_size = state->mark_stack_base = 0; - } - - static void mark_fini(SRE_STATE* state) { ! #if 0 ! /* FIXME: debugging */ ! if (state->maxlevel > 0) ! printf("max %d\n", state->maxlevel); ! if (state->mark_stack_base > 0) ! printf("mark stack %d\n", state->mark_stack_base); ! #endif ! ! if (state->mark_stack) free(state->mark_stack); ! mark_init(state); } --- 217,227 ---- static void mark_fini(SRE_STATE* state) { ! if (state->mark_stack) { free(state->mark_stack); ! state->mark_stack = NULL; ! } ! state->mark_stack_size = state->mark_stack_base = 0; } *************** *** 305,308 **** --- 298,302 ---- #define SRE_CHAR unsigned char #define SRE_AT sre_at + #define SRE_COUNT sre_count #define SRE_MEMBER sre_member #define SRE_MATCH sre_match *************** *** 318,321 **** --- 312,316 ---- #undef SRE_MATCH #undef SRE_MEMBER + #undef SRE_COUNT #undef SRE_AT #undef SRE_CHAR *************** *** 325,328 **** --- 320,324 ---- #define SRE_CHAR Py_UNICODE #define SRE_AT sre_uat + #define SRE_COUNT sre_ucount #define SRE_MEMBER sre_umember #define SRE_MATCH sre_umatch *************** *** 395,405 **** switch (*set++) { - case SRE_OP_NEGATE: - ok = !ok; - break; - - case SRE_OP_FAILURE: - return !ok; - case SRE_OP_LITERAL: /* */ --- 391,394 ---- *************** *** 430,433 **** --- 419,429 ---- break; + case SRE_OP_NEGATE: + ok = !ok; + break; + + case SRE_OP_FAILURE: + return !ok; + default: /* internal error -- there's not much we can do about it *************** *** 438,445 **** } LOCAL(int) SRE_MATCH(SRE_STATE* state, SRE_CODE* pattern, int level) { ! /* check if string matches the given pattern. returns -1 for error, 0 for failure, and 1 for success */ --- 434,518 ---- } + LOCAL(int) SRE_MATCH(SRE_STATE* state, SRE_CODE* pattern, int level); + LOCAL(int) + SRE_COUNT(SRE_STATE* state, SRE_CODE* pattern, int maxcount, int level) + { + SRE_CODE chr; + SRE_CHAR* ptr = state->ptr; + SRE_CHAR* end = state->end; + int i; + + /* adjust end */ + if (maxcount < end - ptr && maxcount != 65535) + end = ptr + maxcount; + + switch (pattern[0]) { + + case SRE_OP_ANY: + /* repeated dot wildcard. */ + while (ptr < end && !SRE_IS_LINEBREAK(*ptr)) + ptr++; + break; + + case SRE_OP_ANY_ALL: + /* repeated dot wildcare. skip to the end of the target + string, and backtrack from there */ + ptr = end; + break; + + case SRE_OP_LITERAL: + /* repeated literal */ + chr = pattern[1]; + while (ptr < end && (SRE_CODE) *ptr == chr) + ptr++; + break; + + case SRE_OP_LITERAL_IGNORE: + /* repeated literal */ + chr = pattern[1]; + while (ptr < end && (SRE_CODE) state->lower(*ptr) == chr) + ptr++; + break; + + case SRE_OP_NOT_LITERAL: + /* repeated non-literal */ + chr = pattern[1]; + while (ptr < end && (SRE_CODE) *ptr != chr) + ptr++; + break; + + case SRE_OP_NOT_LITERAL_IGNORE: + /* repeated non-literal */ + chr = pattern[1]; + while (ptr < end && (SRE_CODE) state->lower(*ptr) != chr) + ptr++; + break; + + case SRE_OP_IN: + /* repeated set */ + while (ptr < end && SRE_MEMBER(pattern + 2, *ptr)) + ptr++; + break; + + default: + /* repeated single character pattern */ + while ((SRE_CHAR*) state->ptr < end) { + i = SRE_MATCH(state, pattern, level); + if (i < 0) + return i; + if (!i) + break; + } + return (SRE_CHAR*) state->ptr - ptr; + } + + return ptr - (SRE_CHAR*) state->ptr; + } + + LOCAL(int) SRE_MATCH(SRE_STATE* state, SRE_CODE* pattern, int level) { ! /* check if string matches the given pattern. returns <0 for error, 0 for failure, and 1 for success */ *************** *** 455,458 **** --- 528,536 ---- TRACE(("%8d: enter %d\n", PTR(ptr), level)); + #if defined(USE_RECURSION_LIMIT) + if (level > USE_RECURSION_LIMIT) + return SRE_ERROR_RECURSION_LIMIT; + #endif + if (pattern[0] == SRE_OP_INFO) { /* optimization info block */ *************** *** 466,473 **** } - /* FIXME: debugging */ - if (level > state->maxlevel) - state->maxlevel = level; - for (;;) { --- 544,547 ---- *************** *** 612,616 **** TRACE(("%8d: set lower(%c)\n", PTR(ptr), *ptr)); if (ptr >= end ! || !SRE_MEMBER(pattern+1, (SRE_CODE) state->lower(*ptr))) return 0; pattern += pattern[0]; --- 686,690 ---- TRACE(("%8d: set lower(%c)\n", PTR(ptr), *ptr)); if (ptr >= end ! || !SRE_MEMBER(pattern + 1, (SRE_CODE) state->lower(*ptr))) return 0; pattern += pattern[0]; *************** *** 675,693 **** /* <0=skip> code ... */ TRACE(("%8d: branch\n", PTR(ptr))); ! { ! lastmark = state->lastmark; ! while (pattern[0]) { ! TRACE(("%8d: try branch\n", PTR(ptr))); ! if (pattern[1] != SRE_OP_LITERAL || ! (ptr < end && (SRE_CODE) ptr[0] == pattern[2])) { ! state->ptr = ptr; ! i = SRE_MATCH(state, pattern + 1, level + 1); ! if (i) ! return i; ! } while (state->lastmark > lastmark) state->mark[state->lastmark--] = NULL; - pattern += pattern[0]; } } return 0; --- 749,779 ---- /* <0=skip> code ... */ TRACE(("%8d: branch\n", PTR(ptr))); ! lastmark = state->lastmark; ! while (pattern[0]) { ! SRE_CODE* code = pattern+1; ! TRACE(("%8d: try branch\n", PTR(ptr))); ! switch (code[0]) { ! case SRE_OP_IN: ! if (ptr >= end || !SRE_MEMBER(code + 2, ptr[0])) ! break; ! code += code[1] + 1; ! state->ptr = ptr + 1; ! goto branch; ! case SRE_OP_LITERAL: ! if (ptr >= end || (SRE_CODE) ptr[0] != code[1]) ! break; ! code += 2; ! state->ptr = ptr + 1; ! goto branch; ! default: ! state->ptr = ptr; ! branch: ! i = SRE_MATCH(state, code, level + 1); ! if (i) ! return i; while (state->lastmark > lastmark) state->mark[state->lastmark--] = NULL; } + pattern += pattern[0]; } return 0; *************** *** 708,806 **** if (ptr + pattern[1] > end) return 0; /* cannot match */ - - count = 0; - - switch (pattern[3]) { - - case SRE_OP_ANY: - /* repeated wildcard. */ - while (count < (int) pattern[2]) { - if (ptr >= end || SRE_IS_LINEBREAK(ptr[0])) - break; - ptr++; - count++; - } - break; - - case SRE_OP_ANY_ALL: - /* repeated wildcard. skip to the end of the target - string, and backtrack from there */ - if (ptr + pattern[1] > end) - return 0; /* cannot match */ - count = pattern[2]; - if (count > end - ptr) - count = end - ptr; - ptr += count; - break; - - case SRE_OP_LITERAL: - /* repeated literal */ - chr = pattern[4]; - while (count < (int) pattern[2]) { - if (ptr >= end || (SRE_CODE) ptr[0] != chr) - break; - ptr++; - count++; - } - break; - - case SRE_OP_LITERAL_IGNORE: - /* repeated literal */ - chr = pattern[4]; - while (count < (int) pattern[2]) { - if (ptr >= end || (SRE_CODE) state->lower(*ptr) != chr) - break; - ptr++; - count++; - } - break; ! case SRE_OP_NOT_LITERAL: ! /* repeated non-literal */ ! chr = pattern[4]; ! while (count < (int) pattern[2]) { ! if (ptr >= end || (SRE_CODE) ptr[0] == chr) ! break; ! ptr++; ! count++; ! } ! break; ! ! case SRE_OP_NOT_LITERAL_IGNORE: ! /* repeated non-literal */ ! chr = pattern[4]; ! while (count < (int) pattern[2]) { ! if (ptr >= end || (SRE_CODE) state->lower(ptr[0]) == chr) ! break; ! ptr++; ! count++; ! } ! break; ! case SRE_OP_IN: ! /* repeated set */ ! while (count < (int) pattern[2]) { ! if (ptr >= end || !SRE_MEMBER(pattern + 5, *ptr)) ! break; ! ptr++; ! count++; ! } ! break; ! default: ! /* repeated single character pattern */ ! state->ptr = ptr; ! while (count < (int) pattern[2]) { ! i = SRE_MATCH(state, pattern + 3, level + 1); ! if (i < 0) ! return i; ! if (!i) ! break; ! count++; ! } ! state->ptr = ptr; ! ptr += count; ! break; ! } /* when we arrive here, count contains the number of --- 794,805 ---- if (ptr + pattern[1] > end) return 0; /* cannot match */ ! state->ptr = ptr; ! count = SRE_COUNT(state, pattern + 3, pattern[2], level + 1); ! if (count < 0) ! return count; ! ptr += count; /* when we arrive here, count contains the number of *************** *** 905,908 **** --- 904,908 ---- TRACE(("%8d: match item (required)\n", PTR(ptr))); rp->count = count; + /* RECURSIVE */ i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) *************** *** 920,923 **** --- 920,924 ---- lastmark = state->lastmark; mark_save(state, 0, lastmark); + /* RECURSIVE */ i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) *************** *** 956,959 **** --- 957,961 ---- TRACE(("%8d: match item (required)\n", PTR(ptr))); rp->count = count; + /* RECURSIVE */ i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) *************** *** 979,982 **** --- 981,985 ---- TRACE(("%8d: match item (optional)\n", PTR(ptr))); rp->count = count; + /* RECURSIVE */ i = SRE_MATCH(state, rp->pattern + 3, level + 1); if (i) *************** *** 995,999 **** } ! static int SRE_SEARCH(SRE_STATE* state, SRE_CODE* pattern) { --- 998,1002 ---- } ! LOCAL(int) SRE_SEARCH(SRE_STATE* state, SRE_CODE* pattern) { *************** *** 1221,1227 **** state->repeat = NULL; - /* FIXME: debugging */ - state->maxlevel = 0; - mark_fini(state); } --- 1224,1227 ---- *************** *** 1237,1240 **** --- 1237,1244 ---- void* ptr; + memset(state, 0, sizeof(SRE_STATE)); + + state->lastindex = -1; + /* get pointer to string buffer */ buffer = string->ob_type->tp_as_buffer; *************** *** 1301,1309 **** state->lower = sre_lower; - state->mark_stack = NULL; - state->mark_stack_base = 0; - - state_reset(state); - return string; } --- 1305,1308 ---- *************** *** 1335,1338 **** --- 1334,1359 ---- } + static void + pattern_error(int status) + { + switch (status) { + case SRE_ERROR_RECURSION_LIMIT: + PyErr_SetString( + PyExc_RuntimeError, + "maximum recursion limit exceeded" + ); + break; + case SRE_ERROR_MEMORY: + PyErr_NoMemory(); + break; + default: + /* other error codes indicate compiler/engine bugs */ + PyErr_SetString( + PyExc_RuntimeError, + "internal error in regular expression engine" + ); + } + } + static PyObject* pattern_new_match(PatternObject* pattern, SRE_STATE* state, int status) *************** *** 1384,1399 **** return (PyObject*) match; ! } else if (status < 0) { ! /* internal error */ ! PyErr_SetString( ! PyExc_RuntimeError, "internal error in regular expression engine" ! ); ! return NULL; } ! Py_INCREF(Py_None); ! return Py_None; } --- 1405,1419 ---- return (PyObject*) match; ! } else if (status == 0) { ! /* no match */ ! Py_INCREF(Py_None); ! return Py_None; } ! /* internal error */ ! pattern_error(status); ! return NULL; } *************** *** 1642,1650 **** break; ! /* internal error */ ! PyErr_SetString( ! PyExc_RuntimeError, ! "internal error in regular expression engine" ! ); goto error; --- 1662,1666 ---- break; ! pattern_error(status); goto error; Index: sre.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/sre.h,v retrieving revision 2.17 retrieving revision 2.18 diff -C2 -r2.17 -r2.18 *** sre.h 2000/08/01 21:05:41 2.17 --- sre.h 2000/08/03 16:29:50 2.18 *************** *** 75,80 **** /* hooks */ SRE_TOLOWER_HOOK lower; - /* debugging */ - int maxlevel; } SRE_STATE; --- 75,78 ---- From python-dev@python.org Thu Aug 3 17:29:53 2000 From: python-dev@python.org (Fredrik Lundh) Date: Thu, 3 Aug 2000 09:29:53 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test/output test_sre,1.8,1.9 Message-ID: <200008031629.JAA13756@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test/output In directory slayer.i.sourceforge.net:/tmp/cvs-serv12492/Lib/test/output Modified Files: test_sre Log Message: -- added recursion limit (currently ~10,000 levels) -- improved error messages -- factored out SRE_COUNT; the same code is used by SRE_OP_REPEAT_ONE_TEMPLATE -- minor cleanups Index: test_sre =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/test/output/test_sre,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -r1.8 -r1.9 *** test_sre 2000/08/01 13:01:43 1.8 --- test_sre 2000/08/03 16:29:50 1.9 *************** *** 1 **** --- 1,2 ---- test_sre + maximum recursion limit exceeded From python-dev@python.org Thu Aug 3 17:35:03 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:35:03 -0700 Subject: [Python-checkins] CVS: python/dist/src/Objects unicodeobject.c,2.54,2.54.2.1 Message-ID: <200008031635.JAA14253@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Objects In directory slayer.i.sourceforge.net:/tmp/cvs-serv14231 Modified Files: Tag: cnri-16-start unicodeobject.c Log Message: Add back #include "mymath.h" on the 1.6 branch because pyport.h doesn't yet exist in 1.6. Index: unicodeobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/unicodeobject.c,v retrieving revision 2.54 retrieving revision 2.54.2.1 diff -C2 -r2.54 -r2.54.2.1 *** unicodeobject.c 2000/08/03 16:24:25 2.54 --- unicodeobject.c 2000/08/03 16:35:00 2.54.2.1 *************** *** 65,68 **** --- 65,69 ---- #include "Python.h" + #include "mymath.h" #include "unicodeobject.h" #include "ucnhash.h" From python-dev@python.org Thu Aug 3 17:42:16 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:42:16 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include abstract.h,2.25,2.26 Message-ID: <200008031642.JAA14860@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv14777/Include Modified Files: abstract.h Log Message: Remobe beopen/cnri/cwi copyrights, according to CNRI instructions. This doesn't change the copyright status for these files -- just the markings! Doing it on the main branch for these three files for which the HEAD revision was pushed back into 1.6. Index: abstract.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/abstract.h,v retrieving revision 2.25 retrieving revision 2.26 diff -C2 -r2.25 -r2.26 *** abstract.h 2000/07/17 09:22:26 2.25 --- abstract.h 2000/08/03 16:42:14 2.26 *************** *** 5,18 **** #endif - /*********************************************************** - Copyright (c) 2000, BeOpen.com. - Copyright (c) 1995-2000, Corporation for National Research Initiatives. - Copyright (c) 1990-1995, Stichting Mathematisch Centrum. - All rights reserved. - - See the file "Misc/COPYRIGHT" for information on usage and - redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - ******************************************************************/ - /* Abstract Object Interface (many thanks to Jim Fulton) */ --- 5,8 ---- From python-dev@python.org Thu Aug 3 17:42:16 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:42:16 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules socketmodule.c,1.125,1.126 Message-ID: <200008031642.JAA14852@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv14777/Modules Modified Files: socketmodule.c Log Message: Remobe beopen/cnri/cwi copyrights, according to CNRI instructions. This doesn't change the copyright status for these files -- just the markings! Doing it on the main branch for these three files for which the HEAD revision was pushed back into 1.6. Index: socketmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/socketmodule.c,v retrieving revision 1.125 retrieving revision 1.126 diff -C2 -r1.125 -r1.126 *** socketmodule.c 2000/08/03 02:06:16 1.125 --- socketmodule.c 2000/08/03 16:42:13 1.126 *************** *** 1,12 **** - /*********************************************************** - Copyright (c) 2000, BeOpen.com. - Copyright (c) 1995-2000, Corporation for National Research Initiatives. - Copyright (c) 1990-1995, Stichting Mathematisch Centrum. - All rights reserved. - - See the file "Misc/COPYRIGHT" for information on usage and - redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - ******************************************************************/ - /* Socket module */ --- 1,2 ---- From python-dev@python.org Thu Aug 3 17:42:16 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:42:16 -0700 Subject: [Python-checkins] CVS: python/dist/src/Objects abstract.c,2.43,2.44 Message-ID: <200008031642.JAA14856@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Objects In directory slayer.i.sourceforge.net:/tmp/cvs-serv14777/Objects Modified Files: abstract.c Log Message: Remobe beopen/cnri/cwi copyrights, according to CNRI instructions. This doesn't change the copyright status for these files -- just the markings! Doing it on the main branch for these three files for which the HEAD revision was pushed back into 1.6. Index: abstract.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/abstract.c,v retrieving revision 2.43 retrieving revision 2.44 diff -C2 -r2.43 -r2.44 *** abstract.c 2000/07/22 23:59:32 2.43 --- abstract.c 2000/08/03 16:42:14 2.44 *************** *** 1,12 **** - /*********************************************************** - Copyright (c) 2000, BeOpen.com. - Copyright (c) 1995-2000, Corporation for National Research Initiatives. - Copyright (c) 1990-1995, Stichting Mathematisch Centrum. - All rights reserved. - - See the file "Misc/COPYRIGHT" for information on usage and - redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. - ******************************************************************/ - /* Abstract Object Interface (many thanks to Jim Fulton) */ --- 1,2 ---- From python-dev@python.org Thu Aug 3 17:48:10 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:48:10 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include Python.h,2.16,2.16.2.1 bitset.h,2.9,2.9.4.1 bufferobject.h,2.2,2.2.4.1 ceval.h,2.31,2.31.2.1 classobject.h,2.28,2.28.4.1 cobject.h,2.5,2.5.4.1 compile.h,2.19,2.19.4.1 dictobject.h,2.16,2.16.2.1 errcode.h,2.8,2.8.4.1 eval.h,2.10,2.10.4.1 fileobject.h,2.17,2.17.4.1 floatobject.h,2.13,2.13.2.1 frameobject.h,2.24,2.24.4.1 funcobject.h,2.16,2.16.4.1 grammar.h,2.10,2.10.4.1 import.h,2.22,2.22.4.1 intobject.h,2.17,2.17.2.1 intrcheck.h,2.5,2.5.4.1 listobject.h,2.17,2.17.2.1 longintrepr.h,2.5,2.5.4.1 longobject.h,2.13,2.13.2.1 marshal.h,2.6,2.6.4.1 metagrammar.h,2.7,2.7.4.1 methodobject.h,2.16,2.16.4.1 modsupport.h,2.28,2.28.2.1 moduleobject.h,2.13,2.13.4.1 mymalloc.h,2.19,2.19.2.1 myproto.h,2.6,2.6.4.1 myselect.h,2.10,2.10.2.1 mytime.h,2.4,2.4.4.1 node.h,2.12,2.12.4.1 object.h,2.54,2.54.2.1 objimpl.h,2.15,2.15.2.1 opcode.h,2.23,2.23.2.1 osdefs.h,2.10,2.10.4.1 parsetok.h,2.10,2.10.4.1 patchlevel.h,2.35.2.1,2.35.2.2 pgenheaders.h,2.17,2.17.4.1 pyd! ebug.h,2.11,2.11.2.1 pyerrors.h,2.35,2.35.2.1 pystate.h,2.9,2.9.4.1 pythonrun.h,2.26,2.26.4.1 pythread.h,2.13,2.13.4.1 rangeobject.h,2.11,2.11.4.1 stringobject.h,2.17,2.17.4.1 structmember.h,2.12,2.12.4.1 sysmodule.h,2.17,2.17.4.1 token.h,2.12,2.12.4.1 traceback.h,2.14,2.14.4.1 tupleobject.h,2.20,2.20.2.1 Message-ID: <200008031648.JAA15532@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv15472 Modified Files: Tag: cnri-16-start Python.h bitset.h bufferobject.h ceval.h classobject.h cobject.h compile.h dictobject.h errcode.h eval.h fileobject.h floatobject.h frameobject.h funcobject.h grammar.h import.h intobject.h intrcheck.h listobject.h longintrepr.h longobject.h marshal.h metagrammar.h methodobject.h modsupport.h moduleobject.h mymalloc.h myproto.h myselect.h mytime.h node.h object.h objimpl.h opcode.h osdefs.h parsetok.h patchlevel.h pgenheaders.h pydebug.h pyerrors.h pystate.h pythonrun.h pythread.h rangeobject.h stringobject.h structmember.h sysmodule.h token.h traceback.h tupleobject.h Log Message: Remove CWI notice per CNRI instructions. Index: Python.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/Python.h,v retrieving revision 2.16 retrieving revision 2.16.2.1 diff -C2 -r2.16 -r2.16.2.1 *** Python.h 2000/05/08 13:35:17 2.16 --- Python.h 2000/08/03 16:48:06 2.16.2.1 *************** *** 3,37 **** /* Since this is a "meta-include" file, no #ifdef __cplusplus / extern "C" { */ - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Include nearly all Python header files */ --- 3,6 ---- Index: bitset.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/bitset.h,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** bitset.h 1996/10/25 14:37:47 2.9 --- bitset.h 2000/08/03 16:48:06 2.9.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Bitset interface */ --- 5,8 ---- Index: bufferobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/bufferobject.h,v retrieving revision 2.2 retrieving revision 2.2.4.1 diff -C2 -r2.2 -r2.2.4.1 *** bufferobject.h 1998/12/04 18:47:51 2.2 --- bufferobject.h 2000/08/03 16:48:06 2.2.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Buffer object interface */ --- 5,8 ---- Index: ceval.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/ceval.h,v retrieving revision 2.31 retrieving revision 2.31.2.1 diff -C2 -r2.31 -r2.31.2.1 *** ceval.h 2000/05/08 14:04:54 2.31 --- ceval.h 2000/08/03 16:48:06 2.31.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Interface to random parts in ceval.c */ --- 5,8 ---- Index: classobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/classobject.h,v retrieving revision 2.28 retrieving revision 2.28.4.1 diff -C2 -r2.28 -r2.28.4.1 *** classobject.h 1998/12/04 18:47:53 2.28 --- classobject.h 2000/08/03 16:48:06 2.28.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Class object interface */ --- 5,8 ---- Index: cobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/cobject.h,v retrieving revision 2.5 retrieving revision 2.5.4.1 diff -C2 -r2.5 -r2.5.4.1 *** cobject.h 1998/12/04 18:47:54 2.5 --- cobject.h 2000/08/03 16:48:06 2.5.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* C objects to be exported from one extension module to another. --- 5,8 ---- Index: compile.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/compile.h,v retrieving revision 2.19 retrieving revision 2.19.4.1 diff -C2 -r2.19 -r2.19.4.1 *** compile.h 1998/12/04 18:47:55 2.19 --- compile.h 2000/08/03 16:48:06 2.19.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Definitions for bytecode */ --- 5,8 ---- Index: dictobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/dictobject.h,v retrieving revision 2.16 retrieving revision 2.16.2.1 diff -C2 -r2.16 -r2.16.2.1 *** dictobject.h 2000/03/30 22:27:28 2.16 --- dictobject.h 2000/08/03 16:48:06 2.16.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Dictionary object type -- mapping from hashable object to object */ --- 5,8 ---- Index: errcode.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/errcode.h,v retrieving revision 2.8 retrieving revision 2.8.4.1 diff -C2 -r2.8 -r2.8.4.1 *** errcode.h 1998/04/09 21:37:20 2.8 --- errcode.h 2000/08/03 16:48:06 2.8.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Error codes passed around between file input, tokenizer, parser and interpreter. This is necessary so we can turn them into Python --- 5,8 ---- Index: eval.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/eval.h,v retrieving revision 2.10 retrieving revision 2.10.4.1 diff -C2 -r2.10 -r2.10.4.1 *** eval.h 1998/12/04 18:47:58 2.10 --- eval.h 2000/08/03 16:48:06 2.10.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Interface to execute compiled code */ --- 5,8 ---- Index: fileobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/fileobject.h,v retrieving revision 2.17 retrieving revision 2.17.4.1 diff -C2 -r2.17 -r2.17.4.1 *** fileobject.h 1998/12/04 18:47:59 2.17 --- fileobject.h 2000/08/03 16:48:06 2.17.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* File object interface */ --- 5,8 ---- Index: floatobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/floatobject.h,v retrieving revision 2.13 retrieving revision 2.13.2.1 diff -C2 -r2.13 -r2.13.2.1 *** floatobject.h 1999/10/12 19:54:34 2.13 --- floatobject.h 2000/08/03 16:48:06 2.13.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Float object interface */ --- 5,8 ---- Index: frameobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/frameobject.h,v retrieving revision 2.24 retrieving revision 2.24.4.1 diff -C2 -r2.24 -r2.24.4.1 *** frameobject.h 1998/12/04 18:48:01 2.24 --- frameobject.h 2000/08/03 16:48:06 2.24.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Frame object interface */ --- 5,8 ---- Index: funcobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/funcobject.h,v retrieving revision 2.16 retrieving revision 2.16.4.1 diff -C2 -r2.16 -r2.16.4.1 *** funcobject.h 1998/12/04 18:48:02 2.16 --- funcobject.h 2000/08/03 16:48:06 2.16.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Function object interface */ --- 5,8 ---- Index: grammar.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/grammar.h,v retrieving revision 2.10 retrieving revision 2.10.4.1 diff -C2 -r2.10 -r2.10.4.1 *** grammar.h 1997/08/12 14:57:08 2.10 --- grammar.h 2000/08/03 16:48:06 2.10.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Grammar interface */ --- 5,8 ---- Index: import.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/import.h,v retrieving revision 2.22 retrieving revision 2.22.4.1 diff -C2 -r2.22 -r2.22.4.1 *** import.h 1999/01/04 16:39:38 2.22 --- import.h 2000/08/03 16:48:06 2.22.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Module definition and import interface */ --- 5,8 ---- Index: intobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/intobject.h,v retrieving revision 2.17 retrieving revision 2.17.2.1 diff -C2 -r2.17 -r2.17.2.1 *** intobject.h 2000/04/05 20:11:08 2.17 --- intobject.h 2000/08/03 16:48:06 2.17.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Integer object interface */ --- 5,8 ---- Index: intrcheck.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/intrcheck.h,v retrieving revision 2.5 retrieving revision 2.5.4.1 diff -C2 -r2.5 -r2.5.4.1 *** intrcheck.h 1998/12/04 18:48:04 2.5 --- intrcheck.h 2000/08/03 16:48:06 2.5.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - extern DL_IMPORT(int) PyOS_InterruptOccurred Py_PROTO((void)); extern DL_IMPORT(void) PyOS_InitInterrupts Py_PROTO((void)); --- 5,8 ---- Index: listobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/listobject.h,v retrieving revision 2.17 retrieving revision 2.17.2.1 diff -C2 -r2.17 -r2.17.2.1 *** listobject.h 2000/03/01 15:06:53 2.17 --- listobject.h 2000/08/03 16:48:06 2.17.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* List object interface */ --- 5,8 ---- Index: longintrepr.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/longintrepr.h,v retrieving revision 2.5 retrieving revision 2.5.4.1 diff -C2 -r2.5 -r2.5.4.1 *** longintrepr.h 1998/12/04 18:48:06 2.5 --- longintrepr.h 2000/08/03 16:48:06 2.5.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* This is published for the benefit of "friend" marshal.c only. */ --- 5,8 ---- Index: longobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/longobject.h,v retrieving revision 2.13 retrieving revision 2.13.2.1 diff -C2 -r2.13 -r2.13.2.1 *** longobject.h 2000/04/05 20:11:08 2.13 --- longobject.h 2000/08/03 16:48:06 2.13.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Long (arbitrary precision) integer object interface */ --- 5,8 ---- Index: marshal.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/marshal.h,v retrieving revision 2.6 retrieving revision 2.6.4.1 diff -C2 -r2.6 -r2.6.4.1 *** marshal.h 1998/12/04 18:48:07 2.6 --- marshal.h 2000/08/03 16:48:06 2.6.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Interface for marshal.c */ --- 5,8 ---- Index: metagrammar.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/metagrammar.h,v retrieving revision 2.7 retrieving revision 2.7.4.1 diff -C2 -r2.7 -r2.7.4.1 *** metagrammar.h 1996/10/25 14:38:29 2.7 --- metagrammar.h 2000/08/03 16:48:06 2.7.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #define MSTART 256 #define RULE 257 --- 5,8 ---- Index: methodobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/methodobject.h,v retrieving revision 2.16 retrieving revision 2.16.4.1 diff -C2 -r2.16 -r2.16.4.1 *** methodobject.h 1998/12/04 18:48:08 2.16 --- methodobject.h 2000/08/03 16:48:06 2.16.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Method object interface */ --- 5,8 ---- Index: modsupport.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/modsupport.h,v retrieving revision 2.28 retrieving revision 2.28.2.1 diff -C2 -r2.28 -r2.28.2.1 *** modsupport.h 2000/03/29 01:46:45 2.28 --- modsupport.h 2000/08/03 16:48:06 2.28.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Module support interface */ --- 5,8 ---- Index: moduleobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/moduleobject.h,v retrieving revision 2.13 retrieving revision 2.13.4.1 diff -C2 -r2.13 -r2.13.4.1 *** moduleobject.h 1999/02/15 14:43:11 2.13 --- moduleobject.h 2000/08/03 16:48:06 2.13.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Module object interface */ --- 5,8 ---- Index: mymalloc.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/mymalloc.h,v retrieving revision 2.19 retrieving revision 2.19.2.1 diff -C2 -r2.19 -r2.19.2.1 *** mymalloc.h 2000/05/05 15:36:09 2.19 --- mymalloc.h 2000/08/03 16:48:06 2.19.2.1 *************** *** 1,35 **** #ifndef Py_MYMALLOC_H #define Py_MYMALLOC_H - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Lowest-level memory allocation interface */ --- 1,4 ---- Index: myproto.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/myproto.h,v retrieving revision 2.6 retrieving revision 2.6.4.1 diff -C2 -r2.6 -r2.6.4.1 *** myproto.h 1997/05/07 23:50:40 2.6 --- myproto.h 2000/08/03 16:48:06 2.6.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #ifdef HAVE_PROTOTYPES #define Py_PROTO(x) x --- 5,8 ---- Index: myselect.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/myselect.h,v retrieving revision 2.10 retrieving revision 2.10.2.1 diff -C2 -r2.10 -r2.10.2.1 *** myselect.h 2000/04/24 15:12:54 2.10 --- myselect.h 2000/08/03 16:48:06 2.10.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Include file for users of select() */ --- 5,8 ---- Index: mytime.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/mytime.h,v retrieving revision 2.4 retrieving revision 2.4.4.1 diff -C2 -r2.4 -r2.4.4.1 *** mytime.h 1996/10/25 14:38:42 2.4 --- mytime.h 2000/08/03 16:48:06 2.4.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Include file instead of and/or */ --- 5,8 ---- Index: node.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/node.h,v retrieving revision 2.12 retrieving revision 2.12.4.1 diff -C2 -r2.12 -r2.12.4.1 *** node.h 1998/12/04 18:48:11 2.12 --- node.h 2000/08/03 16:48:06 2.12.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parse tree node interface */ --- 5,8 ---- Index: object.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/object.h,v retrieving revision 2.54 retrieving revision 2.54.2.1 diff -C2 -r2.54 -r2.54.2.1 *** object.h 2000/04/24 15:40:45 2.54 --- object.h 2000/08/03 16:48:06 2.54.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Object and type object interface */ --- 5,8 ---- Index: objimpl.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/objimpl.h,v retrieving revision 2.15 retrieving revision 2.15.2.1 diff -C2 -r2.15 -r2.15.2.1 *** objimpl.h 2000/05/03 23:44:23 2.15 --- objimpl.h 2000/08/03 16:48:06 2.15.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include "mymalloc.h" --- 5,8 ---- Index: opcode.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/opcode.h,v retrieving revision 2.23 retrieving revision 2.23.2.1 diff -C2 -r2.23 -r2.23.2.1 *** opcode.h 2000/03/29 00:10:03 2.23 --- opcode.h 2000/08/03 16:48:06 2.23.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Instruction opcodes for compiled code */ --- 5,8 ---- Index: osdefs.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/osdefs.h,v retrieving revision 2.10 retrieving revision 2.10.4.1 diff -C2 -r2.10 -r2.10.4.1 *** osdefs.h 1997/12/05 21:39:25 2.10 --- osdefs.h 2000/08/03 16:48:06 2.10.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Operating system dependencies */ --- 5,8 ---- Index: parsetok.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/parsetok.h,v retrieving revision 2.10 retrieving revision 2.10.4.1 diff -C2 -r2.10 -r2.10.4.1 *** parsetok.h 1998/12/04 18:48:14 2.10 --- parsetok.h 2000/08/03 16:48:06 2.10.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser-tokenizer link interface */ --- 5,8 ---- Index: patchlevel.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/patchlevel.h,v retrieving revision 2.35.2.1 retrieving revision 2.35.2.2 diff -C2 -r2.35.2.1 -r2.35.2.2 *** patchlevel.h 2000/08/01 16:42:32 2.35.2.1 --- patchlevel.h 2000/08/03 16:48:06 2.35.2.2 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Newfangled version identification scheme. --- 1,2 ---- Index: pgenheaders.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pgenheaders.h,v retrieving revision 2.17 retrieving revision 2.17.4.1 diff -C2 -r2.17 -r2.17.4.1 *** pgenheaders.h 1998/12/04 18:48:15 2.17 --- pgenheaders.h 2000/08/03 16:48:06 2.17.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Include files and extern declarations used by most of the parser. */ --- 5,8 ---- Index: pydebug.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pydebug.h,v retrieving revision 2.11 retrieving revision 2.11.2.1 diff -C2 -r2.11 -r2.11.2.1 *** pydebug.h 2000/05/01 17:51:41 2.11 --- pydebug.h 2000/08/03 16:48:06 2.11.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #ifndef Py_PYDEBUG_H #define Py_PYDEBUG_H --- 1,2 ---- Index: pyerrors.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pyerrors.h,v retrieving revision 2.35 retrieving revision 2.35.2.1 diff -C2 -r2.35 -r2.35.2.1 *** pyerrors.h 2000/03/10 22:33:32 2.35 --- pyerrors.h 2000/08/03 16:48:06 2.35.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Error handling definitions */ --- 5,8 ---- Index: pystate.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pystate.h,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** pystate.h 1998/12/21 20:21:19 2.9 --- pystate.h 2000/08/03 16:48:06 2.9.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Thread and interpreter state structures and their interfaces */ --- 5,8 ---- Index: pythonrun.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pythonrun.h,v retrieving revision 2.26 retrieving revision 2.26.4.1 diff -C2 -r2.26 -r2.26.4.1 *** pythonrun.h 1998/12/04 18:48:18 2.26 --- pythonrun.h 2000/08/03 16:48:06 2.26.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Interfaces to parse and execute pieces of python code */ --- 5,8 ---- Index: pythread.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/pythread.h,v retrieving revision 2.13 retrieving revision 2.13.4.1 diff -C2 -r2.13 -r2.13.4.1 *** pythread.h 1999/03/24 19:02:09 2.13 --- pythread.h 2000/08/03 16:48:06 2.13.4.1 *************** *** 2,36 **** #define Py_PYTHREAD_H - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #define NO_EXIT_PROG /* don't define PyThread_exit_prog() */ /* (the result is no use of signals on SGI) */ --- 2,5 ---- Index: rangeobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/rangeobject.h,v retrieving revision 2.11 retrieving revision 2.11.4.1 diff -C2 -r2.11 -r2.11.4.1 *** rangeobject.h 1998/12/04 18:48:19 2.11 --- rangeobject.h 2000/08/03 16:48:06 2.11.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Range object interface */ --- 1,2 ---- Index: stringobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/stringobject.h,v retrieving revision 2.17 retrieving revision 2.17.4.1 diff -C2 -r2.17 -r2.17.4.1 *** stringobject.h 1998/12/04 18:48:21 2.17 --- stringobject.h 2000/08/03 16:48:06 2.17.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* String object interface */ --- 5,8 ---- Index: structmember.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/structmember.h,v retrieving revision 2.12 retrieving revision 2.12.4.1 diff -C2 -r2.12 -r2.12.4.1 *** structmember.h 1998/12/04 18:48:22 2.12 --- structmember.h 2000/08/03 16:48:06 2.12.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Interface to map C struct members to Python object attributes */ --- 5,8 ---- Index: sysmodule.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/sysmodule.h,v retrieving revision 2.17 retrieving revision 2.17.4.1 diff -C2 -r2.17 -r2.17.4.1 *** sysmodule.h 1998/12/04 18:48:22 2.17 --- sysmodule.h 2000/08/03 16:48:06 2.17.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* System module interface */ --- 5,8 ---- Index: token.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/token.h,v retrieving revision 2.12 retrieving revision 2.12.4.1 diff -C2 -r2.12 -r2.12.4.1 *** token.h 1998/12/04 18:48:23 2.12 --- token.h 2000/08/03 16:48:06 2.12.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Token types */ --- 5,8 ---- Index: traceback.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/traceback.h,v retrieving revision 2.14 retrieving revision 2.14.4.1 diff -C2 -r2.14 -r2.14.4.1 *** traceback.h 1998/12/04 18:48:24 2.14 --- traceback.h 2000/08/03 16:48:06 2.14.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Traceback interface */ --- 5,8 ---- Index: tupleobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/tupleobject.h,v retrieving revision 2.20 retrieving revision 2.20.2.1 diff -C2 -r2.20 -r2.20.2.1 *** tupleobject.h 2000/03/01 15:06:53 2.20 --- tupleobject.h 2000/08/03 16:48:06 2.20.2.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Tuple object interface */ --- 5,8 ---- From python-dev@python.org Thu Aug 3 17:48:55 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:48:55 -0700 Subject: [Python-checkins] CVS: python/dist/src/Objects bufferobject.c,2.7,2.7.2.1 classobject.c,2.86,2.86.2.1 cobject.c,2.8,2.8.2.1 complexobject.c,2.24,2.24.2.1 dictobject.c,2.52,2.52.2.1 fileobject.c,2.73,2.73.2.1 floatobject.c,2.57,2.57.2.1 frameobject.c,2.39,2.39.2.1 funcobject.c,2.20,2.20.2.1 intobject.c,2.42,2.42.2.1 listobject.c,2.69,2.69.2.1 longobject.c,1.57,1.57.2.1 methodobject.c,2.26,2.26.2.1 moduleobject.c,2.25,2.25.2.1 object.c,2.70,2.70.2.1 rangeobject.c,2.12,2.12.2.1 stringobject.c,2.65,2.65.2.1 tupleobject.c,2.33,2.33.2.1 typeobject.c,2.12,2.12.4.1 xxobject.c,2.15,2.15.2.1 Message-ID: <200008031648.JAA15606@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Objects In directory slayer.i.sourceforge.net:/tmp/cvs-serv15573 Modified Files: Tag: cnri-16-start bufferobject.c classobject.c cobject.c complexobject.c dictobject.c fileobject.c floatobject.c frameobject.c funcobject.c intobject.c listobject.c longobject.c methodobject.c moduleobject.c object.c rangeobject.c stringobject.c tupleobject.c typeobject.c xxobject.c Log Message: Remove CWI notice per CNRI instructions. Index: bufferobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/bufferobject.c,v retrieving revision 2.7 retrieving revision 2.7.2.1 diff -C2 -r2.7 -r2.7.2.1 *** bufferobject.c 2000/05/03 23:44:34 2.7 --- bufferobject.c 2000/08/03 16:48:51 2.7.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Buffer object implementation */ --- 1,2 ---- Index: classobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/classobject.c,v retrieving revision 2.86 retrieving revision 2.86.2.1 diff -C2 -r2.86 -r2.86.2.1 *** classobject.c 2000/05/03 23:44:34 2.86 --- classobject.c 2000/08/03 16:48:51 2.86.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Class object implementation */ --- 1,2 ---- Index: cobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/cobject.c,v retrieving revision 2.8 retrieving revision 2.8.2.1 diff -C2 -r2.8 -r2.8.2.1 *** cobject.c 2000/05/03 23:44:34 2.8 --- cobject.c 2000/08/03 16:48:51 2.8.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Wrap void* pointers to be passed between C modules */ --- 1,2 ---- Index: complexobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/complexobject.c,v retrieving revision 2.24 retrieving revision 2.24.2.1 diff -C2 -r2.24 -r2.24.2.1 *** complexobject.c 2000/05/03 23:44:34 2.24 --- complexobject.c 2000/08/03 16:48:51 2.24.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Complex object implementation */ --- 1,2 ---- Index: dictobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/dictobject.c,v retrieving revision 2.52 retrieving revision 2.52.2.1 diff -C2 -r2.52 -r2.52.2.1 *** dictobject.c 2000/05/03 23:44:34 2.52 --- dictobject.c 2000/08/03 16:48:51 2.52.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Dictionary object implementation using a hash table */ --- 1,2 ---- Index: fileobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/fileobject.c,v retrieving revision 2.73 retrieving revision 2.73.2.1 diff -C2 -r2.73 -r2.73.2.1 *** fileobject.c 2000/05/03 23:44:34 2.73 --- fileobject.c 2000/08/03 16:48:51 2.73.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* File object implementation */ --- 1,2 ---- Index: floatobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/floatobject.c,v retrieving revision 2.57 retrieving revision 2.57.2.1 diff -C2 -r2.57 -r2.57.2.1 *** floatobject.c 2000/05/03 23:44:34 2.57 --- floatobject.c 2000/08/03 16:48:51 2.57.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Float object implementation */ --- 1,2 ---- Index: frameobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/frameobject.c,v retrieving revision 2.39 retrieving revision 2.39.2.1 diff -C2 -r2.39 -r2.39.2.1 *** frameobject.c 2000/05/03 23:44:34 2.39 --- frameobject.c 2000/08/03 16:48:51 2.39.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Frame object implementation */ --- 1,2 ---- Index: funcobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/funcobject.c,v retrieving revision 2.20 retrieving revision 2.20.2.1 diff -C2 -r2.20 -r2.20.2.1 *** funcobject.c 2000/05/03 23:44:35 2.20 --- funcobject.c 2000/08/03 16:48:51 2.20.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Function object implementation */ --- 1,2 ---- Index: intobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/intobject.c,v retrieving revision 2.42 retrieving revision 2.42.2.1 diff -C2 -r2.42 -r2.42.2.1 *** intobject.c 2000/05/09 14:27:48 2.42 --- intobject.c 2000/08/03 16:48:51 2.42.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Integer object implementation */ --- 1,2 ---- Index: listobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/listobject.c,v retrieving revision 2.69 retrieving revision 2.69.2.1 diff -C2 -r2.69 -r2.69.2.1 *** listobject.c 2000/05/03 23:44:35 2.69 --- listobject.c 2000/08/03 16:48:51 2.69.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* List object implementation */ --- 1,2 ---- Index: longobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/longobject.c,v retrieving revision 1.57 retrieving revision 1.57.2.1 diff -C2 -r1.57 -r1.57.2.1 *** longobject.c 2000/05/03 23:44:35 1.57 --- longobject.c 2000/08/03 16:48:51 1.57.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Long (arbitrary precision) integer object implementation */ --- 1,2 ---- Index: methodobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/methodobject.c,v retrieving revision 2.26 retrieving revision 2.26.2.1 diff -C2 -r2.26 -r2.26.2.1 *** methodobject.c 2000/05/03 23:44:35 2.26 --- methodobject.c 2000/08/03 16:48:51 2.26.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Method object implementation */ --- 1,2 ---- Index: moduleobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/moduleobject.c,v retrieving revision 2.25 retrieving revision 2.25.2.1 diff -C2 -r2.25 -r2.25.2.1 *** moduleobject.c 2000/05/03 23:44:35 2.25 --- moduleobject.c 2000/08/03 16:48:51 2.25.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Module object implementation */ --- 1,2 ---- Index: object.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/object.c,v retrieving revision 2.70 retrieving revision 2.70.2.1 diff -C2 -r2.70 -r2.70.2.1 *** object.c 2000/05/03 23:44:35 2.70 --- object.c 2000/08/03 16:48:51 2.70.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Generic object operations; and implementation of None (NoObject) */ --- 1,2 ---- Index: rangeobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/rangeobject.c,v retrieving revision 2.12 retrieving revision 2.12.2.1 diff -C2 -r2.12 -r2.12.2.1 *** rangeobject.c 2000/05/03 23:44:35 2.12 --- rangeobject.c 2000/08/03 16:48:51 2.12.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Range object implementation */ --- 1,2 ---- Index: stringobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/stringobject.c,v retrieving revision 2.65 retrieving revision 2.65.2.1 diff -C2 -r2.65 -r2.65.2.1 *** stringobject.c 2000/05/08 14:08:05 2.65 --- stringobject.c 2000/08/03 16:48:51 2.65.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* String object implementation */ --- 1,2 ---- Index: tupleobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/tupleobject.c,v retrieving revision 2.33 retrieving revision 2.33.2.1 diff -C2 -r2.33 -r2.33.2.1 *** tupleobject.c 2000/05/03 23:44:36 2.33 --- tupleobject.c 2000/08/03 16:48:51 2.33.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Tuple object implementation */ --- 1,2 ---- Index: typeobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/typeobject.c,v retrieving revision 2.12 retrieving revision 2.12.4.1 diff -C2 -r2.12 -r2.12.4.1 *** typeobject.c 1997/06/02 14:43:07 2.12 --- typeobject.c 2000/08/03 16:48:51 2.12.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Type object implementation */ --- 1,2 ---- Index: xxobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/xxobject.c,v retrieving revision 2.15 retrieving revision 2.15.2.1 diff -C2 -r2.15 -r2.15.2.1 *** xxobject.c 2000/05/03 23:44:36 2.15 --- xxobject.c 2000/08/03 16:48:51 2.15.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Use this file as a template to start implementing a new object type. If your objects will be called foobar, start by copying this file to --- 1,2 ---- From python-dev@python.org Thu Aug 3 17:49:24 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:49:24 -0700 Subject: [Python-checkins] CVS: python/dist/src/Parser acceler.c,2.12,2.12.4.1 assert.h,2.7,2.7.4.1 bitset.c,2.7,2.7.4.1 firstsets.c,2.7,2.7.4.1 grammar.c,2.13,2.13.4.1 grammar1.c,2.8,2.8.4.1 intrcheck.c,2.30,2.30.4.1 listnode.c,2.9,2.9.4.1 metagrammar.c,2.7,2.7.4.1 myreadline.c,2.17,2.17.2.1 node.c,2.7,2.7.4.1 parser.c,2.10,2.10.4.1 parser.h,2.9,2.9.4.1 parsetok.c,2.16,2.16.2.1 pgen.c,2.12,2.12.4.1 pgen.h,2.9,2.9.4.1 pgenmain.c,2.16,2.16.2.1 printgrammar.c,2.8,2.8.4.1 tokenizer.c,2.41,2.41.2.1 tokenizer.h,2.12,2.12.4.1 Message-ID: <200008031649.JAA15770@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Parser In directory slayer.i.sourceforge.net:/tmp/cvs-serv15733 Modified Files: Tag: cnri-16-start acceler.c assert.h bitset.c firstsets.c grammar.c grammar1.c intrcheck.c listnode.c metagrammar.c myreadline.c node.c parser.c parser.h parsetok.c pgen.c pgen.h pgenmain.c printgrammar.c tokenizer.c tokenizer.h Log Message: Remove CWI notice per CNRI instructions. Index: acceler.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/acceler.c,v retrieving revision 2.12 retrieving revision 2.12.4.1 diff -C2 -r2.12 -r2.12.4.1 *** acceler.c 1997/08/02 03:02:25 2.12 --- acceler.c 2000/08/03 16:49:21 2.12.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser accelerator module */ --- 1,2 ---- Index: assert.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/assert.h,v retrieving revision 2.7 retrieving revision 2.7.4.1 diff -C2 -r2.7 -r2.7.4.1 *** assert.h 1996/10/25 14:37:45 2.7 --- assert.h 2000/08/03 16:49:21 2.7.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #ifdef MPW /* This is for MPW's File command */ --- 5,8 ---- Index: bitset.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/bitset.c,v retrieving revision 2.7 retrieving revision 2.7.4.1 diff -C2 -r2.7 -r2.7.4.1 *** bitset.c 1997/04/29 21:02:21 2.7 --- bitset.c 2000/08/03 16:49:21 2.7.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Bitset primitives used by the parser generator */ --- 1,2 ---- Index: firstsets.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/firstsets.c,v retrieving revision 2.7 retrieving revision 2.7.4.1 diff -C2 -r2.7 -r2.7.4.1 *** firstsets.c 1997/04/29 21:02:24 2.7 --- firstsets.c 2000/08/03 16:49:21 2.7.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Computation of FIRST stets */ --- 1,2 ---- Index: grammar.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/grammar.c,v retrieving revision 2.13 retrieving revision 2.13.4.1 diff -C2 -r2.13 -r2.13.4.1 *** grammar.c 1998/04/10 22:09:36 2.13 --- grammar.c 2000/08/03 16:49:21 2.13.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Grammar implementation */ --- 1,2 ---- Index: grammar1.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/grammar1.c,v retrieving revision 2.8 retrieving revision 2.8.4.1 diff -C2 -r2.8 -r2.8.4.1 *** grammar1.c 1997/04/29 21:02:31 2.8 --- grammar1.c 2000/08/03 16:49:21 2.8.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Grammar subroutines needed by parser */ --- 1,2 ---- Index: intrcheck.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/intrcheck.c,v retrieving revision 2.30 retrieving revision 2.30.4.1 diff -C2 -r2.30 -r2.30.4.1 *** intrcheck.c 1998/12/04 18:50:20 2.30 --- intrcheck.c 2000/08/03 16:49:21 2.30.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Check for interrupts */ --- 1,2 ---- Index: listnode.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/listnode.c,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** listnode.c 1997/04/29 21:02:37 2.9 --- listnode.c 2000/08/03 16:49:21 2.9.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* List a node on a file */ --- 1,2 ---- Index: metagrammar.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/metagrammar.c,v retrieving revision 2.7 retrieving revision 2.7.4.1 diff -C2 -r2.7 -r2.7.4.1 *** metagrammar.c 1997/04/29 21:02:40 2.7 --- metagrammar.c 2000/08/03 16:49:21 2.7.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include "pgenheaders.h" #include "metagrammar.h" --- 1,2 ---- Index: myreadline.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/myreadline.c,v retrieving revision 2.17 retrieving revision 2.17.2.1 diff -C2 -r2.17 -r2.17.2.1 *** myreadline.c 2000/05/03 23:44:37 2.17 --- myreadline.c 2000/08/03 16:49:21 2.17.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Readline interface for tokenizer.c and [raw_]input() in bltinmodule.c. By default, or when stdin is not a tty device, we have a super --- 1,2 ---- Index: node.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/node.c,v retrieving revision 2.7 retrieving revision 2.7.4.1 diff -C2 -r2.7 -r2.7.4.1 *** node.c 1997/04/29 21:02:42 2.7 --- node.c 2000/08/03 16:49:21 2.7.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parse tree node implementation */ --- 1,2 ---- Index: parser.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/parser.c,v retrieving revision 2.10 retrieving revision 2.10.4.1 diff -C2 -r2.10 -r2.10.4.1 *** parser.c 1997/04/29 21:02:45 2.10 --- parser.c 2000/08/03 16:49:21 2.10.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser implementation */ --- 1,2 ---- Index: parser.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/parser.h,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** parser.h 1997/04/29 21:02:47 2.9 --- parser.h 2000/08/03 16:49:21 2.9.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser interface */ --- 5,8 ---- Index: parsetok.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/parsetok.c,v retrieving revision 2.16 retrieving revision 2.16.2.1 diff -C2 -r2.16 -r2.16.2.1 *** parsetok.c 2000/05/03 23:44:37 2.16 --- parsetok.c 2000/08/03 16:49:21 2.16.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser-tokenizer link implementation */ --- 1,2 ---- Index: pgen.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/pgen.c,v retrieving revision 2.12 retrieving revision 2.12.4.1 diff -C2 -r2.12 -r2.12.4.1 *** pgen.c 1998/04/10 22:09:39 2.12 --- pgen.c 2000/08/03 16:49:21 2.12.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser generator */ /* XXX This file is not yet fully PROTOized */ --- 1,2 ---- Index: pgen.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/pgen.h,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** pgen.h 1997/04/29 21:02:56 2.9 --- pgen.h 2000/08/03 16:49:21 2.9.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser generator interface */ --- 5,8 ---- Index: pgenmain.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/pgenmain.c,v retrieving revision 2.16 retrieving revision 2.16.2.1 diff -C2 -r2.16 -r2.16.2.1 *** pgenmain.c 2000/05/03 23:44:37 2.16 --- pgenmain.c 2000/08/03 16:49:21 2.16.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Parser generator main program */ --- 1,2 ---- Index: printgrammar.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/printgrammar.c,v retrieving revision 2.8 retrieving revision 2.8.4.1 diff -C2 -r2.8 -r2.8.4.1 *** printgrammar.c 1997/05/07 23:50:06 2.8 --- printgrammar.c 2000/08/03 16:49:21 2.8.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Print a bunch of C initializers that represent a grammar */ --- 1,2 ---- Index: tokenizer.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/tokenizer.c,v retrieving revision 2.41 retrieving revision 2.41.2.1 diff -C2 -r2.41 -r2.41.2.1 *** tokenizer.c 2000/05/03 23:44:37 2.41 --- tokenizer.c 2000/08/03 16:49:21 2.41.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Tokenizer implementation */ --- 1,2 ---- Index: tokenizer.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Parser/tokenizer.h,v retrieving revision 2.12 retrieving revision 2.12.4.1 diff -C2 -r2.12 -r2.12.4.1 *** tokenizer.h 1998/04/09 21:38:06 2.12 --- tokenizer.h 2000/08/03 16:49:21 2.12.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Tokenizer interface */ --- 5,8 ---- From python-dev@python.org Thu Aug 3 17:50:42 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:50:42 -0700 Subject: [Python-checkins] CVS: python/dist/src/Python atof.c,2.3,2.3.4.1 bltinmodule.c,2.159,2.159.2.1 ceval.c,2.179,2.179.2.1 compile.c,2.108,2.108.2.1 dynload_aix.c,2.3,2.3.2.1 dynload_beos.c,2.2,2.2.2.1 dynload_dl.c,2.2,2.2.2.1 dynload_hpux.c,2.2,2.2.2.1 dynload_mac.c,2.4,2.4.2.1 dynload_next.c,2.3,2.3.2.1 dynload_os2.c,2.2,2.2.2.1 dynload_shlib.c,2.2,2.2.2.1 dynload_stub.c,2.1,2.1.2.1 dynload_win.c,2.2,2.2.2.1 errors.c,2.45,2.45.2.1 fmod.c,2.9,2.9.4.1 frozen.c,1.6,1.6.4.1 frozenmain.c,2.20,2.20.4.1 getargs.c,2.33,2.33.2.1 getcompiler.c,1.5,1.5.4.1 getcopyright.c,1.6,1.6.2.1 getcwd.c,1.9,1.9.4.1 getmtime.c,2.9,2.9.4.1 getplatform.c,1.4,1.4.4.1 getversion.c,1.10,1.10.4.1 import.c,2.134,2.134.2.1 importdl.c,2.64,2.64.2.1 importdl.h,2.12,2.12.2.1 marshal.c,1.47,1.47.2.1 memmove.c,2.4,2.4.4.1 modsupport.c,2.42,2.42.2.1 mystrtoul.c,2.17,2.17.4.1 pystate.c,2.9,2.9.2.1 pythonrun.c,2.96,2.96.2.1 sigcheck.c,2.4,2.4.4.1 strerror.c,2.6,2.6.4.1 structmember.c,2.14,2.14.4.1 sysmodule.c,2.63,2.63.2.1 t! hread.c,2.29,2.29.2.1 thread_beos.h,2.2,2.2.4.1 thread_cthread.h,2.8,2.8.4.1 thread_foobar.h,2.6,2.6.4.1 thread_lwp.h,2.7,2.7.4.1 thread_nt.h,2.9,2.9.2.1 thread_os2.h,2.5,2.5.4.1 thread_pth.h,2.1,2.1.2.1 thread_pthread.h,2.24,2.24.4.1 thread_sgi.h,2.9,2.9.4.1 thread_solaris.h,2.10,2.10.4.1 thread_wince.h,2.1,2.1.4.1 traceback.c,2.27,2.27.2.1 Message-ID: <200008031650.JAA15923@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Python In directory slayer.i.sourceforge.net:/tmp/cvs-serv15854 Modified Files: Tag: cnri-16-start atof.c bltinmodule.c ceval.c compile.c dynload_aix.c dynload_beos.c dynload_dl.c dynload_hpux.c dynload_mac.c dynload_next.c dynload_os2.c dynload_shlib.c dynload_stub.c dynload_win.c errors.c fmod.c frozen.c frozenmain.c getargs.c getcompiler.c getcopyright.c getcwd.c getmtime.c getplatform.c getversion.c import.c importdl.c importdl.h marshal.c memmove.c modsupport.c mystrtoul.c pystate.c pythonrun.c sigcheck.c strerror.c structmember.c sysmodule.c thread.c thread_beos.h thread_cthread.h thread_foobar.h thread_lwp.h thread_nt.h thread_os2.h thread_pth.h thread_pthread.h thread_sgi.h thread_solaris.h thread_wince.h traceback.c Log Message: Remove CWI notice per CNRI instructions. Index: atof.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/atof.c,v retrieving revision 2.3 retrieving revision 2.3.4.1 diff -C2 -r2.3 -r2.3.4.1 *** atof.c 1996/10/25 14:42:36 2.3 --- atof.c 2000/08/03 16:50:35 2.3.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Just in case you haven't got an atof() around... This one doesn't check for bad syntax or overflow, --- 1,2 ---- Index: bltinmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/bltinmodule.c,v retrieving revision 2.159 retrieving revision 2.159.2.1 diff -C2 -r2.159 -r2.159.2.1 *** bltinmodule.c 2000/05/09 19:55:16 2.159 --- bltinmodule.c 2000/08/03 16:50:35 2.159.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Built-in functions */ --- 1,2 ---- Index: ceval.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/ceval.c,v retrieving revision 2.179 retrieving revision 2.179.2.1 diff -C2 -r2.179 -r2.179.2.1 *** ceval.c 2000/05/08 14:06:50 2.179 --- ceval.c 2000/08/03 16:50:35 2.179.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Execute compiled code */ --- 1,2 ---- Index: compile.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/compile.c,v retrieving revision 2.108 retrieving revision 2.108.2.1 diff -C2 -r2.108 -r2.108.2.1 *** compile.c 2000/05/03 23:44:38 2.108 --- compile.c 2000/08/03 16:50:35 2.108.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Compile an expression node to intermediate code */ --- 1,2 ---- Index: dynload_aix.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_aix.c,v retrieving revision 2.3 retrieving revision 2.3.2.1 diff -C2 -r2.3 -r2.3.2.1 *** dynload_aix.c 1999/12/22 14:09:35 2.3 --- dynload_aix.c 2000/08/03 16:50:35 2.3.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_beos.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_beos.c,v retrieving revision 2.2 retrieving revision 2.2.2.1 diff -C2 -r2.2 -r2.2.2.1 *** dynload_beos.c 1999/12/22 14:09:35 2.2 --- dynload_beos.c 2000/08/03 16:50:35 2.2.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_dl.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_dl.c,v retrieving revision 2.2 retrieving revision 2.2.2.1 diff -C2 -r2.2 -r2.2.2.1 *** dynload_dl.c 1999/12/22 14:09:35 2.2 --- dynload_dl.c 2000/08/03 16:50:35 2.2.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_hpux.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_hpux.c,v retrieving revision 2.2 retrieving revision 2.2.2.1 diff -C2 -r2.2 -r2.2.2.1 *** dynload_hpux.c 1999/12/22 14:09:35 2.2 --- dynload_hpux.c 2000/08/03 16:50:35 2.2.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_mac.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_mac.c,v retrieving revision 2.4 retrieving revision 2.4.2.1 diff -C2 -r2.4 -r2.4.2.1 *** dynload_mac.c 2000/04/24 15:08:01 2.4 --- dynload_mac.c 2000/08/03 16:50:35 2.4.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_next.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_next.c,v retrieving revision 2.3 retrieving revision 2.3.2.1 diff -C2 -r2.3 -r2.3.2.1 *** dynload_next.c 2000/04/10 12:45:10 2.3 --- dynload_next.c 2000/08/03 16:50:35 2.3.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_os2.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_os2.c,v retrieving revision 2.2 retrieving revision 2.2.2.1 diff -C2 -r2.2 -r2.2.2.1 *** dynload_os2.c 1999/12/22 14:09:35 2.2 --- dynload_os2.c 2000/08/03 16:50:35 2.2.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_shlib.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_shlib.c,v retrieving revision 2.2 retrieving revision 2.2.2.1 diff -C2 -r2.2 -r2.2.2.1 *** dynload_shlib.c 1999/12/22 14:09:35 2.2 --- dynload_shlib.c 2000/08/03 16:50:35 2.2.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: dynload_stub.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_stub.c,v retrieving revision 2.1 retrieving revision 2.1.2.1 diff -C2 -r2.1 -r2.1.2.1 *** dynload_stub.c 1999/12/20 21:18:49 2.1 --- dynload_stub.c 2000/08/03 16:50:35 2.1.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* This module provides the necessary stubs for when dynamic loading is not present. */ --- 1,2 ---- Index: dynload_win.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/dynload_win.c,v retrieving revision 2.2 retrieving revision 2.2.2.1 diff -C2 -r2.2 -r2.2.2.1 *** dynload_win.c 1999/12/22 14:09:35 2.2 --- dynload_win.c 2000/08/03 16:50:35 2.2.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: errors.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/errors.c,v retrieving revision 2.45 retrieving revision 2.45.2.1 diff -C2 -r2.45 -r2.45.2.1 *** errors.c 2000/05/02 19:27:51 2.45 --- errors.c 2000/08/03 16:50:35 2.45.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Error handling */ --- 1,2 ---- Index: fmod.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/fmod.c,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** fmod.c 1996/10/25 14:43:04 2.9 --- fmod.c 2000/08/03 16:50:35 2.9.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Portable fmod(x, y) implementation for systems that don't have it */ --- 1,2 ---- Index: frozen.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/frozen.c,v retrieving revision 1.6 retrieving revision 1.6.4.1 diff -C2 -r1.6 -r1.6.4.1 *** frozen.c 1998/04/03 21:10:36 1.6 --- frozen.c 2000/08/03 16:50:35 1.6.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Dummy frozen modules initializer */ --- 1,2 ---- Index: frozenmain.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/frozenmain.c,v retrieving revision 2.20 retrieving revision 2.20.4.1 diff -C2 -r2.20 -r2.20.4.1 *** frozenmain.c 1999/01/02 21:42:48 2.20 --- frozenmain.c 2000/08/03 16:50:35 2.20.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Python interpreter main program for frozen scripts */ --- 1,2 ---- Index: getargs.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getargs.c,v retrieving revision 2.33 retrieving revision 2.33.2.1 diff -C2 -r2.33 -r2.33.2.1 *** getargs.c 2000/05/09 21:50:00 2.33 --- getargs.c 2000/08/03 16:50:35 2.33.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* New getargs implementation */ --- 1,2 ---- Index: getcompiler.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getcompiler.c,v retrieving revision 1.5 retrieving revision 1.5.4.1 diff -C2 -r1.5 -r1.5.4.1 *** getcompiler.c 1997/07/19 19:48:41 1.5 --- getcompiler.c 2000/08/03 16:50:36 1.5.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Return the compiler identification, if possible. */ --- 1,2 ---- Index: getcopyright.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getcopyright.c,v retrieving revision 1.6 retrieving revision 1.6.2.1 diff -C2 -r1.6 -r1.6.2.1 *** getcopyright.c 2000/05/10 20:06:00 1.6 --- getcopyright.c 2000/08/03 16:50:36 1.6.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1996 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Return the copyright string. This is updated manually. */ --- 1,2 ---- Index: getcwd.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getcwd.c,v retrieving revision 1.9 retrieving revision 1.9.4.1 diff -C2 -r1.9 -r1.9.4.1 *** getcwd.c 1996/10/25 14:43:14 1.9 --- getcwd.c 2000/08/03 16:50:36 1.9.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Two PD getcwd() implementations. Author: Guido van Rossum, CWI Amsterdam, Jan 1991, . */ --- 1,2 ---- Index: getmtime.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getmtime.c,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** getmtime.c 1997/09/05 07:33:15 2.9 --- getmtime.c 2000/08/03 16:50:36 2.9.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Subroutine to get the last modification time of a file */ --- 1,2 ---- Index: getplatform.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getplatform.c,v retrieving revision 1.4 retrieving revision 1.4.4.1 diff -C2 -r1.4 -r1.4.4.1 *** getplatform.c 1997/07/19 19:48:05 1.4 --- getplatform.c 2000/08/03 16:50:36 1.4.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include "Python.h" --- 1,2 ---- Index: getversion.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getversion.c,v retrieving revision 1.10 retrieving revision 1.10.4.1 diff -C2 -r1.10 -r1.10.4.1 *** getversion.c 1999/04/22 12:03:40 1.10 --- getversion.c 2000/08/03 16:50:36 1.10.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Return the full version string. */ --- 1,2 ---- Index: import.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/import.c,v retrieving revision 2.134 retrieving revision 2.134.2.1 diff -C2 -r2.134 -r2.134.2.1 *** import.c 2000/05/03 23:44:39 2.134 --- import.c 2000/08/03 16:50:36 2.134.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Module definition and import implementation */ --- 1,2 ---- Index: importdl.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/importdl.c,v retrieving revision 2.64 retrieving revision 2.64.2.1 diff -C2 -r2.64 -r2.64.2.1 *** importdl.c 1999/12/22 14:09:35 2.64 --- importdl.c 2000/08/03 16:50:36 2.64.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Support for dynamic loading of extension modules */ --- 1,2 ---- Index: importdl.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/importdl.h,v retrieving revision 2.12 retrieving revision 2.12.2.1 diff -C2 -r2.12 -r2.12.2.1 *** importdl.h 1999/12/20 22:55:03 2.12 --- importdl.h 2000/08/03 16:50:36 2.12.2.1 *************** *** 6,40 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Definitions for dynamic loading of extension modules */ enum filetype { --- 6,9 ---- Index: marshal.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/marshal.c,v retrieving revision 1.47 retrieving revision 1.47.2.1 diff -C2 -r1.47 -r1.47.2.1 *** marshal.c 2000/05/03 23:44:39 1.47 --- marshal.c 2000/08/03 16:50:36 1.47.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Write Python objects to files and read them back. This is intended for writing and reading compiled Python code only; --- 1,2 ---- Index: memmove.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/memmove.c,v retrieving revision 2.4 retrieving revision 2.4.4.1 diff -C2 -r2.4 -r2.4.4.1 *** memmove.c 1996/10/25 14:43:30 2.4 --- memmove.c 2000/08/03 16:50:36 2.4.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* A perhaps slow but I hope correct implementation of memmove */ --- 1,2 ---- Index: modsupport.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/modsupport.c,v retrieving revision 2.42 retrieving revision 2.42.2.1 diff -C2 -r2.42 -r2.42.2.1 *** modsupport.c 2000/04/28 14:42:37 2.42 --- modsupport.c 2000/08/03 16:50:36 2.42.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Module support implementation */ --- 1,2 ---- Index: mystrtoul.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/mystrtoul.c,v retrieving revision 2.17 retrieving revision 2.17.4.1 diff -C2 -r2.17 -r2.17.4.1 *** mystrtoul.c 1999/04/07 16:07:21 2.17 --- mystrtoul.c 2000/08/03 16:50:36 2.17.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include "Python.h" --- 1,2 ---- Index: pystate.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/pystate.c,v retrieving revision 2.9 retrieving revision 2.9.2.1 diff -C2 -r2.9 -r2.9.2.1 *** pystate.c 1999/06/18 14:22:24 2.9 --- pystate.c 2000/08/03 16:50:36 2.9.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Thread and interpreter state structures and their interfaces */ --- 1,2 ---- Index: pythonrun.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/pythonrun.c,v retrieving revision 2.96 retrieving revision 2.96.2.1 diff -C2 -r2.96 -r2.96.2.1 *** pythonrun.c 2000/05/03 23:44:39 2.96 --- pythonrun.c 2000/08/03 16:50:36 2.96.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Python interpreter top-level routines, including init/exit */ --- 1,2 ---- Index: sigcheck.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/sigcheck.c,v retrieving revision 2.4 retrieving revision 2.4.4.1 diff -C2 -r2.4 -r2.4.4.1 *** sigcheck.c 1997/04/29 20:08:14 2.4 --- sigcheck.c 2000/08/03 16:50:36 2.4.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Sigcheck is similar to intrcheck() but sets an exception when an interrupt occurs. It can't be in the intrcheck.c file since that --- 1,2 ---- Index: strerror.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/strerror.c,v retrieving revision 2.6 retrieving revision 2.6.4.1 diff -C2 -r2.6 -r2.6.4.1 *** strerror.c 1996/10/25 14:43:41 2.6 --- strerror.c 2000/08/03 16:50:36 2.6.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* PD implementation of strerror() for systems that don't have it. Author: Guido van Rossum, CWI Amsterdam, Oct. 1990, . */ --- 1,2 ---- Index: structmember.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/structmember.c,v retrieving revision 2.14 retrieving revision 2.14.4.1 diff -C2 -r2.14 -r2.14.4.1 *** structmember.c 1998/05/20 22:25:32 2.14 --- structmember.c 2000/08/03 16:50:36 2.14.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Map C struct members to Python object attributes */ --- 1,2 ---- Index: sysmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/sysmodule.c,v retrieving revision 2.63 retrieving revision 2.63.2.1 diff -C2 -r2.63 -r2.63.2.1 *** sysmodule.c 2000/05/09 19:57:01 2.63 --- sysmodule.c 2000/08/03 16:50:36 2.63.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* System module */ --- 1,2 ---- Index: thread.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread.c,v retrieving revision 2.29 retrieving revision 2.29.2.1 diff -C2 -r2.29 -r2.29.2.1 *** thread.c 2000/05/08 13:36:49 2.29 --- thread.c 2000/08/03 16:50:36 2.29.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Thread package. This is intended to be usable independently from Python. --- 1,2 ---- Index: thread_beos.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_beos.h,v retrieving revision 2.2 retrieving revision 2.2.4.1 diff -C2 -r2.2 -r2.2.4.1 *** thread_beos.h 1998/12/21 19:32:29 2.2 --- thread_beos.h 2000/08/03 16:50:36 2.2.4.1 *************** *** 1,31 **** /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - BeOS thread support by Chris Herborth (chrish@qnx.com) ******************************************************************/ --- 1,3 ---- Index: thread_cthread.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_cthread.h,v retrieving revision 2.8 retrieving revision 2.8.4.1 diff -C2 -r2.8 -r2.8.4.1 *** thread_cthread.h 1998/12/21 19:32:30 2.8 --- thread_cthread.h 2000/08/03 16:50:36 2.8.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include --- 1,2 ---- Index: thread_foobar.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_foobar.h,v retrieving revision 2.6 retrieving revision 2.6.4.1 diff -C2 -r2.6 -r2.6.4.1 *** thread_foobar.h 1998/12/21 19:32:30 2.6 --- thread_foobar.h 2000/08/03 16:50:36 2.6.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* * Initialization. --- 1,2 ---- Index: thread_lwp.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_lwp.h,v retrieving revision 2.7 retrieving revision 2.7.4.1 diff -C2 -r2.7 -r2.7.4.1 *** thread_lwp.h 1998/12/21 19:32:31 2.7 --- thread_lwp.h 2000/08/03 16:50:36 2.7.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include #include --- 1,2 ---- Index: thread_nt.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_nt.h,v retrieving revision 2.9 retrieving revision 2.9.2.1 diff -C2 -r2.9 -r2.9.2.1 *** thread_nt.h 2000/05/11 12:53:51 2.9 --- thread_nt.h 2000/08/03 16:50:36 2.9.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* This code implemented by Dag.Gruneau@elsa.preseco.comm.se */ /* Fast NonRecursiveMutex support by Yakov Markovitch, markovitch@iso.ru */ --- 1,2 ---- Index: thread_os2.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_os2.h,v retrieving revision 2.5 retrieving revision 2.5.4.1 diff -C2 -r2.5 -r2.5.4.1 *** thread_os2.h 1998/12/21 19:32:33 2.5 --- thread_os2.h 2000/08/03 16:50:36 2.5.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* This code implemented by cvale@netcom.com */ --- 1,2 ---- Index: thread_pth.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_pth.h,v retrieving revision 2.1 retrieving revision 2.1.2.1 diff -C2 -r2.1 -r2.1.2.1 *** thread_pth.h 2000/05/08 13:36:49 2.1 --- thread_pth.h 2000/08/03 16:50:36 2.1.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* GNU pth threads interface http://www.gnu.org/software/pth --- 1,2 ---- Index: thread_pthread.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_pthread.h,v retrieving revision 2.24 retrieving revision 2.24.4.1 diff -C2 -r2.24 -r2.24.4.1 *** thread_pthread.h 1999/03/15 20:27:53 2.24 --- thread_pthread.h 2000/08/03 16:50:36 2.24.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Posix threads interface */ --- 1,2 ---- Index: thread_sgi.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_sgi.h,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** thread_sgi.h 1998/12/21 19:32:34 2.9 --- thread_sgi.h 2000/08/03 16:50:36 2.9.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #ifdef WITH_SGI_DL #define USE_DL --- 1,2 ---- Index: thread_solaris.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_solaris.h,v retrieving revision 2.10 retrieving revision 2.10.4.1 diff -C2 -r2.10 -r2.10.4.1 *** thread_solaris.h 1999/04/13 14:32:12 2.10 --- thread_solaris.h 2000/08/03 16:50:36 2.10.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include #include --- 1,2 ---- Index: thread_wince.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/thread_wince.h,v retrieving revision 2.1 retrieving revision 2.1.4.1 diff -C2 -r2.1 -r2.1.4.1 *** thread_wince.h 1999/04/08 13:57:06 2.1 --- thread_wince.h 2000/08/03 16:50:36 2.1.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* This code implemented by Mark Hammond (MHammond@skippinet.com.au) */ --- 1,2 ---- Index: traceback.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/traceback.c,v retrieving revision 2.27 retrieving revision 2.27.2.1 diff -C2 -r2.27 -r2.27.2.1 *** traceback.c 2000/05/03 23:44:39 2.27 --- traceback.c 2000/08/03 16:50:36 2.27.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Traceback implementation */ --- 1,2 ---- From python-dev@python.org Thu Aug 3 17:52:07 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:52:07 -0700 Subject: [Python-checkins] CVS: python/dist/src/Modules _tkinter.c,1.99,1.99.2.1 almodule.c,1.24,1.24.2.1 arraymodule.c,2.39,2.39.2.1 audioop.c,1.36,1.36.2.1 binascii.c,2.19,2.19.2.1 bsddbmodule.c,1.18,1.18.2.1 cdmodule.c,1.19,1.19.2.1 cgen.py,2.14,2.14.4.1 cgensupport.c,2.11,2.11.4.1 cgensupport.h,2.11,2.11.4.1 clmodule.c,2.20,2.20.2.1 config.c.in,1.67,1.67.4.1 cstubs,2.18,2.18.4.1 dbmmodule.c,2.17,2.17.2.1 dlmodule.c,2.7,2.7.2.1 errnomodule.c,2.9,2.9.4.1 fcntlmodule.c,2.19,2.19.2.1 flmodule.c,1.36,1.36.2.1 fmmodule.c,1.11,1.11.2.1 gdbmmodule.c,2.22,2.22.2.1 getpath.c,1.21,1.21.2.1 glmodule.c,2.3,2.3.4.1 grpmodule.c,2.9,2.9.4.1 imageop.c,2.20,2.20.4.1 imgfile.c,1.22,1.22.4.1 main.c,1.38,1.38.2.1 mathmodule.c,2.45,2.45.2.1 md5module.c,2.15,2.15.2.1 mpzmodule.c,2.23,2.23.2.1 newmodule.c,2.20,2.20.2.1 parsermodule.c,2.39,2.39.2.1 pcremodule.c,2.19,2.19.2.1 posixmodule.c,2.134,2.134.2.1 pwdmodule.c,1.17,1.17.4.1 pyexpat.c,2.4,2.4.2.1 regexmodule.c,1.34,1.34.2.1 resource.c,2.10,2.10.2.1 selectmod! ule.c,2.32,2.32.2.1 sgimodule.c,1.11,1.11.4.1 shamodule.c,2.5,2.5.2.1 signalmodule.c,2.39,2.39.4.1 stropmodule.c,2.63,2.63.2.1 structmodule.c,2.30,2.30.2.1 sunaudiodev.c,1.17,1.17.2.1 svmodule.c,2.11,2.11.2.1 threadmodule.c,2.31,2.31.2.1 timemodule.c,2.83,2.83.2.1 xxmodule.c,2.16,2.16.2.1 yuv.h,2.5,2.5.4.1 yuvconvert.c,2.4,2.4.4.1 Message-ID: <200008031652.JAA16131@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Modules In directory slayer.i.sourceforge.net:/tmp/cvs-serv16042 Modified Files: Tag: cnri-16-start _tkinter.c almodule.c arraymodule.c audioop.c binascii.c bsddbmodule.c cdmodule.c cgen.py cgensupport.c cgensupport.h clmodule.c config.c.in cstubs dbmmodule.c dlmodule.c errnomodule.c fcntlmodule.c flmodule.c fmmodule.c gdbmmodule.c getpath.c glmodule.c grpmodule.c imageop.c imgfile.c main.c mathmodule.c md5module.c mpzmodule.c newmodule.c parsermodule.c pcremodule.c posixmodule.c pwdmodule.c pyexpat.c regexmodule.c resource.c selectmodule.c sgimodule.c shamodule.c signalmodule.c stropmodule.c structmodule.c sunaudiodev.c svmodule.c threadmodule.c timemodule.c xxmodule.c yuv.h yuvconvert.c Log Message: Remove CWI notice per CNRI instructions. Index: _tkinter.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/_tkinter.c,v retrieving revision 1.99 retrieving revision 1.99.2.1 diff -C2 -r1.99 -r1.99.2.1 *** _tkinter.c 2000/05/04 15:55:17 1.99 --- _tkinter.c 2000/08/03 16:52:00 1.99.2.1 *************** *** 1,32 **** /*********************************************************** Copyright (C) 1994 Steen Lumholt. - Copyright 1994-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - ******************************************************************/ --- 1,4 ---- Index: almodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/almodule.c,v retrieving revision 1.24 retrieving revision 1.24.2.1 diff -C2 -r1.24 -r1.24.2.1 *** almodule.c 2000/05/03 23:44:31 1.24 --- almodule.c 2000/08/03 16:52:00 1.24.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #define OLD_INTERFACE /* define for pre-Irix 6 interface */ --- 1,2 ---- Index: arraymodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/arraymodule.c,v retrieving revision 2.39 retrieving revision 2.39.2.1 diff -C2 -r2.39 -r2.39.2.1 *** arraymodule.c 2000/05/03 23:44:31 2.39 --- arraymodule.c 2000/08/03 16:52:00 2.39.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Array object implementation */ --- 1,2 ---- Index: audioop.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/audioop.c,v retrieving revision 1.36 retrieving revision 1.36.2.1 diff -C2 -r1.36 -r1.36.2.1 *** audioop.c 2000/05/02 21:18:13 1.36 --- audioop.c 2000/08/03 16:52:00 1.36.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* audioopmodule - Module to detect peak values in arrays */ --- 1,2 ---- Index: binascii.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/binascii.c,v retrieving revision 2.19 retrieving revision 2.19.2.1 diff -C2 -r2.19 -r2.19.2.1 *** binascii.c 2000/02/29 13:59:22 2.19 --- binascii.c 2000/08/03 16:52:00 2.19.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991, 1992, 1993, 1994 by Stichting Mathematisch Centrum, - Amsterdam, The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* ** Routines to represent binary data in ASCII and vice-versa --- 1,2 ---- Index: bsddbmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/bsddbmodule.c,v retrieving revision 1.18 retrieving revision 1.18.2.1 diff -C2 -r1.18 -r1.18.2.1 *** bsddbmodule.c 2000/05/03 23:44:31 1.18 --- bsddbmodule.c 2000/08/03 16:52:00 1.18.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Berkeley DB interface. Author: Michael McLay --- 1,2 ---- Index: cdmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cdmodule.c,v retrieving revision 1.19 retrieving revision 1.19.2.1 diff -C2 -r1.19 -r1.19.2.1 *** cdmodule.c 2000/05/03 23:44:31 1.19 --- cdmodule.c 2000/08/03 16:52:00 1.19.2.1 *************** *** 1,33 **** - /********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* CD module -- interface to Mark Callow's and Roger Chickering's */ /* CD Audio Library (CD). */ --- 1,2 ---- Index: cgen.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cgen.py,v retrieving revision 2.14 retrieving revision 2.14.4.1 diff -C2 -r2.14 -r2.14.4.1 *** cgen.py 1997/04/29 21:34:06 2.14 --- cgen.py 2000/08/03 16:52:00 2.14.4.1 *************** *** 1,32 **** - ######################################################################## - # Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - # The Netherlands. - # - # All Rights Reserved - # - # Permission to use, copy, modify, and distribute this software and its - # documentation for any purpose and without fee is hereby granted, - # provided that the above copyright notice appear in all copies and that - # both that copyright notice and this permission notice appear in - # supporting documentation, and that the names of Stichting Mathematisch - # Centrum or CWI or Corporation for National Research Initiatives or - # CNRI not be used in advertising or publicity pertaining to - # distribution of the software without specific, written prior - # permission. - # - # While CWI is the initial source for this software, a modified version - # is made available by the Corporation for National Research Initiatives - # (CNRI) at the Internet address ftp://ftp.python.org. - # - # STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - # REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - # MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - # CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - # DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - # PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - # PERFORMANCE OF THIS SOFTWARE. - ######################################################################## - # Python script to parse cstubs file for gl and generate C stubs. # usage: python cgen.py glmodule.c --- 1,2 ---- Index: cgensupport.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cgensupport.c,v retrieving revision 2.11 retrieving revision 2.11.4.1 diff -C2 -r2.11 -r2.11.4.1 *** cgensupport.c 1997/04/29 15:43:55 2.11 --- cgensupport.c 2000/08/03 16:52:00 2.11.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Functions used by cgen output */ --- 1,2 ---- Index: cgensupport.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cgensupport.h,v retrieving revision 2.11 retrieving revision 2.11.4.1 diff -C2 -r2.11 -r2.11.4.1 *** cgensupport.h 1997/04/29 15:35:28 2.11 --- cgensupport.h 2000/08/03 16:52:00 2.11.4.1 *************** *** 5,39 **** #endif - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Definitions used by cgen output */ --- 5,8 ---- Index: clmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/clmodule.c,v retrieving revision 2.20 retrieving revision 2.20.2.1 diff -C2 -r2.20 -r2.20.2.1 *** clmodule.c 2000/05/03 23:44:31 2.20 --- clmodule.c 2000/08/03 16:52:00 2.20.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Cl objects */ --- 1,2 ---- Index: config.c.in =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/config.c.in,v retrieving revision 1.67 retrieving revision 1.67.4.1 diff -C2 -r1.67 -r1.67.4.1 *** config.c.in 1997/04/29 20:31:59 1.67 --- config.c.in 2000/08/03 16:52:00 1.67.4.1 *************** *** 1,33 **** ! /* -*- C -*- *********************************************** ! Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, ! The Netherlands. ! ! All Rights Reserved ! ! Permission to use, copy, modify, and distribute this software and its ! documentation for any purpose and without fee is hereby granted, ! provided that the above copyright notice appear in all copies and that ! both that copyright notice and this permission notice appear in ! supporting documentation, and that the names of Stichting Mathematisch ! Centrum or CWI or Corporation for National Research Initiatives or ! CNRI not be used in advertising or publicity pertaining to ! distribution of the software without specific, written prior ! permission. ! ! While CWI is the initial source for this software, a modified version ! is made available by the Corporation for National Research Initiatives ! (CNRI) at the Internet address ftp://ftp.python.org. ! ! STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH ! REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF ! MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH ! CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL ! DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR ! PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER ! TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ! PERFORMANCE OF THIS SOFTWARE. ! ! ******************************************************************/ ! /* Module configuration */ --- 1,3 ---- ! /* -*- C -*- */ /* Module configuration */ Index: cstubs =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/cstubs,v retrieving revision 2.18 retrieving revision 2.18.4.1 diff -C2 -r2.18 -r2.18.4.1 *** cstubs 1998/04/28 16:09:16 2.18 --- cstubs 2000/08/03 16:52:00 2.18.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Input used to generate the Python module "glmodule.c". --- 1,2 ---- Index: dbmmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/dbmmodule.c,v retrieving revision 2.17 retrieving revision 2.17.2.1 diff -C2 -r2.17 -r2.17.2.1 *** dbmmodule.c 2000/05/03 23:44:32 2.17 --- dbmmodule.c 2000/08/03 16:52:00 2.17.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* DBM module using dictionary interface */ --- 1,2 ---- Index: dlmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/dlmodule.c,v retrieving revision 2.7 retrieving revision 2.7.2.1 diff -C2 -r2.7 -r2.7.2.1 *** dlmodule.c 2000/05/03 23:44:32 2.7 --- dlmodule.c 2000/08/03 16:52:00 2.7.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* dl module */ --- 1,2 ---- Index: errnomodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/errnomodule.c,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** errnomodule.c 1999/01/27 18:04:05 2.9 --- errnomodule.c 2000/08/03 16:52:00 2.9.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Errno module */ --- 1,2 ---- Index: fcntlmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/fcntlmodule.c,v retrieving revision 2.19 retrieving revision 2.19.2.1 diff -C2 -r2.19 -r2.19.2.1 *** fcntlmodule.c 2000/02/29 13:59:23 2.19 --- fcntlmodule.c 2000/08/03 16:52:00 2.19.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* fcntl module */ --- 1,2 ---- Index: flmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/flmodule.c,v retrieving revision 1.36 retrieving revision 1.36.2.1 diff -C2 -r1.36 -r1.36.2.1 *** flmodule.c 2000/05/03 23:44:32 1.36 --- flmodule.c 2000/08/03 16:52:00 1.36.2.1 *************** *** 1,33 **** - /********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* FL module -- interface to Mark Overmars' FORMS Library. */ --- 1,2 ---- Index: fmmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/fmmodule.c,v retrieving revision 1.11 retrieving revision 1.11.2.1 diff -C2 -r1.11 -r1.11.2.1 *** fmmodule.c 2000/05/03 23:44:32 1.11 --- fmmodule.c 2000/08/03 16:52:01 1.11.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Font Manager module */ --- 1,2 ---- Index: gdbmmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/gdbmmodule.c,v retrieving revision 2.22 retrieving revision 2.22.2.1 diff -C2 -r2.22 -r2.22.2.1 *** gdbmmodule.c 2000/05/03 23:44:32 2.22 --- gdbmmodule.c 2000/08/03 16:52:01 2.22.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* DBM module using dictionary interface */ /* Author: Anthony Baxter, after dbmmodule.c */ --- 1,2 ---- Index: getpath.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/getpath.c,v retrieving revision 1.21 retrieving revision 1.21.2.1 diff -C2 -r1.21 -r1.21.2.1 *** getpath.c 2000/05/03 23:44:32 1.21 --- getpath.c 2000/08/03 16:52:01 1.21.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Return the initial module search path. */ --- 1,2 ---- Index: glmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/glmodule.c,v retrieving revision 2.3 retrieving revision 2.3.4.1 diff -C2 -r2.3 -r2.3.4.1 *** glmodule.c 1998/10/21 16:10:40 2.3 --- glmodule.c 2000/08/03 16:52:01 2.3.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Input used to generate the Python module "glmodule.c". --- 1,2 ---- Index: grpmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/grpmodule.c,v retrieving revision 2.9 retrieving revision 2.9.4.1 diff -C2 -r2.9 -r2.9.4.1 *** grpmodule.c 1998/12/04 18:49:50 2.9 --- grpmodule.c 2000/08/03 16:52:01 2.9.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* UNIX group file access module */ --- 1,2 ---- Index: imageop.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/imageop.c,v retrieving revision 2.20 retrieving revision 2.20.4.1 diff -C2 -r2.20 -r2.20.4.1 *** imageop.c 1998/12/04 18:49:50 2.20 --- imageop.c 2000/08/03 16:52:01 2.20.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* imageopmodule - Various operations on pictures */ --- 1,2 ---- Index: imgfile.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/imgfile.c,v retrieving revision 1.22 retrieving revision 1.22.4.1 diff -C2 -r1.22 -r1.22.4.1 *** imgfile.c 1997/10/01 04:26:35 1.22 --- imgfile.c 2000/08/03 16:52:01 1.22.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* IMGFILE module - Interface to sgi libimage */ --- 1,2 ---- Index: main.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/main.c,v retrieving revision 1.38 retrieving revision 1.38.2.1 diff -C2 -r1.38 -r1.38.2.1 *** main.c 2000/05/02 19:20:26 1.38 --- main.c 2000/08/03 16:52:01 1.38.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Python interpreter main program */ --- 1,2 ---- Index: mathmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/mathmodule.c,v retrieving revision 2.45 retrieving revision 2.45.2.1 diff -C2 -r2.45 -r2.45.2.1 *** mathmodule.c 2000/05/11 18:40:42 2.45 --- mathmodule.c 2000/08/03 16:52:01 2.45.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Math module -- standard C math library functions, pi and e */ --- 1,2 ---- Index: md5module.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/md5module.c,v retrieving revision 2.15 retrieving revision 2.15.2.1 diff -C2 -r2.15 -r2.15.2.1 *** md5module.c 2000/05/03 23:44:32 2.15 --- md5module.c 2000/08/03 16:52:01 2.15.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* MD5 module */ --- 1,2 ---- Index: mpzmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/mpzmodule.c,v retrieving revision 2.23 retrieving revision 2.23.2.1 diff -C2 -r2.23 -r2.23.2.1 *** mpzmodule.c 2000/05/03 23:44:32 2.23 --- mpzmodule.c 2000/08/03 16:52:01 2.23.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* MPZ module */ --- 1,2 ---- Index: newmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/newmodule.c,v retrieving revision 2.20 retrieving revision 2.20.2.1 diff -C2 -r2.20 -r2.20.2.1 *** newmodule.c 2000/05/03 23:44:32 2.20 --- newmodule.c 2000/08/03 16:52:01 2.20.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Module new -- create new objects of various types */ --- 1,2 ---- Index: parsermodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/parsermodule.c,v retrieving revision 2.39 retrieving revision 2.39.2.1 diff -C2 -r2.39 -r2.39.2.1 *** parsermodule.c 2000/05/03 23:44:32 2.39 --- parsermodule.c 2000/08/03 16:52:01 2.39.2.1 *************** *** 76,110 **** */ - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - static PyObject* node2tuple(node *n, /* node to convert */ --- 76,79 ---- Index: pcremodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/pcremodule.c,v retrieving revision 2.19 retrieving revision 2.19.2.1 diff -C2 -r2.19 -r2.19.2.1 *** pcremodule.c 2000/05/03 23:44:32 2.19 --- pcremodule.c 2000/08/03 16:52:01 2.19.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1997 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Pcre objects */ --- 1,2 ---- Index: posixmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/posixmodule.c,v retrieving revision 2.134 retrieving revision 2.134.2.1 diff -C2 -r2.134 -r2.134.2.1 *** posixmodule.c 2000/05/03 02:44:55 2.134 --- posixmodule.c 2000/08/03 16:52:01 2.134.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* POSIX module implementation */ --- 1,2 ---- Index: pwdmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/pwdmodule.c,v retrieving revision 1.17 retrieving revision 1.17.4.1 diff -C2 -r1.17 -r1.17.4.1 *** pwdmodule.c 1998/12/04 18:50:00 1.17 --- pwdmodule.c 2000/08/03 16:52:01 1.17.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* UNIX password file access module */ --- 1,2 ---- Index: pyexpat.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/pyexpat.c,v retrieving revision 2.4 retrieving revision 2.4.2.1 diff -C2 -r2.4 -r2.4.2.1 *** pyexpat.c 2000/05/03 23:44:33 2.4 --- pyexpat.c 2000/08/03 16:52:01 2.4.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 2000 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include "Python.h" #include "xmlparse.h" --- 1,2 ---- Index: regexmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/regexmodule.c,v retrieving revision 1.34 retrieving revision 1.34.2.1 diff -C2 -r1.34 -r1.34.2.1 *** regexmodule.c 2000/05/03 23:44:33 1.34 --- regexmodule.c 2000/08/03 16:52:01 1.34.2.1 *************** *** 4,38 **** */ - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Regular expression objects */ /* This uses Tatu Ylonen's copyleft-free reimplementation of --- 4,7 ---- Index: resource.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/resource.c,v retrieving revision 2.10 retrieving revision 2.10.2.1 diff -C2 -r2.10 -r2.10.2.1 *** resource.c 2000/02/29 13:59:23 2.10 --- resource.c 2000/08/03 16:52:01 2.10.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include "Python.h" #include "mytime.h" /* needed for SunOS4.1 */ --- 1,2 ---- Index: selectmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/selectmodule.c,v retrieving revision 2.32 retrieving revision 2.32.2.1 diff -C2 -r2.32 -r2.32.2.1 *** selectmodule.c 2000/05/03 23:44:33 2.32 --- selectmodule.c 2000/08/03 16:52:01 2.32.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* select - Module containing unix select(2) call. Under Unix, the file descriptors are small integers. --- 1,2 ---- Index: sgimodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/sgimodule.c,v retrieving revision 1.11 retrieving revision 1.11.4.1 diff -C2 -r1.11 -r1.11.4.1 *** sgimodule.c 1996/12/10 00:32:31 1.11 --- sgimodule.c 2000/08/03 16:52:01 1.11.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* SGI module -- random SGI-specific things */ --- 1,2 ---- Index: shamodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/shamodule.c,v retrieving revision 2.5 retrieving revision 2.5.2.1 diff -C2 -r2.5 -r2.5.2.1 *** shamodule.c 2000/05/03 23:44:33 2.5 --- shamodule.c 2000/08/03 16:52:01 2.5.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1999 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* SHA module */ --- 1,2 ---- Index: signalmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/signalmodule.c,v retrieving revision 2.39 retrieving revision 2.39.4.1 diff -C2 -r2.39 -r2.39.4.1 *** signalmodule.c 1998/12/21 19:32:39 2.39 --- signalmodule.c 2000/08/03 16:52:01 2.39.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Signal module -- many thanks to Lance Ellinghaus */ --- 1,2 ---- Index: stropmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/stropmodule.c,v retrieving revision 2.63 retrieving revision 2.63.2.1 diff -C2 -r2.63 -r2.63.2.1 *** stropmodule.c 2000/05/03 23:44:33 2.63 --- stropmodule.c 2000/08/03 16:52:01 2.63.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* strop module */ --- 1,2 ---- Index: structmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/structmodule.c,v retrieving revision 2.30 retrieving revision 2.30.2.1 diff -C2 -r2.30 -r2.30.2.1 *** structmodule.c 2000/02/29 13:59:24 2.30 --- structmodule.c 2000/08/03 16:52:01 2.30.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* struct module -- pack values into and (out of) strings */ --- 1,2 ---- Index: sunaudiodev.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/sunaudiodev.c,v retrieving revision 1.17 retrieving revision 1.17.2.1 diff -C2 -r1.17 -r1.17.2.1 *** sunaudiodev.c 2000/05/03 23:44:33 1.17 --- sunaudiodev.c 2000/08/03 16:52:01 1.17.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Sad objects */ --- 1,2 ---- Index: svmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/svmodule.c,v retrieving revision 2.11 retrieving revision 2.11.2.1 diff -C2 -r2.11 -r2.11.2.1 *** svmodule.c 2000/05/03 23:44:33 2.11 --- svmodule.c 2000/08/03 16:52:02 2.11.2.1 *************** *** 1,33 **** - /********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* SV module -- interface to the Indigo video board */ --- 1,2 ---- Index: threadmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/threadmodule.c,v retrieving revision 2.31 retrieving revision 2.31.2.1 diff -C2 -r2.31 -r2.31.2.1 *** threadmodule.c 2000/05/03 23:44:33 2.31 --- threadmodule.c 2000/08/03 16:52:02 2.31.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Thread module */ /* Interface to Sjoerd's portable C thread library */ --- 1,2 ---- Index: timemodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/timemodule.c,v retrieving revision 2.83 retrieving revision 2.83.2.1 diff -C2 -r2.83 -r2.83.2.1 *** timemodule.c 2000/05/09 19:52:40 2.83 --- timemodule.c 2000/08/03 16:52:02 2.83.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Time module */ --- 1,2 ---- Index: xxmodule.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/xxmodule.c,v retrieving revision 2.16 retrieving revision 2.16.2.1 diff -C2 -r2.16 -r2.16.2.1 *** xxmodule.c 2000/05/03 23:44:33 2.16 --- xxmodule.c 2000/08/03 16:52:02 2.16.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Use this file as a template to start implementing a module that also declares objects types. All occurrences of 'Xxo' should be changed --- 1,2 ---- Index: yuv.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/yuv.h,v retrieving revision 2.5 retrieving revision 2.5.4.1 diff -C2 -r2.5 -r2.5.4.1 *** yuv.h 1996/10/25 14:41:05 2.5 --- yuv.h 2000/08/03 16:52:02 2.5.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #ifndef Py_YUV_H #define Py_YUV_H --- 1,2 ---- Index: yuvconvert.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Modules/yuvconvert.c,v retrieving revision 2.4 retrieving revision 2.4.4.1 diff -C2 -r2.4 -r2.4.4.1 *** yuvconvert.c 1996/10/25 14:41:08 2.4 --- yuvconvert.c 2000/08/03 16:52:02 2.4.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - #include "yuv.h" --- 1,2 ---- From python-dev@python.org Thu Aug 3 17:55:06 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:55:06 -0700 Subject: [Python-checkins] CVS: python/dist/src/PC config.c,1.22,1.22.2.1 getpathp.c,1.13,1.13.2.1 Message-ID: <200008031655.JAA16420@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/PC In directory slayer.i.sourceforge.net:/tmp/cvs-serv16403 Modified Files: Tag: cnri-16-start config.c getpathp.c Log Message: Remove CWI notice per CNRI instructions. Index: config.c =================================================================== RCS file: /cvsroot/python/python/dist/src/PC/config.c,v retrieving revision 1.22 retrieving revision 1.22.2.1 diff -C2 -r1.22 -r1.22.2.1 *** config.c 2000/05/08 14:15:19 1.22 --- config.c 2000/08/03 16:55:03 1.22.2.1 *************** *** 1,33 **** ! /* -*- C -*- *********************************************** ! Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, ! The Netherlands. ! ! All Rights Reserved ! ! Permission to use, copy, modify, and distribute this software and its ! documentation for any purpose and without fee is hereby granted, ! provided that the above copyright notice appear in all copies and that ! both that copyright notice and this permission notice appear in ! supporting documentation, and that the names of Stichting Mathematisch ! Centrum or CWI or Corporation for National Research Initiatives or ! CNRI not be used in advertising or publicity pertaining to ! distribution of the software without specific, written prior ! permission. ! ! While CWI is the initial source for this software, a modified version ! is made available by the Corporation for National Research Initiatives ! (CNRI) at the Internet address ftp://ftp.python.org. ! ! STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH ! REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF ! MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH ! CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL ! DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR ! PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER ! TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ! PERFORMANCE OF THIS SOFTWARE. ! ! ******************************************************************/ ! /* Module configuration */ --- 1,3 ---- ! /* -*- C -*- */ /* Module configuration */ Index: getpathp.c =================================================================== RCS file: /cvsroot/python/python/dist/src/PC/getpathp.c,v retrieving revision 1.13 retrieving revision 1.13.2.1 diff -C2 -r1.13 -r1.13.2.1 *** getpathp.c 2000/03/30 19:45:39 1.13 --- getpathp.c 2000/08/03 16:55:03 1.13.2.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Return the initial module search path. */ /* Used by DOS, OS/2, Windows 3.1, Windows 95/98, Windows NT. */ --- 1,2 ---- From python-dev@python.org Thu Aug 3 17:55:06 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:55:06 -0700 Subject: [Python-checkins] CVS: python/dist/src/PC/os2vacpp config.c,1.3,1.3.4.1 getpathp.c,1.4,1.4.4.1 Message-ID: <200008031655.JAA16424@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/PC/os2vacpp In directory slayer.i.sourceforge.net:/tmp/cvs-serv16403/os2vacpp Modified Files: Tag: cnri-16-start config.c getpathp.c Log Message: Remove CWI notice per CNRI instructions. Index: config.c =================================================================== RCS file: /cvsroot/python/python/dist/src/PC/os2vacpp/config.c,v retrieving revision 1.3 retrieving revision 1.3.4.1 diff -C2 -r1.3 -r1.3.4.1 *** config.c 1998/09/28 22:02:36 1.3 --- config.c 2000/08/03 16:55:04 1.3.4.1 *************** *** 1,33 **** ! /* -*- C -*- *********************************************** ! Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, ! The Netherlands. ! ! All Rights Reserved ! ! Permission to use, copy, modify, and distribute this software and its ! documentation for any purpose and without fee is hereby granted, ! provided that the above copyright notice appear in all copies and that ! both that copyright notice and this permission notice appear in ! supporting documentation, and that the names of Stichting Mathematisch ! Centrum or CWI or Corporation for National Research Initiatives or ! CNRI not be used in advertising or publicity pertaining to ! distribution of the software without specific, written prior ! permission. ! ! While CWI is the initial source for this software, a modified version ! is made available by the Corporation for National Research Initiatives ! (CNRI) at the Internet address ftp://ftp.python.org. ! ! STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH ! REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF ! MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH ! CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL ! DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR ! PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER ! TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ! PERFORMANCE OF THIS SOFTWARE. ! ! ******************************************************************/ ! /* Module configuration */ --- 1,3 ---- ! /* -*- C -*- */ /* Module configuration */ Index: getpathp.c =================================================================== RCS file: /cvsroot/python/python/dist/src/PC/os2vacpp/getpathp.c,v retrieving revision 1.4 retrieving revision 1.4.4.1 diff -C2 -r1.4 -r1.4.4.1 *** getpathp.c 1998/07/27 13:49:04 1.4 --- getpathp.c 2000/08/03 16:55:04 1.4.4.1 *************** *** 1,33 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ - /* Return the initial module search path. */ /* Used by DOS, OS/2, Windows 3.1. Works on NT too. */ --- 1,2 ---- From python-dev@python.org Thu Aug 3 17:56:46 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:56:46 -0700 Subject: [Python-checkins] CVS: python/dist/src/Tools/modulator/Templates copyright,1.2,1.2.4.1 Message-ID: <200008031656.JAA16626@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Tools/modulator/Templates In directory slayer.i.sourceforge.net:/tmp/cvs-serv16606/Tools/modulator/Templates Modified Files: Tag: cnri-16-start copyright Log Message: Remove CWI notice per CNRI instructions. Index: copyright =================================================================== RCS file: /cvsroot/python/python/dist/src/Tools/modulator/Templates/copyright,v retrieving revision 1.2 retrieving revision 1.2.4.1 diff -C2 -r1.2 -r1.2.4.1 *** copyright 1996/10/25 14:44:06 1.2 --- copyright 2000/08/03 16:56:43 1.2.4.1 *************** *** 1,30 **** - /*********************************************************** - Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - The Netherlands. - - All Rights Reserved - - Permission to use, copy, modify, and distribute this software and its - documentation for any purpose and without fee is hereby granted, - provided that the above copyright notice appear in all copies and that - both that copyright notice and this permission notice appear in - supporting documentation, and that the names of Stichting Mathematisch - Centrum or CWI or Corporation for National Research Initiatives or - CNRI not be used in advertising or publicity pertaining to - distribution of the software without specific, written prior - permission. - - While CWI is the initial source for this software, a modified version - is made available by the Corporation for National Research Initiatives - (CNRI) at the Internet address ftp://ftp.python.org. - - STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - PERFORMANCE OF THIS SOFTWARE. - - ******************************************************************/ --- 0 ---- From python-dev@python.org Thu Aug 3 17:56:45 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:56:45 -0700 Subject: [Python-checkins] CVS: python/dist/src/BeOS dl_export.h,1.1,1.1.4.1 Message-ID: <200008031656.JAA16618@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/BeOS In directory slayer.i.sourceforge.net:/tmp/cvs-serv16606/BeOS Modified Files: Tag: cnri-16-start dl_export.h Log Message: Remove CWI notice per CNRI instructions. Index: dl_export.h =================================================================== RCS file: /cvsroot/python/python/dist/src/BeOS/dl_export.h,v retrieving revision 1.1 retrieving revision 1.1.4.1 diff -C2 -r1.1 -r1.1.4.1 *** dl_export.h 1999/01/12 20:30:23 1.1 --- dl_export.h 2000/08/03 16:56:43 1.1.4.1 *************** *** 8,35 **** * * This trivial header is released under the same license as the rest of ! * Python: ! * ! * Permission to use, copy, modify, and distribute this software and its ! * documentation for any purpose and without fee is hereby granted, ! * provided that the above copyright notice appear in all copies and that ! * both that copyright notice and this permission notice appear in ! * supporting documentation, and that the names of Stichting Mathematisch ! * Centrum or CWI or Corporation for National Research Initiatives or ! * CNRI not be used in advertising or publicity pertaining to ! * distribution of the software without specific, written prior ! * permission. ! * ! * While CWI is the initial source for this software, a modified version ! * is made available by the Corporation for National Research Initiatives ! * (CNRI) at the Internet address ftp://ftp.python.org. ! * ! * STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH ! * REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF ! * MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH ! * CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL ! * DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR ! * PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER ! * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ! * PERFORMANCE OF THIS SOFTWARE. * * - Chris Herborth (chrish@beoscentral.com) --- 8,12 ---- * * This trivial header is released under the same license as the rest of ! * Python. * * - Chris Herborth (chrish@beoscentral.com) From python-dev@python.org Thu Aug 3 17:56:56 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:56:56 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc README,1.38,1.38.2.1 Message-ID: <200008031656.JAA16622@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc In directory slayer.i.sourceforge.net:/tmp/cvs-serv16606/Doc Modified Files: Tag: cnri-16-start README Log Message: Remove CWI notice per CNRI instructions. Index: README =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/README,v retrieving revision 1.38 retrieving revision 1.38.2.1 diff -C2 -r1.38 -r1.38.2.1 *** README 2000/04/28 16:53:35 1.38 --- README 2000/08/03 16:56:43 1.38.2.1 *************** *** 191,223 **** The Python source is copyrighted, but you can freely use and copy it ! as long as you don't change or remove the copyright notice: ! ! ---------------------------------------------------------------------- ! Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, ! The Netherlands. ! ! All Rights Reserved ! ! Permission to use, copy, modify, and distribute this software and its ! documentation for any purpose and without fee is hereby granted, ! provided that the above copyright notice appear in all copies and that ! both that copyright notice and this permission notice appear in ! supporting documentation, and that the names of Stichting Mathematisch ! Centrum or CWI or Corporation for National Research Initiatives or ! CNRI not be used in advertising or publicity pertaining to ! distribution of the software without specific, written prior ! permission. ! ! While CWI is the initial source for this software, a modified version ! is made available by the Corporation for National Research Initiatives ! (CNRI) at the Internet address ftp://ftp.python.org. ! ! STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH ! REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF ! MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH ! CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL ! DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR ! PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER ! TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ! PERFORMANCE OF THIS SOFTWARE. ! ---------------------------------------------------------------------- --- 191,193 ---- The Python source is copyrighted, but you can freely use and copy it ! as long as you don't change or remove the copyright notice. From python-dev@python.org Thu Aug 3 17:57:42 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 09:57:42 -0700 Subject: [Python-checkins] CVS: python/dist/src/Tools/scripts fixnotice.py,1.2,1.2.4.1 Message-ID: <200008031657.JAA16711@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Tools/scripts In directory slayer.i.sourceforge.net:/tmp/cvs-serv16703 Modified Files: Tag: cnri-16-start fixnotice.py Log Message: Change it to remove the old CWI notice, per CNRI instructions. Index: fixnotice.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Tools/scripts/fixnotice.py,v retrieving revision 1.2 retrieving revision 1.2.4.1 diff -C2 -r1.2 -r1.2.4.1 *** fixnotice.py 1998/03/24 05:30:22 1.2 --- fixnotice.py 2000/08/03 16:57:40 1.2.4.1 *************** *** 1,23 **** #! /usr/bin/env python ! OLD_NOTICE = """ ! Permission to use, copy, modify, and distribute this software and its ! documentation for any purpose and without fee is hereby granted, ! provided that the above copyright notice appear in all copies and that ! both that copyright notice and this permission notice appear in ! supporting documentation, and that the names of Stichting Mathematisch ! Centrum or CWI not be used in advertising or publicity pertaining to ! distribution of the software without specific, written prior permission. ! STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO ! THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND ! FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE ! FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES ! WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ! ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT ! OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ! """ - NEW_NOTICE = """ Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, --- 1,11 ---- #! /usr/bin/env python ! OLD_NOTICE = """\ ! /*********************************************************** ! Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, ! The Netherlands. ! All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, *************** *** 42,48 **** TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. """ ! # " <-- Help Emacs import os, sys, string --- 30,39 ---- TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + + ******************************************************************/ + """ ! NEW_NOTICE = "" import os, sys, string From python-dev@python.org Thu Aug 3 18:00:04 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 10:00:04 -0700 Subject: [Python-checkins] CVS: python/dist/src Makefile.in,1.86,1.86.2.1 Message-ID: <200008031700.KAA17091@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src In directory slayer.i.sourceforge.net:/tmp/cvs-serv16961 Modified Files: Tag: cnri-16-start Makefile.in Log Message: Remove CWI notice per CNRI instructions. Index: Makefile.in =================================================================== RCS file: /cvsroot/python/python/dist/src/Makefile.in,v retrieving revision 1.86 retrieving revision 1.86.2.1 diff -C2 -r1.86 -r1.86.2.1 *** Makefile.in 2000/04/24 14:57:21 1.86 --- Makefile.in 2000/08/03 17:00:01 1.86.2.1 *************** *** 1,32 **** - ######################################################################## - # Copyright 1991-1995 by Stichting Mathematisch Centrum, Amsterdam, - # The Netherlands. - # - # All Rights Reserved - # - # Permission to use, copy, modify, and distribute this software and its - # documentation for any purpose and without fee is hereby granted, - # provided that the above copyright notice appear in all copies and that - # both that copyright notice and this permission notice appear in - # supporting documentation, and that the names of Stichting Mathematisch - # Centrum or CWI or Corporation for National Research Initiatives or - # CNRI not be used in advertising or publicity pertaining to - # distribution of the software without specific, written prior - # permission. - # - # While CWI is the initial source for this software, a modified version - # is made available by the Corporation for National Research Initiatives - # (CNRI) at the Internet address ftp://ftp.python.org. - # - # STICHTING MATHEMATISCH CENTRUM AND CNRI DISCLAIM ALL WARRANTIES WITH - # REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF - # MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH - # CENTRUM OR CNRI BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - # DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR - # PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - # TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - # PERFORMANCE OF THIS SOFTWARE. - ######################################################################## - # Top-level Makefile for Python # --- 1,2 ---- From python-dev@python.org Thu Aug 3 18:25:47 2000 From: python-dev@python.org (Fred L. Drake) Date: Thu, 3 Aug 2000 10:25:47 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/perl python.perl,1.77,1.78 Message-ID: <200008031725.KAA26643@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/perl In directory slayer.i.sourceforge.net:/tmp/cvs-serv26636/perl Modified Files: python.perl Log Message: do_cmd_moreargs(), do_cmd_unspecified(): New functions to reflect previously unused markup. do_cmd_file(): Simplified generated markup to only make use of the existing stylesheet. do_cmd_makevar(): Make the markup more stylesheet-friendly. Index: python.perl =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/perl/python.perl,v retrieving revision 1.77 retrieving revision 1.78 diff -C2 -r1.77 -r1.78 *** python.perl 2000/06/28 21:06:08 1.77 --- python.perl 2000/08/03 17:25:44 1.78 *************** *** 123,127 **** sub do_cmd_pytype{ return @_[0]; } ! sub do_cmd_makevar{ return @_[0]; } sub do_cmd_code{ return use_wrappers(@_[0], '', ''); } --- 123,128 ---- sub do_cmd_pytype{ return @_[0]; } ! sub do_cmd_makevar{ ! return use_wrappers(@_[0], '', ''); } sub do_cmd_code{ return use_wrappers(@_[0], '', ''); } *************** *** 170,176 **** return use_italics(@_); } sub do_cmd_file{ ! return use_wrappers(@_[0], ! '', ! ''); } sub do_cmd_filenq{ return do_cmd_file(@_[0]); } --- 171,175 ---- return use_italics(@_); } sub do_cmd_file{ ! return use_wrappers(@_[0], '', ''); } sub do_cmd_filenq{ return do_cmd_file(@_[0]); } *************** *** 185,188 **** --- 184,192 ---- sub do_cmd_textit{ return use_wrappers(@_[0], '', ''); } + + sub do_cmd_moreargs{ + return '...' . @_[0]; } + sub do_cmd_unspecified{ + return '...' . @_[0]; } From python-dev@python.org Thu Aug 3 18:28:56 2000 From: python-dev@python.org (Moshe Zadka) Date: Thu, 3 Aug 2000 10:28:56 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test/output test_urlparse,NONE,1.1 Message-ID: <200008031728.KAA26850@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test/output In directory slayer.i.sourceforge.net:/tmp/cvs-serv26804/output Added Files: test_urlparse Log Message: Checking in empty tests for urlparse, as future place holders --- NEW FILE --- test_urlparse From python-dev@python.org Thu Aug 3 18:29:18 2000 From: python-dev@python.org (Fred L. Drake) Date: Thu, 3 Aug 2000 10:29:18 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libfuncs.tex,1.67,1.68 Message-ID: <200008031729.KAA26900@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv26885/lib Modified Files: libfuncs.tex Log Message: int() description: Fix markup to avoid image generation for math mode. zip() description: Fix broken markup, three small markup consistency nits, and one really minor usage nit. Introduce use of \moreargs instead of hardcoding "..." with \optional. Index: libfuncs.tex =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/lib/libfuncs.tex,v retrieving revision 1.67 retrieving revision 1.68 diff -C2 -r1.67 -r1.68 *** libfuncs.tex 2000/08/03 15:46:17 1.67 --- libfuncs.tex 2000/08/03 17:29:13 1.68 *************** *** 320,324 **** this behaves identical to \code{string.atoi(\var{x}\optional{, \var{radix}})}. The \var{radix} parameter gives the base for the ! conversion and may be any integer in the range $[2, 36]$. If \var{radix} is specified and \var{x} is not a string, \exception{TypeError} is raised. --- 320,324 ---- this behaves identical to \code{string.atoi(\var{x}\optional{, \var{radix}})}. The \var{radix} parameter gives the base for the ! conversion and may be any integer in the range [2, 36]. If \var{radix} is specified and \var{x} is not a string, \exception{TypeError} is raised. *************** *** 705,714 **** \end{funcdesc} ! \begin{funcdesc}{zip}{seq1\optional{, seq2\optional{, ...}}} This function returns a list of tuples, where each tuple contains the ! i-th element from each of the argument sequences. At least one sequence is required, otherwise a \exception{TypeError} is raised. The returned list is truncated in length to the length of the shortest argument sequence. When the argument sequences are all of the same ! length, \function{zip} is similar to \function{map} with an initial ! None argument. --- 705,715 ---- \end{funcdesc} ! \begin{funcdesc}{zip}{seq1, \moreargs} This function returns a list of tuples, where each tuple contains the ! \var{i}-th element from each of the argument sequences. At least one sequence is required, otherwise a \exception{TypeError} is raised. The returned list is truncated in length to the length of the shortest argument sequence. When the argument sequences are all of the same ! length, \function{zip()} is similar to \function{map()} with an ! initial argument of \code{None}. ! \end{funcdesc} From python-dev@python.org Thu Aug 3 18:28:56 2000 From: python-dev@python.org (Moshe Zadka) Date: Thu, 3 Aug 2000 10:28:56 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_urlparse.py,NONE,1.1 Message-ID: <200008031728.KAA26849@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib/test In directory slayer.i.sourceforge.net:/tmp/cvs-serv26804 Added Files: test_urlparse.py Log Message: Checking in empty tests for urlparse, as future place holders --- NEW FILE --- From python-dev@python.org Thu Aug 3 18:38:34 2000 From: python-dev@python.org (Fred L. Drake) Date: Thu, 3 Aug 2000 10:38:34 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/texinputs python.sty,1.61,1.62 Message-ID: <200008031738.KAA27830@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/texinputs In directory slayer.i.sourceforge.net:/tmp/cvs-serv27817/texinputs Modified Files: python.sty Log Message: \py@varvars: Merge the various definitions to be the simplist one that does everything needed, and discard the older stuff that is not being used. Index: python.sty =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/texinputs/python.sty,v retrieving revision 1.61 retrieving revision 1.62 diff -C2 -r1.61 -r1.62 *** python.sty 2000/06/30 17:57:05 1.61 --- python.sty 2000/08/03 17:38:30 1.62 *************** *** 751,761 **** \newcommand{\newsgroup}[1]{{\small\textsf{#1}}} ! %\newcommand{\py@varvars}[1]{{\def\,{\/{\char`\,}}\var{#1}}} ! \newcommand{\py@varvars}[1]{% {\let\unspecified=\py@unspecified% \let\moreargs=\py@moreargs% ! \def\,{\/{\char`\,}}\var{#1}}} ! % let's see if this breaks anything now; we may be able to simplify... ! \renewcommand{\py@varvars}[1]{\var{#1}} % I'd really like to get rid of this! --- 751,758 ---- \newcommand{\newsgroup}[1]{{\small\textsf{#1}}} ! \newcommand{\py@varvars}[1]{{% {\let\unspecified=\py@unspecified% \let\moreargs=\py@moreargs% ! \var{#1}}}} % I'd really like to get rid of this! From python-dev@python.org Thu Aug 3 18:39:23 2000 From: python-dev@python.org (Greg Stein) Date: Thu, 3 Aug 2000 10:39:23 -0700 Subject: [Python-checkins] CVS: python/nondist/src/Compiler/compiler transformer.py,1.10,1.11 Message-ID: <200008031739.KAA27908@slayer.i.sourceforge.net> Update of /cvsroot/python/python/nondist/src/Compiler/compiler In directory slayer.i.sourceforge.net:/tmp/cvs-serv27804 Modified Files: transformer.py Log Message: add a bit more legal junk (too lazy to paste in the whole BSD license tho; included by ref) Index: transformer.py =================================================================== RCS file: /cvsroot/python/python/nondist/src/Compiler/compiler/transformer.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** transformer.py 2000/05/02 22:32:59 1.10 --- transformer.py 2000/08/03 17:39:13 1.11 *************** *** 1,2 **** --- 1,18 ---- + # + # Copyright (C) 1997-1998 Greg Stein. All Rights Reserved. + # + # This module is provided under a BSD-ish license. See + # http://www.opensource.org/licenses/bsd-license.html + # and replace OWNER, ORGANIZATION, and YEAR as appropriate. + # + # + # Written by Greg Stein (gstein@lyra.org) + # and Bill Tutt (rassilon@lima.mudlib.org) + # February 1997. + # + # Support for ast.Node subclasses written and other revisions by + # Jeremy Hylton (jeremy@cnri.reston.va.us) + # + """Parse tree transformation module. *************** *** 9,20 **** """ - # Copyright 1997-1998 Greg Stein and Bill Tutt - # - # Written by Greg Stein (gstein@lyra.org) - # and Bill Tutt (rassilon@lima.mudlib.org) - # February 1997. - # - # Support for Node subclasses written and other revisions by - # Jeremy Hylton (jeremy@cnri.reston.va.us) # # The output tree has the following nodes: --- 25,28 ---- From python-dev@python.org Thu Aug 3 18:43:05 2000 From: python-dev@python.org (Fred L. Drake) Date: Thu, 3 Aug 2000 10:43:05 -0700 Subject: [Python-checkins] CVS: python/dist/src/Objects rangeobject.c,2.16,2.17 Message-ID: <200008031743.KAA28246@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Objects In directory slayer.i.sourceforge.net:/tmp/cvs-serv28227 Modified Files: rangeobject.c Log Message: Remove the tp_print handler. Revise the tp_repr handler to produce a more "minimal" presentation. Make the tolist() method use PyArg_ParseTuple() and provide a docstring. Index: rangeobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/rangeobject.c,v retrieving revision 2.16 retrieving revision 2.17 diff -C2 -r2.16 -r2.17 *** rangeobject.c 2000/07/09 06:21:27 2.16 --- rangeobject.c 2000/08/03 17:43:02 2.17 *************** *** 59,92 **** } - static int - range_print(rangeobject *r, FILE *fp, int flags) - { - int i, j; - - fprintf(fp, "("); - for (i = 0; i < r->reps; ++i) - for (j = 0; j < r->len; ++j) { - if (j > 0 || i > 0) - fprintf(fp, ", "); - - fprintf(fp, "%ld", r->start + j * r->step); - } - - if (r->len == 1 && r->reps == 1) - fprintf(fp, ","); - fprintf(fp, ")"); - return 0; - } - static PyObject * range_repr(rangeobject *r) { ! char buf[80]; ! sprintf(buf, "(xrange(%ld, %ld, %ld) * %d)", ! r->start, ! r->start + r->len * r->step, ! r->step, ! r->reps); ! return PyString_FromString(buf); } --- 59,86 ---- } static PyObject * range_repr(rangeobject *r) { ! char buf1[80]; ! char buf2[80]; ! ! if (r->start == 0 && r->step == 1) { ! snprintf(buf1, sizeof(buf1), "xrange(%ld)", ! r->start + r->len * r->step); ! } ! else { ! char *fmt = "xrange(%ld, %ld, %ld)"; ! if (r->step == 1) ! fmt = "xrange(%ld, %ld)"; ! snprintf(buf1, sizeof(buf1), fmt, ! r->start, ! r->start + r->len * r->step, ! r->step); ! } ! if (r->reps != 1) { ! snprintf(buf2, sizeof(buf2), ! "(%s * %d)", buf1, r->reps); ! } ! return PyString_FromString(r->reps == 1 ? buf1 : buf2); } *************** *** 171,175 **** int len = self->len * self->reps; ! if (! PyArg_Parse(args, "")) return NULL; --- 165,169 ---- int len = self->len * self->reps; ! if (! PyArg_ParseTuple(args, ":tolist")) return NULL; *************** *** 189,193 **** { static PyMethodDef range_methods[] = { ! {"tolist", (PyCFunction)range_tolist}, {NULL, NULL} }; --- 183,189 ---- { static PyMethodDef range_methods[] = { ! {"tolist", (PyCFunction)range_tolist, METH_VARARGS, ! "tolist() -> list\n" ! "Return a list object with the same values."}, {NULL, NULL} }; *************** *** 229,237 **** 0, /* Item size for varobject */ (destructor)range_dealloc, /*tp_dealloc*/ ! (printfunc)range_print, /*tp_print*/ (getattrfunc)range_getattr, /*tp_getattr*/ 0, /*tp_setattr*/ (cmpfunc)range_compare, /*tp_compare*/ ! (reprfunc)range_repr, /*tp_repr*/ 0, /*tp_as_number*/ &range_as_sequence, /*tp_as_sequence*/ --- 225,233 ---- 0, /* Item size for varobject */ (destructor)range_dealloc, /*tp_dealloc*/ ! 0, /*tp_print*/ (getattrfunc)range_getattr, /*tp_getattr*/ 0, /*tp_setattr*/ (cmpfunc)range_compare, /*tp_compare*/ ! (reprfunc)range_repr, /*tp_repr*/ 0, /*tp_as_number*/ &range_as_sequence, /*tp_as_sequence*/ From python-dev@python.org Thu Aug 3 19:16:52 2000 From: python-dev@python.org (Guido van Rossum) Date: Thu, 3 Aug 2000 11:16:52 -0700 Subject: [Python-checkins] CVS: python/dist/src/Misc COPYRIGHT,1.4,NONE Message-ID: <200008031816.LAA01468@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Misc In directory slayer.i.sourceforge.net:/tmp/cvs-serv1452 Removed Files: Tag: cnri-16-start COPYRIGHT Log Message: The Misc/COPYRIGHT file is superseded by the toplevel LICENSE file. From python-dev@python.org Thu Aug 3 19:42:31 2000 From: python-dev@python.org (M.-A. Lemburg) Date: Thu, 3 Aug 2000 11:42:31 -0700 Subject: [Python-checkins] CVS: python/dist/src/Include unicodeobject.h,2.17,2.18 Message-ID: <200008031842.LAA08557@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Include In directory slayer.i.sourceforge.net:/tmp/cvs-serv8534/Include Modified Files: unicodeobject.h Log Message: This patch finalizes the move from UTF-8 to a default encoding in the Python Unicode implementation. The internal buffer used for implementing the buffer protocol is renamed to defenc to make this change visible. It now holds the default encoded version of the Unicode object and is calculated on demand (NULL otherwise). Since the default encoding defaults to ASCII, this will mean that Unicode objects which hold non-ASCII characters will no longer work on C APIs using the "s" or "t" parser markers. C APIs must now explicitly provide Unicode support via the "u", "U" or "es"/"es#" parser markers in order to work with non-ASCII Unicode strings. (Note: this patch will also have to be applied to the 1.6 branch of the CVS tree.) Index: unicodeobject.h =================================================================== RCS file: /cvsroot/python/python/dist/src/Include/unicodeobject.h,v retrieving revision 2.17 retrieving revision 2.18 diff -C2 -r2.17 -r2.18 *** unicodeobject.h 2000/08/03 16:24:24 2.17 --- unicodeobject.h 2000/08/03 18:42:28 2.18 *************** *** 205,210 **** Py_UNICODE *str; /* Raw Unicode buffer */ long hash; /* Hash value; -1 if not set */ ! PyObject *utf8str; /* UTF-8 encoded version as Python string, ! or NULL */ } PyUnicodeObject; --- 205,211 ---- Py_UNICODE *str; /* Raw Unicode buffer */ long hash; /* Hash value; -1 if not set */ ! PyObject *defenc; /* (Default) Encoded version as Python ! string, or NULL; this is used for ! implementing the buffer protocol */ } PyUnicodeObject; From python-dev@python.org Thu Aug 3 19:43:01 2000 From: python-dev@python.org (M.-A. Lemburg) Date: Thu, 3 Aug 2000 11:43:01 -0700 Subject: [Python-checkins] CVS: python/dist/src/Python getargs.c,2.42,2.43 Message-ID: <200008031843.LAA08602@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Python In directory slayer.i.sourceforge.net:/tmp/cvs-serv8588/Python Modified Files: getargs.c Log Message: This patch finalizes the move from UTF-8 to a default encoding in the Python Unicode implementation. The internal buffer used for implementing the buffer protocol is renamed to defenc to make this change visible. It now holds the default encoded version of the Unicode object and is calculated on demand (NULL otherwise). Since the default encoding defaults to ASCII, this will mean that Unicode objects which hold non-ASCII characters will no longer work on C APIs using the "s" or "t" parser markers. C APIs must now explicitly provide Unicode support via the "u", "U" or "es"/"es#" parser markers in order to work with non-ASCII Unicode strings. (Note: this patch will also have to be applied to the 1.6 branch of the CVS tree.) Index: getargs.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Python/getargs.c,v retrieving revision 2.42 retrieving revision 2.43 diff -C2 -r2.42 -r2.43 *** getargs.c 2000/07/22 18:47:25 2.42 --- getargs.c 2000/08/03 18:42:59 2.43 *************** *** 373,377 **** /* Internal API needed by convertsimple1(): */ extern ! PyObject *_PyUnicode_AsUTF8String(PyObject *unicode, const char *errors); --- 373,377 ---- /* Internal API needed by convertsimple1(): */ extern ! PyObject *_PyUnicode_AsDefaultEncodedString(PyObject *unicode, const char *errors); *************** *** 568,572 **** *p = PyString_AS_STRING(arg); else if (PyUnicode_Check(arg)) { ! arg = _PyUnicode_AsUTF8String(arg, NULL); if (arg == NULL) return "unicode conversion error"; --- 568,573 ---- *p = PyString_AS_STRING(arg); else if (PyUnicode_Check(arg)) { ! arg = _PyUnicode_AsDefaultEncodedString( ! arg, NULL); if (arg == NULL) return "unicode conversion error"; *************** *** 613,617 **** *p = PyString_AsString(arg); else if (PyUnicode_Check(arg)) { ! arg = _PyUnicode_AsUTF8String(arg, NULL); if (arg == NULL) return "unicode conversion error"; --- 614,619 ---- *p = PyString_AsString(arg); else if (PyUnicode_Check(arg)) { ! arg = _PyUnicode_AsDefaultEncodedString( ! arg, NULL); if (arg == NULL) return "unicode conversion error"; *************** *** 645,649 **** encoding = (const char *)va_arg(*p_va, const char *); if (encoding == NULL) ! return "(encoding is NULL)"; /* Get 's' parameter: the output buffer to use */ --- 647,651 ---- encoding = (const char *)va_arg(*p_va, const char *); if (encoding == NULL) ! encoding = PyUnicode_GetDefaultEncoding(); /* Get 's' parameter: the output buffer to use */ From python-dev@python.org Thu Aug 3 19:44:31 2000 From: python-dev@python.org (M.-A. Lemburg) Date: Thu, 3 Aug 2000 11:44:31 -0700 Subject: [Python-checkins] CVS: python/dist/src/Objects unicodeobject.c,2.54,2.55 Message-ID: <200008031844.LAA08711@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Objects In directory slayer.i.sourceforge.net:/tmp/cvs-serv8693/Objects Modified Files: unicodeobject.c Log Message: This patch finalizes the move from UTF-8 to a default encoding in the Python Unicode implementation. The internal buffer used for implementing the buffer protocol is renamed to defenc to make this change visible. It now holds the default encoded version of the Unicode object and is calculated on demand (NULL otherwise). Since the default encoding defaults to ASCII, this will mean that Unicode objects which hold non-ASCII characters will no longer work on C APIs using the "s" or "t" parser markers. C APIs must now explicitly provide Unicode support via the "u", "U" or "es"/"es#" parser markers in order to work with non-ASCII Unicode strings. (Note: this patch will also have to be applied to the 1.6 branch of the CVS tree.) Index: unicodeobject.c =================================================================== RCS file: /cvsroot/python/python/dist/src/Objects/unicodeobject.c,v retrieving revision 2.54 retrieving revision 2.55 diff -C2 -r2.54 -r2.55 *** unicodeobject.c 2000/08/03 16:24:25 2.54 --- unicodeobject.c 2000/08/03 18:44:28 2.55 *************** *** 166,172 **** reset: /* Reset the object caches */ ! if (unicode->utf8str) { ! Py_DECREF(unicode->utf8str); ! unicode->utf8str = NULL; } unicode->hash = -1; --- 166,172 ---- reset: /* Reset the object caches */ ! if (unicode->defenc) { ! Py_DECREF(unicode->defenc); ! unicode->defenc = NULL; } unicode->hash = -1; *************** *** 244,248 **** unicode->length = length; unicode->hash = -1; ! unicode->utf8str = NULL; return unicode; --- 244,248 ---- unicode->length = length; unicode->hash = -1; ! unicode->defenc = NULL; return unicode; *************** *** 263,269 **** unicode->length = 0; } ! if (unicode->utf8str) { ! Py_DECREF(unicode->utf8str); ! unicode->utf8str = NULL; } /* Add to free list */ --- 263,269 ---- unicode->length = 0; } ! if (unicode->defenc) { ! Py_DECREF(unicode->defenc); ! unicode->defenc = NULL; } /* Add to free list */ *************** *** 274,278 **** else { PyMem_DEL(unicode->str); ! Py_XDECREF(unicode->utf8str); PyObject_DEL(unicode); } --- 274,278 ---- else { PyMem_DEL(unicode->str); ! Py_XDECREF(unicode->defenc); PyObject_DEL(unicode); } *************** *** 530,533 **** --- 530,560 ---- } + /* Return a Python string holding the default encoded value of the + Unicode object. + + The resulting string is cached in the Unicode object for subsequent + usage by this function. The cached version is needed to implement + the character buffer interface and will live (at least) as long as + the Unicode object itself. + + The refcount of the string is *not* incremented. + + *** Exported for internal use by the interpreter only !!! *** + + */ + + PyObject *_PyUnicode_AsDefaultEncodedString(PyObject *unicode, + const char *errors) + { + PyObject *v = ((PyUnicodeObject *)unicode)->defenc; + + if (v) + return v; + v = PyUnicode_AsEncodedString(unicode, NULL, errors); + if (v && errors == NULL) + ((PyUnicodeObject *)unicode)->defenc = v; + return v; + } + Py_UNICODE *PyUnicode_AsUnicode(PyObject *unicode) { *************** *** 875,907 **** } - /* Return a Python string holding the UTF-8 encoded value of the - Unicode object. - - The resulting string is cached in the Unicode object for subsequent - usage by this function. The cached version is needed to implement - the character buffer interface and will live (at least) as long as - the Unicode object itself. - - The refcount of the string is *not* incremented. - - *** Exported for internal use by the interpreter only !!! *** - - */ - - PyObject *_PyUnicode_AsUTF8String(PyObject *unicode, - const char *errors) - { - PyObject *v = ((PyUnicodeObject *)unicode)->utf8str; - - if (v) - return v; - v = PyUnicode_EncodeUTF8(PyUnicode_AS_UNICODE(unicode), - PyUnicode_GET_SIZE(unicode), - errors); - if (v && errors == NULL) - ((PyUnicodeObject *)unicode)->utf8str = v; - return v; - } - PyObject *PyUnicode_AsUTF8String(PyObject *unicode) { --- 902,905 ---- *************** *** 912,916 **** return NULL; } ! str = _PyUnicode_AsUTF8String(unicode, NULL); if (str == NULL) return NULL; --- 910,916 ---- return NULL; } ! str = PyUnicode_EncodeUTF8(PyUnicode_AS_UNICODE(unicode), ! PyUnicode_GET_SIZE(unicode), ! NULL); if (str == NULL) return NULL; *************** *** 4520,4524 **** return -1; } ! str = _PyUnicode_AsUTF8String((PyObject *)self, NULL); if (str == NULL) return -1; --- 4520,4524 ---- return -1; } ! str = _PyUnicode_AsDefaultEncodedString((PyObject *)self, NULL); if (str == NULL) return -1; *************** *** 5131,5135 **** if (v->str) PyMem_DEL(v->str); ! Py_XDECREF(v->utf8str); PyObject_DEL(v); } --- 5131,5135 ---- if (v->str) PyMem_DEL(v->str); ! Py_XDECREF(v->defenc); PyObject_DEL(v); } From python-dev@python.org Thu Aug 3 19:46:10 2000 From: python-dev@python.org (M.-A. Lemburg) Date: Thu, 3 Aug 2000 11:46:10 -0700 Subject: [Python-checkins] CVS: python/dist/src/Misc unicode.txt,3.8,3.9 Message-ID: <200008031846.LAA08911@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Misc In directory slayer.i.sourceforge.net:/tmp/cvs-serv8894 Modified Files: unicode.txt Log Message: This patch finalizes the move from UTF-8 to a default encoding in the Python Unicode implementation. The internal buffer used for implementing the buffer protocol is renamed to defenc to make this change visible. It now holds the default encoded version of the Unicode object and is calculated on demand (NULL otherwise). Since the default encoding defaults to ASCII, this will mean that Unicode objects which hold non-ASCII characters will no longer work on C APIs using the "s" or "t" parser markers. C APIs must now explicitly provide Unicode support via the "u", "U" or "es"/"es#" parser markers in order to work with non-ASCII Unicode strings. (Note: this patch will also have to be applied to the 1.6 branch of the CVS tree.) Index: unicode.txt =================================================================== RCS file: /cvsroot/python/python/dist/src/Misc/unicode.txt,v retrieving revision 3.8 retrieving revision 3.9 diff -C2 -r3.8 -r3.9 *** unicode.txt 2000/06/08 17:51:33 3.8 --- unicode.txt 2000/08/03 18:46:08 3.9 *************** *** 1,4 **** ============================================================================= ! Python Unicode Integration Proposal Version: 1.4 ----------------------------------------------------------------------------- --- 1,4 ---- ============================================================================= ! Python Unicode Integration Proposal Version: 1.6 ----------------------------------------------------------------------------- *************** *** 42,56 **** by all APIs taking an encoding name as input). ! Encoding names should follow the name conventions as used by the Unicode Consortium: spaces are converted to hyphens, e.g. 'utf 16' is written as 'utf-16'. ! Codec modules should use the same names, but with hyphens converted to underscores, e.g. utf_8, utf_16, iso_8859_1. - · The should be the widely used 'utf-8' format. This - is very close to the standard 7-bit ASCII format and thus resembles the - standard used programming nowadays in most aspects. Unicode Constructors: --- 42,92 ---- by all APIs taking an encoding name as input). ! · Encoding names should follow the name conventions as used by the Unicode Consortium: spaces are converted to hyphens, e.g. 'utf 16' is written as 'utf-16'. ! · Codec modules should use the same names, but with hyphens converted to underscores, e.g. utf_8, utf_16, iso_8859_1. + Unicode Default Encoding: + ------------------------- + + The Unicode implementation has to make some assumption about the + encoding of 8-bit strings passed to it for coercion and about the + encoding to as default for conversion of Unicode to strings when no + specific encoding is given. This encoding is called + throughout this text. + + For this, the implementation maintains a global which can be set in + the site.py Python startup script. Subsequent changes are not + possible. The can be set and queried using the + two sys module APIs: + + sys.setdefaultencoding(encoding) + --> Sets the used by the Unicode implementation. + encoding has to be an encoding which is supported by the Python + installation, otherwise, a LookupError is raised. + + Note: This API is only available in site.py ! It is removed + from the sys module by site.py after usage. + + sys.getdefaultencoding() + --> Returns the current . + + If not otherwise defined or set, the defaults to + 'ascii'. This encoding is also the startup default of Python (and in + effect before site.py is executed). + + Note that the default site.py startup module contains disabled + optional code which can set the according to the + encoding defined by the current locale. The locale module is used to + extract the encoding from the locale default settings defined by the + OS environment (see locale.py). If the encoding cannot be determined, + is unkown or unsupported, the code defaults to setting the to 'ascii'. To enable this code, edit the site.py file or + place the appropriate code into the sitecustomize.py module of your + Python installation. + Unicode Constructors: *************** *** 160,165 **** encoding>. ! For the same reason, Unicode objects should return the same hash value ! as their UTF-8 equivalent strings. When compared using cmp() (or PyObject_Compare()) the implementation --- 196,203 ---- encoding>. ! Unicode objects should return the same hash value as their ASCII ! equivalent strings. Unicode strings holding non-ASCII values are not ! guaranteed to return the same hash values as the default encoded ! equivalent string representation. When compared using cmp() (or PyObject_Compare()) the implementation *************** *** 662,670 **** Unicode objects should have a pointer to a cached Python string object ! holding the object's value using the current . This is needed for performance and internal parsing (see ! Internal Argument Parsing) reasons. The buffer is filled when the ! first conversion request to the is issued on the ! object. Interning is not needed (for now), since Python identifiers are --- 700,707 ---- Unicode objects should have a pointer to a cached Python string object ! holding the object's value using the . ! This is needed for performance and internal parsing (see Internal ! Argument Parsing) reasons. The buffer is filled when the first ! conversion request to the is issued on the object. Interning is not needed (for now), since Python identifiers are *************** *** 702,710 **** ----------------- ! Implement the buffer interface using the Python string object as basis for bf_getcharbuf (corresponds to the "t#" argument parsing marker) and the internal buffer for bf_getreadbuf (corresponds to the "s#" argument parsing marker). If bf_getcharbuf is requested ! and the object does not yet exist, it is created first. This has the advantage of being able to write to output streams (which --- 739,747 ---- ----------------- ! Implement the buffer interface using the Python string object as basis for bf_getcharbuf (corresponds to the "t#" argument parsing marker) and the internal buffer for bf_getreadbuf (corresponds to the "s#" argument parsing marker). If bf_getcharbuf is requested ! and the object does not yet exist, it is created first. This has the advantage of being able to write to output streams (which *************** *** 776,781 **** "U": Check for Unicode object and return a pointer to it ! "s": For Unicode objects: auto convert them to the ! and return a pointer to the object's buffer. "s#": Access to the Unicode object via the bf_getreadbuf buffer interface --- 813,818 ---- "U": Check for Unicode object and return a pointer to it ! "s": For Unicode objects: return a pointer to the object's ! buffer (which uses the ). "s#": Access to the Unicode object via the bf_getreadbuf buffer interface *************** *** 786,791 **** "t#": Access to the Unicode object via the bf_getcharbuf buffer interface (see Buffer Interface); note that the length relates to the buffer ! length, not necessarily to the Unicode string length (this may ! be different depending on the ). "es": --- 823,827 ---- "t#": Access to the Unicode object via the bf_getcharbuf buffer interface (see Buffer Interface); note that the length relates to the buffer ! length, not necessarily to the Unicode string length. "es": *************** *** 1008,1011 **** --- 1044,1052 ---- History of this Proposal: ------------------------- + 1.6: Changed to since this is the name used in the + implementation. Added notes about the usage of in the + buffer protocol implementation. + 1.5: Added notes about setting the . Fixed some + typos (thanks to Andrew Kuchling). Changed to . 1.4: Added note about mixed type comparisons and contains tests. Changed treating of Unicode objects in format strings (if used From python-dev@python.org Thu Aug 3 20:26:25 2000 From: python-dev@python.org (Jeremy Hylton) Date: Thu, 3 Aug 2000 12:26:25 -0700 Subject: [Python-checkins] CVS: python/dist/src/Tools/scripts trace.py,NONE,1.1 Message-ID: <200008031926.MAA18490@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Tools/scripts In directory slayer.i.sourceforge.net:/tmp/cvs-serv18344 Added Files: trace.py Log Message: Python code coverage tool by Skip Montanaro and Andrew Dalke --- NEW FILE --- #!/usr/bin/env python # Copyright 2000, Mojam Media, Inc., all rights reserved. # Author: Skip Montanaro # # Copyright 1999, Bioreason, Inc., all rights reserved. # Author: Andrew Dalke # # Copyright 1995-1997, Automatrix, Inc., all rights reserved. # Author: Skip Montanaro # # Copyright 1991-1995, Stichting Mathematisch Centrum, all rights reserved. # # # Permission to use, copy, modify, and distribute this Python software and # its associated documentation for any purpose without fee is hereby # granted, provided that the above copyright notice appears in all copies, # and that both that copyright notice and this permission notice appear in # supporting documentation, and that the name of neither Automatrix, # Bioreason or Mojam Media be used in advertising or publicity pertaining to # distribution of the software without specific, written prior permission. # # # Summary of recent changes: # Support for files with the same basename (submodules in packages) # Expanded the idea of how to ignore files or modules # Split tracing and counting into different classes # Extracted count information and reporting from the count class # Added some ability to detect which missing lines could be executed # Added pseudo-pragma to prohibit complaining about unexecuted lines # Rewrote the main program # Summary of older changes: # Added run-time display of statements being executed # Incorporated portability and performance fixes from Greg Stein # Incorporated main program from Michael Scharf """ program/module to trace Python program or function execution Sample use, command line: trace.py -c -f counts --ignore-dir '$prefix' spam.py eggs trace.py -t --ignore-dir '$prefix' spam.py eggs Sample use, programmatically (still more complicated than it should be) # create an Ignore option, telling it what you want to ignore ignore = trace.Ignore(dirs = [sys.prefix, sys.exec_prefix]) # create a Coverage object, telling it what to ignore coverage = trace.Coverage(ignore) # run the new command using the given trace trace.run(coverage.trace, 'main()') # make a report, telling it where you want output t = trace.create_results_log(coverage.results(), '/usr/local/Automatrix/concerts/coverage') show_missing = 1) The Trace class can be instantited instead of the Coverage class if runtime display of executable lines is desired instead of statement converage measurement. """ import sys, os, string, marshal, tempfile, copy, operator def usage(outfile): outfile.write("""Usage: %s [OPTIONS] [ARGS] Execution: --help Display this help then exit. --version Output version information then exit. -t,--trace Print the line to be executed to sys.stdout. -c,--count Count the number of times a line is executed. Results are written in the results file, if given. -r,--report Generate a report from a results file; do not execute any code. (One of `-t', `-c' or `-r' must be specified) I/O: -f,--file= File name for accumulating results over several runs. (No file name means do not archive results) -d,--logdir= Directory to use when writing annotated log files. Log files are the module __name__ with `.` replaced by os.sep and with '.pyl' added. -m,--missing Annotate all executable lines which were not executed with a '>>>>>> '. -R,--no-report Do not generate the annotated reports. Useful if you want to accumulate several over tests. Selection: Do not trace or log lines from ... --ignore-module=[string] modules with the given __name__, and submodules of that module --ignore-dir=[string] files in the stated directory (multiple directories can be joined by os.pathsep) The selection options can be listed multiple times to ignore different modules. """ % sys.argv[0]) class Ignore: def __init__(self, modules = None, dirs = None): self._mods = modules or [] self._dirs = dirs or [] self._ignore = { '': 1 } def names(self, filename, modulename): if self._ignore.has_key(modulename): return self._ignore[modulename] # haven't seen this one before, so see if the module name is # on the ignore list. Need to take some care since ignoring # "cmp" musn't mean ignoring "cmpcache" but ignoring # "Spam" must also mean ignoring "Spam.Eggs". for mod in self._mods: if mod == modulename: # Identical names, so ignore self._ignore[modulename] = 1 return 1 # check if the module is a proper submodule of something on # the ignore list n = len(mod) # (will not overflow since if the first n characters are the # same and the name has not already occured, then the size # of "name" is greater than that of "mod") if mod == modulename[:n] and modulename[n] == '.': self._ignore[modulename] = 1 return 1 # Now check that __file__ isn't in one of the directories if filename is None: # must be a built-in, so we must ignore self._ignore[modulename] = 1 return 1 # Ignore a file when it contains one of the ignorable paths for d in self._dirs: # The '+ os.sep' is to ensure that d is a parent directory, # as compared to cases like: # d = "/usr/local" # filename = "/usr/local.py" # or # d = "/usr/local.py" # filename = "/usr/local.py" if string.find(filename, d + os.sep) == 0: self._ignore[modulename] = 1 return 1 # Tried the different ways, so we don't ignore this module self._ignore[modulename] = 0 return 0 def run(trace, cmd): import __main__ dict = __main__.__dict__ sys.settrace(trace) try: exec cmd in dict, dict finally: sys.settrace(None) def runctx(trace, cmd, globals=None, locals=None): if globals is None: globals = {} if locals is None: locals = {} sys.settrace(trace) try: exec cmd in dict, dict finally: sys.settrace(None) def runfunc(trace, func, *args, **kw): result = None sys.settrace(trace) try: result = apply(func, args, kw) finally: sys.settrace(None) return result class CoverageResults: def __init__(self, counts = {}, modules = {}): self.counts = counts.copy() # map (filename, lineno) to count self.modules = modules.copy() # map filenames to modules def update(self, other): """Merge in the data from another CoverageResults""" counts = self.counts other_counts = other.counts modules = self.modules other_modules = other.modules for key in other_counts.keys(): counts[key] = counts.get(key, 0) + other_counts[key] for key in other_modules.keys(): if modules.has_key(key): # make sure they point to the same file assert modules[key] == other_modules[key], \ "Strange! filename %s has two different module names" % \ (key, modules[key], other_module[key]) else: modules[key] = other_modules[key] # Given a code string, return the SET_LINENO information def _find_LINENO_from_string(co_code): """return all of the SET_LINENO information from a code string""" import dis linenos = {} # This code was filched from the `dis' module then modified n = len(co_code) i = 0 prev_op = None prev_lineno = 0 while i < n: c = co_code[i] op = ord(c) if op == dis.SET_LINENO: if prev_op == op: # two SET_LINENO in a row, so the previous didn't # indicate anything. This occurs with triple # quoted strings (?). Remove the old one. del linenos[prev_lineno] prev_lineno = ord(co_code[i+1]) + ord(co_code[i+2])*256 linenos[prev_lineno] = 1 if op >= dis.HAVE_ARGUMENT: i = i + 3 else: i = i + 1 prev_op = op return linenos def _find_LINENO(code): """return all of the SET_LINENO information from a code object""" import types # get all of the lineno information from the code of this scope level linenos = _find_LINENO_from_string(code.co_code) # and check the constants for references to other code objects for c in code.co_consts: if type(c) == types.CodeType: # find another code object, so recurse into it linenos.update(_find_LINENO(c)) return linenos def find_executable_linenos(filename): """return a dict of the line numbers from executable statements in a file Works by finding all of the code-like objects in the module then searching the byte code for 'SET_LINENO' terms (so this won't work one -O files). """ import parser prog = open(filename).read() ast = parser.suite(prog) code = parser.compileast(ast, filename) # The only way I know to find line numbers is to look for the # SET_LINENO instructions. Isn't there some way to get it from # the AST? return _find_LINENO(code) ### XXX because os.path.commonprefix seems broken by my way of thinking... def commonprefix(dirs): "Given a list of pathnames, returns the longest common leading component" if not dirs: return '' n = copy.copy(dirs) for i in range(len(n)): n[i] = n[i].split(os.sep) prefix = n[0] for item in n: for i in range(len(prefix)): if prefix[:i+1] <> item[:i+1]: prefix = prefix[:i] if i == 0: return '' break return os.sep.join(prefix) def create_results_log(results, dirname = ".", show_missing = 1, save_counts = 0): import re # turn the counts data ("(filename, lineno) = count") into something # accessible on a per-file basis per_file = {} for filename, lineno in results.counts.keys(): lines_hit = per_file[filename] = per_file.get(filename, {}) lines_hit[lineno] = results.counts[(filename, lineno)] # try and merge existing counts and modules file from dirname try: counts = marshal.load(open(os.path.join(dirname, "counts"))) modules = marshal.load(open(os.path.join(dirname, "modules"))) results.update(results.__class__(counts, modules)) except IOError: pass # there are many places where this is insufficient, like a blank # line embedded in a multiline string. blank = re.compile(r'^\s*(#.*)?$') # generate file paths for the coverage files we are going to write... fnlist = [] tfdir = tempfile.gettempdir() for key in per_file.keys(): filename = key # skip some "files" we don't care about... if filename == "": continue # are these caused by code compiled using exec or something? if filename.startswith(tfdir): continue # XXX this is almost certainly not portable!!! fndir = os.path.dirname(filename) if filename[:1] == os.sep: coverpath = os.path.join(dirname, "."+fndir) else: coverpath = os.path.join(dirname, fndir) if filename.endswith(".pyc") or filename.endswith(".pyo"): filename = filename[:-1] # Get the original lines from the .py file try: lines = open(filename, 'r').readlines() except IOError, err: sys.stderr.write( "%s: Could not open %s for reading because: %s - skipping\n" % \ ("trace", `filename`, err.strerror)) continue modulename = os.path.split(results.modules[key])[1] # build list file name by appending a ".cover" to the module name # and sticking it into the specified directory listfilename = os.path.join(coverpath, modulename + ".cover") #sys.stderr.write("modulename: %(modulename)s\n" # "filename: %(filename)s\n" # "coverpath: %(coverpath)s\n" # "listfilename: %(listfilename)s\n" # "dirname: %(dirname)s\n" # % locals()) try: outfile = open(listfilename, 'w') except IOError, err: sys.stderr.write( '%s: Could not open %s for writing because: %s - skipping\n' % ("trace", `listfilename`, err.strerror)) continue # If desired, get a list of the line numbers which represent # executable content (returned as a dict for better lookup speed) if show_missing: executable_linenos = find_executable_linenos(filename) else: executable_linenos = {} lines_hit = per_file[key] for i in range(len(lines)): line = lines[i] # do the blank/comment match to try to mark more lines # (help the reader find stuff that hasn't been covered) if lines_hit.has_key(i+1): # count precedes the lines that we captured outfile.write('%5d: ' % lines_hit[i+1]) elif blank.match(line): # blank lines and comments are preceded by dots outfile.write(' . ') else: # lines preceded by no marks weren't hit # Highlight them if so indicated, unless the line contains # '#pragma: NO COVER' (it is possible to embed this into # the text as a non-comment; no easy fix) if executable_linenos.has_key(i+1) and \ string.find(lines[i], string.join(['#pragma', 'NO COVER'])) == -1: outfile.write('>>>>>> ') else: outfile.write(' '*7) outfile.write(string.expandtabs(lines[i], 8)) outfile.close() if save_counts: # try and store counts and module info into dirname try: marshal.dump(results.counts, open(os.path.join(dirname, "counts"), "w")) marshal.dump(results.modules, open(os.path.join(dirname, "modules"), "w")) except IOError, err: sys.stderr.write("cannot save counts/modules files because %s" % err.strerror) # There is a lot of code shared between these two classes even though # it is straightforward to make a super class to share code. However, # for performance reasons (remember, this is called at every step) I # wanted to keep everything to a single function call. Also, by # staying within a single scope, I don't have to temporarily nullify # sys.settrace, which would slow things down even more. class Coverage: def __init__(self, ignore = Ignore()): self.ignore = ignore self.ignore_names = ignore._ignore # access ignore's cache (speed hack) self.counts = {} # keys are (filename, linenumber) self.modules = {} # maps filename -> module name def trace(self, frame, why, arg): if why == 'line': # something is fishy about getting the file name filename = frame.f_globals.get("__file__", None) if filename is None: filename = frame.f_code.co_filename modulename = frame.f_globals["__name__"] # We do this next block to keep from having to make methods # calls, which also requires resetting the trace ignore_it = self.ignore_names.get(modulename, -1) if ignore_it == -1: # unknown filename sys.settrace(None) ignore_it = self.ignore.names(filename, modulename) sys.settrace(self.trace) # record the module name for every file self.modules[filename] = modulename if not ignore_it: lineno = frame.f_lineno # record the file name and line number of every trace key = (filename, lineno) self.counts[key] = self.counts.get(key, 0) + 1 return self.trace def results(self): return CoverageResults(self.counts, self.modules) class Trace: def __init__(self, ignore = Ignore()): self.ignore = ignore self.ignore_names = ignore._ignore # access ignore's cache (speed hack) self.files = {'': None} # stores lines from the .py file, or None def trace(self, frame, why, arg): if why == 'line': filename = frame.f_code.co_filename modulename = frame.f_globals["__name__"] # We do this next block to keep from having to make methods # calls, which also requires resetting the trace ignore_it = self.ignore_names.get(modulename, -1) if ignore_it == -1: # unknown filename sys.settrace(None) ignore_it = self.ignore.names(filename, modulename) sys.settrace(self.trace) if not ignore_it: lineno = frame.f_lineno files = self.files if filename != '' and not files.has_key(filename): files[filename] = map(string.rstrip, open(filename).readlines()) # If you want to see filenames (the original behaviour), try: # modulename = filename # or, prettier but confusing when several files have the same name # modulename = os.path.basename(filename) if files[filename] != None: print '%s(%d): %s' % (os.path.basename(filename), lineno, files[filename][lineno-1]) else: print '%s(%d): ??' % (modulename, lineno) return self.trace def _err_exit(msg): sys.stderr.write("%s: %s\n" % (sys.argv[0], msg)) sys.exit(1) def main(argv = None): import getopt if argv is None: argv = sys.argv try: opts, prog_argv = getopt.getopt(argv[1:], "tcrRf:d:m", ["help", "version", "trace", "count", "report", "no-report", "file=", "logdir=", "missing", "ignore-module=", "ignore-dir="]) except getopt.error, msg: sys.stderr.write("%s: %s\n" % (sys.argv[0], msg)) sys.stderr.write("Try `%s --help' for more information\n" % sys.argv[0]) sys.exit(1) trace = 0 count = 0 report = 0 no_report = 0 counts_file = None logdir = "." missing = 0 ignore_modules = [] ignore_dirs = [] for opt, val in opts: if opt == "--help": usage(sys.stdout) sys.exit(0) if opt == "--version": sys.stdout.write("trace 2.0\n") sys.exit(0) if opt == "-t" or opt == "--trace": trace = 1 continue if opt == "-c" or opt == "--count": count = 1 continue if opt == "-r" or opt == "--report": report = 1 continue if opt == "-R" or opt == "--no-report": no_report = 1 continue if opt == "-f" or opt == "--file": counts_file = val continue if opt == "-d" or opt == "--logdir": logdir = val continue if opt == "-m" or opt == "--missing": missing = 1 continue if opt == "--ignore-module": ignore_modules.append(val) continue if opt == "--ignore-dir": for s in string.split(val, os.pathsep): s = os.path.expandvars(s) # should I also call expanduser? (after all, could use $HOME) s = string.replace(s, "$prefix", os.path.join(sys.prefix, "lib", "python" + sys.version[:3])) s = string.replace(s, "$exec_prefix", os.path.join(sys.exec_prefix, "lib", "python" + sys.version[:3])) s = os.path.normpath(s) ignore_dirs.append(s) continue assert 0, "Should never get here" if len(prog_argv) == 0: _err_exit("missing name of file to run") if count + trace + report > 1: _err_exit("can only specify one of --trace, --count or --report") if count + trace + report == 0: _err_exit("must specify one of --trace, --count or --report") if report and counts_file is None: _err_exit("--report requires a --file") if report and no_report: _err_exit("cannot specify both --report and --no-report") if logdir is not None: # warn if the directory doesn't exist, but keep on going # (is this the correct behaviour?) if not os.path.isdir(logdir): sys.stderr.write( "trace: WARNING, --logdir directory %s is not available\n" % `logdir`) sys.argv = prog_argv progname = prog_argv[0] if eval(sys.version[:3])>1.3: sys.path[0] = os.path.split(progname)[0] # ??? # everything is ready ignore = Ignore(ignore_modules, ignore_dirs) if trace: t = Trace(ignore) try: run(t.trace, 'execfile(' + `progname` + ')') except IOError, err: _err_exit("Cannot run file %s because: %s" % \ (`sys.argv[0]`, err.strerror)) elif count: t = Coverage(ignore) try: run(t.trace, 'execfile(' + `progname` + ')') except IOError, err: _err_exit("Cannot run file %s because: %s" % \ (`sys.argv[0]`, err.strerror)) except SystemExit: pass results = t.results() # Add another lookup from the program's file name to its import name # This give the right results, but I'm not sure why ... results.modules[progname] = os.path.splitext(progname)[0] if counts_file: # add in archived data, if available try: old_counts, old_modules = marshal.load(open(counts_file, 'rb')) except IOError: pass else: results.update(CoverageResults(old_counts, old_modules)) if not no_report: create_results_log(results, logdir, missing) if counts_file: try: marshal.dump( (results.counts, results.modules), open(counts_file, 'wb')) except IOError, err: _err_exit("Cannot save counts file %s because: %s" % \ (`counts_file`, err.strerror)) elif report: old_counts, old_modules = marshal.load(open(counts_file, 'rb')) results = CoverageResults(old_counts, old_modules) create_results_log(results, logdir, missing) else: assert 0, "Should never get here" if __name__=='__main__': main() From python-dev@python.org Thu Aug 3 20:38:10 2000 From: python-dev@python.org (M.-A. Lemburg) Date: Thu, 3 Aug 2000 12:38:10 -0700 Subject: [Python-checkins] CVS: python/dist/src/Doc/ext ext.tex,1.80,1.81 Message-ID: <200008031938.MAA21177@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Doc/ext In directory slayer.i.sourceforge.net:/tmp/cvs-serv21136/Doc/ext Modified Files: ext.tex Log Message: Added descriptions of the new parser markers for PyArg_ParseTuple(). Index: ext.tex =================================================================== RCS file: /cvsroot/python/python/dist/src/Doc/ext/ext.tex,v retrieving revision 1.80 retrieving revision 1.81 diff -C2 -r1.80 -r1.81 *** ext.tex 2000/07/09 16:27:33 1.80 --- ext.tex 2000/08/03 19:38:07 1.81 *************** *** 677,710 **** \begin{description} ! \item[\samp{s} (string) {[char *]}] ! Convert a Python string to a C pointer to a character string. You ! must not provide storage for the string itself; a pointer to an ! existing string is stored into the character pointer variable whose ! address you pass. The C string is null-terminated. The Python string ! must not contain embedded null bytes; if it does, a \exception{TypeError} ! exception is raised. ! ! \item[\samp{s\#} (string) {[char *, int]}] ! This variant on \samp{s} stores into two C variables, the first one ! a pointer to a character string, the second one its length. In this ! case the Python string may contain embedded null bytes. \item[\samp{z} (string or \code{None}) {[char *]}] Like \samp{s}, but the Python object may also be \code{None}, in which case the C pointer is set to \NULL{}. ! \item[\samp{z\#} (string or \code{None}) {[char *, int]}] This is to \samp{s\#} as \samp{z} is to \samp{s}. ! \item[\samp{u} (Unicode string) {[Py_UNICODE *]}] Convert a Python Unicode object to a C pointer to a null-terminated ! buffer of Unicode (UCS-2) data. As with \samp{s}, there is no need to provide storage for the Unicode data buffer; a pointer to the existing Unicode data is stored into the Py_UNICODE pointer variable whose address you pass. ! \item[\samp{u\#} (Unicode string) {[Py_UNICODE *, int]}] This variant on \samp{u} stores into two C variables, the first one a pointer to a Unicode data buffer, the second one its length. \item[\samp{b} (integer) {[char]}] --- 677,771 ---- \begin{description} ! \item[\samp{s} (string or Unicode object) {[char *]}] ! Convert a Python string or Unicode object to a C pointer to a ! character string. You must not provide storage for the string ! itself; a pointer to an existing string is stored into the character ! pointer variable whose address you pass. The C string is ! null-terminated. The Python string must not contain embedded null ! bytes; if it does, a \exception{TypeError} exception is raised. ! Unicode objects are converted to C strings using the default ! encoding. If this conversion fails, an \exception{UnicodeError} is ! raised. + \item[\samp{s\#} (string, Unicode or any read buffer compatible object) + {[char *, int]}] + This variant on \samp{s} stores into two C variables, the first one a + pointer to a character string, the second one its length. In this + case the Python string may contain embedded null bytes. Unicode + objects and all other read buffer compatible objects pass back a + reference to the raw internal data representation. In case of Unicode + objects the pointer points to a null-terminated buffer of 16-bit + Py_UNICODE (UTF-16) data. + \item[\samp{z} (string or \code{None}) {[char *]}] Like \samp{s}, but the Python object may also be \code{None}, in which case the C pointer is set to \NULL{}. ! \item[\samp{z\#} (string or \code{None} or any read buffer compatible object) ! {[char *, int]}] This is to \samp{s\#} as \samp{z} is to \samp{s}. ! \item[\samp{u} (Unicode object) {[Py_UNICODE *]}] Convert a Python Unicode object to a C pointer to a null-terminated ! buffer of 16-bit Unicode (UTF-16) data. As with \samp{s}, there is no need to provide storage for the Unicode data buffer; a pointer to the existing Unicode data is stored into the Py_UNICODE pointer variable whose address you pass. ! \item[\samp{u\#} (Unicode object) {[Py_UNICODE *, int]}] This variant on \samp{u} stores into two C variables, the first one a pointer to a Unicode data buffer, the second one its length. + + \item[\samp{es} (string, Unicode object or character buffer compatible + object) {[const char *encoding, char **buffer]}] + This variant on \samp{s} is used for encoding Unicode and objects + convertible to Unicode into a character buffer. It only works for + encoded data without embedded \NULL{} bytes. + + The variant reads one C variable and stores into two C variables, the + first one a pointer to an encoding name string (\var{encoding}), the + second a pointer to a pointer to a character buffer (\var{**buffer}, + the buffer used for storing the encoded data) and the third one a + pointer to an integer (\var{*buffer_length}, the buffer length). + + The encoding name must map to a registered codec. If set to \NULL{}, + the default encoding is used. + + \cfuntion{PyArg_ParseTuple()} will allocate a buffer of the needed + size using \cfunction{PyMem_NEW()}, copy the encoded data into this + buffer and adjust \var{*buffer} to reference the newly allocated + storage. The caller is responsible for calling + \cfunction{PyMem_Free()} to free the allocated buffer after usage. + + \item[\samp{es\#} (string, Unicode object or character buffer compatible + object) {[const char *encoding, char **buffer, int *buffer_length]}] + This variant on \samp{s\#} is used for encoding Unicode and objects + convertible to Unicode into a character buffer. It reads one C + variable and stores into two C variables, the first one a pointer to + an encoding name string (\var{encoding}), the second a pointer to a + pointer to a character buffer (\var{**buffer}, the buffer used for + storing the encoded data) and the third one a pointer to an integer + (\var{*buffer_length}, the buffer length). + + The encoding name must map to a registered codec. If set to \NULL{}, + the default encoding is used. + + There are two modes of operation: + + If \var{*buffer} points a \NULL{} pointer, + \cfuntion{PyArg_ParseTuple()} will allocate a buffer of the needed + size using \cfunction{PyMem_NEW()}, copy the encoded data into this + buffer and adjust \var{*buffer} to reference the newly allocated + storage. The caller is responsible for calling + \cfunction{PyMem_Free()} to free the allocated buffer after usage. + + If \var{*buffer} points to a non-\NULL{} pointer (an already allocated + buffer), \cfuntion{PyArg_ParseTuple()} will use this location as + buffer and interpret \var{*buffer_length} as buffer size. It will then + copy the encoded data into the buffer and 0-terminate it. Buffer + overflow is signalled with an exception. + + In both cases, \var{*buffer_length} is set to the length of the + encoded data without the trailing 0-byte. \item[\samp{b} (integer) {[char]}] From python-dev@python.org Thu Aug 3 21:57:47 2000 From: python-dev@python.org (Jeremy Hylton) Date: Thu, 3 Aug 2000 13:57:47 -0700 Subject: [Python-checkins] CVS: python/dist/src/Lib cgi.py,1.48,1.49 Message-ID: <200008032057.NAA02997@slayer.i.sourceforge.net> Update of /cvsroot/python/python/dist/src/Lib In directory slayer.i.sourceforge.net:/tmp/cvs-serv2916 Modified Files: cgi.py Log Message: Remove very long doc string (it's all in the docs) Modify parse_qsl to interpret 'a=b=c' as key 'a' and value 'b=c' (which matches Perl's CGI.pm) Index: cgi.py =================================================================== RCS file: /cvsroot/python/python/dist/src/Lib/cgi.py,v retrieving revision 1.48 retrieving revision 1.49 diff -C2 -r1.48 -r1.49 *** cgi.py 2000/07/16 12:04:30 1.48 --- cgi.py 2000/08/03 20:57:44 1.49 *************** *** 5,408 **** This module defines a number of utilities for use by CGI scripts written in Python. - - - Introduction - ------------ - - A CGI script is invoked by an HTTP server, usually to process user - input submitted through an HTML
or element. - - Most often, CGI scripts live in the server's special cgi-bin - directory. The HTTP server places all sorts of information about the - request (such as the client's hostname, the requested URL, the query - string, and lots of other goodies) in the script's shell environment, - executes the script, and sends the script's output back to the client. - - The script's input is connected to the client too, and sometimes the - form data is read this way; at other times the form data is passed via - the "query string" part of the URL. This module (cgi.py) is intended - to take care of the different cases and provide a simpler interface to - the Python script. It also provides a number of utilities that help - in debugging scripts, and the latest addition is support for file - uploads from a form (if your browser supports it -- Grail 0.3 and - Netscape 2.0 do). - - The output of a CGI script should consist of two sections, separated - by a blank line. The first section contains a number of headers, - telling the client what kind of data is following. Python code to - generate a minimal header section looks like this: - - print "Content-type: text/html" # HTML is following - print # blank line, end of headers - - The second section is usually HTML, which allows the client software - to display nicely formatted text with header, in-line images, etc. - Here's Python code that prints a simple piece of HTML: - - print "CGI script output" - print "

This is my first CGI script

" - print "Hello, world!" - - It may not be fully legal HTML according to the letter of the - standard, but any browser will understand it. - - - Using the cgi module - -------------------- - - Begin by writing "import cgi". Don't use "from cgi import *" -- the - module defines all sorts of names for its own use or for backward - compatibility that you don't want in your namespace. - - It's best to use the FieldStorage class. The other classes define in this - module are provided mostly for backward compatibility. Instantiate it - exactly once, without arguments. This reads the form contents from - standard input or the environment (depending on the value of various - environment variables set according to the CGI standard). Since it may - consume standard input, it should be instantiated only once. - - The FieldStorage instance can be accessed as if it were a Python - dictionary. For instance, the following code (which assumes that the - Content-type header and blank line have already been printed) checks that - the fields "name" and "addr" are both set to a non-empty string: - - form = cgi.FieldStorage() - form_ok = 0 - if form.has_key("name") and form.has_key("addr"): - if form["name"].value != "" and form["addr"].value != "": - form_ok = 1 - if not form_ok: - print "

Error

" - print "Please fill in the name and addr fields." - return - ...further form processing here... - - Here the fields, accessed through form[key], are themselves instances - of FieldStorage (or MiniFieldStorage, depending on the form encoding). - - If the submitted form data contains more than one field with the same - name, the object retrieved by form[key] is not a (Mini)FieldStorage - instance but a list of such instances. If you are expecting this - possibility (i.e., when your HTML form contains multiple fields with - the same name), use the type() function to determine whether you have - a single instance or a list of instances. For example, here's code - that concatenates any number of username fields, separated by commas: - - username = form["username"] - if type(username) is type([]): - # Multiple username fields specified - usernames = "" - for item in username: - if usernames: - # Next item -- insert comma - usernames = usernames + "," + item.value - else: - # First item -- don't insert comma - usernames = item.value - else: - # Single username field specified - usernames = username.value - - If a field represents an uploaded file, the value attribute reads the - entire file in memory as a string. This may not be what you want. You can - test for an uploaded file by testing either the filename attribute or the - file attribute. You can then read the data at leisure from the file - attribute: - - fileitem = form["userfile"] - if fileitem.file: - # It's an uploaded file; count lines - linecount = 0 - while 1: - line = fileitem.file.readline() - if not line: break - linecount = linecount + 1 - - The file upload draft standard entertains the possibility of uploading - multiple files from one field (using a recursive multipart/* - encoding). When this occurs, the item will be a dictionary-like - FieldStorage item. This can be determined by testing its type - attribute, which should have the value "multipart/form-data" (or - perhaps another string beginning with "multipart/"). It this case, it - can be iterated over recursively just like the top-level form object. - - When a form is submitted in the "old" format (as the query string or as a - single data part of type application/x-www-form-urlencoded), the items - will actually be instances of the class MiniFieldStorage. In this case, - the list, file and filename attributes are always None. - - - Old classes - ----------- - - These classes, present in earlier versions of the cgi module, are still - supported for backward compatibility. New applications should use the - FieldStorage class. - - SvFormContentDict: single value form content as dictionary; assumes each - field name occurs in the form only once. - - FormContentDict: multiple value form content as dictionary (the form - items are lists of values). Useful if your form contains multiple - fields with the same name. - - Other classes (FormContent, InterpFormContentDict) are present for - backwards compatibility with really old applications only. If you still - use these and would be inconvenienced when they disappeared from a next - version of this module, drop me a note. - - - Functions - --------- - - These are useful if you want more control, or if you want to employ - some of the algorithms implemented in this module in other - circumstances. - - parse(fp, [environ, [keep_blank_values, [strict_parsing]]]): parse a - form into a Python dictionary. - - parse_qs(qs, [keep_blank_values, [strict_parsing]]): parse a query - string (data of type application/x-www-form-urlencoded). Data are - returned as a dictionary. The dictionary keys are the unique query - variable names and the values are lists of vales for each name. - - parse_qsl(qs, [keep_blank_values, [strict_parsing]]): parse a query - string (data of type application/x-www-form-urlencoded). Data are - returned as a list of (name, value) pairs. - - parse_multipart(fp, pdict): parse input of type multipart/form-data (for - file uploads). - - parse_header(string): parse a header like Content-type into a main - value and a dictionary of parameters. - - test(): complete test program. - - print_environ(): format the shell environment in HTML. - - print_form(form): format a form in HTML. - - print_environ_usage(): print a list of useful environment variables in - HTML. - - escape(): convert the characters "&", "<" and ">" to HTML-safe - sequences. Use this if you need to display text that might contain - such characters in HTML. To translate URLs for inclusion in the HREF - attribute of an tag, use urllib.quote(). - - log(fmt, ...): write a line to a log file; see docs for initlog(). - - - Caring about security - --------------------- - - There's one important rule: if you invoke an external program (e.g. - via the os.system() or os.popen() functions), make very sure you don't - pass arbitrary strings received from the client to the shell. This is - a well-known security hole whereby clever hackers anywhere on the web - can exploit a gullible CGI script to invoke arbitrary shell commands. - Even parts of the URL or field names cannot be trusted, since the - request doesn't have to come from your form! - - To be on the safe side, if you must pass a string gotten from a form - to a shell command, you should make sure the string contains only - alphanumeric characters, dashes, underscores, and periods. - - - Installing your CGI script on a Unix system - ------------------------------------------- - - Read the documentation for your HTTP server and check with your local - system administrator to find the directory where CGI scripts should be - installed; usually this is in a directory cgi-bin in the server tree. - - Make sure that your script is readable and executable by "others"; the - Unix file mode should be 755 (use "chmod 755 filename"). Make sure - that the first line of the script contains #! starting in column 1 - followed by the pathname of the Python interpreter, for instance: - - #! /usr/local/bin/python - - Make sure the Python interpreter exists and is executable by "others". - - Note that it's probably not a good idea to use #! /usr/bin/env python - here, since the Python interpreter may not be on the default path - given to CGI scripts!!! - - Make sure that any files your script needs to read or write are - readable or writable, respectively, by "others" -- their mode should - be 644 for readable and 666 for writable. This is because, for - security reasons, the HTTP server executes your script as user - "nobody", without any special privileges. It can only read (write, - execute) files that everybody can read (write, execute). The current - directory at execution time is also different (it is usually the - server's cgi-bin directory) and the set of environment variables is - also different from what you get at login. in particular, don't count - on the shell's search path for executables ($PATH) or the Python - module search path ($PYTHONPATH) to be set to anything interesting. - - If you need to load modules from a directory which is not on Python's - default module search path, you can change the path in your script, - before importing other modules, e.g.: - - import sys - sys.path.insert(0, "/usr/home/joe/lib/python") - sys.path.insert(0, "/usr/local/lib/python") - - This way, the directory inserted last will be searched first! - - Instructions for non-Unix systems will vary; check your HTTP server's - documentation (it will usually have a section on CGI scripts). - - - Testing your CGI script - ----------------------- - - Unfortunately, a CGI script will generally not run when you try it - from the command line, and a script that works perfectly from the - command line may fail mysteriously when run from the server. There's - one reason why you should still test your script from the command - line: if it contains a syntax error, the python interpreter won't - execute it at all, and the HTTP server will most likely send a cryptic - error to the client. - - Assuming your script has no syntax errors, yet it does not work, you - have no choice but to read the next section: - - - Debugging CGI scripts - --------------------- - - First of all, check for trivial installation errors -- reading the - section above on installing your CGI script carefully can save you a - lot of time. If you wonder whether you have understood the - installation procedure correctly, try installing a copy of this module - file (cgi.py) as a CGI script. When invoked as a script, the file - will dump its environment and the contents of the form in HTML form. - Give it the right mode etc, and send it a request. If it's installed - in the standard cgi-bin directory, it should be possible to send it a - request by entering a URL into your browser of the form: - - http://yourhostname/cgi-bin/cgi.py?name=Joe+Blow&addr=At+Home - - If this gives an error of type 404, the server cannot find the script - -- perhaps you need to install it in a different directory. If it - gives another error (e.g. 500), there's an installation problem that - you should fix before trying to go any further. If you get a nicely - formatted listing of the environment and form content (in this - example, the fields should be listed as "addr" with value "At Home" - and "name" with value "Joe Blow"), the cgi.py script has been - installed correctly. If you follow the same procedure for your own - script, you should now be able to debug it. - - The next step could be to call the cgi module's test() function from - your script: replace its main code with the single statement - - cgi.test() - - This should produce the same results as those gotten from installing - the cgi.py file itself. - - When an ordinary Python script raises an unhandled exception (e.g., - because of a typo in a module name, a file that can't be opened, - etc.), the Python interpreter prints a nice traceback and exits. - While the Python interpreter will still do this when your CGI script - raises an exception, most likely the traceback will end up in one of - the HTTP server's log file, or be discarded altogether. - - Fortunately, once you have managed to get your script to execute - *some* code, it is easy to catch exceptions and cause a traceback to - be printed. The test() function below in this module is an example. - Here are the rules: - - 1. Import the traceback module (before entering the - try-except!) - - 2. Make sure you finish printing the headers and the blank - line early - - 3. Assign sys.stderr to sys.stdout - - 3. Wrap all remaining code in a try-except statement - - 4. In the except clause, call traceback.print_exc() - - For example: - - import sys - import traceback - print "Content-type: text/html" - print - sys.stderr = sys.stdout - try: - ...your code here... - except: - print "\n\n
"
-                 traceback.print_exc()
- 
- Notes: The assignment to sys.stderr is needed because the traceback
- prints to sys.stderr.  The print "\n\n
" statement is necessary to
- disable the word wrapping in HTML.
- 
- If you suspect that there may be a problem in importing the traceback
- module, you can use an even more robust approach (which only uses
- built-in modules):
- 
-         import sys
-         sys.stderr = sys.stdout
-         print "Content-type: text/plain"
-         print
-         ...your code here...
- 
- This relies on the Python interpreter to print the traceback.  The
- content type of the output is set to plain text, which disables all
- HTML processing.  If your script works, the raw HTML will be displayed
- by your client.  If it raises an exception, most likely after the
- first two lines have been printed, a traceback will be displayed.
- Because no HTML interpretation is going on, the traceback will
- readable.
- 
- When all else fails, you may want to insert calls to log() to your
- program or even to a copy of the cgi.py file.  Note that this requires
- you to set cgi.logfile to the name of a world-writable file before the
- first call to log() is made!
- 
- Good luck!
- 
- 
- Common problems and solutions
- -----------------------------
- 
- - Most HTTP servers buffer the output from CGI scripts until the
- script is completed.  This means that it is not possible to display a
- progress report on the client's display while the script is running.
- 
- - Check the installation instructions above.
- 
- - Check the HTTP server's log files.  ("tail -f logfile" in a separate
- window may be useful!)
- 
- - Always check a script for syntax errors first, by doing something
- like "python script.py".
- 
- - When using any of the debugging techniques, don't forget to add
- "import sys" to the top of the script.
- 
- - When invoking external programs, make sure they can be found.
- Usually, this means using absolute path names -- $PATH is usually not
- set to a very useful value in a CGI script.
- 
- - When reading or writing external files, make sure they can be read
- or written by every user on the system.
- 
- - Don't try to give a CGI script a set-uid mode.  This doesn't work on
- most systems, and is a security liability as well.
- 
  """
  
! # XXX The module is getting pretty heavy with all those docstrings.
! # Perhaps there should be a slimmed version that doesn't contain all those 
! # backwards compatible and debugging classes and functions?
  
  # History
--- 5,12 ----
  This module defines a number of utilities for use by CGI scripts
  written in Python.
  """
  
! # XXX Perhaps there should be a slimmed version that doesn't contain
! # all those backwards compatible and debugging classes and functions?
  
  # History
***************
*** 593,597 ****
      r=[]
      for name_value in name_value_pairs:
!         nv = string.splitfields(name_value, '=')
          if len(nv) != 2:
              if strict_parsing:
--- 197,201 ----
      r=[]
      for name_value in name_value_pairs:
!         nv = string.splitfields(name_value, '=', 1)
          if len(nv) != 2:
              if strict_parsing:



From python-dev@python.org  Thu Aug  3 22:18:20 2000
From: python-dev@python.org (Fred L. Drake)
Date: Thu, 3 Aug 2000 14:18:20 -0700
Subject: [Python-checkins] CVS: python/dist/src/Doc Makefile.deps,1.38,1.39
Message-ID: <200008032118.OAA13507@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Doc
In directory slayer.i.sourceforge.net:/tmp/cvs-serv13403

Modified Files:
	Makefile.deps 
Log Message:

Break the "Python Services" chapter into two: "Python Runtime Services"
(still at the start of the manual), and "Python Language Services" (late
in the manual).  Moved "Restricted Execution" to just before "Python
Language Services."


Index: Makefile.deps
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/Makefile.deps,v
retrieving revision 1.38
retrieving revision 1.39
diff -C2 -r1.38 -r1.39
*** Makefile.deps	2000/07/12 04:22:53	1.38
--- Makefile.deps	2000/08/03 21:18:16	1.39
***************
*** 192,195 ****
--- 192,196 ----
  	../lib/netdata.tex \
  	../lib/markup.tex \
+ 	../lib/language.tex \
  	../lib/libpycompile.tex \
  	../lib/libcompileall.tex \



From python-dev@python.org  Thu Aug  3 22:18:21 2000
From: python-dev@python.org (Fred L. Drake)
Date: Thu, 3 Aug 2000 14:18:21 -0700
Subject: [Python-checkins] CVS: python/dist/src/Doc/lib language.tex,NONE,1.1 lib.tex,1.158,1.159 libpython.tex,1.13,1.14
Message-ID: <200008032118.OAA13514@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Doc/lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv13403/lib

Modified Files:
	lib.tex libpython.tex 
Added Files:
	language.tex 
Log Message:

Break the "Python Services" chapter into two: "Python Runtime Services"
(still at the start of the manual), and "Python Language Services" (late
in the manual).  Moved "Restricted Execution" to just before "Python
Language Services."


--- NEW FILE ---
\chapter{Python Language Services
         \label{language}}

Python provides a number of modules to assist in working with the
Python language.  These module support tokenizing, parsing, syntax
analysis, bytecode disassembly, and various other facilities.

These modules include:

\localmoduletable

Index: lib.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/lib.tex,v
retrieving revision 1.158
retrieving revision 1.159
diff -C2 -r1.158 -r1.159
*** lib.tex	2000/07/12 04:22:53	1.158
--- lib.tex	2000/08/03 21:18:18	1.159
***************
*** 72,76 ****
  \input{libfuncs}
  
! \input{libpython}		% Python Services
  \input{libsys}
  \input{libgc}
--- 72,76 ----
  \input{libfuncs}
  
! \input{libpython}		% Python Runtime Services
  \input{libsys}
  \input{libgc}
***************
*** 88,105 ****
  \input{libimp}
  %\input{libni}
- \input{libparser}
- \input{libsymbol}
- \input{libtoken}
- \input{libkeyword}
- \input{libtokenize}
- \input{libtabnanny}
- \input{libpyclbr}
  \input{libcode}
  \input{libcodeop}
  \input{libpprint}
  \input{librepr}
- \input{libpycompile}		% really py_compile
- \input{libcompileall}
- \input{libdis}
  \input{libnew}
  \input{libsite}
--- 88,95 ----
***************
*** 244,251 ****
  \input{libpyexpat}
  
- \input{librestricted}           % Restricted Execution
- \input{librexec}
- \input{libbastion}
- 
  \input{libmm}			% Multimedia Services
  \input{libaudioop}
--- 234,237 ----
***************
*** 265,268 ****
--- 251,270 ----
  \input{libmpz}
  \input{librotor}
+ 
+ \input{librestricted}           % Restricted Execution
+ \input{librexec}
+ \input{libbastion}
+ 
+ \input{language}		% Python Language Services
+ \input{libparser}
+ \input{libsymbol}
+ \input{libtoken}
+ \input{libkeyword}
+ \input{libtokenize}
+ \input{libtabnanny}
+ \input{libpyclbr}
+ \input{libpycompile}		% really py_compile
+ \input{libcompileall}
+ \input{libdis}
  
  %\input{libamoeba}		% AMOEBA ONLY

Index: libpython.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libpython.tex,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -r1.13 -r1.14
*** libpython.tex	1998/07/23 17:58:39	1.13
--- libpython.tex	2000/08/03 21:18:18	1.14
***************
*** 1,4 ****
! \chapter{Python Services}
! \label{python}
  
  The modules described in this chapter provide a wide range of services
--- 1,4 ----
! \chapter{Python Runtime Services
!          \label{python}}
  
  The modules described in this chapter provide a wide range of services



From python-dev@python.org  Thu Aug  3 22:27:08 2000
From: python-dev@python.org (Guido van Rossum)
Date: Thu, 3 Aug 2000 14:27:08 -0700
Subject: [Python-checkins] CVS: python/dist/src LICENSE,1.1.2.1,1.1.2.2
Message-ID: <200008032127.OAA14227@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src
In directory slayer.i.sourceforge.net:/tmp/cvs-serv14210

Modified Files:
      Tag: cnri-16-start
	LICENSE 
Log Message:
Correct a few typos.


Index: LICENSE
===================================================================
RCS file: /cvsroot/python/python/dist/src/LICENSE,v
retrieving revision 1.1.2.1
retrieving revision 1.1.2.2
diff -C2 -r1.1.2.1 -r1.1.2.2
*** LICENSE	2000/08/02 02:59:02	1.1.2.1
--- LICENSE	2000/08/03 21:27:05	1.1.2.2
***************
*** 39,43 ****
  
  2. Subject to the terms and conditions of this License Agreement, CNRI
! hereby grants Licensee a nonexclusive, royalty-free, world-wide
  license to reproduce, analyze, test, perform and/or display publicly,
  prepare derivative works, distribute, and otherwise use Python 1.6b1
--- 39,43 ----
  
  2. Subject to the terms and conditions of this License Agreement, CNRI
! hereby grants Licensee a non-exclusive, royalty-free, world-wide
  license to reproduce, analyze, test, perform and/or display publicly,
  prepare derivative works, distribute, and otherwise use Python 1.6b1
***************
*** 55,60 ****
  
  3. In the event Licensee prepares a derivative work that is based on
! or incorporates Python 1.6b1or any part thereof, and wants to make the
! derivative work available to the public as provided herein, then
  Licensee hereby agrees to indicate in any such work the nature of the
  modifications made to Python 1.6b1.
--- 55,60 ----
  
  3. In the event Licensee prepares a derivative work that is based on
! or incorporates Python 1.6b1 or any part thereof, and wants to make
! the derivative work available to the public as provided herein, then
  Licensee hereby agrees to indicate in any such work the nature of the
  modifications made to Python 1.6b1.



From python-dev@python.org  Thu Aug  3 22:28:25 2000
From: python-dev@python.org (Guido van Rossum)
Date: Thu, 3 Aug 2000 14:28:25 -0700
Subject: [Python-checkins] CVS: python/dist/src LICENSE,1.1.2.2,1.1.2.3
Message-ID: <200008032128.OAA14410@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src
In directory slayer.i.sourceforge.net:/tmp/cvs-serv14402

Modified Files:
      Tag: cnri-16-start
	LICENSE 
Log Message:
Set release date to August 4 (tomorrow!) per CNRI's request.  Good omen!


Index: LICENSE
===================================================================
RCS file: /cvsroot/python/python/dist/src/LICENSE,v
retrieving revision 1.1.2.2
retrieving revision 1.1.2.3
diff -C2 -r1.1.2.2 -r1.1.2.3
*** LICENSE	2000/08/03 21:27:05	1.1.2.2
--- LICENSE	2000/08/03 21:28:23	1.1.2.3
***************
*** 35,39 ****
  ("Licensee") accessing and otherwise using Python 1.6, beta 1 software
  in source or binary form and its associated documentation, as released
! at the www.python.org Internet site on August 5, 2000 ("Python
  1.6b1").
  
--- 35,39 ----
  ("Licensee") accessing and otherwise using Python 1.6, beta 1 software
  in source or binary form and its associated documentation, as released
! at the www.python.org Internet site on August 4, 2000 ("Python
  1.6b1").
  



From python-dev@python.org  Thu Aug  3 23:11:46 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Thu, 3 Aug 2000 15:11:46 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test/output test_cgi,NONE,1.1
Message-ID: <200008032211.PAA25488@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test/output
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25192/output

Added Files:
	test_cgi 
Log Message:
test the non-multipart sections of the cgi module


--- NEW FILE ---
test_cgi
''
'&'
'&&'
'='
'=&='
'=a'
'&=a'
'=a&'
'=&a'
'b=a'
'b+=a'
'a=b=a'
'a=+b=a'
'&b=a'
'b&=a'
'a=a+b&b=b+c'
'a=a+b&a=b+a'
'x=1&y=2.0&z=2-3.%2b0'
'Hbc5161168c542333633315dee1182227:key_store_seqid=400006&cuyer=r&view=bustomer&order_id=0bb2e248638833d48cb7fed300000f1b&expire=964546263&lobale=en-US&kid=130003.300038&ss=env'
'group_id=5470&set=custom&_assigned_to=31392&_status=1&_category=100&SUBMIT=Browse'
Testing log
Testing initlog 1
Testing log 2



From python-dev@python.org  Thu Aug  3 23:11:46 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Thu, 3 Aug 2000 15:11:46 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_cgi.py,NONE,1.1
Message-ID: <200008032211.PAA25480@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25192

Added Files:
	test_cgi.py 
Log Message:
test the non-multipart sections of the cgi module


--- NEW FILE ---
import cgi
import os
import sys

class HackedSysModule:
    # The regression test will have real values in sys.argv, which
    # will completely confuse the test of the cgi module 
    argv = []
    stdin = sys.stdin

cgi.sys = HackedSysModule()

try:
    from cStringIO import StringIO
except ImportError:
    from StringIO import StringIO

class ComparableException:
    def __init__(self, err):
        self.err = err

    def __str__(self):
        return str(self.err)

    def __cmp__(self, anExc):
        if not isinstance(anExc, Exception):
            return -1
        x = cmp(self.err.__class__, anExc.__class__)
        if x != 0:
            return x
        return cmp(self.err.args, anExc.args)

    def __getattr__(self, attr):
        return getattr(self, self.err)

def do_test(buf, method):
    env = {}
    if method == "GET":
        fp = None
        env['REQUEST_METHOD'] = 'GET'
        env['QUERY_STRING'] = buf
    elif method == "POST":
        fp = StringIO(buf)
        env['REQUEST_METHOD'] = 'POST'
        env['CONTENT_TYPE'] = 'application/x-www-form-urlencoded'
        env['CONTENT_LENGTH'] = str(len(buf))
    else:
        raise ValueError, "unknown method: %s" % method
    try:
        return cgi.parse(fp, env, strict_parsing=1)
    except StandardError, err:
        return ComparableException(err)

# A list of test cases.  Each test case is a a two-tuple that contains
# a string with the query and a dictionary with the expected result.
    
parse_test_cases = [
    ("", ValueError("bad query field: ''")),
    ("&", ValueError("bad query field: ''")),
    ("&&", ValueError("bad query field: ''")),
    # Should the next few really be valid?
    ("=", {}),
    ("=&=", {}),
    # This rest seem to make sense
    ("=a", {'': ['a']}),
    ("&=a", ValueError("bad query field: ''")),
    ("=a&", ValueError("bad query field: ''")),
    ("=&a", ValueError("bad query field: 'a'")),
    ("b=a", {'b': ['a']}),
    ("b+=a", {'b ': ['a']}),
    ("a=b=a", {'a': ['b=a']}),
    ("a=+b=a", {'a': [' b=a']}),
    ("&b=a", ValueError("bad query field: ''")),
    ("b&=a", ValueError("bad query field: 'b'")),
    ("a=a+b&b=b+c", {'a': ['a b'], 'b': ['b c']}),
    ("a=a+b&a=b+a", {'a': ['a b', 'b a']}),
    ("x=1&y=2.0&z=2-3.%2b0", {'x': ['1'], 'y': ['2.0'], 'z': ['2-3.+0']}),
    ("Hbc5161168c542333633315dee1182227:key_store_seqid=400006&cuyer=r&view=bustomer&order_id=0bb2e248638833d48cb7fed300000f1b&expire=964546263&lobale=en-US&kid=130003.300038&ss=env",
     {'Hbc5161168c542333633315dee1182227:key_store_seqid': ['400006'],
      'cuyer': ['r'],
      'expire': ['964546263'],
      'kid': ['130003.300038'],
      'lobale': ['en-US'],
      'order_id': ['0bb2e248638833d48cb7fed300000f1b'],
      'ss': ['env'],
      'view': ['bustomer'],
      }),
    
    ("group_id=5470&set=custom&_assigned_to=31392&_status=1&_category=100&SUBMIT=Browse",
     {'SUBMIT': ['Browse'],
      '_assigned_to': ['31392'],
      '_category': ['100'],
      '_status': ['1'],
      'group_id': ['5470'],
      'set': ['custom'],
      })
    ]

def norm(list):
    if type(list) == type([]):
        list.sort()
    return list

def first_elts(list):
    return map(lambda x:x[0], list)

def first_second_elts(list):
    return map(lambda p:(p[0], p[1][0]), list)

def main():
    for orig, expect in parse_test_cases:
        # Test basic parsing
        print repr(orig)
        d = do_test(orig, "GET")
        assert d == expect, "Error parsing %s" % repr(orig)
        d = do_test(orig, "POST")
        assert d == expect, "Error parsing %s" % repr(orig)

        d = {'QUERY_STRING': orig}
        fcd = cgi.FormContentDict(d)
        sd = cgi.SvFormContentDict(d)
        if type(expect) == type({}):
            # test dict interface
            assert len(expect) == len(fcd)
            assert norm(expect.keys()) == norm(fcd.keys())
            assert norm(expect.values()) == norm(fcd.values())
            assert norm(expect.items()) == norm(fcd.items())
            for key in expect.keys():
                expect_val = expect[key]
                assert fcd.has_key(key)
                assert norm(fcd[key]) == norm(expect[key])
                if len(expect_val) > 1:
                    single_value = 0
                else:
                    single_value = 1
                try:
                    val = sd[key]
                except IndexError:
                    assert not single_value
                else:
                    assert single_value
                    assert val == expect_val[0]
                assert norm(sd.getlist(key)) == norm(expect_val)
                if single_value:
                    assert norm(sd.values()) == \
                           first_elts(norm(expect.values()))
                    assert norm(sd.items()) == \
                           first_second_elts(norm(expect.items()))

    # Test the weird FormContentDict classes
    env = {'QUERY_STRING': "x=1&y=2.0&z=2-3.%2b0&1=1abc"}
    expect = {'x': 1, 'y': 2.0, 'z': '2-3.+0', '1': '1abc'}
    d = cgi.InterpFormContentDict(env)
    for k, v in expect.items():
        assert d[k] == v
    for k, v in d.items():
        assert expect[k] == v
    assert norm(expect.values()) == norm(d.values())

    print "Testing log"
    cgi.initlog()
    cgi.log("Testing")
    cgi.logfp = sys.stdout
    cgi.initlog("%s", "Testing initlog 1")
    cgi.log("%s", "Testing log 2")
    if os.path.exists("/dev/null"):
        cgi.logfp = None
        cgi.logfile = "/dev/null"
        cgi.initlog("%s", "Testing log 3")
        cgi.log("Testing log 4")

main()



From python-dev@python.org  Fri Aug  4 02:28:42 2000
From: python-dev@python.org (Greg Ward)
Date: Thu, 3 Aug 2000 18:28:42 -0700
Subject: [Python-checkins] CVS: distutils/distutils ccompiler.py,1.31,1.32 unixccompiler.py,1.29,1.30
Message-ID: <200008040128.SAA01116@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils
In directory slayer.i.sourceforge.net:/tmp/cvs-serv1090

Modified Files:
	ccompiler.py unixccompiler.py 
Log Message:
Added 'debug' flag to 'find_library_file()'.

Index: ccompiler.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/ccompiler.py,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -r1.31 -r1.32
*** ccompiler.py	2000/08/02 01:38:20	1.31
--- ccompiler.py	2000/08/04 01:28:39	1.32
***************
*** 683,690 ****
          raise NotImplementedError
  
!     def find_library_file (self, dirs, lib):
          """Search the specified list of directories for a static or shared
!         library file 'lib' and return the full path to that file. Return
!         None if it wasn't found in any of the specified directories.
          """
          raise NotImplementedError
--- 683,692 ----
          raise NotImplementedError
  
!     def find_library_file (self, dirs, lib, debug=0):
          """Search the specified list of directories for a static or shared
!         library file 'lib' and return the full path to that file.  If
!         'debug' true, look for a debugging version (if that makes sense on
!         the current platform).  Return None if 'lib' wasn't found in any of
!         the specified directories.
          """
          raise NotImplementedError

Index: unixccompiler.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/unixccompiler.py,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -r1.29 -r1.30
*** unixccompiler.py	2000/07/27 01:23:19	1.29
--- unixccompiler.py	2000/08/04 01:28:39	1.30
***************
*** 318,322 ****
  
  
!     def find_library_file (self, dirs, lib):
  
          for dir in dirs:
--- 318,322 ----
  
  
!     def find_library_file (self, dirs, lib, debug=0):
  
          for dir in dirs:



From python-dev@python.org  Fri Aug  4 02:29:29 2000
From: python-dev@python.org (Greg Ward)
Date: Thu, 3 Aug 2000 18:29:29 -0700
Subject: [Python-checkins] CVS: distutils/distutils msvccompiler.py,1.37,1.38
Message-ID: <200008040129.SAA01186@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils
In directory slayer.i.sourceforge.net:/tmp/cvs-serv1176

Modified Files:
	msvccompiler.py 
Log Message:
Added 'debug' flag to 'find_library_file()', and changed code to handle it.

Index: msvccompiler.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/msvccompiler.py,v
retrieving revision 1.37
retrieving revision 1.38
diff -C2 -r1.37 -r1.38
*** msvccompiler.py	2000/08/02 00:01:56	1.37
--- msvccompiler.py	2000/08/04 01:29:27	1.38
***************
*** 475,485 ****
  
  
!     def find_library_file (self, dirs, lib):
! 
          for dir in dirs:
!             libfile = os.path.join (dir, self.library_filename (lib))
!             if os.path.exists (libfile):
!                 return libfile
! 
          else:
              # Oops, didn't find it in *any* of 'dirs'
--- 475,490 ----
  
  
!     def find_library_file (self, dirs, lib, debug=0):
!         # Prefer a debugging library if found (and requested), but deal
!         # with it if we don't have one.
!         if debug:
!             try_names = [lib + "_d", lib]
!         else:
!             try_names = [lib]
          for dir in dirs:
!             for name in try_names:
!                 libfile = os.path.join(dir, self.library_filename (name))
!                 if os.path.exists(libfile):
!                     return libfile
          else:
              # Oops, didn't find it in *any* of 'dirs'



From python-dev@python.org  Fri Aug  4 02:30:06 2000
From: python-dev@python.org (Greg Ward)
Date: Thu, 3 Aug 2000 18:30:06 -0700
Subject: [Python-checkins] CVS: distutils/distutils bcppcompiler.py,1.2,1.3
Message-ID: <200008040130.SAA01330@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils
In directory slayer.i.sourceforge.net:/tmp/cvs-serv1235

Modified Files:
	bcppcompiler.py 
Log Message:
Rewrote 'find_library_file()' much more cleanly (and consistently with
MSVCCompiler's version, to aid in factoring common code out of the two 
classes when the time comes).

Index: bcppcompiler.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/bcppcompiler.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** bcppcompiler.py	2000/08/02 01:03:23	1.2
--- bcppcompiler.py	2000/08/04 01:30:03	1.3
***************
*** 358,383 ****
  
      def find_library_file (self, dirs, lib, debug=0):
!         # find library file
          # bcpp_xxx.lib is better than xxx.lib
          # and xxx_d.lib is better than xxx.lib if debug is set
          for dir in dirs:
!             if debug:
!                 libfile = os.path.join (
!                     dir, self.library_filename ("bcpp_" + lib + "_d"))
!                 if os.path.exists (libfile):
!                     return libfile
!             libfile = os.path.join (
!                 dir, self.library_filename ("bcpp_" + lib))
!             if os.path.exists (libfile):
!                 return libfile
!             if debug:
!                 libfile = os.path.join (
!                     dir, self.library_filename(lib + '_d'))
!                 if os.path.exists (libfile):
                      return libfile
-             libfile = os.path.join (dir, self.library_filename (lib))
-             if os.path.exists (libfile):
-                 return libfile
- 
          else:
              # Oops, didn't find it in *any* of 'dirs'
--- 358,381 ----
  
      def find_library_file (self, dirs, lib, debug=0):
!         # List of effective library names to try, in order of preference:
          # bcpp_xxx.lib is better than xxx.lib
          # and xxx_d.lib is better than xxx.lib if debug is set
+         #
+         # The "bcpp_" prefix is to handle a Python installation for people
+         # with multiple compilers (primarily Distutils hackers, I suspect
+         # ;-).  The idea is they'd have one static library for each
+         # compiler they care about, since (almost?) every Windows compiler
+         # seems to have a different format for static libraries.
+         if debug:
+             dlib = (lib + "_d")
+             try_names = ("bcpp_" + dlib, "bcpp_" + lib, dlib, lib)
+         else:
+             try_names = ("bcpp_" + lib, lib)
+ 
          for dir in dirs:
!             for name in try_names:
!                 libfile = os.path.join(dir, self.library_filename(name))
!                 if os.path.exists(libfile):
                      return libfile
          else:
              # Oops, didn't find it in *any* of 'dirs'



From python-dev@python.org  Fri Aug  4 02:31:15 2000
From: python-dev@python.org (Greg Ward)
Date: Thu, 3 Aug 2000 18:31:15 -0700
Subject: [Python-checkins] CVS: distutils/distutils ccompiler.py,1.32,1.33
Message-ID: <200008040131.SAA01445@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils
In directory slayer.i.sourceforge.net:/tmp/cvs-serv1428

Modified Files:
	ccompiler.py 
Log Message:
Added 'debug_print()'.

Index: ccompiler.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/ccompiler.py,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -r1.32 -r1.33
*** ccompiler.py	2000/08/04 01:28:39	1.32
--- ccompiler.py	2000/08/04 01:31:13	1.33
***************
*** 784,787 ****
--- 784,792 ----
              print msg
  
+     def debug_print (self, msg):
+         from distutils.core import DEBUG
+         if DEBUG:
+             print msg
+ 
      def warn (self, msg):
          sys.stderr.write ("warning: %s\n" % msg)



From python-dev@python.org  Fri Aug  4 03:34:43 2000
From: python-dev@python.org (Fred L. Drake)
Date: Thu, 3 Aug 2000 19:34:43 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects rangeobject.c,2.17,2.18
Message-ID: <200008040234.TAA13057@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv13048

Modified Files:
	rangeobject.c 
Log Message:

snprintf() is not portable, so continue to use sprintf() until a portable
snprintf() is available.


Index: rangeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/rangeobject.c,v
retrieving revision 2.17
retrieving revision 2.18
diff -C2 -r2.17 -r2.18
*** rangeobject.c	2000/08/03 17:43:02	2.17
--- rangeobject.c	2000/08/04 02:34:41	2.18
***************
*** 66,71 ****
  
  	if (r->start == 0 && r->step == 1) {
! 		snprintf(buf1, sizeof(buf1), "xrange(%ld)",
! 			 r->start + r->len * r->step);
  	}
  	else {
--- 66,70 ----
  
  	if (r->start == 0 && r->step == 1) {
! 		sprintf(buf1, "xrange(%ld)", r->start + r->len * r->step);
  	}
  	else {
***************
*** 73,84 ****
  		if (r->step == 1)
  			fmt = "xrange(%ld, %ld)";
! 		snprintf(buf1, sizeof(buf1), fmt,
! 			 r->start,
! 			 r->start + r->len * r->step,
! 			 r->step);
  	}
  	if (r->reps != 1) {
! 		snprintf(buf2, sizeof(buf2),
! 			 "(%s * %d)", buf1, r->reps);
  	}
  	return PyString_FromString(r->reps == 1 ? buf1 : buf2);
--- 72,82 ----
  		if (r->step == 1)
  			fmt = "xrange(%ld, %ld)";
! 		sprintf(buf1, fmt,
! 			r->start,
! 			r->start + r->len * r->step,
! 			r->step);
  	}
  	if (r->reps != 1) {
! 		sprintf(buf2, "(%s * %d)", buf1, r->reps);
  	}
  	return PyString_FromString(r->reps == 1 ? buf1 : buf2);



From python-dev@python.org  Fri Aug  4 04:05:44 2000
From: python-dev@python.org (Tim Peters)
Date: Thu, 3 Aug 2000 20:05:44 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects rangeobject.c,2.18,2.19
Message-ID: <200008040305.UAA18501@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv17496/python/dist/src/objects

Modified Files:
	rangeobject.c 
Log Message:
Boost buffer sizes in the absence of snprintf on Windows.
Ensure that # of args to sprintf always matches # of format specifiers.


Index: rangeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/rangeobject.c,v
retrieving revision 2.18
retrieving revision 2.19
diff -C2 -r2.18 -r2.19
*** rangeobject.c	2000/08/04 02:34:41	2.18
--- rangeobject.c	2000/08/04 03:05:40	2.19
***************
*** 62,83 ****
  range_repr(rangeobject *r)
  {
! 	char buf1[80];
! 	char buf2[80];
  
! 	if (r->start == 0 && r->step == 1) {
  		sprintf(buf1, "xrange(%ld)", r->start + r->len * r->step);
! 	}
! 	else {
! 		char *fmt = "xrange(%ld, %ld, %ld)";
! 		if (r->step == 1)
! 			fmt = "xrange(%ld, %ld)";
! 		sprintf(buf1, fmt,
  			r->start,
  			r->start + r->len * r->step,
  			r->step);
! 	}
! 	if (r->reps != 1) {
  		sprintf(buf2, "(%s * %d)", buf1, r->reps);
! 	}
  	return PyString_FromString(r->reps == 1 ? buf1 : buf2);
  }
--- 62,88 ----
  range_repr(rangeobject *r)
  {
! 	/* buffers must be big enough to hold 3 longs + an int +
! 	 * a bit of "(xrange(...) * ...)" text.
! 	 */
! 	char buf1[250];
! 	char buf2[250];
  
! 	if (r->start == 0 && r->step == 1)
  		sprintf(buf1, "xrange(%ld)", r->start + r->len * r->step);
! 
! 	else if (r->step == 1)
! 		sprintf(buf1, "xrange(%ld, %ld)",
! 			r->start,
! 			r->start + r->len * r->step);
! 
! 	else
! 		sprintf(buf1, "xrange(%ld, %ld, %ld)",
  			r->start,
  			r->start + r->len * r->step,
  			r->step);
! 
! 	if (r->reps != 1)
  		sprintf(buf2, "(%s * %d)", buf1, r->reps);
! 
  	return PyString_FromString(r->reps == 1 ? buf1 : buf2);
  }
***************
*** 194,201 ****
  {
  	long num = PyInt_AsLong(obj);
! 	
  	if (num < 0 && PyErr_Occurred())
  		return -1;
! 	
  	if (num < r->start || (num - r->start) % r->step)
  		return 0;
--- 199,206 ----
  {
  	long num = PyInt_AsLong(obj);
! 
  	if (num < 0 && PyErr_Occurred())
  		return -1;
! 
  	if (num < r->start || (num - r->start) % r->step)
  		return 0;



From python-dev@python.org  Fri Aug  4 04:14:57 2000
From: python-dev@python.org (Fred L. Drake)
Date: Thu, 3 Aug 2000 20:14:57 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/xml __init__.py,1.4,1.5
Message-ID: <200008040314.UAA23348@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/xml
In directory slayer.i.sourceforge.net:/tmp/cvs-serv23335

Modified Files:
	__init__.py 
Log Message:

Remove the outer test for __name__; not necessary.


Index: __init__.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/xml/__init__.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** __init__.py	2000/08/01 00:05:16	1.4
--- __init__.py	2000/08/04 03:14:55	1.5
***************
*** 14,23 ****
  
  
! if __name__ == "xml":
!     try:
!         import _xmlplus
!     except ImportError:
!         pass
!     else:
!         import sys
!         sys.modules[__name__] = _xmlplus
--- 14,22 ----
  
  
! try:
!     import _xmlplus
! except ImportError:
!     pass
! else:
!     import sys
!     sys.modules[__name__] = _xmlplus



From python-dev@python.org  Fri Aug  4 08:33:20 2000
From: python-dev@python.org (Eric S. Raymond)
Date: Fri, 4 Aug 2000 00:33:20 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/curses textpad.py,1.4,1.5
Message-ID: <200008040733.AAA07722@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/curses
In directory slayer.i.sourceforge.net:/tmp/cvs-serv7699/curses

Modified Files:
	textpad.py 
Log Message:
Corrected a bug in handling of ^N and ^P with stripspaces on.


Index: textpad.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/curses/textpad.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** textpad.py	2000/07/12 03:38:34	1.4
--- textpad.py	2000/08/04 07:33:18	1.5
***************
*** 21,25 ****
      Ctrl-B      Cursor left, wrapping to previous line if appropriate.
      Ctrl-D      Delete character under cursor.
!     Ctrl-E      Go to right edge (nospaces off) or end of line (nospaces on).
      Ctrl-F      Cursor right, wrapping to next line when appropriate.
      Ctrl-G      Terminate, returning the window contents.
--- 21,25 ----
      Ctrl-B      Cursor left, wrapping to previous line if appropriate.
      Ctrl-D      Delete character under cursor.
!     Ctrl-E      Go to right edge (stripspaces off) or end of line (stripspaces on).
      Ctrl-F      Cursor right, wrapping to next line when appropriate.
      Ctrl-G      Terminate, returning the window contents.
***************
*** 27,31 ****
      Ctrl-J      Terminate if the window is 1 line, otherwise insert newline.
      Ctrl-K      If line is blank, delete it, otherwise clear to end of line.
!     Ctrl-L      Refresh screen
      Ctrl-N      Cursor down; move down one line.
      Ctrl-O      Insert a blank line at cursor location.
--- 27,31 ----
      Ctrl-J      Terminate if the window is 1 line, otherwise insert newline.
      Ctrl-K      If line is blank, delete it, otherwise clear to end of line.
!     Ctrl-L      Refresh screen.
      Ctrl-N      Cursor down; move down one line.
      Ctrl-O      Insert a blank line at cursor location.
***************
*** 47,51 ****
          win.keypad(1)
  
!     def firstblank(self, y):
          "Go to the location of the first blank on the given line."
          last = self.maxx
--- 47,51 ----
          win.keypad(1)
  
!     def _end_of_line(self, y):
          "Go to the location of the first blank on the given line."
          last = self.maxx
***************
*** 80,84 ****
                  pass
              elif self.stripspaces:
!                 self.win.move(y-1, self.firstblank(y-1))
              else:
                  self.win.move(y-1, self.maxx)
--- 80,84 ----
                  pass
              elif self.stripspaces:
!                 self.win.move(y-1, self._end_of_line(y-1))
              else:
                  self.win.move(y-1, self.maxx)
***************
*** 89,93 ****
          elif ch == ascii.ENQ:				# ^e
              if self.stripspaces:
!                 self.win.move(y, self.firstblank(y))
              else:
                  self.win.move(y, self.maxx)
--- 89,93 ----
          elif ch == ascii.ENQ:				# ^e
              if self.stripspaces:
!                 self.win.move(y, self._end_of_line(y))
              else:
                  self.win.move(y, self.maxx)
***************
*** 107,111 ****
                  self.win.move(y+1, 0)
          elif ch == ascii.VT:				# ^k
!             if x == 0 and self.firstblank(y) == 0:
                  self.win.deleteln()
              else:
--- 107,111 ----
                  self.win.move(y+1, 0)
          elif ch == ascii.VT:				# ^k
!             if x == 0 and self._end_of_line(y) == 0:
                  self.win.deleteln()
              else:
***************
*** 116,119 ****
--- 116,121 ----
              if y < self.maxy:
                  self.win.move(y+1, x)
+                 if x > self._end_of_line(y+1):
+                     self.win.move(y+1, self._end_of_line(y+1))
          elif ch == ascii.SI:				# ^o
              self.win.insertln()
***************
*** 121,124 ****
--- 123,128 ----
              if y > 0:
                  self.win.move(y-1, x)
+                 if x > self._end_of_line(y-1):
+                     self.win.move(y-1, self._end_of_line(y-1))
          return 1
          
***************
*** 128,133 ****
          for y in range(self.maxy+1):
              self.win.move(y, 0)
!             stop = self.firstblank(y)
!             #sys.stderr.write("y=%d, firstblank(y)=%d\n" % (y, stop))
              if stop == 0 and self.stripspaces:
                  continue
--- 132,137 ----
          for y in range(self.maxy+1):
              self.win.move(y, 0)
!             stop = self._end_of_line(y)
!             #sys.stderr.write("y=%d, _end_of_line(y)=%d\n" % (y, stop))
              if stop == 0 and self.stripspaces:
                  continue



From python-dev@python.org  Fri Aug  4 08:35:43 2000
From: python-dev@python.org (Eric S. Raymond)
Date: Fri, 4 Aug 2000 00:35:43 -0700
Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libcurses.tex,1.12,1.13
Message-ID: <200008040735.AAA07818@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Doc/lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv7795

Modified Files:
	libcurses.tex 
Log Message:
Documented curses.wrapper and curses.textpad.


Index: libcurses.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libcurses.tex,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -r1.12 -r1.13
*** libcurses.tex	2000/07/27 21:10:02	1.12
--- libcurses.tex	2000/08/04 07:35:41	1.13
***************
*** 2,9 ****
           Screen painting and input handling for character-cell terminals}
  
! \declaremodule{extension}{curses}
  \sectionauthor{Moshe Zadka}{mzadka@geocities.com}
  \sectionauthor{Eric Raymond}{esr@thyrsus.com}
  \modulesynopsis{An interface to the curses library.}
  
  The \module{curses} module provides an interface to the curses \UNIX{}
--- 2,10 ----
           Screen painting and input handling for character-cell terminals}
  
! \declaremodule{standard}{curses}
  \sectionauthor{Moshe Zadka}{mzadka@geocities.com}
  \sectionauthor{Eric Raymond}{esr@thyrsus.com}
  \modulesynopsis{An interface to the curses library.}
+ \versionadded{1.6}
  
  The \module{curses} module provides an interface to the curses \UNIX{}
***************
*** 21,25 ****
                             characters, regardless of your locale
                             settings.}
!   \seemodule{curses.textbox}{Editable text widget for curses supporting 
  			     Emacs-like bindings.}
    \seetext{Tutorial material on using curses with Python is available
--- 22,26 ----
                             characters, regardless of your locale
                             settings.}
!   \seemodule{curses.textpad}{Editable text widget for curses supporting 
  			     Emacs-like bindings.}
    \seetext{Tutorial material on using curses with Python is available
***************
*** 1163,1165 ****
--- 1164,1294 ----
    \lineii{COLOR_YELLOW}{Yellow}
  \end{tableii}
+ 
+ \section{\module{curses.textpad} ---
+          Text input widget for curses programs}
+ 
+ \declaremodule{standard}{curses.textpad}
+ \sectionauthor{Eric Raymond}{esr@thyrsus.com}
+ \moduleauthor{Eric Raymond}{esr@thyrsus.com}
+ \modulesynopsis{Emacs-like input editing in a curses window.}
+ \versionadded{1.6}
+ 
+ The \module{curses.textpad} module provides a \class{Textbox} class
+ that handles elementary text editing in a curses window, supporting a
+ set of keybindings resembling those of Emacs (thus, also of Netscape
+ Navigator, BBedit 6.x, FrameMaker, and many other programs).  The
+ module also provides a rectangle-drawing function useful for framing
+ text boxes or for other purposes.
+ 
+ \subsection{Functions \label{curses-textpad-functions}}
+ 
+ The module \module{curses.textpad} defines the following functions:
+ 
+ \begin{funcdesc}{rectangle}{win, uly, ulx, lry, lrx}
+ Draw a rectangle.  The first argument must be a window object; the
+ remaining arguments are coordinates relative to that window.  The
+ second and third arguments are the y and x coordinates of the upper
+ left hand corner of the rectangle To be drawn; the fourth and fifth
+ arguments are the y and x coordinates of the lower right hand corner.
+ The rectangle will be drawn using VT100/IBM PC forms characters on
+ terminals that make this possible (including xterm and most other
+ software terminal emulators).  Otherwise it will be drawn with ASCII 
+ dashes, vertical bars, and plus signs.
+ \end{funcdesc}
+ 
+ \subsection{Textbox objects \label{curses-textpad-objects}}
+ 
+ You can instantiate a \class{Textbox} object as follows:
+ 
+ \classdesc{Textbox}{win}
+ Return a textbox widget object.  The win argument should be a curses
+ \class{WindowObject} in which the textbox is to be contained.  The
+ edit cursor of the textbox is initially located at the upper left
+ hand corner of the containin window, with coordinates (0,0). The
+ instance's \member{stripspaces} flag is initially on.
+ \end{classdesc}
+ 
+ Textbox objects, have the following methods:
+ 
+ \begin{methoddesc}{edit}{validator=None}
+ This is the entry point you will normally use.  It accepts editing
+ keystrokes until one of the termination keystrokes is entered.  If a
+ validator function is specified, each entered keystroke is passed to
+ it; command dispatch is done on the result. This method returns the
+ window contents as a string; whether blanks in the window are included
+ is affected by the \member{stripspaces} member.
+ \end{methoddesc}
+ 
+ \begin{methoddesc}{do_command}{ch}
+ Process a single command keystroke.  Here are the supported special
+ keystrokes: 
+ 
+ \begin{tableii}{c|l}{code}{keystroke}{action}
+   \lineii{Ctrl-A}{Go to left edge of window.}
+   \lineii{Ctrl-B}{Cursor left, wrapping to previous line if appropriate.}
+   \lineii{Ctrl-D}{Delete character under cursor.}
+   \lineii{Ctrl-E}{Go to right edge (stripspaces off) or end of line (stripspaces on).}
+   \lineii{Ctrl-F}{Cursor right, wrapping to next line when appropriate.}
+   \lineii{Ctrl-G}{Terminate, returning the window contents.}
+   \lineii{Ctrl-H}{Delete character backward.}
+   \lineii{Ctrl-J}{Terminate if the window is 1 line, otherwise insert newline.}
+   \lineii{Ctrl-K}{If line is blank, delete it, otherwise clear to end of line.}
+   \lineii{Ctrl-L}{Refresh screen.}
+   \lineii{Ctrl-N}{Cursor down; move down one line.}
+   \lineii{Ctrl-O}{Insert a blank line at cursor location.}
+   \lineii{Ctrl-P}{Cursor up; move up one line.}
+ \end{tableii}
+ 
+ Move operations do nothing if the cursor is at an edge where the
+ movement is not possible.  The following synonyms are supported where
+ possible:  KEY_LEFT = Ctrl-B, KEY_RIGHT = Ctrl-F, KEY_UP = Ctrl-P,
+ KEY_DOWN = Ctrl-N, KEY_BACKSPACE = Ctrl-h.
+ 
+ All other keystrokes are treated as a command to insert the given
+ character and move right (with line wrapping).
+ \end{methoddesc}
+ 
+ \begin{methoddesc}{gather}{}
+ This method returns the window contents as a string; whether blanks in
+ the window are included is affected by the \member{stripspaces}
+ member.
+ \end{methoddesc}
+ 
+ \begin{methoddesc}{stripspaces}{}
+ This data member is a flag which controls the interpretation of blanks in
+ the window.  When it is on, trailing blanks on each line are ignored;
+ any cursor motion that would land the cursor on a trailing blank goes
+ to the end of that line instead, and trailing blanks are stripped when
+ the window contents is gathered.
+ \end{methoddesc}
+ 
+ \section{\module{curses.wrapper} ---
+          Exception-handling wrapper for curses programs.}
+ 
+ \declaremodule{standard}{curses.wrapper}
+ \sectionauthor{Eric Raymond}{esr@thyrsus.com}
+ \moduleauthor{Eric Raymond}{esr@thyrsus.com}
+ \modulesynopsis{Exception-handling wrapper for curses programs.}
+ \versionadded{1.6}
+ 
+ This module supplies one function, \function{wrapper()}, which runs
+ another function which should be the rest of your curses-using
+ application.  If the application raises an exception,
+ \function{wrapper()} will restore the terminal to a sane state before
+ passing it further up the stack and generating a traceback.
+ 
+ \subsection{Functions \label{curses-wrapper-functions}}
+ 
+ \begin{funcdesc}{wrapper}{func, *rest}
+ Wrapper function that initializes curses and calls another function,
+ \function{func}, restoring normal keyboard/screen behavior on error.
+ The callable object 'func' is then passed the main window 'stdscr'
+ as its first argument, followed by any other arguments passed to
+ \function{wrapper()}.
+ \end{funcdesc}
+ 
+ Before calling the hook function, \function{wrapper()} turns on
+ cbreak mode, turns off echo, and enables the terminal keypad.  On
+ exit (whether normally or by exception) it restores cooked mode, 
+ turns on echo, and disables the terminal keypad.
  



From python-dev@python.org  Fri Aug  4 09:47:02 2000
From: python-dev@python.org (Thomas Wouters)
Date: Fri, 4 Aug 2000 01:47:02 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib whichdb.py,1.7,1.8
Message-ID: <200008040847.BAA21291@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv21242/Lib

Modified Files:
	whichdb.py 
Log Message:

Add missing 'try:'. Patch by Rob W. W. Hooft, #101071 (closed.)



Index: whichdb.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/whichdb.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** whichdb.py	2000/07/29 05:31:40	1.7
--- whichdb.py	2000/08/04 08:46:59	1.8
***************
*** 27,30 ****
--- 27,31 ----
  
      # Check for dumbdbm next -- this has a .dir and and a .dat file
+     try:
          f = open(filename + ".dat", "rb")
          f.close()



From python-dev@python.org  Fri Aug  4 13:59:43 2000
From: python-dev@python.org (Moshe Zadka)
Date: Fri, 4 Aug 2000 05:59:43 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_linuxaudiodev.py,1.1,1.2
Message-ID: <200008041259.FAA24651@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv24303/Lib/test

Modified Files:
	test_linuxaudiodev.py 
Log Message:
In case the user isn't allowed to access /dev/dsp or /dev/dsp isn't there
at all (my computer doesn't have a Sound Blaster), this doesn't mean
there's a bug in linuxaudiodev. The only error the test suite skips
is currently ImportError -- so that's what we raise. If you see a problem
with this patch, say so and I'll retract. If you think raising an ImportError
sucks, you're right -- but I ain't gonna buy a SB and I sure ain't gonna
let the test-suite fail on my machine.


Index: test_linuxaudiodev.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_linuxaudiodev.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** test_linuxaudiodev.py	2000/06/10 04:22:57	1.1
--- test_linuxaudiodev.py	2000/08/04 12:59:40	1.2
***************
*** 1,4 ****
--- 1,5 ----
  from test_support import verbose, findfile, TestFailed
  import linuxaudiodev
+ import errno
  import os
  
***************
*** 10,13 ****
--- 11,16 ----
          a = linuxaudiodev.open('w')
      except linuxaudiodev.error, msg:
+ 	if msg[0] in (errno.EACCES, errno.ENODEV):
+ 		raise ImportError, msg
          raise TestFailed, msg
      else:



From python-dev@python.org  Fri Aug  4 14:08:50 2000
From: python-dev@python.org (Guido van Rossum)
Date: Fri, 4 Aug 2000 06:08:50 -0700
Subject: [Python-checkins] CVS: python/dist/src LICENSE,1.1.2.3,1.1.2.4
Message-ID: <200008041308.GAA27553@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src
In directory slayer.i.sourceforge.net:/tmp/cvs-serv27528

Modified Files:
      Tag: cnri-16-start
	LICENSE 
Log Message:
Comma added at CNRI's request.  (Gosh Bob Kahn is thorough. :-)


Index: LICENSE
===================================================================
RCS file: /cvsroot/python/python/dist/src/LICENSE,v
retrieving revision 1.1.2.3
retrieving revision 1.1.2.4
diff -C2 -r1.1.2.3 -r1.1.2.4
*** LICENSE	2000/08/03 21:28:23	1.1.2.3
--- LICENSE	2000/08/04 13:08:47	1.1.2.4
***************
*** 86,90 ****
  party.
  
! 8. By clicking on the "ACCEPT" button where indicated, or by copying
  installing or otherwise using Python 1.6b1, Licensee agrees to be
  bound by the terms and conditions of this License Agreement.
--- 86,90 ----
  party.
  
! 8. By clicking on the "ACCEPT" button where indicated, or by copying,
  installing or otherwise using Python 1.6b1, Licensee agrees to be
  bound by the terms and conditions of this License Agreement.



From python-dev@python.org  Fri Aug  4 14:17:55 2000
From: python-dev@python.org (Thomas Wouters)
Date: Fri, 4 Aug 2000 06:17:55 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test regrtest.py,1.20,1.21
Message-ID: <200008041317.GAA30726@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv30493/Lib/test

Modified Files:
	regrtest.py 
Log Message:

Make test_support.TestSkipped errors work the same way as ImportErrors:
mark the test as 'skipped', rather than 'failed'.



Index: regrtest.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/regrtest.py,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -r1.20 -r1.21
*** regrtest.py	2000/08/03 15:50:37	1.20
--- regrtest.py	2000/08/04 13:17:51	1.21
***************
*** 228,232 ****
          finally:
              sys.stdout = save_stdout
!     except ImportError, msg:
          return -1
      except KeyboardInterrupt, v:
--- 228,232 ----
          finally:
              sys.stdout = save_stdout
!     except (ImportError, test_support.TestSkipped), msg:
          return -1
      except KeyboardInterrupt, v:



From python-dev@python.org  Fri Aug  4 14:18:17 2000
From: python-dev@python.org (Guido van Rossum)
Date: Fri, 4 Aug 2000 06:18:17 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python getcopyright.c,1.6.2.1,1.6.2.2
Message-ID: <200008041318.GAA30885@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv30857

Modified Files:
      Tag: cnri-16-start
	getcopyright.c 
Log Message:
Change the copyright string to match CNRI's desires.


Index: getcopyright.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/getcopyright.c,v
retrieving revision 1.6.2.1
retrieving revision 1.6.2.2
diff -C2 -r1.6.2.1 -r1.6.2.2
*** getcopyright.c	2000/08/03 16:50:36	1.6.2.1
--- getcopyright.c	2000/08/04 13:18:12	1.6.2.2
***************
*** 4,9 ****
  
  static char cprt[] = 
! "Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam\n\
! Copyright 1995-2000 Corporation for National Research Initiatives (CNRI)";
  
  const char *
--- 4,9 ----
  
  static char cprt[] = 
! "Copyright (c) Corporation for National Research Initiatives.\n\
! Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam.";
  
  const char *



From python-dev@python.org  Fri Aug  4 14:26:07 2000
From: python-dev@python.org (Moshe Zadka)
Date: Fri, 4 Aug 2000 06:26:07 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_linuxaudiodev.py,1.2,1.3
Message-ID: <200008041326.GAA00938@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv300/Lib/test

Modified Files:
	test_linuxaudiodev.py 
Log Message:
Raise TestSkipped, not ImportError.
Honesty's the best policy.


Index: test_linuxaudiodev.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_linuxaudiodev.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** test_linuxaudiodev.py	2000/08/04 12:59:40	1.2
--- test_linuxaudiodev.py	2000/08/04 13:26:03	1.3
***************
*** 1,3 ****
! from test_support import verbose, findfile, TestFailed
  import linuxaudiodev
  import errno
--- 1,3 ----
! from test_support import verbose, findfile, TestFailed, TestSkipped
  import linuxaudiodev
  import errno
***************
*** 12,16 ****
      except linuxaudiodev.error, msg:
  	if msg[0] in (errno.EACCES, errno.ENODEV):
! 		raise ImportError, msg
          raise TestFailed, msg
      else:
--- 12,16 ----
      except linuxaudiodev.error, msg:
  	if msg[0] in (errno.EACCES, errno.ENODEV):
! 		raise TestSkipped, msg
          raise TestFailed, msg
      else:



From python-dev@python.org  Fri Aug  4 14:34:46 2000
From: python-dev@python.org (Thomas Wouters)
Date: Fri, 4 Aug 2000 06:34:46 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test README,1.2,1.3 test_binhex.py,1.4,1.5 test_dl.py,1.7,1.8 test_fork1.py,1.4,1.5 test_gl.py,1.3,1.4 test_nis.py,1.7,1.8 test_openpty.py,1.2,1.3 test_pty.py,1.3,1.4 test_signal.py,1.4,1.5 test_string.py,1.10,1.11
Message-ID: <200008041334.GAA03625@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv3456

Modified Files:
	README test_binhex.py test_dl.py test_fork1.py test_gl.py 
	test_nis.py test_openpty.py test_pty.py test_signal.py 
	test_string.py 
Log Message:

Raise 'TestSkipped' (from the test_support) module rather than 'ImportError'
to signify a test that should be marked as 'skipped' rather than 'failed'.
Also 'document' it, in README.



Index: README
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/README,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** README	2000/07/19 17:19:49	1.2
--- README	2000/08/04 13:34:43	1.3
***************
*** 13,17 ****
  expected output that is stored in .../Lib/test/output.  If the test runs to
  completion and the actual and expected outputs match, the test succeeds, if
! not, it fails.  If an ImportError is raised, the test is not run.
  
  You will be writing unit tests (isolated tests of functions and objects
--- 13,18 ----
  expected output that is stored in .../Lib/test/output.  If the test runs to
  completion and the actual and expected outputs match, the test succeeds, if
! not, it fails.  If an ImportError or test_support.TestSkipped error is
! raised, the test is not run.
  
  You will be writing unit tests (isolated tests of functions and objects

Index: test_binhex.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_binhex.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** test_binhex.py	1999/10/19 17:48:54	1.4
--- test_binhex.py	2000/08/04 13:34:43	1.5
***************
*** 7,11 ****
  import binhex
  import tempfile
! from test_support import verbose
  
  def test():
--- 7,11 ----
  import binhex
  import tempfile
! from test_support import verbose, TestSkipped
  
  def test():
***************
*** 16,20 ****
          f = open(fname1, 'w')
      except:
!         raise ImportError, "Cannot test binhex without a temp file"
  
      start = 'Jack is my hero'
--- 16,20 ----
          f = open(fname1, 'w')
      except:
!         raise TestSkipped, "Cannot test binhex without a temp file"
  
      start = 'Jack is my hero'

Index: test_dl.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_dl.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** test_dl.py	1999/02/23 17:58:48	1.7
--- test_dl.py	2000/08/04 13:34:43	1.8
***************
*** 5,9 ****
  
  import dl
! from test_support import verbose
  
  sharedlibs = [
--- 5,9 ----
  
  import dl
! from test_support import verbose,TestSkipped
  
  sharedlibs = [
***************
*** 30,32 ****
          break
  else:
!     raise ImportError, 'Could not open any shared libraries'
--- 30,32 ----
          break
  else:
!     raise TestSkipped, 'Could not open any shared libraries'

Index: test_fork1.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_fork1.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** test_fork1.py	2000/05/04 00:36:42	1.4
--- test_fork1.py	2000/08/04 13:34:43	1.5
***************
*** 10,18 ****
  
  import os, sys, time, thread
  
  try:
      os.fork
  except AttributeError:
!     raise ImportError, "os.fork not defined -- skipping test_fork1"
  
  LONGSLEEP = 2
--- 10,19 ----
  
  import os, sys, time, thread
+ from test_support import TestSkipped
  
  try:
      os.fork
  except AttributeError:
!     raise TestSkipped, "os.fork not defined -- skipping test_fork1"
  
  LONGSLEEP = 2

Index: test_gl.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_gl.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** test_gl.py	1998/03/26 19:42:09	1.3
--- test_gl.py	2000/08/04 13:34:43	1.4
***************
*** 4,8 ****
      Roger E. Masse
  """
! from test_support import verbose
  import gl, GL, time
  
--- 4,8 ----
      Roger E. Masse
  """
! from test_support import verbose, TestSkipped
  import gl, GL, time
  
***************
*** 88,93 ****
          display = os.environ['DISPLAY']
      except:
!         # Raise ImportError because regrtest.py handles it specially.
!         raise ImportError, "No $DISPLAY -- skipping gl test"
  
      # touch all the attributes of gl without doing anything
--- 88,92 ----
          display = os.environ['DISPLAY']
      except:
!         raise TestSkipped, "No $DISPLAY -- skipping gl test"
  
      # touch all the attributes of gl without doing anything

Index: test_nis.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_nis.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** test_nis.py	1999/01/28 04:54:33	1.7
--- test_nis.py	2000/08/04 13:34:43	1.8
***************
*** 1,3 ****
! from test_support import verbose, TestFailed
  import nis
  
--- 1,3 ----
! from test_support import verbose, TestFailed, TestSkipped
  import nis
  
***************
*** 10,14 ****
          raise TestFailed, msg
      # only do this if running under the regression suite
!     raise ImportError, msg
  
  done = 0
--- 10,14 ----
          raise TestFailed, msg
      # only do this if running under the regression suite
!     raise TestSkipped, msg
  
  done = 0

Index: test_openpty.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_openpty.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** test_openpty.py	2000/07/19 14:51:54	1.2
--- test_openpty.py	2000/08/04 13:34:43	1.3
***************
*** 2,6 ****
  
  import os
! from test_support import verbose, TestFailed
  
  try:
--- 2,6 ----
  
  import os
! from test_support import verbose, TestFailed, TestSkipped
  
  try:
***************
*** 11,15 ****
          print "(master, slave) = (%d, %d)"%(master, slave)
  except AttributeError:
!     raise ImportError, "No openpty() available."
  
  if not os.isatty(master):
--- 11,15 ----
          print "(master, slave) = (%d, %d)"%(master, slave)
  except AttributeError:
!     raise TestSkipped, "No openpty() available."
  
  if not os.isatty(master):

Index: test_pty.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_pty.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** test_pty.py	2000/07/19 14:51:54	1.3
--- test_pty.py	2000/08/04 13:34:43	1.4
***************
*** 1,4 ****
  import pty, os, sys, string
! from test_support import verbose, TestFailed
  
  TEST_STRING_1 = "I wish to buy a fish license."
--- 1,4 ----
  import pty, os, sys, string
! from test_support import verbose, TestFailed, TestSkipped
  
  TEST_STRING_1 = "I wish to buy a fish license."
***************
*** 26,30 ****
  except OSError:
      # " An optional feature could not be imported " ... ?
!     raise ImportError, "Pseudo-terminals (seemingly) not functional."
  
  if not os.isatty(master_fd):
--- 26,30 ----
  except OSError:
      # " An optional feature could not be imported " ... ?
!     raise TestSkipped, "Pseudo-terminals (seemingly) not functional."
  
  if not os.isatty(master_fd):

Index: test_signal.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_signal.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** test_signal.py	1997/11/22 21:50:25	1.4
--- test_signal.py	2000/08/04 13:34:43	1.5
***************
*** 1,4 ****
  # Test the signal module
! from test_support import verbose
  import signal
  import os
--- 1,4 ----
  # Test the signal module
! from test_support import verbose, TestSkipped
  import signal
  import os
***************
*** 6,10 ****
  
  if sys.platform[:3] in ('win', 'os2'):
!     raise ImportError, "Can't test signal on %s" % sys.platform[:3]
  
  if verbose:
--- 6,10 ----
  
  if sys.platform[:3] in ('win', 'os2'):
!     raise TestSkipped, "Can't test signal on %s" % sys.platform[:3]
  
  if verbose:

Index: test_string.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_string.py,v
retrieving revision 1.10
retrieving revision 1.11
diff -C2 -r1.10 -r1.11
*** test_string.py	2000/07/10 17:08:42	1.10
--- test_string.py	2000/08/04 13:34:43	1.11
***************
*** 1,3 ****
! from test_support import verbose
  import string_tests
  import string, sys
--- 1,3 ----
! from test_support import verbose, TestSkipped
  import string_tests
  import string, sys
***************
*** 7,11 ****
      ''.join
  except AttributeError:
!     raise ImportError
  
  def test(name, input, output, *args):
--- 7,11 ----
      ''.join
  except AttributeError:
!     raise TestSkipped
  
  def test(name, input, output, *args):



From python-dev@python.org  Fri Aug  4 14:37:58 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Fri, 4 Aug 2000 06:37:58 -0700
Subject: [Python-checkins] CVS: python/dist/src/Tools/compiler - New directory
Message-ID: <200008041337.GAA04343@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Tools/compiler
In directory slayer.i.sourceforge.net:/tmp/cvs-serv4335/compiler

Log Message:
Directory /cvsroot/python/python/dist/src/Tools/compiler added to the repository




From python-dev@python.org  Fri Aug  4 14:59:54 2000
From: python-dev@python.org (Guido van Rossum)
Date: Fri, 4 Aug 2000 06:59:54 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python modsupport.c,2.42.2.1,2.42.2.2
Message-ID: <200008041359.GAA07064@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv7054

Modified Files:
      Tag: cnri-16-start
	modsupport.c 
Log Message:
Add a test that Py_IsInitialized() in Py_InitModule4().  See
python-dev discussion.

This should catch future version incompatibilities on Windows.  Alas,
this doesn't help for 1.5 vs. 1.6; but it will help for 1.6 vs. 2.0.


Index: modsupport.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/modsupport.c,v
retrieving revision 2.42.2.1
retrieving revision 2.42.2.2
diff -C2 -r2.42.2.1 -r2.42.2.2
*** modsupport.c	2000/08/03 16:50:36	2.42.2.1
--- modsupport.c	2000/08/04 13:59:51	2.42.2.2
***************
*** 39,42 ****
--- 39,44 ----
  	PyObject *m, *d, *v;
  	PyMethodDef *ml;
+ 	if (!Py_IsInitialized())
+ 	    Py_FatalError("Interpreter not initialized (version mismatch?)");
  	if (module_api_version != PYTHON_API_VERSION)
  		fprintf(stderr, api_version_warning,



From python-dev@python.org  Fri Aug  4 15:00:20 2000
From: python-dev@python.org (Guido van Rossum)
Date: Fri, 4 Aug 2000 07:00:20 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python modsupport.c,2.49,2.50
Message-ID: <200008041400.HAA07195@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv7176

Modified Files:
	modsupport.c 
Log Message:
Add a test that Py_IsInitialized() in Py_InitModule4().  See
python-dev discussion.

This should catch future version incompatibilities on Windows.  Alas,
this doesn't help for 1.5 vs. 1.6; but it will help for 1.6 vs. 2.0.


Index: modsupport.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/modsupport.c,v
retrieving revision 2.49
retrieving revision 2.50
diff -C2 -r2.49 -r2.50
*** modsupport.c	2000/07/22 18:47:25	2.49
--- modsupport.c	2000/08/04 14:00:14	2.50
***************
*** 48,51 ****
--- 48,53 ----
  	PyObject *m, *d, *v;
  	PyMethodDef *ml;
+ 	if (!Py_IsInitialized())
+ 	    Py_FatalError("Interpreter not initialized (version mismatch?)");
  	if (module_api_version != PYTHON_API_VERSION)
  		fprintf(stderr, api_version_warning,



From python-dev@python.org  Fri Aug  4 16:26:02 2000
From: python-dev@python.org (Moshe Zadka)
Date: Fri, 4 Aug 2000 08:26:02 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_linuxaudiodev.py,1.3,1.4
Message-ID: <200008041526.IAA02033@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv1754

Modified Files:
	test_linuxaudiodev.py 
Log Message:
Oooopsss.....tab and space mismatch corrected.


Index: test_linuxaudiodev.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_linuxaudiodev.py,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** test_linuxaudiodev.py	2000/08/04 13:26:03	1.3
--- test_linuxaudiodev.py	2000/08/04 15:25:58	1.4
***************
*** 11,16 ****
          a = linuxaudiodev.open('w')
      except linuxaudiodev.error, msg:
! 	if msg[0] in (errno.EACCES, errno.ENODEV):
! 		raise TestSkipped, msg
          raise TestFailed, msg
      else:
--- 11,16 ----
          a = linuxaudiodev.open('w')
      except linuxaudiodev.error, msg:
!         if msg[0] in (errno.EACCES, errno.ENODEV):
!             raise TestSkipped, msg
          raise TestFailed, msg
      else:



From python-dev@python.org  Fri Aug  4 16:29:06 2000
From: python-dev@python.org (Guido van Rossum)
Date: Fri, 4 Aug 2000 08:29:06 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib sre.py,1.23,1.23.4.1
Message-ID: <200008041529.IAA04360@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv4299

Modified Files:
      Tag: cnri-16-start
	sre.py 
Log Message:
In _split(), extend() is called with m.group(), which returns a tuple.
This is OK in 2.0, but not in 1.6.

Fix it on the 1.6 branch, as an explicit list() call seems like it
would be a bit slower.


Index: sre.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/sre.py,v
retrieving revision 1.23
retrieving revision 1.23.4.1
diff -C2 -r1.23 -r1.23.4.1
*** sre.py	2000/08/01 22:47:48	1.23
--- sre.py	2000/08/04 15:29:03	1.23.4.1
***************
*** 156,160 ****
          append(string[i:b])
          if g and b != e:
!             extend(m.groups())
          i = e
          n = n + 1
--- 156,160 ----
          append(string[i:b])
          if g and b != e:
!             extend(list(m.groups()))
          i = e
          n = n + 1



From python-dev@python.org  Fri Aug  4 16:35:38 2000
From: python-dev@python.org (Guido van Rossum)
Date: Fri, 4 Aug 2000 08:35:38 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python getargs.c,2.33.2.1,2.33.2.2
Message-ID: <200008041535.IAA09363@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv9274/Python

Modified Files:
      Tag: cnri-16-start
	getargs.c 
Log Message:
Reapply Marc-Andres patest patch in the 1.6 branch

Index: getargs.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/getargs.c,v
retrieving revision 2.33.2.1
retrieving revision 2.33.2.2
diff -C2 -r2.33.2.1 -r2.33.2.2
*** getargs.c	2000/08/03 16:50:35	2.33.2.1
--- getargs.c	2000/08/04 15:35:36	2.33.2.2
***************
*** 416,420 ****
  /* Internal API needed by convertsimple1(): */
  extern 
! PyObject *_PyUnicode_AsUTF8String(PyObject *unicode,
  				  const char *errors);
  
--- 416,420 ----
  /* Internal API needed by convertsimple1(): */
  extern 
! PyObject *_PyUnicode_AsDefaultEncodedString(PyObject *unicode,
  				  const char *errors);
  
***************
*** 594,598 ****
  				    *p = PyString_AS_STRING(arg);
  				else if (PyUnicode_Check(arg)) {
! 				    arg = _PyUnicode_AsUTF8String(arg, NULL);
  				    if (arg == NULL)
  					return "unicode conversion error";
--- 594,599 ----
  				    *p = PyString_AS_STRING(arg);
  				else if (PyUnicode_Check(arg)) {
! 				    arg = _PyUnicode_AsDefaultEncodedString(
! 							            arg, NULL);
  				    if (arg == NULL)
  					return "unicode conversion error";
***************
*** 639,643 ****
  				  *p = PyString_AsString(arg);
  				else if (PyUnicode_Check(arg)) {
! 				  arg = _PyUnicode_AsUTF8String(arg, NULL);
  				  if (arg == NULL)
  				      return "unicode conversion error";
--- 640,645 ----
  				  *p = PyString_AsString(arg);
  				else if (PyUnicode_Check(arg)) {
! 				  arg = _PyUnicode_AsDefaultEncodedString(
! 								  arg, NULL);
  				  if (arg == NULL)
  				      return "unicode conversion error";
***************
*** 671,675 ****
  			encoding = (const char *)va_arg(*p_va, const char *);
  			if (encoding == NULL)
! 				return "(encoding is NULL)";
  			
  			/* Get 's' parameter: the output buffer to use */
--- 673,677 ----
  			encoding = (const char *)va_arg(*p_va, const char *);
  			if (encoding == NULL)
! 			    	encoding = PyUnicode_GetDefaultEncoding();
  			
  			/* Get 's' parameter: the output buffer to use */



From python-dev@python.org  Fri Aug  4 16:35:38 2000
From: python-dev@python.org (Guido van Rossum)
Date: Fri, 4 Aug 2000 08:35:38 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects unicodeobject.c,2.54.2.1,2.54.2.2
Message-ID: <200008041535.IAA09356@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv9274/Objects

Modified Files:
      Tag: cnri-16-start
	unicodeobject.c 
Log Message:
Reapply Marc-Andres patest patch in the 1.6 branch

Index: unicodeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/unicodeobject.c,v
retrieving revision 2.54.2.1
retrieving revision 2.54.2.2
diff -C2 -r2.54.2.1 -r2.54.2.2
*** unicodeobject.c	2000/08/03 16:35:00	2.54.2.1
--- unicodeobject.c	2000/08/04 15:35:36	2.54.2.2
***************
*** 167,173 ****
   reset:
      /* Reset the object caches */
!     if (unicode->utf8str) {
!         Py_DECREF(unicode->utf8str);
!         unicode->utf8str = NULL;
      }
      unicode->hash = -1;
--- 167,173 ----
   reset:
      /* Reset the object caches */
!     if (unicode->defenc) {
!         Py_DECREF(unicode->defenc);
!         unicode->defenc = NULL;
      }
      unicode->hash = -1;
***************
*** 245,249 ****
      unicode->length = length;
      unicode->hash = -1;
!     unicode->utf8str = NULL;
      return unicode;
  
--- 245,249 ----
      unicode->length = length;
      unicode->hash = -1;
!     unicode->defenc = NULL;
      return unicode;
  
***************
*** 264,270 ****
  	    unicode->length = 0;
  	}
! 	if (unicode->utf8str) {
! 	    Py_DECREF(unicode->utf8str);
! 	    unicode->utf8str = NULL;
  	}
  	/* Add to free list */
--- 264,270 ----
  	    unicode->length = 0;
  	}
! 	if (unicode->defenc) {
! 	    Py_DECREF(unicode->defenc);
! 	    unicode->defenc = NULL;
  	}
  	/* Add to free list */
***************
*** 275,279 ****
      else {
  	PyMem_DEL(unicode->str);
! 	Py_XDECREF(unicode->utf8str);
  	PyObject_DEL(unicode);
      }
--- 275,279 ----
      else {
  	PyMem_DEL(unicode->str);
! 	Py_XDECREF(unicode->defenc);
  	PyObject_DEL(unicode);
      }
***************
*** 531,534 ****
--- 531,561 ----
  }
  
+ /* Return a Python string holding the default encoded value of the
+    Unicode object. 
+ 
+    The resulting string is cached in the Unicode object for subsequent
+    usage by this function. The cached version is needed to implement
+    the character buffer interface and will live (at least) as long as
+    the Unicode object itself.
+ 
+    The refcount of the string is *not* incremented.
+ 
+    *** Exported for internal use by the interpreter only !!! ***
+ 
+ */
+ 
+ PyObject *_PyUnicode_AsDefaultEncodedString(PyObject *unicode,
+ 					    const char *errors)
+ {
+     PyObject *v = ((PyUnicodeObject *)unicode)->defenc;
+ 
+     if (v)
+         return v;
+     v = PyUnicode_AsEncodedString(unicode, NULL, errors);
+     if (v && errors == NULL)
+         ((PyUnicodeObject *)unicode)->defenc = v;
+     return v;
+ }
+ 
  Py_UNICODE *PyUnicode_AsUnicode(PyObject *unicode)
  {
***************
*** 876,908 ****
  }
  
- /* Return a Python string holding the UTF-8 encoded value of the
-    Unicode object. 
- 
-    The resulting string is cached in the Unicode object for subsequent
-    usage by this function. The cached version is needed to implement
-    the character buffer interface and will live (at least) as long as
-    the Unicode object itself.
- 
-    The refcount of the string is *not* incremented.
- 
-    *** Exported for internal use by the interpreter only !!! ***
- 
- */
- 
- PyObject *_PyUnicode_AsUTF8String(PyObject *unicode,
- 				  const char *errors)
- {
-     PyObject *v = ((PyUnicodeObject *)unicode)->utf8str;
- 
-     if (v)
-         return v;
-     v = PyUnicode_EncodeUTF8(PyUnicode_AS_UNICODE(unicode),
- 			     PyUnicode_GET_SIZE(unicode),
- 			     errors);
-     if (v && errors == NULL)
-         ((PyUnicodeObject *)unicode)->utf8str = v;
-     return v;
- }
- 
  PyObject *PyUnicode_AsUTF8String(PyObject *unicode)
  {
--- 903,906 ----
***************
*** 913,917 ****
          return NULL;
      }
!     str = _PyUnicode_AsUTF8String(unicode, NULL);
      if (str == NULL)
          return NULL;
--- 911,917 ----
          return NULL;
      }
!     str = PyUnicode_EncodeUTF8(PyUnicode_AS_UNICODE(unicode),
! 			       PyUnicode_GET_SIZE(unicode),
! 			       NULL);
      if (str == NULL)
          return NULL;
***************
*** 4521,4525 ****
          return -1;
      }
!     str = _PyUnicode_AsUTF8String((PyObject *)self, NULL);
      if (str == NULL)
  	return -1;
--- 4521,4525 ----
          return -1;
      }
!     str = _PyUnicode_AsDefaultEncodedString((PyObject *)self, NULL);
      if (str == NULL)
  	return -1;
***************
*** 5132,5136 ****
  	if (v->str)
  	    PyMem_DEL(v->str);
! 	Py_XDECREF(v->utf8str);
  	PyObject_DEL(v);
      }
--- 5132,5136 ----
  	if (v->str)
  	    PyMem_DEL(v->str);
! 	Py_XDECREF(v->defenc);
  	PyObject_DEL(v);
      }



From python-dev@python.org  Fri Aug  4 16:36:15 2000
From: python-dev@python.org (Moshe Zadka)
Date: Fri, 4 Aug 2000 08:36:15 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects bufferobject.c,2.11,2.12 object.c,2.91,2.92
Message-ID: <200008041536.IAA10077@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv4647/Objects

Modified Files:
	bufferobject.c object.c 
Log Message:
Removing warnings found by gcc -Wall


Index: bufferobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/bufferobject.c,v
retrieving revision 2.11
retrieving revision 2.12
diff -C2 -r2.11 -r2.12
*** bufferobject.c	2000/07/09 04:06:11	2.11
--- bufferobject.c	2000/08/04 15:36:13	2.12
***************
*** 142,145 ****
--- 142,146 ----
  PyBuffer_New(int size)
  {
+ 	PyObject *o;
  	PyBufferObject * b;
  
***************
*** 150,157 ****
  	}
  	/* PyObject_New is inlined */
! 	b = (PyBufferObject *) PyObject_MALLOC(sizeof(*b) + size);
! 	if ( b == NULL )
  		return PyErr_NoMemory();
! 	PyObject_INIT((PyObject *)b, &PyBuffer_Type);
  
  	b->b_base = NULL;
--- 151,158 ----
  	}
  	/* PyObject_New is inlined */
! 	o = PyObject_MALLOC(sizeof(*b) + size);
! 	if ( o == NULL )
  		return PyErr_NoMemory();
! 	b = (PyBufferObject *) PyObject_INIT(o, &PyBuffer_Type);
  
  	b->b_base = NULL;
***************
*** 163,167 ****
  #endif
  
! 	return (PyObject *) b;
  }
  
--- 164,168 ----
  #endif
  
! 	return o;
  }
  

Index: object.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/object.c,v
retrieving revision 2.91
retrieving revision 2.92
diff -C2 -r2.91 -r2.92
*** object.c	2000/07/31 15:28:04	2.91
--- object.c	2000/08/04 15:36:13	2.92
***************
*** 1124,1127 ****
--- 1124,1131 ----
  	else if (PyTraceBack_Check(op))
  		typecode = Py_TRASHCAN_TRACEBACK;
+ 	else /* We have a bug here -- those are the only types in GC */ {
+ 		Py_FatalError("Type not supported in GC -- internal bug");
+ 		return; /* pacify compiler -- execution never here */
+ 	}
  	op->ob_refcnt = typecode;
  



From python-dev@python.org  Fri Aug  4 16:53:09 2000
From: python-dev@python.org (Moshe Zadka)
Date: Fri, 4 Aug 2000 08:53:09 -0700
Subject: [Python-checkins] CVS: python/dist/src/Modules audioop.c,1.41,1.42 tkappinit.c,1.8,1.9
Message-ID: <200008041553.IAA28799@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv24001/Modules

Modified Files:
	audioop.c tkappinit.c 
Log Message:
Removing warnings discovered by gcc -Wall


Index: audioop.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/audioop.c,v
retrieving revision 1.41
retrieving revision 1.42
diff -C2 -r1.41 -r1.42
*** audioop.c	2000/07/31 15:28:04	1.41
--- audioop.c	2000/08/04 15:53:06	1.42
***************
*** 88,92 ****
  	56,     48,     40,     32,     24,     16,      8,      0 };
  
! /* #define ZEROTRAP    /* turn on the trap as per the MIL-STD */
  #define BIAS 0x84   /* define the add-in bias for 16 bit samples */
  #define CLIP 32635
--- 88,92 ----
  	56,     48,     40,     32,     24,     16,      8,      0 };
  
! /* #define ZEROTRAP */   /* turn on the trap as per the MIL-STD */
  #define BIAS 0x84   /* define the add-in bias for 16 bit samples */
  #define CLIP 32635

Index: tkappinit.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/tkappinit.c,v
retrieving revision 1.8
retrieving revision 1.9
diff -C2 -r1.8 -r1.9
*** tkappinit.c	2000/07/10 09:26:41	1.8
--- tkappinit.c	2000/08/04 15:53:06	1.9
***************
*** 19,23 ****
  Tcl_AppInit(Tcl_Interp *interp)
  {
! 	Tk_Window main;
  
  	if (Tcl_Init (interp) == TCL_ERROR)
--- 19,23 ----
  Tcl_AppInit(Tcl_Interp *interp)
  {
! 	Tk_Window main_window;
  
  	if (Tcl_Init (interp) == TCL_ERROR)
***************
*** 26,30 ****
  		return TCL_ERROR;
  
! 	main = Tk_MainWindow(interp);
  
  #ifdef WITH_MOREBUTTONS
--- 26,30 ----
  		return TCL_ERROR;
  
! 	main_window = Tk_MainWindow(interp);
  
  #ifdef WITH_MOREBUTTONS
***************
*** 34,40 ****
  
  		Tcl_CreateCommand(interp, "studbutton", studButtonCmd,
! 				  (ClientData) main, NULL);
  		Tcl_CreateCommand(interp, "tributton", triButtonCmd,
! 				  (ClientData) main, NULL);
  	}
  #endif
--- 34,40 ----
  
  		Tcl_CreateCommand(interp, "studbutton", studButtonCmd,
! 				  (ClientData) main_window, NULL);
  		Tcl_CreateCommand(interp, "tributton", triButtonCmd,
! 				  (ClientData) main_window, NULL);
  	}
  #endif



From python-dev@python.org  Fri Aug  4 17:54:57 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Fri, 4 Aug 2000 09:54:57 -0700
Subject: [Python-checkins] CVS: python/nondist/src/Compiler/compiler transformer.py,1.11,1.12
Message-ID: <200008041654.JAA02492@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/src/Compiler/compiler
In directory slayer.i.sourceforge.net:/tmp/cvs-serv1877

Modified Files:
	transformer.py 
Log Message:
update my email address
fix com_call_function to cope with trailing comma in "f(a, b,)"


Index: transformer.py
===================================================================
RCS file: /cvsroot/python/python/nondist/src/Compiler/compiler/transformer.py,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -r1.11 -r1.12
*** transformer.py	2000/08/03 17:39:13	1.11
--- transformer.py	2000/08/04 16:54:54	1.12
***************
*** 12,16 ****
  #
  # Support for ast.Node subclasses written and other revisions by
! #  Jeremy Hylton (jeremy@cnri.reston.va.us)
  #
  
--- 12,16 ----
  #
  # Support for ast.Node subclasses written and other revisions by
! #  Jeremy Hylton (jeremy@beopen.com)
  #
  
***************
*** 1002,1005 ****
--- 1002,1008 ----
      else:
          i = i + 1 # No broken by star arg, so skip the last one we processed.
+     if i < len_nodelist and nodelist[i][0] == token.COMMA:
+         # need to accept an application that looks like "f(a, b,)"
+         i = i + 1
      star_node = dstar_node = None
      while i < len_nodelist:



From python-dev@python.org  Fri Aug  4 17:56:54 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Fri, 4 Aug 2000 09:56:54 -0700
Subject: [Python-checkins] CVS: python/nondist/src/Compiler/compiler pycodegen.py,1.20,1.21
Message-ID: <200008041656.JAA04669@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/src/Compiler/compiler
In directory slayer.i.sourceforge.net:/tmp/cvs-serv3989

Modified Files:
	pycodegen.py 
Log Message:
replace most calls to emit 'SET_LINENO' will call to method set_lineno
based on bug report by Neil Schemenauer


Index: pycodegen.py
===================================================================
RCS file: /cvsroot/python/python/nondist/src/Compiler/compiler/pycodegen.py,v
retrieving revision 1.20
retrieving revision 1.21
diff -C2 -r1.20 -r1.21
*** pycodegen.py	2000/05/02 22:32:59	1.20
--- pycodegen.py	2000/08/04 16:56:51	1.21
***************
*** 106,109 ****
--- 106,125 ----
              self.emit(prefix + '_GLOBAL', name)
  
+     def set_lineno(self, node):
+         """Emit SET_LINENO if node has lineno attribute
+ 
+         Returns true if SET_LINENO was emitted.
+ 
+         There are no rules for when an AST node should have a lineno
+         attribute.  The transformer and AST code need to be reviewed
+         and a consistent policy implemented and documented.  Until
+         then, this method works around missing line numbers.
+         """
+         lineno = getattr(node, 'lineno', None)
+         if lineno is not None:
+             self.emit('SET_LINENO', lineno)
+             return 1
+         return 0
+ 
      # The first few visitor methods handle nodes that generator new
      # code objects 
***************
*** 129,133 ****
  	walk(node.code, gen)
  	gen.finish()
! 	self.emit('SET_LINENO', node.lineno)
          for default in node.defaults:
              self.visit(default)
--- 145,149 ----
  	walk(node.code, gen)
  	gen.finish()
!         self.set_lineno(node)
          for default in node.defaults:
              self.visit(default)
***************
*** 139,143 ****
          walk(node.code, gen)
          gen.finish()
!         self.emit('SET_LINENO', node.lineno)
          self.emit('LOAD_CONST', node.name)
          for base in node.bases:
--- 155,159 ----
          walk(node.code, gen)
          gen.finish()
!         self.set_lineno(node)
          self.emit('LOAD_CONST', node.name)
          for base in node.bases:
***************
*** 159,164 ****
  	for i in range(numtests):
  	    test, suite = node.tests[i]
! 	    if hasattr(test, 'lineno'):
! 		self.emit('SET_LINENO', test.lineno)
  	    self.visit(test)
  ## 	    if i == numtests - 1 and not node.else_:
--- 175,179 ----
  	for i in range(numtests):
  	    test, suite = node.tests[i]
!             self.set_lineno(test)
  	    self.visit(test)
  ## 	    if i == numtests - 1 and not node.else_:
***************
*** 179,183 ****
  
      def visitWhile(self, node):
! 	self.emit('SET_LINENO', node.lineno)
  
  	loop = self.newBlock()
--- 194,198 ----
  
      def visitWhile(self, node):
!         self.set_lineno(node)
  
  	loop = self.newBlock()
***************
*** 190,194 ****
  	self.loops.push(loop)
  
! 	self.emit('SET_LINENO', node.lineno)
  	self.visit(node.test)
  	self.emit('JUMP_IF_FALSE', else_ or after)
--- 205,209 ----
  	self.loops.push(loop)
  
!         self.set_lineno(node)
  	self.visit(node.test)
  	self.emit('JUMP_IF_FALSE', else_ or after)
***************
*** 213,222 ****
          self.loops.push(start)
  
!         self.emit('SET_LINENO', node.lineno)
  	self.emit('SETUP_LOOP', after)
          self.visit(node.list)
          self.visit(ast.Const(0))
  	self.nextBlock(start)
!         self.emit('SET_LINENO', node.lineno)
          self.emit('FOR_LOOP', anchor)
          self.visit(node.assign)
--- 228,237 ----
          self.loops.push(start)
  
!         self.set_lineno(node)
  	self.emit('SETUP_LOOP', after)
          self.visit(node.list)
          self.visit(ast.Const(0))
  	self.nextBlock(start)
!         self.set_lineno(node)
          self.emit('FOR_LOOP', anchor)
          self.visit(node.assign)
***************
*** 234,238 ****
  	    raise SyntaxError, "'break' outside loop (%s, %d)" % \
  		  (self.filename, node.lineno)
! 	self.emit('SET_LINENO', node.lineno)
  	self.emit('BREAK_LOOP')
  
--- 249,253 ----
  	    raise SyntaxError, "'break' outside loop (%s, %d)" % \
  		  (self.filename, node.lineno)
!         self.set_lineno(node)
  	self.emit('BREAK_LOOP')
  
***************
*** 242,246 ****
  		  (self.filename, node.lineno)
          l = self.loops.top()
!         self.emit('SET_LINENO', node.lineno)
          self.emit('JUMP_ABSOLUTE', l)
  	self.nextBlock()
--- 257,261 ----
  		  (self.filename, node.lineno)
          l = self.loops.top()
!         self.set_lineno(node)
          self.emit('JUMP_ABSOLUTE', l)
  	self.nextBlock()
***************
*** 292,296 ****
  	# transformation of the AST before this stage
  	end = self.newBlock()
! 	self.emit('SET_LINENO', node.lineno)
          # XXX __debug__ and AssertionError appear to be special cases
          # -- they are always loaded as globals even if there are local
--- 307,311 ----
  	# transformation of the AST before this stage
  	end = self.newBlock()
!         self.set_lineno(node)
          # XXX __debug__ and AssertionError appear to be special cases
          # -- they are always loaded as globals even if there are local
***************
*** 310,314 ****
  
      def visitRaise(self, node):
!         self.emit('SET_LINENO', node.lineno)
          n = 0
          if node.expr1:
--- 325,329 ----
  
      def visitRaise(self, node):
!         self.set_lineno(node)
          n = 0
          if node.expr1:
***************
*** 330,334 ****
          else:
              lElse = end
!         self.emit('SET_LINENO', node.lineno)
          self.emit('SETUP_EXCEPT', handlers)
          self.visit(node.body)
--- 345,349 ----
          else:
              lElse = end
!         self.set_lineno(node)
          self.emit('SETUP_EXCEPT', handlers)
          self.visit(node.body)
***************
*** 340,345 ****
          for i in range(len(node.handlers)):
              expr, target, body = node.handlers[i]
!             if hasattr(expr, 'lineno'):
!                 self.emit('SET_LINENO', expr.lineno)
              if expr:
                  self.emit('DUP_TOP')
--- 355,359 ----
          for i in range(len(node.handlers)):
              expr, target, body = node.handlers[i]
!             self.set_lineno(expr)
              if expr:
                  self.emit('DUP_TOP')
***************
*** 369,373 ****
      def visitTryFinally(self, node):
          final = self.newBlock()
!         self.emit('SET_LINENO', node.lineno)
          self.emit('SETUP_FINALLY', final)
          self.visit(node.body)
--- 383,387 ----
      def visitTryFinally(self, node):
          final = self.newBlock()
!         self.set_lineno(node)
          self.emit('SETUP_FINALLY', final)
          self.visit(node.body)
***************
*** 403,410 ****
          
      def visitPass(self, node):
!         self.emit('SET_LINENO', node.lineno)
  
      def visitImport(self, node):
!         self.emit('SET_LINENO', node.lineno)
          for name in node.names:
              self.emit('IMPORT_NAME', name)
--- 417,424 ----
          
      def visitPass(self, node):
!         self.set_lineno(node)
  
      def visitImport(self, node):
!         self.set_lineno(node)
          for name in node.names:
              self.emit('IMPORT_NAME', name)
***************
*** 412,416 ****
  
      def visitFrom(self, node):
!         self.emit('SET_LINENO', node.lineno)
          self.emit('IMPORT_NAME', node.modname)
          for name in node.names:
--- 426,430 ----
  
      def visitFrom(self, node):
!         self.set_lineno(node)
          self.emit('IMPORT_NAME', node.modname)
          for name in node.names:
***************
*** 427,431 ****
  
      def visitAssign(self, node):
!         self.emit('SET_LINENO', node.lineno)
          self.visit(node.expr)
          dups = len(node.nodes) - 1
--- 441,445 ----
  
      def visitAssign(self, node):
!         self.set_lineno(node)
          self.visit(node.expr)
          dups = len(node.nodes) - 1
***************
*** 478,483 ****
          pos = 0
          kw = 0
!         if hasattr(node, 'lineno'):
!             self.emit('SET_LINENO', node.lineno)
          self.visit(node.node)
          for arg in node.args:
--- 492,496 ----
          pos = 0
          kw = 0
!         self.set_lineno(node)
          self.visit(node.node)
          for arg in node.args:
***************
*** 497,501 ****
  
      def visitPrint(self, node):
!         self.emit('SET_LINENO', node.lineno)
          for child in node.nodes:
              self.visit(child)
--- 510,514 ----
  
      def visitPrint(self, node):
!         self.set_lineno(node)
          for child in node.nodes:
              self.visit(child)
***************
*** 507,511 ****
  
      def visitReturn(self, node):
!         self.emit('SET_LINENO', node.lineno)
          self.visit(node.value)
          self.emit('RETURN_VALUE')
--- 520,524 ----
  
      def visitReturn(self, node):
!         self.set_lineno(node)
          self.visit(node.value)
          self.emit('RETURN_VALUE')
***************
*** 638,650 ****
  
      def visitDict(self, node):
! 	# XXX is this a good general strategy?  could it be done 
! 	# separately from the general visitor
! 	lineno = getattr(node, 'lineno', None)
! 	if lineno:
! 	    self.emit('SET_LINENO', lineno)
          self.emit('BUILD_MAP', 0)
          for k, v in node.items:
  	    lineno2 = getattr(node, 'lineno', None)
! 	    if lineno != lineno2:
  		self.emit('SET_LINENO', lineno2)
  		lineno = lineno2
--- 651,661 ----
  
      def visitDict(self, node):
!         lineno = getattr(node, 'lineno', None)
!         if lineno:
!             set.emit('SET_LINENO', lineno)
          self.emit('BUILD_MAP', 0)
          for k, v in node.items:
  	    lineno2 = getattr(node, 'lineno', None)
!             if lineno2 is not None and lineno != lineno2:
  		self.emit('SET_LINENO', lineno2)
  		lineno = lineno2
***************
*** 688,692 ****
  	if func.kwargs:
  	    self.graph.setFlag(CO_VARKEYWORDS)
!         self.emit('SET_LINENO', func.lineno)
          if hasTupleArg:
              self.generateArgUnpack(func.argnames)
--- 699,703 ----
  	if func.kwargs:
  	    self.graph.setFlag(CO_VARKEYWORDS)
!         self.set_lineno(func)
          if hasTupleArg:
              self.generateArgUnpack(func.argnames)



From python-dev@python.org  Fri Aug  4 18:02:05 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Fri, 4 Aug 2000 10:02:05 -0700
Subject: [Python-checkins] CVS: python/dist/src/Tools/compiler/compiler - New directory
Message-ID: <200008041702.KAA11379@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Tools/compiler/compiler
In directory slayer.i.sourceforge.net:/tmp/cvs-serv11225/compiler

Log Message:
Directory /cvsroot/python/python/dist/src/Tools/compiler/compiler added to the repository




From python-dev@python.org  Fri Aug  4 18:04:01 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Fri, 4 Aug 2000 10:04:01 -0700
Subject: [Python-checkins] CVS: python/dist/src/Tools README,1.5,1.6
Message-ID: <200008041704.KAA14818@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Tools
In directory slayer.i.sourceforge.net:/tmp/cvs-serv14043

Modified Files:
	README 
Log Message:
add note about compiler directory
(is bgen still "still under development"?)


Index: README
===================================================================
RCS file: /cvsroot/python/python/dist/src/Tools/README,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -r1.5 -r1.6
*** README	1998/04/10 20:58:53	1.5
--- README	2000/08/04 17:03:58	1.6
***************
*** 5,8 ****
--- 5,12 ----
  		description.  Still under development!
  
+ compiler        A Python source to bytecode compiler written in
+                 Python, including an interface for manipulating
+                 abstract syntax trees.  Still under development.
+ 
  faqwiz		FAQ Wizard.
  		See http://grail.cnri.reston.va.us/cgi-bin/faqw.py



From python-dev@python.org  Sat Aug  5 01:43:15 2000
From: python-dev@python.org (Greg Ward)
Date: Fri, 4 Aug 2000 17:43:15 -0700
Subject: [Python-checkins] CVS: distutils/doc/dist dist.tex,1.18,1.19
Message-ID: <200008050043.RAA27050@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/doc/dist
In directory slayer.i.sourceforge.net:/tmp/cvs-serv27040

Modified Files:
	dist.tex 
Log Message:
A bundle of wording improvements, corrections, clarifications, updates, 
and so forth.

Index: dist.tex
===================================================================
RCS file: /cvsroot/python/distutils/doc/dist/dist.tex,v
retrieving revision 1.18
retrieving revision 1.19
diff -C2 -r1.18 -r1.19
*** dist.tex	2000/06/30 03:36:41	1.18
--- dist.tex	2000/08/05 00:43:11	1.19
***************
*** 22,35 ****
  for installing and maintaining third-party modules.  With the
  introduction of the Python Distribution Utilities (Distutils for short)
! in Python 2.0, this situation should start to improve.
  
  This document only covers using the Distutils to distribute your Python
! modules.  Using the Distutils does not tie you to Python 2.0, though:
! the Distutils work just fine with Python 1.5, and it is reasonable (and
! expected to become commonplace) to expect users of Python 1.5 to
  download and install the Distutils separately before they can install
! your modules.  Python 2.0 users, of course, won't have to add anything
! to their Python installation in order to use the Distutils to install
! third-party modules.
  
  This document concentrates on the role of developer/distributor: if
--- 22,35 ----
  for installing and maintaining third-party modules.  With the
  introduction of the Python Distribution Utilities (Distutils for short)
! in Python 1.6, this situation should start to improve.
  
  This document only covers using the Distutils to distribute your Python
! modules.  Using the Distutils does not tie you to Python 1.6, though:
! the Distutils work just fine with Python 1.5.2, and it is reasonable
! (and expected to become commonplace) to expect users of Python 1.5.2 to
  download and install the Distutils separately before they can install
! your modules.  Python 1.6 (or later) users, of course, won't have to add
! anything to their Python installation in order to use the Distutils to
! install third-party modules.
  
  This document concentrates on the role of developer/distributor: if
***************
*** 69,75 ****
  
  The setup script is usually quite simple, although since it's written in
! Python, there are no arbitrary limits to what you can do.  If all you
! want to do is distribute a module called \module{foo}, contained in a
! file \file{foo.py}, then your setup script can be as little as this:
  \begin{verbatim}
  from distutils.core import setup
--- 69,76 ----
  
  The setup script is usually quite simple, although since it's written in
! Python, there are no arbitrary limits to what you can do with it.  If
! all you want to do is distribute a module called \module{foo}, contained
! in a file \file{foo.py}, then your setup script can be as little as
! this:
  \begin{verbatim}
  from distutils.core import setup
***************
*** 119,123 ****
  their own code occasionally).
  
- \XXX{only partially implemented}%
  If you want to make things really easy for your users, you can create
  one or more built distributions for them.  For instance, if you are
--- 120,123 ----
***************
*** 129,135 ****
  python setup.py bdist_wininst
  \end{verbatim}
! will create an executable installer, \file{Foo-1\_0.exe}, in the current
! directory.
  
  (Another way to create executable installers for Windows is with the
  \command{bdist\_wise} command, which uses Wise---the commercial
--- 129,136 ----
  python setup.py bdist_wininst
  \end{verbatim}
! will create an executable installer, \file{Foo-1.0.win32.exe}, in the
! current directory.
  
+ \XXX{not implemented yet}
  (Another way to create executable installers for Windows is with the
  \command{bdist\_wise} command, which uses Wise---the commercial
***************
*** 143,151 ****
  work; it's available from \url{http://foo/bar/baz}.)
  
! Other \command{bdist} commands exist for other platforms: for example,
! \command{bdist\_rpm} for RPM-based Linux systems, (\command{bdist\_deb})
! for Debian-based Linux systems, and so forth.  See
! section~\ref{bdist-cmds} for details on all the \command{bdist}
! commands.
  
  
--- 144,162 ----
  work; it's available from \url{http://foo/bar/baz}.)
  
! Currently (Distutils 0.9.1), the are only other useful built
! distribution format is RPM, implemented by the \command{bdist\_rpm}
! command.  For example, the following command will create an RPM file
! called \file{Foo-1.0.noarch.rpm}:
! \begin{verbatim}
! python setup.py bdist_rpm
! \end{verbatim}
! (This uses the \command{rpm} command, so has to be run on an RPM-based
! system such as Red Hat Linux, SuSE Linux, or Mandrake Linux.)
! 
! You can find out what distribution formats are available at any time by
! running
! \begin{verbatim}
! python setup.py bdist --help-formats
! \end{verbatim}
  
  
***************
*** 159,165 ****
  \begin{description}
  \item[module] the basic unit of code reusability in Python: a block of
!   code imported by some other code.  There are three types of modules
!   that concern us here: pure Python modules, extension modules, and
!   packages.
  \item[pure Python module] a module written in Python and contained in a
    single \file{.py} file (and possibly associated \file{.pyc} and/or
--- 170,175 ----
  \begin{description}
  \item[module] the basic unit of code reusability in Python: a block of
!   code imported by some other code.  Three types of modules concern us
!   here: pure Python modules, extension modules, and packages.
  \item[pure Python module] a module written in Python and contained in a
    single \file{.py} file (and possibly associated \file{.pyc} and/or
***************
*** 225,232 ****
  Here's a slightly more involved example, which we'll follow for the next
  couple of sections: the Distutils' own setup script.  (Keep in mind that
! although the Distutils are included with Python 2.0, they also have an
! independent existence so that Python 1.5 users can use them to install
! other module distributions.  The Distutils' own setup script is used to
! install the package into Python 1.5.)
  
  \begin{verbatim}
--- 235,242 ----
  Here's a slightly more involved example, which we'll follow for the next
  couple of sections: the Distutils' own setup script.  (Keep in mind that
! although the Distutils are included with Python 1.6 and later, they also
! have an independent existence so that Python 1.5.2 users can use them to
! install other module distributions.  The Distutils' own setup script,
! shown here, is used to install the package into Python 1.5.2.)
  
  \begin{verbatim}
***************
*** 237,241 ****
  setup (name = "Distutils",
         version = "1.0",
!        description = "Python Module Distribution Utilities",
         author = "Greg Ward",
         author_email = "gward@python.net",
--- 247,251 ----
  setup (name = "Distutils",
         version = "1.0",
!        description = "Python Distribution Utilities",
         author = "Greg Ward",
         author_email = "gward@python.net",
***************
*** 285,299 ****
  that's no problem: you just have to supply the \option{package\_dir}
  option to tell the Distutils about your convention.  For example, say
! you keep all Python source under \file{lib}, so that modules not in any
! package are right in \file{lib}, modules in the \module{foo} package
! are in \file{lib/foo}, and so forth.  Then you would put
  \begin{verbatim}
  package_dir = {'': 'lib'}
  \end{verbatim}
  in your setup script.  (The keys to this dictionary are package names,
! and an empty package name stands for the ``root package,'' i.e. no
! package at all.  The values are directory names relative to your
! distribution root.)  In this case, when you say
! \code{packages = ['foo']}, you are promising that the file
  \file{lib/foo/\_\_init\_\_.py} exists.
  
--- 295,309 ----
  that's no problem: you just have to supply the \option{package\_dir}
  option to tell the Distutils about your convention.  For example, say
! you keep all Python source under \file{lib}, so that modules in the
! ``root package'' (i.e., not in any package at all) are right in
! \file{lib}, modules in the \module{foo} package are in \file{lib/foo},
! and so forth.  Then you would put
  \begin{verbatim}
  package_dir = {'': 'lib'}
  \end{verbatim}
  in your setup script.  (The keys to this dictionary are package names,
! and an empty package name stands for the root package.  The values are
! directory names relative to your distribution root.)  In this case, when
! you say \code{packages = ['foo']}, you are promising that the file
  \file{lib/foo/\_\_init\_\_.py} exists.
  
***************
*** 338,343 ****
  \label{sec:describing-extensions}
  
- \XXX{be sure to describe the whole \code{build\_info} dict, including
-   \code{extra\_compile\_args} and \code{extra\_link\_args}}
  
  
--- 348,351 ----
***************
*** 345,350 ****
  \label{setup-config}
  
- \XXX{not implemented yet!}
- 
  Often, it's not possible to write down everything needed to build a
  distribution \emph{a priori}.  You need to get some information from the
--- 353,356 ----
***************
*** 492,497 ****
  \item if the manifest file, \file{MANIFEST} doesn't exist, read
    \file{MANIFEST.in} and create the manifest
! \item if \file{MANIFEST.in} is more recent than \file{MANIFEST},
!   recreate \file{MANIFEST} by reading \file{MANIFEST.in}
  \item use the list of files now in \file{MANIFEST} (either just
    generated or read in) to create the source distribution archive(s)
--- 498,504 ----
  \item if the manifest file, \file{MANIFEST} doesn't exist, read
    \file{MANIFEST.in} and create the manifest
! \item if either \file{MANIFEST.in} or the setup script (\file{setup.py})
!   are more recent than \file{MANIFEST}, recreate \file{MANIFEST} by
!   reading \file{MANIFEST.in}
  \item use the list of files now in \file{MANIFEST} (either just
    generated or read in) to create the source distribution archive(s)
***************
*** 506,511 ****
  python setup.py sdist --force-manifest
  \end{verbatim}
- \XXX{this is stupid, but is there a better way to do it without
-   reprocessing MANIFEST.in every single bloody time?}
  
  Or, you might just want to (re)generate the manifest, but not create a
--- 513,516 ----
***************
*** 563,614 ****
  in this case), does a ``fake'' installation (also in the \file{build}
  directory), and creates the default type of built distribution for my
! platform.  In Distutils 0.8, only two types of built distribution are
! supported: \code{gztar} (default on non-Linux Unix) and \code{zip}
! (default on Windows).  Thus, the above command on a Unix system creates
! \file{Distutils-0.8.built-posix.tar.gz}; unpacking this tarball from
! Python's \filevar{prefix} directory installs the Distutils just as
! though you had downloaded the source distribution and run \code{python
!   setup.py install}.  Obviously, for pure Python distributions, this
! isn't a huge win---but for non-pure distributions, which include
! extensions that would need to be compiled, it can mean the difference
! between someone being able to use your extensions or not.
  
  \XXX{filenames are inaccurate here!}
  
  The \command{bdist} command has a \longprogramopt{format} option,
! similar to the \command{sdist} command, that you can use to select which
! formats to generate: for example,
  \begin{verbatim}
  python setup.py bdist --format=zip
  \end{verbatim}
  would, when run on a Unix system, create
! \file{Distutils-0.8.built-posix.tar.gz}---again, this archive would be
! unpacked from Python's \filevar{prefix} directory to install the
! Distutils.
  
  The available formats for built distributions are:
  \begin{tableiii}{l|l|c}{code}%
    {Format}{Description}{Notes}
!   \lineiii{zip}{zip file (\file{.zip})}{(1)}
!   \lineiii{gztar}{gzipped tar file (\file{.tar.gz})}{(2)}
    \lineiii{ztar}{compressed tar file (\file{.tar.Z})}{}
    \lineiii{tar}{tar file (\file{.tar})}{}
!   \lineiii{rpm}{RPM}{(3)}
!   \lineiii{srpm}{source RPM}{}
!   \lineiii{wise}{Wise installer for Windows}{}
  \end{tableiii}
  
  \noindent Notes:
  \begin{description}
! \item[(1)] default on Windows
! \item[(2)] default on Unix
! \item[(3)] not implemented yet; will be default on RPM-based Linux
!   systems
! \item[(5)] not implemented yet; will be default on Windows
  \end{description}
  
  You don't have to use the \command{bdist} command with the
  \longprogramopt{formats} option; you can also use the command that
! directly implements the format you're interested in.  Many of these
  \command{bdist} ``sub-commands'' actually generate several similar
  formats; for instance, the \command{bdist\_dumb} command generates all
--- 568,622 ----
  in this case), does a ``fake'' installation (also in the \file{build}
  directory), and creates the default type of built distribution for my
! platform.  Currently, the default format for built distributions is a
! ``dumb'' archive---tarball on Unix, ZIP file on Windows.  (These are
! called ``dumb'' built distributions, because they must be unpacked in a
! specific location to work.)
! 
! Thus, the above command on a Unix system creates
! \file{Distutils-0.9.1.\filevar{plat}.tar.gz}; unpacking this tarball
! from the root of the filesystemq installs the Distutils just as though
! you had downloaded the source distribution and run \code{python setup.py
!   install}.  (Assuming that the target system has their Python
! installation laid out the same as you do---another reason these are
! called ``dumb'' distributions.)  Obviously, for pure Python
! distributions, this isn't a huge win---but for non-pure distributions,
! which include extensions that would need to be compiled, it can mean the
! difference between someone being able to use your extensions or not.
  
  \XXX{filenames are inaccurate here!}
  
  The \command{bdist} command has a \longprogramopt{format} option,
! similar to the \command{sdist} command, which you can use to select the
! types of built distribution to generate: for example,
  \begin{verbatim}
  python setup.py bdist --format=zip
  \end{verbatim}
  would, when run on a Unix system, create
! \file{Distutils-0.8.\filevar{plat}.zip}---again, this archive would be
! unpacked from the root directory to install the Distutils.
  
  The available formats for built distributions are:
  \begin{tableiii}{l|l|c}{code}%
    {Format}{Description}{Notes}
!   \lineiii{zip}{zip file (\file{.zip})}{}
!   \lineiii{gztar}{gzipped tar file (\file{.tar.gz})}{(1)}
    \lineiii{ztar}{compressed tar file (\file{.tar.Z})}{}
    \lineiii{tar}{tar file (\file{.tar})}{}
!   \lineiii{rpm}{RPM}{}
!   \lineiii{srpm}{source RPM}{\XXX{to do!}}
!   \lineiii{wininst}{self-extracting ZIP file for Windows}{(2)}
!   %\lineiii{wise}{Wise installer for Windows}{(3)}
  \end{tableiii}
  
  \noindent Notes:
  \begin{description}
! \item[(1)] default on Unix
! \item[(2)] default on Windows \XXX{to-do!}
! %\item[(3)] not implemented yet
  \end{description}
  
  You don't have to use the \command{bdist} command with the
  \longprogramopt{formats} option; you can also use the command that
! directly implements the format you're interested in.  Some of these
  \command{bdist} ``sub-commands'' actually generate several similar
  formats; for instance, the \command{bdist\_dumb} command generates all
***************
*** 621,625 ****
    \lineii{bdist\_dumb}{tar, ztar, gztar, zip}
    \lineii{bdist\_rpm}{rpm, srpm}
!   \lineii{bdist\_wise}{wise}
  \end{tableii}
  
--- 629,634 ----
    \lineii{bdist\_dumb}{tar, ztar, gztar, zip}
    \lineii{bdist\_rpm}{rpm, srpm}
!   \lineii{bdist\_wininst}{wininst}
!   %\lineii{bdist\_wise}{wise}
  \end{tableii}
  



From python-dev@python.org  Sat Aug  5 01:58:20 2000
From: python-dev@python.org (Greg Ward)
Date: Fri, 4 Aug 2000 17:58:20 -0700
Subject: [Python-checkins] CVS: python/dist/src/PC config.h,1.42,1.43
Message-ID: <200008050058.RAA28244@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/PC
In directory slayer.i.sourceforge.net:/tmp/cvs-serv28228

Modified Files:
	config.h 
Log Message:
Pragmas that instruct the linker to link against python20.lib (or
python20_d.lib) only active on MSVC++; different library formats needed
for different compilers, and it's handled by the Distutils anyways.


Index: config.h
===================================================================
RCS file: /cvsroot/python/python/dist/src/PC/config.h,v
retrieving revision 1.42
retrieving revision 1.43
diff -C2 -r1.42 -r1.43
*** config.h	2000/06/30 22:17:53	1.42
--- config.h	2000/08/05 00:58:14	1.43
***************
*** 288,293 ****
  #ifdef MS_WIN32
  
! #ifndef USE_DL_EXPORT
! /* So nobody needs to specify the .lib in their Makefile any more */
  #ifdef _DEBUG
  #pragma comment(lib,"python20_d.lib")
--- 288,295 ----
  #ifdef MS_WIN32
  
! #if !defined(USE_DL_EXPORT) && defined(_MSC_VER)
! /* So nobody using MSVC needs to specify the .lib in their Makefile any
!    more (other compilers will still need to do so, but that's taken care
!    of by the Distutils, so it's not a problem). */
  #ifdef _DEBUG
  #pragma comment(lib,"python20_d.lib")



From python-dev@python.org  Sat Aug  5 02:00:23 2000
From: python-dev@python.org (Greg Ward)
Date: Fri, 4 Aug 2000 18:00:23 -0700
Subject: [Python-checkins] CVS: python/dist/src/PC config.h,1.35,1.35.2.1
Message-ID: <200008050100.SAA28520@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/PC
In directory slayer.i.sourceforge.net:/tmp/cvs-serv28486

Modified Files:
      Tag: cnri-16-start
	config.h 
Log Message:
Pragmas that instruct the linker to link against python16.lib (or
python16_d.lib) only active on MSVC++; different library formats needed
for different compilers, and it's handled by the Distutils anyways.


Index: config.h
===================================================================
RCS file: /cvsroot/python/python/dist/src/PC/config.h,v
retrieving revision 1.35
retrieving revision 1.35.2.1
diff -C2 -r1.35 -r1.35.2.1
*** config.h	2000/05/10 13:25:32	1.35
--- config.h	2000/08/05 01:00:21	1.35.2.1
***************
*** 256,261 ****
  #ifdef MS_WIN32
  
! #ifndef USE_DL_EXPORT
! /* So nobody needs to specify the .lib in their Makefile any more */
  #ifdef _DEBUG
  #pragma comment(lib,"python16_d.lib")
--- 256,263 ----
  #ifdef MS_WIN32
  
! #if !defined(USE_DL_EXPORT) && defined(_MSC_VER)
! /* So nobody using MSVC needs to specify the .lib in their Makefile any
!    more (other compilers will still need it, but that's taken care
!    of by the Distutils, so it's not a problem). */
  #ifdef _DEBUG
  #pragma comment(lib,"python16_d.lib")



From python-dev@python.org  Sat Aug  5 02:25:27 2000
From: python-dev@python.org (Greg Ward)
Date: Fri, 4 Aug 2000 18:25:27 -0700
Subject: [Python-checkins] CVS: distutils/distutils util.py,1.41,1.42
Message-ID: <200008050125.SAA05133@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils
In directory slayer.i.sourceforge.net:/tmp/cvs-serv5092

Modified Files:
	util.py 
Log Message:
Drop the 'extend()' function -- old 1.5.1 compatibility hack that
  wasn't actually used anywhere.
Drop the "from xxx_util import*" backwards compability hacks.


Index: util.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/util.py,v
retrieving revision 1.41
retrieving revision 1.42
diff -C2 -r1.41 -r1.42
*** util.py	2000/08/02 01:37:30	1.41
--- util.py	2000/08/05 01:25:24	1.42
***************
*** 12,35 ****
  from distutils.spawn import spawn
  
- # for backwards compatibility:
- from distutils.file_util import *
- from distutils.dir_util import *
- from distutils.dep_util import *
- from distutils.archive_util import *
- 
- 
- # More backwards compatibility hacks
- def extend (list, new_list):
-     """Appends the list 'new_list' to 'list', just like the 'extend()'
-        list method does in Python 1.5.2 -- but this works on earlier
-        versions of Python too."""
- 
-     if hasattr (list, 'extend'):
-         list.extend (new_list)
-     else:
-         list[len(list):] = new_list
- 
- # extend ()
- 
  
  def get_platform ():
--- 12,15 ----



From python-dev@python.org  Sat Aug  5 02:31:57 2000
From: python-dev@python.org (Greg Ward)
Date: Fri, 4 Aug 2000 18:31:57 -0700
Subject: [Python-checkins] CVS: distutils/distutils/command bdist_dumb.py,1.9,1.10 bdist_rpm.py,1.14,1.15 bdist_wininst.py,1.4,1.5 clean.py,1.7,1.8 install.py,1.39,1.40 install_lib.py,1.26,1.27 sdist.py,1.41,1.42
Message-ID: <200008050131.SAA05629@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils/command
In directory slayer.i.sourceforge.net:/tmp/cvs-serv5498/command

Modified Files:
	bdist_dumb.py bdist_rpm.py bdist_wininst.py clean.py 
	install.py install_lib.py sdist.py 
Log Message:
Fixed imports from '*util' modules to not just import everything from util.

Index: bdist_dumb.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/bdist_dumb.py,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -r1.9 -r1.10
*** bdist_dumb.py	2000/07/05 03:07:37	1.9
--- bdist_dumb.py	2000/08/05 01:31:54	1.10
***************
*** 11,15 ****
  import os
  from distutils.core import Command
! from distutils.util import get_platform, create_tree, remove_tree
  from distutils.errors import *
  
--- 11,16 ----
  import os
  from distutils.core import Command
! from distutils.util import get_platform
! from distutils.dir_util import create_tree, remove_tree
  from distutils.errors import *
  

Index: bdist_rpm.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/bdist_rpm.py,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -r1.14 -r1.15
*** bdist_rpm.py	2000/07/27 02:13:20	1.14
--- bdist_rpm.py	2000/08/05 01:31:54	1.15
***************
*** 11,15 ****
  from types import *
  from distutils.core import Command, DEBUG
! from distutils.util import get_platform, write_file
  from distutils.errors import *
  
--- 11,16 ----
  from types import *
  from distutils.core import Command, DEBUG
! from distutils.util import get_platform
! from distutils.file_util import write_file
  from distutils.errors import *
  

Index: bdist_wininst.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/bdist_wininst.py,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -r1.4 -r1.5
*** bdist_wininst.py	2000/07/05 03:08:55	1.4
--- bdist_wininst.py	2000/08/05 01:31:54	1.5
***************
*** 10,14 ****
  import sys, os, string
  from distutils.core import Command
! from distutils.util import get_platform, create_tree, remove_tree
  from distutils.errors import *
  
--- 10,15 ----
  import sys, os, string
  from distutils.core import Command
! from distutils.util import get_platform
! from distutils.dir_util import create_tree, remove_tree
  from distutils.errors import *
  

Index: clean.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/clean.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** clean.py	2000/05/28 23:47:00	1.7
--- clean.py	2000/08/05 01:31:54	1.8
***************
*** 9,13 ****
  import os
  from distutils.core import Command
! from distutils.util import remove_tree
  
  class clean (Command):
--- 9,13 ----
  import os
  from distutils.core import Command
! from distutils.dir_util import remove_tree
  
  class clean (Command):

Index: install.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/install.py,v
retrieving revision 1.39
retrieving revision 1.40
diff -C2 -r1.39 -r1.40
*** install.py	2000/06/24 17:22:39	1.39
--- install.py	2000/08/05 01:31:54	1.40
***************
*** 11,15 ****
  from distutils.core import Command, DEBUG
  from distutils import sysconfig
! from distutils.util import write_file, convert_path, subst_vars, change_root
  from distutils.errors import DistutilsOptionError
  from glob import glob
--- 11,16 ----
  from distutils.core import Command, DEBUG
  from distutils import sysconfig
! from distutils.file_util import write_file
! from distutils.util import convert_path, subst_vars, change_root
  from distutils.errors import DistutilsOptionError
  from glob import glob

Index: install_lib.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/install_lib.py,v
retrieving revision 1.26
retrieving revision 1.27
diff -C2 -r1.26 -r1.27
*** install_lib.py	2000/08/02 01:34:18	1.26
--- install_lib.py	2000/08/05 01:31:54	1.27
***************
*** 5,9 ****
  import sys, os, string
  from distutils.core import Command
! from distutils.util import copy_tree
  
  class install_lib (Command):
--- 5,9 ----
  import sys, os, string
  from distutils.core import Command
! from distutils.dir_util import copy_tree
  
  class install_lib (Command):

Index: sdist.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/sdist.py,v
retrieving revision 1.41
retrieving revision 1.42
diff -C2 -r1.41 -r1.42
*** sdist.py	2000/07/30 01:47:16	1.41
--- sdist.py	2000/08/05 01:31:54	1.42
***************
*** 11,17 ****
  from glob import glob
  from distutils.core import Command
! from distutils.util import \
!      create_tree, remove_tree, newer, write_file, \
!      check_archive_formats
  from distutils.text_file import TextFile
  from distutils.errors import *
--- 11,15 ----
  from glob import glob
  from distutils.core import Command
! from distutils import dir_util, dep_util, file_util, archive_util
  from distutils.text_file import TextFile
  from distutils.errors import *
***************
*** 118,122 ****
                        "on platform %s" % os.name
  
!         bad_format = check_archive_formats (self.formats)
          if bad_format:
              raise DistutilsOptionError, \
--- 116,120 ----
                        "on platform %s" % os.name
  
!         bad_format = archive_util.check_archive_formats (self.formats)
          if bad_format:
              raise DistutilsOptionError, \
***************
*** 196,200 ****
          template_exists = os.path.isfile(self.template)
          if template_exists:
!             template_newer = newer(self.template, self.manifest)
  
          # The contents of the manifest file almost certainly depend on the
--- 194,198 ----
          template_exists = os.path.isfile(self.template)
          if template_exists:
!             template_newer = dep_util.newer(self.template, self.manifest)
  
          # The contents of the manifest file almost certainly depend on the
***************
*** 205,209 ****
          # developer elects to generate a manifest some other way -- then we
          # can't regenerate the manifest, so we don't.)
!         setup_newer = newer(sys.argv[0], self.manifest)
  
          # cases:
--- 203,207 ----
          # developer elects to generate a manifest some other way -- then we
          # can't regenerate the manifest, so we don't.)
!         setup_newer = dep_util.newer(sys.argv[0], self.manifest)
  
          # cases:
***************
*** 369,373 ****
          named by 'self.manifest'.
          """
!         self.execute(write_file,
                       (self.manifest, self.filelist.files),
                       "writing manifest file '%s'" % self.manifest)
--- 367,371 ----
          named by 'self.manifest'.
          """
!         self.execute(file_util.write_file,
                       (self.manifest, self.filelist.files),
                       "writing manifest file '%s'" % self.manifest)
***************
*** 405,410 ****
          # Create all the directories under 'base_dir' necessary to
          # put 'files' there.
!         create_tree (base_dir, files,
!                      verbose=self.verbose, dry_run=self.dry_run)
  
          # And walk over the list of files, either making a hard link (if
--- 403,408 ----
          # Create all the directories under 'base_dir' necessary to
          # put 'files' there.
!         dir_util.create_tree (base_dir, files,
!                               verbose=self.verbose, dry_run=self.dry_run)
  
          # And walk over the list of files, either making a hard link (if
***************
*** 454,458 ****
  
          if not self.keep_tree:
!             remove_tree (base_dir, self.verbose, self.dry_run)
  
      def get_archive_files (self):
--- 452,456 ----
  
          if not self.keep_tree:
!             dir_util.remove_tree (base_dir, self.verbose, self.dry_run)
  
      def get_archive_files (self):



From python-dev@python.org  Sat Aug  5 22:30:02 2000
From: python-dev@python.org (Jack Jansen)
Date: Sat, 5 Aug 2000 14:30:02 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python getargs.c,2.43,2.44
Message-ID: <200008052130.OAA13967@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv10502

Modified Files:
	getargs.c 
Log Message:
Changed H specifier to mean "bitfield", i.e. any value from
-32768..65535 is acceptable. Added B specifier (with values from
-128..255). No L added (which would have completed the set) because l
already accepts any value (and the letter L is taken for quadwords).


Index: getargs.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/getargs.c,v
retrieving revision 2.43
retrieving revision 2.44
diff -C2 -r2.43 -r2.44
*** getargs.c	2000/08/03 18:42:59	2.43
--- getargs.c	2000/08/05 21:29:58	2.44
***************
*** 410,413 ****
--- 410,434 ----
  		}
  	
+ 	case 'B': /* byte sized bitfield - both signed and unsigned values allowed */
+ 		{
+ 			char *p = va_arg(*p_va, char *);
+ 			long ival = PyInt_AsLong(arg);
+ 			if (ival == -1 && PyErr_Occurred())
+ 				return "integer";
+ 			else if (ival < SCHAR_MIN) {
+ 				PyErr_SetString(PyExc_OverflowError,
+ 			      "byte-sized integer bitfield is less than minimum");
+ 				return "integer";
+ 			}
+ 			else if (ival > UCHAR_MAX) {
+ 				PyErr_SetString(PyExc_OverflowError,
+ 			      "byte-sized integer bitfield is greater than maximum");
+ 				return "integer";
+ 			}
+ 			else
+ 				*p = (unsigned char) ival;
+ 			break;
+ 		}
+ 	
  	case 'h': /* signed short int */
  		{
***************
*** 431,435 ****
  		}
  	
! 	case 'H': /* unsigned short int */
  		{
  			unsigned short *p = va_arg(*p_va, unsigned short *);
--- 452,456 ----
  		}
  	
! 	case 'H': /* short int sized bitfield, both signed and unsigned allowed */
  		{
  			unsigned short *p = va_arg(*p_va, unsigned short *);
***************
*** 437,448 ****
  			if (ival == -1 && PyErr_Occurred())
  				return "integer";
! 			else if (ival < 0) {
  				PyErr_SetString(PyExc_OverflowError,
! 			      "unsigned short integer is less than minimum");
  				return "integer";
  			}
  			else if (ival > USHRT_MAX) {
  				PyErr_SetString(PyExc_OverflowError,
! 			      "unsigned short integer is greater than maximum");
  				return "integer";
  			}
--- 458,469 ----
  			if (ival == -1 && PyErr_Occurred())
  				return "integer";
! 			else if (ival < SHRT_MIN) {
  				PyErr_SetString(PyExc_OverflowError,
! 			      "short integer bitfield is less than minimum");
  				return "integer";
  			}
  			else if (ival > USHRT_MAX) {
  				PyErr_SetString(PyExc_OverflowError,
! 			      "short integer bitfield is greater than maximum");
  				return "integer";
  			}
***************
*** 1134,1137 ****
--- 1155,1159 ----
  	
  	case 'b': /* byte -- very short int */
+ 	case 'B': /* byte as bitfield */
  		{
  			(void) va_arg(*p_va, char *);
***************
*** 1145,1149 ****
  		}
  	
! 	case 'H': /* unsigned short int */
  		{
  			(void) va_arg(*p_va, unsigned short *);
--- 1167,1171 ----
  		}
  	
! 	case 'H': /* short int as bitfield */
  		{
  			(void) va_arg(*p_va, unsigned short *);



From python-dev@python.org  Sat Aug  5 22:37:53 2000
From: python-dev@python.org (Thomas Wouters)
Date: Sat, 5 Aug 2000 14:37:53 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python compile.c,2.117,2.118
Message-ID: <200008052137.OAA22126@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv21345

Modified Files:
	compile.c 
Log Message:

Fix some strange indentation and grammar that have been bugging me for
weeks.



Index: compile.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/compile.c,v
retrieving revision 2.117
retrieving revision 2.118
diff -C2 -r2.117 -r2.118
*** compile.c	2000/07/22 18:47:25	2.117
--- compile.c	2000/08/05 21:37:50	2.118
***************
*** 1250,1259 ****
  	if (NCH(n) == 1) {
  		node *sub = CHILD(n, 0); /* subscript */
! 		/* Make it is a simple slice.
! 		   Should have exactly one colon. */
!         if ((TYPE(CHILD(sub, 0)) == COLON
!              || (NCH(sub) > 1 && TYPE(CHILD(sub, 1)) == COLON))
!             && (TYPE(CHILD(sub,NCH(sub)-1)) != sliceop))
! 	{
  			if (assigning == OP_APPLY)
  				op = SLICE;
--- 1250,1258 ----
  	if (NCH(n) == 1) {
  		node *sub = CHILD(n, 0); /* subscript */
! 		/* 'Basic' slice, should have exactly one colon. */
! 		if ((TYPE(CHILD(sub, 0)) == COLON
! 		     || (NCH(sub) > 1 && TYPE(CHILD(sub, 1)) == COLON))
! 		    && (TYPE(CHILD(sub,NCH(sub)-1)) != sliceop))
! 		{
  			if (assigning == OP_APPLY)
  				op = SLICE;



From python-dev@python.org  Sun Aug  6 20:30:10 2000
From: python-dev@python.org (Guido van Rossum)
Date: Sun, 6 Aug 2000 12:30:10 -0700
Subject: [Python-checkins] CVS: python/dist/src/PCbuild python16.wse,1.8.2.1,1.8.2.2
Message-ID: <200008061930.MAA12357@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/PCbuild
In directory slayer.i.sourceforge.net:/tmp/cvs-serv12341

Modified Files:
      Tag: cnri-16-start
	python16.wse 
Log Message:
Adaptation of 2.0 version; needs work.

Index: python16.wse
===================================================================
RCS file: /cvsroot/python/python/dist/src/PCbuild/Attic/python16.wse,v
retrieving revision 1.8.2.1
retrieving revision 1.8.2.2
diff -C2 -r1.8.2.1 -r1.8.2.2
*** python16.wse	2000/08/01 20:30:08	1.8.2.1
--- python16.wse	2000/08/06 19:30:07	1.8.2.2
***************
*** 2,6 ****
  item: Global
    Version=5.0
!   Title=Python 1.6 alpha 2
    Flags=00010100
    Languages=65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
--- 2,6 ----
  item: Global
    Version=5.0
!   Title=Python 1.6 beta 1
    Flags=00010100
    Languages=65 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
***************
*** 19,36 ****
    Variable Name1=_SYS_
    Variable Description1=System directory
!   Variable Default1=C:\WINNT\SYSTEM32
    Variable Flags1=00001001
    Variable Name2=_WISE_
    Variable Description2=WISE root directory
!   Variable Default2=C:\Program Files\Wise
    Variable Flags2=00001001
    Variable Name3=_SRC_
    Variable Description3=Python source directory
!   Variable Default3=D:\src\Python-1.6
    Variable Flags3=00001001
    Variable Name4=_DOC_
    Variable Description4=HTML documentation tree directory
!   Variable Default4=D:\src\Python-1.6\html
    Variable Flags4=00001001
  end
  remarked item: Open/Close INSTALL.LOG
--- 19,40 ----
    Variable Name1=_SYS_
    Variable Description1=System directory
!   Variable Default1=C:\Windows\System
    Variable Flags1=00001001
    Variable Name2=_WISE_
    Variable Description2=WISE root directory
!   Variable Default2=C:\Wise
    Variable Flags2=00001001
    Variable Name3=_SRC_
    Variable Description3=Python source directory
!   Variable Default3=C:\src\Python-1.6
    Variable Flags3=00001001
    Variable Name4=_DOC_
    Variable Description4=HTML documentation tree directory
!   Variable Default4=C:\src\Python-1.6\html
    Variable Flags4=00001001
+   Variable Name5=_TCLMINOR_
+   Variable Description5=Tcl/Tk Minor Version (e.g. the "3" in "8.3.1")
+   Variable Default5=3
+   Variable Flags5=00001000
  end
  remarked item: Open/Close INSTALL.LOG
***************
*** 56,60 ****
  item: Set Variable
    Variable=APPTITLE
!   Value=Python 1.6 alpha 2
  end
  item: Set Variable
--- 60,64 ----
  item: Set Variable
    Variable=APPTITLE
!   Value=Python 1.6 beta 1
  end
  item: Set Variable
***************
*** 88,92 ****
    Direction Variable=DIRECTION
    Display Variable=DISPLAY
!   Bitmap Pathname=C:\Program Files\Wise\DIALOGS\TEMPLATE\WIZARD.BMP
    X Position=9
    Y Position=10
--- 92,96 ----
    Direction Variable=DIRECTION
    Display Variable=DISPLAY
!   Bitmap Pathname=C:\Wise\DIALOGS\TEMPLATE\WIZARD.BMP
    X Position=9
    Y Position=10
***************
*** 912,921 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=.py
    New Value=Python.File
  end
  item: Edit Registry
-   Total Keys=1
    Key=.py
    New Value=text/plain
--- 916,923 ----
***************
*** 923,947 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.File
    New Value=Python File
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.File\shell\open\command
    New Value=%MAINDIR%\python.exe "%%1" %%*
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.File\DefaultIcon
    New Value=%MAINDIR%\Py.ico
  end
  item: Edit Registry
-   Total Keys=1
    Key=.pyw
    New Value=Python.NoConFile
  end
  item: Edit Registry
-   Total Keys=1
    Key=.pyw
    New Value=text/plain
--- 925,944 ----
***************
*** 949,998 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.NoConFile
    New Value=Python File (no console)
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.NoConFile\shell\open\command
    New Value=%MAINDIR%\pythonw.exe "%%1" %%*
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.NoConFile\DefaultIcon
    New Value=%MAINDIR%\Py.ico
  end
  item: Edit Registry
-   Total Keys=1
    Key=.pyc
    New Value=Python.CompiledFile
  end
  item: Edit Registry
-   Total Keys=1
    Key=.pyo
    New Value=Python.CompiledFile
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.CompiledFile
    New Value=Compiled Python File
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.CompiledFile\shell\open\command
    New Value=%MAINDIR%\python.exe "%%1" %%*
  end
  item: Edit Registry
-   Total Keys=1
    Key=Python.CompiledFile\DefaultIcon
    New Value=%MAINDIR%\pyc.ico
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Python\PythonCore\CurrentVersion
    Root=130
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Python\PythonCore\%PY_VERSION%\InstallPath
    New Value=%MAINDIR%
--- 946,985 ----
***************
*** 1000,1004 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Python\PythonCore\%PY_VERSION%\InstallPath\InstallGroup
    New Value=%GROUP%
--- 987,990 ----
***************
*** 1006,1010 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Python\PythonCore\%PY_VERSION%\PythonPath
    New Value=%MAINDIR%\Lib\plat-win;%MAINDIR%\Lib;%MAINDIR%\DLLs;%MAINDIR%\Lib\lib-tk
--- 992,995 ----
***************
*** 1012,1016 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Python\PythonCore\%PY_VERSION%\Dll
    New Value=%_SYSDEST_%\Python16.dll
--- 997,1000 ----
***************
*** 1018,1027 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Python\PythonCore\%PY_VERSION%\Modules
    Root=2
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Microsoft\Windows\CurrentVersion\App Paths\Python.exe
    New Value=%MAINDIR%\Python.exe
--- 1002,1009 ----
***************
*** 1036,1040 ****
  end
  item: Edit Registry
-   Total Keys=1
    Key=Software\Python\PythonCore\%PY_VERSION%\Help\Main Python Documentation
    New Value=%MAINDIR%\Doc\index.html
--- 1018,1021 ----
***************
*** 1049,1053 ****
  end
  item: Include Script
!   Pathname=%_WISE_%\include\uninstal.wse
  end
  item: If/While Statement
--- 1030,1034 ----
  end
  item: Include Script
!   Pathname=C:\Wise\include\uninstal.wse
  end
  item: If/While Statement
***************
*** 1132,1146 ****
  end
  item: Install File
!   Source=%_SRC_%\..\tcl8.2\bin\tcl82.dll
!   Destination=%MAINDIR%\DLLs\tcl82.dll
    Flags=0000000000000010
  end
  item: Install File
!   Source=%_SRC_%\..\tcl8.2\bin\tk82.dll
!   Destination=%MAINDIR%\DLLs\tk82.dll
    Flags=0000000000000010
  end
  item: Install File
!   Source=%_SRC_%\..\tcl8.2\lib\*.*
    Destination=%MAINDIR%\tcl
    Flags=0000000100000010
--- 1113,1127 ----
  end
  item: Install File
!   Source=%_SRC_%\..\tcl\bin\tcl8%_TCLMINOR_%.dll
!   Destination=%MAINDIR%\DLLs\tcl8%_TCLMINOR_%.dll
    Flags=0000000000000010
  end
  item: Install File
!   Source=%_SRC_%\..\tcl\bin\tk8%_TCLMINOR_%.dll
!   Destination=%MAINDIR%\DLLs\tk8%_TCLMINOR_%.dll
    Flags=0000000000000010
  end
  item: Install File
!   Source=%_SRC_%\..\tcl\lib\*.*
    Destination=%MAINDIR%\tcl
    Flags=0000000100000010
***************
*** 1151,1155 ****
    Direction Variable=DIRECTION
    Display Variable=DISPLAY
!   Bitmap Pathname=C:\Program Files\Wise\DIALOGS\TEMPLATE\WIZARD.BMP
    X Position=9
    Y Position=10
--- 1132,1136 ----
    Direction Variable=DIRECTION
    Display Variable=DISPLAY
!   Bitmap Pathname=C:\Wise\DIALOGS\TEMPLATE\WIZARD.BMP
    X Position=9
    Y Position=10



From python-dev@python.org  Sun Aug  6 21:37:27 2000
From: python-dev@python.org (Greg Ward)
Date: Sun, 6 Aug 2000 13:37:27 -0700
Subject: [Python-checkins] CVS: distutils/doc/dist dist.tex,1.19,1.20
Message-ID: <200008062037.NAA24932@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/doc/dist
In directory slayer.i.sourceforge.net:/tmp/cvs-serv24913

Modified Files:
	dist.tex 
Log Message:
Wrote the "Describing extension modules" section.

Index: dist.tex
===================================================================
RCS file: /cvsroot/python/distutils/doc/dist/dist.tex,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -r1.19 -r1.20
*** dist.tex	2000/08/05 00:43:11	1.19
--- dist.tex	2000/08/06 20:37:24	1.20
***************
*** 275,280 ****
  
  
! \subsection{Package directories}
! \label{package-dirs}
  
  The \option{packages} option tells the Distutils to process (build,
--- 275,280 ----
  
  
! \subsection{Listing whole packages}
! \label{listing-packages}
  
  The \option{packages} option tells the Distutils to process (build,
***************
*** 341,346 ****
  layout implies that these two modules can be found in \file{mod1.py} and
  \file{pkg/mod2.py}, and that \file{pkg/\_\_init\_\_.py} exists as well.
! And again, you can override the package/directory layout using the
! \option{package\_dir} option.
  
  
--- 341,346 ----
  layout implies that these two modules can be found in \file{mod1.py} and
  \file{pkg/mod2.py}, and that \file{pkg/\_\_init\_\_.py} exists as well.
! And again, you can override the package/directory correspondence using
! the \option{package\_dir} option.
  
  
***************
*** 348,351 ****
--- 348,540 ----
  \label{sec:describing-extensions}
  
+ Just as writing Python extension modules is a bit more complicated than
+ writing pure Python modules, describing them to the Distutils is a bit
+ more complicated.  Unlike pure modules, it's not enough just to list
+ modules or packages and expect the Distutils to go out and find the
+ right files; you have to specify the extension name, source file(s), and
+ any compile/link requirements (include directories, libraries to link
+ with, etc.).
+ 
+ All of this is done through another keyword argument to
+ \function{setup()}, the \option{extensions} option.  \option{extensions}
+ is just a list of \class{Extension} instances, each of which describes a
+ single extension module.  Suppose your distribution includes a single
+ extension, called \module{foo} and implemented by \file{foo.c}.  If no
+ additional instructions to the compiler/linker are needed, describing
+ this extension is quite simple:
+ \begin{verbatim}
+ Extension("foo", ["foo.c"])
+ \end{verbatim}
+ The \class{Extension} class can be imported from
+ \module{distutils.core}, along with \function{setup()}.  Thus, the setup
+ script for a module distribution that contains only this one extension
+ and nothing else might be:
+ \begin{verbatim}
+ from distutils.core import setup, Extension
+ setup(name = "foo", version = "1.0",
+       extensions = [Extension("foo", ["foo.c"])])
+ \end{verbatim}
+ 
+ The \class{Extension} class (actually, the underlying extension-building
+ machinery implemented by the \command{built\_ext} command) supports a
+ great deal of flexibility in describing Python extensions, which is
+ explained in the following sections.  
+ 
+ 
+ \subsubsection{Extension names and packages}
+ 
+ The first argument to the \class{Extension} constructor is always the
+ name of the extension, including any package names.  For example,
+ \begin{verbatim}
+ Extension("foo", ["src/foo1.c", "src/foo2.c"])
+ \end{verbatim}
+ describes an extension that lives in the root package, while
+ \begin{verbatim}
+ Extension("pkg.foo", ["src/foo1.c", "src/foo2.c"])
+ \end{verbatim}
+ describes the same extension in the \module{pkg} package.  The source
+ files and resulting object code are identical in both cases; the only
+ difference is where in the filesystem (and therefore where in Python's
+ namespace hierarchy) the resulting extension lives.
+ 
+ If you have a number of extensions all in the same package (or all under
+ the same base package), use the \option{ext\_package} keyword argument
+ to \function{setup()}.  For example,
+ \begin{verbatim}
+ setup(...
+       ext_package = "pkg",
+       extensions = [Extension("foo", ["foo.c"]),
+                     Extension("subpkg.bar", ["bar.c"])]
+      )
+ \end{verbatim}
+ will compile \file{foo.c} to the extension \module{pkg.foo}, and
+ \file{bar.c} to \module{pkg.subpkg.bar}.
+ 
+ 
+ \subsubsection{Extension source files}
+ 
+ The second argument to the \class{Extension} constructor is a list of
+ source files.  Since the Distutils currently only support C/C++
+ extensions, these are normally C/C++ source files.  (Be sure to use
+ appropriate extensions to distinguish C++ source files: \file{.cc} and
+ \file{.cpp} seem to be recognized by both Unix and Windows compilers.)
+ 
+ However, you can also include SWIG interface (\file{.i}) files in the
+ list; the \command{build\_ext} command knows how to deal with SWIG
+ extensions: it will run SWIG on the interface file and compile the
+ resulting C/C++ file into your extension.
+ 
+ \XXX{SWIG support is rough around the edges and largely untested;
+   especially SWIG support of C++ extensions!  Explain in more detail
+   here when the interface firms up.}
+ 
+ On some platforms, you can include non-source files that are processed
+ by the compiler and included in your extension.  Currently, this just
+ means Windows resource files for Visual C++.  \XXX{get more detail on
+   this feature from Thomas Heller!}
+ 
+ 
+ \subsubsection{Preprocessor options}
+ 
+ Three optional arguments to \class{Extension} will help if you need to
+ specify include directories to search or preprocessor macros to
+ define/undefine: \code{include\_dirs}, \code{define\_macros}, and
+ \code{undef\_macros}.
+ 
+ For example, if your extension requires header files in the
+ \file{include} directory under your distribution root, use the
+ \code{include\_dirs} option:
+ \begin{verbatim}
+ Extension("foo", ["foo.c"], include_dirs=["include"])
+ \end{verbatim}
+ 
+ You can specify absolute directories there; if you know that your
+ extension will only be built on Unix systems with X11R6 installed to
+ \file{/usr}, you can get away with
+ \begin{verbatim}
+ Extension("foo", ["foo.c"], include_dirs=["/usr/include/X11"])
+ \end{verbatim}
+ You should avoid this sort of non-portable usage if you plan to
+ distribute your code: it's probably better to write your code to include
+ (e.g.) \code{}.
+ 
+ If you need to include header files from some other Python extension,
+ you can take advantage of the fact that the Distutils install extension
+ header files in a consistent way.  For example, the Numerical Python
+ header files are installed (on a standard Unix installation) to
+ \file{/usr/local/include/python1.5/Numerical}.  (The exact location will
+ differ according to your platform and Python installation.)  Since the
+ Python include directory---\file{/usr/local/include/python1.5} in this
+ case---is always included in the search path when building Python
+ extensions, the best approach is to include (e.g.)
+ \code{}.  If you insist on putting the
+ \file{Numerical} include directory right into your header search path,
+ though, you can find that directory using the Distutils
+ \module{sysconfig} module:
+ \begin{verbatim}
+ from distutils.sysconfig import get_python_inc
+ incdir = os.path.join(get_python_inc(plat_specific=1), "Numerical")
+ setup(...,
+       Extension(..., include_dirs=[incdir]))
+ \end{verbatim}
+ Even though this is quite portable---it will work on any Python
+ installation, regardless of platform---it's probably easier to just
+ write your C code in the sensible way.
+ 
+ You can define and undefine pre-processor macros with the
+ \code{define\_macros} and \code{undef\_macros} options.
+ \code{define\_macros} takes a list of \code{(name, value)} tuples, where
+ \code{name} is the name of the macro to define (a string) and
+ \code{value} is its value: either a string or \code{None}.  (Defining a
+ macro \code{FOO} to \code{None} is the equivalent of a bare
+ \code{\#define FOO} in your C source: with most compilers, this sets
+ \code{FOO} to the string \code{1}.)  \code{undef\_macros} is just
+ a list of macros to undefine.
+ 
+ For example:
+ \begin{verbatim}
+ Extension(...,
+           define_macros=[('NDEBUG', '1')],
+                          ('HAVE_STRFTIME', None),
+           undef_macros=['HAVE_FOO', 'HAVE_BAR'])
+ \end{verbatim}
+ is the equivalent of having this at the top of every C source file:
+ \begin{verbatim}
+ #define NDEBUG 1
+ #define HAVE_STRFTIME
+ #undef HAVE_FOO
+ #undef HAVE_BAR
+ \end{verbatim}
+ 
+ 
+ \subsubsection{Library options}
+ 
+ You can also specify the libraries to link against when building your
+ extension, and the directories to search for those libraries.  The
+ \code{libraries} option is a list of libraries to link against,
+ \code{library\_dirs} is a list of directories to search for libraries at 
+ link-time, and \code{runtime\_library\_dirs} is a list of directories to 
+ search for shared (dynamically loaded) libraries at run-time.
+ 
+ For example, if you need to link against libraries known to be in the
+ standard library search path on target systems
+ \begin{verbatim}
+ Extension(...,
+           libraries=["gdbm", "readline"])
+ \end{verbatim}
+ 
+ If you need to link with libraries in a non-standard location, you'll
+ have to include the location in \code{library\_dirs}:
+ \begin{verbatim}
+ Extension(...,
+           library_dirs=["/usr/X11R6/lib"],
+           libraries=["X11", "Xt"])
+ \end{verbatim}
+ (Again, this sort of non-portable construct should be avoided if you
+ intend to distribute your code.)
+ 
+ \XXX{still undocumented: extra\_objects, extra\_compile\_args,
+   extra\_link\_args, export\_symbols---none of which are frequently
+   needed, some of which might be completely unnecessary!}
  
  



From python-dev@python.org  Sun Aug  6 22:18:38 2000
From: python-dev@python.org (Jack Jansen)
Date: Sun, 6 Aug 2000 14:18:38 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib macpath.py,1.23,1.24
Message-ID: <200008062118.OAA03542@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv3425

Modified Files:
	macpath.py 
Log Message:
Rewrite of normpath() by Corran Webster, so trailing :s are removed
(except for : and volume:, where they are needed).


Index: macpath.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/macpath.py,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -r1.23 -r1.24
*** macpath.py	2000/07/12 16:55:57	1.23
--- macpath.py	2000/08/06 21:18:35	1.24
***************
*** 180,216 ****
  
  def normpath(s):
!     """Normalize a pathname: get rid of '::' sequences by backing up,
!     e.g., 'foo:bar::bletch' becomes 'foo:bletch'.
!     Raise the exception norm_error below if backing up is impossible,
!     e.g., for '::foo'."""
!     # XXX The Unix version doesn't raise an exception but simply
!     # returns an unnormalized path.  Should do so here too.
  
!     import string
!     if ':' not in s:
!         return ':' + s
!     f = string.splitfields(s, ':')
!     pre = []
!     post = []
!     if not f[0]:
!         pre = f[:1]
!         f = f[1:]
!     if not f[len(f)-1]:
!         post = f[-1:]
!         f = f[:-1]
!     res = []
!     for seg in f:
!         if seg:
!             res.append(seg)
          else:
!             if not res: raise norm_error, 'path starts with ::'
!             del res[len(res)-1]
!             if not (pre or res):
!                 raise norm_error, 'path starts with volume::'
!     if pre: res = pre + res
!     if post: res = res + post
!     s = res[0]
!     for seg in res[1:]:
!         s = s + ':' + seg
      return s
  
--- 180,207 ----
  
  def normpath(s):
!     """Normalize a pathname.  Will return the same result for
!     equivalent paths."""
  
!     if ":" not in s:
!         return ":"+s
! 
!     comps = string.splitfields(s, ":")
!     i = 1
!     while i < len(comps)-1:
!         if comps[i] == "" and comps[i-1] != "":
!             if i > 1:
!                 del comps[i-1:i+1]
!                 i = i-1
!             else:
!                 # best way to handle this is to raise an exception
!                 raise norm_error, 'Cannot use :: immedeately after volume name'
          else:
!             i = i + 1
! 
!     s = string.join(comps, ":")
! 
!     # remove trailing ":" except for ":" and "Volume:"
!     if s[-1] == ":" and len(comps) > 2 and s != ":"*len(s):
!         s = s[:-1]
      return s
  



From python-dev@python.org  Sun Aug  6 23:45:33 2000
From: python-dev@python.org (Vladimir Marangozov)
Date: Sun, 6 Aug 2000 15:45:33 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_gc.py,1.2,1.3
Message-ID: <200008062245.PAA27816@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25095/Lib/test

Modified Files:
	test_gc.py 
Log Message:
Neil Schemenauer: GC enable(), disable(), isenabled() interface.

Small stylistic changes by VM:
- is_enabled() -> isenabled()
- static ... Py_ -> static ... gc_



Index: test_gc.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_gc.py,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** test_gc.py	2000/06/30 15:13:14	1.2
--- test_gc.py	2000/08/06 22:45:31	1.3
***************
*** 76,79 ****
--- 76,84 ----
  
  def test_all():
+ 
+     enabled = gc.isenabled()
+     gc.disable()
+     assert not gc.isenabled()
+ 
      test_list()
      test_dict()
***************
*** 84,87 ****
--- 89,99 ----
      test_finalizer()
      test_function()
+ 
+     # test gc.enable() even if GC is disabled by default
+     gc.enable()
+     assert gc.isenabled()
+     if not enabled:
+         gc.disable()
+ 
  
  test_all()



From python-dev@python.org  Sun Aug  6 23:45:33 2000
From: python-dev@python.org (Vladimir Marangozov)
Date: Sun, 6 Aug 2000 15:45:33 -0700
Subject: [Python-checkins] CVS: python/dist/src/Modules gcmodule.c,2.6,2.7
Message-ID: <200008062245.PAA27815@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25095/Modules

Modified Files:
	gcmodule.c 
Log Message:
Neil Schemenauer: GC enable(), disable(), isenabled() interface.

Small stylistic changes by VM:
- is_enabled() -> isenabled()
- static ... Py_ -> static ... gc_



Index: gcmodule.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/gcmodule.c,v
retrieving revision 2.6
retrieving revision 2.7
diff -C2 -r2.6 -r2.7
*** gcmodule.c	2000/07/12 05:18:36	2.6
--- gcmodule.c	2000/08/06 22:45:30	2.7
***************
*** 40,43 ****
--- 40,44 ----
  
  /* collection frequencies, XXX tune these */
+ static int enabled = 1; /* automatic collection enabled? */
  static int threshold0 = 100; /* net new containers before collection */
  static int threshold1 = 10;  /* generation0 collections before collecting 1 */
***************
*** 493,497 ****
  	}
  #endif
! 	if (threshold0 && allocated > threshold0 && !collecting) {
  		collecting++;
  		collect_generations();
--- 494,498 ----
  	}
  #endif
! 	if (allocated > threshold0 && enabled && threshold0 && !collecting) {
  		collecting++;
  		collect_generations();
***************
*** 517,522 ****
  }
  
  
! static char collect__doc__[] =
  "collect() -> n\n"
  "\n"
--- 518,576 ----
  }
  
+ static char gc_enable__doc__[] =
+ "enable() -> None\n"
+ "\n"
+ "Enable automatic garbage collection.\n"
+ ;
+ 
+ static PyObject *
+ gc_enable(PyObject *self, PyObject *args)
+ {
+ 
+ 	if (!PyArg_ParseTuple(args, ":enable"))	/* check no args */
+ 		return NULL;
+ 
+ 	enabled = 1;
+ 
+ 	Py_INCREF(Py_None);
+ 	return Py_None;
+ }
+ 
+ static char gc_disable__doc__[] =
+ "disable() -> None\n"
+ "\n"
+ "Disable automatic garbage collection.\n"
+ ;
+ 
+ static PyObject *
+ gc_disable(PyObject *self, PyObject *args)
+ {
+ 
+ 	if (!PyArg_ParseTuple(args, ":disable"))	/* check no args */
+ 		return NULL;
+ 
+ 	enabled = 0;
+ 
+ 	Py_INCREF(Py_None);
+ 	return Py_None;
+ }
+ 
+ static char gc_isenabled__doc__[] =
+ "isenabled() -> status\n"
+ "\n"
+ "Returns true if automatic garbage collection is enabled.\n"
+ ;
+ 
+ static PyObject *
+ gc_isenabled(PyObject *self, PyObject *args)
+ {
+ 
+ 	if (!PyArg_ParseTuple(args, ":isenabled"))	/* check no args */
+ 		return NULL;
+ 
+ 	return Py_BuildValue("i", enabled);
+ }
  
! static char gc_collect__doc__[] =
  "collect() -> n\n"
  "\n"
***************
*** 525,529 ****
  
  static PyObject *
! Py_collect(PyObject *self, PyObject *args)
  {
  	long n;
--- 579,583 ----
  
  static PyObject *
! gc_collect(PyObject *self, PyObject *args)
  {
  	long n;
***************
*** 540,544 ****
  }
  
! static char set_debug__doc__[] = 
  "set_debug(flags) -> None\n"
  "\n"
--- 594,598 ----
  }
  
! static char gc_set_debug__doc__[] = 
  "set_debug(flags) -> None\n"
  "\n"
***************
*** 557,561 ****
  
  static PyObject *
! Py_set_debug(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, "l:get_debug", &debug))
--- 611,615 ----
  
  static PyObject *
! gc_set_debug(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, "l:get_debug", &debug))
***************
*** 566,570 ****
  }
  
! static char get_debug__doc__[] = 
  "get_debug() -> flags\n"
  "\n"
--- 620,624 ----
  }
  
! static char gc_get_debug__doc__[] = 
  "get_debug() -> flags\n"
  "\n"
***************
*** 573,577 ****
  
  static PyObject *
! Py_get_debug(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, ":get_debug"))	/* no args */
--- 627,631 ----
  
  static PyObject *
! gc_get_debug(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, ":get_debug"))	/* no args */
***************
*** 581,585 ****
  }
  
! static char set_thresh__doc__[] =
  "set_threshold(threshold0, [threhold1, threshold2]) -> None\n"
  "\n"
--- 635,639 ----
  }
  
! static char gc_set_thresh__doc__[] =
  "set_threshold(threshold0, [threhold1, threshold2]) -> None\n"
  "\n"
***************
*** 589,593 ****
  
  static PyObject *
! Py_set_thresh(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, "i|ii:set_threshold", &threshold0, 
--- 643,647 ----
  
  static PyObject *
! gc_set_thresh(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, "i|ii:set_threshold", &threshold0, 
***************
*** 599,603 ****
  }
  
! static char get_thresh__doc__[] =
  "get_threshold() -> (threshold0, threshold1, threshold2)\n"
  "\n"
--- 653,657 ----
  }
  
! static char gc_get_thresh__doc__[] =
  "get_threshold() -> (threshold0, threshold1, threshold2)\n"
  "\n"
***************
*** 606,610 ****
  
  static PyObject *
! Py_get_thresh(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, ":get_threshold"))	/* no args */
--- 660,664 ----
  
  static PyObject *
! gc_get_thresh(PyObject *self, PyObject *args)
  {
  	if (!PyArg_ParseTuple(args, ":get_threshold"))	/* no args */
***************
*** 618,621 ****
--- 672,678 ----
  "This module provides access to the garbage collector for reference cycles.\n"
  "\n"
+ "enable() -- Enable automatic garbage collection.\n"
+ "disable() -- Disable automatic garbage collection.\n"
+ "isenabled() -- Returns true if automatic collection is enabled.\n"
  "collect() -- Do a full collection right now.\n"
  "set_debug() -- Set debugging flags.\n"
***************
*** 626,634 ****
  
  static PyMethodDef GcMethods[] = {
! 	{"set_debug",		Py_set_debug,  METH_VARARGS, set_debug__doc__},
! 	{"get_debug",		Py_get_debug,  METH_VARARGS, get_debug__doc__},
! 	{"set_threshold",	Py_set_thresh, METH_VARARGS, set_thresh__doc__},
! 	{"get_threshold",	Py_get_thresh, METH_VARARGS, get_thresh__doc__},
! 	{"collect",		Py_collect,    METH_VARARGS, collect__doc__},
  	{NULL,	NULL}		/* Sentinel */
  };
--- 683,694 ----
  
  static PyMethodDef GcMethods[] = {
! 	{"enable",	   gc_enable,     METH_VARARGS, gc_enable__doc__},
! 	{"disable",	   gc_disable,    METH_VARARGS, gc_disable__doc__},
! 	{"isenabled",	   gc_isenabled,  METH_VARARGS, gc_isenabled__doc__},
! 	{"set_debug",	   gc_set_debug,  METH_VARARGS, gc_set_debug__doc__},
! 	{"get_debug",	   gc_get_debug,  METH_VARARGS, gc_get_debug__doc__},
! 	{"set_threshold",  gc_set_thresh, METH_VARARGS, gc_set_thresh__doc__},
! 	{"get_threshold",  gc_get_thresh, METH_VARARGS, gc_get_thresh__doc__},
! 	{"collect",	   gc_collect,    METH_VARARGS, gc_collect__doc__},
  	{NULL,	NULL}		/* Sentinel */
  };



From python-dev@python.org  Sun Aug  6 23:45:33 2000
From: python-dev@python.org (Vladimir Marangozov)
Date: Sun, 6 Aug 2000 15:45:33 -0700
Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libgc.tex,1.1,1.2
Message-ID: <200008062245.PAA27821@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Doc/lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25095/Doc/lib

Modified Files:
	libgc.tex 
Log Message:
Neil Schemenauer: GC enable(), disable(), isenabled() interface.

Small stylistic changes by VM:
- is_enabled() -> isenabled()
- static ... Py_ -> static ... gc_



Index: libgc.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libgc.tex,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -r1.1 -r1.2
*** libgc.tex	2000/07/12 04:22:53	1.1
--- libgc.tex	2000/08/06 22:45:31	1.2
***************
*** 6,20 ****
  \sectionauthor{Neil Schemenauer}{nascheme@enme.ucalgary.ca}
  
! This module provides an interface to the optional garbage collector.
! It provides the ability to disable the collector, tune the collection
  frequency, and set debugging options.  It also provides access to
! unreachable objects that the collector found but cannot free.  Since
! the collector supplements the reference counting already used in
! Python, you can disable the collector if you are sure your program
! does not create reference cycles.  The collector can be disabled by
! calling \code{gc.set_threshold(0)}.  To debug a leaking program call
  \code{gc.set_debug(gc.DEBUG_LEAK)}.
  
  The \module{gc} module provides the following functions:
  
  \begin{funcdesc}{collect}{}
--- 6,32 ----
  \sectionauthor{Neil Schemenauer}{nascheme@enme.ucalgary.ca}
  
! This module provides an interface to the optional garbage collector.  It
! provides the ability to disable the collector, tune the collection
  frequency, and set debugging options.  It also provides access to
! unreachable objects that the collector found but cannot free.  Since the
! collector supplements the reference counting already used in Python, you
! can disable the collector if you are sure your program does not create
! reference cycles.  Automatic collection can be disabled by calling
! \code{gc.disable()}.  To debug a leaking program call
  \code{gc.set_debug(gc.DEBUG_LEAK)}.
  
  The \module{gc} module provides the following functions:
+ 
+ \begin{funcdesc}{enable}{}
+ Enable automatic garbage collection.
+ \end{funcdesc}
+ 
+ \begin{funcdesc}{disable}{}
+ Disable automatic garbage collection.
+ \end{funcdesc}
+ 
+ \begin{funcdesc}{isenabled}{}
+ Returns true if automatic collection is enabled.
+ \end{funcdesc}
  
  \begin{funcdesc}{collect}{}



From python-dev@python.org  Mon Aug  7 01:45:53 2000
From: python-dev@python.org (Greg Ward)
Date: Sun, 6 Aug 2000 17:45:53 -0700
Subject: [Python-checkins] CVS: distutils/distutils fancy_getopt.py,1.14,1.15
Message-ID: <200008070045.RAA13922@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils
In directory slayer.i.sourceforge.net:/tmp/cvs-serv13910

Modified Files:
	fancy_getopt.py 
Log Message:
Fix so we clear or reinitialize various data structures before populating
(allows the same FancyGetopt object to be used multiple times with different
option tables).

Index: fancy_getopt.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/fancy_getopt.py,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -r1.14 -r1.15
*** fancy_getopt.py	2000/06/08 00:35:33	1.14
--- fancy_getopt.py	2000/08/07 00:45:51	1.15
***************
*** 94,97 ****
--- 94,98 ----
  
      def _build_index (self):
+         self.option_index.clear()
          for option in self.option_table:
              self.option_index[option[0]] = option
***************
*** 153,156 ****
--- 154,161 ----
             the option table.  Called by 'getopt()' before it can do
             anything worthwhile."""
+ 
+         self.long_opts = []
+         self.short_opts = []
+         self.short2long.clear()
  
          for option in self.option_table:



From python-dev@python.org  Mon Aug  7 01:48:06 2000
From: python-dev@python.org (Greg Ward)
Date: Sun, 6 Aug 2000 17:48:06 -0700
Subject: [Python-checkins] CVS: distutils/distutils/command install.py,1.40,1.41
Message-ID: <200008070048.RAA14090@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils/command
In directory slayer.i.sourceforge.net:/tmp/cvs-serv14074

Modified Files:
	install.py 
Log Message:
Fix so the 'install_libbase' directory -- where .pth files are installed -- 
participates in the "--root" hack, ie. it also has a new root directory
hacked on at the very last minute (essential if the .pth file is to be
included in an RPM or other smart installer!).

Index: install.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/command/install.py,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -r1.40 -r1.41
*** install.py	2000/08/05 01:31:54	1.40
--- install.py	2000/08/07 00:48:04	1.41
***************
*** 274,278 ****
          # dirs relative to it.
          if self.root is not None:
!             for name in ('lib', 'purelib', 'platlib',
                           'scripts', 'data', 'headers'):
                  attr = "install_" + name
--- 274,278 ----
          # dirs relative to it.
          if self.root is not None:
!             for name in ('libbase', 'lib', 'purelib', 'platlib',
                           'scripts', 'data', 'headers'):
                  attr = "install_" + name



From python-dev@python.org  Mon Aug  7 07:34:49 2000
From: python-dev@python.org (Moshe Zadka)
Date: Sun, 6 Aug 2000 23:34:49 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python ceval.c,2.187,2.188
Message-ID: <200008070634.XAA12685@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv30715/Python

Modified Files:
	ceval.c 
Log Message:
Initialized opcode and oparg to silence a gcc -Wall warning.


Index: ceval.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/ceval.c,v
retrieving revision 2.187
retrieving revision 2.188
diff -C2 -r2.187 -r2.188
*** ceval.c	2000/07/25 12:56:38	2.187
--- ceval.c	2000/08/07 06:34:45	2.188
***************
*** 316,321 ****
  #endif
  	register unsigned char *next_instr;
! 	register int opcode;	/* Current opcode */
! 	register int oparg;	/* Current opcode argument, if any */
  	register PyObject **stack_pointer;
  	register enum why_code why; /* Reason for block stack unwind */
--- 316,321 ----
  #endif
  	register unsigned char *next_instr;
! 	register int opcode=0;	/* Current opcode */
! 	register int oparg=0;	/* Current opcode argument, if any */
  	register PyObject **stack_pointer;
  	register enum why_code why; /* Reason for block stack unwind */



From python-dev@python.org  Mon Aug  7 13:40:03 2000
From: python-dev@python.org (Thomas Wouters)
Date: Mon, 7 Aug 2000 05:40:03 -0700
Subject: [Python-checkins] CVS: python/nondist/peps pep-0203.txt,1.3,1.4
Message-ID: <200008071240.FAA02832@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/peps
In directory slayer.i.sourceforge.net:/tmp/cvs-serv29726

Modified Files:
	pep-0203.txt 
Log Message:

Complete rewrite of the PEP, discarding the previous long explanation about
augmented assignment. Kept as short as possible, but might still be
considered wordy :-)



Index: pep-0203.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/peps/pep-0203.txt,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** pep-0203.txt	2000/07/16 16:07:29	1.3
--- pep-0203.txt	2000/08/07 12:40:00	1.4
***************
*** 4,11 ****
  Owner: thomas@xs4all.net (Thomas Wouters)
  Python-Version: 2.0
! Status: Incomplete
  
  
- 
  Introduction
  
--- 4,10 ----
  Owner: thomas@xs4all.net (Thomas Wouters)
  Python-Version: 2.0
! Status: Draft
  
  
  Introduction
  
***************
*** 20,150 ****
  
  
! 
! The Origin of Augmented Assignment
  
!     Augmented assignment refers to binary operators that combine two
!     existing operators: the assignment operator, and one of the binary
!     operators. Its origins lie in other programming languages, most
!     notably `C', where it was defined for performance reasons. They
!     are meant to replace the repetetive syntax of, for instance,
!     adding the number '1' to a variable:
!     
!       x = x + 1;
!       
!     with an expression that is shorter, less error-prone and easier to
!     optimize (by the compiler):
!     
!       x += 1;
!       
!     The same goes for all other binary operands, resulting in the
!     following augmented assignment operator list, based on Python's
!     current binary operator list:
! 
!       +=, -=, /=, *=, %=, **=, >>=, <<=, &=, |=, ^=
!     
!     See the documentation of each operator on what they do.
! 
!      
! 
! Augmented Assignment in Python
! 
!     The traditional reasons for augmented assignment, readability and
!     optimization, are not as obvious in Python, for several reasons.
!     
!      - Numbers are immutable, they cannot be changed. In other
!        programming languages, a variable holds a value, and altering
!        the variable changes the value it holds. In Python, variables
!        hold `references' to values, and altering an immutable value
!        means changing the variable, not what it points to.
! 
!      - Assignment is a different operation in Python. In most
!        languages, variables are containers, and assignment copies a
!        value into that container. In Python, assignment binds a value
!        to a name, it does not copy the value into a new storage space.
!        
!      - The augmented assignment operators map fairly directly into the
!        underlying hardware. Python does not deal directly with the
!        hardware it runs on, so this `natural inclusion' does not make
!        sense.
! 
!      - The augmented assigment syntax is subtly different in more
!        complex expressions. What to do, for instance, in a case such
!        as this:
!        
!        seq[i:calc(seq, i)] *= r
!        
!        It is unclear whether 'seq' gets indexed once or twice, and
!        whether 'calc' gets called once or twice.
! 
! 
! 
! Normal operators
! 
!     There are, however, good reasons to include augented assignment. 
!     One of these has to do with Python's way of handling operators. In
!     Python, a user defined class can implement one or more of the
!     binary operators by supplying a 'magic' method name. For instance,
!     for a class to support ' + ', the '__add__'
!     method should be defined. This method should return a new object,
!     which is the result of the expression.
!     
!     For the case of ' + ', where 'object' does not
!     have an '__add__' method, the class can define a '__radd__'
!     method, which then should behave exactly as '__add__'. Indeed,
!     '__radd__' is often a different name for the same method.
!     
!     For C extention types, a similar technique is available, through
!     the PyNumberMethods and PySequenceMethods members of the PyType
!     structure.
! 
!     However, the problem with this approach is that the '__add__'
!     method cannot know in what context it is called. It cannot tell
!     whether it should create a new object, or whether it is allowed to
!     modify itself. (As would be the case in 'x = x + 1') As a result,
!     the '__add__' method, and all other such 'magic' methods, should
!     always return a new object. For large objects, this can be very
!     inefficient.
!     
!     This inefficiency is often solved by adding a method that does the
!     appropriate modification 'in-place'. List objects, for instance,
!     have the 'extend' method that behaves exactly as the '+' operator,
!     except the operation is done on the list itself, instead of on a
!     copy.
! 
!     The augmented assignment syntax can support this behaviour
!     explicitly. When the magic method for 'in-place' operation are
!     missing, it can fall back to the normal methods for that
!     operation, maintaining full backward compatibility even when
!     mixing the new syntax with old objects.
! 
!     The other benifit of augmented assignment is readability. After
!     the general concept of augmented assignment is grasped, all the
!     augmented assigment operators instantly become obvious. There is
!     no need for non-obvious and non-standard method names to implement
!     efficient, in-place operations, and there is no need to check the
!     type of an object before operating on it: the augmented assignment
!     will work for all types that implement that basic operation, not
!     merely those that implement the augmented variant.
!     
!     And the last problem with augmented assignment, what to do with
!     indexes and function calls in the expression, can be solved in a
!     very Pythonic manner: if it looks like it's only called once, it
!     *is* only called once. Taking this expression:
!     
!     seq[func(x)] += x
!     
!     The function 'func' is called once, and 'seq' is indexed twice:
!     once to retrieve the value (__getitem__), and once to store it
!     (__setitem__). So the expression can be rewritten as:
      
!     tmp = func(x)
!     seq[tmp] = seq[tmp] + x
      
!     The augmented assignment form of this expression is much more
!     readable.
!     
! 
! 
! 
  
  
--- 19,213 ----
  
  
! Proposed semantics
  
!     The proposed patch that adds augmented assignment to Python
!     introduces the following new operators:
      
!        += -= *= /= %= **= <<= >>= &= ^= |=
      
!     They implement the same operator as their normal binary form, with
!     the exception that the operation is done `in-place' whenever
!     possible.
!     
!     They truly behave as augmented assignment, in that they perform
!     all of the normal load and store operations, in addition to the
!     binary operation they are intended to do. So, given the expression:
!     
!        x += y
!     
!     The object `x' is loaded, then added with 1, and the resulting
!     object is stored back in the original place. The precise action
!     performed on the two arguments depends on the type of `x', and
!     possibly of `y'.
! 
!     The idea behind augmented assignment in Python is that it isn't
!     just an easier way to write the common practice of storing the
!     result of a binary operation in its left-hand operand, but also a
!     way for the left-hand operand in question to know that it should
!     operate 'on itself', rather than creating a modified copy of
!     itself.
! 
!     To make this possible, a number of new `hooks' are added to Python
!     classes and C extention types, which are called when the object in
!     question is used as the left hand side of an augmented assignment
!     operation. If the class or type does not implement the `in-place'
!     hooks, the normal hooks for the particular binary operation are
!     used.
!     
!     So, given an instance object `x', the expression
!     
!         x += y
!     
!     tries to call x.__add_ab__(y), which is the 'in-place' variant of
!     __add__. If __add_ab__ is not present, x.__add__(y) is
!     attempted, and finally y.__radd__(x) if __add__ is missing too. 
!     There is no `right-hand-side' variant of __add_ab__, because that
!     would require for `y' to know how to in-place modify `x', which is
!     an unsafe assumption. The __add_ab__ hook should behave exactly
!     like __add__, returning the result of the operation (which could
!     be `self') which is to be stored in the variable `x'.
!  
!     For C extention types, the `hooks' are members of the
!     PyNumberMethods and PySequenceMethods structures, and are called
!     in exactly the same manner as the existing non-inplace operations,
!     including argument coercion. C methods should also take care to
!     return a new reference to the result object, whether it's the same
!     object or a new one. So if the original object is returned, it
!     should be INCREF()'d appropriately.
! 
! 
! New methods
! 
!     The proposed implementation adds the following 11 possible `hooks'
!     which Python classes can implement to overload the augmented
!     assignment operations:
!     
!         __add_ab__
!         __sub_ab__
!         __mul_ab__
!         __div_ab__
!         __mod_ab__
!         __pow_ab__
!         __lshift_ab__
!         __rshift_ab__
!         __and_ab__
!         __xor_ab__
!         __or_ab__
!     
!     The `__add_ab__' name is one proposed by Guido[1], and stands for `and
!     becomes'. Other proposed names include '__iadd__', `__add_in__'
!     `__inplace_add__'
! 
!     For C extention types, the following struct members are added:
!     
!     To PyNumberMethods:
!         binaryfunc nb_inplace_add;
!         binaryfunc nb_inplace_subtract;
!         binaryfunc nb_inplace_multiply;
!         binaryfunc nb_inplace_divide;
!         binaryfunc nb_inplace_remainder;
!         binaryfunc nb_inplace_power;
!         binaryfunc nb_inplace_lshift;
!         binaryfunc nb_inplace_rshift;
!         binaryfunc nb_inplace_and;
!         binaryfunc nb_inplace_xor;
!         binaryfunc nb_inplace_or;
! 
!     To PySequenceMethods:
!         binaryfunc sq_inplace_concat;
!         intargfunc sq_inplace_repeat;
! 
!     In order to keep binary compatibility, the tp_flags TypeObject
!     member is used to determine whether the TypeObject in question has
!     allocated room for these slots. Until a clean break in binary
!     compatibility is made (which may or may not happen before 2.0)
!     code that wants to use one of the new struct members must first
!     check that they are available with the 'PyType_HasFeature()' macro:
!     
!     if (PyType_HasFeature(x->ob_type, Py_TPFLAGS_HAVE_INPLACE_OPS) &&
!         x->ob_type->tp_as_number && x->ob_type->tp_as_number->nb_inplace_add) {
!             /* ... */
! 
!     This check must be made even before testing the method slots for
!     NULL values! The macro only tests whether the slots are available,
!     not whether they are filled with methods or not.
! 
! 
! Implementation
! 
!     The current implementation of augmented assignment[2] adds, in
!     addition to the methods and slots alread covered, 13 new bytecodes
!     and 13 new API functions.
!     
!     The API functions are simply in-place versions of the current
!     binary-operation API functions:
!     
!         PyNumber_InPlaceAdd(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceSubtract(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceMultiply(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceDivide(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceRemainder(PyObject *o1, PyObject *o2);
!         PyNumber_InPlacePower(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceLshift(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceRshift(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceAnd(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceXor(PyObject *o1, PyObject *o2);
!         PyNumber_InPlaceOr(PyObject *o1, PyObject *o2);
!         PySequence_InPlaceConcat(PyObject *o1, PyObject *o2);
!         PySequence_InPlaceRepeat(PyObject *o, int count);
! 
!     They call either the Python class hooks (if either of the objects
!     is a Python class instance) or the C type's number or sequence
!     methods.
! 
!     The new bytecodes are:
!         INPLACE_ADD
!         INPLACE_SUBTRACT
!         INPLACE_MULTIPLY
!         INPLACE_DIVIDE
!         INPLACE_REMAINDER
!         INPLACE_POWER
!         INPLACE_LEFTSHIFT
!         INPLACE_RIGHTSHIFT
!         INPLACE_AND
!         INPLACE_XOR
!         INPLACE_OR
!         ROT_FOUR
!         DUP_TOPX
!     
!     The INPLACE_* bytecodes mirror the BINARY_* bytecodes, except that
!     they are implemented as calls to the 'InPlace' API functions. The
!     other two bytecodes are 'utility' bytecodes: ROT_FOUR behaves like
!     ROT_THREE except that the four topmost stack items are rotated.
!     
!     DUP_TOPX is a bytecode that takes a single argument, which should
!     be an integer between 1 and 5 (inclusive) which is the number of
!     items to duplicate in one block. Given a stack like this (where
!     the left side of the list is the 'top' of the stack):
! 
!         [a, b, c, d, e, f, g]
!     
!     "DUP_TOPX 3" would duplicate the top 3 items, resulting in this
!     stack:
!     
!         [a, b, c, d, e, f, g, e, f, g]
! 
!     DUP_TOPX with an argument of 1 is the same as DUP_TOP. The limit
!     of 5 is purely an implementation limit. The implementation of
!     augmented assignment requires only DUP_TOPX with an argument of 2
!     and 3, and could do without this new opcode at the cost of a fair
!     number of DUP_TOP and ROT_*.
! 
! 
! Copyright
! 
!     This document has been placed in the public domain.
! 
! 
! References
! 
!     [1] http://www.python.org/pipermail/python-list/2000-June/059556.html
!     [2]
! http://sourceforge.net/patch?func=detailpatch&patch_id=100699&group_id=5470
  
  



From python-dev@python.org  Mon Aug  7 18:04:31 2000
From: python-dev@python.org (Jeremy Hylton)
Date: Mon, 7 Aug 2000 10:04:31 -0700
Subject: [Python-checkins] CVS: python/nondist/peps pep-0200.txt,1.6,1.7
Message-ID: <200008071704.KAA12560@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/peps
In directory slayer.i.sourceforge.net:/tmp/cvs-serv11993

Modified Files:
	pep-0200.txt 
Log Message:
some notes about test cases
couple of more small action items


Index: pep-0200.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/peps/pep-0200.txt,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** pep-0200.txt	2000/07/27 03:03:39	1.6
--- pep-0200.txt	2000/08/07 17:04:27	1.7
***************
*** 84,91 ****
      to fail, they serve no useful purpose.
  
!     The current test suite runs correctly on my Linux box (July 26).
!     Heard reports that test_fork1 fails on some Linux boxes and that
!     test_winreg and test_winreg32 fail on Windows.
! 
  Open items -- should be done/fixed
  
--- 84,97 ----
      to fail, they serve no useful purpose.
  
!     test case         platform   R B    date reported   note
!     test_mmap          Win32     X X    July 26, 2000
!         [believe that was fixed by Mark H.]
!     test_winreg        Win32     X X    July 26, 2000
!     test_winreg2       Win32     X X    July 26, 2000
!     test_popen2        Win32     X X    July 26, 2000   skipped
!         [believe this was fix by /F]
!     test_fork1         Linux     X      July 26, 2000   just SMP?  
!         [no clue; there are probably two bugs here]
!   
  Open items -- should be done/fixed
  
***************
*** 129,132 ****
--- 135,144 ----
  
  Open: proposed but not accepted or declined
+ 
+     * Fix xrange printing behavior
+ 
+     * Tim O'Malley's cookie module -- but need different license
+ 
+     * test harness for C code - Trent Mick
  
      * List comprehensions - Tim Peters?



From python-dev@python.org  Mon Aug  7 18:33:41 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Mon, 7 Aug 2000 10:33:41 -0700
Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.32,2.33
Message-ID: <200008071733.KAA12082@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv10415/Modules

Modified Files:
	_sre.c 
Log Message:


+ if USE_STACKCHECK is defined, use PyOS_CheckStack to look
  for excessive recursion.

Index: _sre.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v
retrieving revision 2.32
retrieving revision 2.33
diff -C2 -r2.32 -r2.33
*** _sre.c	2000/08/03 16:29:50	2.32
--- _sre.c	2000/08/07 17:33:38	2.33
***************
*** 59,63 ****
--- 59,65 ----
  
  /* prevent run-away recursion (bad patterns on long strings) */
+ #if !defined(USE_STACKCHECK)
  #define USE_RECURSION_LIMIT 10000
+ #endif
  
  /* enables fast searching */
***************
*** 527,530 ****
--- 529,537 ----
  
      TRACE(("%8d: enter %d\n", PTR(ptr), level));
+ 
+ #if defined(USE_STACKCHECK)
+     if (level % 10 == 0 && PyOS_CheckStack()) {
+         return SRE_ERROR_RECURSION_LIMIT;
+ #endif
  
  #if defined(USE_RECURSION_LIMIT)



From python-dev@python.org  Mon Aug  7 20:07:54 2000
From: python-dev@python.org (Guido van Rossum)
Date: Mon, 7 Aug 2000 12:07:54 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects object.c,2.70.2.1,2.70.2.2
Message-ID: <200008071907.MAA20832@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv20741

Modified Files:
      Tag: cnri-16-start
	object.c 
Log Message:
In get_inprogress_dict(), there's no need to call PyErr_Clear() when
PyDict_GetItem() fails -- since this function never sets an exception.

The PyErr_Clear() was masking an exception in the parser which caused
a core dump.


Index: object.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/object.c,v
retrieving revision 2.70.2.1
retrieving revision 2.70.2.2
diff -C2 -r2.70.2.1 -r2.70.2.2
*** object.c	2000/08/03 16:48:51	2.70.2.1
--- object.c	2000/08/07 19:07:51	2.70.2.2
***************
*** 312,316 ****
  	inprogress = PyDict_GetItem(tstate_dict, _PyCompareState_Key); 
  	if (inprogress == NULL) {
- 		PyErr_Clear();
  		inprogress = PyDict_New();
  		if (inprogress == NULL)
--- 312,315 ----



From python-dev@python.org  Mon Aug  7 20:11:43 2000
From: python-dev@python.org (Guido van Rossum)
Date: Mon, 7 Aug 2000 12:11:43 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects object.c,2.70.2.2,2.70.2.3
Message-ID: <200008071911.MAA22407@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv22382

Modified Files:
      Tag: cnri-16-start
	object.c 
Log Message:
As I compared the 1.6 code for get_inprogress_dict() to 2.0, I found
another difference: a memory leak.  Plug it.


Index: object.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/object.c,v
retrieving revision 2.70.2.2
retrieving revision 2.70.2.3
diff -C2 -r2.70.2.2 -r2.70.2.3
*** object.c	2000/08/07 19:07:51	2.70.2.2
--- object.c	2000/08/07 19:11:41	2.70.2.3
***************
*** 320,323 ****
--- 320,324 ----
  		    return NULL;
  		}
+ 		Py_DECREF(inprogress);
  	}
  	return inprogress;



From python-dev@python.org  Mon Aug  7 20:15:42 2000
From: python-dev@python.org (Guido van Rossum)
Date: Mon, 7 Aug 2000 12:15:42 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python compile.c,2.108.2.1,2.108.2.2
Message-ID: <200008071915.MAA24158@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv24122

Modified Files:
      Tag: cnri-16-start
	compile.c 
Log Message:
When returning an error from jcompile() (which is passed through by
PyNode_Compile()), make sure that an exception is actually set --
otherwise someone stomped on our error.


Index: compile.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/compile.c,v
retrieving revision 2.108.2.1
retrieving revision 2.108.2.2
diff -C2 -r2.108.2.1 -r2.108.2.2
*** compile.c	2000/08/03 16:50:35	2.108.2.1
--- compile.c	2000/08/07 19:15:40	2.108.2.2
***************
*** 3487,3490 ****
--- 3487,3498 ----
  		Py_XDECREF(name);
  	}
+ 	else if (!PyErr_Occurred()) {
+ 		/* This could happen if someone called PyErr_Clear() after an
+ 		   error was reported above.  That's not supposed to happen,
+ 		   but I just plugged one case and I'm not sure there can't be
+ 		   others.  In that case, raise SystemError so that at least
+ 		   it gets reported instead dumping core. */
+ 		PyErr_SetString(PyExc_SystemError, "lost syntax error");
+ 	}
  	com_free(&sc);
  	return co;



From python-dev@python.org  Mon Aug  7 20:18:29 2000
From: python-dev@python.org (Guido van Rossum)
Date: Mon, 7 Aug 2000 12:18:29 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python errors.c,2.50,2.51
Message-ID: <200008071918.MAA24880@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv24853

Modified Files:
	errors.c 
Log Message:
Avoid dumping core when PyErr_NormalizeException() is called without
an exception set.  This shouldn't happen, but we see it at times...


Index: errors.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/errors.c,v
retrieving revision 2.50
retrieving revision 2.51
diff -C2 -r2.50 -r2.51
*** errors.c	2000/07/22 18:47:25	2.50
--- errors.c	2000/08/07 19:18:27	2.51
***************
*** 137,140 ****
--- 137,146 ----
  	PyObject *inclass = NULL;
  
+ 	if (type == NULL) {
+ 		/* This is a bug.  Should never happen.  Don't dump core. */
+ 		PyErr_SetString(PyExc_SystemError,
+ 			"PyErr_NormalizeException() called without exception");
+ 	}
+ 
  	/* If PyErr_SetNone() was used, the value will have been actually
  	   set to NULL.



From python-dev@python.org  Mon Aug  7 20:22:45 2000
From: python-dev@python.org (Guido van Rossum)
Date: Mon, 7 Aug 2000 12:22:45 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python compile.c,2.118,2.119
Message-ID: <200008071922.MAA26780@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv26753

Modified Files:
	compile.c 
Log Message:
When returning an error from jcompile() (which is passed through by
PyNode_Compile()), make sure that an exception is actually set --
otherwise someone stomped on our error.  [2.0 checkin of this fix.]


Index: compile.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/compile.c,v
retrieving revision 2.118
retrieving revision 2.119
diff -C2 -r2.118 -r2.119
*** compile.c	2000/08/05 21:37:50	2.118
--- compile.c	2000/08/07 19:22:43	2.119
***************
*** 3294,3297 ****
--- 3294,3305 ----
  		Py_XDECREF(name);
  	}
+ 	else if (!PyErr_Occurred()) {
+ 		/* This could happen if someone called PyErr_Clear() after an
+ 		   error was reported above.  That's not supposed to happen,
+ 		   but I just plugged one case and I'm not sure there can't be
+ 		   others.  In that case, raise SystemError so that at least
+ 		   it gets reported instead dumping core. */
+ 		PyErr_SetString(PyExc_SystemError, "lost syntax error");
+ 	}
  	com_free(&sc);
  	return co;



From python-dev@python.org  Mon Aug  7 20:34:45 2000
From: python-dev@python.org (Guido van Rossum)
Date: Mon, 7 Aug 2000 12:34:45 -0700
Subject: [Python-checkins] CVS: python/dist/src/Modules Setup.in,1.98,1.98.2.1
Message-ID: <200008071934.MAA29456@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv29447

Modified Files:
      Tag: cnri-16-start
	Setup.in 
Log Message:
Turn on _locale module by default.
Correct line for curses -- it's now _curses.


Index: Setup.in
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/Setup.in,v
retrieving revision 1.98
retrieving revision 1.98.2.1
diff -C2 -r1.98 -r1.98.2.1
*** Setup.in	2000/05/03 22:34:12	1.98
--- Setup.in	2000/08/07 19:34:42	1.98.2.1
***************
*** 141,145 ****
                          # static Unicode character database
  
! #_locale _localemodule.c  # access to ISO C locale support
  
  
--- 141,145 ----
                          # static Unicode character database
  
! _locale _localemodule.c  # access to ISO C locale support
  
  
***************
*** 320,324 ****
  # -L/usr/5lib before -lcurses).
  
! #curses cursesmodule.c -lcurses -ltermcap
  
  
--- 320,324 ----
  # -L/usr/5lib before -lcurses).
  
! #_curses _cursesmodule.c -lcurses -ltermcap
  
  



From python-dev@python.org  Mon Aug  7 21:16:30 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Mon, 7 Aug 2000 13:16:30 -0700
Subject: [Python-checkins] CVS: python/dist/src/PC config.h,1.43,1.44
Message-ID: <200008072016.NAA08268@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/PC
In directory slayer.i.sourceforge.net:/tmp/cvs-serv8067/PC

Modified Files:
	config.h 
Log Message:


-- from Trent Mick: [Patch #101010] replace use of INT_PTR
   with uintptr_t (fix MSVC 5.0 build) 

Index: config.h
===================================================================
RCS file: /cvsroot/python/python/dist/src/PC/config.h,v
retrieving revision 1.43
retrieving revision 1.44
diff -C2 -r1.43 -r1.44
*** config.h	2000/08/05 00:58:14	1.43
--- config.h	2000/08/07 20:16:28	1.44
***************
*** 242,247 ****
  /* End of compilers - finish up */
  
! /* define the ANSI intptr_t type for portable use of a pointer sized
!    integer */
  #if _MSC_VER >= 1200 /* This file only exists in VC 6.0 or higher */
  #include 
--- 242,246 ----
  /* End of compilers - finish up */
  
! /* define some ANSI types that are not defined in earlier Win headers */
  #if _MSC_VER >= 1200 /* This file only exists in VC 6.0 or higher */
  #include 
***************
*** 249,252 ****
--- 248,252 ----
  #if defined(MS_WINDOWS) && !defined(MS_WIN64)
  typedef long intptr_t;
+ typedef unsigned long uintptr_t;
  #endif
  



From python-dev@python.org  Mon Aug  7 21:16:31 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Mon, 7 Aug 2000 13:16:31 -0700
Subject: [Python-checkins] CVS: python/dist/src/Python thread_nt.h,2.15,2.16
Message-ID: <200008072016.NAA08272@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Python
In directory slayer.i.sourceforge.net:/tmp/cvs-serv8067/Python

Modified Files:
	thread_nt.h 
Log Message:


-- from Trent Mick: [Patch #101010] replace use of INT_PTR
   with uintptr_t (fix MSVC 5.0 build) 

Index: thread_nt.h
===================================================================
RCS file: /cvsroot/python/python/dist/src/Python/thread_nt.h,v
retrieving revision 2.15
retrieving revision 2.16
diff -C2 -r2.15 -r2.16
*** thread_nt.h	2000/07/22 18:47:25	2.15
--- thread_nt.h	2000/08/07 20:16:28	2.16
***************
*** 162,170 ****
  int PyThread_start_new_thread(void (*func)(void *), void *arg)
  {
! #if _MSC_VER >= 1200
! 	INT_PTR rv;
! #else
! 	unsigned long rv;
! #endif
  	int success = 0;
  
--- 162,166 ----
  int PyThread_start_new_thread(void (*func)(void *), void *arg)
  {
! 	uintptr_t rv;
  	int success = 0;
  



From python-dev@python.org  Mon Aug  7 21:59:08 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Mon, 7 Aug 2000 13:59:08 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib sre.py,1.23,1.24 sre_compile.py,1.29,1.30 sre_parse.py,1.29,1.30
Message-ID: <200008072059.NAA11904@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv11293/Lib

Modified Files:
	sre.py sre_compile.py sre_parse.py 
Log Message:


-- reset marks if repeat_one tail doesn't match
   (this should fix Sjoerd's xmllib problem)
-- added skip field to INFO header
-- changed compiler to generate charset INFO header
-- changed trace messages to support post-mortem analysis


Index: sre.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/sre.py,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -r1.23 -r1.24
*** sre.py	2000/08/01 22:47:48	1.23
--- sre.py	2000/08/07 20:59:04	1.24
***************
*** 48,61 ****
  
  def sub(pattern, repl, string, count=0):
!     return _compile(pattern).sub(repl, string, count)
  
  def subn(pattern, repl, string, count=0):
!     return _compile(pattern).subn(repl, string, count)
  
  def split(pattern, string, maxsplit=0):
!     return _compile(pattern).split(string, maxsplit)
  
  def findall(pattern, string, maxsplit=0):
!     return _compile(pattern).findall(string, maxsplit)
  
  def compile(pattern, flags=0):
--- 48,61 ----
  
  def sub(pattern, repl, string, count=0):
!     return _compile(pattern, 0).sub(repl, string, count)
  
  def subn(pattern, repl, string, count=0):
!     return _compile(pattern, 0).subn(repl, string, count)
  
  def split(pattern, string, maxsplit=0):
!     return _compile(pattern, 0).split(string, maxsplit)
  
  def findall(pattern, string, maxsplit=0):
!     return _compile(pattern, 0).findall(string, maxsplit)
  
  def compile(pattern, flags=0):
***************
*** 89,103 ****
      return string.join(seq, sep[:0])
  
! def _compile(pattern, flags=0):
      # internal: compile pattern
!     tp = type(pattern)
!     if tp not in sre_compile.STRING_TYPES:
          return pattern
-     key = (tp, pattern, flags)
      try:
-         return _cache[key]
-     except KeyError:
-         pass
-     try:
          p = sre_compile.compile(pattern, flags)
      except error, v:
--- 89,101 ----
      return string.join(seq, sep[:0])
  
! def _compile(*key):
      # internal: compile pattern
!     p = _cache.get(key)
!     if p is not None:
!         return p
!     pattern, flags = key
!     if type(pattern) not in sre_compile.STRING_TYPES:
          return pattern
      try:
          p = sre_compile.compile(pattern, flags)
      except error, v:
***************
*** 169,173 ****
      return _compile, (p.pattern, p.flags)
  
! copy_reg.pickle(type(_compile("")), _pickle, _compile)
  
  # --------------------------------------------------------------------
--- 167,171 ----
      return _compile, (p.pattern, p.flags)
  
! copy_reg.pickle(type(_compile("", 0)), _pickle, _compile)
  
  # --------------------------------------------------------------------

Index: sre_compile.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/sre_compile.py,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -r1.29 -r1.30
*** sre_compile.py	2000/08/01 22:47:48	1.29
--- sre_compile.py	2000/08/07 20:59:04	1.30
***************
*** 15,84 ****
  MAXCODE = 65535
  
- def _charset(charset, fixup=None):
-     # internal: optimize character set
-     if not fixup:
-         fixup = lambda x: x
-     out = []
-     charmap = [0]*256
-     try:
-         for op, av in charset:
-             if op is NEGATE:
-                 out.append((op, av))
-             elif op is LITERAL:
-                 charmap[fixup(av)] = 1
-             elif op is RANGE:
-                 for i in range(fixup(av[0]), fixup(av[1])+1):
-                     charmap[i] = 1
-             elif op is CATEGORY:
-                 # FIXME: could append to charmap tail
-                 return charset # cannot compress
-     except IndexError:
-         # unicode
-         return charset
-     # compress character map
-     i = p = n = 0
-     runs = []
-     for c in charmap:
-         if c:
-             if n == 0:
-                 p = i
-             n = n + 1
-         elif n:
-             runs.append((p, n))
-             n = 0
-         i = i + 1
-     if n:
-         runs.append((p, n))
-     if len(runs) <= 2:
-         # use literal/range
-         for p, n in runs:
-             if n == 1:
-                 out.append((LITERAL, p))
-             else:
-                 out.append((RANGE, (p, p+n-1)))
-         if len(out) < len(charset):
-             return out
-     else:
-         # use bitmap
-         data = []
-         m = 1; v = 0
-         for c in charmap:
-             if c:
-                 v = v + m
-             m = m << 1
-             if m > MAXCODE:
-                 data.append(v)
-                 m = 1; v = 0
-         out.append((CHARSET, data))
-         return out
-     return charset
- 
- def _simple(av):
-     # check if av is a "simple" operator
-     lo, hi = av[2].getwidth()
-     if lo == 0:
-         raise error, "nothing to repeat"
-     return lo == hi == 1 and av[2][0][0] != SUBPATTERN
- 
  def _compile(code, pattern, flags):
      # internal: compile a (sub)pattern
--- 15,18 ----
***************
*** 100,124 ****
                  fixup = lambda x: x
              skip = len(code); emit(0)
!             for op, av in _charset(av, fixup):
!                 emit(OPCODES[op])
!                 if op is NEGATE:
!                     pass
!                 elif op is LITERAL:
!                     emit(fixup(av))
!                 elif op is RANGE:
!                     emit(fixup(av[0]))
!                     emit(fixup(av[1]))
!                 elif op is CHARSET:
!                     code.extend(av)
!                 elif op is CATEGORY:
!                     if flags & SRE_FLAG_LOCALE:
!                         emit(CHCODES[CH_LOCALE[av]])
!                     elif flags & SRE_FLAG_UNICODE:
!                         emit(CHCODES[CH_UNICODE[av]])
!                     else:
!                         emit(CHCODES[av])
!                 else:
!                     raise error, "internal: unsupported set operator"
!             emit(OPCODES[FAILURE])
              code[skip] = len(code) - skip
          elif op is ANY:
--- 34,38 ----
                  fixup = lambda x: x
              skip = len(code); emit(0)
!             _compile_charset(av, flags, code, fixup)
              code[skip] = len(code) - skip
          elif op is ANY:
***************
*** 160,163 ****
--- 74,78 ----
                  emit(OPCODES[MARK])
                  emit((av[0]-1)*2)
+             # _compile_info(code, av[1], flags)
              _compile(code, av[1], flags)
              if av[0]:
***************
*** 196,199 ****
--- 111,115 ----
              for av in av[1]:
                  skip = len(code); emit(0)
+                 # _compile_info(code, av, flags)
                  _compile(code, av, flags)
                  emit(OPCODES[JUMP])
***************
*** 220,223 ****
--- 136,230 ----
              raise ValueError, ("unsupported operand type", op)
  
+ def _compile_charset(charset, flags, code, fixup=None):
+     # compile charset subprogram
+     emit = code.append
+     if not fixup:
+         fixup = lambda x: x
+     for op, av in _optimize_charset(charset, fixup):
+         emit(OPCODES[op])
+         if op is NEGATE:
+             pass
+         elif op is LITERAL:
+             emit(fixup(av))
+         elif op is RANGE:
+             emit(fixup(av[0]))
+             emit(fixup(av[1]))
+         elif op is CHARSET:
+             code.extend(av)
+         elif op is CATEGORY:
+             if flags & SRE_FLAG_LOCALE:
+                 emit(CHCODES[CH_LOCALE[av]])
+             elif flags & SRE_FLAG_UNICODE:
+                 emit(CHCODES[CH_UNICODE[av]])
+             else:
+                 emit(CHCODES[av])
+         else:
+             raise error, "internal: unsupported set operator"
+     emit(OPCODES[FAILURE])
+ 
+ def _optimize_charset(charset, fixup):
+     # internal: optimize character set
+     out = []
+     charmap = [0]*256
+     try:
+         for op, av in charset:
+             if op is NEGATE:
+                 out.append((op, av))
+             elif op is LITERAL:
+                 charmap[fixup(av)] = 1
+             elif op is RANGE:
+                 for i in range(fixup(av[0]), fixup(av[1])+1):
+                     charmap[i] = 1
+             elif op is CATEGORY:
+                 # FIXME: could append to charmap tail
+                 return charset # cannot compress
+     except IndexError:
+         # character set contains unicode characters
+         return charset
+     # compress character map
+     i = p = n = 0
+     runs = []
+     for c in charmap:
+         if c:
+             if n == 0:
+                 p = i
+             n = n + 1
+         elif n:
+             runs.append((p, n))
+             n = 0
+         i = i + 1
+     if n:
+         runs.append((p, n))
+     if len(runs) <= 2:
+         # use literal/range
+         for p, n in runs:
+             if n == 1:
+                 out.append((LITERAL, p))
+             else:
+                 out.append((RANGE, (p, p+n-1)))
+         if len(out) < len(charset):
+             return out
+     else:
+         # use bitmap
+         data = []
+         m = 1; v = 0
+         for c in charmap:
+             if c:
+                 v = v + m
+             m = m << 1
+             if m > MAXCODE:
+                 data.append(v)
+                 m = 1; v = 0
+         out.append((CHARSET, data))
+         return out
+     return charset
+ 
+ def _simple(av):
+     # check if av is a "simple" operator
+     lo, hi = av[2].getwidth()
+     if lo == 0:
+         raise error, "nothing to repeat"
+     return lo == hi == 1 and av[2][0][0] != SUBPATTERN
+ 
  def _compile_info(code, pattern, flags):
      # internal: compile an info block.  in the current version,
***************
*** 229,239 ****
--- 236,293 ----
      # look for a literal prefix
      prefix = []
+     prefix_skip = 0
      charset = [] # not used
      if not (flags & SRE_FLAG_IGNORECASE):
+         # look for literal prefix
          for op, av in pattern.data:
              if op is LITERAL:
+                 if len(prefix) == prefix_skip:
+                     prefix_skip = prefix_skip + 1
                  prefix.append(av)
+             elif op is SUBPATTERN and len(av[1]) == 1:
+                 op, av = av[1][0]
+                 if op is LITERAL:
+                     prefix.append(av)
+                 else:
+                     break
              else:
                  break
+         # if no prefix, look for charset prefix
+         if not prefix and pattern.data:
+             op, av = pattern.data[0]
+             if op is SUBPATTERN and av[1]:
+                 op, av = av[1][0]
+                 if op is LITERAL:
+                     charset.append((op, av))
+                 elif op is BRANCH:
+                     c = []
+                     for p in av[1]:
+                         if not p:
+                             break
+                         op, av = p[0]
+                         if op is LITERAL:
+                             c.append((op, av))
+                         else:
+                             break
+                     else:
+                         charset = c
+             elif op is BRANCH:
+                 c = []
+                 for p in av[1]:
+                     if not p:
+                         break
+                     op, av = p[0]
+                     if op is LITERAL:
+                         c.append((op, av))
+                     else:
+                         break
+                 else:
+                     charset = c
+             elif op is IN:
+                 charset = av
+ ##     if prefix:
+ ##         print "*** PREFIX", prefix, prefix_skip
+ ##     if charset:
+ ##         print "*** CHARSET", charset
      # add an info block
      emit = code.append
***************
*** 244,248 ****
      if prefix:
          mask = SRE_INFO_PREFIX
!         if len(prefix) == len(pattern.data):
              mask = mask + SRE_INFO_LITERAL
      elif charset:
--- 298,302 ----
      if prefix:
          mask = SRE_INFO_PREFIX
!         if len(prefix) == prefix_skip == len(pattern.data):
              mask = mask + SRE_INFO_LITERAL
      elif charset:
***************
*** 261,280 ****
      # add literal prefix
      if prefix:
!         emit(len(prefix))
!         if prefix:
!             code.extend(prefix)
!             # generate overlap table
!             table = [-1] + ([0]*len(prefix))
!             for i in range(len(prefix)):
!                 table[i+1] = table[i]+1
!                 while table[i+1] > 0 and prefix[i] != prefix[table[i+1]-1]:
!                     table[i+1] = table[table[i+1]-1]+1
!             code.extend(table[1:]) # don't store first entry
      elif charset:
!         # FIXME: use charset optimizer!
!         for char in charset:
!             emit(OPCODES[LITERAL])
!             emit(char)
!         emit(OPCODES[FAILURE])
      code[skip] = len(code) - skip
  
--- 315,330 ----
      # add literal prefix
      if prefix:
!         emit(len(prefix)) # length
!         emit(prefix_skip) # skip
!         code.extend(prefix)
!         # generate overlap table
!         table = [-1] + ([0]*len(prefix))
!         for i in range(len(prefix)):
!             table[i+1] = table[i]+1
!             while table[i+1] > 0 and prefix[i] != prefix[table[i+1]-1]:
!                 table[i+1] = table[table[i+1]-1]+1
!         code.extend(table[1:]) # don't store first entry
      elif charset:
!         _compile_charset(charset, 0, code)
      code[skip] = len(code) - skip
  

Index: sre_parse.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/sre_parse.py,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -r1.29 -r1.30
*** sre_parse.py	2000/08/01 22:47:48	1.29
--- sre_parse.py	2000/08/07 20:59:04	1.30
***************
*** 11,16 ****
  import string, sys
  
- import _sre
- 
  from sre_constants import *
  
--- 11,14 ----
***************
*** 233,236 ****
--- 231,235 ----
      try:
          if escape[1:2] == "x":
+             # FIXME: in 2.0, \xNN must have exactly two digits
              while source.next in HEXDIGITS:
                  escape = escape + source.get()
***************
*** 557,566 ****
      return subpattern
  
! def parse(str, flags=0):
      # parse 're' pattern into list of (opcode, argument) tuples
  
      source = Tokenizer(str)
  
!     pattern = Pattern()
      pattern.flags = flags
  
--- 556,566 ----
      return subpattern
  
! def parse(str, flags=0, pattern=None):
      # parse 're' pattern into list of (opcode, argument) tuples
  
      source = Tokenizer(str)
  
!     if pattern is None:
!         pattern = Pattern()
      pattern.flags = flags
  



From python-dev@python.org  Mon Aug  7 21:59:08 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Mon, 7 Aug 2000 13:59:08 -0700
Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.33,2.34
Message-ID: <200008072059.NAA11902@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv11293/Modules

Modified Files:
	_sre.c 
Log Message:


-- reset marks if repeat_one tail doesn't match
   (this should fix Sjoerd's xmllib problem)
-- added skip field to INFO header
-- changed compiler to generate charset INFO header
-- changed trace messages to support post-mortem analysis


Index: _sre.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v
retrieving revision 2.33
retrieving revision 2.34
diff -C2 -r2.33 -r2.34
*** _sre.c	2000/08/07 17:33:38	2.33
--- _sre.c	2000/08/07 20:59:04	2.34
***************
*** 14,19 ****
   * 00-07-21 fl  reset lastindex in scanner methods (0.9.6)
   * 00-08-01 fl  fixes for 1.6b1 (0.9.8)
-  * 00-08-02 fl  moved SRE_COUNT out of the match method
   * 00-08-03 fl  added recursion limit
   *
   * Copyright (c) 1997-2000 by Secret Labs AB.  All rights reserved.
--- 14,19 ----
   * 00-07-21 fl  reset lastindex in scanner methods (0.9.6)
   * 00-08-01 fl  fixes for 1.6b1 (0.9.8)
   * 00-08-03 fl  added recursion limit
+  * 00-08-07 fl  use PyOS_CheckStack() if available
   *
   * Copyright (c) 1997-2000 by Secret Labs AB.  All rights reserved.
***************
*** 94,99 ****
  #endif
  
- #define PTR(ptr) ((SRE_CHAR*) (ptr) - (SRE_CHAR*) state->beginning)
- 
  /* -------------------------------------------------------------------- */
  /* search engine state */
--- 94,97 ----
***************
*** 266,270 ****
      }
  
!     TRACE(("copy %d:%d to %d\n", lo, hi, state->mark_stack_base));
  
      memcpy(state->mark_stack + state->mark_stack_base, state->mark + lo,
--- 264,268 ----
      }
  
!     TRACE(("copy %d:%d to %d (%d)\n", lo, hi, state->mark_stack_base, size));
  
      memcpy(state->mark_stack + state->mark_stack_base, state->mark + lo,
***************
*** 301,305 ****
  #define SRE_AT sre_at
  #define SRE_COUNT sre_count
! #define SRE_MEMBER sre_member
  #define SRE_MATCH sre_match
  #define SRE_SEARCH sre_search
--- 299,304 ----
  #define SRE_AT sre_at
  #define SRE_COUNT sre_count
! #define SRE_CHARSET sre_charset
! #define SRE_INFO sre_info
  #define SRE_MATCH sre_match
  #define SRE_SEARCH sre_search
***************
*** 313,317 ****
  #undef SRE_SEARCH
  #undef SRE_MATCH
! #undef SRE_MEMBER
  #undef SRE_COUNT
  #undef SRE_AT
--- 312,317 ----
  #undef SRE_SEARCH
  #undef SRE_MATCH
! #undef SRE_INFO
! #undef SRE_CHARSET
  #undef SRE_COUNT
  #undef SRE_AT
***************
*** 323,327 ****
  #define SRE_AT sre_uat
  #define SRE_COUNT sre_ucount
! #define SRE_MEMBER sre_umember
  #define SRE_MATCH sre_umatch
  #define SRE_SEARCH sre_usearch
--- 323,328 ----
  #define SRE_AT sre_uat
  #define SRE_COUNT sre_ucount
! #define SRE_CHARSET sre_ucharset
! #define SRE_INFO sre_uinfo
  #define SRE_MATCH sre_umatch
  #define SRE_SEARCH sre_usearch
***************
*** 384,388 ****
  
  LOCAL(int)
! SRE_MEMBER(SRE_CODE* set, SRE_CODE ch)
  {
      /* check if character is a member of the given set */
--- 385,389 ----
  
  LOCAL(int)
! SRE_CHARSET(SRE_CODE* set, SRE_CODE ch)
  {
      /* check if character is a member of the given set */
***************
*** 454,457 ****
--- 455,459 ----
      case SRE_OP_ANY:
          /* repeated dot wildcard. */
+         TRACE(("|%p|%p|COUNT ANY\n", pattern, ptr));
          while (ptr < end && !SRE_IS_LINEBREAK(*ptr))
              ptr++;
***************
*** 461,464 ****
--- 463,467 ----
          /* repeated dot wildcare.  skip to the end of the target
             string, and backtrack from there */
+         TRACE(("|%p|%p|COUNT ANY_ALL\n", pattern, ptr));
          ptr = end;
          break;
***************
*** 467,470 ****
--- 470,474 ----
          /* repeated literal */
          chr = pattern[1];
+         TRACE(("|%p|%p|COUNT LITERAL %d\n", pattern, ptr, chr));
          while (ptr < end && (SRE_CODE) *ptr == chr)
              ptr++;
***************
*** 474,477 ****
--- 478,482 ----
          /* repeated literal */
          chr = pattern[1];
+         TRACE(("|%p|%p|COUNT LITERAL_IGNORE %d\n", pattern, ptr, chr));
          while (ptr < end && (SRE_CODE) state->lower(*ptr) == chr)
              ptr++;
***************
*** 481,484 ****
--- 486,490 ----
          /* repeated non-literal */
          chr = pattern[1];
+         TRACE(("|%p|%p|COUNT NOT_LITERAL %d\n", pattern, ptr, chr));
          while (ptr < end && (SRE_CODE) *ptr != chr)
              ptr++;
***************
*** 488,491 ****
--- 494,498 ----
          /* repeated non-literal */
          chr = pattern[1];
+         TRACE(("|%p|%p|COUNT NOT_LITERAL_IGNORE %d\n", pattern, ptr, chr));
          while (ptr < end && (SRE_CODE) state->lower(*ptr) != chr)
              ptr++;
***************
*** 494,498 ****
      case SRE_OP_IN:
          /* repeated set */
!         while (ptr < end && SRE_MEMBER(pattern + 2, *ptr))
              ptr++;
          break;
--- 501,506 ----
      case SRE_OP_IN:
          /* repeated set */
!         TRACE(("|%p|%p|COUNT IN\n", pattern, ptr));
!         while (ptr < end && SRE_CHARSET(pattern + 2, *ptr))
              ptr++;
          break;
***************
*** 500,503 ****
--- 508,512 ----
      default:
          /* repeated single character pattern */
+         TRACE(("|%p|%p|COUNT SUBPATTERN\n", pattern, ptr));
          while ((SRE_CHAR*) state->ptr < end) {
              i = SRE_MATCH(state, pattern, level);
***************
*** 507,517 ****
--- 516,555 ----
                  break;
          }
+         TRACE(("|%p|%p|COUNT %d\n", pattern, ptr,
+                (SRE_CHAR*) state->ptr - ptr));
          return (SRE_CHAR*) state->ptr - ptr;
      }
  
+     TRACE(("|%p|%p|COUNT %d\n", pattern, ptr, ptr - (SRE_CHAR*) state->ptr));
      return ptr - (SRE_CHAR*) state->ptr;
  }
  
  LOCAL(int)
+ SRE_INFO(SRE_STATE* state, SRE_CODE* pattern)
+ {
+     /* check if an SRE_OP_INFO block matches at the current position.
+        returns the number of SRE_CODE objects to skip if successful, 0
+        if no match */
+ 
+     SRE_CHAR* end = state->end;
+     SRE_CHAR* ptr = state->ptr;
+     int i;
+ 
+     /* check minimal length */
+     if (pattern[3] && (end - ptr) < pattern[3])
+         return 0;
+ 
+     /* check known prefix */
+     if (pattern[2] & SRE_INFO_PREFIX && pattern[5] > 1) {
+         /*     */
+         for (i = 0; i < pattern[5]; i++)
+             if ((SRE_CODE) ptr[i] != pattern[7 + i])
+                 return 0;
+         return pattern[0] + 2 * pattern[6];
+     }
+     return pattern[0];
+ }
+ 
+ LOCAL(int)
  SRE_MATCH(SRE_STATE* state, SRE_CODE* pattern, int level)
  {
***************
*** 528,532 ****
      SRE_REPEAT rep; /* FIXME:  allocate in STATE instead */
  
!     TRACE(("%8d: enter %d\n", PTR(ptr), level));
  
  #if defined(USE_STACKCHECK)
--- 566,570 ----
      SRE_REPEAT rep; /* FIXME:  allocate in STATE instead */
  
!     TRACE(("|%p|%p|ENTER %d\n", pattern, ptr, level));
  
  #if defined(USE_STACKCHECK)
***************
*** 557,566 ****
          case SRE_OP_FAILURE:
              /* immediate failure */
!             TRACE(("%8d: failure\n", PTR(ptr)));
              return 0;
  
          case SRE_OP_SUCCESS:
              /* end of pattern */
!             TRACE(("%8d: success\n", PTR(ptr)));
              state->ptr = ptr;
              return 1;
--- 595,604 ----
          case SRE_OP_FAILURE:
              /* immediate failure */
!             TRACE(("|%p|%p|FAILURE\n", pattern, ptr));
              return 0;
  
          case SRE_OP_SUCCESS:
              /* end of pattern */
!             TRACE(("|%p|%p|SUCCESS\n", pattern, ptr));
              state->ptr = ptr;
              return 1;
***************
*** 569,573 ****
              /* match at given position */
              /*   */
!             TRACE(("%8d: position %d\n", PTR(ptr), *pattern));
              if (!SRE_AT(state, ptr, *pattern))
                  return 0;
--- 607,611 ----
              /* match at given position */
              /*   */
!             TRACE(("|%p|%p|AT %d\n", pattern, ptr, *pattern));
              if (!SRE_AT(state, ptr, *pattern))
                  return 0;
***************
*** 578,586 ****
              /* match at given category */
              /*   */
!             TRACE(("%8d: category %d [category %d]\n", PTR(ptr),
!                    *ptr, *pattern));
              if (ptr >= end || !sre_category(pattern[0], ptr[0]))
                  return 0;
-             TRACE(("%8d: category ok\n", PTR(ptr)));
              pattern++;
              ptr++;
--- 616,622 ----
              /* match at given category */
              /*   */
!             TRACE(("|%p|%p|CATEGORY %d\n", pattern, ptr, *pattern));
              if (ptr >= end || !sre_category(pattern[0], ptr[0]))
                  return 0;
              pattern++;
              ptr++;
***************
*** 590,594 ****
              /* match literal string */
              /*   */
!             TRACE(("%8d: literal %c\n", PTR(ptr), pattern[0]));
              if (ptr >= end || (SRE_CODE) ptr[0] != pattern[0])
                  return 0;
--- 626,630 ----
              /* match literal string */
              /*   */
!             TRACE(("|%p|%p|LITERAL %d\n", pattern, ptr, *pattern));
              if (ptr >= end || (SRE_CODE) ptr[0] != pattern[0])
                  return 0;
***************
*** 600,604 ****
              /* match anything that is not literal character */
              /*   */
!             TRACE(("%8d: literal not %c\n", PTR(ptr), pattern[0]));
              if (ptr >= end || (SRE_CODE) ptr[0] == pattern[0])
                  return 0;
--- 636,640 ----
              /* match anything that is not literal character */
              /*   */
!             TRACE(("|%p|%p|NOT_LITERAL %d\n", pattern, ptr, *pattern));
              if (ptr >= end || (SRE_CODE) ptr[0] == pattern[0])
                  return 0;
***************
*** 610,614 ****
              /* match anything (except a newline) */
              /*  */
!             TRACE(("%8d: anything (except newline)\n", PTR(ptr)));
              if (ptr >= end || SRE_IS_LINEBREAK(ptr[0]))
                  return 0;
--- 646,650 ----
              /* match anything (except a newline) */
              /*  */
!             TRACE(("|%p|%p|ANY\n", pattern, ptr));
              if (ptr >= end || SRE_IS_LINEBREAK(ptr[0]))
                  return 0;
***************
*** 619,623 ****
              /* match anything */
              /*  */
!             TRACE(("%8d: anything\n", PTR(ptr)));
              if (ptr >= end)
                  return 0;
--- 655,659 ----
              /* match anything */
              /*  */
!             TRACE(("|%p|%p|ANY_ALL\n", pattern, ptr));
              if (ptr >= end)
                  return 0;
***************
*** 628,633 ****
              /* match set member (or non_member) */
              /*    */
!             TRACE(("%8d: set %c\n", PTR(ptr), *ptr));
!             if (ptr >= end || !SRE_MEMBER(pattern + 1, *ptr))
                  return 0;
              pattern += pattern[0];
--- 664,669 ----
              /* match set member (or non_member) */
              /*    */
!             TRACE(("|%p|%p|IN\n", pattern, ptr));
!             if (ptr >= end || !SRE_CHARSET(pattern + 1, *ptr))
                  return 0;
              pattern += pattern[0];
***************
*** 637,641 ****
          case SRE_OP_GROUPREF:
              /* match backreference */
!             TRACE(("%8d: group %d\n", PTR(ptr), pattern[0]));
              i = pattern[0];
              {
--- 673,677 ----
          case SRE_OP_GROUPREF:
              /* match backreference */
!             TRACE(("|%p|%p|GROUPREF %d\n", pattern, ptr, pattern[0]));
              i = pattern[0];
              {
***************
*** 655,659 ****
          case SRE_OP_GROUPREF_IGNORE:
              /* match backreference */
!             TRACE(("%8d: group ignore %d\n", PTR(ptr), pattern[0]));
              i = pattern[0];
              {
--- 691,695 ----
          case SRE_OP_GROUPREF_IGNORE:
              /* match backreference */
!             TRACE(("|%p|%p|GROUPREF_IGNORE %d\n", pattern, ptr, pattern[0]));
              i = pattern[0];
              {
***************
*** 673,677 ****
  
          case SRE_OP_LITERAL_IGNORE:
!             TRACE(("%8d: literal lower(%c)\n", PTR(ptr), pattern[0]));
              if (ptr >= end ||
                  state->lower(*ptr) != state->lower(*pattern))
--- 709,713 ----
  
          case SRE_OP_LITERAL_IGNORE:
!             TRACE(("|%p|%p|LITERAL_IGNORE %d\n", pattern, ptr, pattern[0]));
              if (ptr >= end ||
                  state->lower(*ptr) != state->lower(*pattern))
***************
*** 682,686 ****
  
          case SRE_OP_NOT_LITERAL_IGNORE:
!             TRACE(("%8d: literal not lower(%c)\n", PTR(ptr), pattern[0]));
              if (ptr >= end ||
                  state->lower(*ptr) == state->lower(*pattern))
--- 718,722 ----
  
          case SRE_OP_NOT_LITERAL_IGNORE:
!             TRACE(("|%p|%p|NOT_LITERAL_IGNORE %d\n", pattern, ptr, *pattern));
              if (ptr >= end ||
                  state->lower(*ptr) == state->lower(*pattern))
***************
*** 691,697 ****
  
          case SRE_OP_IN_IGNORE:
!             TRACE(("%8d: set lower(%c)\n", PTR(ptr), *ptr));
              if (ptr >= end
!                 || !SRE_MEMBER(pattern + 1, (SRE_CODE) state->lower(*ptr)))
                  return 0;
              pattern += pattern[0];
--- 727,733 ----
  
          case SRE_OP_IN_IGNORE:
!             TRACE(("|%p|%p|IN_IGNORE\n", pattern, ptr));
              if (ptr >= end
!                 || !SRE_CHARSET(pattern + 1, (SRE_CODE) state->lower(*ptr)))
                  return 0;
              pattern += pattern[0];
***************
*** 702,706 ****
              /* set mark */
              /*   */
!             TRACE(("%8d: set mark %d\n", PTR(ptr), pattern[0]));
              i = pattern[0];
              if (i & 1)
--- 738,742 ----
              /* set mark */
              /*   */
!             TRACE(("|%p|%p|MARK %d\n", pattern, ptr, pattern[0]));
              i = pattern[0];
              if (i & 1)
***************
*** 716,720 ****
              /* jump forward */
              /*   */
!             TRACE(("%8d: jump +%d\n", PTR(ptr), pattern[0]));
              pattern += pattern[0];
              break;
--- 752,756 ----
              /* jump forward */
              /*   */
!             TRACE(("|%p|%p|JUMP %d\n", pattern, ptr, pattern[0]));
              pattern += pattern[0];
              break;
***************
*** 723,727 ****
              /* assert subpattern */
              /*     */
!             TRACE(("%8d: assert subpattern %d\n", PTR(ptr), pattern[1]));
              state->ptr = ptr - pattern[1];
              if (state->ptr < state->beginning)
--- 759,763 ----
              /* assert subpattern */
              /*     */
!             TRACE(("|%p|%p|ASSERT %d\n", pattern, ptr, pattern[1]));
              state->ptr = ptr - pattern[1];
              if (state->ptr < state->beginning)
***************
*** 738,742 ****
              /* assert not subpattern */
              /*     */
!             TRACE(("%8d: assert not subpattern %d\n", PTR(ptr), pattern[1]));
              state->ptr = ptr - pattern[1];
              if (state->ptr < state->beginning)
--- 774,778 ----
              /* assert not subpattern */
              /*     */
!             TRACE(("|%p|%p|ASSERT_NOT %d\n", pattern, ptr, pattern[1]));
              state->ptr = ptr - pattern[1];
              if (state->ptr < state->beginning)
***************
*** 755,786 ****
              /* alternation */
              /*  <0=skip> code  ...  */
!             TRACE(("%8d: branch\n", PTR(ptr)));
              lastmark = state->lastmark;
!             while (pattern[0]) {
!                 SRE_CODE* code = pattern+1;
!                 TRACE(("%8d: try branch\n", PTR(ptr)));
!                 switch (code[0]) {
!                 case SRE_OP_IN:
!                     if (ptr >= end || !SRE_MEMBER(code + 2, ptr[0]))
!                         break;
!                     code += code[1] + 1;
!                     state->ptr = ptr + 1;
!                     goto branch;
!                 case SRE_OP_LITERAL:
!                     if (ptr >= end || (SRE_CODE) ptr[0] != code[1])
!                         break;
!                     code += 2;
!                     state->ptr = ptr + 1;
!                     goto branch;
!                 default:
!                     state->ptr = ptr;
!                 branch:
!                     i = SRE_MATCH(state, code, level + 1);
!                     if (i)
!                         return i;
!                     while (state->lastmark > lastmark)
!                         state->mark[state->lastmark--] = NULL;
                  }
-                 pattern += pattern[0];
              }
              return 0;
--- 791,814 ----
              /* alternation */
              /*  <0=skip> code  ...  */
!             TRACE(("|%p|%p|BRANCH\n", pattern, ptr));
              lastmark = state->lastmark;
!             for (; pattern[0]; pattern += pattern[0]) {
!                 if (pattern[1] == SRE_OP_LITERAL &&
!                     (ptr >= end || (SRE_CODE) *ptr != pattern[2]))
!                     continue;
!                 if (pattern[1] == SRE_OP_IN &&
!                     (ptr >= end || !SRE_CHARSET(pattern + 3, (SRE_CODE) *ptr)))
!                     continue;
!                 state->ptr = ptr;
!                 i = SRE_MATCH(state, pattern + 1, level + 1);
!                 if (i)
!                     return i;
!                 if (state->lastmark > lastmark) {
!                     memset(
!                         state->mark + lastmark + 1, 0,
!                         (state->lastmark - lastmark) * sizeof(void*)
!                         );
!                     state->lastmark = lastmark;
                  }
              }
              return 0;
***************
*** 796,800 ****
              /*   <1=min> <2=max> item  tail */
  
!             TRACE(("%8d: max repeat one {%d,%d}\n", PTR(ptr),
                     pattern[1], pattern[2]));
  
--- 824,828 ----
              /*   <1=min> <2=max> item  tail */
  
!             TRACE(("|%p|%p|REPEAT_ONE %d %d\n", pattern, ptr,
                     pattern[1], pattern[2]));
  
***************
*** 815,820 ****
                 and backtrack if not. */
  
-             TRACE(("%8d: repeat %d found\n", PTR(ptr), count));
- 
              if (count < (int) pattern[1])
                  return 0;
--- 843,846 ----
***************
*** 822,826 ****
              if (pattern[pattern[0]] == SRE_OP_SUCCESS) {
                  /* tail is empty.  we're finished */
-                 TRACE(("%8d: tail is empty\n", PTR(ptr)));
                  state->ptr = ptr;
                  return 1;
--- 848,851 ----
***************
*** 830,836 ****
                     the rest of the pattern cannot possibly match */
                  chr = pattern[pattern[0]+1];
-                 TRACE(("%8d: tail is literal %d\n", PTR(ptr), chr));
                  for (;;) {
-                     TRACE(("%8d: scan for tail match\n", PTR(ptr)));
                      while (count >= (int) pattern[1] &&
                             (ptr >= end || *ptr != chr)) {
--- 855,859 ----
***************
*** 838,850 ****
                          count--;
                      }
-                     TRACE(("%8d: check tail\n", PTR(ptr)));
                      if (count < (int) pattern[1])
                          break;
                      state->ptr = ptr;
                      i = SRE_MATCH(state, pattern + pattern[0], level + 1);
!                     if (i > 0) {
!                         TRACE(("%8d: repeat %d picked\n", PTR(ptr), count));
                          return 1;
-                     }
                      ptr--;
                      count--;
--- 861,870 ----
                          count--;
                      }
                      if (count < (int) pattern[1])
                          break;
                      state->ptr = ptr;
                      i = SRE_MATCH(state, pattern + pattern[0], level + 1);
!                     if (i)
                          return 1;
                      ptr--;
                      count--;
***************
*** 853,868 ****
              } else {
                  /* general case */
!                 TRACE(("%8d: tail is pattern\n", PTR(ptr)));
                  while (count >= (int) pattern[1]) {
                      state->ptr = ptr;
                      i = SRE_MATCH(state, pattern + pattern[0], level + 1);
!                     if (i < 0)
!                         return i;
!                     if (i) {
!                         TRACE(("%8d: repeat %d picked\n", PTR(ptr), count));
                          return 1;
-                     }
                      ptr--;
                      count--;
                  }
              }
--- 873,891 ----
              } else {
                  /* general case */
!                 lastmark = state->lastmark;
                  while (count >= (int) pattern[1]) {
                      state->ptr = ptr;
                      i = SRE_MATCH(state, pattern + pattern[0], level + 1);
!                     if (i)
                          return 1;
                      ptr--;
                      count--;
+                     if (state->lastmark > lastmark) {
+                         memset(
+                             state->mark + lastmark + 1, 0,
+                             (state->lastmark - lastmark) * sizeof(void*)
+                             );
+                         state->lastmark = lastmark;
+                     }
                  }
              }
***************
*** 873,877 ****
                 by the UNTIL operator */
              /*   <1=min> <2=max> item  tail */
!             TRACE(("%8d: repeat {%d,%d}\n", PTR(ptr),
                     pattern[1], pattern[2]));
  
--- 896,900 ----
                 by the UNTIL operator */
              /*   <1=min> <2=max> item  tail */
!             TRACE(("|%p|%p|REPEAT %d %d\n", pattern, ptr,
                     pattern[1], pattern[2]));
  
***************
*** 905,913 ****
              count = rp->count + 1;
  
!             TRACE(("%8d: max until %d\n", PTR(ptr), count));
  
              if (count < rp->pattern[1]) {
                  /* not enough matches */
-                 TRACE(("%8d: match item (required)\n", PTR(ptr)));
                  rp->count = count;
                  /* RECURSIVE */
--- 928,935 ----
              count = rp->count + 1;
  
!             TRACE(("|%p|%p|MAX_UNTIL %d\n", pattern, ptr, count));
  
              if (count < rp->pattern[1]) {
                  /* not enough matches */
                  rp->count = count;
                  /* RECURSIVE */
***************
*** 921,925 ****
  
              if (count < rp->pattern[2] || rp->pattern[2] == 65535) {
-                 TRACE(("%8d: match item (optional)\n", PTR(ptr)));
                  /* we may have enough matches, but if we can
                     match another item, do so */
--- 943,946 ----
***************
*** 938,942 ****
              /* cannot match more repeated items here.  make sure the
                 tail matches */
-             TRACE(("%8d: match tail\n", PTR(ptr)));
              state->repeat = rp->prev;
              i = SRE_MATCH(state, pattern, level + 1);
--- 959,962 ----
***************
*** 956,960 ****
              count = rp->count + 1;
  
!             TRACE(("%8d: min until %d\n", PTR(ptr), count));
  
              state->ptr = ptr;
--- 976,980 ----
              count = rp->count + 1;
  
!             TRACE(("|%p|%p|MIN_UNTIL %d\n", pattern, ptr, count));
  
              state->ptr = ptr;
***************
*** 962,966 ****
              if (count < rp->pattern[1]) {
                  /* not enough matches */
-                 TRACE(("%8d: match item (required)\n", PTR(ptr)));
                  rp->count = count;
                  /* RECURSIVE */
--- 982,985 ----
***************
*** 974,978 ****
  
              /* see if the tail matches */
-             TRACE(("%8d: match tail\n", PTR(ptr)));
              state->repeat = rp->prev;
              i = SRE_MATCH(state, pattern, level + 1);
--- 993,996 ----
***************
*** 986,990 ****
                  return 0;
  
-             TRACE(("%8d: match item (optional)\n", PTR(ptr)));
              rp->count = count;
              /* RECURSIVE */
--- 1004,1007 ----
***************
*** 996,1000 ****
  
          default:
!             TRACE(("%8d: unknown opcode %d\n", PTR(ptr), pattern[-1]));
              return SRE_ERROR_ILLEGAL;
          }
--- 1013,1017 ----
  
          default:
!             TRACE(("|%p|%p|UNKNOWN %d\n", pattern, ptr, pattern[-1]));
              return SRE_ERROR_ILLEGAL;
          }
***************
*** 1012,1015 ****
--- 1029,1033 ----
      int status = 0;
      int prefix_len = 0;
+     int prefix_skip;
      SRE_CODE* prefix = NULL;
      SRE_CODE* charset = NULL;
***************
*** 1033,1041 ****
          if (flags & SRE_INFO_PREFIX) {
              /* pattern starts with a known prefix */
              prefix_len = pattern[5];
!             prefix = pattern + 6;
              overlap = prefix + prefix_len - 1;
          } else if (flags & SRE_INFO_CHARSET)
              /* pattern starts with a character from a known set */
              charset = pattern + 5;
  
--- 1051,1062 ----
          if (flags & SRE_INFO_PREFIX) {
              /* pattern starts with a known prefix */
+             /*     */
              prefix_len = pattern[5];
!             prefix_skip = pattern[6];
!             prefix = pattern + 7;
              overlap = prefix + prefix_len - 1;
          } else if (flags & SRE_INFO_CHARSET)
              /* pattern starts with a character from a known set */
+             /*  */
              charset = pattern + 5;
  
***************
*** 1043,1046 ****
--- 1064,1070 ----
      }
  
+     TRACE(("prefix = %p %d %d\n", prefix, prefix_len, prefix_skip));
+     TRACE(("charset = %p\n", charset));
+ 
  #if defined(USE_FAST_SEARCH)
      if (prefix_len > 1) {
***************
*** 1059,1068 ****
                      if (++i == prefix_len) {
                          /* found a potential match */
!                         TRACE(("%8d: === SEARCH === hit\n", PTR(ptr)));
!                         state->start = ptr - prefix_len + 1;
!                         state->ptr = ptr + 1;
                          if (flags & SRE_INFO_LITERAL)
                              return 1; /* we got all of it */
!                         status = SRE_MATCH(state, pattern + 2*prefix_len, 1);
                          if (status != 0)
                              return status;
--- 1083,1092 ----
                      if (++i == prefix_len) {
                          /* found a potential match */
!                         TRACE(("|%p|%p|SEARCH SCAN\n", pattern, ptr));
!                         state->start = ptr + 1 - prefix_len;
!                         state->ptr = ptr + 1 - prefix_len + prefix_skip;
                          if (flags & SRE_INFO_LITERAL)
                              return 1; /* we got all of it */
!                         status = SRE_MATCH(state, pattern + 2*prefix_skip, 1);
                          if (status != 0)
                              return status;
***************
*** 1084,1087 ****
--- 1108,1112 ----
             for short prefixes, and if fast search is disabled */
          SRE_CODE chr = pattern[1];
+         end = state->end;
          for (;;) {
              while (ptr < end && (SRE_CODE) ptr[0] != chr)
***************
*** 1089,1093 ****
              if (ptr == end)
                  return 0;
!             TRACE(("%8d: === SEARCH === literal\n", PTR(ptr)));
              state->start = ptr;
              state->ptr = ++ptr;
--- 1114,1118 ----
              if (ptr == end)
                  return 0;
!             TRACE(("|%p|%p|SEARCH LITERAL\n", pattern, ptr));
              state->start = ptr;
              state->ptr = ++ptr;
***************
*** 1098,1107 ****
      } else if (charset) {
          /* pattern starts with a character from a known set */
          for (;;) {
!             while (ptr < end && !SRE_MEMBER(charset, ptr[0]))
                  ptr++;
              if (ptr == end)
                  return 0;
!             TRACE(("%8d: === SEARCH === charset\n", PTR(ptr)));
              state->start = ptr;
              state->ptr = ptr;
--- 1123,1133 ----
      } else if (charset) {
          /* pattern starts with a character from a known set */
+         end = state->end;
          for (;;) {
!             while (ptr < end && !SRE_CHARSET(charset, ptr[0]))
                  ptr++;
              if (ptr == end)
                  return 0;
!             TRACE(("|%p|%p|SEARCH CHARSET\n", pattern, ptr));
              state->start = ptr;
              state->ptr = ptr;
***************
*** 1109,1117 ****
              if (status != 0)
                  break;
          }
      } else
          /* general case */
          while (ptr <= end) {
!             TRACE(("%8d: === SEARCH ===\n", PTR(ptr))); 
              state->start = state->ptr = ptr++;
              status = SRE_MATCH(state, pattern, 1);
--- 1135,1144 ----
              if (status != 0)
                  break;
+             ptr++;
          }
      } else
          /* general case */
          while (ptr <= end) {
!             TRACE(("|%p|%p|SEARCH\n", pattern, ptr));
              state->start = state->ptr = ptr++;
              status = SRE_MATCH(state, pattern, 1);
***************
*** 1481,1484 ****
--- 1508,1513 ----
      state.ptr = state.start;
  
+     TRACE(("|%p|%p|MATCH\n", PatternObject_GetCode(self), state.ptr));
+ 
      if (state.charsize == 1) {
          status = sre_match(&state, PatternObject_GetCode(self), 1);
***************
*** 1489,1492 ****
--- 1518,1523 ----
      }
  
+     TRACE(("|%p|%p|END\n", PatternObject_GetCode(self), state.ptr));
+ 
      state_fini(&state);
  
***************
*** 1510,1513 ****
--- 1541,1546 ----
          return NULL;
  
+     TRACE(("|%p|%p|SEARCH\n", PatternObject_GetCode(self), state.ptr));
+ 
      if (state.charsize == 1) {
          status = sre_search(&state, PatternObject_GetCode(self));
***************
*** 1517,1520 ****
--- 1550,1555 ----
  #endif
      }
+ 
+     TRACE(("|%p|%p|END\n", PatternObject_GetCode(self), state.ptr));
  
      state_fini(&state);



From python-dev@python.org  Mon Aug  7 22:00:45 2000
From: python-dev@python.org (Jack Jansen)
Date: Mon, 7 Aug 2000 14:00:45 -0700
Subject: [Python-checkins] CVS: python/dist/src/Include pythonrun.h,2.31,2.32
Message-ID: <200008072100.OAA12232@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Include
In directory slayer.i.sourceforge.net:/tmp/cvs-serv12077

Modified Files:
	pythonrun.h 
Log Message:
Added a prototype for PyOS_CheckStack (within #ifdef USE_STACKCHECK).


Index: pythonrun.h
===================================================================
RCS file: /cvsroot/python/python/dist/src/Include/pythonrun.h,v
retrieving revision 2.31
retrieving revision 2.32
diff -C2 -r2.31 -r2.32
*** pythonrun.h	2000/07/09 00:55:06	2.31
--- pythonrun.h	2000/08/07 21:00:42	2.32
***************
*** 88,91 ****
--- 88,94 ----
  extern DL_IMPORT(int) (*PyOS_InputHook)(void);
  extern DL_IMPORT(char) *(*PyOS_ReadlineFunctionPointer)(char *);
+ #ifdef USE_STACKCHECK
+ int PyOS_CheckStack(void);		/* Check that we aren't overflowing our stack */
+ #endif
  
  #ifdef __cplusplus



From python-dev@python.org  Mon Aug  7 22:02:53 2000
From: python-dev@python.org (Jack Jansen)
Date: Mon, 7 Aug 2000 14:02:53 -0700
Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.34,2.35
Message-ID: <200008072102.OAA13080@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv12753

Modified Files:
	_sre.c 
Log Message:
Added a missing } in the USE_STACKCHECK code.


Index: _sre.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v
retrieving revision 2.34
retrieving revision 2.35
diff -C2 -r2.34 -r2.35
*** _sre.c	2000/08/07 20:59:04	2.34
--- _sre.c	2000/08/07 21:02:50	2.35
***************
*** 571,574 ****
--- 571,575 ----
      if (level % 10 == 0 && PyOS_CheckStack()) {
          return SRE_ERROR_RECURSION_LIMIT;
+     }
  #endif
  



From python-dev@python.org  Tue Aug  8 00:00:51 2000
From: python-dev@python.org (Barry Warsaw)
Date: Mon, 7 Aug 2000 16:00:51 -0700
Subject: [Python-checkins] CVS: python/nondist/peps pep-0001.txt,1.2,1.3
Message-ID: <200008072300.QAA06465@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/peps
In directory slayer.i.sourceforge.net:/tmp/cvs-serv6428

Modified Files:
	pep-0001.txt 
Log Message:
PEP proposals must have a title and an abstract.


Index: pep-0001.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/peps/pep-0001.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -r1.2 -r1.3
*** pep-0001.txt	2000/07/25 17:59:08	1.2
--- pep-0001.txt	2000/08/07 23:00:47	1.3
***************
*** 49,61 ****
      and specifies a location (e.g. egroups, python.org, Roundup).
  
!     The champion then emails the PEP editor describing the proposal
!     and its title.  If the PEP editor approves, he will assign the PEP
!     a number, label it as standards track or informational, give it
!     status 'draft', and create and check-in an initial template for
!     the PEP.  The PEP editor will not unreasonably deny a PEP.
!     Reasons for denying PEP status include duplication of effort,
!     being technically unsound, or not in keeping with the Python
!     philosophy; the BDFL (Benevolent Dictator for Life, Guido van
!     Rossum ) is the final arbitrator of the latter.
  
      Discussion concerning a PEP should initially be kept out of the
--- 49,63 ----
      and specifies a location (e.g. egroups, python.org, Roundup).
  
!     The champion then emails the PEP editor with a proposed title and
!     an abstract of about a paragraph in length.
! 
!     If the PEP editor approves, he will assign the PEP a number, label
!     it as standards track or informational, give it status 'draft',
!     and create and check-in an initial template for the PEP.  The PEP
!     editor will not unreasonably deny a PEP.  Reasons for denying PEP
!     status include duplication of effort, being technically unsound,
!     or not in keeping with the Python philosophy; the BDFL (Benevolent
!     Dictator for Life, Guido van Rossum ) is the
!     final arbitrator of the latter.
  
      Discussion concerning a PEP should initially be kept out of the



From python-dev@python.org  Tue Aug  8 03:30:27 2000
From: python-dev@python.org (Barry Warsaw)
Date: Mon, 7 Aug 2000 19:30:27 -0700
Subject: [Python-checkins] CVS: python/nondist/peps pep-0000.txt,1.19,1.20
Message-ID: <200008080230.TAA20553@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/peps
In directory slayer.i.sourceforge.net:/tmp/cvs-serv20545

Modified Files:
	pep-0000.txt 
Log Message:
PEP 2 added.

Conform headers to PEP 1.


Index: pep-0000.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/peps/pep-0000.txt,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -r1.19 -r1.20
*** pep-0000.txt	2000/08/03 15:42:42	1.19
--- pep-0000.txt	2000/08/08 02:30:24	1.20
***************
*** 2,7 ****
  Title: Index of Python Enhancement Proposals (PEPs)
  Version: $Revision$
! Owner: bwarsaw@beopen.com (Barry A. Warsaw)
  Status: Active
  
  Introduction
--- 2,10 ----
  Title: Index of Python Enhancement Proposals (PEPs)
  Version: $Revision$
! Author: bwarsaw@beopen.com (Barry A. Warsaw)
  Status: Active
+ Type: Informational
+ Created: 13-Jul-2000
+ Post-History:
  
  Introduction
***************
*** 18,21 ****
--- 21,25 ----
         0  pep-0000.txt  Index of Python Enhance Proposals    bwarsaw
         1  pep-0001.txt  PEP Guidelines                       bwarsaw, jhylton
+        2  pep-0002.txt  Procedure for Adding New Modules     esr
  
       160  pep-0160.txt  Python 1.6 Release Schedule          fdrake



From python-dev@python.org  Tue Aug  8 03:30:57 2000
From: python-dev@python.org (Barry Warsaw)
Date: Mon, 7 Aug 2000 19:30:57 -0700
Subject: [Python-checkins] CVS: python/nondist/peps pep-0001.txt,1.3,1.4
Message-ID: <200008080230.TAA20587@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/peps
In directory slayer.i.sourceforge.net:/tmp/cvs-serv20579

Modified Files:
	pep-0001.txt 
Log Message:
Informational PEPs can also have a status of Active.


Index: pep-0001.txt
===================================================================
RCS file: /cvsroot/python/python/nondist/peps/pep-0001.txt,v
retrieving revision 1.3
retrieving revision 1.4
diff -C2 -r1.3 -r1.4
*** pep-0001.txt	2000/08/07 23:00:47	1.3
--- pep-0001.txt	2000/08/08 02:30:55	1.4
***************
*** 110,114 ****
--- 110,117 ----
          Deferred
  
+     Some informational PEPs may also have a status of `Active' if they
+     are never meant to be completed.  E.g. PEP 1.
  
+ 
  What belongs in a successful PEP?
  
***************
*** 166,170 ****
          Version: 
          Author: 
!         Status: 
          Type: 
          Created: 
--- 169,173 ----
          Version: 
          Author: 
!         Status: 
          Type: 
          Created: 



From python-dev@python.org  Tue Aug  8 03:31:27 2000
From: python-dev@python.org (Barry Warsaw)
Date: Mon, 7 Aug 2000 19:31:27 -0700
Subject: [Python-checkins] CVS: python/nondist/peps pep-0002.txt,NONE,1.1
Message-ID: <200008080231.TAA20639@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/nondist/peps
In directory slayer.i.sourceforge.net:/tmp/cvs-serv20629

Added Files:
	pep-0002.txt 
Log Message:
PEP 2, Procedure for Adding New Modules, assigned to esr.


***** Error reading new file(2, 'No such file or directory')


From python-dev@python.org  Tue Aug  8 09:04:32 2000
From: python-dev@python.org (M.-A. Lemburg)
Date: Tue, 8 Aug 2000 01:04:32 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects unicodeobject.c,2.55,2.56
Message-ID: <200008080804.BAA25769@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25638/Objects

Modified Files:
	unicodeobject.c 
Log Message:
Removing UTF-16 aware Unicode comparison code. This kind of compare
function (together with other locale aware ones) should into a new collation
support module. See python-dev for a discussion of this removal.

Note: This patch should also be applied to the 1.6 branch.

Index: unicodeobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/unicodeobject.c,v
retrieving revision 2.55
retrieving revision 2.56
diff -C2 -r2.55 -r2.56
*** unicodeobject.c	2000/08/03 18:44:28	2.55
--- unicodeobject.c	2000/08/08 08:04:29	2.56
***************
*** 3170,3173 ****
--- 3170,3179 ----
  }
  
+ #if 0
+ 
+ /* This code should go into some future Unicode collation support
+    module. The basic comparison should compare ordinals on a naive
+    basis (this is what Java does and thus JPython too).
+ 
  /* speedy UTF-16 code point order comparison */
  /* gleaned from: */
***************
*** 3213,3216 ****
--- 3219,3249 ----
      return (len1 < len2) ? -1 : (len1 != len2);
  }
+ 
+ #else
+ 
+ static int
+ unicode_compare(PyUnicodeObject *str1, PyUnicodeObject *str2)
+ {
+     register int len1, len2;
+ 
+     Py_UNICODE *s1 = str1->str;
+     Py_UNICODE *s2 = str2->str;
+ 
+     len1 = str1->length;
+     len2 = str2->length;
+     
+     while (len1 > 0 && len2 > 0) {
+ 	register long diff;
+ 
+         diff = (long)*s1++ - (long)*s2++;
+         if (diff)
+             return (diff < 0) ? -1 : (diff != 0);
+         len1--; len2--;
+     }
+ 
+     return (len1 < len2) ? -1 : (len1 != len2);
+ }
+ 
+ #endif
  
  int PyUnicode_Compare(PyObject *left,



From python-dev@python.org  Tue Aug  8 09:03:49 2000
From: python-dev@python.org (M.-A. Lemburg)
Date: Tue, 8 Aug 2000 01:03:49 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_unicode.py,1.19,1.20
Message-ID: <200008080803.BAA25293@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25220/Lib/test

Modified Files:
	test_unicode.py 
Log Message:
Removing UTF-16 aware Unicode comparison code. This kind of compare
function (together with other locale aware ones) should into a new collation
support module. See python-dev for a discussion of this removal.

Note: This patch should also be applied to the 1.6 branch.

Index: test_unicode.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_unicode.py,v
retrieving revision 1.19
retrieving revision 1.20
diff -C2 -r1.19 -r1.20
*** test_unicode.py	2000/07/07 17:48:52	1.19
--- test_unicode.py	2000/08/08 08:03:46	1.20
***************
*** 169,222 ****
  print 'done.'
  
! print 'Testing UTF-16 code point order comparisons...',
! #No surrogates, no fixup required.
! assert u'\u0061' < u'\u20ac'
! # Non surrogate below surrogate value, no fixup required
! assert u'\u0061' < u'\ud800\udc02'
  
! # Non surrogate above surrogate value, fixup required
! def test_lecmp(s, s2):
!   assert s <  s2 , "comparison failed on %s < %s" % (s, s2)
!   
! def test_fixup(s):
!   s2 = u'\ud800\udc01'
!   test_lecmp(s, s2)
!   s2 = u'\ud900\udc01'
!   test_lecmp(s, s2)
!   s2 = u'\uda00\udc01'
!   test_lecmp(s, s2)
!   s2 = u'\udb00\udc01'
!   test_lecmp(s, s2)
!   s2 = u'\ud800\udd01'
!   test_lecmp(s, s2)
!   s2 = u'\ud900\udd01'
!   test_lecmp(s, s2)
!   s2 = u'\uda00\udd01'
!   test_lecmp(s, s2)
!   s2 = u'\udb00\udd01'
!   test_lecmp(s, s2)
!   s2 = u'\ud800\ude01'
!   test_lecmp(s, s2)
!   s2 = u'\ud900\ude01'
!   test_lecmp(s, s2)
!   s2 = u'\uda00\ude01'
!   test_lecmp(s, s2)
!   s2 = u'\udb00\ude01'
!   test_lecmp(s, s2)
!   s2 = u'\ud800\udfff'
!   test_lecmp(s, s2)
!   s2 = u'\ud900\udfff'
!   test_lecmp(s, s2)
!   s2 = u'\uda00\udfff'
!   test_lecmp(s, s2)
!   s2 = u'\udb00\udfff'
!   test_lecmp(s, s2)
  
! test_fixup(u'\ue000')
! test_fixup(u'\uff61')
  
! # Surrogates on both sides, no fixup required
! assert u'\ud800\udc02' < u'\ud84d\udc56'
! print 'done.'
  
  test('ljust', u'abc',  u'abc       ', 10)
--- 169,225 ----
  print 'done.'
  
! if 0:
!     # Move these tests to a Unicode collation module test...
  
!     print 'Testing UTF-16 code point order comparisons...',
!     #No surrogates, no fixup required.
!     assert u'\u0061' < u'\u20ac'
!     # Non surrogate below surrogate value, no fixup required
!     assert u'\u0061' < u'\ud800\udc02'
  
!     # Non surrogate above surrogate value, fixup required
!     def test_lecmp(s, s2):
!       assert s <  s2 , "comparison failed on %s < %s" % (s, s2)
  
!     def test_fixup(s):
!       s2 = u'\ud800\udc01'
!       test_lecmp(s, s2)
!       s2 = u'\ud900\udc01'
!       test_lecmp(s, s2)
!       s2 = u'\uda00\udc01'
!       test_lecmp(s, s2)
!       s2 = u'\udb00\udc01'
!       test_lecmp(s, s2)
!       s2 = u'\ud800\udd01'
!       test_lecmp(s, s2)
!       s2 = u'\ud900\udd01'
!       test_lecmp(s, s2)
!       s2 = u'\uda00\udd01'
!       test_lecmp(s, s2)
!       s2 = u'\udb00\udd01'
!       test_lecmp(s, s2)
!       s2 = u'\ud800\ude01'
!       test_lecmp(s, s2)
!       s2 = u'\ud900\ude01'
!       test_lecmp(s, s2)
!       s2 = u'\uda00\ude01'
!       test_lecmp(s, s2)
!       s2 = u'\udb00\ude01'
!       test_lecmp(s, s2)
!       s2 = u'\ud800\udfff'
!       test_lecmp(s, s2)
!       s2 = u'\ud900\udfff'
!       test_lecmp(s, s2)
!       s2 = u'\uda00\udfff'
!       test_lecmp(s, s2)
!       s2 = u'\udb00\udfff'
!       test_lecmp(s, s2)
! 
!     test_fixup(u'\ue000')
!     test_fixup(u'\uff61')
! 
!     # Surrogates on both sides, no fixup required
!     assert u'\ud800\udc02' < u'\ud84d\udc56'
!     print 'done.'
  
  test('ljust', u'abc',  u'abc       ', 10)



From python-dev@python.org  Tue Aug  8 09:04:06 2000
From: python-dev@python.org (M.-A. Lemburg)
Date: Tue, 8 Aug 2000 01:04:06 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test/output test_unicode,1.9,1.10
Message-ID: <200008080804.BAA25503@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test/output
In directory slayer.i.sourceforge.net:/tmp/cvs-serv25447/Lib/test/output

Modified Files:
	test_unicode 
Log Message:
Removing UTF-16 aware Unicode comparison code. This kind of compare
function (together with other locale aware ones) should into a new collation
support module. See python-dev for a discussion of this removal.

Note: This patch should also be applied to the 1.6 branch.

Index: test_unicode
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/output/test_unicode,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -r1.9 -r1.10
*** test_unicode	2000/07/10 15:06:06	1.9
--- test_unicode	2000/08/08 08:04:03	1.10
***************
*** 1,5 ****
  test_unicode
  Testing Unicode comparisons... done.
- Testing UTF-16 code point order comparisons... done.
  Testing Unicode contains method... done.
  Testing Unicode formatting strings... done.
--- 1,4 ----



From python-dev@python.org  Tue Aug  8 15:38:17 2000
From: python-dev@python.org (Greg Ward)
Date: Tue, 8 Aug 2000 07:38:17 -0700
Subject: [Python-checkins] CVS: distutils/distutils util.py,1.42,1.43
Message-ID: <200008081438.HAA08098@slayer.i.sourceforge.net>

Update of /cvsroot/python/distutils/distutils
In directory slayer.i.sourceforge.net:/tmp/cvs-serv8087

Modified Files:
	util.py 
Log Message:
Fix so 'split_quoted()' handles any whitespace delimiter (not just space).

Index: util.py
===================================================================
RCS file: /cvsroot/python/distutils/distutils/util.py,v
retrieving revision 1.42
retrieving revision 1.43
diff -C2 -r1.42 -r1.43
*** util.py	2000/08/05 01:25:24	1.42
--- util.py	2000/08/08 14:38:13	1.43
***************
*** 140,144 ****
  
  # Needed by 'split_quoted()'
! _wordchars_re = re.compile(r'[^\\\'\"\ ]*')
  _squote_re = re.compile(r"'(?:[^'\\]|\\.)*'")
  _dquote_re = re.compile(r'"(?:[^"\\]|\\.)*"')
--- 140,144 ----
  
  # Needed by 'split_quoted()'
! _wordchars_re = re.compile(r'[^\\\'\"%s ]*' % string.whitespace)
  _squote_re = re.compile(r"'(?:[^'\\]|\\.)*'")
  _dquote_re = re.compile(r'"(?:[^"\\]|\\.)*"')
***************
*** 170,174 ****
              break
  
!         if s[end] == ' ':               # unescaped, unquoted space: now
              words.append(s[:end])       # we definitely have a word delimiter
              s = string.lstrip(s[end:])
--- 170,174 ----
              break
  
!         if s[end] in string.whitespace: # unescaped, unquoted whitespace: now
              words.append(s[:end])       # we definitely have a word delimiter
              s = string.lstrip(s[end:])



From python-dev@python.org  Tue Aug  8 17:12:56 2000
From: python-dev@python.org (Guido van Rossum)
Date: Tue, 8 Aug 2000 09:12:56 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib UserDict.py,1.7,1.8
Message-ID: <200008081612.JAA03860@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv3808

Modified Files:
	UserDict.py 
Log Message:
Barry's patch to implement the new setdefault() method.


Index: UserDict.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/UserDict.py,v
retrieving revision 1.7
retrieving revision 1.8
diff -C2 -r1.7 -r1.8
*** UserDict.py	2000/02/02 15:10:14	1.7
--- UserDict.py	2000/08/08 16:12:54	1.8
***************
*** 35,36 ****
--- 35,40 ----
      def get(self, key, failobj=None):
          return self.data.get(key, failobj)
+     def setdefault(self, key, failobj=None):
+         if not self.data.has_key(key):
+             self.data[key] = failobj
+         return self.data[key]



From python-dev@python.org  Tue Aug  8 17:13:25 2000
From: python-dev@python.org (Guido van Rossum)
Date: Tue, 8 Aug 2000 09:13:25 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_types.py,1.13,1.14
Message-ID: <200008081613.JAA04937@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv4816

Modified Files:
	test_types.py 
Log Message:
Barry's patch to test the new setdefault() method.


Index: test_types.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_types.py,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -r1.13 -r1.14
*** test_types.py	2000/02/23 22:23:17	1.13
--- test_types.py	2000/08/08 16:13:23	1.14
***************
*** 254,255 ****
--- 254,267 ----
  if d.get('a') != 1: raise TestFailed, 'present dict get, no 2nd arg'
  if d.get('a', 3) != 1: raise TestFailed, 'present dict get, w/ 2nd arg'
+ # dict.setdefault()
+ d = {}
+ if d.setdefault('key0') <> None:
+ 	raise TestFailed, 'missing {} setdefault, no 2nd arg'
+ if d.setdefault('key0') <> None:
+ 	raise TestFailed, 'present {} setdefault, no 2nd arg'
+ d.setdefault('key', []).append(3)
+ if d['key'][0] <> 3:
+ 	raise TestFailed, 'missing {} setdefault, w/ 2nd arg'
+ d.setdefault('key', []).append(4)
+ if len(d['key']) <> 2:
+ 	raise TestFailed, 'present {} setdefault, w/ 2nd arg'



From python-dev@python.org  Tue Aug  8 17:11:34 2000
From: python-dev@python.org (Guido van Rossum)
Date: Tue, 8 Aug 2000 09:11:34 -0700
Subject: [Python-checkins] CVS: python/dist/src/Objects dictobject.c,2.61,2.62
Message-ID: <200008081611.JAA01736@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Objects
In directory slayer.i.sourceforge.net:/tmp/cvs-serv1665

Modified Files:
	dictobject.c 
Log Message:
Barry's patch to implement the new setdefault() method.


Index: dictobject.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Objects/dictobject.c,v
retrieving revision 2.61
retrieving revision 2.62
diff -C2 -r2.61 -r2.62
*** dictobject.c	2000/07/22 19:25:51	2.61
--- dictobject.c	2000/08/08 16:11:31	2.62
***************
*** 951,954 ****
--- 951,989 ----
  
  static PyObject *
+ dict_setdefault(register dictobject *mp, PyObject *args)
+ {
+ 	PyObject *key;
+ 	PyObject *failobj = Py_None;
+ 	PyObject *val = NULL;
+ 	long hash;
+ 
+ 	if (!PyArg_ParseTuple(args, "O|O:setdefault", &key, &failobj))
+ 		return NULL;
+ 	if (mp->ma_table == NULL)
+ 		goto finally;
+ 
+ #ifdef CACHE_HASH
+ 	if (!PyString_Check(key) ||
+ 	    (hash = ((PyStringObject *) key)->ob_shash) == -1)
+ #endif
+ 	{
+ 		hash = PyObject_Hash(key);
+ 		if (hash == -1)
+ 			return NULL;
+ 	}
+ 	val = lookdict(mp, key, hash)->me_value;
+ 
+   finally:
+ 	if (val == NULL) {
+ 		val = failobj;
+ 		if (PyDict_SetItem((PyObject*)mp, key, failobj))
+ 			val = NULL;
+ 	}
+ 	Py_XINCREF(val);
+ 	return val;
+ }
+ 
+ 
+ static PyObject *
  dict_clear(register dictobject *mp, PyObject *args)
  {
***************
*** 994,997 ****
--- 1029,1033 ----
  	{"copy",	(PyCFunction)dict_copy},
  	{"get",         (PyCFunction)dict_get,          METH_VARARGS},
+ 	{"setdefault",  (PyCFunction)dict_setdefault,   METH_VARARGS},
  	{NULL,		NULL}		/* sentinel */
  };



From python-dev@python.org  Tue Aug  8 17:15:51 2000
From: python-dev@python.org (Guido van Rossum)
Date: Tue, 8 Aug 2000 09:15:51 -0700
Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libstdtypes.tex,1.27,1.28
Message-ID: <200008081615.JAA10277@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Doc/lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv10218

Modified Files:
	libstdtypes.tex 
Log Message:
Barry's patch to document the new setdefault() method.  Slightly
clarified the summary for default() in the table to indicate the side
effect.


Index: libstdtypes.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libstdtypes.tex,v
retrieving revision 1.27
retrieving revision 1.28
diff -C2 -r1.27 -r1.28
*** libstdtypes.tex	2000/08/01 00:07:17	1.27
--- libstdtypes.tex	2000/08/08 16:15:49	1.28
***************
*** 592,595 ****
--- 592,599 ----
             else \var{x}}
            {(4)}
+   \lineiii{\var{a}.setdefault(\var{k}\optional{, \var{x}})}
+           {\code{\var{a}[\var{k}]} if \code{\var{a}.has_key(\var{k})},
+            else \var{x} (also setting it)}
+           {(5)}
  \end{tableiii}
  
***************
*** 612,615 ****
--- 616,623 ----
  instead it returns \var{x}.  \var{x} is optional; when \var{x} is not
  provided and \var{k} is not in the map, \code{None} is returned.
+ 
+ \item[(5)] \function{setdefault()} is like \function{get()}, except
+ that if \var{k} is missing, \var{x} is both returned and inserted into
+ the dictionary as the value of \var{k}.
  \end{description}
  



From python-dev@python.org  Tue Aug  8 17:47:44 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Tue, 8 Aug 2000 09:47:44 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_re.py,1.22,1.23
Message-ID: <200008081647.JAA11560@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv9622/lib/test

Modified Files:
	test_re.py 
Log Message:


-- whitespace cleanup (more tests to be added in the next commit)

Index: test_re.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_re.py,v
retrieving revision 1.22
retrieving revision 1.23
diff -C2 -r1.22 -r1.23
*** test_re.py	2000/08/03 12:16:29	1.22
--- test_re.py	2000/08/08 16:47:42	1.23
***************
*** 38,42 ****
  try:
      assert re.sub("(?i)b+", "x", "bbbb BBBB") == 'x x'
!     
      def bump_num(matchobj):
          int_value = int(matchobj.group(0))
--- 38,42 ----
  try:
      assert re.sub("(?i)b+", "x", "bbbb BBBB") == 'x x'
! 
      def bump_num(matchobj):
          int_value = int(matchobj.group(0))
***************
*** 45,49 ****
      assert re.sub(r'\d+', bump_num, '08.2 -2 23x99y') == '9.3 -3 24x100y'
      assert re.sub(r'\d+', bump_num, '08.2 -2 23x99y', 3) == '9.3 -3 23x99y'
!     
      assert re.sub('.', lambda m: r"\n", 'x') == '\\n'
      assert re.sub('.', r"\n", 'x') == '\n'
--- 45,49 ----
      assert re.sub(r'\d+', bump_num, '08.2 -2 23x99y') == '9.3 -3 24x100y'
      assert re.sub(r'\d+', bump_num, '08.2 -2 23x99y', 3) == '9.3 -3 23x99y'
! 
      assert re.sub('.', lambda m: r"\n", 'x') == '\\n'
      assert re.sub('.', r"\n", 'x') == '\n'
***************
*** 51,55 ****
      s = r"\1\1"
      assert re.sub('(.)', s, 'x') == 'xx'
!     assert re.sub('(.)', re.escape(s), 'x') == s 
      assert re.sub('(.)', lambda m: s, 'x') == s
  
--- 51,55 ----
      s = r"\1\1"
      assert re.sub('(.)', s, 'x') == 'xx'
!     assert re.sub('(.)', re.escape(s), 'x') == s
      assert re.sub('(.)', lambda m: s, 'x') == s
  
***************
*** 147,151 ****
  if verbose:
      print 'Running tests on re.split'
!     
  try:
      assert re.split(":", ":a:b::c") == ['', 'a', 'b', '', 'c']
--- 147,151 ----
  if verbose:
      print 'Running tests on re.split'
! 
  try:
      assert re.split(":", ":a:b::c") == ['', 'a', 'b', '', 'c']
***************
*** 166,170 ****
  
      assert re.split("(:)", ":a:b::c", 2) == ['', ':', 'a', ':', 'b::c']
!     assert re.split("(:*)", ":a:b::c", 2) == ['', ':', 'a', ':', 'b::c']    
  except AssertionError:
      raise TestFailed, "qualified re.split"
--- 166,170 ----
  
      assert re.split("(:)", ":a:b::c", 2) == ['', ':', 'a', ':', 'b::c']
!     assert re.split("(:*)", ":a:b::c", 2) == ['', ':', 'a', ':', 'b::c']
  except AssertionError:
      raise TestFailed, "qualified re.split"
***************
*** 188,201 ****
  try:
      # No groups at all
!     m = re.match('a', 'a') ; assert m.groups() == ()    
      # A single group
!     m = re.match('(a)', 'a') ; assert m.groups() == ('a',)      
  
      pat = re.compile('((a)|(b))(c)?')
!     assert pat.match('a').groups() == ('a', 'a', None, None)    
!     assert pat.match('b').groups() == ('b', None, 'b', None)    
!     assert pat.match('ac').groups() == ('a', 'a', None, 'c')    
!     assert pat.match('bc').groups() == ('b', None, 'b', 'c')    
!     assert pat.match('bc').groups("") == ('b', "", 'b', 'c')    
  except AssertionError:
      raise TestFailed, "match .groups() method"
--- 188,201 ----
  try:
      # No groups at all
!     m = re.match('a', 'a') ; assert m.groups() == ()
      # A single group
!     m = re.match('(a)', 'a') ; assert m.groups() == ('a',)
  
      pat = re.compile('((a)|(b))(c)?')
!     assert pat.match('a').groups() == ('a', 'a', None, None)
!     assert pat.match('b').groups() == ('b', None, 'b', None)
!     assert pat.match('ac').groups() == ('a', 'a', None, 'c')
!     assert pat.match('bc').groups() == ('b', None, 'b', 'c')
!     assert pat.match('bc').groups("") == ('b', "", 'b', 'c')
  except AssertionError:
      raise TestFailed, "match .groups() method"
***************
*** 203,214 ****
  try:
      # A single group
!     m = re.match('(a)', 'a') 
!     assert m.group(0) == 'a' ; assert m.group(0) == 'a' 
      assert m.group(1) == 'a' ; assert m.group(1, 1) == ('a', 'a')
  
      pat = re.compile('(?:(?Pa)|(?Pb))(?Pc)?')
!     assert pat.match('a').group(1, 2, 3) == ('a', None, None)   
!     assert pat.match('b').group('a1', 'b2', 'c3') == (None, 'b', None)  
!     assert pat.match('ac').group(1, 'b2', 3) == ('a', None, 'c')        
  except AssertionError:
      raise TestFailed, "match .group() method"
--- 203,214 ----
  try:
      # A single group
!     m = re.match('(a)', 'a')
!     assert m.group(0) == 'a' ; assert m.group(0) == 'a'
      assert m.group(1) == 'a' ; assert m.group(1, 1) == ('a', 'a')
  
      pat = re.compile('(?:(?Pa)|(?Pb))(?Pc)?')
!     assert pat.match('a').group(1, 2, 3) == ('a', None, None)
!     assert pat.match('b').group('a1', 'b2', 'c3') == (None, 'b', None)
!     assert pat.match('ac').group(1, 'b2', 3) == ('a', None, 'c')
  except AssertionError:
      raise TestFailed, "match .group() method"
***************
*** 243,248 ****
      assert re.L == re.LOCALE
      assert re.M == re.MULTILINE
!     assert re.S == re.DOTALL 
!     assert re.X == re.VERBOSE 
  except AssertionError:
      raise TestFailed, 're module constants'
--- 243,248 ----
      assert re.L == re.LOCALE
      assert re.M == re.MULTILINE
!     assert re.S == re.DOTALL
!     assert re.X == re.VERBOSE
  except AssertionError:
      raise TestFailed, 're module constants'
***************
*** 261,265 ****
      # To save time, only run the first and last 10 tests
      #tests = tests[:10] + tests[-10:]
!     pass 
  
  for t in tests:
--- 261,265 ----
      # To save time, only run the first and last 10 tests
      #tests = tests[:10] + tests[-10:]
!     pass
  
  for t in tests:
***************
*** 269,273 ****
          pattern, s, outcome, repl, expected = t
      elif len(t)==3:
!         pattern, s, outcome = t 
      else:
          raise ValueError, ('Test tuples should have 3 or 5 fields',t)
--- 269,273 ----
          pattern, s, outcome, repl, expected = t
      elif len(t)==3:
!         pattern, s, outcome = t
      else:
          raise ValueError, ('Test tuples should have 3 or 5 fields',t)
***************
*** 277,281 ****
      except re.error:
          if outcome==SYNTAX_ERROR: pass  # Expected a syntax error
!         else: 
              print '=== Syntax error:', t
      except KeyboardInterrupt: raise KeyboardInterrupt
--- 277,281 ----
      except re.error:
          if outcome==SYNTAX_ERROR: pass  # Expected a syntax error
!         else:
              print '=== Syntax error:', t
      except KeyboardInterrupt: raise KeyboardInterrupt
***************
*** 331,335 ****
              # break (because it won't match at the end or start of a
              # string), so we'll ignore patterns that feature it.
!             
              if pattern[:2]!='\\B' and pattern[-2:]!='\\B' and result!=None:
                  obj=re.compile(pattern)
--- 331,335 ----
              # break (because it won't match at the end or start of a
              # string), so we'll ignore patterns that feature it.
! 
              if pattern[:2]!='\\B' and pattern[-2:]!='\\B' and result!=None:
                  obj=re.compile(pattern)



From python-dev@python.org  Tue Aug  8 17:52:54 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Tue, 8 Aug 2000 09:52:54 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test re_tests.py,1.13,1.14
Message-ID: <200008081652.JAA16644@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv16059/lib/test

Modified Files:
	re_tests.py 
Log Message:


-- whitespace cleanup (real changes coming in next checkin)

Index: re_tests.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/re_tests.py,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -r1.13 -r1.14
*** re_tests.py	1998/04/03 21:47:12	1.13
--- re_tests.py	2000/08/08 16:52:51	1.14
***************
*** 11,29 ****
  #
  # The benchmark suite does not test correctness, just speed.  The
! # first element of each tuple is the regex pattern; the second is a 
  # string to match it against.  The benchmarking code will embed the
! # second string inside several sizes of padding, to test how regex 
  # matching performs on large strings.
  
  benchmarks = [
!     ('Python', 'Python'),		# Simple text literal
!     ('.*Python', 'Python'),		# Bad text literal
!     ('.*Python.*', 'Python'),		# Worse text literal
!     ('.*(Python)', 'Python'),		# Bad text literal with grouping
!     
!     ('(Python|Perl|Tcl', 'Perl'),	# Alternation
!     ('(Python|Perl|Tcl)', 'Perl'),	# Grouped alternation
!     ('(Python)\\1', 'PythonPython'),	# Backreference
!     ('([0a-z][a-z]*,)+', 'a5,b7,c9,'),	# Disable the fastmap optimization
      ('([a-z][a-z0-9]*,)+', 'a5,b7,c9,') # A few sets
  ]
--- 11,29 ----
  #
  # The benchmark suite does not test correctness, just speed.  The
! # first element of each tuple is the regex pattern; the second is a
  # string to match it against.  The benchmarking code will embed the
! # second string inside several sizes of padding, to test how regex
  # matching performs on large strings.
  
  benchmarks = [
!     ('Python', 'Python'),               # Simple text literal
!     ('.*Python', 'Python'),             # Bad text literal
!     ('.*Python.*', 'Python'),           # Worse text literal
!     ('.*(Python)', 'Python'),           # Bad text literal with grouping
! 
!     ('(Python|Perl|Tcl', 'Perl'),       # Alternation
!     ('(Python|Perl|Tcl)', 'Perl'),      # Grouped alternation
!     ('(Python)\\1', 'PythonPython'),    # Backreference
!     ('([0a-z][a-z]*,)+', 'a5,b7,c9,'),  # Disable the fastmap optimization
      ('([a-z][a-z0-9]*,)+', 'a5,b7,c9,') # A few sets
  ]
***************
*** 48,52 ****
  # If the regex isn't expected to work, the latter two elements can be omitted.
  
! tests = [ 
      # Test ?P< and ?P= extensions
      ('(?P

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv29632/lib/test

Modified Files:
	test_re.py re_tests.py 
Log Message:


-- enabled some temporarily disabled RE tests
-- added basic unicode tests to test_re
-- added test case for Sjoerd's xmllib problem to re_tests

Index: test_re.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_re.py,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -r1.23 -r1.24
*** test_re.py	2000/08/08 16:47:42	1.23
--- test_re.py	2000/08/08 17:06:52	1.24
***************
*** 29,36 ****
      raise TestFailed, "re.search"
  
- # Try nasty case that overflows the straightforward recursive
- # implementation of repeated groups.
- #assert re.match('(x)*', 50000*'x').span() == (0, 50000)
- 
  if verbose:
      print 'Running tests on re.sub'
--- 29,32 ----
***************
*** 155,160 ****
      assert re.split("(:)*", ":a:b::c") == ['', ':', 'a', ':', 'b', ':', 'c']
      assert re.split("([b:]+)", ":a:b::c") == ['', ':', 'a', ':b::', 'c']
! ##    assert re.split("(b)|(:+)", ":a:b::c") == \
! ##           ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c']
      assert re.split("(?:b)|(?::+)", ":a:b::c") == ['', 'a', '', '', 'c']
  except AssertionError:
--- 151,156 ----
      assert re.split("(:)*", ":a:b::c") == ['', ':', 'a', ':', 'b', ':', 'c']
      assert re.split("([b:]+)", ":a:b::c") == ['', ':', 'a', ':b::', 'c']
!     assert re.split("(b)|(:+)", ":a:b::c") == \
!            ['', None, ':', 'a', None, ':', '', 'b', None, '', None, '::', 'c']
      assert re.split("(?:b)|(?::+)", ":a:b::c") == ['', 'a', '', '', 'c']
  except AssertionError:
***************
*** 254,257 ****
--- 250,263 ----
          print 'Exception raised on flag', flags
  
+ if verbose:
+     print 'Test engine limitations'
+ 
+ # Try nasty case that overflows the straightforward recursive
+ # implementation of repeated groups.
+ try:
+     assert re.match('(x)*', 50000*'x').span() == (0, 50000)
+ except RuntimeError, v:
+     print v
+ 
  from re_tests import *
  
***************
*** 327,330 ****
--- 333,349 ----
                  print '=== Failed incorrectly', t
  
+             # Try the match on a unicode string, and check that it
+             # still succeeds.
+             result=obj.search(unicode(s, "latin-1"))
+             if result==None:
+                 print '=== Fails on unicode match', t
+ 
+             # Try the match on a unicode pattern, and check that it
+             # still succeeds.
+             obj=re.compile(unicode(pattern, "latin-1"))
+             result=obj.search(s)
+             if result==None:
+                 print '=== Fails on unicode pattern match', t
+ 
              # Try the match with the search area limited to the extent
              # of the match and see if it still succeeds.  \B will
***************
*** 351,352 ****
--- 370,378 ----
              if result==None:
                  print '=== Fails on locale-sensitive match', t
+ 
+             # Try the match with UNICODE locale enabled, and check
+             # that it still succeeds.
+             obj=re.compile(pattern, re.UNICODE)
+             result=obj.search(s)
+             if result==None:
+                 print '=== Fails on unicode-sensitive match', t

Index: re_tests.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/re_tests.py,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -r1.14 -r1.15
*** re_tests.py	2000/08/08 16:52:51	1.14
--- re_tests.py	2000/08/08 17:06:52	1.15
***************
*** 588,590 ****
--- 588,596 ----
      (r'\t\n\v\r\f\a', '\t\n\v\r\f\a', SUCCEED, 'found', chr(9)+chr(10)+chr(11)+chr(13)+chr(12)+chr(7)),
      (r'[\t][\n][\v][\r][\f][\b]', '\t\n\v\r\f\b', SUCCEED, 'found', '\t\n\v\r\f\b'),
+ 
+     # additional regression tests (1.6 and later)
+ 
+     # xmllib problem
+     (r'(([a-z]+):)?([a-z]+)$', 'smil', SUCCEED, 'g1+"-"+g2+"-"+g3', 'None-None-smil'),
+ 
  ]



From python-dev@python.org  Tue Aug  8 18:06:56 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Tue, 8 Aug 2000 10:06:56 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test/output test_re,1.12,1.13
Message-ID: <200008081706.KAA01000@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test/output
In directory slayer.i.sourceforge.net:/tmp/cvs-serv29632/lib/test/output

Modified Files:
	test_re 
Log Message:


-- enabled some temporarily disabled RE tests
-- added basic unicode tests to test_re
-- added test case for Sjoerd's xmllib problem to re_tests

Index: test_re
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/output/test_re,v
retrieving revision 1.12
retrieving revision 1.13
diff -C2 -r1.12 -r1.13
*** test_re	2000/08/01 13:01:43	1.12
--- test_re	2000/08/08 17:06:53	1.13
***************
*** 1 ****
--- 1,2 ----
  test_re
+ maximum recursion limit exceeded



From python-dev@python.org  Wed Aug  9 10:14:38 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Wed, 9 Aug 2000 02:14:38 -0700
Subject: [Python-checkins] CVS: python/dist/src/Lib/test test_sre.py,1.6,1.7
Message-ID: <200008090914.CAA32078@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Lib/test
In directory slayer.i.sourceforge.net:/tmp/cvs-serv31772/Lib/test

Modified Files:
	test_sre.py 
Log Message:


-- changed findall to return empty strings instead of None
   for undefined groups

Index: test_sre.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/test/test_sre.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -C2 -r1.6 -r1.7
*** test_sre.py	2000/08/03 16:29:50	1.6
--- test_sre.py	2000/08/09 09:14:35	1.7
***************
*** 178,181 ****
--- 178,182 ----
                                                     (":", ":"),
                                                     (":", "::")]
+     assert sre.findall("(a)|(b)", "abc") == [("a", ""), ("", "b")]
  except AssertionError:
      raise TestFailed, "sre.findall"



From python-dev@python.org  Wed Aug  9 10:14:37 2000
From: python-dev@python.org (Fredrik Lundh)
Date: Wed, 9 Aug 2000 02:14:37 -0700
Subject: [Python-checkins] CVS: python/dist/src/Modules _sre.c,2.35,2.36
Message-ID: <200008090914.CAA32072@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Modules
In directory slayer.i.sourceforge.net:/tmp/cvs-serv31772/Modules

Modified Files:
	_sre.c 
Log Message:


-- changed findall to return empty strings instead of None
   for undefined groups

Index: _sre.c
===================================================================
RCS file: /cvsroot/python/python/dist/src/Modules/_sre.c,v
retrieving revision 2.35
retrieving revision 2.36
diff -C2 -r2.35 -r2.36
*** _sre.c	2000/08/07 21:02:50	2.35
--- _sre.c	2000/08/09 09:14:34	2.36
***************
*** 16,19 ****
--- 16,20 ----
   * 00-08-03 fl  added recursion limit
   * 00-08-07 fl  use PyOS_CheckStack() if available
+  * 00-08-08 fl  changed findall to return empty strings instead of None
   *
   * Copyright (c) 1997-2000 by Secret Labs AB.  All rights reserved.
***************
*** 569,575 ****
  
  #if defined(USE_STACKCHECK)
!     if (level % 10 == 0 && PyOS_CheckStack()) {
          return SRE_ERROR_RECURSION_LIMIT;
-     }
  #endif
  
--- 570,575 ----
  
  #if defined(USE_STACKCHECK)
!     if (level % 10 == 0 && PyOS_CheckStack())
          return SRE_ERROR_RECURSION_LIMIT;
  #endif
  
***************
*** 1353,1370 ****
  state_getslice(SRE_STATE* state, int index, PyObject* string)
  {
      index = (index - 1) * 2;
  
      if (string == Py_None || !state->mark[index] || !state->mark[index+1]) {
!         Py_INCREF(Py_None);
!         return Py_None;
      }
  
!     return PySequence_GetSlice(
!         string,
!         ((char*)state->mark[index] - (char*)state->beginning) /
!         state->charsize,
!         ((char*)state->mark[index+1] - (char*)state->beginning) /
!         state->charsize
!         );
  }
  
--- 1353,1370 ----
  state_getslice(SRE_STATE* state, int index, PyObject* string)
  {
+     int i, j;
+ 
      index = (index - 1) * 2;
  
      if (string == Py_None || !state->mark[index] || !state->mark[index+1]) {
!         i = j = 0;
!     } else {
!         i = ((char*)state->mark[index] - (char*)state->beginning) /
!             state->charsize;
!         j = ((char*)state->mark[index+1] - (char*)state->beginning) /
!             state->charsize;
      }
  
!     return PySequence_GetSlice(string, i, j);
  }
  



From python-dev@python.org  Wed Aug  9 14:45:08 2000
From: python-dev@python.org (Fred L. Drake)
Date: Wed, 9 Aug 2000 06:45:08 -0700
Subject: [Python-checkins] CVS: python/dist/src/Doc/perl python.perl,1.78,1.79
Message-ID: <200008091345.GAA15585@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Doc/perl
In directory slayer.i.sourceforge.net:/tmp/cvs-serv15570/perl

Modified Files:
	python.perl 
Log Message:

fix_font():  Handle one more case for the magical first column of tables.


Index: python.perl
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/perl/python.perl,v
retrieving revision 1.78
retrieving revision 1.79
diff -C2 -r1.78 -r1.79
*** python.perl	2000/08/03 17:25:44	1.78
--- python.perl	2000/08/09 13:45:04	1.79
***************
*** 951,954 ****
--- 951,957 ----
          $font = 'tt class="constant"';
      }
+     elsif ($font eq 'kbd') {
+         $font = 'kbd';
+     }
      return $font;
  }



From python-dev@python.org  Wed Aug  9 15:34:51 2000
From: python-dev@python.org (Fred L. Drake)
Date: Wed, 9 Aug 2000 07:34:51 -0700
Subject: [Python-checkins] CVS: python/dist/src/Doc/lib libcurses.tex,1.13,1.14
Message-ID: <200008091434.HAA26781@slayer.i.sourceforge.net>

Update of /cvsroot/python/python/dist/src/Doc/lib
In directory slayer.i.sourceforge.net:/tmp/cvs-serv26751/lib

Modified Files:
	libcurses.tex 
Log Message:

Fix a few markup errors and lots of small consistency issues.

Add "See also" link to curses.wrapper module from curses module.


Index: libcurses.tex
===================================================================
RCS file: /cvsroot/python/python/dist/src/Doc/lib/libcurses.tex,v
retrieving revision 1.13
retrieving revision 1.14
diff -C2 -r1.13 -r1.14
*** libcurses.tex	2000/08/04 07:35:41	1.13
--- libcurses.tex	2000/08/09 14:34:48	1.14
***************
*** 23,27 ****
                             settings.}
    \seemodule{curses.textpad}{Editable text widget for curses supporting 
! 			     Emacs-like bindings.}
    \seetext{Tutorial material on using curses with Python is available
             on the Python Web site as Andrew Kuchling's
--- 23,30 ----
                             settings.}
    \seemodule{curses.textpad}{Editable text widget for curses supporting 
! 			     \program{Emacs}-like bindings.}
!   \seemodule{curses.wrapper}{Convenience function to ensure proper
!                              terminal setup and resetting on
!                              application entry and exit.}
    \seetext{Tutorial material on using curses with Python is available
             on the Python Web site as Andrew Kuchling's
***************
*** 35,40 ****
  
  The module \module{curses} defines the following exception:
  \begin{excdesc}{error}
! Curses function returned an error status.
  \end{excdesc}
  
--- 38,44 ----
  
  The module \module{curses} defines the following exception:
+ 
  \begin{excdesc}{error}
! Exception raised when a curses library function returns an error.
  \end{excdesc}
  
***************
*** 968,973 ****
  \end{datadesc}
  
  
! \begin{tableii}{c|l}{code}{Attribute}{Meaning}
    \lineii{A_ALTCHARSET}{Alternate character set mode.}
    \lineii{A_BLINK}{Blink mode.}
--- 972,978 ----
  \end{datadesc}
  
+ Several constants are available to specify character cell attributes:
  
! \begin{tableii}{l|l}{code}{Attribute}{Meaning}
    \lineii{A_ALTCHARSET}{Alternate character set mode.}
    \lineii{A_BLINK}{Blink mode.}
***************
*** 980,989 ****
  
  Keys are referred to by integer constants with names starting with 
! \code{KEY_}.   The exact keycaps available are system dependent.
  
  % XXX this table is far too large!
  % XXX should this table be alphabetized?
  
! \begin{tableii}{c|l}{code}{Key constant}{Key}
    \lineii{KEY_MIN}{Minimum key value}
    \lineii{KEY_BREAK}{ Break key (unreliable) }
--- 985,994 ----
  
  Keys are referred to by integer constants with names starting with 
! \samp{KEY_}.   The exact keycaps available are system dependent.
  
  % XXX this table is far too large!
  % XXX should this table be alphabetized?
  
! \begin{tableii}{l|l}{code}{Key constant}{Key}
    \lineii{KEY_MIN}{Minimum key value}
    \lineii{KEY_BREAK}{ Break key (unreliable) }
***************
*** 1082,1093 ****
  \end{tableii}
  
! On VT100s and their software emulations such as X terminal emulators,
! there are normally at least four function keys (KEY_F1, KEY_F2,
! KEY_F3, KEY_F4) available and the arrow keys mapped to KEY_UP,
! KEY_DOWN, KEY_LEFT and KEY_RIGHT in the obvious way. If your machine has a PC
! keybboard, it is safe to expect arrow keys and twelve function keys; also,
! the following keypad mappings are standard:
  
! \begin{tableii}{c|l}{code}{Keycap}{code}
     \lineii{Insert}{KEY_IC}
     \lineii{Delete}{KEY_DC}
--- 1087,1100 ----
  \end{tableii}
  
! On VT100s and their software emulations, such as X terminal emulators,
! there are normally at least four function keys (\constant{KEY_F1},
! \constant{KEY_F2}, \constant{KEY_F3}, \constant{KEY_F4}) available,
! and the arrow keys mapped to \constant{KEY_UP}, \constant{KEY_DOWN},
! \constant{KEY_LEFT} and \constant{KEY_RIGHT} in the obvious way.  If
! your machine has a PC keybboard, it is safe to expect arrow keys and
! twelve function keys (older PC keyboards may have only ten function
! keys); also, the following keypad mappings are standard:
  
! \begin{tableii}{l|l}{kbd}{Keycap}{Constant}
     \lineii{Insert}{KEY_IC}
     \lineii{Delete}{KEY_DC}
***************
*** 1106,1110 ****
  been called.
  
! \begin{tableii}{c|l}{code}{ACS code}{Meaning}
    \lineii{ACS_BBSS}{alternate name for upper right corner}
    \lineii{ACS_BLOCK}{solid square block}
--- 1113,1117 ----
  been called.
  
! \begin{tableii}{l|l}{code}{ACS code}{Meaning}
    \lineii{ACS_BBSS}{alternate name for upper right corner}
    \lineii{ACS_BLOCK}{solid square block}
***************
*** 1154,1158 ****
  The following table lists the predefined colors:
  
! \begin{tableii}{c|l}{code}{Constant}{Color}
    \lineii{COLOR_BLACK}{Black}
    \lineii{COLOR_BLUE}{Blue}
--- 1161,1165 ----
  The following table lists the predefined colors:
  
! \begin{tableii}{l|l}{code}{Constant}{Color}
    \lineii{COLOR_BLACK}{Black}
    \lineii{COLOR_BLUE}{Blue}
***************
*** 1180,1187 ****
  module also provides a rectangle-drawing function useful for framing
  text boxes or for other purposes.
- 
- \subsection{Functions \label{curses-textpad-functions}}
  
! The module \module{curses.textpad} defines the following functions:
  
  \begin{funcdesc}{rectangle}{win, uly, ulx, lry, lrx}
--- 1187,1192 ----
  module also provides a rectangle-drawing function useful for framing
  text boxes or for other purposes.
  
! The module \module{curses.textpad} defines the following function:
  
  \begin{funcdesc}{rectangle}{win, uly, ulx, lry, lrx}
***************
*** 1197,1221 ****
  \end{funcdesc}
  
  \subsection{Textbox objects \label{curses-textpad-objects}}
  
  You can instantiate a \class{Textbox} object as follows:
  
! \classdesc{Textbox}{win}
! Return a textbox widget object.  The win argument should be a curses
! \class{WindowObject} in which the textbox is to be contained.  The
! edit cursor of the textbox is initially located at the upper left
! hand corner of the containin window, with coordinates (0,0). The
! instance's \member{stripspaces} flag is initially on.
  \end{classdesc}
  
! Textbox objects, have the following methods:
  
! \begin{methoddesc}{edit}{validator=None}
  This is the entry point you will normally use.  It accepts editing
! keystrokes until one of the termination keystrokes is entered.  If a
! validator function is specified, each entered keystroke is passed to
! it; command dispatch is done on the result. This method returns the
! window contents as a string; whether blanks in the window are included
! is affected by the \member{stripspaces} member.
  \end{methoddesc}
  
--- 1202,1228 ----
  \end{funcdesc}
  
+ 
  \subsection{Textbox objects \label{curses-textpad-objects}}
  
  You can instantiate a \class{Textbox} object as follows:
  
! \begin{classdesc}{Textbox}{win}
! Return a textbox widget object.  The \var{win} argument should be a
! curses \class{WindowObject} in which the textbox is to be contained.
! The edit cursor of the textbox is initially located at the upper left
! hand corner of the containin window, with coordinates \code{(0, 0)}.
! The instance's \member{stripspaces} flag is initially on.
  \end{classdesc}
  
! \class{Textbox} objects have the following methods:
  
! \begin{methoddesc}{edit}{\optional{validator}}
  This is the entry point you will normally use.  It accepts editing
! keystrokes until one of the termination keystrokes is entered.  If
! \var{validator} is supplied, it must be a function.  It will be called
! for each keystroke entered with the keystroke as a parameter; command
! dispatch is done on the result. This method returns the window
! contents as a string; whether blanks in the window are included is
! affected by the \member{stripspaces} member.
  \end{methoddesc}
  
***************
*** 1224,1228 ****
  keystrokes: 
  
! \begin{tableii}{c|l}{code}{keystroke}{action}
    \lineii{Ctrl-A}{Go to left edge of window.}
    \lineii{Ctrl-B}{Cursor left, wrapping to previous line if appropriate.}
--- 1231,1235 ----
  keystrokes: 
  
! \begin{tableii}{l|l}{kbd}{Keystroke}{Action}
    \lineii{Ctrl-A}{Go to left edge of window.}
    \lineii{Ctrl-B}{Cursor left, wrapping to previous line if appropriate.}
***************
*** 1242,1247 ****
  Move operations do nothing if the cursor is at an edge where the
  movement is not possible.  The following synonyms are supported