]> granicus.if.org Git - python/log
python
24 years agoBugfix candidate.
Tim Peters [Sat, 19 May 2001 07:04:38 +0000 (07:04 +0000)]
Bugfix candidate.
Two exceedingly unlikely errors in dictresize():
1. The loop for finding the new size had an off-by-one error at the
   end (could over-index the polys[] vector).
2. The polys[] vector ended with a 0, apparently intended as a sentinel
   value but never used as such; i.e., it was never checked, so 0 could
   have been used *as* a polynomial.
Neither bug could trigger unless a dict grew to 2**30 slots; since that
would consume at least 12GB of memory just to hold the dict pointers,
I'm betting it's not the cause of the bug Fred's tracking down <wink>.

24 years agoUpdate a comment.
Fred Drake [Fri, 18 May 2001 21:50:02 +0000 (21:50 +0000)]
Update a comment.

24 years agoSimple conversion to PyUnit.
Fred Drake [Fri, 18 May 2001 21:45:35 +0000 (21:45 +0000)]
Simple conversion to PyUnit.

24 years agoSimple conversion to PyUnit.
Fred Drake [Fri, 18 May 2001 21:38:52 +0000 (21:38 +0000)]
Simple conversion to PyUnit.

24 years agoFix whitespace botch.
Fred Drake [Fri, 18 May 2001 21:03:40 +0000 (21:03 +0000)]
Fix whitespace botch.

24 years agovgetargs1() and vgetargskeywords(): Replace uses of PyTuple_Size() and
Jeremy Hylton [Fri, 18 May 2001 20:57:38 +0000 (20:57 +0000)]
vgetargs1() and vgetargskeywords(): Replace uses of PyTuple_Size() and
    PyTuple_GetItem() with PyTuple_GET_SIZE() and PyTuple_GET_ITEM().
    The code has already done a PyTuple_Check().

24 years agoAdd a second special case to the inline function call code in eval_code2().
Jeremy Hylton [Fri, 18 May 2001 20:53:14 +0000 (20:53 +0000)]
Add a second special case to the inline function call code in eval_code2().

If we have a PyCFunction (builtin) and it is METH_VARARGS only, load
the args and dispatch to call_cfunction() directly.  This provides a
small speedup for perhaps the most common function calls -- builtins.

24 years agoAdded test suite for the new HTMLParser module, originally from the
Fred Drake [Fri, 18 May 2001 15:32:59 +0000 (15:32 +0000)]
Added test suite for the new HTMLParser module, originally from the
TAL/PageTemplate package for Zope.  This only needed a little boilerplate
change; the tests themselves are unchanged.

24 years agoA much improved HTML parser -- a replacement for sgmllib. The API is
Guido van Rossum [Fri, 18 May 2001 14:50:52 +0000 (14:50 +0000)]
A much improved HTML parser -- a replacement for sgmllib.  The API is
derived from but not quite compatible with that of sgmllib, so it's a
new file.  I suppose it needs documentation, and htmllib needs to be
changed to use this instead of sgmllib, and sgmllib needs to be
declared obsolete.  But that can all be done later.

This code was first published as part of TAL (part of Zope Page
Templates), but that was strongly based on sgmllib anyway.  Authors
are Fred drake and Guido van Rossum.

24 years agoSpeed dictresize by collapsing its two passes into one; the reason given
Tim Peters [Thu, 17 May 2001 22:25:34 +0000 (22:25 +0000)]
Speed dictresize by collapsing its two passes into one; the reason given
in the comments for using two passes was bogus, as the only object that
can get decref'ed due to the copy is the dummy key, and decref'ing dummy
can't have side effects (for one thing, dummy is immortal!  for another,
it's a string object, not a potentially dangerous user-defined object).

24 years agoAdded pymactoolboxglue.c and changed the exported symbols having to do with this.
Jack Jansen [Thu, 17 May 2001 22:14:36 +0000 (22:14 +0000)]
Added pymactoolboxglue.c and changed the exported symbols having to do with this.

24 years agoDynamically loaded toolbox modules don't need to link against each other anymore...
Jack Jansen [Thu, 17 May 2001 22:12:55 +0000 (22:12 +0000)]
Dynamically loaded toolbox modules don't need to link against each other anymore, due to the new glue code that ties them together.

