Guido van Rossum [Mon, 18 Mar 2002 03:09:06 +0000 (03:09 +0000)]
Fix for SF bug 528132 (Armin Rigo): classmethod().__get__() segfault
The proper fix is not quite what was submitted; it's really better to
take the class of the object passed rather than calling PyMethod_New
with NULL pointer args, because that can then cause other core dumps
later.
I also added a testcase for the fix to classmethods() in test_descr.py.
Paul Prescod [Mon, 18 Mar 2002 02:13:48 +0000 (02:13 +0000)]
netrc will now raise a more predictable exception when $HOME is not set
(as it is often not on Windows). The code was always designed so that it
would raise an IOError if there was no .netrc. But if there was no $HOME
it would return a KeyError which would be somewhat unexpected for code
that didn't know the algorithm it used to find .netrc. The particular
code that triggered this problem for me was ftpmirror.py which handled
the IOError gracefully, but not the KeyError.
Fred Drake [Sat, 16 Mar 2002 05:58:12 +0000 (05:58 +0000)]
Clarify the descriptions of the positive and negative lookbehind assertions.
Added examples of positive lookbehind assertions.
This closes SF bug #529708.
Fred Drake [Sat, 16 Mar 2002 04:52:36 +0000 (04:52 +0000)]
pdfTeX 0.13 and 0.14 do not agree on the name of the macro, and I will not
change the installed version on either of the machines I use to format the
docs. Instead, use a compatibility hack to support both versions. This is
also better for external users of the Python styles.
Fred Drake [Fri, 15 Mar 2002 23:21:37 +0000 (23:21 +0000)]
Revise the markup related to the grammar productions to increase the
level of predictability. This is not really "good" markup, but is arguably
better than we had before.
This closes SF bug #523117.
Barry Warsaw [Fri, 15 Mar 2002 16:46:46 +0000 (16:46 +0000)]
(py-honor-comment-indentation, py-compute-indentation): Fix the
implementation to match the documentation for
py-honor-comment-indentation w.r.t. not nil or t value. In that case
it should still ignore ## for indentation purposes. Closes SF bug
#523825, w/ patch provided by Christian Stork (mod'd by Barry).
Skip Montanaro [Fri, 15 Mar 2002 13:52:43 +0000 (13:52 +0000)]
Corrected _localized_name.__getitem__ based on code in patch 503202 (which I
thought was just a bug report, so didn't notice - doh!). This handles
slicing, which v 1.23 didn't.
Jack Jansen [Fri, 15 Mar 2002 13:50:54 +0000 (13:50 +0000)]
Skip test_longexp for MacPython on Mac OS X. It triggers a pathological realloc slowdown. Some tests with shorter expressions lead me to the conclusion that it will eventually finish, but it may take a few weeks:-)
Skip Montanaro [Fri, 15 Mar 2002 04:08:38 +0000 (04:08 +0000)]
make _localized_name instances work more like the tuples they replaced. In
particular, negative indexes work and they are limited by the actual length
of the names they represent (weekday and month names). This closes bug
#503202.
Guido van Rossum [Thu, 14 Mar 2002 23:05:54 +0000 (23:05 +0000)]
"Fix" for SF bug #520644: __slots__ are not pickled.
As promised in my response to the bug report, I'm not really fixing
it; in fact, one could argule over what the proper fix should do.
Instead, I'm adding a little magic that raises TypeError if you try to
pickle an instance of a class that has __slots__ but doesn't define or
override __getstate__. This is done by adding a bozo __getstate__
that always raises TypeError.
Bugfix candidate (also the checkin to typeobject.c, of course).
Guido van Rossum [Thu, 14 Mar 2002 23:03:14 +0000 (23:03 +0000)]
"Fix" for SF bug #520644: __slots__ are not pickled.
As promised in my response to the bug report, I'm not really fixing
it; in fact, one could argule over what the proper fix should do.
Instead, I'm adding a little magic that raises TypeError if you try to
pickle an instance of a class that has __slots__ but doesn't define or
override __getstate__. This is done by adding a bozo __getstate__
that always raises TypeError.
Skip Montanaro [Thu, 14 Mar 2002 17:35:25 +0000 (17:35 +0000)]
update text to refer to ServerProxy class in preference to Server, which is
only retained for backward compatibility with older versions of the library.
Tim Peters [Wed, 13 Mar 2002 21:51:55 +0000 (21:51 +0000)]
Move to zlib 1.1.4 on Windows (the new version that squashes the "double
free" glitch).
Bugfix candidate -- I'll backpatch this into 2.2.1 later this week.
Fred Drake [Wed, 13 Mar 2002 02:48:24 +0000 (02:48 +0000)]
Extend the list of special characters and magic markup used to produce them
to include various characters used in code samples, URLs, and other special
contexts.
This closes SF bug #525684.
Fred Drake [Wed, 13 Mar 2002 02:44:50 +0000 (02:44 +0000)]
Change the way \textasciitilde is implemented so it works more consistently
(dropping tildes into data that still goes through LaTeX-like processing is
a bad idea).
Fred Drake [Tue, 12 Mar 2002 21:49:44 +0000 (21:49 +0000)]
Change the example code to prefer PyModule_Add*() instead of using the
module dictionary directly. Also, be more careful about not re-initializing
globals in the event of re-initialization of a C extension.
Jack Jansen [Tue, 12 Mar 2002 15:25:52 +0000 (15:25 +0000)]
Add a -Wno-long-double flag to the compile flags on Mac OS X. Fixes bug
525481. (Probably not a 2.2.1 candidate, unless the fix that introduced a
long double into objimpl.h (rev. 2.44) is backported to 2.2.1).
Tim Peters [Tue, 12 Mar 2002 03:04:44 +0000 (03:04 +0000)]
Change Windows file.truncate() to (a) restore the original file position,
and (b) stop trying to prevent file growth.
Beef up the file.truncate() docs.
Change test_largefile.py to stop assuming that f.truncate() moves the
file pointer to the truncation point, and to verify instead that it leaves
the file position alone. Remove the test for what happens when a
specified size exceeds the original file size (it's ill-defined, according
to the Single Unix Spec).
Tim Peters [Mon, 11 Mar 2002 00:24:00 +0000 (00:24 +0000)]
file_truncate(): provide full "large file" support on Windows, by
dropping MS's inadequate _chsize() function. This was inspired by
SF patch 498109 ("fileobject truncate support for win32"), which I
rejected.
libstdtypes.tex: Someone who knows should update the availability
blurb. For example, if it's available on Linux, it would be good to
say so.
test_largefile: Uncommented the file.truncate() tests, and reworked to
do more. The old comment about "permission errors" in the truncation
tests under Windows was almost certainly due to that the file wasn't open
for *write* access at this point, so of course MS wouldn't let you
truncate it. I'd be appalled if a Unixish system did.
CAUTION: Someone should run this test on Linux (etc) too. The
truncation part was commented out before. Note that test_largefile isn't
run by default.
Tim Peters [Sun, 10 Mar 2002 07:59:13 +0000 (07:59 +0000)]
SF patch 499062: Minor typo in test_generators.py.
There's no actual patch there. It's an objection that Guido's example
doesn't actually generator "leaves", so change the comment that says
it does.
Tim Peters [Sat, 9 Mar 2002 04:58:24 +0000 (04:58 +0000)]
SF bug 525705: [2.2] underflow raise OverflowException.
Another year in the quest to out-guess random C behavior.
Added macros Py_ADJUST_ERANGE1(X) and Py_ADJUST_ERANGE2(X, Y). The latter
is useful for functions with complex results. Two corrections to errno-
after-libm-call are attempted:
1. If the platform set errno to ERANGE due to underflow, clear errno.
Some unknown subset of libm versions and link options do this. It's
allowed by C89, but I never figured anyone would do it.
2. If the platform did not set errno but overflow occurred, force
errno to ERANGE. C89 required setting errno to ERANGE, but C99
doesn't. Some unknown subset of libm versions and link options do
it the C99 way now.
Bugfix candidate, but hold off until some Linux people actually try it,
with and without -lieee. I'll send a help plea to Python-Dev.
Tim Peters [Sat, 9 Mar 2002 00:06:26 +0000 (00:06 +0000)]
Docstring for filter(): Someone on the Tutor list reasonably complained
that it didn't tell enough of the truth.
Bugfix candidate (I guess -- it helps and it's harmless).