- 09 Tem, 2002 10 kayıt (commit)
-
-
Tim Peters yazdı
more trivial lexical helper macros so that uses of these guys expand to nothing at all when they're not enabled. This should help sub- standard compilers that can't do a good job of optimizing away the previous "(void)0" expressions. Py_DECREF: There's only one definition of this now. Yay! That was that last one in the family defined multiple times in an #ifdef maze. Py_FatalError(): Changed the char* signature to const char*. _Py_NegativeRefcount(): New helper function for the Py_REF_DEBUG expansion of Py_DECREF. Calling an external function cuts down on the volume of generated code. The previous inline expansion of abort() didn't work as intended on Windows (the program often kept going, and the error msg scrolled off the screen unseen). _Py_NegativeRefcount calls Py_FatalError instead, which captures our best knowledge of how to abort effectively across platforms.
-
Barry Warsaw yazdı
argument to the constructor -- defaulting to true -- which is different than Anthony's approach of using global state. parse(), parsestr(): Grow a `headersonly' argument which stops parsing once the header block has been seen, i.e. it does /not/ parse or even read the body of the message. This is used for parsing message/rfc822 type messages. We need test cases for the non-strict parsing. Anthony will supply these. _parsebody(): We can get rid of the isdigest end-of-line kludges, although we still need to know if we're parsing a multipart/digest so we can set the default type accordingly.
-
Barry Warsaw yazdı
text/plain but the RFCs state that inside a multipart/digest, the default type is message/rfc822. To preserve idempotency, we need a separate place to define the default type than the Content-Type: header. get_default_type(), set_default_type(): Accessor and mutator methods for the default type.
-
Barry Warsaw yazdı
boundary was given in the arguments, call set_boundary().
-
Barry Warsaw yazdı
recursive generation). _dispatch(): If the message object doesn't have a Content-Type: header, check its default type instead of assuming it's text/plain. This makes for correct generation of message/rfc822 containers. _handle_multipart(): We can get rid of the isdigest kludge. Just print the message as normal and everything will work out correctly. _handle_mulitpart_digest(): We don't need this anymore either.
-
Barry Warsaw yazdı
-
Barry Warsaw yazdı
to make public, but that others might still find useful.
-
Barry Warsaw yazdı
ndiff function, so just alias it to assertEqual in that case. Various: make sure all openfile()/read()'s are wrapped in try/finally's so the file gets closed. A bunch of new tests checking the corner cases for multipart/digest and message/rfc822.
-
Barry Warsaw yazdı
message/rfc822 compliance.
-
Barry Warsaw yazdı
the version number to 2.1.
-
- 08 Tem, 2002 13 kayıt (commit)
-
-
Tim Peters yazdı
Repair segfaults and infinite loops in COUNT_ALLOCS builds in the presence of new-style (heap-allocated) classes/types. Bugfix candidate. I'll backport this to 2.2. It's irrelevant in 2.1.
-
Jack Jansen yazdı
-enable-framework builds, but setup.py built them anyway. Fixed. Also normalized whitespace. Bugfix candidate.
-
Tim Peters yazdı
-
Neil Schemenauer yazdı
-
Fred Drake yazdı
-
Fred Drake yazdı
Clarify the return value when the parameter is a Unicode object.
-
Fred Drake yazdı
formatting PostScript documents. Reported by Dave Kuhlman.
-
Fred Drake yazdı
this file; the lack of this was causing the A4 version of tutorial to use really bad Type 3 fonts instead of Type 1 fonts, which also bloated the file size substantially. I thought there was a SourceForge bug for this, but couldn't find it.
-
Jack Jansen yazdı
which uses a .pth file to add the Mac/Lib from your source tree to sys.path. Also put the Python version number in a variable.Killed by signal 2.
-
Fred Drake yazdı
subclassing so many times it should simply be changed.
-
Jack Jansen yazdı
-
Jack Jansen yazdı
-
Tim Peters yazdı
children gets large, to avoid severe platform realloc() degeneration in extreme cases (like test_longexp). Bugfix candidate. This was doing extremely timid over-allocation, just rounding up to the nearest multiple of 3. Now so long as the number of children is <= 128, it rounds up to a multiple of 4 but via a much faster method. When the number of children exceeds 128, though, and more space is needed, it doubles the capacity. This is aggressive over-allocation. SF patch <http://www.python.org/sf/578297> has Andrew MacIntyre using PyMalloc in the parser to overcome platform malloc problems in test_longexp on OS/2 EMX. Jack Jansen notes there that it didn't help him on the Mac, because the Mac has problems with frequent ever-growing reallocs, not just with gazillions of teensy mallocs. Win98 has no visible problems with test_longexp, but I tried boosting the test-case size and soon got "senseless" MemoryErrors out of it, and soon after crashed the OS: as I've seen in many other contexts before, while the Win98 realloc remains zippy in bad cases, it leads to extreme fragmentation of user address space, to the point that the OS barfs. I don't yet know whether this fixes Jack's Mac problems, but it does cure Win98's problems when boosting the test case size. It also speeds test_longexp in its unaltered state.
-
- 07 Tem, 2002 7 kayıt (commit)
-
-
Jack Jansen yazdı
- Cleaned up Python banner string, so the normal build for MacPython 2.3 will have a short banner.
-
Tim Peters yazdı
that have taken me "too long" to reverse-engineer over the years. Vastly reduced the nesting level and redundancy of #ifdef-ery. Took a light stab at repairing comments that are no longer true. sys_gettotalrefcount(): Changed to enable under Py_REF_DEBUG. It was enabled under Py_TRACE_REFS, which was much heavier than necessary. sys.gettotalrefcount() is now available in a Py_REF_DEBUG-only build.
-
Jeremy Hylton yazdı
Bug fix candidate.
-
Tim Peters yazdı
of the trashcan code.
-
Jeremy Hylton yazdı
If multiple header fields with the same name occur, they are combined according to the rules in RFC 2616 sec 4.2: Appending each subsequent field-value to the first, each separated by a comma. The order in which header fields with the same field-name are received is significant to the interpretation of the combined field value.
-
Tim Peters yazdı
mechanism is no longer evil: it no longer plays dangerous games with the type pointer or refcounts, and objects in extension modules can play along too without needing to edit the core first. Rewrote all the comments to explain this, and (I hope) give clear guidance to extension authors who do want to play along. Documented all the functions. Added more asserts (it may no longer be evil, but it's still dangerous <0.9 wink>). Rearranged the generated code to make it clearer, and to tolerate either the presence or absence of a semicolon after the macros. Rewrote _PyTrash_destroy_chain() to call tp_dealloc directly; it was doing a Py_DECREF again, and that has all sorts of obscure distorting effects in non-release builds (Py_DECREF was already called on the object!). Removed Christian's little "embedded change log" comments -- that's what checkin messages are for, and since it was impossible to correlate the comments with the code that changed, I found them merely distracting.
-
Tim Peters yazdı
+ I'm not sure what to do about configure.in. Left it alone. + Ditto pyexpat.c. Fred or Martin will know what to do.
-
- 06 Tem, 2002 6 kayıt (commit)
-
-
Jeremy Hylton yazdı
Subclasses of Exception that define an __init__ must call Exception.__init__ or define self.args. Otherwise, str() will fail. Bug fix candidate.
-
Jeremy Hylton yazdı
Section 19.6 of RFC 2616 (HTTP/1.1): It is beyond the scope of a protocol specification to mandate compliance with previous versions. HTTP/1.1 was deliberately designed, however, to make supporting previous versions easy.... And we would expect HTTP/1.1 clients to: - recognize the format of the Status-Line for HTTP/1.0 and 1.1 responses; - understand any valid response in the format of HTTP/0.9, 1.0, or 1.1. The changes to the code do handle response in the format of HTTP/0.9. Some users may consider this a bug because all responses with a sufficiently corrupted status line will look like an HTTP/0.9 response. These users can pass strict=1 to the HTTP constructors to get a BadStatusLine exception instead. While this is a new feature of sorts, it enhances the robustness of the code (be tolerant in what you accept). Thus, I consider it a bug fix candidate. XXX strict needs to be documented.
-
Kurt B. Kaiser yazdı
from both sides of the split debugger. M Debugger.py M EditorWindow.py
-
Kurt B. Kaiser yazdı
-
Kurt B. Kaiser yazdı
-
Kurt B. Kaiser yazdı
2. Remove extraneous comment
-
- 05 Tem, 2002 1 kayıt (commit)
-
-
unknown yazdı
M Debugger.py : Incorporate StackViewer, NamespaceViewer classes M StackViewer.py : remove import OldStackViewer U OldStackViewer.py : remove file
-
- 04 Tem, 2002 3 kayıt (commit)
-
-
Tim Peters yazdı
-
Michael W. Hudson yazdı
-
Greg Ward yazdı
standalone wrap() and fill() functions. This should address the misunderstanding that led to SF bug 577106.
-