Commit Graph

11264 Commits

Author SHA1 Message Date
Guido van Rossum eb29e9ab2b Fix core dump in an endcase of b.strip() that I missed. 2007-08-08 21:55:33 +00:00
Thomas Heller 2fb5ac745b Fix the ctypes tests. Patch from Victor Stinner. He writes:
The problem is that ctypes c_char (and c_char_p) creates unicode string
instead of byte string. I attached a proposition (patch) to change this
behaviour (use bytes for c_char).

So in next example, it will display 'bytes' and not 'str':
  from ctypes import c_buffer, c_char
  buf = c_buffer("abcdef")
  print (type(buf[0]))

Other behaviour changes:
 - repr(c_char) adds a "b"
   eg. repr(c_char('x')) is "c_char(b'x')" instead of "c_char('x')"
 - bytes is mutable whereas str is not:
   this may break some modules based on ctypes
2007-08-08 18:47:32 +00:00
Jeremy Hylton df5f6b551a Fix several failing tests in test_urllib2net.
The HTTPResponse object is being passed to BufferedReader, but it
wasn't designed to be used that way.  These changes extend the hacks
that have already been made in urllib2 to get the tests to pass.

The hacks need to be removed and proper support for use with the io
library.  That's a project for another day.
2007-08-08 17:36:33 +00:00
Guido van Rossum 6a10e02aa6 Switch wsgiref to io.{StringIO,BytesIO}. This shuts up the test failures.
(I'm not sure about it actually working though.)
2007-08-08 17:01:45 +00:00
Collin Winter ec8e7168c4 Convert some usages of types.StringType to just str (since types.StringType has gone away). 2007-08-08 03:59:26 +00:00
Guido van Rossum 75c26bc6a7 BZ2File.read(0) should return b"" rather than raising ValueError.
This fixes test_tarfile.py.
I've added a unit test for the correct bz2 behavior.
2007-08-07 23:29:20 +00:00
Guido van Rossum a05577059d Remove the coding line, and convert umlauted characters to \x escapes.
All code in the stdlib should be ASCII only, unless (a) it's test
input for testing the *parsing* of unicode, or (b) it's an author's
name in a comment.
2007-08-07 23:19:53 +00:00
Guido van Rossum 55b15c9f05 Fix the test_minidom failure.
We just need to force the encoding when no encoding is passed to toxml()
or toprettyxml(), rather than relying on the default encoding (which is
unreliable).
2007-08-07 23:03:33 +00:00
Guido van Rossum bdba5cf694 Change the repr() of frozenset instances (and set subclasses)
from name([e1, e2, ...]) to name({e1, e2, ...}).
This makes more sense now we have the set notation.
2007-08-07 22:44:20 +00:00
Lars Gustäbel b506dc32c1 Completed str/unicode unification.
All tests pass, but maybe some tests have become unnecessary now.
Removed PaxUnicodeTest, added MiscTest.

TarFile.extractfile() returns a binary file object which can be used
with a TextIOWrapper for text I/O.
2007-08-07 18:36:16 +00:00
Guido van Rossum cd869d8d41 SF patch# 1769016 by James Brotchie.
Change plistlib to use bytes instead of strings.
Fix test_plistlib accordingly.
2007-08-07 14:26:40 +00:00
Martin v. Löwis ca8dd9182e Fix test case by converting dbm keys to bytes. 2007-08-07 07:15:50 +00:00
Neal Norwitz f9b95d4dda Patch #1768976, Fix for failing test_scriptpackages (untested but looks good) 2007-08-07 05:42:45 +00:00
Martin v. Löwis e6568694bb Change dumbdbm to use bytes keys. 2007-08-07 05:37:39 +00:00
Guido van Rossum 806c2469cb Merged revisions 56753-56781 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/p3yk

................
  r56760 | neal.norwitz | 2007-08-05 18:55:39 -0700 (Sun, 05 Aug 2007) | 178 lines

  Merged revisions 56477-56759 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r56485 | facundo.batista | 2007-07-21 17:13:00 -0700 (Sat, 21 Jul 2007) | 5 lines


    Selectively enable tests for asyncore.readwrite based on the presence
    of poll support in the select module (since this is the only case in
    which readwrite can be called). [GSoC - Alan McIntyre]
  ........
    r56488 | nick.coghlan | 2007-07-22 03:18:07 -0700 (Sun, 22 Jul 2007) | 1 line

    Add explicit relative import tests for runpy.run_module
  ........
    r56509 | nick.coghlan | 2007-07-23 06:41:45 -0700 (Mon, 23 Jul 2007) | 5 lines

    Correctly cleanup sys.modules after executing runpy relative import
    tests
    Restore Python 2.4 ImportError when attempting to execute a package
    (as imports cannot be guaranteed to work properly if you try it)
  ........
    r56519 | nick.coghlan | 2007-07-24 06:07:38 -0700 (Tue, 24 Jul 2007) | 1 line

    Tweak runpy test to do a better job of confirming that sys has been manipulated correctly
  ........
    r56520 | nick.coghlan | 2007-07-24 06:58:28 -0700 (Tue, 24 Jul 2007) | 1 line

    Fix an incompatibility between the -i and -m command line switches as reported on python-dev by PJE - runpy.run_module now leaves any changes it makes to the sys module intact after the function terminates
  ........
    r56523 | nick.coghlan | 2007-07-24 07:39:23 -0700 (Tue, 24 Jul 2007) | 1 line

    Try to get rid of spurious failure in test_resource on the Debian buildbots by changing the file size limit before attempting to close the file
  ........
    r56533 | facundo.batista | 2007-07-24 14:20:42 -0700 (Tue, 24 Jul 2007) | 7 lines


    New tests for basic behavior of smtplib.SMTP and
    smtpd.DebuggingServer. Change to use global host & port number
    variables. Modified the 'server' to take a string to send back in
    order to vary test server responses. Added a test for the reaction of
    smtplib.SMTP to a non-200 HELO response. [GSoC - Alan McIntyre]
  ........
    r56538 | nick.coghlan | 2007-07-25 05:57:48 -0700 (Wed, 25 Jul 2007) | 1 line

    More buildbot cleanup - let the OS assign the port for test_urllib2_localnet
  ........
    r56539 | nick.coghlan | 2007-07-25 06:18:58 -0700 (Wed, 25 Jul 2007) | 1 line

    Add a temporary diagnostic message before a strange failure on the alpha Debian buildbot
  ........
    r56543 | martin.v.loewis | 2007-07-25 09:24:23 -0700 (Wed, 25 Jul 2007) | 2 lines

    Change location of the package index to pypi.python.org/pypi
  ........
    r56551 | georg.brandl | 2007-07-26 02:36:25 -0700 (Thu, 26 Jul 2007) | 2 lines

    tabs, newlines and crs are valid XML characters.
  ........
    r56553 | nick.coghlan | 2007-07-26 07:03:00 -0700 (Thu, 26 Jul 2007) | 1 line

    Add explicit test for a misbehaving math.floor
  ........
    r56561 | mark.hammond | 2007-07-26 21:52:32 -0700 (Thu, 26 Jul 2007) | 3 lines

    In consultation with Kristjan Jonsson, only define WINVER and _WINNT_WIN32
    if (a) we are building Python itself and (b) no one previously defined them
  ........
    r56562 | mark.hammond | 2007-07-26 22:08:54 -0700 (Thu, 26 Jul 2007) | 2 lines

    Correctly detect AMD64 architecture on VC2003
  ........
    r56566 | nick.coghlan | 2007-07-27 03:36:30 -0700 (Fri, 27 Jul 2007) | 1 line

    Make test_math error messages more meaningful for small discrepancies in results
  ........
    r56588 | martin.v.loewis | 2007-07-27 11:28:22 -0700 (Fri, 27 Jul 2007) | 2 lines

    Bug #978833: Close https sockets by releasing the _ssl object.
  ........
    r56601 | martin.v.loewis | 2007-07-28 00:03:05 -0700 (Sat, 28 Jul 2007) | 3 lines

    Bug #1704793: Return UTF-16 pair if unicodedata.lookup cannot
    represent the result in a single character.
  ........
    r56604 | facundo.batista | 2007-07-28 07:21:22 -0700 (Sat, 28 Jul 2007) | 9 lines


    Moved all of the capture_server socket setup code into the try block
    so that the event gets set if a failure occurs during server setup
    (otherwise the test will block forever).  Changed to let the OS assign
    the server port number, and client side of test waits for port number
    assignment before proceeding. The test data in DispatcherWithSendTests
    is also sent in multiple send() calls instead of one to make sure this
    works properly. [GSoC - Alan McIntyre]
  ........
    r56611 | georg.brandl | 2007-07-29 01:26:10 -0700 (Sun, 29 Jul 2007) | 2 lines

    Clarify PEP 343 description.
  ........
    r56614 | georg.brandl | 2007-07-29 02:11:15 -0700 (Sun, 29 Jul 2007) | 2 lines

    try-except-finally is new in 2.5.
  ........
    r56617 | facundo.batista | 2007-07-29 07:23:08 -0700 (Sun, 29 Jul 2007) | 9 lines


    Added tests for asynchat classes simple_producer & fifo, and the
    find_prefix_at_end function. Check behavior of a string given as a
    producer.  Added tests for behavior of asynchat.async_chat when given
    int, long, and None terminator arguments. Added usepoll attribute to
    TestAsynchat to allow running the asynchat tests with poll support
    chosen whether it's available or not (improves coverage of asyncore
    code). [GSoC - Alan McIntyre]
  ........
    r56620 | georg.brandl | 2007-07-29 10:38:35 -0700 (Sun, 29 Jul 2007) | 2 lines

    Bug #1763149: use proper slice syntax in docstring.
     (backport)
  ........
    r56624 | mark.hammond | 2007-07-29 17:45:29 -0700 (Sun, 29 Jul 2007) | 4 lines

    Correct use of Py_BUILD_CORE - now make sure it is defined before it is
    referenced, and also fix definition of _WIN32_WINNT.
    Resolves patch 1761803.
  ........
    r56632 | facundo.batista | 2007-07-30 20:03:34 -0700 (Mon, 30 Jul 2007) | 8 lines


    When running asynchat tests on OS X (darwin), the test client now
    overrides asyncore.dispatcher.handle_expt to do nothing, since
    select.poll gives a POLLHUP error at the completion of these tests.
    Added timeout & count arguments to several asyncore.loop calls to
    avoid the possibility of a test hanging up a build. [GSoC - Alan
    McIntyre]
  ........
    r56633 | nick.coghlan | 2007-07-31 06:38:01 -0700 (Tue, 31 Jul 2007) | 1 line

    Eliminate RLock race condition reported in SF bug #1764059
  ........
    r56636 | martin.v.loewis | 2007-07-31 12:57:56 -0700 (Tue, 31 Jul 2007) | 2 lines

    Define _BSD_SOURCE, to get access to POSIX extensions on OpenBSD 4.1+.
  ........
    r56653 | facundo.batista | 2007-08-01 16:18:36 -0700 (Wed, 01 Aug 2007) | 9 lines


    Allow the OS to select a free port for each test server. For
    DebuggingServerTests, construct SMTP objects with a localhost argument
    to avoid abysmally long FQDN lookups (not relevant to items under
    test) on some machines that would cause the test to fail. Moved server
    setup code in the server function inside the try block to avoid the
    possibility of setup failure hanging the test.  Minor edits to conform
    to PEP 8. [GSoC - Alan McIntyre]
  ........
    r56681 | matthias.klose | 2007-08-02 14:33:13 -0700 (Thu, 02 Aug 2007) | 2 lines

    - Allow Emacs 22 for building the documentation in info format.
  ........
    r56689 | neal.norwitz | 2007-08-02 23:46:29 -0700 (Thu, 02 Aug 2007) | 1 line

    Py_ssize_t is defined regardless of HAVE_LONG_LONG.  Will backport
  ........
    r56727 | hyeshik.chang | 2007-08-03 21:10:18 -0700 (Fri, 03 Aug 2007) | 3 lines

    Fix gb18030 codec's bug that doesn't map two-byte characters on
    GB18030 extension in encoding. (bug reported by Bjorn Stabell)
  ........
    r56751 | neal.norwitz | 2007-08-04 20:23:31 -0700 (Sat, 04 Aug 2007) | 7 lines

    Handle errors when generating a warning.
    The value is always written to the returned pointer if getting it was
    successful, even if a warning causes an error. (This probably doesn't matter
    as the caller will probably discard the value.)

    Will backport.
  ........
