summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2008-07-16 03:43:04 (GMT)
committerGeorg Brandl <georg@python.org>2008-07-16 03:43:04 (GMT)
commit86b2fb9d77e483cc56e85bc4c96ac54f55427d39 (patch)
tree1f0a034d417db72fa03cfb506b0e27daf1dc0a4f /Doc
parent3ccb78724127e3501067e8693fa15807e2777e9c (diff)
downloadcpython-86b2fb9d77e483cc56e85bc4c96ac54f55427d39.zip
cpython-86b2fb9d77e483cc56e85bc4c96ac54f55427d39.tar.gz
cpython-86b2fb9d77e483cc56e85bc4c96ac54f55427d39.tar.bz2
Merged revisions 64623,64640,64665,64687,64689-64690,64719,64721,64735,64742,64744-64746,64756-64761,64767-64769,64771-64772,64774-64775,64788,64793,64835-64836 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk ........ r64623 | benjamin.peterson | 2008-07-01 21:51:54 +0200 (Tue, 01 Jul 2008) | 1 line write a short little section for multiprocessing; it still needs help ........ r64640 | georg.brandl | 2008-07-01 22:56:03 +0200 (Tue, 01 Jul 2008) | 2 lines Add a comment about incref'ing w. ........ r64665 | jesse.noller | 2008-07-02 18:56:51 +0200 (Wed, 02 Jul 2008) | 1 line Add #!/usr/bin/env python for ben ........ r64687 | andrew.kuchling | 2008-07-03 14:50:03 +0200 (Thu, 03 Jul 2008) | 1 line Tweak wording ........ r64689 | benjamin.peterson | 2008-07-03 14:57:35 +0200 (Thu, 03 Jul 2008) | 1 line lowercase glossary term ........ r64690 | benjamin.peterson | 2008-07-03 15:01:17 +0200 (Thu, 03 Jul 2008) | 1 line let the term be linked ........ r64719 | raymond.hettinger | 2008-07-05 04:11:55 +0200 (Sat, 05 Jul 2008) | 1 line Update comment on prediction macros. ........ r64721 | georg.brandl | 2008-07-05 12:07:18 +0200 (Sat, 05 Jul 2008) | 2 lines Fix tabs. ........ r64735 | mark.dickinson | 2008-07-05 17:25:48 +0200 (Sat, 05 Jul 2008) | 3 lines Minor rewrite of cmath_log to work around a Sun compiler bug. See issue #3168. ........ r64742 | benjamin.peterson | 2008-07-05 18:29:38 +0200 (Sat, 05 Jul 2008) | 1 line make regrtest aware of the lib2to3 resource ........ r64744 | georg.brandl | 2008-07-05 18:43:45 +0200 (Sat, 05 Jul 2008) | 2 lines Keep below 80 chars. ........ r64745 | facundo.batista | 2008-07-05 21:19:50 +0200 (Sat, 05 Jul 2008) | 3 lines Issue 3289. Removed two lines that ended doing nothing. ........ r64746 | facundo.batista | 2008-07-05 22:39:59 +0200 (Sat, 05 Jul 2008) | 4 lines Issue #3239. Differentiate the ascii call from the curses one and the builtin one. ........ r64756 | gregory.p.smith | 2008-07-06 09:16:40 +0200 (Sun, 06 Jul 2008) | 3 lines - Issue #2113: Fix error in subprocess.Popen if the select system call is interrupted by a signal. ........ r64757 | benjamin.peterson | 2008-07-06 14:39:09 +0200 (Sun, 06 Jul 2008) | 1 line remove test_compact_freelists from test_sys ........ r64758 | gregory.p.smith | 2008-07-06 19:06:29 +0200 (Sun, 06 Jul 2008) | 2 lines fix issue3304 - remove an incorrect PyMem_Free in fileio_init ........ r64759 | georg.brandl | 2008-07-06 19:36:20 +0200 (Sun, 06 Jul 2008) | 2 lines Fix opensearch template. ........ r64760 | andrew.kuchling | 2008-07-06 19:43:16 +0200 (Sun, 06 Jul 2008) | 1 line Wording fix ........ r64761 | andrew.kuchling | 2008-07-06 19:44:17 +0200 (Sun, 06 Jul 2008) | 1 line Add two items; rewrap paragraph ........ r64767 | gregory.p.smith | 2008-07-07 06:31:58 +0200 (Mon, 07 Jul 2008) | 4 lines - Issue #3309: Fix bz2.BZFile itererator to release its internal lock properly when raising an exception due to the bz2file being closed. Prevents a deadlock. ........ r64768 | josiah.carlson | 2008-07-07 06:51:46 +0200 (Mon, 07 Jul 2008) | 2 lines Fixed bugs 760475, 953599, and 1519. ........ r64769 | gregory.p.smith | 2008-07-07 06:54:31 +0200 (Mon, 07 Jul 2008) | 2 lines Add commented out #_sha256 and #_sha512 lines per issue 3183. ........ r64771 | gregory.p.smith | 2008-07-07 07:09:12 +0200 (Mon, 07 Jul 2008) | 4 lines - Issue #3094: httplib.HTTPSConnection Host: headers no longer include the redundant ":443" port number designation when the connection is using the default https port (443). ........ r64772 | skip.montanaro | 2008-07-07 13:16:14 +0200 (Mon, 07 Jul 2008) | 2 lines Correct grammar. ........ r64774 | andrew.kuchling | 2008-07-07 18:51:09 +0200 (Mon, 07 Jul 2008) | 1 line Fix example to match text ........ r64775 | facundo.batista | 2008-07-07 19:02:59 +0200 (Mon, 07 Jul 2008) | 3 lines Issue 3306. Better control for a lenght in findmax() function. ........ r64788 | georg.brandl | 2008-07-08 09:05:23 +0200 (Tue, 08 Jul 2008) | 2 lines Add missing ABCs to list. ........ r64793 | nick.coghlan | 2008-07-08 16:21:42 +0200 (Tue, 08 Jul 2008) | 1 line Add missing NEWS and ACK entries for r64791 ........ r64835 | raymond.hettinger | 2008-07-10 11:31:08 +0200 (Thu, 10 Jul 2008) | 1 line Issue 3287: Raise correct exception for float inputs. ........ r64836 | raymond.hettinger | 2008-07-10 12:28:41 +0200 (Thu, 10 Jul 2008) | 1 line Use operator.index() instead of n.__index__(). ........
Diffstat (limited to 'Doc')
-rw-r--r--Doc/glossary.rst2
-rw-r--r--Doc/library/abc.rst4
-rw-r--r--Doc/library/collections.rst80
-rw-r--r--Doc/library/shutil.rst41
-rw-r--r--Doc/library/stdtypes.rst2
-rw-r--r--Doc/tools/sphinxext/opensearch.xml18
-rw-r--r--Doc/whatsnew/2.6.rst30
7 files changed, 110 insertions, 67 deletions
diff --git a/Doc/glossary.rst b/Doc/glossary.rst
index f7a4b569..a2e9b02 100644
--- a/Doc/glossary.rst
+++ b/Doc/glossary.rst
@@ -16,7 +16,7 @@ Glossary
The typical Python prompt of the interactive shell when entering code for
an indented code block.
- Abstract Base Class
+ abstract base class
Abstract Base Classes (abbreviated ABCs) complement :term:`duck-typing` by
providing a way to define interfaces when other techniques like :func:`hasattr`
would be clumsy. Python comes with many builtin ABCs for data structures
diff --git a/Doc/library/abc.rst b/Doc/library/abc.rst
index 21d3018..b03fc83 100644
--- a/Doc/library/abc.rst
+++ b/Doc/library/abc.rst
@@ -8,8 +8,8 @@
.. sectionauthor:: Georg Brandl
.. much of the content adapted from docstrings
-This module provides the infrastructure for defining :term:`abstract base
-classes` (ABCs) in Python, as outlined in :pep:`3119`; see the PEP for why this
+This module provides the infrastructure for defining an :term:`abstract base
+class` (ABCs) in Python, as outlined in :pep:`3119`; see the PEP for why this
was added to Python. (See also :pep:`3141` and the :mod:`numbers` module
regarding a type hierarchy for numbers based on ABCs.)
diff --git a/Doc/library/collections.rst b/Doc/library/collections.rst
index 7718c51..d2d4f47 100644
--- a/Doc/library/collections.rst
+++ b/Doc/library/collections.rst
@@ -37,42 +37,50 @@ ABCs - abstract base classes
The collections module offers the following ABCs:
-========================= ==================== ====================== ====================================================
-ABC Inherits Abstract Methods Mixin Methods
-========================= ==================== ====================== ====================================================
-:class:`Container` ``__contains__``
-:class:`Hashable` ``__hash__``
-:class:`Iterable` ``__iter__``
-:class:`Iterator` :class:`Iterable` ``__next__`` ``__iter__``
-:class:`Sized` ``__len__``
-
-:class:`Mapping` :class:`Sized`, ``__getitem__``, ``__contains__``, ``keys``, ``items``, ``values``,
- :class:`Iterable`, ``__len__``. and ``get``, ``__eq__``, and ``__ne__``
- :class:`Container` ``__iter__``
-
-:class:`MutableMapping` :class:`Mapping` ``__getitem__`` Inherited Mapping methods and
- ``__setitem__``, ``pop``, ``popitem``, ``clear``, ``update``,
- ``__delitem__``, and ``setdefault``
- ``__iter__``, and
- ``__len__``
-
-:class:`Sequence` :class:`Sized`, ``__getitem__`` ``__contains__``. ``__iter__``, ``__reversed__``.
- :class:`Iterable`, and ``__len__`` ``index``, and ``count``
- :class:`Container`
-
-:class:`MutableSequnce` :class:`Sequence` ``__getitem__`` Inherited Sequence methods and
- ``__delitem__``, ``append``, ``reverse``, ``extend``, ``pop``,
- ``insert``, ``remove``, and ``__iadd__``
- and ``__len__``
-
-:class:`Set` :class:`Sized`, ``__len__``, ``__le__``, ``__lt__``, ``__eq__``, ``__ne__``,
- :class:`Iterable`, ``__iter__``, and ``__gt__``, ``__ge__``, ``__and__``, ``__or__``
- :class:`Container` ``__contains__`` ``__sub__``, ``__xor__``, and ``isdisjoint``
-
-:class:`MutableSet` :class:`Set` ``add`` and Inherited Set methods and
- ``discard`` ``clear``, ``pop``, ``remove``, ``__ior__``,
- ``__iand__``, ``__ixor__``, and ``__isub__``
-========================= ==================== ====================== ====================================================
+========================= ===================== ====================== ====================================================
+ABC Inherits Abstract Methods Mixin Methods
+========================= ===================== ====================== ====================================================
+:class:`Container` ``__contains__``
+:class:`Hashable` ``__hash__``
+:class:`Iterable` ``__iter__``
+:class:`Iterator` :class:`Iterable` ``__next__`` ``__iter__``
+:class:`Sized` ``__len__``
+:class:`Callable` ``__call__``
+
+:class:`Sequence` :class:`Sized`, ``__getitem__`` ``__contains__``. ``__iter__``, ``__reversed__``.
+ :class:`Iterable`, and ``__len__`` ``index``, and ``count``
+ :class:`Container`
+
+:class:`MutableSequnce` :class:`Sequence` ``__getitem__`` Inherited Sequence methods and
+ ``__delitem__``, ``append``, ``reverse``, ``extend``, ``pop``,
+ ``insert``, ``remove``, and ``__iadd__``
+ and ``__len__``
+
+:class:`Set` :class:`Sized`, ``__len__``, ``__le__``, ``__lt__``, ``__eq__``, ``__ne__``,
+ :class:`Iterable`, ``__iter__``, and ``__gt__``, ``__ge__``, ``__and__``, ``__or__``
+ :class:`Container` ``__contains__`` ``__sub__``, ``__xor__``, and ``isdisjoint``
+
+:class:`MutableSet` :class:`Set` ``add`` and Inherited Set methods and
+ ``discard`` ``clear``, ``pop``, ``remove``, ``__ior__``,
+ ``__iand__``, ``__ixor__``, and ``__isub__``
+
+:class:`Mapping` :class:`Sized`, ``__getitem__``, ``__contains__``, ``keys``, ``items``, ``values``,
+ :class:`Iterable`, ``__len__``. and ``get``, ``__eq__``, and ``__ne__``
+ :class:`Container` ``__iter__``
+
+:class:`MutableMapping` :class:`Mapping` ``__getitem__`` Inherited Mapping methods and
+ ``__setitem__``, ``pop``, ``popitem``, ``clear``, ``update``,
+ ``__delitem__``, and ``setdefault``
+ ``__iter__``, and
+ ``__len__``
+
+:class:`MappingView` :class:`Sized` ``__len__``
+:class:`KeysView` :class:`MappingView`, ``__contains__``,
+ :class:`Set` ``__iter__``
+:class:`ItemsView` :class:`MappingView`, ``__contains__``,
+ :class:`Set` ``__iter__``
+:class:`ValuesView` :class:`MappingView` ``__contains__``, ``__iter__``
+========================= ===================== ====================== ====================================================
These ABCs allow us to ask classes or instances if they provide
particular functionality, for example::
diff --git a/Doc/library/shutil.rst b/Doc/library/shutil.rst
index 5ab2f29..c295f29 100644
--- a/Doc/library/shutil.rst
+++ b/Doc/library/shutil.rst
@@ -78,18 +78,39 @@ copying and removal. For operations on individual files, see also the
Unix command :program:`cp -p`.
-.. function:: copytree(src, dst[, symlinks])
+.. function:: ignore_patterns(\*patterns)
+
+ This factory function creates a function that can be used as a callable for
+ :func:`copytree`\'s *ignore* argument, ignoring files and directories that
+ match one of the glob-style *patterns* provided. See the example below.
+
+
+.. function:: copytree(src, dst[, symlinks=False[, ignore=None]])
Recursively copy an entire directory tree rooted at *src*. The destination
- directory, named by *dst*, must not already exist; it will be created as well as
- missing parent directories. Permissions and times of directories are copied with
- :func:`copystat`, individual files are copied using :func:`copy2`. If
- *symlinks* is true, symbolic links in the source tree are represented as
- symbolic links in the new tree; if false or omitted, the contents of the linked
- files are copied to the new tree. If exception(s) occur, an :exc:`Error` is
- raised with a list of reasons.
-
- The source code for this should be considered an example rather than a tool.
+ directory, named by *dst*, must not already exist; it will be created as well
+ as missing parent directories. Permissions and times of directories are
+ copied with :func:`copystat`, individual files are copied using
+ :func:`copy2`.
+
+ If *symlinks* is true, symbolic links in the source tree are represented as
+ symbolic links in the new tree; if false or omitted, the contents of the
+ linked files are copied to the new tree.
+
+ If *ignore* is given, it must be a callable that will receive as its
+ arguments the directory being visited by :func:`copytree`, and a list of its
+ contents, as returned by :func:`os.listdir`. Since :func:`copytree` is
+ called recursively, the *ignore* callable will be called once for each
+ directory that is copied. The callable must return a sequence of directory
+ and file names relative to the current directory (i.e. a subset of the items
+ in its second argument); these names will then be ignored in the copy
+ process. :func:`ignore_patterns` can be used to create such a callable that
+ ignores names based on glob-style patterns.
+
+ If exception(s) occur, an :exc:`Error` is raised with a list of reasons.
+
+ The source code for this should be considered an example rather than the
+ ultimate tool.
.. function:: rmtree(path[, ignore_errors[, onerror]])
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index 9107d03..a97a519 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -2027,7 +2027,7 @@ Files have the following methods:
files, like ttys, it makes sense to continue reading after an EOF is hit.) Note
that this method may call the underlying C function :cfunc:`fread` more than
once in an effort to acquire as close to *size* bytes as possible. Also note
- that when in non-blocking mode, less data than what was requested may be
+ that when in non-blocking mode, less data than was requested may be
returned, even if no *size* parameter was given.
diff --git a/Doc/tools/sphinxext/opensearch.xml b/Doc/tools/sphinxext/opensearch.xml
index d672c2e..69cec80 100644
--- a/Doc/tools/sphinxext/opensearch.xml
+++ b/Doc/tools/sphinxext/opensearch.xml
@@ -1,14 +1,4 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
- <ShortName>Python Docs</ShortName>
- <LongName>Python Documentation</LongName>
- <Description>Search the Python documentation</Description>
- <InputEncoding>utf-8</InputEncoding>
- <Url type="text/html" method="get" template="{{ pathto('search') }}?">
- <Param name="q" value="{searchTerms}" />
- <Param name="check_keywords" value="yes" />
- <Param name="area" value="default" />
- </Url>
- <Image height="16" width="16" type="image/x-icon">http://www.python.org/images/favicon16x16.ico</Image>
-</OpenSearchDescription>
-
+{% extends "!opensearch.xml" %}
+{% block extra -%}
+<Image height="16" width="16" type="image/x-icon">http://www.python.org/images/favicon16x16.ico</Image>
+{%- endblock %}
diff --git a/Doc/whatsnew/2.6.rst b/Doc/whatsnew/2.6.rst
index 21ccf9b..df5ccb6 100644
--- a/Doc/whatsnew/2.6.rst
+++ b/Doc/whatsnew/2.6.rst
@@ -1681,6 +1681,11 @@ details.
available, instead of restricting itself to protocol 1.
(Contributed by W. Barnes; :issue:`1551443`.)
+* The :mod:`cgi` module will now read variables from the query string of an
+ HTTP POST request. This makes it possible to use form actions with
+ URLs such as "/cgi-bin/add.py?category=1". (Contributed by
+ Alexandre Fiori and Nubis; :issue:`1817`.)
+
* The :mod:`cmath` module underwent an extensive set of revisions,
thanks to Mark Dickinson and Christian Heimes, that added some new
features and greatly improved the accuracy of the computations.
@@ -2137,6 +2142,24 @@ details.
* The :mod:`sets` module has been deprecated; it's better to
use the built-in :class:`set` and :class:`frozenset` types.
+* The :func:`shutil.copytree` function now has an optional **ignore** argument
+ that takes a callable object. This callable will receive each directory path
+ and a list of the directory's contents, and returns a list of names that
+ will be ignored, not copied.
+
+ The :mod:`shutil` module also provides an :func:`ignore_patterns`
+ function for use with this new parameter.
+ :func:`ignore_patterns` takes an arbitrary number of glob-style patterns
+ and will ignore any files and directories that match this pattern.
+ The following example copies a directory tree, but skip both SVN's internal
+ :file:`.svn` directories and Emacs backup
+ files, which have names ending with '~'::
+
+ shutil.copytree('Doc/library', '/tmp/library',
+ ignore=shutil.ignore_patterns('*~', '.svn'))
+
+ (Contributed by Tarek Ziadé; :issue:`2663`.)
+
* Integrating signal handling with GUI handling event loops
like those used by Tkinter or GTk+ has long been a problem; most
software ends up polling, waking up every fraction of a second.
@@ -2500,9 +2523,10 @@ handle it safely::
...
ValueError: malformed string
-The module also includes
-:class:`NodeVisitor` and :class:`NodeTransformer` classes
-for traversing and modifying an AST, and functions for common transformations such as changing line numbers.
+The module also includes :class:`NodeVisitor` and
+:class:`NodeTransformer` classes for traversing and modifying an AST,
+and functions for common transformations such as changing line
+numbers.
.. ======================================================================