Merge p3yk branch with the trunk up to revision 45595. This breaks a fair
number of tests, all because of the codecs/_multibytecodecs issue described
here (it's not a Py3K issue, just something Py3K discovers):
http://mail.python.org/pipermail/python-dev/2006-April/064051.html
Hye-Shik Chang promised to look for a fix, so no need to fix it here. The
tests that are expected to break are:
test_codecencodings_cn
test_codecencodings_hk
test_codecencodings_jp
test_codecencodings_kr
test_codecencodings_tw
test_codecs
test_multibytecodec
This merge fixes an actual test failure (test_weakref) in this branch,
though, so I believe merging is the right thing to do anyway.
diff --git a/Misc/build.sh b/Misc/build.sh
index 3c669a0..de51539 100755
--- a/Misc/build.sh
+++ b/Misc/build.sh
@@ -55,13 +55,21 @@
RSYNC_OPTS="-aC -e ssh"
REFLOG="build/reflog.txt.out"
-# These tests are not stable and sometimes report leaks; however,
-# test_generators really leaks. Since test_generators probably won't
-# be fixed real soon, disable warning about it for now.
+# These tests are not stable and falsely report leaks sometimes.
# The entire leak report will be mailed if any test not in this list leaks.
-LEAKY_TESTS="test_(capi|cfgparser|charmapcodec|cmd_line|compiler|filecmp|generators|quopri|socket|threaded_import|threadedtempfile|threading|threading_local|urllib2)"
+# Note: test_XXX (none currently) really leak, but are disabled
+# so we don't send spam. Any test which really leaks should only
+# be listed here if there are also test cases under Lib/test/leakers.
+LEAKY_TESTS="test_(ctypes|filecmp|socket|threadedtempfile|threading|urllib2)"
-# Change this flag to "yes" for old releases to just update/build the docs.
+# Skip these tests altogether when looking for leaks. These tests
+# do not need to be stored above in LEAKY_TESTS too.
+# test_compiler almost never finishes with the same number of refs
+# since it depends on other modules, skip it.
+# test_logging causes hangs, skip it.
+LEAKY_SKIPS="-x test_compiler test_logging"
+
+# Change this flag to "yes" for old releases to only update/build the docs.
BUILD_DISABLED="no"
## utility functions
@@ -159,7 +167,9 @@
## run the tests looking for leaks
F=make-test-refleak.out
start=`current_time`
- ./python ./Lib/test/regrtest.py -R 4:3:$REFLOG -u network >& build/$F
+ ## ensure that the reflog exists so the grep doesn't fail
+ touch $REFLOG
+ ./python ./Lib/test/regrtest.py -R 4:3:$REFLOG -u network $LEAKY_SKIPS >& build/$F
NUM_FAILURES=`egrep -vc "$LEAKY_TESTS" $REFLOG`
update_status "Testing refleaks ($NUM_FAILURES failures)" "$F" $start
mail_on_failure "refleak" $REFLOG