................
2007-08-06 23:33:07 +00:00
Guido van Rossum 4626458cc5 SF patch# 1767398 by Adam Hupp.
Fix csv to read/write bytes from/to binary files.
Fix the unit tests to test this and to use with TemporaryFile().
2007-08-06 19:32:18 +00:00
Brett Cannon dd766d53a2 Move tempfile over to the io module. Makes test_threaded_import pass.
Thanks Paul Colomiets.
2007-08-05 22:23:10 +00:00
Martin v. Löwis 64ce5052e1 Make bsddb use bytes as keys and values. Add StringKeys
and StringValues classes. Fix test suite.
2007-08-05 15:39:16 +00:00
Guido van Rossum 33d2689fc9 Merged revisions 56492-56752 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/p3yk

........
  r56497 | kurt.kaiser | 2007-07-22 14:55:16 -0700 (Sun, 22 Jul 2007) | 4 lines

  In the case of syntax errors, in py3k format_exception_only()
  was including line number and position in the final line of the
  exception notification, duplicating info in previous lines.
........
  r56501 | kurt.kaiser | 2007-07-22 19:35:50 -0700 (Sun, 22 Jul 2007) | 2 lines

  Hum, needed a newline in the last change.
........
  r56536 | kurt.kaiser | 2007-07-24 19:06:48 -0700 (Tue, 24 Jul 2007) | 5 lines

  Not all instantiations of SyntaxError set the args attribute.
  e.g. symtable.c
  Modify format_exception_only() to get SyntaxError attributes directly
  instead of unpacking 'args'.
