[Python-checkins] r87884 - in python/branches/release31-maint: Doc/library/exceptions.rst Doc/library/threading.rst Doc/library/wave.rst Doc/library/zlib.rst

georg.brandl python-checkins at python.org
Sun Jan 9 08:59:03 CET 2011


Author: georg.brandl
Date: Sun Jan  9 08:59:02 2011
New Revision: 87884

Log:
Merged revisions 87807,87820,87831,87859,87870 via svnmerge from 
svn+ssh://svn.python.org/python/branches/py3k

........
  r87807 | georg.brandl | 2011-01-06 20:28:18 +0100 (Do, 06 Jan 2011) | 1 line
  
  #10846: fix typo.
........
  r87820 | georg.brandl | 2011-01-07 19:28:45 +0100 (Fr, 07 Jan 2011) | 1 line
  
  #10856: document (Base)Exception.args better.
........
  r87831 | georg.brandl | 2011-01-07 21:58:25 +0100 (Fr, 07 Jan 2011) | 1 line
  
  Fix indent.
........
  r87859 | georg.brandl | 2011-01-08 10:45:43 +0100 (Sa, 08 Jan 2011) | 1 line
  
  #10855: document close() semantics of wave objects.
........
  r87870 | georg.brandl | 2011-01-08 22:04:25 +0100 (Sa, 08 Jan 2011) | 1 line
  
  zlib only works with bytes objects.
........


Modified:
   python/branches/release31-maint/   (props changed)
   python/branches/release31-maint/Doc/library/exceptions.rst
   python/branches/release31-maint/Doc/library/threading.rst
   python/branches/release31-maint/Doc/library/wave.rst
   python/branches/release31-maint/Doc/library/zlib.rst

Modified: python/branches/release31-maint/Doc/library/exceptions.rst
==============================================================================
--- python/branches/release31-maint/Doc/library/exceptions.rst	(original)
+++ python/branches/release31-maint/Doc/library/exceptions.rst	Sun Jan  9 08:59:02 2011
@@ -18,12 +18,10 @@
 
 The built-in exceptions listed below can be generated by the interpreter or
 built-in functions.  Except where mentioned, they have an "associated value"
-indicating the detailed cause of the error. This may be a string or a tuple
-containing several items of information (e.g., an error code and a string
-explaining the code).  The associated value is usually passed to the exception
-class's constructor.  If the exception class is derived from the standard root
-class :exc:`BaseException`, the associated value is present as the exception
-instance's :attr:`args` attribute.
+indicating the detailed cause of the error.  This may be a string or a tuple of
+several items of information (e.g., an error code and a string explaining the
+code).  The associated value is usually passed as arguments to the exception
+class's constructor.
 
 User code can raise built-in exceptions.  This can be used to test an exception
 handler or to report an error condition "just like" the situation in which the
@@ -38,16 +36,32 @@
 
 The following exceptions are used mostly as base classes for other exceptions.
 
-.. XXX document with_traceback()
-
 .. exception:: BaseException
 
    The base class for all built-in exceptions.  It is not meant to be directly
-   inherited by user-defined classes (for that use :exc:`Exception`).  If
+   inherited by user-defined classes (for that, use :exc:`Exception`).  If
    :func:`bytes` or :func:`str` is called on an instance of this class, the
-   representation of the argument(s) to the instance are returned or the empty
-   string when there were no arguments.  All arguments are  stored in :attr:`args`
-   as a tuple.
+   representation of the argument(s) to the instance are returned, or the empty
+   string when there were no arguments.
+
+   .. attribute:: args
+
+      The tuple of arguments given to the exception constructor.  Some built-in
+      exceptions (like :exc:`IOError`) expect a certain number of arguments and
+      assign a special meaning to the elements of this tuple, while others are
+      usually called only with a single string giving an error message.
+
+   .. method:: with_traceback(tb)
+
+      This method sets *tb* as the new traceback for the exception and returns
+      the exception object.  It is usually used in exception handling code like
+      this::
+
+         try:
+             ...
+         except SomeException:
+             tb = sys.exc_info()[2]
+             raise OtherException(...).with_traceback(tb)
 
 
 .. exception:: Exception

Modified: python/branches/release31-maint/Doc/library/threading.rst
==============================================================================
--- python/branches/release31-maint/Doc/library/threading.rst	(original)
+++ python/branches/release31-maint/Doc/library/threading.rst	Sun Jan  9 08:59:02 2011
@@ -632,9 +632,9 @@
 ^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Semaphores are often used to guard resources with limited capacity, for example,
