| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
tool; look for that on Monday.
|
|
|
|
| |
reported and can read the log back in.
|
|
|
|
|
| |
al. if already set. Also adds TIX_LIBRARY (just in case).
(Note that this is entirely Windows specific.)
|
|
|
|
|
|
|
| |
inherit_slots(): tp_as_buffer was getting inherited as if it were a
method pointer, rather than a pointer to a vector of method pointers. As
a result, inheriting from a type that implemented buffer methods was
ineffective, leaving all the tp_as_buffer slots NULL in the subclass.
|
|
|
|
|
|
|
|
|
| |
corresponding to a dispatch slot (e.g. __getitem__ or __add__) is set,
calculate the proper dispatch slot and propagate the change to all
subclasses. Because of multiple inheritance, there's no easy way to
avoid always recursing down the tree of subclasses. Who cares?
(There's more to do, but this works. There's also a test for this now.)
|
|
|
|
| |
SyntaxError. Fix it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Try to be systematic about dealing with socket and ssl exceptions in
FakeSocket.makefile(). The previous version of the code caught all
ssl errors and treated them as EOF, even though most of the errors
don't mean EOF.
An SSL error can mean on of three things:
1. The SSL/TLS connection was closed.
2. The operation should be retried.
3. An error occurred.
Also, if a socket error occurred and the error was EINTR, retry the
call. Otherwise, it was a legitimate error and the caller should
receive the exception.
|
| |
|
|
|
|
|
|
| |
headers. It does not parse the body of the message, instead simply
assigning it as a string to the container's payload. This can be much
faster when you're only interested in a message's header.
|
| |
|
|
|
|
|
|
|
| |
value, so the programmer will have to catch OverflowError. I'm not sure
what /F's perspective is on this. Perhaps it should be caught and mapped to
an xmlrpclib-specific exception. None of the other type-specific dump
methods seem to do any exception handling though.
|
|
|
|
|
| |
We have 5 implementations of walk(), and 5 different docstrings. Combined
'em. Let's see how long it takes before they're all different again!
|
|
|
|
|
|
| |
The behavior of co_varnames in the presence of nested argument tuples
is not consistent across Python and Jython. Test each platform
separately.
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
call, or via setting an instance or class vrbl.
Rewrote the calibration docs.
Modern boxes are so friggin' fast, and a profiler event does so much work
anyway, that the cost of looking up an instance vrbl (the bias constant)
per profile event just isn't a big deal.
|
|
|
|
| |
previous embarrassment (typeobject.c checking crashing minidom).
|
|
|
|
|
| |
Rewritten for style and the email package naming conventions by
Barry.
|
|
|
|
|
|
|
|
|
|
| |
the problem that slots weren't inherited properly. override_slots()
no longer exists; in its place comes fixup_slot_dispatchers() which
does more and different work and is table-based. (Eventually I want
this table also to replace all the little tab_foo tables.)
Also add a wrapper for __delslice__; this required a change in
test_descrtut.py.
|
| |
|
|
|
|
| |
tests in test_email.py).
|
|
|
|
|
|
|
|
| |
When checking for strings use,
! if isinstance(uri, (types.StringType, types.UnicodeType)):
Also get rid of some dodgy code that tried to guess whether attributes
were callable or not.
|
|
|
|
| |
message with multiple CC: fields, used in the get_all() test.
|
|
|
|
| |
Fix that, and also make the docstring describe failobj.
|
|
|
|
| |
set_reuse_addr() that does the setsockopt fiddling. Use it instead.
|
| |
|
|
|
|
|
|
|
| |
without the Py_TPFLAGS_CHECKTYPES flag) in the wrappers. This
required a few changes in test_descr.py to cope with the fact that the
complex type has __int__, __long__ and __float__ methods that always
raise an exception.
|
| |
|
|
|
|
|
|
|
|
|
| |
actual run of the profiler, instead of timing a simplified simulation of
part of what the profiler does. It computes a constant about 60% higher
on my Win98SE box than the old method, and the new constant appears much
more realistic. Deleted the undocumented simple(), instrumented(), and
profiler_simulation() methods (which existed only to support the previous
calibration method).
|
|
|
|
| |
SF patch #467580.
|
|
|
|
|
|
|
|
| |
this type of test fails, vereq() does a better job of reporting than
verify().
Change vereq(x, y) to use "not x == y" rather than "x != y" -- it
makes a difference is some overloading tests.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Most of this code was old enough to vote. Examples of cleanups:
+ Backslashes were used for line continuation even inside unclosed
bracket structures, from back in the days that was still needed.
+ There was no use of % formats, and e.g. the old fpformat module was
still used to format floats "by hand" in conjunction with rjust().
+ There was even use of a do-nothing .ignore() method to tack on to the
end of a chain of method calls, else way back when Python would print
the non-None result (as it does now in an interactive session -- it
*used* to do that in batch mode too).
+ Perhaps controversial (although I can't imagine why for real <wink>),
used augmented assignment where helpful. Stuff like
self.total_calls = self.total_calls + other.total_calls
is just plain harder to follow than
self.total_calls += other.total_calls
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
seriously wrong. This started out by just fixing the docs, but then it
occurred to me that the doc confusion propagated into misleading vrbl names
too, so I also renamed those to match reality. As a result, INO the time
computations are much easier to understand now (within the limitations of
vast quantities of 3-character names <wink>).
|
|
|
|
| |
to use assert stmts (was raising unexpected kinds of exceptions).
|
|
|
|
|
|
| |
+ The last index in the timing tuple is 4, not 5 (noted by Guido).
+ The poorly named trace_dispatch_i works with float return values too.
|
|
|
|
|
| |
hasn't worked in years, docs were wrong, and they aren't interesting
anymore regardless.
|
|
|
|
|
| |
derive Profile subclasses. This patch repairs that, restoring
negative tuple indices. Yuck? You bet.
|
|
|
|
| |
It still needs to be here to preserve the API.
|
|
|
|
| |
newline from a multifile part, it should also strip a trailing \r\n.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
many types were subclassable but had a xxx_dealloc function that
called PyObject_DEL(self) directly instead of deferring to
self->ob_type->tp_free(self). It is permissible to set tp_free in the
type object directly to _PyObject_Del, for non-GC types, or to
_PyObject_GC_Del, for GC types. Still, PyObject_DEL was a tad faster,
so I'm fearing that our pystone rating is going down again. I'm not
sure if doing something like
void xxx_dealloc(PyObject *self)
{
if (PyXxxCheckExact(self))
PyObject_DEL(self);
else
self->ob_type->tp_free(self);
}
is any faster than always calling the else branch, so I haven't
attempted that -- however those types whose own dealloc is fancier
(int, float, unicode) do use this pattern.
|
| |
|
|
|
|
|
| |
in the gui.
Updated to include the new exe-file.
|
|
|
|
| |
so that it can be suppressed.
|
| |
|