........
  r56537 | kurt.kaiser | 2007-07-24 19:13:03 -0700 (Tue, 24 Jul 2007) | 3 lines

  Update doctest strings: traceback.py no longer prints redundant location
  information in the last line of the exception display.
........
  r56627 | kurt.kaiser | 2007-07-29 21:06:57 -0700 (Sun, 29 Jul 2007) | 2 lines

  Interactive interpreter emulator (code.py) failing to print exceptions.
........
  r56628 | kurt.kaiser | 2007-07-29 21:41:02 -0700 (Sun, 29 Jul 2007) | 2 lines

  Eliminate extra lines before and after tracebacks.
........
  r56638 | kurt.kaiser | 2007-07-31 19:36:45 -0700 (Tue, 31 Jul 2007) | 3 lines

  Refactor syntax error display in shell and edit windows; move
  colorize_syntax_error() to EditorWindow; update to py3k.
........
  r56685 | neal.norwitz | 2007-08-02 22:20:23 -0700 (Thu, 02 Aug 2007) | 10 lines

  Remove several h/w and o/s specific modules that are undocumented, obsolete,
  and/or not widely used:
   linuxaudiodev.c, sunaudiodev.c Lib/plat-sunos5/SUNAUDIODEV.py
   Lib/audiodev.py Tools/audiopy/audiopy

  Move Lib/toaiff.py to Demo.

  See PEP 3108 for most of the details.
