- 04 May, 2001 1 commit
-
-
Tim Peters authored
NEEDS DOC CHANGES.
-
- 03 May, 2001 13 commits
-
-
Tim Peters authored
-
Tim Peters authored
NEEDS DOC CHANGES. Possibly contentious: The first time s.next() yields StopIteration (for a given map argument s) is the last time map() *tries* s.next(). That is, if other sequence args are longer, s will never again contribute anything but None values to the result, even if trying s.next() again could yield another result. This is the same behavior map() used to have wrt IndexError, so it's the only way to be wholly backward-compatible. I'm not a fan of letting StopIteration mean "try again later" anyway.
-
Fred Drake authored
at the same time as it did from PyObject_Init() .
-
Fred Drake authored
the code necessary to accomplish this is simpler and faster if confined to the object implementations, so we only do this there. This causes no behaviorial changes beyond a (very slight) speedup.
-
Fred Drake authored
void function.
-
Fred Drake authored
need to be specified in the type structures independently. The flag exists only for binary compatibility. This is a "source cleanliness" issue and introduces no behavioral changes.
-
Tim Peters authored
-
Tim Peters authored
NEEDS DOC CHANGES.
-
Fred Drake authored
When replacing the exception object, be sure we stuff the new value in sys.last_value (which we already did for the original value).
-
Fred Drake authored
-
Fred Drake authored
-
Fred Drake authored
annotations! Also fixed a typo noted by Neil S.
-
Fred Drake authored
-
- 02 May, 2001 12 commits
-
-
Fred Drake authored
-
Fred Drake authored
appropriate next() method, and this is what people really want to do with these objects in practice.
-
Fred Drake authored
the support for containers and iteration.
-
Fred Drake authored
-
Marc-André Lemburg authored
objects but instead assume that they use the requested encoding. This is needed on Windows to enable opening files by passing in Unicode file names.
-
Guido van Rossum authored
dictionary size was comparing ma_size, the hash table size, which is always a power of two, rather than ma_used, wich changes on each insertion or deletion. Fixed this.
-
Marc-André Lemburg authored
-
Tim Peters authored
filter() to no longer insist that len(seq) be defined. NEEDS DOC CHANGES.
-
Tim Peters authored
-
Tim Peters authored
-
Fred Drake authored
Refactored some object initialization to be more reusable.
-
Fred Drake authored
-
- 01 May, 2001 6 commits
-
-
Guido van Rossum authored
-
Tim Peters authored
to no longer insist that len(seq) be defined. NEEDS DOC CHANGES. This is meant to be a model for how other functions of this ilk (max, filter, etc) can be generalized similarly. Feel encouraged to grab your favorite and convert it! Note some cute consequences: list(file) == file.readlines() == list(file.xreadlines()) list(dict) == dict.keys() list(dict.iteritems()) = dict.items() list(xrange(i, j, k)) == range(i, j, k)
-
Guido van Rossum authored
-
Guido van Rossum authored
object's type didn't define tp_print, there were still cases where the full "print uses str() which falls back to repr()" semantics weren't honored. This resulted in >>> print None <None object at 0x80bd674> >>> print type(u'') <type object at 0x80c0a80> Fixed this by always using the appropriate PyObject_Repr() or PyObject_Str() call, rather than trying to emulate what they would do. Also simplified PyObject_Str() to always fall back on PyObject_Repr() when tp_str is not defined (rather than making an extra check for instances with a __str__ method). And got rid of the special case for strings.
-
Guido van Rossum authored
course), so I can get rid of the special case for strings in PyObject_Str().
-
Guido van Rossum authored
objects. Tests show that iteritems() is 5-10% faster than iterating over the dict and extracting the value with dict[key].
-
- 30 Apr, 2001 1 commit
-
-
Guido van Rossum authored
printing of instances not to look for __str__(). Fix this.
-
- 29 Apr, 2001 1 commit
-
-
Tim Peters authored
Directory containing Spam.py spam/__init__.py Then "import Spam" caused a SystemError, because code checking for the existence of "Spam/__init__.py" finds it on a case-insensitive filesystem, but then bails because the directory it finds it in doesn't match case, and then old code assumed that was still an error even though it isn't anymore. Changed the code to just continue looking in this case (instead of calling it an error). So import Spam and import spam both work now.
-
- 28 Apr, 2001 2 commits
-
-
Tim Peters authored
Also a 2.1 bugfix candidate (am I supposed to do something with those?). Took away map()'s insistence that sequences support __len__, and cleaned up the convoluted code that made it *look* like it really cared about __len__ (in fact the old ->len field was only *used* as a flag bit, as the main loop only looked at its sign bit, setting the field to -1 when IndexError got raised; renamed the field to ->saw_IndexError instead).
-
Tim Peters authored
Patch #419651: Metrowerks on Mac adds 0x itself C std says %#x and %#X conversion of 0 do not add the 0x/0X base marker. Metrowerks apparently does. Mark Favas reported the same bug under a Compaq compiler on Tru64 Unix, but no other libc broken in this respect is known (known to be OK under MSVC and gcc). So just try the damn thing at runtime and see what the platform does. Note that we've always had bugs here, but never knew it before because a relevant test case didn't exist before 2.1.
-
- 27 Apr, 2001 4 commits
-
-
Guido van Rossum authored
Fix a very old flaw in PyObject_Print(). Amazing! When an object type defines tp_str but not tp_repr, 'print x' to a real file object would not call the tp_str slot but rather print a default style representation: <foo object at 0x....>. This even though 'print x' to a file-like-object would correctly call the tp_str slot.
-
Jack Jansen authored
Got rid of the whole event filtering mess again, I can't get it to work. Simply disabling the Tk event handling hook in _tkinter is not as nice, but at least it works.
-
Jeremy Hylton authored
The new test case demonstrates the bug. Be more careful in symtable_resolve_free() to add a var to cells or frees only if it won't be added under some other rule. XXX Add new assertion that will catch this bug.
-
Jeremy Hylton authored
-