THISLISTDOESNOTCLAIMCOMPLETENESS.==>Statusindicators:(-)notfixed;(*)fixed;(?)notsure.======================================================================Problemsthataredifficulttosolve------------------------------------(-)"f()=0"generatessyntaxerrormsgwithoutlinenumber(-)tkinterseemstoleaveanexceptionaroundsometimewhichbreaksunmarshallingcodeobjects[hardtoreproduce,haveaddedatraptomarshal.ctocatchit](-)destroyingallmodulesmaydestroy__builtin__(orothermodules)whiledestructorsofothermodulesmaystillneedit[hardtofix--couldmaintainalistofallmodulesinorderofimportationsowecandestroytheminreverseorder???reallyhopeless--wouldhavetodestroyobjectsinamoduleinreverseordertoo...](-)doneimport()shouldbecalled*before*thePy_AtExitcodeiscalled[problem:whatifotherthreadsarestillactive?]Knownportabilityproblems--------------------------(-)arraymoduledoesn't compile under Ultrix (FPROTO macro)(-) makesetup assumes CCC is the C++ compiler -- not portable(-) "make depend" assumes mkdep exists -- not portable(-) regen calls h2py which isn'tdefinedbydefault(-)HPdoesn't compile out of the box (needs LIBS=-ldld orLIBS=/usr/lib/libdld.sl) [hardtotestwithoutaHPmachinehandy]======================================================================BUGS present in 1.1.1 and fixed in 1.2--------------------------------------(*) extraneous fclose() in run_script() in pythonrun.c for .pyc file(*) __str__ is called if it exists (and then fails) when applyingstr() to a class(*) mem leaks in inittime() in timemodule.c(*) mem leak in optimize() in compile.c(*) mem leak in func_dealloc() in funcobject.c(*) missing DECREF for result of run_string in exec_statement() inceval.c(*) missing INCREF in RAISE_EXCEPTION case after gettupleitem() inceval.c(*) posix.utime gives problems on problems on platforms where structutime members are bitfields(*) leak in regex module.c:reg_dealloc() -- should free compiled pattern(*) many uses of macros from <ctype.h> fail with signed characters(*) compilation on NeXT requires manual editing of the Makefile(*) tkinter should cast malloc() result(*) marshal.c (w_object()) triggers GCC bug on DEC Alpha(*) int/long size bug in range() and xrange() on DEC Alpha(*) memory leaks in dbm and gdbm modules(*) refcnt bug in select.select([f], [f], [f])(*) Should fflush(stdout) before printing traceback to stderr(*) Linux uses GNU getopt by default which is broken(*) make sharedinstall references to machdep directory but doesn'tcreateit(*)afilewithunmatchedtriplequotescausesaloopinthescanner(*)[X]DECREFcancausetheinterpretertobecalledrecursively(for__del__disciplines)--solistanddictimplementationcallsdoingDECREFcancauserecursivecallstomethodsoftheobjectbeingmodified.Otherfilestoo.(*)if__getattr__or__repr__printssomething,callingrepr(x)fromcmdlineforgetsanewline(*)C-levelcoerce()doesn't call __coerce__ when it should (andsimilar for __cmp__)(*) struct module assigns unaligned doubles when compiled with -DDEBUGon sparc(*) memory leak (namebuf) in initmodule2(*) hash() of float values returns bogus values(*) pow(int, int, long) does wrong series of DECREF() calls.(*) flushline() may clear the exception condition so shouldn'tbecalledbeforeprint_error()(*)Everythingelsethatuseserr_get()shoulduseerr_fetch()(*)socketsaren't thread safe (address of static struct returned,some calls aren'tthreadsafe)(*)threadmodule.cleaksLOTSofmemoryatthreadexit(*)sharedinstallinModulesstilldoesn't work for empty list(*) threadmodule.c leaks 'res' in t_bootstrap(*) errors.c shouldn'tdeclarestrerror()onNT(*)DECREFcancausetheinterpretertobecalledrecursively(for__del__disciplines)--solistanddictimplementationcallsdoingDECREFcancauserecursivecallstomethodsoftheobjectbeingmodified.Otherfilestoo.(Onlypartiallyfixed.)(*)tkinterdereferencesNULLiftimercallbackraisesanexception(*)mustlinkwith-lieeeforlinux(*)ifatimerhandlerroutineraisesanexception,theinterpreterdereferencesNULL(*)__getattr__doesn't clear error(*) '%s' % a, where a is a class instance, fails(*) "make test" won'tfindfreshlybuiltdynamicallyloadedmodules--shouldadd./ModulestoTESTPATH(*)lshiftcalls__rshift__insteadof__rlshift__(*)memoryleakincreationofsys.builtin_module_names(*)Bugsininstance_dealloc():(a)memoryleakforexceptiontype+value;(2)shouldsave+restoretracebackaswell(*)modsupport.c(vmkvalue):onsystemswhereva_listisanarray,thecallstodo_mkvalueanddo_mktupledon't want an "&" before va.======================================================================BUGS found in 1.1 and fixed in 1.1.1------------------------------------(*) printing name of lambda in traceback dereferences NULL(*) A built-in function using getargs() and expecting >= 1 argumentmay dump core when called without arguments(*) newgetargs() dumps core in compat mode when NULL is passed in butmax is >0(*) pow() should be declared varargs since it uses newgetargs(*) newmodule.c doesn'tcompileonSunOS4.1.3duetonon-K&Rbackslashes(*)sometyposintut.tex(*)testforbrokenstaticforwardisnotstrongenough(*)Doc/Makefileassumes.isin$PATHincalltowhichlibs(*)mathmodulemisseshypot()function(*)structmember.hshouldincludestddef.h(foroffsetofmacro)(*)gdbmmodule.cfreesthewrongstructures(*)makesetupscriptmissessomedollarsandbackslashes(*)getargs.objmissingfromNTmakefile(*)sortingclassinstancesbrokenifno__cmp__defined======================================================================BUGSfoundin1.0.3andfixedin1.1------------------------------------(*)2specificleaks:1PYTHONPATH;2readingcodefrom.pyc(*)IfclassCdoesn't define __cmp__, cmp(a,b) will return -2 and[a,b].sort() will fail(*) Syntax errors are reported in a silly way if multi-line tokens areinvolved.(*) SyntaxError exception for compile('...') are reported wrongly(lineno is always zero and offset is offset into the whole string).(*) freeze script needs major rewrite to cope with multiple extensions(Jack seems to have fixed it now -- where is it?)(*) unwanted entries in stack trace if err_clear() clears an errorthat also set a stack trace(*) i, x[i] = a, b assigns b to x[a] rather than to x[i] as expected(documented with a warning in ref6.tex!)(*) etags no longer supports -t flag(*) compile.c:com_argdefs() references unalloc'edmemoryfordeff(a=1,):...(*)Ifyouhaveapythonbinaryinyourpathlike/ufs/guido/bin/sgi/pythonthenthedefaultprefixoptioncomputedbytheconfigurescriptisbogus!(*)Makeruleformakinglib*.ashouldremovethelib*.afilefirst.(*)vars()errormessageiswrong(copiedfromdir()obviously).(*)socket.gethostname()isundocumented.(*)rfc822.py:getfirst*dieswhenmultipleheadersoccur(*)urllibcachingiswrong(shouldusedatefromExpiresheader)(*)Onarelatedmatter:regexpr.cstillhastwomalloc()stheresultsofwhicharenottestedforbeingNULL(lines1253and1530).Therearealsosomeinrgbimagemodule.c.AmIoverlookingsomethingoristhisacrasher?(*)strop.rindex('abc','')returns0insteadof3(*)sunaudiodevmodule.oistoolong!(*)toplevelREADMEneedsnewtextonPCandMacbuilds(*)long(0x80000000)haswrongvalue!======================================================================Bugsfoundin1.0.2andnotyetfixed-------------------------------------(?)compilerwarningsaboutargumenttypeofuname()onULTRIXmachines(don'tknowwhattodoaboutit)[couldbefixedbyfixforbitfieldsinstructuname](?)syntaxerrorforinteractiveinputprintsgarbageinsteadoflastsourcelineonsomesystems(e.g.AIX)(impossibletotest/reproduce)[IthinkI've found this one -- a missing INCREF in print_error](?) (maybe) a bad .pyc file (with old magic number) causes the .pyfile to be ignored [should be fixed by rewrite of import.c](?) Sunos4.0.2 / 386 configure bugs: - timelocal instead of mktime - unistd.h doesn'tdeclaresomefunctions(don't know what to do about this)Bugs found in 1.0.2 and fixed in 1.0.3--------------------------------------(*) nasty bug in string formatting (see test_types.py, search for %)(*) if a triple-quoted string ends in a quote followed by a newline(followed immediately by the terminating 3 quotes) then a syntax erroror system error ensues(*) bug in socket.listen: clipping backlog to >= 1 doesn'twork(*)twobogusXDEL's in Modules/regexmodule.reg_dealloc()(*) Parser/myreadline.my_fgets: #endif EINTR misplaced(*) new IP address for ftp.cwi.nl !!!(*) typing vars() to interactive prompt runs into infinite loopbecause of '_'(*) tokenizer/tok_nextc() runs into infinite loop when file does notend in linefeed(*) Sunos4.0.2 / 386 configure bugs:(*) - use size_t at some places without including sys/types.h(*) - missing clock_t(*) - uses SEEK_SET in some places that don'tincludeunistd.h======================================================================Bugsfoundin1.0.1andnotyetfixed-------------------------------------(?)threadsareslowonSolaris2(sowhat?)(*)threadscausemyreadline.c's readline() to think it sees an EOF.(I *think* I'vefixedthis,bytestingforEINTR)(?)min()onPCversiongenerateswrongresult(i.e.sameasmax())[thishappensonSoftPC--don't know about other systems](can'tfindthereason--maybeSoftPCbug)(*)flp.pycachebug:ifthecacheonlycontainsoneform,askingforallformsreturnsonlythecachedformBugsfoundin1.0.1andfixedin1.0.2--------------------------------------(*)coredumpwhenparser.parsefile()called(*)manpagecontainsamessbefore-doption(*)threadsdon't work on IRIX 4(*) wrong cast of svideo_getattr in svmodule.c(*) bad return value in runpython.c'srun_tty_1()(*)creatingdictof100,000objectsgetsMemoryErrorordumpscore(*)freezescriptdoesn't work======================================================================BUGS found in 1.0.0 and not yet fixed-------------------------------------(*) On NeXT, need to define _POSIX_SOURCE.(?) there appears to be something wrong with gcc and -ldl on someSunOS 4.1.3 systems(?) jredfords reports core dump with float literalsBUGS found in 1.0.0 and fixed in 1.0.1--------------------------------------(*) On SGI IRIX 4 using cc, compilation errors in md5module.c.(*) In cdmodule.c, getattr initialized with (destructor)!(*) Lib/tzparse.py runs test() on import(*) Lib/filewin.py belongs in Lib/stdwin(*) lib and man install targets don'tuse$(srcdir)(*)Modules/rgbimgmodule.c:exceptionnamecontainscommainsteadofdot(*)TheFAQstillreferencesmisc/EXTENDINGandmisc/DYNLOADetc(*)TheFAQstilldescribeshowtoworkaroundaproblemin0.9.9exec()(*)Lib/aifc.py,returnsfloatrate,shouldbeint(*)Lib/sunau.py,incorrectlycumputesbytecountfromframerate(*)READMEshouldmentionpossibilityofpassingOPT=-gtomake(*)dynamicloadingonsunos4.1.3mustcalldlopen(...,1)(*)useof<varargs.h>vs.<stdarg.h>shoulddependonHAVE_STDARG_PROTOTYPES,notonHAVE_STDARG_H(*)Doc/READMEreferstoMisc/FTPwhichinfactdoesnotexistanymore(*)filter(None,'abcdefg')dumpscore(*)onceyouinterrupttime.sleep(),thereisnointerrupthandler!======================================================================endoffile