[Python-Dev] current problems that should be fixed before release (2.6)

Neal Norwitz nnorwitz at gmail.com
Sun Aug 24 07:12:49 CEST 2008


Below are the problems I found that have not been fixed at r65995 on
trunk (2.6).  There will be a separate mail for the 3.0 problems.

I've done the following:
 * built in debug and opt mode (gcc 4.1.2) fixing the important warnings
 * run all the tests in both modes
 * run all the tests (except test_logging and test_ssl) under valgrind
3.3.1 fixing the problems
 * run failmalloc (1.0) on startup for the first 4000 allocations
fixing most problems
 * run pychecker 0.8.18 over the stdlib (Lib/*.py, Lib/[bcdelhjmswx]*/*.py)

Can someone run purify on windows over 2.6?
Can someone (else) compare performance of 2.5, 2.6, and 3.0?

pychecker reported problems:
  Lib/gzip.py:114: Using property (filename) in classic class GzipFile
may not work
  Lib/io.py:1394: No module attribute (device_encoding) found
    - device_encoding access is protected, but I don't see where it can be set
  Lib/sched.py:122: Using property (queue) in classic class scheduler
may not work
  Lib/tempfile.py:535: Using property (closed) in classic class
SpooledTemporaryFile may not work
  Lib/tempfile.py:539: Using property (encoding) in classic class
SpooledTemporaryFile may not work
  Lib/tempfile.py:553: Using property (mode) in classic class
SpooledTemporaryFile may not work
  Lib/tempfile.py:557: Using property (name) in classic class
SpooledTemporaryFile may not work
  Lib/tempfile.py:561: Using property (newlines) in classic class
SpooledTemporaryFile may not work
  Lib/tempfile.py:580: Using property (softspace) in classic class
SpooledTemporaryFile may not work
  Lib/multiprocessing/connection.py:95: No global (PipeListener) found
  Lib/multiprocessing/connection.py:132: No global (PipeClient) found
    - both of the Pipe classes are defined only for windows.  I don't
see a similar def for Unix.
  Lib/multiprocessing/connection.py:378: No global (AuthenticationError) found

I haven't looked into the property complaint to see how bad it is.

test_bsddb3 is failing on several 2.6 buildbots.
test_bsddb3 leaks 80 references.

Results of valgrind 3.3.1 on Ubuntu 6.10 amd64, gcc 4.1.2 (prerelease):

Uninitialized memory reads: No problems in python code.  Though it's
possible there are errors in ctypes.  I'm ignoring those reports due
to a problem in dlopen.

Wild memory writes: No problems in python code.

Memory leaks:
No major problems.  However, it seems that there are a bunch of little
leaks when forking a process.  I haven't determined if these are real
problems or not.

There is one memory leak in ctypes (sorry no real useful information):
  44 bytes in 1 blocks are definitely lost in loss record 43 of 191
    malloc (vg_replace_malloc.c:207)
    resize (callproc.c:1733)

It seems to always leak 44 bytes

n


More information about the Python-Dev mailing list