-a database server.  In any situation where the size of the resource size is
-fixed, you should use a bounded semaphore.  Before spawning any worker threads,
-your main thread would initialize the semaphore::
+a database server.  In any situation where the size of the resource is fixed,
+you should use a bounded semaphore.  Before spawning any worker threads, your
+main thread would initialize the semaphore::
 
    maxconnections = 5
    ...

Modified: python/branches/release31-maint/Doc/library/wave.rst
==============================================================================
--- python/branches/release31-maint/Doc/library/wave.rst	(original)
+++ python/branches/release31-maint/Doc/library/wave.rst	Sun Jan  9 08:59:02 2011
@@ -14,8 +14,8 @@
 
 .. function:: open(file, mode=None)
 
-   If *file* is a string, open the file by that name, other treat it as a seekable
-   file-like object. *mode* can be any of
+   If *file* is a string, open the file by that name, otherwise treat it as a
+   seekable file-like object.  *mode* can be any of
 
    ``'r'``, ``'rb'``
       Read only mode.
@@ -26,9 +26,14 @@
    Note that it does not allow read/write WAV files.
 
    A *mode* of ``'r'`` or ``'rb'`` returns a :class:`Wave_read` object, while a
-   *mode* of ``'w'`` or ``'wb'`` returns a :class:`Wave_write` object.  If *mode*
-   is omitted and a file-like  object is passed as *file*, ``file.mode`` is used as
-   the default value for *mode* (the ``'b'`` flag is still added if  necessary).
+   *mode* of ``'w'`` or ``'wb'`` returns a :class:`Wave_write` object.  If
+   *mode* is omitted and a file-like object is passed as *file*, ``file.mode``
+   is used as the default value for *mode* (the ``'b'`` flag is still added if
+   necessary).
+
+   If you pass in a file-like object, the wave object will not close it when its
+   :meth:`close` method is called; it is the caller's responsibility to close
+   the file object.
 
 
 .. function:: openfp(file, mode)
@@ -52,8 +57,8 @@
 
 .. method:: Wave_read.close()
 
-   Close the stream, and make the instance unusable. This is called automatically
-   on object collection.
+   Close the stream if it was opened by :mod:`wave`, and make the instance
+   unusable.  This is called automatically on object collection.
 
 
 .. method:: Wave_read.getnchannels()
@@ -139,8 +144,8 @@
 
 .. method:: Wave_write.close()
 
-   Make sure *nframes* is correct, and close the file. This method is called upon
-   deletion.
+   Make sure *nframes* is correct, and close the file if it was opened by
+   :mod:`wave`.  This method is called upon object collection.
 
 
 .. method:: Wave_write.setnchannels(n)
@@ -192,6 +197,7 @@
 
    Write audio frames and make sure *nframes* is correct.
 
+
 Note that it is invalid to set any parameters after calling :meth:`writeframes`
 or :meth:`writeframesraw`, and any attempt to do so will raise
 :exc:`wave.Error`.

Modified: python/branches/release31-maint/Doc/library/zlib.rst
==============================================================================
--- python/branches/release31-maint/Doc/library/zlib.rst	(original)
+++ python/branches/release31-maint/Doc/library/zlib.rst	Sun Jan  9 08:59:02 2011
@@ -51,9 +51,9 @@
    regardless of sign.
 
 
-.. function:: compress(string[, level])
+.. function:: compress(data[, level])
 
-   Compresses the data in *string*, returning a string contained compressed data.
+   Compresses the bytes in *data*, returning a bytes object containing compressed data.
    *level* is an integer from ``1`` to ``9`` controlling the level of compression;
    ``1`` is fastest and produces the least compression, ``9`` is slowest and
    produces the most.  The default value is ``6``.  Raises the :exc:`error`
@@ -92,9 +92,9 @@
    regardless of sign.
 
 
-.. function:: decompress(string[, wbits[, bufsize]])
+.. function:: decompress(data[, wbits[, bufsize]])
 
-   Decompresses the data in *string*, returning a string containing the
+   Decompresses the bytes in *data*, returning a bytes object containing the
    uncompressed data.  The *wbits* parameter controls the size of the window
    buffer.  If *bufsize* is given, it is used as the initial size of the output
    buffer.  Raises the :exc:`error` exception if any error occurs.
