Benjamin Peterson avatar Benjamin Peterson committed c38c3da Merge

merge heads

Comments (0)

Files changed (5)

Doc/library/asyncore.rst

 
       Called on listening channels (passive openers) when a connection has been
       established with a new remote endpoint that has issued a :meth:`connect`
-      call for the local endpoint.  *conn* is a *new* socket object usable to
-      send and receive data on the connection, and *address* is the address
+      call for the local endpoint.  *sock* is a *new* socket object usable to
+      send and receive data on the connection, and *addr* is the address
       bound to the socket on the other end of the connection.
 
       .. versionadded:: 3.2

Doc/library/http.client.rst

    A debugging hook.  If :attr:`debuglevel` is greater than zero, messages
    will be printed to stdout as the response is read and parsed.
 
+.. attribute:: HTTPResponse.closed
+
+   Is True if the stream is closed.
 
 Examples
 --------
    >>> r1 = conn.getresponse()
    >>> print(r1.status, r1.reason)
    200 OK
-   >>> data1 = r1.read()
+   >>> data1 = r1.read()  # This will return entire content.
+   >>> # The following example demonstrates reading data in chunks.
+   >>> conn.request("GET", "/index.html")
+   >>> r1 = conn.getresponse()
+   >>> while not r1.closed:
+   ...     print(r1.read(200)) # 200 bytes
+   b'<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"...
+   ...
+   >>> # Example of an invalid request
    >>> conn.request("GET", "/parrot.spam")
    >>> r2 = conn.getresponse()
    >>> print(r2.status, r2.reason)

Doc/tutorial/modules.rst

 
 .. index:: triple: module; search; path
 
-When a module named :mod:`spam` is imported, the interpreter searches for a file
-named :file:`spam.py` in the current directory, and then in the list of
-directories specified by the environment variable :envvar:`PYTHONPATH`.  This
-has the same syntax as the shell variable :envvar:`PATH`, that is, a list of
-directory names.  When :envvar:`PYTHONPATH` is not set, or when the file is not
-found there, the search continues in an installation-dependent default path; on
-Unix, this is usually :file:`.:/usr/local/lib/python`.
+When a module named :mod:`spam` is imported, the interpreter searches for a
+file named :file:`spam.py` in the directory containing the input script and
+then in the list of directories specified by the environment variable
+:envvar:`PYTHONPATH`.  This has the same syntax as the shell variable
+:envvar:`PATH`, that is, a list of directory names.  When :envvar:`PYTHONPATH`
+is not set, or when the file is not found there, the search continues in an
+installation-dependent default path; on Unix, this is usually
+:file:`.:/usr/local/lib/python`.
 
 Actually, modules are searched in the list of directories given by the variable
 ``sys.path`` which is initialized from the directory containing the input script

Lib/multiprocessing/pool.py

                 processes = cpu_count()
             except NotImplementedError:
                 processes = 1
+        if processes < 1:
+            raise ValueError("Number of processes must be at least 1")
 
         if initializer is not None and not hasattr(initializer, '__call__'):
             raise TypeError('initializer must be a callable')

Lib/test/test_multiprocessing.py

         self.assertEqual(sorted(it), list(map(sqr, list(range(1000)))))
 
     def test_make_pool(self):
+        self.assertRaises(ValueError, multiprocessing.Pool, -1)
+        self.assertRaises(ValueError, multiprocessing.Pool, 0)
+
         p = multiprocessing.Pool(3)
         self.assertEqual(3, len(p._pool))
         p.close()
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.