Merged revisions 87101,87146,87156,87172,87175,87371,87378,87522-87524,87526-87528,87530-87536,87581 via svnmerge from
svn+ssh://svn.python.org/python/branches/py3k
........
r87101 | georg.brandl | 2010-12-06 23:02:48 +0100 (Mo, 06 Dez 2010) | 1 line
Remove visible XXX comments.
........
r87146 | georg.brandl | 2010-12-09 19:08:43 +0100 (Do, 09 Dez 2010) | 1 line
Fix "seperate".
........
r87156 | georg.brandl | 2010-12-10 11:01:44 +0100 (Fr, 10 Dez 2010) | 1 line
#10668: fix wrong call of __init__.
........
r87172 | georg.brandl | 2010-12-11 20:10:30 +0100 (Sa, 11 Dez 2010) | 1 line
Avoid AttributeError(_closed) when a TemporaryDirectory is deallocated whose mkdtemp call failed.
........
r87175 | georg.brandl | 2010-12-11 23:19:34 +0100 (Sa, 11 Dez 2010) | 1 line
Fix markup.
........
r87371 | georg.brandl | 2010-12-18 17:21:58 +0100 (Sa, 18 Dez 2010) | 1 line
Fix typo.
........
r87378 | georg.brandl | 2010-12-18 18:51:28 +0100 (Sa, 18 Dez 2010) | 1 line
#10723: add missing builtin exceptions.
........
r87522 | georg.brandl | 2010-12-28 10:16:12 +0100 (Di, 28 Dez 2010) | 1 line
Replace sys.maxint mention by sys.maxsize.
........
r87523 | georg.brandl | 2010-12-28 10:18:24 +0100 (Di, 28 Dez 2010) | 1 line
Remove confusing paragraph -- this is relevant only to advanced users anyway and does not belong into the tutorial.
........
r87524 | georg.brandl | 2010-12-28 10:29:19 +0100 (Di, 28 Dez 2010) | 1 line
Fix advice: call PyType_Ready to fill in ob_type of custom types.
........
r87526 | georg.brandl | 2010-12-28 11:38:33 +0100 (Di, 28 Dez 2010) | 1 line
#10777: fix iteration over dict keys while mutating the dict.
........
r87527 | georg.brandl | 2010-12-28 11:56:20 +0100 (Di, 28 Dez 2010) | 1 line
#10768: fix ScrolledText widget construction, and make the example work from the interactive shell.
........
r87528 | georg.brandl | 2010-12-28 12:02:12 +0100 (Di, 28 Dez 2010) | 1 line
Add news entry and clarify another.
........
r87530 | georg.brandl | 2010-12-28 12:06:07 +0100 (Di, 28 Dez 2010) | 1 line
#10767: update README in crashers; not all may have a bug entry and/or be fixed.
........
r87531 | georg.brandl | 2010-12-28 12:08:17 +0100 (Di, 28 Dez 2010) | 1 line
#10742: document readonly attribute of memoryviews.
........
r87532 | georg.brandl | 2010-12-28 12:15:49 +0100 (Di, 28 Dez 2010) | 1 line
#10781: clarify that *encoding* is not a parameter for Node objects in general.
........
r87533 | georg.brandl | 2010-12-28 12:38:12 +0100 (Di, 28 Dez 2010) | 1 line
Remove history; adapt a bit more to reST, since this will once be part of the dev guide.
........
r87534 | georg.brandl | 2010-12-28 12:48:53 +0100 (Di, 28 Dez 2010) | 1 line
Rewrap.
........
r87535 | georg.brandl | 2010-12-28 12:49:41 +0100 (Di, 28 Dez 2010) | 1 line
#10739: document that on Windows, socket.makefile() does not make a file that has a true file descriptor usable where such a thing is expected.
........
r87536 | georg.brandl | 2010-12-28 12:53:25 +0100 (Di, 28 Dez 2010) | 1 line
#10609: fix non-working dbm example.
........
r87581 | georg.brandl | 2010-12-30 18:36:17 +0100 (Do, 30 Dez 2010) | 1 line
Fix NameErrors.
........
diff --git a/Doc/ACKS.txt b/Doc/ACKS.txt
index 6154fb9..a2a10a0 100644
--- a/Doc/ACKS.txt
+++ b/Doc/ACKS.txt
@@ -112,6 +112,7 @@
* Andrew M. Kuchling
* Dave Kuhlman
* Erno Kuusela
+ * Ross Lagerwall
* Thomas Lamb
* Detlef Lannert
* Piers Lauder
diff --git a/Doc/c-api/slice.rst b/Doc/c-api/slice.rst
index f17915f..f33cd53 100644
--- a/Doc/c-api/slice.rst
+++ b/Doc/c-api/slice.rst
@@ -48,4 +48,3 @@
normal slices.
Returns 0 on success and -1 on error with exception set.
-
diff --git a/Doc/c-api/typeobj.rst b/Doc/c-api/typeobj.rst
index ab55292..7aa827a 100644
--- a/Doc/c-api/typeobj.rst
+++ b/Doc/c-api/typeobj.rst
@@ -705,7 +705,9 @@
This field is not inherited by subtypes (computed attributes are inherited
through a different mechanism).
- Docs for PyGetSetDef (XXX belong elsewhere)::
+ .. XXX belongs elsewhere
+
+ Docs for PyGetSetDef::
typedef PyObject *(*getter)(PyObject *, void *);
typedef int (*setter)(PyObject *, PyObject *, void *);
@@ -752,7 +754,7 @@
PyObject * tp_descr_get(PyObject *self, PyObject *obj, PyObject *type);
- XXX explain.
+ .. XXX explain.
This field is inherited by subtypes.
@@ -767,7 +769,7 @@
This field is inherited by subtypes.
- XXX explain.
+ .. XXX explain.
.. cmember:: long PyTypeObject.tp_dictoffset
diff --git a/Doc/extending/windows.rst b/Doc/extending/windows.rst
index 6733666..d1d0cf7 100644
--- a/Doc/extending/windows.rst
+++ b/Doc/extending/windows.rst
@@ -110,7 +110,7 @@
Now your options are:
#. Copy :file:`example.sln` and :file:`example.vcproj`, rename them to
- :file:`spam.\*`, and edit them by hand, or
+ :file:`spam.\*`, and edit them by hand, or
#. Create a brand new project; instructions are below.
@@ -179,8 +179,8 @@
and add the following to the module initialization function::
- MyObject_Type.ob_type = &PyType_Type;
-
+ if (PyType_Ready(&MyObject_Type) < 0)
+ return NULL;
.. _dynamic-linking:
diff --git a/Doc/glossary.rst b/Doc/glossary.rst
index d7f2749..7431545 100644
--- a/Doc/glossary.rst
+++ b/Doc/glossary.rst
@@ -179,22 +179,22 @@
not expressions.
extension module
- A module written in C or C++, using Python's C API to interact with the core and
- with user code.
+ A module written in C or C++, using Python's C API to interact with the
+ core and with user code.
file object
An object exposing a file-oriented API (with methods such as
- :meth:`read()` or :meth:`write()`) to an underlying resource.
- Depending on the way it was created, a file object can mediate access
- to a real on-disk file or to another other type of storage or
- communication device (for example standard input/output, in-memory
- buffers, sockets, pipes, etc.). File objects are also called
- :dfn:`file-like objects` or :dfn:`streams`.
+ :meth:`read()` or :meth:`write()`) to an underlying resource. Depending
+ on the way it was created, a file object can mediate access to a real
+ on-disk file or to another other type of storage or communication device
+ (for example standard input/output, in-memory buffers, sockets, pipes,
+ etc.). File objects are also called :dfn:`file-like objects` or
+ :dfn:`streams`.
- There are actually three categories of file objects: raw binary
- files, buffered binary files and text files. Their interfaces are
- defined in the :mod:`io` module. The canonical way to create a
- file object is by using the :func:`open` function.
+ There are actually three categories of file objects: raw binary files,
+ buffered binary files and text files. Their interfaces are defined in the
+ :mod:`io` module. The canonical way to create a file object is by using
+ the :func:`open` function.
file-like object
A synonym for :term:`file object`.
diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst
index e79f723..1ed96b9 100644
--- a/Doc/library/collections.rst
+++ b/Doc/library/collections.rst
@@ -810,7 +810,7 @@
original insertion position is changed and moved to the end::
class LastUpdatedOrderedDict(OrderedDict):
- 'Store items is the order the keys were last added'
+ 'Store items in the order the keys were last added'
def __setitem__(self, key, value):
if key in self:
del self[key]
diff --git a/Doc/library/dbm.rst b/Doc/library/dbm.rst
index 6926ca6..c7c7347 100644
--- a/Doc/library/dbm.rst
+++ b/Doc/library/dbm.rst
@@ -86,10 +86,8 @@
# Notice how the value is now in bytes.
assert db['www.cnn.com'] == b'Cable News Network'
- # Loop through contents. Other dictionary methods
- # such as .keys(), .values() also work.
- for k, v in db.iteritems():
- print(k, '\t', v)
+ # Often-used methods of the dict interface work too.
+ print(db.get('python.org', b'not present'))
# Storing a non-string key or value will raise an exception (most
# likely a TypeError).
diff --git a/Doc/library/exceptions.rst b/Doc/library/exceptions.rst
index 7ecfbca..4159287 100644
--- a/Doc/library/exceptions.rst
+++ b/Doc/library/exceptions.rst
@@ -77,6 +77,12 @@
:exc:`FloatingPointError`.
+.. exception:: BufferError
+
+ Raised when a :ref:`buffer <bufferobjects>` related operation cannot be
+ performed.
+
+
.. exception:: LookupError
The base class for the exceptions that are raised when a key or index used on
@@ -271,6 +277,18 @@
of the exception instance returns only the message.
+.. exception:: IndentationError
+
+ Base class for syntax errors related to incorrect indentation. This is a
+ subclass of :exc:`SyntaxError`.
+
+
+.. exception:: TabError
+
+ Raised when indentation contains an inconsistent use of tabs and spaces.
+ This is a subclass of :exc:`IndentationError`.
+
+
.. exception:: SystemError
Raised when the interpreter finds an internal error, but the situation does not
diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst
index 1b7b1f7..d61398c 100644
--- a/Doc/library/socket.rst
+++ b/Doc/library/socket.rst
@@ -616,16 +616,21 @@
.. index:: single: I/O control; buffering
- Return a :term:`file object` associated with the socket. The exact
- returned type depends on the arguments given to :meth:`makefile`. These
- arguments are interpreted the same way as by the built-in :func:`open`
- function.
+ Return a :term:`file object` associated with the socket. The exact returned
+ type depends on the arguments given to :meth:`makefile`. These arguments are
+ interpreted the same way as by the built-in :func:`open` function.
Closing the file object won't close the socket unless there are no remaining
references to the socket. The socket must be in blocking mode; it can have
a timeout, but the file object's internal buffer may end up in a inconsistent
state if a timeout occurs.
+ .. note::
+
+ On Windows, the file-like object created by :meth:`makefile` cannot be
+ used where a file object with a file descriptor is expected, such as the
+ stream arguments of :meth:`subprocess.Popen`.
+
.. method:: socket.recv(bufsize[, flags])
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index 1fb736b..2e8b772 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -2203,6 +2203,10 @@
A tuple of integers the length of :attr:`ndim` giving the size in bytes to
access each element for each dimension of the array.
+ .. attribute:: readonly
+
+ A bool indicating whether the memory is read only.
+
.. memoryview.suboffsets isn't documented because it only seems useful for C
diff --git a/Doc/library/xml.dom.minidom.rst b/Doc/library/xml.dom.minidom.rst
index 98e7586..8364f35 100644
--- a/Doc/library/xml.dom.minidom.rst
+++ b/Doc/library/xml.dom.minidom.rst
@@ -125,7 +125,7 @@
to discard children of that node.
-.. method:: Node.writexml(writer, indent="", addindent="", newl="", encoding="")
+.. method:: Node.writexml(writer, indent="", addindent="", newl="")
Write XML to the writer object. The writer should have a :meth:`write` method
which matches that of the file object interface. The *indent* parameter is the
@@ -133,8 +133,8 @@
indentation to use for subnodes of the current one. The *newl* parameter
specifies the string to use to terminate newlines.
- For the :class:`Document` node, an additional keyword argument *encoding* can be
- used to specify the encoding field of the XML header.
+ For the :class:`Document` node, an additional keyword argument *encoding* can
+ be used to specify the encoding field of the XML header.
.. method:: Node.toxml(encoding=None)
diff --git a/Doc/tutorial/interpreter.rst b/Doc/tutorial/interpreter.rst
index 9d376e6..94d7562 100644
--- a/Doc/tutorial/interpreter.rst
+++ b/Doc/tutorial/interpreter.rst
@@ -58,14 +58,6 @@
``python -m module [arg] ...``, which executes the source file for *module* as
if you had spelled out its full name on the command line.
-Note that there is a difference between ``python file`` and ``python
-<file``. In the latter case, input requests from the program, such as calling
-``sys.stdin.read()``, are satisfied from *file*. Since this file has already
-been read until the end by the parser before the program starts executing, the
-program will encounter end-of-file immediately. In the former case (which is
-usually what you want) they are satisfied from whatever file or device is
-connected to standard input of the Python interpreter.
-
When a script file is used, it is sometimes useful to be able to run the script
and enter interactive mode afterwards. This can be done by passing :option:`-i`
before the script. (This does not work if the script is read from standard