@@ -121,21 +121,21 @@
 Compression objects support the following methods:
 
 
-.. method:: Compress.compress(string)
+.. method:: Compress.compress(data)
 
-   Compress *string*, returning a string containing compressed data for at least
-   part of the data in *string*.  This data should be concatenated to the output
+   Compress *data*, returning a bytes object containing compressed data for at least
+   part of the data in *data*.  This data should be concatenated to the output
    produced by any preceding calls to the :meth:`compress` method.  Some input may
    be kept in internal buffers for later processing.
 
 
 .. method:: Compress.flush([mode])
 
-   All pending input is processed, and a string containing the remaining compressed
+   All pending input is processed, and a bytes object containing the remaining compressed
    output is returned.  *mode* can be selected from the constants
    :const:`Z_SYNC_FLUSH`,  :const:`Z_FULL_FLUSH`,  or  :const:`Z_FINISH`,
    defaulting to :const:`Z_FINISH`.  :const:`Z_SYNC_FLUSH` and
-   :const:`Z_FULL_FLUSH` allow compressing further strings of data, while
+   :const:`Z_FULL_FLUSH` allow compressing further bytestrings of data, while
    :const:`Z_FINISH` finishes the compressed stream and  prevents compressing any
    more data.  After calling :meth:`flush` with *mode* set to :const:`Z_FINISH`,
    the :meth:`compress` method cannot be called again; the only realistic action is
@@ -153,31 +153,31 @@
 
 .. attribute:: Decompress.unused_data
 
-   A string which contains any bytes past the end of the compressed data. That is,
+   A bytes object which contains any bytes past the end of the compressed data. That is,
    this remains ``""`` until the last byte that contains compression data is
-   available.  If the whole string turned out to contain compressed data, this is
-   ``""``, the empty string.
+   available.  If the whole bytestring turned out to contain compressed data, this is
+   ``b""``, an empty bytes object.
 
-   The only way to determine where a string of compressed data ends is by actually
+   The only way to determine where a bytestring of compressed data ends is by actually
    decompressing it.  This means that when compressed data is contained part of a
    larger file, you can only find the end of it by reading data and feeding it
-   followed by some non-empty string into a decompression object's
+   followed by some non-empty bytestring into a decompression object's
    :meth:`decompress` method until the :attr:`unused_data` attribute is no longer
-   the empty string.
+   empty.
 
 
 .. attribute:: Decompress.unconsumed_tail
 
-   A string that contains any data that was not consumed by the last
+   A bytes object that contains any data that was not consumed by the last
    :meth:`decompress` call because it exceeded the limit for the uncompressed data
    buffer.  This data has not yet been seen by the zlib machinery, so you must feed
    it (possibly with further data concatenated to it) back to a subsequent
    :meth:`decompress` method call in order to get correct output.
 
 
-.. method:: Decompress.decompress(string[, max_length])
+.. method:: Decompress.decompress(data[, max_length])
 
-   Decompress *string*, returning a string containing the uncompressed data
+   Decompress *data*, returning a bytes object containing the uncompressed data
    corresponding to at least part of the data in *string*.  This data should be
    concatenated to the output produced by any preceding calls to the
    :meth:`decompress` method.  Some of the input data may be preserved in internal
@@ -186,15 +186,15 @@
    If the optional parameter *max_length* is supplied then the return value will be
    no longer than *max_length*. This may mean that not all of the compressed input
    can be processed; and unconsumed data will be stored in the attribute
-   :attr:`unconsumed_tail`. This string must be passed to a subsequent call to
+   :attr:`unconsumed_tail`. This bytestring must be passed to a subsequent call to
    :meth:`decompress` if decompression is to continue.  If *max_length* is not
-   supplied then the whole input is decompressed, and :attr:`unconsumed_tail` is an
-   empty string.
+   supplied then the whole input is decompressed, and :attr:`unconsumed_tail` is
+   empty.
 
 
 .. method:: Decompress.flush([length])
 
-   All pending input is processed, and a string containing the remaining
+   All pending input is processed, and a bytes object containing the remaining
    uncompressed output is returned.  After calling :meth:`flush`, the
    :meth:`decompress` method cannot be called again; the only realistic action is
    to delete the object.


More information about the Python-checkins mailing list