Commit Graph

16260 Commits

Author SHA1 Message Date
Guido van Rossum cda4f9a8dc Fix off-by-one error in split_substring(). Fixes SF bug #122162. 2000-12-19 02:23:19 +00:00
Guido van Rossum 8b26454273 Test more split argument combinations:
1) multi-char separator
2) multi-char separator that only occurs at last position
3) all of the above with mixed Unicode and 8-bit-string arguments
2000-12-19 02:22:31 +00:00
Guido van Rossum fb10c3f664 Minimal fix for the complaints about pickling Unicode objects. (SF
bugs #126161 and 123634).

The solution doesn't use the unicode-escape encoding; that has other
problems (it seems not 100% reversible).  Rather, it transforms the
input Unicode object slightly before encoding it using
raw-unicode-escape, so that the decoding will reconstruct the original
string: backslash and newline characters are translated into their
\uXXXX counterparts.

This is backwards incompatible for strings containing backslashes, but
for some of those strings, the pickling was already broken.

Note that SF bug #123634 complains specifically that cPickle fails to
unpickle the pickle for u'' (the empty Unicode string) correctly.
This was an off-by-one error in load_unicode().

XXX Ugliness: in order to do the modified raw-unicode-escape, I've
cut-and-pasted a copy of PyUnicode_EncodeRawUnicodeEscape() into this
file that also encodes '\\' and '\n'.  It might be nice to migrate
this into the Unicode implementation and give this encoding a new name
('half-raw-unicode-escape'? 'pickle-unicode-escape'?); that would help
pickle.py too.  But right now I can't be bothered with the necessary
infrastructural changes.
2000-12-19 02:08:38 +00:00
Guido van Rossum 8b74b15b92 Test some Unicode pickling endcases. 2000-12-19 02:01:12 +00:00
Guido van Rossum a31b4ef7c5 Minimal fix for the complaints about pickling Unicode objects. (SF
bugs #126161 and 123634).

The solution doesn't use the unicode-escape encoding; that has other
problems (it seems not 100% reversible).  Rather, it transforms the
input Unicode object slightly before encoding it using
raw-unicode-escape, so that the decoding will reconstruct the original
string: backslash and newline characters are translated into their
\uXXXX counterparts.

This is backwards incompatible for strings containing backslashes, but
for some of those strings, the pickling was already broken.
2000-12-19 01:29:00 +00:00
Guido van Rossum 20d3fc071b Adapted from a patch by Barry Scott, SF patch #102875 and SF bug
#125981: closing sockets was not thread-safe.
2000-12-18 22:23:44 +00:00
Neil Schemenauer 99664e455b gdbm.open() no longer accepts garbage in the flags string. Fix the tests. 2000-12-18 17:28:05 +00:00
Fred Drake 2b6d7bc151 Do not talk about "real" numbers; talk about "floats" or "floating point
numbers" instead; we have not described "reals" anywhere else in the
documentation, and this is not the place to change the story!

Reported by Keith Briggs <keith.briggs@bt.com>.
2000-12-18 13:50:24 +00:00
Neil Schemenauer e9e860faf3 Add support for gdbm2 open flags ('s' and 'u'). Add module constant
open_flags which contains the flags supported by gdbm.  Closes patch
#102802.
2000-12-17 07:14:13 +00:00
Fred Drake e8f3ad560f Add returns_unicode to the __members__ list.
Fix a small style consistency nit.
2000-12-16 01:48:29 +00:00
Fred Drake 95b4ec5fbe Do not assume that types.UnicodeType exists; we might be running in an old
version of Python.  ;-(
2000-12-16 01:45:11 +00:00
Fred Drake 1402ab2cb9 Use the string module instead of string methods; this should still work
with Python 1.5.2 for now.
2000-12-16 01:43:40 +00:00
Fred Drake 5100133685 urlretrieve() description included explanation of "data" parameter, but
did not include it in the signature.

Fixed some markup nits.
2000-12-15 23:57:51 +00:00
Fred Drake f16527c863 Typo caught by /F -- thanks! 2000-12-15 23:56:43 +00:00
Guido van Rossum 23fff911a2 Add definitions for PySys_ResetWarnOptions() and
PySys_AddWarnOption().
2000-12-15 22:02:05 +00:00
Guido van Rossum 429b41e5ae Add declarations for PySys_ResetWarnOptions() and
PySys_AddWarnOption().
2000-12-15 22:01:39 +00:00
Guido van Rossum 47f5fdc114 Add the -W option. 2000-12-15 22:00:54 +00:00
Guido van Rossum 2a862c614d Python part of the warnings subsystem. 2000-12-15 21:59:53 +00:00
Guido van Rossum cfd42b556b Add PyErr_Warn(). 2000-12-15 21:58:52 +00:00
Guido van Rossum d0977cd670 Add definitions for standard warning category classes (PyExc_Warning
etc.).
2000-12-15 21:58:29 +00:00
Guido van Rossum 3fc30372c7 Add declarations for standard warning category classes (PyExc_Warning
etc.) and the PyErr_Warn() function.
2000-12-15 21:57:34 +00:00
Fred Drake 1703cf662c Before calling traceback.print_exc(), call sys.stdout.flush(). This makes
it much easier to see where things went wrong.
2000-12-15 21:31:59 +00:00
Fred Drake 279aa6cabc DOMException.__init__(): Remember to pass self to Exception.__init__(). 2000-12-15 21:07:59 +00:00
Guido van Rossum 5080b33046 Comment out a debugging print statement that triggered a complaint in
c.l.py.
2000-12-15 20:08:39 +00:00
Fred Drake 065cba1281 Added documentation for random.shuffle(). 2000-12-15 19:07:17 +00:00
Guido van Rossum e6e03eafed Get rid of string functions. 2000-12-15 15:49:08 +00:00
Guido van Rossum c80f182dc4 Get rid of string functions. References to string.whitespace,
string.digits are left.
2000-12-15 15:37:48 +00:00
Guido van Rossum 34735a6682 Get rid of string functions.
There should really be a little tool to help with this -- it's rather
tedious and there are lots of special cases!
2000-12-15 15:09:42 +00:00
Guido van Rossum b2493f855a Get rid of string functions, except maketrans() (which is *not*
obsolete!).

Fix a bug in ftpwrapper.retrfile() where somehow ftplib.error_perm was
assumed to be a string.  (The fix applies str().)

Also break some long lines and change the output from test() slightly.
2000-12-15 15:01:37 +00:00
Andrew M. Kuchling 4d192b37ec Add test case for error message raised by bad % format character
(Oh, look, it adds another little utility function for testing)
2000-12-15 13:09:06 +00:00
Andrew M. Kuchling 6ca8917758 [ Patch #102852 ] Make % error a bit more informative by indicates the
index at which an unknown %-escape was found
2000-12-15 13:07:46 +00:00
Fred Drake 29c45a5e91 Grant Griffin <grant.griffin@honeywell.com>:
Clarify that invert() is a *bitwise* operation.
2000-12-15 05:41:49 +00:00
Andrew M. Kuchling a1099be778 Fix typo 2000-12-15 01:16:43 +00:00
Andrew M. Kuchling 4fb588240f Document napms()
Add reference to demo directory
2000-12-15 01:03:23 +00:00
Andrew M. Kuchling 2e09530f3f [Patch #102827] Fix for PR#119558, avoiding core dumps by checking for
malloc() returning NULL
2000-12-15 00:59:32 +00:00
Andrew M. Kuchling 2824d7f6b1 Wrapper for napms() function, contributed by Thomas Gellekum <tg@FreeBSD.org> 2000-12-15 00:44:02 +00:00
Andrew M. Kuchling 15c3c2bdf8 Curses demos contributed by Thomas Gellekum <tg@FreeBSD.org>.
ncurses.py requires panel support, and therefore doesn't work yet.
2000-12-15 00:41:48 +00:00
Jack Jansen 61c64c9de0 Various tweaks. It now returns the exact same files as Matthias' tool 95% of the time. 2000-12-14 23:35:01 +00:00
Jack Jansen f0d750803d Oops, interaction() returned a single value in stead of a tuple (I thought that bug was loooong fixed??!?). 2000-12-14 23:34:15 +00:00
Jack Jansen 581fa78362 First stab at a script that mimicks Matthias Neerachers tool used to build GUSI. 2000-12-14 22:29:58 +00:00
Jack Jansen 80716f0e61 Set autodispose only if RefCon isn't set yet on the window. This way we don't accidentally dispose of windows that are actually dialogs-in-disguise. 2000-12-14 22:29:00 +00:00
Guido van Rossum 4550b00c80 Fix bit rot: use sock.connect((host, port)) and allow 2nd cmd line
arg.
2000-12-14 22:12:33 +00:00
Fred Drake de77bc5468 For the title page, insert the package version number before the date.
This makes the title area more like the title are of the top-level
index, and puts the information more people are interested in first.
2000-12-14 18:36:12 +00:00
Fred Drake 3277da0f33 Update the test suite to cover more ground.
This closes patch #102477.
2000-12-14 18:20:22 +00:00
Fred Drake f7cf40d331 Lots of small bug fixes and DOM API conformance improvements:
Make Node inherit from xml.dom.Node to pick up the NodeType values
defined by the W3C recommendation.

When raising AttributeError, be sure to provide the name of the attribute
that does not exist.

Node.normalize():  Make sure we do not allow an empty text node to survive
                   as the first child; update the sibling links properly.

_getElementsByTagNameNSHelper():  Make recursive calls using the right
                                  number of parameters.

Attr.__setattr__():  Be sure to update name and nodeName at the same time
                     since they are synonyms for this node type.

AttributeList:  Renamed to NamedNodeMap (AttributeList maintained as an
                alias).  Compute the length attribute dynamically to allow
                the underlying structures to mutate.

AttributeList.item():  Call .keys() on the dictionary rather than using
                       self.keys() for performance.

AttributeList.setNamedItem(), .setNamedItemNS():
        Added methods.

Text.splitText():
        Added method.

DocumentType:
        Added implementation class.

DOMImplementation:
        Added implementation class.

Document.appendChild():  Do not allow a second document element to be added.

Document.documentElement:  Find this dynamically, so that one can be
        removed and another added.

Document.unlink():  Clear the doctype attribute.

_get_StringIO():  Only use the StringIO module; cStringIO does not support
                  Unicode.
2000-12-14 18:16:11 +00:00
Fred Drake c16adce273 Adjust PullDOM to use a DOMImplementation instance to create new Document
objects; uses minidom if one is not provided to the constructor.

parse():  Pick up the default_bufsize default value dynamically so that
          the value in the module may be (meaningfully) changed at runtime.

This (partially) closes patch #102477.
2000-12-14 18:00:18 +00:00
Guido van Rossum adf5410dc4 Test for NULL returned from PyObject_NEW(). 2000-12-14 15:09:46 +00:00
Guido van Rossum 9e8f4ea0aa Test for NULL returned from PyObject_NEW(). 2000-12-14 14:59:53 +00:00
Fred Drake f0b315478b Update information on the locking() function, added the needed constants.
(Thanks for the info, Tim!)
2000-12-14 03:11:24 +00:00
Tim Peters f7f88b11e4 Add long-overdue docstrings to dict methods. 2000-12-13 23:18:45 +00:00