Guido van Rossum [Mon, 21 Dec 1998 18:15:28 +0000 (18:15 +0000)]
Sjoerd Mullender:
- Fixed a bug where a syntax error was reported when a document
started with white space. (White space at the start of a document
is valid if there is no XML declaration.)
- Improved the speed quite a bit for documents that don't make use of
namespaces.
Jeremy Hylton [Fri, 18 Dec 1998 22:13:11 +0000 (22:13 +0000)]
patches from Andrew
NOTE: There is still a bug of some sort in the behavior of zlib. In
at least one case, inflate returns Z_OK (which is typically
interpreted to mean that more output space is needed) when it has
finished inflating a buffer. This has been reported as a bug to the
zlib maintainers; we may need to change the Python interface.
Guido van Rossum [Fri, 18 Dec 1998 20:17:13 +0000 (20:17 +0000)]
Sjoerd Mullender writes:
Here is my current version of xmllib.py and the documentation. This
version has some API changes with respect to the version currently in
Python (also the one in 1.5.2a).
This version supports XML namespaces.
Fred Drake [Fri, 18 Dec 1998 19:46:59 +0000 (19:46 +0000)]
When _PyString_Resize() reports failure, the variable referring to the
string we wanted to resize is set to NULL. Don't Py_DECREF() those
variables! (5 places)
Guido van Rossum [Fri, 18 Dec 1998 15:25:22 +0000 (15:25 +0000)]
Sjoerd Mullender:
File names with "funny" characters get translated wrong by
pathname2url (any variety). E.g. the (Unix) file "/ufs/sjoerd/#tmp"
gets translated into "/ufs/sjoerd/#tmp" which, when interpreted as a
URL is file "/ufs/sjoerd/" with fragment ID "tmp".
Here's an easy fix. (An alternative fix would be to change the
various implementations of pathname2url and url2pathname to include
calls to quote and unquote.
[The main problem is with the normal use of URLs:
url = url2pathname(file)
transmit url
url, tag = splittag(url)
urlopen(url)
]
In addition, this patch fixes some uses of unquote:
- the host part of URLs should be unquoted
- the file path in the FTP URL should be unquoted before it is split
into components.
- because of the latter, I removed all unquoting from ftpwrapper,
and moved it to the caller, but that is not essential
Barry Warsaw [Tue, 15 Dec 1998 04:36:22 +0000 (04:36 +0000)]
(py-goto-beginning-of-tqs): Finds the beginning of the triple quoted
string we find ourselves in, based on the passed in delimiter.
(py-compute-indentation): Fixes for indentation errors when we land
inside a triple quoted string. For example:
def foo():
if os.path.isfile(o_pri_mbox_file) and os.path.isfile(o_pub_mbox_file):
print """\
I found both a private and a public mbox archive file
private: %s
public : %s
I won't move either file, but you should choose one and move it to
%s
You may want to merge them manually, but be careful about exposing private
correspondences to the public.""" % (
o_pri_mbox_file, o_pub_mbox_file, mbox_file)
*----indentation would be wrong on this line.
Barry Warsaw [Tue, 15 Dec 1998 01:04:38 +0000 (01:04 +0000)]
Added most of the mechanism to change the strips from color variations
to color constants (i.e. red constant, green constant, blue
constant). But I haven't hooked this up yet because the UI gets more
crowded and the arrows don't reflect the correct values.
Fixed bug reported to Gregor Hoffleit:
> mpz.mpz('\xff') should return mpz(255). Instead it returns
> mpz(4294967295L). Looks like the constructor doesn't work with strings
> containing characters above chr(128).
Caused by using just 'char' where 'unsigned char' should have been used.
Guido van Rossum [Fri, 11 Dec 1998 20:44:56 +0000 (20:44 +0000)]
As noted by Per Cederqvist, new_buffersize() sometimes returns the
buffer increment, and sometimes the new buffer size. Make it do what
its name says, and fix the one place where this matters to the caller.
Also add a comment explaining why we call lseek() and then ftell().
Guido van Rossum [Fri, 11 Dec 1998 01:10:29 +0000 (01:10 +0000)]
Gregor Hoffleit writes:
But IMHO, this problem really reveals an annoyance in Python's
makesetup. makesetup puts the global include directories "$(INCLUDEPY)
$(EXECINCLUDEPY)" in front of the directories defined by the module in
Setup. Therefore global (potentially older) header files are preferred
over the ones set by the module, which makes it hard to compile new
versions of modules when the old versions are installed. AFAIK, the
other way around is common practice for most other software.
This patch to makesetup would be an potential fix for this problem,
though I don't know if it breaks anything else.
Fred Drake [Thu, 10 Dec 1998 20:25:30 +0000 (20:25 +0000)]
create_module_info(): New function: Modify a <section> to create a
<moduleinfo> element based on various meta information, and
strip some cruftiness. This is more usable for information
extraction, and organizes the information more clearly.
cleanup_synopses(): Rewrite to use create_module_info(), so this
will work with multi-rooted "documents".
In read_multi, allow a subclass to override the class we instantiate
when we create a recursive instance, by setting the class variable
'FieldStorageClass' to the desired class. By default, this is set to
None, in which case we use self.__class__ (as before).
When literal mode is entered it should exit automatically when the
matching close tag of the last unclosed open tag is encountered. This
patch fixes this.
In SimpleHTTPServer.py, the server specified in test() should
be BaseHTTPServer.HTTPServer, in case the request handler should
want to reference the two attributes added by
BaseHTTPServer.server_bind:
self.server_name = hostname
self.server_port = port
There was some Bobo CGI code that wanted access to those attributes.
In CGIHTTPServer.py, the list of acceptable formats is -split-
on spaces but -joined- on commas, resulting in double commas
in the joined text. It appears harmless to my browser but
ought to be fixed anyway.
Barry Warsaw [Thu, 3 Dec 1998 19:32:38 +0000 (19:32 +0000)]
audiopy: slightly revamped UI... includes a menubar, no quit button,
and added a `Help' menu item that puts the README (or docstring if
that can't be found) in a scrolling text widget.