........
  r56686 | neal.norwitz | 2007-08-02 22:21:48 -0700 (Thu, 02 Aug 2007) | 4 lines

  Missed one module that should have been removed since it relied
  on audiodev which was removed.
........
  r56748 | neal.norwitz | 2007-08-04 19:19:04 -0700 (Sat, 04 Aug 2007) | 1 line

  Make from X import * outside module scope an error.
........
  r56750 | neal.norwitz | 2007-08-04 19:35:01 -0700 (Sat, 04 Aug 2007) | 1 line

  Use READONLY consistently instead of RO
........
2007-08-05 15:29:28 +00:00
Jeremy Hylton 77553ab531 Fix test for new version of urllib that uses HTTPConnection directly.
Changes the way the httplib classes are stubbed out.
2007-08-04 19:23:09 +00:00
Jeremy Hylton 39b198d835 Change urllib to use HTTPConnection rather than old HTTP class.
The HTTP class is a backwards compatibility layer for the Python 1.5
API.  (The only remaining use in the std library is xmlrpclib.)

The current change makes urllib issue HTTP/1.0 requests with
HTTPConnection, because is accesses HTTPResponse.fp directly instead
of using the read() method.  Using fp directly interacts poorly with
persistent connections.  There are probably better solutions than the
current one, but this is a start.
2007-08-04 19:22:00 +00:00
Guido van Rossum f066c1ba37 Make test_tokenize really pass -- don't add extra output. 2007-08-04 17:55:43 +00:00
Guido van Rossum cfbbf48e3e Make test_tokenize pass again:
Add code to test_roundtrip() that figures out the encoding
from the first two lines of the file.
(We need to refactor this again to make it available to
all places that need this, e.g. linecache.py.)
2007-08-04 17:43:15 +00:00
Jeremy Hylton 3e18615496 Fix test: readline() now returns bytes 2007-08-04 03:46:11 +00:00
Jeremy Hylton 66dc8c59be Fix tests that tried to sneak strings through httplib.
The httplib interface returns bytes for now.
2007-08-04 03:42:26 +00:00
Jeremy Hylton 04319c78d6 Make sure LineAndFileWrapper gets bytes() as its first argument.
This change fixes a test in test_urllib.
2007-08-04 03:41:19 +00:00
Jeremy Hylton 4e7855d7fd Use BytesIO instead of StringIO. 2007-08-04 03:34:03 +00:00
Jeremy Hylton 0ee5eeb8ff Fix several more paths from the SSL code.
In particular, watch out for comparing b"" to "".  They're not equal,
but you can start at the code asking whether buf == "" for a long time
before realizing that it will never be True.
2007-08-04 03:25:17 +00:00
Jeremy Hylton 97043c3c02 HTTPResponse should not inherit from io.IOBase.
I'm not sure why I thought it should originally, but it introduces an
__del__() method on the response which cause the close() to be called
too soon using the HTTP compat class.

