Discussion:
[Python-3000-checkins] r67294 - in python/branches/py3k: Doc/conf.py Doc/reference/datamodel.rst Doc/tools/sphinxext/download.html Lib/doctest.py
benjamin.peterson
2008-11-19 22:38:29 UTC
Permalink
Author: benjamin.peterson
Date: Wed Nov 19 23:38:29 2008
New Revision: 67294

Log:
Merged revisions 67243,67245,67277-67278,67289 via svnmerge from
svn+ssh://pythondev at svn.python.org/python/trunk

........
r67243 | benjamin.peterson | 2008-11-17 15:39:05 -0600 (Mon, 17 Nov 2008) | 1 line

a few fixes on the download page
........
r67245 | benjamin.peterson | 2008-11-17 16:05:19 -0600 (Mon, 17 Nov 2008) | 1 line

improve __hash__ docs
........
r67277 | skip.montanaro | 2008-11-18 21:35:41 -0600 (Tue, 18 Nov 2008) | 1 line

patch from issue 1108
........
r67278 | georg.brandl | 2008-11-19 01:59:09 -0600 (Wed, 19 Nov 2008) | 2 lines

Try to fix problems with verbatim.
........
r67289 | brett.cannon | 2008-11-19 14:29:39 -0600 (Wed, 19 Nov 2008) | 2 lines

Ignore .pyc and .pyo files.
........


Modified:
python/branches/py3k/ (props changed)
python/branches/py3k/Doc/conf.py
python/branches/py3k/Doc/reference/datamodel.rst
python/branches/py3k/Doc/tools/sphinxext/download.html
python/branches/py3k/Lib/doctest.py

Modified: python/branches/py3k/Doc/conf.py
==============================================================================
--- python/branches/py3k/Doc/conf.py (original)
+++ python/branches/py3k/Doc/conf.py Wed Nov 19 23:38:29 2008
@@ -141,6 +141,8 @@
\strong{Python Software Foundation}\\
Email: \email{docs at python.org}
}
+\let\Verbatim=\OriginalVerbatim
+\let\endVerbatim=\endOriginalVerbatim
'''

# Documents to append as an appendix to all manuals.

Modified: python/branches/py3k/Doc/reference/datamodel.rst
==============================================================================
--- python/branches/py3k/Doc/reference/datamodel.rst (original)
+++ python/branches/py3k/Doc/reference/datamodel.rst Wed Nov 19 23:38:29 2008
@@ -1202,20 +1202,22 @@
object: dictionary
builtin: hash

- Called for the key object for dictionary operations, and by the built-in
- function :func:`hash`. Should return an integer usable as a hash value
- for dictionary operations. The only required property is that objects which
- compare equal have the same hash value; it is advised to somehow mix together
- (e.g., using exclusive or) the hash values for the components of the object that
- also play a part in comparison of objects.
+ Called by built-in function :func:`hash` and for operations on members of
+ hashed collections including :class:`set`, :class:`frozenset`, and
+ :class:`dict`. :meth:`__hash__` should return an integer. The only required
+ property is that objects which compare equal have the same hash value; it is
+ advised to somehow mix together (e.g. using exclusive or) the hash values for
+ the components of the object that also play a part in comparison of objects.

If a class does not define an :meth:`__eq__` method it should not define a
:meth:`__hash__` operation either; if it defines :meth:`__eq__` but not
- :meth:`__hash__`, its instances will not be usable as dictionary keys. If a
- class defines mutable objects and implements an :meth:`__eq__` method, it
- should not implement :meth:`__hash__`, since the dictionary implementation
- requires that a key's hash value is immutable (if the object's hash value
- changes, it will be in the wrong hash bucket).
+ :meth:`__hash__`, its instances will not be usable as items in hashable
+ collections. If a class defines mutable objects and implements an
+ :meth:`__eq__` method, it should not implement :meth:`__hash__`, since the
+ implementation of hashable collections requires that a key's hash value is
+ immutable (if the object's hash value changes, it will be in the wrong hash
+ bucket).
+

User-defined classes have :meth:`__eq__` and :meth:`__hash__` methods
by default; with them, all objects compare unequal (except with themselves)

Modified: python/branches/py3k/Doc/tools/sphinxext/download.html
==============================================================================
--- python/branches/py3k/Doc/tools/sphinxext/download.html (original)
+++ python/branches/py3k/Doc/tools/sphinxext/download.html Wed Nov 19 23:38:29 2008
@@ -14,7 +14,7 @@

<p>To download an archive containing all the documents for this version of
Python in one of various formats, follow one of links in this table. The numbers
-in the table are the size of the download files in Kilobytes.</p>
+in the table are the size of the download files in megabytes.</p>

<table class="docutils">
<tr><th>Format</th><th>Packed as .zip</th><th>Packed as .tar.bz2</th></tr>
@@ -54,7 +54,7 @@
<h2>Problems</h2>

<p>If you have comments or suggestions for the Python documentation, please send
-email to <a href="docs at python.org">docs at python.org</a>.</p>
+email to <a href="mailto:docs at python.org">docs at python.org</a>.</p>
{% endif %}

{% endblock %}

Modified: python/branches/py3k/Lib/doctest.py
==============================================================================
--- python/branches/py3k/Lib/doctest.py (original)
+++ python/branches/py3k/Lib/doctest.py Wed Nov 19 23:38:29 2008
@@ -847,12 +847,12 @@
"""
if module is None:
return True
+ elif inspect.getmodule(object) is not None:
+ return module is inspect.getmodule(object)
elif inspect.isfunction(object):
return module.__dict__ is object.__globals__
elif inspect.isclass(object):
return module.__name__ == object.__module__
- elif inspect.getmodule(object) is not None:
- return module is inspect.getmodule(object)
elif hasattr(object, '__module__'):
return module.__name__ == object.__module__
elif isinstance(object, property):

Loading...