diff options
-rw-r--r-- | Doc/bugs.rst | 10 | ||||
-rw-r--r-- | Doc/distutils/examples.rst | 6 | ||||
-rw-r--r-- | Doc/distutils/uploading.rst | 8 | ||||
-rw-r--r-- | Doc/glossary.rst | 2 | ||||
-rw-r--r-- | Doc/library/http.client.rst | 2 | ||||
-rw-r--r-- | Doc/library/inspect.rst | 6 | ||||
-rw-r--r-- | Doc/library/site.rst | 4 | ||||
-rw-r--r-- | Doc/library/ssl.rst | 8 | ||||
-rw-r--r-- | Doc/library/sys.rst | 2 | ||||
-rw-r--r-- | Doc/library/xmlrpc.server.rst | 9 | ||||
-rwxr-xr-x | Doc/tools/rstlint.py | 4 | ||||
-rw-r--r-- | Doc/whatsnew/2.2.rst | 2 | ||||
-rw-r--r-- | Doc/whatsnew/2.6.rst | 14 | ||||
-rw-r--r-- | Lib/test/test_fnmatch.py | 11 | ||||
-rwxr-xr-x | Lib/test/test_strftime.py | 11 |
15 files changed, 48 insertions, 51 deletions
diff --git a/Doc/bugs.rst b/Doc/bugs.rst index 55b3107..a9a48c7 100644 --- a/Doc/bugs.rst +++ b/Doc/bugs.rst @@ -38,10 +38,9 @@ information is needed (in which case you are welcome to provide it if you can!). To do this, search the bug database using the search box on the top of the page. If the problem you're reporting is not already in the bug tracker, go back to -the Python Bug Tracker. If you don't already have a tracker account, select the -"Register" link in the sidebar and undergo the registration procedure. -Otherwise, if you're not logged in, enter your credentials and select "Login". -It is not possible to submit a bug report anonymously. +the Python Bug Tracker and log in. If you don't already have a tracker account, +select the "Register" link or, if you use OpenID, one of the OpenID provider +logos in the sidebar. It is not possible to submit a bug report anonymously. Being now logged in, you can submit a bug. Select the "Create New" link in the sidebar to open the bug reporting form. @@ -58,7 +57,8 @@ were using (including version information as appropriate). Each bug report will be assigned to a developer who will determine what needs to be done to correct the problem. You will receive an update each time action is -taken on the bug. +taken on the bug. See http://www.python.org/dev/workflow/ for a detailed +description of the issue workflow. .. seealso:: diff --git a/Doc/distutils/examples.rst b/Doc/distutils/examples.rst index 648063b..6c27738 100644 --- a/Doc/distutils/examples.rst +++ b/Doc/distutils/examples.rst @@ -257,9 +257,9 @@ Running the ``check`` command will display some warnings:: (maintainer and maintainer_email) must be supplied -If you use the reStructuredText syntax in the `long_description` field and +If you use the reStructuredText syntax in the ``long_description`` field and `docutils <http://docutils.sourceforge.net/>`_ is installed you can check if -the syntax is fine with the ``check`` command, using the `restructuredtext` +the syntax is fine with the ``check`` command, using the ``restructuredtext`` option. For example, if the :file:`setup.py` script is changed like this:: @@ -278,7 +278,7 @@ For example, if the :file:`setup.py` script is changed like this:: url='http://example.com', long_description=desc) Where the long description is broken, ``check`` will be able to detect it -by using the `docutils` parser:: +by using the :mod:`docutils` parser:: $ pythontrunk setup.py check --restructuredtext running check diff --git a/Doc/distutils/uploading.rst b/Doc/distutils/uploading.rst index e947245..7b790b1 100644 --- a/Doc/distutils/uploading.rst +++ b/Doc/distutils/uploading.rst @@ -60,13 +60,13 @@ in the package:: setup(name='Distutils', long_description=open('README.txt')) -In that case, `README.txt` is a regular reStructuredText text file located -in the root of the package besides `setup.py`. +In that case, :file:`README.txt` is a regular reStructuredText text file located +in the root of the package besides :file:`setup.py`. To prevent registering broken reStructuredText content, you can use the -:program:`rst2html` program that is provided by the `docutils` package +:program:`rst2html` program that is provided by the :mod:`docutils` package and check the ``long_description`` from the command line:: $ python setup.py --long-description | rst2html.py > output.html -`docutils` will display a warning if there's something wrong with your syntax. +:mod:`docutils` will display a warning if there's something wrong with your syntax. diff --git a/Doc/glossary.rst b/Doc/glossary.rst index 5ecf848..f1474cf 100644 --- a/Doc/glossary.rst +++ b/Doc/glossary.rst @@ -331,7 +331,7 @@ Glossary iterator An object representing a stream of data. Repeated calls to the iterator's - :meth:`__next__` (or passing it to the builtin function) :func:`next` + :meth:`__next__` (or passing it to the built-in function :func:`next`) method return successive items in the stream. When no more data are available a :exc:`StopIteration` exception is raised instead. At this point, the iterator object is exhausted and any further calls to its diff --git a/Doc/library/http.client.rst b/Doc/library/http.client.rst index 0f59b9a..f8aedcc 100644 --- a/Doc/library/http.client.rst +++ b/Doc/library/http.client.rst @@ -486,7 +486,7 @@ statement. .. attribute:: HTTPResponse.debuglevel - A debugging hook. If `debuglevel` is greater than zero, messages + A debugging hook. If :attr:`debuglevel` is greater than zero, messages will be printed to stdout as the response is read and parsed. diff --git a/Doc/library/inspect.rst b/Doc/library/inspect.rst index 37a4f1a..cc88acf 100644 --- a/Doc/library/inspect.rst +++ b/Doc/library/inspect.rst @@ -387,7 +387,7 @@ Classes and functions .. function:: getargspec(func) - Get the names and default values of a function's arguments. A + Get the names and default values of a Python function's arguments. A :term:`named tuple` ``ArgSpec(args, varargs, keywords, defaults)`` is returned. *args* is a list of the argument names. *varargs* and *varkw* are the names of the ``*`` and @@ -402,8 +402,8 @@ Classes and functions .. function:: getfullargspec(func) - Get the names and default values of a function's arguments. A :term:`named - tuple` is returned: + Get the names and default values of a Python function's arguments. A + :term:`named tuple` is returned: ``FullArgSpec(args, varargs, varkw, defaults, kwonlyargs, kwonlydefaults, annotations)`` diff --git a/Doc/library/site.rst b/Doc/library/site.rst index 0fe63a3..bf65d17 100644 --- a/Doc/library/site.rst +++ b/Doc/library/site.rst @@ -117,5 +117,5 @@ empty, and the path manipulations are skipped; however the import of Adds a directory to sys.path and processes its pth files. -XXX Update documentation -XXX document python -m site --user-base --user-site +.. XXX Update documentation +.. XXX document python -m site --user-base --user-site diff --git a/Doc/library/ssl.rst b/Doc/library/ssl.rst index 5c78345..d377072 100644 --- a/Doc/library/ssl.rst +++ b/Doc/library/ssl.rst @@ -278,14 +278,6 @@ SSLSocket Objects else: raise -.. method:: SSLSocket.unwrap() - - Performs the SSL shutdown handshake, which removes the TLS layer from the - underlying socket, and returns the underlying socket object. This can be - used to go from encrypted operation over a connection to unencrypted. The - returned socket should always be used for further communication with the - other side of the connection, rather than the original socket - .. method:: SSLSocket.getpeercert(binary_form=False) If there is no certificate for the peer on the other end of the connection, diff --git a/Doc/library/sys.rst b/Doc/library/sys.rst index 619d4fb..f0e551e 100644 --- a/Doc/library/sys.rst +++ b/Doc/library/sys.rst @@ -359,7 +359,7 @@ always available. specific. If given, *default* will be returned if the object does not provide means to - retrieve the size. Otherwise a `TypeError` will be raised. + retrieve the size. Otherwise a :exc:`TypeError` will be raised. :func:`getsizeof` calls the object's ``__sizeof__`` method and adds an additional garbage collector overhead if the object is managed by the garbage diff --git a/Doc/library/xmlrpc.server.rst b/Doc/library/xmlrpc.server.rst index 4a391b7..3cb2c3a 100644 --- a/Doc/library/xmlrpc.server.rst +++ b/Doc/library/xmlrpc.server.rst @@ -136,10 +136,10 @@ Server code:: server.register_function(adder_function, 'add') # Register an instance; all the methods of the instance are - # published as XML-RPC methods (in this case, just 'div'). + # published as XML-RPC methods (in this case, just 'mul'). class MyFuncs: - def div(self, x, y): - return x // y + def mul(self, x, y): + return x * y server.register_instance(MyFuncs()) @@ -209,7 +209,8 @@ requests sent to Python CGI scripts. Example:: class MyFuncs: - def div(self, x, y) : return x // y + def mul(self, x, y): + return x * y handler = CGIXMLRPCRequestHandler() diff --git a/Doc/tools/rstlint.py b/Doc/tools/rstlint.py index eaaf257..e977f21 100755 --- a/Doc/tools/rstlint.py +++ b/Doc/tools/rstlint.py @@ -169,7 +169,6 @@ Options: -v verbose (print all checked file names) return 2 count = defaultdict(int) - out = sys.stdout for root, dirs, files in os.walk(path): # ignore subdirs controlled by svn @@ -212,8 +211,7 @@ Options: -v verbose (print all checked file names) csev = checker.severity if csev >= severity: for lno, msg in checker(fn, lines): - print('[%d] %s:%d: %s' % (csev, fn, lno, msg), - file=out) + print('[%d] %s:%d: %s' % (csev, fn, lno, msg)) count[csev] += 1 if verbose: print() diff --git a/Doc/whatsnew/2.2.rst b/Doc/whatsnew/2.2.rst index 31e8dd0..89e4d76 100644 --- a/Doc/whatsnew/2.2.rst +++ b/Doc/whatsnew/2.2.rst @@ -30,7 +30,7 @@ understand the complete implementation and design rationale for a change, refer to the PEP for a particular new feature. -.. seealso (now defunct) +.. see also, now defunct http://www.unixreview.com/documents/s=1356/urm0109h/0109h.htm "What's So Special About Python 2.2?" is also about the new 2.2 features, and diff --git a/Doc/whatsnew/2.6.rst b/Doc/whatsnew/2.6.rst index c9fb5c8..00398fc 100644 --- a/Doc/whatsnew/2.6.rst +++ b/Doc/whatsnew/2.6.rst @@ -350,9 +350,10 @@ A high-level explanation of the context management protocol is: * The code in *BLOCK* is executed. -* If *BLOCK* raises an exception, the :meth:`__exit__(type, value, traceback)` - is called with the exception details, the same values returned by - :func:`sys.exc_info`. The method's return value controls whether the exception +* If *BLOCK* raises an exception, the context manager's :meth:`__exit__` method + is called with three arguments, the exception details (``type, value, traceback``, + the same values returned by :func:`sys.exc_info`, which can also be ``None`` + if no exception occurred). The method's return value controls whether an exception is re-raised: any false value re-raises the exception, and ``True`` will result in suppressing it. You'll only rarely want to suppress the exception, because if you do the author of the code containing the ':keyword:`with`' statement will @@ -463,7 +464,7 @@ could be written as:: with db_transaction(db) as cursor: ... -The :mod:`contextlib` module also has a :func:`nested(mgr1, mgr2, ...)` function +The :mod:`contextlib` module also has a ``nested(mgr1, mgr2, ...)`` function that combines a number of context managers so you don't need to write nested ':keyword:`with`' statements. In this example, the single ':keyword:`with`' statement both starts a database transaction and acquires a thread lock:: @@ -472,8 +473,9 @@ statement both starts a database transaction and acquires a thread lock:: with nested (db_transaction(db), lock) as (cursor, locked): ... -Finally, the :func:`closing(object)` function returns *object* so that it can be -bound to a variable, and calls ``object.close`` at the end of the block. :: +Finally, the :func:`closing` function returns its argument so that it can be +bound to a variable, and calls the argument's ``.close()`` method at the end +of the block. :: import urllib, sys from contextlib import closing diff --git a/Lib/test/test_fnmatch.py b/Lib/test/test_fnmatch.py index abf8811..bde4ee8 100644 --- a/Lib/test/test_fnmatch.py +++ b/Lib/test/test_fnmatch.py @@ -11,13 +11,13 @@ class FnmatchTestCase(unittest.TestCase): def tearDown(self): _purge() - def check_match(self, filename, pattern, should_match=1): + def check_match(self, filename, pattern, should_match=1, fn=fnmatch): if should_match: - self.assertTrue(fnmatch(filename, pattern), + self.assertTrue(fn(filename, pattern), "expected %r to match pattern %r" % (filename, pattern)) else: - self.assertTrue(not fnmatch(filename, pattern), + self.assertTrue(not fn(filename, pattern), "expected %r not to match pattern %r" % (filename, pattern)) @@ -54,6 +54,11 @@ class FnmatchTestCase(unittest.TestCase): self.assertRaises(TypeError, fnmatchcase, 'test', b'*') self.assertRaises(TypeError, fnmatchcase, b'test', '*') + def test_fnmatchcase(self): + check = self.check_match + check('AbC', 'abc', 0, fnmatchcase) + check('abc', 'AbC', 0, fnmatchcase) + def test_bytes(self): self.check_match(b'test', b'te*') self.check_match(b'test\xff', b'te*\xff') diff --git a/Lib/test/test_strftime.py b/Lib/test/test_strftime.py index 7128fd7..5b94bbe 100755 --- a/Lib/test/test_strftime.py +++ b/Lib/test/test_strftime.py @@ -117,16 +117,15 @@ class StrftimeTest(unittest.TestCase): try: result = time.strftime(e[0], now) except ValueError as error: - print("Standard '%s' format gaver error:" % (e[0], error)) - continue + self.fail("strftime '%s' format gave error: %s" % (e[0], error)) if re.match(escapestr(e[1], self.ampm), result): continue if not result or result[0] == '%': - print("Does not support standard '%s' format (%s)" % \ - (e[0], e[2])) + self.fail("strftime does not support standard '%s' format (%s)" + % (e[0], e[2])) else: - print("Conflict for %s (%s):" % (e[0], e[2])) - print(" Expected %s, but got %s" % (e[1], result)) + self.fail("Conflict for %s (%s): expected %s, but got %s" + % (e[0], e[2], e[1], result)) def strftest2(self, now): nowsecs = str(int(now))[:-1] |