summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Start of 3.8.0a0Ned Deily2018-01-3110-824/+824
|
* Update NEWS, docs, and patchlevel for 3.7.0b1Ned Deily2018-01-3191-242/+1042
|
* bpo-32726: Build macOS 10.9+ installer with private copy of Tcl/Tk 8.6Ned Deily2018-01-315-75/+84
|
* bpo-32735: Fix typo in f-strings datetime format specifier example (GH-5464)Cheryl Sabella2018-01-311-1/+1
| | | | The f-string example for using datetime format specifier does not match the given output. Changed the format from %b to %B so it matches the output of "January".
* bpo-25988: Emit a warning when use or import ABCs from 'collections'. (#5460)Serhiy Storchaka2018-01-312-22/+32
|
* Make site documentation more clear (#5461)Xiang Zhang2018-01-311-6/+8
| | | | Mention only ImportError caused by importing sitecustomize.py/usercustomize.py themselves will be silently ignored.
* bpo-32583: Fix possible crashing in builtin Unicode decoders (#5325)Xiang Zhang2018-01-313-2/+74
| | | | | When using customized decode error handlers, it is possible for builtin decoders to write out-of-bounds and then crash.
* bpo-30693: zip+tarfile: sort directory listing (#2263)Bernhard M. Wiedemann2018-01-317-6/+39
| | | | | | tarfile and zipfile now sort directory listing to generate tar and zip archives in a more reproducible way. See also https://reproducible-builds.org/docs/stable-inputs/ on that topic.
* bpo-32727: smtplib's SMTP.send_message behaves differently with from_addr ↵Stéphane Wirtel2018-01-313-1/+20
| | | | | and to_addrs (#5451) Do not pass the name field in the 'from' address in the SMTP envelope.
* compare with difflib not diff(1) (GH-5450)Benjamin Peterson2018-01-301-13/+9
|
* bpo-32726: macOS installer and framework enhancements and changes for 3.7.0 ↵Ned Deily2018-01-307-175/+130
| | | | | | | | | | | | | | (GH-5448) This issue covers various changes for the macOS installers provided via python.org for 3.7.0. - Provide a provisional new installer variant for macOS 10.9 and later systems with 64-bit (x86_64) architecture only. Apple has made it known that future versions of macOS will only fully support 64-bit executables and some other third-party software suppliers have chosen 10.9 as their oldest supported system. - Support **Tcl/Tk 8.6** with the 10.9 installer variant. - Upgrade **OpenSSL** to 1.1.0g and **SQLite** to 3.22.0. - The compiler name used for the interpreter build and for modules built with **Distutils / pip** is now _gcc_ rather than _gcc-4.2_. And extension module builds will no longer try to force use of an old SDK if present.
* bpo-28914: Fix compilation of select on Android (#5447)Victor Stinner2018-01-301-0/+3
| | | | | EPOLL_CLOEXEC is not defined on Android. Co-Authored-By: Wataru Matsumoto <sxsns243@gmail.com>
* bpo-28440: Don't add /Library/Python/3.x/site-packages to sys.path (#5445)Ned Deily2018-01-303-19/+4
| | | | | | | | No longer add /Library/Python/3.x/site-packages, the Apple-supplied system Python site-packages directory, to sys.path for macOS framework builds in case Apple ships a version of Python 3. A similar change was made earlier to Python 2.7 where it was found that the coupling between the system Python and a user-installed framework Python often caused confusion or pip install failures.
* bpo-32724: Fix references to commands in Doc/pdb.rst (GH-5444)Stéphane Wirtel2018-01-302-5/+10
| | | | | Some commands are specified in the documentation, but there is no direct references.
* bpo-22908: Add seek and tell functionality to ZipExtFile (GH-4966)John Jolly2018-01-304-3/+121
| | | | | This allows for nested zip files, tar files within zip files, zip files within tar files, etc. Contributed by: John Jolly
* bpo-28134: Ignore proto in unknown socket test (GH-5435)Christian Heimes2018-01-301-2/+3
| | | | | Band-aid for macOS: Some platforms seem to ignore unknown protocols. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31961: subprocess now accepts path-like args (GH-4329)Anders Lorentsen2018-01-304-8/+55
| | | Allow os.PathLike args in subprocess APIs.
* closes bpo-30117: fix lib2to3 ParserIdempotency test (GH-1242)Eric Appelt2018-01-302-10/+15
| | | | | | | | | | | Fix two (in my opinion) spurious failure conditions in the lib2to3.tests.test_parser.TestParserIdempotency test_parser test. Use the same encoding found in the initial file to write a temp file for a diff. This retains the BOM if the encoding was initially utf-8-sig. If the file cannot be parsed using the normal grammar, try again with no print statement which should succeed for valid files using future print_function For case (1), the driver was correctly handling a BOM in a utf-8 file, but then the test was not writing a comparison file using 'utf-8-sig' to diff against, so the BOM got removed. I don't think that is the fault of the parser, and lib2to3 will retain the BOM. For case (2), lib2to3 pre-detects the use of from __future__ import print_function or allows the user to force this interpretation with a -p flag, and then selects a different grammar with the print statement removed. That makes the test cases unfair to this test as the driver itself doesn't know which grammar to use. As a minimal fix, the test will try using a grammar with the print statement, and if that fails fall back on a grammar without it. A more thorough handling of the idempotency test would to be to parse all files using both grammars and ignore if one of the two failed but otherwise check both. I didn't think this was necessary but can change.
* bpo-32102 Add "capture_output=True" to subprocess.run (GH-5149)Bo Bayles2018-01-305-9/+54
| | | | Add "capture_output=True" option to subprocess.run, this is equivalent to setting stdout=PIPE, stderr=PIPE but is much more readable.
* closes bpo-32721: do not fail test_hashlib if _md5 isn't available (GH-5441)Benjamin Peterson2018-01-302-1/+2
|
* bpo-32681: Fix an uninitialized variable in the C implementation of os.dup2 ↵Stéphane Wirtel2018-01-302-1/+3
| | | | | (GH-5346) See https://bugs.python.org/issue32441 for where this was introduced.
* bpo-21417: Add compresslevel= to the zipfile module (GH-5385)Bo Bayles2018-01-304-24/+104
| | | | | | This allows the compression level to be specified when writing zipfiles (for the entire file *and* overridden on a per-file basis). Contributed by Bo Bayles
* bpo-25942: make subprocess more graceful on ^C (GH-5026)Gregory P. Smith2018-01-303-13/+143
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Do not allow receiving a SIGINT to cause the subprocess module to trigger an immediate SIGKILL of the child process. SIGINT is normally sent to all child processes by the OS at the same time already as was the established normal behavior in 2.7 and 3.2. This behavior change was introduced during the fix to https://bugs.python.org/issue12494 and is generally surprising to command line tool users who expect other tools launched in child processes to get their own SIGINT and do their own cleanup. In Python 3.3-3.6 subprocess.call and subprocess.run would immediately SIGKILL the child process upon receiving a SIGINT (which raises a KeyboardInterrupt). We now give the child a small amount of time to exit gracefully before resorting to a SIGKILL. This is also the case for subprocess.Popen.__exit__ which would previously block indefinitely waiting for the child to die. This was hidden from many users by virtue of subprocess.call and subprocess.run sending the signal immediately. Behavior change: subprocess.Popen.__exit__ will not block indefinitely when the exiting exception is a KeyboardInterrupt. This is done for user friendliness as people expect their ^C to actually happen. This could cause occasional orphaned Popen objects when not using `call` or `run` with a child process that hasn't exited. Refactoring involved: The Popen.wait method deals with the KeyboardInterrupt second chance, existing platform specific internals have been renamed to _wait(). Also fixes comment typos.
* bpo-32604: NULL-terminate kwlist in channel_drop_interpreter(). (gh-5437)Eric Snow2018-01-301-1/+1
|
* bpo-32701: Clarify the quotetabs flag in quopri documentation (GH-5401)Julien Palard2018-01-301-3/+4
|
* replace dynamic import with 'exec' with importlib.import_module (#5433)Benjamin Peterson2018-01-301-3/+4
|
* bpo-32604: Expose the subinterpreters C-API in a "private" stdlib module. ↵Eric Snow2018-01-306-1/+3539
| | | | | (gh-1748) The module is primarily intended for internal use in the test suite. Building the module under Windows will come in a follow-up PR.
* bpo-32550. Remove the STORE_ANNOTATION bytecode. (GH-5181)Mark Shannon2018-01-3011-201/+149
|
* bpo-28134: Auto-detect socket values from file descriptor (#1349)Christian Heimes2018-01-296-9/+133
| | | | | | | | | | | | | | | Fix socket(fileno=fd) by auto-detecting the socket's family, type, and proto from the file descriptor. The auto-detection can be overruled by passing in family, type, and proto explicitly. Without the fix, all socket except for TCP/IP over IPv4 are basically broken: >>> s = socket.create_connection(('www.python.org', 443)) >>> s <socket.socket fd=3, family=AddressFamily.AF_INET6, type=SocketKind.SOCK_STREAM, proto=6, laddr=('2003:58:bc4a:3b00:56ee:75ff:fe47:ca7b', 59730, 0, 0), raddr=('2a04:4e42:1b::223', 443, 0, 0)> >>> socket.socket(fileno=s.fileno()) <socket.socket fd=3, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('2003:58:bc4a:3b00::%2550471192', 59730, 0, 2550471192), raddr=('2a04:4e42:1b:0:700c:e70b:ff7f:0%2550471192', 443, 0, 2550471192)> Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31356: Add context manager to temporarily disable GC (GH-4224)Pablo Galindo2018-01-295-1/+208
|
* bpo-20104: Fix leaks and errors in new os.posix_spawn (GH-5418)Pablo Galindo2018-01-291-52/+66
| | | | | | | | | | * Fix memory leaks and error handling in posix spawn * Improve error handling when destroying the file_actions object * Py_DECREF the result of PySequence_Fast on error * Handle uninitialized pid * Use OSError if file actions fails to initialize * Move _file_actions to outer scope to avoid undefined behaviour * Remove HAVE_POSIX_SPAWN define in Modules/posixmodule.c * Unshadow exception and clean error message
* rename _imp initialization function to follow conventions (#5432)Benjamin Peterson2018-01-295-8/+7
| | | When the C imp module became _imp in 6f44d66bc491bad5b8d897a68da68e009e27829d, the initialization function should have been renamed from PyInit_imp to PyInit__imp.
* bpo-32703: Fix coroutine resource warning in case where there's an error ↵Yury Selivanov2018-01-293-39/+72
| | | | | (GH-5410) The commit removes one unnecessary "if" clause in genobject.c. That "if" clause was masking un-awaited coroutines warnings just to make writing unittests more convenient.
* bpo-32707: Fix warnings in hamt.c (#5430)Yury Selivanov2018-01-291-3/+5
|
* bpo-27931: Fix email address header parsing error (#5329)jayyyin2018-01-293-1/+25
| | | | Correctly handle addresses whose username is an empty quoted string.
* bpo-25988: Deprecate exposing collections.abc in collections GH-5414Raymond Hettinger2018-01-294-5/+16
|
* Add a test for pdb until command in coroutine (#5427)Andrew Svetlov2018-01-291-0/+46
|
* bpo-28414: ssl module idna test (#5395)Christian Heimes2018-01-292-1/+68
| | | | | | | Add test cases for IDNA 2003 and 2008 host names. IDNA 2003 internationalized host names are working since bpo-31399 has landed. IDNA 2008 deviations are still broken and will be fixed in another patch. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31429: Define TLS cipher suite on build time (#3532)Christian Heimes2018-01-298-48/+153
| | | | | | | | | | | | | Until now Python used a hard coded white list of default TLS cipher suites. The old approach has multiple downsides. OpenSSL's default selection was completely overruled. Python did neither benefit from new cipher suites (ChaCha20, TLS 1.3 suites) nor blacklisted cipher suites. For example we used to re-enable 3DES. Python now defaults to OpenSSL DEFAULT cipher suite selection and black lists all unwanted ciphers. Downstream vendors can override the default cipher list with --with-ssl-default-suites. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-20891: Reenable test_embed.test_bpo20891() (GH-5420)Victor Stinner2018-01-291-3/+0
|
* bpo-28685: Fix compiler warning (GH-5423)Victor Stinner2018-01-291-1/+2
|
* bpo-32706: Skip test_ftplib.test_check_hostname() (#5422)Victor Stinner2018-01-291-0/+1
| | | | | | This test is unstable and currently prevents to make any new change since the test always fails on Travis CI. Skip the test to get more time to fix it.
* bpo-31233, bpo-31151: Document socketserver changes (#5417)Victor Stinner2018-01-292-0/+23
| | | | | socketserver.ForkingMixIn.server_close() and socketserver.ThreadingMixIn.server_close() now waits until all child processes and non-daemonic threads complete.
* bpo-20891: Py_Initialize() now creates the GIL (#4700)Victor Stinner2018-01-294-52/+43
| | | | The GIL is no longer created "on demand" to fix a race condition when PyGILState_Ensure() is called in a non-Python thread.
* bpo-32705: Current Android does not have posix_spawn (#5413)Chih-Hsuan Yen2018-01-291-0/+7
|
* Fix minor markup typo (#5407)cocoatomo2018-01-291-1/+1
|
* bpo-32591: silence deprecation warnings in test_coroutine (GH-5412)Nathaniel J. Smith2018-01-291-10/+20
|
* bpo-23749: Make start-tls tests more stable on win7 buildbot (GH-5409)Yury Selivanov2018-01-291-2/+10
| | | | | | | To mitigate the situation when the buildbot is under load and is unable to send/receive data fast enough: * reduce the size of the payload * set a generous timeout for socket ops
* bpo-32251: Fix docs (#5408)Yury Selivanov2018-01-292-3/+4
|
* bpo-32650: Add an asyncgen pdb test (#5406)Yury Selivanov2018-01-291-0/+60
|