- 13 Mar, 2004 5 commits
-
-
Skip Montanaro authored
public API from being exposed by simply including Python.h (as recommended).
-
Jack Jansen authored
to its dependencies. Fixes #733819.
-
Raymond Hettinger authored
(Contributed by Greg Chapman.)
-
Raymond Hettinger authored
(Contributed by George Yoshida.)
-
Raymond Hettinger authored
Added support for the copy module.
-
- 12 Mar, 2004 6 commits
-
-
Raymond Hettinger authored
-
Raymond Hettinger authored
Reduces loop overhead by an additional 10%.
-
Raymond Hettinger authored
(Spotted by Michael Hudson.) * Now that "selflen" is no longer inside a loop, it should not be a register variable.
-
Raymond Hettinger authored
Makes it more likely that all loop operations are in the cache at the same time.
-
Raymond Hettinger authored
and a function call resulting in a 15% reduction of total loop overhead (as measured by timeit.Timer('pass')).
-
Raymond Hettinger authored
three recent optimizations. Aside from reducing code volume, it increases readability.
-
- 11 Mar, 2004 7 commits
-
-
Jack Jansen authored
donated by Kevin Ollivier. This is now the default downloader. - Added a watcher mechanism, whereby downloaders and unpackers (and, later builders) can give status feedback to the user. When running pimp as a command line tool in verbose mode print this output.
-
Raymond Hettinger authored
worth it to in-line the call to PyIter_Next(). Saves another 15% on most list operations that acceptable a general iterable argument (such as the list constructor).
-
Raymond Hettinger authored
exposing _PyList_Extend().
-
Raymond Hettinger authored
avoids creating an intermediate tuple for iterable arguments other than lists or tuples. In other words, a+=b no longer requires extra memory when b is not a list or tuple. The list and tuple cases are unchanged.
-
Neil Schemenauer authored
-
Neil Schemenauer authored
-
Neil Schemenauer authored
-
- 10 Mar, 2004 4 commits
-
-
Neil Schemenauer authored
SF bug #678265.
-
Raymond Hettinger authored
-
Raymond Hettinger authored
for xrange and list objects). * list.__reversed__ now checks the length of the sequence object before calling PyList_GET_ITEM() because the mutable could have changed length. * all three implementations are now tranparent with respect to length and maintain the invariant len(it) == len(list(it)) even when the underlying sequence mutates. * __builtin__.reversed() now frees the underlying sequence as soon as the iterator is exhausted. * the code paths were rearranged so that the most common paths do not require a jump.
-
Raymond Hettinger authored
was academic and it was potentially confusing to use.
-
- 09 Mar, 2004 3 commits
-
-
Raymond Hettinger authored
-
Raymond Hettinger authored
* Replace sprintf message with a constant message string -- this error message ran on every invocation except straight deletions but it was only needed when the rhs was not iterable. The message was also out-of-date and did not reflect that iterable arguments were allowed. * For inner loops that do not make ref count adjustments, use memmove() for fast copying and better readability. * For inner loops that do make ref count adjustments, speed them up by factoring out the constant structure reference and using vitem[] instead.
-
Hye-Shik Chang authored
(Submitted by George Yoshida)
-
- 08 Mar, 2004 11 commits
-
-
Raymond Hettinger authored
* Defer error handling for wrong number of arguments to the unpack_iterable() function. Cuts the code size almost in half. * Replace function calls to PyList_Size() and PyTuple_Size() with their smaller and faster macro counterparts. * Move the constant structure references outside of the inner loops.
-
Brett Cannon authored
Side-effects were deemed unnecessary and were causing problems at shutdown time when threads were catching exceptions at start time and then triggering exceptions trying to call currentThread() after gc'ed. Masked the initial exception which was deemed bad. Fixes bug #754449 .
-
Raymond Hettinger authored
longer needed.
-
Raymond Hettinger authored
The writelines() method now accepts any iterable argument and writes the lines one at a time rather than using ''.join(lines) followed by a single write. Results in considerable memory savings and makes the method suitable for use with generator expressions.
-
Raymond Hettinger authored
The writelines() method now accepts any iterable argument and writes the lines one at a time rather than using ''.join(lines) followed by a single write. Results in considerable memory savings and makes the method suitable for use with generator expressions.
-
Kurt B. Kaiser authored
M ClassBrowser.py M ColorDelegator.py M EditorWindow.py M NEWS.txt M PyShell.py M TreeWidget.py M config-highlight.def M configDialog.py M configHandler.py
-
Vinay Sajip authored
-
Raymond Hettinger authored
and list.extend(). Factoring the inner loops to remove the constant structure references and fixed offsets gives speedups ranging from 20% to 30%.
-
Raymond Hettinger authored
the code by grouping common cases together.
-
Raymond Hettinger authored
* Using addition instead of substraction on array indices allows the compiler to use a fast addressing mode. Saves about 10%. * Using PyTuple_GET_ITEM and PyList_SET_ITEM is about 7% faster than PySequenceFast_GET_ITEM which has to make a list check on every pass.
-
Raymond Hettinger authored
-
- 07 Mar, 2004 2 commits
-
-
Brett Cannon authored
Since it is known ahead of time that UTC and GMT always have no DST adjustment then just set the isdst value to 0 even if tzname[0] == tzname[1] . Fixes bug #897817 .
-
Raymond Hettinger authored
Add a new opcode, LIST_APPEND, and apply it to the code generation for list comprehensions. Reduces the per-loop overhead by about a third.
-
- 05 Mar, 2004 1 commit
-
-
Skip Montanaro authored
-
- 04 Mar, 2004 1 commit
-
-
Raymond Hettinger authored
(Championed by Bob Ippolito.) The update() method for mappings now accepts all the same argument forms as the dict() constructor. This includes item lists and/or keyword arguments.
-