Commit Graph

1876 Commits

Author SHA1 Message Date
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 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 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
Guido van Rossum 47f5fdc114 Add the -W option. 2000-12-15 22:00:54 +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
Jack Jansen 63596aeb33 The Mac C library (MSL from CodeWarrior 6) and I/O library (GUSI
2.1.3) finally agree on when the epoch is, so the code to convert
epochs has been disabled.
2000-12-12 22:42:30 +00:00
Guido van Rossum cfc4cf601c Add URL with info for PIL. 2000-12-12 21:07:08 +00:00
Tim Peters d92dfe0ef5 SF bug 110843: Low FD_SETSIZE limit on Win32 (PR#41). Boosted to 512. 2000-12-12 01:18:41 +00:00
Guido van Rossum f377d57328 Trivial typo fix, submitted by Charles Waldman (SF patch #102794). 2000-12-12 00:37:58 +00:00
Fred Drake b6429a2020 validate_varargslist(): Fix two bugs in this function, one that affected
it when *args and/or **kw are used, and one when
                         they are not.

This closes bug #125375: "parser.tuple2ast() failure on valid parse tree".
2000-12-11 22:08:27 +00:00
Guido van Rossum 37da22b3f4 The C+ compiler is called $(CXX) these days, not CCC.
This fixes SF Bug #124478.
2000-12-06 23:46:29 +00:00
Fred Drake e63544f872 posix_getlogin(): Be more cautious about interpreting a NULL from
getlogin() -- it is not clear that a NULL is always
                   an error.
2000-12-06 21:45:33 +00:00
Fred Drake a30680b240 posix_getlogin(): Handle the possibility that getlogin() can return
NULL without setting errno; observed on Linux
                   Mandrake 7.2 by an anonymous user.

This closes bug #124758.
2000-12-06 21:24:28 +00:00
Guido van Rossum e4dad905d4 Patch by Michael Hudson to clarify the error message from
getsockaddrarg when the address is not a tuple.
2000-12-01 13:13:11 +00:00
Andrew M. Kuchling 469d5bb0b4 Clarify two comments 2000-11-30 01:57:18 +00:00
Guido van Rossum d7aa0f245f Update dependencies per /F. 2000-11-28 12:09:18 +00:00
Andrew M. Kuchling 26cc66fe6a Patch #102412 from mwh: Add support for the setupterm() function, to
initialize the terminal without necessarily calling initscr()
2000-11-18 17:45:59 +00:00
Guido van Rossum 1bff883ac0 Allow new.function() called with explicit 3rd arg of None, as
documented, and as is reasonable (since it is optional, but there's
another argument following it that may require you to specify a
value).  This solves SF bug 121887.
2000-11-13 20:29:20 +00:00
Tim Peters 7c1cb46126 Fix for SF bug 117402, crashes on str(array) and repr(array). This was an
unfortunate consequence of somebody switching from PyArg_Parse to
PyArg_ParseTuple but without changing the argument from a NULL to a tuple.
2000-11-10 19:04:19 +00:00
Andrew M. Kuchling f16e0ed76c Patch #102278: add tparm() function to _curses module 2000-11-07 03:35:24 +00:00
Fredrik Lundh fad27aee11 Added 38,642 missing characters to the Unicode database (first-last
ranges) -- but thanks to the 2.0 compression scheme, this doesn't add
a single byte to the resulting binaries (!)

Closes bug #117524
2000-11-03 20:24:15 +00:00
Thomas Wouters 2cffc7d420 Move our own getopt() implementation to _PyOS_GetOpt(), and use it
regardless of whether the system getopt() does what we want. This avoids the
hassle with prototypes and externs, and the check to see if the system
getopt() does what we want. Prefix optind, optarg and opterr with _PyOS_ to
avoid name clashes. Add new include file to define the right symbols. Fix
Demo/pyserv/pyserv.c to include getopt.h itself, instead of relying on
Python to provide it.
2000-11-03 08:18:37 +00:00
Andrew M. Kuchling e7d3616409 Patch from Randall Hopper to fix PR #116172, "curses module fails to
build on SGI":
* Check for 'sgi' preprocessor symbol, not '__sgi__'
* Surround individual character macros with #ifdef's, instead of making them
  all rely on STRICT_SYSV_CURSES
2000-11-01 19:59:12 +00:00
Fred Drake 4ba298c325 ParserCreate(): Added test that the namespace_separator value, if given,
has the required length.

initpyexpat():  Provide the type object for the ParserCreate() return
                value as XMLParserType.
2000-10-29 04:57:53 +00:00
Fred Drake 5f739befe5 Do not echo the echo command with the message telling the user that Setup
may be out of date.
2000-10-29 04:28:48 +00:00
Martin v. Löwis 02956017f9 Do not release unallocated Tcl objects. Closes #117278 and #117167. 2000-10-29 00:44:43 +00:00
Fredrik Lundh ebc37b28fa -- properly reset groups in findall (bug #117612)
-- fixed negative lookbehind to work correctly at the beginning
of the target string (bug #117242)

-- improved syntax check; you can no longer refer to a group
inside itself (bug #110866)
2000-10-28 19:30:41 +00:00
Fred Drake cf3bc8c5a5 Rename Setup.in to Setup.dist, and assume that configure will create
Setup (instead of creating it from the Makefile).
2000-10-26 17:07:40 +00:00
Fred Drake 35f8d46f94 Update a comment to be correct. 2000-10-26 14:57:29 +00:00
Fred Drake 661ea26b3d Ka-Ping Yee <ping@lfw.org>:
Changes to error messages to increase consistency & clarity.

This (mostly) closes SourceForge patch #101839.
2000-10-24 19:57:45 +00:00
Fred Drake 9c801abef3 t_bootstram(): Use PySys_WriteStderr() instead of fprintf(stderr,...).
This closes bug #117324.
2000-10-20 20:02:37 +00:00
Fred Drake 8f176accde Update the comments for the BSD DB module, including a new pointer to
the DB 3 module; thanks to Robin Dunn <robind@users.sourceforge.net>.

This closes SourceForge bug #116850.
2000-10-14 04:14:09 +00:00
Tim Peters 2bf405ad55 Repaired a comment and asserted a precondition. 2000-10-12 19:42:00 +00:00
Guido van Rossum ada6d87c0c Fix for Bug #116453.
Direct use of interp->result is deprecated; changing this to
Tcl_GetStringResult(interp) everywhere fixed the problem of losing the
error message with TclError exceptions, on Windows.
2000-10-12 17:14:46 +00:00
Tim Peters 1d120619d4 Stop raising OverflowError on underflows reported by libm (errno==ERANGE and
libm result is 0).  Cautiously add a few libm exception test cases:
1. That exp(-huge) returns 0 without exception.
2. That exp(+huge) triggers OverflowError.
3. That sqrt(-1) raises ValueError specifically (apparently under glibc linked
   with -lieee, it was raising OverflowError due to an accident of the way
   mathmodule.c's CHECK() macro happened to deal with Infs and NaNs under gcc).
2000-10-12 06:10:25 +00:00
Fred Drake 06fdd2d9e8 Another gcc -Wall warning squashed:
MPZ_divm():  Initialize mpzden to NULL, since it could be Py_XDECREF()ed
             without being initialized.
2000-10-11 21:53:34 +00:00
Fred Drake 4747a18ef9 Remove one more gcc -Wall warning. 2000-10-11 21:44:02 +00:00
Fred Drake 5428c7db41 Fix the docstring for new.function().
Based on a comment from Detlef Lannert
<lannert@lannert.rz.uni-duesseldorf.de>.
2000-10-10 22:07:18 +00:00
Fred Drake 9e2e1e5920 Donn Cave <donn@oz.net>:
Updated to work better with BeOS.

This closes SourceForge patch #101777.
2000-10-09 16:48:09 +00:00
Andrew M. Kuchling d923831027 Patch #101810: check whether zst.avail_out is non-zero when getting
a Z_BUF_ERROR while decompressing.  If it is, assume that this means
   the data being decompressed is bad and raise an exception, instead of
   just assuming that Z_BUF_ERROR always means that more space is required.
2000-10-09 14:18:10 +00:00
Guido van Rossum 59316671e3 Be consistent in the description of audio formats: <format> <width>
"audio".

Also add AFMT_S16_NE ("native-endian").  (Somehow there's no AFMT_U16_NE.)
2000-10-08 19:47:47 +00:00
Jeremy Hylton e2b7c4dea3 test_linuxaudio:
read the header from the .au file and do a sanity check
    pass only the data to the audio device
    call flush() so that program does not exit until playback is complete
    call all the other methods to verify that they work minimally
    call setparameters with a bunch of bugs arguments

linuxaudiodev.c:
    use explicit O_WRONLY and O_RDONLY instead of 1 and 0
    add a string name to each of the entries in audio_types[]
    add AFMT_A_LAW to the list of known formats
    add x_mode attribute to lad object, stores imode from open call
    test ioctl return value as == -1, not < 0
    in read() method, resize string before return
    add getptr() method, that calls does ioctl on GETIPTR or GETOPTR
        depending on x_mode
    in setparameters() method, do better error checking and raise
        ValueErrors; also use ioctl calls recommended by Open Sound
        System Programmer's Guido (www.opensound.com)
    use PyModule_AddXXX to define names in module
2000-10-06 19:39:55 +00:00
Jim Fulton e60de4d309 Added a new "base" type, IOobject for which most of the
operations are defined.  This will, hopefully clarify
some of the logic.

Added close test to raise proper error when operations
are performed on closed StringIOs.

Added a position argument to the truncate method.

Added a size argument to readline.

Added PyArg_Parse calls for methods that don't take arguments to
make sure they don't take arguments.
2000-10-06 19:24:23 +00:00
Guido van Rossum 2834b974b6 [ Bug #113803 ] [2.0b1 NT4.0] printing non asci char causes idle to abort
http://sourceforge.net/bugs/?func=detailbug&bug_id=113803&group_id=5470

Add Unicode support and error handling to AsString().  Both AsString()
and Merge() now return NULL and set a proper Python exception
condition when an error happens; Merge() and other callers of
AsString() check for errors from AsString().  Also fixed cleanup in
Merge() and Tkapp_Call() return cleanup code; the fv array was not
necessarily completely initialized, causing calls to ckfree() with
garbage arguments!

(Also reindented some lines that were longer than 80 chars and
reformatted some code that used an alien coding standard.)
2000-10-06 16:58:26 +00:00
Fred Drake 51d9036cc8 Norman Vine <nhv@users.sourceforge.net>:
tcp.h is not available on CygWin, so do not try to include it there.

This closes SourceForge patch #101802.
2000-10-06 15:37:06 +00:00
Tim Peters 98dc065c1b SF "bug" 115973: patches from Norman Vine so that shared libraries and
Tkinter work under Cygwin.  Accepted on faith & reasonableness.
2000-10-05 19:24:26 +00:00
Neil Schemenauer b2c2c9e977 - update Neil's email address 2000-10-04 16:34:09 +00:00
Neil Schemenauer 97d723bd62 - do not start collection during processing of an exception 2000-10-04 16:25:07 +00:00