diff options
author | Thomas Wouters <thomas@python.org> | 2007-09-08 17:39:28 (GMT) |
---|---|---|
committer | Thomas Wouters <thomas@python.org> | 2007-09-08 17:39:28 (GMT) |
commit | 89d996e5c28d820e9bc91e0c025f47c754ae784c (patch) | |
tree | 98369aeb1e51786066cb7f4f5421b5ed1bbb8747 /Doc/library | |
parent | 4a625c33c1ca9370b96cb00ecb2a1958a093e0b5 (diff) | |
download | cpython-89d996e5c28d820e9bc91e0c025f47c754ae784c.zip cpython-89d996e5c28d820e9bc91e0c025f47c754ae784c.tar.gz cpython-89d996e5c28d820e9bc91e0c025f47c754ae784c.tar.bz2 |
Merged revisions 57778-58052 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r57820 | georg.brandl | 2007-08-31 08:59:27 +0200 (Fri, 31 Aug 2007) | 2 lines
Document new shorthand notation for index entries.
........
r57827 | georg.brandl | 2007-08-31 10:47:51 +0200 (Fri, 31 Aug 2007) | 2 lines
Fix subitem markup.
........
r57833 | martin.v.loewis | 2007-08-31 12:01:07 +0200 (Fri, 31 Aug 2007) | 1 line
Mark registry components as 64-bit on Win64.
........
r57854 | bill.janssen | 2007-08-31 21:02:23 +0200 (Fri, 31 Aug 2007) | 1 line
deprecate use of FakeSocket
........
r57855 | bill.janssen | 2007-08-31 21:02:46 +0200 (Fri, 31 Aug 2007) | 1 line
remove mentions of socket.ssl in comments
........
r57856 | bill.janssen | 2007-08-31 21:03:31 +0200 (Fri, 31 Aug 2007) | 1 line
remove use of non-existent SSLFakeSocket in apparently untested code
........
r57859 | martin.v.loewis | 2007-09-01 08:36:03 +0200 (Sat, 01 Sep 2007) | 3 lines
Bug #1737210: Change Manufacturer of Windows installer to PSF.
Will backport to 2.5.
........
r57865 | georg.brandl | 2007-09-01 09:51:24 +0200 (Sat, 01 Sep 2007) | 2 lines
Fix RST link (backport from Py3k).
........
r57876 | georg.brandl | 2007-09-01 17:49:49 +0200 (Sat, 01 Sep 2007) | 2 lines
Document sets' ">" and "<" operations (backport from py3k).
........
r57878 | skip.montanaro | 2007-09-01 19:40:03 +0200 (Sat, 01 Sep 2007) | 4 lines
Added a note and examples to explain that re.split does not split on an
empty pattern match. (issue 852532).
........
r57879 | walter.doerwald | 2007-09-01 20:18:09 +0200 (Sat, 01 Sep 2007) | 2 lines
Fix wrong function names.
........
r57880 | walter.doerwald | 2007-09-01 20:34:05 +0200 (Sat, 01 Sep 2007) | 2 lines
Fix typo.
........
r57889 | andrew.kuchling | 2007-09-01 22:31:59 +0200 (Sat, 01 Sep 2007) | 1 line
Markup fix
........
r57892 | andrew.kuchling | 2007-09-01 22:43:36 +0200 (Sat, 01 Sep 2007) | 1 line
Add various items
........
r57895 | andrew.kuchling | 2007-09-01 23:17:58 +0200 (Sat, 01 Sep 2007) | 1 line
Wording change
........
r57896 | andrew.kuchling | 2007-09-01 23:18:31 +0200 (Sat, 01 Sep 2007) | 1 line
Add more items
........
r57904 | ronald.oussoren | 2007-09-02 11:46:07 +0200 (Sun, 02 Sep 2007) | 3 lines
Macosx: this patch ensures that the value of MACOSX_DEPLOYMENT_TARGET used
by the Makefile is also used at configure-time.
........
r57925 | georg.brandl | 2007-09-03 09:16:46 +0200 (Mon, 03 Sep 2007) | 2 lines
Fix #883466: don't allow Unicode as arguments to quopri and uu codecs.
........
r57936 | matthias.klose | 2007-09-04 01:33:04 +0200 (Tue, 04 Sep 2007) | 2 lines
- Added support for linking the bsddb module against BerkeleyDB 4.6.x.
........
r57954 | mark.summerfield | 2007-09-04 10:16:15 +0200 (Tue, 04 Sep 2007) | 3 lines
Added cross-references plus a note about dict & list shallow copying.
........
r57958 | martin.v.loewis | 2007-09-04 11:51:57 +0200 (Tue, 04 Sep 2007) | 3 lines
Document that we rely on the OS to release the crypto
context. Fixes #1626801.
........
r57960 | martin.v.loewis | 2007-09-04 15:13:14 +0200 (Tue, 04 Sep 2007) | 3 lines
Patch #1388440: Add set_completion_display_matches_hook and
get_completion_type to readline.
........
r57961 | martin.v.loewis | 2007-09-04 16:19:28 +0200 (Tue, 04 Sep 2007) | 3 lines
Patch #1031213: Decode source line in SyntaxErrors back to its original
source encoding. Will backport to 2.5.
........
r57972 | matthias.klose | 2007-09-04 20:17:36 +0200 (Tue, 04 Sep 2007) | 3 lines
- Makefile.pre.in(buildbottest): Run an optional script pybuildbot.identify
to include some information about the build environment.
........
r57973 | matthias.klose | 2007-09-04 21:05:38 +0200 (Tue, 04 Sep 2007) | 2 lines
- Makefile.pre.in(buildbottest): Remove whitespace at eol.
........
r57975 | matthias.klose | 2007-09-04 22:46:02 +0200 (Tue, 04 Sep 2007) | 2 lines
- Fix libffi configure for hppa*-*-linux* | parisc*-*-linux*.
........
r57980 | bill.janssen | 2007-09-05 02:46:27 +0200 (Wed, 05 Sep 2007) | 1 line
SSL certificate distinguished names should be represented by tuples
........
r57985 | martin.v.loewis | 2007-09-05 08:39:17 +0200 (Wed, 05 Sep 2007) | 3 lines
Patch #1105: Explain that one needs to build the solution
to get dependencies right.
........
r57987 | armin.rigo | 2007-09-05 09:51:21 +0200 (Wed, 05 Sep 2007) | 4 lines
PyDict_GetItem() returns a borrowed reference.
There are probably a number of places that are open to attacks
such as the following one, in bltinmodule.c:min_max().
........
r57991 | martin.v.loewis | 2007-09-05 13:47:34 +0200 (Wed, 05 Sep 2007) | 3 lines
Patch #786737: Allow building in a tree of symlinks pointing to
a readonly source.
........
r57993 | georg.brandl | 2007-09-05 15:36:44 +0200 (Wed, 05 Sep 2007) | 2 lines
Backport from Py3k: Bug #1684991: explain lookup semantics for __special__ methods (new-style classes only).
........
r58004 | armin.rigo | 2007-09-06 10:30:51 +0200 (Thu, 06 Sep 2007) | 4 lines
Patch #1733973 by peaker:
ptrace_enter_call() assumes no exception is currently set.
This assumption is broken when throwing into a generator.
........
r58006 | armin.rigo | 2007-09-06 11:30:38 +0200 (Thu, 06 Sep 2007) | 4 lines
PyDict_GetItem() returns a borrowed reference.
This attack is against ceval.c:IMPORT_NAME, which calls an
object (__builtin__.__import__) without holding a reference to it.
........
r58013 | georg.brandl | 2007-09-06 16:49:56 +0200 (Thu, 06 Sep 2007) | 2 lines
Backport from 3k: #1116: fix reference to old filename.
........
r58021 | thomas.heller | 2007-09-06 22:26:20 +0200 (Thu, 06 Sep 2007) | 1 line
Fix typo: c_float represents to C float type.
........
r58022 | skip.montanaro | 2007-09-07 00:29:06 +0200 (Fri, 07 Sep 2007) | 3 lines
If this is correct for py3k branch and it's already in the release25-maint
branch, seems like it ought to be on the trunk as well.
........
r58023 | gregory.p.smith | 2007-09-07 00:59:59 +0200 (Fri, 07 Sep 2007) | 4 lines
Apply the fix from Issue1112 to make this test more robust and keep
windows happy.
........
r58031 | brett.cannon | 2007-09-07 05:17:50 +0200 (Fri, 07 Sep 2007) | 4 lines
Make uuid1 and uuid4 tests conditional on whether ctypes can be imported;
implementation of either function depends on ctypes but uuid as a whole does
not.
........
r58032 | brett.cannon | 2007-09-07 06:18:30 +0200 (Fri, 07 Sep 2007) | 6 lines
Fix a crasher where Python code managed to infinitely recurse in C code without
ever going back out to Python code in PyObject_Call(). Required introducing a
static RuntimeError instance so that normalizing an exception there is no
reliance on a recursive call that would put the exception system over the
recursion check itself.
........
r58034 | thomas.heller | 2007-09-07 08:32:17 +0200 (Fri, 07 Sep 2007) | 1 line
Add a 'c_longdouble' type to the ctypes module.
........
r58035 | thomas.heller | 2007-09-07 11:30:40 +0200 (Fri, 07 Sep 2007) | 1 line
Remove unneeded #include.
........
r58036 | thomas.heller | 2007-09-07 11:33:24 +0200 (Fri, 07 Sep 2007) | 6 lines
Backport from py3k branch:
Add a workaround for a strange bug on win64, when _ctypes is compiled
with the SDK compiler. This should fix the failing
Lib\ctypes\test\test_as_parameter.py test.
........
r58037 | georg.brandl | 2007-09-07 16:14:40 +0200 (Fri, 07 Sep 2007) | 2 lines
Fix a wrong indentation for sublists.
........
r58043 | georg.brandl | 2007-09-07 22:10:49 +0200 (Fri, 07 Sep 2007) | 2 lines
#1095: ln -f doesn't work portably, fix in Makefile.
........
r58049 | skip.montanaro | 2007-09-08 02:34:17 +0200 (Sat, 08 Sep 2007) | 1 line
be explicit about the actual location of the missing file
........
Diffstat (limited to 'Doc/library')
-rw-r--r-- | Doc/library/codecs.rst | 6 | ||||
-rw-r--r-- | Doc/library/copy.rst | 4 | ||||
-rw-r--r-- | Doc/library/ctypes.rst | 11 | ||||
-rw-r--r-- | Doc/library/mutex.rst | 5 | ||||
-rw-r--r-- | Doc/library/queue.rst | 5 | ||||
-rw-r--r-- | Doc/library/re.rst | 7 | ||||
-rw-r--r-- | Doc/library/readline.rst | 16 | ||||
-rw-r--r-- | Doc/library/smtplib.rst | 2 | ||||
-rw-r--r-- | Doc/library/socket.rst | 2 | ||||
-rw-r--r-- | Doc/library/ssl.rst | 81 | ||||
-rw-r--r-- | Doc/library/thread.rst | 6 | ||||
-rw-r--r-- | Doc/library/threading.rst | 1 |
12 files changed, 98 insertions, 48 deletions
diff --git a/Doc/library/codecs.rst b/Doc/library/codecs.rst index f35ef76..238c80e 100644 --- a/Doc/library/codecs.rst +++ b/Doc/library/codecs.rst @@ -186,12 +186,12 @@ functions which use :func:`lookup` for the codec lookup: Implements the ``ignore`` error handling. -.. function:: xmlcharrefreplace_errors_errors(exception) +.. function:: xmlcharrefreplace_errors(exception) Implements the ``xmlcharrefreplace`` error handling. -.. function:: backslashreplace_errors_errors(exception) +.. function:: backslashreplace_errors(exception) Implements the ``backslashreplace`` error handling. @@ -833,7 +833,7 @@ Without external information it's impossible to reliably determine which encoding was used for encoding a Unicode string. Each charmap encoding can decode any random byte sequence. However that's not possible with UTF-8, as UTF-8 byte sequences have a structure that doesn't allow arbitrary byte -sequence. To increase the reliability with which a UTF-8 encoding can be +sequences. To increase the reliability with which a UTF-8 encoding can be detected, Microsoft invented a variant of UTF-8 (that Python 2.5 calls ``"utf-8-sig"``) for its Notepad program: Before any of the Unicode characters is written to the file, a UTF-8 encoded BOM (which looks like this as a byte diff --git a/Doc/library/copy.rst b/Doc/library/copy.rst index ea59613..0abee4d 100644 --- a/Doc/library/copy.rst +++ b/Doc/library/copy.rst @@ -54,6 +54,10 @@ file, socket, window, array, or any similar types. It does "copy" functions and classes (shallow and deeply), by returning the original object unchanged; this is compatible with the way these are treated by the :mod:`pickle` module. +Shallow copies of dictionaries can be made using :meth:`dict.copy`, and +of lists by assigning a slice of the entire list, for example, +``copied_list = original_list[:]``. + .. index:: module: pickle Classes can use the same interfaces to control copying that they use to control diff --git a/Doc/library/ctypes.rst b/Doc/library/ctypes.rst index e9acedf..4b1934d 100644 --- a/Doc/library/ctypes.rst +++ b/Doc/library/ctypes.rst @@ -247,6 +247,8 @@ Fundamental data types +----------------------+--------------------------------+----------------------------+ | :class:`c_double` | ``double`` | float | +----------------------+--------------------------------+----------------------------+ + | :class:`c_longdouble`| ``long double`` | float | + +----------------------+--------------------------------+----------------------------+ | :class:`c_char_p` | ``char *`` (NUL terminated) | string or ``None`` | +----------------------+--------------------------------+----------------------------+ | :class:`c_wchar_p` | ``wchar_t *`` (NUL terminated) | unicode or ``None`` | @@ -2065,9 +2067,16 @@ These are the fundamental ctypes data types: initializer. +.. class:: c_longdouble + + Represents the C long double datatype. The constructor accepts an + optional float initializer. On platforms where ``sizeof(long + double) == sizeof(double)`` it is an alias to :class:`c_double`. + + .. class:: c_float - Represents the C double datatype. The constructor accepts an optional float + Represents the C float datatype. The constructor accepts an optional float initializer. diff --git a/Doc/library/mutex.rst b/Doc/library/mutex.rst index 523692f..151f0c1 100644 --- a/Doc/library/mutex.rst +++ b/Doc/library/mutex.rst @@ -8,8 +8,9 @@ The :mod:`mutex` module defines a class that allows mutual-exclusion via -acquiring and releasing locks. It does not require (or imply) threading or -multi-tasking, though it could be useful for those purposes. +acquiring and releasing locks. It does not require (or imply) +:mod:`threading` or multi-tasking, though it could be useful for those +purposes. The :mod:`mutex` module defines the following class: diff --git a/Doc/library/queue.rst b/Doc/library/queue.rst index c183860..e9da905 100644 --- a/Doc/library/queue.rst +++ b/Doc/library/queue.rst @@ -7,10 +7,11 @@ The :mod:`Queue` module implements a multi-producer, multi-consumer FIFO queue. -It is especially useful in threads programming when information must be +It is especially useful in threaded programming when information must be exchanged safely between multiple threads. The :class:`Queue` class in this module implements all the required locking semantics. It depends on the -availability of thread support in Python. +availability of thread support in Python; see the :mod:`threading` +module. The :mod:`Queue` module defines the following class and exception: diff --git a/Doc/library/re.rst b/Doc/library/re.rst index fef6d2d..a3d3dea 100644 --- a/Doc/library/re.rst +++ b/Doc/library/re.rst @@ -546,6 +546,13 @@ form. >>> re.split('\W+', 'Words, words, words.', 1) ['Words', 'words, words.'] + Note that *split* will never split a string on an empty pattern match. + For example :: + + >>> re.split('x*', 'foo') + ['foo'] + >>> re.split("(?m)^$", "foo\n\nbar\n") + ['foo\n\nbar\n'] .. function:: findall(pattern, string[, flags]) diff --git a/Doc/library/readline.rst b/Doc/library/readline.rst index 7727c3b..7e6eccf 100644 --- a/Doc/library/readline.rst +++ b/Doc/library/readline.rst @@ -128,6 +128,12 @@ The :mod:`readline` module defines the following functions: Get the completer function, or ``None`` if no completer function has been set. +.. function:: get_completion_type() + + Get the type of completion being attempted. + + .. versionadded:: 2.6 + .. function:: get_begidx() Get the beginning index of the readline tab-completion scope. @@ -147,6 +153,16 @@ The :mod:`readline` module defines the following functions: Get the readline word delimiters for tab-completion. +.. function:: set_completion_display_matches_hook([function]) + + Set or remove the completion display function. If *function* is + specified, it will be used as the new completion display function; + if omitted or ``None``, any completion display function already + installed is removed. The completion display function is called as + ``function(substitution, [matches], longest_match_length)`` once + each time matches need to be displayed. + + .. versionadded:: 2.6 .. function:: add_history(line) diff --git a/Doc/library/smtplib.rst b/Doc/library/smtplib.rst index 3173f35..286a725 100644 --- a/Doc/library/smtplib.rst +++ b/Doc/library/smtplib.rst @@ -47,7 +47,7 @@ Protocol) and :rfc:`1869` (SMTP Service Extensions). .. class:: LMTP([host[, port[, local_hostname]]]) The LMTP protocol, which is very similar to ESMTP, is heavily based on the - standard SMTP client. It's common to use Unix sockets for LMTP, so our connect() + standard SMTP client. It's common to use Unix sockets for LMTP, so our :meth:`connect` method must support that as well as a regular host:port server. To specify a Unix socket, you must use an absolute path for *host*, starting with a '/'. diff --git a/Doc/library/socket.rst b/Doc/library/socket.rst index a445b54..758cfb1 100644 --- a/Doc/library/socket.rst +++ b/Doc/library/socket.rst @@ -165,7 +165,7 @@ The module :mod:`socket` exports the following constants and functions: .. function:: create_connection(address[, timeout]) Connects to the *address* received (as usual, a ``(host, port)`` pair), with an - optional timeout for the connection. Specially useful for higher-level + optional timeout for the connection. Especially useful for higher-level protocols, it is not normally used directly from application-level code. Passing the optional *timeout* parameter will set the timeout on the socket instance (if it is not given or ``None``, the global default timeout setting is diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst index 5072caf..852a905 100644 --- a/Doc/library/ssl.rst +++ b/Doc/library/ssl.rst @@ -170,6 +170,8 @@ use the first chain it finds in the file which matches. Some "standard" root certificates are available at http://www.thawte.com/roots/ (for Thawte roots) and http://www.verisign.com/support/roots.html (for Verisign roots). +See also :rfc:`4158` for more discussion of the way in which +certification chains can be built. sslsocket Objects @@ -239,23 +241,23 @@ sslsocket Objects the certificate), ``notBefore`` (the time before which the certificate should not be trusted), and ``notAfter`` (the time after which the certificate should not be trusted) filled in. - The "subject" and "issuer" fields are themselves dictionaries containing the fields given - in the certificate's data structure for each principal:: - - {'issuer': {'commonName': u'somemachine.python.org', - 'countryName': u'US', - 'localityName': u'Wilmington', - 'organizationName': u'Python Software Foundation', - 'organizationalUnitName': u'SSL', - 'stateOrProvinceName': u'Delaware'}, - 'subject': {'commonName': u'somemachine.python.org', - 'countryName': u'US', - 'localityName': u'Wilmington', - 'organizationName': u'Python Software Foundation', - 'organizationalUnitName': u'SSL', - 'stateOrProvinceName': u'Delaware'}, - 'notAfter': 'Sep 4 21:54:26 2007 GMT', - 'notBefore': 'Aug 25 21:54:26 2007 GMT', + The "subject" and "issuer" fields are tuples containing the name-value fields + given in the certificate's data structure for each principal:: + + {'issuer': (('countryName', u'US'), + ('stateOrProvinceName', u'Delaware'), + ('localityName', u'Wilmington'), + ('organizationName', u'Python Software Foundation'), + ('organizationalUnitName', u'SSL'), + ('commonName', u'somemachine.python.org')), + 'notAfter': 'Feb 16 16:54:50 2013 GMT', + 'notBefore': 'Aug 27 16:54:50 2007 GMT', + 'subject': (('countryName', u'US'), + ('stateOrProvinceName', u'Delaware'), + ('localityName', u'Wilmington'), + ('organizationName', u'Python Software Foundation'), + ('organizationalUnitName', u'SSL'), + ('commonName', u'somemachine.python.org')), 'version': 2} This certificate is said to be *self-signed*, because the subject @@ -311,27 +313,32 @@ sends some bytes, and reads part of the response:: # note that closing the sslsocket will also close the underlying socket ssl_sock.close() -As of August 25, 2007, the certificate printed by this program +As of September 4, 2007, the certificate printed by this program looked like this:: - {'issuer': {'commonName': u'VeriSign Class 3 Extended Validation SSL SGC CA', - 'countryName': u'US', - 'organizationName': u'VeriSign, Inc.', - 'organizationalUnitName': u'Terms of use at https://www.verisign.com/rpa (c)06'}, - 'subject': {'1.3.6.1.4.1.311.60.2.1.2': u'Delaware', - '1.3.6.1.4.1.311.60.2.1.3': u'US', - 'commonName': u'www.verisign.com', - 'countryName': u'US', - 'localityName': u'Mountain View', - 'organizationName': u'VeriSign, Inc.', - 'organizationalUnitName': u'Terms of use at www.verisign.com/rpa (c)06', - 'postalCode': u'94043', - 'serialNumber': u'2497886', - 'stateOrProvinceName': u'California', - 'streetAddress': u'487 East Middlefield Road'}, - 'notAfter': 'May 8 23:59:59 2009 GMT', - 'notBefore': 'May 9 00:00:00 2007 GMT', - 'version': 2} + {'issuer': (('countryName', u'US'), + ('organizationName', u'VeriSign, Inc.'), + ('organizationalUnitName', u'VeriSign Trust Network'), + ('organizationalUnitName', + u'Terms of use at https://www.verisign.com/rpa (c)06'), + ('commonName', + u'VeriSign Class 3 Extended Validation SSL SGC CA')), + 'notAfter': 'May 8 23:59:59 2009 GMT', + 'notBefore': 'May 9 00:00:00 2007 GMT', + 'subject': (('serialNumber', u'2497886'), + ('1.3.6.1.4.1.311.60.2.1.3', u'US'), + ('1.3.6.1.4.1.311.60.2.1.2', u'Delaware'), + ('countryName', u'US'), + ('postalCode', u'94043'), + ('stateOrProvinceName', u'California'), + ('localityName', u'Mountain View'), + ('streetAddress', u'487 East Middlefield Road'), + ('organizationName', u'VeriSign, Inc.'), + ('organizationalUnitName', u'Production Security Services'), + ('organizationalUnitName', + u'Terms of use at www.verisign.com/rpa (c)06'), + ('commonName', u'www.verisign.com')), + 'version': 2} Server-side operation ^^^^^^^^^^^^^^^^^^^^^ @@ -383,3 +390,5 @@ Class :class:`socket.socket` `Introducing SSL and Certificates using OpenSSL <http://old.pseudonym.org/ssl/wwwj-index.html>`_, by Frederick J. Hirsch `Privacy Enhancement for Internet Electronic Mail: Part II: Certificate-Based Key Management`, :rfc:`1422`, by Steve Kent + +`Internet X.509 Public Key Infrastructure Certificate and CRL Profile`, :rfc:`3280`, Housley et. al. diff --git a/Doc/library/thread.rst b/Doc/library/thread.rst index 32437dc..6c59954 100644 --- a/Doc/library/thread.rst +++ b/Doc/library/thread.rst @@ -13,9 +13,11 @@ single: semaphores, binary This module provides low-level primitives for working with multiple threads -(a.k.a. :dfn:`light-weight processes` or :dfn:`tasks`) --- multiple threads of +(also called :dfn:`light-weight processes` or :dfn:`tasks`) --- multiple threads of control sharing their global data space. For synchronization, simple locks -(a.k.a. :dfn:`mutexes` or :dfn:`binary semaphores`) are provided. +(also called :dfn:`mutexes` or :dfn:`binary semaphores`) are provided. +The :mod:`threading` module provides an easier to use and higher-level +threading API built on top of this module. .. index:: single: pthreads diff --git a/Doc/library/threading.rst b/Doc/library/threading.rst index 828d42b..1b82e4b 100644 --- a/Doc/library/threading.rst +++ b/Doc/library/threading.rst @@ -8,6 +8,7 @@ This module constructs higher-level threading interfaces on top of the lower level :mod:`thread` module. +See also the :mod:`mutex` and :mod:`Queue` modules. The :mod:`dummy_threading` module is provided for situations where :mod:`threading` cannot be used because :mod:`thread` is missing. |