Also, remove some stale comments.  The HTTPResponse calls makefile()
immediately, so there is no risk of it closing the socket.
2007-08-04 02:34:24 +00:00
Guido van Rossum 4a7fd90d9c Fix failure do to outlawing complex floordiv/mod. 2007-08-03 21:15:23 +00:00
Jeremy Hylton ec0c508b0a Fix an absurdly invasive test.
Checks that an io object somewhere in the stack of wrappers is
actually closed.  --This line, and those below, will be ignored--

M    test_urllib2net.py
2007-08-03 21:03:02 +00:00
Jeremy Hylton 8fff7924a4 Fix tests to use bytes() where the actual sockets return bytes().
Use io.BytesIO() instead of StringIO.StringIO().  FakeSocket still
accepts regular strings and coverts them to bytes internally.
2007-08-03 20:56:14 +00:00
Guido van Rossum 9648d62fd5 Make test_complex pass again now that floordiv and mod are illegal. 2007-08-03 20:40:44 +00:00
Jeremy Hylton 5accbdb812 Make sure socket.close() doesn't interfere with socket.makefile().
If a makefile()-generated object is open and its parent socket is
closed, the parent socket should remain open until the child is
closed, too.  The code to support this is moderately complex and
requires one extra slots in the socket object.

This change fixes httplib so that several urllib2net test cases pass
again.

