From noreply@sourceforge.net Fri Sep 1 00:04:39 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 16:04:39 -0700 Subject: [Python-bugs-list] [Bug #112468] sre/pre bug Message-ID: <200008312304.QAA16658@delerium.i.sourceforge.net> Bug #112468, was updated on 2000-Aug-21 22:05 Here is a current snapshot of the bug. Project: Python Category: Library Status: Closed Resolution: Fixed Bug Group: None Priority: 7 Summary: sre/pre bug Details: Compiling the simple pattern '(' with pre raises an exception while sre compiles it sucessfully. Further, the regex object that sre.compile returns will match any string. Using Python 1.6b1 (#0, Aug 7 2000, 12:30:24) [MSC 32 bit (Intel)] on win32, >>> import sre >>> regex_ = sre.compile('(') >>> regex_.pattern '(' >>> regex_.search('abc').group(0) '' while >>> import pre >>> regex_ = pre.compile('(') Traceback (most recent call last): File "", line 1, in ? File "C:\Python16\lib\pre.py", line 243, in compile code=pcre_compile(pattern, flags, groupindex) pcre.error: ('missing )', 1) Follow-Ups: Date: 2000-Aug-22 05:34 By: gvanrossum Comment: According to Fredrik, this is a minor parsing bug in SRE. He'll fix it. ------------------------------------------------------- Date: 2000-Aug-25 07:42 By: jhylton Comment: Bumping priority so its gets fixed before release. ------------------------------------------------------- Date: 2000-Aug-31 08:24 By: effbot Comment: note: for some reason, the RE test harness ignores syntax errors under certain conditions. ...and it has done so all the time, so this is just one of many cases where SRE is more tolerant than PCRE. sigh :-( ------------------------------------------------------- Date: 2000-Aug-31 16:04 By: effbot Comment: done. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112468&group_id=5470 From noreply@sourceforge.net Fri Sep 1 01:54:44 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 17:54:44 -0700 Subject: [Python-bugs-list] [Bug #111403] 1.6b1 dumps core dereferencing a NULL tstate Message-ID: <200009010054.RAA25959@bush.i.sourceforge.net> Bug #111403, was updated on 2000-Aug-08 11:26 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: 1.6b1 dumps core dereferencing a NULL tstate Details: This is from an embeded python. I've not yet been able to reproduce this with a small example. But perhaps this stacktrace will be of some help. The problem seems to be that eval_code2() calls PyThreadState_GET() and gets a NULL pointer back. This pointer is dereferenced in PyFrame_New() later on which causes the core dump. The documentation seems to say that PyThreadState_GET() should never return NULL. So, there must be a bug in there somewhere. Here is the stack trace: #0 0x86858c8 in PyFrame_New (tstate=0x0, code=0x90fff70, globals=0x9284378, locals=0x0) at frameobject.c:120 120 PyFrameObject *back = tstate->frame; (gdb) bt #0 0x86858c8 in PyFrame_New (tstate=0x0, code=0x90fff70, globals=0x9284378, locals=0x0) at frameobject.c:120 #1 0x866b022 in eval_code2 (co=0x90fff70, globals=0x9284378, locals=0x0, args=0x8eb362c, argcount=5, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x925d2e8) at ceval.c:397 #2 0x866e4ee in call_function (func=0x911aca0, arg=0x95ea3b0, kw=0x0) at ceval.c:2521 #3 0x866e09d in PyEval_CallObjectWithKeywords (func=0x95f7a60, arg=0x95ea3b0, kw=0x0) at ceval.c:2359 #4 0x863f6cf in PyObject_CallObject (o=0x95f7a60, a=0x95ea3b0) at abstract.c:1370 #5 0x83e56ed in DrawingArea::process (this=0x95f5f48, event=@0xbfffeb80) at DrawingArea.C:971 #6 0x83e5b3d in DrawingArea::dspCB (this=0x95e0b68) at DrawingArea.C:1027 #7 0x832050f in TkFDWatcher::callback (data=0x95e2048) at TkFDWatcher.C:169 #8 0x8752612 in FileHandlerEventProc (evPtr=0x935a4d8, flags=-1) at ./tclUnixNotfy.c:405 #9 0x8741d10 in Tcl_ServiceEvent (flags=-1) at ./../generic/tclNotify.c:444 #10 0x8741fae in Tcl_DoOneEvent (flags=2) at ./../generic/tclNotify.c:747 #11 0x86a8757 in Tkapp_MainLoop (self=0x8f6a178, args=0x8eb6af0) at ./_tkinter.c:1794 #12 0x866e19e in call_builtin (func=0x8f7b7f0, arg=0x8eb6af0, kw=0x0) at ceval.c:2396 #13 0x866e0ab in PyEval_CallObjectWithKeywords (func=0x8f7b7f0, arg=0x8eb6af0, kw=0x0) at ceval.c:2361 #14 0x866d0cb in eval_code2 (co=0x8fb2d18, globals=0x903b9f8, locals=0x0, args=0x8f277b4, argcount=0, kws=0x8f277b4, kwcount=0, defs=0x90447c4, defcount=1, owner=0x0) at ceval.c:1680 #15 0x866cdda in eval_code2 (co=0x8f28b10, globals=0x8f294d0, locals=0x0, args=0x8f27600, argcount=1, kws=0x8f27604, kwcount=0, defs=0x0, defcount=0, owner=0x92c6238) at ceval.c:1579 #16 0x866cdda in eval_code2 (co=0x8f5b300, globals=0x8f294d0, locals=0x0, args=0x8eb8600, argcount=0, kws=0x8eb8600, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1579 #17 0x866cdda in eval_code2 (co=0x8f27ae0, globals=0x8eb0038, locals=0x8eb0038, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1579 #18 0x866afc8 in PyEval_EvalCode (co=0x8f27ae0, globals=0x8eb0038, locals=0x8eb0038) at ceval.c:290 #19 0x867d7c7 in run_node (n=0x8f1d0e0, filename=0x89fcacf "", globals=0x8eb0038, locals=0x8eb0038) at pythonrun.c:885 #20 0x867d777 in run_err_node (n=0x8f1d0e0, filename=0x89fcacf "", globals=0x8eb0038, locals=0x8eb0038) at pythonrun.c:870 #21 0x867d719 in PyRun_String (str=0x8f1ca68 "import GFE; GFE.main()\n", start=257, globals=0x8eb0038, locals=0x8eb0038) at pythonrun.c:847 #22 0x867ce4e in PyRun_SimpleString ( command=0x8f1ca68 "import GFE; GFE.main()\n") at pythonrun.c:589 #23 0x8681c51 in Py_Main (argc=4, argv=0xbffff204) at main.c:248 #24 0x80d90e1 in main (argc=4, argv=0xbffff204) at main.C:30 Mike Romberg (romberg@fsl.noaa.gov) Follow-Ups: Date: 2000-Aug-10 10:23 By: none Comment: Followup: This only happens when python is built --with-threads. There appears to be no problem when threads are not enabled. It should be noted that our embeded application uses no threads of any kind (python or pthreads from C++). But it may be the case that our code (C++) is not doing the right thing. It should be noted that our application works fine with python-1.5.2 compiled --with-threads. ------------------------------------------------------- Date: 2000-Aug-25 07:37 By: jhylton Comment: Mike -- Can you provide any more information about this bug? ------------------------------------------------------- Date: 2000-Aug-25 09:59 By: romberg Comment: My guess (and this is just a guess) is that this may have something to do with the interaction of python threads and Tkinter. Since most of our embeded (and non threaded) python application works fine except for one specific area, maybe that is thre problem with python 1.6. Let me attempt to explain what is going on since it may take some work to produce a small test case to reproduce the problem. Our application uses Tkinter for most of the UI. We do open a second connection to the X server using Xlib. This connection is used to render complex images into windows. Tkinter's canvas is just not fast enough. I am getting X events from these Xlib created windows via the Tcl/Tk FileEventHandler (as seen on the stack trace). I am using the Tcl/Tk C API to register for these events. The case which seems to cause the crash in python comes when I get a ButtonDown event on my second (non Tkinter) Display. This event is delivered from Tcl/Tk to some of our C++ code. Now for the interesting bit which I suspect might cause the problem. Our C++ code then releases the grab and calls into the python interpreter for it to post a popup menu (using Tkinter). This is seen on the stack as the most recent PyObject_CallObject(). This code attempts to post the Tkinter popuip menu but dies trying. This works fine under python-1.5.2 when it is built --with-thread and without. It works fine with python-1.6b2 as long as python is built without threads. But when it is built with threads I get this crash. Is it possible that the Tkinter layer is doing something different threadwise when python is built --with-threads? ------------------------------------------------------- Date: 2000-Aug-28 11:28 By: none Comment: Another followup. I've compiled python-1.6b1 on HP-UX-10.20 and linked the whole thing with purify. Purify does not show any errors and everything runs fine when python is built --without-thread. I was unable to get python to build on HP-UX --with-thread. I suspect that this might have something to do with the DCE threads HPUX uses. But in any case. The extra code linked into our embeded interpreter, is not doing anything funny with pointers (as far as purify could find). Mike (romberg@fsl.noaa.gov) ------------------------------------------------------- Date: 2000-Aug-30 10:46 By: gvanrossum Comment: Looks like just another example of HP-UX build problems. (esp. w. threads?) ------------------------------------------------------- Date: 2000-Aug-30 10:56 By: none Comment: Yea. I'm not really interested in the HP platform for use with threads (they are a mess). I was just using it because that is the only platform I have access to which can run purify. The real problem is under linux (redhat-6.2) when threads are enabled. I just wanted to make sure that there were not any funny memory problems caused by the python extensions we have added to our embeded python. Purify (on HPUX-10.20) seems to give a clean bill of health. So, I'm guessing that whattever is causing the core dump under linux is specific to the thread support in python. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=111403&group_id=5470 From noreply@sourceforge.net Fri Sep 1 04:41:47 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 20:41:47 -0700 Subject: [Python-bugs-list] [Bug #110650] python with-threads core-dumps (PR#342) Message-ID: <200009010341.UAA26038@delerium.i.sourceforge.net> Bug #110650, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: python with-threads core-dumps (PR#342) Details: Jitterbug-Id: 342 Submitted-By: michael.exner@mrz.uni-magdeburg.de Date: Wed, 31 May 2000 09:43:38 -0400 (EDT) Version: 1.5.2 OS: hpux-11.00 When I compile python with threads python core-dumps: $ ./python pthread_mutex_init: Invalid argument Memory fault(coredump) without thread-support everything works fine I tried this with hpux-ansi-c and with gcc (2.95.2) but got the same result ==================================================================== Audit trail: Tue Jul 11 08:25:57 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-28 20:43 By: tim_one Comment: Note that the only call to pthread_mutex_init Python makes is in function PyThread_allocate_lock in file phread_pthread.h. If Python compiled at all, it's extremely unlikely that the first argument is in error. It's very likely that the second argument is in error, though: there were many imcompatible revisions of the pthreads std, and pthread_mutexattr_default is a macro conditionally defined near the top of the file. If this OS actually support pthreads, you have to figure out which *version* of pthreads it defines and arrange for config to define the *correct* one of the PY_PTHREAD_D4 PY_PTHREAD_D7 PY_PTHREAD_STD PY_PTHREAD_D6 symbols for your platform. Else disable threads entirely. ------------------------------------------------------- Date: 2000-Aug-29 07:34 By: memaul Comment: Goto link below for instructions and patches for building python 152 with threads on hpux 10.20 http://memaul.tripod.com/index.html ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110650&group_id=5470 From noreply@sourceforge.net Fri Sep 1 04:42:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 20:42:26 -0700 Subject: [Python-bugs-list] [Bug #112289] NetBSD1.4.2 build issue Message-ID: <200009010342.UAA26062@delerium.i.sourceforge.net> Bug #112289, was updated on 2000-Aug-18 19:50 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: NetBSD1.4.2 build issue Details: the recent fileobjects.c work done for large files (tmick) appears broken when compiled against NetBSD1.4.2. During the final link, you get the following output: gcc python.o ../libpython2.0.a -lutil -lm -o python fileobject.c:280: Undefined symbol `_TELL64' referenced from text segment Follow-Ups: Date: 2000-Aug-18 19:55 By: none Comment: NOTE: I didn't include the configure output. If that would be helpful, go ahead and indicate that in this tracking system. If tmick (or whoever) would like me to contact them directly, I would happily do so. ------------------------------------------------------- Date: 2000-Aug-31 08:45 By: tmick Comment: Sent to python-dev: 1. Who reported this bug? He talked about providing more information and I would like to speak with him. I cannot find his email address. 2. Does anybody have a NetBSD1.4.2 (or close) machine that I can get shell access to? Do you know if they have such a machine at SourceForge that users can get shell access to? Or failing that can someone with such a machine give me the full ./configure and make output and maybe run this command: find /usr/include -name "*" -type f | xargs -l grep -nH _TELL64 and give me the output. ------------------------------------------------------- Date: 2000-Aug-31 08:47 By: tmick Comment: I got no reponse and I have no NetBSD machine on which to reproduce so, as Jeremy suggested, if I wouldn't get it by this evening then assign back to him. Other questions: - How old/recent is version 1.4.2 of NetBSD? - Where is _TELL64 coming from? Not from Python code. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112289&group_id=5470 From noreply@sourceforge.net Fri Sep 1 04:42:48 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 20:42:48 -0700 Subject: [Python-bugs-list] [Bug #113037] auotconf/build problems on HP-UX Message-ID: <200009010342.UAA26066@delerium.i.sourceforge.net> Bug #113037, was updated on 2000-Aug-29 06:57 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: auotconf/build problems on HP-UX Details: From: Mike Romberg To: jeremy@beopen.com Subject: Fwd: [Bug #111319] Autoconfig breakdown with gnu libc-2.1.3 (noreply@sourceforge.net) Date: Mon, 28 Aug 2000 11:49:48 -0600 (MDT) >>>>> " " == Jeremy Hylton writes: > Mike, I can't reproduce the bug you report. Can you check > against the current CVS and see if it still has the problem? > It may be that the bug has been fixed since you reported it. Here is a followup. Using the CVS tree from last friday, this is what I get: 1 - Default install seems to enable threads and cycle-gc. This has core dumps. 2 - --without-thread. Dumps core as well. 3 - --without-cycle-gc --without-thread. This has some kind of problem with the importer. It breaks with 'from foo import *'. 4 - I attempted to build this CVS version on HP-UX so that I might run purify with it. The CVS version did not build on HP-UX. The build fails with a 'no rule to make dynload-hpux' (or something really close). I removed this object file from the Makefile. But the build failed later on with undeclared functions. I'm still going to try using purify with python-1.6b1 (which did compile on HP-UX). So, I tried getting a new CVS version this morning. This core dumps right off the bat (compiled with --without-cycle-gc --without-thread). #0 do_mkvalue (p_format=0xbfffe710, p_va=0xbfffe714) at modsupport.c:353 #1 0x869f0c0 in do_mktuple (p_format=0xbfffe710, p_va=0xbfffe714, endchar=41, n=4) at modsupport.c:223 #2 0x869f189 in do_mkvalue (p_format=0xbfffe710, p_va=0xbfffe714) at modsupport.c:247 #3 0x869f430 in Py_VaBuildValue (format=0x8a1d8a2 "(OOOO)", va=0xbfffe744) at modsupport.c:415 #4 0x869f3c6 in Py_BuildValue (format=0x8a1d8a2 "(OOOO)") at modsupport.c:390 #5 0x868f1f7 in eval_code2 (co=0x8f4c1b8, globals=0x8f4c288, locals=0x8f4c288, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1630 #6 0x868d3b8 in PyEval_EvalCode (co=0x8f4c1b8, globals=0x8f4c288, locals=0x8f4c288) at ceval.c:313 #7 0x869aaaf in PyImport_ExecCodeModuleEx (name=0xbfffe914 "site", co=0x8f4c1b8, pathname=0x8a203ea "") at import.c:497 #8 0x869bb82 in PyImport_ImportFrozenModule (name=0xbfffe914 "site") at import.c:1387 #9 0x869b869 in load_module (name=0xbfffeda4 "site", fp=0x0, buf=0xbfffe914 "site", type=7) at import.c:1232 #10 0x869c44c in import_submodule (mod=0x8bfe48c, subname=0xbfffeda4 "site", fullname=0xbfffeda4 "site") at import.c:1727 #11 0x869c00d in load_next (mod=0x8bfe48c, altmod=0x8bfe48c, p_name=0xbffff1b0, buf=0xbfffeda4 "site", p_buflen=0xbfffeda0) at import.c:1583 #12 0x869bc83 in import_module_ex (name=0x0, globals=0x0, locals=0x0, fromlist=0x0) at import.c:1434 #13 0x869bdbc in PyImport_ImportModuleEx (name=0x8a216c3 "site", globals=0x0, locals=0x0, fromlist=0x0) at import.c:1475 #14 0x869bc20 in PyImport_ImportModule (name=0x8a216c3 "site") at import.c:1408 #15 0x86a014b in initsite () at pythonrun.c:429 #16 0x869fdca in Py_Initialize () at pythonrun.c:166 #17 0x80dbf4c in main (argc=1, argv=0xbffff2d4) at main.C:22 Follow-Ups: Date: 2000-Aug-29 09:12 By: jhylton Comment: More details from comp.lang.python: From: Philipp Jocham Subject: Re: need help with build on HP-UX Newsgroups: comp.lang.python Date: Tue, 29 Aug 2000 11:23:25 GMT Message-ID: Python-1.6b1 on HP-UX 11.00 build with gcc-2.8.1 % ./configure --with-threads [...] checking for --with-thread... yes checking for mach/cthreads.h... no checking for pth_init in -lpth... no checking for pthread_create in -lpthread... no checking for pthread_detach... no checking for kernel/OS.h... no checking for pthread_create in -lpthreads... no checking for pthread_create in -lc_r... no checking for __d6_pthread_create in -lthread... no checking for pthread_create in -lcma... yes [...] % make % make test yields [...] PYTHONPATH= ./python -tt ./Lib/test/regrtest.py pthread_mutex_init: Invalid argument sh: 5019 Memory fault(coredump) *** Error exit code 139 (ignored) I've experienced a similar problem with python-1.5.2 see http://sourceforge.net/bugs/?group_id=5470&func=detailbug&bug_id=110665 The problem is the same. The function pthread_create is a macro in sys/pthread.h and pointing to __pthread_create_system. Finally pthread_create is detected in /usr/lib/libcma.a, which doesn't have a compatible pthread_mutex_init function. Hacking the Makefiles (after running configure) by changing the LIBS= lines from LIBS= -lnet -lnsl -ldld -lcma to LIBS= -lnet -lnsl -ldld -lpthread -lcl links the object-files against the pthread library. This solution has worked for 1.5.2 and runs at least all tests correctly for 1.6b1 A solution might be to add a test for __pthread_create_system in /usr/lib/libpthread.a in the configure.in script. ------------------------------------------------------- Date: 2000-Aug-29 09:15 By: jhylton Comment: Another suggestion from comp.lang.python From: Michael Maul Subject: Re: need help with build on HP-UX Newsgroups: comp.lang.python Date: Tue, 29 Aug 2000 10:33:05 -0400 Message-ID: <39ABC9A0.C584B210@nortelnetworks.com> Goto link below for instructions and patches for building python 152 with threads on hpux 10.20 with DCE threads http://memaul.tripod.com/index.html ------------------------------------------------------- Date: 2000-Aug-30 02:21 By: lemburg Comment: > #8 0x869bb82 in PyImport_ImportFrozenModule (name=0xbfffe914 "site") > at import.c:1387 Why does Python try to import site as frozen module ? Could it be that you have frozen site.py using a pre-2.0 Python version and that this causes the core dump ? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113037&group_id=5470 From noreply@sourceforge.net Fri Sep 1 04:57:29 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 20:57:29 -0700 Subject: [Python-bugs-list] [Bug #113254] pre/sre difference breaks pyclbr Message-ID: <200009010357.UAA26510@delerium.i.sourceforge.net> Bug #113254, was updated on 2000-Aug-31 12:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 6 Summary: pre/sre difference breaks pyclbr Details: """ pre and sre deal differently with groups that "do not contribute to the match". Fredrick points out that sre seems to be right but now pyclbr is broken (though easy to fix). This program demonstrates the difference in behavior and the pyclbr breakage. call it "pyclbrbug.py" The name matters because it uses itself as a test case! """ import pre import sre import pyclbr import sys the_re=r""" (?P ^ (?P [ \t]* ) def [ \t]+ (?P [a-zA-Z_] \w* ) [ \t]* \( ) | (?P ^ (?P [ \t]* ) class [ \t]+ (?P [a-zA-Z_] \w* ) [ \t]* (?P \( [^)\n]* \) )? [ \t]* : ) """ eg="class foo: pass" def test( mod ): print "===========", mod.__name__ re=mod.compile(the_re, mod.VERBOSE | mod.DOTALL | mod.MULTILINE) match=re.search( eg ) print match.start( "Method" ) print match.group( "MethodIndent" ) sys.modules["re"]=mod reload( pyclbr ) pyclbr.readmodule_ex("pyclbrbug",["."]) test( pre ) test( sre ) Follow-Ups: Date: 2000-Aug-31 20:57 By: jhylton Comment: Who should fix pyclbr? If not you /F, please reassign. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113254&group_id=5470 From noreply@sourceforge.net Fri Sep 1 05:05:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 21:05:18 -0700 Subject: [Python-bugs-list] [Bug #113145] config.h defines socklen_t, kills wxPython build Message-ID: <200009010405.VAA32071@bush.i.sourceforge.net> Bug #113145, was updated on 2000-Aug-30 12:51 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 6 Summary: config.h defines socklen_t, kills wxPython build Details: Building wxPython fails with 1.6 because config.h defines socklen_t; according to a comment, it checks sys/types.h. But /usr/include/bits/socket.h on Linux at least, tries to make a typedef with this name. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113145&group_id=5470 From noreply@sourceforge.net Fri Sep 1 06:30:46 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 31 Aug 2000 22:30:46 -0700 Subject: [Python-bugs-list] [Bug #111499] PyImport_AppendInittab undocument Message-ID: <200009010530.WAA02384@bush.i.sourceforge.net> Bug #111499, was updated on 2000-Aug-09 11:27 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: PyImport_AppendInittab undocument Details: Both PyImport_AppendInittab and PyImport_ExtendInittab should be documented, but aren't. Follow-Ups: Date: 2000-Aug-31 22:30 By: fdrake Comment: Documented. This will be available with the Python 2.0 release; the 2.0b1 documentation package has already been assembled. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=111499&group_id=5470 From noreply@sourceforge.net Fri Sep 1 09:44:43 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 01:44:43 -0700 Subject: [Python-bugs-list] [Bug #112628] many extensions (wrongly?) use Py_FatalError Message-ID: <200009010844.BAA03323@delerium.i.sourceforge.net> Bug #112628, was updated on 2000-Aug-24 04:50 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: Fixed Bug Group: None Priority: 7 Summary: many extensions (wrongly?) use Py_FatalError Details: Many of the modules in the current CVS tree are handling errors in a manner which I find unpythonic. A typical example is pyexpat.c which at the end of initpyexpat does /* Check for errors */ if (PyErr_Occurred()) Py_FatalError("can't initialize module pyexpat"); the xml-sig group might regard this as a tragedy, but I might wish to continue and use another parser. The correct behaviour for this sort of error ought IMHO to be to raise an ImportError clean up any privately allocated resources and return. c sources which raise fatal errors _cursesmodule.c: _localemodule.c: _tkinter.c: almodule.c: cdmodule.c: errnomodule.c: fcntlmodule.c: fpectlmodule.c: linuxaudiodev.c: main.c: mathmodule.c: mpzmodule.c: parsermodule.c: pcremodule.c: posixmodule.c: puremodule.c: pyexpat.c: shamodule.c: stropmodule.c: syslogmodule.c: timemodule.c: timingmodule.c: Follow-Ups: Date: 2000-Aug-24 05:54 By: gvanrossum Comment: He's right! The proper solution is if (PyErr_Occurred()) return; since the module initialization code explicitly checks for errors raised by the module's init function. Assigned to Jeremy for pronouncement or delegation. ------------------------------------------------------- Date: 2000-Aug-24 07:54 By: bwarsaw Comment: In that case, the PyErr_Occurred() call is /usually/ not necessary, since it's done as the last thing in the init() function and would just return anyway. So given Guido's pronouncement, most of those checks can just be removed. ------------------------------------------------------- Date: 2000-Sep-01 01:44 By: bwarsaw Comment: Fixed by removing PyErr_Occurred() checks and Py_FatalError() calls from module init functions. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112628&group_id=5470 From noreply@sourceforge.net Fri Sep 1 10:01:37 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 02:01:37 -0700 Subject: [Python-bugs-list] [Bug #112628] many extensions (wrongly?) use Py_FatalError Message-ID: <200009010901.CAA09135@bush.i.sourceforge.net> Bug #112628, was updated on 2000-Aug-24 04:50 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Fixed Bug Group: None Priority: 7 Summary: many extensions (wrongly?) use Py_FatalError Details: Many of the modules in the current CVS tree are handling errors in a manner which I find unpythonic. A typical example is pyexpat.c which at the end of initpyexpat does /* Check for errors */ if (PyErr_Occurred()) Py_FatalError("can't initialize module pyexpat"); the xml-sig group might regard this as a tragedy, but I might wish to continue and use another parser. The correct behaviour for this sort of error ought IMHO to be to raise an ImportError clean up any privately allocated resources and return. c sources which raise fatal errors _cursesmodule.c: _localemodule.c: _tkinter.c: almodule.c: cdmodule.c: errnomodule.c: fcntlmodule.c: fpectlmodule.c: linuxaudiodev.c: main.c: mathmodule.c: mpzmodule.c: parsermodule.c: pcremodule.c: posixmodule.c: puremodule.c: pyexpat.c: shamodule.c: stropmodule.c: syslogmodule.c: timemodule.c: timingmodule.c: Follow-Ups: Date: 2000-Aug-24 05:54 By: gvanrossum Comment: He's right! The proper solution is if (PyErr_Occurred()) return; since the module initialization code explicitly checks for errors raised by the module's init function. Assigned to Jeremy for pronouncement or delegation. ------------------------------------------------------- Date: 2000-Aug-24 07:54 By: bwarsaw Comment: In that case, the PyErr_Occurred() call is /usually/ not necessary, since it's done as the last thing in the init() function and would just return anyway. So given Guido's pronouncement, most of those checks can just be removed. ------------------------------------------------------- Date: 2000-Sep-01 01:44 By: bwarsaw Comment: Fixed by removing PyErr_Occurred() checks and Py_FatalError() calls from module init functions. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112628&group_id=5470 From noreply@sourceforge.net Fri Sep 1 12:18:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 04:18:58 -0700 Subject: [Python-bugs-list] [Bug #113328] Python 1.6b1 build failure on Solaris (with patch) Message-ID: <200009011118.EAA13809@bush.i.sourceforge.net> Bug #113328, was updated on 2000-Sep-01 04:18 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python 1.6b1 build failure on Solaris (with patch) Details: Python 1.6b1 fails to build on Solaris due to Python's config.h #define'ing socklen_t to be int. socklen_t is a symbol many platforms' standard include files have a typedef for. On Solaris, this results in the true typedef for socklen_t in sys/socket.h (one of the following): typedef size_t socklen_t; typedef uint32_t socklen_t; being transformed into gibberish that will not compile. Removing the offending socklen_t #define from config.h allows 1.6b1 to build on Solaris. See also bugs 111319 and 113145. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113328&group_id=5470 From noreply@sourceforge.net Fri Sep 1 15:30:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 07:30:22 -0700 Subject: [Python-bugs-list] [Bug #113328] Python 1.6b1 build failure on Solaris (with patch) Message-ID: <200009011430.HAA15394@delerium.i.sourceforge.net> Bug #113328, was updated on 2000-Sep-01 04:18 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python 1.6b1 build failure on Solaris (with patch) Details: Python 1.6b1 fails to build on Solaris due to Python's config.h #define'ing socklen_t to be int. socklen_t is a symbol many platforms' standard include files have a typedef for. On Solaris, this results in the true typedef for socklen_t in sys/socket.h (one of the following): typedef size_t socklen_t; typedef uint32_t socklen_t; being transformed into gibberish that will not compile. Removing the offending socklen_t #define from config.h allows 1.6b1 to build on Solaris. See also bugs 111319 and 113145. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113328&group_id=5470 From noreply@sourceforge.net Fri Sep 1 16:07:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 08:07:38 -0700 Subject: [Python-bugs-list] [Bug #113328] Python 1.6b1 build failure on Solaris (with patch) Message-ID: <200009011507.IAA21918@bush.i.sourceforge.net> Bug #113328, was updated on 2000-Sep-01 04:18 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python 1.6b1 build failure on Solaris (with patch) Details: Python 1.6b1 fails to build on Solaris due to Python's config.h #define'ing socklen_t to be int. socklen_t is a symbol many platforms' standard include files have a typedef for. On Solaris, this results in the true typedef for socklen_t in sys/socket.h (one of the following): typedef size_t socklen_t; typedef uint32_t socklen_t; being transformed into gibberish that will not compile. Removing the offending socklen_t #define from config.h allows 1.6b1 to build on Solaris. See also bugs 111319 and 113145. Follow-Ups: Date: 2000-Sep-01 08:07 By: VizNut Comment: Oops. Ignore the "(with patch)" piece in the Summary. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113328&group_id=5470 From noreply@sourceforge.net Fri Sep 1 22:15:27 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 14:15:27 -0700 Subject: [Python-bugs-list] [Bug #110675] Pth: test_fork1 fails, test_thread slow (PR#383) Message-ID: <200009012115.OAA30182@delerium.i.sourceforge.net> Bug #110675, was updated on 2000-Jul-31 14:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: 3rd Party Priority: 1 Summary: Pth: test_fork1 fails, test_thread slow (PR#383) Details: Jitterbug-Id: 383 Submitted-By: gregor@hoffleit.de Date: Tue, 4 Jul 2000 12:07:06 -0400 (EDT) Version: CVS version (06/04/00) OS: Debian potato (i386) When I use the current CVS version of Python to build on a Debian potato system with GNU Pth 1.2.3 installed, test_fork1 fails with an error (see below), and test_thread takes significantly longer to complete than when I build the same sources with native LinuxThreads. When running test.regrtest.main(), this happens: clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import regrtest >>> regrtest.main() test_grammar test_opcodes ... test_extcall test_fcntl test_fork1 test test_fork1 crashed -- exceptions.AssertionError : Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 32, in f time.sleep(SHORTSLEEP) TypeError: illegal argument type for built-in operation Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' test_format test_gc ... When running test.test_fork1(), I get this: clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import test_fork1 Traceback (most recent call last): File "", line 1, in ? File "./Lib/test/test_fork1.py", line 68, in ? main() File "./Lib/test/test_fork1.py", line 44, in main assert a == range(NUM_THREADS) AssertionError >>> test_thread takes very long to complete (5 min compared to 40 sec with LinuxThreads); when you look at the following log, you'll see that it tends to calls the threads serially !? clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import test_thread creating task 1 creating task 2 creating task 3 task 1 will run for 2.1 sec task 1 done creating task 4 task 2 will run for 3.2 sec creating task 5 task 2 done creating task task 3 will run for 9.1 6 sec task 3 done creating task 7 task 4 will run for 2.5 sec task 4 done creating task 8 task 5 will run for 0.9 sec task 5 done creating task 9 task 6 will run for 7.4 sec task 6 done creating task 10 waiting for all tasks to complete task 7 will run for 5.3 sec task 7 done task 8 will run for 2.6 sec task 8 done task 9 will run for 2.7 sec task 9 done task 10 will run for 0.9 sec task 10 done all tasks done *** Barrier Test *** task 0 will run for 0.0 sec task 0 entering barrier 0 task 1 will run for 6.2 sec task 1 entering barrier 0 task 7 will run for 7.0 sec task 7 entering barrier 0 task 3 will run for 5.9 sec task 3 entering barrier 0 task 4 will run for 4.5 sec task 4 entering barrier 0 task 5 will run for 9.2 sec task 5 entering barrier 0 task 6 will run for 1.4 sec task 6 entering barrier 0 task 2 will run for 6.0 sec task 2 entering barrier 0 task 8 will run for 2.4 sec task 8 entering barrier 0 task 9 will run for 9.6 sec task 9 entering barrier 0 task 9 leaving barrier 0 task 0 leaving barrier 0 task task 1 leaving barrier 0 0 will run for 0.0 sec task 0 entering barrier 1 task 7 leaving barrier 0 task 9 will run for 0.8 sec task 9 entering barrier task 3 leaving barrier 0 1 task 1 task 4 leaving barrier 0 will run for 6.1 sec task 5 leaving barrier 0 task 1 entering barrier 1 task 6 leaving barrier 0 task 7 will run for 7.9 sec task 2 leaving barrier 0 task 7 entering barrier 1 task 3 task 8 leaving barrier 0 will run for 7.8 sec task 3 entering barrier 1 task 4 will run for 5.7 sec task 4 entering barrier 1 task 5 will run for 2.0 sec task 5 entering barrier 1 task 6 will run for 0.5 sec task 6 entering barrier 1 task 2 will run for 7.4 sec task 2 entering barrier 1 task 8 will run for 1.0 sec task 8 entering barrier 1 task 8 leaving barrier 1 task 7 leaving barrier 1 task 9 leaving barrier 1 task 1 leaving barrier 1 task 8 will run for 6.9 sec task 0 leaving barrier 1 task 8 entering barrier 2 task 0 will run for task 4 leaving barrier 1 0.0 sec task 7 will run for 4.3 sec task 0 entering barrier 2 task 3 leaving barrier 1 task 7 entering barrier 2 task 5 leaving barrier 1 task 6 leaving barrier 1 task 9 will run for 8.2 sec task task 2 leaving barrier 9 entering barrier 2 1 task 5 will run for 8.9 sec task 5 entering barrier 2 task 2 will run for 8.3 sec task 2 entering barrier 2 task 3 will run for 4.5 sec task 3 entering barrier 2 task 1 will run for 7.0 sec task 1 entering barrier 2 task 6 will run for 1.9 sec task 6 entering barrier 2 task 4 will run for 0.2 sec task 4 entering barrier 2 task 4 leaving barrier 2 task 8 leaving barrier 2 task 9 leaving barrier 2 task 7 leaving barrier 2 task 5 leaving barrier 2 task 0 leaving barrier 2 task 2 leaving barrier 2 task 3 leaving barrier 2 task 1 leaving barrier 2 task 6 leaving barrier 2 all tasks done while this is the log of the same test with Python 1.5.2 and LinuxThreads: clapton:3> python Python 1.5.2 (#0, Apr 3 2000, 14:46:48) [GCC 2.95.2 20000313 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> from test import test_thread creating task 1 creating task 2 creating task 3 creating task 4 creating task 5 creating task 6 creating task 7 creating task 8 creating task 9 creating task 10 waiting for all tasks to complete task 1 will run for 8.9 sec task 2 will run for 8.3 sec task 3 will run for 9.1 sec task 5 will run for 6.0 sec task 4 will run for 7.5 sec task 6 will run for 4.7 sec task 7 will run for 4.2 sec task 8 will run for 7.0 sec task 9 will run for 8.7 sec task 10 will run for 9.5 sec task 7 done task 6 done task 5 done task 8 done task 4 done task 2 done task 9 done task 1 done task 3 done task 10 done all tasks done *** Barrier Test *** task 0 will run for 0.0 sec task 1 will run for 2.8 sec task 0 entering barrier 0 task 2 will run for 5.3 sec task 3 will run for 9.2 sec task 5 will run for 8.0 sec task 4 will run for 8.9 sec task 6 will run for 5.0 sec task 7 will run for 1.3 sec task 8 will run for 5.6 sec task 9 will run for 4.7 sec task 7 entering barrier 0 task 1 entering barrier 0 task 9 entering barrier 0 task 6 entering barrier 0 task 2 entering barrier 0 task 8 entering barrier 0 task 5 entering barrier 0 task 4 entering barrier 0 task 3 entering barrier 0 task 3 leaving barrier 0 task 3 will run for 0.1 sec task 0 leaving barrier 0 task 0 will run for 0.0 sec task 7 leaving barrier 0 task 7 will run for 6.6 sec task 1 leaving barrier 0 task 1 will run for 1.0 sec task 9 leaving barrier 0 task 9 will run for 8.2 sec task 6 leaving barrier 0 task 6 will run for 1.0 sec task 2 leaving barrier 0 task 2 will run for 9.2 sec task 8 leaving barrier 0 task 8 will run for 4.4 sec task 5 leaving barrier 0 task 5 will run for 9.6 sec task 4 leaving barrier 0 task 4 will run for 1.7 sec task 0 entering barrier 1 task 3 entering barrier 1 task 1 entering barrier 1 task 6 entering barrier 1 task 4 entering barrier 1 task 8 entering barrier 1 task 7 entering barrier 1 task 9 entering barrier 1 task 2 entering barrier 1 task 5 entering barrier 1 task 5 leaving barrier 1 task 5 will run for 6.6 sec task 0 leaving barrier 1 task 0 will run for 0.0 sec task 3 leaving barrier 1 task 3 will run for 8.5 sec task 1 leaving barrier 1 task 1 will run for 0.1 sec task 6 leaving barrier 1 task 6 will run for 4.7 sec task 4 leaving barrier 1 task 4 will run for 4.7 sec task 8 leaving barrier 1 task 8 will run for 1.7 sec task 7 leaving barrier 1 task 7 will run for 1.8 sec task 9 leaving barrier 1 task 9 will run for 2.8 sec task 2 leaving barrier 1 task 2 will run for 3.3 sec task 0 entering barrier 2 task 1 entering barrier 2 task 8 entering barrier 2 task 7 entering barrier 2 task 9 entering barrier 2 task 2 entering barrier 2 task 6 entering barrier 2 task 4 entering barrier 2 task 5 entering barrier 2 task 3 entering barrier 2 task 3 leaving barrier 2 task 0 leaving barrier 2 task 1 leaving barrier 2 task 8 leaving barrier 2 task 7 leaving barrier 2 task 9 leaving barrier 2 task 2 leaving barrier 2 task 6 leaving barrier 2 task 4 leaving barrier 2 task 5 leaving barrier 2 all tasks done >>> ==================================================================== Audit trail: Tue Jul 11 08:24:22 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-23 10:31 By: jhylton Comment: Another report of test_fork1 problems. Plan to resolve before 2.0b1. ------------------------------------------------------- Date: 2000-Aug-23 10:36 By: tim_one Comment: Jeremy, my chances of helping someone with a problem specific to "Debian potato system with GNU Pth 1.2.3" are nil. Assigned back to you since you seem to believe it's feasible . ------------------------------------------------------- Date: 2000-Aug-31 14:53 By: jhylton Comment: Haven't heard back from the submittor. This sounds like a problem with a buggy GNU Pth package; not a Python bug. ------------------------------------------------------- Date: 2000-Sep-01 14:15 By: none Comment: I submitted the original pth support. pth has what I would consider a bug in that signals do not interrupt sleep(), usleep(), or select(), the latter being what Python uses to sleep. I'm going to look at this some more myself as soon as I can get the current CVS to configure with pth. -- andy@dustman.net ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110675&group_id=5470 From noreply@sourceforge.net Fri Sep 1 22:22:16 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 14:22:16 -0700 Subject: [Python-bugs-list] [Bug #110675] Pth: test_fork1 fails, test_thread slow (PR#383) Message-ID: <200009012122.OAA30419@delerium.i.sourceforge.net> Bug #110675, was updated on 2000-Jul-31 14:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: 3rd Party Priority: 1 Summary: Pth: test_fork1 fails, test_thread slow (PR#383) Details: Jitterbug-Id: 383 Submitted-By: gregor@hoffleit.de Date: Tue, 4 Jul 2000 12:07:06 -0400 (EDT) Version: CVS version (06/04/00) OS: Debian potato (i386) When I use the current CVS version of Python to build on a Debian potato system with GNU Pth 1.2.3 installed, test_fork1 fails with an error (see below), and test_thread takes significantly longer to complete than when I build the same sources with native LinuxThreads. When running test.regrtest.main(), this happens: clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import regrtest >>> regrtest.main() test_grammar test_opcodes ... test_extcall test_fcntl test_fork1 test test_fork1 crashed -- exceptions.AssertionError : Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 32, in f time.sleep(SHORTSLEEP) TypeError: illegal argument type for built-in operation Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' test_format test_gc ... When running test.test_fork1(), I get this: clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import test_fork1 Traceback (most recent call last): File "", line 1, in ? File "./Lib/test/test_fork1.py", line 68, in ? main() File "./Lib/test/test_fork1.py", line 44, in main assert a == range(NUM_THREADS) AssertionError >>> test_thread takes very long to complete (5 min compared to 40 sec with LinuxThreads); when you look at the following log, you'll see that it tends to calls the threads serially !? clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import test_thread creating task 1 creating task 2 creating task 3 task 1 will run for 2.1 sec task 1 done creating task 4 task 2 will run for 3.2 sec creating task 5 task 2 done creating task task 3 will run for 9.1 6 sec task 3 done creating task 7 task 4 will run for 2.5 sec task 4 done creating task 8 task 5 will run for 0.9 sec task 5 done creating task 9 task 6 will run for 7.4 sec task 6 done creating task 10 waiting for all tasks to complete task 7 will run for 5.3 sec task 7 done task 8 will run for 2.6 sec task 8 done task 9 will run for 2.7 sec task 9 done task 10 will run for 0.9 sec task 10 done all tasks done *** Barrier Test *** task 0 will run for 0.0 sec task 0 entering barrier 0 task 1 will run for 6.2 sec task 1 entering barrier 0 task 7 will run for 7.0 sec task 7 entering barrier 0 task 3 will run for 5.9 sec task 3 entering barrier 0 task 4 will run for 4.5 sec task 4 entering barrier 0 task 5 will run for 9.2 sec task 5 entering barrier 0 task 6 will run for 1.4 sec task 6 entering barrier 0 task 2 will run for 6.0 sec task 2 entering barrier 0 task 8 will run for 2.4 sec task 8 entering barrier 0 task 9 will run for 9.6 sec task 9 entering barrier 0 task 9 leaving barrier 0 task 0 leaving barrier 0 task task 1 leaving barrier 0 0 will run for 0.0 sec task 0 entering barrier 1 task 7 leaving barrier 0 task 9 will run for 0.8 sec task 9 entering barrier task 3 leaving barrier 0 1 task 1 task 4 leaving barrier 0 will run for 6.1 sec task 5 leaving barrier 0 task 1 entering barrier 1 task 6 leaving barrier 0 task 7 will run for 7.9 sec task 2 leaving barrier 0 task 7 entering barrier 1 task 3 task 8 leaving barrier 0 will run for 7.8 sec task 3 entering barrier 1 task 4 will run for 5.7 sec task 4 entering barrier 1 task 5 will run for 2.0 sec task 5 entering barrier 1 task 6 will run for 0.5 sec task 6 entering barrier 1 task 2 will run for 7.4 sec task 2 entering barrier 1 task 8 will run for 1.0 sec task 8 entering barrier 1 task 8 leaving barrier 1 task 7 leaving barrier 1 task 9 leaving barrier 1 task 1 leaving barrier 1 task 8 will run for 6.9 sec task 0 leaving barrier 1 task 8 entering barrier 2 task 0 will run for task 4 leaving barrier 1 0.0 sec task 7 will run for 4.3 sec task 0 entering barrier 2 task 3 leaving barrier 1 task 7 entering barrier 2 task 5 leaving barrier 1 task 6 leaving barrier 1 task 9 will run for 8.2 sec task task 2 leaving barrier 9 entering barrier 2 1 task 5 will run for 8.9 sec task 5 entering barrier 2 task 2 will run for 8.3 sec task 2 entering barrier 2 task 3 will run for 4.5 sec task 3 entering barrier 2 task 1 will run for 7.0 sec task 1 entering barrier 2 task 6 will run for 1.9 sec task 6 entering barrier 2 task 4 will run for 0.2 sec task 4 entering barrier 2 task 4 leaving barrier 2 task 8 leaving barrier 2 task 9 leaving barrier 2 task 7 leaving barrier 2 task 5 leaving barrier 2 task 0 leaving barrier 2 task 2 leaving barrier 2 task 3 leaving barrier 2 task 1 leaving barrier 2 task 6 leaving barrier 2 all tasks done while this is the log of the same test with Python 1.5.2 and LinuxThreads: clapton:3> python Python 1.5.2 (#0, Apr 3 2000, 14:46:48) [GCC 2.95.2 20000313 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> from test import test_thread creating task 1 creating task 2 creating task 3 creating task 4 creating task 5 creating task 6 creating task 7 creating task 8 creating task 9 creating task 10 waiting for all tasks to complete task 1 will run for 8.9 sec task 2 will run for 8.3 sec task 3 will run for 9.1 sec task 5 will run for 6.0 sec task 4 will run for 7.5 sec task 6 will run for 4.7 sec task 7 will run for 4.2 sec task 8 will run for 7.0 sec task 9 will run for 8.7 sec task 10 will run for 9.5 sec task 7 done task 6 done task 5 done task 8 done task 4 done task 2 done task 9 done task 1 done task 3 done task 10 done all tasks done *** Barrier Test *** task 0 will run for 0.0 sec task 1 will run for 2.8 sec task 0 entering barrier 0 task 2 will run for 5.3 sec task 3 will run for 9.2 sec task 5 will run for 8.0 sec task 4 will run for 8.9 sec task 6 will run for 5.0 sec task 7 will run for 1.3 sec task 8 will run for 5.6 sec task 9 will run for 4.7 sec task 7 entering barrier 0 task 1 entering barrier 0 task 9 entering barrier 0 task 6 entering barrier 0 task 2 entering barrier 0 task 8 entering barrier 0 task 5 entering barrier 0 task 4 entering barrier 0 task 3 entering barrier 0 task 3 leaving barrier 0 task 3 will run for 0.1 sec task 0 leaving barrier 0 task 0 will run for 0.0 sec task 7 leaving barrier 0 task 7 will run for 6.6 sec task 1 leaving barrier 0 task 1 will run for 1.0 sec task 9 leaving barrier 0 task 9 will run for 8.2 sec task 6 leaving barrier 0 task 6 will run for 1.0 sec task 2 leaving barrier 0 task 2 will run for 9.2 sec task 8 leaving barrier 0 task 8 will run for 4.4 sec task 5 leaving barrier 0 task 5 will run for 9.6 sec task 4 leaving barrier 0 task 4 will run for 1.7 sec task 0 entering barrier 1 task 3 entering barrier 1 task 1 entering barrier 1 task 6 entering barrier 1 task 4 entering barrier 1 task 8 entering barrier 1 task 7 entering barrier 1 task 9 entering barrier 1 task 2 entering barrier 1 task 5 entering barrier 1 task 5 leaving barrier 1 task 5 will run for 6.6 sec task 0 leaving barrier 1 task 0 will run for 0.0 sec task 3 leaving barrier 1 task 3 will run for 8.5 sec task 1 leaving barrier 1 task 1 will run for 0.1 sec task 6 leaving barrier 1 task 6 will run for 4.7 sec task 4 leaving barrier 1 task 4 will run for 4.7 sec task 8 leaving barrier 1 task 8 will run for 1.7 sec task 7 leaving barrier 1 task 7 will run for 1.8 sec task 9 leaving barrier 1 task 9 will run for 2.8 sec task 2 leaving barrier 1 task 2 will run for 3.3 sec task 0 entering barrier 2 task 1 entering barrier 2 task 8 entering barrier 2 task 7 entering barrier 2 task 9 entering barrier 2 task 2 entering barrier 2 task 6 entering barrier 2 task 4 entering barrier 2 task 5 entering barrier 2 task 3 entering barrier 2 task 3 leaving barrier 2 task 0 leaving barrier 2 task 1 leaving barrier 2 task 8 leaving barrier 2 task 7 leaving barrier 2 task 9 leaving barrier 2 task 2 leaving barrier 2 task 6 leaving barrier 2 task 4 leaving barrier 2 task 5 leaving barrier 2 all tasks done >>> ==================================================================== Audit trail: Tue Jul 11 08:24:22 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-23 10:31 By: jhylton Comment: Another report of test_fork1 problems. Plan to resolve before 2.0b1. ------------------------------------------------------- Date: 2000-Aug-23 10:36 By: tim_one Comment: Jeremy, my chances of helping someone with a problem specific to "Debian potato system with GNU Pth 1.2.3" are nil. Assigned back to you since you seem to believe it's feasible . ------------------------------------------------------- Date: 2000-Aug-31 14:53 By: jhylton Comment: Haven't heard back from the submittor. This sounds like a problem with a buggy GNU Pth package; not a Python bug. ------------------------------------------------------- Date: 2000-Sep-01 14:15 By: none Comment: I submitted the original pth support. pth has what I would consider a bug in that signals do not interrupt sleep(), usleep(), or select(), the latter being what Python uses to sleep. I'm going to look at this some more myself as soon as I can get the current CVS to configure with pth. -- andy@dustman.net ------------------------------------------------------- Date: 2000-Sep-01 14:22 By: none Comment: Another thing which may be a factor in this case: Since pth threads are user-space and so all run in the same process, the test used in signalmodule.c:125 doesn't work, i.e. if (getpid() == main_pid) { It probably needs to be something more like this: if (PyThread_get_thread_ident() != main_thread) { I submitted a patch to fix this around the time of the CNRI split, so it probably got lost. -- andy@dustman.net ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110675&group_id=5470 From noreply@sourceforge.net Sat Sep 2 05:24:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 21:24:58 -0700 Subject: [Python-bugs-list] [Bug #113401] grant Message-ID: <200009020424.VAA11938@delerium.i.sourceforge.net> Bug #113401, was updated on 2000-Sep-01 21:24 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Trash Priority: 5 Summary: grant Details: Third party trash!!! For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113401&group_id=5470 From noreply@sourceforge.net Sat Sep 2 05:26:43 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 1 Sep 2000 21:26:43 -0700 Subject: [Python-bugs-list] [Bug #113401] grant Message-ID: <200009020426.VAA11955@delerium.i.sourceforge.net> Bug #113401, was updated on 2000-Sep-01 21:24 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: None Bug Group: Trash Priority: 5 Summary: grant Details: Third party trash!!! For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113401&group_id=5470 From noreply@sourceforge.net Sat Sep 2 17:31:02 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sat, 2 Sep 2000 09:31:02 -0700 Subject: [Python-bugs-list] [Bug #113254] pre/sre difference breaks pyclbr Message-ID: <200009021631.JAA01963@delerium.i.sourceforge.net> Bug #113254, was updated on 2000-Aug-31 12:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: Fixed Bug Group: None Priority: 6 Summary: pre/sre difference breaks pyclbr Details: """ pre and sre deal differently with groups that "do not contribute to the match". Fredrick points out that sre seems to be right but now pyclbr is broken (though easy to fix). This program demonstrates the difference in behavior and the pyclbr breakage. call it "pyclbrbug.py" The name matters because it uses itself as a test case! """ import pre import sre import pyclbr import sys the_re=r""" (?P ^ (?P [ \t]* ) def [ \t]+ (?P [a-zA-Z_] \w* ) [ \t]* \( ) | (?P ^ (?P [ \t]* ) class [ \t]+ (?P [a-zA-Z_] \w* ) [ \t]* (?P \( [^)\n]* \) )? [ \t]* : ) """ eg="class foo: pass" def test( mod ): print "===========", mod.__name__ re=mod.compile(the_re, mod.VERBOSE | mod.DOTALL | mod.MULTILINE) match=re.search( eg ) print match.start( "Method" ) print match.group( "MethodIndent" ) sys.modules["re"]=mod reload( pyclbr ) pyclbr.readmodule_ex("pyclbrbug",["."]) test( pre ) test( sre ) Follow-Ups: Date: 2000-Aug-31 20:57 By: jhylton Comment: Who should fix pyclbr? If not you /F, please reassign. ------------------------------------------------------- Date: 2000-Sep-02 09:31 By: effbot Comment: after discussion with GvR, we decided to fix this in SRE. fred, can you update the start/end/span documentation and close this bug? (the code is right, the docs are wrong). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113254&group_id=5470 From noreply@sourceforge.net Sun Sep 3 03:44:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sat, 2 Sep 2000 19:44:38 -0700 Subject: [Python-bugs-list] [Bug #113463] Inconsistent handling of arg -/-- by getopt.getopt() ? Message-ID: <200009030244.TAA22065@delerium.i.sourceforge.net> Bug #113463, was updated on 2000-Sep-02 19:44 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Inconsistent handling of arg -/-- by getopt.getopt() ? Details: Problem with function getopt of module getopt.py of Python 1.5.1? Case 1: >>> import getopt, string >>> args = string.split('-a -b b_val - some more stuff -c') >>> optlist, trailing_args = getopt.getopt(args, 'ab:c') >>> optlist [('-a', ''), ('-b', 'b_val')] >>> trailing_args ['-', 'some', 'more', 'stuff', '-c'] Case 2: >>> import getopt, string >>> args = string.split('-a -b b_val -- some more stuff -c') >>> optlist, trailing_args = getopt.getopt(args, 'ab:c') >>> optlist [('-a', ''), ('-b', 'b_val')] >>> trailing_args ['some', 'more', 'stuff', '-c'] The differences are: In case 1, I have "-" in the args list and I get it as the first element of the trailing_args output list; In case 2, I have "--" in the args list and I get nothing about it in the trailing_args output list. This happens because in line 7 of the function getopt (reproduced below) the "--" element of args is discarded. ~~~~~~~~~ Function getopt: def getopt(args, shortopts, longopts = []): list = [] longopts = longopts[:] longopts.sort() while args and args[0][:1] == '-' and args[0] != '-': if args[0] == '--': args = args[1:] break if args[0][:2] == '--': list, args = do_longs(list, args[0][2:], longopts, args[1:]) else: list, args = do_shorts(list, args[0][1:], shortopts, args[1:]) return list, args For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113463&group_id=5470 From noreply@sourceforge.net Mon Sep 4 04:57:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sun, 3 Sep 2000 20:57:58 -0700 Subject: [Python-bugs-list] [Bug #111203] 1.6b1 build (docs?) pyexpat problem on Windows Message-ID: <200009040357.UAA06546@delerium.i.sourceforge.net> Bug #111203, was updated on 2000-Aug-06 11:36 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: Fixed Bug Group: Platform-specific Priority: 5 Summary: 1.6b1 build (docs?) pyexpat problem on Windows Details: pyexpat is not documented as one of those subprojects needing external software, but apparently it is one; it needs xmlparse and xmltok, .h and .lib to build and .dll to run. The docs don't mention where to get those from, but I had them around (from a Perl site build...) and feeding them to the Python 1.6b1 build fixed it. So I think it's just a doc-bug. Alex Follow-Ups: Date: 2000-Aug-29 21:59 By: fdrake Comment: What documentation is there on this? Sounds like something needs to change in the Windows README file; not sure. Tim, you're the Windows guy. Fix it. ;) ------------------------------------------------------- Date: 2000-Aug-29 22:21 By: tim_one Comment: Assigned to Guido, because last I heard 1.6 was frozen, and he's got the 1.6 Windows build setup anyway. The docs here were extensively rewritten for 2.0, and the complaint here doesn't exist there anymore. ------------------------------------------------------- Date: 2000-Sep-03 20:57 By: gvanrossum Comment: This doc issue has been fixed a while ago. The PCbuild/readme.txt lists it, and the Modules/Setup.in file also points to jclark.com. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=111203&group_id=5470 From noreply@sourceforge.net Mon Sep 4 05:08:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sun, 3 Sep 2000 21:08:28 -0700 Subject: [Python-bugs-list] [Bug #113145] config.h defines socklen_t, kills wxPython build Message-ID: <200009040408.VAA11366@bush.i.sourceforge.net> Bug #113145, was updated on 2000-Aug-30 12:51 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 6 Summary: config.h defines socklen_t, kills wxPython build Details: Building wxPython fails with 1.6 because config.h defines socklen_t; according to a comment, it checks sys/types.h. But /usr/include/bits/socket.h on Linux at least, tries to make a typedef with this name. Follow-Ups: Date: 2000-Sep-03 21:08 By: gvanrossum Comment: Could this be dependent on the Linux version? It seems my config.h had socklen_t defined on Red Hat 6.1, but it is undefined on Red Hat 6.2 (which would fix your problem if I understand it correctly). What platform are you using? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113145&group_id=5470 From noreply@sourceforge.net Mon Sep 4 06:10:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sun, 3 Sep 2000 22:10:25 -0700 Subject: [Python-bugs-list] [Bug #113145] config.h defines socklen_t, kills wxPython build Message-ID: <200009040510.WAA08819@delerium.i.sourceforge.net> Bug #113145, was updated on 2000-Aug-30 12:51 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 6 Summary: config.h defines socklen_t, kills wxPython build Details: Building wxPython fails with 1.6 because config.h defines socklen_t; according to a comment, it checks sys/types.h. But /usr/include/bits/socket.h on Linux at least, tries to make a typedef with this name. Follow-Ups: Date: 2000-Sep-03 21:08 By: gvanrossum Comment: Could this be dependent on the Linux version? It seems my config.h had socklen_t defined on Red Hat 6.1, but it is undefined on Red Hat 6.2 (which would fix your problem if I understand it correctly). What platform are you using? ------------------------------------------------------- Date: 2000-Sep-03 22:10 By: dubois Comment: My system is 6.1 I think. (I didn't install it.) Here is uname -a: Linux bruno.llnl.gov 2.2.12-20smp #1 SMP Mon Sep 27 10:34:45 EDT 1999 i686 unknown ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113145&group_id=5470 From noreply@sourceforge.net Mon Sep 4 15:54:46 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Mon, 4 Sep 2000 07:54:46 -0700 Subject: [Python-bugs-list] [Bug #110607] Telnet close (PR#181) Message-ID: <200009041454.HAA00432@bush.i.sourceforge.net> Bug #110607, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Telnet close (PR#181) Details: Jitterbug-Id: 181 Submitted-By: cha@tandberg.no Date: Wed, 12 Jan 2000 09:49:29 -0500 (EST) Version: 1.5.2 OS: Windows NT4.0 The telnet.close() object does not close the telnet session. Session will only be closed after a timeout on the remote side. ==================================================================== Audit trail: Wed Jan 12 18:29:38 2000 guido changed notes Wed Jan 12 18:29:38 2000 guido changed notification Wed Jan 12 18:29:38 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-23 18:50 By: montanaro Comment: Replied to the submitter asking for a short script that fails. I don't run Windows so I may not be able to track this down. ------------------------------------------------------- Date: 2000-Sep-04 07:54 By: montanaro Comment: Never did get any response from the submitter. This was apparently originally submitted back in January. I'm simply going to bounce this back to Tim since he at least runs Windows... ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110607&group_id=5470 From noreply@sourceforge.net Mon Sep 4 22:14:11 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Mon, 4 Sep 2000 14:14:11 -0700 Subject: [Python-bugs-list] [Bug #113576] Py_PROTO missing from the include files Message-ID: <200009042114.OAA13832@bush.i.sourceforge.net> Bug #113576, was updated on 2000-Sep-04 14:14 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Py_PROTO missing from the include files Details: Some old extensions still use the Py_PROTO() macro which was present in Python 1.5.2 and ealier. After the ANSIfication of the sources, this macro seems to have been removed from the Python include files. This breaks all extensions which used the macro. Adding a #define Py_PROTO(args) args to pyport.h should remedy this. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113576&group_id=5470 From noreply@sourceforge.net Tue Sep 5 06:21:04 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Mon, 4 Sep 2000 22:21:04 -0700 Subject: [Python-bugs-list] [Bug #113600] mmap module is undocumented Message-ID: <200009050521.WAA26480@delerium.i.sourceforge.net> Bug #113600, was updated on 2000-Sep-04 22:21 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: mmap module is undocumented Details: The mmap module is undocumented, but should be. Assigned to Mark Hammond since he touched the code most recently. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113600&group_id=5470 From noreply@sourceforge.net Tue Sep 5 06:23:29 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Mon, 4 Sep 2000 22:23:29 -0700 Subject: [Python-bugs-list] [Bug #113600] mmap module is undocumented Message-ID: <200009050523.WAA26604@delerium.i.sourceforge.net> Bug #113600, was updated on 2000-Sep-04 22:21 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 6 Summary: mmap module is undocumented Details: The mmap module is undocumented, but should be. Assigned to Mark Hammond since he touched the code most recently. Follow-Ups: Date: 2000-Sep-04 22:23 By: fdrake Comment: Changed assignment to Andrew, since Tim says he agreed to document it long ago. Bumped the priority since he actually said he'd do it. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113600&group_id=5470 From noreply@sourceforge.net Tue Sep 5 13:21:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 05:21:45 -0700 Subject: [Python-bugs-list] [Bug #113600] mmap module is undocumented Message-ID: <200009051221.FAA11695@bush.i.sourceforge.net> Bug #113600, was updated on 2000-Sep-04 22:21 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 6 Summary: mmap module is undocumented Details: The mmap module is undocumented, but should be. Assigned to Mark Hammond since he touched the code most recently. Follow-Ups: Date: 2000-Sep-04 22:23 By: fdrake Comment: Changed assignment to Andrew, since Tim says he agreed to document it long ago. Bumped the priority since he actually said he'd do it. ------------------------------------------------------- Date: 2000-Sep-05 05:21 By: akuchling Comment: Erm... Doc/lib/libmmap.tex was checked in on 2000/06/17. It just doesn't seem to be included in lib.tex at the moment. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113600&group_id=5470 From noreply@sourceforge.net Tue Sep 5 14:56:15 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 06:56:15 -0700 Subject: [Python-bugs-list] [Bug #113600] mmap module is undocumented Message-ID: <200009051356.GAA11699@delerium.i.sourceforge.net> Bug #113600, was updated on 2000-Sep-04 22:21 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: None Priority: 6 Summary: mmap module is undocumented Details: The mmap module is undocumented, but should be. Assigned to Mark Hammond since he touched the code most recently. Follow-Ups: Date: 2000-Sep-04 22:23 By: fdrake Comment: Changed assignment to Andrew, since Tim says he agreed to document it long ago. Bumped the priority since he actually said he'd do it. ------------------------------------------------------- Date: 2000-Sep-05 05:21 By: akuchling Comment: Erm... Doc/lib/libmmap.tex was checked in on 2000/06/17. It just doesn't seem to be included in lib.tex at the moment. ------------------------------------------------------- Date: 2000-Sep-05 06:56 By: fdrake Comment: Okay, I foud the docco that Andrew wrote; I'd not added it to the driver file. This is now done. Sorry, Andrew! ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113600&group_id=5470 From noreply@sourceforge.net Tue Sep 5 15:14:12 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 07:14:12 -0700 Subject: [Python-bugs-list] [Bug #112123] bdist_wininst crashes with no long_description Message-ID: <200009051414.HAA12401@delerium.i.sourceforge.net> Bug #112123, was updated on 2000-Aug-16 15:18 Here is a current snapshot of the bug. Project: Python Category: Distutils Status: Closed Resolution: None Bug Group: None Priority: 5 Summary: bdist_wininst crashes with no long_description Details: The bdist_wininst command crashes if no long_description is specified: File "setup.py", line 48, in ? sources = [ File "/www/python/lib/python1.5/site-packages/distutils/core.py", line 112, in setup dist.run_commands () File "/www/python/lib/python1.5/site-packages/distutils/dist.py", line 776, in run_commands self.run_command (cmd) File "/www/python/lib/python1.5/site-packages/distutils/dist.py", line 797, in run_command cmd_obj.run () File "/www/python/lib/python1.5/site-packages/distutils/command/bdist_wininst.py", line 115, in run self.create_exe (arcname, fullname) File "/www/python/lib/python1.5/site-packages/distutils/command/bdist_wininst.py", line 171, in create_exe cfgdata = open (self.create_inifile()).read() File "/www/python/lib/python1.5/site-packages/distutils/command/bdist_wininst.py", line 140, in create_inifile info = metadata.long_description + '\n' TypeError: bad operand type(s) for + Follow-Ups: Date: 2000-Aug-27 13:47 By: gward Comment: Thomas fixed this in the latest wininst code drop, but had some missing parens. I just added them and checked that in. Can please someone check that "long_description" behaves correctly with Windows installers? ------------------------------------------------------- Date: 2000-Sep-05 07:14 By: akuchling Comment: I've verified that this bug is now fixed. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112123&group_id=5470 From noreply@sourceforge.net Tue Sep 5 21:11:08 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 13:11:08 -0700 Subject: [Python-bugs-list] [Bug #110686] cStringIO lacks the readlines method (PR#409) Message-ID: <200009052011.NAA28640@bush.i.sourceforge.net> Bug #110686, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Feature Request Priority: 4 Summary: cStringIO lacks the readlines method (PR#409) Details: Jitterbug-Id: 409 Submitted-By: pierre@saiph.com Date: Sun, 23 Jul 2000 13:41:59 -0400 (EDT) Version: 1.5.2 OS: sparc solaris cStringIO is supposed to be the C version of For some reason, it does not provide the readlines method. The obvious turnaround is to use StringIO instead: no hurry to fix, at least on my side. ==================================================================== Audit trail: Mon Jul 24 18:41:02 2000 jeremy moved from incoming to open Follow-Ups: Date: 2000-Sep-05 13:11 By: loewis Comment: Fixed in Patch #101423, http://sourceforge.net/patch/?func=detailpatch&patch_id=101423&group_id=5470 ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110686&group_id=5470 From noreply@sourceforge.net Tue Sep 5 21:27:50 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 13:27:50 -0700 Subject: [Python-bugs-list] [Bug #110692] urllib.URLopener does not work with proxies (PR#67) Message-ID: <200009052027.NAA29230@bush.i.sourceforge.net> Bug #110692, was updated on 2000-Jul-31 14:15 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: urllib.URLopener does not work with proxies (PR#67) Details: Jitterbug-Id: 67 Submitted-By: andrew@fc.hp.com Date: Thu, 26 Aug 1999 16:20:02 -0400 (EDT) Version: 1.5.1 OS: When using urllib.URLopener(proxy) (instead of setting _PROXY env variables and calling urllib.openurl(), you get the following error message: File "./watchdog.py", line 118, in main url.open(urltocheck) File "/usr/lib/python1.5/urllib.py", line 158, in open return getattr(self, name)(url) File "/usr/lib/python1.5/urllib.py", line 258, in open_http return addinfourl(fp, headers, "http:" + url) TypeError: illegal argument type for built-in operation When using explicti proxies, url is a tuple instead of a string. You can't concatanate a tuple to a string, so the operation fails. ==================================================================== Audit trail: Mon Aug 30 12:40:45 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-05 13:27 By: loewis Comment: This is likely incorrect usage of the module. The proxy argument must be a dictionary mapping strings of protocol names to strings of URLs. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110692&group_id=5470 From noreply@sourceforge.net Tue Sep 5 21:41:44 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 13:41:44 -0700 Subject: [Python-bugs-list] [Bug #110625] trouble building under Solaris 7 (PR#260) Message-ID: <200009052041.NAA29809@bush.i.sourceforge.net> Bug #110625, was updated on 2000-Jul-31 14:08 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: trouble building under Solaris 7 (PR#260) Details: Jitterbug-Id: 260 Submitted-By: lipman@helix.nih.gov Date: Fri, 31 Mar 2000 18:03:56 -0500 (EST) Version: 1.5.2 OS: Solaris 7 106541-08 When I built Python on my machine: SunOS 5.7 Generic_106541-08 sun4u sparc SUNW,Ultra-5_10 Python's internal symbols (for instance PySequence_Length) were not included in the dynamic symbol table of the python executable. This prevented the Numerical-15.2 extensions from importing properly. My machine has both the Sun linker (in /usr/ccs/bin) and the GNU linker installed. I use the GNU linker, which is first in the $PATH under which Python was built. A workaround for this problem is to change the following line in Modules/Makefile.pre from LDFLAGS= to LDFLAGS= -export-dynamic This will only work for the GNU linker. ==================================================================== Audit trail: Mon May 22 17:39:59 2000 guido changed notes Mon May 22 17:39:59 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-06 14:25 By: twouters Comment: This might be fixed by newer autoconf ? ------------------------------------------------------- Date: 2000-Aug-30 05:39 By: akuchling Comment: Reassigning to Jeremy, since I lack the time. ------------------------------------------------------- Date: 2000-Sep-05 13:41 By: loewis Comment: I believe this is fixed in Python 2. I had the same problem in 1.5.2, as GNU ld suddenly started printing its -V output to stderr instead of stdout. Then, $CC -Xlinker -V 2>/dev/null | grep BFD >/dev/null of 1.5.2 would not consider the linker as GNU ld. In 2.0, the line is $CC -Xlinker -V 2>&1 | grep BFD >/dev/null so stderr is grepped as well and the bug is fixed. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110625&group_id=5470 From noreply@sourceforge.net Tue Sep 5 22:00:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 14:00:28 -0700 Subject: [Python-bugs-list] [Bug #110629] Tkinter Image names may be reused (PR#28) Message-ID: <200009052100.OAA27574@delerium.i.sourceforge.net> Bug #110629, was updated on 2000-Jul-31 14:08 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Tkinter Image names may be reused (PR#28) Details: Jitterbug-Id: 28 Submitted-By: guido@python.org Date: Wed, 14 Jul 1999 14:00:14 -0400 (EDT) Version: 1.5.2b OS: Mark Lutz wrote me: (BTW, this will probably never surface again (I'm stressing the image object a bit), but I think there's a problem with using the id() of an image as its name. I ran into a situation where an image was drawn in the wrong place, because a newly allocated image object had the same id() as one very recently reclaimed. It's very obscure, will only happen if you have > 1 canvas in a process and happen to be creating and deleting images very quickly, and is too complex for me to describe further at the moment ;-). I worked around it by first generating image names from a simple counter, and then prebuilding all images up front.) ==================================================================== Audit trail: Wed Jul 14 14:00:28 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-05 14:00 By: loewis Comment: Fixed in patch 101424, http://sourceforge.net/patch/?func=detailpatch&patch_id=101424&group_id=5470 ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110629&group_id=5470 From noreply@sourceforge.net Tue Sep 5 22:42:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 14:42:38 -0700 Subject: [Python-bugs-list] [Bug #110598] Fwd: Debian Bug#46993: py_compile.compile() won't compile files with CR+LF line endings (PR#101) Message-ID: <200009052142.OAA29143@delerium.i.sourceforge.net> Bug #110598, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Fwd: Debian Bug#46993: py_compile.compile() won't compile files with CR+LF line endings (PR#101) Details: Jitterbug-Id: 101 Submitted-By: flight@mathi.uni-heidelberg.de Date: Mon, 11 Oct 1999 15:10:37 +0200 Version: 1.5.2 OS: Debian GNU/Linux potato [This was recorded as Debian bug#46993, cf. http://www.debian.org/Bugs/db/46/46993.html] Package: python-base Version: 1.5.2-6 Severity: normal On Unix systems, py_compile.compile() (and therefore compileall.py) won't compile files with DOS/Windows lineendings (CR+LF). Commands like "import" or "exec" will work, though. The problem seems to be that py_compile.compile read()'s the whole file at once and passes it as a string to __builtin__.compile(), while "import" calls __builtin__.compile() for a file, so that __builtin__.compile seems to do some magic while reading the file. For a quick testcase: import __builtin__ f=open("test.py","w") f.write('print "Hello"\015\012') f.close() f=open("test.py") c=f.read() f.close() __builtin__.compile(c,"test.py","exec") results in: Traceback (innermost last): File "", line 1, in ? File "", line 9, in x File "", line 1 print "Hello" ^ SyntaxError: invalid syntax while "import test" works fine and results in test.pyc. Certainly the file.read() in py_compile.compile() isn't good enough for this case. Gregor ==================================================================== Audit trail: Mon Oct 11 18:12:13 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-30 23:28 By: mhammond Comment: Sorry, but I dont feel able to resolve this in time for 2.0 beta or final, so giving back to Jeremy to punt back off. If post 2.0 is OK, give it on back! ------------------------------------------------------- Date: 2000-Sep-05 14:42 By: loewis Comment: Fixed in 101425, see http://sourceforge.net/patch/?func=detailpatch&patch_id=101425&group_id=5470 ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110598&group_id=5470 From noreply@sourceforge.net Tue Sep 5 23:00:44 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 15:00:44 -0700 Subject: [Python-bugs-list] [Bug #110701] undefined symbol in custom interpeter (PR#191) Message-ID: <200009052200.PAA29888@delerium.i.sourceforge.net> Bug #110701, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: undefined symbol in custom interpeter (PR#191) Details: Jitterbug-Id: 191 Submitted-By: gurney_j@efn.org Date: Tue, 25 Jan 2000 12:33:51 -0500 (EST) Version: 1.5.2 OS: FreeBSD 3.4R When I try to run the following program I get an undefined symbol on PyDict_SetString. #include void main() { Py_Initialize(); PyRun_SimpleString("import base64\n"); Py_Finalize(); } I believe this is because the interpeter library doesn't reference all of the symbols that it may need when loading modules. So the linker will throw out any unecessary symbols which happen to include PyDict_SetString. I tried to include PyDict_SetString into my program, but was unable to make it work. ==================================================================== Audit trail: Mon Feb 07 12:36:08 2000 guido changed notes Mon Feb 07 12:36:08 2000 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Sep-05 15:00 By: loewis Comment: This is not a bug in Python. When linking a custom interpreter, you need to make sure all symbols are exported to modules. On FreeBSD, you do this by adding -Wl,--export-dynamic to the linker line. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110701&group_id=5470 From noreply@sourceforge.net Tue Sep 5 23:14:54 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 15:14:54 -0700 Subject: [Python-bugs-list] [Bug #110701] undefined symbol in custom interpeter (PR#191) Message-ID: <200009052214.PAA30374@delerium.i.sourceforge.net> Bug #110701, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: None Bug Group: Not a Bug Priority: 5 Summary: undefined symbol in custom interpeter (PR#191) Details: Jitterbug-Id: 191 Submitted-By: gurney_j@efn.org Date: Tue, 25 Jan 2000 12:33:51 -0500 (EST) Version: 1.5.2 OS: FreeBSD 3.4R When I try to run the following program I get an undefined symbol on PyDict_SetString. #include void main() { Py_Initialize(); PyRun_SimpleString("import base64\n"); Py_Finalize(); } I believe this is because the interpeter library doesn't reference all of the symbols that it may need when loading modules. So the linker will throw out any unecessary symbols which happen to include PyDict_SetString. I tried to include PyDict_SetString into my program, but was unable to make it work. ==================================================================== Audit trail: Mon Feb 07 12:36:08 2000 guido changed notes Mon Feb 07 12:36:08 2000 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Sep-05 15:00 By: loewis Comment: This is not a bug in Python. When linking a custom interpreter, you need to make sure all symbols are exported to modules. On FreeBSD, you do this by adding -Wl,--export-dynamic to the linker line. ------------------------------------------------------- Date: 2000-Sep-05 15:14 By: jhylton Comment: On python-dev, Martin von Löwis wrote: This is not a bug in Python. When linking a custom interpreter, you need to make sure all symbols are exported to modules. On FreeBSD, you do this by adding -Wl,--export-dynamic to the linker line. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110701&group_id=5470 From noreply@sourceforge.net Wed Sep 6 00:25:48 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 5 Sep 2000 16:25:48 -0700 Subject: [Python-bugs-list] [Bug #112693] re behaves differently in 1.6 and 2.0 than 1.52 Message-ID: <200009052325.QAA03204@bush.i.sourceforge.net> Bug #112693, was updated on 2000-Aug-24 20:04 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 7 Summary: re behaves differently in 1.6 and 2.0 than 1.52 Details: The output is diffrent when run with 1.52 when compared with 1.6 or 2.0 http://dorb.com/python/testRe.py Follow-Ups: Date: 2000-Aug-25 07:42 By: jhylton Comment: Just noting that we should resolve this bug before release. ------------------------------------------------------- Date: 2000-Aug-28 00:34 By: effbot Comment: The pattern causes excessive recursion (nested repeats on a long target string). SRE's stack check traps this, but the exception got lost on the way out. With the current CVS version, the example gives a "maximum recursion limit exceeded". That's an improvement, but not enough to close the bug... ------------------------------------------------------- Date: 2000-Sep-05 16:25 By: dgallion Comment: Noticed a problem with a more simple pattern. Python 2.0b1 (#2, Sep 4 2000, 11:03:25) [MSC 32 bit (Intel)] on win32 Copyright (c) 2000 BeOpen.com. All Rights Reserved. Copyright (c) 1995-2000 Corporation for National Research Initiatives. All Rights Reserved. Copyright (c) 1991-1995 Stichting Mathematisch Centrum, Amsterdam. All Rights Reserved. >>> buf=open('testRe.py').read() >>> import re >>> res= re.findall(".*",buf) >>> len(res) 1 Python 1.5.2 (#0, Aug 12 2000, 14:54:22) [MSC 32 bit (Intel)] on win32 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> buf=open('testRe.py').read() >>> import re >>> res=re.findall(".*",buf) >>> len(res) 432 ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112693&group_id=5470 From noreply@sourceforge.net Wed Sep 6 13:09:27 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 05:09:27 -0700 Subject: [Python-bugs-list] [Bug #113693] freeze modulefinder broken Message-ID: <200009061209.FAA26074@delerium.i.sourceforge.net> Bug #113693, was updated on 2000-Sep-06 05:09 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: freeze modulefinder broken Details: The following one-liner script can not be frozen: import string The traceback is included below. Line number are from revision 1.13 of modulefinder.py. The problem appears to be related to recent changes to the import bytecodes Traceback (most recent call last): File "d:\python\tools\freeze\freeze.py", line 457, in ? main() File "d:\python\tools\freeze\freeze.py", line 321, in main mf.import_hook(mod) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 303, in scan_code self.scan_code(c, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 289, in scan_code assert lastname is not None AssertionError For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113693&group_id=5470 From noreply@sourceforge.net Wed Sep 6 14:01:37 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 06:01:37 -0700 Subject: [Python-bugs-list] [Bug #113696] lib.pdf damaged in pdf-a4-2.0b1.tgz Message-ID: <200009061301.GAA20580@bush.i.sourceforge.net> Bug #113696, was updated on 2000-Sep-06 06:01 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: lib.pdf damaged in pdf-a4-2.0b1.tgz Details: Platform: NT4 SP6, Acrobat Reader 4.05. Tarball unpacks correctly and every other .pdf file in it is fine; however, lib.pdf appears to be corrupt, "can't repair", according to the Acrobat Reader. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113696&group_id=5470 From noreply@sourceforge.net Wed Sep 6 14:16:39 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 06:16:39 -0700 Subject: [Python-bugs-list] [Bug #113700] widespread bug in HTML files: lots of italics Message-ID: <200009061316.GAA28589@delerium.i.sourceforge.net> Bug #113700, was updated on 2000-Sep-06 06:16 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: widespread bug in HTML files: lots of italics Details: I'd already noticed this in AMK's and Moshe's doc about "what's new in Python 2". There's some bug in the converter-to-HTML that, occasionally, for a big closed bracket, outputs a in front and a in back rather than vice-versa; so all the rest of the HTML is italicized. E.g., it shows up in built-in-funcs.html in the description of int (x[, radix]) [possibly later too, haven't checked]. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113700&group_id=5470 From noreply@sourceforge.net Wed Sep 6 14:18:09 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 06:18:09 -0700 Subject: [Python-bugs-list] [Bug #113696] lib.pdf damaged in pdf-a4-2.0b1.tgz Message-ID: <200009061318.GAA28623@delerium.i.sourceforge.net> Bug #113696, was updated on 2000-Sep-06 06:01 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: lib.pdf damaged in pdf-a4-2.0b1.tgz Details: Platform: NT4 SP6, Acrobat Reader 4.05. Tarball unpacks correctly and every other .pdf file in it is fine; however, lib.pdf appears to be corrupt, "can't repair", according to the Acrobat Reader. Follow-Ups: Date: 2000-Sep-06 06:18 By: aleax Comment: Same problem with lib.pdf (only) after downloading the ZIP, and also in the Letter versions as opposed to A4. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113696&group_id=5470 From noreply@sourceforge.net Wed Sep 6 15:02:05 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 07:02:05 -0700 Subject: [Python-bugs-list] [Bug #113704] asyncore.py / asynchat.py outdated Message-ID: <200009061402.HAA30218@delerium.i.sourceforge.net> Bug #113704, was updated on 2000-Sep-06 07:02 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: asyncore.py / asynchat.py outdated Details: Sam Rushing has more recent versions of asyncore.py and asynchat.py; the differences need to be merged into the CVS tree. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113704&group_id=5470 From noreply@sourceforge.net Wed Sep 6 15:05:05 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 07:05:05 -0700 Subject: [Python-bugs-list] [Bug #113704] asyncore.py / asynchat.py outdated Message-ID: <200009061405.HAA30274@delerium.i.sourceforge.net> Bug #113704, was updated on 2000-Sep-06 07:02 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: asyncore.py / asynchat.py outdated Details: Sam Rushing has more recent versions of asyncore.py and asynchat.py; the differences need to be merged into the CVS tree. Follow-Ups: Date: 2000-Sep-06 07:05 By: akuchling Comment: This is also important to Zope. I'll accept the job of reconciling the two versions. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113704&group_id=5470 From noreply@sourceforge.net Wed Sep 6 15:45:15 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 07:45:15 -0700 Subject: [Python-bugs-list] [Bug #112944] Partially initialized cPickle dumps core Message-ID: <200009061445.HAA24574@bush.i.sourceforge.net> Bug #112944, was updated on 2000-Aug-28 09:03 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 7 Summary: Partially initialized cPickle dumps core Details: The second import of a library that failed the first time does not re-initialize the module, and returns a reference to the uninitialized module: >>> import cPickle Traceback (most recent call last): File "", line 1, in ? ImportError: No module named copy_reg >>> ^P File "", line 1 ^ SyntaxError: invalid syntax >>> import cPickle >>> Subsequent use of the uninitialized module crashes the interpreter: >>> cPickle.Pickler() Segmentation fault (core dumped) (and it happens the same way in scripts.) Follow-Ups: Date: 2000-Aug-29 14:30 By: gvanrossum Comment: The stated problem is not a bug but documented behavior. However the fact that a partially initialized cPickle dumps core is a cPickle bug. I'll change the topic and see if I can get the cPickle author (Jim Fulton) to look at this. ------------------------------------------------------- Date: 2000-Sep-06 07:45 By: dcjim Comment: The fix is pretty easy. I send Guido a new cPickle.c. Basically, the init_stuff call needs to be moved to the top of initcPickle and guarded, like so: if (init_stuff(m, d) < 0) return; ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112944&group_id=5470 From noreply@sourceforge.net Wed Sep 6 16:43:07 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 08:43:07 -0700 Subject: [Python-bugs-list] [Bug #112289] NetBSD1.4.2 build issue Message-ID: <200009061543.IAA26853@bush.i.sourceforge.net> Bug #112289, was updated on 2000-Aug-18 19:50 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: NetBSD1.4.2 build issue Details: the recent fileobjects.c work done for large files (tmick) appears broken when compiled against NetBSD1.4.2. During the final link, you get the following output: gcc python.o ../libpython2.0.a -lutil -lm -o python fileobject.c:280: Undefined symbol `_TELL64' referenced from text segment Follow-Ups: Date: 2000-Aug-18 19:55 By: none Comment: NOTE: I didn't include the configure output. If that would be helpful, go ahead and indicate that in this tracking system. If tmick (or whoever) would like me to contact them directly, I would happily do so. ------------------------------------------------------- Date: 2000-Aug-31 08:45 By: tmick Comment: Sent to python-dev: 1. Who reported this bug? He talked about providing more information and I would like to speak with him. I cannot find his email address. 2. Does anybody have a NetBSD1.4.2 (or close) machine that I can get shell access to? Do you know if they have such a machine at SourceForge that users can get shell access to? Or failing that can someone with such a machine give me the full ./configure and make output and maybe run this command: find /usr/include -name "*" -type f | xargs -l grep -nH _TELL64 and give me the output. ------------------------------------------------------- Date: 2000-Aug-31 08:47 By: tmick Comment: I got no reponse and I have no NetBSD machine on which to reproduce so, as Jeremy suggested, if I wouldn't get it by this evening then assign back to him. Other questions: - How old/recent is version 1.4.2 of NetBSD? - Where is _TELL64 coming from? Not from Python code. ------------------------------------------------------- Date: 2000-Sep-06 08:43 By: tmick Comment: Thanks to Brad (knotwell@NOSPAM f5 NOSPAM.com) who reported the bug I got shell access on his NetBSD 1.4.2 box to play a little bit. I found the problem but I don't have the Right (tm) fix. Here is what I found: The _TELL64 compilation failure is for the #define TELL64 usage in fileobject.c for a 64-bit capable tell() system function. Currently this is only defined and used for Win64. The funny thing is that to get to the code section using TELL64 the NetBSD box had to (1) pass the configure test for HAVE_LARGEFILE_SUPPORT, (2) have sizeof(fpos_t) >= 8, and (3) *not* have fseeko (as required by the Single Unix Specification) or fseek64 defined. As far as I can tell NetBSD *should* define fseeko() and ftello() if it wants to say that it supports largefiles. I *think* that you can manage it via fsetpos() and fgetpos(), which is what I did for largefile support on Win64 (although on Win64 I still relied on a 64-bit capable tell() function -- hence TELL64). I don't have the time right now to get and verify a working fsetpos/fgetpos solution. A quick fix is to ifdef out HAVE_LARGEFILE_SUPPORT for NetBSD 1.4.2 but I don't know the proper #define's for that. It is also ugly. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112289&group_id=5470 From noreply@sourceforge.net Wed Sep 6 17:30:09 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 09:30:09 -0700 Subject: [Python-bugs-list] [Bug #113721] urllib handles proxy badly Message-ID: <200009061630.JAA28583@bush.i.sourceforge.net> Bug #113721, was updated on 2000-Sep-06 09:30 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: urllib handles proxy badly Details: The following gives "host not found" when a proxy server is in use: import urllib w=urllib.urlopen("http://www.pythonlabs.com") The host name is changed to "http=PROXYSERVER" and fails This works under Python 1.5.2, but fails under Python 2.0b1 For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113721&group_id=5470 From noreply@sourceforge.net Wed Sep 6 18:24:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 10:24:18 -0700 Subject: [Python-bugs-list] [Bug #113727] Tkinter: _substitute call of getint(D) fails Message-ID: <200009061724.KAA05220@delerium.i.sourceforge.net> Bug #113727, was updated on 2000-Sep-06 10:24 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Tkinter: _substitute call of getint(D) fails Details: Version: 2.0b1 OS: Solaris 2.6 Generic_105181-15 sun4m Tcl/Tk: 8.0 All callbacks (even in the Demo code) give this: Exception in Tkinter callback Traceback (most recent call last): File "/s/lib/python2.0/lib-tk/Tkinter.py", line 1283, in __call__ args = apply(self.subst, args) File "/s/lib/python2.0/lib-tk/Tkinter.py", line 1053, in _substitute e.delta = getint(D) ValueError: invalid literal for int(): D It seems the variable D has been assigned the string value 'D'. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113727&group_id=5470 From noreply@sourceforge.net Wed Sep 6 19:22:14 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 11:22:14 -0700 Subject: [Python-bugs-list] [Bug #113733] xml package not included in windows installer Message-ID: <200009061822.LAA00508@bush.i.sourceforge.net> Bug #113733, was updated on 2000-Sep-06 11:22 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: None Priority: 5 Summary: xml package not included in windows installer Details: Lib/xml/* are not installed when using BeOpen-Python-2.0b1.exe For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113733&group_id=5470 From noreply@sourceforge.net Thu Sep 7 00:53:51 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 16:53:51 -0700 Subject: [Python-bugs-list] [Bug #113760] 2.0b1: _xmlplus does not allow site xml to override Lib/xml Message-ID: <200009062353.QAA19927@delerium.i.sourceforge.net> Bug #113760, was updated on 2000-Sep-06 16:53 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: 2.0b1: _xmlplus does not allow site xml to override Lib/xml Details: _xmlplus is represented as a means of overriding the new standard lib xml package with a user-supplied xml package, such as the one from XML-SIG ("There's a special feature whereby a user-installed package named _xmlplus overrides the standard xmlpackage; this is intended to give the XML SIG a hook to distribute backwards-compatible updates to the standard xml package." - quote from News on BeOpen site). While this has _some_ effect, it does not work as described. Under 2.0b1, code using the xml package from the XML-SIG (installed in site-packages) will only work if the new standard xml package in lib is renamed or removed. If used with the new standard xml package, imports such as from xml.sax import saxexts fail. If the _xmlplus hook is used (by renaming site-packages/xml to site-packages/_xmlplus or using a symlink), the imports succeed, but later the code fails with a message stating that no parsers can be found. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113760&group_id=5470 From noreply@sourceforge.net Thu Sep 7 01:08:35 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 17:08:35 -0700 Subject: [Python-bugs-list] [Bug #110675] Pth: test_fork1 fails, test_thread slow (PR#383) Message-ID: <200009070008.RAA13539@bush.i.sourceforge.net> Bug #110675, was updated on 2000-Jul-31 14:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: 3rd Party Priority: 1 Summary: Pth: test_fork1 fails, test_thread slow (PR#383) Details: Jitterbug-Id: 383 Submitted-By: gregor@hoffleit.de Date: Tue, 4 Jul 2000 12:07:06 -0400 (EDT) Version: CVS version (06/04/00) OS: Debian potato (i386) When I use the current CVS version of Python to build on a Debian potato system with GNU Pth 1.2.3 installed, test_fork1 fails with an error (see below), and test_thread takes significantly longer to complete than when I build the same sources with native LinuxThreads. When running test.regrtest.main(), this happens: clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import regrtest >>> regrtest.main() test_grammar test_opcodes ... test_extcall test_fcntl test_fork1 test test_fork1 crashed -- exceptions.AssertionError : Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 32, in f time.sleep(SHORTSLEEP) TypeError: illegal argument type for built-in operation Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' Unhandled exception in thread: Traceback (most recent call last): File "./Lib/test/test_fork1.py", line 30, in f alive[id] = os.getpid() AttributeError: 'None' object has no attribute 'getpid' test_format test_gc ... When running test.test_fork1(), I get this: clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import test_fork1 Traceback (most recent call last): File "", line 1, in ? File "./Lib/test/test_fork1.py", line 68, in ? main() File "./Lib/test/test_fork1.py", line 44, in main assert a == range(NUM_THREADS) AssertionError >>> test_thread takes very long to complete (5 min compared to 40 sec with LinuxThreads); when you look at the following log, you'll see that it tends to calls the threads serially !? clapton:3> LD_LIBRARY_PATH=`pwd` ./python Python 2.0b1 (#0, Jul 4 2000, 17:06:15) [GCC 2.95.2 20000220 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam Copyright 1995-2000 Corporation for National Research Initiatives (CNRI) >>> from test import test_thread creating task 1 creating task 2 creating task 3 task 1 will run for 2.1 sec task 1 done creating task 4 task 2 will run for 3.2 sec creating task 5 task 2 done creating task task 3 will run for 9.1 6 sec task 3 done creating task 7 task 4 will run for 2.5 sec task 4 done creating task 8 task 5 will run for 0.9 sec task 5 done creating task 9 task 6 will run for 7.4 sec task 6 done creating task 10 waiting for all tasks to complete task 7 will run for 5.3 sec task 7 done task 8 will run for 2.6 sec task 8 done task 9 will run for 2.7 sec task 9 done task 10 will run for 0.9 sec task 10 done all tasks done *** Barrier Test *** task 0 will run for 0.0 sec task 0 entering barrier 0 task 1 will run for 6.2 sec task 1 entering barrier 0 task 7 will run for 7.0 sec task 7 entering barrier 0 task 3 will run for 5.9 sec task 3 entering barrier 0 task 4 will run for 4.5 sec task 4 entering barrier 0 task 5 will run for 9.2 sec task 5 entering barrier 0 task 6 will run for 1.4 sec task 6 entering barrier 0 task 2 will run for 6.0 sec task 2 entering barrier 0 task 8 will run for 2.4 sec task 8 entering barrier 0 task 9 will run for 9.6 sec task 9 entering barrier 0 task 9 leaving barrier 0 task 0 leaving barrier 0 task task 1 leaving barrier 0 0 will run for 0.0 sec task 0 entering barrier 1 task 7 leaving barrier 0 task 9 will run for 0.8 sec task 9 entering barrier task 3 leaving barrier 0 1 task 1 task 4 leaving barrier 0 will run for 6.1 sec task 5 leaving barrier 0 task 1 entering barrier 1 task 6 leaving barrier 0 task 7 will run for 7.9 sec task 2 leaving barrier 0 task 7 entering barrier 1 task 3 task 8 leaving barrier 0 will run for 7.8 sec task 3 entering barrier 1 task 4 will run for 5.7 sec task 4 entering barrier 1 task 5 will run for 2.0 sec task 5 entering barrier 1 task 6 will run for 0.5 sec task 6 entering barrier 1 task 2 will run for 7.4 sec task 2 entering barrier 1 task 8 will run for 1.0 sec task 8 entering barrier 1 task 8 leaving barrier 1 task 7 leaving barrier 1 task 9 leaving barrier 1 task 1 leaving barrier 1 task 8 will run for 6.9 sec task 0 leaving barrier 1 task 8 entering barrier 2 task 0 will run for task 4 leaving barrier 1 0.0 sec task 7 will run for 4.3 sec task 0 entering barrier 2 task 3 leaving barrier 1 task 7 entering barrier 2 task 5 leaving barrier 1 task 6 leaving barrier 1 task 9 will run for 8.2 sec task task 2 leaving barrier 9 entering barrier 2 1 task 5 will run for 8.9 sec task 5 entering barrier 2 task 2 will run for 8.3 sec task 2 entering barrier 2 task 3 will run for 4.5 sec task 3 entering barrier 2 task 1 will run for 7.0 sec task 1 entering barrier 2 task 6 will run for 1.9 sec task 6 entering barrier 2 task 4 will run for 0.2 sec task 4 entering barrier 2 task 4 leaving barrier 2 task 8 leaving barrier 2 task 9 leaving barrier 2 task 7 leaving barrier 2 task 5 leaving barrier 2 task 0 leaving barrier 2 task 2 leaving barrier 2 task 3 leaving barrier 2 task 1 leaving barrier 2 task 6 leaving barrier 2 all tasks done while this is the log of the same test with Python 1.5.2 and LinuxThreads: clapton:3> python Python 1.5.2 (#0, Apr 3 2000, 14:46:48) [GCC 2.95.2 20000313 (Debian GNU/Linux)] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> from test import test_thread creating task 1 creating task 2 creating task 3 creating task 4 creating task 5 creating task 6 creating task 7 creating task 8 creating task 9 creating task 10 waiting for all tasks to complete task 1 will run for 8.9 sec task 2 will run for 8.3 sec task 3 will run for 9.1 sec task 5 will run for 6.0 sec task 4 will run for 7.5 sec task 6 will run for 4.7 sec task 7 will run for 4.2 sec task 8 will run for 7.0 sec task 9 will run for 8.7 sec task 10 will run for 9.5 sec task 7 done task 6 done task 5 done task 8 done task 4 done task 2 done task 9 done task 1 done task 3 done task 10 done all tasks done *** Barrier Test *** task 0 will run for 0.0 sec task 1 will run for 2.8 sec task 0 entering barrier 0 task 2 will run for 5.3 sec task 3 will run for 9.2 sec task 5 will run for 8.0 sec task 4 will run for 8.9 sec task 6 will run for 5.0 sec task 7 will run for 1.3 sec task 8 will run for 5.6 sec task 9 will run for 4.7 sec task 7 entering barrier 0 task 1 entering barrier 0 task 9 entering barrier 0 task 6 entering barrier 0 task 2 entering barrier 0 task 8 entering barrier 0 task 5 entering barrier 0 task 4 entering barrier 0 task 3 entering barrier 0 task 3 leaving barrier 0 task 3 will run for 0.1 sec task 0 leaving barrier 0 task 0 will run for 0.0 sec task 7 leaving barrier 0 task 7 will run for 6.6 sec task 1 leaving barrier 0 task 1 will run for 1.0 sec task 9 leaving barrier 0 task 9 will run for 8.2 sec task 6 leaving barrier 0 task 6 will run for 1.0 sec task 2 leaving barrier 0 task 2 will run for 9.2 sec task 8 leaving barrier 0 task 8 will run for 4.4 sec task 5 leaving barrier 0 task 5 will run for 9.6 sec task 4 leaving barrier 0 task 4 will run for 1.7 sec task 0 entering barrier 1 task 3 entering barrier 1 task 1 entering barrier 1 task 6 entering barrier 1 task 4 entering barrier 1 task 8 entering barrier 1 task 7 entering barrier 1 task 9 entering barrier 1 task 2 entering barrier 1 task 5 entering barrier 1 task 5 leaving barrier 1 task 5 will run for 6.6 sec task 0 leaving barrier 1 task 0 will run for 0.0 sec task 3 leaving barrier 1 task 3 will run for 8.5 sec task 1 leaving barrier 1 task 1 will run for 0.1 sec task 6 leaving barrier 1 task 6 will run for 4.7 sec task 4 leaving barrier 1 task 4 will run for 4.7 sec task 8 leaving barrier 1 task 8 will run for 1.7 sec task 7 leaving barrier 1 task 7 will run for 1.8 sec task 9 leaving barrier 1 task 9 will run for 2.8 sec task 2 leaving barrier 1 task 2 will run for 3.3 sec task 0 entering barrier 2 task 1 entering barrier 2 task 8 entering barrier 2 task 7 entering barrier 2 task 9 entering barrier 2 task 2 entering barrier 2 task 6 entering barrier 2 task 4 entering barrier 2 task 5 entering barrier 2 task 3 entering barrier 2 task 3 leaving barrier 2 task 0 leaving barrier 2 task 1 leaving barrier 2 task 8 leaving barrier 2 task 7 leaving barrier 2 task 9 leaving barrier 2 task 2 leaving barrier 2 task 6 leaving barrier 2 task 4 leaving barrier 2 task 5 leaving barrier 2 all tasks done >>> ==================================================================== Audit trail: Tue Jul 11 08:24:22 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-23 10:31 By: jhylton Comment: Another report of test_fork1 problems. Plan to resolve before 2.0b1. ------------------------------------------------------- Date: 2000-Aug-23 10:36 By: tim_one Comment: Jeremy, my chances of helping someone with a problem specific to "Debian potato system with GNU Pth 1.2.3" are nil. Assigned back to you since you seem to believe it's feasible . ------------------------------------------------------- Date: 2000-Aug-31 14:53 By: jhylton Comment: Haven't heard back from the submittor. This sounds like a problem with a buggy GNU Pth package; not a Python bug. ------------------------------------------------------- Date: 2000-Sep-01 14:15 By: none Comment: I submitted the original pth support. pth has what I would consider a bug in that signals do not interrupt sleep(), usleep(), or select(), the latter being what Python uses to sleep. I'm going to look at this some more myself as soon as I can get the current CVS to configure with pth. -- andy@dustman.net ------------------------------------------------------- Date: 2000-Sep-01 14:22 By: none Comment: Another thing which may be a factor in this case: Since pth threads are user-space and so all run in the same process, the test used in signalmodule.c:125 doesn't work, i.e. if (getpid() == main_pid) { It probably needs to be something more like this: if (PyThread_get_thread_ident() != main_thread) { I submitted a patch to fix this around the time of the CNRI split, so it probably got lost. -- andy@dustman.net ------------------------------------------------------- Date: 2000-Sep-06 17:08 By: adustman Comment: I submitted patch 101437 which should fix this. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110675&group_id=5470 From noreply@sourceforge.net Thu Sep 7 01:12:12 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 17:12:12 -0700 Subject: [Python-bugs-list] [Bug #112944] Partially initialized cPickle dumps core Message-ID: <200009070012.RAA20622@delerium.i.sourceforge.net> Bug #112944, was updated on 2000-Aug-28 09:03 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Fixed Bug Group: None Priority: 7 Summary: Partially initialized cPickle dumps core Details: The second import of a library that failed the first time does not re-initialize the module, and returns a reference to the uninitialized module: >>> import cPickle Traceback (most recent call last): File "", line 1, in ? ImportError: No module named copy_reg >>> ^P File "", line 1 ^ SyntaxError: invalid syntax >>> import cPickle >>> Subsequent use of the uninitialized module crashes the interpreter: >>> cPickle.Pickler() Segmentation fault (core dumped) (and it happens the same way in scripts.) Follow-Ups: Date: 2000-Aug-29 14:30 By: gvanrossum Comment: The stated problem is not a bug but documented behavior. However the fact that a partially initialized cPickle dumps core is a cPickle bug. I'll change the topic and see if I can get the cPickle author (Jim Fulton) to look at this. ------------------------------------------------------- Date: 2000-Sep-06 07:45 By: dcjim Comment: The fix is pretty easy. I send Guido a new cPickle.c. Basically, the init_stuff call needs to be moved to the top of initcPickle and guarded, like so: if (init_stuff(m, d) < 0) return; ------------------------------------------------------- Date: 2000-Sep-06 17:12 By: gvanrossum Comment: Jim Fulton sent a simple fix. Checked in. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112944&group_id=5470 From noreply@sourceforge.net Thu Sep 7 01:18:02 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 17:18:02 -0700 Subject: [Python-bugs-list] [Bug #110624] float("1.0e-309") inconsistency on win32 (PR#245) Message-ID: <200009070018.RAA20849@delerium.i.sourceforge.net> Bug #110624, was updated on 2000-Jul-31 14:08 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: Remind Bug Group: None Priority: 5 Summary: float("1.0e-309") inconsistency on win32 (PR#245) Details: Jitterbug-Id: 245 Submitted-By: sde@recombinant.demon.co.uk Date: Wed, 22 Mar 2000 16:13:26 -0500 (EST) Version: 1.5.2 OS: win32 #! /usr/bin/python # Inconsistent behaviour. # Python 1.5.2 win32 fails the second print (why not both?) # other versions print both expressions # Ok Python 1.5.2 on SuSE Linux 6.3 # Ok JPython 1.1 on java1.1.7B # Partial failure Python 1.5.2 win32 print eval("float(1.0e-309)") print float("1.0e-309") # ValueError: float() literal too large: 1.0e-309 ==================================================================== Audit trail: Fri Mar 24 16:42:36 2000 guido changed notes Fri Mar 24 16:42:36 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:08 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] float("1.0e-309") inconsistency on win32 (PR#245) Date: Thu, 23 Mar 2000 01:43:30 -0500 > -----Original Message----- > From: python-bugs-list-admin@python.org > [mailto:python-bugs-list-admin@python.org]On Behalf Of > sde@recombinant.demon.co.uk > Sent: Wednesday, March 22, 2000 4:13 PM > To: python-bugs-list@python.org > Cc: bugs-py@python.org > Subject: [Python-bugs-list] float("1.0e-309") inconsistency on win32 > (PR#245) > > > Full_Name: Stephen D Evans > Version: 1.5.2 > OS: win32 > Submission from: recombinant.demon.co.uk (212.229.73.7) > > > #! /usr/bin/python > > # Inconsistent behaviour. > > # Python 1.5.2 win32 fails the second print (why not both?) > # other versions print both expressions > > # Ok Python 1.5.2 on SuSE Linux 6.3 > # Ok JPython 1.1 on java1.1.7B > # Partial failure Python 1.5.2 win32 > > print eval("float(1.0e-309)") > print float("1.0e-309") # ValueError: float() literal too large: 1.0e-309 First note that these don't do the same thing: the first passes a float to "float", the second passes a string to "float". Change the first to print eval("float('1.0e-309')") and it gives the same bogus error as the second one. Then it turns out the error is Microsoft's fault. This tiny C program shows the bug: #include #include #include void main() { double x; char* dontcare; errno = 0; x = strtod("1.0e-309", &dontcare); printf("errno after = %d\n", errno); printf("x after = %g\n", x); } This prints errno after = 34 x after = 0 when compiled & linked with MS's VC5; don't know about VC6. Same thing for "1.0e-308". Works fine for "1.0e-307". Doubt this will get fixed before MS fixes their library. ------------------------------------------------------- Date: 2000-Jul-31 14:08 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] float("1.0e-309") inconsistency on win32 (PR#245) Date: Fri, 24 Mar 2000 04:51:57 -0500 > > Full_Name: Stephen D Evans > > Version: 1.5.2 > > OS: win32 > > Submission from: recombinant.demon.co.uk (212.229.73.7) > > > > > > #! /usr/bin/python > > > > # Inconsistent behaviour. > > > > # Python 1.5.2 win32 fails the second print (why not both?) > > # other versions print both expressions > > > > # Ok Python 1.5.2 on SuSE Linux 6.3 > > # Ok JPython 1.1 on java1.1.7B > > # Partial failure Python 1.5.2 win32 > > > > print eval("float(1.0e-309)") > > print float("1.0e-309") # ValueError: float() literal too large: 1.0e-309 > > First note that these don't do the same thing: the first passes a float to > "float", the second passes a string to "float". Change the first to > > print eval("float('1.0e-309')") > > and it gives the same bogus error as the second one. > > Then it turns out the error is Microsoft's fault. This tiny C program shows > the bug: > > #include > #include > #include > > void > main() > { > double x; > char* dontcare; > errno = 0; > x = strtod("1.0e-309", &dontcare); > printf("errno after = %d\n", errno); > printf("x after = %g\n", x); > } > > This prints > > errno after = 34 > x after = 0 > > when compiled & linked with MS's VC5; don't know about VC6. Same thing for > "1.0e-308". Works fine for "1.0e-307". Doubt this will get fixed before MS > fixes their library. The bizarre thing is that this is broken the same way on Solaris: >>> 1.0e-309 1.0000000000000019e-309 >>> float("1.0e-309") Traceback (innermost last): File "", line 1, in ? ValueError: float() literal too large: 1.0e-309 >>> I looked and it turns out that Python uses atof() in the first case (string literal encountered in a Python expression) and strtod() in the second case (string passed to float()). Apparently strtod() and atof() differ in implementation, even though the Solaris man page says "The atof(str) function call is equivalent to strtod(str, (char **)NULL)." We could fix this by changing float() to do its own syntax checking and then use atof()... Is it worth it? --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:08 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] float("1.0e-309") inconsistency on win32 (PR#245) Date: Fri, 24 Mar 2000 22:48:50 -0500 [atof and strtod act differently given denormals on both Windows & Solaris] [Guido] > ... > Apparently strtod() and atof() differ in implementation, even though > the Solaris man page says "The atof(str) function call is equivalent > to strtod(str, (char **)NULL)." Ya, their man page is lying. atof() existed in the mists of prehistory and typically did no error checking at all. IIRC, ANSI C introduced strtod(), which generally got implemented as a layer of error-checking around atof. I have to take it back that this is a bug in MS's strtod: DBL_MIN is MS's limits.h is 2.2250738585072014e-308, so strtod() *should* gripe on non-zero inputs with absolute value smaller than that. > We could fix this by changing float() to do its own syntax checking > and then use atof()... Is it worth it? Depends on your goal : do you want more extreme cases, like 1e-500, to blow up (strtod) or underflow to 0 (atof)? The example in the original test case is subtler because atof made it *appear* to be "a regular old number"; in fact, it's not, it's small enough that it falls into 754's "denormalized" range. This means the conversion loses some extraordinary amount of-- but not all --information (whereas 1e-500 is below even the denorm range: conversion loses all information). Without a coherent strategy for dealing with 754 issues, it's hard to decide which is better. Since strtod() is more restrictive, if this is worth bothering about at all now (for P3K I think 754 needs to be taken seriously), I actually recommend changing current atof() calls to use native strtod() instead. ------------------------------------------------------- Date: 2000-Jul-31 14:08 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] float("1.0e-309") inconsistency on win32 (PR#245) Date: Fri, 24 Mar 2000 23:14:29 -0500 > [atof and strtod act differently given denormals on both Windows & > Solaris] > > [Guido] > > ... > > Apparently strtod() and atof() differ in implementation, even though > > the Solaris man page says "The atof(str) function call is equivalent > > to strtod(str, (char **)NULL)." [Tim] > Ya, their man page is lying. atof() existed in the mists of prehistory and > typically did no error checking at all. IIRC, ANSI C introduced strtod(), > which generally got implemented as a layer of error-checking around atof. > > I have to take it back that this is a bug in MS's strtod: DBL_MIN is MS's > limits.h is 2.2250738585072014e-308, so strtod() *should* gripe on non-zero > inputs with absolute value smaller than that. > > > We could fix this by changing float() to do its own syntax checking > > and then use atof()... Is it worth it? > > Depends on your goal : do you want more extreme cases, like 1e-500, > to blow up (strtod) or underflow to 0 (atof)? The example in the original > test case is subtler because atof made it *appear* to be "a regular old > number"; in fact, it's not, it's small enough that it falls into 754's > "denormalized" range. This means the conversion loses some extraordinary > amount of-- but not all --information (whereas 1e-500 is below even the > denorm range: conversion loses all information). > > Without a coherent strategy for dealing with 754 issues, it's hard to decide > which is better. Since strtod() is more restrictive, if this is worth > bothering about at all now (for P3K I think 754 needs to be taken > seriously), I actually recommend changing current atof() calls to use > native strtod() instead. Hm, I'm not so sure. Suppose I'm writing a program that reads a data files generated by some Fortran program. The Fortran program is giving me points to plot for example. If Fortran manages to output 1e-500, wouldn't it make more sense if I rounded that to zero instead of rejecting it? After all, after converting to plot precision it's going to be zero anyway. This way I could almost defend using strtod() for literals in Python source code (where it makes more sense to warn about underflow) but atof() for input. Except that of course input could conceivably be using eval()... Another argument for turning underflow into zero is that that also happens in regular arithmetic: >>> 0.1**2**8 1.0000000000000275e-256 >>> 0.1**2**9 0.0 I like this uniform behavior: overflow -> exception, underflow -> zero. My calculator does this too. Am I hopelessly naive about this? What else can we do? What control does C give? What does sscanf() do? --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:08 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] float("1.0e-309") inconsistency on win32 (PR#245) Date: Fri, 24 Mar 2000 23:53:10 -0500 "In the face of ambiguity, refuse the temptation to guess". That's one of the Pythonic Theses you're tempted to ignore too often . Part of taking 754 seriously is that 754 gives the user complete control over what happens in case of exceptions (including underflow): ignore them, raise a fatal error, or simply set a flag saying it occurred. Unfortunately, we have to wait for C9x until there's a portable way to get at that stuff. Before then, it requires wildly varying platform-specific hair. > Hm, I'm not so sure. Suppose I'm writing a program that reads a data > files generated by some Fortran program. The Fortran program is > giving me points to plot for example. If Fortran manages to output > 1e-500, wouldn't it make more sense if I rounded that to zero instead > of rejecting it? This *may* make good sense if Python had certain knowledge that the program is merely going to plot the points, but probably not even then. That is, "insignificantly small" is relative to the application, and e.g. for all we know the Fortran program generated a million doubles *all* in the range [1e-500, 10e-500]: the intended plot of the data could very well be a pointillistic version of the Mona Lisa rather than a straight line. > After all, after converting to plot precision it's > going to be zero anyway. As above, this conclusion relies on the dubious assumption that 1e-500 is very much smaller than the other values. > This way I could almost defend using strtod() for literals in > Python source code (where it makes more sense to warn about underflow) > but atof() for input. Except that of course input could conceivably > be using eval()... > > Another argument for turning underflow into zero is that that also > happens in regular arithmetic: > > >>> 0.1**2**8 > 1.0000000000000275e-256 > >>> 0.1**2**9 > 0.0 Which is often desired but sometimes a disaster -- the language simply can't guess. On whatever machine you ran this on, it almost certainly set the "underflow happened" flag but continued on because the underflow exception was masked out by default. > I like this uniform behavior: overflow -> exception, underflow -> > zero. My calculator does this too. Not mine . Really, whether underflow gripes is controlled by a user-settable flag on high end HP calculators. Note too that neither does float *overflow* raise an exception under most Pythons today: D:\Python>python Python 1.5.42 (#0, Jan 31 2000, 14:05:14) [MSC 32 bit (Intel)] on win32 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> 1e500 1.#INF >>> 1e200**2 1.#INF >>> I personally favor raising exceptions (by default) on 754's overflow, divide by 0, and invalid operation conditions, while (again by default) letting underflow and inexact pass without comment. But it again requires fiddling the HW's 754 control registers to make that happen. P3K, not now. > Am I hopelessly naive about this? Not *entirely* hopeless, but close . If we ever talk about it for an hour, I'll convince you of the futility of fighting 754. They beat all resistance out of me in a mere decade <0.5 wink>. > What else can we do? Not much! Switching uniformly to either atof() or strtod() would be OK by me for now, although I don't think patching over the current inconsistency buys enough bang for the buck to be worth the effort. > What control does C give? None, until C9X. > What does sscanf() do? I don't care -- ANSI C predated 754's absolute universal triumph, and ANSI C's numerics fight the *right* thing to do now just about every step of the way. C9x is supposed to fix all that. In the meantime, I think what JPython does is much more interesting (but don't know what that is): whatever we do here should be consistent with The Other Python too, and Java has a much better 754 story than ANSI C. 754 is here to stay, but the last iteration of ANSI C isn't. Best guess is that Java acts more like atof than strtod in this case. ------------------------------------------------------- Date: 2000-Jul-31 14:08 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] float("1.0e-309") inconsistency on win32 (PR#245) Date: Sat, 25 Mar 2000 14:15:54 -0500 > "In the face of ambiguity, refuse the temptation to guess". > > That's one of the Pythonic Theses you're tempted to ignore too often . > > Part of taking 754 seriously is that 754 gives the user complete control > over what happens in case of exceptions (including underflow): ignore them, > raise a fatal error, or simply set a flag saying it occurred. > Unfortunately, we have to wait for C9x until there's a portable way to get > at that stuff. Before then, it requires wildly varying platform-specific > hair. OK, so let's stick with the defaults that 754 presecribes until we can give the user control. That's the purpose of defaults, right? > > Hm, I'm not so sure. Suppose I'm writing a program that reads a data > > files generated by some Fortran program. The Fortran program is > > giving me points to plot for example. If Fortran manages to output > > 1e-500, wouldn't it make more sense if I rounded that to zero instead > > of rejecting it? > > This *may* make good sense if Python had certain knowledge that the program > is merely going to plot the points, but probably not even then. That is, > "insignificantly small" is relative to the application, and e.g. for all we > know the Fortran program generated a million doubles *all* in the range > [1e-500, 10e-500]: the intended plot of the data could very well be a > pointillistic version of the Mona Lisa rather than a straight line. OK, forget the example. > > After all, after converting to plot precision it's > > going to be zero anyway. > > As above, this conclusion relies on the dubious assumption that 1e-500 is > very much smaller than the other values. I think even 754 tells us that 1e-500 is smaller than what we normally need to deal with. > > This way I could almost defend using strtod() for literals in > > Python source code (where it makes more sense to warn about underflow) > > but atof() for input. Except that of course input could conceivably > > be using eval()... > > > > Another argument for turning underflow into zero is that that also > > happens in regular arithmetic: > > > > >>> 0.1**2**8 > > 1.0000000000000275e-256 > > >>> 0.1**2**9 > > 0.0 > > Which is often desired but sometimes a disaster -- the language simply can't > guess. On whatever machine you ran this on, it almost certainly set the > "underflow happened" flag but continued on because the underflow exception > was masked out by default. Again: 754 gives a default. I want to conform to the default -- it's better to provide control, but even when we provide control, there will still be default behavior, and (if I understand 754 correctly) the default is not to interrupt for underflow. > > I like this uniform behavior: overflow -> exception, underflow -> > > zero. My calculator does this too. > > Not mine . Really, whether underflow gripes is controlled by a > user-settable flag on high end HP calculators. Note too that neither does > float *overflow* raise an exception under most Pythons today: > > D:\Python>python > Python 1.5.42 (#0, Jan 31 2000, 14:05:14) [MSC 32 bit (Intel)] on win32 > Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam > >>> 1e500 > 1.#INF > >>> 1e200**2 > 1.#INF > >>> Oops, you're right. Must be another 754 default behavior! > I personally favor raising exceptions (by default) on 754's overflow, divide > by 0, and invalid operation conditions, while (again by default) letting > the HW's 754 control registers to make that happen. P3K, not now. I would personally also prefer an exception for overflow. You don't say what you want for underflow though. I still like silent underflow to zero by default. > > Am I hopelessly naive about this? > > Not *entirely* hopeless, but close . If we ever talk about it for an > hour, I'll convince you of the futility of fighting 754. They beat all > resistance out of me in a mere decade <0.5 wink>. I'm not fighting it. Say the ideal Python has full user control over fp exceptions. What should the defaults be? Python 1.6 should have the same defaults, even if it doesn't have the controls. > > What else can we do? > > Not much! Switching uniformly to either atof() or strtod() would be OK by > me for now, although I don't think patching over the current inconsistency > buys enough bang for the buck to be worth the effort. > > > What control does C give? > > None, until C9X. > > > What does sscanf() do? > > I don't care -- ANSI C predated 754's absolute universal triumph, and ANSI > C's numerics fight the *right* thing to do now just about every step of the > way. C9x is supposed to fix all that. > > In the meantime, I think what JPython does is much more interesting (but > don't know what that is): whatever we do here should be consistent with The > Other Python too, and Java has a much better 754 story than ANSI C. 754 is > here to stay, but the last iteration of ANSI C isn't. Best guess is that > Java acts more like atof than strtod in this case. Bingo. Indeed it does. 1e500 prints as Infinity; 1e-500 is 0.0, either as literal or when converted from a string. I'll change float() to use atof(). --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:08 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] float("1.0e-309") inconsistency on win32 (PR#245) Date: Tue, 4 Apr 2000 00:29:01 -0400 [Guido] > OK, so let's stick with the defaults that 754 presecribes until we can > give the user control. That's the purpose of defaults, right? In every world other 754 (see below), but we really have no choice now (because C doesn't give us any control now). > I think even 754 tells us that 1e-500 is smaller than what we normally > need to deal with. Well, there is no 1e-500 under 754, which is why there's some reason to at least warn about it (if the user wanted 0, why didn't they type 0?). > Again: 754 gives a default. I want to conform to the default -- it's > better to provide control, but even when we provide control, there will > still be default behavior, and (if I understand 754 correctly) the > default is not to interrupt for underflow. The 754 default is never to raise an exception no matter what, whether overflow, underflow, invalid operation (like sqrt(-4)), or divide by 0. So Python's current behavior wrt these two is non-conforming: math.sqrt(-4) 1. / 0. However, 754 is primarily a HW std, and the defaults were prescribed by a committee of HW geeks and math library authors. They were caught totally off guard by how long it took for languages to provide the control features the std also mandates -- for "regular users" it's plainly insane to avoid griping about the two above, and it was never 754's intent to let them pass silently for regular users. Note that Java has been skewered mercilessly by Kahan (Mr. 754 Himself) for accepting the defaults but not providing the also-mandated control functions. The std is subtler than it appears, and all the fiddly bits are really needed. >> Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >> >>> 1e500 >> 1.#INF >> >>> 1e200**2 >> 1.#INF >> >>> > Oops, you're right. Must be another 754 default behavior! Right. > I would personally also prefer an exception for overflow. You don't > say what you want for underflow though. I still like silent underflow > to zero by default. 754 defines (almost) everything: underflow when the underflow exception is masked out must deliver a zero with the same sign as the infinite-precision result. > I'm not fighting it. You will ; e.g., returning 1 for "x == x" is incorrect when x is a NaN. > Say the ideal Python has full user control over fp exceptions. What > should the defaults be? IMO, exception on overflow, divide-by-0 and invalid operation. Let underflow and inexact pass silently. That's what I implemented at KSR, and customers were *very* much happier with that than with the 754 defaults. Of course I also implemented all the 754 control and status inquiry functions, so the one 754-savvy programmer per site was happy too (they need the control to write robust numerical libraries for everyone else to use -- the *true* purpose of the 754 HW defaults). > Python 1.6 should have the same defaults, even if it doesn't have the > controls. This is a big project, as there's no portable way even to detect fp overflow now. The math libraries should play along too. > I'll change float() to use atof(). OK by me! ------------------------------------------------------- Date: 2000-Aug-03 05:43 By: twouters Comment: I *think* this one is fixed and closed. It looks like Guido promises to fix this, in any case, and it looks done. ------------------------------------------------------- Date: 2000-Aug-10 11:48 By: gvanrossum Comment: No, it's not fixed, but it is platform dependent how it behaves. The conclusion was that we should use atof() everywhere, and write a separate syntax checker (since atof() stops at the first invalid character). I made a start at a syntax checker but then got distracted. Here's my code: static char * floatsyntax(char *s) { /* Check for valid floating point syntax: space* [sign] (digit+ [period digit*] | period digit+) [(e|E) [sign] digit+] space* */ int digits, period; while (isspace(*s)) s++; if (*s == '+' || *s == '-') s++; digits = period = 0; for (;;) { if (isdigit(*s)) digits++; else if (*s == '.') { if (period) return NULL; period++; } else break; } if (!digits) return NULL; if (*s == 'e' || *s == 'E') { s++; if (*s == '+' || *s == '-') s++; digits = 0; while (isdigit(*s)) digits++; if (!digits) return NULL; } return s; } ------------------------------------------------------- Date: 2000-Aug-10 11:51 By: gvanrossum Comment: Shit. SF removes leading whitespace. Oh well, mail me for a properly formatted version of that code. ------------------------------------------------------- Date: 2000-Aug-10 21:57 By: tim_one Comment: It's curious that in the change mail SF generated, leading indentation was *not* lost. This must be a browser display thing. Anyway, by eyeball the syntax checker has two bugs: 1. Infinite loop when looking at an exponent. x while (isdigit(*s)) digits++; should be x while (isdigit(*s)) {digits++; s++;) 2. Like atof, stops at an invalid character. Before the x return s; it should have, e.g., x while (ispace(*s)) ++s; x if (*s) return NULL; although I'm not sure what the assumptions are about the input to this function. ------------------------------------------------------- Date: 2000-Aug-27 11:38 By: gvanrossum Comment: I'm mailing Tim a fixed version of floatsyntax(). ------------------------------------------------------- Date: 2000-Aug-30 00:39 By: tim_one Comment: I'm afraid the code here is a freakin' mess. No wonder Guido assigned it to me <0.3 wink>. Turnabout is fair play, so I'm assigning it back to him (for Pronouncements, or at least to alert him what's going on here). I *think* you intended to change the guts of PyFloat_FromString. Which appears to be a so-far undocumented public API function, with a strtod-like prototype, and where nobody calls it with anything but NULL for the 2nd argument. Does the signature of this have to remain the same, or can I toss the 2nd argument? Or even define it to do something useful ? Note that in the Unicode case, pend is set to point into stack trash! Python has its own strtod.c and atof.c files too. Are these really needed, or can I toss those as well? (They're not used on Windows, but I don't understand the layers of Unix config.) They're both ANSI std, so I don't think we should be supplying our own anymore (besides which, they suck numerically). Bad news: our strategy for fixing this bug relies on atof() behavior that's explicitly not defined by the std (if strtod sets errno on a given input, the result of atof on that same input is undefined). Let's assume from here on that we're just lucky. Note that complex_from_string (bltinmodule.c) does its own by-hand parsing, again calling strtod directly, so the bug here will just pop up there too. Ditto for load_float in cpickle.c (we can *write out* flost strings that strtod won't read back in -- in effect, that *is* this bug, in another guise). Ditto for strop_atof in stropmodule.c. If we *don't* assume we're lucky, there are about 6 calls to atof that are vulnerable too. Unfortunately, C did a bad job of defining float<->string facilities, and C's problems have propagated throughout Python (i.e., wherever atof or strtod are called). Note that atof/strtod both get much hairier in C99 (they sprout new ways to spell NaN and Inf, and support a new binary floating-point notation too). The Python code calling these guys now doesn't know anything about that, so it will again be a distributed mess to fix all the call sites. I suggest there should be exactly one routine in the entire source tree that converts strings to doubles, exactly one in the other direction too; and outside of the former, calls to atof and strtod should be strictly banned. C is a mess here, C99 is less of a mess but much more complex, and we can't afford to have the mess or the complexity spread throughout the codebase. ------------------------------------------------------- Date: 2000-Sep-06 17:18 By: gvanrossum Comment: Back to Tim. - You can ignore strtod.c and atof.c; these aren't used *except* on platforms that don't have them in libc. (Are there any left? It used to be necessary for some, but that was almost 10 years ago.) - Let's not change existing APIs, even if they aren't documented. - Let's assume we're "lucky". - I agree with your proposed solution: one function each way. Go ahead! This is fine for 2.0b1. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110624&group_id=5470 From noreply@sourceforge.net Thu Sep 7 02:26:03 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 18:26:03 -0700 Subject: [Python-bugs-list] [Bug #113773] Python 2.0b1 selectmodule compile error under Redhat 5.2 Message-ID: <200009070126.SAA23186@delerium.i.sourceforge.net> Bug #113773, was updated on 2000-Sep-06 18:26 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Python 2.0b1 selectmodule compile error under Redhat 5.2 Details: Environment: Redhat 5.2 running the gcc compiler that comes with the distribution (gcc 2.7.2.3). 'make' failed when compiling selectmodule.c ('./configure' ran ok)because the following constants were undefined: POLLRDNORM, POLLRDBAND, POLLWRBAND The /usr/include/sys/poll.h file does not contain these constants. Under Redhat 6.2 the constants are defined in the /usr/include/bits/poll.h file (which is not present in the Redhat 5.2 distribution). I used the Redhat 6.2 poll.h file and the selectmodule compiled (under Redhat 5.2) but got the following error when running 'make test' (it looks like it might be related to the compile problem): test test_poll crashed -- select.error: (9, 'Bad file descriptor') 1 test failed: test_poll For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113773&group_id=5470 From noreply@sourceforge.net Thu Sep 7 05:08:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 21:08:25 -0700 Subject: [Python-bugs-list] [Bug #110629] Tkinter Image names may be reused (PR#28) Message-ID: <200009070408.VAA28707@delerium.i.sourceforge.net> Bug #110629, was updated on 2000-Jul-31 14:08 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Tkinter Image names may be reused (PR#28) Details: Jitterbug-Id: 28 Submitted-By: guido@python.org Date: Wed, 14 Jul 1999 14:00:14 -0400 (EDT) Version: 1.5.2b OS: Mark Lutz wrote me: (BTW, this will probably never surface again (I'm stressing the image object a bit), but I think there's a problem with using the id() of an image as its name. I ran into a situation where an image was drawn in the wrong place, because a newly allocated image object had the same id() as one very recently reclaimed. It's very obscure, will only happen if you have > 1 canvas in a process and happen to be creating and deleting images very quickly, and is too complex for me to describe further at the moment ;-). I worked around it by first generating image names from a simple counter, and then prebuilding all images up front.) ==================================================================== Audit trail: Wed Jul 14 14:00:28 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-05 14:00 By: loewis Comment: Fixed in patch 101424, http://sourceforge.net/patch/?func=detailpatch&patch_id=101424&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-06 21:08 By: fdrake Comment: Should be fixed by Martin's patch (#101424). I've accepted the patch and assigned it and this bug to Martin for checkin and closure. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110629&group_id=5470 From noreply@sourceforge.net Thu Sep 7 05:44:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 21:44:42 -0700 Subject: [Python-bugs-list] [Bug #113779] test_gc coredump on Alpha Message-ID: <200009070444.VAA23286@bush.i.sourceforge.net> Bug #113779, was updated on 2000-Sep-06 21:44 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: test_gc coredump on Alpha Details: Configured --with-cycle-gc --with-sigfpe gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable Segmentation fault (core dumped) gdb reports: Core was generated by `./python -tt Lib/test/regrtest.py -l -v test_gc'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libpthread.so.0...done. Reading symbols from /lib/libdl.so.2.1...done. Reading symbols from /lib/libutil.so.1.1...done. Reading symbols from /lib/libm.so.6.1...done. Reading symbols from /lib/libc.so.6.1...done. Reading symbols from /lib/ld-linux.so.2...done. #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 168 if (!PyList_Check(op)) { (gdb) where #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 #1 0x120085fac in handle_finalizers (finalizers=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:312 #2 0x1200862d8 in collect (young=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:438 #3 0x120086704 in gc_collect (self=0x100000000, args=0x12043d158) at ./gcmodule.c:588 #4 0x120018ef0 in call_builtin (func=0x1, arg=0x12039e258, kw=0x0) at ceval.c:2628 #5 0x120018d30 in PyEval_CallObjectWithKeywords (func=0x1204377c0, arg=0x12039e258, kw=0x0) at ceval.c:2596 #6 0x12001713c in eval_code2 (co=0x12043b890, globals=0x12043d158, locals=0x120370488, args=0xffffffffffffffff, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1929 #7 0x120016cc4 in eval_code2 (co=0x12043c400, globals=0x12043d158, locals=0x120370488, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, ... (gdb) print op $1 = (PyObject *) 0x100000000 (gdb) print newitem $2 = (PyObject *) 0x12043d158 For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113779&group_id=5470 From noreply@sourceforge.net Thu Sep 7 05:49:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 6 Sep 2000 21:49:18 -0700 Subject: [Python-bugs-list] [Bug #113779] test_gc coredump on Alpha Message-ID: <200009070449.VAA23465@bush.i.sourceforge.net> Bug #113779, was updated on 2000-Sep-06 21:44 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: test_gc coredump on Alpha Details: Configured --with-cycle-gc --with-sigfpe gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable Segmentation fault (core dumped) gdb reports: Core was generated by `./python -tt Lib/test/regrtest.py -l -v test_gc'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libpthread.so.0...done. Reading symbols from /lib/libdl.so.2.1...done. Reading symbols from /lib/libutil.so.1.1...done. Reading symbols from /lib/libm.so.6.1...done. Reading symbols from /lib/libc.so.6.1...done. Reading symbols from /lib/ld-linux.so.2...done. #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 168 if (!PyList_Check(op)) { (gdb) where #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 #1 0x120085fac in handle_finalizers (finalizers=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:312 #2 0x1200862d8 in collect (young=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:438 #3 0x120086704 in gc_collect (self=0x100000000, args=0x12043d158) at ./gcmodule.c:588 #4 0x120018ef0 in call_builtin (func=0x1, arg=0x12039e258, kw=0x0) at ceval.c:2628 #5 0x120018d30 in PyEval_CallObjectWithKeywords (func=0x1204377c0, arg=0x12039e258, kw=0x0) at ceval.c:2596 #6 0x12001713c in eval_code2 (co=0x12043b890, globals=0x12043d158, locals=0x120370488, args=0xffffffffffffffff, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1929 #7 0x120016cc4 in eval_code2 (co=0x12043c400, globals=0x12043d158, locals=0x120370488, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, ... (gdb) print op $1 = (PyObject *) 0x100000000 (gdb) print newitem $2 = (PyObject *) 0x12043d158 Follow-Ups: Date: 2000-Sep-06 21:49 By: none Comment: Note that without -l to regrtest it does NOT dump core, and completes correctly. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113779&group_id=5470 From noreply@sourceforge.net Thu Sep 7 09:51:17 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 01:51:17 -0700 Subject: [Python-bugs-list] [Bug #113785] SIGSEGV in PyDict_SetItem Message-ID: <200009070851.BAA05786@delerium.i.sourceforge.net> Bug #113785, was updated on 2000-Sep-07 01:51 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: 3rd Party Priority: 5 Summary: SIGSEGV in PyDict_SetItem Details: On a PC running FreeBSD 3.5 Python 1.5.2 (#1, Aug 23 2000, 10:14:09) [GCC 2.95 19990728 (release)] on freebsd3 I installed Python to run a filter that comes with inn 2.3.0 (usenet News) Some time the fiter written in Python hangs with the following (from gdb) Program received signal SIGSEGV, Segmentation fault. 0x810465b in PyDict_SetItem (op=0x83c6a80, key=0x83d4020, value=0x0) at dictobject.c:375 375 Py_INCREF(value); I suspect that the Python filter may be # # $Id: filter_innd.py,v 1.2 1999/09/23 14:24:23 kondou Exp $ # # This is a sample filter for the Python innd hook. # # For details, see the file README.python_hook that came with INN. # import re from string import * # This looks weird, but creating and interning these strings should # let us get faster access to header keys (which innd also interns) by # losing some strcmps under the covers. Approved = intern("Approved"); Control = intern("Control") Date = intern("Date"); Distribution = intern("Distribution") Expires = intern("Expires"); From = intern("From") Lines = intern("Lines"); Message_ID = intern("Message-ID") Newsgroups = intern("Newsgroups"); Path = intern("Path") Reply_To = intern("Reply-To"); Sender = intern("Sender") Subject = intern("Subject"); Supersedes = intern("Supersedes") Bytes = intern("Bytes"); Also_Control = intern("Also-Control") References = intern("References"); Xref = intern("Xref") Keywords = intern("Keywords"); X_Trace = intern("X-Trace") NNTP_Posting_Host = intern("NNTP-Posting-Host") Followup_To = intern("Followup-To"); Organization = intern("Organization") Content_Type = intern("Content-Type"); Content_Base = intern("Content-Base") Content_Disposition = intern("Content-Disposition") X_Newsreader = intern("X-Newsreader"); X_Mailer = intern("X-Mailer") X_Newsposter = intern("X-Newsposter") X_Cancelled_By = intern("X-Cancelled-By") X_Canceled_By = intern("X-Canceled-By"); Cancel_Key = intern("Cancel-Key") __BODY__ = intern("__BODY__"); __LINES__ = intern("__LINES__") class InndFilter: """Provide filtering callbacks to innd.""" def __init__(self): """This runs every time the filter is loaded or reloaded. This is a good place to initialize variables and precompile regular expressions, or maybe reload stats from disk. """ self.re_newrmgroup = re.compile('(?:new|rm)group\s') self.re_obsctl = re.compile('(?:sendsys|version|uuname)') # msgid pattern from a once-common spambot. self.re_none44 = re.compile('none\d+\.yet>') # There is a mad newgrouper who likes to meow. self.re_meow = re.compile("^Meow\!", re.M) # One of my silly addresses. self.re_fluffymorph = re.compile("andruQ@myremarQ.coM", re.I) def filter_before_reload(self): """Runs just before the filter gets reloaded. You can use this method to save state information to be restored by the __init__() method or down in the main module. """ syslog('notice', "filter_before_reload executing...") def filter_close(self): """Runs when innd exits. You can use this method to save state information to be restored by the __init__() method or down in the main module. """ syslog('notice', "filter_close running, bye!") def filter_messageid(self, msgid): """Filter articles just by their message IDs. This method interacts with the IHAVE and CHECK NNTP commands. If you return a non-empty string here, the offered article will be refused before you ever have to waste any bandwidth looking at it. This is not foolproof, so you should do your ID checks both here and in filter_art. (TAKETHIS does not offer the ID for examination, and a TAKETHIS isn't always preceded by a CHECK.) """ return "" # deactivate the samples. if self.re_none44.search(msgid): return "But I don't like spam!" if msgid[0:8] == '\r Path: news.nectec.or.th!news.loxinfo.co.th!news-out.cwix.com!newsfeed.\ cwix.com!newsfeeds.belnet.be!news.belnet.be!newsgate.cistron.nl!bullse\ ye.news.demon.net!demon!news.demon.co.uk!demon!inert.demon.co.uk!not-f\ or-mail\r From: inert@inert.demon.co.uk\r Newsgroups: rec.music.industrial\r Subject: *** CLUB NOIR *** 31/8/00\r Date: Wed, 30 Aug 2000 19:47:53 GMT\r Organization: inertia\r Message-ID: <967664873.12710.1.nnrp-02.9e98fa8b@news.demon.co.uk>\r NNTP-Posting-Host: inert.demon.co.uk\r X-NNTP-Posting-Host: inert.demon.co.uk:158.152.250.139\r X-Trace: news.demon.co.uk 967664873 nnrp-02:12710 NO-IDENT inert.demon\ .co.uk:158.152.250.139\r X-Complaints-To: abuse@demon.net\r X-Mailer: Mozilla 1.22 (Windows; I; 16bit)\r MIME-Version: 1.0\r Lines: 0\r Xref: news.nectec.or.th rec.music.industrial:137401\r \r .\r So, for an easy solution, I can disable Python filtering and then inn will be working fine. But even if the filter was not doing what it is supposed to do, Python should not SIGSEGV I presume. Beside Python installed without problem and make test result is: 42 tests OK. 19 tests skipped: test_al test_audioop test_bsddb test_cd test_cl test_crypt test_dbm test_dl test_gdbm test_gl test_gzip test_imageop test_imgfile test_nis test_rgbimg test_sunaudiodev test_thread test_timing test_zlib For more info: on@cs.ait.ac.th Thank you, Olivier For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113785&group_id=5470 From noreply@sourceforge.net Thu Sep 7 10:04:10 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 02:04:10 -0700 Subject: [Python-bugs-list] [Bug #113733] xml package not included in windows installer Message-ID: <200009070904.CAA06232@delerium.i.sourceforge.net> Bug #113733, was updated on 2000-Sep-06 11:22 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Closed Resolution: Fixed Bug Group: None Priority: 8 Summary: xml package not included in windows installer Details: Lib/xml/* are not installed when using BeOpen-Python-2.0b1.exe Follow-Ups: Date: 2000-Sep-07 02:04 By: tim_one Comment: Gross oversight! Fixed in CVS. Also built a new Windows installer, which the PythonLabs webmaster should get around to putting on the download page later today. Thanks for noticing . ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113733&group_id=5470 From noreply@sourceforge.net Thu Sep 7 10:56:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 02:56:18 -0700 Subject: [Python-bugs-list] [Bug #113786] copy.py doesn't support unicode strings Message-ID: <200009070956.CAA08042@delerium.i.sourceforge.net> Bug #113786, was updated on 2000-Sep-07 02:56 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: copy.py doesn't support unicode strings Details: >>> import copy >>> copy.copy(u"") Traceback (most recent call last): File "", line 1, in ? File "C:\PYTHON20\lib\copy.py", line 71, in copy raise error, \ copy.Error: un(shallow)copyable object of type >>> For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113786&group_id=5470 From noreply@sourceforge.net Thu Sep 7 11:29:46 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 03:29:46 -0700 Subject: [Python-bugs-list] [Bug #113788] NT 2.0b1 Doc/modindex.html is almost empty Message-ID: <200009071029.DAA09259@delerium.i.sourceforge.net> Bug #113788, was updated on 2000-Sep-07 03:29 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: NT 2.0b1 Doc/modindex.html is almost empty Details: Doc/modindex.html in the 2.0b1 release on NT is empty. There is only the header and footer but no module list. Can't login to sourceforge so: tebeka@lycosmail.com For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113788&group_id=5470 From noreply@sourceforge.net Thu Sep 7 12:00:13 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 04:00:13 -0700 Subject: [Python-bugs-list] [Bug #113786] copy.py doesn't support unicode strings Message-ID: <200009071100.EAA10285@delerium.i.sourceforge.net> Bug #113786, was updated on 2000-Sep-07 02:56 Here is a current snapshot of the bug. Project: Python Category: Library Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: copy.py doesn't support unicode strings Details: >>> import copy >>> copy.copy(u"") Traceback (most recent call last): File "", line 1, in ? File "C:\PYTHON20\lib\copy.py", line 71, in copy raise error, \ copy.Error: un(shallow)copyable object of type >>> Follow-Ups: Date: 2000-Sep-07 04:00 By: lemburg Comment: Fixed. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113786&group_id=5470 From noreply@sourceforge.net Thu Sep 7 14:09:47 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 06:09:47 -0700 Subject: [Python-bugs-list] [Bug #113793] getopt.c compile fails on Solaris 2.6/gcc 2.95.2 Message-ID: <200009071309.GAA15016@delerium.i.sourceforge.net> Bug #113793, was updated on 2000-Sep-07 06:09 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: getopt.c compile fails on Solaris 2.6/gcc 2.95.2 Details: I configured python with the following options: /ldatae/Misc/python/Python-1.6/configure --program-prefix=g --target=sparc-su n-solaris2.6 --prefix=/projects/gnu/sparc-sun-solaris2.6 --exec-prefix=/projects /gnu/sparc-sun-solaris2.6 --with-gnu-gettext --with-rx --with-curses=/projects/g nu/sparc-sun-solaris2.6/lib --with-shared --with-profile --enable-nls --x-includ es=/usr/openwin/include --x-libraries=/usr/openwin/lib --with-wctype-functions - -with-x-toolkit=motif --with-x --with-threads After compiling for a while, the build stops with this error: gcc -g -O2 -I/ldatae/Misc/python/Python-1.6/Python/../Include -I.. -DHAVE_CONFIG _H -c -o getopt.o getopt.c getopt.c: In function `getopt': getopt.c:51: argument `argv' doesn't match prototype /usr/include/stdio.h:329: prototype declaration getopt.c:51: argument `optstring' doesn't match prototype /usr/include/stdio.h:329: prototype declaration make[1]: *** [getopt.o] Error 1 make[1]: Leaving directory `/ldatae/Misc/python/Python-1.6/Python' make: *** [Python] Error I can supply more details if someone emails me at lvirden@cas.org . Thank you. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113793&group_id=5470 From noreply@sourceforge.net Thu Sep 7 14:49:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 06:49:22 -0700 Subject: [Python-bugs-list] [Bug #113795] IDLE 0.6 with Python 2.0b1 doesn't handle chinese characters Message-ID: <200009071349.GAA16429@delerium.i.sourceforge.net> Bug #113795, was updated on 2000-Sep-07 06:49 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 5 Summary: IDLE 0.6 with Python 2.0b1 doesn't handle chinese characters Details: I just switched from 1.5.2 to 2.0b1 on W2K/Simplified Chinese version. I used to be able to input chinese characters directly into IDLE, and access violations did happen quite often. Now with 2.0b1, I can't even input chinese characters into the IDLE window anymore:IDLE automatically changed chinese characters into illegible stuff; it's the same when I copy from a text editor and paste into the IDLE window. I guess it's related to the induction of unicode support in 2.0, but is there a workaround I should know, or I should switch back to 1.5.2, or it's a bug worth fixing? Thanks. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113795&group_id=5470 From noreply@sourceforge.net Thu Sep 7 15:33:57 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 07:33:57 -0700 Subject: [Python-bugs-list] [Bug #113797] Build problems on Reliant Unix Message-ID: <200009071433.HAA18059@delerium.i.sourceforge.net> Bug #113797, was updated on 2000-Sep-07 07:33 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Build problems on Reliant Unix Details: - the linker requires the options '-W1 -Blargedynsym', otherwise, Python's global functions and variables are not visible to external modules - when building --with-threads, the linker requires the option -Kpthread - mmapmodule.o requires a special library Python version: 2.0b1 compiler version:CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113797&group_id=5470 From noreply@sourceforge.net Thu Sep 7 15:59:49 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 07:59:49 -0700 Subject: [Python-bugs-list] [Bug #113727] Tkinter: _substitute call of getint(D) fails Message-ID: <200009071459.HAA11983@bush.i.sourceforge.net> Bug #113727, was updated on 2000-Sep-06 10:24 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Tkinter: _substitute call of getint(D) fails Details: Version: 2.0b1 OS: Solaris 2.6 Generic_105181-15 sun4m Tcl/Tk: 8.0 All callbacks (even in the Demo code) give this: Exception in Tkinter callback Traceback (most recent call last): File "/s/lib/python2.0/lib-tk/Tkinter.py", line 1283, in __call__ args = apply(self.subst, args) File "/s/lib/python2.0/lib-tk/Tkinter.py", line 1053, in _substitute e.delta = getint(D) ValueError: invalid literal for int(): D It seems the variable D has been assigned the string value 'D'. Follow-Ups: Date: 2000-Sep-07 07:59 By: effbot Comment: Tkinter currently requires a Tk with mousewheel support (8.2 or later). I just checked in a fix for this specific problems, but there may be other problems with pre-8.2 version of Tk. It's probably a good idea to get a newer Tcl/Tk kit. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113727&group_id=5470 From noreply@sourceforge.net Thu Sep 7 16:01:41 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 08:01:41 -0700 Subject: [Python-bugs-list] [Bug #113727] Tkinter: _substitute call of getint(D) fails Message-ID: <200009071501.IAA12023@bush.i.sourceforge.net> Bug #113727, was updated on 2000-Sep-06 10:24 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: Tkinter: _substitute call of getint(D) fails Details: Version: 2.0b1 OS: Solaris 2.6 Generic_105181-15 sun4m Tcl/Tk: 8.0 All callbacks (even in the Demo code) give this: Exception in Tkinter callback Traceback (most recent call last): File "/s/lib/python2.0/lib-tk/Tkinter.py", line 1283, in __call__ args = apply(self.subst, args) File "/s/lib/python2.0/lib-tk/Tkinter.py", line 1053, in _substitute e.delta = getint(D) ValueError: invalid literal for int(): D It seems the variable D has been assigned the string value 'D'. Follow-Ups: Date: 2000-Sep-07 07:59 By: effbot Comment: Tkinter currently requires a Tk with mousewheel support (8.2 or later). I just checked in a fix for this specific problems, but there may be other problems with pre-8.2 version of Tk. It's probably a good idea to get a newer Tcl/Tk kit. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113727&group_id=5470 From noreply@sourceforge.net Thu Sep 7 16:18:36 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 08:18:36 -0700 Subject: [Python-bugs-list] [Bug #113800] \optional{} produces incorrect HTML Message-ID: <200009071518.IAA12653@bush.i.sourceforge.net> Bug #113800, was updated on 2000-Sep-07 08:18 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: \optional{} produces incorrect HTML Details: This showed up in the Python 2.0 document: LaTeX2HTML produces bad HTML with improperly nested tags, including a trailing tag that leaves the rest of the document in italic on some browsers. Sample document: \documentclass{howto} \title{What's New in Python 2.0} \release{0.05} \author{A.M. Kuchling and Moshe Zadka} \authoraddress{\email{amk1@bigfoot.com}, \email{moshez@math.huji.ac.il} } \begin{document} \code{unicode(\var{string} \optional{, \var{encoding}} \optional{, \var{errors}} ) } creates a Unicode string from an 8-bit \end{document} The incorrect HTML output is: unicode(string [, encoding][, errors] ) creates ... For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113800&group_id=5470 From noreply@sourceforge.net Thu Sep 7 16:23:36 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 08:23:36 -0700 Subject: [Python-bugs-list] [Bug #113779] test_gc coredump on Alpha Message-ID: <200009071523.IAA12857@bush.i.sourceforge.net> Bug #113779, was updated on 2000-Sep-06 21:44 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: test_gc coredump on Alpha Details: Configured --with-cycle-gc --with-sigfpe gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable Segmentation fault (core dumped) gdb reports: Core was generated by `./python -tt Lib/test/regrtest.py -l -v test_gc'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libpthread.so.0...done. Reading symbols from /lib/libdl.so.2.1...done. Reading symbols from /lib/libutil.so.1.1...done. Reading symbols from /lib/libm.so.6.1...done. Reading symbols from /lib/libc.so.6.1...done. Reading symbols from /lib/ld-linux.so.2...done. #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 168 if (!PyList_Check(op)) { (gdb) where #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 #1 0x120085fac in handle_finalizers (finalizers=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:312 #2 0x1200862d8 in collect (young=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:438 #3 0x120086704 in gc_collect (self=0x100000000, args=0x12043d158) at ./gcmodule.c:588 #4 0x120018ef0 in call_builtin (func=0x1, arg=0x12039e258, kw=0x0) at ceval.c:2628 #5 0x120018d30 in PyEval_CallObjectWithKeywords (func=0x1204377c0, arg=0x12039e258, kw=0x0) at ceval.c:2596 #6 0x12001713c in eval_code2 (co=0x12043b890, globals=0x12043d158, locals=0x120370488, args=0xffffffffffffffff, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1929 #7 0x120016cc4 in eval_code2 (co=0x12043c400, globals=0x12043d158, locals=0x120370488, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, ... (gdb) print op $1 = (PyObject *) 0x100000000 (gdb) print newitem $2 = (PyObject *) 0x12043d158 Follow-Ups: Date: 2000-Sep-06 21:49 By: none Comment: Note that without -l to regrtest it does NOT dump core, and completes correctly. ------------------------------------------------------- Date: 2000-Sep-07 08:23 By: bwarsaw Comment: It could just be a bug in the debug printing of collected objects. The -l switch for the regrtest simply adds a call to gc.set_debug(gc.DEBUG_LEAK) before the rest of the tests get going. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113779&group_id=5470 From noreply@sourceforge.net Thu Sep 7 16:33:05 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 08:33:05 -0700 Subject: [Python-bugs-list] [Bug #113803] [2.0b1 NT4.0] printing non asci char causes idle to abort Message-ID: <200009071533.IAA20342@delerium.i.sourceforge.net> Bug #113803, was updated on 2000-Sep-07 08:33 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 5 Summary: [2.0b1 NT4.0] printing non asci char causes idle to abort Details: try: alef = u'\u05d0' print alef.encode('utf-8') any enter after the last statement will cause idle to abort on 'bare' python this does not cause any problem. [tebeka@lycosmail.com] For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113803&group_id=5470 From noreply@sourceforge.net Thu Sep 7 17:11:07 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 09:11:07 -0700 Subject: [Python-bugs-list] [Bug #113807] PyArg_ParseTupleAndKeywords and Unicode...? Message-ID: <200009071611.JAA14648@bush.i.sourceforge.net> Bug #113807, was updated on 2000-Sep-07 09:11 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: PyArg_ParseTupleAndKeywords and Unicode...? Details: I have a small extension that works OK with PyArg_ParseTuple and a es# format; using the same format with PyArg_ParseTupleAndKeywords doesn't seem to work -- after importing that module, Python thinks 2 args are needed, and one of them is an 'impossible format character'. Experimentally switching to s#, it works _except_ when I use the name=value format AND I pass a u'something' as the value, then it crashes the interpreter. So I'm going back to PyArg_ParseTuple, but, the AndKeywords form _is_ also supposed to work with Unicode, right...? The platform I'm using is NT 4, SP6, with MS VC++ 6 SP4 -- just in case it's platform specific... For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113807&group_id=5470 From noreply@sourceforge.net Thu Sep 7 17:39:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 09:39:21 -0700 Subject: [Python-bugs-list] [Bug #113810] Global Module Index points to non-existant "About" page Message-ID: <200009071639.JAA22728@delerium.i.sourceforge.net> Bug #113810, was updated on 2000-Sep-07 09:39 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 6 Summary: Global Module Index points to non-existant "About" page Details: Reported by Justin D. Pettit by email: - The "About this document..." hyperlink in the Global Module Index is broken. There is no "Doc/about.html". For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113810&group_id=5470 From noreply@sourceforge.net Thu Sep 7 17:45:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 09:45:38 -0700 Subject: [Python-bugs-list] [Bug #113811] Python 2.0 beta 1 -- urllib.urlopen() fails Message-ID: <200009071645.JAA15967@bush.i.sourceforge.net> Bug #113811, was updated on 2000-Sep-07 09:45 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python 2.0 beta 1 -- urllib.urlopen() fails Details: In performing a urllib.urlopen(url) with "url" containing a valid URL, I got the following error message: Traceback (most recent call last): File "IGNRatings.py", line 249, in ? main(sys.argv[1:]) File "IGNRatings.py", line 132, in main inStream = urllib.urlopen(url) File "E:\Python20\lib\urllib.py", line 61, in urlopen return _urlopener.open(url) File "E:\Python20\lib\urllib.py", line 163, in open return getattr(self, name)(url) File "E:\Python20\lib\urllib.py", line 259, in open_http h = httplib.HTTP(host) File "E:\Python20\lib\httplib.py", line 626, in __init__ self._conn = self._connection_class(host, port) File "E:\Python20\lib\httplib.py", line 325, in __init__ self._set_hostport(host, port) File "E:\Python20\lib\httplib.py", line 332, in _set_hostport port = int(host[i+1:]) ValueError: invalid literal for int(): I looked into this a tiny bit and found that HTTPConnection.__init__() is called with host="http:" -- probably not the right thing. Python 1.6 works correctly. Thanks, Bob Alexander bobalex@home.com For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113811&group_id=5470 From nobody@sourceforge.net Thu Sep 7 18:10:57 2000 From: nobody@sourceforge.net (Nobody) Date: Thu, 7 Sep 2000 10:10:57 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009071710.KAA23979@delerium.i.sourceforge.net> From: noreply@sourceforge.net Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From nobody@sourceforge.net Thu Sep 7 18:14:31 2000 From: nobody@sourceforge.net (Nobody) Date: Thu, 7 Sep 2000 10:14:31 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009071714.KAA24114@delerium.i.sourceforge.net> From: noreply@sourceforge.net Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Thu Sep 7 18:30:41 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 10:30:41 -0700 Subject: [Python-bugs-list] [Bug #110606] ntpath.expandvars doesn't handle case properly (PR#162) Message-ID: <200009071730.KAA24671@delerium.i.sourceforge.net> Bug #110606, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: ntpath.expandvars doesn't handle case properly (PR#162) Details: Jitterbug-Id: 162 Submitted-By: dwr2@ix.netcom.com Date: Sun, 19 Dec 1999 08:38:21 -0500 (EST) Version: 1.5 OS: Windows 95 When accessing os.environ under Windows 95/NT/etc., lower-case environment variable names are automatically converted to upper-case before use. However, ntpath.expandvars does not accept lower-case variable names. This is inconsistent. This also happens in dospath.expandvars and may happen in os2path.expandvars. Here is a Python session demonstrating the problem: >>> import os >>> os.name 'nt' >>> os.environ['abc']='xyz' >>> os.environ['abc'] 'xyz' >>> os.path.expandvars('$abc') '' >>> os.path.expandvars('$ABC') 'xyz' >>> Note that you can access os.environ using a lower-case name, but you must use upper-case for os.path.expandvars (-->ntpath.expandvars). This can easily be fixed by changing "os.environ.has_key(var)" to "os.environ.has_key(string.upper(key))" in two places in each of ntpath.expandvars, dospath.expandvars, and possibly os2path.expandvars. Another solution would be to add the following function to os._Environ, in the "if name in ('os2', 'nt', 'dos')" block: def has_key(self, key): return UserDict.UserDict.has_key(self, string.upper(key)) The latter solution seems better to me, but I don't know the possible negative ramifications of making such a change to a class used in so many places. (On the other had, it is consistent with the definitions of _Environ.__getitem__ and _Environ.__setitem__.) Further argument that lower-case should be accepted in ntpath.expandvars: A DOS window opened in Windows 95 expands a lower-case variable name, despite the actual variable name being stored in upper-case: C:\WINDOWS>set abc=xyz C:\WINDOWS>set [...(most of variable list elided)...] ABC=xyz C:\WINDOWS>echo %abc% xyz ==================================================================== Audit trail: Mon Jan 17 09:05:54 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 10:30 By: fdrake Comment: Fixed at some point in the past. Tests OK using 2.0b1 on Win2K. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110606&group_id=5470 From noreply@sourceforge.net Thu Sep 7 18:34:06 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 10:34:06 -0700 Subject: [Python-bugs-list] [Bug #110690] Bug in os.environ for Windows (PR#50) Message-ID: <200009071734.KAA24834@delerium.i.sourceforge.net> Bug #110690, was updated on 2000-Jul-31 14:15 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Closed Resolution: Fixed Bug Group: Platform-specific Priority: 5 Summary: Bug in os.environ for Windows (PR#50) Details: Jitterbug-Id: 50 Submitted-By: bobalex@uppercase.xerox.com Date: Wed, 11 Aug 1999 19:19:16 -0400 (EDT) Version: 1.5.2 OS: WinNT os.environ for Windows appears to be a map-type object that converts its keys to upper case. Retrieval using a mixed case key works in some cases, but some overloaded "operators" don't seem to do the right thing unless I pass an all-upper-case key. E.g.: >>> os.environ["x"] = "y" # Stores pair {"X": "y"} >>> os.environ["x"] # Works, indicates an effort is made 'y' # to retrieve mixed case keys >>> os.environ.get("x", "NOT FOUND") # Doesn't see the key "x" 'NOT FOUND' >>> os.environ.get("X", "NOT FOUND") # Works with all-upper-case key 'y' >>> del os.environ["x"] # Doesn't see the key "x" Traceback (innermost last): File "", line 1, in ? File "E:\Program Files\Python\Lib\UserDict.py", line 16, in __delitem__ def __delitem__(self, key): del self.data[key] KeyError: x >>> del os.environ["X"] # Works with all-upper-case key ==================================================================== Audit trail: Mon Aug 30 12:33:44 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 10:34 By: fdrake Comment: Fixed at some point in the past. Tested OK using 2.0b1 on Win2K. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110690&group_id=5470 From noreply@sourceforge.net Thu Sep 7 18:41:55 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 10:41:55 -0700 Subject: [Python-bugs-list] [Bug #110840] -with-cxx option to configure script (PR#24) Message-ID: <200009071741.KAA25089@delerium.i.sourceforge.net> Bug #110840, was updated on 2000-Aug-01 14:15 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: Wont Fix Bug Group: Feature Request Priority: 5 Summary: -with-cxx option to configure script (PR#24) Details: Jitterbug-Id: 24 Submitted-By: guido@python.org Date: Wed, 14 Jul 1999 11:16:51 -0400 (EDT) Version: 1.5.2 OS: Unix Geoff Furnish has a patch for the configure script which might be reasonable. See http://www.python.org/sigs/c++-sig/sig_code.html ==================================================================== Audit trail: Wed Jul 14 11:18:10 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-31 10:33 By: fdrake Comment: Patch is old; needs to be updated relative to the current state of build control. May need to be modified to suit recent versions of CXX (not sure on that one). I'll post a message to the C++ SIG to see what the current state of this work is. ------------------------------------------------------- Date: 2000-Sep-07 10:41 By: fdrake Comment: Email discussion on the C++ SIG indicates that this is no longer an issue, so I'm closing this with a "Won't Fix" resolution. See http://www.python.org/pipermail/c++-sig/2000-September/000443.html ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110840&group_id=5470 From noreply@sourceforge.net Thu Sep 7 21:17:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 13:17:21 -0700 Subject: [Python-bugs-list] [Bug #113800] optional{} produces incorrect HTML Message-ID: <200009072017.NAA31451@delerium.i.sourceforge.net> Bug #113800, was updated on 2000-Sep-07 08:18 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: optional{} produces incorrect HTML Details: This showed up in the Python 2.0 document: LaTeX2HTML produces bad HTML with improperly nested tags, including a trailing tag that leaves the rest of the document in italic on some browsers. Sample document: \documentclass{howto} \title{What's New in Python 2.0} \release{0.05} \author{A.M. Kuchling and Moshe Zadka} \authoraddress{\email{amk1@bigfoot.com}, \email{moshez@math.huji.ac.il} } \begin{document} \code{unicode(\var{string} \optional{, \var{encoding}} \optional{, \var{errors}} ) } creates a Unicode string from an 8-bit \end{document} The incorrect HTML output is: unicode(string [, encoding][, errors] ) creates ... For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113800&group_id=5470 From noreply@sourceforge.net Thu Sep 7 21:46:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 13:46:45 -0700 Subject: [Python-bugs-list] [Bug #113828] getpythonregpath with null data in registry key Message-ID: <200009072046.NAA32679@delerium.i.sourceforge.net> Bug #113828, was updated on 2000-Sep-07 13:46 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: getpythonregpath with null data in registry key Details: File pc/getpathp.c Function:getpythonregpath ppPaths[index] can be null but this fragment is not null protected: len = _tcslen(ppPaths[index]); _tcsncpy(szCur, ppPaths[index], len); Grzegorz Makarewicz For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113828&group_id=5470 From noreply@sourceforge.net Thu Sep 7 22:05:08 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 14:05:08 -0700 Subject: [Python-bugs-list] [Bug #110712] MALLOC_ZERO_RETURNS_NULL problem Message-ID: <200009072105.OAA26651@bush.i.sourceforge.net> Bug #110712, was updated on 2000-Jul-31 14:30 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: MALLOC_ZERO_RETURNS_NULL problem Details: Jitterbug-Id: 86 Submitted-By: Sean Dunn Date: Fri, 24 Sep 1999 14:44:22 -0500 Version: None OS: None The use of #define MALLOC_ZERO_RETURNS_NULL 1 at the top of mymalloc.h worked fine... By curiousity.. I just tried compiling the following: /*testmalloc.c*/ #include main() { int *fp; int *sp; fp = (int*)malloc(0); sp = (int*)malloc(sizeof(int)); printf("fp: %x\nsp: %x\n", fp, sp); } /**/ First, I just compiled normally: > cc -o testmalloc testmalloc.c > ./testmalloc fp: 10015010 sp: 10015020 Then I compiled with the -lmalloc flag (libmalloc is the SGI high performance memory library - which seems to be the default used after running the configure script) > cc -o testmalloc testmalloc.c > ./testmalloc fp: 0 sp: 10015048 So... It looks like without libmalloc, we're actually getting memory when we "shouldn't" - but from reading your source code it seems like that's the way it is usually made to work (weird). When compiling with libmalloc, the returned 0 is triggering the MemError flag. At ceval.c:2467, should it even get to this point if the passed in kwargs == {}? It does a PyDict_Size of it, which returns 0 (which seems correct) but kw isn't NULL. It seems like at this point that it should be.. Sean Guido van Rossum wrote: > > The builtin function apply() seems to barf on empty dictionaries > > when passed as the keyword list. See the following output: > > > >>> apply(func, (1,), {}) > > Traceback (innermost last): > > File "", line 1, in ? > > MemoryError > > >>> > > > The variable 'kwargs' in this case is {}. The actual exception is thrown > > at line 2467 of Python/ceval.c: > > > > if (kw != NULL) { > > int pos, i; > > nk = PyDict_Size(kw); > > > > /* 2467 */ k = PyMem_NEW(PyObject *, 2*nk); > > /* nk, the PyDict_Size (the size of ma_used) is 0 */ > > > > if (k == NULL) { > > PyErr_NoMemory(); > > Py_DECREF(arg); > > return NULL; > > } > > pos = i = 0; > > while (PyDict_Next(kw, &pos, &k[i], &k[i+1])) > > i += 2; > > nk = i/2; > > /* XXX This is broken if the caller deletes dict items! */ > > } > > Thanks very much for your detailed analysis! The cause is probably > that somehow the configure script doesn't compute the correct value > for MALLOC_ZERO_RETURNS_NULL. I don't know why; the test seems simple > enough. (Maybe you inherited a config.cache file from a previous Irix > version?) To work around this in the build, if "make clobber" and > rerunning configure don't do the trick, add > > #define MALLOC_ZERO_RETURNS_NULL 1 > > to the top of Include/mymalloc.h. > > Please let me know if rerunning configure makes the bug go away; this > will decides the classification of your bug report. > > --Guido van Rossum (home page: http://www.python.org/~guido/) ==================================================================== Audit trail: Fri Sep 24 16:15:04 1999 guido changed notes Fri Sep 24 16:15:04 1999 guido moved from incoming to platformbug For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110712&group_id=5470 From noreply@sourceforge.net Thu Sep 7 22:21:07 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 14:21:07 -0700 Subject: [Python-bugs-list] [Bug #110712] MALLOC_ZERO_RETURNS_NULL problem Message-ID: <200009072121.OAA27204@bush.i.sourceforge.net> Bug #110712, was updated on 2000-Jul-31 14:30 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: MALLOC_ZERO_RETURNS_NULL problem Details: Jitterbug-Id: 86 Submitted-By: Sean Dunn Date: Fri, 24 Sep 1999 14:44:22 -0500 Version: None OS: None The use of #define MALLOC_ZERO_RETURNS_NULL 1 at the top of mymalloc.h worked fine... By curiousity.. I just tried compiling the following: /*testmalloc.c*/ #include main() { int *fp; int *sp; fp = (int*)malloc(0); sp = (int*)malloc(sizeof(int)); printf("fp: %x\nsp: %x\n", fp, sp); } /**/ First, I just compiled normally: > cc -o testmalloc testmalloc.c > ./testmalloc fp: 10015010 sp: 10015020 Then I compiled with the -lmalloc flag (libmalloc is the SGI high performance memory library - which seems to be the default used after running the configure script) > cc -o testmalloc testmalloc.c > ./testmalloc fp: 0 sp: 10015048 So... It looks like without libmalloc, we're actually getting memory when we "shouldn't" - but from reading your source code it seems like that's the way it is usually made to work (weird). When compiling with libmalloc, the returned 0 is triggering the MemError flag. At ceval.c:2467, should it even get to this point if the passed in kwargs == {}? It does a PyDict_Size of it, which returns 0 (which seems correct) but kw isn't NULL. It seems like at this point that it should be.. Sean Guido van Rossum wrote: > > The builtin function apply() seems to barf on empty dictionaries > > when passed as the keyword list. See the following output: > > > >>> apply(func, (1,), {}) > > Traceback (innermost last): > > File "", line 1, in ? > > MemoryError > > >>> > > > The variable 'kwargs' in this case is {}. The actual exception is thrown > > at line 2467 of Python/ceval.c: > > > > if (kw != NULL) { > > int pos, i; > > nk = PyDict_Size(kw); > > > > /* 2467 */ k = PyMem_NEW(PyObject *, 2*nk); > > /* nk, the PyDict_Size (the size of ma_used) is 0 */ > > > > if (k == NULL) { > > PyErr_NoMemory(); > > Py_DECREF(arg); > > return NULL; > > } > > pos = i = 0; > > while (PyDict_Next(kw, &pos, &k[i], &k[i+1])) > > i += 2; > > nk = i/2; > > /* XXX This is broken if the caller deletes dict items! */ > > } > > Thanks very much for your detailed analysis! The cause is probably > that somehow the configure script doesn't compute the correct value > for MALLOC_ZERO_RETURNS_NULL. I don't know why; the test seems simple > enough. (Maybe you inherited a config.cache file from a previous Irix > version?) To work around this in the build, if "make clobber" and > rerunning configure don't do the trick, add > > #define MALLOC_ZERO_RETURNS_NULL 1 > > to the top of Include/mymalloc.h. > > Please let me know if rerunning configure makes the bug go away; this > will decides the classification of your bug report. > > --Guido van Rossum (home page: http://www.python.org/~guido/) ==================================================================== Audit trail: Fri Sep 24 16:15:04 1999 guido changed notes Fri Sep 24 16:15:04 1999 guido moved from incoming to platformbug For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110712&group_id=5470 From noreply@sourceforge.net Thu Sep 7 22:28:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 14:28:38 -0700 Subject: [Python-bugs-list] [Bug #113829] hasattr() doesn't accept Unicode strings Message-ID: <200009072128.OAA27404@bush.i.sourceforge.net> Bug #113829, was updated on 2000-Sep-07 14:28 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: hasattr() doesn't accept Unicode strings Details: hasattr(), getattr(), and doubtless other built-in functions don't accept Unicode strings at all: >>> import sys >>> hasattr(sys, u'abc') Traceback (most recent call last): File "", line 1, in ? TypeError: hasattr, argument 2: expected string, unicode found Questions raised by GvR: There are probably a bunch of things that need to be changed before this works though; getattr() c.s. require a string, then call PyObject_GetAttr() which also checks for a string unless the object supports tp_getattro -- but that's only true for classes and instances. Also, should we convert the string to 8-bit, or should we allow Unicode attribute names? It seems there's no easy fix -- better address this after 2.0 is released. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113829&group_id=5470 From noreply@sourceforge.net Thu Sep 7 22:28:44 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 14:28:44 -0700 Subject: [Python-bugs-list] [Bug #110712] MALLOC_ZERO_RETURNS_NULL problem Message-ID: <200009072128.OAA27408@bush.i.sourceforge.net> Bug #110712, was updated on 2000-Jul-31 14:30 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: MALLOC_ZERO_RETURNS_NULL problem Details: Jitterbug-Id: 86 Submitted-By: Sean Dunn Date: Fri, 24 Sep 1999 14:44:22 -0500 Version: None OS: None The use of #define MALLOC_ZERO_RETURNS_NULL 1 at the top of mymalloc.h worked fine... By curiousity.. I just tried compiling the following: /*testmalloc.c*/ #include main() { int *fp; int *sp; fp = (int*)malloc(0); sp = (int*)malloc(sizeof(int)); printf("fp: %x\nsp: %x\n", fp, sp); } /**/ First, I just compiled normally: > cc -o testmalloc testmalloc.c > ./testmalloc fp: 10015010 sp: 10015020 Then I compiled with the -lmalloc flag (libmalloc is the SGI high performance memory library - which seems to be the default used after running the configure script) > cc -o testmalloc testmalloc.c > ./testmalloc fp: 0 sp: 10015048 So... It looks like without libmalloc, we're actually getting memory when we "shouldn't" - but from reading your source code it seems like that's the way it is usually made to work (weird). When compiling with libmalloc, the returned 0 is triggering the MemError flag. At ceval.c:2467, should it even get to this point if the passed in kwargs == {}? It does a PyDict_Size of it, which returns 0 (which seems correct) but kw isn't NULL. It seems like at this point that it should be.. Sean Guido van Rossum wrote: > > The builtin function apply() seems to barf on empty dictionaries > > when passed as the keyword list. See the following output: > > > >>> apply(func, (1,), {}) > > Traceback (innermost last): > > File "", line 1, in ? > > MemoryError > > >>> > > > The variable 'kwargs' in this case is {}. The actual exception is thrown > > at line 2467 of Python/ceval.c: > > > > if (kw != NULL) { > > int pos, i; > > nk = PyDict_Size(kw); > > > > /* 2467 */ k = PyMem_NEW(PyObject *, 2*nk); > > /* nk, the PyDict_Size (the size of ma_used) is 0 */ > > > > if (k == NULL) { > > PyErr_NoMemory(); > > Py_DECREF(arg); > > return NULL; > > } > > pos = i = 0; > > while (PyDict_Next(kw, &pos, &k[i], &k[i+1])) > > i += 2; > > nk = i/2; > > /* XXX This is broken if the caller deletes dict items! */ > > } > > Thanks very much for your detailed analysis! The cause is probably > that somehow the configure script doesn't compute the correct value > for MALLOC_ZERO_RETURNS_NULL. I don't know why; the test seems simple > enough. (Maybe you inherited a config.cache file from a previous Irix > version?) To work around this in the build, if "make clobber" and > rerunning configure don't do the trick, add > > #define MALLOC_ZERO_RETURNS_NULL 1 > > to the top of Include/mymalloc.h. > > Please let me know if rerunning configure makes the bug go away; this > will decides the classification of your bug report. > > --Guido van Rossum (home page: http://www.python.org/~guido/) ==================================================================== Audit trail: Fri Sep 24 16:15:04 1999 guido changed notes Fri Sep 24 16:15:04 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Sep-07 14:28 By: jhylton Comment: Please do triage ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110712&group_id=5470 From noreply@sourceforge.net Thu Sep 7 22:41:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 14:41:42 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009072141.OAA27984@bush.i.sourceforge.net> Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 7 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- Date: 2000-Sep-07 14:41 By: jhylton Comment: If you set the GC threshold to 0, import gc gc.set_threshold(0) Do you get the same problem? Not that I doubt there is some sort of gc problem, but I wonder if there is something going wrong in the accounting or in the collection. How hard would it be for someone to try to reproduce this bug? Obviously, it would be helpful to get a smaller test case that has the same behavior as your large program and also tickles the bug. Do you have any C extension modules in your application or is it pure Python? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:17 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:17 -0700 Subject: [Python-bugs-list] [Bug #110687] mailbox module's maildir class broken? (PR#414) Message-ID: <200009072201.PAA28721@bush.i.sourceforge.net> Bug #110687, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 3 Summary: mailbox module's maildir class broken? (PR#414) Details: Jitterbug-Id: 414 Submitted-By: arb@anand.org Date: Wed, 26 Jul 2000 12:23:32 -0400 (EDT) Version: 1.5.2 OS: i386-Redhat-linux 6.2 I'm using the "mailbox" module that comes with python. I'm trying to use the maildir class in there, but I think it's not following the maildir protocol properly. The maildir protocol specifies that in a Maildir, a message file can have any name that is unique, as long as it doesn't begin with a period. However, the maildir class looks for valid message filenames, by checking to see if the filename has more than 1 period in it, ie. consists of 3 or more sections separated by periods. Typically, this is the sort of name one finds in a Maildir, because the Maildir protocol page describes one simple way of creating a unique filename, ie. by using the timestamp, pid of the writer, and the hostname. However, when I insert messages into a maildir which don't follow that system of generating unique filenames, the maildir class of the module doesn't see them. Additioanlly, it _does_ see message files which begin with a period, eg. .12345678.1234.hostname. This is also a violation of the maildir protocol. I believe that a maildir reader should simply look at all files in a maildir, no matter what the name, except for those that begin with a period. ==================================================================== Audit trail: Wed Jul 26 18:15:33 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:02 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] mailbox module's maildir class broken? (PR#414) Date: Wed, 26 Jul 2000 17:31:29 -0500 > I'm using the "mailbox" module that comes with python. I'm trying to > use the maildir class in there, but I think it's not following the > maildir protocol properly. The maildir protocol specifies that in a > Maildir, a message file can have any name that is unique, as long as > it doesn't begin with a period. However, the maildir class looks > for valid message filenames, by checking to see if the filename has > more than 1 period in it, ie. consists of 3 or more sections > separated by periods. Typically, this is the sort of name one finds > in a Maildir, because the Maildir protocol page describes one simple > way of creating a unique filename, ie. by using the timestamp, pid > of the writer, and the hostname. However, when I insert messages > into a maildir which don't follow that system of generating unique > filenames, the maildir class of the module doesn't see > them. Additioanlly, it _does_ see message files which begin with a > period, eg. .12345678.1234.hostname. This is also a violation of the > maildir protocol. I believe that a maildir reader should simply look > at all files in a maildir, no matter what the name, except for those > that begin with a period. You're probably right. I've never used that code, and according to the logs it was contributed to Mike Meyer (no email known). Perhaps you would be willing to create a patch? See http://www.python.org/patches/ for submission guidelines. --Guido van Rossum (home page: http://www.pythonlabs.com/~guido/) ------------------------------------------------------- Date: 2000-Aug-05 11:45 By: twouters Comment: This bug is still present. Fred is/was working on the 'mailbox' module, but I do not know whether he'll fix this, too. If not, I'll do it, it's not that big a chance. ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110687&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:01 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:01 -0700 Subject: [Python-bugs-list] [Bug #110614] illegal argument type for built-in operation (PR#204) Message-ID: <200009072201.PAA28698@bush.i.sourceforge.net> Bug #110614, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Feature Request Priority: 3 Summary: illegal argument type for built-in operation (PR#204) Details: Jitterbug-Id: 204 Submitted-By: guido@python.org Date: Tue, 15 Feb 2000 14:24:27 -0500 (EST) Version: 1.5.2 OS: Solaris 2.7 When PyArg_ParseTuple() needs an int (for an 'i' format char) but finds something else, it says TypeError: illegal argument type for built-in operation instead of the nice friendly error it usually gives. ==================================================================== Audit trail: Wed Feb 23 21:31:39 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:06 By: none Comment: From: "Fred L. Drake, Jr." Subject: Re: [Python-bugs-list] illegal argument type for built-in operation (PR#204) Date: Tue, 15 Feb 2000 14:33:49 -0500 (EST) guido@python.org writes: > When PyArg_ParseTuple() needs an int (for an 'i' format char) but finds > something else, it says > > TypeError: illegal argument type for built-in operation This is also the case for the 'l' format, which is what range() uses. -Fred -- Fred L. Drake, Jr. Corporation for National Research Initiatives ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110614&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:02 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:02 -0700 Subject: [Python-bugs-list] [Bug #110635] test_signal hangs when running as part of testall (PR#288) Message-ID: <200009072201.PAA28702@bush.i.sourceforge.net> Bug #110635, was updated on 2000-Jul-31 14:09 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 4 Summary: test_signal hangs when running as part of testall (PR#288) Details: Jitterbug-Id: 288 Submitted-By: kessler@ccdc.cam.ac.uk Date: Tue, 11 Apr 2000 06:58:39 -0400 (EDT) Version: 1.6a2 OS: Irix6.3 Under Irix6.3 (python compiled in -n32 mode with MipsPro 7.2.1), test_signal works fine (?) if you run it on its own: >>> import test.test_signal starting pause() loop... call pause()... + kill -5 7487 + sleep 2 handlerA (5, ) pause() returned call pause()... + kill -2 7487 + sleep 2 handlerB (2, ) HandlerBCalled exception caught call pause()... + kill -3 7487 KeyboardInterrupt (assume the alarm() went off) however, as part of the test suite, this test hangs: >>> import test.testall [...] test_signal test_signal + sleep 2 starting pause() loop... call pause()... + kill -5 7454 + sleep 2 + kill -2 7454 + sleep 2 + kill -3 7454 ==================================================================== Audit trail: Tue Jul 11 08:29:16 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:09 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] test_signal hangs when running as part of testall (PR#288) Date: Tue, 11 Apr 2000 11:27:20 -0400 > Under Irix6.3 (python compiled in -n32 mode with MipsPro 7.2.1), test_signal > works fine (?) if you run it on its own: > > >>> import test.test_signal > starting pause() loop... > call pause()... > + kill -5 7487 > + sleep 2 > handlerA (5, ) > pause() returned > call pause()... > + kill -2 7487 > + sleep 2 > handlerB (2, ) > HandlerBCalled exception caught > call pause()... > + kill -3 7487 > KeyboardInterrupt (assume the alarm() went off) > > however, as part of the test suite, this test hangs: > > >>> import test.testall > [...] > test_signal > test_signal > + sleep 2 > starting pause() loop... > call pause()... > + kill -5 7454 > + sleep 2 > + kill -2 7454 > + sleep 2 > + kill -3 7454 Yes, I've seen this too. Unfortunately, I don't have a clue, and I don't have the time to delve into it... I bet there's a compile time #define that might do it. It may have something to do with threads... --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-02 04:05 By: twouters Comment: Unsure if this is still an actual problem, but I've seen similar behaviour of test_signal on BSDI 4.0 and 4.0.1 systems, when Python was compiled with threads. The problem appeared to be the BSDI thread library, which had (among other things) problems with pause() in threaded code. I haven't tried to enable threading on 4.0.x for a while, since new systems are 4.1, and 4.1 works properly with threads. Does disabling threads fix the problem ? (Or perhaps *en*abling them, if they weren't ?) ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110635&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:03 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:03 -0700 Subject: [Python-bugs-list] [Bug #110659] IDLE-0.5 copy command (PR#354) Message-ID: <200009072201.PAA28706@bush.i.sourceforge.net> Bug #110659, was updated on 2000-Jul-31 14:11 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 3 Summary: IDLE-0.5 copy command (PR#354) Details: Jitterbug-Id: 354 Submitted-By: gpk@bell-labs.com Date: Tue, 13 Jun 2000 10:05:35 -0400 (EDT) Version: 1.6a2+ OS: Solaris sparc 2.6 Alt-w is advertised to copy the selected text. It doesn't. It pops up the 'window' menu. However, even if you are in the 'edit' menu, alt-w apparently does nothing. I can select text, do alt-E alt-W, move the pointer, then do ctrl-Y, and nothing pops up. By the way, 'ctl-U ctl-U ctl-S' is an absurdly long sequence for something as common as searching for text. ==================================================================== Audit trail: Tue Jul 11 08:26:00 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110659&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:13 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:13 -0700 Subject: [Python-bugs-list] [Bug #110678] rfc822.Message getaddr method bug (PR#39) Message-ID: <200009072201.PAA28717@bush.i.sourceforge.net> Bug #110678, was updated on 2000-Jul-31 14:13 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: rfc822.Message getaddr method bug (PR#39) Details: Jitterbug-Id: 39 Submitted-By: piers@cs.su.oz.au Date: Fri, 30 Jul 1999 01:34:24 -0400 (EDT) Version: 1.5.2 OS: Solaris The following mail header, when parsed by rfc822, returns an incorrect address from the method getaddr: From nobody@bounces.amazon.com Thu Jul 29 18:09:07 1999 Date: Thu, 29 Jul 1999 00:05:26 -0700 MIME-Version: 1.0 Content-Type: multipart/alternative; boundary=z Subject: A Message from Amazon.com Delivers From: Amazon.com >>> import rfc822 >>> fd=open('mail/amazon.com') >>> M=rfc822.Message(fd, 1) >>> M.getaddr('From') ('', 'Amazon.com') Python version is: Python 1.5.2 (#10, May 11 1999, 15:32:03) [GCC 2.8.1] on sunos5 ==================================================================== Audit trail: Fri Jul 30 08:25:26 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: Sjoerd Mullender Subject: Re: [Python-bugs-list] rfc822.Message getaddr method bug (PR#39) Date: Mon, 02 Aug 1999 14:09:40 +0200 On Fri, Jul 30 1999 piers@cs.su.oz.au wrote: > Full_Name: Piers Lauder > Version: 1.5.2 > OS: Solaris > Submission from: metra.ucc.usyd.edu.au (129.78.64.5) > > > The following mail header, when parsed by rfc822, returns an incorrect > address from the method getaddr: > > From nobody@bounces.amazon.com Thu Jul 29 18:09:07 1999 > Date: Thu, 29 Jul 1999 00:05:26 -0700 > MIME-Version: 1.0 > Content-Type: multipart/alternative; boundary=z > Subject: A Message from Amazon.com Delivers > From: Amazon.com > > >>> import rfc822 > >>> fd=open('mail/amazon.com') > >>> M=rfc822.Message(fd, 1) > >>> M.getaddr('From') > ('', 'Amazon.com') > > Python version is: > Python 1.5.2 (#10, May 11 1999, 15:32:03) [GCC 2.8.1] on sunos5 It's an incorrect mail header. The period in Amazon.com is not allowed there but the name has to be quoted with double quotes. But I guess rfc822.py could (and should) be lenient and let you get away with this. -- Sjoerd Mullender ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110678&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:19 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:19 -0700 Subject: [Python-bugs-list] [Bug #110696] strptime error (PR#149) Message-ID: <200009072201.PAA28725@bush.i.sourceforge.net> Bug #110696, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 3 Summary: strptime error (PR#149) Details: Jitterbug-Id: 149 Submitted-By: python.org@netfinances.com Date: Sat, 4 Dec 1999 22:03:43 -0500 (EST) Version: 1.5.2 OS: RedHat Linux 6.0 strptime throws a ValueError exception when I feed it the hour 02, and a minute value equal to 40 or greater the following session illustrates: 1017:26:fred@firestorm:~/public_html >python Python 1.5.2 (#2, Dec 3 1999, 23:56:19) [GCC egcs-2.91.66 19990314/Linux (egcs- on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> from time import strptime >>> t = strptime('0230','%H%M') >>> t (1900, 1, 0, 23, 0, 0, 6, 1, 0) >>> t = strptime('0240','%H%M') Traceback (innermost last): File "", line 1, in ? ValueError: format mismatch >>> t = strptime('0140','%H%M') >>> t = strptime('0340','%H%M') >>> t = strptime('0345','%H%M') >>> t = strptime('0339','%H%M') >>> t = strptime('0240','%H%M') Traceback (innermost last): File "", line 1, in ? ValueError: format mismatch >>> t = strptime('0245','%H%M') Traceback (innermost last): File "", line 1, in ? ValueError: format mismatch >>> t = strptime('0250','%H%M') Traceback (innermost last): File "", line 1, in ? ValueError: format mismatch >>> t = strptime('0259','%H%M') Traceback (innermost last): File "", line 1, in ? ValueError: format mismatch >>> ==================================================================== Audit trail: Tue Dec 14 17:22:29 1999 guido sent reply 1 Tue Dec 14 17:22:48 1999 guido resent 149.reply.1 Tue Dec 14 17:24:30 1999 guido sent reply 2 Tue Dec 14 17:24:51 1999 guido changed notes Tue Dec 14 17:24:51 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: strptime error (PR#149) Date: Tue Dec 14 17:22:29 1999 ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: strptime error (PR#149) Date: Tue Dec 14 17:24:30 1999 > strptime throws a ValueError exception when I feed it the hour 02, and a minute > value > equal to 40 or greater the following session illustrates: Very strange. I can't reproduce this; I presume your platform's strptime() has a problem. --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: Must be the strptime() implementation in his C library. ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110696&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:20 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:20 -0700 Subject: [Python-bugs-list] [Bug #110705] combination of socket.gethostbyname and os.system hangs program (PR#401) Message-ID: <200009072201.PAA28729@bush.i.sourceforge.net> Bug #110705, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: combination of socket.gethostbyname and os.system hangs program (PR#401) Details: Jitterbug-Id: 401 Submitted-By: andyg@one.net.au Date: Mon, 17 Jul 2000 04:26:12 -0400 (EDT) Version: Python 1.5.2 (#3, Jun 29 2000, 15:52:04) [GCC 2.8.1] on sunos5 OS: SunOS psol002 5.6 Generic_105181-21 sun4u sparc SUNW,Ultra-Enterprise A combination of socket.gethostbyname and os.system appears to hang python intermittently. We run Dec and Sun systems - it only appears to be a problem with sun systems. The following is the simplest way I can reproduce the problem: test.py: -------------------------------- #!/usr/local/bin/python import os import socket print socket.gethostbyname( "a hostname (but not localhost)" ) os.system("echo fred") hang.sh: -------------------------------- #!/bin/ksh while true ; do ./test.py done output: --------------------------------- 10.666.666.666 fred 10.666.666.666 fred ... eventually ... 10.666.666.666 If "a hostname" is "localhost" it doesn't hang. For anything else which it can successfully resolve, it seems to hang. Thanks ! Andy. ==================================================================== Audit trail: Mon Jul 24 18:39:07 2000 jeremy changed notes Mon Jul 24 18:39:07 2000 jeremy moved from incoming to platformbug Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110705&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:22 -0700 Subject: [Python-bugs-list] [Bug #110835] Find out size of primitive object (PR#214) Message-ID: <200009072201.PAA28737@bush.i.sourceforge.net> Bug #110835, was updated on 2000-Aug-01 14:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Find out size of primitive object (PR#214) Details: Jitterbug-Id: 214 Submitted-By: loewis@informatik.hu-berlin.de Date: Fri, 25 Feb 2000 14:28:33 -0500 (EST) Version: 1.5.2 OS: Solaris This is a feature request made on python-help. If you want to estimate how much memory your application uses, you currently have to count the bytes manually. If there was a builtin function (say, sys.sizeof), counting would be much easier. It would be documented as sizeof(object) -> integer Return the number of bytes that an object uses internally. This only counts the number of bytes used by the object itself, not those of any of its attributes. Ie. sys.sizeof(0) would give 12 on my system, the size of a dictionary would count the dictentries, but the size of an instanceobject would not count the the size of the __dict__ attribute. ==================================================================== Audit trail: Tue Mar 07 14:42:18 2000 guido changed notes Tue Mar 07 14:42:18 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:14 By: none Comment: Interesting idea. Is this what we need? ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110835&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:24 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:24 -0700 Subject: [Python-bugs-list] [Bug #110848] Fwd: Debian Bug#40891: urllib.urlopen/urlretrieve doesn't support passive FTP (PR#58) Message-ID: <200009072201.PAA28741@bush.i.sourceforge.net> Bug #110848, was updated on 2000-Aug-01 14:16 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Fwd: Debian Bug#40891: urllib.urlopen/urlretrieve doesn't support passive FTP (PR#58) Details: Jitterbug-Id: 58 Submitted-By: flight@debian.org Date: Fri, 20 Aug 1999 13:26:17 -0400 (EDT) Version: 1.5.2 OS: Debian potato [Forwarded from the Debian bug tracking system] Sender: Chris Lawrence Package: python-base Version: 1.5.2-4 Severity: normal File: /usr/lib/python1.5/urllib.py urllib doesn't support passive FTP, even though the underlying ftplib module does. I dunno what the right approach is (perhaps a urllib module global variable). I know some tools (I'm aware of at least ncftp and wget) autodetect whether PASV is supported by FTP servers; perhaps that intelligence could be added to ftplib. (Also: the FTP class's set_pasv() method isn't documented in my version of python-docs; I haven't checked the new 1.5.2 docs yet however.) At the moment, I'm using this ugly hack to get around it: # Really ugly hack; don't try this at home: def ftpwrapper_init(self): import ftplib self.busy = 0 self.ftp = ftplib.FTP() self.ftp.set_pasv(1) self.ftp.connect(self.host, self.port) self.ftp.login(self.user, self.passwd) for dir in self.dirs: self.ftp.cwd(dir) urllib.ftpwrapper.init = ftpwrapper_init # End really ugly hack ==================================================================== Audit trail: Mon Aug 30 12:35:03 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:16 By: none Comment: From: "Fred L. Drake, Jr." Subject: Re: [Python-bugs-list] Fwd: Debian Bug#40891: urllib.urlopen/urlretrieve doesn't support passive FTP (PR#58) Date: Mon, 23 Aug 1999 10:03:44 -0400 (EDT) flight@debian.org writes: > Sender: Chris Lawrence > Package: python-base > Version: 1.5.2-4 > Severity: normal > File: /usr/lib/python1.5/urllib.py ... > (Also: the FTP class's set_pasv() method isn't documented in my > version of python-docs; I haven't checked the new 1.5.2 docs yet set_pasv() is documented in the documentation release 1.5.2p1. -Fred -- Fred L. Drake, Jr. Corporation for National Research Initiatives ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110848&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:21 -0700 Subject: [Python-bugs-list] [Bug #110821] Python 1.5.2 bug, tried to post but got error (PR#121) Message-ID: <200009072201.PAA28733@bush.i.sourceforge.net> Bug #110821, was updated on 2000-Aug-01 14:10 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Python 1.5.2 bug, tried to post but got error (PR#121) Details: Jitterbug-Id: 121 Submitted-By: "Brad Clements" Date: Wed, 3 Nov 1999 15:53:01 -0500 Version: None OS: None The system encountered a fatal error After command: Received: The last error code was: Connection refused Web interface using {HYPERLINK "http://samba.anu.edu.au/jitterbug/"}Jitterbug  {HYPERLINK "../python-bugs/"}Public interface  {HYPERLINK "../python-bugs.private"}Private interface (requires password)  {HYPERLINK "http://www.python.org/"}Python home page ----- Here's what I said for Python 1.5.2 on Win32 #0 PyRun_SimpleFile, PyRun_File and other functions that take a FILE * are not usable on WIN32 from non-VC applications because python15.dll is statically linked to the MS runtime DLL. Embedding applications that try to use these functions are passing in FILE * structures that do not match MS's runtime format. For example, I'm using Python in a Borland C++ Builder application. Although I can open a FILE *, when passed to python15.dll the FILE * is not usable. The addition of two helper functions would solve this problem: FILE * PyRun_OpenFile(char *file, char *mode) { return fopen(file,mode) } int PyRun_CloseFile(FILE *ptr) { return fclose(ptr) } This way embedding apps could get python15.dll to open the file and it would work. A temporary workaround is to always load the .pyc file in PyRun_SimpleFile.. Brad Clements, bkc@murkworks.com (315)268-1000 http://www.murkworks.com (315)268-9812 Fax netmeeting: ils://ils.murkworks.com ICQ: 14856937 ==================================================================== Audit trail: Fri Nov 05 10:31:10 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:10 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Python 1.5.2 bug, tried to post but got error (PR#121) Date: Wed, 03 Nov 1999 20:08:11 -0500 > I tried to post a bug, but got this error: > > The system encountered a fatal error We were being slammed by a defective spider (or, if you're more paranoid, by a hacker) so we temporarily turned off the webserver. It should be back on now. > Here's what I said for Python 1.5.2 on Win32 #0 > > PyRun_SimpleFile, PyRun_File and other functions that take a FILE * are not > usable on WIN32 from non-VC applications because python15.dll is statically > linked to the MS runtime DLL. Embedding applications that try to use these > functions are passing in FILE * structures that do not match MS's runtime > format. > > For example, I'm using Python in a Borland C++ Builder application. Although I > can open a FILE *, when passed to python15.dll the FILE * is not usable. > > The addition of two helper functions would solve this problem: > > FILE * PyRun_OpenFile(char *file, char *mode) > { > return fopen(file,mode) > } > > int PyRun_CloseFile(FILE *ptr) > { > return fclose(ptr) > } > > This way embedding apps could get python15.dll to open the file and it would > work. > > A temporary workaround is to always load the .pyc file in PyRun_SimpleFile.. This is an elegant solution. I think I'll add it. Could you mail me your suggestion again with the legal boilerplate included? See http://www.python.org/1.5/bugrelease.html for the text and explanation. Our lawyers require that I request this silliness... --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:10 By: none Comment: From: "Brad Clements" Subject: Re: [Python-bugs-list] Python 1.5.2 bug, tried to post but got error (PR#121) Date: Wed, 3 Nov 1999 20:22:21 -0500 Here it is again. Also, I believe this will resolve FAQ entry 8.10 > 8.10. Can't get Py_RunSimpleFile() to work. > This is very sensitive to the compiler vendor, version and (perhaps) even > options. If the FILE* structure in your embedding program isn't the same as > is assumed by the Python interpreter it won't work. The Python 1.5.* DLLs > (python15.dll) are all compiled with MS VC++ 5.0 and with > multithreading-DLL options (/MD, I think). > > If you can't change compilers or flags, try using Py_RunSimpleString(). A > trick to get it to run an arbitrary file is to construct a call to > execfile() with the name of your file as argument. > > > > --------------------------------------------------------------------------- > ----- > Here's what I said for Python 1.5.2 on Win32 #0 > > PyRun_SimpleFile, PyRun_File and other functions that take a FILE * are not > usable on WIN32 from non-VC applications because python15.dll is statically > linked to the MS runtime DLL. Embedding applications that try to use these > functions are passing in FILE * structures that do not match MS's runtime > format. > > For example, I'm using Python in a Borland C++ Builder application. Although I > can open a FILE *, when passed to python15.dll the FILE * is not usable. > > The addition of two helper functions would solve this problem: > > FILE * PyRun_OpenFile(char *file, char *mode) > { > return fopen(file,mode) > } > > int PyRun_CloseFile(FILE *ptr) > { > return fclose(ptr) > } > > This way embedding apps could get python15.dll to open the file and it would > work. > > A temporary workaround is to always load the .pyc file in PyRun_SimpleFile.. I confirm that, to the best of my knowledge and belief, this contribution is free of any claims of third parties under copyright, patent or other rights or interests ("claims"). To the extent that I have any such claims, I hereby grant to CNRI a nonexclusive, irrevocable, royalty-free, worldwide license to reproduce, distribute, perform and/or display publicly, prepare derivative versions, and otherwise use this contribution as part of the Python software and its related documentation, or any derivative versions thereof, at no cost to CNRI or its licensed users, and to authorize others to do so. I acknowledge that CNRI may, at its sole discretion, decide whether or not to incorporate this contribution in the Python software and its related documentation. I further grant CNRI permission to use my name and other identifying information provided to CNRI by me for use in connection with the Python software and its related documentation. Brad Clements, bkc@murkworks.com (315)268-1000 http://www.murkworks.com (315)268-9812 Fax netmeeting: ils://ils.murkworks.com ICQ: 14856937 ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110821&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:25 -0700 Subject: [Python-bugs-list] [Bug #110856] Page fault in module KERNEL32.DLL (PR#186) Message-ID: <200009072201.PAA28745@bush.i.sourceforge.net> Bug #110856, was updated on 2000-Aug-01 14:37 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Irreproducible Priority: 5 Summary: Page fault in module KERNEL32.DLL (PR#186) Details: Jitterbug-Id: 186 Submitted-By: hauser@eos.ncsu.edu Date: Fri, 21 Jan 2000 08:36:26 -0500 (EST) Version: 1.5.2 OS: windows 95 I am new to Python and am having a problem on Windows 95 any time I use the Tkinter module. An example follows: >>>from Tkinter import * >>>t = Button(None, {'text': 'Test', Pack: {}}) >>>q = Button(None, {'text': 'Quit', 'command': t.quit, Pack: {}}) >>>t.mainloop() The window comes up and seems to work. Clicking on the 'Quit' button returns to the Python screen. Then: >>>Ctrl-D ->message comes up that illegal operation has been perforned: Page fault in KERNEL32.DLL at 016f:6ff79ff3, computer hangs and has to be hard booted. Everything else seems to work, the idle program comes up and everything is OK until I try to exit and the same problem happens. If I don't use Tkinter I don't have the problem and any time with Tkinter I make a window and exit from the window, and try to exit Python the same error appears. I have found several references to Page faults in KERNEL32 in the Bug reports but have not seen any solutions. Any help would be appreciated. Thanks. ==================================================================== Audit trail: Mon Jan 24 14:47:52 2000 guido sent reply 1 Mon Jan 24 14:48:23 2000 guido changed notes Mon Jan 24 14:48:23 2000 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:38 By: none Comment: From: Guido van Rossum Subject: Re: Page fault in module KERNEL32.DLL (PR#186) Date: Mon Jan 24 14:47:52 2000 John, I am afraid I can't reproduce your problem, and I've never heard of this type of behavior before. My best guess is that some other Windows app that you have installed is causing this behavior; this is basically impossible to debug. I suggest that you post your problem description to comp.lang.python; maybe someone there has a clever idea. If you find a solution, please reply to this message, leaving the subject intact. In the mean time, I;ll keep your bug report in the "irreproducuble" category. Thanks, --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:38 By: none Comment: From: "Dr. John R. Hauser" Subject: Re: Page fault in module KERNEL32.DLL (PR#186) Date: Thu, 27 Jan 2000 15:34:33 -0500 Guido, Thanks very much for your help. With your suggestion I have traced the problem to a file CSINJECT.exe which was being loaded on startup. This is a file associated with the Norton Clean Sweep utility. After removing it from my startup file, everything works fine. I guess it was loaded when I installed Norton Utilities and I have no idea what it does. Thanks again for you thoughts. John Hauser At 02:47 PM 1/24/2000 -0500, you wrote: >John, > >I am afraid I can't reproduce your problem, and I've never heard >of this type of behavior before. > >My best guess is that some other Windows app that you have installed >is causing this behavior; this is basically impossible to debug. > >I suggest that you post your problem description to comp.lang.python; >maybe someone there has a clever idea. If you find a solution, please >reply to this message, leaving the subject intact. > >In the mean time, I;ll keep your bug report in the "irreproducuble" >category. > >Thanks, > >--Guido van Rossum > > > ------------------------------------------------------- Date: 2000-Aug-01 14:38 By: none Comment: Could be caused by another Windows app? ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110856&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:29 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:29 -0700 Subject: [Python-bugs-list] [Bug #111710] socket.send() can do partial writes on some systems. Message-ID: <200009072201.PAA28749@bush.i.sourceforge.net> Bug #111710, was updated on 2000-Aug-11 13:25 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: socket.send() can do partial writes on some systems. Details: 0811 15:57 chronis:~% uname -a FreeBSD chronis.pobox.com 4.0-STABLE FreeBSD 4.0-STABLE #0: Tue Mar 21 01:05:14 EST 2000 root@chronis.pobox.com:/usr/src/sys/compile/MYBSD i386 0811 15:57 chronis:~% 0811 15:57 chronis:~% cat scratch/sendtstsrv.py import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind("chronis.pobox.com", 8010) while 1: s.listen(1) conn, addr = s.accept() print "connected from", addr while 1: data = conn.recv(1024) if not data: break print "done" conn.close() 0811 15:58 chronis:~% python scratch/sendtstsrv.py & [2] 76562 0811 15:58 chronis:~% cat scratch/sendtst.py #!/usr/bin/env python s = "0" * 10000000 import socket sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) sock.connect("chronis.pobox.com", 8010) sent = sock.send(s) if sent != len(s): print "sent %d/%d chars" % (sent, len(s)) else: print "sent all chars" 0811 15:58 chronis:~% python !$ python scratch/sendtst.py connected from ('208.210.124.49', 1258) sent 17520/10000000 chars done 0811 15:58 chronis:~% NOTE: there is nothing in any man page for send() under linux (RH 6.1), Solaris (SunOS 5.5.1), OSF1 V4.0, or FreeBSD{3,4} that states that send() must not perform a partial write, though of those systems, it only seems to reproducibly do partial writes under FreeBSD4.0 Stable. Additionally, W.Richard Stevens' Unix Network Programming Vol 1, second edition states that """ A read or write on a stream socket might input or output fewer bytes than requested, but this is not an error condition.""" (page 77). Later, Stevens says of send() and recv() "These two functions are similar to the standard read and write functions, but one additional argument is required". (page 354). scott Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=111710&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:30 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:30 -0700 Subject: [Python-bugs-list] [Bug #113576] Py_PROTO missing from the include files Message-ID: <200009072201.PAA28752@bush.i.sourceforge.net> Bug #113576, was updated on 2000-Sep-04 14:14 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Py_PROTO missing from the include files Details: Some old extensions still use the Py_PROTO() macro which was present in Python 1.5.2 and ealier. After the ANSIfication of the sources, this macro seems to have been removed from the Python include files. This breaks all extensions which used the macro. Adding a #define Py_PROTO(args) args to pyport.h should remedy this. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113576&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:54 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:54 -0700 Subject: [Python-bugs-list] [Bug #113793] getopt.c compile fails on Solaris 2.6/gcc 2.95.2 Message-ID: <200009072201.PAA28768@bush.i.sourceforge.net> Bug #113793, was updated on 2000-Sep-07 06:09 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: getopt.c compile fails on Solaris 2.6/gcc 2.95.2 Details: I configured python with the following options: /ldatae/Misc/python/Python-1.6/configure --program-prefix=g --target=sparc-su n-solaris2.6 --prefix=/projects/gnu/sparc-sun-solaris2.6 --exec-prefix=/projects /gnu/sparc-sun-solaris2.6 --with-gnu-gettext --with-rx --with-curses=/projects/g nu/sparc-sun-solaris2.6/lib --with-shared --with-profile --enable-nls --x-includ es=/usr/openwin/include --x-libraries=/usr/openwin/lib --with-wctype-functions - -with-x-toolkit=motif --with-x --with-threads After compiling for a while, the build stops with this error: gcc -g -O2 -I/ldatae/Misc/python/Python-1.6/Python/../Include -I.. -DHAVE_CONFIG _H -c -o getopt.o getopt.c getopt.c: In function `getopt': getopt.c:51: argument `argv' doesn't match prototype /usr/include/stdio.h:329: prototype declaration getopt.c:51: argument `optstring' doesn't match prototype /usr/include/stdio.h:329: prototype declaration make[1]: *** [getopt.o] Error 1 make[1]: Leaving directory `/ldatae/Misc/python/Python-1.6/Python' make: *** [Python] Error I can supply more details if someone emails me at lvirden@cas.org . Thank you. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113793&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:01:31 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:01:31 -0700 Subject: [Python-bugs-list] [Bug #113760] 2.0b1: _xmlplus does not allow site xml to override Lib/xml Message-ID: <200009072201.PAA28755@bush.i.sourceforge.net> Bug #113760, was updated on 2000-Sep-06 16:53 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: 2.0b1: _xmlplus does not allow site xml to override Lib/xml Details: _xmlplus is represented as a means of overriding the new standard lib xml package with a user-supplied xml package, such as the one from XML-SIG ("There's a special feature whereby a user-installed package named _xmlplus overrides the standard xmlpackage; this is intended to give the XML SIG a hook to distribute backwards-compatible updates to the standard xml package." - quote from News on BeOpen site). While this has _some_ effect, it does not work as described. Under 2.0b1, code using the xml package from the XML-SIG (installed in site-packages) will only work if the new standard xml package in lib is renamed or removed. If used with the new standard xml package, imports such as from xml.sax import saxexts fail. If the _xmlplus hook is used (by renaming site-packages/xml to site-packages/_xmlplus or using a symlink), the imports succeed, but later the code fails with a message stating that no parsers can be found. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113760&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:02:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:02:21 -0700 Subject: [Python-bugs-list] [Bug #110635] test_signal hangs when running as part of testall (PR#288) Message-ID: <200009072202.PAA28782@bush.i.sourceforge.net> Bug #110635, was updated on 2000-Jul-31 14:09 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 4 Summary: test_signal hangs when running as part of testall (PR#288) Details: Jitterbug-Id: 288 Submitted-By: kessler@ccdc.cam.ac.uk Date: Tue, 11 Apr 2000 06:58:39 -0400 (EDT) Version: 1.6a2 OS: Irix6.3 Under Irix6.3 (python compiled in -n32 mode with MipsPro 7.2.1), test_signal works fine (?) if you run it on its own: >>> import test.test_signal starting pause() loop... call pause()... + kill -5 7487 + sleep 2 handlerA (5, ) pause() returned call pause()... + kill -2 7487 + sleep 2 handlerB (2, ) HandlerBCalled exception caught call pause()... + kill -3 7487 KeyboardInterrupt (assume the alarm() went off) however, as part of the test suite, this test hangs: >>> import test.testall [...] test_signal test_signal + sleep 2 starting pause() loop... call pause()... + kill -5 7454 + sleep 2 + kill -2 7454 + sleep 2 + kill -3 7454 ==================================================================== Audit trail: Tue Jul 11 08:29:16 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:09 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] test_signal hangs when running as part of testall (PR#288) Date: Tue, 11 Apr 2000 11:27:20 -0400 > Under Irix6.3 (python compiled in -n32 mode with MipsPro 7.2.1), test_signal > works fine (?) if you run it on its own: > > >>> import test.test_signal > starting pause() loop... > call pause()... > + kill -5 7487 > + sleep 2 > handlerA (5, ) > pause() returned > call pause()... > + kill -2 7487 > + sleep 2 > handlerB (2, ) > HandlerBCalled exception caught > call pause()... > + kill -3 7487 > KeyboardInterrupt (assume the alarm() went off) > > however, as part of the test suite, this test hangs: > > >>> import test.testall > [...] > test_signal > test_signal > + sleep 2 > starting pause() loop... > call pause()... > + kill -5 7454 > + sleep 2 > + kill -2 7454 > + sleep 2 > + kill -3 7454 Yes, I've seen this too. Unfortunately, I don't have a clue, and I don't have the time to delve into it... I bet there's a compile time #define that might do it. It may have something to do with threads... --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-02 04:05 By: twouters Comment: Unsure if this is still an actual problem, but I've seen similar behaviour of test_signal on BSDI 4.0 and 4.0.1 systems, when Python was compiled with threads. The problem appeared to be the BSDI thread library, which had (among other things) problems with pause() in threaded code. I haven't tried to enable threading on 4.0.x for a while, since new systems are 4.1, and 4.1 works properly with threads. Does disabling threads fix the problem ? (Or perhaps *en*abling them, if they weren't ?) ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 15:02 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110635&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:02:16 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:02:16 -0700 Subject: [Python-bugs-list] [Bug #113811] Python 2.0 beta 1 -- urllib.urlopen() fails Message-ID: <200009072202.PAA28773@bush.i.sourceforge.net> Bug #113811, was updated on 2000-Sep-07 09:45 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python 2.0 beta 1 -- urllib.urlopen() fails Details: In performing a urllib.urlopen(url) with "url" containing a valid URL, I got the following error message: Traceback (most recent call last): File "IGNRatings.py", line 249, in ? main(sys.argv[1:]) File "IGNRatings.py", line 132, in main inStream = urllib.urlopen(url) File "E:\Python20\lib\urllib.py", line 61, in urlopen return _urlopener.open(url) File "E:\Python20\lib\urllib.py", line 163, in open return getattr(self, name)(url) File "E:\Python20\lib\urllib.py", line 259, in open_http h = httplib.HTTP(host) File "E:\Python20\lib\httplib.py", line 626, in __init__ self._conn = self._connection_class(host, port) File "E:\Python20\lib\httplib.py", line 325, in __init__ self._set_hostport(host, port) File "E:\Python20\lib\httplib.py", line 332, in _set_hostport port = int(host[i+1:]) ValueError: invalid literal for int(): I looked into this a tiny bit and found that HTTPConnection.__init__() is called with host="http:" -- probably not the right thing. Python 1.6 works correctly. Thanks, Bob Alexander bobalex@home.com Follow-Ups: Date: 2000-Sep-07 15:02 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113811&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:02:20 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:02:20 -0700 Subject: [Python-bugs-list] [Bug #110614] illegal argument type for built-in operation (PR#204) Message-ID: <200009072202.PAA28777@bush.i.sourceforge.net> Bug #110614, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Feature Request Priority: 3 Summary: illegal argument type for built-in operation (PR#204) Details: Jitterbug-Id: 204 Submitted-By: guido@python.org Date: Tue, 15 Feb 2000 14:24:27 -0500 (EST) Version: 1.5.2 OS: Solaris 2.7 When PyArg_ParseTuple() needs an int (for an 'i' format char) but finds something else, it says TypeError: illegal argument type for built-in operation instead of the nice friendly error it usually gives. ==================================================================== Audit trail: Wed Feb 23 21:31:39 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:06 By: none Comment: From: "Fred L. Drake, Jr." Subject: Re: [Python-bugs-list] illegal argument type for built-in operation (PR#204) Date: Tue, 15 Feb 2000 14:33:49 -0500 (EST) guido@python.org writes: > When PyArg_ParseTuple() needs an int (for an 'i' format char) but finds > something else, it says > > TypeError: illegal argument type for built-in operation This is also the case for the 'l' format, which is what range() uses. -Fred -- Fred L. Drake, Jr. Corporation for National Research Initiatives ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 15:02 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110614&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:02:57 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:02:57 -0700 Subject: [Python-bugs-list] [Bug #110610] .pyc writing/reading race condition (PR#189) Message-ID: <200009072202.PAA28789@bush.i.sourceforge.net> Bug #110610, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: Later Bug Group: None Priority: 1 Summary: .pyc writing/reading race condition (PR#189) Details: Jitterbug-Id: 189 Submitted-By: gudo@python.org Date: Mon, 24 Jan 2000 14:27:24 -0500 (EST) Version: 1.5.2 OS: any Patrick Miller reminded me that there's still a race condition in the reading and writing of .pyc files. If two processes decide to write the .pyc, and a third reads the header after the first complete but before the second starts, but reads the rest of the file after the second starts but before it is done, the third can read corrupt data (and won't fall back to reading the .py source). Solution: when writing the .pyc file, (1) unlink the file before writing, (2) use open() with the Unix flags that fail creation if the file exists (and then just treat it like any open failure when writing the .pyc file). ==================================================================== Audit trail: Mon Jan 24 14:28:42 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-10 11:52 By: gvanrossum Comment: No time to fix this now... ------------------------------------------------------- Date: 2000-Sep-07 15:02 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110610&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:02:57 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:02:57 -0700 Subject: [Python-bugs-list] [Bug #110627] Floating point numbers (PR#277) Message-ID: <200009072202.PAA28793@bush.i.sourceforge.net> Bug #110627, was updated on 2000-Jul-31 14:08 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: 3rd Party Priority: 3 Summary: Floating point numbers (PR#277) Details: Jitterbug-Id: 277 Submitted-By: gellsmore@yahoo.com Date: Wed, 5 Apr 2000 17:00:09 -0400 (EDT) Version: Python CE 1.0b1 OS: Windows CE H/PC 3.01 pro Floating point answer objects not returned correctly >>>3.1 g All floats return g but will work in scenario below where floats form part of the expression but not the answer object >>>int(3.1/2) 1 this works. ==================================================================== Audit trail: Mon May 22 17:49:40 2000 guido changed notes Mon May 22 17:49:40 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-03 05:50 By: twouters Comment: Hm, Python CE 1.0b1 ? I'm not sure if that's an old version of Python ported to the CE, or a recent version of Python ported to the CE with a new version number. In any case, I dont believe the CE port is being maintained by the core Python group, so I don't think we can do much about it. ------------------------------------------------------- Date: 2000-Sep-07 15:02 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110627&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:12 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:12 -0700 Subject: [Python-bugs-list] [Bug #110686] cStringIO lacks the readlines method (PR#409) Message-ID: <200009072203.PAA28813@bush.i.sourceforge.net> Bug #110686, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Feature Request Priority: 4 Summary: cStringIO lacks the readlines method (PR#409) Details: Jitterbug-Id: 409 Submitted-By: pierre@saiph.com Date: Sun, 23 Jul 2000 13:41:59 -0400 (EDT) Version: 1.5.2 OS: sparc solaris cStringIO is supposed to be the C version of For some reason, it does not provide the readlines method. The obvious turnaround is to use StringIO instead: no hurry to fix, at least on my side. ==================================================================== Audit trail: Mon Jul 24 18:41:02 2000 jeremy moved from incoming to open Follow-Ups: Date: 2000-Sep-05 13:11 By: loewis Comment: Fixed in Patch #101423, http://sourceforge.net/patch/?func=detailpatch&patch_id=101423&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110686&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:16 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:16 -0700 Subject: [Python-bugs-list] [Bug #110695] complexobject.c optimization error on SGI (PR#144) Message-ID: <200009072203.PAA28818@bush.i.sourceforge.net> Bug #110695, was updated on 2000-Jul-31 14:28 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: complexobject.c optimization error on SGI (PR#144) Details: Jitterbug-Id: 144 Submitted-By: robert.harrison@pnl.gov Date: Fri, 3 Dec 1999 01:35:19 -0500 (EST) Version: 1.5.2 OS: IRIX64 6.5 On an SGI (IRIX64 6.5, MIPSpro Compilers: Version 7.3.1m, -n32) Python-1.5.2/Objects/complexobject.c does not compile correctly with optimization. The problem shows up as a bus error in PyComplex_ImagAsDouble when importing Numeric Python. All works fine when this one file is compiled with -O0 (-O1 and higher fail). I assume that this is probably just a compiler error. ==================================================================== Audit trail: Fri Dec 03 10:39:28 1999 guido changed notes Fri Dec 03 10:39:28 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110695&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:17 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:17 -0700 Subject: [Python-bugs-list] [Bug #110704] IDLE (PR#400) Message-ID: <200009072203.PAA28822@bush.i.sourceforge.net> Bug #110704, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: Platform-specific Priority: 3 Summary: IDLE (PR#400) Details: Jitterbug-Id: 400 Submitted-By: crislipm@earthlink.net Date: Sun, 16 Jul 2000 20:40:24 -0400 (EDT) Version: 1.5.2 OS: Linuxppc, Suse dist more for curiosity/FYI Using 1.5.2 (the version that came with the suse linuxppc) and IDLE 0.5 on an ibook (version 2). IDLE causes the keyboard to stop working (I am not certain which, if any action, causes this, but it is reproducable) and the problem continues when I warm boot back to the MAC OS. Have to do a cold boot to get keyboard to respond again. ==================================================================== Audit trail: Mon Jul 24 18:30:07 2000 jeremy changed notes Mon Jul 24 18:30:07 2000 jeremy moved from incoming to platformbug Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110704&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:21 -0700 Subject: [Python-bugs-list] [Bug #110844] Annoyance in ftpmirror.py script (PR#48) Message-ID: <200009072203.PAA28834@bush.i.sourceforge.net> Bug #110844, was updated on 2000-Aug-01 14:15 Here is a current snapshot of the bug. Project: Python Category: demos and tools Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Annoyance in ftpmirror.py script (PR#48) Details: Jitterbug-Id: 48 Submitted-By: mok@imsb.au.dk Date: Mon, 9 Aug 1999 10:27:00 -0400 (EDT) Version: 1.5.2 OS: Linux Linux 2.0.36 The script ftpmirror.py contains some useful (for me) routines, but the file cannot be imported unless the following (trivial) patch is applied 395c395,396 < main() --- > if __name__ == "__main__": > main() ==================================================================== Audit trail: Tue Aug 10 17:46:08 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110844&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:18 -0700 Subject: [Python-bugs-list] [Bug #110820] Jonathan Craft: Possible to-do addition (PR#116) Message-ID: <200009072203.PAA28826@bush.i.sourceforge.net> Bug #110820, was updated on 2000-Aug-01 14:10 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Jonathan Craft: Possible to-do addition (PR#116) Details: Jitterbug-Id: 116 Submitted-By: Guido van Rossum Date: Mon, 25 Oct 1999 10:38:58 -0400 Version: None OS: None A worthy to-do item. ------- Forwarded Message Date: Sat, 23 Oct 1999 08:24:32 -0000 From: Jonathan Craft To: guido@python.org Subject: Possible to-do addition Hi Guido, Is there a visual interface builder (as in VBasic, Hypercard, Icon) for Tkinter? I haven't been able to find any information on it (I'm new to Python). If not, that would be a good to-do. Jonathan Craft mailto:jcchina@bigfoot.com ------- End of Forwarded Message ==================================================================== Audit trail: Mon Oct 25 15:13:11 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-06 10:03 By: twouters Comment: I believe several people are working on something like this (or at least said they were... they might have quit in despair :-) I'm not sure if this belongs on the Python buglist, though. ------------------------------------------------------- Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110820&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:19 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:19 -0700 Subject: [Python-bugs-list] [Bug #110834] urlparse and HTTP parameters (PR#205) Message-ID: <200009072203.PAA28830@bush.i.sourceforge.net> Bug #110834, was updated on 2000-Aug-01 14:13 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: Later Bug Group: Feature Request Priority: 3 Summary: urlparse and HTTP parameters (PR#205) Details: Jitterbug-Id: 205 Submitted-By: mnot@akamai.com Date: Tue, 15 Feb 2000 17:09:44 -0500 (EST) Version: 1.5.2 OS: All Python parses urls into the following data structure: (scheme, netloc, path, params, query, fragment) and references RFC1808. 1808 has been updated by RFC2396, which allows on each path segment, not just the last. This would imply a data structure either like this: (scheme, netloc, path, query, fragment) or this: (scheme, netloc, [(segment, parameters)...], query, fragment) Rather than updating urlparse.py (and introducing incompatibility), it may be nice to introduce a new class (say, uriparse.py) that implements 2396. If there's enough interest, I may give it a go... ==================================================================== Audit trail: Wed Feb 23 21:39:30 2000 guido sent reply 1 Wed Feb 23 21:39:42 2000 guido changed notes Wed Feb 23 21:39:42 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:13 By: none Comment: From: Guido van Rossum Subject: Re: urlparse and HTTP parameters (PR#205) Date: Wed Feb 23 21:39:30 2000 Go for it! --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:13 By: none Comment: Go for it! ------------------------------------------------------- Date: 2000-Aug-16 19:02 By: fdrake Comment: An excellent idea; it can be incorporated in the existing urlparse module using new names. This won't be done for Python 2.0 at any rate, however. ------------------------------------------------------- Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110834&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:22 -0700 Subject: [Python-bugs-list] [Bug #110855] test_array.py fails (PR#143) Message-ID: <200009072203.PAA28838@bush.i.sourceforge.net> Bug #110855, was updated on 2000-Aug-01 14:37 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Irreproducible Priority: 1 Summary: test_array.py fails (PR#143) Details: Jitterbug-Id: 143 Submitted-By: ellement@sdd.hp.com Date: Thu, 2 Dec 1999 14:04:38 -0500 (EST) Version: 1.5.2 OS: HP-UX 10.20 After building python, 'make test' fails when test_array is run: > python Lib/test/test_array.py Traceback (innermost last): File "Lib/test/test_array.py", line 85, in ? main() File "Lib/test/test_array.py", line 10, in main testtype('c', 'c') File "Lib/test/test_array.py", line 21, in testtype a.append(example) AttributeError: '' object has no attribute 'append' Memory fault(coredump) How do I go about debugging this? ==================================================================== Audit trail: Fri Dec 03 10:38:53 1999 guido changed notes Fri Dec 03 10:38:53 1999 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:37 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] test_array.py fails (PR#143) Date: Thu, 02 Dec 1999 14:07:32 -0500 > Full_Name: David Ellement > Version: 1.5.2 > OS: HP-UX 10.20 > Submission from: sanrel1.sdd.hp.com (192.6.114.30) > > > After building python, 'make test' fails when test_array is run: > > > python Lib/test/test_array.py > Traceback (innermost last): > File "Lib/test/test_array.py", line 85, in ? > main() > File "Lib/test/test_array.py", line 10, in main > testtype('c', 'c') > File "Lib/test/test_array.py", line 21, in testtype > a.append(example) > AttributeError: '' object has no attribute 'append' > Memory fault(coredump) > > > How do I go about debugging this? Seems like a pretty serious problem in your build. Use a debugger (e.g. gdb). The bugs list is not the forum to discuss this, since the bug is likely in your installation and not in Python. Try comp.lang.python for help. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:37 By: none Comment: Build problems? ------------------------------------------------------- Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110855&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:26 -0700 Subject: [Python-bugs-list] [Bug #110924] support Unicode for Python source code Message-ID: <200009072203.PAA28842@bush.i.sourceforge.net> Bug #110924, was updated on 2000-Aug-02 08:17 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: None Bug Group: Feature Request Priority: 1 Summary: support Unicode for Python source code Details: exec u"print 42" doesn't work. Follow-Ups: Date: 2000-Aug-09 02:35 By: effbot Comment: python doesn't support 16-bit source code -- so what exactly do you want exec to do? ------------------------------------------------------- Date: 2000-Aug-17 05:17 By: none Comment: That's exactly my point. Python should support Unicode everywhere, in __str__ and __repr__, exec and eval, in open(), as a format for the source code (which would result in all variable names to be Unicode)... Currenly working with Unicode (e.g. for XML) is a mess, because it's supported nowhere. exec "a='ü'" seems to work and seems to treat the string as iso-8859-1 (or not at all) ------------------------------------------------------- Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110924&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:01 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:01 -0700 Subject: [Python-bugs-list] [Bug #110656] IDLE goto file/line (PR#352) Message-ID: <200009072203.PAA28800@bush.i.sourceforge.net> Bug #110656, was updated on 2000-Jul-31 14:11 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 3 Summary: IDLE goto file/line (PR#352) Details: Jitterbug-Id: 352 Submitted-By: gpk@bell-labs.com Date: Fri, 9 Jun 2000 22:45:05 -0400 (EDT) Version: 1.6 CVS today OS: Solaris 2.6 When using IDLE's shell window Debug->Go to file/line, you have to be overly careful what you select. Specifically, if you select a region that contains a newline, IDLE won't be able to find a file and line number. For example, if you select v-- from there File "/export/h1/gpk/schoolweb.local/schoolweb/parse.py", line 199, in __str__ ^-- to there (i.e. 2 characters in, on the following line), you will get the following error message: "No special line: X the line you point to doesn't look like a file name followed by a line number." That is unfortunate, as it's really convenient to make a quick flick down from one line to the next, to select a complete line. By the way, the error box requires you to click "OK". That's a bug. It isn't OK. It's a crime against the King's English, committed by the minions of Bill Gates. You should not be following their lead. ==================================================================== Audit trail: Tue Jul 11 08:25:59 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110656&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:02 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:02 -0700 Subject: [Python-bugs-list] [Bug #110676] fd.readlines() hangs (via popen3) (PR#385) Message-ID: <200009072203.PAA28804@bush.i.sourceforge.net> Bug #110676, was updated on 2000-Jul-31 14:13 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: fd.readlines() hangs (via popen3) (PR#385) Details: Jitterbug-Id: 385 Submitted-By: aron@gweep.net Date: Tue, 4 Jul 2000 19:07:55 -0400 (EDT) Version: 1.5.2 OS: Red Hat Linux 6.1 (2.1.12-20) The following scripts cause a hang at the denoted line. To execute this code, copy the first bit to master.py and the second to slave.py (both should be in the same directory). Then, "cd" to that directory and "python master.py". Manually killing the program is necessary. This script has also been tested on a Solaris 5.7 box and worked. ---master.py--- import popen2 r,w,e = popen2.popen3 ( 'python slave.py' ) r.readlines() # Hangs here e.readlines() r.close() e.close() w.close() ---end--- ---slave.py--- import sys e = sys.stderr.write w = sys.stdout.write e(400*'this is a test\n') w(400*'this is another test\n') ---end--- ==================================================================== Audit trail: Tue Jul 11 08:24:23 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110676&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:28 -0700 Subject: [Python-bugs-list] [Bug #113463] Inconsistent handling of arg -/-- by getopt.getopt() ? Message-ID: <200009072203.PAA28846@bush.i.sourceforge.net> Bug #113463, was updated on 2000-Sep-02 19:44 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Inconsistent handling of arg -/-- by getopt.getopt() ? Details: Problem with function getopt of module getopt.py of Python 1.5.1? Case 1: >>> import getopt, string >>> args = string.split('-a -b b_val - some more stuff -c') >>> optlist, trailing_args = getopt.getopt(args, 'ab:c') >>> optlist [('-a', ''), ('-b', 'b_val')] >>> trailing_args ['-', 'some', 'more', 'stuff', '-c'] Case 2: >>> import getopt, string >>> args = string.split('-a -b b_val -- some more stuff -c') >>> optlist, trailing_args = getopt.getopt(args, 'ab:c') >>> optlist [('-a', ''), ('-b', 'b_val')] >>> trailing_args ['some', 'more', 'stuff', '-c'] The differences are: In case 1, I have "-" in the args list and I get it as the first element of the trailing_args output list; In case 2, I have "--" in the args list and I get nothing about it in the trailing_args output list. This happens because in line 7 of the function getopt (reproduced below) the "--" element of args is discarded. ~~~~~~~~~ Function getopt: def getopt(args, shortopts, longopts = []): list = [] longopts = longopts[:] longopts.sort() while args and args[0][:1] == '-' and args[0] != '-': if args[0] == '--': args = args[1:] break if args[0][:2] == '--': list, args = do_longs(list, args[0][2:], longopts, args[1:]) else: list, args = do_shorts(list, args[0][1:], shortopts, args[1:]) return list, args Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113463&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:32 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:32 -0700 Subject: [Python-bugs-list] [Bug #113721] urllib handles proxy badly Message-ID: <200009072203.PAA28849@bush.i.sourceforge.net> Bug #113721, was updated on 2000-Sep-06 09:30 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: urllib handles proxy badly Details: The following gives "host not found" when a proxy server is in use: import urllib w=urllib.urlopen("http://www.pythonlabs.com") The host name is changed to "http=PROXYSERVER" and fails This works under Python 1.5.2, but fails under Python 2.0b1 Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113721&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:33 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:33 -0700 Subject: [Python-bugs-list] [Bug #113788] NT 2.0b1 Doc/modindex.html is almost empty Message-ID: <200009072203.PAA28853@bush.i.sourceforge.net> Bug #113788, was updated on 2000-Sep-07 03:29 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: NT 2.0b1 Doc/modindex.html is almost empty Details: Doc/modindex.html in the 2.0b1 release on NT is empty. There is only the header and footer but no module list. Can't login to sourceforge so: tebeka@lycosmail.com Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113788&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:08 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:08 -0700 Subject: [Python-bugs-list] [Bug #110690] Bug in os.environ for Windows (PR#50) Message-ID: <200009072204.PAA28877@bush.i.sourceforge.net> Bug #110690, was updated on 2000-Jul-31 14:15 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Bug in os.environ for Windows (PR#50) Details: Jitterbug-Id: 50 Submitted-By: bobalex@uppercase.xerox.com Date: Wed, 11 Aug 1999 19:19:16 -0400 (EDT) Version: 1.5.2 OS: WinNT os.environ for Windows appears to be a map-type object that converts its keys to upper case. Retrieval using a mixed case key works in some cases, but some overloaded "operators" don't seem to do the right thing unless I pass an all-upper-case key. E.g.: >>> os.environ["x"] = "y" # Stores pair {"X": "y"} >>> os.environ["x"] # Works, indicates an effort is made 'y' # to retrieve mixed case keys >>> os.environ.get("x", "NOT FOUND") # Doesn't see the key "x" 'NOT FOUND' >>> os.environ.get("X", "NOT FOUND") # Works with all-upper-case key 'y' >>> del os.environ["x"] # Doesn't see the key "x" Traceback (innermost last): File "", line 1, in ? File "E:\Program Files\Python\Lib\UserDict.py", line 16, in __delitem__ def __delitem__(self, key): del self.data[key] KeyError: x >>> del os.environ["X"] # Works with all-upper-case key ==================================================================== Audit trail: Mon Aug 30 12:33:44 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 10:34 By: fdrake Comment: Fixed at some point in the past. Tested OK using 2.0b1 on Win2K. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110690&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:13 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:13 -0700 Subject: [Python-bugs-list] [Bug #110655] getpass.getpass (PR#349) Message-ID: <200009072204.PAA28893@bush.i.sourceforge.net> Bug #110655, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: getpass.getpass (PR#349) Details: Jitterbug-Id: 349 Submitted-By: ctalley@caci.com Date: Thu, 8 Jun 2000 15:52:19 -0400 (EDT) Version: 1.5.2 OS: W95 When using this code, the third line is skipped. That is, the prompt appears, but the program doesn't pause to accept input data. It goes right to the fourth line and pauses there. I end up with a null string for "fromaddr". username=raw_input('Enter FTP server account username: ') password=getpass.getpass('Enter FTP server account password: ') fromaddr=raw_input('Enter your e-mail address: ') toaddr=raw_input('Enter e-mail address for notification: ') When using this code, everything works (although echo of the password isn't suppressed.) username=raw_input('Enter FTP server account username: ') password=raw_input('Enter FTP server account password: ') fromaddr=raw_input('Enter your e-mail address: ') toaddr=raw_input('Enter e-mail address for notification: ') The difference between the two code segments is that the first uses the getpass method on the second line and the second uses raw_input. What I think is happening is that getpass is leaving some garbage in a buffer somewhere which is seen by raw_input as data. raw_input happily accepts the data and goes to the next line. I've devised several workarounds including "flush_input_buffer=raw_input('')" immediately following the call to getpass. It's ugly, but it works. Thanks, Carl Talley ==================================================================== Audit trail: Tue Jul 11 08:25:59 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110655&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:03:34 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:03:34 -0700 Subject: [Python-bugs-list] [Bug #113807] PyArg_ParseTupleAndKeywords and Unicode...? Message-ID: <200009072203.PAA28857@bush.i.sourceforge.net> Bug #113807, was updated on 2000-Sep-07 09:11 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: PyArg_ParseTupleAndKeywords and Unicode...? Details: I have a small extension that works OK with PyArg_ParseTuple and a es# format; using the same format with PyArg_ParseTupleAndKeywords doesn't seem to work -- after importing that module, Python thinks 2 args are needed, and one of them is an 'impossible format character'. Experimentally switching to s#, it works _except_ when I use the name=value format AND I pass a u'something' as the value, then it crashes the interpreter. So I'm going back to PyArg_ParseTuple, but, the AndKeywords form _is_ also supposed to work with Unicode, right...? The platform I'm using is NT 4, SP6, with MS VC++ 6 SP4 -- just in case it's platform specific... Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113807&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:27 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:27 -0700 Subject: [Python-bugs-list] [Bug #110694] PRIVATE: Threads and readline (PR#120) Message-ID: <200009072204.PAA28905@bush.i.sourceforge.net> Bug #110694, was updated on 2000-Jul-31 14:28 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: PRIVATE: Threads and readline (PR#120) Details: Jitterbug-Id: 120 Submitted-By: xfb52@dial.pipex.com Date: Fri, 29 Oct 1999 14:33:55 -0400 (EDT) Version: 1.5.2 OS: FreeBSD 3.2 When python is compiled with thread support and readline, ^C no longer works properly (interpreter goes into an infinite loop). (Tried with readline 2.0, 2.2 and 4.0). The same system compiled without readline but with threads works fine, and compiled without threads but with readline works fine. The error seems to centre around the signal handler installed by call_readline in Modules/readline.c which does not call signal_handler in Modules/signalmodule.c (which is what happens without readline). I have found an inadequate fix which works with readline-4.0 (but not earlier realeases). This makes ^C work but only after a RETURN is pressed. Whilst not perfect, it does at least allow readline and threads. Hopefully this may point someone who can better understand the signal handling to find a better fix. I confirm that, to the best of my knowledge and belief, this contribution is free of any claims of third parties under copyright, patent or other rights or interests ("claims"). To the extent that I have any such claims, I hereby grant to CNRI a nonexclusive, irrevocable, royalty-free, worldwide license to reproduce, distribute, perform and/or display publicly, prepare derivative versions, and otherwise use this contribution as part of the Python software and its related documentation, or any derivative versions thereof, at no cost to CNRI or its licensed users, and to authorize others to do so. I acknowledge that CNRI may, at its sole discretion, decide whether or not to incorporate this contribution in the Python software and its related documentation. I further grant CNRI permission to use my name and other identifying information provided to CNRI by me for use in connection with the Python software and its related documentation. --Alex *** Modules/readline.c Fri Oct 29 19:31:13 1999 --- Modules/readline.c.ORIG Fri Oct 29 19:14:27 1999 *************** *** 34,40 **** extern int rl_bind_key_in_map(); extern int rl_initialize(); extern int add_history(); - extern int rl_catch_signals; extern Function *rl_event_hook; #endif --- 34,39 ---- *************** *** 233,239 **** static void setup_readline() { - rl_catch_signals=0; rl_readline_name = "python"; /* Force rebind of TAB to insert-tab */ rl_bind_key('\t', rl_insert); --- 232,237 ---- *************** *** 277,283 **** int n; char *p; RETSIGTYPE (*old_inthandler)(); ! /* old_inthandler = signal(SIGINT, onintr); */ if (setjmp(jbuf)) { #ifdef HAVE_SIGRELSE /* This seems necessary on SunOS 4.1 (Rasmus Hahn) */ --- 275,281 ---- int n; char *p; RETSIGTYPE (*old_inthandler)(); ! old_inthandler = signal(SIGINT, onintr); if (setjmp(jbuf)) { #ifdef HAVE_SIGRELSE /* This seems necessary on SunOS 4.1 (Rasmus Hahn) */ *************** *** 288,294 **** } rl_event_hook = PyOS_InputHook; p = readline(prompt); ! /* signal(SIGINT, old_inthandler); */ if (p == NULL) { p = malloc(1); if (p != NULL) --- 286,292 ---- } rl_event_hook = PyOS_InputHook; p = readline(prompt); ! signal(SIGINT, old_inthandler); if (p == NULL) { p = malloc(1); if (p != NULL) ==================================================================== Audit trail: Tue Nov 02 20:44:47 1999 guido changed notes Tue Nov 02 20:44:47 1999 guido moved from incoming to platformbug Wed Nov 03 10:41:38 1999 guido changed notes Wed Nov 03 10:41:39 1999 guido changed notes Wed Nov 03 10:44:43 1999 guido changed notes Follow-Ups: Date: 2000-Aug-01 14:02 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Mon, 01 Nov 1999 17:53:46 -0500 > When python is compiled with thread support and readline, ^C no longer > works properly (interpreter goes into an infinite loop). > (Tried with readline 2.0, 2.2 and 4.0). Thanks for your bug report. I see that you are using FreeBSD. Could it be a FreeBSD related problem? I don't see the same thing on Solaris or Red Hat Linux. Also, can you describe exactly how you reproduce the problem? --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Wed, 03 Nov 1999 10:40:18 -0500 Resolution. ------- Forwarded Message Date: Wed, 03 Nov 1999 15:24:59 +0000 From: Alex Zbyslaw To: guido@cnri.reston.va.us Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline I believe that you were right and that this is a FreeBSD bug. I finally traced the problem back to the use of the setjmp/longjmp in readline.c. For whatever reason, this messes up on FreeBSD. I'll post my final patches on comp.lang.python myself. Please consider the problem closed. Thanks for following up. I think I'll stick to FreeBSD. I grew up on BSD4.2/3 and system v still gives me the heebie jeebies :-) All the best, - --Alex ------- End of Forwarded Message ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Wed, 03 Nov 1999 10:42:33 -0500 ------- Forwarded Message Date: Tue, 02 Nov 1999 11:57:23 +0000 From: Alex Zbyslaw To: guido@cnri.reston.va.us Subject: RE: Re: [Python-bugs-list] PRIVATE: Threads and readline >> When python is compiled with thread support and readline, ^C no longer >> works properly (interpreter goes into an infinite loop). >> (Tried with readline 2.0, 2.2 and 4.0). >Thanks for your bug report. I see that you are using FreeBSD. Could >it be a FreeBSD related problem? I don't see the same thing on >Solaris or Red Hat Linux. > >Also, can you describe exactly how you reproduce the problem? > >--Guido van Rossum (home page: http://www.python.org/~guido/) Thanks for your mail, Guido. Yes, I suppose it could be a FreeBSD problem, though I was originally put on to the readline connection by some articles in comp.lang.python which mentioned extremely similar symptoms under Debian Linux. What those articles did not mention was the thread connection which I guessed for myself. See articles titled "Control-C on Unix meisbehaviour?" on 18th Oct 1999. People in that thread reported similar problems on various systems, whilst others had no problem on apparently identical systems. No one mentioned if they had thread support. Creating the problem is, for me, simple. I compile python 1.5.2 with thread support enabled. (Thread and signal tests are passed by make test and a quickie thread program works as expected). If I go into the interpreter python and type ^C, everything goes into an infinite loop. If I recompile python without threads, but with readline, then go into the interpreter then press ^C I get KeyboardInterrupt as expected. If I recompile with threads but without readline, then again, I get KeyboardInterrupt as expected. In all three cases, pressing ^C while a program is running gets correct behaviour. >From what I can determine: The readline module was written so that it bypassed any signal handler installed by the readline library. It institutes its own handler in readline.c (onintr) which catches the interrupt and returns NULL (which somewhere back down the line is interpreted as KeyboardInterrupt). However, with threads enabled (but no readline) there seems to be a different behaviour, where the interrupt is caught by the regular signal handler (I forget the name but its in my bug report - in signalmodule.c). My guess was that with threads enabled this signal handler was doing something important. But with readline support turned on, this handler was not being called which caused some problem occur. I did try adapting the code in readline.c to call this signal handler itself, but that didn't seem to work (though I forget what happened). What my patch does is to forget about the local signal handler 'onintr' and, instead, stick with whatever the "default" signal handler is. readline_4.0 allows you to turn off any signal handling in the readline library itself, so the "default" handler will be whatever python installs (in signalmodule.c). This then "works" in that pressing ^C does not generate an infinite loop. But the call_readline function in readline.c does not immediately return NULL, so you have to press RETURN before the KeyboardInterrupt is generated. I never did figure out a way to both call the default signal handler and return a NULL from call_readline -- which I believe would cause "correct" ^C behaviour. My C is somewhat rusty as I spend my time in Python (by choice) and Perl (by neccessity). I'm not sure what else I can tell you about the problem, but if there is any more data I could provide for you, please ask. As another bizarre data point: when I run a threaded python interpreter on a program which does not use threads, and pipe the output to less, less gets very confused and fails to update about half the screen, leaving it blank. This happens after hitting SPACE a couple of times. All the data is there, and if I jump less to the end of input and then go back through the the data, I can see it all normally. Same program and unthreaded python and less works just fine. If you have ANY idea why adding thread support could affect a program further down a pipe I'd love to know. By the way, I have no objection to making my bug report and patch public, as long as there is some way to remove my email address from it. I have had only one piece of spam in the last year and I'd like to keep it that way :-) As the good cafe owner said "Spam's orf"! Although it's not perfect, the patch has made threaded python usable for me. If there are other people out there in the same boat and it helped them, that would be great. - -- Phone: 0131 468 2422 Email: xfb52@dial.pipex.com ------- End of Forwarded Message ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Jack Jansen Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Wed, 03 Nov 1999 23:32:19 +0100 > As another bizarre data point: when I run a threaded python interpreter > on a program which does not use threads, and pipe the output to less, > less gets very confused and fails to update about half the screen, > leaving it blank. This happens after hitting SPACE a couple of times. > All the data is there, and if I jump less to the end of input and then > go back through the the data, I can see it all normally. Same program > and unthreaded python and less works just fine. If you have ANY idea > why adding thread support could affect a program further down a pipe I'd > love to know. As I like puzzles I spent some time thinking on this, and it must be either (a) kernel bug, (b) a very strange stdio bug or (c) an incorrect observation. If your system supports memory-mapped I/O and stdio uses it and it can somehow signal that a whole buffer is available while it isn't but only the tail end is available (because it uses an overlapping memcopy which goes back-to-front, for instance) the reader in the pipe might wakeup too early and see null bytes. But if this was a bet I think I'd put my money on (c) (but absolutely no offense meant!). -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Alex Zbyslaw: RE: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Mon, 08 Nov 1999 10:30:24 -0500 ------- Forwarded Message Date: Sat, 06 Nov 1999 11:17:00 +0000 From: Alex Zbyslaw To: guido@cnri.reston.va.us Subject: RE: Re: [Python-bugs-list] PRIVATE: Threads and readline This is the message I posted today on comp.lang.python. Btw, I forgot to mention that to compile for thread support on FreeBSD 3.2 (and I would think 3.3) you only need to specify "-pthread" on the link line. That automatically links in the threaded C libraries. Everything else from the standard configure would appear to be correct. All the best, - --Alex Subject: Re: Control-C on Unix misbehaviour? Date: Sat, 06 Nov 1999 11:08:05 +0000 Quinn Dunkan wrote: > > On Mon, 18 Oct 1999 15:47:52 +0200, flight@mathi.uni-heidelberg.de > Here's a data point for Irix6: > If you hit ^C at the >>> prompt with readline loaded (python 1.5), python > stops responding. Further ^Cs do nothing, in fact the only way I've found > to get out is to kill from another shell or hit ^z kill %. I had exactly the same problem on FreeBSD 3.2 but ONLY when I had thread support enabled. I have eventually tracked the problem down to a bad interaction (read library/kernel bug) between threads/sigjmp and interrupted reads. I have created two "fixes" which can be applied either to a) python or b) python and readline which fix the problems differently. The fixes are pretty trivial and so far they work for me. You can check them out at http://www.xfb52.dial.pipex.com/patches/python.shtml I don't know how they may affect people who have had ^C dumping them into a shell. No one else has mentioned whether they had thread support enabled or not. >From extensive poking around I am quite sure that this misbehaviour is not a bug in either Python or readline. Good luck, - --Alex ------- End of Forwarded Message ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: There is a problem with threads + readline + signals on FreeBSD. Apparently readline is using longjmp and this messes things up. (I told you longjmp was evil. :-) ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110694&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:28 -0700 Subject: [Python-bugs-list] [Bug #110710] Segmentation fault on range (PR#71) Message-ID: <200009072204.PAA28913@bush.i.sourceforge.net> Bug #110710, was updated on 2000-Jul-31 14:30 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 4 Summary: Segmentation fault on range (PR#71) Details: Jitterbug-Id: 71 Submitted-By: mz@pdm.pvt.net Date: Mon, 6 Sep 1999 06:45:45 -0400 (EDT) Version: 1.5.2 OS: Debian GNU/Linux 2.1 When I start python and try to evaluate `range(1000000000)', I receive segmentation fault: $ python Python 1.5.2 (#0, May 4 1999, 14:45:33) [GCC 2.7.2.3] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> range(1000000000) Segmentation fault This can also be reproduced with Python 1.5.1 from the Debian 2.1 i386 distribution. ==================================================================== Audit trail: Tue Sep 07 11:13:29 1999 guido changed notes Tue Sep 07 11:13:29 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Aug-04 07:00 By: jhylton Comment: I can't reproduce this bug on 1.5.2 or current CVS. In both cases, I get a MemoryError. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110710&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:25 -0700 Subject: [Python-bugs-list] [Bug #110685] isdir bad behaviouring (PR#408) Message-ID: <200009072204.PAA28901@bush.i.sourceforge.net> Bug #110685, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: isdir bad behaviouring (PR#408) Details: Jitterbug-Id: 408 Submitted-By: thomas.mangin@free.fr Date: Sun, 23 Jul 2000 08:39:25 -0400 (EDT) Version: 1.5.2 OS: Linux This report is not a "Bug" report but more a library "Misbehaviouring" report. I am concern about os.path.isdir return code. (this can probably applied to isfile) The return code express a boolean value : the file is a directory or not. But I notice that if you don't have read access into the directory where the file is stored, the function always return 0. Or the path can refer a directory, returning 0 simply isn't right. I beleve an exception must be raised to inform the programmer about this access right problem and must be silently ignored. ==================================================================== Audit trail: Mon Jul 24 18:32:17 2000 jeremy moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110685&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:34 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:34 -0700 Subject: [Python-bugs-list] [Bug #110854] Re: Date problem unresolved [DIN 2646] (fwd) (PR#109) Message-ID: <200009072204.PAA28926@bush.i.sourceforge.net> Bug #110854, was updated on 2000-Aug-01 14:37 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Irreproducible Priority: 3 Summary: Re: Date problem unresolved [DIN 2646] (fwd) (PR#109) Details: Jitterbug-Id: 109 Submitted-By: Curt Finch Date: Thu, 14 Oct 1999 14:58:08 -0500 (CDT) Version: None OS: None anyone heard of any python time bugs? __________________________________________________________________ Web-Based Project Management, Journyx TimeSheet and Tracking Software FREE (800)755-9878 FREE at http://journyx.com/wts.html curt@www.JOURNYX.com ------------------------------------------------------------------ ---------- Forwarded message ---------- Date: Thu, 14 Oct 1999 14:09:35 -0500 (CDT) From: John Maddalozzo To: "Stappert, Andreas" Cc: support@journyx.com Subject: Re: Date problem unresolved [DIN 2646] Andreas, I'm stumped. It seems there is a problem in the python time library. I may have to post a message to a python news group if code inspection doesn't turn anything up. 2646 is the problem report number. We'll dig around and see what we can find out. Meanwhile, you might want to send me the output of the uname -a command and any other information you have that might help. (Linux level, etc) Regards, John __________________________________________________________________ Web-Based Project Management and TimeSheet Software JournyxTime FREE at http://journyx.com/wts.html John Maddalozzo - john@JOURNYX.com (512)834-8888 / (800)755-9878 ------------------------------------------------------------------ On Thu, 14 Oct 1999, Stappert, Andreas wrote: > Hi John, > > Well, for some reason I always have the strangest thing happen to me :-) > even though I try to conform to every standards I know of... > > Here is what I get. Looks like it matches your machine (our server date is > set a day off). Do you think it would help if we change the timezone to EST > or something? > > > date +%s > 939838233 > timesheet:~> > > The hardware is an (old) 486 (yes I know old ... that is just our > testserver, once we are putting Journyx to real use, we are going to put a > nicer machine underneath it). I don't know the mainboard type by heart. > > Oh, I should probably also tell you this: At the beginning, the time was > right but once we got some modifications done and rebootet the machine, it > started acting this strange. > > Regards, > Andreas > > -----Ursprungliche Nachricht----- > Von: John Maddalozzo [mailto:john@journyx.com] > Gesendet: Donnerstag, 14. Oktober 1999 20:05 > An: Stappert, Andreas > Betreff: Re: AW: AW: Date problem unresolved > > > > Very strange, Andreas. > the time.time() result shows the number of seconds since the "epoch" > (see http://python.org/doc/current/lib/module-time.html) > Your number of seconds should be somewhere between > 939916983.851 (the time on my computer when I wrote example note below) > and > 939923915.897 (the time on my computer I just now checked) > > What does the command > date +%s > say? > What hardware are you using? > > __________________________________________________________________ > Web-Based Project Management and TimeSheet Software JournyxTime > FREE at http://journyx.com/wts.html > John Maddalozzo - john@JOURNYX.com (512)834-8888 / (800)755-9878 > ------------------------------------------------------------------ > > On Thu, 14 Oct 1999, Stappert, Andreas wrote: > > > Here you go (my mistake): > > > > timesheet:~/jtime/jtime/pi/bin> python > > Python 1.5.2 (#1, Sep 27 1999, 17:01:09) [GCC egcs-2.91.66 19990314/Linux > > (egcs > > - on linux2 > > Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam > > >>> import time > > >>> import wtdate > > >>> wtdate.today() > > Thu 13 Jul 1995 > > >>> time.localtime(time.time()) > > (1995, 7, 13, 8, 38, 9, 3, 194, 1) > > >>> time.time() > > 805617494.587 > > >>> time.gmtime(time.time()) > > (1995, 7, 13, 6, 38, 54, 3, 194, 0) > > >>> time.gzname > > Traceback (innermost last): > > File "", line 1, in ? > > AttributeError: gzname > > >>> time.timezone > > -3600 > > >>> time.tzname > > ('CET', 'CEST') > > >>> > > > > -----Ursprungliche Nachricht----- > > Von: John Maddalozzo [mailto:john@journyx.com] > > Gesendet: Donnerstag, 14. Oktober 1999 19:09 > > An: Stappert, Andreas > > Betreff: Re: AW: Date problem unresolved > > > > > > > > Hi Andreas, > > Did you remember to source setup? > > In pi/bin at the shell prompt do: > > . ./setup > > You need to do that first. To check that it has been sourced, do > > echo $PYTHONPATH > > that should return something like this: > > [rebobiz] /home/john_scratch/jtime/jtime/pi/bin 753>. ./setup > > [rebobiz] /home/john_scratch/jtime/jtime/pi/bin 754>echo $PYTHONPATH > > > //home/john_scratch/jtime/jtime/pi/apache/wtlib://home/john_scratch/jtime/jt > > > ime/pd/Linux/python/lib/python1.5/://home/john_scratch/jtime/jtime/pi/apache > > /serverroot/cgi-bin > > > > Then it should be able to find wtdate.pyc in pi/apache/wtlib > > > > Regards, John > > > > On Thu, 14 Oct 1999, Stappert, Andreas wrote: > > > > > Hi John, > > > > > > I already get stuck when I try to import wtdate: > > > > > > python > > > Python 1.5.1 (#1, Mar 21 1999, 22:49:36) [GCC egcs-2.91.66 19990314/Li > on > > > linux > > > -i386 > > > Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam > > > >>> import time > > > >>> import wtdate > > > Traceback (innermost last): > > > File "", line 1, in ? > > > ImportError: No module named wtdate > > > > > > -----Ursprungliche Nachricht----- > > > Von: John Maddalozzo [mailto:john@journyx.com] > > > Gesendet: Donnerstag, 14. Oktober 1999 18:05 > > > An: Stappert, Andreas > > > Cc: support@journyx.com > > > Betreff: Re: Date problem unresolved > > > > > > > > > > > > Andreas, > > > This must be some problem with resolving the time zone. > > > Please do the following and send me the output. > > > > > > What this is doing is invoking python and using its libraries to get > > dates. > > > I'm hoping that this will give us some idea of what is wrong. > > > Regards, John > > > > > > cd /jtime/pi/bin > > > . ./setup > > > python > > > import time > > > import wtdate > > > wtdate.today() > > > time.localtime(time.time()) > > > time.time() > > > time.gmtime(time.time()) > > > time.gzname > > > time.timezone > > > > > > For example when I do it here I get... > > > > > > [rebobiz] /home/john_scratch/jtime/jtime/pi/bin 743>python > > > Python 1.5.2 (#1, Oct 2 1999, 23:28:23) [GCC egcs-2.91.66 > 19990314/Linux > > > (egcs- on linux2 > > > Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam > > > >>> import time > > > >>> import wtdate > > > >>> wtdate.today() > > > Thu 14 Oct 1999 > > > >>> time.localtime(time.time()) > > > (1999, 10, 14, 11, 2, 51, 3, 287, 1) > > > >>> time.time() > > > 939916983.851 > > > >>> time.gmtime(time.time()) > > > (1999, 10, 14, 16, 7, 10, 3, 287, 0) > > > >>> time.tzname > > > ('CST', 'CDT') > > > >>> time.timezone > > > 21600 > > > > > > > > > > > > __________________________________________________________________ > > > Web-Based Project Management and TimeSheet Software JournyxTime > > > FREE at http://journyx.com/wts.html > > > John Maddalozzo - john@JOURNYX.com (512)834-8888 / (800)755-9878 > > > ------------------------------------------------------------------ > > > > > > On Thu, 14 Oct 1999, Stappert, Andreas wrote: > > > > > > > Hello there, > > > > We are still having a major problem with the Journyx installation on > our > > > > Linux server: > > > > The current date on the Linux machine is > > > > Mit Okt 13 10:35:14 CEST 1999 > > > > but Journyx uses the below July 12, 1995 as current date. Is there any > > way > > > > to correct this problem? > > > > We would like to go and find some more customers for Journyx but if we > > can > > > > not figure out how to correct this problem, we will not be able to > > > > demonstrate it. > > > > Thanks for your immediate attention > > > > Andreas > > > > > > > > License Key Data > > > > * Dates > > > > * Install Date: Mon Okt 4 17:36:04 CEST 1999 > > > > * Product Expiration Date: Never > > > > * Current Date: Wed 12 Jul 1995 > > > > * Users > > > > * Licensed Number of Users: 10 > > > > * Current Number of User Data Unavailable > > > > * Hosts > > > > * Licensed Host: 192 > > > > * Current Host: 192 > > > > Operating System Information > > > > * Current: Linux 192.168.0.100 2.2.5-15de #1 Tue May 25 00:43:15 EDT > > > > 1999 i486 > > > > * Original: Linux karsrv01.key-work.de 2.2.5-15de #1 Tue May 25 > > > > 00:43:15 EDT 1999 i486 unknown > > > > Credits > > > > * Docs: Sarah Griswold > > > > * Testing: Matt Neiman > > > > * Coding: > > > > * Chris Anderson > > > > * Curt Finch > > > > * John Maddalozzo > > > > * Andrew Reutter > > > > * Design and enhancement ideas: literally thousands of registered > > > > users just like you. > > > > > > > > > > > > > > > > ----------------------------------------------- > > > > Andreas Stappert > > > > Key-Work Consulting GmbH > > > > > > > > Haid-und-Neu-Strasse 7 - 76131 Karlsruhe - Germany > > > > +49 721 664936-0 - mailto:andreas.stappert@key-work.de > > > > > > > > > > > > > > > ==================================================================== Audit trail: Mon Oct 18 17:53:07 1999 guido changed notes Mon Oct 18 17:53:07 1999 guido changed notification Mon Oct 18 17:53:08 1999 guido moved from incoming to open Tue Oct 19 00:42:35 1999 guido changed notes Tue Oct 19 00:42:37 1999 guido moved from open to irreproducible Follow-Ups: Date: 2000-Aug-01 14:37 By: none Comment: Can't reproduce this here. Your best bet is to look into the conversion of the time() value to floating point -- maybe you are using a bogus floating point emulation? BTW, forwarding such a long thread of email without a clear summary of the problem at the top makes it hard for me to read the bug report. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110854&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:44 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:44 -0700 Subject: [Python-bugs-list] [Bug #113700] widespread bug in HTML files: lots of italics Message-ID: <200009072204.PAA29032@bush.i.sourceforge.net> Bug #113700, was updated on 2000-Sep-06 06:16 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: widespread bug in HTML files: lots of italics Details: I'd already noticed this in AMK's and Moshe's doc about "what's new in Python 2". There's some bug in the converter-to-HTML that, occasionally, for a big closed bracket, outputs a in front and a in back rather than vice-versa; so all the rest of the HTML is italicized. E.g., it shows up in built-in-funcs.html in the description of int (x[, radix]) [possibly later too, haven't checked]. Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113700&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:45 -0700 Subject: [Python-bugs-list] [Bug #113785] SIGSEGV in PyDict_SetItem Message-ID: <200009072204.PAA29035@bush.i.sourceforge.net> Bug #113785, was updated on 2000-Sep-07 01:51 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: 3rd Party Priority: 5 Summary: SIGSEGV in PyDict_SetItem Details: On a PC running FreeBSD 3.5 Python 1.5.2 (#1, Aug 23 2000, 10:14:09) [GCC 2.95 19990728 (release)] on freebsd3 I installed Python to run a filter that comes with inn 2.3.0 (usenet News) Some time the fiter written in Python hangs with the following (from gdb) Program received signal SIGSEGV, Segmentation fault. 0x810465b in PyDict_SetItem (op=0x83c6a80, key=0x83d4020, value=0x0) at dictobject.c:375 375 Py_INCREF(value); I suspect that the Python filter may be # # $Id: filter_innd.py,v 1.2 1999/09/23 14:24:23 kondou Exp $ # # This is a sample filter for the Python innd hook. # # For details, see the file README.python_hook that came with INN. # import re from string import * # This looks weird, but creating and interning these strings should # let us get faster access to header keys (which innd also interns) by # losing some strcmps under the covers. Approved = intern("Approved"); Control = intern("Control") Date = intern("Date"); Distribution = intern("Distribution") Expires = intern("Expires"); From = intern("From") Lines = intern("Lines"); Message_ID = intern("Message-ID") Newsgroups = intern("Newsgroups"); Path = intern("Path") Reply_To = intern("Reply-To"); Sender = intern("Sender") Subject = intern("Subject"); Supersedes = intern("Supersedes") Bytes = intern("Bytes"); Also_Control = intern("Also-Control") References = intern("References"); Xref = intern("Xref") Keywords = intern("Keywords"); X_Trace = intern("X-Trace") NNTP_Posting_Host = intern("NNTP-Posting-Host") Followup_To = intern("Followup-To"); Organization = intern("Organization") Content_Type = intern("Content-Type"); Content_Base = intern("Content-Base") Content_Disposition = intern("Content-Disposition") X_Newsreader = intern("X-Newsreader"); X_Mailer = intern("X-Mailer") X_Newsposter = intern("X-Newsposter") X_Cancelled_By = intern("X-Cancelled-By") X_Canceled_By = intern("X-Canceled-By"); Cancel_Key = intern("Cancel-Key") __BODY__ = intern("__BODY__"); __LINES__ = intern("__LINES__") class InndFilter: """Provide filtering callbacks to innd.""" def __init__(self): """This runs every time the filter is loaded or reloaded. This is a good place to initialize variables and precompile regular expressions, or maybe reload stats from disk. """ self.re_newrmgroup = re.compile('(?:new|rm)group\s') self.re_obsctl = re.compile('(?:sendsys|version|uuname)') # msgid pattern from a once-common spambot. self.re_none44 = re.compile('none\d+\.yet>') # There is a mad newgrouper who likes to meow. self.re_meow = re.compile("^Meow\!", re.M) # One of my silly addresses. self.re_fluffymorph = re.compile("andruQ@myremarQ.coM", re.I) def filter_before_reload(self): """Runs just before the filter gets reloaded. You can use this method to save state information to be restored by the __init__() method or down in the main module. """ syslog('notice', "filter_before_reload executing...") def filter_close(self): """Runs when innd exits. You can use this method to save state information to be restored by the __init__() method or down in the main module. """ syslog('notice', "filter_close running, bye!") def filter_messageid(self, msgid): """Filter articles just by their message IDs. This method interacts with the IHAVE and CHECK NNTP commands. If you return a non-empty string here, the offered article will be refused before you ever have to waste any bandwidth looking at it. This is not foolproof, so you should do your ID checks both here and in filter_art. (TAKETHIS does not offer the ID for examination, and a TAKETHIS isn't always preceded by a CHECK.) """ return "" # deactivate the samples. if self.re_none44.search(msgid): return "But I don't like spam!" if msgid[0:8] == '\r Path: news.nectec.or.th!news.loxinfo.co.th!news-out.cwix.com!newsfeed.\ cwix.com!newsfeeds.belnet.be!news.belnet.be!newsgate.cistron.nl!bullse\ ye.news.demon.net!demon!news.demon.co.uk!demon!inert.demon.co.uk!not-f\ or-mail\r From: inert@inert.demon.co.uk\r Newsgroups: rec.music.industrial\r Subject: *** CLUB NOIR *** 31/8/00\r Date: Wed, 30 Aug 2000 19:47:53 GMT\r Organization: inertia\r Message-ID: <967664873.12710.1.nnrp-02.9e98fa8b@news.demon.co.uk>\r NNTP-Posting-Host: inert.demon.co.uk\r X-NNTP-Posting-Host: inert.demon.co.uk:158.152.250.139\r X-Trace: news.demon.co.uk 967664873 nnrp-02:12710 NO-IDENT inert.demon\ .co.uk:158.152.250.139\r X-Complaints-To: abuse@demon.net\r X-Mailer: Mozilla 1.22 (Windows; I; 16bit)\r MIME-Version: 1.0\r Lines: 0\r Xref: news.nectec.or.th rec.music.industrial:137401\r \r .\r So, for an easy solution, I can disable Python filtering and then inn will be working fine. But even if the filter was not doing what it is supposed to do, Python should not SIGSEGV I presume. Beside Python installed without problem and make test result is: 42 tests OK. 19 tests skipped: test_al test_audioop test_bsddb test_cd test_cl test_crypt test_dbm test_dl test_gdbm test_gl test_gzip test_imageop test_imgfile test_nis test_rgbimg test_sunaudiodev test_thread test_timing test_zlib For more info: on@cs.ait.ac.th Thank you, Olivier Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113785&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:12 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:12 -0700 Subject: [Python-bugs-list] [Bug #110619] urllib.py fails with username/password proxies (PR#221) Message-ID: <200009072204.PAA28889@bush.i.sourceforge.net> Bug #110619, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: Feature Request Priority: 4 Summary: urllib.py fails with username/password proxies (PR#221) Details: Jitterbug-Id: 221 Submitted-By: tarka@zip.com.au Date: Tue, 29 Feb 2000 19:15:45 -0500 (EST) Version: 1.5.2 OS: Irix urllib.py fails to handle proxies with user and password information included in the proxy URL, e.g. http://ssmith:testpass@10.11.12.13:1234 The following example ... import os, urllib os.environ['http_proxy'] = "http://ssmith:testpass01@10.11.12.13:1234" f = urllib.urlopen('http://www.python.org') data = f.read() print data fails with the following errors : Traceback (innermost last): File "url.py", line 3, in ? f = urllib.urlopen('http://www.python.org') File "/var/share//lib/python1.5/urllib.py", line 59, in urlopen return _urlopener.open(url) File "/var/share//lib/python1.5/urllib.py", line 157, in open return getattr(self, name)(url) File "/var/share//lib/python1.5/urllib.py", line 253, in open_http h = httplib.HTTP(host) File "/var/share//lib/python1.5/httplib.py", line 51, in __init__ if host: self.connect(host, port) File "/var/share//lib/python1.5/httplib.py", line 75, in connect raise socket.error, "nonnumeric port" IOError: [Errno socket error] nonnumeric port ==================================================================== Audit trail: Mon May 22 17:35:04 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-31 10:15 By: fdrake Comment: Will be documented as a limitation in the implementation, as suggested in bug #111725. I'm converting this to a feature request that can be dealt with in a subsequent version of Python. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110619&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:14 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:14 -0700 Subject: [Python-bugs-list] [Bug #110666] PRIVATE: interned->ma_table never free'd (PR#361) Message-ID: <200009072204.PAA28897@bush.i.sourceforge.net> Bug #110666, was updated on 2000-Jul-31 14:12 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: PRIVATE: interned->ma_table never free'd (PR#361) Details: Jitterbug-Id: 361 Submitted-By: cfandrich@8cs.com Date: Fri, 16 Jun 2000 20:08:33 -0400 (EDT) Version: 1.5.2 OS: Windows I'm embedding Python in an application. For now, all I'm doing is initializing and finalizing Python. When I run my app I get a memory leak of 12288 bytes. The memory is malloc'ed by dictresize() which is called by PyDict_SetItem() which is called by PyString_InternInPlace(). For now, I've added PyDict_Clear(interned); interned = NULL; to PyString_Fini(). So far it works fine, but I don't know if it's safe to do in the grand scheme of things. -Chris ==================================================================== Audit trail: Tue Jul 11 08:26:01 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: "M.-A. Lemburg" Subject: Re: [Python-bugs-list] PRIVATE: interned->ma_table never free'd (PR#361) Date: Sat, 17 Jun 2000 10:53:20 +0200 cfandrich@8cs.com wrote: > > Full_Name: Christopher Fandrich > Version: 1.5.2 > OS: Windows > Submission from: (NULL) (208.41.174.4) > > I'm embedding Python in an application. For now, all I'm doing is initializing > and finalizing Python. > > When I run my app I get a memory leak of 12288 bytes. The memory is malloc'ed > by dictresize() which is called by PyDict_SetItem() which is called by > PyString_InternInPlace(). > > For now, I've added > PyDict_Clear(interned); > interned = NULL; > to PyString_Fini(). So far it works fine, but I don't know if it's safe to do > in the grand scheme of things. I would suggest adding code to dealloc the interned dict iff it is empty after the sweeping action in PyString_Fini(). I have a feeling that this is not the case though, since interned strings are used quite a lot in the core interpreter (e.g. in classobject.c) and these are usually not recovered. Perhaps we ought to add some code which takes care of cleaning up all remaining garbage left over after the call to call_ll_exitfuncs() in Py_Finalize(), e.g. force free'ing of all interned strings and cached ints/floats and associated free lists or dicts. We'd need new APIs in string|float|intobject.c to implement this. Thoughts ? Patches ? -- Marc-Andre Lemburg ______________________________________________________________________ Business: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/ ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110666&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:30 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:30 -0700 Subject: [Python-bugs-list] [Bug #110831] readline on QNX (PR#192) Message-ID: <200009072204.PAA28917@bush.i.sourceforge.net> Bug #110831, was updated on 2000-Aug-01 14:12 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: readline on QNX (PR#192) Details: Jitterbug-Id: 192 Submitted-By: davidv@elisra.com Date: Thu, 27 Jan 2000 13:31:16 -0500 (EST) Version: 1.52 OS: Qnx This is not a bug. I have compiled Python 1.52 with Watcom on QNX. The Linux readline doesn't work good with QNX. This simple patch for /Parser/myreadline.c replaces readline with QNX input_line function. ------------------------------------------------------------ 60,68d59 < < #ifdef __QNX__ < p = input_line( fp, buf, len ); < if( p ) { < int n = strlen(p); < p[n] = '\n'; < p[n+1] = 0; < } < #else 70d60 < #endif ------------------------------------------------------------- ==================================================================== Audit trail: Mon Feb 07 12:34:32 2000 guido sent reply 1 Mon Feb 07 12:34:49 2000 guido changed notes Mon Feb 07 12:34:49 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:13 By: none Comment: From: Guido van Rossum Subject: Re: readline on QNX (PR#192) Date: Mon Feb 7 12:34:32 2000 > This is not a bug. > I have compiled Python 1.52 with Watcom on QNX. The Linux readline doesn't > work good with QNX. This simple patch for /Parser/myreadline.c > replaces readline with QNX input_line function. > > ------------------------------------------------------------ > 60,68d59 > < > < #ifdef __QNX__ > < p = input_line( fp, buf, len ); > < if( p ) { > < int n = strlen(p); > < p[n] = '\n'; > < p[n+1] = 0; > < } > < #else > 70d60 > < #endif > ------------------------------------------------------------- David, please see www.python.org/patches for instructions on how to send patches. The Bugs List is not the right place, sorry! --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:13 By: none Comment: Should go to patches@python.org. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110831&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:31 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:31 -0700 Subject: [Python-bugs-list] [Bug #110842] dl.RTLD_GLOBAL missing (PR#313) Message-ID: <200009072204.PAA28921@bush.i.sourceforge.net> Bug #110842, was updated on 2000-Aug-01 14:15 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: dl.RTLD_GLOBAL missing (PR#313) Details: Jitterbug-Id: 313 Submitted-By: loewis@informatik.hu-berlin.de Date: Thu, 4 May 2000 09:54:13 -0400 (EDT) Version: 1.5.2 OS: Solaris The dl module does not support all flags to dlopen available on a specific system; eg. dl.open("foo.so",dl.RTLD_GLOBAL) does not work. On Solaris, the following constants are defined, in addition RTLD_NOLOAD RTLD_GLOBAL RTLD_LOCAL RTLD_PARENT RTLD_GROUP RTLD_WORLD RTLD_NODELETE ==================================================================== Audit trail: Mon May 22 17:25:17 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110842&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:27 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:27 -0700 Subject: [Python-bugs-list] [Bug #110703] select with dec-threads core dumps (PR#35) Message-ID: <200009072204.PAA28909@bush.i.sourceforge.net> Bug #110703, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: select with dec-threads core dumps (PR#35) Details: Jitterbug-Id: 35 Submitted-By: ddula@alfomc.net Date: Thu, 22 Jul 1999 17:01:04 -0400 (EDT) Version: 1.5.2 OS: Digital Unix (OSF/1) 4.0E with latest patches Select cores while waiting on a socket spoo.alfomc.net> dbx /usr/local/ddula/tar/Python-1.5.2/python core dbx version 3.11.10 Type 'help' for help. Core file created by program "python" thread 0xb signal Segmentation fault at >*[nxm_thread_kill, 0x3ff805ab3b8] retr31, (r26), 1 (dbx) t > 0 nxm_thread_kill(0x14003bb40, 0x3ff807e31c8, 0x3ffc0085c98, 0x3ff805ab0a8, 0x14003bb40) [0x3ff805ab3b8] 1 pthread_kill(0x1, 0x0, 0x0, 0x1400df980, 0x3ff00000000) [0x3ff80598b94] 2 (unknown)() [0x3ff8058cb38] 3 (unknown)() [0x3ff807e35ec] 4 exc_unwind(0x1400dde78, 0x1400dc5a0, 0xabadabad00beed00, 0x0, 0x3ff807e3964) [0x3ff807e36d4] 5 exc_raise_signal_exception(0x86, 0x0, 0x1200735b8, 0x1, 0x2) [0x3ff807e3960] 6 (unknown)() [0x3ff8059a248] 7 select_select(args = (nil)) ["./selectmodule.c":221, 0x1200735b4] 8 eval_code2(co = [bad address (0x14010d838)], globals = 0xfc50, locals = (nil), args = [bad address (0x14010d840)], kws = [bad address (0x14010d848)], kwcount = [bad address (0x14010d9a8)], defs = [bad address (0x14010d9b0)], defcount = [bad address (0x14010d9b8)]) ["ceval.c":1654, 0x12003e57c] Appears eval_code2 is getting passed bad addresses? My code snipped <--SNIP--> class TelnetProxy(SocketServer.StreamRequestHandler,SocketServer.BaseRequestHand ler): def handle(self): o = socket(AF_INET,SOCK_STREAM) o.connect(OHOST,OPORT) while 1: print o.fileno() print self.rfile.fileno() r,w,e = select.select([o,self.rfile],[],[],1) <---CORE HERE if o in r: <--SNIP--> Same problem under 1.5.1 as well. The 1.5.2 is the latest source I downloaded Jul 20 This same code works fine on NT and LINUX I believe. Dave Dula ddula@alfomc.net ==================================================================== Audit trail: Sat Jul 24 16:52:19 1999 guido changed notes Sat Jul 24 16:52:19 1999 guido moved from incoming to open Sat Jul 24 17:05:25 1999 guido moved from open to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] select with dec-threads core dumps (PR#35) Date: Thu, 22 Jul 1999 17:46:26 -0400 I seriously suspect that this is a bug in your C library, not in Python. Select is rock-solid on other platforms. Do you feel confident enough to try debugging this some more? Otherwise, you have no choice but to post a question to the newsgrup, maybe someone has seen this before or is willing to help debugging it. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: David Dula Subject: Re: [Python-bugs-list] select with dec-threads core dumps (PR#35) Date: Thu, 22 Jul 1999 18:43:48 -0400 Guido van Rossum wrote: > I seriously suspect that this is a bug in your C library, not in > Python. Select is rock-solid on other platforms. Do you feel > confident enough to try debugging this some more? Otherwise, you have > no choice but to post a question to the newsgrup, maybe someone has > seen this before or is willing to help debugging it. > > --Guido van Rossum (home page: http://www.python.org/~guido/) Well a little more debugging shows that this is certainly a threading + select problem because a forking method works. The forks will serve my purposes so I have a work around. Thanks Dave Dula ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: Digital Unix problem when combining threads with select? ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110703&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:36 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:36 -0700 Subject: [Python-bugs-list] [Bug #110860] IDLE class browser and decimal comma don't agree (PR#298) Message-ID: <200009072204.PAA29019@bush.i.sourceforge.net> Bug #110860, was updated on 2000-Aug-01 14:38 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Irreproducible Priority: 5 Summary: IDLE class browser and decimal comma don't agree (PR#298) Details: Jitterbug-Id: 298 Submitted-By: magnus@thinkware.se Date: Tue, 18 Apr 2000 08:37:02 -0400 (EDT) Version: 1.5.2 OS: NT 4 As soon as I open the class browser in IDLE (0.5) I get the traceback below. Previously I had another strange bug that I suspect has to do with Tcl/Tk and the fact that I have national settings with , (comma) as decimal separator. With IDLE 0.4, >>> 5 / float(2) would result in 2,5 (not 2.5). It also wanted me to enter data like that. >>> 2.5 * 2 was rejected, and obviously >>> 2,5 * 2 was interpreted as (2, 5) * 2. This was only a problem in the IDLE shell. Program files ran OK. Considering "ValueError: invalid literal for float(): 0.0" below I suspect the errors are related. (A hint is that the problem goes away if I change the regional settings to decimal . in the control panel.) >>> Exception in Tkinter callback Traceback (innermost last): File "C:\Program\Python\Lib\lib-tk\Tkinter.py", line 764, in __call__ return apply(self.func, args) File "C:\Program\Python\Tools\idle\EditorWindow.py", line 355, in open_class_browser ClassBrowser.ClassBrowser(self.flist, base, [head]) File "C:\Program\Python\Tools\idle\ClassBrowser.py", line 37, in __init__ self.init(flist) File "C:\Program\Python\Tools\idle\ClassBrowser.py", line 59, in init node.expand() File "C:\Program\Python\Tools\idle\TreeWidget.py", line 133, in expand self.view() File "C:\Program\Python\Tools\idle\TreeWidget.py", line 144, in view visible_top = self.canvas.canvasy(0) File "C:\Program\Python\Lib\lib-tk\Tkinter.py", line 1200, in canvasy return getdouble(self.tk.call( ValueError: invalid literal for float(): 0.0 ==================================================================== Audit trail: Mon May 22 17:17:16 2000 guido changed notes Mon May 22 17:17:16 2000 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:39 By: none Comment: Bizarrely, his locale affects Python number parsing. Can't reproduce this. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110860&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:40 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:40 -0700 Subject: [Python-bugs-list] [Bug #112786] Build under Cygwin fails Message-ID: <200009072204.PAA29028@bush.i.sourceforge.net> Bug #112786, was updated on 2000-Aug-26 01:39 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Build under Cygwin fails Details: Py1.6b1 ======== 1) socketmodule.c -- looks for netinet/tcp.h, which does not exist on cygwin. 2) gcc python.o \ ../libpython1.6.a -lm -o python python.o: In function `main': /usr/local/bin/Python-1.6b1/Modules/python.c:12: undefined reference to `Py_Main Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112786&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:04:46 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:04:46 -0700 Subject: [Python-bugs-list] [Bug #113803] [2.0b1 NT4.0] printing non asci char causes idle to abort Message-ID: <200009072204.PAA29039@bush.i.sourceforge.net> Bug #113803, was updated on 2000-Sep-07 08:33 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 5 Summary: [2.0b1 NT4.0] printing non asci char causes idle to abort Details: try: alef = u'\u05d0' print alef.encode('utf-8') any enter after the last statement will cause idle to abort on 'bare' python this does not cause any problem. [tebeka@lycosmail.com] Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113803&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:10 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:10 -0700 Subject: [Python-bugs-list] [Bug #110618] IDLE: Modifying argv prevents source of ~/.idle.py (PR#219) Message-ID: <200009072205.PAA29058@bush.i.sourceforge.net> Bug #110618, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 3 Summary: IDLE: Modifying argv prevents source of ~/.idle.py (PR#219) Details: Jitterbug-Id: 219 Submitted-By: aa8vb@yahoo.com Date: Mon, 28 Feb 2000 07:49:55 -0500 (EST) Version: 1.5.2 OS: IRIX 6.5.6f (Two problems leading up to allowing IDLE to read color settings from ~/.idle.py. They're separate problems so I'll put each in separate bug reports.) As Bernhard Herzog recently pointed out, Tkinter apps try to load ..tcl, ..py, ..tcl and ..py out of a user's home directory, if present. defaults to "Tk" and defaults to the base of argv[0] (e.g. "idle"). With these reasonable defaults, one would expect they could create a ~/.idle.py which IDLE would read for configuration info. However, Tkinter "won't" try to read ~/.idle.py unless -e is specified. This is because IDLE is hacking up sys.argv for some reason when -e isn't specified, which results in sys.argv[0] being empty, which prevents baseName from being set, which in turn causes Tkinter to look for these files: ~/.Tk.tcl ~/.Tk.py ~/..tcl ~/..py instead of: ~/.Tk.tcl ~/.Tk.py ~/.idle.tcl ~/.idle.py Seeing this, I verified that IDLE does indeed read ~/.idle.py when invoked as "idle.py -e". This appears to be a bug. If so, please update IDLE so that argv[0] is left unadulterated at least until Tkinter is initialized, so that it can read ~/..py for configuration. Also, it might be worthwhile to set the className (argument to Tk()) to "Idle" or "IDLE" so an IDLE configuration file can be created which will be executed independent of what the idle script itself is named. ==================================================================== Audit trail: Tue Mar 07 14:38:27 2000 guido changed notes Tue Mar 07 14:38:27 2000 guido changed notification Tue Mar 07 14:38:27 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110618&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:29 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:29 -0700 Subject: [Python-bugs-list] [Bug #110859] Environment dependency in re parser (PR#290) Message-ID: <200009072205.PAA29099@bush.i.sourceforge.net> Bug #110859, was updated on 2000-Aug-01 14:38 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Not a Bug Priority: 3 Summary: Environment dependency in re parser (PR#290) Details: Jitterbug-Id: 290 Submitted-By: nmm1@cam.ac.uk Date: Wed, 12 Apr 2000 07:44:54 -0400 (EDT) Version: 1.5.2 OS: Irix 6.5 The following code works perfectly when used interactively: from re import match if match(r'"([^\"]|\?""|\\?)*"','"abc"') : print "Hello" When run non-interactively (e.g. 'python junk.py'), it fails: File "junk.py", line 3, in ? if match(r'"([^\"]|\?""|\\?)*"','"abc"') : File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 40, in match return _cachecompile(pattern, flags).match(string) File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 33, in _cachecompile value = compile(pattern, flags) File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 79, in compile code=pcre_compile(pattern, flags, groupindex) pcre.error: ('operand of unlimited repeat could match the empty string', 17) ==================================================================== Audit trail: Tue Jul 11 08:29:16 2000 guido moved from incoming to open Thu Jul 13 20:37:02 2000 fdrake changed notes Thu Jul 13 20:37:02 2000 fdrake moved from open to irreproducible Follow-Ups: Date: 2000-Aug-01 14:38 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] Environment dependency in re parser (PR#290) Date: Wed, 12 Apr 2000 22:30:46 -0400 > Full_Name: Nick Maclaren > Version: 1.5.2 > OS: Irix 6.5 > Submission from: posh.mcc.wwwcache.ja.net (194.83.240.29) > > > The following code works perfectly when used interactively: > > from re import match > > if match(r'"([^\"]|\?""|\\?)*"','"abc"') : > print "Hello" > > When run non-interactively (e.g. 'python junk.py'), it fails: > > File "junk.py", line 3, in ? > if match(r'"([^\"]|\?""|\\?)*"','"abc"') : > File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 40, in match > return _cachecompile(pattern, flags).match(string) > File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 33, in > _cachecompile > value = compile(pattern, flags) > File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 79, in compile > code=pcre_compile(pattern, flags, groupindex) > pcre.error: ('operand of unlimited repeat could match the empty > string', 17) It yields the same error for me whether run interactively or from file, under the released 1.5.2 for Windows, here run from a DOS box: D:\Python>python Python 1.5.42 (#0, Jan 31 2000, 14:05:14) [MSC 32 bit (Intel)] on win32 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> from re import match >>> if match(r'"([^\"]|\?""|\\?)*"','"abc"') : ... print "Hello" ... Traceback (innermost last): File "", line 1, in ? File "D:\Python\Lib\re.py", line 40, in match return _cachecompile(pattern, flags).match(string) File "D:\Python\Lib\re.py", line 33, in _cachecompile value = compile(pattern, flags) File "D:\Python\Lib\re.py", line 79, in compile code=pcre_compile(pattern, flags, groupindex) pcre.error: ('operand of unlimited repeat could match the empty string', 17) >>> The error msg is appropriate, since the third branch of the alternative matches 0 or 1 backslashes, so the alternative as a whole can match the empty string -- the error msg means exactly what it says. This is functioning correctly as designed. Perhaps you're using an interactive shell with a filter (readline?) that's chewing up some of the backslashes itself? ------------------------------------------------------- Date: 2000-Aug-01 14:38 By: none Comment: Something from outside of Python appears to causing this. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110859&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:37 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:37 -0700 Subject: [Python-bugs-list] [Bug #113797] Build problems on Reliant Unix Message-ID: <200009072205.PAA29114@bush.i.sourceforge.net> Bug #113797, was updated on 2000-Sep-07 07:33 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Build problems on Reliant Unix Details: - the linker requires the options '-W1 -Blargedynsym', otherwise, Python's global functions and variables are not visible to external modules - when building --with-threads, the linker requires the option -Kpthread - mmapmodule.o requires a special library Python version: 2.0b1 compiler version:CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 Follow-Ups: Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113797&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:37 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:37 -0700 Subject: [Python-bugs-list] [Bug #110826] WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Message-ID: <200009072206.PAA29152@bush.i.sourceforge.net> Bug #110826, was updated on 2000-Aug-01 14:11 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Details: Jitterbug-Id: 136 Submitted-By: Randall Hopper Date: Wed, 24 Nov 1999 09:51:10 -0500 Version: None OS: None Just tried to submit this via the web interface which has worked in the past. This time, I got: The system encountered a fatal error After command: Received: The last error code was: Connection refused This was a non-private bug report, as usual. Anyway, here's the bug report: ============================================================================== aa8vb@yahoo.com Python mymalloc.h; not C++ compatible Randall Hopper 1.5.2 IRIX 6.5 Private: NO I hit a problem trying to compile wxPython on IRIX 6.5. The issue is NULL should be "0" when compiling for C++. The IRIX headers define it this way. The Python mymalloc.h header doesn't. A work-around is to require clients to include stdio.h before including any Python header files, but this is a hack. Here's a snip from a recent Python post I made with a proposed fix: ------------------------------------------------------------------------------ ...After a bit of grepping, the culprit seems to be Python (1.5.2): /usr/local/include/python1.5/mymalloc.h: #ifndef NULL #define NULL ((ANY *)0) #endif ... It appears to me that the right fix is for Python's mymalloc.h, if it must define NULL (does it?), be updated to be more C++ friendly. E.g.: #ifndef NULL # ifdef __cplusplus # define NULL 0 # else # define NULL ((ANY *)0) # endif #endif I'm assuming there's some reason we can't just #include from mymalloc.h (?) ------------------------------------------------------------------------------ Thanks, Randall ==================================================================== Audit trail: Fri Dec 03 10:32:05 1999 guido sent reply 1 Fri Dec 03 10:32:19 1999 guido changed notes Fri Dec 03 10:32:20 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:11 By: none Comment: From: Guido van Rossum Subject: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Date: Fri Dec 3 10:32:05 1999 > I hit a problem trying to compile wxPython on IRIX 6.5. The issue is NULL > should be "0" when compiling for C++. The IRIX headers define it this way. > The Python mymalloc.h header doesn't. A work-around is to require clients > to include stdio.h before including any Python header files, but this is a > hack. Why is wxPython using mymalloc.h directly? It should use Python.h, which *does* include stdio.h first. ------------------------------------------------------- Date: 2000-Aug-01 14:11 By: none Comment: From: "Robin Dunn" Subject: Re: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Date: Wed, 8 Dec 1999 12:03:08 -0800 > ----- Forwarded message from Guido van Rossum ----- > > Date: Fri, 3 Dec 1999 10:32:03 -0500 (EST) > From: Guido van Rossum > Subject: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) > > > I hit a problem trying to compile wxPython on IRIX 6.5. The issue is NULL > > should be "0" when compiling for C++. The IRIX headers define it this way. > > The Python mymalloc.h header doesn't. A work-around is to require clients > > to include stdio.h before including any Python header files, but this is a > > hack. > > Why is wxPython using mymalloc.h directly? It should use Python.h, > which *does* include stdio.h first. > > > ----- End forwarded message ----- > wxPython does use Python.h and if I remember correctly, moving it to be the first #include (to ensure that none of the wx or my headers were screwing things up) didn't help Randall at all. He had to put an #include before it. -- Robin Dunn Software Craftsman robin@AllDunn.com http://AllDunn.com/robin/ http://AllDunn.com/wxPython/ Check it out! ------------------------------------------------------- Date: 2000-Aug-01 14:11 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Re: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Date: Wed, 08 Dec 1999 17:04:30 -0500 > > ----- Forwarded message from Guido van Rossum ----- > > > > Date: Fri, 3 Dec 1999 10:32:03 -0500 (EST) > > From: Guido van Rossum > > Subject: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" > (PR#136) > > > > > I hit a problem trying to compile wxPython on IRIX 6.5. The issue is > NULL > > > should be "0" when compiling for C++. The IRIX headers define it this > way. > > > The Python mymalloc.h header doesn't. A work-around is to require > clients > > > to include stdio.h before including any Python header files, but this is > a > > > hack. > > > > Why is wxPython using mymalloc.h directly? It should use Python.h, > > which *does* include stdio.h first. > > > > > > ----- End forwarded message ----- > > > > wxPython does use Python.h and if I remember correctly, moving it to be the > first #include (to ensure that none of the wx or my headers were screwing > things up) didn't help Randall at all. He had to put an #include > before it. Strange. I don't have your source so there's no point arguing about it here. Python.h definitely includes before including "mymalloc.h". At least in 1.5(.x), I haven't checked older versions. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:11 By: none Comment: Maybe, maybe not. ------------------------------------------------------- Date: 2000-Aug-06 10:33 By: twouters Comment: Looks like a "won't fix" to me, unless there is a good reason not to include Python.h. If you start including other python header files, you better know damn well what you're doing, and include the necessary files beforehand, yourself. But that's just me. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110826&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:22 -0700 Subject: [Python-bugs-list] [Bug #110617] IDLE and -t (PR#213) Message-ID: <200009072206.PAA29123@bush.i.sourceforge.net> Bug #110617, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 3 Summary: IDLE and -t (PR#213) Details: Jitterbug-Id: 213 Submitted-By: aa8vb@yahoo.com Date: Fri, 25 Feb 2000 07:36:01 -0500 (EST) Version: 1.5.2 (w/ IDLE 0.5) OS: IRIX Since no other X app I know of works this way, I think this is a bug. If you set the title of the IDLE window: idle.py -t IDLE the title is set correctly, but the icon name is not. It is set to "*IDLE" rather than "IDLE". ==================================================================== Audit trail: Tue Mar 07 14:41:55 2000 guido changed notes Tue Mar 07 14:41:55 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Fri, 25 Feb 2000 08:26:32 -0500 > Since no other X app I know of works this way, I think this is a bug. > > If you set the title of the IDLE window: > > idle.py -t IDLE > > the title is set correctly, but the icon name is not. > It is set to "*IDLE" rather than "IDLE". Not a bug -- IDLE adds * before (and after!) the window title and icon name to indicate that the window is modified and unsaved. Does this bother you in some way? --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 28 Feb 2000 07:25:31 -0500 Guido van Rossum: |> Since no other X app I know of works this way, I think this is a bug. |> |> If you set the title of the IDLE window: |> |> idle.py -t IDLE |> |> the title is set correctly, but the icon name is not. |> It is set to "*IDLE" rather than "IDLE". | |Not a bug -- IDLE adds * before (and after!) the window title and |icon name to indicate that the window is modified and unsaved. The icon name doesn't follow this convention: if not self.get_saved(): title = "*%s*" % title icon = "*%s" % icon The reason I took note of this inconsistency is that I was assigning a window manager icon to IDLE based on the startup icon string. |Does this bother you in some way? Well, no other X app I know of communicates unsaved status by putting '*'s in the title and icon, but I don't have a big problem with it. I do think the icon should have a '*' both before "and after", as you described though. I'm guessing this was just a typo. Thanks, Randall -- Randall Hopper aa8vb@yahoo.com ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 28 Feb 2000 08:16:48 -0500 > |Not a bug -- IDLE adds * before (and after!) the window title and > |icon name to indicate that the window is modified and unsaved. > > The icon name doesn't follow this convention: > > if not self.get_saved(): > title = "*%s*" % title > icon = "*%s" % icon > > The reason I took note of this inconsistency is that I was assigning a > window manager icon to IDLE based on the startup icon string. > > |Does this bother you in some way? > > Well, no other X app I know of communicates unsaved status by putting '*'s > in the title and icon, but I don't have a big problem with it. Hm, I have to admit that I have given up years ago on configuring X apps through their app name. Is that still a common practice? I could certainly change things around so that the title and icon are always "idle: *file*" or "idle: file" depending on saved status. > I do think the icon should have a '*' both before "and after", as you > described though. I'm guessing this was just a typo. I think it was intentional, trying to save some space in the icon label. Not worth it, probably. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Tue, 29 Feb 2000 14:26:37 -0500 --oyUTqETQ0mS9luUI Content-Type: text/plain; charset=us-ascii Guido van Rossum: |Hm, I have to admit that I have given up years ago on configuring X |apps through their app name. Is that still a common practice? I could Definitely. Most all (all?) use WM_CLASS, and many use WM_NAME and WM_ICONNAME as fallbacks. This is useful if WM_CLASS isn't set to a useful value (as in this case). IDLE doesn't set a class name property on it's window, so the window name and icon name are all the window manager has to go on when matching it up with configuration settings. However, I believe IDLE could set a class name easily by passing it to Tkinter -- e.g. root = Tk( className="IDLE" ). See attached. More info: the properties used by many window managers as a key into a configuration database are: CLASS, NAME, and ICON_NAME. For example, running 'xprop' on my xterm window here: > xprop ... WM_CLASS(STRING) = "xterm-color", "XTerm" ... WM_ICON_NAME(STRING) = "Local" WM_NAME(STRING) = "Local" So I can set window manager resources for this window using "XTerm", "xterm-color", or "Local" -- with overrides in that order I believe. So I can have a default icon for xterms, and then an override icon for xterm windows with a certain title. IDLE doesn't set CLASS so it's basically useless for this configuration purpose. On stock IDLE: WM_CLASS(STRING) = "270515832", "Toplevel" |certainly change things around so that the title and icon are always "idle: |*file*" or "idle: file" depending on saved status. If IDLE could set WM_CLASS to a static (or cmd-line-specified) value on it's shell windows, that'd be enough for me. For now I'm using -t IDLE, but that doesn't cover opening new windows inside of IDLE (opening files, File->New Window, etc.) A unique prefix on the WM_NAME (title string) would work too. |> I do think the icon should have a '*' both before "and after", as you |> described though. I'm guessing this was just a typo. | |I think it was intentional, trying to save some space in the icon |label. Not worth it, probably. Thanks, Randall -- Randall Hopper aa8vb@yahoo.com --oyUTqETQ0mS9luUI Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="tk.py" from Tkinter import * root = Tk( className="Test" ) btn = Button( root ) btn.pack() root.mainloop() --oyUTqETQ0mS9luUI-- ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Wed, 01 Mar 2000 09:21:41 -0500 Randall, Thanks for your enlightenment. I looked at your example, and it works; but I need more, because IDLE creates windows using Toplevel(), not using Tk(). (Using Tk() would create a new Tcl interpreter for each window, which wastes time and memory resources, and re-reads the ~/..py file each time.) I've experimented with xprop a bit, and I'm not getting results I like. If I write root = Tk(className="foo"), WM_CLASS is "foo", "Foo". Them if I write top = Toplevel(root), WM_CLASS for that window is "1234567", "Toplevel". If I try top = Toplevel(root, name="bar"), I get "bar", "Toplevel". Shouldn't I be able to set the second component of WM_CLASS somehow? Got any ideas? If you can send me a patch, that would be greatly appreciated! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 6 Mar 2000 08:50:29 -0500 --MGYHOYXEY6WxJCY8 Content-Type: text/plain; charset=us-ascii Guido van Rossum: |Thanks for your enlightenment. I looked at your example, and it |works; but I need more, because IDLE creates windows using Toplevel(), |not using Tk(). (Using Tk() would create a new Tcl interpreter for |each window, which wastes time and memory resources, and re-reads the |~/..py file each time.) | |I've experimented with xprop a bit, and I'm not getting results I |like. If I write root = Tk(className="foo"), WM_CLASS is "foo", |"Foo". Them if I write top = Toplevel(root), WM_CLASS for that window |is "1234567", "Toplevel". If I try top = Toplevel(root, name="bar"), |I get "bar", "Toplevel". Shouldn't I be able to set the second |component of WM_CLASS somehow? | |Got any ideas? Sorry about that last message. This issue is very closely related to the resource loading issue on idle-dev, but not the same. Once the small change below is in-place (to solve this problem), the platform-independent Tkinter methods for resource loading can be used to solve the idle-dev problem, if desired. Research indicates that the Tk-ism for setting Toplevel classes is: "toplevel .mytop -class classname" So the Tkinter syntax is: top1 = Toplevel( root, class_=classname ) The attached test app demonstrates this. I verified that I am able to set X resources for these windows using the class name "Idle". -- Randall Hopper aa8vb@yahoo.com --MGYHOYXEY6WxJCY8 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="tk_class.py" from Tkinter import * CLASSNAME = "Idle" root = Tk( className=CLASSNAME ) root.wm_withdraw() # A toplevel with a WM_CLASS top1 = Toplevel( root, class_=CLASSNAME ) label1 = Label( top1, text="Toplevel 1" ) label1.pack() # Another one top2 = Toplevel( root, class_=CLASSNAME ) label2 = Label( top2, text="Toplevel 2" ) label2.pack() root.mainloop() --MGYHOYXEY6WxJCY8-- ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 06 Mar 2000 09:11:30 -0500 > Sorry about that last message. This issue is very closely related to the > resource loading issue on idle-dev, but not the same. Once the small > change below is in-place (to solve this problem), the platform-independent > Tkinter methods for resource loading can be used to solve the idle-dev > problem, if desired. See my response in idle-dev :-) Of course the Tk options can still be used for changing things that the config file or prefs dialog doesn't support. > Research indicates that the Tk-ism for setting Toplevel classes is: > > "toplevel .mytop -class classname" > > So the Tkinter syntax is: > > top1 = Toplevel( root, class_=classname ) > > The attached test app demonstrates this. I verified that I am able to set > X resources for these windows using the class name "Idle". OK, I'll try to support this! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110617&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:23 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:23 -0700 Subject: [Python-bugs-list] [Bug #110647] Segmentation violation on very long lists (PR#334) Message-ID: <200009072206.PAA29127@bush.i.sourceforge.net> Bug #110647, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: Later Bug Group: None Priority: 3 Summary: Segmentation violation on very long lists (PR#334) Details: Jitterbug-Id: 334 Submitted-By: haase@media.mit.edu Date: Sat, 20 May 2000 20:08:00 -0400 (EDT) Version: Both Python 1.5.2 and 1.6a2 OS: SUSE Linux Loading a .py file which attempts to define a very long list causes a segmentation violation. An example file can be found at ftp:/pub/haase/todo.py, but I expect that most any long file defining a long list (20K elements) would do. Thanks, Ken Haase ==================================================================== Audit trail: Mon May 22 17:08:11 2000 guido changed notes Mon May 22 17:08:11 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:10 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Segmentation violation on very long lists (PR#334) Date: Sun, 21 May 2000 12:12:22 -0700 > Loading a .py file which attempts to define a very long list causes > a segmentation violation. An example file can be found at > ftp:/pub/haase/todo.py, but I expect that most any long file defining a long > list (20K elements) would do. Thanks -- this is a known problem, it probably has to do with bytecode field overflow (offsets are signed shorts). --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 15:54 By: jhylton Comment: Currently raises SyntaxError. A better fix is in progress. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110647&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:11 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:11 -0700 Subject: [Python-bugs-list] [Bug #110650] python with-threads core-dumps (PR#342) Message-ID: <200009072205.PAA29063@bush.i.sourceforge.net> Bug #110650, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: python with-threads core-dumps (PR#342) Details: Jitterbug-Id: 342 Submitted-By: michael.exner@mrz.uni-magdeburg.de Date: Wed, 31 May 2000 09:43:38 -0400 (EDT) Version: 1.5.2 OS: hpux-11.00 When I compile python with threads python core-dumps: $ ./python pthread_mutex_init: Invalid argument Memory fault(coredump) without thread-support everything works fine I tried this with hpux-ansi-c and with gcc (2.95.2) but got the same result ==================================================================== Audit trail: Tue Jul 11 08:25:57 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-28 20:43 By: tim_one Comment: Note that the only call to pthread_mutex_init Python makes is in function PyThread_allocate_lock in file phread_pthread.h. If Python compiled at all, it's extremely unlikely that the first argument is in error. It's very likely that the second argument is in error, though: there were many imcompatible revisions of the pthreads std, and pthread_mutexattr_default is a macro conditionally defined near the top of the file. If this OS actually support pthreads, you have to figure out which *version* of pthreads it defines and arrange for config to define the *correct* one of the PY_PTHREAD_D4 PY_PTHREAD_D7 PY_PTHREAD_STD PY_PTHREAD_D6 symbols for your platform. Else disable threads entirely. ------------------------------------------------------- Date: 2000-Aug-29 07:34 By: memaul Comment: Goto link below for instructions and patches for building python 152 with threads on hpux 10.20 http://memaul.tripod.com/index.html ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110650&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:12 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:12 -0700 Subject: [Python-bugs-list] [Bug #110665] Compiling python on hpux 11.00 with threads (PR#360) Message-ID: <200009072205.PAA29067@bush.i.sourceforge.net> Bug #110665, was updated on 2000-Jul-31 14:12 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Compiling python on hpux 11.00 with threads (PR#360) Details: Jitterbug-Id: 360 Submitted-By: philipp.jocham@salomon.at Date: Fri, 16 Jun 2000 08:47:06 -0400 (EDT) Version: 1.5.2 OS: HP-UX 11.00 There are two missing details in the configure process to make this work out of the box. First: The function pthread_create isn't found in library libpthread.a but in libcma.a, because pthread_create is just a macro in sys/pthread.h pointing to __pthread_create_system After patching ./configure directly and running ./configure --with-thread (now detecting the correct library /usr/lib/libpthread.a) I also added -lcl to Modules/Makefile at LIBS= -lnet -lnsl -ldld -lpthread -lcl otherwise importing of modules with threads didn't work (in this case oci_.sl from DCOracle). I'm not sure about the correct syntax or wether it's the correct place and method, but I would suggest a solution like the following code snippet. [...] AC_MSG_CHECKING(for --with-thread) [...] AC_DEFINE(_POSIX_THREADS) LIBS="$LIBS -lpthread -lcl" LIBOBJS="$LIBOBJS thread.o"], [ AC_CHECK_LIB(pthread, __pthread_create_system, [AC_DEFINE(WITH_THREAD) [...] I hope this helps to make installation process smoother. Fell free to contact me, if there are further questions. Philipp -- I confirm that, to the best of my knowledge and belief, this contribution is free of any claims of third parties under copyright, patent or other rights or interests ("claims"). To the extent that I have any such claims, I hereby grant to CNRI a nonexclusive, irrevocable, royalty-free, worldwide license to reproduce, distribute, perform and/or display publicly, prepare derivative versions, and otherwise use this contribution as part of the Python software and its related documentation, or any derivative versions thereof, at no cost to CNRI or its licensed users, and to authorize others to do so. I acknowledge that CNRI may, at its sole discretion, decide whether or not to incorporate this contribution in the Python software and its related documentation. I further grant CNRI permission to use my name and other identifying information provided to CNRI by me for use in connection with the Python software and its related documentation. ==================================================================== Audit trail: Tue Jul 11 08:26:01 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110665&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:12 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:12 -0700 Subject: [Python-bugs-list] [Bug #110683] can't compile with SSL support on WinNT (PR#403) Message-ID: <200009072205.PAA29071@bush.i.sourceforge.net> Bug #110683, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: None Priority: 6 Summary: can't compile with SSL support on WinNT (PR#403) Details: Jitterbug-Id: 403 Submitted-By: falk.lehmann@gmx.net Date: Mon, 17 Jul 2000 21:59:56 -0400 (EDT) Version: 1.6a2 OS: WinNT 4.0 I tried to compile Python 1.6a2 on a WinNT box using VC++ 6.00. The compiler stops with some warnings and an error message: K:\Projects\Python-1.6a2\Modules\socketmodule.c(2081) : error C2099: initializer is not a constant K:\Projects\Python-1.6a2\Modules\socketmodule.c(1947) : warning C4047: 'function' : 'int ' differs in levels of indirection from 'void *' K:\Projects\Python-1.6a2\Modules\socketmodule.c(1947) : warning C4024: 'memset' : different types for formal and actual parameter 2 K:\Projects\Python-1.6a2\Modules\socketmodule.c(1948) : warning C4047: 'function' : 'int ' differs in levels of indirection from 'void *' K:\Projects\Python-1.6a2\Modules\socketmodule.c(1948) : warning C4024: 'memset' : different types for formal and actual parameter 2 K:\Projects\Python-1.6a2\Modules\socketmodule.c(1933) : warning C4101: 'str' : unreferenced local variable K:\Projects\Python-1.6a2\Modules\socketmodule.c(2083) : warning C4047: 'initializing' : 'int ' differs in levels of indirection from 'char [4]' K:\Projects\Python-1.6a2\Modules\socketmodule.c(2084) : warning C4047: 'initializing' : 'char *' differs in levels of indirection from 'unsigned int ' K:\Projects\Python-1.6a2\Modules\socketmodule.c(2087) : warning C4047: 'initializing' : 'int ' differs in levels of indirection from 'void (__cdecl *)(struct _object *)' K:\Projects\Python-1.6a2\Modules\socketmodule.c(2089) : warning C4047: 'initializing' : 'int (__cdecl *)(struct _object *,struct _iobuf *,int )' differs in levels of indirection from 'struct _object *(__cdecl *)(struct _object *,char *)' Thanks in advance for fixing (at least the error). Falk ==================================================================== Audit trail: Tue Jul 25 07:25:55 2000 guido changed notes Tue Jul 25 07:25:55 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] compiling on WinNT (PR#403) Date: Mon, 24 Jul 2000 11:35:24 -0500 > I tried to compile Python 1.6a2 on a WinNT box using VC++ 6.00. Please try the current CVS tree (on its way to 2.0); we have no problems compiling this on VC 6.0. --Guido van Rossum (home page: http://dinsdale.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: From: Falk Lehmann Subject: Re: [Python-bugs-list] compiling on WinNT (PR#403) Date: Mon, 24 Jul 2000 13:46:45 -0500 [magical fwd by GvR] Guido, sorry, but forgot to write, that I switched on the USE_SSL macro. And then the _socket module does not compile. Falk > > I tried to compile Python 1.6a2 on a WinNT box using VC++ 6.00. > > Please try the current CVS tree (on its way to 2.0); we have no > problems compiling this on VC 6.0. > > --Guido van Rossum (home page: http://dinsdale.python.org/~guido/) > ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] compiling on WinNT (PR#403) Date: Mon, 24 Jul 2000 14:00:20 -0500 > sorry, but forgot to write, that I switched on the USE_SSL macro. > And then the _socket module does not compile. It appears that the Python SSL code hasn't been ported to Windows. We'll add this to our TODO list, but it's low priority... Perhaps you could give it a shot yourself? See www.python.org/patches/ for how to contribute. --Guido van Rossum (home page: http://dinsdale.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: Windows compile fails when using openSSL. ------------------------------------------------------- Date: 2000-Aug-23 10:35 By: jhylton Comment: This is a bug. Standard extensions modules should compile, even on obscure platforms like Windows NT. Need a Windows user with time to install OpenSSL to fix this. ------------------------------------------------------- Date: 2000-Aug-30 12:01 By: gvanrossum Comment: Let's not worry about this for 2.0. While the OpenSSL support is part of the socket module, we don't have the resources right now to port that support to Windows. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110683&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:24 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:24 -0700 Subject: [Python-bugs-list] [Bug #110660] IDLE-0.5 ctrl-F5 (PR#355) Message-ID: <200009072206.PAA29131@bush.i.sourceforge.net> Bug #110660, was updated on 2000-Jul-31 14:11 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 3 Summary: IDLE-0.5 ctrl-F5 (PR#355) Details: Jitterbug-Id: 355 Submitted-By: gpk@bell-labs.com Date: Tue, 13 Jun 2000 11:30:14 -0400 (EDT) Version: yesterday's CVS OS: Solaris 2.6 If you type ctrl-f5 to run a script twice in sucession, IDLE will incorrectly pop up a window saying "Not Saved. Please Save First." If you save (even though you haven't changed anything, and even though there are no asterisks around the window title), then ctrl-f5 will work again. This *doesn't* happen if you run the script twice in succession from the menu. ==================================================================== Audit trail: Tue Jul 11 08:26:00 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 13 Jun 2000 11:55:09 -0400 Pretty mysterious! Doesn't happen under IDLE 0.5 for me. Running under Windows, but darned hard to see why that would matter. Can anyone else try this under Solaris 2.6? May have something to do with the specific script you're running, Greg; e.g., does it happen if the script file contains just print "Hi!" ? > -----Original Message----- > From: python-bugs-list-admin@python.org > [mailto:python-bugs-list-admin@python.org]On Behalf Of gpk@bell-labs.com > Sent: Tuesday, June 13, 2000 11:30 AM > To: python-bugs-list@python.org > Cc: bugs-py@python.org > Subject: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) > > > Full_Name: Greg Kochanski > Version: yesterday's CVS > OS: Solaris 2.6 > Submission from: h-135-104-33-130.research.bell-labs.com (135.104.33.130) > > > If you type ctrl-f5 to run a script twice in sucession, > IDLE will incorrectly pop up a window saying > "Not Saved. Please Save First." > > If you save (even though you haven't changed anything, > and even though there are no asterisks around the window > title), then ctrl-f5 will work again. > > This *doesn't* happen if you run the script twice in > succession from the menu. > > > > _______________________________________________ > Python-bugs-list maillist - Python-bugs-list@python.org > http://www.python.org/mailman/listinfo/python-bugs-list > ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 16:42:57 -0500 I think I understand this. It's happened to me too. Pressing ^F5 changes the focus to the PyShell window. Pressing ^F5 again then indeed complains about that window being unsaved. --Guido van Rossum (home page: http://www.python.org/~guido/) [Tim] > Pretty mysterious! Doesn't happen under IDLE 0.5 for me. Running under > Windows, but darned hard to see why that would matter. Can anyone else try > this under Solaris 2.6? May have something to do with the specific script > you're running, Greg; e.g., does it happen if the script file contains just > > print "Hi!" > > ? > > > -----Original Message----- > > From: python-bugs-list-admin@python.org > > [mailto:python-bugs-list-admin@python.org]On Behalf Of gpk@bell-labs.com > > Sent: Tuesday, June 13, 2000 11:30 AM > > To: python-bugs-list@python.org > > Cc: bugs-py@python.org > > Subject: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) > > > > > > Full_Name: Greg Kochanski > > Version: yesterday's CVS > > OS: Solaris 2.6 > > Submission from: h-135-104-33-130.research.bell-labs.com (135.104.33.130) > > > > > > If you type ctrl-f5 to run a script twice in sucession, > > IDLE will incorrectly pop up a window saying > > "Not Saved. Please Save First." > > > > If you save (even though you haven't changed anything, > > and even though there are no asterisks around the window > > title), then ctrl-f5 will work again. > > > > This *doesn't* happen if you run the script twice in > > succession from the menu. > > > > > > > > _______________________________________________ > > Python-bugs-list maillist - Python-bugs-list@python.org > > http://www.python.org/mailman/listinfo/python-bugs-list > > > > > > _______________________________________________ > Python-bugs-list maillist - Python-bugs-list@python.org > http://www.python.org/mailman/listinfo/python-bugs-list ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Greg Kochanski Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 17:25:37 -0400 Guido van Rossum wrote: > > I think I understand this. It's happened to me too. Pressing ^F5 > changes the focus to the PyShell window. Pressing ^F5 again then > indeed complains about that window being unsaved. > > --Guido van Rossum (home page: http://www.python.org/~guido/) Ah. Sure enough. Perhaps the best thing to do is just to have the little error message explain which window is unsaved. Include the title of the unsaved window in the error box, maybe. I'd be happy to send a patch, but the paperwork would be terrible... ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 18:10:35 -0500 > > I think I understand this. It's happened to me too. Pressing ^F5 > > changes the focus to the PyShell window. Pressing ^F5 again then > > indeed complains about that window being unsaved. > > > > --Guido van Rossum (home page: http://www.python.org/~guido/) > > Ah. Sure enough. Perhaps the best thing to do > is just to have the little error message explain > which window is unsaved. Include the title > of the unsaved window in the error box, maybe. > > I'd be happy to send a patch, but the paperwork > would be terrible... No need for paperwork, just the disclaimer text. But I think the better patch would be to make PyShell a special case and make it rerun the last window that had the focus. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110660&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:25 -0700 Subject: [Python-bugs-list] [Bug #110679] profile.py: self-profiling bug (PR#394) Message-ID: <200009072206.PAA29135@bush.i.sourceforge.net> Bug #110679, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: profile.py: self-profiling bug (PR#394) Details: Jitterbug-Id: 394 Submitted-By: akuchlin@mems-exchange.org Date: Fri, 7 Jul 2000 09:03:04 -0400 (EDT) Version: 2.0cvs OS: Reported by jtravis@cse.unl.edu (Jon Travis) in comp.lang.python: There is a small bug while running some of the profiling code from within the profiler. Specifically: import profile x = profile.Profile() x.run("x.dump_stats('/tmp/foo')") Traceback (most recent call last): File "", line 1, in ? File "./Lib/profile.py", line 347, in run return self.runctx(cmd, dict, dict) File "./Lib/profile.py", line 353, in runctx exec cmd in globals, locals File "", line 1, in ? File "./Lib/profile.py", line 322, in dump_stats self.create_stats() File "./Lib/profile.py", line 327, in create_stats self.simulate_cmd_complete() File "./Lib/profile.py", line 312, in simulate_cmd_complete self.t = self.get_time() - t File "./Lib/profile.py", line 191, in trace_dispatch_i if self.dispatch[event](frame,t): File "./Lib/profile.py", line 248, in trace_dispatch_return pt, ptt, pct, pfn, pframe, pcur = rcur TypeError: unpack non-sequence I have a small 2 liner fix, but I doubt it is correct, merely a band-aid, so I won't post it. -- Jon ==================================================================== Audit trail: Tue Jul 11 08:24:32 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110679&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:26 -0700 Subject: [Python-bugs-list] [Bug #110688] Reuben Sumner: Py_REF_COUNT (PR#43) Message-ID: <200009072206.PAA29139@bush.i.sourceforge.net> Bug #110688, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 3 Summary: Reuben Sumner: Py_REF_COUNT (PR#43) Details: Jitterbug-Id: 43 Submitted-By: Guido van Rossum Date: Fri, 30 Jul 1999 13:52:16 -0400 Version: None OS: None ------- Forwarded Message Date: Tue, 20 Jul 1999 10:53:34 +0300 From: Reuben Sumner To: guido@python.org Subject: Py_REF_COUNT I posted a message through DejaNews which didn't seem to propogate (at least it didn't reach here). Try the following in a Python with Py_REF_DEBUG but without Py_TRACE_REFS class C: def __init__(self): pass while 1: c=C() Stop it after a while and look at the reference count printed! Python is not actually using all that memory though. With Py_TRACE_REFS things are ok. I can't figure it out. The class instance dealloc routine is rather hairy. With Py_TRACE_REFS some code of mine is doing some really bizarre things but I would rather deal with one thing at a time. Python version is 1.5.2 (tried on at least two platforms, both using gcc) Many thanks, Reuben ------- End of Forwarded Message ==================================================================== Audit trail: Wed Aug 04 12:12:39 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-28 11:52 By: jhylton Comment: This report is a bit too vague to be useful. I've queried the original poster to see if he is still having problems. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110688&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:30 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:30 -0700 Subject: [Python-bugs-list] [Bug #110698] strptime gives format mismatch when time zone present (PR#164) Message-ID: <200009072206.PAA29144@bush.i.sourceforge.net> Bug #110698, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: strptime gives format mismatch when time zone present (PR#164) Details: Jitterbug-Id: 164 Submitted-By: python-bugreport@derf.net Date: Tue, 21 Dec 1999 08:27:27 -0500 (EST) Version: 1.5.2 OS: RedHat 5.2; Linux 2.2.12 time.strptime() seems to fail when the time zone ('%Z') appears in the format string. when it is omitted from the format string (and from the string being parsed), strptime() works fine. here is a sample script which demonstrates the bug: ------ #!/usr/bin/python import time timetuple0 = time.localtime(time.time()) print timetuple0 format1 = '%a %b %d %H:%M:%S %Y' timestring1 = time.strftime( format1 , timetuple0 ) print timestring1 timetuple1 = time.strptime( timestring1 , format1 ) print timetuple1 format2 = '%a %b %d %H:%M:%S %Z %Y' timestring2 = time.strftime( format2 , timetuple0 ) print timestring2 timetuple2 = time.strptime( timestring2 , format2 ) print timetuple2 ------ when i run the above, i get the following output: ------ (1999, 12, 21, 5, 25, 35, 1, 355, 0) Tue Dec 21 05:25:35 1999 (1999, 12, 21, 5, 25, 35, 1, 355, 0) Tue Dec 21 05:25:35 PST 1999 Traceback (innermost last): File "./test.py", line 17, in ? timetuple2 = time.strptime( timestring2 , format2 ) ValueError: format mismatch ------ ==================================================================== Audit trail: Tue Dec 21 11:47:04 1999 guido changed notes Tue Dec 21 11:47:05 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] strptime gives format mismatch when time zone present (PR#164) Date: Tue, 21 Dec 1999 09:12:15 -0500 > time.strptime() seems to fail when the time zone ('%Z') appears in > the format string. when it is omitted from the format string (and > from the string being parsed), strptime() works fine. Reporting this as a Python bug is not going to fix it. The time.strptime() function in Python is a very thin wrapper around the strptime() function in the C library. We get a lot of complaints about this, but there's no way that we're able to fix this -- it's the C strptime() function that needs to be fixed. Write to your friendly Linux support people! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: The C library strptime() needs fixin'. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110698&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:33 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:33 -0700 Subject: [Python-bugs-list] [Bug #110706] Compile error (PR#44) Message-ID: <200009072206.PAA29148@bush.i.sourceforge.net> Bug #110706, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Compile error (PR#44) Details: Jitterbug-Id: 44 Submitted-By: rene@kronos.szabinet.hu Date: Sun, 1 Aug 1999 16:39:42 -0400 (EDT) Version: 1.5.2 OS: Linux Compile error with Python-1.5.2 on Linux Slackware 4.0, kernel 2.2.10-ac8, gcc 2.7.2.3, make 3.76.1 ./configure --prefix=/usr/local --with-threads && make ... ./socketmodule.c: In function `setipaddr': ./socketmodule.c:392: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type ./socketmodule.c:392: too many arguments to function `gethostbyname_r' ./socketmodule.c:392: warning: assignment makes integer from pointer without a cast ./socketmodule.c: In function `PySocket_gethostbyname_ex': ./socketmodule.c:1471: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type ./socketmodule.c:1471: too many arguments to function `gethostbyname_r' ./socketmodule.c:1471: warning: assignment makes integer from pointer without a cast ./socketmodule.c: In function `PySocket_gethostbyaddr': ./socketmodule.c:1534: warning: passing arg 7 of `gethostbyaddr_r' from incompatible pointer type ./socketmodule.c:1534: too many arguments to function `gethostbyaddr_r' ./socketmodule.c:1534: warning: assignment makes integer from pointer without a cast make[1]: *** [socketmodule.o] Error 1 make: *** [Modules] Error 2 ==================================================================== Audit trail: Wed Aug 04 12:12:39 1999 guido moved from incoming to platformbug Mon Aug 30 12:37:34 1999 guido changed notes Mon Oct 25 15:15:46 1999 guido changed notes Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110706&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:39 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:39 -0700 Subject: [Python-bugs-list] [Bug #110839] PRIVATE: CGIHTTPServer (PR#239) Message-ID: <200009072206.PAA29156@bush.i.sourceforge.net> Bug #110839, was updated on 2000-Aug-01 14:15 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Feature Request Priority: 3 Summary: PRIVATE: CGIHTTPServer (PR#239) Details: Jitterbug-Id: 239 Submitted-By: Michael_Frericks@informatik-kooperation.de Date: Fri, 17 Mar 2000 11:27:23 -0500 (EST) Version: 1.5.2 OS: WinNT 4.0 The module CGIHTTPServer does not run on WinNT since a) the function executable() seems to return a false value, if you omit the call of executable() you come to b) the function nobody_uid() imports the module pwd available only for unix c) other unix-functions as fork... are used to create a process with the user nobody ==================================================================== Audit trail: Mon Apr 03 18:39:48 2000 guido changed notes Mon Apr 03 18:39:48 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:15 By: none Comment: This module still needs to be ported to Windows... ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110839&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:40 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:40 -0700 Subject: [Python-bugs-list] [Bug #110849] Fwd: Debian Bug#42318: urllib.py has problems with malformed proxy env. variables (PR#59) Message-ID: <200009072206.PAA29160@bush.i.sourceforge.net> Bug #110849, was updated on 2000-Aug-01 14:16 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Fwd: Debian Bug#42318: urllib.py has problems with malformed proxy env. variables (PR#59) Details: Jitterbug-Id: 59 Submitted-By: flight@debian.org Date: Fri, 20 Aug 1999 13:40:04 -0400 (EDT) Version: 1.5.2 OS: Debian potato Summary: Python's urllib expects a fully qualified URL in HTTP_PROXY (like "http://proxy:8080/"). Many applications allow short forms in HTTP_PROXY (like "proxy:8080"). If HTTP_PROXY is set to a short form, urllib.py will fail with an uncomprehensible error message. Long form: Francesco Potorti` says (in the Debian bug report http://www.debian.org/Bugs/db/42/42318.html): "when setting a proxy variable that is not parsed by urllib, urllib does not print a comprehensible error message." An example: Short form HTTP_PROXY: master% HTTP_PROXY="proxy.cnr.it:8081" \ python -c 'import urllib; print urllib.urlretrieve("http://www.olemiss.edu/")' Traceback (innermost last): File "", line 1, in ? File "/usr/lib/python1.5/urllib.py", line 69, in urlretrieve return _urlopener.retrieve(url) File "/usr/lib/python1.5/urllib.py", line 186, in retrieve fp = self.open(url) File "/usr/lib/python1.5/urllib.py", line 154, in open return self.open_unknown(fullurl) File "/usr/lib/python1.5/urllib.py", line 168, in open_unknown raise IOError, ('url error', 'unknown url type', type) IOError: ('url error', 'unknown url type', 'http') Fully qualified URL in HTTP_PROXY: master% HTTP_PROXY="http://proxy.cnr.it:8081" \ python -c 'import urllib; print urllib.urlretrieve("http://www.olemiss.edu/")' ('/tmp/@15884.1', ) ==================================================================== Audit trail: Mon Aug 30 12:35:03 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110849&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:42 -0700 Subject: [Python-bugs-list] [Bug #110857] it don't make (PR#269) Message-ID: <200009072206.PAA29164@bush.i.sourceforge.net> Bug #110857, was updated on 2000-Aug-01 14:38 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Irreproducible Priority: 3 Summary: it don't make (PR#269) Details: Jitterbug-Id: 269 Submitted-By: mitch.harris@usa.net Date: Mon, 3 Apr 2000 13:29:25 -0400 (EDT) Version: 1.6 OS: sun 5.6 First time I tried to install Python. /usr2/t_mitchh/python/Python-1.6a1>version Machine hardware: sun4u OS version: 5.6 Processor type: sparc Hardware: SUNW,Ultra-1 The following components are installed on your system: Sun Visual WorkShop C++ 3.0 Sun WorkShop Compiler C 4.2 Sun WorkShop Compiler C++ 4.2 Sun WorkShop Tools.h++ 7.0 Sun WorkShop Tools.h++ 6.0.4 Sun WorkShop Visual 2.0 Sun WorkShop IPE 4.0 Sun WorkShop CodeManager 2.0 Sun WorkShop Distributed Make 2.0 Sun WorkShop FileMerge 3.0 Sun WorkShop FreezePoint 2.0 Sun WorkShop Maketool 2.0 Sun WorkShop VersionTool 2.0 Sun WorkShop Dbx 4.0 Sun WorkShop Performance Analyzer 4.0 Sun WorkShop LoopTool 2.1 Sun WorkShop LockLint 2.1 Sun WorkShop Thread Analyzer 1.2 Sun WorkShop XEmacs 20.00 /usr2/t_mitchh/python/Python-1.6a1>./configure creating cache ./config.cache checking MACHDEP... sunos5 checking for --without-gcc... no checking for --with-cxx=... no checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking LINKCC... $(PURIFY) $(CC) checking LDLIBRARY... checking for ranlib... ranlib checking for ar... ar checking how to run the C preprocessor... gcc -E checking for AIX... no checking for minix/config.h... no checking whether gcc accepts -OPT:Olimit=0... no checking whether gcc accepts -Olimit 1500... no checking for C preprocessor type... ansi checking for ANSI C header files... yes checking for dlfcn.h... yes checking for fcntl.h... yes checking for limits.h... yes checking for locale.h... yes checking for ncurses.h... no checking for pthread.h... yes checking for signal.h... yes checking for stdarg.h... yes checking for stddef.h... yes checking for stdlib.h... yes checking for thread.h... yes checking for unistd.h... yes checking for utime.h... yes checking for sys/audioio.h... yes checking for sys/file.h... no checking for sys/lock.h... yes checking for sys/param.h... no checking for sys/select.h... yes checking for sys/time.h... yes checking for sys/times.h... yes checking for sys/un.h... yes checking for sys/utsname.h... yes checking for sys/wait.h... yes checking for dirent.h that defines DIR... yes checking for opendir in -ldir... no checking for clock_t in time.h... yes checking for mode_t... yes checking for off_t... yes checking for pid_t... yes checking return type of signal handlers... void checking for size_t... yes checking for uid_t in sys/types.h... yes checking size of int... 4 checking size of long... 4 checking size of void *... 4 checking size of char... 1 checking size of short... 2 checking size of float... 4 checking size of double... 8 checking for long long support... yes checking size of long long... 8 checking size of off_t... 4 checking whether to enable large file support... no checking for --with-next-framework... no checking for --with-dyld... no checking SO... .so checking LDSHARED... ld -G checking CCSHARED... checking LINKFORSHARED... checking for dlopen in -ldl... yes checking for shl_load in -ldld... no checking for t_open in -lnsl... yes checking for socket in -lsocket... yes checking for socket in -lnet... no checking for --with-libs... no checking for --with(out)-readline... not specified. checking for --with-dec-threads... no checking for --with-threads... no checking for --with-thread... no checking for --with-sgi-dl... no checking for --with-dl-dld... no checking for dlopen... yes checking DYNLOADFILE... dynload_shlib.o checking for alarm... yes checking for chown... yes checking for clock... yes checking for confstr... yes checking for ctermid... yes checking for ctermid_r... yes checking for dlopen... (cached) yes checking for execv... yes checking for flock... no checking for fork... yes checking for fsync... yes checking for fdatasync... no checking for fpathconf... yes checking for ftime... yes checking for ftruncate... yes checking for getgroups... yes checking for getlogin... yes checking for getpeername... yes checking for getpgrp... yes checking for getpid... yes checking for getpwent... yes checking for gettimeofday... yes checking for getwd... yes checking for kill... yes checking for link... yes checking for lstat... yes checking for mkfifo... yes checking for mktime... yes checking for nice... yes checking for pathconf... yes checking for pause... yes checking for plock... yes checking for pthread_init... no checking for putenv... yes checking for readlink... yes checking for select... yes checking for setgid... yes checking for setlocale... yes checking for setuid... yes checking for setsid... yes checking for setpgid... yes checking for setpgrp... yes checking for setvbuf... yes checking for sigaction... yes checking for siginterrupt... yes checking for sigrelse... yes checking for strftime... yes checking for strptime... yes checking for symlink... yes checking for sysconf... yes checking for tcgetpgrp... yes checking for tcsetpgrp... yes checking for tempnam... yes checking for timegm... no checking for times... yes checking for tmpfile... yes checking for tmpnam... yes checking for tmpnam_r... yes checking for truncate... yes checking for uname... yes checking for waitpid... yes checking for fseek64... no checking for fseeko... yes checking for fstatvfs... yes checking for ftell64... no checking for ftello... yes checking for statvfs... yes checking for dup2... yes checking for getcwd... yes checking for strdup... yes checking for strerror... yes checking for memmove... yes checking for getpgrp... (cached) yes checking for setpgrp... (cached) yes checking for gettimeofday... (cached) yes checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for tm_zone in struct tm... no checking for tzname... yes checking for time.h that defines altzone... yes checking whether sys/select.h and sys/time.h may both be included... yes checking whether char is unsigned... no checking for working const... yes checking for inline... inline checking for working volatile... yes checking for working signed char... yes checking for prototypes... yes checking for variable length prototypes and stdarg.h... yes checking for bad exec* prototypes... no checking for bad static forward... no checking whether va_list is an array... no checking for gethostbyname_r... yes checking gethostbyname_r with 6 args... no checking gethostbyname_r with 5 args... no checking gethostbyname_r with 3 args... no checking for __fpu_control in -lieee... no checking for --with-fpectl... no checking for --with-libm=STRING... default LIBM="-lm" checking for --with-libc=STRING... default LIBC="" checking for hypot... yes checking for hypot... (cached) yes checking for genuine getopt... yes checking what malloc(0) returns... nonnull checking for wchar.h... yes checking for usable wchar_t... no checking whether byte ordering is bigendian... yes checking for --with-wctype-functions... no updating cache ./config.cache creating ./config.status creating Makefile creating Objects/Makefile creating Parser/Makefile creating Python/Makefile creating Modules/Makefile.pre creating Modules/Setup.thread creating config.h /usr2/t_mitchh/python/Python-1.6a1/Modules>make gcc -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c ./posixmodule.c In file included from ./posixmodule.c:3194: /usr/include/sys/statvfs.h:38: parse error before `fsblkcnt_t' /usr/include/sys/statvfs.h:38: warning: no semicolon at end of struct or union /usr/include/sys/statvfs.h:39: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:40: parse error before `f_bavail' /usr/include/sys/statvfs.h:40: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:41: parse error before `f_files' /usr/include/sys/statvfs.h:41: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:42: parse error before `f_ffree' /usr/include/sys/statvfs.h:42: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:43: parse error before `f_favail' /usr/include/sys/statvfs.h:43: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:51: parse error before `}' /usr/include/sys/statvfs.h:51: warning: data definition has no type or storage class ./posixmodule.c: In function `posix_fstatvfs': ./posixmodule.c:3207: storage size of `st' isn't known ./posixmodule.c: In function `posix_statvfs': ./posixmodule.c:3259: storage size of `st' isn't known make: *** [posixmodule.o] Error 1 I tried this #if defined(HAVE_FSTATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) #if defined(HAVE_STATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) #ifdef HAVE_FSTATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #ifdef HAVE_STATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx and got this /prj/qed2/local//lib/gcc-lib/sparc-sun-solaris2.5/2.7.2.1/include/sys/param.h:187: warning: `NBBY' r /usr/include/sys/select.h:45: warning: this is the location of the previous definition In file included from /usr/include/sys/stream.h:26, from /usr/include/netinet/in.h:38, from /usr/include/netdb.h:96, from ./socketmodule.c:163: /usr/include/sys/model.h:32: #error "No DATAMODEL_NATIVE specified" make[1]: *** [socketmodule.o] Error 1 make[1]: Leaving directory `/usr2/t_mitchh/python/Python-1.6a1/Modules' make: *** [Modules] Error 2 ==================================================================== Audit trail: Mon May 22 17:44:30 2000 guido changed notes Mon May 22 17:44:30 2000 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:38 By: none Comment: Sun's compiler sucks? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110857&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:53 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:53 -0700 Subject: [Python-bugs-list] [Bug #113795] IDLE 0.6 with Python 2.0b1 doesn't handle chinese characters Message-ID: <200009072206.PAA29178@bush.i.sourceforge.net> Bug #113795, was updated on 2000-Sep-07 06:49 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 5 Summary: IDLE 0.6 with Python 2.0b1 doesn't handle chinese characters Details: I just switched from 1.5.2 to 2.0b1 on W2K/Simplified Chinese version. I used to be able to input chinese characters directly into IDLE, and access violations did happen quite often. Now with 2.0b1, I can't even input chinese characters into the IDLE window anymore:IDLE automatically changed chinese characters into illegible stuff; it's the same when I copy from a text editor and paste into the IDLE window. I guess it's related to the induction of unicode support in 2.0, but is there a workaround I should know, or I should switch back to 1.5.2, or it's a bug worth fixing? Thanks. Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113795&group_id=5470 From nobody@sourceforge.net Thu Sep 7 23:06:54 2000 From: nobody@sourceforge.net (Nobody) Date: Thu, 7 Sep 2000 15:06:54 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009072206.PAA29182@bush.i.sourceforge.net> From: noreply@sourceforge.net Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- Date: 2000-Sep-07 14:41 By: jhylton Comment: If you set the GC threshold to 0, import gc gc.set_threshold(0) Do you get the same problem? Not that I doubt there is some sort of gc problem, but I wonder if there is something going wrong in the accounting or in the collection. How hard would it be for someone to try to reproduce this bug? Obviously, it would be helpful to get a smaller test case that has the same behavior as your large program and also tickles the bug. Do you have any C extension modules in your application or is it pure Python? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:14 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:14 -0700 Subject: [Python-bugs-list] [Bug #110692] urllib.URLopener does not work with proxies (PR#67) Message-ID: <200009072205.PAA29075@bush.i.sourceforge.net> Bug #110692, was updated on 2000-Jul-31 14:15 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: urllib.URLopener does not work with proxies (PR#67) Details: Jitterbug-Id: 67 Submitted-By: andrew@fc.hp.com Date: Thu, 26 Aug 1999 16:20:02 -0400 (EDT) Version: 1.5.1 OS: When using urllib.URLopener(proxy) (instead of setting _PROXY env variables and calling urllib.openurl(), you get the following error message: File "./watchdog.py", line 118, in main url.open(urltocheck) File "/usr/lib/python1.5/urllib.py", line 158, in open return getattr(self, name)(url) File "/usr/lib/python1.5/urllib.py", line 258, in open_http return addinfourl(fp, headers, "http:" + url) TypeError: illegal argument type for built-in operation When using explicti proxies, url is a tuple instead of a string. You can't concatanate a tuple to a string, so the operation fails. ==================================================================== Audit trail: Mon Aug 30 12:40:45 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-05 13:27 By: loewis Comment: This is likely incorrect usage of the module. The proxy argument must be a dictionary mapping strings of protocol names to strings of URLs. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110692&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:15 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:15 -0700 Subject: [Python-bugs-list] [Bug #110702] closing a popen file descriptor (PR#33) Message-ID: <200009072205.PAA29079@bush.i.sourceforge.net> Bug #110702, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: closing a popen file descriptor (PR#33) Details: Jitterbug-Id: 33 Submitted-By: laik@cs.stanford.edu Date: Tue, 20 Jul 1999 14:00:11 -0400 (EDT) Version: 1.5.2 OS: Linux 2.2.10 I can't close a pipe's file descriptor without an error: >>> import os >>> p1 = os.popen("cat dummy1", "r") >>> p2 = os.popen("cat dummy2", "r") >>> p1.close() Traceback (innermost last): File "", line 1, in ? IOError: (0, 'Error') It only happens if I do two or more popens. If I try to close any file descriptor but the last one I opened, I get this mysterious IOError. It happens regardless of the order I try to close the descriptors. ==================================================================== Audit trail: Sat Jul 24 17:02:54 1999 guido sent reply 1 Sat Jul 24 17:03:22 1999 guido changed notes Sat Jul 24 17:03:22 1999 guido moved from incoming to open Sat Jul 24 17:05:25 1999 guido moved from open to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: closing a popen file descriptor (PR#33) Date: Sat Jul 24 17:02:54 1999 > Full_Name: Kevin Lai > Version: 1.5.2 > OS: Linux 2.2.10 > Submission from: (NULL) (192.25.214.6) > > > I can't close a pipe's file descriptor without an error: > >>>> import os >>>> p1 = os.popen("cat dummy1", "r") >>>> p2 = os.popen("cat dummy2", "r") >>>> p1.close() > Traceback (innermost last): > File "", line 1, in ? > IOError: (0, 'Error') > > It only happens if I do two or more popens. If I try to close any file > descriptor > but the last one I opened, I get this mysterious IOError. It happens regardless > of the order I try to close the descriptors. Kevin, this works on other platforms I can try (Solaris 2.6, linux 2.0.34). One possibility is that the C library in the Linux version you are using has changed; the IOError means that its pclose() returns an error indicator. The (0, 'Error') message means that pclose() didn't set the errno variable. It could be a bug in the Linux C library, or a change in interface that requires Python to interpret the error return differently. Can you help us discover which is the case? Does the man page for pclose() say anything about this? Does this fail in an equivalent C program? --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: laik@tnt.Stanford.EDU Subject: Re: closing a popen file descriptor (PR#33) Date: Tue, 27 Jul 1999 01:41:15 -0700 Guido, Thanks for your quick reply. As far as I can tell, the man page for pclose() doesn't mention any API changes. I have included the popen() and wait4() man pages for the system I am using (PII 300, Linux 2.2.10, glibc 2.1.1). I have written a short C program which tries to exercise the bug. On my system, it gives these results: [laik@nebraska]~>gcc popen.c [laik@nebraska]~>a.out pclose(p1): 0, WIFEXITED: 1, WEXITSTATUS:0, WIFSIGNALED:0 pclose(p2): 0, WIFEXITED: 1, WEXITSTATUS:0, WIFSIGNALED:0 pclose(p3): 0, WIFEXITED: 1, WEXITSTATUS:0, WIFSIGNALED:0 On a Linux 2.0.33, glibc 2.0.7 system, it gives the same results. However, my system exhibits the problem under Python, while the other does not. I conclude that my C program doesn't mimic the Python program well enough to trigger the bug, but I don't know how to fix that. #include #define _USE_BSD #include #include #include main() { FILE *p1, *p2, *p3; int pc1, pc2, pc3; p1 = popen("ls", "r"); p2 = popen("ls", "r"); p3 = popen("ls", "r"); sleep(1); pc1 = pclose(p1); printf("pclose(p1): %d, WIFEXITED: %d, WEXITSTATUS:%d, WIFSIGNALED:%d\n", pc1, WIFEXITED(pc1), WEXITSTATUS(pc1), WIFSIGNALED(pc1)); pc2 = pclose(p2); printf("pclose(p2): %d, WIFEXITED: %d, WEXITSTATUS:%d, WIFSIGNALED:%d\n", pc1, WIFEXITED(pc2), WEXITSTATUS(pc2), WIFSIGNALED(pc2)); pc3 = pclose(p3); printf("pclose(p3): %d, WIFEXITED: %d, WEXITSTATUS:%d, WIFSIGNALED:%d\n", pc3, WIFEXITED(pc3), WEXITSTATUS(pc3), WIFSIGNALED(pc3)); } POPEN(3) Linux Programmer's Manual POPEN(3) NAME popen, pclose - process I/O SYNOPSIS #include FILE *popen(const char *command, const char *type); int pclose(FILE *stream); DESCRIPTION The popen() function opens a process by creating a pipe, forking, and invoking the shell. Since a pipe is by defi- nition unidirectional, the type argument may specify only reading or writing, not both; the resulting stream is cor- respondingly read-only or write-only. The command argument is a pointer to a null-terminated string containing a shell command line. This command is passed to /bin/sh using the -c flag; interpretation, if any, is performed by the shell. The mode argument is a pointer to a null-terminated string which must be either `r' for reading or `w' for writing. The return value from popen() is a normal standard I/O stream in all respects save that it must be closed with pclose() rather than fclose(). Writing to such a stream writes to the standard input of the command; the command's standard output is the same as that of the process that called popen(), unless this is altered by the command itself. Conversely, reading from a ``popened'' stream reads the command's standard output, and the command's standard input is the same as that of the process that called popen. Note that output popen streams are fully buffered by default. The pclose function waits for the associated process to terminate and returns the exit status of the command as returned by wait4. RETURN VALUE The popen function returns NULL if the fork(2) or pipe(2) calls fail, or if it cannot allocate memory. The pclose function returns -1 if wait4 returns an error, or some other error is detected. ERRORS The popen function does not set errno if memory allocation fails. If the underlying fork() or pipe() fails, errno is set appropriately. If the mode argument is invalid, and this condition is detected, errno is set to EINVAL. If pclose() cannot obtain the child status, errno is set to ECHILD. CONFORMING TO POSIX.2 BUGS Since the standard input of a command opened for reading shares its seek offset with the process that called popen(), if the original process has done a buffered read, the command's input position may not be as expected. Sim- ilarly, the output from a command opened for writing may become intermingled with that of the original process. The latter can be avoided by calling fflush(3) before popen. Failure to execute the shell is indistinguishable from the shell's failure to execute command, or an immediate exit of the command. The only hint is an exit status of 127. HISTORY A popen() and a pclose() function appeared in Version 7 AT&T UNIX. SEE ALSO fork(2), sh(1), pipe(2), wait4(2), fflush(3), fclose(3), fopen(3), stdio(3), system(3). BSD MANPAGE 7 May 1998 1 WAIT4(2) Linux Programmer's Manual WAIT4(2) NAME wait3, wait4 - wait for process termination, BSD style SYNOPSIS #define _USE_BSD #include #include #include pid_t wait3(int *status, int options, struct rusage *rusage) pid_t wait4(pid_t pid, int *status, int options, struct rusage *rusage) DESCRIPTION The wait3 function suspends execution of the current pro- cess until a child has exited, or until a signal is deliv- ered whose action is to terminate the current process or to call a signal handling function. If a child has already exited by the time of the call (a so-called "zom- bie" process), the function returns immediately. Any sys- tem resources used by the child are freed. The wait4 function suspends execution of the current pro- cess until a child as specified by the pid argument has exited, or until a signal is delivered whose action is to terminate the current process or to call a signal handling function. If a child as requested by pid has already exited by the time of the call (a so-called "zombie" pro- cess), the function returns immediately. Any system resources used by the child are freed. The value of pid can be one of: < -1 which means to wait for any child process whose process group ID is equal to the absolute value of pid. -1 which means to wait for any child process; this is equivalent to calling wait3. 0 which means to wait for any child process whose process group ID is equal to that of the calling process. > 0 which means to wait for the child whose process ID is equal to the value of pid. The value of options is a bitwise OR of zero or more of the following constants: WNOHANG which means to return immediately if no child is there to be waited for. WUNTRACED which means to also return for children which are stopped, and whose status has not been reported. If status is not NULL, wait3 or wait4 store status infor- mation in the location pointed to by status. This status can be evaluated with the following macros (these macros take the stat buffer (an int) as an argument -- not a pointer to the buffer!): WIFEXITED(status) is non-zero if the child exited normally. WEXITSTATUS(status) evaluates to the least significant eight bits of the return code of the child which terminated, which may have been set as the argument to a call to exit() or as the argument for a return state- ment in the main program. This macro can only be evaluated if WIFEXITED returned non-zero. WIFSIGNALED(status) returns true if the child process exited because of a signal which was not caught. WTERMSIG(status) returns the number of the signal that caused the child process to terminate. This macro can only be evaluated if WIFSIGNALED returned non-zero. WIFSTOPPED(status) returns true if the child process which caused the return is currently stopped; this is only possible if the call was done using WUNTRACED. WSTOPSIG(status) returns the number of the signal which caused the child to stop. This macro can only be evaluated if WIFSTOPPED returned non-zero. If rusage is not NULL, the struct rusage as defined in it points to will be filled with accounting information. See getrusage(2) for details. RETURN VALUE The process ID of the child which exited, -1 on error (in particular, when no unwaited-for child processes of the specified kind exist) or zero if WNOHANG was used and no child was available yet. In the latter two cases errno will be set appropriately. ERRORS ECHILD No unwaited-for child process as specified does exist. ERESTARTSYS if WNOHANG was not set and an unblocked signal or a SIGCHLD was caught. This error is returned by the system call. The library interface is not allowed to return ERESTARTSYS, but will return EINTR. CONFORMING TO SVr4, POSIX.1 SEE ALSO signal(2), getrusage(2), wait(2), signal(7) Linux 23 June 1997 1 ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: Perhaps a bug or interface change in Linux popen()? ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110702&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:17 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:17 -0700 Subject: [Python-bugs-list] [Bug #110830] Syntax (PR#177) Message-ID: <200009072205.PAA29087@bush.i.sourceforge.net> Bug #110830, was updated on 2000-Aug-01 14:12 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: Later Bug Group: Feature Request Priority: 1 Summary: Syntax (PR#177) Details: Jitterbug-Id: 177 Submitted-By: simonb@logical.co.za Date: Tue, 11 Jan 2000 05:17:37 -0500 (EST) Version: 1-5-2 OS: NT 4.0 Hi there I don't know if this is a bug, or is intentional behaviour for a specific reason. The following code produces a syntax error about the continue not being within a looping structure rather than a prefectly silly infinite loop... while 1: try: continue except: pass where the following works as one would expect... while 1: try: raise 1 except: continue I figure that there is more likely a sane reason for this behaviour than being a bug, but I am curious. Thanks Simon ==================================================================== Audit trail: Wed Jan 12 18:11:45 2000 guido changed notes Wed Jan 12 18:11:45 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:12 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] Syntax (PR#177) Date: Tue, 11 Jan 2000 12:10:17 -0500 [Simon Barratt, putting "continue" in a "try" block] > I don't know if this is a bug, or is intentional behaviour > for a specific reason. Actually, it's a bit of both . See the Language Reference Manual's section on the "continue" statement, particularly the footnote: The restriction on occurring in the try clause is implementer's laziness and will eventually be lifted. It's been this way (and documented) forever; it's simply hard to implement given the current structure of the interpreter loop. Rest assured there's nothing *conceptually* wrong with putting continue in a try! It's simply an implementation restriction; the error msg should probably make that clearer. IIRC, JPython doesn't have this restriction. "Someday" it will get repaired in CPython too. ------------------------------------------------------- Date: 2000-Aug-01 14:12 By: none Comment: It's a zero-priority bug (i.e. not likely to be fixed). ------------------------------------------------------- Date: 2000-Aug-03 13:00 By: twouters Comment: Like the bot said, low priority 'to be fixed' bug. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110830&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:16 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:16 -0700 Subject: [Python-bugs-list] [Bug #110707] does not compile under BSDI (PR#57) Message-ID: <200009072205.PAA29083@bush.i.sourceforge.net> Bug #110707, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: does not compile under BSDI (PR#57) Details: Jitterbug-Id: 57 Submitted-By: jital@knoggin.com Date: Fri, 20 Aug 1999 04:18:04 -0400 (EDT) Version: py152 OS: BSDI IServer seems to think it is a NeXT arch or something $ ./configure --prefix=/usr/home/knoggin/usr/local/ --exec-prefix=/usr/home/knoggin/usr/local/ creating cache ./config.cache checking MACHDEP... bsdos3 checking CCC... checking for --without-gcc... no checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking LINKCC... $(PURIFY) $(CC) checking LDLIBRARY... checking for ranlib... ranlib checking for ar... ar checking how to run the C preprocessor... gcc -D_HAVE_BSDI -E checking for AIX... no checking for minix/config.h... no checking whether gcc -D_HAVE_BSDI accepts -OPT:Olimit=0... no checking whether gcc -D_HAVE_BSDI accepts -Olimit 1500... no checking for C preprocessor type... ansi checking for ANSI C header files... yes checking for dlfcn.h... yes checking for fcntl.h... yes checking for limits.h... yes checking for locale.h... yes checking for ncurses.h... yes checking for pthread.h... yes checking for signal.h... yes checking for stdarg.h... yes checking for stddef.h... yes checking for stdlib.h... yes checking for thread.h... no checking for unistd.h... yes checking for utime.h... yes checking for sys/audioio.h... no checking for sys/file.h... yes checking for sys/lock.h... yes checking for sys/param.h... yes checking for sys/select.h... yes checking for sys/time.h... yes checking for sys/times.h... yes checking for sys/un.h... yes checking for sys/utsname.h... yes checking for sys/wait.h... yes checking for dirent.h that defines DIR... yes checking for opendir in -ldir... no checking for clock_t in time.h... yes checking for mode_t... yes checking for off_t... yes checking for pid_t... yes checking return type of signal handlers... void checking for size_t... yes checking for uid_t in sys/types.h... yes checking size of int... 4 checking size of long... 4 checking size of void *... 4 checking for long long support... yes checking size of long long... 8 checking size of off_t... 8 checking whether to enable large file support... yes checking for --with-next-framework... no checking for --with-dyld... required for framework build checking SO... .so checking LDSHARED... ld checking CCSHARED... checking LINKFORSHARED... checking for dlopen in -ldl... yes checking for shl_load in -ldld... no checking for t_open in -lnsl... no checking for socket in -lsocket... no checking for socket in -lnet... no checking for --with-libs... no checking for --with(out)-readline... not specified. checking for --with-dec-threads... no checking for --with-threads... no checking for --with-thread... no checking for --with-sgi-dl... no checking for --with-dl-dld... no checking for alarm... yes checking for chown... yes checking for clock... yes checking for dlopen... yes checking for execv... yes checking for flock... yes checking for fork... yes checking for fsync... yes checking for fdatasync... no checking for ftime... no checking for ftruncate... yes checking for getpeername... yes checking for getpgrp... yes checking for getpid... yes checking for getpwent... yes checking for gettimeofday... yes checking for getwd... yes checking for kill... yes checking for link... yes checking for lstat... yes checking for mkfifo... yes checking for mktime... yes checking for nice... yes checking for pause... yes checking for plock... no checking for pthread_init... yes checking for putenv... yes checking for readlink... yes checking for select... yes checking for setgid... yes checking for setlocale... yes checking for setuid... yes checking for setsid... yes checking for setpgid... yes checking for setpgrp... yes checking for setvbuf... yes checking for sigaction... yes checking for siginterrupt... yes checking for sigrelse... no checking for strftime... yes checking for strptime... no checking for symlink... yes checking for tcgetpgrp... yes checking for tcsetpgrp... yes checking for timegm... no checking for times... yes checking for truncate... yes checking for uname... yes checking for waitpid... yes checking for fseek64... no checking for fseeko... no checking for fstatvfs... no checking for ftell64... no checking for ftello... no checking for statvfs... no checking for dup2... yes checking for getcwd... yes checking for strdup... yes checking for strerror... yes checking for memmove... yes checking for getpgrp... (cached) yes checking for setpgrp... (cached) yes checking for gettimeofday... (cached) yes checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for tm_zone in struct tm... yes checking for time.h that defines altzone... no checking whether sys/select.h and sys/time.h may both be included... yes checking whether char is unsigned... no checking for working const... yes checking for working volatile... yes checking for working signed char... yes checking for prototypes... yes checking for variable length prototypes and stdarg.h... yes checking for bad exec* prototypes... no checking for bad static forward... no checking whether va_list is an array... no checking for gethostbyname_r... no checking for gethostbyname... yes checking for __fpu_control in -lieee... no checking for --with-fpectl... checking for --with-libm=STRING... default LIBM="- lm" checking for --with-libc=STRING... default LIBC="" checking for hypot... yes checking for hypot... (cached) yes checking for genuine getopt... yes checking what malloc(0) returns... nonnull updating cache ./config.cache creating ./config.status creating Makefile creating Objects/Makefile creating Parser/Makefile creating Python/Makefile creating Modules/Makefile.pre creating Modules/Setup.thread creating config.h pcvendor:~/usr/local/src/Python-1.5.2 $ make (cd Modules; make -f Makefile.pre Makefile) cp ./Setup.in Setup echo "# Edit this file for local setup changes" >Setup.local rm -f ../libpython1.5.a /bin/sh ./makesetup Setup.thread Setup.local Setup making Makefile in subdirectory . `Makefile' is up to date. making Makefile in subdirectory Parser `Makefile' is up to date. making Makefile in subdirectory Objects `Makefile' is up to date. making Makefile in subdirectory Python `Makefile' is up to date. making Makefile in subdirectory Modules `Makefile' is up to date. (rm -f Modules/hassignal; cd Modules; make hassignal) rm -f hassignal for i in regexmodule.o regexpr.o pcremodule.o pypcre.o posixmodule.o signalmo dule.o arraymodule.o cmathmodule.o mathmodule.o stropmodule.o structmodule. o timemodule.o operator.o fcntlmodule.o pwdmodule.o grpmodule.o selectmodu le.o socketmodule.o errnomodule.o md5module.o md5c.o shamodule.o rotormodul e.o newmodule.o binascii.o parsermodule.o cStringIO.o cPickle.o config.o ge tpath.o main.o getbuildinfo.o; do if test "$i" = "signalmodule.o"; then echo y es >hassignal; break; fi; done cd Parser ; make OPT="-g -O2" VERSION="1.5" prefix="/usr/home/knoggin/usr/local /" exec_prefix="/usr/home/knoggin/usr/local/" all gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c pgenmain.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c acceler.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c grammar1.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c listnode.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c node.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c parser.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c parsetok.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c tokenizer.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c bitset.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c metagrammar.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c firstsets.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c grammar.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c pgen.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c printgrammar.c gcc -D_HAVE_BSDI -g -O2 pgenmain.o acceler.o grammar1.o listnode.o node.o parse r.o parsetok.o tokenizer.o bitset.o metagrammar.o firstsets.o grammar.o pgen.o printgrammar.o -ldl -o pgen gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c myreadline.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c intrcheck.c cd Objects ; make OPT="-g -O2" VERSION="1.5" prefix="/usr/home/knoggin/usr/local/" exec_prefix="/usr/home/knoggin/usr/local/" all gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c abstract.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c bufferobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c classobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c cobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c complexobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c fileobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c floatobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c frameobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c funcobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c intobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c listobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c longobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c dictobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c methodobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c moduleobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c object.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c rangeobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c sliceobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c stringobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c tupleobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c typeobject.c cd Python ; make OPT="-g -O2" VERSION="1.5" prefix="/usr/home/knoggin/usr/local/" exec_prefix="/usr/home/knoggin/usr/local/" all gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c bltinmodule.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c ceval.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c compile.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c errors.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c frozen.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c frozenmain.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getargs.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getcompiler.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getcopyright.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getmtime.c gcc -D_HAVE_BSDI -c -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -DPLATFORM='"bsdos3"' ./getplatform.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getversion.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c graminit.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c import.c gcc -D_HAVE_BSDI -c -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -I/ ./importdl.c ./importdl.c:269: mach-o/dyld.h: No such file or directory *** Error code 1 Stop. *** Error code 1 Stop. ==================================================================== Audit trail: Mon Aug 30 12:40:26 1999 guido changed notes Mon Aug 30 12:40:26 1999 guido moved from incoming to irreproducible Tue Oct 19 23:20:49 1999 guido sent reply 1 Tue Oct 19 23:21:36 1999 guido changed notes Tue Oct 19 23:21:36 1999 guido moved from irreproducible to open Tue Oct 19 23:30:25 1999 guido changed notes Tue Oct 19 23:30:25 1999 guido moved from open to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: does not compile under BSDI (PR#57) Date: Tue Oct 19 23:20:49 1999 This same bug was reported by someone else for the same platform. We arrived at the work-around of deleting the line #define WITH_DYLD from the config.h generated by the configure script. If you are still experiencing problems building Python, please try this. --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] does not compile under BSDI (PR#57) Date: Fri, 20 Aug 1999 07:57:10 -0400 > Full_Name: John Ital > Version: py152 > OS: BSDI IServer > > seems to think it is a NeXT arch or something > [...] > gcc -D_HAVE_BSDI -c -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -I/ ./importdl.c > ./importdl.c:269: mach-o/dyld.h: No such file or directory > *** Error code 1 Very strange. I've never seen this before. It appears that somehow USE_DYLD is defined at that point, which can only happen if WITH_DYLD is defined, which can only happen if you specify --with-next-framework or --with-dyld on the configure command line, which you didn't. Perhaps you have a buggy preprocessor that is confused by the tangle of #ifdefs in importdl.c? I don't know how to help you; I know Python has been built successfully on bsdos3 before, so I'm guessing it's something in your setup, not a Python bug. If you need more help, please ask a newsgroup -- either comp.lang.python or a BSD specific one. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: Work-around: if you delete #define WITH_DYLD from config.h, the build succeeds. ------------------------------------------------------- Date: 2000-Aug-03 09:00 By: twouters Comment: For the record, I cannot reproduce this on the BSDI 3.1 systems we still have lying around. It *might* have been specific to BSDI 3.0, which we no longer have (for various reasons, like y2k bugs ;) and I've heard similar (but not the same) reports about BSD/OS running under a 'virtual' machine. However, I've never seen or heard about those 'virtual' BSD/OSes, other than in that c.l.py posting. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110707&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:19 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:19 -0700 Subject: [Python-bugs-list] [Bug #110853] Segmentation fault with kernel 2.2.12 (PR#103) Message-ID: <200009072205.PAA29095@bush.i.sourceforge.net> Bug #110853, was updated on 2000-Aug-01 14:37 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Irreproducible Priority: 1 Summary: Segmentation fault with kernel 2.2.12 (PR#103) Details: Jitterbug-Id: 103 Submitted-By: apsteffe@netwood.net Date: Mon, 11 Oct 1999 22:21:00 -0400 (EDT) Version: 1.5.2 OS: Linux I'm using glibc 2.0.6 and kernel 2.2.12 and gcc-2.7.2.1 . When I try to execute httplib.HTTP() or urllib.urlretrieve() I get a segmentation fault. The functions work ok with kernel 1.2.13 . ==================================================================== Audit trail: Mon Oct 18 18:08:00 1999 guido changed notes Mon Oct 18 18:08:00 1999 guido changed notification Mon Oct 18 18:08:00 1999 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:37 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Segmentation fault with kernel 2.2.12 (PR#103) Date: Mon, 11 Oct 1999 23:09:13 -0400 > Full_Name: Alfred Steffens Jr. > Version: 1.5.2 > OS: Linux > Submission from: p138.netwood.net (209.247.185.38) > > I'm using glibc 2.0.6 and kernel 2.2.12 and gcc-2.7.2.1 . When I try to > execute httplib.HTTP() or urllib.urlretrieve() I get a segmentation fault. > The functions work ok with kernel 1.2.13 . The Linux and glibc kernel versions don't mean much to me. Can you fire up a debugger and see where in the C code it crashes? Also, is this for a specific URL or is it for any URL? If a specific URL, I'd like to know which one. Finally, did you get or build the Python executable matching your kernel? A Linux upgrade from 1.x to 2.x seems a big deal, it's possible that you'll need a new Python installation or build. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:37 By: none Comment: Probably caused by a huge jump in Linux kernel version without recompiling Python. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110853&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:18 -0700 Subject: [Python-bugs-list] [Bug #110841] idle dosnt recompile modules changed externally (PR#308) Message-ID: <200009072205.PAA29091@bush.i.sourceforge.net> Bug #110841, was updated on 2000-Aug-01 14:15 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: Feature Request Priority: 3 Summary: idle dosnt recompile modules changed externally (PR#308) Details: Jitterbug-Id: 308 Submitted-By: jnc@ecs.soton.ac.uk Date: Fri, 28 Apr 2000 13:41:55 -0400 (EDT) Version: 1.5.2 OS: windows 98 Consider two scripts showbug.py ===== import bug1 bug1.bug() ===== and bug1.py ===== def bug(): print 'Bug 5' ===== both in the same directory. load showbug.py into idle (0.5) and runit with F5, the bug function prints Bug 5 Now change bug1.py outside or even with idle, save it. dates on disk now show bug1.py is newer than bug1.pyc rerun showbug.py pressing F5 or ctrl-F5 it still prints Bug 5. I dont think this behaviour is what is required.Certainly it cost me most of the afternoon tracking down non-existant problems in my code. John Carter ==================================================================== Audit trail: Mon May 22 17:23:04 2000 guido changed notes Mon May 22 17:23:04 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:15 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] idle dosnt recompile modules changed externally (PR#308) Date: Fri, 28 Apr 2000 14:45:30 -0400 > Consider two scripts > > showbug.py > ===== > > import bug1 > > bug1.bug() > ===== > and bug1.py > ===== > def bug(): > print 'Bug 5' > ===== > > both in the same directory. > > load showbug.py into idle (0.5) and runit with F5, > > the bug function prints Bug 5 > > Now change bug1.py outside or even with idle, save it. > dates on disk now show bug1.py is newer than bug1.pyc > > rerun showbug.py pressing F5 or ctrl-F5 > > it still prints Bug 5. > > I dont think this behaviour is what is required.Certainly it cost me most > of the afternoon tracking down non-existant problems in my code. I appreciate the bug report. The current definitions of running a script and importing a module all conspire to get this behavior. We're working on a major change where IDLE executes your script in a separate process that is created from scratch each time you use [ctrl-]F5, and then it will go away. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:15 By: none Comment: This is all explainable, but I agree it's bad for the user. We'll fix it by running scripts in a new process. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110841&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:33 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:33 -0700 Subject: [Python-bugs-list] [Bug #112317] os.rename transparent handling of cross-filesystem issues Message-ID: <200009072205.PAA29103@bush.i.sourceforge.net> Bug #112317, was updated on 2000-Aug-19 10:09 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: Feature Request Priority: 3 Summary: os.rename transparent handling of cross-filesystem issues Details: On some systems (specifically, Linux), the rename system call will throw an EXDEV error if rename is used across filesystems. It would be convenient for the user if os.rename were extended to handle this transparently (like most mv commands do). The benefits of this. . .getting rid of code like the following: try: os.rename('ff','/tmp/ff') except: open('/tmp/ff','w').write(open('ff','r').read()) os.unlink('ff') Actually, the real benefit is that code (written by morons like myself) using os.rename will continue to work even after the administrator moves the target directory to another filesystem. I took a quick look at posixmodule.c. A quick hack changes posix_2str's signature to the following: PyObject *args char *format int (*func)(const char*, const char *) int (*special_handler)(const char *, const char *) and the inner function to: if (res != 0) if ((! special_handler) || (*special_handler)(path1,path2)) return posix_error() Of course, then a smart copy routine (includes an unlink step). The most unclear thing at this point is what to do with the errno. Would a failure in the errorhandler report the original errno or its own errno??? Personally, a more general solution would allow the user (python-level) to optionally pass in *their own* error handling function/method. Follow-Ups: Date: 2000-Aug-25 07:44 By: jhylton Comment: revisit this after 2.0 ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112317&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:34 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:34 -0700 Subject: [Python-bugs-list] [Bug #113696] lib.pdf damaged in pdf-a4-2.0b1.tgz Message-ID: <200009072205.PAA29107@bush.i.sourceforge.net> Bug #113696, was updated on 2000-Sep-06 06:01 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: lib.pdf damaged in pdf-a4-2.0b1.tgz Details: Platform: NT4 SP6, Acrobat Reader 4.05. Tarball unpacks correctly and every other .pdf file in it is fine; however, lib.pdf appears to be corrupt, "can't repair", according to the Acrobat Reader. Follow-Ups: Date: 2000-Sep-06 06:18 By: aleax Comment: Same problem with lib.pdf (only) after downloading the ZIP, and also in the Letter versions as opposed to A4. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113696&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:05:36 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:05:36 -0700 Subject: [Python-bugs-list] [Bug #113779] test_gc coredump on Alpha Message-ID: <200009072205.PAA29110@bush.i.sourceforge.net> Bug #113779, was updated on 2000-Sep-06 21:44 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: test_gc coredump on Alpha Details: Configured --with-cycle-gc --with-sigfpe gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable Segmentation fault (core dumped) gdb reports: Core was generated by `./python -tt Lib/test/regrtest.py -l -v test_gc'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libpthread.so.0...done. Reading symbols from /lib/libdl.so.2.1...done. Reading symbols from /lib/libutil.so.1.1...done. Reading symbols from /lib/libm.so.6.1...done. Reading symbols from /lib/libc.so.6.1...done. Reading symbols from /lib/ld-linux.so.2...done. #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 168 if (!PyList_Check(op)) { (gdb) where #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 #1 0x120085fac in handle_finalizers (finalizers=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:312 #2 0x1200862d8 in collect (young=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:438 #3 0x120086704 in gc_collect (self=0x100000000, args=0x12043d158) at ./gcmodule.c:588 #4 0x120018ef0 in call_builtin (func=0x1, arg=0x12039e258, kw=0x0) at ceval.c:2628 #5 0x120018d30 in PyEval_CallObjectWithKeywords (func=0x1204377c0, arg=0x12039e258, kw=0x0) at ceval.c:2596 #6 0x12001713c in eval_code2 (co=0x12043b890, globals=0x12043d158, locals=0x120370488, args=0xffffffffffffffff, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1929 #7 0x120016cc4 in eval_code2 (co=0x12043c400, globals=0x12043d158, locals=0x120370488, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, ... (gdb) print op $1 = (PyObject *) 0x100000000 (gdb) print newitem $2 = (PyObject *) 0x12043d158 Follow-Ups: Date: 2000-Sep-06 21:49 By: none Comment: Note that without -l to regrtest it does NOT dump core, and completes correctly. ------------------------------------------------------- Date: 2000-Sep-07 08:23 By: bwarsaw Comment: It could just be a bug in the debug printing of collected objects. The -l switch for the regrtest simply adds a call to gc.set_debug(gc.DEBUG_LEAK) before the rest of the tests get going. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113779&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:52 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:52 -0700 Subject: [Python-bugs-list] [Bug #113773] Python 2.0b1 selectmodule compile error under Redhat 5.2 Message-ID: <200009072206.PAA29175@bush.i.sourceforge.net> Bug #113773, was updated on 2000-Sep-06 18:26 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Python 2.0b1 selectmodule compile error under Redhat 5.2 Details: Environment: Redhat 5.2 running the gcc compiler that comes with the distribution (gcc 2.7.2.3). 'make' failed when compiling selectmodule.c ('./configure' ran ok)because the following constants were undefined: POLLRDNORM, POLLRDBAND, POLLWRBAND The /usr/include/sys/poll.h file does not contain these constants. Under Redhat 6.2 the constants are defined in the /usr/include/bits/poll.h file (which is not present in the Redhat 5.2 distribution). I used the Redhat 6.2 poll.h file and the selectmodule compiled (under Redhat 5.2) but got the following error when running 'make test' (it looks like it might be related to the compile problem): test test_poll crashed -- select.error: (9, 'Bad file descriptor') 1 test failed: test_poll Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113773&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:51 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:51 -0700 Subject: [Python-bugs-list] [Bug #113693] freeze modulefinder broken Message-ID: <200009072206.PAA29172@bush.i.sourceforge.net> Bug #113693, was updated on 2000-Sep-06 05:09 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: freeze modulefinder broken Details: The following one-liner script can not be frozen: import string The traceback is included below. Line number are from revision 1.13 of modulefinder.py. The problem appears to be related to recent changes to the import bytecodes Traceback (most recent call last): File "d:\python\tools\freeze\freeze.py", line 457, in ? main() File "d:\python\tools\freeze\freeze.py", line 321, in main mf.import_hook(mod) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 303, in scan_code self.scan_code(c, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 289, in scan_code assert lastname is not None AssertionError Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113693&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:06:46 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:06:46 -0700 Subject: [Python-bugs-list] [Bug #112244] time.strptime() not present in Python 1.5.2 for MSWin Message-ID: <200009072206.PAA29169@bush.i.sourceforge.net> Bug #112244, was updated on 2000-Aug-18 06:54 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Feature Request Priority: 3 Summary: time.strptime() not present in Python 1.5.2 for MSWin Details: Using Python 1.5.2 for MSWin, any attempt to use the time.strptime() function from the time module results in the error: AttributeError: strptime This error does not occur for the Unix version of Python 1.5.2. Follow-Ups: Date: 2000-Aug-18 10:38 By: tim_one Comment: Changed to group Feature Request. strptime is available from Python only on those platforms where this (non-standard) C function happens to be available from the platform C library. Windows is not one of those. Not all Unix versions have it either. The docs already say that. The only way it will become available is if someone contributes an implementation. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112244&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:08:52 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:08:52 -0700 Subject: [Python-bugs-list] [Bug #110683] can't compile with SSL support on WinNT (PR#403) Message-ID: <200009072208.PAA29208@bush.i.sourceforge.net> Bug #110683, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: Later Bug Group: Platform-specific Priority: 4 Summary: can't compile with SSL support on WinNT (PR#403) Details: Jitterbug-Id: 403 Submitted-By: falk.lehmann@gmx.net Date: Mon, 17 Jul 2000 21:59:56 -0400 (EDT) Version: 1.6a2 OS: WinNT 4.0 I tried to compile Python 1.6a2 on a WinNT box using VC++ 6.00. The compiler stops with some warnings and an error message: K:\Projects\Python-1.6a2\Modules\socketmodule.c(2081) : error C2099: initializer is not a constant K:\Projects\Python-1.6a2\Modules\socketmodule.c(1947) : warning C4047: 'function' : 'int ' differs in levels of indirection from 'void *' K:\Projects\Python-1.6a2\Modules\socketmodule.c(1947) : warning C4024: 'memset' : different types for formal and actual parameter 2 K:\Projects\Python-1.6a2\Modules\socketmodule.c(1948) : warning C4047: 'function' : 'int ' differs in levels of indirection from 'void *' K:\Projects\Python-1.6a2\Modules\socketmodule.c(1948) : warning C4024: 'memset' : different types for formal and actual parameter 2 K:\Projects\Python-1.6a2\Modules\socketmodule.c(1933) : warning C4101: 'str' : unreferenced local variable K:\Projects\Python-1.6a2\Modules\socketmodule.c(2083) : warning C4047: 'initializing' : 'int ' differs in levels of indirection from 'char [4]' K:\Projects\Python-1.6a2\Modules\socketmodule.c(2084) : warning C4047: 'initializing' : 'char *' differs in levels of indirection from 'unsigned int ' K:\Projects\Python-1.6a2\Modules\socketmodule.c(2087) : warning C4047: 'initializing' : 'int ' differs in levels of indirection from 'void (__cdecl *)(struct _object *)' K:\Projects\Python-1.6a2\Modules\socketmodule.c(2089) : warning C4047: 'initializing' : 'int (__cdecl *)(struct _object *,struct _iobuf *,int )' differs in levels of indirection from 'struct _object *(__cdecl *)(struct _object *,char *)' Thanks in advance for fixing (at least the error). Falk ==================================================================== Audit trail: Tue Jul 25 07:25:55 2000 guido changed notes Tue Jul 25 07:25:55 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] compiling on WinNT (PR#403) Date: Mon, 24 Jul 2000 11:35:24 -0500 > I tried to compile Python 1.6a2 on a WinNT box using VC++ 6.00. Please try the current CVS tree (on its way to 2.0); we have no problems compiling this on VC 6.0. --Guido van Rossum (home page: http://dinsdale.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: From: Falk Lehmann Subject: Re: [Python-bugs-list] compiling on WinNT (PR#403) Date: Mon, 24 Jul 2000 13:46:45 -0500 [magical fwd by GvR] Guido, sorry, but forgot to write, that I switched on the USE_SSL macro. And then the _socket module does not compile. Falk > > I tried to compile Python 1.6a2 on a WinNT box using VC++ 6.00. > > Please try the current CVS tree (on its way to 2.0); we have no > problems compiling this on VC 6.0. > > --Guido van Rossum (home page: http://dinsdale.python.org/~guido/) > ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] compiling on WinNT (PR#403) Date: Mon, 24 Jul 2000 14:00:20 -0500 > sorry, but forgot to write, that I switched on the USE_SSL macro. > And then the _socket module does not compile. It appears that the Python SSL code hasn't been ported to Windows. We'll add this to our TODO list, but it's low priority... Perhaps you could give it a shot yourself? See www.python.org/patches/ for how to contribute. --Guido van Rossum (home page: http://dinsdale.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: Windows compile fails when using openSSL. ------------------------------------------------------- Date: 2000-Aug-23 10:35 By: jhylton Comment: This is a bug. Standard extensions modules should compile, even on obscure platforms like Windows NT. Need a Windows user with time to install OpenSSL to fix this. ------------------------------------------------------- Date: 2000-Aug-30 12:01 By: gvanrossum Comment: Let's not worry about this for 2.0. While the OpenSSL support is part of the socket module, we don't have the resources right now to port that support to Windows. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 15:08 By: fdrake Comment: As we've discussed, this is not an issue for 2.0. Assigned to Tim for resurrection when appropriate since this is Windows-specific. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110683&group_id=5470 From aleaxit@yahoo.com Thu Sep 7 23:10:05 2000 From: aleaxit@yahoo.com (Alex Martelli) Date: Fri, 8 Sep 2000 00:10:05 +0200 Subject: [Python-bugs-list] Re: [Bug #113807] PyArg_ParseTupleAndKeywords and Unicode...? References: <200009072203.PAA28857@bush.i.sourceforge.net> Message-ID: <02ec01c01918$7c2ce380$aca1abd4@martelli> > Date: 2000-Sep-07 15:03 > By: jhylton > > Comment: > Please do triage on this bug. Sorry, I don't understand what "triage" means in this context. Want a small extension that will reproduce the bug? I can do that -- two functions each taking a es# format argument, one without kw args, one with, otherwise identical. Would that be useful? Where should I send the source code to reproduce the bug? Alex _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com From fdrake@beopen.com Thu Sep 7 23:14:09 2000 From: fdrake@beopen.com (Fred L. Drake, Jr.) Date: Thu, 7 Sep 2000 18:14:09 -0400 (EDT) Subject: [Python-bugs-list] Re: [Bug #113807] PyArg_ParseTupleAndKeywords and Unicode...? In-Reply-To: <02ec01c01918$7c2ce380$aca1abd4@martelli> References: <200009072203.PAA28857@bush.i.sourceforge.net> <02ec01c01918$7c2ce380$aca1abd4@martelli> Message-ID: <14776.4913.209019.358778@cj42289-a.reston1.va.home.com> Alex Martelli writes: > > Date: 2000-Sep-07 15:03 > > By: jhylton > > > > Comment: > > Please do triage on this bug. > > Sorry, I don't understand what "triage" means in > this context. Want a small extension that will > reproduce the bug? I can do that -- two functions > each taking a es# format argument, one without > kw args, one with, otherwise identical. Would that > be useful? Where should I send the source code > to reproduce the bug? Alex, Sorry for the confusion! We've assigned all the bugs to a developer so that each is examined and dealt with in some way. This message is for the developer the bug report was assigned to; you don't need to do anything further based on this notice. -Fred -- Fred L. Drake, Jr. BeOpen PythonLabs Team Member From noreply@sourceforge.net Thu Sep 7 23:52:09 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:52:09 -0700 Subject: [Python-bugs-list] [Bug #113800] optional{} produces incorrect HTML Message-ID: <200009072252.PAA30726@bush.i.sourceforge.net> Bug #113800, was updated on 2000-Sep-07 08:18 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: optional{} produces incorrect HTML Details: This showed up in the Python 2.0 document: LaTeX2HTML produces bad HTML with improperly nested tags, including a trailing tag that leaves the rest of the document in italic on some browsers. Sample document: \documentclass{howto} \title{What's New in Python 2.0} \release{0.05} \author{A.M. Kuchling and Moshe Zadka} \authoraddress{\email{amk1@bigfoot.com}, \email{moshez@math.huji.ac.il} } \begin{document} \code{unicode(\var{string} \optional{, \var{encoding}} \optional{, \var{errors}} ) } creates a Unicode string from an 8-bit \end{document} The incorrect HTML output is: unicode(string [, encoding][, errors] ) creates ... For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113800&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:53:34 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:53:34 -0700 Subject: [Python-bugs-list] [Bug #113793] getopt.c compile fails on Solaris 2.6/gcc 2.95.2 Message-ID: <200009072253.PAA30797@bush.i.sourceforge.net> Bug #113793, was updated on 2000-Sep-07 06:09 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: getopt.c compile fails on Solaris 2.6/gcc 2.95.2 Details: I configured python with the following options: /ldatae/Misc/python/Python-1.6/configure --program-prefix=g --target=sparc-su n-solaris2.6 --prefix=/projects/gnu/sparc-sun-solaris2.6 --exec-prefix=/projects /gnu/sparc-sun-solaris2.6 --with-gnu-gettext --with-rx --with-curses=/projects/g nu/sparc-sun-solaris2.6/lib --with-shared --with-profile --enable-nls --x-includ es=/usr/openwin/include --x-libraries=/usr/openwin/lib --with-wctype-functions - -with-x-toolkit=motif --with-x --with-threads After compiling for a while, the build stops with this error: gcc -g -O2 -I/ldatae/Misc/python/Python-1.6/Python/../Include -I.. -DHAVE_CONFIG _H -c -o getopt.o getopt.c getopt.c: In function `getopt': getopt.c:51: argument `argv' doesn't match prototype /usr/include/stdio.h:329: prototype declaration getopt.c:51: argument `optstring' doesn't match prototype /usr/include/stdio.h:329: prototype declaration make[1]: *** [getopt.o] Error 1 make[1]: Leaving directory `/ldatae/Misc/python/Python-1.6/Python' make: *** [Python] Error I can supply more details if someone emails me at lvirden@cas.org . Thank you. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113793&group_id=5470 From noreply@sourceforge.net Thu Sep 7 23:58:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 15:58:42 -0700 Subject: [Python-bugs-list] [Bug #113576] Py_PROTO missing from the include files Message-ID: <200009072258.PAA30973@bush.i.sourceforge.net> Bug #113576, was updated on 2000-Sep-04 14:14 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 7 Summary: Py_PROTO missing from the include files Details: Some old extensions still use the Py_PROTO() macro which was present in Python 1.5.2 and ealier. After the ANSIfication of the sources, this macro seems to have been removed from the Python include files. This breaks all extensions which used the macro. Adding a #define Py_PROTO(args) args to pyport.h should remedy this. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 15:58 By: jhylton Comment: Sounds reasonable to me. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113576&group_id=5470 From noreply@sourceforge.net Fri Sep 8 00:02:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 16:02:45 -0700 Subject: [Python-bugs-list] [Bug #113760] 2.0b1: _xmlplus does not allow site xml to override Lib/xml Message-ID: <200009072302.QAA31134@bush.i.sourceforge.net> Bug #113760, was updated on 2000-Sep-06 16:53 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 7 Summary: 2.0b1: _xmlplus does not allow site xml to override Lib/xml Details: _xmlplus is represented as a means of overriding the new standard lib xml package with a user-supplied xml package, such as the one from XML-SIG ("There's a special feature whereby a user-installed package named _xmlplus overrides the standard xmlpackage; this is intended to give the XML SIG a hook to distribute backwards-compatible updates to the standard xml package." - quote from News on BeOpen site). While this has _some_ effect, it does not work as described. Under 2.0b1, code using the xml package from the XML-SIG (installed in site-packages) will only work if the new standard xml package in lib is renamed or removed. If used with the new standard xml package, imports such as from xml.sax import saxexts fail. If the _xmlplus hook is used (by renaming site-packages/xml to site-packages/_xmlplus or using a symlink), the imports succeed, but later the code fails with a message stating that no parsers can be found. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113760&group_id=5470 From noreply@sourceforge.net Fri Sep 8 00:12:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 16:12:42 -0700 Subject: [Python-bugs-list] [Bug #113760] 2.0b1: _xmlplus does not allow site xml to override Lib/xml Message-ID: <200009072312.QAA05438@delerium.i.sourceforge.net> Bug #113760, was updated on 2000-Sep-06 16:53 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 7 Summary: 2.0b1: _xmlplus does not allow site xml to override Lib/xml Details: _xmlplus is represented as a means of overriding the new standard lib xml package with a user-supplied xml package, such as the one from XML-SIG ("There's a special feature whereby a user-installed package named _xmlplus overrides the standard xmlpackage; this is intended to give the XML SIG a hook to distribute backwards-compatible updates to the standard xml package." - quote from News on BeOpen site). While this has _some_ effect, it does not work as described. Under 2.0b1, code using the xml package from the XML-SIG (installed in site-packages) will only work if the new standard xml package in lib is renamed or removed. If used with the new standard xml package, imports such as from xml.sax import saxexts fail. If the _xmlplus hook is used (by renaming site-packages/xml to site-packages/_xmlplus or using a symlink), the imports succeed, but later the code fails with a message stating that no parsers can be found. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 16:12 By: mfavas Comment: Martin v. Loewis has justed posted a link on xml-sig to a patch for the "no parsers can be found" problem. I've applied the patch (by hand - "patch" failed) and all seems OK. Custom, tricky ways of finding/doing imports abound... Wasn't there some talk of tidying-up imports and import hooks? (MvL's patch is at http://sourceforge.net/patch/?func=detailpatch&patch_id=101444&group_id=6473 ) - Mark ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113760&group_id=5470 From noreply@sourceforge.net Fri Sep 8 00:17:43 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 16:17:43 -0700 Subject: [Python-bugs-list] [Bug #113760] 2.0b1: _xmlplus does not allow site xml to override Lib/xml Message-ID: <200009072317.QAA05609@delerium.i.sourceforge.net> Bug #113760, was updated on 2000-Sep-06 16:53 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 7 Summary: 2.0b1: _xmlplus does not allow site xml to override Lib/xml Details: _xmlplus is represented as a means of overriding the new standard lib xml package with a user-supplied xml package, such as the one from XML-SIG ("There's a special feature whereby a user-installed package named _xmlplus overrides the standard xmlpackage; this is intended to give the XML SIG a hook to distribute backwards-compatible updates to the standard xml package." - quote from News on BeOpen site). While this has _some_ effect, it does not work as described. Under 2.0b1, code using the xml package from the XML-SIG (installed in site-packages) will only work if the new standard xml package in lib is renamed or removed. If used with the new standard xml package, imports such as from xml.sax import saxexts fail. If the _xmlplus hook is used (by renaming site-packages/xml to site-packages/_xmlplus or using a symlink), the imports succeed, but later the code fails with a message stating that no parsers can be found. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 16:12 By: mfavas Comment: Martin v. Loewis has justed posted a link on xml-sig to a patch for the "no parsers can be found" problem. I've applied the patch (by hand - "patch" failed) and all seems OK. Custom, tricky ways of finding/doing imports abound... Wasn't there some talk of tidying-up imports and import hooks? (MvL's patch is at http://sourceforge.net/patch/?func=detailpatch&patch_id=101444&group_id=6473 ) - Mark ------------------------------------------------------- Date: 2000-Sep-07 16:17 By: mfavas Comment: Martin v. Loewis has justed posted a link on xml-sig to a patch for the "no parsers can be found" problem. I've applied the patch (by hand - "patch" failed) and all seems OK. Custom, tricky ways of finding/doing imports abound... Wasn't there some talk of tidying-up imports and import hooks? (MvL's patch is at http://sourceforge.net/patch/?func=detailpatch&patch_id=101444&group_id=6473 ) - Mark ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113760&group_id=5470 From noreply@sourceforge.net Fri Sep 8 03:51:00 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 19:51:00 -0700 Subject: [Python-bugs-list] [Bug #110702] [Linux] closing a popen file descriptor (PR#33) Message-ID: <200009080251.TAA06407@bush.i.sourceforge.net> Bug #110702, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Works For Me Bug Group: Platform-specific Priority: 5 Summary: [Linux] closing a popen file descriptor (PR#33) Details: Jitterbug-Id: 33 Submitted-By: laik@cs.stanford.edu Date: Tue, 20 Jul 1999 14:00:11 -0400 (EDT) Version: 1.5.2 OS: Linux 2.2.10 I can't close a pipe's file descriptor without an error: >>> import os >>> p1 = os.popen("cat dummy1", "r") >>> p2 = os.popen("cat dummy2", "r") >>> p1.close() Traceback (innermost last): File "", line 1, in ? IOError: (0, 'Error') It only happens if I do two or more popens. If I try to close any file descriptor but the last one I opened, I get this mysterious IOError. It happens regardless of the order I try to close the descriptors. ==================================================================== Audit trail: Sat Jul 24 17:02:54 1999 guido sent reply 1 Sat Jul 24 17:03:22 1999 guido changed notes Sat Jul 24 17:03:22 1999 guido moved from incoming to open Sat Jul 24 17:05:25 1999 guido moved from open to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: closing a popen file descriptor (PR#33) Date: Sat Jul 24 17:02:54 1999 > Full_Name: Kevin Lai > Version: 1.5.2 > OS: Linux 2.2.10 > Submission from: (NULL) (192.25.214.6) > > > I can't close a pipe's file descriptor without an error: > >>>> import os >>>> p1 = os.popen("cat dummy1", "r") >>>> p2 = os.popen("cat dummy2", "r") >>>> p1.close() > Traceback (innermost last): > File "", line 1, in ? > IOError: (0, 'Error') > > It only happens if I do two or more popens. If I try to close any file > descriptor > but the last one I opened, I get this mysterious IOError. It happens regardless > of the order I try to close the descriptors. Kevin, this works on other platforms I can try (Solaris 2.6, linux 2.0.34). One possibility is that the C library in the Linux version you are using has changed; the IOError means that its pclose() returns an error indicator. The (0, 'Error') message means that pclose() didn't set the errno variable. It could be a bug in the Linux C library, or a change in interface that requires Python to interpret the error return differently. Can you help us discover which is the case? Does the man page for pclose() say anything about this? Does this fail in an equivalent C program? --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: laik@tnt.Stanford.EDU Subject: Re: closing a popen file descriptor (PR#33) Date: Tue, 27 Jul 1999 01:41:15 -0700 Guido, Thanks for your quick reply. As far as I can tell, the man page for pclose() doesn't mention any API changes. I have included the popen() and wait4() man pages for the system I am using (PII 300, Linux 2.2.10, glibc 2.1.1). I have written a short C program which tries to exercise the bug. On my system, it gives these results: [laik@nebraska]~>gcc popen.c [laik@nebraska]~>a.out pclose(p1): 0, WIFEXITED: 1, WEXITSTATUS:0, WIFSIGNALED:0 pclose(p2): 0, WIFEXITED: 1, WEXITSTATUS:0, WIFSIGNALED:0 pclose(p3): 0, WIFEXITED: 1, WEXITSTATUS:0, WIFSIGNALED:0 On a Linux 2.0.33, glibc 2.0.7 system, it gives the same results. However, my system exhibits the problem under Python, while the other does not. I conclude that my C program doesn't mimic the Python program well enough to trigger the bug, but I don't know how to fix that. #include #define _USE_BSD #include #include #include main() { FILE *p1, *p2, *p3; int pc1, pc2, pc3; p1 = popen("ls", "r"); p2 = popen("ls", "r"); p3 = popen("ls", "r"); sleep(1); pc1 = pclose(p1); printf("pclose(p1): %d, WIFEXITED: %d, WEXITSTATUS:%d, WIFSIGNALED:%d\n", pc1, WIFEXITED(pc1), WEXITSTATUS(pc1), WIFSIGNALED(pc1)); pc2 = pclose(p2); printf("pclose(p2): %d, WIFEXITED: %d, WEXITSTATUS:%d, WIFSIGNALED:%d\n", pc1, WIFEXITED(pc2), WEXITSTATUS(pc2), WIFSIGNALED(pc2)); pc3 = pclose(p3); printf("pclose(p3): %d, WIFEXITED: %d, WEXITSTATUS:%d, WIFSIGNALED:%d\n", pc3, WIFEXITED(pc3), WEXITSTATUS(pc3), WIFSIGNALED(pc3)); } POPEN(3) Linux Programmer's Manual POPEN(3) NAME popen, pclose - process I/O SYNOPSIS #include FILE *popen(const char *command, const char *type); int pclose(FILE *stream); DESCRIPTION The popen() function opens a process by creating a pipe, forking, and invoking the shell. Since a pipe is by defi- nition unidirectional, the type argument may specify only reading or writing, not both; the resulting stream is cor- respondingly read-only or write-only. The command argument is a pointer to a null-terminated string containing a shell command line. This command is passed to /bin/sh using the -c flag; interpretation, if any, is performed by the shell. The mode argument is a pointer to a null-terminated string which must be either `r' for reading or `w' for writing. The return value from popen() is a normal standard I/O stream in all respects save that it must be closed with pclose() rather than fclose(). Writing to such a stream writes to the standard input of the command; the command's standard output is the same as that of the process that called popen(), unless this is altered by the command itself. Conversely, reading from a ``popened'' stream reads the command's standard output, and the command's standard input is the same as that of the process that called popen. Note that output popen streams are fully buffered by default. The pclose function waits for the associated process to terminate and returns the exit status of the command as returned by wait4. RETURN VALUE The popen function returns NULL if the fork(2) or pipe(2) calls fail, or if it cannot allocate memory. The pclose function returns -1 if wait4 returns an error, or some other error is detected. ERRORS The popen function does not set errno if memory allocation fails. If the underlying fork() or pipe() fails, errno is set appropriately. If the mode argument is invalid, and this condition is detected, errno is set to EINVAL. If pclose() cannot obtain the child status, errno is set to ECHILD. CONFORMING TO POSIX.2 BUGS Since the standard input of a command opened for reading shares its seek offset with the process that called popen(), if the original process has done a buffered read, the command's input position may not be as expected. Sim- ilarly, the output from a command opened for writing may become intermingled with that of the original process. The latter can be avoided by calling fflush(3) before popen. Failure to execute the shell is indistinguishable from the shell's failure to execute command, or an immediate exit of the command. The only hint is an exit status of 127. HISTORY A popen() and a pclose() function appeared in Version 7 AT&T UNIX. SEE ALSO fork(2), sh(1), pipe(2), wait4(2), fflush(3), fclose(3), fopen(3), stdio(3), system(3). BSD MANPAGE 7 May 1998 1 WAIT4(2) Linux Programmer's Manual WAIT4(2) NAME wait3, wait4 - wait for process termination, BSD style SYNOPSIS #define _USE_BSD #include #include #include pid_t wait3(int *status, int options, struct rusage *rusage) pid_t wait4(pid_t pid, int *status, int options, struct rusage *rusage) DESCRIPTION The wait3 function suspends execution of the current pro- cess until a child has exited, or until a signal is deliv- ered whose action is to terminate the current process or to call a signal handling function. If a child has already exited by the time of the call (a so-called "zom- bie" process), the function returns immediately. Any sys- tem resources used by the child are freed. The wait4 function suspends execution of the current pro- cess until a child as specified by the pid argument has exited, or until a signal is delivered whose action is to terminate the current process or to call a signal handling function. If a child as requested by pid has already exited by the time of the call (a so-called "zombie" pro- cess), the function returns immediately. Any system resources used by the child are freed. The value of pid can be one of: < -1 which means to wait for any child process whose process group ID is equal to the absolute value of pid. -1 which means to wait for any child process; this is equivalent to calling wait3. 0 which means to wait for any child process whose process group ID is equal to that of the calling process. > 0 which means to wait for the child whose process ID is equal to the value of pid. The value of options is a bitwise OR of zero or more of the following constants: WNOHANG which means to return immediately if no child is there to be waited for. WUNTRACED which means to also return for children which are stopped, and whose status has not been reported. If status is not NULL, wait3 or wait4 store status infor- mation in the location pointed to by status. This status can be evaluated with the following macros (these macros take the stat buffer (an int) as an argument -- not a pointer to the buffer!): WIFEXITED(status) is non-zero if the child exited normally. WEXITSTATUS(status) evaluates to the least significant eight bits of the return code of the child which terminated, which may have been set as the argument to a call to exit() or as the argument for a return state- ment in the main program. This macro can only be evaluated if WIFEXITED returned non-zero. WIFSIGNALED(status) returns true if the child process exited because of a signal which was not caught. WTERMSIG(status) returns the number of the signal that caused the child process to terminate. This macro can only be evaluated if WIFSIGNALED returned non-zero. WIFSTOPPED(status) returns true if the child process which caused the return is currently stopped; this is only possible if the call was done using WUNTRACED. WSTOPSIG(status) returns the number of the signal which caused the child to stop. This macro can only be evaluated if WIFSTOPPED returned non-zero. If rusage is not NULL, the struct rusage as defined in it points to will be filled with accounting information. See getrusage(2) for details. RETURN VALUE The process ID of the child which exited, -1 on error (in particular, when no unwaited-for child processes of the specified kind exist) or zero if WNOHANG was used and no child was available yet. In the latter two cases errno will be set appropriately. ERRORS ECHILD No unwaited-for child process as specified does exist. ERESTARTSYS if WNOHANG was not set and an unblocked signal or a SIGCHLD was caught. This error is returned by the system call. The library interface is not allowed to return ERESTARTSYS, but will return EINTR. CONFORMING TO SVr4, POSIX.1 SEE ALSO signal(2), getrusage(2), wait(2), signal(7) Linux 23 June 1997 1 ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: Perhaps a bug or interface change in Linux popen()? ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 19:51 By: fdrake Comment: I can't reproduce this on a Linux 2.2.15 kernel (Mandrake 7.1) using Python 2.0beta1. Will ask the submitter to test with a more recent Python and request a re-open of the report if the problem persists. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110702&group_id=5470 From noreply@sourceforge.net Fri Sep 8 03:56:00 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 19:56:00 -0700 Subject: [Python-bugs-list] [Bug #113696] lib.pdf damaged in pdf-a4-2.0b1.tgz Message-ID: <200009080256.TAA06574@bush.i.sourceforge.net> Bug #113696, was updated on 2000-Sep-06 06:01 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: lib.pdf damaged in pdf-a4-2.0b1.tgz Details: Platform: NT4 SP6, Acrobat Reader 4.05. Tarball unpacks correctly and every other .pdf file in it is fine; however, lib.pdf appears to be corrupt, "can't repair", according to the Acrobat Reader. Follow-Ups: Date: 2000-Sep-06 06:18 By: aleax Comment: Same problem with lib.pdf (only) after downloading the ZIP, and also in the Letter versions as opposed to A4. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 19:56 By: fdrake Comment: Fixed earlier today by removing some fragile markup in a section title. Updated PDF packages in the appropriate download areas. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113696&group_id=5470 From noreply@sourceforge.net Fri Sep 8 04:00:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 20:00:45 -0700 Subject: [Python-bugs-list] [Bug #113254] pre/sre difference breaks pyclbr Message-ID: <200009080300.UAA06751@bush.i.sourceforge.net> Bug #113254, was updated on 2000-Aug-31 12:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Fixed Bug Group: None Priority: 6 Summary: pre/sre difference breaks pyclbr Details: """ pre and sre deal differently with groups that "do not contribute to the match". Fredrick points out that sre seems to be right but now pyclbr is broken (though easy to fix). This program demonstrates the difference in behavior and the pyclbr breakage. call it "pyclbrbug.py" The name matters because it uses itself as a test case! """ import pre import sre import pyclbr import sys the_re=r""" (?P ^ (?P [ \t]* ) def [ \t]+ (?P [a-zA-Z_] \w* ) [ \t]* \( ) | (?P ^ (?P [ \t]* ) class [ \t]+ (?P [a-zA-Z_] \w* ) [ \t]* (?P \( [^)\n]* \) )? [ \t]* : ) """ eg="class foo: pass" def test( mod ): print "===========", mod.__name__ re=mod.compile(the_re, mod.VERBOSE | mod.DOTALL | mod.MULTILINE) match=re.search( eg ) print match.start( "Method" ) print match.group( "MethodIndent" ) sys.modules["re"]=mod reload( pyclbr ) pyclbr.readmodule_ex("pyclbrbug",["."]) test( pre ) test( sre ) Follow-Ups: Date: 2000-Aug-31 20:57 By: jhylton Comment: Who should fix pyclbr? If not you /F, please reassign. ------------------------------------------------------- Date: 2000-Sep-02 09:31 By: effbot Comment: after discussion with GvR, we decided to fix this in SRE. fred, can you update the start/end/span documentation and close this bug? (the code is right, the docs are wrong). ------------------------------------------------------- Date: 2000-Sep-07 20:00 By: fdrake Comment: Documentation update included in Doc/lib/libre.tex revision 1.53. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113254&group_id=5470 From noreply@sourceforge.net Fri Sep 8 04:01:09 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 20:01:09 -0700 Subject: [Python-bugs-list] [Bug #111481] os.stat() doesn't return st_rdev Message-ID: <200009080301.UAA06765@bush.i.sourceforge.net> Bug #111481, was updated on 2000-Aug-09 06:38 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Feature Request Priority: 4 Summary: os.stat() doesn't return st_rdev Details: The call os.stat() returns the fields st_mode, st_ino, st_nlink, st_uid, st_gid, st_size, st_atime, st_mtime st_ctime from "struct stat". To be able to explore device nodes on a linux system the field st_rdev needed as the major and minor device number is stored in this field. It would be nice if it could be added as an extra element in the tuple returned by os.stat, os.lstat etc. Follow-Ups: Date: 2000-Aug-29 21:51 By: fdrake Comment: We could add an additional element to the end with the st_rdev value, but I'm not convinced that's really the right approach; some other platform that defines another field could get that added at the end of the return tuple, and the the 11th position would have incompatible values. The "right" solution may be to create a new function (nstat?) that returns either a dictionary or other object that has entries for all the fields (using None for fields a platform doesn't provide values for). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=111481&group_id=5470 From noreply@sourceforge.net Fri Sep 8 05:43:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 7 Sep 2000 21:43:25 -0700 Subject: [Python-bugs-list] [Bug #113850] posixfile __del__ method is wrong Message-ID: <200009080443.VAA16823@delerium.i.sourceforge.net> Bug #113850, was updated on 2000-Sep-07 21:43 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: posixfile __del__ method is wrong Details: The posixfile __del__ method attempts to close the file (_file_) it contains. However, if the open method fails, then _file_ is never assigned. The solution is to modify __del__ as follows: def __del__(self): if hasattr(self, '_file_'): self._file_.close() -Kevin Jacobs (jacobs@darwin.cwru.edu) For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113850&group_id=5470 From noreply@sourceforge.net Fri Sep 8 09:02:10 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 01:02:10 -0700 Subject: [Python-bugs-list] [Bug #113779] test_gc coredump on Alpha Message-ID: <200009080802.BAA16838@bush.i.sourceforge.net> Bug #113779, was updated on 2000-Sep-06 21:44 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: test_gc coredump on Alpha Details: Configured --with-cycle-gc --with-sigfpe gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable Segmentation fault (core dumped) gdb reports: Core was generated by `./python -tt Lib/test/regrtest.py -l -v test_gc'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libpthread.so.0...done. Reading symbols from /lib/libdl.so.2.1...done. Reading symbols from /lib/libutil.so.1.1...done. Reading symbols from /lib/libm.so.6.1...done. Reading symbols from /lib/libc.so.6.1...done. Reading symbols from /lib/ld-linux.so.2...done. #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 168 if (!PyList_Check(op)) { (gdb) where #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 #1 0x120085fac in handle_finalizers (finalizers=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:312 #2 0x1200862d8 in collect (young=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:438 #3 0x120086704 in gc_collect (self=0x100000000, args=0x12043d158) at ./gcmodule.c:588 #4 0x120018ef0 in call_builtin (func=0x1, arg=0x12039e258, kw=0x0) at ceval.c:2628 #5 0x120018d30 in PyEval_CallObjectWithKeywords (func=0x1204377c0, arg=0x12039e258, kw=0x0) at ceval.c:2596 #6 0x12001713c in eval_code2 (co=0x12043b890, globals=0x12043d158, locals=0x120370488, args=0xffffffffffffffff, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1929 #7 0x120016cc4 in eval_code2 (co=0x12043c400, globals=0x12043d158, locals=0x120370488, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, ... (gdb) print op $1 = (PyObject *) 0x100000000 (gdb) print newitem $2 = (PyObject *) 0x12043d158 Follow-Ups: Date: 2000-Sep-06 21:49 By: none Comment: Note that without -l to regrtest it does NOT dump core, and completes correctly. ------------------------------------------------------- Date: 2000-Sep-07 08:23 By: bwarsaw Comment: It could just be a bug in the debug printing of collected objects. The -l switch for the regrtest simply adds a call to gc.set_debug(gc.DEBUG_LEAK) before the rest of the tests get going. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:02 By: none Comment: By the way, the original post was made by tomh@po.crl.go.jp, who can test a fix. However, he's out of town until 9/14. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113779&group_id=5470 From nobody@sourceforge.net Fri Sep 8 09:33:47 2000 From: nobody@sourceforge.net (Nobody) Date: Fri, 8 Sep 2000 01:33:47 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009080833.BAA17894@bush.i.sourceforge.net> From: noreply@sourceforge.net Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- Date: 2000-Sep-07 14:41 By: jhylton Comment: If you set the GC threshold to 0, import gc gc.set_threshold(0) Do you get the same problem? Not that I doubt there is some sort of gc problem, but I wonder if there is something going wrong in the accounting or in the collection. How hard would it be for someone to try to reproduce this bug? Obviously, it would be helpful to get a smaller test case that has the same behavior as your large program and also tickles the bug. Do you have any C extension modules in your application or is it pure Python? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:33 By: edg Comment: The code is 100% pure Python. When I set the threshold to 0, the problem doesn't occur. The problem is probably very hard to reproduce by anyone else. The slightest change in the input data for my application can make the problem go away. Even running an optimized instead of a debug version of the interpreter can make a difference. I'm certainly going to try to strip it down, but that won't be easy (the same application, using other input data, running 6 times as long, runs just fine). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Fri Sep 8 09:48:17 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 01:48:17 -0700 Subject: [Python-bugs-list] [Bug #113862] 2.0b1 lib.pdf, problems with bookmark titles Message-ID: <200009080848.BAA24762@delerium.i.sourceforge.net> Bug #113862, was updated on 2000-Sep-08 01:48 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: 2.0b1 lib.pdf, problems with bookmark titles Details: In Acrobat Reader, 3.25 shows in the Bookmarks as "protect unhbox voidb@x kern.06envbox" etc. It does show correctly as "__builtin__ -- Built-in functions" in the main window, and when printed. 3.26, same problem. Other titles seem OK (haven't checked them all, though). For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113862&group_id=5470 From noreply@sourceforge.net Fri Sep 8 09:49:27 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 01:49:27 -0700 Subject: [Python-bugs-list] [Bug #113800] optional{} produces incorrect HTML Message-ID: <200009080849.BAA24788@delerium.i.sourceforge.net> Bug #113800, was updated on 2000-Sep-07 08:18 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: optional{} produces incorrect HTML Details: This showed up in the Python 2.0 document: LaTeX2HTML produces bad HTML with improperly nested tags, including a trailing tag that leaves the rest of the document in italic on some browsers. Sample document: \documentclass{howto} \title{What's New in Python 2.0} \release{0.05} \author{A.M. Kuchling and Moshe Zadka} \authoraddress{\email{amk1@bigfoot.com}, \email{moshez@math.huji.ac.il} } \begin{document} \code{unicode(\var{string} \optional{, \var{encoding}} \optional{, \var{errors}} ) } creates a Unicode string from an 8-bit \end{document} The incorrect HTML output is: unicode(string [, encoding][, errors] ) creates ... Follow-Ups: Date: 2000-Sep-08 01:49 By: aleax Comment: bug 113700 is a consequence of this, I think. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113800&group_id=5470 From noreply@sourceforge.net Fri Sep 8 09:50:05 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 01:50:05 -0700 Subject: [Python-bugs-list] [Bug #113700] widespread bug in HTML files: lots of italics Message-ID: <200009080850.BAA24886@delerium.i.sourceforge.net> Bug #113700, was updated on 2000-Sep-06 06:16 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: widespread bug in HTML files: lots of italics Details: I'd already noticed this in AMK's and Moshe's doc about "what's new in Python 2". There's some bug in the converter-to-HTML that, occasionally, for a big closed bracket, outputs a in front and a in back rather than vice-versa; so all the rest of the HTML is italicized. E.g., it shows up in built-in-funcs.html in the description of int (x[, radix]) [possibly later too, haven't checked]. Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:50 By: aleax Comment: A consequence of bug 113800, I believe. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113700&group_id=5470 From noreply@sourceforge.net Fri Sep 8 12:49:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 04:49:45 -0700 Subject: [Python-bugs-list] [Bug #113807] PyArg_ParseTupleAndKeywords and Unicode...? Message-ID: <200009081149.EAA30994@delerium.i.sourceforge.net> Bug #113807, was updated on 2000-Sep-07 09:11 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: PyArg_ParseTupleAndKeywords and Unicode...? Details: I have a small extension that works OK with PyArg_ParseTuple and a es# format; using the same format with PyArg_ParseTupleAndKeywords doesn't seem to work -- after importing that module, Python thinks 2 args are needed, and one of them is an 'impossible format character'. Experimentally switching to s#, it works _except_ when I use the name=value format AND I pass a u'something' as the value, then it crashes the interpreter. So I'm going back to PyArg_ParseTuple, but, the AndKeywords form _is_ also supposed to work with Unicode, right...? The platform I'm using is NT 4, SP6, with MS VC++ 6 SP4 -- just in case it's platform specific... Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 04:49 By: lemburg Comment: I've just checked in a patch which should fix this. As I don't have code which uses keywords *and* "es#", could you perhaps check whether this does solve the problem ? You'll have to download and recompile Python from the CVS tree version for this. Alternatively, perhaps you could provide some C code demonstrating the bug, which I could then check on Unix. Thanks. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113807&group_id=5470 From noreply@sourceforge.net Fri Sep 8 13:14:32 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 05:14:32 -0700 Subject: [Python-bugs-list] [Bug #110835] Find out size of primitive object (PR#214) Message-ID: <200009081214.FAA25593@bush.i.sourceforge.net> Bug #110835, was updated on 2000-Aug-01 14:13 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Find out size of primitive object (PR#214) Details: Jitterbug-Id: 214 Submitted-By: loewis@informatik.hu-berlin.de Date: Fri, 25 Feb 2000 14:28:33 -0500 (EST) Version: 1.5.2 OS: Solaris This is a feature request made on python-help. If you want to estimate how much memory your application uses, you currently have to count the bytes manually. If there was a builtin function (say, sys.sizeof), counting would be much easier. It would be documented as sizeof(object) -> integer Return the number of bytes that an object uses internally. This only counts the number of bytes used by the object itself, not those of any of its attributes. Ie. sys.sizeof(0) would give 12 on my system, the size of a dictionary would count the dictentries, but the size of an instanceobject would not count the the size of the __dict__ attribute. ==================================================================== Audit trail: Tue Mar 07 14:42:18 2000 guido changed notes Tue Mar 07 14:42:18 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:14 By: none Comment: Interesting idea. Is this what we need? ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 05:14 By: lemburg Comment: See mxTools at http://starship.python.net/~lemburg/ for an example of how to implement a sizeof() function. The problem with this approach is that it only counts the size of the object struct itself and doesn't account for any external storage which may have been allocated by the object (e.g. Unicode objects and dictionaries use such external resources). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110835&group_id=5470 From noreply@sourceforge.net Fri Sep 8 13:21:36 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 05:21:36 -0700 Subject: [Python-bugs-list] [Bug #110924] support Unicode for Python source code Message-ID: <200009081221.FAA25926@bush.i.sourceforge.net> Bug #110924, was updated on 2000-Aug-02 08:17 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: None Bug Group: Feature Request Priority: 1 Summary: support Unicode for Python source code Details: exec u"print 42" doesn't work. Follow-Ups: Date: 2000-Aug-09 02:35 By: effbot Comment: python doesn't support 16-bit source code -- so what exactly do you want exec to do? ------------------------------------------------------- Date: 2000-Aug-17 05:17 By: none Comment: That's exactly my point. Python should support Unicode everywhere, in __str__ and __repr__, exec and eval, in open(), as a format for the source code (which would result in all variable names to be Unicode)... Currenly working with Unicode (e.g. for XML) is a mess, because it's supported nowhere. exec "a='ü'" seems to work and seems to treat the string as iso-8859-1 (or not at all) ------------------------------------------------------- Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 05:21 By: lemburg Comment: I don't think that the situation is that bad. You can't program Python in Unicode, but this doesn't stop you from using it in your Python programs. Note that __str__ and __repr__ do support Unicode (it gets converted to an 8-bit string using the default encoding). There's currently not much need to have exec or eval() automatically apply any conversion... you can always use str() around the argument to make it support both 8-bit strings and Unicode. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110924&group_id=5470 From noreply@sourceforge.net Fri Sep 8 13:27:47 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 05:27:47 -0700 Subject: [Python-bugs-list] [Bug #110698] strptime gives format mismatch when time zone present (PR#164) Message-ID: <200009081227.FAA26174@bush.i.sourceforge.net> Bug #110698, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: strptime gives format mismatch when time zone present (PR#164) Details: Jitterbug-Id: 164 Submitted-By: python-bugreport@derf.net Date: Tue, 21 Dec 1999 08:27:27 -0500 (EST) Version: 1.5.2 OS: RedHat 5.2; Linux 2.2.12 time.strptime() seems to fail when the time zone ('%Z') appears in the format string. when it is omitted from the format string (and from the string being parsed), strptime() works fine. here is a sample script which demonstrates the bug: ------ #!/usr/bin/python import time timetuple0 = time.localtime(time.time()) print timetuple0 format1 = '%a %b %d %H:%M:%S %Y' timestring1 = time.strftime( format1 , timetuple0 ) print timestring1 timetuple1 = time.strptime( timestring1 , format1 ) print timetuple1 format2 = '%a %b %d %H:%M:%S %Z %Y' timestring2 = time.strftime( format2 , timetuple0 ) print timestring2 timetuple2 = time.strptime( timestring2 , format2 ) print timetuple2 ------ when i run the above, i get the following output: ------ (1999, 12, 21, 5, 25, 35, 1, 355, 0) Tue Dec 21 05:25:35 1999 (1999, 12, 21, 5, 25, 35, 1, 355, 0) Tue Dec 21 05:25:35 PST 1999 Traceback (innermost last): File "./test.py", line 17, in ? timetuple2 = time.strptime( timestring2 , format2 ) ValueError: format mismatch ------ ==================================================================== Audit trail: Tue Dec 21 11:47:04 1999 guido changed notes Tue Dec 21 11:47:05 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] strptime gives format mismatch when time zone present (PR#164) Date: Tue, 21 Dec 1999 09:12:15 -0500 > time.strptime() seems to fail when the time zone ('%Z') appears in > the format string. when it is omitted from the format string (and > from the string being parsed), strptime() works fine. Reporting this as a Python bug is not going to fix it. The time.strptime() function in Python is a very thin wrapper around the strptime() function in the C library. We get a lot of complaints about this, but there's no way that we're able to fix this -- it's the C strptime() function that needs to be fixed. Write to your friendly Linux support people! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: The C library strptime() needs fixin'. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 05:27 By: lemburg Comment: FYI, you could check out mxDateTime which provides a parser for various date/time formats instead of waiting for your strptime() C API to get fixed. mxDateTime is available at http://starship.python.net/~lemburg/. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110698&group_id=5470 From mal@lemburg.com Fri Sep 8 13:29:42 2000 From: mal@lemburg.com (M.-A. Lemburg) Date: Fri, 08 Sep 2000 14:29:42 +0200 Subject: [Python-bugs-list] Re: [Bug #113807] PyArg_ParseTupleAndKeywords and Unicode...? References: <200009072203.PAA28857@bush.i.sourceforge.net> <02ec01c01918$7c2ce380$aca1abd4@martelli> Message-ID: <39B8DBB6.FB4E88DB@lemburg.com> Alex Martelli wrote: > > > Date: 2000-Sep-07 15:03 > > By: jhylton > > > > Comment: > > Please do triage on this bug. > > Sorry, I don't understand what "triage" means in > this context. Want a small extension that will > reproduce the bug? I can do that -- two functions > each taking a es# format argument, one without > kw args, one with, otherwise identical. Would that > be useful? Where should I send the source code > to reproduce the bug? Yes, please. Note that I've just checked in a patch which should fix the problem. A test program would be great to verify this. -- Marc-Andre Lemburg ______________________________________________________________________ Business: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/ From noreply@sourceforge.net Fri Sep 8 13:56:03 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 05:56:03 -0700 Subject: [Python-bugs-list] [Bug #113576] Py_PROTO missing from the include files Message-ID: <200009081256.FAA00961@delerium.i.sourceforge.net> Bug #113576, was updated on 2000-Sep-04 14:14 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Fixed Bug Group: None Priority: 7 Summary: Py_PROTO missing from the include files Details: Some old extensions still use the Py_PROTO() macro which was present in Python 1.5.2 and ealier. After the ANSIfication of the sources, this macro seems to have been removed from the Python include files. This breaks all extensions which used the macro. Adding a #define Py_PROTO(args) args to pyport.h should remedy this. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 15:58 By: jhylton Comment: Sounds reasonable to me. ------------------------------------------------------- Date: 2000-Sep-08 05:56 By: marangoz Comment: to mee too. But I'd better leave the HAVE_PROTOTYPE ifdef as it was defined in the old myproto.h. Some weird extensions might have fiddled with this. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113576&group_id=5470 From noreply@sourceforge.net Fri Sep 8 15:39:53 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 07:39:53 -0700 Subject: [Python-bugs-list] [Bug #113888] Compiling on alpha-osf1v4: Py_IS_INFINITY not defined Message-ID: <200009081439.HAA31031@bush.i.sourceforge.net> Bug #113888, was updated on 2000-Sep-08 07:39 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Compiling on alpha-osf1v4: Py_IS_INFINITY not defined Details: In line 168 of Include/pyport.h the definition of Py_IS_INFINITY does not start in column 0. This leads the osf compiler to ignoring the entire line. Patch: Remove the blank. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113888&group_id=5470 From lvirden@cas.org Fri Sep 8 16:12:17 2000 From: lvirden@cas.org (Larry W. Virden) Date: Fri, 8 Sep 2000 11:12:17 -0400 (EDT) Subject: [Python-bugs-list] Re: [Bug #113793] getopt.c compile fails on Solaris 2.6/gcc 2.95.2 In-Reply-To: <200009072253.PAA30797@bush.i.sourceforge.net> of Thu, 7 Sep 2000 15:53:34 -0700 Message-ID: <0009081112.AA6147@cas.org> > Date: 2000-Sep-07 15:01 > By: jhylton > > Comment: > Please do triage on this bug. What does "triage" mean? -- Never apply a Star Trek solution to a Babylon 5 problem. Larry W. Virden Even if explicitly stated to the contrary, nothing in this posting should be construed as representing my employer's opinions. -><- From noreply@sourceforge.net Fri Sep 8 16:20:43 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 08:20:43 -0700 Subject: [Python-bugs-list] [Bug #113807] PyArg_ParseTupleAndKeywords and Unicode...? Message-ID: <200009081520.IAA06220@delerium.i.sourceforge.net> Bug #113807, was updated on 2000-Sep-07 09:11 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: PyArg_ParseTupleAndKeywords and Unicode...? Details: I have a small extension that works OK with PyArg_ParseTuple and a es# format; using the same format with PyArg_ParseTupleAndKeywords doesn't seem to work -- after importing that module, Python thinks 2 args are needed, and one of them is an 'impossible format character'. Experimentally switching to s#, it works _except_ when I use the name=value format AND I pass a u'something' as the value, then it crashes the interpreter. So I'm going back to PyArg_ParseTuple, but, the AndKeywords form _is_ also supposed to work with Unicode, right...? The platform I'm using is NT 4, SP6, with MS VC++ 6 SP4 -- just in case it's platform specific... Follow-Ups: Date: 2000-Sep-07 15:03 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 04:49 By: lemburg Comment: I've just checked in a patch which should fix this. As I don't have code which uses keywords *and* "es#", could you perhaps check whether this does solve the problem ? You'll have to download and recompile Python from the CVS tree version for this. Alternatively, perhaps you could provide some C code demonstrating the bug, which I could then check on Unix. Thanks. ------------------------------------------------------- Date: 2000-Sep-08 08:20 By: lemburg Comment: Verified the fix using an example test extension from Alex Martelli. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113807&group_id=5470 From noreply@sourceforge.net Fri Sep 8 16:22:56 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 08:22:56 -0700 Subject: [Python-bugs-list] [Bug #113890] eval() fails with unicode string Message-ID: <200009081522.IAA32671@bush.i.sourceforge.net> Bug #113890, was updated on 2000-Sep-08 08:22 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: eval() fails with unicode string Details: Python 2.0b1 (#3, Sep 6 2000, 12:34:06) [GCC 2.95.2 19991024 (release)] on sunos5 Type "copyright", "credits" or "license" for more information. >>> eval("1+2) File "", line 1 eval("1+2) ^ SyntaxError: invalid token >>> eval("1+2") 3 >>> eval(u"1+2") Traceback (most recent call last): File "", line 1, in ? TypeError: eval() argument 1 must be string or code object For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113890&group_id=5470 From fdrake@beopen.com Fri Sep 8 16:22:20 2000 From: fdrake@beopen.com (Fred L. Drake, Jr.) Date: Fri, 8 Sep 2000 11:22:20 -0400 (EDT) Subject: [Python-bugs-list] Re: [Bug #113793] getopt.c compile fails on Solaris 2.6/gcc 2.95.2 In-Reply-To: <0009081112.AA6147@cas.org> References: <200009072253.PAA30797@bush.i.sourceforge.net> <0009081112.AA6147@cas.org> Message-ID: <14777.1068.439552.164034@cj42289-a.reston1.va.home.com> Larry W. Virden writes: > What does "triage" mean? We're going through the bugs database and making sure we've looked at every bug to determine if it can or should be fixed in Python 2.0. We expect to find that many bugs have become non-issues for a variety of reasons, and would like to close those out if needed. If we have a specific question about a bug, we'll be sending email to the submitter. The triage notice does not indicate a request from the Python developers, but a request *to* whichever develop was assigned the bug. We're sorry if this has caused any confusion. -Fred -- Fred L. Drake, Jr. BeOpen PythonLabs Team Member From noreply@sourceforge.net Fri Sep 8 16:26:53 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 08:26:53 -0700 Subject: [Python-bugs-list] [Bug #113829] hasattr() doesn't accept Unicode strings Message-ID: <200009081526.IAA06457@delerium.i.sourceforge.net> Bug #113829, was updated on 2000-Sep-07 14:28 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: hasattr() doesn't accept Unicode strings Details: hasattr(), getattr(), and doubtless other built-in functions don't accept Unicode strings at all: >>> import sys >>> hasattr(sys, u'abc') Traceback (most recent call last): File "", line 1, in ? TypeError: hasattr, argument 2: expected string, unicode found Questions raised by GvR: There are probably a bunch of things that need to be changed before this works though; getattr() c.s. require a string, then call PyObject_GetAttr() which also checks for a string unless the object supports tp_getattro -- but that's only true for classes and instances. Also, should we convert the string to 8-bit, or should we allow Unicode attribute names? It seems there's no easy fix -- better address this after 2.0 is released. Follow-Ups: Date: 2000-Sep-08 08:26 By: lemburg Comment: Just for the record and to take the discussion to SF, here's my reply on the topic in the python-dev thread "hasattr() and Unicode strings". > Also, should we convert the string to 8-bit, or should we allow > Unicode attribute names? Attribute names will have to be 8-bit strings (at least in 2.0). The reason here is that attributes are normally Python identifiers which are plain ASCII and stored as 8-bit strings in the namespace dictionaries, i.e. there's no way to add Unicode attribute names other than by assigning directly to __dict__. Note that keyword lookups already automatically convert Unicode lookup strings to 8-bit using the default encoding. The same should happen here, IMHO. > It seems there's no easy fix -- better address this after 2.0 is > released. Why wait for 2.1 ? What remains is to decide where to apply the change: in hasattr() et al. or in PyObject_GetAttr() directly. I'd opt for the latter due to its wider range of application. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113829&group_id=5470 From bwarsaw@beopen.com Fri Sep 8 16:33:00 2000 From: bwarsaw@beopen.com (Barry A. Warsaw) Date: Fri, 8 Sep 2000 11:33:00 -0400 (EDT) Subject: [Python-bugs-list] Re: [Bug #113793] getopt.c compile fails on Solaris 2.6/gcc 2.95.2 References: <200009072253.PAA30797@bush.i.sourceforge.net> <0009081112.AA6147@cas.org> Message-ID: <14777.1708.180345.407190@anthem.concentric.net> >>>>> "LWV" =3D=3D Larry W Virden writes: LWV> What does "triage" mean? Main Entry: tri=B7age Pronunciation: trE-'=E4zh, 'trE-" Function: noun Etymology: French, sorting, sifting, from trier to sort, from Old French -- more at TRY Date: 1918 : the sorting of and allocation of treatment to patients and especially battle and disaster victims according to a system of priorities designed to maximize the number of survivors; broadly : the assigning of priority order to projects on the basis of where funds and resources can be best used or are most needed - triage transitive verb=20 From jeremy@beopen.com Fri Sep 8 16:34:55 2000 From: jeremy@beopen.com (Jeremy Hylton) Date: Fri, 8 Sep 2000 11:34:55 -0400 (EDT) Subject: [Python-bugs-list] Re: [Bug #113793] getopt.c compile fails on Solaris 2.6/gcc 2.95.2 In-Reply-To: <0009081112.AA6147@cas.org> References: <200009072253.PAA30797@bush.i.sourceforge.net> <0009081112.AA6147@cas.org> Message-ID: <14777.1823.39014.148155@bitdiddle.concentric.net> It is a comment to Barry (bwarsaw), to whom the bug was just assigned, to figure out the priority and category for the bug, whether we need more information from you, etc. I did not expect the assignment to Barry to generate a comment to you, although I should have. Jeremy From noreply@sourceforge.net Fri Sep 8 16:35:06 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 08:35:06 -0700 Subject: [Python-bugs-list] [Bug #113890] eval() fails with unicode string Message-ID: <200009081535.IAA06702@delerium.i.sourceforge.net> Bug #113890, was updated on 2000-Sep-08 08:22 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: eval() fails with unicode string Details: Python 2.0b1 (#3, Sep 6 2000, 12:34:06) [GCC 2.95.2 19991024 (release)] on sunos5 Type "copyright", "credits" or "license" for more information. >>> eval("1+2) File "", line 1 eval("1+2) ^ SyntaxError: invalid token >>> eval("1+2") 3 >>> eval(u"1+2") Traceback (most recent call last): File "", line 1, in ? TypeError: eval() argument 1 must be string or code object Follow-Ups: Date: 2000-Sep-08 08:35 By: lemburg Comment: It would be fairly straight forward to fix this by having eval() and exec auto-convert the input to an 8-bit string using the default encoding. Should we proceed this way ? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113890&group_id=5470 From noreply@sourceforge.net Fri Sep 8 16:46:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 08:46:42 -0700 Subject: [Python-bugs-list] [Bug #113888] Compiling on alpha-osf1v4: Py_IS_INFINITY not defined Message-ID: <200009081546.IAA07232@delerium.i.sourceforge.net> Bug #113888, was updated on 2000-Sep-08 07:39 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: Compiling on alpha-osf1v4: Py_IS_INFINITY not defined Details: In line 168 of Include/pyport.h the definition of Py_IS_INFINITY does not start in column 0. This leads the osf compiler to ignoring the entire line. Patch: Remove the blank. Follow-Ups: Date: 2000-Sep-08 08:46 By: tim_one Comment: Thanks! Your fix has been checked in. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113888&group_id=5470 From noreply@sourceforge.net Fri Sep 8 16:55:04 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 08:55:04 -0700 Subject: [Python-bugs-list] [Bug #113894] os.listdir gives fails on Win32 platforms Message-ID: <200009081555.IAA07486@delerium.i.sourceforge.net> Bug #113894, was updated on 2000-Sep-08 08:55 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: os.listdir gives fails on Win32 platforms Details: On windows NT the os.listdir() function doesn't correctly handle paths containing a drive specification, but no other directory spec. It incorrectly references the root directory on the specified drive rather than the current directory. For example these two calls should return the same thing (the actual output has been slightly trimmed): >>> import os >>> os.listdir('c:') ['3DCube', 'Acrobat3', 'ADOBEAPP', ...] >>> os.listdir('c:.') ['Capture', 'Catalog', ...] The same problem shows up in os.glob, for example os.glob('d:*.py') will expand to all .py files in the root of drive d rather than the current directory. One possible fix is that in posixmodule.c, function posix_listdir, the lines: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); should read: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\' && namebuf[len-1] != ':') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113894&group_id=5470 From noreply@sourceforge.net Fri Sep 8 17:13:03 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 09:13:03 -0700 Subject: [Python-bugs-list] [Bug #110698] strptime gives format mismatch when time zone present (PR#164) Message-ID: <200009081613.JAA02100@bush.i.sourceforge.net> Bug #110698, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Invalid Bug Group: Platform-specific Priority: 5 Summary: strptime gives format mismatch when time zone present (PR#164) Details: Jitterbug-Id: 164 Submitted-By: python-bugreport@derf.net Date: Tue, 21 Dec 1999 08:27:27 -0500 (EST) Version: 1.5.2 OS: RedHat 5.2; Linux 2.2.12 time.strptime() seems to fail when the time zone ('%Z') appears in the format string. when it is omitted from the format string (and from the string being parsed), strptime() works fine. here is a sample script which demonstrates the bug: ------ #!/usr/bin/python import time timetuple0 = time.localtime(time.time()) print timetuple0 format1 = '%a %b %d %H:%M:%S %Y' timestring1 = time.strftime( format1 , timetuple0 ) print timestring1 timetuple1 = time.strptime( timestring1 , format1 ) print timetuple1 format2 = '%a %b %d %H:%M:%S %Z %Y' timestring2 = time.strftime( format2 , timetuple0 ) print timestring2 timetuple2 = time.strptime( timestring2 , format2 ) print timetuple2 ------ when i run the above, i get the following output: ------ (1999, 12, 21, 5, 25, 35, 1, 355, 0) Tue Dec 21 05:25:35 1999 (1999, 12, 21, 5, 25, 35, 1, 355, 0) Tue Dec 21 05:25:35 PST 1999 Traceback (innermost last): File "./test.py", line 17, in ? timetuple2 = time.strptime( timestring2 , format2 ) ValueError: format mismatch ------ ==================================================================== Audit trail: Tue Dec 21 11:47:04 1999 guido changed notes Tue Dec 21 11:47:05 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] strptime gives format mismatch when time zone present (PR#164) Date: Tue, 21 Dec 1999 09:12:15 -0500 > time.strptime() seems to fail when the time zone ('%Z') appears in > the format string. when it is omitted from the format string (and > from the string being parsed), strptime() works fine. Reporting this as a Python bug is not going to fix it. The time.strptime() function in Python is a very thin wrapper around the strptime() function in the C library. We get a lot of complaints about this, but there's no way that we're able to fix this -- it's the C strptime() function that needs to be fixed. Write to your friendly Linux support people! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: The C library strptime() needs fixin'. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 05:27 By: lemburg Comment: FYI, you could check out mxDateTime which provides a parser for various date/time formats instead of waiting for your strptime() C API to get fixed. mxDateTime is available at http://starship.python.net/~lemburg/. ------------------------------------------------------- Date: 2000-Sep-08 09:13 By: tim_one Comment: Closed it, as it's not a Python bug but a bug in the platform libc (if a non-std fnc can be called "buggy" at all ...). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110698&group_id=5470 From noreply@sourceforge.net Fri Sep 8 17:31:36 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 09:31:36 -0700 Subject: [Python-bugs-list] [Bug #110629] Tkinter Image names may be reused (PR#28) Message-ID: <200009081631.JAA02818@bush.i.sourceforge.net> Bug #110629, was updated on 2000-Jul-31 14:08 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Closed Resolution: None Bug Group: None Priority: 5 Summary: Tkinter Image names may be reused (PR#28) Details: Jitterbug-Id: 28 Submitted-By: guido@python.org Date: Wed, 14 Jul 1999 14:00:14 -0400 (EDT) Version: 1.5.2b OS: Mark Lutz wrote me: (BTW, this will probably never surface again (I'm stressing the image object a bit), but I think there's a problem with using the id() of an image as its name. I ran into a situation where an image was drawn in the wrong place, because a newly allocated image object had the same id() as one very recently reclaimed. It's very obscure, will only happen if you have > 1 canvas in a process and happen to be creating and deleting images very quickly, and is too complex for me to describe further at the moment ;-). I worked around it by first generating image names from a simple counter, and then prebuilding all images up front.) ==================================================================== Audit trail: Wed Jul 14 14:00:28 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-05 14:00 By: loewis Comment: Fixed in patch 101424, http://sourceforge.net/patch/?func=detailpatch&patch_id=101424&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-06 21:08 By: fdrake Comment: Should be fixed by Martin's patch (#101424). I've accepted the patch and assigned it and this bug to Martin for checkin and closure. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110629&group_id=5470 From noreply@sourceforge.net Fri Sep 8 17:37:00 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 09:37:00 -0700 Subject: [Python-bugs-list] [Bug #110830] "continue" inside "try" (PR#177) Message-ID: <200009081637.JAA09045@delerium.i.sourceforge.net> Bug #110830, was updated on 2000-Aug-01 14:12 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: Later Bug Group: Feature Request Priority: 1 Summary: "continue" inside "try" (PR#177) Details: Jitterbug-Id: 177 Submitted-By: simonb@logical.co.za Date: Tue, 11 Jan 2000 05:17:37 -0500 (EST) Version: 1-5-2 OS: NT 4.0 Hi there I don't know if this is a bug, or is intentional behaviour for a specific reason. The following code produces a syntax error about the continue not being within a looping structure rather than a prefectly silly infinite loop... while 1: try: continue except: pass where the following works as one would expect... while 1: try: raise 1 except: continue I figure that there is more likely a sane reason for this behaviour than being a bug, but I am curious. Thanks Simon ==================================================================== Audit trail: Wed Jan 12 18:11:45 2000 guido changed notes Wed Jan 12 18:11:45 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:12 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] Syntax (PR#177) Date: Tue, 11 Jan 2000 12:10:17 -0500 [Simon Barratt, putting "continue" in a "try" block] > I don't know if this is a bug, or is intentional behaviour > for a specific reason. Actually, it's a bit of both . See the Language Reference Manual's section on the "continue" statement, particularly the footnote: The restriction on occurring in the try clause is implementer's laziness and will eventually be lifted. It's been this way (and documented) forever; it's simply hard to implement given the current structure of the interpreter loop. Rest assured there's nothing *conceptually* wrong with putting continue in a try! It's simply an implementation restriction; the error msg should probably make that clearer. IIRC, JPython doesn't have this restriction. "Someday" it will get repaired in CPython too. ------------------------------------------------------- Date: 2000-Aug-01 14:12 By: none Comment: It's a zero-priority bug (i.e. not likely to be fixed). ------------------------------------------------------- Date: 2000-Aug-03 13:00 By: twouters Comment: Like the bot said, low priority 'to be fixed' bug. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 09:37 By: fdrake Comment: Improved exception messages when 'continue' is in a 'try' block, checked in as Python/compile.c revision 2.141. This still doesn't do the "right thing" by implementing 'continue' in this context, but makes it easier for users to understand the exception. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110830&group_id=5470 From noreply@sourceforge.net Fri Sep 8 18:19:15 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 10:19:15 -0700 Subject: [Python-bugs-list] [Bug #110859] Environment dependency in re parser (PR#290) Message-ID: <200009081719.KAA10484@delerium.i.sourceforge.net> Bug #110859, was updated on 2000-Aug-01 14:38 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Invalid Bug Group: Not a Bug Priority: 3 Summary: Environment dependency in re parser (PR#290) Details: Jitterbug-Id: 290 Submitted-By: nmm1@cam.ac.uk Date: Wed, 12 Apr 2000 07:44:54 -0400 (EDT) Version: 1.5.2 OS: Irix 6.5 The following code works perfectly when used interactively: from re import match if match(r'"([^\"]|\?""|\\?)*"','"abc"') : print "Hello" When run non-interactively (e.g. 'python junk.py'), it fails: File "junk.py", line 3, in ? if match(r'"([^\"]|\?""|\\?)*"','"abc"') : File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 40, in match return _cachecompile(pattern, flags).match(string) File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 33, in _cachecompile value = compile(pattern, flags) File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 79, in compile code=pcre_compile(pattern, flags, groupindex) pcre.error: ('operand of unlimited repeat could match the empty string', 17) ==================================================================== Audit trail: Tue Jul 11 08:29:16 2000 guido moved from incoming to open Thu Jul 13 20:37:02 2000 fdrake changed notes Thu Jul 13 20:37:02 2000 fdrake moved from open to irreproducible Follow-Ups: Date: 2000-Aug-01 14:38 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] Environment dependency in re parser (PR#290) Date: Wed, 12 Apr 2000 22:30:46 -0400 > Full_Name: Nick Maclaren > Version: 1.5.2 > OS: Irix 6.5 > Submission from: posh.mcc.wwwcache.ja.net (194.83.240.29) > > > The following code works perfectly when used interactively: > > from re import match > > if match(r'"([^\"]|\?""|\\?)*"','"abc"') : > print "Hello" > > When run non-interactively (e.g. 'python junk.py'), it fails: > > File "junk.py", line 3, in ? > if match(r'"([^\"]|\?""|\\?)*"','"abc"') : > File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 40, in match > return _cachecompile(pattern, flags).match(string) > File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 33, in > _cachecompile > value = compile(pattern, flags) > File "/usr/local/Python-1.5.2/lib/python1.5/re.py", line 79, in compile > code=pcre_compile(pattern, flags, groupindex) > pcre.error: ('operand of unlimited repeat could match the empty > string', 17) It yields the same error for me whether run interactively or from file, under the released 1.5.2 for Windows, here run from a DOS box: D:\Python>python Python 1.5.42 (#0, Jan 31 2000, 14:05:14) [MSC 32 bit (Intel)] on win32 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> from re import match >>> if match(r'"([^\"]|\?""|\\?)*"','"abc"') : ... print "Hello" ... Traceback (innermost last): File "", line 1, in ? File "D:\Python\Lib\re.py", line 40, in match return _cachecompile(pattern, flags).match(string) File "D:\Python\Lib\re.py", line 33, in _cachecompile value = compile(pattern, flags) File "D:\Python\Lib\re.py", line 79, in compile code=pcre_compile(pattern, flags, groupindex) pcre.error: ('operand of unlimited repeat could match the empty string', 17) >>> The error msg is appropriate, since the third branch of the alternative matches 0 or 1 backslashes, so the alternative as a whole can match the empty string -- the error msg means exactly what it says. This is functioning correctly as designed. Perhaps you're using an interactive shell with a filter (readline?) that's chewing up some of the backslashes itself? ------------------------------------------------------- Date: 2000-Aug-01 14:38 By: none Comment: Something from outside of Python appears to causing this. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 10:19 By: fdrake Comment: Should have already been closed; this was marked as "Not a Bug." ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110859&group_id=5470 From noreply@sourceforge.net Fri Sep 8 21:45:55 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 13:45:55 -0700 Subject: [Python-bugs-list] [Bug #113797] Build problems on Reliant Unix Message-ID: <200009082045.NAA12331@bush.i.sourceforge.net> Bug #113797, was updated on 2000-Sep-07 07:33 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Build problems on Reliant Unix Details: - the linker requires the options '-W1 -Blargedynsym', otherwise, Python's global functions and variables are not visible to external modules - when building --with-threads, the linker requires the option -Kpthread - mmapmodule.o requires a special library Python version: 2.0b1 compiler version:CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 Follow-Ups: Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 13:45 By: fdrake Comment: We need to know the output of "uname -s" and "uname -r" for this system. (If "uname -r" reports an error, please try "uname -v".) Are you willing to test a modified configure script on this platform? What additional library is required for the mmap module? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113797&group_id=5470 From noreply@sourceforge.net Fri Sep 8 21:51:59 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 13:51:59 -0700 Subject: [Python-bugs-list] [Bug #113760] 2.0b1: _xmlplus does not allow site xml to override Lib/xml Message-ID: <200009082051.NAA12644@bush.i.sourceforge.net> Bug #113760, was updated on 2000-Sep-06 16:53 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 7 Summary: 2.0b1: _xmlplus does not allow site xml to override Lib/xml Details: _xmlplus is represented as a means of overriding the new standard lib xml package with a user-supplied xml package, such as the one from XML-SIG ("There's a special feature whereby a user-installed package named _xmlplus overrides the standard xmlpackage; this is intended to give the XML SIG a hook to distribute backwards-compatible updates to the standard xml package." - quote from News on BeOpen site). While this has _some_ effect, it does not work as described. Under 2.0b1, code using the xml package from the XML-SIG (installed in site-packages) will only work if the new standard xml package in lib is renamed or removed. If used with the new standard xml package, imports such as from xml.sax import saxexts fail. If the _xmlplus hook is used (by renaming site-packages/xml to site-packages/_xmlplus or using a symlink), the imports succeed, but later the code fails with a message stating that no parsers can be found. Follow-Ups: Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-07 16:12 By: mfavas Comment: Martin v. Loewis has justed posted a link on xml-sig to a patch for the "no parsers can be found" problem. I've applied the patch (by hand - "patch" failed) and all seems OK. Custom, tricky ways of finding/doing imports abound... Wasn't there some talk of tidying-up imports and import hooks? (MvL's patch is at http://sourceforge.net/patch/?func=detailpatch&patch_id=101444&group_id=6473 ) - Mark ------------------------------------------------------- Date: 2000-Sep-07 16:17 By: mfavas Comment: Martin v. Loewis has justed posted a link on xml-sig to a patch for the "no parsers can be found" problem. I've applied the patch (by hand - "patch" failed) and all seems OK. Custom, tricky ways of finding/doing imports abound... Wasn't there some talk of tidying-up imports and import hooks? (MvL's patch is at http://sourceforge.net/patch/?func=detailpatch&patch_id=101444&group_id=6473 ) - Mark ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113760&group_id=5470 From noreply@sourceforge.net Fri Sep 8 22:55:51 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 14:55:51 -0700 Subject: [Python-bugs-list] [Bug #113810] Global Module Index points to non-existant "About" page Message-ID: <200009082155.OAA20760@delerium.i.sourceforge.net> Bug #113810, was updated on 2000-Sep-07 09:39 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: None Priority: 6 Summary: Global Module Index points to non-existant "About" page Details: Reported by Justin D. Pettit by email: - The "About this document..." hyperlink in the Global Module Index is broken. There is no "Doc/about.html". Follow-Ups: Date: 2000-Sep-08 14:55 By: fdrake Comment: Added Doc/html/about.html with some reasonable content for the document collection. This is linked to from the main index and the Global Module Index. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113810&group_id=5470 From noreply@sourceforge.net Fri Sep 8 22:57:36 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 14:57:36 -0700 Subject: [Python-bugs-list] [Bug #110853] Segmentation fault with kernel 2.2.12 (PR#103) Message-ID: <200009082157.OAA20782@delerium.i.sourceforge.net> Bug #110853, was updated on 2000-Aug-01 14:37 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: None Bug Group: Irreproducible Priority: 1 Summary: Segmentation fault with kernel 2.2.12 (PR#103) Details: Jitterbug-Id: 103 Submitted-By: apsteffe@netwood.net Date: Mon, 11 Oct 1999 22:21:00 -0400 (EDT) Version: 1.5.2 OS: Linux I'm using glibc 2.0.6 and kernel 2.2.12 and gcc-2.7.2.1 . When I try to execute httplib.HTTP() or urllib.urlretrieve() I get a segmentation fault. The functions work ok with kernel 1.2.13 . ==================================================================== Audit trail: Mon Oct 18 18:08:00 1999 guido changed notes Mon Oct 18 18:08:00 1999 guido changed notification Mon Oct 18 18:08:00 1999 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:37 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Segmentation fault with kernel 2.2.12 (PR#103) Date: Mon, 11 Oct 1999 23:09:13 -0400 > Full_Name: Alfred Steffens Jr. > Version: 1.5.2 > OS: Linux > Submission from: p138.netwood.net (209.247.185.38) > > I'm using glibc 2.0.6 and kernel 2.2.12 and gcc-2.7.2.1 . When I try to > execute httplib.HTTP() or urllib.urlretrieve() I get a segmentation fault. > The functions work ok with kernel 1.2.13 . The Linux and glibc kernel versions don't mean much to me. Can you fire up a debugger and see where in the C code it crashes? Also, is this for a specific URL or is it for any URL? If a specific URL, I'd like to know which one. Finally, did you get or build the Python executable matching your kernel? A Linux upgrade from 1.x to 2.x seems a big deal, it's possible that you'll need a new Python installation or build. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:37 By: none Comment: Probably caused by a huge jump in Linux kernel version without recompiling Python. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 14:57 By: fdrake Comment: Closed since this is not reproducible. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110853&group_id=5470 From noreply@sourceforge.net Fri Sep 8 23:12:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 15:12:26 -0700 Subject: [Python-bugs-list] [Bug #110707] does not compile under BSDI (PR#57) Message-ID: <200009082212.PAA21346@delerium.i.sourceforge.net> Bug #110707, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: Works For Me Bug Group: Platform-specific Priority: 5 Summary: does not compile under BSDI (PR#57) Details: Jitterbug-Id: 57 Submitted-By: jital@knoggin.com Date: Fri, 20 Aug 1999 04:18:04 -0400 (EDT) Version: py152 OS: BSDI IServer seems to think it is a NeXT arch or something $ ./configure --prefix=/usr/home/knoggin/usr/local/ --exec-prefix=/usr/home/knoggin/usr/local/ creating cache ./config.cache checking MACHDEP... bsdos3 checking CCC... checking for --without-gcc... no checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking LINKCC... $(PURIFY) $(CC) checking LDLIBRARY... checking for ranlib... ranlib checking for ar... ar checking how to run the C preprocessor... gcc -D_HAVE_BSDI -E checking for AIX... no checking for minix/config.h... no checking whether gcc -D_HAVE_BSDI accepts -OPT:Olimit=0... no checking whether gcc -D_HAVE_BSDI accepts -Olimit 1500... no checking for C preprocessor type... ansi checking for ANSI C header files... yes checking for dlfcn.h... yes checking for fcntl.h... yes checking for limits.h... yes checking for locale.h... yes checking for ncurses.h... yes checking for pthread.h... yes checking for signal.h... yes checking for stdarg.h... yes checking for stddef.h... yes checking for stdlib.h... yes checking for thread.h... no checking for unistd.h... yes checking for utime.h... yes checking for sys/audioio.h... no checking for sys/file.h... yes checking for sys/lock.h... yes checking for sys/param.h... yes checking for sys/select.h... yes checking for sys/time.h... yes checking for sys/times.h... yes checking for sys/un.h... yes checking for sys/utsname.h... yes checking for sys/wait.h... yes checking for dirent.h that defines DIR... yes checking for opendir in -ldir... no checking for clock_t in time.h... yes checking for mode_t... yes checking for off_t... yes checking for pid_t... yes checking return type of signal handlers... void checking for size_t... yes checking for uid_t in sys/types.h... yes checking size of int... 4 checking size of long... 4 checking size of void *... 4 checking for long long support... yes checking size of long long... 8 checking size of off_t... 8 checking whether to enable large file support... yes checking for --with-next-framework... no checking for --with-dyld... required for framework build checking SO... .so checking LDSHARED... ld checking CCSHARED... checking LINKFORSHARED... checking for dlopen in -ldl... yes checking for shl_load in -ldld... no checking for t_open in -lnsl... no checking for socket in -lsocket... no checking for socket in -lnet... no checking for --with-libs... no checking for --with(out)-readline... not specified. checking for --with-dec-threads... no checking for --with-threads... no checking for --with-thread... no checking for --with-sgi-dl... no checking for --with-dl-dld... no checking for alarm... yes checking for chown... yes checking for clock... yes checking for dlopen... yes checking for execv... yes checking for flock... yes checking for fork... yes checking for fsync... yes checking for fdatasync... no checking for ftime... no checking for ftruncate... yes checking for getpeername... yes checking for getpgrp... yes checking for getpid... yes checking for getpwent... yes checking for gettimeofday... yes checking for getwd... yes checking for kill... yes checking for link... yes checking for lstat... yes checking for mkfifo... yes checking for mktime... yes checking for nice... yes checking for pause... yes checking for plock... no checking for pthread_init... yes checking for putenv... yes checking for readlink... yes checking for select... yes checking for setgid... yes checking for setlocale... yes checking for setuid... yes checking for setsid... yes checking for setpgid... yes checking for setpgrp... yes checking for setvbuf... yes checking for sigaction... yes checking for siginterrupt... yes checking for sigrelse... no checking for strftime... yes checking for strptime... no checking for symlink... yes checking for tcgetpgrp... yes checking for tcsetpgrp... yes checking for timegm... no checking for times... yes checking for truncate... yes checking for uname... yes checking for waitpid... yes checking for fseek64... no checking for fseeko... no checking for fstatvfs... no checking for ftell64... no checking for ftello... no checking for statvfs... no checking for dup2... yes checking for getcwd... yes checking for strdup... yes checking for strerror... yes checking for memmove... yes checking for getpgrp... (cached) yes checking for setpgrp... (cached) yes checking for gettimeofday... (cached) yes checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for tm_zone in struct tm... yes checking for time.h that defines altzone... no checking whether sys/select.h and sys/time.h may both be included... yes checking whether char is unsigned... no checking for working const... yes checking for working volatile... yes checking for working signed char... yes checking for prototypes... yes checking for variable length prototypes and stdarg.h... yes checking for bad exec* prototypes... no checking for bad static forward... no checking whether va_list is an array... no checking for gethostbyname_r... no checking for gethostbyname... yes checking for __fpu_control in -lieee... no checking for --with-fpectl... checking for --with-libm=STRING... default LIBM="- lm" checking for --with-libc=STRING... default LIBC="" checking for hypot... yes checking for hypot... (cached) yes checking for genuine getopt... yes checking what malloc(0) returns... nonnull updating cache ./config.cache creating ./config.status creating Makefile creating Objects/Makefile creating Parser/Makefile creating Python/Makefile creating Modules/Makefile.pre creating Modules/Setup.thread creating config.h pcvendor:~/usr/local/src/Python-1.5.2 $ make (cd Modules; make -f Makefile.pre Makefile) cp ./Setup.in Setup echo "# Edit this file for local setup changes" >Setup.local rm -f ../libpython1.5.a /bin/sh ./makesetup Setup.thread Setup.local Setup making Makefile in subdirectory . `Makefile' is up to date. making Makefile in subdirectory Parser `Makefile' is up to date. making Makefile in subdirectory Objects `Makefile' is up to date. making Makefile in subdirectory Python `Makefile' is up to date. making Makefile in subdirectory Modules `Makefile' is up to date. (rm -f Modules/hassignal; cd Modules; make hassignal) rm -f hassignal for i in regexmodule.o regexpr.o pcremodule.o pypcre.o posixmodule.o signalmo dule.o arraymodule.o cmathmodule.o mathmodule.o stropmodule.o structmodule. o timemodule.o operator.o fcntlmodule.o pwdmodule.o grpmodule.o selectmodu le.o socketmodule.o errnomodule.o md5module.o md5c.o shamodule.o rotormodul e.o newmodule.o binascii.o parsermodule.o cStringIO.o cPickle.o config.o ge tpath.o main.o getbuildinfo.o; do if test "$i" = "signalmodule.o"; then echo y es >hassignal; break; fi; done cd Parser ; make OPT="-g -O2" VERSION="1.5" prefix="/usr/home/knoggin/usr/local /" exec_prefix="/usr/home/knoggin/usr/local/" all gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c pgenmain.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c acceler.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c grammar1.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c listnode.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c node.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c parser.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c parsetok.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c tokenizer.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c bitset.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c metagrammar.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c firstsets.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c grammar.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c pgen.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c printgrammar.c gcc -D_HAVE_BSDI -g -O2 pgenmain.o acceler.o grammar1.o listnode.o node.o parse r.o parsetok.o tokenizer.o bitset.o metagrammar.o firstsets.o grammar.o pgen.o printgrammar.o -ldl -o pgen gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c myreadline.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c intrcheck.c cd Objects ; make OPT="-g -O2" VERSION="1.5" prefix="/usr/home/knoggin/usr/local/" exec_prefix="/usr/home/knoggin/usr/local/" all gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c abstract.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c bufferobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c classobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c cobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c complexobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c fileobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c floatobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c frameobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c funcobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c intobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c listobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c longobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c dictobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c methodobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c moduleobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c object.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c rangeobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c sliceobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c stringobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c tupleobject.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c typeobject.c cd Python ; make OPT="-g -O2" VERSION="1.5" prefix="/usr/home/knoggin/usr/local/" exec_prefix="/usr/home/knoggin/usr/local/" all gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c bltinmodule.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c ceval.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c compile.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c errors.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c frozen.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c frozenmain.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getargs.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getcompiler.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getcopyright.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getmtime.c gcc -D_HAVE_BSDI -c -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -DPLATFORM='"bsdos3"' ./getplatform.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c getversion.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c graminit.c gcc -D_HAVE_BSDI -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c import.c gcc -D_HAVE_BSDI -c -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -I/ ./importdl.c ./importdl.c:269: mach-o/dyld.h: No such file or directory *** Error code 1 Stop. *** Error code 1 Stop. ==================================================================== Audit trail: Mon Aug 30 12:40:26 1999 guido changed notes Mon Aug 30 12:40:26 1999 guido moved from incoming to irreproducible Tue Oct 19 23:20:49 1999 guido sent reply 1 Tue Oct 19 23:21:36 1999 guido changed notes Tue Oct 19 23:21:36 1999 guido moved from irreproducible to open Tue Oct 19 23:30:25 1999 guido changed notes Tue Oct 19 23:30:25 1999 guido moved from open to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: does not compile under BSDI (PR#57) Date: Tue Oct 19 23:20:49 1999 This same bug was reported by someone else for the same platform. We arrived at the work-around of deleting the line #define WITH_DYLD from the config.h generated by the configure script. If you are still experiencing problems building Python, please try this. --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] does not compile under BSDI (PR#57) Date: Fri, 20 Aug 1999 07:57:10 -0400 > Full_Name: John Ital > Version: py152 > OS: BSDI IServer > > seems to think it is a NeXT arch or something > [...] > gcc -D_HAVE_BSDI -c -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -I/ ./importdl.c > ./importdl.c:269: mach-o/dyld.h: No such file or directory > *** Error code 1 Very strange. I've never seen this before. It appears that somehow USE_DYLD is defined at that point, which can only happen if WITH_DYLD is defined, which can only happen if you specify --with-next-framework or --with-dyld on the configure command line, which you didn't. Perhaps you have a buggy preprocessor that is confused by the tangle of #ifdefs in importdl.c? I don't know how to help you; I know Python has been built successfully on bsdos3 before, so I'm guessing it's something in your setup, not a Python bug. If you need more help, please ask a newsgroup -- either comp.lang.python or a BSD specific one. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: Work-around: if you delete #define WITH_DYLD from config.h, the build succeeds. ------------------------------------------------------- Date: 2000-Aug-03 09:00 By: twouters Comment: For the record, I cannot reproduce this on the BSDI 3.1 systems we still have lying around. It *might* have been specific to BSDI 3.0, which we no longer have (for various reasons, like y2k bugs ;) and I've heard similar (but not the same) reports about BSD/OS running under a 'virtual' machine. However, I've never seen or heard about those 'virtual' BSD/OSes, other than in that c.l.py posting. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 15:12 By: fdrake Comment: I've sent a message to the submitter asking if this can be reproduced with more recent Python versions. Closed as "Works for Me" based on Thomas' comment. This can be reopened based on further input from the original submitter. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110707&group_id=5470 From noreply@sourceforge.net Fri Sep 8 23:57:55 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 15:57:55 -0700 Subject: [Python-bugs-list] [Bug #110833] linker options documentation (PR#195) Message-ID: <200009082257.PAA17236@bush.i.sourceforge.net> Bug #110833, was updated on 2000-Aug-01 14:13 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: Feature Request Priority: 5 Summary: linker options documentation (PR#195) Details: Jitterbug-Id: 195 Submitted-By: John-Mark Gurney Date: Sun, 30 Jan 2000 18:09:56 -0800 Version: None OS: None I have found out that I need to add -Xlinker -export-dynamic to the gcc command to compile a program linked w/ the libpython.a library... if you do not specify this option, all unreferenced symbols will be discarded... please document this requirement in the documentation, and after that has happened, close this bug report... Thanks. -- John-Mark Gurney Voice: +1 408 975 9651 Cu Networking "The soul contains in itself the event that shall presently befall it. The event is only the actualizing of its thought." -- Ralph Waldo Emerson ==================================================================== Audit trail: Mon Feb 07 12:37:05 2000 guido changed notes Mon Feb 07 12:37:05 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:13 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] please resolve 191.. (PR#195) Date: Mon, 31 Jan 2000 12:25:49 -0500 > I have found out that I need to add -Xlinker -export-dynamic to the gcc > command to compile a program linked w/ the libpython.a library... if you > do not specify this option, all unreferenced symbols will be discarded... > > please document this requirement in the documentation, and after that has > happened, close this bug report... I read your bug report 191 and I think it may be platform specific, or a bug in how you link with Python, since I cannot reproduce this here on Solaris. Until we are clear on this we can't fix the documentation, sorry. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:13 By: none Comment: From: John-Mark Gurney Subject: Re: [Python-bugs-list] please resolve 191.. (PR#195) Date: Mon, 31 Jan 2000 11:40:12 -0800 Guido van Rossum scribbled this message on Jan 31: > > I have found out that I need to add -Xlinker -export-dynamic to the gcc > > command to compile a program linked w/ the libpython.a library... if you > > do not specify this option, all unreferenced symbols will be discarded... > > > > please document this requirement in the documentation, and after that has > > happened, close this bug report... > > I read your bug report 191 and I think it may be platform specific, or > a bug in how you link with Python, since I cannot reproduce this here > on Solaris. I would try it under Solaris, but I don't have the time right now to compile up the latest GNU ld on solaris, to make sure that it is compiler specific... > Until we are clear on this we can't fix the documentation, sorry. I would think that you would want to document such a behavior considering just how many people happen to use gcc... I am using gcc 2.7.2.3 and GNU ld 2.9.1, and considering the number of people that are using GNU ld 2.9.1, I would assume you'd want to document it so that people like myself, don't run into this problem... the -Xlinker -export-dynamic happens to be a GNU ld specific solution, but the bug that python doesn't force include all the symbols should be documented so that people don't encounter the problem... -- John-Mark Gurney Voice: +1 408 975 9651 Cu Networking "The soul contains in itself the event that shall presently befall it. The event is only the actualizing of its thought." -- Ralph Waldo Emerson ------------------------------------------------------- Date: 2000-Aug-01 14:13 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] please resolve 191.. (PR#195) Date: Mon, 31 Jan 2000 15:35:35 -0500 > Guido van Rossum scribbled this message on Jan 31: > > > I have found out that I need to add -Xlinker -export-dynamic to the gcc > > > command to compile a program linked w/ the libpython.a library... if you > > > do not specify this option, all unreferenced symbols will be discarded... > > > > > > please document this requirement in the documentation, and after that has > > > happened, close this bug report... > > > > I read your bug report 191 and I think it may be platform specific, or > > a bug in how you link with Python, since I cannot reproduce this here > > on Solaris. > > I would try it under Solaris, but I don't have the time right now to > compile up the latest GNU ld on solaris, to make sure that it is compiler > specific... > > > Until we are clear on this we can't fix the documentation, sorry. > > I would think that you would want to document such a behavior considering > just how many people happen to use gcc... I am using gcc 2.7.2.3 and GNU > ld 2.9.1, and considering the number of people that are using GNU ld 2.9.1, > I would assume you'd want to document it so that people like myself, don't > run into this problem... > > the -Xlinker -export-dynamic happens to be a GNU ld specific solution, > but the bug that python doesn't force include all the symbols should be > documented so that people don't encounter the problem... This (that it's GNU ld specific) is information that you didn't explain first. I am probably not using GNU ld, which may explain why I couldn't reproduce your problem. If you want to save me the most time, please suggest the exact patch for the documentation, using the latest version of the docs from the CVS tree. (python.org/download/cvs.html) To save me at least some time, write a paragraph of text and give me at least a hint on which section of which document it should be inserted into, and we'll figure it out from there. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:13 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] please resolve 191.. (PR#195) Date: Mon, 07 Feb 2000 12:55:20 -0500 > the -Xlinker -export-dynamic happens to be a GNU ld specific solution, > but the bug that python doesn't force include all the symbols should be > documented so that people don't encounter the problem... There's a Solaris-specific patch (just checked in a few days ago) to configure.in that takes care of this; maybe it can be made general? No time to explain, see latest configure.in cvs log. python.org/download/cvs.html --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:13 By: none Comment: Still waiting for a patch... ------------------------------------------------------- Date: 2000-Sep-08 15:57 By: fdrake Comment: Add section to the Extending & Embedding manual discussing linking issues for embedded Python. Checked in as Doc/ext/ext.tex revision 1.83. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110833&group_id=5470 From noreply@sourceforge.net Sat Sep 9 05:18:15 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 21:18:15 -0700 Subject: [Python-bugs-list] [Bug #113934] string * int silently returns wrong answer for certain ints Message-ID: <200009090418.VAA27990@bush.i.sourceforge.net> Bug #113934, was updated on 2000-Sep-08 21:18 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: string * int silently returns wrong answer for certain ints Details: Multiplying string * int sometimes delivers the wrong answer instead of raising an exception. For example, Python will return the wrong value when attempting to create a string exactly 2**32 bytes long: Python 1.5.2 (#1, Feb 1 2000, 16:32:16) [GCC egcs-2.91.66 19990314/Linux (egcs- on linux-i386 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> s='x'*65536 >>> len(s) 65536 >>> t=s*65536 >>> len (t) 0 For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113934&group_id=5470 From noreply@sourceforge.net Sat Sep 9 06:34:50 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 22:34:50 -0700 Subject: [Python-bugs-list] [Bug #113934] string * int silently returns wrong answer for certain ints Message-ID: <200009090534.WAA30392@bush.i.sourceforge.net> Bug #113934, was updated on 2000-Sep-08 21:18 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 8 Summary: string * int silently returns wrong answer for certain ints Details: Multiplying string * int sometimes delivers the wrong answer instead of raising an exception. For example, Python will return the wrong value when attempting to create a string exactly 2**32 bytes long: Python 1.5.2 (#1, Feb 1 2000, 16:32:16) [GCC egcs-2.91.66 19990314/Linux (egcs- on linux-i386 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> s='x'*65536 >>> len(s) 65536 >>> t=s*65536 >>> len (t) 0 Follow-Ups: Date: 2000-Sep-08 22:34 By: tim_one Comment: Assigned to me. Boosted the priority because similar inputs can cause core dumps, and especially when mucking with Unicode strings instead of 8-bit guys. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113934&group_id=5470 From noreply@sourceforge.net Sat Sep 9 07:13:01 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 23:13:01 -0700 Subject: [Python-bugs-list] [Bug #113828] getpythonregpath with null data in registry key Message-ID: <200009090613.XAA31529@bush.i.sourceforge.net> Bug #113828, was updated on 2000-Sep-07 13:46 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: getpythonregpath with null data in registry key Details: File pc/getpathp.c Function:getpythonregpath ppPaths[index] can be null but this fragment is not null protected: len = _tcslen(ppPaths[index]); _tcsncpy(szCur, ppPaths[index], len); Grzegorz Makarewicz For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113828&group_id=5470 From noreply@sourceforge.net Sat Sep 9 07:14:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 23:14:26 -0700 Subject: [Python-bugs-list] [Bug #113934] string * int silently returns wrong answer for certain ints Message-ID: <200009090614.XAA31551@bush.i.sourceforge.net> Bug #113934, was updated on 2000-Sep-08 21:18 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Fixed Bug Group: None Priority: 8 Summary: string * int silently returns wrong answer for certain ints Details: Multiplying string * int sometimes delivers the wrong answer instead of raising an exception. For example, Python will return the wrong value when attempting to create a string exactly 2**32 bytes long: Python 1.5.2 (#1, Feb 1 2000, 16:32:16) [GCC egcs-2.91.66 19990314/Linux (egcs- on linux-i386 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> s='x'*65536 >>> len(s) 65536 >>> t=s*65536 >>> len (t) 0 Follow-Ups: Date: 2000-Sep-08 22:34 By: tim_one Comment: Assigned to me. Boosted the priority because similar inputs can cause core dumps, and especially when mucking with Unicode strings instead of 8-bit guys. ------------------------------------------------------- Date: 2000-Sep-08 23:14 By: tim_one Comment: Fixed in CVS. Checkin comment, for stringobject.c and unicodeobject.c: Fix for bug 113934. string*n and unicode*n did no overflow checking at all, either to see whether the # of chars fit in an int, or that the amount of memory needed fit in a size_t. Checking these is expensive, but the alternative is silently wrong answers (as in the bug report) or core dumps (which were easy to provoke using Unicode strings). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113934&group_id=5470 From noreply@sourceforge.net Sat Sep 9 07:16:51 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 23:16:51 -0700 Subject: [Python-bugs-list] [Bug #113862] 2.0b1 lib.pdf, problems with bookmark titles Message-ID: <200009090616.XAA31595@bush.i.sourceforge.net> Bug #113862, was updated on 2000-Sep-08 01:48 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 7 Summary: 2.0b1 lib.pdf, problems with bookmark titles Details: In Acrobat Reader, 3.25 shows in the Bookmarks as "protect unhbox voidb@x kern.06envbox" etc. It does show correctly as "__builtin__ -- Built-in functions" in the main window, and when printed. 3.26, same problem. Other titles seem OK (haven't checked them all, though). Follow-Ups: Date: 2000-Sep-08 23:16 By: fdrake Comment: The bookmark entry for the copy_reg module has the same defect. This is probably a result of the seriously painful hackery used to make the underscore be somewhat less special. Must be fixed for 2.0 final. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113862&group_id=5470 From noreply@sourceforge.net Sat Sep 9 07:17:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 23:17:58 -0700 Subject: [Python-bugs-list] [Bug #113894] os.listdir gives fails on Win32 platforms Message-ID: <200009090617.XAA31688@bush.i.sourceforge.net> Bug #113894, was updated on 2000-Sep-08 08:55 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Platform-specific Priority: 7 Summary: os.listdir gives fails on Win32 platforms Details: On windows NT the os.listdir() function doesn't correctly handle paths containing a drive specification, but no other directory spec. It incorrectly references the root directory on the specified drive rather than the current directory. For example these two calls should return the same thing (the actual output has been slightly trimmed): >>> import os >>> os.listdir('c:') ['3DCube', 'Acrobat3', 'ADOBEAPP', ...] >>> os.listdir('c:.') ['Capture', 'Catalog', ...] The same problem shows up in os.glob, for example os.glob('d:*.py') will expand to all .py files in the root of drive d rather than the current directory. One possible fix is that in posixmodule.c, function posix_listdir, the lines: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); should read: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\' && namebuf[len-1] != ':') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113894&group_id=5470 From noreply@sourceforge.net Sat Sep 9 07:30:13 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 23:30:13 -0700 Subject: [Python-bugs-list] [Bug #113850] posixfile __del__ method is wrong Message-ID: <200009090630.XAA05148@delerium.i.sourceforge.net> Bug #113850, was updated on 2000-Sep-07 21:43 Here is a current snapshot of the bug. Project: Python Category: Library Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: posixfile __del__ method is wrong Details: The posixfile __del__ method attempts to close the file (_file_) it contains. However, if the open method fails, then _file_ is never assigned. The solution is to modify __del__ as follows: def __del__(self): if hasattr(self, '_file_'): self._file_.close() -Kevin Jacobs (jacobs@darwin.cwru.edu) Follow-Ups: Date: 2000-Sep-08 13:04 By: loewis Comment: Why does posixfile need an __del__ in the first place? Deleting the instance should release the underlying file object, which will close it. If anybody else keeps the file object referenced, perhaps it even should stay open? ------------------------------------------------------- Date: 2000-Sep-08 23:30 By: fdrake Comment: Removed the __del__() method in posixfile.py revision 1.16. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113850&group_id=5470 From noreply@sourceforge.net Sat Sep 9 07:31:48 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 8 Sep 2000 23:31:48 -0700 Subject: [Python-bugs-list] [Bug #113828] getpythonregpath with null data in registry key Message-ID: <200009090631.XAA05246@delerium.i.sourceforge.net> Bug #113828, was updated on 2000-Sep-07 13:46 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: getpythonregpath with null data in registry key Details: File pc/getpathp.c Function:getpythonregpath ppPaths[index] can be null but this fragment is not null protected: len = _tcslen(ppPaths[index]); _tcsncpy(szCur, ppPaths[index], len); Grzegorz Makarewicz Follow-Ups: Date: 2000-Sep-08 23:31 By: tim_one Comment: Assigned to MarkH. Offhand it looks like a legit complaint to me, and that the len = _tcslen(ppPaths[index]); _tcsncpy(szCur, ppPaths[index], len); szCur += len; dataSize -= len; block should be protected against a null ppPaths[index]. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113828&group_id=5470 From noreply@sourceforge.net Sat Sep 9 21:20:59 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sat, 9 Sep 2000 13:20:59 -0700 Subject: [Python-bugs-list] [Bug #113960] Problems with reverse() in the array module Message-ID: <200009092020.NAA32059@delerium.i.sourceforge.net> Bug #113960, was updated on 2000-Sep-09 13:20 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Problems with reverse() in the array module Details: When I was using Python-2.0b1, reverse() for arrays was acting funny for me: >>> import array >>> bob = array.array('c', 'a string') >>> bob.reverse() Traceback (most recent call last): File "", line 1, in ? TypeError: .reverse requires exactly 0 arguments But, I didn't pass it any arguments :-). When I looked at the code I came up with the following fix: *** arraymodule.c.orig Fri Sep 1 19:29:26 2000 --- arraymodule.c Sat Sep 9 16:04:16 2000 *************** *** 935,945 **** register char *p, *q; char tmp[sizeof(double)]; /* Assume that's the max item size */ ! if (args != NULL) { ! PyErr_SetString(PyExc_TypeError, ! ".reverse requires exactly 0 arguments"); ! return NULL; ! } if (self->ob_size > 1) { for (p = self->ob_item, --- 935,942 ---- register char *p, *q; char tmp[sizeof(double)]; /* Assume that's the max item size */ ! if (!PyArg_ParseTuple(args, ":reverse")) ! return NULL; if (self->ob_size > 1) { for (p = self->ob_item, Reverse seems to work properly with this: >>> import array >>> bob = array.array('c', 'a string') >>> bob.reverse() >>> print bob array('c', 'gnirts a') and the error message for passing argument seems reasonable: >>> bob.reverse('spam') Traceback (most recent call last): File "", line 1, in ? TypeError: reverse requires exactly 0 arguments; 1 given I'm really not an expert on any of this, but I hope the report is useful. Thanks for listening. Brad For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113960&group_id=5470 From noreply@sourceforge.net Sun Sep 10 02:04:54 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sat, 9 Sep 2000 18:04:54 -0700 Subject: [Python-bugs-list] [Bug #110826] WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Message-ID: <200009100104.SAA08918@delerium.i.sourceforge.net> Bug #110826, was updated on 2000-Aug-01 14:11 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Fixed Bug Group: Feature Request Priority: 5 Summary: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Details: Jitterbug-Id: 136 Submitted-By: Randall Hopper Date: Wed, 24 Nov 1999 09:51:10 -0500 Version: None OS: None Just tried to submit this via the web interface which has worked in the past. This time, I got: The system encountered a fatal error After command: Received: The last error code was: Connection refused This was a non-private bug report, as usual. Anyway, here's the bug report: ============================================================================== aa8vb@yahoo.com Python mymalloc.h; not C++ compatible Randall Hopper 1.5.2 IRIX 6.5 Private: NO I hit a problem trying to compile wxPython on IRIX 6.5. The issue is NULL should be "0" when compiling for C++. The IRIX headers define it this way. The Python mymalloc.h header doesn't. A work-around is to require clients to include stdio.h before including any Python header files, but this is a hack. Here's a snip from a recent Python post I made with a proposed fix: ------------------------------------------------------------------------------ ...After a bit of grepping, the culprit seems to be Python (1.5.2): /usr/local/include/python1.5/mymalloc.h: #ifndef NULL #define NULL ((ANY *)0) #endif ... It appears to me that the right fix is for Python's mymalloc.h, if it must define NULL (does it?), be updated to be more C++ friendly. E.g.: #ifndef NULL # ifdef __cplusplus # define NULL 0 # else # define NULL ((ANY *)0) # endif #endif I'm assuming there's some reason we can't just #include from mymalloc.h (?) ------------------------------------------------------------------------------ Thanks, Randall ==================================================================== Audit trail: Fri Dec 03 10:32:05 1999 guido sent reply 1 Fri Dec 03 10:32:19 1999 guido changed notes Fri Dec 03 10:32:20 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:11 By: none Comment: From: Guido van Rossum Subject: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Date: Fri Dec 3 10:32:05 1999 > I hit a problem trying to compile wxPython on IRIX 6.5. The issue is NULL > should be "0" when compiling for C++. The IRIX headers define it this way. > The Python mymalloc.h header doesn't. A work-around is to require clients > to include stdio.h before including any Python header files, but this is a > hack. Why is wxPython using mymalloc.h directly? It should use Python.h, which *does* include stdio.h first. ------------------------------------------------------- Date: 2000-Aug-01 14:11 By: none Comment: From: "Robin Dunn" Subject: Re: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Date: Wed, 8 Dec 1999 12:03:08 -0800 > ----- Forwarded message from Guido van Rossum ----- > > Date: Fri, 3 Dec 1999 10:32:03 -0500 (EST) > From: Guido van Rossum > Subject: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) > > > I hit a problem trying to compile wxPython on IRIX 6.5. The issue is NULL > > should be "0" when compiling for C++. The IRIX headers define it this way. > > The Python mymalloc.h header doesn't. A work-around is to require clients > > to include stdio.h before including any Python header files, but this is a > > hack. > > Why is wxPython using mymalloc.h directly? It should use Python.h, > which *does* include stdio.h first. > > > ----- End forwarded message ----- > wxPython does use Python.h and if I remember correctly, moving it to be the first #include (to ensure that none of the wx or my headers were screwing things up) didn't help Randall at all. He had to put an #include before it. -- Robin Dunn Software Craftsman robin@AllDunn.com http://AllDunn.com/robin/ http://AllDunn.com/wxPython/ Check it out! ------------------------------------------------------- Date: 2000-Aug-01 14:11 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Re: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" (PR#136) Date: Wed, 08 Dec 1999 17:04:30 -0500 > > ----- Forwarded message from Guido van Rossum ----- > > > > Date: Fri, 3 Dec 1999 10:32:03 -0500 (EST) > > From: Guido van Rossum > > Subject: Re: WebBugRptBroken & "Python mymalloc.h; not C++ compatible" > (PR#136) > > > > > I hit a problem trying to compile wxPython on IRIX 6.5. The issue is > NULL > > > should be "0" when compiling for C++. The IRIX headers define it this > way. > > > The Python mymalloc.h header doesn't. A work-around is to require > clients > > > to include stdio.h before including any Python header files, but this is > a > > > hack. > > > > Why is wxPython using mymalloc.h directly? It should use Python.h, > > which *does* include stdio.h first. > > > > > > ----- End forwarded message ----- > > > > wxPython does use Python.h and if I remember correctly, moving it to be the > first #include (to ensure that none of the wx or my headers were screwing > things up) didn't help Randall at all. He had to put an #include > before it. Strange. I don't have your source so there's no point arguing about it here. Python.h definitely includes before including "mymalloc.h". At least in 1.5(.x), I haven't checked older versions. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:11 By: none Comment: Maybe, maybe not. ------------------------------------------------------- Date: 2000-Aug-06 10:33 By: twouters Comment: Looks like a "won't fix" to me, unless there is a good reason not to include Python.h. If you start including other python header files, you better know damn well what you're doing, and include the necessary files beforehand, yourself. But that's just me. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-09 18:04 By: tim_one Comment: The checkin comment, applied to 2.0b1: Close SF bug 110826: a complaint about the way Python #define'd NULL. It's hard to sort out what the bug was, exactly. So, Big Hammer: 1. Python shouldn't be in the business of #define'ing NULL, period. 2. Users of the Python C API shouldn't be in the business of not including Python.h, period. Hence: 1. Removed all #define's of NULL in Python source code (pyport.h and object.h). 2. Since we're *relying* on stdio.h defining NULL, put an #error in Python.h after its #include of stdio.h if NULL isn't defined then. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110826&group_id=5470 From noreply@sourceforge.net Sun Sep 10 02:08:37 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sat, 9 Sep 2000 18:08:37 -0700 Subject: [Python-bugs-list] [Bug #113960] Problems with reverse() in the array module Message-ID: <200009100108.SAA09073@delerium.i.sourceforge.net> Bug #113960, was updated on 2000-Sep-09 13:20 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 8 Summary: Problems with reverse() in the array module Details: When I was using Python-2.0b1, reverse() for arrays was acting funny for me: >>> import array >>> bob = array.array('c', 'a string') >>> bob.reverse() Traceback (most recent call last): File "", line 1, in ? TypeError: .reverse requires exactly 0 arguments But, I didn't pass it any arguments :-). When I looked at the code I came up with the following fix: *** arraymodule.c.orig Fri Sep 1 19:29:26 2000 --- arraymodule.c Sat Sep 9 16:04:16 2000 *************** *** 935,945 **** register char *p, *q; char tmp[sizeof(double)]; /* Assume that's the max item size */ ! if (args != NULL) { ! PyErr_SetString(PyExc_TypeError, ! ".reverse requires exactly 0 arguments"); ! return NULL; ! } if (self->ob_size > 1) { for (p = self->ob_item, --- 935,942 ---- register char *p, *q; char tmp[sizeof(double)]; /* Assume that's the max item size */ ! if (!PyArg_ParseTuple(args, ":reverse")) ! return NULL; if (self->ob_size > 1) { for (p = self->ob_item, Reverse seems to work properly with this: >>> import array >>> bob = array.array('c', 'a string') >>> bob.reverse() >>> print bob array('c', 'gnirts a') and the error message for passing argument seems reasonable: >>> bob.reverse('spam') Traceback (most recent call last): File "", line 1, in ? TypeError: reverse requires exactly 0 arguments; 1 given I'm really not an expert on any of this, but I hope the report is useful. Thanks for listening. Brad Follow-Ups: Date: 2000-Sep-09 18:08 By: tim_one Comment: Thanks! Boosted the priority and assigned to me: this is plain embarrassing -- the code couldn't possibly work as intended. I'll fix it and add a regression test to the std test suite so it never happens again. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113960&group_id=5470 From noreply@sourceforge.net Sun Sep 10 10:16:02 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sun, 10 Sep 2000 02:16:02 -0700 Subject: [Python-bugs-list] [Bug #113828] getpythonregpath with null data in registry key Message-ID: <200009100916.CAA24320@delerium.i.sourceforge.net> Bug #113828, was updated on 2000-Sep-07 13:46 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Closed Resolution: Fixed Bug Group: Platform-specific Priority: 6 Summary: getpythonregpath with null data in registry key Details: File pc/getpathp.c Function:getpythonregpath ppPaths[index] can be null but this fragment is not null protected: len = _tcslen(ppPaths[index]); _tcsncpy(szCur, ppPaths[index], len); Grzegorz Makarewicz Follow-Ups: Date: 2000-Sep-08 23:31 By: tim_one Comment: Assigned to MarkH. Offhand it looks like a legit complaint to me, and that the len = _tcslen(ppPaths[index]); _tcsncpy(szCur, ppPaths[index], len); szCur += len; dataSize -= len; block should be protected against a null ppPaths[index]. ------------------------------------------------------- Date: 2000-Sep-10 02:16 By: mhammond Comment: Fixed in rev 1.21 of getpathp.c ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113828&group_id=5470 From noreply@sourceforge.net Mon Sep 11 06:43:55 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Sun, 10 Sep 2000 22:43:55 -0700 Subject: [Python-bugs-list] [Bug #114027] Compiling on alpha-osf1v4: libpthreads is called libpthread Message-ID: <200009110543.WAA02641@delerium.i.sourceforge.net> Bug #114027, was updated on 2000-Sep-10 22:43 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Compiling on alpha-osf1v4: libpthreads is called libpthread Details: change -lpthreads into -lpthread For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114027&group_id=5470 From noreply@sourceforge.net Mon Sep 11 09:24:15 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Mon, 11 Sep 2000 01:24:15 -0700 Subject: [Python-bugs-list] [Bug #114033] re incompatibility in sre Message-ID: <200009110824.BAA08118@delerium.i.sourceforge.net> Bug #114033, was updated on 2000-Sep-11 01:24 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: re incompatibility in sre Details: [submitted by Adam Sampson] Under Python 1.5.2, I had a script containing the following line: m = re.match(r"[a-z0-9]*://[^/]+/.*\.([^.#\?/]*)([#\?]?.*)?", url) Under 1.6, this fails with: [...] File "/usr/local/lib/python1.6/sre.py", line 44, in match return _compile(pattern, flags).match(string) File "/usr/local/lib/python1.6/sre.py", line 102, in _compile raise error, v # invalid expression sre_constants.error: nothing to repeat I can narrow it down to: >>> m = re.match(r"(x?)?", url) Traceback (most recent call last): File "", line 1, in ? File "/usr/local/lib/python1.6/sre.py", line 44, in match return _compile(pattern, flags).match(string) File "/usr/local/lib/python1.6/sre.py", line 102, in _compile raise error, v # invalid expression sre_constants.error: nothing to repeat whereas: >>> m = re.match(r"(x?.)?", url) works fine. Is this correct behaviour for SRE, or am I just being stupid? "(x?)?" looks like a perfectly reasonable Perl-style regexp to me (and Perl too)... For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114033&group_id=5470 From noreply@sourceforge.net Tue Sep 12 21:53:53 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 13:53:53 -0700 Subject: [Python-bugs-list] [Bug #114287] InPlace API needs refcount info Message-ID: <200009122053.NAA24079@delerium.i.sourceforge.net> Bug #114287, was updated on 2000-Sep-12 13:53 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 7 Summary: InPlace API needs refcount info Details: The Doc/api/refcounts.dat file needs to be updated to include the InPlace API calls. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114287&group_id=5470 From noreply@sourceforge.net Tue Sep 12 22:38:01 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 14:38:01 -0700 Subject: [Python-bugs-list] [Bug #114290] search_for_prefix failure on relative path Message-ID: <200009122138.OAA08833@bush.i.sourceforge.net> Bug #114290, was updated on 2000-Sep-12 14:38 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 7 Summary: search_for_prefix failure on relative path Details: The code in getpath.c fails in Step 3 (search for the libraries using the argv0 path) when python is invoked with a relative path. The search code should be able to join the relative path with the current working directory and find the landmark file. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114290&group_id=5470 From noreply@sourceforge.net Tue Sep 12 22:44:14 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 14:44:14 -0700 Subject: [Python-bugs-list] [Bug #114030] 2.0b1: Module index empty Message-ID: <200009122144.OAA09037@bush.i.sourceforge.net> Bug #114030, was updated on 2000-Sep-11 00:36 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: 2.0b1: Module index empty Details: in the html-2.0b1 that I just downloaded, the module index in the library reference manual is empty. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114030&group_id=5470 From noreply@sourceforge.net Tue Sep 12 22:45:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 14:45:21 -0700 Subject: [Python-bugs-list] [Bug #114235] error in getgid()? Message-ID: <200009122145.OAA09082@bush.i.sourceforge.net> Bug #114235, was updated on 2000-Sep-12 00:33 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: error in getgid()? Details: I have been trying to get mailman (http://www.list.org/)running properly on my linux server (redhat 6.2) with some success. Mailman has the ability to recognise virtual domains so that only those lists pertaining to the domain you are looking at is displayed. There is one slight error. When the mailman program runs it checks the gid of the process that called it to ensure some security. This works fine when the domain is set to the server *real* FQDN, but *not* if it is a virtual domain. If I set the email address to the virtual domain I get a gid of 65534 (maximum for the machine). See https://sourceforge.net/bugs/?func=detailbug&bug_id=111347&group_id=103 for more details on this bug. I logged the error with the mailman project here on SF, but they said it was probably a sendmail issue. I have looked at the code and it makes a "getgid()" call to python - so following the chain back the next stop is with python. I don't know much about the language, but is python trying to check for the gid of the process under the virtual domain and not the real one? Or is this really a sendmail issue? I would be happy to supply more information if required. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114235&group_id=5470 From noreply@sourceforge.net Tue Sep 12 22:44:35 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 14:44:35 -0700 Subject: [Python-bugs-list] [Bug #114033] re incompatibility in sre Message-ID: <200009122144.OAA09047@bush.i.sourceforge.net> Bug #114033, was updated on 2000-Sep-11 01:24 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: re incompatibility in sre Details: [submitted by Adam Sampson] Under Python 1.5.2, I had a script containing the following line: m = re.match(r"[a-z0-9]*://[^/]+/.*\.([^.#\?/]*)([#\?]?.*)?", url) Under 1.6, this fails with: [...] File "/usr/local/lib/python1.6/sre.py", line 44, in match return _compile(pattern, flags).match(string) File "/usr/local/lib/python1.6/sre.py", line 102, in _compile raise error, v # invalid expression sre_constants.error: nothing to repeat I can narrow it down to: >>> m = re.match(r"(x?)?", url) Traceback (most recent call last): File "", line 1, in ? File "/usr/local/lib/python1.6/sre.py", line 44, in match return _compile(pattern, flags).match(string) File "/usr/local/lib/python1.6/sre.py", line 102, in _compile raise error, v # invalid expression sre_constants.error: nothing to repeat whereas: >>> m = re.match(r"(x?.)?", url) works fine. Is this correct behaviour for SRE, or am I just being stupid? "(x?)?" looks like a perfectly reasonable Perl-style regexp to me (and Perl too)... For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114033&group_id=5470 From noreply@sourceforge.net Tue Sep 12 22:46:16 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 14:46:16 -0700 Subject: [Python-bugs-list] [Bug #114245] utime can not accept directory under NT Message-ID: <200009122146.OAA09092@bush.i.sourceforge.net> Bug #114245, was updated on 2000-Sep-12 06:36 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: utime can not accept directory under NT Details: Whenever supply a directory to utime path parameter, exception raised. The problem is MS C run time library utime function only works on files, but not directories. To fix this bug, MS utime has to be replaced by some function that works with directory. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114245&group_id=5470 From noreply@sourceforge.net Tue Sep 12 22:48:14 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 14:48:14 -0700 Subject: [Python-bugs-list] [Bug #114256] Python 2.0b1, Win2K - urllib failure Message-ID: <200009122148.OAA09236@bush.i.sourceforge.net> Bug #114256, was updated on 2000-Sep-12 09:16 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python 2.0b1, Win2K - urllib failure Details: This might be related to bug #110692, since it seems to be related to proxies. A program I have that works under older versions of Python now fails with this traceback: Traceback (most recent call last): File "IGNRatings.py", line 289, in ? main(sys.argv[1:]) File "IGNRatings.py", line 133, in main inStream = urllib.urlopen(url) File "E:\Python20\lib\urllib.py", line 61, in urlopen return _urlopener.open(url) File "E:\Python20\lib\urllib.py", line 163, in open return getattr(self, name)(url) File "E:\Python20\lib\urllib.py", line 259, in open_http h = httplib.HTTP(host) File "E:\Python20\lib\httplib.py", line 624, in __init__ self._conn = self._connection_class(host, port) File "E:\Python20\lib\httplib.py", line 324, in __init__ self._set_hostport(host, port) File "E:\Python20\lib\httplib.py", line 330, in _set_hostport port = int(host[i+1:]) ValueError: invalid literal for int(): My URL is nothing special: 'http://dreamcast.ign.com/review_lists/a.html' I have tracked the problem down a bit: In urllib.py, line 147, the statement proxy = self.proxies[type] assigns the string 'http://http://proxy:8080' to "proxy". My guess is that's not right. Anyway, the following line assigns type = 'http' proxy = '//http://proxy:8080' and the next line assigns host = 'http:' selector = '//proxy:8080' 'http:' as a host name then goes on to cause trouble when an HTTPConnection is constructed. Hope this info helps you track it down. Bob Alexander bobalex@home.com For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114256&group_id=5470 From noreply@sourceforge.net Tue Sep 12 22:48:08 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 14:48:08 -0700 Subject: [Python-bugs-list] [Bug #114030] 2.0b1: Module index empty Message-ID: <200009122148.OAA09233@bush.i.sourceforge.net> Bug #114030, was updated on 2000-Sep-11 00:36 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: 2.0b1: Module index empty Details: in the html-2.0b1 that I just downloaded, the module index in the library reference manual is empty. Follow-Ups: Date: 2000-Sep-12 14:48 By: fdrake Comment: Already fixed in the 2.0b1.1 documentation packages I just posted on pythonlabs.com! Announcement coming out shortly. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114030&group_id=5470 From noreply@sourceforge.net Tue Sep 12 23:13:13 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 15:13:13 -0700 Subject: [Python-bugs-list] [Bug #113803] [2.0b1 NT4.0] printing non asci char causes idle to abort Message-ID: <200009122213.PAA27125@delerium.i.sourceforge.net> Bug #113803, was updated on 2000-Sep-07 08:33 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 5 Summary: [2.0b1 NT4.0] printing non asci char causes idle to abort Details: try: alef = u'\u05d0' print alef.encode('utf-8') any enter after the last statement will cause idle to abort on 'bare' python this does not cause any problem. [tebeka@lycosmail.com] Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-12 15:13 By: gvanrossum Comment: Crash confirmed in IDLE on Win98SE. Prints (expected) garbage and doesn't crash in command line on Win98SE. No crash in IDLE or command line on Linux. Tim, can you take a look with the VC debugger? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113803&group_id=5470 From noreply@sourceforge.net Tue Sep 12 23:23:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 15:23:28 -0700 Subject: [Python-bugs-list] [Bug #114293] Unexpected Evaluation of Expressions from Pickle Message-ID: <200009122223.PAA10564@bush.i.sourceforge.net> From noreply@sourceforge.net Tue Sep 12 23:32:47 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 15:32:47 -0700 Subject: [Python-bugs-list] [Bug #114294] Module Index Links don't work. Message-ID: <200009122232.PAA27839@delerium.i.sourceforge.net> Bug #114294, was updated on 2000-Sep-12 15:32 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Module Index Links don't work. Details: Thank you for getting the Module Index back so quickly but now I notice that none of the Module Index links work in the Ref Manual. I click but nothing happens. ...Bob For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114294&group_id=5470 From noreply@sourceforge.net Tue Sep 12 23:23:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 15:23:28 -0700 Subject: [Python-bugs-list] [Bug #114293] Unexpected Evaluation of Expressions from Pickle Message-ID: <200009122223.PAA10564@bush.i.sourceforge.net> Bug #114293, was updated on 2000-Sep-12 15:23 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Unexpected Evaluation of Expressions from Pickle Details: It is possible to evaluate an expression through an improperly formatted pickled string: >>> import pickle >>> pickle.loads("S3+3\012p0\012.") 6 The same expression in "cPickle" will raise an exception: >>> import cPickle >>> cPickle.loads("S3+3\012p0\012.") Traceback (most recent call last): File "", line 1, in ? ValueError: insecure string pickle The reason this occurs is that the string is brought into existence through a call to "eval". This is made somewhat safe by removing all the built-in functions, but it is still possible to cause problems with a pure evaluation. I will submit a patch within a few minutes that makes sure that the first character is either a single- or double-quote. Would it be possible for someone to slip a code object instead of an expression? Since we don't have access to the "marshal" module from here, I don't know how it would be done, but I am very concerned about the security implications of using pickle. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114293&group_id=5470 From noreply@sourceforge.net Wed Sep 13 00:10:07 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 16:10:07 -0700 Subject: [Python-bugs-list] [Bug #114296] distutils documentation out of date Message-ID: <200009122310.QAA12227@bush.i.sourceforge.net> Bug #114296, was updated on 2000-Sep-12 15:55 Here is a current snapshot of the bug. Project: Python Category: Distutils Status: Open Resolution: None Bug Group: None Priority: 7 Summary: distutils documentation out of date Details: Chapter 3 describes how to build extension modules. It says to use the keyword argument extensions with the setup function, e.g. setup(extensions=[Extension("foo", ...)]) This causes an error at runtime because the argument "extensions" is unknown. Apparently, ext_modules works... Follow-Ups: Date: 2000-Sep-12 16:10 By: none Comment: Fixed in CVS. Will show up in the docs on the web site in a few days (after I make some more updates). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114296&group_id=5470 From noreply@sourceforge.net Wed Sep 13 00:08:20 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 16:08:20 -0700 Subject: [Python-bugs-list] [Bug #114235] error in getgid()? Message-ID: <200009122308.QAA29123@delerium.i.sourceforge.net> Bug #114235, was updated on 2000-Sep-12 00:33 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: error in getgid()? Details: I have been trying to get mailman (http://www.list.org/)running properly on my linux server (redhat 6.2) with some success. Mailman has the ability to recognise virtual domains so that only those lists pertaining to the domain you are looking at is displayed. There is one slight error. When the mailman program runs it checks the gid of the process that called it to ensure some security. This works fine when the domain is set to the server *real* FQDN, but *not* if it is a virtual domain. If I set the email address to the virtual domain I get a gid of 65534 (maximum for the machine). See https://sourceforge.net/bugs/?func=detailbug&bug_id=111347&group_id=103 for more details on this bug. I logged the error with the mailman project here on SF, but they said it was probably a sendmail issue. I have looked at the code and it makes a "getgid()" call to python - so following the chain back the next stop is with python. I don't know much about the language, but is python trying to check for the gid of the process under the virtual domain and not the real one? Or is this really a sendmail issue? I would be happy to supply more information if required. Follow-Ups: Date: 2000-Sep-12 15:42 By: bwarsaw Comment: I'm not sure what you mean by "it makes a getgid() call to python". The gid security test in Mailman is only done in the C wrapper, specifically in the check_caller() function in src/common.c in the Mailman distro. Python don't enter into it, to paraphrase Mr. Praline. :) I don't know anything about how sendmail handles virtual domains, but my guess is that for some reason, sendmail is invoking it's filter scripts with different gids depending on the virtual domain. There's a very easy way to test this. Download patch #101485 from SF. This is actually a program which you should compile and place in a location accessible to sendmail (e.g. /etc/smrsh). Then set sendmail up to filter to this program by including a line such as the following in your aliases file: mytest: "/tmp/filter" This will bounce the message back to you, but in the bounce message it will contain the real and effective group id's sendmail is invoking the program under. See if they differ depending on the virtual domain you use. If so, it must be a sendmail bug. ------------------------------------------------------- Date: 2000-Sep-12 16:08 By: askegg Comment: Yep. The check_caller() function makes the "getgid()" call; check_caller(const char* ident, GID_T parentgid) { GID_T mygid = getgid(); if (parentgid != mygid) { ..... The getgid() call is summarised here http://www.python.org/doc/2.0b1/lib/os-procinfo.html as "getgid () Return the current process' group id. Availability: Unix. " I will download the patch you suggest and see what happens. Let you know. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114235&group_id=5470 From noreply@sourceforge.net Wed Sep 13 00:13:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 16:13:58 -0700 Subject: [Python-bugs-list] [Bug #114296] distutils documentation out of date Message-ID: <200009122313.QAA12415@bush.i.sourceforge.net> Bug #114296, was updated on 2000-Sep-12 15:55 Here is a current snapshot of the bug. Project: Python Category: Distutils Status: Closed Resolution: Fixed Bug Group: None Priority: 7 Summary: distutils documentation out of date Details: Chapter 3 describes how to build extension modules. It says to use the keyword argument extensions with the setup function, e.g. setup(extensions=[Extension("foo", ...)]) This causes an error at runtime because the argument "extensions" is unknown. Apparently, ext_modules works... Follow-Ups: Date: 2000-Sep-12 16:10 By: none Comment: Fixed in CVS. Will show up in the docs on the web site in a few days (after I make some more updates). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114296&group_id=5470 From noreply@sourceforge.net Wed Sep 13 00:15:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 16:15:38 -0700 Subject: [Python-bugs-list] [Bug #113106] distutils' msvccompiler.py has small C++ defects Message-ID: <200009122315.QAA12439@bush.i.sourceforge.net> Bug #113106, was updated on 2000-Aug-30 04:57 Here is a current snapshot of the bug. Project: Python Category: Distutils Status: Closed Resolution: Fixed Bug Group: Platform-specific Priority: 5 Summary: distutils' msvccompiler.py has small C++ defects Details: At least in 1.6b1, the msvccompiler.py module of distutils has a couple of lacks in C++ support, that show up strongly at least when building the "CXX" extension (I also submitted those to the CXX group, but there's little they can do about them, I think). a) .cxx is not a recognized extension -- it should be listed together with .cc and .cpp, as it's quite common (and it's the one used by the CXX group, as it happens). Falling-off-a-log-easy to fix. b) the /GX switch is not given when building C++ sources, which causes (at the very least) warnings from the standard C++ library headers, erroneous handling of exceptions, etc. Pretty easy to fix as each sourcefile is being separately identified as C++ or C source, just no use is being made of this yet to select the compilation options (I think /gx should be mandatory for C++ sources to give behavior closer to C++ standard, make C++ standard library usable, etc; /gr for RTTI is a harder decision as it imposes some overhead). Alex Follow-Ups: Date: 2000-Aug-30 10:34 By: gward Comment: OK, the .cxx extension was easy to add -- done and checked in. I'm not sure how to deal with /GX, though: is it OK to include this option when compiling C code? If so, it's a snap: just add it to the 'compile_options' attribute. If not, it's a wee bit trickier. Can you try compiling a C extension with /GX and see what happens? Here's what Microsoft's online docs say: """ /GX (Enable Exception Handling) This option enables synchronous exception handling with the assumption that extern C functions never throw an exception. It is now equivalent to /EHsc. For more information, see Exception Handling Topics (C++). """ That's at: http://msdn.microsoft.com/library/devprods/vs6/visualc/vccore/_core_.2f.gx.htm ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113106&group_id=5470 From noreply@sourceforge.net Wed Sep 13 00:52:59 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 16:52:59 -0700 Subject: [Python-bugs-list] [Bug #113785] SIGSEGV in PyDict_SetItem Message-ID: <200009122352.QAA13822@bush.i.sourceforge.net> Bug #113785, was updated on 2000-Sep-07 01:51 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Works For Me Bug Group: 3rd Party Priority: 5 Summary: SIGSEGV in PyDict_SetItem Details: On a PC running FreeBSD 3.5 Python 1.5.2 (#1, Aug 23 2000, 10:14:09) [GCC 2.95 19990728 (release)] on freebsd3 I installed Python to run a filter that comes with inn 2.3.0 (usenet News) Some time the fiter written in Python hangs with the following (from gdb) Program received signal SIGSEGV, Segmentation fault. 0x810465b in PyDict_SetItem (op=0x83c6a80, key=0x83d4020, value=0x0) at dictobject.c:375 375 Py_INCREF(value); I suspect that the Python filter may be # # $Id: filter_innd.py,v 1.2 1999/09/23 14:24:23 kondou Exp $ # # This is a sample filter for the Python innd hook. # # For details, see the file README.python_hook that came with INN. # import re from string import * # This looks weird, but creating and interning these strings should # let us get faster access to header keys (which innd also interns) by # losing some strcmps under the covers. Approved = intern("Approved"); Control = intern("Control") Date = intern("Date"); Distribution = intern("Distribution") Expires = intern("Expires"); From = intern("From") Lines = intern("Lines"); Message_ID = intern("Message-ID") Newsgroups = intern("Newsgroups"); Path = intern("Path") Reply_To = intern("Reply-To"); Sender = intern("Sender") Subject = intern("Subject"); Supersedes = intern("Supersedes") Bytes = intern("Bytes"); Also_Control = intern("Also-Control") References = intern("References"); Xref = intern("Xref") Keywords = intern("Keywords"); X_Trace = intern("X-Trace") NNTP_Posting_Host = intern("NNTP-Posting-Host") Followup_To = intern("Followup-To"); Organization = intern("Organization") Content_Type = intern("Content-Type"); Content_Base = intern("Content-Base") Content_Disposition = intern("Content-Disposition") X_Newsreader = intern("X-Newsreader"); X_Mailer = intern("X-Mailer") X_Newsposter = intern("X-Newsposter") X_Cancelled_By = intern("X-Cancelled-By") X_Canceled_By = intern("X-Canceled-By"); Cancel_Key = intern("Cancel-Key") __BODY__ = intern("__BODY__"); __LINES__ = intern("__LINES__") class InndFilter: """Provide filtering callbacks to innd.""" def __init__(self): """This runs every time the filter is loaded or reloaded. This is a good place to initialize variables and precompile regular expressions, or maybe reload stats from disk. """ self.re_newrmgroup = re.compile('(?:new|rm)group\s') self.re_obsctl = re.compile('(?:sendsys|version|uuname)') # msgid pattern from a once-common spambot. self.re_none44 = re.compile('none\d+\.yet>') # There is a mad newgrouper who likes to meow. self.re_meow = re.compile("^Meow\!", re.M) # One of my silly addresses. self.re_fluffymorph = re.compile("andruQ@myremarQ.coM", re.I) def filter_before_reload(self): """Runs just before the filter gets reloaded. You can use this method to save state information to be restored by the __init__() method or down in the main module. """ syslog('notice', "filter_before_reload executing...") def filter_close(self): """Runs when innd exits. You can use this method to save state information to be restored by the __init__() method or down in the main module. """ syslog('notice', "filter_close running, bye!") def filter_messageid(self, msgid): """Filter articles just by their message IDs. This method interacts with the IHAVE and CHECK NNTP commands. If you return a non-empty string here, the offered article will be refused before you ever have to waste any bandwidth looking at it. This is not foolproof, so you should do your ID checks both here and in filter_art. (TAKETHIS does not offer the ID for examination, and a TAKETHIS isn't always preceded by a CHECK.) """ return "" # deactivate the samples. if self.re_none44.search(msgid): return "But I don't like spam!" if msgid[0:8] == '\r Path: news.nectec.or.th!news.loxinfo.co.th!news-out.cwix.com!newsfeed.\ cwix.com!newsfeeds.belnet.be!news.belnet.be!newsgate.cistron.nl!bullse\ ye.news.demon.net!demon!news.demon.co.uk!demon!inert.demon.co.uk!not-f\ or-mail\r From: inert@inert.demon.co.uk\r Newsgroups: rec.music.industrial\r Subject: *** CLUB NOIR *** 31/8/00\r Date: Wed, 30 Aug 2000 19:47:53 GMT\r Organization: inertia\r Message-ID: <967664873.12710.1.nnrp-02.9e98fa8b@news.demon.co.uk>\r NNTP-Posting-Host: inert.demon.co.uk\r X-NNTP-Posting-Host: inert.demon.co.uk:158.152.250.139\r X-Trace: news.demon.co.uk 967664873 nnrp-02:12710 NO-IDENT inert.demon\ .co.uk:158.152.250.139\r X-Complaints-To: abuse@demon.net\r X-Mailer: Mozilla 1.22 (Windows; I; 16bit)\r MIME-Version: 1.0\r Lines: 0\r Xref: news.nectec.or.th rec.music.industrial:137401\r \r .\r So, for an easy solution, I can disable Python filtering and then inn will be working fine. But even if the filter was not doing what it is supposed to do, Python should not SIGSEGV I presume. Beside Python installed without problem and make test result is: 42 tests OK. 19 tests skipped: test_al test_audioop test_bsddb test_cd test_cl test_crypt test_dbm test_dl test_gdbm test_gl test_gzip test_imageop test_imgfile test_nis test_rgbimg test_sunaudiodev test_thread test_timing test_zlib For more info: on@cs.ait.ac.th Thank you, Olivier Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-12 16:52 By: gvanrossum Comment: I'm closing this because I have not enough information, and I have no way to reproduce the problem. If you provide more information I'll gladly reopen it. Some questions: - How does inn invoke Python? Does it embed Python or does it run Python as a subprocess? Is there any INN specific extension C code? - What's in the INN module? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113785&group_id=5470 From noreply@sourceforge.net Wed Sep 13 02:37:49 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 18:37:49 -0700 Subject: [Python-bugs-list] [Bug #114235] error in getgid()? Message-ID: <200009130137.SAA03340@delerium.i.sourceforge.net> Bug #114235, was updated on 2000-Sep-12 00:33 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: error in getgid()? Details: I have been trying to get mailman (http://www.list.org/)running properly on my linux server (redhat 6.2) with some success. Mailman has the ability to recognise virtual domains so that only those lists pertaining to the domain you are looking at is displayed. There is one slight error. When the mailman program runs it checks the gid of the process that called it to ensure some security. This works fine when the domain is set to the server *real* FQDN, but *not* if it is a virtual domain. If I set the email address to the virtual domain I get a gid of 65534 (maximum for the machine). See https://sourceforge.net/bugs/?func=detailbug&bug_id=111347&group_id=103 for more details on this bug. I logged the error with the mailman project here on SF, but they said it was probably a sendmail issue. I have looked at the code and it makes a "getgid()" call to python - so following the chain back the next stop is with python. I don't know much about the language, but is python trying to check for the gid of the process under the virtual domain and not the real one? Or is this really a sendmail issue? I would be happy to supply more information if required. Follow-Ups: Date: 2000-Sep-12 15:42 By: bwarsaw Comment: I'm not sure what you mean by "it makes a getgid() call to python". The gid security test in Mailman is only done in the C wrapper, specifically in the check_caller() function in src/common.c in the Mailman distro. Python don't enter into it, to paraphrase Mr. Praline. :) I don't know anything about how sendmail handles virtual domains, but my guess is that for some reason, sendmail is invoking it's filter scripts with different gids depending on the virtual domain. There's a very easy way to test this. Download patch #101485 from SF. This is actually a program which you should compile and place in a location accessible to sendmail (e.g. /etc/smrsh). Then set sendmail up to filter to this program by including a line such as the following in your aliases file: mytest: "/tmp/filter" This will bounce the message back to you, but in the bounce message it will contain the real and effective group id's sendmail is invoking the program under. See if they differ depending on the virtual domain you use. If so, it must be a sendmail bug. ------------------------------------------------------- Date: 2000-Sep-12 16:08 By: askegg Comment: Yep. The check_caller() function makes the "getgid()" call; check_caller(const char* ident, GID_T parentgid) { GID_T mygid = getgid(); if (parentgid != mygid) { ..... The getgid() call is summarised here http://www.python.org/doc/2.0b1/lib/os-procinfo.html as "getgid () Return the current process' group id. Availability: Unix. " I will download the patch you suggest and see what happens. Let you know. ------------------------------------------------------- Date: 2000-Sep-12 18:37 By: askegg Comment: This is weird. I have done as you suggested and when mail is sent to test@real.domainname I get : ----- Transcript of session follows ----- real gid = 12, effective gid = 12 554 "| /tmp/id" ... unknown mailer error 1 Ok - cool. However, when I send it to test@virtual.domainname I get nothing. The maillog reports : Sep 13 11:25:25 svr1 sendmail[32047]: LAA32045: to=, delay=00:00:01, xdelay=00:00:00, mailer=virtual, relay=virtual.domainname, stat=Sent So when sendmail tries to deliver the mail under the real domain it sees the error and returns the mail, but if it under a virtual domain it must assume everything is ok and ignores any errors that may occur (?). Looks like this is a sendmail issue ..... ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114235&group_id=5470 From noreply@sourceforge.net Wed Sep 13 02:40:54 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 18:40:54 -0700 Subject: [Python-bugs-list] [Bug #114235] error in getgid()? Message-ID: <200009130140.SAA03444@delerium.i.sourceforge.net> Bug #114235, was updated on 2000-Sep-12 00:33 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Invalid Bug Group: Not a Bug Priority: 5 Summary: error in getgid()? Details: I have been trying to get mailman (http://www.list.org/)running properly on my linux server (redhat 6.2) with some success. Mailman has the ability to recognise virtual domains so that only those lists pertaining to the domain you are looking at is displayed. There is one slight error. When the mailman program runs it checks the gid of the process that called it to ensure some security. This works fine when the domain is set to the server *real* FQDN, but *not* if it is a virtual domain. If I set the email address to the virtual domain I get a gid of 65534 (maximum for the machine). See https://sourceforge.net/bugs/?func=detailbug&bug_id=111347&group_id=103 for more details on this bug. I logged the error with the mailman project here on SF, but they said it was probably a sendmail issue. I have looked at the code and it makes a "getgid()" call to python - so following the chain back the next stop is with python. I don't know much about the language, but is python trying to check for the gid of the process under the virtual domain and not the real one? Or is this really a sendmail issue? I would be happy to supply more information if required. Follow-Ups: Date: 2000-Sep-12 15:42 By: bwarsaw Comment: I'm not sure what you mean by "it makes a getgid() call to python". The gid security test in Mailman is only done in the C wrapper, specifically in the check_caller() function in src/common.c in the Mailman distro. Python don't enter into it, to paraphrase Mr. Praline. :) I don't know anything about how sendmail handles virtual domains, but my guess is that for some reason, sendmail is invoking it's filter scripts with different gids depending on the virtual domain. There's a very easy way to test this. Download patch #101485 from SF. This is actually a program which you should compile and place in a location accessible to sendmail (e.g. /etc/smrsh). Then set sendmail up to filter to this program by including a line such as the following in your aliases file: mytest: "/tmp/filter" This will bounce the message back to you, but in the bounce message it will contain the real and effective group id's sendmail is invoking the program under. See if they differ depending on the virtual domain you use. If so, it must be a sendmail bug. ------------------------------------------------------- Date: 2000-Sep-12 16:08 By: askegg Comment: Yep. The check_caller() function makes the "getgid()" call; check_caller(const char* ident, GID_T parentgid) { GID_T mygid = getgid(); if (parentgid != mygid) { ..... The getgid() call is summarised here http://www.python.org/doc/2.0b1/lib/os-procinfo.html as "getgid () Return the current process' group id. Availability: Unix. " I will download the patch you suggest and see what happens. Let you know. ------------------------------------------------------- Date: 2000-Sep-12 18:37 By: askegg Comment: This is weird. I have done as you suggested and when mail is sent to test@real.domainname I get : ----- Transcript of session follows ----- real gid = 12, effective gid = 12 554 "| /tmp/id" ... unknown mailer error 1 Ok - cool. However, when I send it to test@virtual.domainname I get nothing. The maillog reports : Sep 13 11:25:25 svr1 sendmail[32047]: LAA32045: to=, delay=00:00:01, xdelay=00:00:00, mailer=virtual, relay=virtual.domainname, stat=Sent So when sendmail tries to deliver the mail under the real domain it sees the error and returns the mail, but if it under a virtual domain it must assume everything is ok and ignores any errors that may occur (?). Looks like this is a sendmail issue ..... ------------------------------------------------------- Date: 2000-Sep-12 18:40 By: bwarsaw Comment: I think it's more likely that the virtual domain is not invoking the program correctly. The program can do only one thing: print the message and fail (i.e. exit code 1). I agree, it must be a sendmail issue, so I'm closing this as a bug report on Python. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114235&group_id=5470 From noreply@sourceforge.net Wed Sep 13 02:48:03 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 18:48:03 -0700 Subject: [Python-bugs-list] [Bug #114304] wm_resizable should return a tuple. Message-ID: <200009130148.SAA03857@delerium.i.sourceforge.net> Bug #114304, was updated on 2000-Sep-12 18:48 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 5 Summary: wm_resizable should return a tuple. Details: wm_resizable returns two values - a 0/1 for width and 0/1 for height. Currently, a string is returned with the values separated by a blank. It would be more consistent if a tuple were returned. The code to do that follows: def wm_resizable(self, width=None, height=None): return self._getints( self.tk.call('wm', 'resizable', self._w, width, height)) For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114304&group_id=5470 From noreply@sourceforge.net Wed Sep 13 03:20:55 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 19:20:55 -0700 Subject: [Python-bugs-list] [Bug #114290] search_for_prefix failure on relative path Message-ID: <200009130220.TAA05431@delerium.i.sourceforge.net> Bug #114290, was updated on 2000-Sep-12 14:38 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 7 Summary: search_for_prefix failure on relative path Details: The code in getpath.c fails in Step 3 (search for the libraries using the argv0 path) when python is invoked with a relative path. The search code should be able to join the relative path with the current working directory and find the landmark file. Follow-Ups: Date: 2000-Sep-12 19:20 By: fdrake Comment: Barry, didn't you write most of the current code to locate the installation? If not, assign it to whoever did. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114290&group_id=5470 From noreply@sourceforge.net Wed Sep 13 03:30:34 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 19:30:34 -0700 Subject: [Python-bugs-list] [Bug #114304] wm_resizable should return a tuple. Message-ID: <200009130230.TAA19311@bush.i.sourceforge.net> Bug #114304, was updated on 2000-Sep-12 18:48 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Closed Resolution: Wont Fix Bug Group: Feature Request Priority: 5 Summary: wm_resizable should return a tuple. Details: wm_resizable returns two values - a 0/1 for width and 0/1 for height. Currently, a string is returned with the values separated by a blank. It would be more consistent if a tuple were returned. The code to do that follows: def wm_resizable(self, width=None, height=None): return self._getints( self.tk.call('wm', 'resizable', self._w, width, height)) Follow-Ups: Date: 2000-Sep-12 19:30 By: fdrake Comment: It probably should return a tuple, but fixing this would break API compatibility; wm_resizable() has been there a while! At some point, Tkinter needs to be thoroughly reviewed for methods that have issues similar to this and be modified to return the right thing. This should result in a new module, not an API change in Tkinter. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114304&group_id=5470 From noreply@sourceforge.net Wed Sep 13 03:33:55 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 19:33:55 -0700 Subject: [Python-bugs-list] [Bug #114294] Module Index Links don't work. Message-ID: <200009130233.TAA19472@bush.i.sourceforge.net> Bug #114294, was updated on 2000-Sep-12 15:32 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Works For Me Bug Group: Irreproducible Priority: 5 Summary: Module Index Links don't work. Details: Thank you for getting the Module Index back so quickly but now I notice that none of the Module Index links work in the Ref Manual. I click but nothing happens. ...Bob Follow-Ups: Date: 2000-Sep-12 19:33 By: fdrake Comment: You didn't state what browser you were using, or whether you were using the online version of a local copy. They work for me; please confirm the behavior and send more information if you think we should re-open this bug report. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114294&group_id=5470 From noreply@sourceforge.net Wed Sep 13 03:45:01 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 19:45:01 -0700 Subject: [Python-bugs-list] [Bug #113803] [2.0b1 NT4.0] printing non asci char causes idle to abort Message-ID: <200009130245.TAA06653@delerium.i.sourceforge.net> Bug #113803, was updated on 2000-Sep-07 08:33 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: [2.0b1 NT4.0] printing non asci char causes idle to abort Details: try: alef = u'\u05d0' print alef.encode('utf-8') any enter after the last statement will cause idle to abort on 'bare' python this does not cause any problem. [tebeka@lycosmail.com] Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-12 15:13 By: gvanrossum Comment: Crash confirmed in IDLE on Win98SE. Prints (expected) garbage and doesn't crash in command line on Win98SE. No crash in IDLE or command line on Linux. Tim, can you take a look with the VC debugger? ------------------------------------------------------- Date: 2000-Sep-12 19:45 By: tim_one Comment: Changed group to platform-specific. Note that this is a simpler test case w/ the same symptom: print "\327\220" Don't know why, do know that _tkinter.pyd and tk83.dll crap out w/ page faults at the end, assigned to Fredrik on the chance he's bumped into this before. /F, bounce it back at me if it's unclear to you. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113803&group_id=5470 From noreply@sourceforge.net Wed Sep 13 05:59:56 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 21:59:56 -0700 Subject: [Python-bugs-list] [Bug #113797] Build problems on Reliant Unix Message-ID: <200009130459.VAA25091@bush.i.sourceforge.net> Bug #113797, was updated on 2000-Sep-07 07:33 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Build problems on Reliant Unix Details: - the linker requires the options '-W1 -Blargedynsym', otherwise, Python's global functions and variables are not visible to external modules - when building --with-threads, the linker requires the option -Kpthread - mmapmodule.o requires a special library Python version: 2.0b1 compiler version:CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 CDR9908: cc: Fujitsu Siemens Computers GmbH: CDS++ V2.0C0003, 1.2.7.2 from 29 Jun 2000 Follow-Ups: Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 13:45 By: fdrake Comment: We need to know the output of "uname -s" and "uname -r" for this system. (If "uname -r" reports an error, please try "uname -v".) Are you willing to test a modified configure script on this platform? What additional library is required for the mmap module? ------------------------------------------------------- Date: 2000-Sep-12 21:59 By: fdrake Comment: Received the following response from Daniel Dittmar : > We need to know the output of "uname -s" and "uname -r" > for this system. (If "uname -r" reports an error, please > try "uname -v".) uname -s ReliantUNIX-N uname -r 5.45 > Are you willing to test a modified configure script on > this platform? sure. > What additional library is required for the mmap module? The man page states -lucb. This didn't work on my machine as the BSD compatibility layer is not active. I tell you more as soon as I know how to activate it. *********** Another problem: to detect pthreads, the compiler must be called with -Kpthread. Otherwise, pthread.h goes into a branch where it tries to include a non existent header, fails, and configure reports 'no pthreads'. Daniel ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113797&group_id=5470 From noreply@sourceforge.net Wed Sep 13 07:38:00 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Tue, 12 Sep 2000 23:38:00 -0700 Subject: [Python-bugs-list] [Bug #113803] [2.0b1 NT4.0] printing non asci char causes idle to abort Message-ID: <200009130638.XAA29576@bush.i.sourceforge.net> Bug #113803, was updated on 2000-Sep-07 08:33 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: [2.0b1 NT4.0] printing non asci char causes idle to abort Details: try: alef = u'\u05d0' print alef.encode('utf-8') any enter after the last statement will cause idle to abort on 'bare' python this does not cause any problem. [tebeka@lycosmail.com] Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-12 15:13 By: gvanrossum Comment: Crash confirmed in IDLE on Win98SE. Prints (expected) garbage and doesn't crash in command line on Win98SE. No crash in IDLE or command line on Linux. Tim, can you take a look with the VC debugger? ------------------------------------------------------- Date: 2000-Sep-12 19:45 By: tim_one Comment: Changed group to platform-specific. Note that this is a simpler test case w/ the same symptom: print "\327\220" Don't know why, do know that _tkinter.pyd and tk83.dll crap out w/ page faults at the end, assigned to Fredrik on the chance he's bumped into this before. /F, bounce it back at me if it's unclear to you. ------------------------------------------------------- Date: 2000-Sep-12 23:38 By: tim_one Comment: Bad news: this doesn't always fail in the debugger (sometimes it just prints an alef glyph and nothing odd happens at all). Better news: it usually fails, and when it does it dies here (_tkinter.c): static char * AsString(PyObject *value, PyObject *tmp) { if (PyString_Check(value)) return PyString_AsString(value); else { PyObject *v = PyObject_Str(value); PyList_Append(tmp, v); Py_DECREF(v); return PyString_AsString(v); } } It's in the "else" branch, v is NULL, and the Py_DECREF expansion blows up with an access violation. Py_ObjectStr certainly *can* return NULL, and I don't understand the intent of this code well enough to know why it believes that needn't be guarded against. "value" at this point has type PyUnicode_Type. For whatever reason, the debugger won't let me cast it to a PyUnicodeObject*. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113803&group_id=5470 From noreply@sourceforge.net Wed Sep 13 08:39:31 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 00:39:31 -0700 Subject: [Python-bugs-list] [Bug #114318] References to Python 1.5 Message-ID: <200009130739.AAA31711@bush.i.sourceforge.net> Bug #114318, was updated on 2000-Sep-13 00:39 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: Not a Bug Priority: 5 Summary: References to Python 1.5 Details: In the documentation, there are references to Python's library path that often use "/usr/local/lib/python1.5" instead of "/usr/local/lib/python2.0". A quick "find" and "grep" shows the following pages: ./api/embedding.html ./api/includes.html ./dist/node13.html ./lib/module-pdb.html ./lib/module-pprint.html ./lib/module-site.html ./lib/profile-instant.html ./lib/typesmodules.html The only one that might be a problem is "./lib/module-site.html", since it mentions Python 2.0b1.1 explicitly and states that its library is installed in "python1.5". For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114318&group_id=5470 From noreply@sourceforge.net Wed Sep 13 10:16:40 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 02:16:40 -0700 Subject: [Python-bugs-list] [Bug #114323] Pb PYTHON Message-ID: <200009130916.CAA22338@delerium.i.sourceforge.net> Bug #114323, was updated on 2000-Sep-13 02:16 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Pb PYTHON Details: Find the encoutered problem when we are running python interactively with the following commands python >>> from Tkinter import * >>> root=Tk() Traceback (innermost last): File "", line 1, in ? File "/usr/local/lib/python1.5/lib-tk/Tkinter.py", line 886, in __init__ self.tk = _tkinter.create(screenName, baseName, className) TclError: Can't find a usable init.tcl in the following directories: We have compile python on SUN ULTRA 60 - Solaris 2.6 with GCC using the building and installing commndes found in the book Python and Tkinter Please send me a mail as soon as possible This probably means that Tcl wasn't installed properly. >>> For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114323&group_id=5470 From noreply@sourceforge.net Wed Sep 13 10:20:35 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 02:20:35 -0700 Subject: [Python-bugs-list] [Bug #114324] Minor build problems on HPUX for 2.0b1 Message-ID: <200009130920.CAA22410@delerium.i.sourceforge.net> Bug #114324, was updated on 2000-Sep-13 02:20 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Minor build problems on HPUX for 2.0b1 Details: Build problems on HPUX10.20/HPUX11.00: - There seems to be no prototype for "fdatasync" in any include file although it has a man page and it is present in libc (so HAVE_FDATASYNC is set). As a result posixmodule.c fails to compile. Adding a prototype "extern int fdatasync(int);" to posixmodule.c solves this problem, but it may not be portable. - Modules/mmapmodule.c is missing a "#include " Build problems on HPUX10.20 only: - When configured with threading support (default), the cast to (long) on line 181 of Python/thread_pthread.h fails. The reason is that pthread_t is a struct type. The "configure" test that tries to find out the size of pthread_t failed because it tries to cast '0' to a pthread_t, so SIZEOF_PTHREAD_T remains undefined. I suggest changing this line in configure.in: AC_TRY_COMPILE([#include ], [pthread_t x; x = (pthread_t)0;], have_pthread_t=yes) to AC_TRY_COMPILE([#include ], [pthread_t x; x = *(pthread_t*)0;], have_pthread_t=yes) My compiler settings: setenv CC 'c89 +DA1.1 +Onolimit -D_HPUX_SOURCE' Regards, Eddy For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114324&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:17:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:17:21 -0700 Subject: [Python-bugs-list] [Bug #110619] urllib.py fails with username/password proxies (PR#221) Message-ID: <200009131017.DAA05085@bush.i.sourceforge.net> Bug #110619, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: Later Bug Group: Feature Request Priority: 4 Summary: urllib.py fails with username/password proxies (PR#221) Details: Jitterbug-Id: 221 Submitted-By: tarka@zip.com.au Date: Tue, 29 Feb 2000 19:15:45 -0500 (EST) Version: 1.5.2 OS: Irix urllib.py fails to handle proxies with user and password information included in the proxy URL, e.g. http://ssmith:testpass@10.11.12.13:1234 The following example ... import os, urllib os.environ['http_proxy'] = "http://ssmith:testpass01@10.11.12.13:1234" f = urllib.urlopen('http://www.python.org') data = f.read() print data fails with the following errors : Traceback (innermost last): File "url.py", line 3, in ? f = urllib.urlopen('http://www.python.org') File "/var/share//lib/python1.5/urllib.py", line 59, in urlopen return _urlopener.open(url) File "/var/share//lib/python1.5/urllib.py", line 157, in open return getattr(self, name)(url) File "/var/share//lib/python1.5/urllib.py", line 253, in open_http h = httplib.HTTP(host) File "/var/share//lib/python1.5/httplib.py", line 51, in __init__ if host: self.connect(host, port) File "/var/share//lib/python1.5/httplib.py", line 75, in connect raise socket.error, "nonnumeric port" IOError: [Errno socket error] nonnumeric port ==================================================================== Audit trail: Mon May 22 17:35:04 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-31 10:15 By: fdrake Comment: Will be documented as a limitation in the implementation, as suggested in bug #111725. I'm converting this to a feature request that can be dealt with in a subsequent version of Python. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:17 By: gvanrossum Comment: Fred, please document this limitation, add this to the feature-requests PEP (to be created), and then close the bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110619&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:23:20 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:23:20 -0700 Subject: [Python-bugs-list] [Bug #110655] getpass.getpass on Windows (PR#349) Message-ID: <200009131023.DAA05269@bush.i.sourceforge.net> Bug #110655, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: getpass.getpass on Windows (PR#349) Details: Jitterbug-Id: 349 Submitted-By: ctalley@caci.com Date: Thu, 8 Jun 2000 15:52:19 -0400 (EDT) Version: 1.5.2 OS: W95 When using this code, the third line is skipped. That is, the prompt appears, but the program doesn't pause to accept input data. It goes right to the fourth line and pauses there. I end up with a null string for "fromaddr". username=raw_input('Enter FTP server account username: ') password=getpass.getpass('Enter FTP server account password: ') fromaddr=raw_input('Enter your e-mail address: ') toaddr=raw_input('Enter e-mail address for notification: ') When using this code, everything works (although echo of the password isn't suppressed.) username=raw_input('Enter FTP server account username: ') password=raw_input('Enter FTP server account password: ') fromaddr=raw_input('Enter your e-mail address: ') toaddr=raw_input('Enter e-mail address for notification: ') The difference between the two code segments is that the first uses the getpass method on the second line and the second uses raw_input. What I think is happening is that getpass is leaving some garbage in a buffer somewhere which is seen by raw_input as data. raw_input happily accepts the data and goes to the next line. I've devised several workarounds including "flush_input_buffer=raw_input('')" immediately following the call to getpass. It's ugly, but it works. Thanks, Carl Talley ==================================================================== Audit trail: Tue Jul 11 08:25:59 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:23 By: gvanrossum Comment: Confirmed with Python 2.0b1 on Win98SE. The bug does not occur on Linux. Tim, the getpass code for Windows is different than on Unix, so please have a look! ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110655&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:26:55 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:26:55 -0700 Subject: [Python-bugs-list] [Bug #110666] PRIVATE: interned->ma_table never free'd (PR#361) Message-ID: <200009131026.DAA05410@bush.i.sourceforge.net> Bug #110666, was updated on 2000-Jul-31 14:12 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Wont Fix Bug Group: None Priority: 1 Summary: PRIVATE: interned->ma_table never free'd (PR#361) Details: Jitterbug-Id: 361 Submitted-By: cfandrich@8cs.com Date: Fri, 16 Jun 2000 20:08:33 -0400 (EDT) Version: 1.5.2 OS: Windows I'm embedding Python in an application. For now, all I'm doing is initializing and finalizing Python. When I run my app I get a memory leak of 12288 bytes. The memory is malloc'ed by dictresize() which is called by PyDict_SetItem() which is called by PyString_InternInPlace(). For now, I've added PyDict_Clear(interned); interned = NULL; to PyString_Fini(). So far it works fine, but I don't know if it's safe to do in the grand scheme of things. -Chris ==================================================================== Audit trail: Tue Jul 11 08:26:01 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: "M.-A. Lemburg" Subject: Re: [Python-bugs-list] PRIVATE: interned->ma_table never free'd (PR#361) Date: Sat, 17 Jun 2000 10:53:20 +0200 cfandrich@8cs.com wrote: > > Full_Name: Christopher Fandrich > Version: 1.5.2 > OS: Windows > Submission from: (NULL) (208.41.174.4) > > I'm embedding Python in an application. For now, all I'm doing is initializing > and finalizing Python. > > When I run my app I get a memory leak of 12288 bytes. The memory is malloc'ed > by dictresize() which is called by PyDict_SetItem() which is called by > PyString_InternInPlace(). > > For now, I've added > PyDict_Clear(interned); > interned = NULL; > to PyString_Fini(). So far it works fine, but I don't know if it's safe to do > in the grand scheme of things. I would suggest adding code to dealloc the interned dict iff it is empty after the sweeping action in PyString_Fini(). I have a feeling that this is not the case though, since interned strings are used quite a lot in the core interpreter (e.g. in classobject.c) and these are usually not recovered. Perhaps we ought to add some code which takes care of cleaning up all remaining garbage left over after the call to call_ll_exitfuncs() in Py_Finalize(), e.g. force free'ing of all interned strings and cached ints/floats and associated free lists or dicts. We'd need new APIs in string|float|intobject.c to implement this. Thoughts ? Patches ? -- Marc-Andre Lemburg ______________________________________________________________________ Business: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/ ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:26 By: gvanrossum Comment: You shouldn't worry about this memory leak. The interned dict is shared by all interpreters and it's not safe to clear it. If you repeatedly initialize and finalize Python, you shouldn't see the memory leak increase. (What leak detection tool do you use anyway? Since the interned dict is still accessible through a global, it shouldn't be called a leak!) ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110666&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:29:06 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:29:06 -0700 Subject: [Python-bugs-list] [Bug #110685] isdir bad behaviouring (PR#408) Message-ID: <200009131029.DAA05456@bush.i.sourceforge.net> Bug #110685, was updated on 2000-Jul-31 14:14 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Wont Fix Bug Group: None Priority: 5 Summary: isdir bad behaviouring (PR#408) Details: Jitterbug-Id: 408 Submitted-By: thomas.mangin@free.fr Date: Sun, 23 Jul 2000 08:39:25 -0400 (EDT) Version: 1.5.2 OS: Linux This report is not a "Bug" report but more a library "Misbehaviouring" report. I am concern about os.path.isdir return code. (this can probably applied to isfile) The return code express a boolean value : the file is a directory or not. But I notice that if you don't have read access into the directory where the file is stored, the function always return 0. Or the path can refer a directory, returning 0 simply isn't right. I beleve an exception must be raised to inform the programmer about this access right problem and must be silently ignored. ==================================================================== Audit trail: Mon Jul 24 18:32:17 2000 jeremy moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:29 By: gvanrossum Comment: You are wrong. isdir() should never raise an exception. What good is it to know that it is a directory if you can't access it? If you want an exception, use os.stat(). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110685&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:30:46 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:30:46 -0700 Subject: [Python-bugs-list] [Bug #110690] Bug in os.environ for Windows (PR#50) Message-ID: <200009131030.DAA05476@bush.i.sourceforge.net> Bug #110690, was updated on 2000-Jul-31 14:15 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: Bug in os.environ for Windows (PR#50) Details: Jitterbug-Id: 50 Submitted-By: bobalex@uppercase.xerox.com Date: Wed, 11 Aug 1999 19:19:16 -0400 (EDT) Version: 1.5.2 OS: WinNT os.environ for Windows appears to be a map-type object that converts its keys to upper case. Retrieval using a mixed case key works in some cases, but some overloaded "operators" don't seem to do the right thing unless I pass an all-upper-case key. E.g.: >>> os.environ["x"] = "y" # Stores pair {"X": "y"} >>> os.environ["x"] # Works, indicates an effort is made 'y' # to retrieve mixed case keys >>> os.environ.get("x", "NOT FOUND") # Doesn't see the key "x" 'NOT FOUND' >>> os.environ.get("X", "NOT FOUND") # Works with all-upper-case key 'y' >>> del os.environ["x"] # Doesn't see the key "x" Traceback (innermost last): File "", line 1, in ? File "E:\Program Files\Python\Lib\UserDict.py", line 16, in __delitem__ def __delitem__(self, key): del self.data[key] KeyError: x >>> del os.environ["X"] # Works with all-upper-case key ==================================================================== Audit trail: Mon Aug 30 12:33:44 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 10:34 By: fdrake Comment: Fixed at some point in the past. Tested OK using 2.0b1 on Win2K. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:30 By: gvanrossum Comment: This was fixed by os.py version 1.31 in April 2000, by Fred Gansevles. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110690&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:36:06 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:36:06 -0700 Subject: [Python-bugs-list] [Bug #110694] PRIVATE: Threads and readline (PR#120) Message-ID: <200009131036.DAA05660@bush.i.sourceforge.net> Bug #110694, was updated on 2000-Jul-31 14:28 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Duplicate Bug Group: Platform-specific Priority: 5 Summary: PRIVATE: Threads and readline (PR#120) Details: Jitterbug-Id: 120 Submitted-By: xfb52@dial.pipex.com Date: Fri, 29 Oct 1999 14:33:55 -0400 (EDT) Version: 1.5.2 OS: FreeBSD 3.2 When python is compiled with thread support and readline, ^C no longer works properly (interpreter goes into an infinite loop). (Tried with readline 2.0, 2.2 and 4.0). The same system compiled without readline but with threads works fine, and compiled without threads but with readline works fine. The error seems to centre around the signal handler installed by call_readline in Modules/readline.c which does not call signal_handler in Modules/signalmodule.c (which is what happens without readline). I have found an inadequate fix which works with readline-4.0 (but not earlier realeases). This makes ^C work but only after a RETURN is pressed. Whilst not perfect, it does at least allow readline and threads. Hopefully this may point someone who can better understand the signal handling to find a better fix. I confirm that, to the best of my knowledge and belief, this contribution is free of any claims of third parties under copyright, patent or other rights or interests ("claims"). To the extent that I have any such claims, I hereby grant to CNRI a nonexclusive, irrevocable, royalty-free, worldwide license to reproduce, distribute, perform and/or display publicly, prepare derivative versions, and otherwise use this contribution as part of the Python software and its related documentation, or any derivative versions thereof, at no cost to CNRI or its licensed users, and to authorize others to do so. I acknowledge that CNRI may, at its sole discretion, decide whether or not to incorporate this contribution in the Python software and its related documentation. I further grant CNRI permission to use my name and other identifying information provided to CNRI by me for use in connection with the Python software and its related documentation. --Alex *** Modules/readline.c Fri Oct 29 19:31:13 1999 --- Modules/readline.c.ORIG Fri Oct 29 19:14:27 1999 *************** *** 34,40 **** extern int rl_bind_key_in_map(); extern int rl_initialize(); extern int add_history(); - extern int rl_catch_signals; extern Function *rl_event_hook; #endif --- 34,39 ---- *************** *** 233,239 **** static void setup_readline() { - rl_catch_signals=0; rl_readline_name = "python"; /* Force rebind of TAB to insert-tab */ rl_bind_key('\t', rl_insert); --- 232,237 ---- *************** *** 277,283 **** int n; char *p; RETSIGTYPE (*old_inthandler)(); ! /* old_inthandler = signal(SIGINT, onintr); */ if (setjmp(jbuf)) { #ifdef HAVE_SIGRELSE /* This seems necessary on SunOS 4.1 (Rasmus Hahn) */ --- 275,281 ---- int n; char *p; RETSIGTYPE (*old_inthandler)(); ! old_inthandler = signal(SIGINT, onintr); if (setjmp(jbuf)) { #ifdef HAVE_SIGRELSE /* This seems necessary on SunOS 4.1 (Rasmus Hahn) */ *************** *** 288,294 **** } rl_event_hook = PyOS_InputHook; p = readline(prompt); ! /* signal(SIGINT, old_inthandler); */ if (p == NULL) { p = malloc(1); if (p != NULL) --- 286,292 ---- } rl_event_hook = PyOS_InputHook; p = readline(prompt); ! signal(SIGINT, old_inthandler); if (p == NULL) { p = malloc(1); if (p != NULL) ==================================================================== Audit trail: Tue Nov 02 20:44:47 1999 guido changed notes Tue Nov 02 20:44:47 1999 guido moved from incoming to platformbug Wed Nov 03 10:41:38 1999 guido changed notes Wed Nov 03 10:41:39 1999 guido changed notes Wed Nov 03 10:44:43 1999 guido changed notes Follow-Ups: Date: 2000-Aug-01 14:02 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Mon, 01 Nov 1999 17:53:46 -0500 > When python is compiled with thread support and readline, ^C no longer > works properly (interpreter goes into an infinite loop). > (Tried with readline 2.0, 2.2 and 4.0). Thanks for your bug report. I see that you are using FreeBSD. Could it be a FreeBSD related problem? I don't see the same thing on Solaris or Red Hat Linux. Also, can you describe exactly how you reproduce the problem? --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:02 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Wed, 03 Nov 1999 10:40:18 -0500 Resolution. ------- Forwarded Message Date: Wed, 03 Nov 1999 15:24:59 +0000 From: Alex Zbyslaw To: guido@cnri.reston.va.us Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline I believe that you were right and that this is a FreeBSD bug. I finally traced the problem back to the use of the setjmp/longjmp in readline.c. For whatever reason, this messes up on FreeBSD. I'll post my final patches on comp.lang.python myself. Please consider the problem closed. Thanks for following up. I think I'll stick to FreeBSD. I grew up on BSD4.2/3 and system v still gives me the heebie jeebies :-) All the best, - --Alex ------- End of Forwarded Message ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Wed, 03 Nov 1999 10:42:33 -0500 ------- Forwarded Message Date: Tue, 02 Nov 1999 11:57:23 +0000 From: Alex Zbyslaw To: guido@cnri.reston.va.us Subject: RE: Re: [Python-bugs-list] PRIVATE: Threads and readline >> When python is compiled with thread support and readline, ^C no longer >> works properly (interpreter goes into an infinite loop). >> (Tried with readline 2.0, 2.2 and 4.0). >Thanks for your bug report. I see that you are using FreeBSD. Could >it be a FreeBSD related problem? I don't see the same thing on >Solaris or Red Hat Linux. > >Also, can you describe exactly how you reproduce the problem? > >--Guido van Rossum (home page: http://www.python.org/~guido/) Thanks for your mail, Guido. Yes, I suppose it could be a FreeBSD problem, though I was originally put on to the readline connection by some articles in comp.lang.python which mentioned extremely similar symptoms under Debian Linux. What those articles did not mention was the thread connection which I guessed for myself. See articles titled "Control-C on Unix meisbehaviour?" on 18th Oct 1999. People in that thread reported similar problems on various systems, whilst others had no problem on apparently identical systems. No one mentioned if they had thread support. Creating the problem is, for me, simple. I compile python 1.5.2 with thread support enabled. (Thread and signal tests are passed by make test and a quickie thread program works as expected). If I go into the interpreter python and type ^C, everything goes into an infinite loop. If I recompile python without threads, but with readline, then go into the interpreter then press ^C I get KeyboardInterrupt as expected. If I recompile with threads but without readline, then again, I get KeyboardInterrupt as expected. In all three cases, pressing ^C while a program is running gets correct behaviour. >From what I can determine: The readline module was written so that it bypassed any signal handler installed by the readline library. It institutes its own handler in readline.c (onintr) which catches the interrupt and returns NULL (which somewhere back down the line is interpreted as KeyboardInterrupt). However, with threads enabled (but no readline) there seems to be a different behaviour, where the interrupt is caught by the regular signal handler (I forget the name but its in my bug report - in signalmodule.c). My guess was that with threads enabled this signal handler was doing something important. But with readline support turned on, this handler was not being called which caused some problem occur. I did try adapting the code in readline.c to call this signal handler itself, but that didn't seem to work (though I forget what happened). What my patch does is to forget about the local signal handler 'onintr' and, instead, stick with whatever the "default" signal handler is. readline_4.0 allows you to turn off any signal handling in the readline library itself, so the "default" handler will be whatever python installs (in signalmodule.c). This then "works" in that pressing ^C does not generate an infinite loop. But the call_readline function in readline.c does not immediately return NULL, so you have to press RETURN before the KeyboardInterrupt is generated. I never did figure out a way to both call the default signal handler and return a NULL from call_readline -- which I believe would cause "correct" ^C behaviour. My C is somewhat rusty as I spend my time in Python (by choice) and Perl (by neccessity). I'm not sure what else I can tell you about the problem, but if there is any more data I could provide for you, please ask. As another bizarre data point: when I run a threaded python interpreter on a program which does not use threads, and pipe the output to less, less gets very confused and fails to update about half the screen, leaving it blank. This happens after hitting SPACE a couple of times. All the data is there, and if I jump less to the end of input and then go back through the the data, I can see it all normally. Same program and unthreaded python and less works just fine. If you have ANY idea why adding thread support could affect a program further down a pipe I'd love to know. By the way, I have no objection to making my bug report and patch public, as long as there is some way to remove my email address from it. I have had only one piece of spam in the last year and I'd like to keep it that way :-) As the good cafe owner said "Spam's orf"! Although it's not perfect, the patch has made threaded python usable for me. If there are other people out there in the same boat and it helped them, that would be great. - -- Phone: 0131 468 2422 Email: xfb52@dial.pipex.com ------- End of Forwarded Message ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Jack Jansen Subject: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Wed, 03 Nov 1999 23:32:19 +0100 > As another bizarre data point: when I run a threaded python interpreter > on a program which does not use threads, and pipe the output to less, > less gets very confused and fails to update about half the screen, > leaving it blank. This happens after hitting SPACE a couple of times. > All the data is there, and if I jump less to the end of input and then > go back through the the data, I can see it all normally. Same program > and unthreaded python and less works just fine. If you have ANY idea > why adding thread support could affect a program further down a pipe I'd > love to know. As I like puzzles I spent some time thinking on this, and it must be either (a) kernel bug, (b) a very strange stdio bug or (c) an incorrect observation. If your system supports memory-mapped I/O and stdio uses it and it can somehow signal that a whole buffer is available while it isn't but only the tail end is available (because it uses an overlapping memcopy which goes back-to-front, for instance) the reader in the pipe might wakeup too early and see null bytes. But if this was a bet I think I'd put my money on (c) (but absolutely no offense meant!). -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Alex Zbyslaw: RE: Re: [Python-bugs-list] PRIVATE: Threads and readline (PR#120) Date: Mon, 08 Nov 1999 10:30:24 -0500 ------- Forwarded Message Date: Sat, 06 Nov 1999 11:17:00 +0000 From: Alex Zbyslaw To: guido@cnri.reston.va.us Subject: RE: Re: [Python-bugs-list] PRIVATE: Threads and readline This is the message I posted today on comp.lang.python. Btw, I forgot to mention that to compile for thread support on FreeBSD 3.2 (and I would think 3.3) you only need to specify "-pthread" on the link line. That automatically links in the threaded C libraries. Everything else from the standard configure would appear to be correct. All the best, - --Alex Subject: Re: Control-C on Unix misbehaviour? Date: Sat, 06 Nov 1999 11:08:05 +0000 Quinn Dunkan wrote: > > On Mon, 18 Oct 1999 15:47:52 +0200, flight@mathi.uni-heidelberg.de > Here's a data point for Irix6: > If you hit ^C at the >>> prompt with readline loaded (python 1.5), python > stops responding. Further ^Cs do nothing, in fact the only way I've found > to get out is to kill from another shell or hit ^z kill %. I had exactly the same problem on FreeBSD 3.2 but ONLY when I had thread support enabled. I have eventually tracked the problem down to a bad interaction (read library/kernel bug) between threads/sigjmp and interrupted reads. I have created two "fixes" which can be applied either to a) python or b) python and readline which fix the problems differently. The fixes are pretty trivial and so far they work for me. You can check them out at http://www.xfb52.dial.pipex.com/patches/python.shtml I don't know how they may affect people who have had ^C dumping them into a shell. No one else has mentioned whether they had thread support enabled or not. >From extensive poking around I am quite sure that this misbehaviour is not a bug in either Python or readline. Good luck, - --Alex ------- End of Forwarded Message ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: There is a problem with threads + readline + signals on FreeBSD. Apparently readline is using longjmp and this messes things up. (I told you longjmp was evil. :-) ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:36 By: gvanrossum Comment: According to the comments, at least part of this is a FreeBSD specific kernel problem and solved for that platform. Th rest (signals, threads, readline) is a duplicate of bug #110611. Closing this one. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110694&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:42:30 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:42:30 -0700 Subject: [Python-bugs-list] [Bug #110599] bug (Incorrect signal processing) - Python 1.5.2 (PR#102) Message-ID: <200009131042.DAA05966@bush.i.sourceforge.net> Bug #110599, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: bug (Incorrect signal processing) - Python 1.5.2 (PR#102) Details: Jitterbug-Id: 102 Submitted-By: "=?iso-8859-2?B?VmxhZGlt7XIgQmVuZbk=?=" Date: Mon, 11 Oct 1999 13:00:07 +0200 Version: None OS: None Good afternoon, I have found a bug on Python 1.5.2. This bug doesn't occur on Python 1.5.1. Python versions and OS: - Python 1.5.1. at Debian GNU/Linux 2.0.36 - Python 1.5.2. at Debian GNU/Linux 2.2.9 Bug: Incorrect signal processing (Python 1.5.2). Process can assign procedure for signal processing. When process is waiting at system call and this signal occur, then the signal assigned procedure is otherwise correctly completed but then waiting at system call is broken and process continues. Here is a simple program for demonstrate this bug: #!/usr/bin/python import signal import sys def signal_handle(signum, frame) : signal.signal(signal.SIGALRM, signal_handle) signal.alarm(2) print "signal" signal_handle(0,0) a=sys.stdin.readline() print "Line examined..." b=sys.stdin.readline() print "Line examined..." print a,b,"end" # end of example Correct behaviour: Message "Line examined..." occurs only after pressing ENTER by user. Bug: Message "Line examined..." occurs immediately after signal occured and procedure signal_handle finished. Output then look thus (when no input entered): signal signal Line examined... signal Line examined... end This bug appears at any signal occur and whatever process waiting at system call. Some system call even produces exception (e.g. waiting for data or connection on socket). Bug is perhaps caused by wrong seting "siginterrupt" on module signal. I haven't found any way how call in Python program "siginterrupt" for correct behavior of signal processing. Good bye, V. Benes **************************************************************************** Ing. Vladimir Benes, pvt.net PVT, a.s., OZ Chomutov e-mail: vladimir.benes@pvt.cz, vladimir.benes@sms.paegas.cz **************************************************************************** ==================================================================== Audit trail: Mon Oct 11 18:12:13 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:05 By: none Comment: From: Jeremy Hylton Subject: Re: [Python-bugs-list] bug (Incorrect signal processing) - Python 1.5.2 (PR#102) Date: Tue, 12 Oct 1999 12:04:42 -0400 (EDT) >>>>> "VB" == Vladimir Benes writes: VB> Bug: Incorrect signal processing (Python 1.5.2). Process can VB> assign procedure for signal processing. When process is waiting VB> at system call and this signal occur, then the signal assigned VB> procedure is otherwise correctly completed but then waiting at VB> system call is broken and process continues. [example program] I see the behavior you report for 1.5.2 on Solaris 2.6. VB> This bug appears at any signal occur and whatever process VB> waiting at system call. Some system call even produces exception VB> (e.g. waiting for data or connection on socket). These issues always occur in twos don't they. There was a similar question posted on comp.lang.python yesterday. I'm not sure that the behavior you're seeing is a bug; it is the behavior I would expect. Slow system calls are interrupted, returning EINTR, when a signal occurs. VB> Bug is perhaps caused by wrong seting "siginterrupt" on VB> module signal. I haven't found any way how call in Python VB> program "siginterrupt" for correct behavior of signal VB> processing. Perhaps the signal module for Python should be extended to support siginterrupt, but it sounds like it will only reduce the number of system calls that can be interrupted. The Solaris man page says: NOTES Use of these interfaces should be restricted to only appli- cations written on BSD platforms. Use of these interfaces with any of the system libraries or in multi-threaded appli- cations is unsupported. It doesn't sound particularly safe. Jeremy ------------------------------------------------------- Date: 2000-Jul-31 14:05 By: none Comment: From: "=?iso-8859-2?B?VmxhZGlt7XIgQmVuZbk=?=" Subject: Re: [Python-bugs-list] bug (Incorrect signal processing) - Python 1.5.2 (PR#102) Date: Wed, 13 Oct 1999 09:19:44 +0200 From: Jeremy Hylton To: Vladimir.Benes@pvt.cz Cc: python-bugs-list@python.org ; bugs-py@python.org Date: 12. 10. 1999 18:04 Subject: Re: [Python-bugs-list] bug (Incorrect signal processing) - Python 1.5.2 (PR#102) JH>I see the behavior you report for 1.5.2 on Solaris 2.6. You don't write whether this bug appeared there. JH> ...... I'm not sure that the JH> behavior you're seeing is a bug; it is the behavior I would expect. JH> Slow system calls are interrupted, returning EINTR, when a signal JH> occurs. I'am sure that this behavior is bug becouse: 1. I wrote the same program in C language (see below). 2. I ran this program at the same machine where the Python *) program works incorrectly. 3. Behavior of C program is correct (line scan is ended only when user press ENTER and this end is independed on signal). => The C program works correct and the same Python *) program fails at the same platform. Base run of program should by independed on signal processing except program terminating signals. It's independed at C program but incorrect processed by Python *) programs. *) only Python 1.5.2; Python 1.5.1 here works correctly Here is the mentioned program: #include #include #include void signal_handle(int signum) { signal(SIGALRM, signal_handle); alarm(2); printf("signal\n\r"); } void main(void) { char a[100], b[100]; signal_handle(0); scanf("%s",&a); printf("Line examined...\n\r"); scanf("%s",&b); printf("Line examined...\n\r"); printf("%s\t%s\tend\n\r", a, b); } VB> Bug is perhaps caused by wrong seting "siginterrupt" on VB> module signal. I haven't found any way how call in Python VB> program "siginterrupt" for correct behavior of signal VB> processing. JH> Perhaps the signal module for Python should be extended to support JH> siginterrupt, but it sounds like it will only reduce the number of JH> system calls that can be interrupted. ....... Sorry, I wrong formulated possible couse of bug. I will try to specify my idea: It looks that there is any wrong calling "siginterupt" on signal module. Python libraries doesn't allow me to try correct this bug by calling "siginiterrupt" in my program before signal setting. But the best way is to reapir bug on signal module. Good bye, V. Benes ------------------------------------------------------- Date: 2000-Jul-31 14:05 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] bug (Incorrect signal processing) - Python 1.5.2 (PR#102) Date: Wed, 13 Oct 1999 08:57:25 -0400 > JH> ...... I'm not sure that the > JH> behavior you're seeing is a bug; it is the behavior I would expect. > JH> Slow system calls are interrupted, returning EINTR, when a signal > JH> occurs. > [Vladimir] > I'am sure that this behavior is bug becouse: When I first thought about this, I agreed with Vladimir. If you look careful at his code, readline() is returning "" when the alarm goes off; this can't be right, because it's not an end of file. It should either raise an exception (EINTR) or return one line of valid data. On the other hand, whatever solution is chosen should be careful that other signals raise exceptions; in particular you want SIGINT (^C) to be translated to a KeyboardError exception. Since the C code in readline() can't tell which signal was trapped or whether the handler raised an exception, it has two choices, both of which are bad: - Raise an IOError exception, honoring the EINTR. Unfortunately, in the SIGINT/^C case, the handler will run after this exception is raised, and it will raise KeyboardError. The Python program will *probably* see the KeyboardError exception, but it is not guaranteed that the signal handler is run immediately. (The Python-level signal handler is run only after the Python virtual machine finishes the current instruction, i.e. after the readline() completes.) - Continue to read a line, ignoring the EINTR. Unfortunately, this would mean that the user has to type ^C followed by Return to interrupt the program! An alternative solution would be to arrange for the Python-level interrupt handler to execute inside the readline() method, and to restart the read only when it raises no exception; but this would require a massive code rewrite (you'd want this behavior in any place that does a blocking I/O operation). Concluding, I think Vladimir is better off not to use signal handlers in the way he is using them now. Python's emulation of signal semantics is sufficiently different from C that you can't rely on the same behavior. (And note that in C, signal handlers are usually broken anyway; e.g. the code you write, which prints something inside the signal handler, is broken on C too because you don't know the state of stdout when the handler is invoked.) I looked at what could be different between 1.5.1 and 1.5.2, and found that the call to siginterrupt() to disable restarting system calls was added after 1.5.1. Given the alternatives, I think I like the 1.5.2 behavior better than the 1.5.1 behavior. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:05 By: none Comment: From: "=?iso-8859-2?B?VmxhZGlt7XIgQmVuZbk=?=" Subject: Re: [Python-bugs-list] bug (Incorrect signal processing) - Python 1.5.2 (PR#102) Date: Wed, 13 Oct 1999 16:34:39 +0200 >... >Concluding, I think Vladimir is better off not to use signal handlers >in the way he is using them now. Python's emulation of signal >semantics is sufficiently different from C that you can't rely on the >same behavior. (And note that in C, signal handlers are usually >broken anyway; e.g. the code you write, which prints something inside >the signal handler, is broken on C too because you don't know the >state of stdout when the handler is invoked.) Well, meantioned programs were only very simple demos for demonstrate incorrect signal processing. But exists a large range of meaningful programs where is necessary both synchronous and asynchronous signal processing - and signal can be triggered whenever. Example of C symbolic structure this programs: .... int event_flag; void trigger_signal(int signum) { // asynchonous signal processing event_flag = MY_EVENT; // only flag set } void initialize_signal(int sig) { event_flag = NO_EVENT; // initialize signal(sig, trigger_signal); } int main() { initialize_signal(SIGTERM); while (1) { my_func(); // synchronous signal processing: if (event_flag==MY_EVENT) my_sync_trigger(); } } Signal can be raised whenever when function my_func runs => flag event_flag is then set but my_func "does't know" his and continues at own processing. Signal should not influence my_func becouse my_func "doesn't know" both this signal and flag event_flag. Function event_flag can wait for system call (read, write, connect, etc). Incoming signal should not finish this waiting after trigger_signal function processing. So my_func is independed on signal processing and "does'nt know" signals. Program tests the flag at any "safe" location(s). If this flag is set, program run specific synchronous signal processing. It can be for example safe program end or synchronous SIGALRM processing. Python programs can by compose similar this example. >I looked at what could be different between 1.5.1 and 1.5.2, and found >that the call to siginterrupt() to disable restarting system calls was >added after 1.5.1. Given the alternatives, I think I like the 1.5.2 >behavior better than the 1.5.1 behavior. But then old Python programs writen for Python 1.5.1 are not compatible with Python 1.5.2. in this feature. I thing that better way is to let this behavior equal as in Python 1.5.1. but allow programs to call either new function "siginterrupt" at signal module (more flexible solution) or any else new function at signal module to set behavior signal processing by Your idea. Good bye, V. Benes ------------------------------------------------------- Date: 2000-Aug-10 11:45 By: gvanrossum Comment: Sorry, I can't take this. It's an issue though! There are a bunch of signal related bugs in Linux... ------------------------------------------------------- Date: 2000-Sep-13 03:42 By: gvanrossum Comment: Confirmed with python 2.0b1 on Linux. Note that this is *not* the same bug as #110611 -- here, threads and readline don't matter (confirmed). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110599&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:45:16 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:45:16 -0700 Subject: [Python-bugs-list] [Bug #110703] select with dec-threads core dumps (PR#35) Message-ID: <200009131045.DAA06009@bush.i.sourceforge.net> Bug #110703, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Wont Fix Bug Group: Platform-specific Priority: 5 Summary: select with dec-threads core dumps (PR#35) Details: Jitterbug-Id: 35 Submitted-By: ddula@alfomc.net Date: Thu, 22 Jul 1999 17:01:04 -0400 (EDT) Version: 1.5.2 OS: Digital Unix (OSF/1) 4.0E with latest patches Select cores while waiting on a socket spoo.alfomc.net> dbx /usr/local/ddula/tar/Python-1.5.2/python core dbx version 3.11.10 Type 'help' for help. Core file created by program "python" thread 0xb signal Segmentation fault at >*[nxm_thread_kill, 0x3ff805ab3b8] retr31, (r26), 1 (dbx) t > 0 nxm_thread_kill(0x14003bb40, 0x3ff807e31c8, 0x3ffc0085c98, 0x3ff805ab0a8, 0x14003bb40) [0x3ff805ab3b8] 1 pthread_kill(0x1, 0x0, 0x0, 0x1400df980, 0x3ff00000000) [0x3ff80598b94] 2 (unknown)() [0x3ff8058cb38] 3 (unknown)() [0x3ff807e35ec] 4 exc_unwind(0x1400dde78, 0x1400dc5a0, 0xabadabad00beed00, 0x0, 0x3ff807e3964) [0x3ff807e36d4] 5 exc_raise_signal_exception(0x86, 0x0, 0x1200735b8, 0x1, 0x2) [0x3ff807e3960] 6 (unknown)() [0x3ff8059a248] 7 select_select(args = (nil)) ["./selectmodule.c":221, 0x1200735b4] 8 eval_code2(co = [bad address (0x14010d838)], globals = 0xfc50, locals = (nil), args = [bad address (0x14010d840)], kws = [bad address (0x14010d848)], kwcount = [bad address (0x14010d9a8)], defs = [bad address (0x14010d9b0)], defcount = [bad address (0x14010d9b8)]) ["ceval.c":1654, 0x12003e57c] Appears eval_code2 is getting passed bad addresses? My code snipped <--SNIP--> class TelnetProxy(SocketServer.StreamRequestHandler,SocketServer.BaseRequestHand ler): def handle(self): o = socket(AF_INET,SOCK_STREAM) o.connect(OHOST,OPORT) while 1: print o.fileno() print self.rfile.fileno() r,w,e = select.select([o,self.rfile],[],[],1) <---CORE HERE if o in r: <--SNIP--> Same problem under 1.5.1 as well. The 1.5.2 is the latest source I downloaded Jul 20 This same code works fine on NT and LINUX I believe. Dave Dula ddula@alfomc.net ==================================================================== Audit trail: Sat Jul 24 16:52:19 1999 guido changed notes Sat Jul 24 16:52:19 1999 guido moved from incoming to open Sat Jul 24 17:05:25 1999 guido moved from open to platformbug Follow-Ups: Date: 2000-Aug-01 14:03 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] select with dec-threads core dumps (PR#35) Date: Thu, 22 Jul 1999 17:46:26 -0400 I seriously suspect that this is a bug in your C library, not in Python. Select is rock-solid on other platforms. Do you feel confident enough to try debugging this some more? Otherwise, you have no choice but to post a question to the newsgrup, maybe someone has seen this before or is willing to help debugging it. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: From: David Dula Subject: Re: [Python-bugs-list] select with dec-threads core dumps (PR#35) Date: Thu, 22 Jul 1999 18:43:48 -0400 Guido van Rossum wrote: > I seriously suspect that this is a bug in your C library, not in > Python. Select is rock-solid on other platforms. Do you feel > confident enough to try debugging this some more? Otherwise, you have > no choice but to post a question to the newsgrup, maybe someone has > seen this before or is willing to help debugging it. > > --Guido van Rossum (home page: http://www.python.org/~guido/) Well a little more debugging shows that this is certainly a threading + select problem because a forking method works. The forks will serve my purposes so I have a work around. Thanks Dave Dula ------------------------------------------------------- Date: 2000-Aug-01 14:03 By: none Comment: Digital Unix problem when combining threads with select? ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:45 By: gvanrossum Comment: It's unlikely that we'll ever fix this, because of the uncommon platform, and the suspicion that the bug is in the platform. If you have more information pointing to a bug in Python, and if this is still not broken in Python 2.0, please send mail and we'll reopen the bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110703&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:46:11 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:46:11 -0700 Subject: [Python-bugs-list] [Bug #110710] Segmentation fault on range (PR#71) Message-ID: <200009131046.DAA06021@bush.i.sourceforge.net> Bug #110710, was updated on 2000-Jul-31 14:30 Here is a current snapshot of the bug. Project: Python Category: Core Status: Closed Resolution: Fixed Bug Group: None Priority: 4 Summary: Segmentation fault on range (PR#71) Details: Jitterbug-Id: 71 Submitted-By: mz@pdm.pvt.net Date: Mon, 6 Sep 1999 06:45:45 -0400 (EDT) Version: 1.5.2 OS: Debian GNU/Linux 2.1 When I start python and try to evaluate `range(1000000000)', I receive segmentation fault: $ python Python 1.5.2 (#0, May 4 1999, 14:45:33) [GCC 2.7.2.3] on linux2 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> range(1000000000) Segmentation fault This can also be reproduced with Python 1.5.1 from the Debian 2.1 i386 distribution. ==================================================================== Audit trail: Tue Sep 07 11:13:29 1999 guido changed notes Tue Sep 07 11:13:29 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Aug-04 07:00 By: jhylton Comment: I can't reproduce this bug on 1.5.2 or current CVS. In both cases, I get a MemoryError. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:46 By: gvanrossum Comment: Fixed in 2.0. This now gives a MemoryError exception. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110710&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:51:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:51:42 -0700 Subject: [Python-bugs-list] [Bug #110712] MALLOC_ZERO_RETURNS_NULL problem Message-ID: <200009131051.DAA06329@bush.i.sourceforge.net> Bug #110712, was updated on 2000-Jul-31 14:30 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Wont Fix Bug Group: Platform-specific Priority: 5 Summary: MALLOC_ZERO_RETURNS_NULL problem Details: Jitterbug-Id: 86 Submitted-By: Sean Dunn Date: Fri, 24 Sep 1999 14:44:22 -0500 Version: None OS: None The use of #define MALLOC_ZERO_RETURNS_NULL 1 at the top of mymalloc.h worked fine... By curiousity.. I just tried compiling the following: /*testmalloc.c*/ #include main() { int *fp; int *sp; fp = (int*)malloc(0); sp = (int*)malloc(sizeof(int)); printf("fp: %x\nsp: %x\n", fp, sp); } /**/ First, I just compiled normally: > cc -o testmalloc testmalloc.c > ./testmalloc fp: 10015010 sp: 10015020 Then I compiled with the -lmalloc flag (libmalloc is the SGI high performance memory library - which seems to be the default used after running the configure script) > cc -o testmalloc testmalloc.c > ./testmalloc fp: 0 sp: 10015048 So... It looks like without libmalloc, we're actually getting memory when we "shouldn't" - but from reading your source code it seems like that's the way it is usually made to work (weird). When compiling with libmalloc, the returned 0 is triggering the MemError flag. At ceval.c:2467, should it even get to this point if the passed in kwargs == {}? It does a PyDict_Size of it, which returns 0 (which seems correct) but kw isn't NULL. It seems like at this point that it should be.. Sean Guido van Rossum wrote: > > The builtin function apply() seems to barf on empty dictionaries > > when passed as the keyword list. See the following output: > > > >>> apply(func, (1,), {}) > > Traceback (innermost last): > > File "", line 1, in ? > > MemoryError > > >>> > > > The variable 'kwargs' in this case is {}. The actual exception is thrown > > at line 2467 of Python/ceval.c: > > > > if (kw != NULL) { > > int pos, i; > > nk = PyDict_Size(kw); > > > > /* 2467 */ k = PyMem_NEW(PyObject *, 2*nk); > > /* nk, the PyDict_Size (the size of ma_used) is 0 */ > > > > if (k == NULL) { > > PyErr_NoMemory(); > > Py_DECREF(arg); > > return NULL; > > } > > pos = i = 0; > > while (PyDict_Next(kw, &pos, &k[i], &k[i+1])) > > i += 2; > > nk = i/2; > > /* XXX This is broken if the caller deletes dict items! */ > > } > > Thanks very much for your detailed analysis! The cause is probably > that somehow the configure script doesn't compute the correct value > for MALLOC_ZERO_RETURNS_NULL. I don't know why; the test seems simple > enough. (Maybe you inherited a config.cache file from a previous Irix > version?) To work around this in the build, if "make clobber" and > rerunning configure don't do the trick, add > > #define MALLOC_ZERO_RETURNS_NULL 1 > > to the top of Include/mymalloc.h. > > Please let me know if rerunning configure makes the bug go away; this > will decides the classification of your bug report. > > --Guido van Rossum (home page: http://www.python.org/~guido/) ==================================================================== Audit trail: Fri Sep 24 16:15:04 1999 guido changed notes Fri Sep 24 16:15:04 1999 guido moved from incoming to platformbug Follow-Ups: Date: 2000-Sep-07 14:28 By: jhylton Comment: Please do triage ------------------------------------------------------- Date: 2000-Sep-13 03:51 By: gvanrossum Comment: I don't understand why the configure script would use a different malloc library for its test of malloc(0) than what is used later to compile Python. Could it be that simply "make clobber" and running configure again would solve the problem? I'm closing the bug report for now. If this is still a problem with Python 2.0, please send email and I'll reopen it. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110712&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:53:52 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:53:52 -0700 Subject: [Python-bugs-list] [Bug #110821] On Windows, APIs passing FILE* break with Borland C (PR#121) Message-ID: <200009131053.DAA06359@bush.i.sourceforge.net> Bug #110821, was updated on 2000-Aug-01 14:10 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: On Windows, APIs passing FILE* break with Borland C (PR#121) Details: Jitterbug-Id: 121 Submitted-By: "Brad Clements" Date: Wed, 3 Nov 1999 15:53:01 -0500 Version: None OS: None The system encountered a fatal error After command: Received: The last error code was: Connection refused Web interface using {HYPERLINK "http://samba.anu.edu.au/jitterbug/"}Jitterbug  {HYPERLINK "../python-bugs/"}Public interface  {HYPERLINK "../python-bugs.private"}Private interface (requires password)  {HYPERLINK "http://www.python.org/"}Python home page ----- Here's what I said for Python 1.5.2 on Win32 #0 PyRun_SimpleFile, PyRun_File and other functions that take a FILE * are not usable on WIN32 from non-VC applications because python15.dll is statically linked to the MS runtime DLL. Embedding applications that try to use these functions are passing in FILE * structures that do not match MS's runtime format. For example, I'm using Python in a Borland C++ Builder application. Although I can open a FILE *, when passed to python15.dll the FILE * is not usable. The addition of two helper functions would solve this problem: FILE * PyRun_OpenFile(char *file, char *mode) { return fopen(file,mode) } int PyRun_CloseFile(FILE *ptr) { return fclose(ptr) } This way embedding apps could get python15.dll to open the file and it would work. A temporary workaround is to always load the .pyc file in PyRun_SimpleFile.. Brad Clements, bkc@murkworks.com (315)268-1000 http://www.murkworks.com (315)268-9812 Fax netmeeting: ils://ils.murkworks.com ICQ: 14856937 ==================================================================== Audit trail: Fri Nov 05 10:31:10 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:10 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Python 1.5.2 bug, tried to post but got error (PR#121) Date: Wed, 03 Nov 1999 20:08:11 -0500 > I tried to post a bug, but got this error: > > The system encountered a fatal error We were being slammed by a defective spider (or, if you're more paranoid, by a hacker) so we temporarily turned off the webserver. It should be back on now. > Here's what I said for Python 1.5.2 on Win32 #0 > > PyRun_SimpleFile, PyRun_File and other functions that take a FILE * are not > usable on WIN32 from non-VC applications because python15.dll is statically > linked to the MS runtime DLL. Embedding applications that try to use these > functions are passing in FILE * structures that do not match MS's runtime > format. > > For example, I'm using Python in a Borland C++ Builder application. Although I > can open a FILE *, when passed to python15.dll the FILE * is not usable. > > The addition of two helper functions would solve this problem: > > FILE * PyRun_OpenFile(char *file, char *mode) > { > return fopen(file,mode) > } > > int PyRun_CloseFile(FILE *ptr) > { > return fclose(ptr) > } > > This way embedding apps could get python15.dll to open the file and it would > work. > > A temporary workaround is to always load the .pyc file in PyRun_SimpleFile.. This is an elegant solution. I think I'll add it. Could you mail me your suggestion again with the legal boilerplate included? See http://www.python.org/1.5/bugrelease.html for the text and explanation. Our lawyers require that I request this silliness... --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 14:10 By: none Comment: From: "Brad Clements" Subject: Re: [Python-bugs-list] Python 1.5.2 bug, tried to post but got error (PR#121) Date: Wed, 3 Nov 1999 20:22:21 -0500 Here it is again. Also, I believe this will resolve FAQ entry 8.10 > 8.10. Can't get Py_RunSimpleFile() to work. > This is very sensitive to the compiler vendor, version and (perhaps) even > options. If the FILE* structure in your embedding program isn't the same as > is assumed by the Python interpreter it won't work. The Python 1.5.* DLLs > (python15.dll) are all compiled with MS VC++ 5.0 and with > multithreading-DLL options (/MD, I think). > > If you can't change compilers or flags, try using Py_RunSimpleString(). A > trick to get it to run an arbitrary file is to construct a call to > execfile() with the name of your file as argument. > > > > --------------------------------------------------------------------------- > ----- > Here's what I said for Python 1.5.2 on Win32 #0 > > PyRun_SimpleFile, PyRun_File and other functions that take a FILE * are not > usable on WIN32 from non-VC applications because python15.dll is statically > linked to the MS runtime DLL. Embedding applications that try to use these > functions are passing in FILE * structures that do not match MS's runtime > format. > > For example, I'm using Python in a Borland C++ Builder application. Although I > can open a FILE *, when passed to python15.dll the FILE * is not usable. > > The addition of two helper functions would solve this problem: > > FILE * PyRun_OpenFile(char *file, char *mode) > { > return fopen(file,mode) > } > > int PyRun_CloseFile(FILE *ptr) > { > return fclose(ptr) > } > > This way embedding apps could get python15.dll to open the file and it would > work. > > A temporary workaround is to always load the .pyc file in PyRun_SimpleFile.. I confirm that, to the best of my knowledge and belief, this contribution is free of any claims of third parties under copyright, patent or other rights or interests ("claims"). To the extent that I have any such claims, I hereby grant to CNRI a nonexclusive, irrevocable, royalty-free, worldwide license to reproduce, distribute, perform and/or display publicly, prepare derivative versions, and otherwise use this contribution as part of the Python software and its related documentation, or any derivative versions thereof, at no cost to CNRI or its licensed users, and to authorize others to do so. I acknowledge that CNRI may, at its sole discretion, decide whether or not to incorporate this contribution in the Python software and its related documentation. I further grant CNRI permission to use my name and other identifying information provided to CNRI by me for use in connection with the Python software and its related documentation. Brad Clements, bkc@murkworks.com (315)268-1000 http://www.murkworks.com (315)268-9812 Fax netmeeting: ils://ils.murkworks.com ICQ: 14856937 ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-12 09:01 By: jhylton Comment: Guido -- In 1999, you said you would add this feature. Did you? ------------------------------------------------------- Date: 2000-Sep-13 03:53 By: gvanrossum Comment: This is a feature request. Jeremy, how's that feature request PEP coming? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110821&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:57:08 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:57:08 -0700 Subject: [Python-bugs-list] [Bug #110831] readline on QNX (PR#192) Message-ID: <200009131057.DAA06517@bush.i.sourceforge.net> Bug #110831, was updated on 2000-Aug-01 14:12 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: None Bug Group: Feature Request Priority: 5 Summary: readline on QNX (PR#192) Details: Jitterbug-Id: 192 Submitted-By: davidv@elisra.com Date: Thu, 27 Jan 2000 13:31:16 -0500 (EST) Version: 1.52 OS: Qnx This is not a bug. I have compiled Python 1.52 with Watcom on QNX. The Linux readline doesn't work good with QNX. This simple patch for /Parser/myreadline.c replaces readline with QNX input_line function. ------------------------------------------------------------ 60,68d59 < < #ifdef __QNX__ < p = input_line( fp, buf, len ); < if( p ) { < int n = strlen(p); < p[n] = '\n'; < p[n+1] = 0; < } < #else 70d60 < #endif ------------------------------------------------------------- ==================================================================== Audit trail: Mon Feb 07 12:34:32 2000 guido sent reply 1 Mon Feb 07 12:34:49 2000 guido changed notes Mon Feb 07 12:34:49 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Aug-01 14:13 By: none Comment: From: Guido van Rossum Subject: Re: readline on QNX (PR#192) Date: Mon Feb 7 12:34:32 2000 > This is not a bug. > I have compiled Python 1.52 with Watcom on QNX. The Linux readline doesn't > work good with QNX. This simple patch for /Parser/myreadline.c > replaces readline with QNX input_line function. > > ------------------------------------------------------------ > 60,68d59 > < > < #ifdef __QNX__ > < p = input_line( fp, buf, len ); > < if( p ) { > < int n = strlen(p); > < p[n] = '\n'; > < p[n+1] = 0; > < } > < #else > 70d60 > < #endif > ------------------------------------------------------------- David, please see www.python.org/patches for instructions on how to send patches. The Bugs List is not the right place, sorry! --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:13 By: none Comment: Should go to patches@python.org. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:57 By: gvanrossum Comment: There is not enough context in the patch to do anything with it. (PLEASE ALWAYS USE CONTEXT DIFFS OR UNIFIED DIFFS!) If the submittor is still interested in supplying a working patch, and if this is still a problem with Python 2.0b1, please use the SF patch manager to submit a proper patch. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110831&group_id=5470 From noreply@sourceforge.net Wed Sep 13 11:59:08 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 03:59:08 -0700 Subject: [Python-bugs-list] [Bug #110842] dl.RTLD_GLOBAL missing (PR#313) Message-ID: <200009131059.DAA06556@bush.i.sourceforge.net> Bug #110842, was updated on 2000-Aug-01 14:15 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: None Bug Group: Feature Request Priority: 5 Summary: dl.RTLD_GLOBAL missing (PR#313) Details: Jitterbug-Id: 313 Submitted-By: loewis@informatik.hu-berlin.de Date: Thu, 4 May 2000 09:54:13 -0400 (EDT) Version: 1.5.2 OS: Solaris The dl module does not support all flags to dlopen available on a specific system; eg. dl.open("foo.so",dl.RTLD_GLOBAL) does not work. On Solaris, the following constants are defined, in addition RTLD_NOLOAD RTLD_GLOBAL RTLD_LOCAL RTLD_PARENT RTLD_GROUP RTLD_WORLD RTLD_NODELETE ==================================================================== Audit trail: Mon May 22 17:25:17 2000 guido moved from incoming to request Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-11 09:43 By: loewis Comment: Fix is in patch 101472: http://sourceforge.net/patch/?func=detailpatch&patch_id=101472&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-13 03:59 By: gvanrossum Comment: Closed - we can do triage on the patch intead. (patch#101472) ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110842&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:08:10 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:08:10 -0700 Subject: [Python-bugs-list] [Bug #110611] Signal processing bug (Linux threads, readline, whatever else) (PR#196) Message-ID: <200009131108.EAA07100@bush.i.sourceforge.net> Bug #110611, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: Signal processing bug (Linux threads, readline, whatever else) (PR#196) Details: Jitterbug-Id: 196 Submitted-By: Gregor Hoffleit Date: Tue, 1 Feb 2000 14:43:09 +0100 Version: None OS: None --FL5UXtIhxfXey3p5 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Hi, this must be the strangest bug report ever sent to bugs-py ;-). I don't expect a resolution for this bug from you, I just wanted to make sure this thing is recorded and the BTS. Perhaps somebody could give me a hint where I could look for the misbehavior. Candidates seem to be glibc, LinuxThreads, GNU readline, the Python readline module and the Python thread support ;-) In 1.5.2, there's a strange problem with signals on Linux systems. This has been discussed before on the mailing list, probably it even has a relation to Bug#102 ("incorrect signal processing"), but IMHO this reports adds a few other aspects. Definitely it is a (platform-specific) problem in 1.5.2. I have problems describing the bug, since the behavior seems to depend on so many parameters. The most obvious incarnation of the problem is probably this: In the Python 1.5.2 interpreter included with Debian 2.2 ("potato"), if you press Control-C on the command line (or send a SIGINT), the interpreter exits to the shell: freefly;104> python Python 1.5.2 (#0, Sep 13 1999, 09:12:57) [GCC 2.95.1 19990816 (release)]= on linux2=20 Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam >>> [Ctrl-C] freefly;105>=20 Normally, you'd expect a KeyboardInterrupt exception here. Now I tried and compiled different configurations of Python (each from a pristine source tree) on this Debian system: (151+t+rl) Python 1.5.1 (threads, readline) (152) Python 1.5.2 (no threads, no readline) =20 (152+rl) Python 1.5.2 (no threads, readline) (152+t) Python 1.5.2 (threads, no readline) (152+t+rl) Python 1.5.2 (threads, readline) (152+pth+rl) Python 1.5.2 (GNU Pth threads, readline) Thread support was realized with glibc 2.1.2's LinuxThreads, i.e. pthreads. readline was GNU readline 2.1 (for the record, I also tried 4.1beta3, but this made no difference). When I refer to Debian 2.1 ("slink"), this is a system with glibc 2.0.7 and the same GNU readline version 2.1. The following tables show the output of some experiments with those configurations. The [] brackets show the keys pressed. Note that a line like "[Ctrl-C][Enter]" implies that the interpreter showed no visible reaction to the first Ctrl-C! "----" lines mean that I started up a new clean session. (1) This is what happens when you start up a new interpreter and press Ctrl-C once, twice and so on, while on the command line: 152,152+t 152+rl,152+pth+rl 152+t+rl 151+t+rl =3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D=3D ------------------ ---------------- ------------- ---------------- >>> [Ctrl-C][Ctrl-C] >>> [Ctrl-C] >>> [Ctrl-C] >>> [Ctrl-C][Ct...] KeyboardInterrupt KeyboardInterrupt freefly:5> ---------------- >>> [Ctrl-C] >>> [Ctrl-C] ------------- KeyboardInterrupt KeyboardInterrupt >>> [Ctrl-C] >>> [Ctrl-C] KeyboardInterrupt KeyboardInterrupt >>> [Ctrl-C] >>> [Ctrl-C] KeyboardInterrupt KeyboardInterrupt ------------------ ---------------- 152+t+rl (on a Debian 2.1 system) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --------------------- >>> [Ctrl-C] KeyboardInterrupt >>> [Ctrl-C][Ctr...] --------------------- -> 1.5.2 with readline but without LinuxThreads is right. -> For some reason, 1.5.2 without readline ignores the first SIGINT. -> 1.5.2 with both readline and LinuxThreads kill the interpreter. -> 1.5.1 seems to ignore all SIGINTs's. =20 -> For 1.5.2 running glibc 2.0.7 (instead of 2.1.2) and readline, the interpreter doesn't get killed, but still after the first SIGINT all following SIGINTs are ignored. =20 -> It's worth a note that with only one of readline or thread support, the package seems to behave more reasonable; have both enabled is bad. =20 -> With threading support by means of GNU Pth (instead of the native libc6 LinuxThreads), the package behaves more correctly, too! =20 (2) Now on those systems who seemed to ignore the first SIGINT, I pressed Enter after it: 152,152+t 151+t+rl =3D=3D=3D=3D=3D=3D=3D=3D=3D =3D=3D=3D=3D=3D=3D=3D= =3D --------------------- -------------------- >>> [Ctrl-C][Enter] >>> [Ctrl-C][Enter] Traceback (innermost last): Traceback (innermost last): File "", line 0, in ? File "", line 0, in ? KeyboardInterrupt KeyboardInterrupt >>> [Ctrl-C] >>> [Ctrl-C][Enter] KeyboardInterrupt Traceback (innermost last): --------------------- File "", line 0, in ? KeyboardInterrupt >>> -------------------- =20 -> Obviously, the interpreter *DID* record the SIGINT in the first place, it just didn't provoke any immediate action=20 -> On 1.5.2 without readline, the second and all following SIGINTs are handled as one would expect. -> 1.5.1 with thread and readline shows this strange behavior not only for the first, but also for the second and any following SIGINT. =20 (3) On the glibc 2.0.7 system, I verified that indeed all subsequent SIGINTs are ignored. You're not able even to interrupt a loop, after the interpreter has received a SIGINT while he was on the command line: =20 152+t+rl (on a Debian 2.1 system) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D --------------------- >>> [Ctrl-C] KeyboardInterrupt >>> [Ctrl-C][Enter] >>> [Ctrl-C][Enter] {kein weiteres SIGINT wird akzeptiert, auch im Laufen:} >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C] 400 401 =2E.. 999 >>> --------------------- --------------------- >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C] 400 401 Traceback (innermost last): File "", line 1, in ? KeyboardInterrupt >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C] 400 401 Traceback (innermost last): File "", line 1, in ? KeyboardInterrupt >>> [Ctrl-C] KeyboardInterrupt >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C] 400 401 =2E.. 999 >>> --------------------- -> Note that it didn't hurt to break multiple times into a loop; only SIGINTs on the command line do mess up the interpreter! =20 =20 (4) In the Debian 2.2 Python package, you have to be careful not to kill the interpreter; that's especially a problem when you try to break into a loop--if you hold down Ctrl-C for too long, the interpreter quits! =20 152+t+rl (Debian 2.2 package) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D --------------------- >>> [Ctrl-C] freefly:5> --------------------- --------------------- >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C] 400 401 KeyboardInterrupt >>> --------------------- --------------------- >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C pressed down for a longer time] 400 401 freefly;19>=20 --------------------- (5) The Debian 2.2 package behaves more reasonable when the readline module has been moved out of the way: 152+t (Debian 2.2 package, readline module moved out of the way) =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --------------------- >>> [Ctrl-C][Ctrl-C] KeyboardInterrupt >>> ... (vgl. 152, 152+t) --------------------- >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C] 400 401 40[Enter] Traceback (innermost last): File "", line 0, in ? KeyboardInterrupt >>> for i in xrange(1000): print i =2E.. 1 2 =2E.. [Ctrl-C] 400 401 KeyboardInterrupt >>> --FL5UXtIhxfXey3p5 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.1 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE4luLt3eVfDf25G40RAQw9AKDhLyI7RDYt3G85Rxet2ZlK1b1nKwCg3zl/ tasWxAOGLUK3K3ucMBbhBag= =PTOI -----END PGP SIGNATURE----- --FL5UXtIhxfXey3p5-- ==================================================================== Audit trail: Mon Feb 07 12:38:12 2000 guido changed notes Mon Feb 07 12:38:12 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:05 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] Signal processing bug (Linux threads, readline, whatever else) (PR#196) Date: Wed, 2 Feb 2000 03:04:04 -0500 [flight@mathi.uni-heidelberg.de] > this must be the strangest bug report ever sent to bugs-py ;-). No, but I don't recall one that evidenced more hard & tedious work! Wow. Thank you. Switch to Windows -- it's so much more reliable . If you haven't already done so, may I suggest building Python from the current CVS development source tree instead? http://www.python.org/download/cvs.html This may be a waste of effort, but I'd hate to see you pour more time tracking down obscure bugs that may already have been fixed. Contrarily, if the current CVS version still displays the problems, more work devoted to tracking them down is certain not to be a waste. ------------------------------------------------------- Date: 2000-Jul-31 14:05 By: none Comment: From: Gregor Hoffleit Subject: RE: [Python-bugs-list] Signal processing bug (Linux threads, readline, whatever else) (PR#196) Date: Wed, 2 Feb 2000 14:25:07 +0100 Hi, > If you haven't already done so, may I suggest building Python from the > current CVS development source tree instead? sorry, I forgot to mention that I tried that. Didnt't change the behavior at all (I also saw that there were no big changes to the readline nor to the threading code since 1.5.2). Gregor ------------------------------------------------------- Date: 2000-Jul-31 14:05 By: none Comment: From: Gregor Hoffleit Subject: Returned mail: User unknown Date: Thu, 3 Feb 2000 11:46:44 +0100 (MET) This is a MIME-encapsulated message --LAA26536.949574804/relay.uni-heidelberg.de The original message was received at Thu, 3 Feb 2000 11:46:41 +0100 (MET) from mailserver.mathi.uni-heidelberg.de [129.206.26.32] ----- The following addresses had permanent fatal errors ----- ----- Transcript of session follows ----- .. while talking to parrot.python.org.: >>> RCPT To: <<< 550 ... User unknown 550 ... User unknown --LAA26536.949574804/relay.uni-heidelberg.de Content-Type: message/delivery-status Reporting-MTA: dns; relay.uni-heidelberg.de Received-From-MTA: DNS; mailserver.mathi.uni-heidelberg.de Arrival-Date: Thu, 3 Feb 2000 11:46:41 +0100 (MET) Final-Recipient: RFC822; bugs-by@python.org Action: failed Status: 5.1.1 Remote-MTA: DNS; parrot.python.org Diagnostic-Code: SMTP; 550 ... User unknown Last-Attempt-Date: Thu, 3 Feb 2000 11:46:44 +0100 (MET) --LAA26536.949574804/relay.uni-heidelberg.de Content-Type: message/rfc822 Return-Path: Received: from mailserver.mathi.uni-heidelberg.de (mailserver.mathi.uni-heidelberg.de [129.206.26.32]) by relay.uni-heidelberg.de (8.9.3+Sun/8.9.3) with ESMTP id LAA26531 for ; Thu, 3 Feb 2000 11:46:41 +0100 (MET) Received: from testserv.mathi.uni-heidelberg.de (testserv.mathi.uni-heidelberg.de [129.206.26.30]) by mailserver.mathi.uni-heidelberg.de (Postfix) with SMTP id CFF5512917 for ; Thu, 3 Feb 2000 11:48:11 +0100 (CET) Received: by testserv.mathi.uni-heidelberg.de (sSMTP sendmail emulation); Thu, 3 Feb 2000 11:48:12 +0100 Date: Thu, 3 Feb 2000 11:48:12 +0100 From: Gregor Hoffleit To: bugs-by@python.org Subject: RE: [Python-bugs-list] Signal processing bug (Linux threads, readline, whatever else) (PR#196) Message-ID: <20000203114812.B18567@mathi.uni-heidelberg.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii User-Agent: Mutt/1.0pre3i Fredric Lundh pointed me to Alex Zbyslaw's posting regarding this topic (http://x44.deja.com/getdoc.xp?AN=545159177). Indeed Alex' patch1 (http://www.xfb52.dial.pipex.com/patches/python.shtml) for FreeBSD (disabling the interrupt handler chanege in the readline module) works for Debian, too, i.e. if I stick with the default inthandler in the readline module, SIGINT doesn't kill the interpreter anymore. Still, the drawback of this change is that I have to press RETURN before a SIGINT is spotted by Python (btw, this is the same behavior as with 1.5.1 on the system with the same configuration). Still, IMHO this behavior is preferable. Gregor --LAA26536.949574804/relay.uni-heidelberg.de-- ------------------------------------------------------- Date: 2000-Jul-31 14:05 By: none Comment: From: Gregor Hoffleit Subject: Re: [Python-bugs-list] Signal processing bug (Linux threads, readline, whatever else) (PR#196) Date: Fri, 11 Feb 2000 14:52:42 +0100 --dDRMvlgZJXvWKvBx Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Ok, one more data point: On Fri, Feb 11, 2000 at 08:29:43AM -0500, Randall Hopper wrote: > You know, I think you may have it. On IRIX, I don't have Python built > with threads. However, on FreeBSD at home I'd guess that it is (I built = it > from ports). My IRIX python has no problem with Ctrl-C while my FreeBSD > version at home locks up with Ctrl-C. I rebuilt my IRIX Python > --with-thread, and now it hangs when Ctrl-C is hit. And now, we're three: When using threads and readline, Ctrl-C hangs IRIX and FreeBSD and kills Linux Python. This doesn't sound like a kernel problem, more like a problem with readline not being thread-safe I guess. Gregor =20 --dDRMvlgZJXvWKvBx Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.1 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE4pBQq3eVfDf25G40RAUbSAJ41b+DgwHEmRUm0uQcJLjvZ3ROiSwCdH8Xq jFH5J1TsLQBbQTPU5Xvv0Bo= =0j16 -----END PGP SIGNATURE----- --dDRMvlgZJXvWKvBx-- ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110611&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:09:14 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:09:14 -0700 Subject: [Python-bugs-list] [Bug #110854] Re: Date problem unresolved [DIN 2646] (fwd) (PR#109) Message-ID: <200009131109.EAA07120@bush.i.sourceforge.net> Bug #110854, was updated on 2000-Aug-01 14:37 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Works For Me Bug Group: Irreproducible Priority: 3 Summary: Re: Date problem unresolved [DIN 2646] (fwd) (PR#109) Details: Jitterbug-Id: 109 Submitted-By: Curt Finch Date: Thu, 14 Oct 1999 14:58:08 -0500 (CDT) Version: None OS: None anyone heard of any python time bugs? __________________________________________________________________ Web-Based Project Management, Journyx TimeSheet and Tracking Software FREE (800)755-9878 FREE at http://journyx.com/wts.html curt@www.JOURNYX.com ------------------------------------------------------------------ ---------- Forwarded message ---------- Date: Thu, 14 Oct 1999 14:09:35 -0500 (CDT) From: John Maddalozzo To: "Stappert, Andreas" Cc: support@journyx.com Subject: Re: Date problem unresolved [DIN 2646] Andreas, I'm stumped. It seems there is a problem in the python time library. I may have to post a message to a python news group if code inspection doesn't turn anything up. 2646 is the problem report number. We'll dig around and see what we can find out. Meanwhile, you might want to send me the output of the uname -a command and any other information you have that might help. (Linux level, etc) Regards, John __________________________________________________________________ Web-Based Project Management and TimeSheet Software JournyxTime FREE at http://journyx.com/wts.html John Maddalozzo - john@JOURNYX.com (512)834-8888 / (800)755-9878 ------------------------------------------------------------------ On Thu, 14 Oct 1999, Stappert, Andreas wrote: > Hi John, > > Well, for some reason I always have the strangest thing happen to me :-) > even though I try to conform to every standards I know of... > > Here is what I get. Looks like it matches your machine (our server date is > set a day off). Do you think it would help if we change the timezone to EST > or something? > > > date +%s > 939838233 > timesheet:~> > > The hardware is an (old) 486 (yes I know old ... that is just our > testserver, once we are putting Journyx to real use, we are going to put a > nicer machine underneath it). I don't know the mainboard type by heart. > > Oh, I should probably also tell you this: At the beginning, the time was > right but once we got some modifications done and rebootet the machine, it > started acting this strange. > > Regards, > Andreas > > -----Ursprungliche Nachricht----- > Von: John Maddalozzo [mailto:john@journyx.com] > Gesendet: Donnerstag, 14. Oktober 1999 20:05 > An: Stappert, Andreas > Betreff: Re: AW: AW: Date problem unresolved > > > > Very strange, Andreas. > the time.time() result shows the number of seconds since the "epoch" > (see http://python.org/doc/current/lib/module-time.html) > Your number of seconds should be somewhere between > 939916983.851 (the time on my computer when I wrote example note below) > and > 939923915.897 (the time on my computer I just now checked) > > What does the command > date +%s > say? > What hardware are you using? > > __________________________________________________________________ > Web-Based Project Management and TimeSheet Software JournyxTime > FREE at http://journyx.com/wts.html > John Maddalozzo - john@JOURNYX.com (512)834-8888 / (800)755-9878 > ------------------------------------------------------------------ > > On Thu, 14 Oct 1999, Stappert, Andreas wrote: > > > Here you go (my mistake): > > > > timesheet:~/jtime/jtime/pi/bin> python > > Python 1.5.2 (#1, Sep 27 1999, 17:01:09) [GCC egcs-2.91.66 19990314/Linux > > (egcs > > - on linux2 > > Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam > > >>> import time > > >>> import wtdate > > >>> wtdate.today() > > Thu 13 Jul 1995 > > >>> time.localtime(time.time()) > > (1995, 7, 13, 8, 38, 9, 3, 194, 1) > > >>> time.time() > > 805617494.587 > > >>> time.gmtime(time.time()) > > (1995, 7, 13, 6, 38, 54, 3, 194, 0) > > >>> time.gzname > > Traceback (innermost last): > > File "", line 1, in ? > > AttributeError: gzname > > >>> time.timezone > > -3600 > > >>> time.tzname > > ('CET', 'CEST') > > >>> > > > > -----Ursprungliche Nachricht----- > > Von: John Maddalozzo [mailto:john@journyx.com] > > Gesendet: Donnerstag, 14. Oktober 1999 19:09 > > An: Stappert, Andreas > > Betreff: Re: AW: Date problem unresolved > > > > > > > > Hi Andreas, > > Did you remember to source setup? > > In pi/bin at the shell prompt do: > > . ./setup > > You need to do that first. To check that it has been sourced, do > > echo $PYTHONPATH > > that should return something like this: > > [rebobiz] /home/john_scratch/jtime/jtime/pi/bin 753>. ./setup > > [rebobiz] /home/john_scratch/jtime/jtime/pi/bin 754>echo $PYTHONPATH > > > //home/john_scratch/jtime/jtime/pi/apache/wtlib://home/john_scratch/jtime/jt > > > ime/pd/Linux/python/lib/python1.5/://home/john_scratch/jtime/jtime/pi/apache > > /serverroot/cgi-bin > > > > Then it should be able to find wtdate.pyc in pi/apache/wtlib > > > > Regards, John > > > > On Thu, 14 Oct 1999, Stappert, Andreas wrote: > > > > > Hi John, > > > > > > I already get stuck when I try to import wtdate: > > > > > > python > > > Python 1.5.1 (#1, Mar 21 1999, 22:49:36) [GCC egcs-2.91.66 19990314/Li > on > > > linux > > > -i386 > > > Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam > > > >>> import time > > > >>> import wtdate > > > Traceback (innermost last): > > > File "", line 1, in ? > > > ImportError: No module named wtdate > > > > > > -----Ursprungliche Nachricht----- > > > Von: John Maddalozzo [mailto:john@journyx.com] > > > Gesendet: Donnerstag, 14. Oktober 1999 18:05 > > > An: Stappert, Andreas > > > Cc: support@journyx.com > > > Betreff: Re: Date problem unresolved > > > > > > > > > > > > Andreas, > > > This must be some problem with resolving the time zone. > > > Please do the following and send me the output. > > > > > > What this is doing is invoking python and using its libraries to get > > dates. > > > I'm hoping that this will give us some idea of what is wrong. > > > Regards, John > > > > > > cd /jtime/pi/bin > > > . ./setup > > > python > > > import time > > > import wtdate > > > wtdate.today() > > > time.localtime(time.time()) > > > time.time() > > > time.gmtime(time.time()) > > > time.gzname > > > time.timezone > > > > > > For example when I do it here I get... > > > > > > [rebobiz] /home/john_scratch/jtime/jtime/pi/bin 743>python > > > Python 1.5.2 (#1, Oct 2 1999, 23:28:23) [GCC egcs-2.91.66 > 19990314/Linux > > > (egcs- on linux2 > > > Copyright 1991-1995 Stichting Mathematisch Centrum, Amsterdam > > > >>> import time > > > >>> import wtdate > > > >>> wtdate.today() > > > Thu 14 Oct 1999 > > > >>> time.localtime(time.time()) > > > (1999, 10, 14, 11, 2, 51, 3, 287, 1) > > > >>> time.time() > > > 939916983.851 > > > >>> time.gmtime(time.time()) > > > (1999, 10, 14, 16, 7, 10, 3, 287, 0) > > > >>> time.tzname > > > ('CST', 'CDT') > > > >>> time.timezone > > > 21600 > > > > > > > > > > > > __________________________________________________________________ > > > Web-Based Project Management and TimeSheet Software JournyxTime > > > FREE at http://journyx.com/wts.html > > > John Maddalozzo - john@JOURNYX.com (512)834-8888 / (800)755-9878 > > > ------------------------------------------------------------------ > > > > > > On Thu, 14 Oct 1999, Stappert, Andreas wrote: > > > > > > > Hello there, > > > > We are still having a major problem with the Journyx installation on > our > > > > Linux server: > > > > The current date on the Linux machine is > > > > Mit Okt 13 10:35:14 CEST 1999 > > > > but Journyx uses the below July 12, 1995 as current date. Is there any > > way > > > > to correct this problem? > > > > We would like to go and find some more customers for Journyx but if we > > can > > > > not figure out how to correct this problem, we will not be able to > > > > demonstrate it. > > > > Thanks for your immediate attention > > > > Andreas > > > > > > > > License Key Data > > > > * Dates > > > > * Install Date: Mon Okt 4 17:36:04 CEST 1999 > > > > * Product Expiration Date: Never > > > > * Current Date: Wed 12 Jul 1995 > > > > * Users > > > > * Licensed Number of Users: 10 > > > > * Current Number of User Data Unavailable > > > > * Hosts > > > > * Licensed Host: 192 > > > > * Current Host: 192 > > > > Operating System Information > > > > * Current: Linux 192.168.0.100 2.2.5-15de #1 Tue May 25 00:43:15 EDT > > > > 1999 i486 > > > > * Original: Linux karsrv01.key-work.de 2.2.5-15de #1 Tue May 25 > > > > 00:43:15 EDT 1999 i486 unknown > > > > Credits > > > > * Docs: Sarah Griswold > > > > * Testing: Matt Neiman > > > > * Coding: > > > > * Chris Anderson > > > > * Curt Finch > > > > * John Maddalozzo > > > > * Andrew Reutter > > > > * Design and enhancement ideas: literally thousands of registered > > > > users just like you. > > > > > > > > > > > > > > > > ----------------------------------------------- > > > > Andreas Stappert > > > > Key-Work Consulting GmbH > > > > > > > > Haid-und-Neu-Strasse 7 - 76131 Karlsruhe - Germany > > > > +49 721 664936-0 - mailto:andreas.stappert@key-work.de > > > > > > > > > > > > > > > ==================================================================== Audit trail: Mon Oct 18 17:53:07 1999 guido changed notes Mon Oct 18 17:53:07 1999 guido changed notification Mon Oct 18 17:53:08 1999 guido moved from incoming to open Tue Oct 19 00:42:35 1999 guido changed notes Tue Oct 19 00:42:37 1999 guido moved from open to irreproducible Follow-Ups: Date: 2000-Aug-01 14:37 By: none Comment: Can't reproduce this here. Your best bet is to look into the conversion of the time() value to floating point -- maybe you are using a bogus floating point emulation? BTW, forwarding such a long thread of email without a clear summary of the problem at the top makes it hard for me to read the bug report. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 04:09 By: gvanrossum Comment: Irreproducible. If this is still a problem in Python 2.0(b1), please submit a new bug report with enough information to be able to reproduce the bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110854&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:11:09 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:11:09 -0700 Subject: [Python-bugs-list] [Bug #110860] IDLE class browser and decimal comma don't agree (PR#298) Message-ID: <200009131111.EAA07170@bush.i.sourceforge.net> Bug #110860, was updated on 2000-Aug-01 14:38 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Works For Me Bug Group: Irreproducible Priority: 5 Summary: IDLE class browser and decimal comma don't agree (PR#298) Details: Jitterbug-Id: 298 Submitted-By: magnus@thinkware.se Date: Tue, 18 Apr 2000 08:37:02 -0400 (EDT) Version: 1.5.2 OS: NT 4 As soon as I open the class browser in IDLE (0.5) I get the traceback below. Previously I had another strange bug that I suspect has to do with Tcl/Tk and the fact that I have national settings with , (comma) as decimal separator. With IDLE 0.4, >>> 5 / float(2) would result in 2,5 (not 2.5). It also wanted me to enter data like that. >>> 2.5 * 2 was rejected, and obviously >>> 2,5 * 2 was interpreted as (2, 5) * 2. This was only a problem in the IDLE shell. Program files ran OK. Considering "ValueError: invalid literal for float(): 0.0" below I suspect the errors are related. (A hint is that the problem goes away if I change the regional settings to decimal . in the control panel.) >>> Exception in Tkinter callback Traceback (innermost last): File "C:\Program\Python\Lib\lib-tk\Tkinter.py", line 764, in __call__ return apply(self.func, args) File "C:\Program\Python\Tools\idle\EditorWindow.py", line 355, in open_class_browser ClassBrowser.ClassBrowser(self.flist, base, [head]) File "C:\Program\Python\Tools\idle\ClassBrowser.py", line 37, in __init__ self.init(flist) File "C:\Program\Python\Tools\idle\ClassBrowser.py", line 59, in init node.expand() File "C:\Program\Python\Tools\idle\TreeWidget.py", line 133, in expand self.view() File "C:\Program\Python\Tools\idle\TreeWidget.py", line 144, in view visible_top = self.canvas.canvasy(0) File "C:\Program\Python\Lib\lib-tk\Tkinter.py", line 1200, in canvasy return getdouble(self.tk.call( ValueError: invalid literal for float(): 0.0 ==================================================================== Audit trail: Mon May 22 17:17:16 2000 guido changed notes Mon May 22 17:17:16 2000 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:39 By: none Comment: Bizarrely, his locale affects Python number parsing. Can't reproduce this. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 04:11 By: gvanrossum Comment: Irreproducible. If this is still a problem in Python 2.0(b1), please submit a new bug report with as much information as possible about the platform, versions, etc. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110860&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:13:47 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:13:47 -0700 Subject: [Python-bugs-list] [Bug #112786] Build under Cygwin fails Message-ID: <200009131113.EAA07310@bush.i.sourceforge.net> Bug #112786, was updated on 2000-Aug-26 01:39 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 3 Summary: Build under Cygwin fails Details: Py1.6b1 ======== 1) socketmodule.c -- looks for netinet/tcp.h, which does not exist on cygwin. 2) gcc python.o \ ../libpython1.6.a -lm -o python python.o: In function `main': /usr/local/bin/Python-1.6b1/Modules/python.c:12: undefined reference to `Py_Main Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 04:13 By: gvanrossum Comment: I don't have cygwin. Does anyone here have cygwin? I know Tim said the cygwin installer failed for him, so he doesn't have it. Is there someone outside the PythonLabs to whom we could assign this? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=112786&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:21:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:21:25 -0700 Subject: [Python-bugs-list] [Bug #113145] config.h defines socklen_t, kills wxPython build Message-ID: <200009131121.EAA07647@bush.i.sourceforge.net> Bug #113145, was updated on 2000-Aug-30 12:51 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: Wont Fix Bug Group: None Priority: 6 Summary: config.h defines socklen_t, kills wxPython build Details: Building wxPython fails with 1.6 because config.h defines socklen_t; according to a comment, it checks sys/types.h. But /usr/include/bits/socket.h on Linux at least, tries to make a typedef with this name. Follow-Ups: Date: 2000-Sep-03 21:08 By: gvanrossum Comment: Could this be dependent on the Linux version? It seems my config.h had socklen_t defined on Red Hat 6.1, but it is undefined on Red Hat 6.2 (which would fix your problem if I understand it correctly). What platform are you using? ------------------------------------------------------- Date: 2000-Sep-03 22:10 By: dubois Comment: My system is 6.1 I think. (I didn't install it.) Here is uname -a: Linux bruno.llnl.gov 2.2.12-20smp #1 SMP Mon Sep 27 10:34:45 EDT 1999 i686 unknown ------------------------------------------------------- Date: 2000-Sep-13 04:21 By: gvanrossum Comment: Jeremy, you still have Red Hat 6.1, right? Can you reproduce this? Run configure, and check config.h. If it defines socklen_t, the bug is there. It may be possible to fix the test for socklen_t by using AC_TRY_COMPILE() of a test program. This is done for example for uintptr_t. (The current test uses AC_CHECK_TYPE which only greps through CPP output.) A good way to learn more about autoconf. :-) ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113145&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:22:56 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:22:56 -0700 Subject: [Python-bugs-list] [Bug #113328] Python 1.6b1 build failure on Solaris (with patch) Message-ID: <200009131122.EAA07687@bush.i.sourceforge.net> Bug #113328, was updated on 2000-Sep-01 04:18 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: Duplicate Bug Group: None Priority: 5 Summary: Python 1.6b1 build failure on Solaris (with patch) Details: Python 1.6b1 fails to build on Solaris due to Python's config.h #define'ing socklen_t to be int. socklen_t is a symbol many platforms' standard include files have a typedef for. On Solaris, this results in the true typedef for socklen_t in sys/socket.h (one of the following): typedef size_t socklen_t; typedef uint32_t socklen_t; being transformed into gibberish that will not compile. Removing the offending socklen_t #define from config.h allows 1.6b1 to build on Solaris. See also bugs 111319 and 113145. Follow-Ups: Date: 2000-Sep-01 08:07 By: VizNut Comment: Oops. Ignore the "(with patch)" piece in the Summary. ------------------------------------------------------- Date: 2000-Sep-13 04:22 By: gvanrossum Comment: This is the same problem as bug #113145. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113328&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:30:51 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:30:51 -0700 Subject: [Python-bugs-list] [Bug #114333] minidom fails to parse PI Message-ID: <200009131130.EAA07964@bush.i.sourceforge.net> Bug #114333, was updated on 2000-Sep-13 04:30 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: minidom fails to parse PI Details: # Using Python2.0b1, minidom and expat: s="""""" import xml.dom.minidom p=xml.dom.minidom.parseString(s) stack_trace=""" Traceback (most recent call last): File "test.py", line 6, in ? p=xml.dom.minidom.parseString(s) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 45 2, in parseString return _doparse( pulldom.parseString, args, kwargs ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 44 3, in _doparse events.expandNode( rootNode ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/pulldom.py", line 14 2, in expandNode cur_node.parentNode.appendChild( cur_node ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 40 0, in appendChild raise TypeError, "Two document elements disallowed" TypeError: Two document elements disallowed """ For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114333&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:37:35 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:37:35 -0700 Subject: [Python-bugs-list] [Bug #114333] minidom fails to parse PI Message-ID: <200009131137.EAA08317@bush.i.sourceforge.net> Bug #114333, was updated on 2000-Sep-13 04:30 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: minidom fails to parse PI Details: # Using Python2.0b1, minidom and expat: s="""""" import xml.dom.minidom p=xml.dom.minidom.parseString(s) stack_trace=""" Traceback (most recent call last): File "test.py", line 6, in ? p=xml.dom.minidom.parseString(s) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 45 2, in parseString return _doparse( pulldom.parseString, args, kwargs ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 44 3, in _doparse events.expandNode( rootNode ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/pulldom.py", line 14 2, in expandNode cur_node.parentNode.appendChild( cur_node ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 40 0, in appendChild raise TypeError, "Two document elements disallowed" TypeError: Two document elements disallowed """ Follow-Ups: Date: 2000-Sep-13 04:37 By: jrvosse Comment: See also the python xml-sig mail list: http://www.python.org/pipermail/xml-sig/2000-September/004817.html ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114333&group_id=5470 From noreply@sourceforge.net Wed Sep 13 12:46:03 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 04:46:03 -0700 Subject: [Python-bugs-list] [Bug #114334] glob does not handle set coplementation ([^ ... ]) properly Message-ID: <200009131146.EAA27654@delerium.i.sourceforge.net> Bug #114334, was updated on 2000-Sep-13 04:46 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: glob does not handle set coplementation ([^ ... ]) properly Details: The glob function in the glob module does not handle the set complementation correctly. Example: glob('*[^C].cc') should return all .cc file that do NOT have a 'C' before the dot. Instead it returns all files that DO have a C before the dot. Python: v 1.5.2 Platform: HP-UX For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114334&group_id=5470 From jeremy@beopen.com Wed Sep 13 12:58:55 2000 From: jeremy@beopen.com (Jeremy Hylton) Date: Wed, 13 Sep 2000 07:58:55 -0400 (EDT) Subject: [Python-bugs-list] [Bug #110712] MALLOC_ZERO_RETURNS_NULL problem In-Reply-To: <200009131051.DAA06329@bush.i.sourceforge.net> References: <200009131051.DAA06329@bush.i.sourceforge.net> Message-ID: <14783.27647.763061.792615@bitdiddle.concentric.net> >>>>> "SF>" == noreply writes: SF>> Comment: I don't understand why the configure script would use SF>> a different malloc library for its test of malloc(0) than what SF>> is used later to compile Python. Could it be that simply "make SF>> clobber" and running configure again would solve the problem? SF>> I'm closing the bug report for now. If this is still a problem SF>> with Python 2.0, please send email and I'll reopen it. Guido, Your last comment puzzles me. How is anyone other than you and me going to see the request to send email if it is still a problem? The bug is an old Jitterbug submission, which means that the original submittor is not known by SF. You need to send the original submittor an email yourself if you want him to reply. If you did send that email, the comment in the bug report is misleading. (It would be clearer to say: "I sent private email to the submittor. If he reports that it is still a problem with 2.0, I will reopen it.") (You probably did not notice that it was a Jitterbug report. But SF doesn't always have an email address, even for new bugs.) Jeremy From noreply@sourceforge.net Wed Sep 13 13:27:47 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 05:27:47 -0700 Subject: [Python-bugs-list] [Bug #114336] Python-2.0b1 build fails on OpenBSD 2.7 Message-ID: <200009131227.FAA29331@delerium.i.sourceforge.net> Bug #114336, was updated on 2000-Sep-13 05:27 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python-2.0b1 build fails on OpenBSD 2.7 Details: I did './configure && make', the link failed due to it attempting to link the nonexistant library 'db'. I edited Modules/Setup.config.in and removed ' -ldb' and it compiled ok. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114336&group_id=5470 From skip@mojam.com (Skip Montanaro) Wed Sep 13 18:08:12 2000 From: skip@mojam.com (Skip Montanaro) (Skip Montanaro) Date: Wed, 13 Sep 2000 12:08:12 -0500 (CDT) Subject: [Python-bugs-list] [Bug #114336] Python-2.0b1 build fails on OpenBSD 2.7 In-Reply-To: <200009131227.FAA29331@delerium.i.sourceforge.net> References: <200009131227.FAA29331@delerium.i.sourceforge.net> Message-ID: <14783.46204.83567.811572@beluga.mojam.com> >> Details: I did './configure && make', the link failed due to it >> attempting to link the nonexistant library 'db'. I edited >> Modules/Setup.config.in and removed ' -ldb' and it compiled ok. This was recently fixed (after the 2.0b1 release). If you can check out a fresh copy from the CVS repository, please try it and let me know if it still gives you problems. -- Skip Montanaro (skip@mojam.com) http://www.mojam.com/ http://www.musi-cal.com/ From noreply@sourceforge.net Wed Sep 13 18:16:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 10:16:18 -0700 Subject: [Python-bugs-list] [Bug #114323] Pb PYTHON Message-ID: <200009131716.KAA08283@delerium.i.sourceforge.net> Bug #114323, was updated on 2000-Sep-13 02:16 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Closed Resolution: Works For Me Bug Group: None Priority: 5 Summary: Pb PYTHON Details: Find the encoutered problem when we are running python interactively with the following commands python >>> from Tkinter import * >>> root=Tk() Traceback (innermost last): File "", line 1, in ? File "/usr/local/lib/python1.5/lib-tk/Tkinter.py", line 886, in __init__ self.tk = _tkinter.create(screenName, baseName, className) TclError: Can't find a usable init.tcl in the following directories: We have compile python on SUN ULTRA 60 - Solaris 2.6 with GCC using the building and installing commndes found in the book Python and Tkinter Please send me a mail as soon as possible This probably means that Tcl wasn't installed properly. >>> Follow-Ups: Date: 2000-Sep-13 10:16 By: loewis Comment: Most likely, the Tcl installation on this machine does not work. Unfortunately, there is no indication as to how Tcl was installed, or what version of Tcl was installed. Neither did the submitter leave any contact information, so it will be impossible to reproduce the problem or analyze it further. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114323&group_id=5470 From noreply@sourceforge.net Wed Sep 13 18:43:51 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 10:43:51 -0700 Subject: [Python-bugs-list] [Bug #114359] snpplib Message-ID: <200009131743.KAA23069@bush.i.sourceforge.net> Bug #114359, was updated on 2000-Sep-13 10:43 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: snpplib Details: I just implemented RFC 1861 -- SNPP for a company, and they are letting me release it Open Source. snpplib.py is based on smtplib.py (very similar protocols) and is in use in a fairly hefty production system at the moment. I know that the Perl folk have snpp support in their net library, so I wanted to offer up mine for the Python distribution. Sorry if this isn't the right forum for that. I've opened a SourceForce project for it called PySNPP, because I have a higher level implementation class as well, but I don't think it's quite as well suited for being in the distribution. The files should be up here on SourceForge by tomorrow. You are more than welcome to snag them if you like. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114359&group_id=5470 From jon+sourceforge@unequivocal.co.uk Wed Sep 13 19:13:33 2000 From: jon+sourceforge@unequivocal.co.uk (Jon Ribbens) Date: Wed, 13 Sep 2000 19:13:33 +0100 Subject: [Python-bugs-list] [Bug #114336] Python-2.0b1 build fails on OpenBSD 2.7 In-Reply-To: <14783.46204.83567.811572@beluga.mojam.com>; from skip@mojam.com on Wed, Sep 13, 2000 at 12:08:12PM -0500 References: <200009131227.FAA29331@delerium.i.sourceforge.net> <14783.46204.83567.811572@beluga.mojam.com> Message-ID: <20000913191333.A16263@snowy.squish.net> Skip Montanaro wrote: > This was recently fixed (after the 2.0b1 release). If you can check out a > fresh copy from the CVS repository, please try it and let me know if it > still gives you problems. Compiles fine with latest CVS. However, 'make test' says: test_grp pid 12669: Fatal error '_libc_private_storage_lock' at line 14 in file /usr/src/lib/libc_r/thread/thread_storage.c (errno = 2) Abort (core dumped) *** Error code 134 Should I open a separate bug report for this? It might be an OpenBSD problem, I'm not sure. From noreply@sourceforge.net Wed Sep 13 23:49:01 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Wed, 13 Sep 2000 15:49:01 -0700 Subject: [Python-bugs-list] [Bug #114245] utime can not accept directory under NT Message-ID: <200009132249.PAA02717@bush.i.sourceforge.net> Bug #114245, was updated on 2000-Sep-12 06:36 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: utime can not accept directory under NT Details: Whenever supply a directory to utime path parameter, exception raised. The problem is MS C run time library utime function only works on files, but not directories. To fix this bug, MS utime has to be replaced by some function that works with directory. Follow-Ups: Date: 2000-Sep-13 15:49 By: gangli59 Comment: I submitted a patch that uses win32 api instead MSC run time library ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114245&group_id=5470 From noreply@sourceforge.net Thu Sep 14 09:51:06 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 01:51:06 -0700 Subject: [Python-bugs-list] [Bug #114336] Python-2.0b1 build fails on OpenBSD 2.7 Message-ID: <200009140851.BAA09807@delerium.i.sourceforge.net> Bug #114336, was updated on 2000-Sep-13 05:27 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python-2.0b1 build fails on OpenBSD 2.7 Details: I did './configure && make', the link failed due to it attempting to link the nonexistant library 'db'. I edited Modules/Setup.config.in and removed ' -ldb' and it compiled ok. Follow-Ups: Date: 2000-Sep-14 01:51 By: jribbens Comment: Post-2.0b1 CVS version compiles OK. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114336&group_id=5470 From noreply@sourceforge.net Thu Sep 14 10:05:10 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 02:05:10 -0700 Subject: [Python-bugs-list] [Bug #110655] getpass.getpass on Windows (PR#349) Message-ID: <200009140905.CAA10356@delerium.i.sourceforge.net> Bug #110655, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Wont Fix Bug Group: Platform-specific Priority: 5 Summary: getpass.getpass on Windows (PR#349) Details: Jitterbug-Id: 349 Submitted-By: ctalley@caci.com Date: Thu, 8 Jun 2000 15:52:19 -0400 (EDT) Version: 1.5.2 OS: W95 When using this code, the third line is skipped. That is, the prompt appears, but the program doesn't pause to accept input data. It goes right to the fourth line and pauses there. I end up with a null string for "fromaddr". username=raw_input('Enter FTP server account username: ') password=getpass.getpass('Enter FTP server account password: ') fromaddr=raw_input('Enter your e-mail address: ') toaddr=raw_input('Enter e-mail address for notification: ') When using this code, everything works (although echo of the password isn't suppressed.) username=raw_input('Enter FTP server account username: ') password=raw_input('Enter FTP server account password: ') fromaddr=raw_input('Enter your e-mail address: ') toaddr=raw_input('Enter e-mail address for notification: ') The difference between the two code segments is that the first uses the getpass method on the second line and the second uses raw_input. What I think is happening is that getpass is leaving some garbage in a buffer somewhere which is seen by raw_input as data. raw_input happily accepts the data and goes to the next line. I've devised several workarounds including "flush_input_buffer=raw_input('')" immediately following the call to getpass. It's ugly, but it works. Thanks, Carl Talley ==================================================================== Audit trail: Tue Jul 11 08:25:59 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:23 By: gvanrossum Comment: Confirmed with Python 2.0b1 on Win98SE. The bug does not occur on Linux. Tim, the getpass code for Windows is different than on Unix, so please have a look! ------------------------------------------------------- Date: 2000-Sep-14 02:05 By: tim_one Comment: Mark, I assigned this to you on the chance you know a better trick. Note that I already closed it as "Won't Fix", so if you *don't* know a better trick you don't have to do anything here. This can't be fixed on Windows. As the MS docs say, "The console I/O routines are not compatible with stream I/O or low-level I/O library routines", and getpass uses the console I/O routines on Windows. Mixing console I/O with C stdio is undefined, and C stdio doesn't provide a way to do non-echo'ing input itself. About the best you can do is to define your own raw_input variant that uses console I/O too. For example, def phony_raw_input(prompt=""): from msvcrt import putch, getche for ch in prompt: putch(ch) s = "" while 1: c = getche() if c in "\r\n": break elif c == '\003': raise KeyboardInterrupt elif c == '\b': s = s[:-1] else: s = s + c putch('\r') putch('\n') return s Use phony_raw_input instead of raw_input in your example and it will work as you hoped. It may screw up the *next* read from stdin, though! All of the keyboard buffer, MS-DOS buffer, and stdio buffers get mixed into this, and MS doesn't define or guarantee the way all those interact across Windows flavors. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110655&group_id=5470 From noreply@sourceforge.net Thu Sep 14 10:24:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 02:24:28 -0700 Subject: [Python-bugs-list] [Bug #114410] 'make tests' fails with thread error on OpenBSD 2.7 Message-ID: <200009140924.CAA11055@delerium.i.sourceforge.net> Bug #114410, was updated on 2000-Sep-14 02:24 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: 'make tests' fails with thread error on OpenBSD 2.7 Details: Using the latest CVS version of Python, the output from a pass of regrtest follows. It may be an OpenBSD problem, in which case if someone can explain it to me I will sendbug it to the OpenBSD people instead. PYTHONPATH= ./python -tt ./Lib/test/regrtest.py -l test_grammar test_opcodes test_operations test_builtin test_exceptions test_types test_MimeWriter test_al test test_al skipped -- No module named al test_array test_atexit test_audioop test test_audioop skipped -- No module named audioop test_augassign test_binascii test_binhex test_bsddb test_cd test test_cd skipped -- No module named cd test_cgi test_cl test test_cl skipped -- No module named cl test_class test_cmath test_compile test_contains test_cookie test_cpickle test_crypt test test_crypt skipped -- No module named crypt test_dbm test test_dbm skipped -- No module named dbm test_dl test test_dl skipped -- No module named dl test_dospath test_errno test_extcall test_fcntl test test_fcntl skipped -- No module named FCNTL test_file test_fork1 test_format test_gc gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable gc: collectable gc: collectable test_gdbm test test_gdbm skipped -- No module named gdbm test_getopt test_gettext test_gl test test_gl skipped -- No module named gl test_grp pid 4207: Fatal error '_libc_private_storage_lock' at line 14 in file /usr/src/lib/libc_r/thread/thread_storage.c (errno = 2) Abort (core dumped) *** Error code 134 Stop in /tmp/python/dist/src (line 212 of Makefile). For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114410&group_id=5470 From noreply@sourceforge.net Thu Sep 14 10:34:04 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 02:34:04 -0700 Subject: [Python-bugs-list] [Bug #114410] 'make tests' fails with thread error on OpenBSD 2.7 Message-ID: <200009140934.CAA11409@delerium.i.sourceforge.net> Bug #114410, was updated on 2000-Sep-14 02:24 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: None Priority: 5 Summary: 'make tests' fails with thread error on OpenBSD 2.7 Details: Using the latest CVS version of Python, the output from a pass of regrtest follows. It may be an OpenBSD problem, in which case if someone can explain it to me I will sendbug it to the OpenBSD people instead. PYTHONPATH= ./python -tt ./Lib/test/regrtest.py -l test_grammar test_opcodes test_operations test_builtin test_exceptions test_types test_MimeWriter test_al test test_al skipped -- No module named al test_array test_atexit test_audioop test test_audioop skipped -- No module named audioop test_augassign test_binascii test_binhex test_bsddb test_cd test test_cd skipped -- No module named cd test_cgi test_cl test test_cl skipped -- No module named cl test_class test_cmath test_compile test_contains test_cookie test_cpickle test_crypt test test_crypt skipped -- No module named crypt test_dbm test test_dbm skipped -- No module named dbm test_dl test test_dl skipped -- No module named dl test_dospath test_errno test_extcall test_fcntl test test_fcntl skipped -- No module named FCNTL test_file test_fork1 test_format test_gc gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable gc: collectable gc: collectable test_gdbm test test_gdbm skipped -- No module named gdbm test_getopt test_gettext test_gl test test_gl skipped -- No module named gl test_grp pid 4207: Fatal error '_libc_private_storage_lock' at line 14 in file /usr/src/lib/libc_r/thread/thread_storage.c (errno = 2) Abort (core dumped) *** Error code 134 Stop in /tmp/python/dist/src (line 212 of Makefile). Follow-Ups: Date: 2000-Sep-14 02:34 By: jribbens Comment: Oh, if you do './configure --without-threads' then the problem is avoided, of course. 'make tests' then gives: 74 tests OK. 26 tests skipped: test_al test_audioop test_cd test_cl test_crypt test_dbm test_dl test_fcntl test_fork1 test_gdbm test_gl test_gzip test_imageop test_imgfile test_linuxaudiodev test_minidom test_nis test_pty test_pyexpat test_rgbimg test_sunaudiodev test_thread test_timing test_winreg test_winsound test_zlib But presumably, since Python 2 has threads enabled by default, something else needs to be done ;-) ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114410&group_id=5470 From noreply@sourceforge.net Thu Sep 14 13:10:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 05:10:18 -0700 Subject: [Python-bugs-list] [Bug #113693] freeze modulefinder broken Message-ID: <200009141210.FAA17059@delerium.i.sourceforge.net> Bug #113693, was updated on 2000-Sep-06 05:09 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: None Priority: 5 Summary: freeze modulefinder broken Details: The following one-liner script can not be frozen: import string The traceback is included below. Line number are from revision 1.13 of modulefinder.py. The problem appears to be related to recent changes to the import bytecodes Traceback (most recent call last): File "d:\python\tools\freeze\freeze.py", line 457, in ? main() File "d:\python\tools\freeze\freeze.py", line 321, in main mf.import_hook(mod) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 303, in scan_code self.scan_code(c, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 289, in scan_code assert lastname is not None AssertionError Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 05:10 By: jackjansen Comment: The problem is that the code expects IMPORT_NAME immedeately followed by a sequence of IMPORT_FROMs. That has changed now that IMPORT_FROM puts the result on the stack. A fix that appears to work for me is to set lastname to None only on POP_TOP instructions. But I'll leave doing the actual fix to someone more knowledgeable than me on the code that from x import y can generate. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113693&group_id=5470 From noreply@sourceforge.net Thu Sep 14 14:32:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 06:32:58 -0700 Subject: [Python-bugs-list] [Bug #114424] Tkinter/Canvas drawing causes interpreter to crash. Message-ID: <200009141332.GAA01447@bush.i.sourceforge.net> Bug #114424, was updated on 2000-Sep-14 06:32 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Tkinter/Canvas drawing causes interpreter to crash. Details: 14 September 2000 Please find my original query below with regard to Tkinter and Python2.0beta1. Also find the Python help desk response. I had not mentioned in my original query that I am running on a Sun Ultra 10 with the Solaris 5.5.1 operating system. Best, Michele --------------------------------------------------------------------------- --------------------------------------------------------------------------- 13 September 2000 HI Python Folks, I am trying to evaluate the new "flatten" functionality written for Tkinter to determine if it generates a scientific plot with many data points in a reasonable time. I am using the Python2.0beta1. I should admit to being a bit of a newbie with Python. For this test, I am using some very simple code that is from the "Python and Tkinter Programming" book by John Grayson. I will append the simple program to the bottom of this note. I will mention I did modify the code in the following manner: 1) scaled.append(x,y) to scaled.append((x,y)). 2) commented out some stuff I did not care about 3) added code to be able to generate as many data points as I want for testing If I run the very code attached to this note, I get: enkidu> /usr/local/bin/python2.0 simpleplot2.py Traceback (most recent call last): File "simpleplot2.py", line 39, in ? canvas.create_line(scaled, fill='royalblue') File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1955, in create_line return self._create('line', args, kw) File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1942, in _create (self._w, 'create', itemType) TypeError: can only concatenate tuple (not "dictionary") to tuple Bus error (core dumped) I changed the scaled.append((x,y)) to two lines where I append x and y separately; this got rid of the TypeError, but I still got the core dump. I have done many experiments where I can sometimes get the code to work in interactive mode, but if I decide to draw the line in color, I get a bus error. I can sometimes draw lines with only a few data points, but I bomb on lines with many points. I tell you all of this to find out if Tkinter has been tested for drawing lines and such on a canvas under Python2.0? I am suspicious of either memory problems or newbie problems. I have tried some demos of Tkinter, as well as some GUIs I have made using Tkinter which employ lots of widgets (i.e., scrollbars, text, label, entry) and these seem to work just fine. I am not very experienced with drawing stuff on the canvas. I do not expect you to debug this code for me, but rather to tell me how well Tkinter has been tested under Python2.0. I know you probably have lots o'stuff to do. Best, Michele ------------------------------------------------------------------------- Michele D. De La Pena email: delapena@stsci.edu Senior Scientific Programmer phone: 410-338-4713 Space Telescope Science Institute fax: 410-338-4767 3700 San Martin Drive Baltimore, MD 21218 "The nice thing about standards is there are so many to choose from." ------------------------------------------------------------------------- **************************************************************************** from Tkinter import * root = Tk() root.title('Simple Plot - Version 2') canvas = Canvas(root, width=450, height=300, bg = 'white') canvas.pack() Button(root, text='Quit', command=root.quit).pack() canvas.create_line(100,250,400,250, width=2) canvas.create_line(100,250,100,50, width=2) for i in range(11): x = 100 + (i * 30) canvas.create_line(x,250,x,245, width=2) canvas.create_text(x,254, text='%d'% (10*i), anchor=N) for i in range(6): y = 250 - (i * 40) canvas.create_line(100,y,105,y, width=2) canvas.create_text(96,y, text='%5.1f'% (50.*i), anchor=E) scaled = [] # MDD Added this code to generate potentially lots of data points for i in range(10): x, y = i, i x = x + 100 y = 50 + y scaled.append((x,y)) """ I am not interested in this. scaled = [] for x,y in [(12, 56), (20, 94), (33, 98), (45, 120), (61, 180), (75, 160), (98, 223)]: scaled.append((100 + 3*x, 250 - (4*y)/5)) """ canvas.create_line(scaled, fill='royalblue') """ I am not interested in this. for x,y in scaled: canvas.create_oval(x-6,y-6,x+6,y+6, width=1, outline='black', fill='SkyBlue2') """ root.mainloop() --------------------------------------------------------------------------- --------------------------------------------------------------------------- From help@python.org Thu Sep 14 09:38:40 2000 From: help@python.org (Martin von Loewis) Date: Thu, 14 Sep 2000 10:38:40 +0200 (MET DST) Subject: [Python-Help] forwarded message from Michele De La Pena In-Reply-To: <200009132153.RAA20628@enkidu.stsci.edu> (delapena@stsci.edu) References: <200009132153.RAA20628@enkidu.stsci.edu> Message-ID: <200009140838.KAA28807@pandora.informatik.hu-berlin.de> > I will check the items you suggest below, but I you have my help > message confused with someone else's message. My fault, I indeed confused your message with somebody elses. Looking at your original message, I can certainly reproduce the problem you are seeing. Tkinter has not been tested much for 2.0, except that IDLE is based on it - but that does not involve Canvases. It is not really your duty to find the cause of the problem, as it is clearly a Python bug. Since we are in beta testing, it would be quite important to fix it before 2.0 is released. So, if you are willing to investigate and propose a patch, that would be much appreciated. Otherwise, submitting a bug report at http://sourceforge.net/projects/python would be important so that the bug gets known to all contributors. Regards, Martin P.S. I'm especially troubled by the fact that the interpreter crashes, it should not crash under any circumstances, normally. A quick check with gdb shows that it crashes in Solaris' libc.so, specifically in the memory management. It appears that the heap got corrupted. enkidu> 2000 10:38:40 +0200 (MET DST) Received: (from loewis@localhost) by pandora.informatik.hu-berlin.de (8.9.1/8.9.1/SOLARIS-INF-2.0c) id KAA For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114424&group_id=5470 From noreply@sourceforge.net Thu Sep 14 14:48:56 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 06:48:56 -0700 Subject: [Python-bugs-list] [Bug #114427] bug with urlencode method from urllib Message-ID: <200009141348.GAA20765@delerium.i.sourceforge.net> Bug #114427, was updated on 2000-Sep-14 06:48 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: bug with urlencode method from urllib Details: result of encode ',' is ',' but not '%2C' Example >>> import urllib >>> dico={'toto':','} >>> a = urllib.urlencode(dico) >>> a 'toto=,' or I think that it must return 'toto=%2C' Example : >>> import urllib >>> b = urllib.unquote_plus('%2C') >>> print b , r_gesnot@hotmail.com For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114427&group_id=5470 From noreply@sourceforge.net Thu Sep 14 16:35:32 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 08:35:32 -0700 Subject: [Python-bugs-list] [Bug #114333] minidom fails to parse PI Message-ID: <200009141535.IAA06391@bush.i.sourceforge.net> Bug #114333, was updated on 2000-Sep-13 04:30 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 7 Summary: minidom fails to parse PI Details: # Using Python2.0b1, minidom and expat: s="""""" import xml.dom.minidom p=xml.dom.minidom.parseString(s) stack_trace=""" Traceback (most recent call last): File "test.py", line 6, in ? p=xml.dom.minidom.parseString(s) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 45 2, in parseString return _doparse( pulldom.parseString, args, kwargs ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 44 3, in _doparse events.expandNode( rootNode ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/pulldom.py", line 14 2, in expandNode cur_node.parentNode.appendChild( cur_node ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 40 0, in appendChild raise TypeError, "Two document elements disallowed" TypeError: Two document elements disallowed """ Follow-Ups: Date: 2000-Sep-13 04:37 By: jrvosse Comment: See also the python xml-sig mail list: http://www.python.org/pipermail/xml-sig/2000-September/004817.html ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114333&group_id=5470 From noreply@sourceforge.net Thu Sep 14 16:44:41 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 08:44:41 -0700 Subject: [Python-bugs-list] [Bug #114439] define_macros ignored when building Extension Message-ID: <200009141544.IAA06802@bush.i.sourceforge.net> Bug #114439, was updated on 2000-Sep-14 08:44 Here is a current snapshot of the bug. Project: Python Category: Distutils Status: Open Resolution: None Bug Group: None Priority: 7 Summary: define_macros ignored when building Extension Details: I am working on a setup script for Tkinter, which requires a -DWITH_APPINIT flag at compile time. The docs suggest that I should add the following definition to my Extension constructor call: define_macros=[('WITH_APPINIT', None),], I did this, but it had no effect. It looks like there is no where that the define_macros attribute of the Extension object is actually used. I assumed this is a bug and tried to figure out where the macros definitions ought to be processed. I'm not familiar with the code, so I may have put it in the wrong place. A patch is included below, which allows _tkinter to build. Jeremy *** build_ext.py Tue Sep 12 20:58:48 2000 --- /home/jeremy/src/python/dist/src/Lib/distutils/command/build_ext.py Thu Sep 7 11:09:18 2000 *************** *** 401,407 **** # any sensible compiler will give precedence to later # command line args. Hence we combine them in order: extra_args = ext.extra_compile_args or [] - macros = ext.define_macros or [] # XXX and if we support CFLAGS, why not CC (compiler # executable), CPPFLAGS (pre-processor options), and LDFLAGS --- 401,406 ---- *************** *** 410,419 **** if os.environ.has_key('CFLAGS'): extra_args.extend(string.split(os.environ['CFLAGS'])) ! objects = self.compiler.compile (sources, output_dir=self.build_temp, ! macros=macros, include_dirs=ext.include_dirs, debug=self.debug, extra_postargs=extra_args) --- 409,418 ---- if os.environ.has_key('CFLAGS'): extra_args.extend(string.split(os.environ['CFLAGS'])) ! objects = self.compiler.compile (sources, output_dir=self.build_temp, ! #macros=macros, include_dirs=ext.include_dirs, debug=self.debug, extra_postargs=extra_args) For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114439&group_id=5470 From noreply@sourceforge.net Thu Sep 14 17:44:15 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 09:44:15 -0700 Subject: [Python-bugs-list] [Bug #114427] bug with urlencode method from urllib Message-ID: <200009141644.JAA09132@bush.i.sourceforge.net> Bug #114427, was updated on 2000-Sep-14 06:48 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 7 Summary: bug with urlencode method from urllib Details: result of encode ',' is ',' but not '%2C' Example >>> import urllib >>> dico={'toto':','} >>> a = urllib.urlencode(dico) >>> a 'toto=,' or I think that it must return 'toto=%2C' Example : >>> import urllib >>> b = urllib.unquote_plus('%2C') >>> print b , r_gesnot@hotmail.com Follow-Ups: Date: 2000-Sep-14 09:44 By: jhylton Comment: Comma is listed in the list of always safe characters, but it shouldn't be. It is a reserved character in the query part of a URL. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114427&group_id=5470 From noreply@sourceforge.net Thu Sep 14 17:54:11 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 09:54:11 -0700 Subject: [Python-bugs-list] [Bug #114424] Tkinter/Canvas drawing causes interpreter to crash. Message-ID: <200009141654.JAA28043@delerium.i.sourceforge.net> Bug #114424, was updated on 2000-Sep-14 06:32 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 9 Summary: Tkinter/Canvas drawing causes interpreter to crash. Details: 14 September 2000 Please find my original query below with regard to Tkinter and Python2.0beta1. Also find the Python help desk response. I had not mentioned in my original query that I am running on a Sun Ultra 10 with the Solaris 5.5.1 operating system. Best, Michele --------------------------------------------------------------------------- --------------------------------------------------------------------------- 13 September 2000 HI Python Folks, I am trying to evaluate the new "flatten" functionality written for Tkinter to determine if it generates a scientific plot with many data points in a reasonable time. I am using the Python2.0beta1. I should admit to being a bit of a newbie with Python. For this test, I am using some very simple code that is from the "Python and Tkinter Programming" book by John Grayson. I will append the simple program to the bottom of this note. I will mention I did modify the code in the following manner: 1) scaled.append(x,y) to scaled.append((x,y)). 2) commented out some stuff I did not care about 3) added code to be able to generate as many data points as I want for testing If I run the very code attached to this note, I get: enkidu> /usr/local/bin/python2.0 simpleplot2.py Traceback (most recent call last): File "simpleplot2.py", line 39, in ? canvas.create_line(scaled, fill='royalblue') File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1955, in create_line return self._create('line', args, kw) File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1942, in _create (self._w, 'create', itemType) TypeError: can only concatenate tuple (not "dictionary") to tuple Bus error (core dumped) I changed the scaled.append((x,y)) to two lines where I append x and y separately; this got rid of the TypeError, but I still got the core dump. I have done many experiments where I can sometimes get the code to work in interactive mode, but if I decide to draw the line in color, I get a bus error. I can sometimes draw lines with only a few data points, but I bomb on lines with many points. I tell you all of this to find out if Tkinter has been tested for drawing lines and such on a canvas under Python2.0? I am suspicious of either memory problems or newbie problems. I have tried some demos of Tkinter, as well as some GUIs I have made using Tkinter which employ lots of widgets (i.e., scrollbars, text, label, entry) and these seem to work just fine. I am not very experienced with drawing stuff on the canvas. I do not expect you to debug this code for me, but rather to tell me how well Tkinter has been tested under Python2.0. I know you probably have lots o'stuff to do. Best, Michele ------------------------------------------------------------------------- Michele D. De La Pena email: delapena@stsci.edu Senior Scientific Programmer phone: 410-338-4713 Space Telescope Science Institute fax: 410-338-4767 3700 San Martin Drive Baltimore, MD 21218 "The nice thing about standards is there are so many to choose from." ------------------------------------------------------------------------- **************************************************************************** from Tkinter import * root = Tk() root.title('Simple Plot - Version 2') canvas = Canvas(root, width=450, height=300, bg = 'white') canvas.pack() Button(root, text='Quit', command=root.quit).pack() canvas.create_line(100,250,400,250, width=2) canvas.create_line(100,250,100,50, width=2) for i in range(11): x = 100 + (i * 30) canvas.create_line(x,250,x,245, width=2) canvas.create_text(x,254, text='%d'% (10*i), anchor=N) for i in range(6): y = 250 - (i * 40) canvas.create_line(100,y,105,y, width=2) canvas.create_text(96,y, text='%5.1f'% (50.*i), anchor=E) scaled = [] # MDD Added this code to generate potentially lots of data points for i in range(10): x, y = i, i x = x + 100 y = 50 + y scaled.append((x,y)) """ I am not interested in this. scaled = [] for x,y in [(12, 56), (20, 94), (33, 98), (45, 120), (61, 180), (75, 160), (98, 223)]: scaled.append((100 + 3*x, 250 - (4*y)/5)) """ canvas.create_line(scaled, fill='royalblue') """ I am not interested in this. for x,y in scaled: canvas.create_oval(x-6,y-6,x+6,y+6, width=1, outline='black', fill='SkyBlue2') """ root.mainloop() --------------------------------------------------------------------------- --------------------------------------------------------------------------- From help@python.org Thu Sep 14 09:38:40 2000 From: help@python.org (Martin von Loewis) Date: Thu, 14 Sep 2000 10:38:40 +0200 (MET DST) Subject: [Python-Help] forwarded message from Michele De La Pena In-Reply-To: <200009132153.RAA20628@enkidu.stsci.edu> (delapena@stsci.edu) References: <200009132153.RAA20628@enkidu.stsci.edu> Message-ID: <200009140838.KAA28807@pandora.informatik.hu-berlin.de> > I will check the items you suggest below, but I you have my help > message confused with someone else's message. My fault, I indeed confused your message with somebody elses. Looking at your original message, I can certainly reproduce the problem you are seeing. Tkinter has not been tested much for 2.0, except that IDLE is based on it - but that does not involve Canvases. It is not really your duty to find the cause of the problem, as it is clearly a Python bug. Since we are in beta testing, it would be quite important to fix it before 2.0 is released. So, if you are willing to investigate and propose a patch, that would be much appreciated. Otherwise, submitting a bug report at http://sourceforge.net/projects/python would be important so that the bug gets known to all contributors. Regards, Martin P.S. I'm especially troubled by the fact that the interpreter crashes, it should not crash under any circumstances, normally. A quick check with gdb shows that it crashes in Solaris' libc.so, specifically in the memory management. It appears that the heap got corrupted. enkidu> 2000 10:38:40 +0200 (MET DST) Received: (from loewis@localhost) by pandora.informatik.hu-berlin.de (8.9.1/8.9.1/SOLARIS-INF-2.0c) id KAA For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114424&group_id=5470 From noreply@sourceforge.net Thu Sep 14 17:55:50 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 09:55:50 -0700 Subject: [Python-bugs-list] [Bug #114318] References to Python 1.5 Message-ID: <200009141655.JAA28101@delerium.i.sourceforge.net> Bug #114318, was updated on 2000-Sep-13 00:39 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Open Resolution: None Bug Group: Not a Bug Priority: 5 Summary: References to Python 1.5 Details: In the documentation, there are references to Python's library path that often use "/usr/local/lib/python1.5" instead of "/usr/local/lib/python2.0". A quick "find" and "grep" shows the following pages: ./api/embedding.html ./api/includes.html ./dist/node13.html ./lib/module-pdb.html ./lib/module-pprint.html ./lib/module-site.html ./lib/profile-instant.html ./lib/typesmodules.html The only one that might be a problem is "./lib/module-site.html", since it mentions Python 2.0b1.1 explicitly and states that its library is installed in "python1.5". For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114318&group_id=5470 From noreply@sourceforge.net Thu Sep 14 17:55:04 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 09:55:04 -0700 Subject: [Python-bugs-list] [Bug #114359] snpplib Message-ID: <200009141655.JAA28083@delerium.i.sourceforge.net> Bug #114359, was updated on 2000-Sep-13 10:43 Here is a current snapshot of the bug. Project: Python Category: Library Status: Closed Resolution: Remind Bug Group: Feature Request Priority: 5 Summary: snpplib Details: I just implemented RFC 1861 -- SNPP for a company, and they are letting me release it Open Source. snpplib.py is based on smtplib.py (very similar protocols) and is in use in a fairly hefty production system at the moment. I know that the Perl folk have snpp support in their net library, so I wanted to offer up mine for the Python distribution. Sorry if this isn't the right forum for that. I've opened a SourceForce project for it called PySNPP, because I have a higher level implementation class as well, but I don't think it's quite as well suited for being in the distribution. The files should be up here on SourceForge by tomorrow. You are more than welcome to snag them if you like. Follow-Ups: Date: 2000-Sep-14 09:55 By: jhylton Comment: We are not adding new libraries to 2.0 at this time. Will reconsider for 2.1. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114359&group_id=5470 From noreply@sourceforge.net Thu Sep 14 17:56:59 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 09:56:59 -0700 Subject: [Python-bugs-list] [Bug #114336] Python-2.0b1 build fails on OpenBSD 2.7 Message-ID: <200009141656.JAA28127@delerium.i.sourceforge.net> Bug #114336, was updated on 2000-Sep-13 05:27 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Python-2.0b1 build fails on OpenBSD 2.7 Details: I did './configure && make', the link failed due to it attempting to link the nonexistant library 'db'. I edited Modules/Setup.config.in and removed ' -ldb' and it compiled ok. Follow-Ups: Date: 2000-Sep-14 01:51 By: jribbens Comment: Post-2.0b1 CVS version compiles OK. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114336&group_id=5470 From noreply@sourceforge.net Thu Sep 14 17:59:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 09:59:42 -0700 Subject: [Python-bugs-list] [Bug #114427] bug with urlencode method from urllib Message-ID: <200009141659.JAA28281@delerium.i.sourceforge.net> Bug #114427, was updated on 2000-Sep-14 06:48 Here is a current snapshot of the bug. Project: Python Category: Library Status: Closed Resolution: Fixed Bug Group: None Priority: 7 Summary: bug with urlencode method from urllib Details: result of encode ',' is ',' but not '%2C' Example >>> import urllib >>> dico={'toto':','} >>> a = urllib.urlencode(dico) >>> a 'toto=,' or I think that it must return 'toto=%2C' Example : >>> import urllib >>> b = urllib.unquote_plus('%2C') >>> print b , r_gesnot@hotmail.com Follow-Ups: Date: 2000-Sep-14 09:44 By: jhylton Comment: Comma is listed in the list of always safe characters, but it shouldn't be. It is a reserved character in the query part of a URL. ------------------------------------------------------- Date: 2000-Sep-14 09:59 By: jhylton Comment: Fixed in revision 1.105 of urllib ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114427&group_id=5470 From noreply@sourceforge.net Thu Sep 14 18:07:18 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 10:07:18 -0700 Subject: [Python-bugs-list] [Bug #114334] glob does not handle set coplementation ([^ ... ]) properly Message-ID: <200009141707.KAA10016@bush.i.sourceforge.net> Bug #114334, was updated on 2000-Sep-13 04:46 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Invalid Bug Group: Not a Bug Priority: 5 Summary: glob does not handle set coplementation ([^ ... ]) properly Details: The glob function in the glob module does not handle the set complementation correctly. Example: glob('*[^C].cc') should return all .cc file that do NOT have a 'C' before the dot. Instead it returns all files that DO have a C before the dot. Python: v 1.5.2 Platform: HP-UX Follow-Ups: Date: 2000-Sep-14 10:07 By: fdrake Comment: This is not a bug. Bash accepts either "!" or "^" as the set-complement character, but ash only accepts "!". sh on FreeBSD also only accepts "!". I think we can safely say that the acceptance of "^" in bash is non-standard behavior, so I'm declaring that this isn't a bug. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114334&group_id=5470 From noreply@sourceforge.net Thu Sep 14 18:10:02 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 10:10:02 -0700 Subject: [Python-bugs-list] [Bug #113779] test_gc coredump on Alpha Message-ID: <200009141710.KAA10164@bush.i.sourceforge.net> Bug #113779, was updated on 2000-Sep-06 21:44 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: test_gc coredump on Alpha Details: Configured --with-cycle-gc --with-sigfpe gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable Segmentation fault (core dumped) gdb reports: Core was generated by `./python -tt Lib/test/regrtest.py -l -v test_gc'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libpthread.so.0...done. Reading symbols from /lib/libdl.so.2.1...done. Reading symbols from /lib/libutil.so.1.1...done. Reading symbols from /lib/libm.so.6.1...done. Reading symbols from /lib/libc.so.6.1...done. Reading symbols from /lib/ld-linux.so.2...done. #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 168 if (!PyList_Check(op)) { (gdb) where #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 #1 0x120085fac in handle_finalizers (finalizers=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:312 #2 0x1200862d8 in collect (young=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:438 #3 0x120086704 in gc_collect (self=0x100000000, args=0x12043d158) at ./gcmodule.c:588 #4 0x120018ef0 in call_builtin (func=0x1, arg=0x12039e258, kw=0x0) at ceval.c:2628 #5 0x120018d30 in PyEval_CallObjectWithKeywords (func=0x1204377c0, arg=0x12039e258, kw=0x0) at ceval.c:2596 #6 0x12001713c in eval_code2 (co=0x12043b890, globals=0x12043d158, locals=0x120370488, args=0xffffffffffffffff, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1929 #7 0x120016cc4 in eval_code2 (co=0x12043c400, globals=0x12043d158, locals=0x120370488, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, ... (gdb) print op $1 = (PyObject *) 0x100000000 (gdb) print newitem $2 = (PyObject *) 0x12043d158 Follow-Ups: Date: 2000-Sep-06 21:49 By: none Comment: Note that without -l to regrtest it does NOT dump core, and completes correctly. ------------------------------------------------------- Date: 2000-Sep-07 08:23 By: bwarsaw Comment: It could just be a bug in the debug printing of collected objects. The -l switch for the regrtest simply adds a call to gc.set_debug(gc.DEBUG_LEAK) before the rest of the tests get going. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:02 By: none Comment: By the way, the original post was made by tomh@po.crl.go.jp, who can test a fix. However, he's out of town until 9/14. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113779&group_id=5470 From noreply@sourceforge.net Thu Sep 14 18:15:52 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 10:15:52 -0700 Subject: [Python-bugs-list] [Bug #114424] Tkinter/Canvas drawing causes interpreter to crash. Message-ID: <200009141715.KAA28952@delerium.i.sourceforge.net> Bug #114424, was updated on 2000-Sep-14 06:32 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 9 Summary: Tkinter/Canvas drawing causes interpreter to crash. Details: 14 September 2000 Please find my original query below with regard to Tkinter and Python2.0beta1. Also find the Python help desk response. I had not mentioned in my original query that I am running on a Sun Ultra 10 with the Solaris 5.5.1 operating system. Best, Michele --------------------------------------------------------------------------- --------------------------------------------------------------------------- 13 September 2000 HI Python Folks, I am trying to evaluate the new "flatten" functionality written for Tkinter to determine if it generates a scientific plot with many data points in a reasonable time. I am using the Python2.0beta1. I should admit to being a bit of a newbie with Python. For this test, I am using some very simple code that is from the "Python and Tkinter Programming" book by John Grayson. I will append the simple program to the bottom of this note. I will mention I did modify the code in the following manner: 1) scaled.append(x,y) to scaled.append((x,y)). 2) commented out some stuff I did not care about 3) added code to be able to generate as many data points as I want for testing If I run the very code attached to this note, I get: enkidu> /usr/local/bin/python2.0 simpleplot2.py Traceback (most recent call last): File "simpleplot2.py", line 39, in ? canvas.create_line(scaled, fill='royalblue') File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1955, in create_line return self._create('line', args, kw) File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1942, in _create (self._w, 'create', itemType) TypeError: can only concatenate tuple (not "dictionary") to tuple Bus error (core dumped) I changed the scaled.append((x,y)) to two lines where I append x and y separately; this got rid of the TypeError, but I still got the core dump. I have done many experiments where I can sometimes get the code to work in interactive mode, but if I decide to draw the line in color, I get a bus error. I can sometimes draw lines with only a few data points, but I bomb on lines with many points. I tell you all of this to find out if Tkinter has been tested for drawing lines and such on a canvas under Python2.0? I am suspicious of either memory problems or newbie problems. I have tried some demos of Tkinter, as well as some GUIs I have made using Tkinter which employ lots of widgets (i.e., scrollbars, text, label, entry) and these seem to work just fine. I am not very experienced with drawing stuff on the canvas. I do not expect you to debug this code for me, but rather to tell me how well Tkinter has been tested under Python2.0. I know you probably have lots o'stuff to do. Best, Michele ------------------------------------------------------------------------- Michele D. De La Pena email: delapena@stsci.edu Senior Scientific Programmer phone: 410-338-4713 Space Telescope Science Institute fax: 410-338-4767 3700 San Martin Drive Baltimore, MD 21218 "The nice thing about standards is there are so many to choose from." ------------------------------------------------------------------------- **************************************************************************** from Tkinter import * root = Tk() root.title('Simple Plot - Version 2') canvas = Canvas(root, width=450, height=300, bg = 'white') canvas.pack() Button(root, text='Quit', command=root.quit).pack() canvas.create_line(100,250,400,250, width=2) canvas.create_line(100,250,100,50, width=2) for i in range(11): x = 100 + (i * 30) canvas.create_line(x,250,x,245, width=2) canvas.create_text(x,254, text='%d'% (10*i), anchor=N) for i in range(6): y = 250 - (i * 40) canvas.create_line(100,y,105,y, width=2) canvas.create_text(96,y, text='%5.1f'% (50.*i), anchor=E) scaled = [] # MDD Added this code to generate potentially lots of data points for i in range(10): x, y = i, i x = x + 100 y = 50 + y scaled.append((x,y)) """ I am not interested in this. scaled = [] for x,y in [(12, 56), (20, 94), (33, 98), (45, 120), (61, 180), (75, 160), (98, 223)]: scaled.append((100 + 3*x, 250 - (4*y)/5)) """ canvas.create_line(scaled, fill='royalblue') """ I am not interested in this. for x,y in scaled: canvas.create_oval(x-6,y-6,x+6,y+6, width=1, outline='black', fill='SkyBlue2') """ root.mainloop() --------------------------------------------------------------------------- --------------------------------------------------------------------------- From help@python.org Thu Sep 14 09:38:40 2000 From: help@python.org (Martin von Loewis) Date: Thu, 14 Sep 2000 10:38:40 +0200 (MET DST) Subject: [Python-Help] forwarded message from Michele De La Pena In-Reply-To: <200009132153.RAA20628@enkidu.stsci.edu> (delapena@stsci.edu) References: <200009132153.RAA20628@enkidu.stsci.edu> Message-ID: <200009140838.KAA28807@pandora.informatik.hu-berlin.de> > I will check the items you suggest below, but I you have my help > message confused with someone else's message. My fault, I indeed confused your message with somebody elses. Looking at your original message, I can certainly reproduce the problem you are seeing. Tkinter has not been tested much for 2.0, except that IDLE is based on it - but that does not involve Canvases. It is not really your duty to find the cause of the problem, as it is clearly a Python bug. Since we are in beta testing, it would be quite important to fix it before 2.0 is released. So, if you are willing to investigate and propose a patch, that would be much appreciated. Otherwise, submitting a bug report at http://sourceforge.net/projects/python would be important so that the bug gets known to all contributors. Regards, Martin P.S. I'm especially troubled by the fact that the interpreter crashes, it should not crash under any circumstances, normally. A quick check with gdb shows that it crashes in Solaris' libc.so, specifically in the memory management. It appears that the heap got corrupted. enkidu> 2000 10:38:40 +0200 (MET DST) Received: (from loewis@localhost) by pandora.informatik.hu-berlin.de (8.9.1/8.9.1/SOLARIS-INF-2.0c) id KAA Follow-Ups: Date: 2000-Sep-14 10:15 By: loewis Comment: This is fixed with patch http://sourceforge.net/patch/?func=detailpatch&patch_id=101509&group_id=5470 ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114424&group_id=5470 From noreply@sourceforge.net Thu Sep 14 18:28:51 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 10:28:51 -0700 Subject: [Python-bugs-list] [Bug #114336] Python-2.0b1 build fails on OpenBSD 2.7 Message-ID: <200009141728.KAA29503@delerium.i.sourceforge.net> Bug #114336, was updated on 2000-Sep-13 05:27 Here is a current snapshot of the bug. Project: Python Category: Build Status: Closed Resolution: None Bug Group: None Priority: 5 Summary: Python-2.0b1 build fails on OpenBSD 2.7 Details: I did './configure && make', the link failed due to it attempting to link the nonexistant library 'db'. I edited Modules/Setup.config.in and removed ' -ldb' and it compiled ok. Follow-Ups: Date: 2000-Sep-14 01:51 By: jribbens Comment: Post-2.0b1 CVS version compiles OK. ------------------------------------------------------- Date: 2000-Sep-14 10:28 By: montanaro Comment: fixed in the latest cvs version ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114336&group_id=5470 From noreply@sourceforge.net Thu Sep 14 18:51:05 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 10:51:05 -0700 Subject: [Python-bugs-list] [Bug #114293] Unexpected Evaluation of Expressions from Pickle Message-ID: <200009141751.KAA11856@bush.i.sourceforge.net> Bug #114293, was updated on 2000-Sep-12 15:23 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Unexpected Evaluation of Expressions from Pickle Details: It is possible to evaluate an expression through an improperly formatted pickled string: >>> import pickle >>> pickle.loads("S3+3\012p0\012.") 6 The same expression in "cPickle" will raise an exception: >>> import cPickle >>> cPickle.loads("S3+3\012p0\012.") Traceback (most recent call last): File "", line 1, in ? ValueError: insecure string pickle The reason this occurs is that the string is brought into existence through a call to "eval". This is made somewhat safe by removing all the built-in functions, but it is still possible to cause problems with a pure evaluation. I will submit a patch within a few minutes that makes sure that the first character is either a single- or double-quote. Would it be possible for someone to slip a code object instead of an expression? Since we don't have access to the "marshal" module from here, I don't know how it would be done, but I am very concerned about the security implications of using pickle. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114293&group_id=5470 From noreply@sourceforge.net Thu Sep 14 19:38:52 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 11:38:52 -0700 Subject: [Python-bugs-list] [Bug #113779] test_gc coredump on Alpha Message-ID: <200009141838.LAA13889@bush.i.sourceforge.net> Bug #113779, was updated on 2000-Sep-06 21:44 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: test_gc coredump on Alpha Details: Configured --with-cycle-gc --with-sigfpe gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: collectable gc: uncollectable gc: uncollectable Segmentation fault (core dumped) gdb reports: Core was generated by `./python -tt Lib/test/regrtest.py -l -v test_gc'. Program terminated with signal 11, Segmentation fault. Reading symbols from /lib/libdb.so.3...done. Reading symbols from /lib/libpthread.so.0...done. Reading symbols from /lib/libdl.so.2.1...done. Reading symbols from /lib/libutil.so.1.1...done. Reading symbols from /lib/libm.so.6.1...done. Reading symbols from /lib/libc.so.6.1...done. Reading symbols from /lib/ld-linux.so.2...done. #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 168 if (!PyList_Check(op)) { (gdb) where #0 0x12004ec54 in PyList_Append (op=0x100000000, newitem=0x12043d158) at listobject.c:168 #1 0x120085fac in handle_finalizers (finalizers=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:312 #2 0x1200862d8 in collect (young=0x11fffe0b0, old=0x12037c7a0) at ./gcmodule.c:438 #3 0x120086704 in gc_collect (self=0x100000000, args=0x12043d158) at ./gcmodule.c:588 #4 0x120018ef0 in call_builtin (func=0x1, arg=0x12039e258, kw=0x0) at ceval.c:2628 #5 0x120018d30 in PyEval_CallObjectWithKeywords (func=0x1204377c0, arg=0x12039e258, kw=0x0) at ceval.c:2596 #6 0x12001713c in eval_code2 (co=0x12043b890, globals=0x12043d158, locals=0x120370488, args=0xffffffffffffffff, argcount=0, kws=0x0, kwcount=0, defs=0x0, defcount=0, owner=0x0) at ceval.c:1929 #7 0x120016cc4 in eval_code2 (co=0x12043c400, globals=0x12043d158, locals=0x120370488, args=0x0, argcount=0, kws=0x0, kwcount=0, defs=0x0, ... (gdb) print op $1 = (PyObject *) 0x100000000 (gdb) print newitem $2 = (PyObject *) 0x12043d158 Follow-Ups: Date: 2000-Sep-06 21:49 By: none Comment: Note that without -l to regrtest it does NOT dump core, and completes correctly. ------------------------------------------------------- Date: 2000-Sep-07 08:23 By: bwarsaw Comment: It could just be a bug in the debug printing of collected objects. The -l switch for the regrtest simply adds a call to gc.set_debug(gc.DEBUG_LEAK) before the rest of the tests get going. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:02 By: none Comment: By the way, the original post was made by tomh@po.crl.go.jp, who can test a fix. However, he's out of town until 9/14. ------------------------------------------------------- Date: 2000-Sep-14 11:38 By: nascheme Comment: The output from "print *op" and "print *newitem" would have been useful. The 0x100000000 pointer looks funny. It is a really pointer or NULL or what? If its not a real pointer then somehow the uncollectable garbage list was corrupted or was not initialized. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113779&group_id=5470 From noreply@sourceforge.net Thu Sep 14 21:18:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 13:18:22 -0700 Subject: [Python-bugs-list] [Bug #113800] optional{} produces incorrect HTML Message-ID: <200009142018.NAA17835@bush.i.sourceforge.net> Bug #113800, was updated on 2000-Sep-07 08:18 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: None Priority: 3 Summary: optional{} produces incorrect HTML Details: This showed up in the Python 2.0 document: LaTeX2HTML produces bad HTML with improperly nested tags, including a trailing tag that leaves the rest of the document in italic on some browsers. Sample document: \documentclass{howto} \title{What's New in Python 2.0} \release{0.05} \author{A.M. Kuchling and Moshe Zadka} \authoraddress{\email{amk1@bigfoot.com}, \email{moshez@math.huji.ac.il} } \begin{document} \code{unicode(\var{string} \optional{, \var{encoding}} \optional{, \var{errors}} ) } creates a Unicode string from an 8-bit \end{document} The incorrect HTML output is: unicode(string [, encoding][, errors] ) creates ... Follow-Ups: Date: 2000-Sep-08 01:49 By: aleax Comment: bug 113700 is a consequence of this, I think. ------------------------------------------------------- Date: 2000-Sep-08 13:25 By: fdrake Comment: This is a limitation of the current support for the augmented markup we use with LaTeX2HTML. The \optional mark is used in two contexts: - inside parameter lists for function, method, and constructor signatures, where it does the right thing, and - just anywhere something should be marked as optional. The second case is where the problem is. As far as I can tell, there's no way to determine the context to allow \optional to be implemented correctly in both cases. If I find a way around this, I will fix it, but the priority is low since we intend to move to an XML-based approach at some point. The difference in context is that, in a signature in the *desc environments, the VAR element is opened and closed by the handler for the *desc environment, but this is not the case elsewhere. The VAR is closed and then re-opened around the brackets used to enclose the content of the \optional mark so that the brackets are not shown in an italic font. Bug 113700 is indeed a direct consequence of this. ------------------------------------------------------- Date: 2000-Sep-14 13:18 By: fdrake Comment: Fixed in Doc/perl/python.perl revision 1.84. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113800&group_id=5470 From noreply@sourceforge.net Thu Sep 14 21:19:24 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 13:19:24 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009142019.NAA03334@delerium.i.sourceforge.net> Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 8 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- Date: 2000-Sep-07 14:41 By: jhylton Comment: If you set the GC threshold to 0, import gc gc.set_threshold(0) Do you get the same problem? Not that I doubt there is some sort of gc problem, but I wonder if there is something going wrong in the accounting or in the collection. How hard would it be for someone to try to reproduce this bug? Obviously, it would be helpful to get a smaller test case that has the same behavior as your large program and also tickles the bug. Do you have any C extension modules in your application or is it pure Python? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:33 By: edg Comment: The code is 100% pure Python. When I set the threshold to 0, the problem doesn't occur. The problem is probably very hard to reproduce by anyone else. The slightest change in the input data for my application can make the problem go away. Even running an optimized instead of a debug version of the interpreter can make a difference. I'm certainly going to try to strip it down, but that won't be easy (the same application, using other input data, running 6 times as long, runs just fine). ------------------------------------------------------- Date: 2000-Sep-11 07:48 By: edg Comment: After 2 full days of debugging, I think that I finally found the cause for the gc problems. To keep a (very) long story short, what I found out was the following: - Crashes were due to objects that were destructed twice. - Endless loops were due to messed-up gc generation lists. The lists should always remain perfectly circular, but sometimes they ended up like this: list <-> ... <-> X <-> ... <-> ... -> X No wonder that the gc code could easily get stuck; even turning on gc debugging caused the counting code to run in circles forever. The multiple-destruction problem is almost certainly caused by lists being messed up. By turning on the debugging code in gc_list_remove and reducing the gc threshold to a very small value, I could trigger the crash more reliably, which allowed me to strip down my 80000 line application to this: ----------------------------------------------------------------------------- # # Note: to trigger a crash reliably, the debugging code in gc_list_remove # _must_ be turned on. # import gc gc.set_threshold(1) class Node: def __del__(self): dir(self) a = Node() del a # -> Crash ----------------------------------------------------------------------------- You wonder: can it be that simple ? :-) This is what happens when the Node instance `a' is destructed: 1) The Node instance is removed from the gc lists. 2) An instance method is created due to the call of the __del__ method. THAT METHOD CREATES A NEW REFERENCE TO THE INSTANCE ! 3) The code in the __del__ method triggers the allocation of new objects and because the gc threshold has been set very low, it also triggers a gc run. 4) During the gc run, the instance method is encountered and its reachable objects are visited. 5) Since the instance is referenced by the method, the gc code tries to move the instance to another list, while it was no longer present in any list -> BINGO Obviously, the reason why this problem was so hard to reproduce, is the fact that most classes don't have a __del__ method, and the problem only occurs when a gc run happens during the execution of a __del__ method. It think the fix is as simple as this (I'm not too confident, but it seems to work): ------------------------------------------------------------------------------ *** Objects/classobject.c.orig Mon Sep 11 15:55:03 2000 --- Objects/classobject.c Mon Sep 11 16:12:26 2000 *************** *** 490,496 **** #ifdef Py_TRACE_REFS extern long _Py_RefTotal; #endif - PyObject_GC_Fini(inst); /* Call the __del__ method if it exists. First temporarily revive the object and save the current exception, if any. */ #ifdef Py_TRACE_REFS --- 490,495 ---- *************** *** 523,529 **** #ifdef COUNT_ALLOCS inst->ob_type->tp_free--; #endif - PyObject_GC_Init((PyObject *)inst); return; /* __del__ added a reference; don't delete now */ } #ifdef Py_TRACE_REFS --- 522,527 ---- *************** *** 537,542 **** --- 535,541 ---- #endif /* Py_TRACE_REFS */ Py_DECREF(inst->in_class); Py_XDECREF(inst->in_dict); + PyObject_GC_Fini(inst); inst = (PyInstanceObject *) PyObject_AS_GC(inst); PyObject_DEL(inst); } ------------------------------------------------------------------------------ ie, delay the removal from the gc list till everything has stabilized. I hope this helps. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Thu Sep 14 21:34:21 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 13:34:21 -0700 Subject: [Python-bugs-list] [Bug #110692] urllib.URLopener does not work with proxies (PR#67) Message-ID: <200009142034.NAA18511@bush.i.sourceforge.net> Bug #110692, was updated on 2000-Jul-31 14:15 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: urllib.URLopener does not work with proxies (PR#67) Details: Jitterbug-Id: 67 Submitted-By: andrew@fc.hp.com Date: Thu, 26 Aug 1999 16:20:02 -0400 (EDT) Version: 1.5.1 OS: When using urllib.URLopener(proxy) (instead of setting _PROXY env variables and calling urllib.openurl(), you get the following error message: File "./watchdog.py", line 118, in main url.open(urltocheck) File "/usr/lib/python1.5/urllib.py", line 158, in open return getattr(self, name)(url) File "/usr/lib/python1.5/urllib.py", line 258, in open_http return addinfourl(fp, headers, "http:" + url) TypeError: illegal argument type for built-in operation When using explicti proxies, url is a tuple instead of a string. You can't concatanate a tuple to a string, so the operation fails. ==================================================================== Audit trail: Mon Aug 30 12:40:45 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-05 13:27 By: loewis Comment: This is likely incorrect usage of the module. The proxy argument must be a dictionary mapping strings of protocol names to strings of URLs. ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 13:34 By: fdrake Comment: Assigned to Jeremy since he's more familiar with this module. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110692&group_id=5470 From noreply@sourceforge.net Thu Sep 14 21:30:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 13:30:58 -0700 Subject: [Python-bugs-list] [Bug #114318] References to Python 1.5 Message-ID: <200009142030.NAA18348@bush.i.sourceforge.net> Bug #114318, was updated on 2000-Sep-13 00:39 Here is a current snapshot of the bug. Project: Python Category: Documentation Status: Closed Resolution: Fixed Bug Group: Not a Bug Priority: 5 Summary: References to Python 1.5 Details: In the documentation, there are references to Python's library path that often use "/usr/local/lib/python1.5" instead of "/usr/local/lib/python2.0". A quick "find" and "grep" shows the following pages: ./api/embedding.html ./api/includes.html ./dist/node13.html ./lib/module-pdb.html ./lib/module-pprint.html ./lib/module-site.html ./lib/profile-instant.html ./lib/typesmodules.html The only one that might be a problem is "./lib/module-site.html", since it mentions Python 2.0b1.1 explicitly and states that its library is installed in "python1.5". Follow-Ups: Date: 2000-Sep-14 13:30 By: fdrake Comment: The markup has been extended so that we have a mark for the "short" flavor of the version number. I've modified the documents to use it where needed and possible. Note that material in {verbatim} environments still don't use this, as macros are not expanded in that context. To avoid changing those with each release, I'm going to leave those as they are; I don't think that will hurt, though it does seem less than ideal. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114318&group_id=5470 From noreply@sourceforge.net Thu Sep 14 22:33:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 14:33:38 -0700 Subject: [Python-bugs-list] [Bug #114424] Tkinter/Canvas drawing causes interpreter to crash. Message-ID: <200009142133.OAA20679@bush.i.sourceforge.net> Bug #114424, was updated on 2000-Sep-14 06:32 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Open Resolution: None Bug Group: None Priority: 9 Summary: Tkinter/Canvas drawing causes interpreter to crash. Details: 14 September 2000 Please find my original query below with regard to Tkinter and Python2.0beta1. Also find the Python help desk response. I had not mentioned in my original query that I am running on a Sun Ultra 10 with the Solaris 5.5.1 operating system. Best, Michele --------------------------------------------------------------------------- --------------------------------------------------------------------------- 13 September 2000 HI Python Folks, I am trying to evaluate the new "flatten" functionality written for Tkinter to determine if it generates a scientific plot with many data points in a reasonable time. I am using the Python2.0beta1. I should admit to being a bit of a newbie with Python. For this test, I am using some very simple code that is from the "Python and Tkinter Programming" book by John Grayson. I will append the simple program to the bottom of this note. I will mention I did modify the code in the following manner: 1) scaled.append(x,y) to scaled.append((x,y)). 2) commented out some stuff I did not care about 3) added code to be able to generate as many data points as I want for testing If I run the very code attached to this note, I get: enkidu> /usr/local/bin/python2.0 simpleplot2.py Traceback (most recent call last): File "simpleplot2.py", line 39, in ? canvas.create_line(scaled, fill='royalblue') File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1955, in create_line return self._create('line', args, kw) File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1942, in _create (self._w, 'create', itemType) TypeError: can only concatenate tuple (not "dictionary") to tuple Bus error (core dumped) I changed the scaled.append((x,y)) to two lines where I append x and y separately; this got rid of the TypeError, but I still got the core dump. I have done many experiments where I can sometimes get the code to work in interactive mode, but if I decide to draw the line in color, I get a bus error. I can sometimes draw lines with only a few data points, but I bomb on lines with many points. I tell you all of this to find out if Tkinter has been tested for drawing lines and such on a canvas under Python2.0? I am suspicious of either memory problems or newbie problems. I have tried some demos of Tkinter, as well as some GUIs I have made using Tkinter which employ lots of widgets (i.e., scrollbars, text, label, entry) and these seem to work just fine. I am not very experienced with drawing stuff on the canvas. I do not expect you to debug this code for me, but rather to tell me how well Tkinter has been tested under Python2.0. I know you probably have lots o'stuff to do. Best, Michele ------------------------------------------------------------------------- Michele D. De La Pena email: delapena@stsci.edu Senior Scientific Programmer phone: 410-338-4713 Space Telescope Science Institute fax: 410-338-4767 3700 San Martin Drive Baltimore, MD 21218 "The nice thing about standards is there are so many to choose from." ------------------------------------------------------------------------- **************************************************************************** from Tkinter import * root = Tk() root.title('Simple Plot - Version 2') canvas = Canvas(root, width=450, height=300, bg = 'white') canvas.pack() Button(root, text='Quit', command=root.quit).pack() canvas.create_line(100,250,400,250, width=2) canvas.create_line(100,250,100,50, width=2) for i in range(11): x = 100 + (i * 30) canvas.create_line(x,250,x,245, width=2) canvas.create_text(x,254, text='%d'% (10*i), anchor=N) for i in range(6): y = 250 - (i * 40) canvas.create_line(100,y,105,y, width=2) canvas.create_text(96,y, text='%5.1f'% (50.*i), anchor=E) scaled = [] # MDD Added this code to generate potentially lots of data points for i in range(10): x, y = i, i x = x + 100 y = 50 + y scaled.append((x,y)) """ I am not interested in this. scaled = [] for x,y in [(12, 56), (20, 94), (33, 98), (45, 120), (61, 180), (75, 160), (98, 223)]: scaled.append((100 + 3*x, 250 - (4*y)/5)) """ canvas.create_line(scaled, fill='royalblue') """ I am not interested in this. for x,y in scaled: canvas.create_oval(x-6,y-6,x+6,y+6, width=1, outline='black', fill='SkyBlue2') """ root.mainloop() --------------------------------------------------------------------------- --------------------------------------------------------------------------- From help@python.org Thu Sep 14 09:38:40 2000 From: help@python.org (Martin von Loewis) Date: Thu, 14 Sep 2000 10:38:40 +0200 (MET DST) Subject: [Python-Help] forwarded message from Michele De La Pena In-Reply-To: <200009132153.RAA20628@enkidu.stsci.edu> (delapena@stsci.edu) References: <200009132153.RAA20628@enkidu.stsci.edu> Message-ID: <200009140838.KAA28807@pandora.informatik.hu-berlin.de> > I will check the items you suggest below, but I you have my help > message confused with someone else's message. My fault, I indeed confused your message with somebody elses. Looking at your original message, I can certainly reproduce the problem you are seeing. Tkinter has not been tested much for 2.0, except that IDLE is based on it - but that does not involve Canvases. It is not really your duty to find the cause of the problem, as it is clearly a Python bug. Since we are in beta testing, it would be quite important to fix it before 2.0 is released. So, if you are willing to investigate and propose a patch, that would be much appreciated. Otherwise, submitting a bug report at http://sourceforge.net/projects/python would be important so that the bug gets known to all contributors. Regards, Martin P.S. I'm especially troubled by the fact that the interpreter crashes, it should not crash under any circumstances, normally. A quick check with gdb shows that it crashes in Solaris' libc.so, specifically in the memory management. It appears that the heap got corrupted. enkidu> 2000 10:38:40 +0200 (MET DST) Received: (from loewis@localhost) by pandora.informatik.hu-berlin.de (8.9.1/8.9.1/SOLARIS-INF-2.0c) id KAA Follow-Ups: Date: 2000-Sep-14 10:15 By: loewis Comment: This is fixed with patch http://sourceforge.net/patch/?func=detailpatch&patch_id=101509&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-14 14:33 By: effbot Comment: go ahead and check it in! ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114424&group_id=5470 From noreply@sourceforge.net Fri Sep 15 05:16:27 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 21:16:27 -0700 Subject: [Python-bugs-list] [Bug #110619] urllib.py fails with username/password proxies (PR#221) Message-ID: <200009150416.VAA02762@bush.i.sourceforge.net> Bug #110619, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: Later Bug Group: Feature Request Priority: 3 Summary: urllib.py fails with username/password proxies (PR#221) Details: Jitterbug-Id: 221 Submitted-By: tarka@zip.com.au Date: Tue, 29 Feb 2000 19:15:45 -0500 (EST) Version: 1.5.2 OS: Irix urllib.py fails to handle proxies with user and password information included in the proxy URL, e.g. http://ssmith:testpass@10.11.12.13:1234 The following example ... import os, urllib os.environ['http_proxy'] = "http://ssmith:testpass01@10.11.12.13:1234" f = urllib.urlopen('http://www.python.org') data = f.read() print data fails with the following errors : Traceback (innermost last): File "url.py", line 3, in ? f = urllib.urlopen('http://www.python.org') File "/var/share//lib/python1.5/urllib.py", line 59, in urlopen return _urlopener.open(url) File "/var/share//lib/python1.5/urllib.py", line 157, in open return getattr(self, name)(url) File "/var/share//lib/python1.5/urllib.py", line 253, in open_http h = httplib.HTTP(host) File "/var/share//lib/python1.5/httplib.py", line 51, in __init__ if host: self.connect(host, port) File "/var/share//lib/python1.5/httplib.py", line 75, in connect raise socket.error, "nonnumeric port" IOError: [Errno socket error] nonnumeric port ==================================================================== Audit trail: Mon May 22 17:35:04 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-31 10:15 By: fdrake Comment: Will be documented as a limitation in the implementation, as suggested in bug #111725. I'm converting this to a feature request that can be dealt with in a subsequent version of Python. ------------------------------------------------------- Date: 2000-Sep-07 15:04 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-13 03:17 By: gvanrossum Comment: Fred, please document this limitation, add this to the feature-requests PEP (to be created), and then close the bug. ------------------------------------------------------- Date: 2000-Sep-14 21:16 By: fdrake Comment: This limitation was already documented, but I've added a note that should be easier to find for people looking for limitations. Also fixed typo from existing note. This is checked in as Doc/lib/liburllib.tex revision 1.29. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110619&group_id=5470 From noreply@sourceforge.net Fri Sep 15 05:33:59 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 21:33:59 -0700 Subject: [Python-bugs-list] [Bug #110618] IDLE: Modifying argv prevents source of ~/.idle.py (PR#219) Message-ID: <200009150433.VAA03322@bush.i.sourceforge.net> Bug #110618, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Closed Resolution: Fixed Bug Group: None Priority: 3 Summary: IDLE: Modifying argv prevents source of ~/.idle.py (PR#219) Details: Jitterbug-Id: 219 Submitted-By: aa8vb@yahoo.com Date: Mon, 28 Feb 2000 07:49:55 -0500 (EST) Version: 1.5.2 OS: IRIX 6.5.6f (Two problems leading up to allowing IDLE to read color settings from ~/.idle.py. They're separate problems so I'll put each in separate bug reports.) As Bernhard Herzog recently pointed out, Tkinter apps try to load ..tcl, ..py, ..tcl and ..py out of a user's home directory, if present. defaults to "Tk" and defaults to the base of argv[0] (e.g. "idle"). With these reasonable defaults, one would expect they could create a ~/.idle.py which IDLE would read for configuration info. However, Tkinter "won't" try to read ~/.idle.py unless -e is specified. This is because IDLE is hacking up sys.argv for some reason when -e isn't specified, which results in sys.argv[0] being empty, which prevents baseName from being set, which in turn causes Tkinter to look for these files: ~/.Tk.tcl ~/.Tk.py ~/..tcl ~/..py instead of: ~/.Tk.tcl ~/.Tk.py ~/.idle.tcl ~/.idle.py Seeing this, I verified that IDLE does indeed read ~/.idle.py when invoked as "idle.py -e". This appears to be a bug. If so, please update IDLE so that argv[0] is left unadulterated at least until Tkinter is initialized, so that it can read ~/..py for configuration. Also, it might be worthwhile to set the className (argument to Tk()) to "Idle" or "IDLE" so an IDLE configuration file can be created which will be executed independent of what the idle script itself is named. ==================================================================== Audit trail: Tue Mar 07 14:38:27 2000 guido changed notes Tue Mar 07 14:38:27 2000 guido changed notification Tue Mar 07 14:38:27 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 21:33 By: fdrake Comment: This is fixed in Tools/idle/PyShell.py revision 1.30. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110618&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:23:53 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:23:53 -0700 Subject: [Python-bugs-list] [Bug #110607] Telnet close (PR#181) Message-ID: <200009150523.WAA22568@delerium.i.sourceforge.net> Bug #110607, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Telnet close (PR#181) Details: Jitterbug-Id: 181 Submitted-By: cha@tandberg.no Date: Wed, 12 Jan 2000 09:49:29 -0500 (EST) Version: 1.5.2 OS: Windows NT4.0 The telnet.close() object does not close the telnet session. Session will only be closed after a timeout on the remote side. ==================================================================== Audit trail: Wed Jan 12 18:29:38 2000 guido changed notes Wed Jan 12 18:29:38 2000 guido changed notification Wed Jan 12 18:29:38 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-23 18:50 By: montanaro Comment: Replied to the submitter asking for a short script that fails. I don't run Windows so I may not be able to track this down. ------------------------------------------------------- Date: 2000-Sep-04 07:54 By: montanaro Comment: Never did get any response from the submitter. This was apparently originally submitted back in January. I'm simply going to bounce this back to Tim since he at least runs Windows... ------------------------------------------------------- Date: 2000-Sep-14 22:23 By: tim_one Comment: Assigned to Guido, cause it looks like telnetlib.py may be his code, he also has Windows, and-- unlike me --may actually know of a machine he can telnet *to* (I've never used this stuff, & the BeOpen machines don't telnet for me). The .close() method certainly appears to be closing the underlying socket. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110607&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:27:12 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:27:12 -0700 Subject: [Python-bugs-list] [Bug #110663] getpass() echo password input (PR#359) Message-ID: <200009150527.WAA22712@delerium.i.sourceforge.net> Bug #110663, was updated on 2000-Jul-31 14:11 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Invalid Bug Group: Not a Bug Priority: 2 Summary: getpass() echo password input (PR#359) Details: Jitterbug-Id: 359 Submitted-By: harishbk@inf.com Date: Fri, 16 Jun 2000 03:46:58 -0400 (EDT) Version: 1.5.2 OS: OSF1 version 4.0f code: #! /usr/local/bin/python import getpass pas=getpass.getpass() when it is run password : harish it is echoing password input. How can we avoid echoing it. ==================================================================== Audit trail: Tue Jul 11 08:26:01 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: "M.-A. Lemburg" Subject: Re: [Python-bugs-list] getpass() echo password input (PR#359) Date: Fri, 16 Jun 2000 10:03:55 +0200 harishbk@inf.com wrote: > > Full_Name: harish > Version: 1.5.2 > OS: OSF1 version 4.0f > Submission from: (NULL) (202.54.39.82) > > code: > > #! /usr/local/bin/python > > import getpass > pas=getpass.getpass() > > when it is run > password : harish > > it is echoing password input. How can we avoid echoing it. You will need to compile Python with termios support enabled to have getpass() turn off echoing. (Edit Modules/Setup and rerun 'make install'.) -- Marc-Andre Lemburg ______________________________________________________________________ Business: http://www.lemburg.com/ Python Pages: http://www.lemburg.com/python/ ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110663&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:29:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:29:22 -0700 Subject: [Python-bugs-list] [Bug #110617] IDLE and -t (PR#213) Message-ID: <200009150529.WAA22759@delerium.i.sourceforge.net> Bug #110617, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 3 Summary: IDLE and -t (PR#213) Details: Jitterbug-Id: 213 Submitted-By: aa8vb@yahoo.com Date: Fri, 25 Feb 2000 07:36:01 -0500 (EST) Version: 1.5.2 (w/ IDLE 0.5) OS: IRIX Since no other X app I know of works this way, I think this is a bug. If you set the title of the IDLE window: idle.py -t IDLE the title is set correctly, but the icon name is not. It is set to "*IDLE" rather than "IDLE". ==================================================================== Audit trail: Tue Mar 07 14:41:55 2000 guido changed notes Tue Mar 07 14:41:55 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Fri, 25 Feb 2000 08:26:32 -0500 > Since no other X app I know of works this way, I think this is a bug. > > If you set the title of the IDLE window: > > idle.py -t IDLE > > the title is set correctly, but the icon name is not. > It is set to "*IDLE" rather than "IDLE". Not a bug -- IDLE adds * before (and after!) the window title and icon name to indicate that the window is modified and unsaved. Does this bother you in some way? --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 28 Feb 2000 07:25:31 -0500 Guido van Rossum: |> Since no other X app I know of works this way, I think this is a bug. |> |> If you set the title of the IDLE window: |> |> idle.py -t IDLE |> |> the title is set correctly, but the icon name is not. |> It is set to "*IDLE" rather than "IDLE". | |Not a bug -- IDLE adds * before (and after!) the window title and |icon name to indicate that the window is modified and unsaved. The icon name doesn't follow this convention: if not self.get_saved(): title = "*%s*" % title icon = "*%s" % icon The reason I took note of this inconsistency is that I was assigning a window manager icon to IDLE based on the startup icon string. |Does this bother you in some way? Well, no other X app I know of communicates unsaved status by putting '*'s in the title and icon, but I don't have a big problem with it. I do think the icon should have a '*' both before "and after", as you described though. I'm guessing this was just a typo. Thanks, Randall -- Randall Hopper aa8vb@yahoo.com ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 28 Feb 2000 08:16:48 -0500 > |Not a bug -- IDLE adds * before (and after!) the window title and > |icon name to indicate that the window is modified and unsaved. > > The icon name doesn't follow this convention: > > if not self.get_saved(): > title = "*%s*" % title > icon = "*%s" % icon > > The reason I took note of this inconsistency is that I was assigning a > window manager icon to IDLE based on the startup icon string. > > |Does this bother you in some way? > > Well, no other X app I know of communicates unsaved status by putting '*'s > in the title and icon, but I don't have a big problem with it. Hm, I have to admit that I have given up years ago on configuring X apps through their app name. Is that still a common practice? I could certainly change things around so that the title and icon are always "idle: *file*" or "idle: file" depending on saved status. > I do think the icon should have a '*' both before "and after", as you > described though. I'm guessing this was just a typo. I think it was intentional, trying to save some space in the icon label. Not worth it, probably. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Tue, 29 Feb 2000 14:26:37 -0500 --oyUTqETQ0mS9luUI Content-Type: text/plain; charset=us-ascii Guido van Rossum: |Hm, I have to admit that I have given up years ago on configuring X |apps through their app name. Is that still a common practice? I could Definitely. Most all (all?) use WM_CLASS, and many use WM_NAME and WM_ICONNAME as fallbacks. This is useful if WM_CLASS isn't set to a useful value (as in this case). IDLE doesn't set a class name property on it's window, so the window name and icon name are all the window manager has to go on when matching it up with configuration settings. However, I believe IDLE could set a class name easily by passing it to Tkinter -- e.g. root = Tk( className="IDLE" ). See attached. More info: the properties used by many window managers as a key into a configuration database are: CLASS, NAME, and ICON_NAME. For example, running 'xprop' on my xterm window here: > xprop ... WM_CLASS(STRING) = "xterm-color", "XTerm" ... WM_ICON_NAME(STRING) = "Local" WM_NAME(STRING) = "Local" So I can set window manager resources for this window using "XTerm", "xterm-color", or "Local" -- with overrides in that order I believe. So I can have a default icon for xterms, and then an override icon for xterm windows with a certain title. IDLE doesn't set CLASS so it's basically useless for this configuration purpose. On stock IDLE: WM_CLASS(STRING) = "270515832", "Toplevel" |certainly change things around so that the title and icon are always "idle: |*file*" or "idle: file" depending on saved status. If IDLE could set WM_CLASS to a static (or cmd-line-specified) value on it's shell windows, that'd be enough for me. For now I'm using -t IDLE, but that doesn't cover opening new windows inside of IDLE (opening files, File->New Window, etc.) A unique prefix on the WM_NAME (title string) would work too. |> I do think the icon should have a '*' both before "and after", as you |> described though. I'm guessing this was just a typo. | |I think it was intentional, trying to save some space in the icon |label. Not worth it, probably. Thanks, Randall -- Randall Hopper aa8vb@yahoo.com --oyUTqETQ0mS9luUI Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="tk.py" from Tkinter import * root = Tk( className="Test" ) btn = Button( root ) btn.pack() root.mainloop() --oyUTqETQ0mS9luUI-- ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Wed, 01 Mar 2000 09:21:41 -0500 Randall, Thanks for your enlightenment. I looked at your example, and it works; but I need more, because IDLE creates windows using Toplevel(), not using Tk(). (Using Tk() would create a new Tcl interpreter for each window, which wastes time and memory resources, and re-reads the ~/..py file each time.) I've experimented with xprop a bit, and I'm not getting results I like. If I write root = Tk(className="foo"), WM_CLASS is "foo", "Foo". Them if I write top = Toplevel(root), WM_CLASS for that window is "1234567", "Toplevel". If I try top = Toplevel(root, name="bar"), I get "bar", "Toplevel". Shouldn't I be able to set the second component of WM_CLASS somehow? Got any ideas? If you can send me a patch, that would be greatly appreciated! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 6 Mar 2000 08:50:29 -0500 --MGYHOYXEY6WxJCY8 Content-Type: text/plain; charset=us-ascii Guido van Rossum: |Thanks for your enlightenment. I looked at your example, and it |works; but I need more, because IDLE creates windows using Toplevel(), |not using Tk(). (Using Tk() would create a new Tcl interpreter for |each window, which wastes time and memory resources, and re-reads the |~/..py file each time.) | |I've experimented with xprop a bit, and I'm not getting results I |like. If I write root = Tk(className="foo"), WM_CLASS is "foo", |"Foo". Them if I write top = Toplevel(root), WM_CLASS for that window |is "1234567", "Toplevel". If I try top = Toplevel(root, name="bar"), |I get "bar", "Toplevel". Shouldn't I be able to set the second |component of WM_CLASS somehow? | |Got any ideas? Sorry about that last message. This issue is very closely related to the resource loading issue on idle-dev, but not the same. Once the small change below is in-place (to solve this problem), the platform-independent Tkinter methods for resource loading can be used to solve the idle-dev problem, if desired. Research indicates that the Tk-ism for setting Toplevel classes is: "toplevel .mytop -class classname" So the Tkinter syntax is: top1 = Toplevel( root, class_=classname ) The attached test app demonstrates this. I verified that I am able to set X resources for these windows using the class name "Idle". -- Randall Hopper aa8vb@yahoo.com --MGYHOYXEY6WxJCY8 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="tk_class.py" from Tkinter import * CLASSNAME = "Idle" root = Tk( className=CLASSNAME ) root.wm_withdraw() # A toplevel with a WM_CLASS top1 = Toplevel( root, class_=CLASSNAME ) label1 = Label( top1, text="Toplevel 1" ) label1.pack() # Another one top2 = Toplevel( root, class_=CLASSNAME ) label2 = Label( top2, text="Toplevel 2" ) label2.pack() root.mainloop() --MGYHOYXEY6WxJCY8-- ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 06 Mar 2000 09:11:30 -0500 > Sorry about that last message. This issue is very closely related to the > resource loading issue on idle-dev, but not the same. Once the small > change below is in-place (to solve this problem), the platform-independent > Tkinter methods for resource loading can be used to solve the idle-dev > problem, if desired. See my response in idle-dev :-) Of course the Tk options can still be used for changing things that the config file or prefs dialog doesn't support. > Research indicates that the Tk-ism for setting Toplevel classes is: > > "toplevel .mytop -class classname" > > So the Tkinter syntax is: > > top1 = Toplevel( root, class_=classname ) > > The attached test app demonstrates this. I verified that I am able to set > X resources for these windows using the class name "Idle". OK, I'll try to support this! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:29 By: tim_one Comment: Assigned to Guido for obvious reasons. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110617&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:33:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:33:25 -0700 Subject: [Python-bugs-list] [Bug #110598] Fwd: Debian Bug#46993: py_compile.compile() won't compile files with CR+LF line endings (PR#101) Message-ID: <200009150533.WAA22895@delerium.i.sourceforge.net> Bug #110598, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Open Resolution: None Bug Group: None Priority: 5 Summary: Fwd: Debian Bug#46993: py_compile.compile() won't compile files with CR+LF line endings (PR#101) Details: Jitterbug-Id: 101 Submitted-By: flight@mathi.uni-heidelberg.de Date: Mon, 11 Oct 1999 15:10:37 +0200 Version: 1.5.2 OS: Debian GNU/Linux potato [This was recorded as Debian bug#46993, cf. http://www.debian.org/Bugs/db/46/46993.html] Package: python-base Version: 1.5.2-6 Severity: normal On Unix systems, py_compile.compile() (and therefore compileall.py) won't compile files with DOS/Windows lineendings (CR+LF). Commands like "import" or "exec" will work, though. The problem seems to be that py_compile.compile read()'s the whole file at once and passes it as a string to __builtin__.compile(), while "import" calls __builtin__.compile() for a file, so that __builtin__.compile seems to do some magic while reading the file. For a quick testcase: import __builtin__ f=open("test.py","w") f.write('print "Hello"\015\012') f.close() f=open("test.py") c=f.read() f.close() __builtin__.compile(c,"test.py","exec") results in: Traceback (innermost last): File "", line 1, in ? File "", line 9, in x File "", line 1 print "Hello" ^ SyntaxError: invalid syntax while "import test" works fine and results in test.pyc. Certainly the file.read() in py_compile.compile() isn't good enough for this case. Gregor ==================================================================== Audit trail: Mon Oct 11 18:12:13 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-30 23:28 By: mhammond Comment: Sorry, but I dont feel able to resolve this in time for 2.0 beta or final, so giving back to Jeremy to punt back off. If post 2.0 is OK, give it on back! ------------------------------------------------------- Date: 2000-Sep-05 14:42 By: loewis Comment: Fixed in 101425, see http://sourceforge.net/patch/?func=detailpatch&patch_id=101425&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-14 22:33 By: tim_one Comment: Assigned back to Martin. I see that the patch in question has been Accepted, so please change this bug to Fixed and Closed after you commit the patch and Close it. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110598&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:44:22 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:44:22 -0700 Subject: [Python-bugs-list] [Bug #110647] Segmentation violation on very long lists (PR#334) Message-ID: <200009150544.WAA05594@bush.i.sourceforge.net> Bug #110647, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Closed Resolution: Fixed Bug Group: None Priority: 3 Summary: Segmentation violation on very long lists (PR#334) Details: Jitterbug-Id: 334 Submitted-By: haase@media.mit.edu Date: Sat, 20 May 2000 20:08:00 -0400 (EDT) Version: Both Python 1.5.2 and 1.6a2 OS: SUSE Linux Loading a .py file which attempts to define a very long list causes a segmentation violation. An example file can be found at ftp:/pub/haase/todo.py, but I expect that most any long file defining a long list (20K elements) would do. Thanks, Ken Haase ==================================================================== Audit trail: Mon May 22 17:08:11 2000 guido changed notes Mon May 22 17:08:11 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:10 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] Segmentation violation on very long lists (PR#334) Date: Sun, 21 May 2000 12:12:22 -0700 > Loading a .py file which attempts to define a very long list causes > a segmentation violation. An example file can be found at > ftp:/pub/haase/todo.py, but I expect that most any long file defining a long > list (20K elements) would do. Thanks -- this is a known problem, it probably has to do with bytecode field overflow (offsets are signed shorts). --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Aug-01 15:54 By: jhylton Comment: Currently raises SyntaxError. A better fix is in progress. ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:44 By: tim_one Comment: Marked as closed and fixed, but without running your test case (the FTP address you gave doesn't make sense -- at least not on *my* machine ). I generated a 50,000-element list with this program instead: f = open("k.py", "w") print >> f, "biglist = [" for i in range(50000): print >> f, i, "," print >> f, "]" print >> f, "print len(biglist)" f.close() and Python 2.0b1 compiles and executes the resulting k.py without incident. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110647&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:50:58 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:50:58 -0700 Subject: [Python-bugs-list] [Bug #110706] gcc error msg, 1.5.2, Slackware + threads (PR#44) Message-ID: <200009150550.WAA05856@bush.i.sourceforge.net> Bug #110706, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: gcc error msg, 1.5.2, Slackware + threads (PR#44) Details: Jitterbug-Id: 44 Submitted-By: rene@kronos.szabinet.hu Date: Sun, 1 Aug 1999 16:39:42 -0400 (EDT) Version: 1.5.2 OS: Linux Compile error with Python-1.5.2 on Linux Slackware 4.0, kernel 2.2.10-ac8, gcc 2.7.2.3, make 3.76.1 ./configure --prefix=/usr/local --with-threads && make ... ./socketmodule.c: In function `setipaddr': ./socketmodule.c:392: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type ./socketmodule.c:392: too many arguments to function `gethostbyname_r' ./socketmodule.c:392: warning: assignment makes integer from pointer without a cast ./socketmodule.c: In function `PySocket_gethostbyname_ex': ./socketmodule.c:1471: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type ./socketmodule.c:1471: too many arguments to function `gethostbyname_r' ./socketmodule.c:1471: warning: assignment makes integer from pointer without a cast ./socketmodule.c: In function `PySocket_gethostbyaddr': ./socketmodule.c:1534: warning: passing arg 7 of `gethostbyaddr_r' from incompatible pointer type ./socketmodule.c:1534: too many arguments to function `gethostbyaddr_r' ./socketmodule.c:1534: warning: assignment makes integer from pointer without a cast make[1]: *** [socketmodule.o] Error 1 make: *** [Modules] Error 2 ==================================================================== Audit trail: Wed Aug 04 12:12:39 1999 guido moved from incoming to platformbug Mon Aug 30 12:37:34 1999 guido changed notes Mon Oct 25 15:15:46 1999 guido changed notes Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:50 By: tim_one Comment: Assigned to Fred for the heck of it. Changed the "Summary" msg as the original "Compiler error" gave me an entirely wrong impression. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110706&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:52:54 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:52:54 -0700 Subject: [Python-bugs-list] [Bug #110849] Fwd: Debian Bug#42318: urllib.py has problems with malformed proxy env. variables (PR#59) Message-ID: <200009150552.WAA05892@bush.i.sourceforge.net> Bug #110849, was updated on 2000-Aug-01 14:16 Here is a current snapshot of the bug. Project: Python Category: None Status: Open Resolution: None Bug Group: Feature Request Priority: 5 Summary: Fwd: Debian Bug#42318: urllib.py has problems with malformed proxy env. variables (PR#59) Details: Jitterbug-Id: 59 Submitted-By: flight@debian.org Date: Fri, 20 Aug 1999 13:40:04 -0400 (EDT) Version: 1.5.2 OS: Debian potato Summary: Python's urllib expects a fully qualified URL in HTTP_PROXY (like "http://proxy:8080/"). Many applications allow short forms in HTTP_PROXY (like "proxy:8080"). If HTTP_PROXY is set to a short form, urllib.py will fail with an uncomprehensible error message. Long form: Francesco Potorti` says (in the Debian bug report http://www.debian.org/Bugs/db/42/42318.html): "when setting a proxy variable that is not parsed by urllib, urllib does not print a comprehensible error message." An example: Short form HTTP_PROXY: master% HTTP_PROXY="proxy.cnr.it:8081" \ python -c 'import urllib; print urllib.urlretrieve("http://www.olemiss.edu/")' Traceback (innermost last): File "", line 1, in ? File "/usr/lib/python1.5/urllib.py", line 69, in urlretrieve return _urlopener.retrieve(url) File "/usr/lib/python1.5/urllib.py", line 186, in retrieve fp = self.open(url) File "/usr/lib/python1.5/urllib.py", line 154, in open return self.open_unknown(fullurl) File "/usr/lib/python1.5/urllib.py", line 168, in open_unknown raise IOError, ('url error', 'unknown url type', type) IOError: ('url error', 'unknown url type', 'http') Fully qualified URL in HTTP_PROXY: master% HTTP_PROXY="http://proxy.cnr.it:8081" \ python -c 'import urllib; print urllib.urlretrieve("http://www.olemiss.edu/")' ('/tmp/@15884.1', ) ==================================================================== Audit trail: Mon Aug 30 12:35:03 1999 guido moved from incoming to request Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:52 By: tim_one Comment: Assigned to Barry because I think of him as being the Potato Man. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110849&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:54:33 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:54:33 -0700 Subject: [Python-bugs-list] [Bug #110660] IDLE-0.5 ctrl-F5 (PR#355) Message-ID: <200009150554.WAA05994@bush.i.sourceforge.net> Bug #110660, was updated on 2000-Jul-31 14:11 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 3 Summary: IDLE-0.5 ctrl-F5 (PR#355) Details: Jitterbug-Id: 355 Submitted-By: gpk@bell-labs.com Date: Tue, 13 Jun 2000 11:30:14 -0400 (EDT) Version: yesterday's CVS OS: Solaris 2.6 If you type ctrl-f5 to run a script twice in sucession, IDLE will incorrectly pop up a window saying "Not Saved. Please Save First." If you save (even though you haven't changed anything, and even though there are no asterisks around the window title), then ctrl-f5 will work again. This *doesn't* happen if you run the script twice in succession from the menu. ==================================================================== Audit trail: Tue Jul 11 08:26:00 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 13 Jun 2000 11:55:09 -0400 Pretty mysterious! Doesn't happen under IDLE 0.5 for me. Running under Windows, but darned hard to see why that would matter. Can anyone else try this under Solaris 2.6? May have something to do with the specific script you're running, Greg; e.g., does it happen if the script file contains just print "Hi!" ? > -----Original Message----- > From: python-bugs-list-admin@python.org > [mailto:python-bugs-list-admin@python.org]On Behalf Of gpk@bell-labs.com > Sent: Tuesday, June 13, 2000 11:30 AM > To: python-bugs-list@python.org > Cc: bugs-py@python.org > Subject: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) > > > Full_Name: Greg Kochanski > Version: yesterday's CVS > OS: Solaris 2.6 > Submission from: h-135-104-33-130.research.bell-labs.com (135.104.33.130) > > > If you type ctrl-f5 to run a script twice in sucession, > IDLE will incorrectly pop up a window saying > "Not Saved. Please Save First." > > If you save (even though you haven't changed anything, > and even though there are no asterisks around the window > title), then ctrl-f5 will work again. > > This *doesn't* happen if you run the script twice in > succession from the menu. > > > > _______________________________________________ > Python-bugs-list maillist - Python-bugs-list@python.org > http://www.python.org/mailman/listinfo/python-bugs-list > ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 16:42:57 -0500 I think I understand this. It's happened to me too. Pressing ^F5 changes the focus to the PyShell window. Pressing ^F5 again then indeed complains about that window being unsaved. --Guido van Rossum (home page: http://www.python.org/~guido/) [Tim] > Pretty mysterious! Doesn't happen under IDLE 0.5 for me. Running under > Windows, but darned hard to see why that would matter. Can anyone else try > this under Solaris 2.6? May have something to do with the specific script > you're running, Greg; e.g., does it happen if the script file contains just > > print "Hi!" > > ? > > > -----Original Message----- > > From: python-bugs-list-admin@python.org > > [mailto:python-bugs-list-admin@python.org]On Behalf Of gpk@bell-labs.com > > Sent: Tuesday, June 13, 2000 11:30 AM > > To: python-bugs-list@python.org > > Cc: bugs-py@python.org > > Subject: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) > > > > > > Full_Name: Greg Kochanski > > Version: yesterday's CVS > > OS: Solaris 2.6 > > Submission from: h-135-104-33-130.research.bell-labs.com (135.104.33.130) > > > > > > If you type ctrl-f5 to run a script twice in sucession, > > IDLE will incorrectly pop up a window saying > > "Not Saved. Please Save First." > > > > If you save (even though you haven't changed anything, > > and even though there are no asterisks around the window > > title), then ctrl-f5 will work again. > > > > This *doesn't* happen if you run the script twice in > > succession from the menu. > > > > > > > > _______________________________________________ > > Python-bugs-list maillist - Python-bugs-list@python.org > > http://www.python.org/mailman/listinfo/python-bugs-list > > > > > > _______________________________________________ > Python-bugs-list maillist - Python-bugs-list@python.org > http://www.python.org/mailman/listinfo/python-bugs-list ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Greg Kochanski Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 17:25:37 -0400 Guido van Rossum wrote: > > I think I understand this. It's happened to me too. Pressing ^F5 > changes the focus to the PyShell window. Pressing ^F5 again then > indeed complains about that window being unsaved. > > --Guido van Rossum (home page: http://www.python.org/~guido/) Ah. Sure enough. Perhaps the best thing to do is just to have the little error message explain which window is unsaved. Include the title of the unsaved window in the error box, maybe. I'd be happy to send a patch, but the paperwork would be terrible... ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 18:10:35 -0500 > > I think I understand this. It's happened to me too. Pressing ^F5 > > changes the focus to the PyShell window. Pressing ^F5 again then > > indeed complains about that window being unsaved. > > > > --Guido van Rossum (home page: http://www.python.org/~guido/) > > Ah. Sure enough. Perhaps the best thing to do > is just to have the little error message explain > which window is unsaved. Include the title > of the unsaved window in the error box, maybe. > > I'd be happy to send a patch, but the paperwork > would be terrible... No need for paperwork, just the disclaimer text. But I think the better patch would be to make PyShell a special case and make it rerun the last window that had the focus. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:54 By: tim_one Comment: Assigned to Guido. Guido, know whether he ever mailed you a patch? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110660&group_id=5470 From noreply@sourceforge.net Fri Sep 15 06:58:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 22:58:45 -0700 Subject: [Python-bugs-list] [Bug #110857] it don't make (PR#269) Message-ID: <200009150558.WAA06041@bush.i.sourceforge.net> Bug #110857, was updated on 2000-Aug-01 14:38 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Irreproducible Priority: 3 Summary: it don't make (PR#269) Details: Jitterbug-Id: 269 Submitted-By: mitch.harris@usa.net Date: Mon, 3 Apr 2000 13:29:25 -0400 (EDT) Version: 1.6 OS: sun 5.6 First time I tried to install Python. /usr2/t_mitchh/python/Python-1.6a1>version Machine hardware: sun4u OS version: 5.6 Processor type: sparc Hardware: SUNW,Ultra-1 The following components are installed on your system: Sun Visual WorkShop C++ 3.0 Sun WorkShop Compiler C 4.2 Sun WorkShop Compiler C++ 4.2 Sun WorkShop Tools.h++ 7.0 Sun WorkShop Tools.h++ 6.0.4 Sun WorkShop Visual 2.0 Sun WorkShop IPE 4.0 Sun WorkShop CodeManager 2.0 Sun WorkShop Distributed Make 2.0 Sun WorkShop FileMerge 3.0 Sun WorkShop FreezePoint 2.0 Sun WorkShop Maketool 2.0 Sun WorkShop VersionTool 2.0 Sun WorkShop Dbx 4.0 Sun WorkShop Performance Analyzer 4.0 Sun WorkShop LoopTool 2.1 Sun WorkShop LockLint 2.1 Sun WorkShop Thread Analyzer 1.2 Sun WorkShop XEmacs 20.00 /usr2/t_mitchh/python/Python-1.6a1>./configure creating cache ./config.cache checking MACHDEP... sunos5 checking for --without-gcc... no checking for --with-cxx=... no checking for gcc... gcc checking whether the C compiler (gcc ) works... yes checking whether the C compiler (gcc ) is a cross-compiler... no checking whether we are using GNU C... yes checking whether gcc accepts -g... yes checking LINKCC... $(PURIFY) $(CC) checking LDLIBRARY... checking for ranlib... ranlib checking for ar... ar checking how to run the C preprocessor... gcc -E checking for AIX... no checking for minix/config.h... no checking whether gcc accepts -OPT:Olimit=0... no checking whether gcc accepts -Olimit 1500... no checking for C preprocessor type... ansi checking for ANSI C header files... yes checking for dlfcn.h... yes checking for fcntl.h... yes checking for limits.h... yes checking for locale.h... yes checking for ncurses.h... no checking for pthread.h... yes checking for signal.h... yes checking for stdarg.h... yes checking for stddef.h... yes checking for stdlib.h... yes checking for thread.h... yes checking for unistd.h... yes checking for utime.h... yes checking for sys/audioio.h... yes checking for sys/file.h... no checking for sys/lock.h... yes checking for sys/param.h... no checking for sys/select.h... yes checking for sys/time.h... yes checking for sys/times.h... yes checking for sys/un.h... yes checking for sys/utsname.h... yes checking for sys/wait.h... yes checking for dirent.h that defines DIR... yes checking for opendir in -ldir... no checking for clock_t in time.h... yes checking for mode_t... yes checking for off_t... yes checking for pid_t... yes checking return type of signal handlers... void checking for size_t... yes checking for uid_t in sys/types.h... yes checking size of int... 4 checking size of long... 4 checking size of void *... 4 checking size of char... 1 checking size of short... 2 checking size of float... 4 checking size of double... 8 checking for long long support... yes checking size of long long... 8 checking size of off_t... 4 checking whether to enable large file support... no checking for --with-next-framework... no checking for --with-dyld... no checking SO... .so checking LDSHARED... ld -G checking CCSHARED... checking LINKFORSHARED... checking for dlopen in -ldl... yes checking for shl_load in -ldld... no checking for t_open in -lnsl... yes checking for socket in -lsocket... yes checking for socket in -lnet... no checking for --with-libs... no checking for --with(out)-readline... not specified. checking for --with-dec-threads... no checking for --with-threads... no checking for --with-thread... no checking for --with-sgi-dl... no checking for --with-dl-dld... no checking for dlopen... yes checking DYNLOADFILE... dynload_shlib.o checking for alarm... yes checking for chown... yes checking for clock... yes checking for confstr... yes checking for ctermid... yes checking for ctermid_r... yes checking for dlopen... (cached) yes checking for execv... yes checking for flock... no checking for fork... yes checking for fsync... yes checking for fdatasync... no checking for fpathconf... yes checking for ftime... yes checking for ftruncate... yes checking for getgroups... yes checking for getlogin... yes checking for getpeername... yes checking for getpgrp... yes checking for getpid... yes checking for getpwent... yes checking for gettimeofday... yes checking for getwd... yes checking for kill... yes checking for link... yes checking for lstat... yes checking for mkfifo... yes checking for mktime... yes checking for nice... yes checking for pathconf... yes checking for pause... yes checking for plock... yes checking for pthread_init... no checking for putenv... yes checking for readlink... yes checking for select... yes checking for setgid... yes checking for setlocale... yes checking for setuid... yes checking for setsid... yes checking for setpgid... yes checking for setpgrp... yes checking for setvbuf... yes checking for sigaction... yes checking for siginterrupt... yes checking for sigrelse... yes checking for strftime... yes checking for strptime... yes checking for symlink... yes checking for sysconf... yes checking for tcgetpgrp... yes checking for tcsetpgrp... yes checking for tempnam... yes checking for timegm... no checking for times... yes checking for tmpfile... yes checking for tmpnam... yes checking for tmpnam_r... yes checking for truncate... yes checking for uname... yes checking for waitpid... yes checking for fseek64... no checking for fseeko... yes checking for fstatvfs... yes checking for ftell64... no checking for ftello... yes checking for statvfs... yes checking for dup2... yes checking for getcwd... yes checking for strdup... yes checking for strerror... yes checking for memmove... yes checking for getpgrp... (cached) yes checking for setpgrp... (cached) yes checking for gettimeofday... (cached) yes checking whether time.h and sys/time.h may both be included... yes checking whether struct tm is in sys/time.h or time.h... time.h checking for tm_zone in struct tm... no checking for tzname... yes checking for time.h that defines altzone... yes checking whether sys/select.h and sys/time.h may both be included... yes checking whether char is unsigned... no checking for working const... yes checking for inline... inline checking for working volatile... yes checking for working signed char... yes checking for prototypes... yes checking for variable length prototypes and stdarg.h... yes checking for bad exec* prototypes... no checking for bad static forward... no checking whether va_list is an array... no checking for gethostbyname_r... yes checking gethostbyname_r with 6 args... no checking gethostbyname_r with 5 args... no checking gethostbyname_r with 3 args... no checking for __fpu_control in -lieee... no checking for --with-fpectl... no checking for --with-libm=STRING... default LIBM="-lm" checking for --with-libc=STRING... default LIBC="" checking for hypot... yes checking for hypot... (cached) yes checking for genuine getopt... yes checking what malloc(0) returns... nonnull checking for wchar.h... yes checking for usable wchar_t... no checking whether byte ordering is bigendian... yes checking for --with-wctype-functions... no updating cache ./config.cache creating ./config.status creating Makefile creating Objects/Makefile creating Parser/Makefile creating Python/Makefile creating Modules/Makefile.pre creating Modules/Setup.thread creating config.h /usr2/t_mitchh/python/Python-1.6a1/Modules>make gcc -g -O2 -I./../Include -I.. -DHAVE_CONFIG_H -c ./posixmodule.c In file included from ./posixmodule.c:3194: /usr/include/sys/statvfs.h:38: parse error before `fsblkcnt_t' /usr/include/sys/statvfs.h:38: warning: no semicolon at end of struct or union /usr/include/sys/statvfs.h:39: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:40: parse error before `f_bavail' /usr/include/sys/statvfs.h:40: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:41: parse error before `f_files' /usr/include/sys/statvfs.h:41: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:42: parse error before `f_ffree' /usr/include/sys/statvfs.h:42: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:43: parse error before `f_favail' /usr/include/sys/statvfs.h:43: warning: data definition has no type or storage class /usr/include/sys/statvfs.h:51: parse error before `}' /usr/include/sys/statvfs.h:51: warning: data definition has no type or storage class ./posixmodule.c: In function `posix_fstatvfs': ./posixmodule.c:3207: storage size of `st' isn't known ./posixmodule.c: In function `posix_statvfs': ./posixmodule.c:3259: storage size of `st' isn't known make: *** [posixmodule.o] Error 1 I tried this #if defined(HAVE_FSTATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) #if defined(HAVE_STATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx) #ifdef HAVE_FSTATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx #ifdef HAVE_STATVFSxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx and got this /prj/qed2/local//lib/gcc-lib/sparc-sun-solaris2.5/2.7.2.1/include/sys/param.h:187: warning: `NBBY' r /usr/include/sys/select.h:45: warning: this is the location of the previous definition In file included from /usr/include/sys/stream.h:26, from /usr/include/netinet/in.h:38, from /usr/include/netdb.h:96, from ./socketmodule.c:163: /usr/include/sys/model.h:32: #error "No DATAMODEL_NATIVE specified" make[1]: *** [socketmodule.o] Error 1 make[1]: Leaving directory `/usr2/t_mitchh/python/Python-1.6a1/Modules' make: *** [Modules] Error 2 ==================================================================== Audit trail: Mon May 22 17:44:30 2000 guido changed notes Mon May 22 17:44:30 2000 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:38 By: none Comment: Sun's compiler sucks? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:58 By: tim_one Comment: Changed Category to Build, and assigned to Jeremy at random. I don't know why the Group is set to Irreproducible. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110857&group_id=5470 From noreply@sourceforge.net Fri Sep 15 07:03:34 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 23:03:34 -0700 Subject: [Python-bugs-list] [Bug #113693] freeze modulefinder broken Message-ID: <200009150603.XAA06205@bush.i.sourceforge.net> Bug #113693, was updated on 2000-Sep-06 05:09 Here is a current snapshot of the bug. Project: Python Category: demos and tools Status: Open Resolution: None Bug Group: None Priority: 5 Summary: freeze modulefinder broken Details: The following one-liner script can not be frozen: import string The traceback is included below. Line number are from revision 1.13 of modulefinder.py. The problem appears to be related to recent changes to the import bytecodes Traceback (most recent call last): File "d:\python\tools\freeze\freeze.py", line 457, in ? main() File "d:\python\tools\freeze\freeze.py", line 321, in main mf.import_hook(mod) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 303, in scan_code self.scan_code(c, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 289, in scan_code assert lastname is not None AssertionError Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 05:10 By: jackjansen Comment: The problem is that the code expects IMPORT_NAME immedeately followed by a sequence of IMPORT_FROMs. That has changed now that IMPORT_FROM puts the result on the stack. A fix that appears to work for me is to set lastname to None only on POP_TOP instructions. But I'll leave doing the actual fix to someone more knowledgeable than me on the code that from x import y can generate. ------------------------------------------------------- Date: 2000-Sep-14 23:03 By: tim_one Comment: Changed to Category "demos and tools" and assigned to Guido because I bet he'd simply enjoy fixing this one (think of it as a chance to work on Python, Guido!). ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113693&group_id=5470 From noreply@sourceforge.net Fri Sep 15 07:08:38 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 23:08:38 -0700 Subject: [Python-bugs-list] [Bug #113773] Python 2.0b1 selectmodule compile error under Redhat 5.2 Message-ID: <200009150608.XAA06355@bush.i.sourceforge.net> Bug #113773, was updated on 2000-Sep-06 18:26 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 7 Summary: Python 2.0b1 selectmodule compile error under Redhat 5.2 Details: Environment: Redhat 5.2 running the gcc compiler that comes with the distribution (gcc 2.7.2.3). 'make' failed when compiling selectmodule.c ('./configure' ran ok)because the following constants were undefined: POLLRDNORM, POLLRDBAND, POLLWRBAND The /usr/include/sys/poll.h file does not contain these constants. Under Redhat 6.2 the constants are defined in the /usr/include/bits/poll.h file (which is not present in the Redhat 5.2 distribution). I used the Redhat 6.2 poll.h file and the selectmodule compiled (under Redhat 5.2) but got the following error when running 'make test' (it looks like it might be related to the compile problem): test test_poll crashed -- select.error: (9, 'Bad file descriptor') 1 test failed: test_poll Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 23:08 By: tim_one Comment: Boosted the priority and assigned to Fred. Don't know what you can do about an older Redhat build problem, and it's not clear that the test failure isn't simply due to mixing files across OS releases. I'm inclined to blame it on the OS. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113773&group_id=5470 From noreply@sourceforge.net Fri Sep 15 07:09:32 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 23:09:32 -0700 Subject: [Python-bugs-list] [Bug #113773] Python 2.0b1 selectmodule compile error under Redhat 5.2 Message-ID: <200009150609.XAA06454@bush.i.sourceforge.net> Bug #113773, was updated on 2000-Sep-06 18:26 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: None Bug Group: Platform-specific Priority: 7 Summary: Python 2.0b1 selectmodule compile error under Redhat 5.2 Details: Environment: Redhat 5.2 running the gcc compiler that comes with the distribution (gcc 2.7.2.3). 'make' failed when compiling selectmodule.c ('./configure' ran ok)because the following constants were undefined: POLLRDNORM, POLLRDBAND, POLLWRBAND The /usr/include/sys/poll.h file does not contain these constants. Under Redhat 6.2 the constants are defined in the /usr/include/bits/poll.h file (which is not present in the Redhat 5.2 distribution). I used the Redhat 6.2 poll.h file and the selectmodule compiled (under Redhat 5.2) but got the following error when running 'make test' (it looks like it might be related to the compile problem): test test_poll crashed -- select.error: (9, 'Bad file descriptor') 1 test failed: test_poll Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 23:08 By: tim_one Comment: Boosted the priority and assigned to Fred. Don't know what you can do about an older Redhat build problem, and it's not clear that the test failure isn't simply due to mixing files across OS releases. I'm inclined to blame it on the OS. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113773&group_id=5470 From noreply@sourceforge.net Fri Sep 15 07:13:56 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 23:13:56 -0700 Subject: [Python-bugs-list] [Bug #113795] IDLE 0.6 with Python 2.0b1 doesn't handle chinese characters Message-ID: <200009150613.XAA06522@bush.i.sourceforge.net> Bug #113795, was updated on 2000-Sep-07 06:49 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Open Resolution: None Bug Group: None Priority: 7 Summary: IDLE 0.6 with Python 2.0b1 doesn't handle chinese characters Details: I just switched from 1.5.2 to 2.0b1 on W2K/Simplified Chinese version. I used to be able to input chinese characters directly into IDLE, and access violations did happen quite often. Now with 2.0b1, I can't even input chinese characters into the IDLE window anymore:IDLE automatically changed chinese characters into illegible stuff; it's the same when I copy from a text editor and paste into the IDLE window. I guess it's related to the induction of unicode support in 2.0, but is there a workaround I should know, or I should switch back to 1.5.2, or it's a bug worth fixing? Thanks. Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 23:13 By: tim_one Comment: Assigned to Fredrik, because Swedes have an uncanny intuition about how IDLE and Tk work in the presence of characters I can't get at <0.9 wink>. Boosted the priority because it sounds like a legit practical problem. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113795&group_id=5470 From noreply@sourceforge.net Fri Sep 15 07:25:07 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 23:25:07 -0700 Subject: [Python-bugs-list] [Bug #114245] utime can not accept directory under NT Message-ID: <200009150625.XAA06898@bush.i.sourceforge.net> Bug #114245, was updated on 2000-Sep-12 06:36 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: utime can not accept directory under NT Details: Whenever supply a directory to utime path parameter, exception raised. The problem is MS C run time library utime function only works on files, but not directories. To fix this bug, MS utime has to be replaced by some function that works with directory. Follow-Ups: Date: 2000-Sep-13 15:49 By: gangli59 Comment: I submitted a patch that uses win32 api instead MSC run time library ------------------------------------------------------- Date: 2000-Sep-14 23:25 By: tim_one Comment: Changed to Category "Modules". ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114245&group_id=5470 From noreply@sourceforge.net Fri Sep 15 07:43:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 23:43:25 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009150643.XAA25206@delerium.i.sourceforge.net> Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 8 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- Date: 2000-Sep-07 14:41 By: jhylton Comment: If you set the GC threshold to 0, import gc gc.set_threshold(0) Do you get the same problem? Not that I doubt there is some sort of gc problem, but I wonder if there is something going wrong in the accounting or in the collection. How hard would it be for someone to try to reproduce this bug? Obviously, it would be helpful to get a smaller test case that has the same behavior as your large program and also tickles the bug. Do you have any C extension modules in your application or is it pure Python? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:33 By: edg Comment: The code is 100% pure Python. When I set the threshold to 0, the problem doesn't occur. The problem is probably very hard to reproduce by anyone else. The slightest change in the input data for my application can make the problem go away. Even running an optimized instead of a debug version of the interpreter can make a difference. I'm certainly going to try to strip it down, but that won't be easy (the same application, using other input data, running 6 times as long, runs just fine). ------------------------------------------------------- Date: 2000-Sep-11 07:48 By: edg Comment: After 2 full days of debugging, I think that I finally found the cause for the gc problems. To keep a (very) long story short, what I found out was the following: - Crashes were due to objects that were destructed twice. - Endless loops were due to messed-up gc generation lists. The lists should always remain perfectly circular, but sometimes they ended up like this: list <-> ... <-> X <-> ... <-> ... -> X No wonder that the gc code could easily get stuck; even turning on gc debugging caused the counting code to run in circles forever. The multiple-destruction problem is almost certainly caused by lists being messed up. By turning on the debugging code in gc_list_remove and reducing the gc threshold to a very small value, I could trigger the crash more reliably, which allowed me to strip down my 80000 line application to this: ----------------------------------------------------------------------------- # # Note: to trigger a crash reliably, the debugging code in gc_list_remove # _must_ be turned on. # import gc gc.set_threshold(1) class Node: def __del__(self): dir(self) a = Node() del a # -> Crash ----------------------------------------------------------------------------- You wonder: can it be that simple ? :-) This is what happens when the Node instance `a' is destructed: 1) The Node instance is removed from the gc lists. 2) An instance method is created due to the call of the __del__ method. THAT METHOD CREATES A NEW REFERENCE TO THE INSTANCE ! 3) The code in the __del__ method triggers the allocation of new objects and because the gc threshold has been set very low, it also triggers a gc run. 4) During the gc run, the instance method is encountered and its reachable objects are visited. 5) Since the instance is referenced by the method, the gc code tries to move the instance to another list, while it was no longer present in any list -> BINGO Obviously, the reason why this problem was so hard to reproduce, is the fact that most classes don't have a __del__ method, and the problem only occurs when a gc run happens during the execution of a __del__ method. It think the fix is as simple as this (I'm not too confident, but it seems to work): ------------------------------------------------------------------------------ *** Objects/classobject.c.orig Mon Sep 11 15:55:03 2000 --- Objects/classobject.c Mon Sep 11 16:12:26 2000 *************** *** 490,496 **** #ifdef Py_TRACE_REFS extern long _Py_RefTotal; #endif - PyObject_GC_Fini(inst); /* Call the __del__ method if it exists. First temporarily revive the object and save the current exception, if any. */ #ifdef Py_TRACE_REFS --- 490,495 ---- *************** *** 523,529 **** #ifdef COUNT_ALLOCS inst->ob_type->tp_free--; #endif - PyObject_GC_Init((PyObject *)inst); return; /* __del__ added a reference; don't delete now */ } #ifdef Py_TRACE_REFS --- 522,527 ---- *************** *** 537,542 **** --- 535,541 ---- #endif /* Py_TRACE_REFS */ Py_DECREF(inst->in_class); Py_XDECREF(inst->in_dict); + PyObject_GC_Fini(inst); inst = (PyInstanceObject *) PyObject_AS_GC(inst); PyObject_DEL(inst); } ------------------------------------------------------------------------------ ie, delay the removal from the gc list till everything has stabilized. I hope this helps. ------------------------------------------------------- Date: 2000-Sep-14 23:43 By: nascheme Comment: Your analysis looks correct. Great work. I think there is a small problem with your fix however. You should call PyObject_GC_Fini() before the DECREFs on in_class and in_dict. If, for some reason, decrementing the reference counts of these object causes a garbage collection then the instance could still be on the gc lists and have an invalid in_class or in_dict pointer. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Fri Sep 15 07:59:16 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Thu, 14 Sep 2000 23:59:16 -0700 Subject: [Python-bugs-list] [Bug #110598] Fwd: Debian Bug#46993: py_compile.compile() won't compile files with CR+LF line endings (PR#101) Message-ID: <200009150659.XAA25685@delerium.i.sourceforge.net> Bug #110598, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Parser/Compiler Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: Fwd: Debian Bug#46993: py_compile.compile() won't compile files with CR+LF line endings (PR#101) Details: Jitterbug-Id: 101 Submitted-By: flight@mathi.uni-heidelberg.de Date: Mon, 11 Oct 1999 15:10:37 +0200 Version: 1.5.2 OS: Debian GNU/Linux potato [This was recorded as Debian bug#46993, cf. http://www.debian.org/Bugs/db/46/46993.html] Package: python-base Version: 1.5.2-6 Severity: normal On Unix systems, py_compile.compile() (and therefore compileall.py) won't compile files with DOS/Windows lineendings (CR+LF). Commands like "import" or "exec" will work, though. The problem seems to be that py_compile.compile read()'s the whole file at once and passes it as a string to __builtin__.compile(), while "import" calls __builtin__.compile() for a file, so that __builtin__.compile seems to do some magic while reading the file. For a quick testcase: import __builtin__ f=open("test.py","w") f.write('print "Hello"\015\012') f.close() f=open("test.py") c=f.read() f.close() __builtin__.compile(c,"test.py","exec") results in: Traceback (innermost last): File "", line 1, in ? File "", line 9, in x File "", line 1 print "Hello" ^ SyntaxError: invalid syntax while "import test" works fine and results in test.pyc. Certainly the file.read() in py_compile.compile() isn't good enough for this case. Gregor ==================================================================== Audit trail: Mon Oct 11 18:12:13 1999 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-30 23:28 By: mhammond Comment: Sorry, but I dont feel able to resolve this in time for 2.0 beta or final, so giving back to Jeremy to punt back off. If post 2.0 is OK, give it on back! ------------------------------------------------------- Date: 2000-Sep-05 14:42 By: loewis Comment: Fixed in 101425, see http://sourceforge.net/patch/?func=detailpatch&patch_id=101425&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-14 22:33 By: tim_one Comment: Assigned back to Martin. I see that the patch in question has been Accepted, so please change this bug to Fixed and Closed after you commit the patch and Close it. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110598&group_id=5470 From noreply@sourceforge.net Fri Sep 15 08:03:28 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 00:03:28 -0700 Subject: [Python-bugs-list] [Bug #113894] os.listdir(driveletter + ":") flawed on Win32 Message-ID: <200009150703.AAA08086@bush.i.sourceforge.net> Bug #113894, was updated on 2000-Sep-08 08:55 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: Fixed Bug Group: Platform-specific Priority: 7 Summary: os.listdir(driveletter + ":") flawed on Win32 Details: On windows NT the os.listdir() function doesn't correctly handle paths containing a drive specification, but no other directory spec. It incorrectly references the root directory on the specified drive rather than the current directory. For example these two calls should return the same thing (the actual output has been slightly trimmed): >>> import os >>> os.listdir('c:') ['3DCube', 'Acrobat3', 'ADOBEAPP', ...] >>> os.listdir('c:.') ['Capture', 'Catalog', ...] The same problem shows up in os.glob, for example os.glob('d:*.py') will expand to all .py files in the root of drive d rather than the current directory. One possible fix is that in posixmodule.c, function posix_listdir, the lines: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); should read: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\' && namebuf[len-1] != ':') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); Follow-Ups: Date: 2000-Sep-12 06:19 By: gangli59 Comment: The bug show in glob.glob('d:*.py') is due to os.path.join joins 'd:', '*.py' to 'd:\\*.py' instead of 'd:*.py' ------------------------------------------------------- Date: 2000-Sep-15 00:03 By: tim_one Comment: Changed Summary to be clearer. I've made & tested the change as suggested (thanks!). SourceForge CVS isn't working at the moment for me, though, so haven't yet checked it in. Marked Fixed, but not yet Closed. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113894&group_id=5470 From noreply@sourceforge.net Fri Sep 15 08:09:09 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 00:09:09 -0700 Subject: [Python-bugs-list] [Bug #114424] Tkinter/Canvas drawing causes interpreter to crash. Message-ID: <200009150709.AAA26050@delerium.i.sourceforge.net> Bug #114424, was updated on 2000-Sep-14 06:32 Here is a current snapshot of the bug. Project: Python Category: Tkinter Status: Closed Resolution: Fixed Bug Group: None Priority: 9 Summary: Tkinter/Canvas drawing causes interpreter to crash. Details: 14 September 2000 Please find my original query below with regard to Tkinter and Python2.0beta1. Also find the Python help desk response. I had not mentioned in my original query that I am running on a Sun Ultra 10 with the Solaris 5.5.1 operating system. Best, Michele --------------------------------------------------------------------------- --------------------------------------------------------------------------- 13 September 2000 HI Python Folks, I am trying to evaluate the new "flatten" functionality written for Tkinter to determine if it generates a scientific plot with many data points in a reasonable time. I am using the Python2.0beta1. I should admit to being a bit of a newbie with Python. For this test, I am using some very simple code that is from the "Python and Tkinter Programming" book by John Grayson. I will append the simple program to the bottom of this note. I will mention I did modify the code in the following manner: 1) scaled.append(x,y) to scaled.append((x,y)). 2) commented out some stuff I did not care about 3) added code to be able to generate as many data points as I want for testing If I run the very code attached to this note, I get: enkidu> /usr/local/bin/python2.0 simpleplot2.py Traceback (most recent call last): File "simpleplot2.py", line 39, in ? canvas.create_line(scaled, fill='royalblue') File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1955, in create_line return self._create('line', args, kw) File "/usr/local/Python-2.0b1/lib/python2.0/lib-tk/Tkinter.py", line 1942, in _create (self._w, 'create', itemType) TypeError: can only concatenate tuple (not "dictionary") to tuple Bus error (core dumped) I changed the scaled.append((x,y)) to two lines where I append x and y separately; this got rid of the TypeError, but I still got the core dump. I have done many experiments where I can sometimes get the code to work in interactive mode, but if I decide to draw the line in color, I get a bus error. I can sometimes draw lines with only a few data points, but I bomb on lines with many points. I tell you all of this to find out if Tkinter has been tested for drawing lines and such on a canvas under Python2.0? I am suspicious of either memory problems or newbie problems. I have tried some demos of Tkinter, as well as some GUIs I have made using Tkinter which employ lots of widgets (i.e., scrollbars, text, label, entry) and these seem to work just fine. I am not very experienced with drawing stuff on the canvas. I do not expect you to debug this code for me, but rather to tell me how well Tkinter has been tested under Python2.0. I know you probably have lots o'stuff to do. Best, Michele ------------------------------------------------------------------------- Michele D. De La Pena email: delapena@stsci.edu Senior Scientific Programmer phone: 410-338-4713 Space Telescope Science Institute fax: 410-338-4767 3700 San Martin Drive Baltimore, MD 21218 "The nice thing about standards is there are so many to choose from." ------------------------------------------------------------------------- **************************************************************************** from Tkinter import * root = Tk() root.title('Simple Plot - Version 2') canvas = Canvas(root, width=450, height=300, bg = 'white') canvas.pack() Button(root, text='Quit', command=root.quit).pack() canvas.create_line(100,250,400,250, width=2) canvas.create_line(100,250,100,50, width=2) for i in range(11): x = 100 + (i * 30) canvas.create_line(x,250,x,245, width=2) canvas.create_text(x,254, text='%d'% (10*i), anchor=N) for i in range(6): y = 250 - (i * 40) canvas.create_line(100,y,105,y, width=2) canvas.create_text(96,y, text='%5.1f'% (50.*i), anchor=E) scaled = [] # MDD Added this code to generate potentially lots of data points for i in range(10): x, y = i, i x = x + 100 y = 50 + y scaled.append((x,y)) """ I am not interested in this. scaled = [] for x,y in [(12, 56), (20, 94), (33, 98), (45, 120), (61, 180), (75, 160), (98, 223)]: scaled.append((100 + 3*x, 250 - (4*y)/5)) """ canvas.create_line(scaled, fill='royalblue') """ I am not interested in this. for x,y in scaled: canvas.create_oval(x-6,y-6,x+6,y+6, width=1, outline='black', fill='SkyBlue2') """ root.mainloop() --------------------------------------------------------------------------- --------------------------------------------------------------------------- From help@python.org Thu Sep 14 09:38:40 2000 From: help@python.org (Martin von Loewis) Date: Thu, 14 Sep 2000 10:38:40 +0200 (MET DST) Subject: [Python-Help] forwarded message from Michele De La Pena In-Reply-To: <200009132153.RAA20628@enkidu.stsci.edu> (delapena@stsci.edu) References: <200009132153.RAA20628@enkidu.stsci.edu> Message-ID: <200009140838.KAA28807@pandora.informatik.hu-berlin.de> > I will check the items you suggest below, but I you have my help > message confused with someone else's message. My fault, I indeed confused your message with somebody elses. Looking at your original message, I can certainly reproduce the problem you are seeing. Tkinter has not been tested much for 2.0, except that IDLE is based on it - but that does not involve Canvases. It is not really your duty to find the cause of the problem, as it is clearly a Python bug. Since we are in beta testing, it would be quite important to fix it before 2.0 is released. So, if you are willing to investigate and propose a patch, that would be much appreciated. Otherwise, submitting a bug report at http://sourceforge.net/projects/python would be important so that the bug gets known to all contributors. Regards, Martin P.S. I'm especially troubled by the fact that the interpreter crashes, it should not crash under any circumstances, normally. A quick check with gdb shows that it crashes in Solaris' libc.so, specifically in the memory management. It appears that the heap got corrupted. enkidu> 2000 10:38:40 +0200 (MET DST) Received: (from loewis@localhost) by pandora.informatik.hu-berlin.de (8.9.1/8.9.1/SOLARIS-INF-2.0c) id KAA Follow-Ups: Date: 2000-Sep-14 10:15 By: loewis Comment: This is fixed with patch http://sourceforge.net/patch/?func=detailpatch&patch_id=101509&group_id=5470 ------------------------------------------------------- Date: 2000-Sep-14 14:33 By: effbot Comment: go ahead and check it in! ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114424&group_id=5470 From noreply@sourceforge.net Fri Sep 15 08:31:53 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 00:31:53 -0700 Subject: [Python-bugs-list] [Bug #114490] crash on empty module registry key Message-ID: <200009150731.AAA26878@delerium.i.sourceforge.net> Bug #114490, was updated on 2000-Sep-15 00:31 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: Platform-specific Priority: 5 Summary: crash on empty module registry key Details: Having an empty module path key under the PythonPath Registry key lets Python die on startup. For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114490&group_id=5470 From noreply@sourceforge.net Fri Sep 15 08:40:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 00:40:26 -0700 Subject: [Python-bugs-list] [Bug #114490] crash on empty module registry key Message-ID: <200009150740.AAA27172@delerium.i.sourceforge.net> Bug #114490, was updated on 2000-Sep-15 00:31 Here is a current snapshot of the bug. Project: Python Category: Windows Status: Open Resolution: None Bug Group: Platform-specific Priority: 7 Summary: crash on empty module registry key Details: Having an empty module path key under the PythonPath Registry key lets Python die on startup. Follow-Ups: Date: 2000-Sep-15 00:40 By: tim_one Comment: Assigned to MarkH and boosted priority. BobJuner, you didn't say which version of Python you're using. If you can, please try it with a current snapshot from CVS: MarkH very recently fixed something similar, and possibly similar enough to be identical. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114490&group_id=5470 From noreply@sourceforge.net Fri Sep 15 08:44:31 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 00:44:31 -0700 Subject: [Python-bugs-list] [Bug #113894] os.listdir(driveletter + ":") flawed on Win32 Message-ID: <200009150744.AAA27251@delerium.i.sourceforge.net> Bug #113894, was updated on 2000-Sep-08 08:55 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Fixed Bug Group: Platform-specific Priority: 7 Summary: os.listdir(driveletter + ":") flawed on Win32 Details: On windows NT the os.listdir() function doesn't correctly handle paths containing a drive specification, but no other directory spec. It incorrectly references the root directory on the specified drive rather than the current directory. For example these two calls should return the same thing (the actual output has been slightly trimmed): >>> import os >>> os.listdir('c:') ['3DCube', 'Acrobat3', 'ADOBEAPP', ...] >>> os.listdir('c:.') ['Capture', 'Catalog', ...] The same problem shows up in os.glob, for example os.glob('d:*.py') will expand to all .py files in the root of drive d rather than the current directory. One possible fix is that in posixmodule.c, function posix_listdir, the lines: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); should read: strcpy(namebuf, name); if (namebuf[len-1] != '/' && namebuf[len-1] != '\\' && namebuf[len-1] != ':') namebuf[len++] = '/'; strcpy(namebuf + len, "*.*"); Follow-Ups: Date: 2000-Sep-12 06:19 By: gangli59 Comment: The bug show in glob.glob('d:*.py') is due to os.path.join joins 'd:', '*.py' to 'd:\\*.py' instead of 'd:*.py' ------------------------------------------------------- Date: 2000-Sep-15 00:03 By: tim_one Comment: Changed Summary to be clearer. I've made & tested the change as suggested (thanks!). SourceForge CVS isn't working at the moment for me, though, so haven't yet checked it in. Marked Fixed, but not yet Closed. ------------------------------------------------------- Date: 2000-Sep-15 00:44 By: tim_one Comment: Checked in changes to posixmodule.c, and Closed. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113894&group_id=5470 From noreply@sourceforge.net Fri Sep 15 09:14:30 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 01:14:30 -0700 Subject: [Python-bugs-list] [Bug #110845] struct.pack not being very picky (PR#52) Message-ID: <200009150814.BAA28269@delerium.i.sourceforge.net> Bug #110845, was updated on 2000-Aug-01 14:15 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Fixed Bug Group: Feature Request Priority: 5 Summary: struct.pack not being very picky (PR#52) Details: Jitterbug-Id: 52 Submitted-By: da@ski.org Date: Sun, 15 Aug 1999 17:52:20 -0400 (EDT) Version: 1.5.2 OS: NT4SP3 >>> from struct import * >>> struct.pack('B', -12) '\364' I expected a ValueError, the way: >>> struct.pack('c', 123) Traceback (innermost last): File "", line 1, in ? struct.error: char format require string of length 1 works. ==================================================================== Audit trail: Mon Aug 30 12:33:11 1999 guido moved from incoming to request For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110845&group_id=5470 From noreply@sourceforge.net Fri Sep 15 10:34:11 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 02:34:11 -0700 Subject: [Python-bugs-list] [Bug #110650] python with-threads core-dumps (PR#342) Message-ID: <200009150934.CAA13098@bush.i.sourceforge.net> Bug #110650, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: python with-threads core-dumps (PR#342) Details: Jitterbug-Id: 342 Submitted-By: michael.exner@mrz.uni-magdeburg.de Date: Wed, 31 May 2000 09:43:38 -0400 (EDT) Version: 1.5.2 OS: hpux-11.00 When I compile python with threads python core-dumps: $ ./python pthread_mutex_init: Invalid argument Memory fault(coredump) without thread-support everything works fine I tried this with hpux-ansi-c and with gcc (2.95.2) but got the same result ==================================================================== Audit trail: Tue Jul 11 08:25:57 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-28 20:43 By: tim_one Comment: Note that the only call to pthread_mutex_init Python makes is in function PyThread_allocate_lock in file phread_pthread.h. If Python compiled at all, it's extremely unlikely that the first argument is in error. It's very likely that the second argument is in error, though: there were many imcompatible revisions of the pthreads std, and pthread_mutexattr_default is a macro conditionally defined near the top of the file. If this OS actually support pthreads, you have to figure out which *version* of pthreads it defines and arrange for config to define the *correct* one of the PY_PTHREAD_D4 PY_PTHREAD_D7 PY_PTHREAD_STD PY_PTHREAD_D6 symbols for your platform. Else disable threads entirely. ------------------------------------------------------- Date: 2000-Aug-29 07:34 By: memaul Comment: Goto link below for instructions and patches for building python 152 with threads on hpux 10.20 http://memaul.tripod.com/index.html ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-15 02:34 By: harripasanen Comment: I can verify that the bug exists not only in 1.5.2 but also in 1.6. gcc 2.95.2 HPUX 11.00 I'll see if tim_one's suggestions help. Regards, Harri Pasanen ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110650&group_id=5470 From noreply@sourceforge.net Fri Sep 15 12:55:42 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 04:55:42 -0700 Subject: [Python-bugs-list] [Bug #110650] python with-threads core-dumps (PR#342) Message-ID: <200009151155.EAA18275@bush.i.sourceforge.net> Bug #110650, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: python with-threads core-dumps (PR#342) Details: Jitterbug-Id: 342 Submitted-By: michael.exner@mrz.uni-magdeburg.de Date: Wed, 31 May 2000 09:43:38 -0400 (EDT) Version: 1.5.2 OS: hpux-11.00 When I compile python with threads python core-dumps: $ ./python pthread_mutex_init: Invalid argument Memory fault(coredump) without thread-support everything works fine I tried this with hpux-ansi-c and with gcc (2.95.2) but got the same result ==================================================================== Audit trail: Tue Jul 11 08:25:57 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-28 20:43 By: tim_one Comment: Note that the only call to pthread_mutex_init Python makes is in function PyThread_allocate_lock in file phread_pthread.h. If Python compiled at all, it's extremely unlikely that the first argument is in error. It's very likely that the second argument is in error, though: there were many imcompatible revisions of the pthreads std, and pthread_mutexattr_default is a macro conditionally defined near the top of the file. If this OS actually support pthreads, you have to figure out which *version* of pthreads it defines and arrange for config to define the *correct* one of the PY_PTHREAD_D4 PY_PTHREAD_D7 PY_PTHREAD_STD PY_PTHREAD_D6 symbols for your platform. Else disable threads entirely. ------------------------------------------------------- Date: 2000-Aug-29 07:34 By: memaul Comment: Goto link below for instructions and patches for building python 152 with threads on hpux 10.20 http://memaul.tripod.com/index.html ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-15 02:34 By: harripasanen Comment: I can verify that the bug exists not only in 1.5.2 but also in 1.6. gcc 2.95.2 HPUX 11.00 I'll see if tim_one's suggestions help. Regards, Harri Pasanen ------------------------------------------------------- Date: 2000-Sep-15 04:55 By: harripasanen Comment: The problems seems to be that configure gets the libraries wrong on HP-UX 11.0. It links with -lcma, when it should link with -lpthread. So a quick and dirty solution is to relink the python by hand, replacing -lcma with -lpthread. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110650&group_id=5470 From noreply@sourceforge.net Fri Sep 15 14:28:25 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 06:28:25 -0700 Subject: [Python-bugs-list] [Bug #110856] Page fault in module KERNEL32.DLL (PR#186) Message-ID: <200009151328.GAA21530@bush.i.sourceforge.net> Bug #110856, was updated on 2000-Aug-01 14:37 Here is a current snapshot of the bug. Project: Python Category: None Status: Closed Resolution: Invalid Bug Group: Irreproducible Priority: 5 Summary: Page fault in module KERNEL32.DLL (PR#186) Details: Jitterbug-Id: 186 Submitted-By: hauser@eos.ncsu.edu Date: Fri, 21 Jan 2000 08:36:26 -0500 (EST) Version: 1.5.2 OS: windows 95 I am new to Python and am having a problem on Windows 95 any time I use the Tkinter module. An example follows: >>>from Tkinter import * >>>t = Button(None, {'text': 'Test', Pack: {}}) >>>q = Button(None, {'text': 'Quit', 'command': t.quit, Pack: {}}) >>>t.mainloop() The window comes up and seems to work. Clicking on the 'Quit' button returns to the Python screen. Then: >>>Ctrl-D ->message comes up that illegal operation has been perforned: Page fault in KERNEL32.DLL at 016f:6ff79ff3, computer hangs and has to be hard booted. Everything else seems to work, the idle program comes up and everything is OK until I try to exit and the same problem happens. If I don't use Tkinter I don't have the problem and any time with Tkinter I make a window and exit from the window, and try to exit Python the same error appears. I have found several references to Page faults in KERNEL32 in the Bug reports but have not seen any solutions. Any help would be appreciated. Thanks. ==================================================================== Audit trail: Mon Jan 24 14:47:52 2000 guido sent reply 1 Mon Jan 24 14:48:23 2000 guido changed notes Mon Jan 24 14:48:23 2000 guido moved from incoming to irreproducible Follow-Ups: Date: 2000-Aug-01 14:38 By: none Comment: From: Guido van Rossum Subject: Re: Page fault in module KERNEL32.DLL (PR#186) Date: Mon Jan 24 14:47:52 2000 John, I am afraid I can't reproduce your problem, and I've never heard of this type of behavior before. My best guess is that some other Windows app that you have installed is causing this behavior; this is basically impossible to debug. I suggest that you post your problem description to comp.lang.python; maybe someone there has a clever idea. If you find a solution, please reply to this message, leaving the subject intact. In the mean time, I;ll keep your bug report in the "irreproducuble" category. Thanks, --Guido van Rossum ------------------------------------------------------- Date: 2000-Aug-01 14:38 By: none Comment: From: "Dr. John R. Hauser" Subject: Re: Page fault in module KERNEL32.DLL (PR#186) Date: Thu, 27 Jan 2000 15:34:33 -0500 Guido, Thanks very much for your help. With your suggestion I have traced the problem to a file CSINJECT.exe which was being loaded on startup. This is a file associated with the Norton Clean Sweep utility. After removing it from my startup file, everything works fine. I guess it was loaded when I installed Norton Utilities and I have no idea what it does. Thanks again for you thoughts. John Hauser At 02:47 PM 1/24/2000 -0500, you wrote: >John, > >I am afraid I can't reproduce your problem, and I've never heard >of this type of behavior before. > >My best guess is that some other Windows app that you have installed >is causing this behavior; this is basically impossible to debug. > >I suggest that you post your problem description to comp.lang.python; >maybe someone there has a clever idea. If you find a solution, please >reply to this message, leaving the subject intact. > >In the mean time, I;ll keep your bug report in the "irreproducuble" >category. > >Thanks, > >--Guido van Rossum > > > ------------------------------------------------------- Date: 2000-Aug-01 14:38 By: none Comment: Could be caused by another Windows app? ------------------------------------------------------- Date: 2000-Sep-07 15:01 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-15 06:28 By: jhylton Comment: see final comment from submittor ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110856&group_id=5470 From noreply@sourceforge.net Fri Sep 15 16:02:56 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 08:02:56 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009151502.IAA10719@delerium.i.sourceforge.net> Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 8 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- Date: 2000-Sep-07 14:41 By: jhylton Comment: If you set the GC threshold to 0, import gc gc.set_threshold(0) Do you get the same problem? Not that I doubt there is some sort of gc problem, but I wonder if there is something going wrong in the accounting or in the collection. How hard would it be for someone to try to reproduce this bug? Obviously, it would be helpful to get a smaller test case that has the same behavior as your large program and also tickles the bug. Do you have any C extension modules in your application or is it pure Python? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:33 By: edg Comment: The code is 100% pure Python. When I set the threshold to 0, the problem doesn't occur. The problem is probably very hard to reproduce by anyone else. The slightest change in the input data for my application can make the problem go away. Even running an optimized instead of a debug version of the interpreter can make a difference. I'm certainly going to try to strip it down, but that won't be easy (the same application, using other input data, running 6 times as long, runs just fine). ------------------------------------------------------- Date: 2000-Sep-11 07:48 By: edg Comment: After 2 full days of debugging, I think that I finally found the cause for the gc problems. To keep a (very) long story short, what I found out was the following: - Crashes were due to objects that were destructed twice. - Endless loops were due to messed-up gc generation lists. The lists should always remain perfectly circular, but sometimes they ended up like this: list <-> ... <-> X <-> ... <-> ... -> X No wonder that the gc code could easily get stuck; even turning on gc debugging caused the counting code to run in circles forever. The multiple-destruction problem is almost certainly caused by lists being messed up. By turning on the debugging code in gc_list_remove and reducing the gc threshold to a very small value, I could trigger the crash more reliably, which allowed me to strip down my 80000 line application to this: ----------------------------------------------------------------------------- # # Note: to trigger a crash reliably, the debugging code in gc_list_remove # _must_ be turned on. # import gc gc.set_threshold(1) class Node: def __del__(self): dir(self) a = Node() del a # -> Crash ----------------------------------------------------------------------------- You wonder: can it be that simple ? :-) This is what happens when the Node instance `a' is destructed: 1) The Node instance is removed from the gc lists. 2) An instance method is created due to the call of the __del__ method. THAT METHOD CREATES A NEW REFERENCE TO THE INSTANCE ! 3) The code in the __del__ method triggers the allocation of new objects and because the gc threshold has been set very low, it also triggers a gc run. 4) During the gc run, the instance method is encountered and its reachable objects are visited. 5) Since the instance is referenced by the method, the gc code tries to move the instance to another list, while it was no longer present in any list -> BINGO Obviously, the reason why this problem was so hard to reproduce, is the fact that most classes don't have a __del__ method, and the problem only occurs when a gc run happens during the execution of a __del__ method. It think the fix is as simple as this (I'm not too confident, but it seems to work): ------------------------------------------------------------------------------ *** Objects/classobject.c.orig Mon Sep 11 15:55:03 2000 --- Objects/classobject.c Mon Sep 11 16:12:26 2000 *************** *** 490,496 **** #ifdef Py_TRACE_REFS extern long _Py_RefTotal; #endif - PyObject_GC_Fini(inst); /* Call the __del__ method if it exists. First temporarily revive the object and save the current exception, if any. */ #ifdef Py_TRACE_REFS --- 490,495 ---- *************** *** 523,529 **** #ifdef COUNT_ALLOCS inst->ob_type->tp_free--; #endif - PyObject_GC_Init((PyObject *)inst); return; /* __del__ added a reference; don't delete now */ } #ifdef Py_TRACE_REFS --- 522,527 ---- *************** *** 537,542 **** --- 535,541 ---- #endif /* Py_TRACE_REFS */ Py_DECREF(inst->in_class); Py_XDECREF(inst->in_dict); + PyObject_GC_Fini(inst); inst = (PyInstanceObject *) PyObject_AS_GC(inst); PyObject_DEL(inst); } ------------------------------------------------------------------------------ ie, delay the removal from the gc list till everything has stabilized. I hope this helps. ------------------------------------------------------- Date: 2000-Sep-14 23:43 By: nascheme Comment: Your analysis looks correct. Great work. I think there is a small problem with your fix however. You should call PyObject_GC_Fini() before the DECREFs on in_class and in_dict. If, for some reason, decrementing the reference counts of these object causes a garbage collection then the instance could still be on the gc lists and have an invalid in_class or in_dict pointer. ------------------------------------------------------- Date: 2000-Sep-15 08:02 By: nascheme Comment: I've posted a patch. Should I mark this bug as fixed or does whoever checks in the patch make that change? ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Fri Sep 15 16:10:39 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 08:10:39 -0700 Subject: [Python-bugs-list] [Bug #110607] Telnet close (PR#181) Message-ID: <200009151510.IAA11106@delerium.i.sourceforge.net> Bug #110607, was updated on 2000-Jul-31 14:05 Here is a current snapshot of the bug. Project: Python Category: Library Status: Closed Resolution: Works For Me Bug Group: Irreproducible Priority: 5 Summary: Telnet close (PR#181) Details: Jitterbug-Id: 181 Submitted-By: cha@tandberg.no Date: Wed, 12 Jan 2000 09:49:29 -0500 (EST) Version: 1.5.2 OS: Windows NT4.0 The telnet.close() object does not close the telnet session. Session will only be closed after a timeout on the remote side. ==================================================================== Audit trail: Wed Jan 12 18:29:38 2000 guido changed notes Wed Jan 12 18:29:38 2000 guido changed notification Wed Jan 12 18:29:38 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-23 18:50 By: montanaro Comment: Replied to the submitter asking for a short script that fails. I don't run Windows so I may not be able to track this down. ------------------------------------------------------- Date: 2000-Sep-04 07:54 By: montanaro Comment: Never did get any response from the submitter. This was apparently originally submitted back in January. I'm simply going to bounce this back to Tim since he at least runs Windows... ------------------------------------------------------- Date: 2000-Sep-14 22:23 By: tim_one Comment: Assigned to Guido, cause it looks like telnetlib.py may be his code, he also has Windows, and-- unlike me --may actually know of a machine he can telnet *to* (I've never used this stuff, & the BeOpen machines don't telnet for me). The .close() method certainly appears to be closing the underlying socket. ------------------------------------------------------- Date: 2000-Sep-15 08:10 By: gvanrossum Comment: Best I can tell, the connection is correctly closed by the close() method. I telnetted into a Unix machine from a Win98 SE machine (I have no NT here) and checked with netstat that the connection existed. Then I called the close() method. Then netstat showed the connection as closed for about 1 second and then no longer had it. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110607&group_id=5470 From noreply@sourceforge.net Fri Sep 15 16:15:10 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 08:15:10 -0700 Subject: [Python-bugs-list] [Bug #114293] Unexpected Evaluation of Expressions from Pickle Message-ID: <200009151515.IAA26254@bush.i.sourceforge.net> Bug #114293, was updated on 2000-Sep-12 15:23 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: Unexpected Evaluation of Expressions from Pickle Details: It is possible to evaluate an expression through an improperly formatted pickled string: >>> import pickle >>> pickle.loads("S3+3\012p0\012.") 6 The same expression in "cPickle" will raise an exception: >>> import cPickle >>> cPickle.loads("S3+3\012p0\012.") Traceback (most recent call last): File "", line 1, in ? ValueError: insecure string pickle The reason this occurs is that the string is brought into existence through a call to "eval". This is made somewhat safe by removing all the built-in functions, but it is still possible to cause problems with a pure evaluation. I will submit a patch within a few minutes that makes sure that the first character is either a single- or double-quote. Would it be possible for someone to slip a code object instead of an expression? Since we don't have access to the "marshal" module from here, I don't know how it would be done, but I am very concerned about the security implications of using pickle. Follow-Ups: Date: 2000-Sep-15 08:15 By: jhylton Comment: fixed in rev. 1.39 ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114293&group_id=5470 From noreply@sourceforge.net Fri Sep 15 16:34:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 08:34:26 -0700 Subject: [Python-bugs-list] [Bug #110617] IDLE and -t (PR#213) Message-ID: <200009151534.IAA11954@delerium.i.sourceforge.net> Bug #110617, was updated on 2000-Jul-31 14:06 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Closed Resolution: Fixed Bug Group: None Priority: 3 Summary: IDLE and -t (PR#213) Details: Jitterbug-Id: 213 Submitted-By: aa8vb@yahoo.com Date: Fri, 25 Feb 2000 07:36:01 -0500 (EST) Version: 1.5.2 (w/ IDLE 0.5) OS: IRIX Since no other X app I know of works this way, I think this is a bug. If you set the title of the IDLE window: idle.py -t IDLE the title is set correctly, but the icon name is not. It is set to "*IDLE" rather than "IDLE". ==================================================================== Audit trail: Tue Mar 07 14:41:55 2000 guido changed notes Tue Mar 07 14:41:55 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Fri, 25 Feb 2000 08:26:32 -0500 > Since no other X app I know of works this way, I think this is a bug. > > If you set the title of the IDLE window: > > idle.py -t IDLE > > the title is set correctly, but the icon name is not. > It is set to "*IDLE" rather than "IDLE". Not a bug -- IDLE adds * before (and after!) the window title and icon name to indicate that the window is modified and unsaved. Does this bother you in some way? --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 28 Feb 2000 07:25:31 -0500 Guido van Rossum: |> Since no other X app I know of works this way, I think this is a bug. |> |> If you set the title of the IDLE window: |> |> idle.py -t IDLE |> |> the title is set correctly, but the icon name is not. |> It is set to "*IDLE" rather than "IDLE". | |Not a bug -- IDLE adds * before (and after!) the window title and |icon name to indicate that the window is modified and unsaved. The icon name doesn't follow this convention: if not self.get_saved(): title = "*%s*" % title icon = "*%s" % icon The reason I took note of this inconsistency is that I was assigning a window manager icon to IDLE based on the startup icon string. |Does this bother you in some way? Well, no other X app I know of communicates unsaved status by putting '*'s in the title and icon, but I don't have a big problem with it. I do think the icon should have a '*' both before "and after", as you described though. I'm guessing this was just a typo. Thanks, Randall -- Randall Hopper aa8vb@yahoo.com ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 28 Feb 2000 08:16:48 -0500 > |Not a bug -- IDLE adds * before (and after!) the window title and > |icon name to indicate that the window is modified and unsaved. > > The icon name doesn't follow this convention: > > if not self.get_saved(): > title = "*%s*" % title > icon = "*%s" % icon > > The reason I took note of this inconsistency is that I was assigning a > window manager icon to IDLE based on the startup icon string. > > |Does this bother you in some way? > > Well, no other X app I know of communicates unsaved status by putting '*'s > in the title and icon, but I don't have a big problem with it. Hm, I have to admit that I have given up years ago on configuring X apps through their app name. Is that still a common practice? I could certainly change things around so that the title and icon are always "idle: *file*" or "idle: file" depending on saved status. > I do think the icon should have a '*' both before "and after", as you > described though. I'm guessing this was just a typo. I think it was intentional, trying to save some space in the icon label. Not worth it, probably. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Tue, 29 Feb 2000 14:26:37 -0500 --oyUTqETQ0mS9luUI Content-Type: text/plain; charset=us-ascii Guido van Rossum: |Hm, I have to admit that I have given up years ago on configuring X |apps through their app name. Is that still a common practice? I could Definitely. Most all (all?) use WM_CLASS, and many use WM_NAME and WM_ICONNAME as fallbacks. This is useful if WM_CLASS isn't set to a useful value (as in this case). IDLE doesn't set a class name property on it's window, so the window name and icon name are all the window manager has to go on when matching it up with configuration settings. However, I believe IDLE could set a class name easily by passing it to Tkinter -- e.g. root = Tk( className="IDLE" ). See attached. More info: the properties used by many window managers as a key into a configuration database are: CLASS, NAME, and ICON_NAME. For example, running 'xprop' on my xterm window here: > xprop ... WM_CLASS(STRING) = "xterm-color", "XTerm" ... WM_ICON_NAME(STRING) = "Local" WM_NAME(STRING) = "Local" So I can set window manager resources for this window using "XTerm", "xterm-color", or "Local" -- with overrides in that order I believe. So I can have a default icon for xterms, and then an override icon for xterm windows with a certain title. IDLE doesn't set CLASS so it's basically useless for this configuration purpose. On stock IDLE: WM_CLASS(STRING) = "270515832", "Toplevel" |certainly change things around so that the title and icon are always "idle: |*file*" or "idle: file" depending on saved status. If IDLE could set WM_CLASS to a static (or cmd-line-specified) value on it's shell windows, that'd be enough for me. For now I'm using -t IDLE, but that doesn't cover opening new windows inside of IDLE (opening files, File->New Window, etc.) A unique prefix on the WM_NAME (title string) would work too. |> I do think the icon should have a '*' both before "and after", as you |> described though. I'm guessing this was just a typo. | |I think it was intentional, trying to save some space in the icon |label. Not worth it, probably. Thanks, Randall -- Randall Hopper aa8vb@yahoo.com --oyUTqETQ0mS9luUI Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="tk.py" from Tkinter import * root = Tk( className="Test" ) btn = Button( root ) btn.pack() root.mainloop() --oyUTqETQ0mS9luUI-- ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Wed, 01 Mar 2000 09:21:41 -0500 Randall, Thanks for your enlightenment. I looked at your example, and it works; but I need more, because IDLE creates windows using Toplevel(), not using Tk(). (Using Tk() would create a new Tcl interpreter for each window, which wastes time and memory resources, and re-reads the ~/..py file each time.) I've experimented with xprop a bit, and I'm not getting results I like. If I write root = Tk(className="foo"), WM_CLASS is "foo", "Foo". Them if I write top = Toplevel(root), WM_CLASS for that window is "1234567", "Toplevel". If I try top = Toplevel(root, name="bar"), I get "bar", "Toplevel". Shouldn't I be able to set the second component of WM_CLASS somehow? Got any ideas? If you can send me a patch, that would be greatly appreciated! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Randall Hopper Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 6 Mar 2000 08:50:29 -0500 --MGYHOYXEY6WxJCY8 Content-Type: text/plain; charset=us-ascii Guido van Rossum: |Thanks for your enlightenment. I looked at your example, and it |works; but I need more, because IDLE creates windows using Toplevel(), |not using Tk(). (Using Tk() would create a new Tcl interpreter for |each window, which wastes time and memory resources, and re-reads the |~/..py file each time.) | |I've experimented with xprop a bit, and I'm not getting results I |like. If I write root = Tk(className="foo"), WM_CLASS is "foo", |"Foo". Them if I write top = Toplevel(root), WM_CLASS for that window |is "1234567", "Toplevel". If I try top = Toplevel(root, name="bar"), |I get "bar", "Toplevel". Shouldn't I be able to set the second |component of WM_CLASS somehow? | |Got any ideas? Sorry about that last message. This issue is very closely related to the resource loading issue on idle-dev, but not the same. Once the small change below is in-place (to solve this problem), the platform-independent Tkinter methods for resource loading can be used to solve the idle-dev problem, if desired. Research indicates that the Tk-ism for setting Toplevel classes is: "toplevel .mytop -class classname" So the Tkinter syntax is: top1 = Toplevel( root, class_=classname ) The attached test app demonstrates this. I verified that I am able to set X resources for these windows using the class name "Idle". -- Randall Hopper aa8vb@yahoo.com --MGYHOYXEY6WxJCY8 Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="tk_class.py" from Tkinter import * CLASSNAME = "Idle" root = Tk( className=CLASSNAME ) root.wm_withdraw() # A toplevel with a WM_CLASS top1 = Toplevel( root, class_=CLASSNAME ) label1 = Label( top1, text="Toplevel 1" ) label1.pack() # Another one top2 = Toplevel( root, class_=CLASSNAME ) label2 = Label( top2, text="Toplevel 2" ) label2.pack() root.mainloop() --MGYHOYXEY6WxJCY8-- ------------------------------------------------------- Date: 2000-Jul-31 14:06 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE and -t (PR#213) Date: Mon, 06 Mar 2000 09:11:30 -0500 > Sorry about that last message. This issue is very closely related to the > resource loading issue on idle-dev, but not the same. Once the small > change below is in-place (to solve this problem), the platform-independent > Tkinter methods for resource loading can be used to solve the idle-dev > problem, if desired. See my response in idle-dev :-) Of course the Tk options can still be used for changing things that the config file or prefs dialog doesn't support. > Research indicates that the Tk-ism for setting Toplevel classes is: > > "toplevel .mytop -class classname" > > So the Tkinter syntax is: > > top1 = Toplevel( root, class_=classname ) > > The attached test app demonstrates this. I verified that I am able to set > X resources for these windows using the class name "Idle". OK, I'll try to support this! --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:29 By: tim_one Comment: Assigned to Guido for obvious reasons. ------------------------------------------------------- Date: 2000-Sep-15 08:34 By: gvanrossum Comment: The original complaint (about the icon being set to *IDLE) was taken care of by explanation. The remaining issue of the proper className is taken care of by using Tk(className="Idle") in PyShell.py -- Fred just checked this in. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110617&group_id=5470 From noreply@sourceforge.net Fri Sep 15 16:46:26 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 08:46:26 -0700 Subject: [Python-bugs-list] [Bug #110660] IDLE-0.5 ctrl-F5 (PR#355) Message-ID: <200009151546.IAA12489@delerium.i.sourceforge.net> Bug #110660, was updated on 2000-Jul-31 14:11 Here is a current snapshot of the bug. Project: Python Category: IDLE Status: Closed Resolution: Fixed Bug Group: Feature Request Priority: 3 Summary: IDLE-0.5 ctrl-F5 (PR#355) Details: Jitterbug-Id: 355 Submitted-By: gpk@bell-labs.com Date: Tue, 13 Jun 2000 11:30:14 -0400 (EDT) Version: yesterday's CVS OS: Solaris 2.6 If you type ctrl-f5 to run a script twice in sucession, IDLE will incorrectly pop up a window saying "Not Saved. Please Save First." If you save (even though you haven't changed anything, and even though there are no asterisks around the window title), then ctrl-f5 will work again. This *doesn't* happen if you run the script twice in succession from the menu. ==================================================================== Audit trail: Tue Jul 11 08:26:00 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-01 14:01 By: none Comment: From: "Tim Peters" Subject: RE: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 13 Jun 2000 11:55:09 -0400 Pretty mysterious! Doesn't happen under IDLE 0.5 for me. Running under Windows, but darned hard to see why that would matter. Can anyone else try this under Solaris 2.6? May have something to do with the specific script you're running, Greg; e.g., does it happen if the script file contains just print "Hi!" ? > -----Original Message----- > From: python-bugs-list-admin@python.org > [mailto:python-bugs-list-admin@python.org]On Behalf Of gpk@bell-labs.com > Sent: Tuesday, June 13, 2000 11:30 AM > To: python-bugs-list@python.org > Cc: bugs-py@python.org > Subject: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) > > > Full_Name: Greg Kochanski > Version: yesterday's CVS > OS: Solaris 2.6 > Submission from: h-135-104-33-130.research.bell-labs.com (135.104.33.130) > > > If you type ctrl-f5 to run a script twice in sucession, > IDLE will incorrectly pop up a window saying > "Not Saved. Please Save First." > > If you save (even though you haven't changed anything, > and even though there are no asterisks around the window > title), then ctrl-f5 will work again. > > This *doesn't* happen if you run the script twice in > succession from the menu. > > > > _______________________________________________ > Python-bugs-list maillist - Python-bugs-list@python.org > http://www.python.org/mailman/listinfo/python-bugs-list > ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 16:42:57 -0500 I think I understand this. It's happened to me too. Pressing ^F5 changes the focus to the PyShell window. Pressing ^F5 again then indeed complains about that window being unsaved. --Guido van Rossum (home page: http://www.python.org/~guido/) [Tim] > Pretty mysterious! Doesn't happen under IDLE 0.5 for me. Running under > Windows, but darned hard to see why that would matter. Can anyone else try > this under Solaris 2.6? May have something to do with the specific script > you're running, Greg; e.g., does it happen if the script file contains just > > print "Hi!" > > ? > > > -----Original Message----- > > From: python-bugs-list-admin@python.org > > [mailto:python-bugs-list-admin@python.org]On Behalf Of gpk@bell-labs.com > > Sent: Tuesday, June 13, 2000 11:30 AM > > To: python-bugs-list@python.org > > Cc: bugs-py@python.org > > Subject: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) > > > > > > Full_Name: Greg Kochanski > > Version: yesterday's CVS > > OS: Solaris 2.6 > > Submission from: h-135-104-33-130.research.bell-labs.com (135.104.33.130) > > > > > > If you type ctrl-f5 to run a script twice in sucession, > > IDLE will incorrectly pop up a window saying > > "Not Saved. Please Save First." > > > > If you save (even though you haven't changed anything, > > and even though there are no asterisks around the window > > title), then ctrl-f5 will work again. > > > > This *doesn't* happen if you run the script twice in > > succession from the menu. > > > > > > > > _______________________________________________ > > Python-bugs-list maillist - Python-bugs-list@python.org > > http://www.python.org/mailman/listinfo/python-bugs-list > > > > > > _______________________________________________ > Python-bugs-list maillist - Python-bugs-list@python.org > http://www.python.org/mailman/listinfo/python-bugs-list ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Greg Kochanski Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 17:25:37 -0400 Guido van Rossum wrote: > > I think I understand this. It's happened to me too. Pressing ^F5 > changes the focus to the PyShell window. Pressing ^F5 again then > indeed complains about that window being unsaved. > > --Guido van Rossum (home page: http://www.python.org/~guido/) Ah. Sure enough. Perhaps the best thing to do is just to have the little error message explain which window is unsaved. Include the title of the unsaved window in the error box, maybe. I'd be happy to send a patch, but the paperwork would be terrible... ------------------------------------------------------- Date: 2000-Aug-01 14:01 By: none Comment: From: Guido van Rossum Subject: Re: [Python-bugs-list] IDLE-0.5 ctrl-F5 (PR#355) Date: Tue, 20 Jun 2000 18:10:35 -0500 > > I think I understand this. It's happened to me too. Pressing ^F5 > > changes the focus to the PyShell window. Pressing ^F5 again then > > indeed complains about that window being unsaved. > > > > --Guido van Rossum (home page: http://www.python.org/~guido/) > > Ah. Sure enough. Perhaps the best thing to do > is just to have the little error message explain > which window is unsaved. Include the title > of the unsaved window in the error box, maybe. > > I'd be happy to send a patch, but the paperwork > would be terrible... No need for paperwork, just the disclaimer text. But I think the better patch would be to make PyShell a special case and make it rerun the last window that had the focus. --Guido van Rossum (home page: http://www.python.org/~guido/) ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:54 By: tim_one Comment: Assigned to Guido. Guido, know whether he ever mailed you a patch? ------------------------------------------------------- Date: 2000-Sep-15 08:46 By: gvanrossum Comment: I added the filename to the error message as proposed. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110660&group_id=5470 From noreply@sourceforge.net Fri Sep 15 17:38:24 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 09:38:24 -0700 Subject: [Python-bugs-list] [Bug #113693] freeze modulefinder broken Message-ID: <200009151638.JAA29298@bush.i.sourceforge.net> Bug #113693, was updated on 2000-Sep-06 05:09 Here is a current snapshot of the bug. Project: Python Category: demos and tools Status: Closed Resolution: Fixed Bug Group: None Priority: 5 Summary: freeze modulefinder broken Details: The following one-liner script can not be frozen: import string The traceback is included below. Line number are from revision 1.13 of modulefinder.py. The problem appears to be related to recent changes to the import bytecodes Traceback (most recent call last): File "d:\python\tools\freeze\freeze.py", line 457, in ? main() File "d:\python\tools\freeze\freeze.py", line 321, in main mf.import_hook(mod) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 303, in scan_code self.scan_code(c, m) File "d:\python\tools\freeze\modulefinder.py", line 281, in scan_code self.import_hook(name, m) File "d:\python\tools\freeze\modulefinder.py", line 106, in import_hook q, tail = self.find_head_package(parent, name) File "d:\python\tools\freeze\modulefinder.py", line 147, in find_head_package q = self.import_module(head, qname, parent) File "d:\python\tools\freeze\modulefinder.py", line 233, in import_module m = self.load_module(fqname, fp, pathname, stuff) File "d:\python\tools\freeze\modulefinder.py", line 261, in load_module self.scan_code(co, m) File "d:\python\tools\freeze\modulefinder.py", line 289, in scan_code assert lastname is not None AssertionError Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 05:10 By: jackjansen Comment: The problem is that the code expects IMPORT_NAME immedeately followed by a sequence of IMPORT_FROMs. That has changed now that IMPORT_FROM puts the result on the stack. A fix that appears to work for me is to set lastname to None only on POP_TOP instructions. But I'll leave doing the actual fix to someone more knowledgeable than me on the code that from x import y can generate. ------------------------------------------------------- Date: 2000-Sep-14 23:03 By: tim_one Comment: Changed to Category "demos and tools" and assigned to Guido because I bet he'd simply enjoy fixing this one (think of it as a chance to work on Python, Guido!). ------------------------------------------------------- Date: 2000-Sep-15 09:38 By: gvanrossum Comment: Fixed. See checkin of modulefinder.py. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113693&group_id=5470 From noreply@sourceforge.net Fri Sep 15 17:55:09 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 09:55:09 -0700 Subject: [Python-bugs-list] [Bug #113812] Serious garbage collection problems with 2.0b1 Message-ID: <200009151655.JAA15087@delerium.i.sourceforge.net> Bug #113812, was updated on 2000-Sep-07 10:10 Here is a current snapshot of the bug. Project: Python Category: Modules Status: Open Resolution: None Bug Group: None Priority: 8 Summary: Serious garbage collection problems with 2.0b1 Details: Since I've installed version 2.0b1, I ran into a few (serious) problems with a non-trivial application (+80,000 lines of Python). It seems that the are all related to the new garbage collection: - Suddenly, assertions fail because lists have become empty while they shouldn't have. I looks like their elements have been garbage collected while they were still reachable. - Under other circumstances, I get coredumps which always seem to happen in function "move_root_reachable" of gcmodule.c: the "traverse" function pointer seems to contain a bogus address. - When I run a Purified version of the interpreter, I can't reproduce either problem, but instead, the garbage collector seems to get stuck in an endless loop each time. This always happens in the same function "move_root_reachable". Purify doesn't produce any relevant warning. The code runs just fine with version 1.6 of the interpreter, or when I disable the garbage collector. Probably relevant is the fact that the objects (10,000's) in my application are very heavily cross-linked (nearly all links are bi-directional), which probably puts a lot of stress on the garbage collector. My platform: HP-UX 10.20 / c89 compiler Follow-Ups: Date: 2000-Sep-07 10:14 By: edg Comment: Just one more thing: when I turn on the gc debugging, the interpreter also seems to get stuck in an endless loop. ------------------------------------------------------- Date: 2000-Sep-07 14:41 By: jhylton Comment: If you set the GC threshold to 0, import gc gc.set_threshold(0) Do you get the same problem? Not that I doubt there is some sort of gc problem, but I wonder if there is something going wrong in the accounting or in the collection. How hard would it be for someone to try to reproduce this bug? Obviously, it would be helpful to get a smaller test case that has the same behavior as your large program and also tickles the bug. Do you have any C extension modules in your application or is it pure Python? ------------------------------------------------------- Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-08 01:33 By: edg Comment: The code is 100% pure Python. When I set the threshold to 0, the problem doesn't occur. The problem is probably very hard to reproduce by anyone else. The slightest change in the input data for my application can make the problem go away. Even running an optimized instead of a debug version of the interpreter can make a difference. I'm certainly going to try to strip it down, but that won't be easy (the same application, using other input data, running 6 times as long, runs just fine). ------------------------------------------------------- Date: 2000-Sep-11 07:48 By: edg Comment: After 2 full days of debugging, I think that I finally found the cause for the gc problems. To keep a (very) long story short, what I found out was the following: - Crashes were due to objects that were destructed twice. - Endless loops were due to messed-up gc generation lists. The lists should always remain perfectly circular, but sometimes they ended up like this: list <-> ... <-> X <-> ... <-> ... -> X No wonder that the gc code could easily get stuck; even turning on gc debugging caused the counting code to run in circles forever. The multiple-destruction problem is almost certainly caused by lists being messed up. By turning on the debugging code in gc_list_remove and reducing the gc threshold to a very small value, I could trigger the crash more reliably, which allowed me to strip down my 80000 line application to this: ----------------------------------------------------------------------------- # # Note: to trigger a crash reliably, the debugging code in gc_list_remove # _must_ be turned on. # import gc gc.set_threshold(1) class Node: def __del__(self): dir(self) a = Node() del a # -> Crash ----------------------------------------------------------------------------- You wonder: can it be that simple ? :-) This is what happens when the Node instance `a' is destructed: 1) The Node instance is removed from the gc lists. 2) An instance method is created due to the call of the __del__ method. THAT METHOD CREATES A NEW REFERENCE TO THE INSTANCE ! 3) The code in the __del__ method triggers the allocation of new objects and because the gc threshold has been set very low, it also triggers a gc run. 4) During the gc run, the instance method is encountered and its reachable objects are visited. 5) Since the instance is referenced by the method, the gc code tries to move the instance to another list, while it was no longer present in any list -> BINGO Obviously, the reason why this problem was so hard to reproduce, is the fact that most classes don't have a __del__ method, and the problem only occurs when a gc run happens during the execution of a __del__ method. It think the fix is as simple as this (I'm not too confident, but it seems to work): ------------------------------------------------------------------------------ *** Objects/classobject.c.orig Mon Sep 11 15:55:03 2000 --- Objects/classobject.c Mon Sep 11 16:12:26 2000 *************** *** 490,496 **** #ifdef Py_TRACE_REFS extern long _Py_RefTotal; #endif - PyObject_GC_Fini(inst); /* Call the __del__ method if it exists. First temporarily revive the object and save the current exception, if any. */ #ifdef Py_TRACE_REFS --- 490,495 ---- *************** *** 523,529 **** #ifdef COUNT_ALLOCS inst->ob_type->tp_free--; #endif - PyObject_GC_Init((PyObject *)inst); return; /* __del__ added a reference; don't delete now */ } #ifdef Py_TRACE_REFS --- 522,527 ---- *************** *** 537,542 **** --- 535,541 ---- #endif /* Py_TRACE_REFS */ Py_DECREF(inst->in_class); Py_XDECREF(inst->in_dict); + PyObject_GC_Fini(inst); inst = (PyInstanceObject *) PyObject_AS_GC(inst); PyObject_DEL(inst); } ------------------------------------------------------------------------------ ie, delay the removal from the gc list till everything has stabilized. I hope this helps. ------------------------------------------------------- Date: 2000-Sep-14 23:43 By: nascheme Comment: Your analysis looks correct. Great work. I think there is a small problem with your fix however. You should call PyObject_GC_Fini() before the DECREFs on in_class and in_dict. If, for some reason, decrementing the reference counts of these object causes a garbage collection then the instance could still be on the gc lists and have an invalid in_class or in_dict pointer. ------------------------------------------------------- Date: 2000-Sep-15 08:02 By: nascheme Comment: I've posted a patch. Should I mark this bug as fixed or does whoever checks in the patch make that change? ------------------------------------------------------- Date: 2000-Sep-15 09:55 By: tim_one Comment: Neil, you're by far "the expert" here, so there's no need to produce a patch unless you *want* someone else to review it first. Else just commit your changes directly. As to what to do about this bug, I see that it's assigned to you, so you're responsible for changing the Resolution to Fixed and the Status to Closed when those become true. Just like in the Patch Manager, whoever is assigned to a thing is responsible for taking the next step -- or assigning it to someone else if they can't or won't (or even just really don't want to, or can't make time to) take the next step. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=113812&group_id=5470 From noreply@sourceforge.net Fri Sep 15 18:04:46 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 10:04:46 -0700 Subject: [Python-bugs-list] [Bug #110650] [HP-UX] python with-threads core-dumps (PR#342) Message-ID: <200009151704.KAA15481@delerium.i.sourceforge.net> Bug #110650, was updated on 2000-Jul-31 14:10 Here is a current snapshot of the bug. Project: Python Category: Core Status: Open Resolution: None Bug Group: Platform-specific Priority: 6 Summary: [HP-UX] python with-threads core-dumps (PR#342) Details: Jitterbug-Id: 342 Submitted-By: michael.exner@mrz.uni-magdeburg.de Date: Wed, 31 May 2000 09:43:38 -0400 (EDT) Version: 1.5.2 OS: hpux-11.00 When I compile python with threads python core-dumps: $ ./python pthread_mutex_init: Invalid argument Memory fault(coredump) without thread-support everything works fine I tried this with hpux-ansi-c and with gcc (2.95.2) but got the same result ==================================================================== Audit trail: Tue Jul 11 08:25:57 2000 guido moved from incoming to open Follow-Ups: Date: 2000-Aug-28 20:43 By: tim_one Comment: Note that the only call to pthread_mutex_init Python makes is in function PyThread_allocate_lock in file phread_pthread.h. If Python compiled at all, it's extremely unlikely that the first argument is in error. It's very likely that the second argument is in error, though: there were many imcompatible revisions of the pthreads std, and pthread_mutexattr_default is a macro conditionally defined near the top of the file. If this OS actually support pthreads, you have to figure out which *version* of pthreads it defines and arrange for config to define the *correct* one of the PY_PTHREAD_D4 PY_PTHREAD_D7 PY_PTHREAD_STD PY_PTHREAD_D6 symbols for your platform. Else disable threads entirely. ------------------------------------------------------- Date: 2000-Aug-29 07:34 By: memaul Comment: Goto link below for instructions and patches for building python 152 with threads on hpux 10.20 http://memaul.tripod.com/index.html ------------------------------------------------------- Date: 2000-Sep-07 15:05 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-15 02:34 By: harripasanen Comment: I can verify that the bug exists not only in 1.5.2 but also in 1.6. gcc 2.95.2 HPUX 11.00 I'll see if tim_one's suggestions help. Regards, Harri Pasanen ------------------------------------------------------- Date: 2000-Sep-15 04:55 By: harripasanen Comment: The problems seems to be that configure gets the libraries wrong on HP-UX 11.0. It links with -lcma, when it should link with -lpthread. So a quick and dirty solution is to relink the python by hand, replacing -lcma with -lpthread. ------------------------------------------------------- Date: 2000-Sep-15 10:04 By: fdrake Comment: Noted that this is HP-UX specific in summary. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110650&group_id=5470 From noreply@sourceforge.net Fri Sep 15 18:11:41 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 10:11:41 -0700 Subject: [Python-bugs-list] [Bug #110706] gcc error msg, 1.5.2, Slackware + threads (PR#44) Message-ID: <200009151711.KAA15796@delerium.i.sourceforge.net> Bug #110706, was updated on 2000-Jul-31 14:29 Here is a current snapshot of the bug. Project: Python Category: Build Status: Open Resolution: Remind Bug Group: Platform-specific Priority: 5 Summary: gcc error msg, 1.5.2, Slackware + threads (PR#44) Details: Jitterbug-Id: 44 Submitted-By: rene@kronos.szabinet.hu Date: Sun, 1 Aug 1999 16:39:42 -0400 (EDT) Version: 1.5.2 OS: Linux Compile error with Python-1.5.2 on Linux Slackware 4.0, kernel 2.2.10-ac8, gcc 2.7.2.3, make 3.76.1 ./configure --prefix=/usr/local --with-threads && make ... ./socketmodule.c: In function `setipaddr': ./socketmodule.c:392: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type ./socketmodule.c:392: too many arguments to function `gethostbyname_r' ./socketmodule.c:392: warning: assignment makes integer from pointer without a cast ./socketmodule.c: In function `PySocket_gethostbyname_ex': ./socketmodule.c:1471: warning: passing arg 5 of `gethostbyname_r' from incompatible pointer type ./socketmodule.c:1471: too many arguments to function `gethostbyname_r' ./socketmodule.c:1471: warning: assignment makes integer from pointer without a cast ./socketmodule.c: In function `PySocket_gethostbyaddr': ./socketmodule.c:1534: warning: passing arg 7 of `gethostbyaddr_r' from incompatible pointer type ./socketmodule.c:1534: too many arguments to function `gethostbyaddr_r' ./socketmodule.c:1534: warning: assignment makes integer from pointer without a cast make[1]: *** [socketmodule.o] Error 1 make: *** [Modules] Error 2 ==================================================================== Audit trail: Wed Aug 04 12:12:39 1999 guido moved from incoming to platformbug Mon Aug 30 12:37:34 1999 guido changed notes Mon Oct 25 15:15:46 1999 guido changed notes Follow-Ups: Date: 2000-Sep-07 15:06 By: jhylton Comment: Please do triage on this bug. ------------------------------------------------------- Date: 2000-Sep-14 22:50 By: tim_one Comment: Assigned to Fred for the heck of it. Changed the "Summary" msg as the original "Compiler error" gave me an entirely wrong impression. ------------------------------------------------------- Date: 2000-Sep-15 10:11 By: fdrake Comment: Sent a message to the submitter asking if this is still a problem with more recent Python releases; this sounds very much like a bug that's been squashed, but I don't have a Slackware Linux installation available for testing. ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=110706&group_id=5470 From noreply@sourceforge.net Fri Sep 15 18:17:11 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 10:17:11 -0700 Subject: [Python-bugs-list] [Bug #114333] minidom fails to parse PI Message-ID: <200009151717.KAA16017@delerium.i.sourceforge.net> Bug #114333, was updated on 2000-Sep-13 04:30 Here is a current snapshot of the bug. Project: Python Category: Library Status: Open Resolution: Fixed Bug Group: None Priority: 7 Summary: minidom fails to parse PI Details: # Using Python2.0b1, minidom and expat: s="""""" import xml.dom.minidom p=xml.dom.minidom.parseString(s) stack_trace=""" Traceback (most recent call last): File "test.py", line 6, in ? p=xml.dom.minidom.parseString(s) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 45 2, in parseString return _doparse( pulldom.parseString, args, kwargs ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 44 3, in _doparse events.expandNode( rootNode ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/pulldom.py", line 14 2, in expandNode cur_node.parentNode.appendChild( cur_node ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 40 0, in appendChild raise TypeError, "Two document elements disallowed" TypeError: Two document elements disallowed """ Follow-Ups: Date: 2000-Sep-13 04:37 By: jrvosse Comment: See also the python xml-sig mail list: http://www.python.org/pipermail/xml-sig/2000-September/004817.html ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114333&group_id=5470 From noreply@sourceforge.net Fri Sep 15 18:18:00 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 10:18:00 -0700 Subject: [Python-bugs-list] [Bug #114333] minidom fails to parse PI Message-ID: <200009151718.KAA16035@delerium.i.sourceforge.net> Bug #114333, was updated on 2000-Sep-13 04:30 Here is a current snapshot of the bug. Project: Python Category: Library Status: Closed Resolution: Fixed Bug Group: None Priority: 7 Summary: minidom fails to parse PI Details: # Using Python2.0b1, minidom and expat: s="""""" import xml.dom.minidom p=xml.dom.minidom.parseString(s) stack_trace=""" Traceback (most recent call last): File "test.py", line 6, in ? p=xml.dom.minidom.parseString(s) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 45 2, in parseString return _doparse( pulldom.parseString, args, kwargs ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 44 3, in _doparse events.expandNode( rootNode ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/pulldom.py", line 14 2, in expandNode cur_node.parentNode.appendChild( cur_node ) File "/hosts/multimedia/ins2/linux2/lib/python2.0/xml/dom/minidom.py", line 40 0, in appendChild raise TypeError, "Two document elements disallowed" TypeError: Two document elements disallowed """ Follow-Ups: Date: 2000-Sep-13 04:37 By: jrvosse Comment: See also the python xml-sig mail list: http://www.python.org/pipermail/xml-sig/2000-September/004817.html ------------------------------------------------------- For detailed info, follow this link: http://sourceforge.net/bugs/?func=detailbug&bug_id=114333&group_id=5470 From noreply@sourceforge.net Fri Sep 15 18:21:45 2000 From: noreply@sourceforge.net (noreply@sourceforge.net) Date: Fri, 15 Sep 2000 10:21:45 -0700 Subject: [Python-bugs-list] [Bug #114532] cgi +