* Make it more obvious gettarinfo() is based on stat(), and that non-ordinary
files may need special care
* Filename taken from fileobj.name; suggest dummy arcname as a workaround
* Indicate TarInfo may be used directly, not just via gettarinfo()
* Add headings for each concrete and mix-in class and list methods and
attributes under them
* Fix class and method cross references
* Changed RequestHandler to BaseRequestHandler and added class heading
* Pull out Stream/DatagramRequestHandler definitions
* Reordered the request handler setup(), handle(), finish() methods
* Document constructor parameters for the server classes
* There was a link pointing to the section on the string.Formatter class (and
multiple links in Python 3), when the section on the common format string
syntax is probably more appropriate
* Fix references to various format() functions and methods
* Nested replacement fields may contain conversions and format specifiers,
and this is tested in Python 3; see Issue #19729 for instance
Fixed a crash when unpickle the functools.partial object with wrong state.
Fixed a leak in failed functools.partial constructor.
"args" and "keywords" attributes of functools.partial have now always types
tuple and dict correspondingly.
Test test_wrong_cert() runs a server that rejects the client's certificate,
so ECONNRESET is reasonable in addition to SSLError. On the other hand, the
other three tests don't even need to run a server because they are just
testing the parsing of invalid certificate files.
This should fix intermittent failures on Windows where ECONNRESET was not
being caught.
Testing for a non-existing certificate file is already done in test_errors().
The wrongcert.pem test was originally testing behaviour with a mismatched
certificate.
Issue #25907: Use {% trans %} tags in HTML templates to ease the translation of
the documentation. The tag comes from Jinja templating system, used by Sphinx.
Patch written by Julien Palard.
Issue #25843: When compiling code, don't merge constants if they are equal but
have a different types. For example, "f1, f2 = lambda: 1, lambda: 1.0" is now
correctly compiled to two different functions: f1() returns 1 (int) and f2()
returns 1.0 (int), even if 1 and 1.0 are equal.
Add a new _PyCode_ConstantKey() private function.
A single call to Pool.apply_async() will create only one process. To use all
of the pool's processes, it should be invoked multiple times:
with Pool(processes=4) as pool:
results = [pool.apply_async(func, ()) for i in range(4)]
Patch by Davin Potts.
This change helps to ignore text of PSF, BEOPEN.com and CNRI licenses when
translating the documentation. Patch written by Julien Palard who is
translating Python 3.5 doc to french. Text of other licenses already used
preformatted format.