Add SocketCloser class to socket.py, which encapsulates the
refcounting logic for sockets after makefile() has been called.

Move SocketIO class from io module to socket module.  It's only use is
to implement the raw I/O methods on top of a socket to support
makefile().

Add unittests to test_socket to cover various patterns of close and
makefile.
2007-08-03 20:40:09 +00:00
Jeremy Hylton d2ef864f81 Treat HTTP status line as ISO-8859-1 as in httplib module. 2007-08-03 20:32:27 +00:00
Jeremy Hylton cf2f41919c Hack: Fix some test_urllib2.net tests by getting them access to the
raw socket so they can check the timeout value.  Should change the
code under test to expose the timeout in a more direct way.
2007-08-03 20:31:38 +00:00
Jeremy Hylton fb35f65e8b A few local changes for consistency of string literals. 2007-08-03 20:30:33 +00:00
Guido van Rossum c0f2d2d345 SF patch# 1762940 by Joe Gregorio.
Fix test_cookielib and test_urllib2.
(The changes to urllib make urllib.quote() work correctly for Unicode
strings; but they don't fix test_urllib.)
2007-08-03 19:19:24 +00:00
Guido van Rossum 15863ea07a SF patch# 1764815 by Paul Colomiets.
Fix for test_socketserver.
Use io.BytesIO instead of io.StringIO, and adjust tests.
2007-08-03 19:03:39 +00:00
Guido van Rossum ad8d30092c SF patch# 1766592 by Paul Colomiets.
Fix test_zipimport.
2007-08-03 18:40:49 +00:00
Jeremy Hylton e5d0e8431f Make consistent use of "" for string literals in new classes. 2007-08-03 13:45:24 +00:00
Jeremy Hylton 811fc14935 Fix status line parsing for http response. 2007-08-03 13:30:02 +00:00
Guido van Rossum 4737482fad Add a default __prepare__() method to 'type', so it can be called
using super().  (See recent conversation on python-3000 with Talin
and Phillip Eby about PEP 3115 chaining rules.)
2007-08-02 16:48:17 +00:00
Guido van Rossum a6bcefca81 When testing all stdlib modules, ignore test_pep263.py which is encoded
in KOI8-R.
2007-08-01 18:06:13 +00:00
Guido van Rossum 70d2b890de Tests for @abstractproperty by Jeffrey Yasskin.
(The previous changes to abc.py were also by him).
Put back a comment about using super() for properties
(I didn't realize this worked).
2007-08-01 17:52:23 +00:00
Guido van Rossum b31339fa02 Add @abstractproperty. 2007-08-01 17:32:28 +00:00
Walter Dörwald e78178e2c0 Bytes (which are the input for decoding) are mutable now. If a decoding
error callback changes the bytes object in the exception the decoder might
use memory that's no longer in use. Change unicode_decode_call_errorhandler()
so that it fetches the adresses of the bytes array (start and end) from the
exception object and passes them back to the caller.
2007-07-30 13:31:40 +00:00
Brett Cannon 2dbde5ea44 In cases where dealing with base64, do the conversion but then get the ASCII
string representation for use in the XML.

Also strip out some unneeded encoding/decoding steps.
2007-07-30 03:50:35 +00:00
Brett Cannon 96d7e8369c Don't try to use a bytes sequence for file paths. Also force equivalency tests
to be between str8 and str.
2007-07-30 01:34:07 +00:00
Martin v. Löwis 447d33ead6 Implement PEP 3120. 2007-07-29 18:10:01 +00:00