For smaller datasets, it is not always true the increasing the compression
level always results in better compression. Removed the test which made
this invalid assumption.
When the indents were set to longer than the width and long word breaking
was enabled, an infinite loop would result because the inner loop did not
assure that at least one character was stripped off on every pass.
Jason Tishler [Tue, 26 Aug 2003 11:59:27 +0000 (11:59 +0000)]
test_largefile can leave its temp file open if one of many tests fail. On
platforms (e.g., Cygwin) that are "particular" about open files, this will
cause other regression tests that use the same temp file to fail:
This patch solves the problem by adding missing "try/finally" blocks. Note
that the "large" size of this patch is due to many white space changes --
otherwise, the patch is small.
Thomas Heller [Wed, 20 Aug 2003 17:27:42 +0000 (17:27 +0000)]
Opening the WISE script changes a few items:
I have a different WISE version, and it's installed in a different directory.
My sytem directory is somewhere else.
Barry Warsaw [Tue, 19 Aug 2003 03:54:24 +0000 (03:54 +0000)]
test_rfc2231_no_language_or_charset_in_filename(),
test_rfc2231_no_language_or_charset_in_boundary(),
test_rfc2231_no_language_or_charset_in_charset(): New tests for proper
decoding of some RFC 2231 headers.
Backport candidate (as was the Utils.py 1.25 change) to both Python
2.3.1 and 2.2.4 -- will do momentarily.
Tim Peters [Mon, 18 Aug 2003 23:52:09 +0000 (23:52 +0000)]
This started opening files in text mode by default in the 2.3 release,
which is a disaster on Windows. Restored the binary default of all
previous releases. Also minor code cleanups.
* Relaxed the argument restrictions for non-operator methods. They now
allow any iterable instead of requiring a set. This makes the module
a little easier to use and paves the way for an efficient C
implementation which can take better advantage of iterable arguments
while screening out immutables.
* Deprecated Set.update() because it now duplicates Set.union_update()
* Adapted the tests and docs to include the above changes.
* Added more test coverage including testing identities and checking
to make sure non-restartable generators work as arguments.
Will backport to Py2.3.1 so that the interface remains consistent
across versions. The deprecation of update() will be changed to
a FutureWarning.
Tim Peters [Fri, 15 Aug 2003 01:16:37 +0000 (01:16 +0000)]
complex_new(): This could leak when the argument was neither string nor
number. This accounts for the 2 refcount leaks per test_complex run
Michael Hudson discovered (I figured only I would have the stomach to
look for leaks in floating-point code <wink>).
Walter Dörwald [Thu, 14 Aug 2003 20:25:29 +0000 (20:25 +0000)]
Fix refcount leak in PyUnicode_EncodeCharmap(). The bug surfaces
when an encoding error occurs and the callback name is unknown,
i.e. when the callback has to be called. The problem was that
the fact that the callback has already been looked up was only
recorded in a local variable in charmap_encoding_error(), because
charmap_encoding_error() got it's own copy of the errorHandler
pointer instead of a pointer to the pointer in
PyUnicode_EncodeCharmap().
Fix reference leak noted in test_types:
Check for a[:] = a _before_ calling PySequence_Fast on a.
release23-maint candidate
Reference leak doesn't happen with head of release22-maint.
Fred Drake [Thu, 14 Aug 2003 15:52:33 +0000 (15:52 +0000)]
When piping output into a pager like "less", quiting the pager before
the output was consumed would cause and exception to be raise in
logmerge; suppress this specific error, because it's not helpful.
Walter Dörwald [Tue, 12 Aug 2003 17:32:43 +0000 (17:32 +0000)]
Enhance message for UnicodeEncodeError and UnicodeTranslateError.
If there is only one bad character it will now be printed in a
form that is a valid Python string.
Now test_descr only appears to leak two references & I think this
are in fact illusory (it's to do with things getting resurrected in
__del__ methods & it's easy to be believe confusion occurs when that
happens <wink>). Woohoo!
Skip Montanaro [Mon, 11 Aug 2003 13:15:11 +0000 (13:15 +0000)]
shit - just change the visible name, not the comments - strictly speaking,
the tp_name is not correct, but what's exposed to users is known visibly as
"StringIO", not "StringI" or "StringO".
The default seed is time.time().
Multiplied by 256 before truncating so that fractional seconds are used.
This way, two successive calls to random.seed() are much more likely
to produce different sequences.
/* XXX From here until type is allocated, "return NULL" leaks bases! */
Sure looks like it to me! <wink>
When I run the leak2.py script I posted to python-dev, I only see
three reference leaks in all of test_descr. When I run
test_descr.test_main, I still see 46 leaks. This clearly demands
posting a yelp to python-dev :-)
This certainly should be applied to release23-maint, and in all
likelyhood release22-maint as well.