diff options
author | Guido van Rossum <guido@python.org> | 1997-11-14 23:32:19 (GMT) |
---|---|---|
committer | Guido van Rossum <guido@python.org> | 1997-11-14 23:32:19 (GMT) |
commit | 46de1b0669ef86558ba53c782933e588ca675eb2 (patch) | |
tree | 993ad1ed37c4280a4f40ba1e2d5d3c7a377a1422 /BUGS | |
parent | 359bcaa539d9bbb2b008b5fd0a76c758b489bed5 (diff) | |
download | cpython-46de1b0669ef86558ba53c782933e588ca675eb2.zip cpython-46de1b0669ef86558ba53c782933e588ca675eb2.tar.gz cpython-46de1b0669ef86558ba53c782933e588ca675eb2.tar.bz2 |
This BUGS list hasn't been updated since the release of Python 1.2!
It is useless. My real bugs database is currently being maintained
with GNATS.
Diffstat (limited to 'BUGS')
-rw-r--r-- | BUGS | 373 |
1 files changed, 0 insertions, 373 deletions
@@ -1,373 +0,0 @@ -THIS LIST DOES NOT CLAIM COMPLETENESS. - -==> Status indicators: (-) not fixed; (*) fixed; (?) not sure. - -====================================================================== - -Problems that are difficult to solve ------------------------------------- - -(-) "f()=0" generates syntax error msg without line number - -(-) tkinter seems to leave an exception around sometime which breaks -unmarshalling code objects [hard to reproduce, have added a trap to -marshal.c to catch it] - -(-) destroying all modules may destroy __builtin__ (or other modules) -while destructors of other modules may still need it [hard to fix -- -could maintain a list of all modules in order of importation so we can -destroy them in reverse order??? really hopeless -- would have to -destroy objects in a module in reverse order too...] - -(-) doneimport() should be called *before* the Py_AtExit code is -called [problem: what if other threads are still active?] - -Known portability problems --------------------------- - -(-) arraymodule doesn'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't defined by default - -(-) HP doesn't compile out of the box (needs LIBS=-ldld or -LIBS=/usr/lib/libdld.sl) [hard to test without a HP machine handy] - -====================================================================== -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 applying -str() 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() in -ceval.c - -(*) missing INCREF in RAISE_EXCEPTION case after gettupleitem() in -ceval.c - -(*) posix.utime gives problems on problems on platforms where struct -utime 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't -create it - -(*) a file with unmatched triple quotes causes a loop in the scanner - -(*) [X]DECREF can cause the interpreter to be called recursively (for -__del__ disciplines) -- so list and dict implementation calls doing -DECREF can cause recursive calls to methods of the object being -modified. Other files too. - -(*) if __getattr__ or __repr__ prints something, calling repr(x) from -cmd line forgets a newline - -(*) C-level coerce() doesn't call __coerce__ when it should (and -similar for __cmp__) - -(*) struct module assigns unaligned doubles when compiled with -DDEBUG -on 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't be -called before print_error() - -(*) Everything else that uses err_get() should use err_fetch() - -(*) sockets aren't thread safe (address of static struct returned, -some calls aren't thread safe) - -(*) threadmodule.c leaks LOTS of memory at thread exit - -(*) shared install in Modules still doesn't work for empty list - -(*) threadmodule.c leaks 'res' in t_bootstrap - -(*) errors.c shouldn't declare strerror() on NT - -(*) DECREF can cause the interpreter to be called recursively (for -__del__ disciplines) -- so list and dict implementation calls doing -DECREF can cause recursive calls to methods of the object being -modified. Other files too. (Only partially fixed.) - -(*) tkinter dereferences NULL if timer callback raises an exception - -(*) must link with -lieee for linux - -(*) if a timer handler routine raises an exception, the interpreter -dereferences NULL - -(*) __getattr__ doesn't clear error - -(*) '%s' % a, where a is a class instance, fails - -(*) "make test" won't find freshly built dynamically loaded modules -- -should add ./Modules to TESTPATH - -(*) lshift calls __rshift__ instead of __rlshift__ - -(*) memory leak in creation of sys.builtin_module_names - -(*) Bugs in instance_dealloc(): (a) memory leak for exception -type+value; (2) should save+restore traceback as well - -(*) modsupport.c(vmkvalue): on systems where va_list is an array, the -calls to do_mkvalue and do_mktuple don'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 argument -may dump core when called without arguments - -(*) newgetargs() dumps core in compat mode when NULL is passed in but -max is >0 - -(*) pow() should be declared varargs since it uses newgetargs - -(*) newmodule.c doesn't compile on SunOS 4.1.3 due to non-K&R backslashes - -(*) some typos in tut.tex - -(*) test for broken static forward is not strong enough - -(*) Doc/Makefile assumes . is in $PATH in call to whichlibs - -(*) math module misses hypot() function - -(*) structmember.h should include stddef.h (for offsetof macro) - -(*) gdbmmodule.c frees the wrong structures - -(*) makesetup script misses some dollars and backslashes - -(*) getargs.obj missing from NT makefile - -(*) sorting class instances broken if no __cmp__ defined - -====================================================================== -BUGS found in 1.0.3 and fixed in 1.1 ------------------------------------- - -(*) 2 specific leaks: 1 PYTHONPATH; 2 reading code from .pyc - -(*) If class C doesn'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 are -involved. - -(*) 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 error -that 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'ed memory for def -f(a=1,): ... - -(*) If you have a python binary in your path like -/ufs/guido/bin/sgi/python then the default prefix option computed by -the configure script is bogus! - -(*) Make rule for making lib*.a should remove the lib*.a file first. - -(*) vars() error message is wrong (copied from dir() obviously). - -(*) socket.gethostname() is undocumented. - -(*) rfc822.py: getfirst* dies when multiple headers occur - -(*) urllib caching is wrong (should use date from Expires header) - -(*) On a related matter: regexpr.c still has two malloc()s the results -of which are not tested for being NULL (lines 1253 and 1530). There -are also some in rgbimagemodule.c. Am I overlooking something or is -this a crasher? - -(*) strop.rindex('abc', '') returns 0 instead of 3 - -(*) sunaudiodevmodule.o is too long! - -(*) toplevel README needs new text on PC and Mac builds - -(*) long(0x80000000) has wrong value! - -====================================================================== -Bugs found in 1.0.2 and not yet fixed -------------------------------------- - -(?) compiler warnings about argument type of uname() on ULTRIX -machines (don't know what to do about it) [could be fixed by fix for -bitfields in struct uname] - -(?) syntax error for interactive input prints garbage instead of last -source line on some systems (e.g. AIX) (impossible to test/reproduce) -[I think I've found this one -- a missing INCREF in print_error] - -(?) (maybe) a bad .pyc file (with old magic number) causes the .py -file to be ignored [should be fixed by rewrite of import.c] - -(?) Sunos4.0.2 / 386 configure bugs: - - timelocal instead of mktime - - unistd.h doesn't declare some functions -(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 error -or system error ensues - -(*) bug in socket.listen: clipping backlog to >= 1 doesn't work - -(*) two bogus XDEL'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 loop -because of '_' - -(*) tokenizer/tok_nextc() runs into infinite loop when file does not -end 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't include unistd.h - -====================================================================== -Bugs found in 1.0.1 and not yet fixed -------------------------------------- - -(?) threads are slow on Solaris 2 -(so what?) - -(*) threads cause myreadline.c's readline() to think it sees an EOF. -(I *think* I've fixed this, by testing for EINTR) - -(?) min() on PC version generates wrong result (i.e. same as max()) - [this happens on SoftPC -- don't know about other systems] -(can't find the reason -- may be SoftPC bug) - -(*) flp.py cache bug: if the cache only contains one form, asking for -all forms returns only the cached form - -Bugs found in 1.0.1 and fixed in 1.0.2 --------------------------------------- - -(*) core dump when parser.parsefile() called - -(*) man page contains a mess before -d option - -(*) threads don't work on IRIX 4 - -(*) wrong cast of svideo_getattr in svmodule.c - -(*) bad return value in runpython.c's run_tty_1() - -(*) creating dict of 100,000 objects gets MemoryError or dumps core - -(*) freeze script doesn'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 some -SunOS 4.1.3 systems - -(?) jredfords reports core dump with float literals - -BUGS 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't use $(srcdir) - -(*) Modules/rgbimgmodule.c: exception name contains comma instead of dot - -(*) The FAQ still references misc/EXTENDING and misc/DYNLOAD etc - -(*) The FAQ still describes how to work around a problem in 0.9.9 exec() - -(*) Lib/aifc.py, returns float rate, should be int - -(*) Lib/sunau.py, incorrectly cumputes byte count from frame rate - -(*) README should mention possibility of passing OPT=-g to make - -(*) dynamic loading on sunos 4.1.3 must call dlopen(..., 1) - -(*) use of <varargs.h> vs. <stdarg.h> should depend on - HAVE_STDARG_PROTOTYPES, not on HAVE_STDARG_H - -(*) Doc/README refers to Misc/FTP which in fact does not exist any more - -(*) filter(None, 'abcdefg') dumps core - -(*) once you interrupt time.sleep(), there is no interrupt handler! - -====================================================================== -end of file |