24 years agoGlue code to connect obj_New and obj_Convert routines (the PyArg_Parse and Py_BuildTu...
Jack Jansen [Thu, 17 May 2001 22:11:44 +0000 (22:11 +0000)]
Glue code to connect obj_New and obj_Convert routines (the PyArg_Parse and Py_BuildTuple helpers) from one dynamically imported module to another.

24 years agoFirst step in porting MacPython modules to OSX/unix: break all references between...
Jack Jansen [Thu, 17 May 2001 21:58:34 +0000 (21:58 +0000)]
First step in porting MacPython modules to OSX/unix: break all references between modules except for the obj_New() and obj_Convert() routines, the PyArg_Parse and Py_BuildValue helpers.

And these can now be vectored through glue routines (by defining USE_TOOLBOX_OBJECT_GLUE) which will do the necessary imports, whereupon the module's init routine will tell the glue routine about the real conversion routine address and everything is fine again.

24 years agoFixed botched indent in _init_mac() code. (It may never be executed,
Guido van Rossum [Thu, 17 May 2001 15:03:14 +0000 (15:03 +0000)]
Fixed botched indent in _init_mac() code.  (It may never be executed,
but it still can't have any syntax errors.  Went a little too fast
there, Jack? :-)

24 years agoMade distutils understand the MacPython Carbon runtime model. Distutils will build...
Jack Jansen [Thu, 17 May 2001 12:52:01 +0000 (12:52 +0000)]
Made distutils understand the MacPython Carbon runtime model. Distutils will build for the runtime model you are currently using for the interpreter.

24 years agoFixed macroman<->latin1 conversion. Some chars don't
Jack Jansen [Thu, 17 May 2001 12:45:13 +0000 (12:45 +0000)]
Fixed macroman<->latin1 conversion. Some chars don't
exist in latin1, but at least the roundtrip results in the
same macroman characters.

24 years agoFixed macroman<->latin1 conversion. Some characters don't exist in latin1, but at...
Jack Jansen [Thu, 17 May 2001 12:35:13 +0000 (12:35 +0000)]
Fixed macroman<->latin1 conversion. Some characters don't exist in latin1, but at least the roundtrip gives
the correct macroman characters again.

24 years agoMoved the encoding map building logic from the individual mapping
Marc-André Lemburg [Wed, 16 May 2001 09:41:45 +0000 (09:41 +0000)]
Moved the encoding map building logic from the individual mapping
codec files to codecs.py and added logic so that multi mappings
in the decoding maps now result in mappings to None (undefined mapping)
in the encoding maps.

24 years agoBah, somehow the macroman<->iso-latin-1 translation got lost during the merge. Checki...
Jack Jansen [Tue, 15 May 2001 20:22:08 +0000 (20:22 +0000)]
Bah, somehow the macroman<->iso-latin-1 translation got lost during the merge. Checking in one fixed file to make sure MacCVS Pro isn't the problem. If it isn't a flurry of checkins will follow tomorrow. If it is... well...

24 years agoSpeed tuple comparisons in two ways:
Tim Peters [Tue, 15 May 2001 20:12:59 +0000 (20:12 +0000)]
Speed tuple comparisons in two ways:
1. Omit the early-out EQ/NE "lengths different?" test.  Was unable to find
   any real code where it triggered, but it always costs.  The same is not
   true of list richcmps, where different-size lists appeared to get
   compared about half the time.
2. Because tuples are immutable, there's no need to refetch the lengths of
   both tuples from memory again on each loop trip.

BUG ALERT:  The tuple (and list) richcmp algorithm is arguably wrong,
because it won't believe there's any difference unless Py_EQ returns false
for some corresponding elements:

>>> class C:
...     def __lt__(x, y): return 1
...     __eq__ = __lt__
...
>>> C() < C()
1
>>> (C(),) < (C(),)
0
>>>

That doesn't make sense -- provided you believe the defn. of C makes sense.

24 years agoAdd NEWS item for new string methods.
Marc-André Lemburg [Tue, 15 May 2001 18:38:45 +0000 (18:38 +0000)]
Add NEWS item for new string methods.

24 years agoJust changed "x,y" to "x, y" everywhere (i.e., inserted horizontal space
Tim Peters [Tue, 15 May 2001 17:19:16 +0000 (17:19 +0000)]
Just changed "x,y" to "x, y" everywhere (i.e., inserted horizontal space
after commas that didn't have any).

24 years agoAdd quoted-printable codec
Guido van Rossum [Tue, 15 May 2001 15:34:07 +0000 (15:34 +0000)]
Add quoted-printable codec

24 years agoBeef up the unicode() description a bit, based on material from AMK's
Fred Drake [Tue, 15 May 2001 15:27:53 +0000 (15:27 +0000)]
Beef up the unicode() description a bit, based on material from AMK's
"What's New in Python ..." documents.

24 years agoabspath(): Fix inconsistent indentation.
Fred Drake [Tue, 15 May 2001 15:23:01 +0000 (15:23 +0000)]
abspath():  Fix inconsistent indentation.

24 years agoThis patch changes the way the string .encode() method works slightly
Marc-André Lemburg [Tue, 15 May 2001 12:00:02 +0000 (12:00 +0000)]
This patch changes the way the string .encode() method works slightly
and introduces a new method .decode().

The major change is that strg.encode() will no longer try to convert
Unicode returns from the codec into a string, but instead pass along
the Unicode object as-is. The same is now true for all other codec
return types. The underlying C APIs were changed accordingly.

Note that even though this does have the potential of breaking
existing code, the chances are low since conversion from Unicode
previously took place using the default encoding which is normally
set to ASCII rendering this auto-conversion mechanism useless for
most Unicode encodings.

The good news is that you can now use .encode() and .decode() with
much greater ease and that the door was opened for better accessibility
of the builtin codecs.

As demonstration of the new feature, the patch includes a few new
codecs which allow string to string encoding and decoding (rot13,
hex, zip, uu, base64).

Written by Marc-Andre Lemburg. Copyright assigned to the PSF.

24 years agoAdd warnings to the strop module, for to those functions that really
Guido van Rossum [Tue, 15 May 2001 02:14:44 +0000 (02:14 +0000)]
Add warnings to the strop module, for to those functions that really
*are* obsolete; three variables and the maketrans() function are not
(yet) obsolete.

Add a compensating warnings.filterwarnings() call to test_strop.py.

Add this to the NEWS.

24 years agoIgnore 'build' and 'Makefile.pre'.
Guido van Rossum [Tue, 15 May 2001 01:53:40 +0000 (01:53 +0000)]
Ignore 'build' and 'Makefile.pre'.

24 years agoFix new compiler warnings. Also boost "start" from (C) int to long and
Tim Peters [Mon, 14 May 2001 23:19:12 +0000 (23:19 +0000)]
Fix new compiler warnings.  Also boost "start" from (C) int to long and
return a (C) long:  PyArg_ParseTuple and Py_BuildValue may not let us get
at the size_t we really want, but C int is clearly too small for a 64-bit
box, and both the start parameter and the return value should work for
large mapped files even on 32-bit boxes.  The code really needs to be
rethought from scratch (not by me, though ...).

24 years agoSF patch #418147 Fixes to allow compiling w/ Borland, from Stephen Hansen.
Tim Peters [Mon, 14 May 2001 22:32:33 +0000 (22:32 +0000)]
SF patch #418147 Fixes to allow compiling w/ Borland, from Stephen Hansen.

24 years agofcntl.ioctl(): Update error message; necessity noted by Michael Hudson.
Fred Drake [Mon, 14 May 2001 21:02:36 +0000 (21:02 +0000)]
fcntl.ioctl():  Update error message; necessity noted by Michael Hudson.

24 years agoConvert a couple of comments to docstrings -- PyUnit can use these when
Fred Drake [Mon, 14 May 2001 19:15:23 +0000 (19:15 +0000)]
Convert a couple of comments to docstrings -- PyUnit can use these when
the regression test is run in verbose mode.

24 years agopprint's workhorse _safe_repr() function took time quadratic in the # of
Tim Peters [Mon, 14 May 2001 18:39:41 +0000 (18:39 +0000)]
pprint's workhorse _safe_repr() function took time quadratic in the # of
elements when crunching a list, dict or tuple.  Now takes linear time
instead -- huge speedup for even moderately large containers, and the
code is notably simpler too.
Added some basic "is the output correct?" tests to test_pprint.

24 years agoConvert the pprint test to use PyUnit.
Fred Drake [Mon, 14 May 2001 17:41:20 +0000 (17:41 +0000)]
Convert the pprint test to use PyUnit.

24 years agoMake sure we include all of Python's numeric types in the data model
Fred Drake [Mon, 14 May 2001 16:04:22 +0000 (16:04 +0000)]
Make sure we include all of Python's numeric types in the data model
description, so that the introduction of complex is not a surprise.

This closes SF bug #423429.

24 years agoAdded a WITHOUT_FRAMEWORKS define to all the config files, so that on MacOS<=9 compil...
Jack Jansen [Mon, 14 May 2001 15:00:38 +0000 (15:00 +0000)]
Added a WITHOUT_FRAMEWORKS define to all the config files, so that on MacOS<=9 compiles use Universal Headers, not Carbon/Carbon.h.

24 years agoFix a typo, consistently spell ASCII in all caps, and insert blank
Guido van Rossum [Mon, 14 May 2001 13:53:38 +0000 (13:53 +0000)]
Fix a typo, consistently spell ASCII in all caps, and insert blank
lines between paragraphs in Mark Hammond's news item about the default
encoding in posixmodule.  Resist the temptation to reflow paragraphs.

24 years agoFix the Py_FileSystemDefaultEncoding checkin - declare the variable in a fileobject...
Mark Hammond [Mon, 14 May 2001 12:17:34 +0000 (12:17 +0000)]
Fix the Py_FileSystemDefaultEncoding checkin - declare the variable in a fileobject.h, and initialize it in bltinmodule.

24 years agoFix the .find() method for memory maps.
Greg Stein [Mon, 14 May 2001 09:32:26 +0000 (09:32 +0000)]
Fix the .find() method for memory maps.

1) it didn't obey the "start" parameter (and when it does, we must validate
   the value)
2) the return value needs to be an absolute index, rather than relative to
   some arbitrary point in the file

(checking CVS, it appears this method never worked; these changes bring it
 into line with typical .find() behavior)

24 years agoSF bug[ #423781: pprint.isrecursive() broken.
Tim Peters [Mon, 14 May 2001 07:05:58 +0000 (07:05 +0000)]
SF bug[ #423781:  pprint.isrecursive() broken.

24 years agoAdd mention of the default file system encoding for Windows.
Mark Hammond [Mon, 14 May 2001 03:09:36 +0000 (03:09 +0000)]
Add mention of the default file system encoding for Windows.

24 years agoA disgusting "fix" for the test___all__ failure under Windows.
Tim Peters [Sun, 13 May 2001 09:01:06 +0000 (09:01 +0000)]
A disgusting "fix" for the test___all__ failure under Windows.

24 years agoAdd support for Windows using "mbcs" as the default Unicode encoding when dealing...
Mark Hammond [Sun, 13 May 2001 08:04:26 +0000 (08:04 +0000)]
Add support for Windows using "mbcs" as the default Unicode encoding when dealing with the file system.  As discussed on python-dev and in patch 410465.

24 years agoAggressive reordering of dict comparisons. In case of collision, it stands
Tim Peters [Sun, 13 May 2001 06:43:53 +0000 (06:43 +0000)]
Aggressive reordering of dict comparisons.  In case of collision, it stands
to reason that me_key is much more likely to match the key we're looking
for than to match dummy, and if the key is absent me_key is much more
likely to be NULL than dummy:  most dicts don't even have a dummy entry.
Running instrumented dict code over the test suite and some apps confirmed
that matching dummy was 200-300x less frequent than matching key in
practice.  So this reorders the tests to try the common case first.
It can lose if a large dict with many collisions is mostly deleted, not
resized, and then frequently searched, but that's hardly a case we
should be favoring.

24 years agoGet rid of the superstitious "~" in dict hashing's "i = (~hash) & mask".
Tim Peters [Sun, 13 May 2001 00:19:31 +0000 (00:19 +0000)]
Get rid of the superstitious "~" in dict hashing's "i = (~hash) & mask".
The comment following used to say:
/* We use ~hash instead of hash, as degenerate hash functions, such
   as for ints <sigh>, can have lots of leading zeros. It's not
   really a performance risk, but better safe than sorry.
   12-Dec-00 tim:  so ~hash produces lots of leading ones instead --
   what's the gain? */
That is, there was never a good reason for doing it.  And to the contrary,
as explained on Python-Dev last December, it tended to make the *sum*
(i + incr) & mask (which is the first table index examined in case of
collison) the same "too often" across distinct hashes.

Changing to the simpler "i = hash & mask" reduced the number of string-dict
collisions (== # number of times we go around the lookup for-loop) from about
6 million to 5 million during a full run of the test suite (these are
approximate because the test suite does some random stuff from run to run).
The number of collisions in non-string dicts also decreased, but not as
dramatically.

Note that this may, for a given dict, change the order (wrt previous
releases) of entries exposed by .keys(), .values() and .items().  A number
of std tests suffered bogus failures as a result.  For dicts keyed by
small ints, or (less so) by characters, the order is much more likely to be
in increasing order of key now; e.g.,

>>> d = {}
>>> for i in range(10):
...    d[i] = i
...
>>> d
{0: 0, 1: 1, 2: 2, 3: 3, 4: 4, 5: 5, 6: 6, 7: 7, 8: 8, 9: 9}
>>>

Unfortunately. people may latch on to that in small examples and draw a
bogus conclusion.

test_support.py
    Moved test_extcall's sortdict() into test_support, made it stronger,
    and imported sortdict into other std tests that needed it.
test_unicode.py
    Excluced cp875 from the "roundtrip over range(128)" test, because
    cp875 doesn't have a well-defined inverse for unicode("?", "cp875").
    See Python-Dev for excruciating details.
Cookie.py
    Chaged various output functions to sort dicts before building
    strings from them.
test_extcall
    Fiddled the expected-result file.  This remains sensitive to native
    dict ordering, because, e.g., if there are multiple errors in a
    keyword-arg dict (and test_extcall sets up many cases like that), the
    specific error Python complains about first depends on native dict
    ordering.

24 years agoGot the first MacPython module working under MacOSX/MachO (gestalt). Main changes
Jack Jansen [Sat, 12 May 2001 22:46:35 +0000 (22:46 +0000)]
Got the first MacPython module working under MacOSX/MachO (gestalt). Main changes
are including Carbon/Carbon.h in stead of the old headers (unless WITHOUT_FRAMEWORKS
is defined, as it will be for classic MacPython) and selectively disabling all the
stuff that is unneeded in a unix-Python (event handling, etc).

24 years agoBe more sensible about when to use TARGET_API_MAC_OS8 in stead of !TARGET_API_MAC_CAR...
Jack Jansen [Sat, 12 May 2001 21:31:34 +0000 (21:31 +0000)]
Be more sensible about when to use TARGET_API_MAC_OS8 in stead of !TARGET_API_MAC_CARBON. This should greatly facilitate porting stuff to OSX in its MachO/BSD incarnation.

24 years agoAdded iterobject.c to the project. And trying my first checkin at the same time.
Jack Jansen [Sat, 12 May 2001 21:09:45 +0000 (21:09 +0000)]
Added iterobject.c to the project. And trying my first checkin at the same time.

24 years agoRepair "module has no attribute xxx" error msg; bug introduced when
Tim Peters [Sat, 12 May 2001 20:24:22 +0000 (20:24 +0000)]
Repair "module has no attribute xxx" error msg; bug introduced when
switching from tp_getattr to tp_getattro.

24 years agoRefactored, with some future plans in mind.
Guido van Rossum [Sat, 12 May 2001 12:30:04 +0000 (12:30 +0000)]
Refactored, with some future plans in mind.

This now uses the new gotofileline() method defined in FileList.py.

24 years agoMove the action of loading the configuration to the IdleConf module
Guido van Rossum [Sat, 12 May 2001 12:18:10 +0000 (12:18 +0000)]
Move the action of loading the configuration to the IdleConf module
rather than the idle.py script.  This has advantages and
disadvantages; the biggest advantage being that we can more easily
have an alternative main program.

24 years agoDelete goodname() method, which is unused.
Guido van Rossum [Sat, 12 May 2001 12:11:36 +0000 (12:11 +0000)]
Delete goodname() method, which is unused.

Add gotofileline(), a convenience method which I intend to use in a
variant.

Rename test() to _test().

24 years agoVariant of patch #423262: Change module attribute get & set
Tim Peters [Fri, 11 May 2001 21:51:48 +0000 (21:51 +0000)]
Variant of patch #423262:  Change module attribute get & set
Allow module getattr and setattr to exploit string interning, via the
previously null module object tp_getattro and tp_setattro slots.   Yields
a very nice speedup for things like random.random and os.path etc.

24 years agoFix a minor style consistency issue.
Fred Drake [Fri, 11 May 2001 20:12:26 +0000 (20:12 +0000)]
Fix a minor style consistency issue.

When getting a string buffer for a string we just created, use
PyString_AS_STRING() instead of PyString_AsString() to avoid the
call overhead and extra type check.

24 years agoFix one bare except: clause.
Fred Drake [Fri, 11 May 2001 19:52:57 +0000 (19:52 +0000)]
Fix one bare except: clause.

24 years ago[].index() raises ValueError if the value is not in the list, so only
Fred Drake [Fri, 11 May 2001 19:52:03 +0000 (19:52 +0000)]
[].index() raises ValueError if the value is not in the list, so only
catch that instead of using a bare except clause.

24 years ago[].index() raises ValueError if the value is not in the list, so only
Fred Drake [Fri, 11 May 2001 19:44:55 +0000 (19:44 +0000)]
[].index() raises ValueError if the value is not in the list, so only
catch that instead of using a bare except clause.

24 years agoOnly catch NameError and TypeError when attempting to subclass an
Fred Drake [Fri, 11 May 2001 19:40:10 +0000 (19:40 +0000)]
Only catch NameError and TypeError when attempting to subclass an
exception (for compatibility with old versions of Python).

24 years agoRemove a bare try/except completely -- it just did not make sense!
Fred Drake [Fri, 11 May 2001 19:25:08 +0000 (19:25 +0000)]
Remove a bare try/except completely -- it just did not make sense!

Add a comment elsewhere making clear an assumption in the code.

24 years agoWhen guarding an import, only catch ImportError.
Fred Drake [Fri, 11 May 2001 19:21:41 +0000 (19:21 +0000)]
When guarding an import, only catch ImportError.

24 years agoClean up a bare except where we only expect to catch pcre.error.
Fred Drake [Fri, 11 May 2001 19:20:17 +0000 (19:20 +0000)]
Clean up a bare except where we only expect to catch pcre.error.

24 years agoClean up bare except where only IOError makes sense.
Fred Drake [Fri, 11 May 2001 19:15:28 +0000 (19:15 +0000)]
Clean up bare except where only IOError makes sense.

24 years agoClean up bare except: when determining whether a file is seekable.
Fred Drake [Fri, 11 May 2001 19:14:51 +0000 (19:14 +0000)]
Clean up bare except: when determining whether a file is seekable.

24 years agoOpening a file for reading can raise IOError, so only catch that.
Fred Drake [Fri, 11 May 2001 18:47:54 +0000 (18:47 +0000)]
Opening a file for reading can raise IOError, so only catch that.

24 years agoint() of a string is only expected to through ValueError, so do not use
Fred Drake [Fri, 11 May 2001 18:45:52 +0000 (18:45 +0000)]
int() of a string is only expected to through ValueError, so do not use
a bare except clause.

24 years ago<socket>.getsockopt() and <socket>.setsockopt() can only raise socket.error,
Fred Drake [Fri, 11 May 2001 18:28:54 +0000 (18:28 +0000)]
<socket>.getsockopt() and <socket>.setsockopt() can only raise socket.error,
so only catch that specific exception.

24 years agoCatch only the relevant exceptions instead of using a bare except clause.
Fred Drake [Fri, 11 May 2001 18:27:00 +0000 (18:27 +0000)]
Catch only the relevant exceptions instead of using a bare except clause.

24 years agoAdd some text to make the dircmp object section more readable, and move
Fred Drake [Fri, 11 May 2001 17:01:32 +0000 (17:01 +0000)]
Add some text to make the dircmp object section more readable, and move
some stuff around.

24 years agoInclude sys/modem.h if we have it; this is needed on HP-UX to provide
Fred Drake [Fri, 11 May 2001 16:14:17 +0000 (16:14 +0000)]
Include sys/modem.h if we have it; this is needed on HP-UX to provide
constants used by other macros from the headers.

Conditionalize VREPRINT and VDISCARD; these are not available on HP-UX.

This closes bug #417418.

24 years agothe usual...
Fred Drake [Fri, 11 May 2001 16:11:25 +0000 (16:11 +0000)]
the usual...

24 years agoAdd a check for sys/modem.h, needed by termios on HP-UX.
Fred Drake [Fri, 11 May 2001 16:10:56 +0000 (16:10 +0000)]
Add a check for sys/modem.h, needed by termios on HP-UX.

24 years ago--sigh--
Fred Drake [Fri, 11 May 2001 15:49:19 +0000 (15:49 +0000)]
--sigh--
Finish the last set of changes to these files so the conversion does not
break.

24 years agoMarkup adjustments to avoid getting junk in the index.
Fred Drake [Fri, 11 May 2001 15:46:45 +0000 (15:46 +0000)]
Markup adjustments to avoid getting junk in the index.

24 years agoVariant of SF patch 423181
Jeremy Hylton [Fri, 11 May 2001 14:48:41 +0000 (14:48 +0000)]
Variant of SF patch 423181

For rich comparisons, use instance_getattr2() when possible to avoid
the expense of setting an AttributeError.  Also intern the name_op[]
table and use the interned strings rather than creating a new string
and interning it each time through.

24 years agounlink() would normally be found in the "os" module, so use it from there.
Fred Drake [Fri, 11 May 2001 14:29:21 +0000 (14:29 +0000)]
unlink() would normally be found in the "os" module, so use it from there.

Remove unused import of "sys".

If the file TESTFN exists before we start, try to remove it.

Add spaces around the = in some assignments.

24 years agoCosmetic: code under "else" clause was missing indent.
Tim Peters [Fri, 11 May 2001 03:36:45 +0000 (03:36 +0000)]
Cosmetic:  code under "else" clause was missing indent.

24 years agoReplace "\begin{classdesc}{SomeClass}{\unspecified}" with
Fred Drake [Fri, 11 May 2001 01:08:13 +0000 (01:08 +0000)]
Replace "\begin{classdesc}{SomeClass}{\unspecified}" with
"\begin{classdesc*}{SomeClass}" -- the rendering of \unspecified was
identical to \moreargs, so this helps clarify things just a little.

24 years agoDocument the new classdesc* environment, and the previously undocumented
Fred Drake [Fri, 11 May 2001 01:01:12 +0000 (01:01 +0000)]
Document the new classdesc* environment, and the previously undocumented
excclassdesc environment.

24 years agoDefine a new environment, classdesc*, which can be used to document a
Fred Drake [Fri, 11 May 2001 01:00:30 +0000 (01:00 +0000)]
Define a new environment, classdesc*, which can be used to document a
class without providing any information about the constructor.  This
should be used for classes which only exist to act as containers rather
than as factories for instances.

24 years agoWrite a better synopsis for the Scrap module, and provide a link to
Fred Drake [Thu, 10 May 2001 22:37:38 +0000 (22:37 +0000)]
Write a better synopsis for the Scrap module, and provide a link to
useful documentation on the Scrap Manager.

24 years agoActually include a synopsis line for the ColorPicker module.
Fred Drake [Thu, 10 May 2001 22:36:13 +0000 (22:36 +0000)]
Actually include a synopsis line for the ColorPicker module.

24 years agoRestore dicts' tp_compare slot, and change dict_richcompare to say it
Tim Peters [Thu, 10 May 2001 21:45:19 +0000 (21:45 +0000)]
Restore dicts' tp_compare slot, and change dict_richcompare to say it
doesn't know how to do LE, LT, GE, GT.  dict_richcompare can't do the
latter any faster than dict_compare can.  More importantly, for
cmp(dict1, dict2), Python *first* tries rich compares with EQ, LT, and
GT one at a time, even if the tp_compare slot is defined, and
dict_richcompare called dict_compare for the latter two because
it couldn't do them itself.  The result was a lot of wasted calls to
dict_compare.  Now dict_richcompare gives up at once the times Python
calls it with LT and GT from try_rich_to_3way_compare(), and dict_compare
is called only once (when Python gets around to trying the tp_compare
slot).
Continued mystery:  despite that this cut the number of calls to
dict_compare approximately in half in test_mutants.py, the latter still
runs amazingly slowly.  Running under the debugger doesn't show excessive
activity in the dict comparison code anymore, so I'm guessing the culprit
is somewhere else -- but where?  Perhaps in the element (key/value)
comparison code?  We clearly spend a lot of time figuring out how to
compare things.

24 years agoMake test_mutants stronger by also adding random keys during comparisons.
Tim Peters [Thu, 10 May 2001 20:18:30 +0000 (20:18 +0000)]
Make test_mutants stronger by also adding random keys during comparisons.
A Mystery:  test_mutants ran amazingly slowly even before dictobject.c
"got fixed".  I don't have a clue as to why.  dict comparison was and
remains linear-time in the size of the dicts, and test_mutants only tries
100 dict pairs, of size averaging just 50.  So "it should" run in less than
an eyeblink; but it takes at least a second on this 800MHz box.

24 years agoChange test_mmap.py to use test_support.TESTFN instead of hardcoded "foo",
Tim Peters [Thu, 10 May 2001 20:03:04 +0000 (20:03 +0000)]
Change test_mmap.py to use test_support.TESTFN instead of hardcoded "foo",
and wrap the body in try/finally to ensure TESTFN gets cleaned up no
matter what.

24 years agoRepair typos in comments.
Tim Peters [Thu, 10 May 2001 19:40:30 +0000 (19:40 +0000)]
Repair typos in comments.

24 years agoRepair typo in comment.
Tim Peters [Thu, 10 May 2001 18:58:31 +0000 (18:58 +0000)]
Repair typo in comment.

24 years agoChange some text just a little to avoid font-lock hell.
Fred Drake [Thu, 10 May 2001 18:41:02 +0000 (18:41 +0000)]
Change some text just a little to avoid font-lock hell.

24 years agoFix typo in weakref.proxy() documentation.
Fred Drake [Thu, 10 May 2001 17:22:17 +0000 (17:22 +0000)]
Fix typo in weakref.proxy() documentation.
This closes SF bug #423087.

24 years agoExtend the weakref test suite to cover the complete mapping interface for
Fred Drake [Thu, 10 May 2001 17:16:38 +0000 (17:16 +0000)]
Extend the weakref test suite to cover the complete mapping interface for
both weakref.Weak*Dictionary classes.

This closes SF bug #416480.

24 years agoUpdate example to no longer use the FCNTL module.
Fred Drake [Thu, 10 May 2001 15:57:17 +0000 (15:57 +0000)]
Update example to no longer use the FCNTL module.

24 years agoFix the fcntl() docstring so the user is not mis-directed to the FCNTL
Fred Drake [Thu, 10 May 2001 15:54:32 +0000 (15:54 +0000)]
Fix the fcntl() docstring so the user is not mis-directed to the FCNTL
module for useful constants.

24 years agoDo no regenerate modules that should no longer be here.
Fred Drake [Thu, 10 May 2001 15:52:47 +0000 (15:52 +0000)]
Do no regenerate modules that should no longer be here.

24 years agoRemove all remaining uses of the FCNTL module from the standard library.
Fred Drake [Thu, 10 May 2001 15:33:31 +0000 (15:33 +0000)]
Remove all remaining uses of the FCNTL module from the standard library.

24 years agoFix typo reported by David Goodger. This closes SF patch #422383.
Fred Drake [Thu, 10 May 2001 15:09:36 +0000 (15:09 +0000)]
Fix typo reported by David Goodger.  This closes SF patch #422383.

24 years agoRemove all mentions of the strop module -- it has been pronounced Evil.
Fred Drake [Thu, 10 May 2001 15:05:03 +0000 (15:05 +0000)]
Remove all mentions of the strop module -- it has been pronounced Evil.
(The string "strop" is found in the rexec documentation, but that should
not be changed until strop is actually removed or rexec no longer allows
it.)

24 years agoAdded a note that test_longexp needs 400MB.
Jack Jansen [Thu, 10 May 2001 12:20:30 +0000 (12:20 +0000)]
Added a note that test_longexp needs 400MB.

24 years agoHas been dead so long that there's no use keeping it in the active bit of the repository.
Jack Jansen [Thu, 10 May 2001 12:17:03 +0000 (12:17 +0000)]
Has been dead so long that there's no use keeping it in the active bit of the repository.

24 years agoSF bug #422121 Insecurities in dict comparison.
Tim Peters [Thu, 10 May 2001 08:32:44 +0000 (08:32 +0000)]
SF bug #422121 Insecurities in dict comparison.
Fixed a half dozen ways in which general dict comparison could crash
Python (even cause Win98SE to reboot) in the presence of kay and/or
value comparison routines that mutate the dict during dict comparison.
Bugfix candidate.

24 years agoUpdate to reflect deprecation of the FCNTL module: The fcntl module does
Fred Drake [Thu, 10 May 2001 05:17:02 +0000 (05:17 +0000)]
Update to reflect deprecation of the FCNTL module:  The fcntl module does
*not* define O_RDWR; get that from the os module.