summaryrefslogtreecommitdiffstats
path: root/Lib
Commit message (Collapse)AuthorAgeFilesLines
* bpo-31462: Remove trailing whitespaces. (#3564)Serhiy Storchaka2017-09-1411-41/+41
|
* bpo-31234: Try to fix lock_tests warning (#3557)Victor Stinner2017-09-131-0/+8
| | | | | | | Try to fix the "Warning -- threading_cleanup() failed to cleanup 1 threads" warning in test.lock_tests: wait a little bit longer to give time to the threads to complete. Warning seen on test_thread and test_importlib.
* bpo-28556: Minor updates to typing module (#3550)Ivan Levkivskyi2017-09-132-50/+36
| | | | * Copy changes to typing from upstream repo * Add NEWS entry
* bpo-31234: threading_cleanup() now warns immediately (#3138)Victor Stinner2017-09-131-9/+19
| | | | | | support.threading_cleanup() waits for 1 second before emitting a warning if there are threads running in the background. With this change, it now emits the warning immediately, to be able to catch bugs more easily.
* Update subprocess.communicate() docstring.Joel Schaerer2017-09-131-3/+3
| | | Explicitly state that communicate() closes stdin after writing input to it.
* bpo-31234, socket.create_connection(): Fix ref cycle (#3546)Victor Stinner2017-09-131-0/+2
|
* bpo-31234: Fix dangling thread in test_ftplib (#3544)Victor Stinner2017-09-131-0/+2
| | | Clear also self.server_thread attribute in TestTimeouts.tearDown().
* bpo-31448, test_poplib: Fix ResourceWarning (#3542)Victor Stinner2017-09-131-3/+3
| | | Call POP3.close(), don't close close directly the sock attribute.
* bpo-31234: Fix dangling thread in test_ftp/poplib (#3540)Victor Stinner2017-09-132-1/+12
| | | | Explicitly clear the server attribute in test_ftplib and test_poplib to prevent dangling thread.
* bpo-31233: socketserver.ThreadingMixIn.server_close() (#3523)Victor Stinner2017-09-132-11/+17
| | | | | | | | | socketserver.ThreadingMixIn now keeps a list of non-daemonic threads to wait until all these threads complete in server_close(). Reenable test_logging skipped tests. Fix SocketHandlerTest.tearDown(): close the socket handler before stopping the server, so the server can join threads.
* bpo-30830: logging.config.listen() calls server_close() (#3524)Victor Stinner2017-09-131-1/+1
| | | | | | | | | | The ConfigSocketReceiver.serve_until_stopped() method from logging.config.listen() now calls server_close() (of socketserver.ThreadingTCPServer) rather than closing manually the socket. While this change has no effect yet, it will help to prevent dangling threads once ThreadingTCPServer.server_close() will join spawned threads (bpo-31233).
* bpo-31249: Fix test_concurrent_futures dangling thread (#3521)Victor Stinner2017-09-131-0/+3
| | | | ProcessPoolShutdownTest.test_del_shutdown() now closes the call queue and joins its thread, to prevent leaking a dangling thread.
* bpo-31234: Enhance test_thread.test_forkinthread() (#3516)Victor Stinner2017-09-121-12/+19
| | | | | | | | | | | * test_thread.test_forkinthread() now waits until the thread completes. * Check the status in the test method, not in the thread function * Don't ignore RuntimeError anymore: since the commit 346cbd351ee0dd3ab9cb9f0e4cb625556707877e (bpo-16500, os.register_at_fork(), os.fork() cannot fail anymore with RuntimeError. * Replace 0.01 literal with a new POLL_SLEEP constant * test_forkinthread(): test if os.fork() exists rather than testing the platform.
* bpo-31421: Document how IDLE runs tkinter programs. (#3513)Terry Jan Reedy2017-09-121-10/+30
| | | | IDLE calls tcl/tk update in the background in order to make live interaction and experimentatin with tkinter applications much easier.
* bpo-27099: Finish updating IDLE doc and help text. (#3510)Terry Jan Reedy2017-09-121-16/+7
| | | | As needed for the conversion of extensions to features.
* bpo-31416: Fix assertion failures in case of a bad warnings.filters or ↵Oren Milman2017-09-111-0/+15
| | | | | warnings.defaultaction. (#3496) Patch by Oren Milman.
* bpo-30928: Update idlelib/NEWS.txt to 2017-09-11. (#3503)Terry Jan Reedy2017-09-111-0/+46
|
* bpo-31414: IDLE -- fix tk entry box tests by deleting first. (#3501)Terry Jan Reedy2017-09-111-11/+17
| | | | | Adding to an int entry is not the same as deleting and inserting because int('') will fail.
* test_ssl: Implement timeout in ssl_io_loop() (#3500)Victor Stinner2017-09-111-0/+3
| | | The timeout parameter was not used.
* bpo-31373: remove overly strict float range checks (#3486)Benjamin Peterson2017-09-112-0/+12
| | | | | This undoes a853a8ba7850381d49b284295dd6f0dc491dbe44 except for the pytime.c parts. We want to continue to allow IEEE 754 doubles larger than FLT_MAX to be rounded into finite floats. Tests were added to very this behavior.
* bpo-31411: Prevent raising a SystemError in case warnings.onceregistry is ↵Oren Milman2017-09-111-0/+11
| | | | not a dictionary. (#3485)
* bpo-30781: IDLE: Fix help button on configdialog (#3238)Cheryl Sabella2017-09-111-3/+3
| | | | | This fixes an omission in the ttk conversion patch for this issue, hence no new news. Patch by Cheryl Sabella.
* bpo-27099: IDLE - Convert built-in extensions to regular features (#2494)wohlganger2017-09-1019-252/+428
| | | | | | | | | | | | | | | | | | | | | About 10 IDLE features were implemented as supposedly optional extensions. Their different behavior could be confusing or worse for users and not good for maintenance. Hence the conversion. The main difference for users is that user configurable key bindings for builtin features are now handled uniformly. Now, editing a binding in a keyset only affects its value in the keyset. All bindings are defined together in the system-specific default keysets in config- extensions.def. All custom keysets are saved as a whole in config- extension.cfg. All take effect as soon as one clicks Apply or Ok. The affected events are '<<force-open-completions>>', '<<expand-word>>', '<<force-open-calltip>>', '<<flash-paren>>', '<<format-paragraph>>', '<<run-module>>', '<<check-module>>', and '<<zoom-height>>'. Any (global) customizations made before 3.6.3 will not affect their keyset- specific customization after 3.6.3. and vice versa. Inital patch by Charles Wohlganger, revised by Terry Jan Reedy.
* bpo-28638: Optimize namedtuple() creation time by minimizing use of exec() ↵Raymond Hettinger2017-09-102-99/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#3454) * Working draft without _source * Re-use itemgetter() instances * Speed-up calls to __new__() with a pre-bound tuple.__new__() * Add note regarding string interning * Remove unnecessary create function wrappers * Minor sync-ups with PR-2736. Mostly formatting and f-strings * Bring-in qualname/__module fix-ups from PR-2736 * Formally remove the verbose flag and _source attribute * Restore a test of potentially problematic field names * Restore kwonly_args test but without the verbose option * Adopt Inada's idea to reuse the docstrings for the itemgetters * Neaten-up a bit * Add news blurb * Serhiy pointed-out the need for interning * Jelle noticed as missing f on an f-string * Add whatsnew entry for feature removal * Accede to request for dict literals instead keyword arguments * Leave the method.__module__ attribute pointing the actual location of the code * Improve variable names and add a micro-optimization for an non-public helper function * Simplify by in-lining reuse_itemgetter() * Arrange steps in more logical order * Save docstring in local cache instead of interning
* bpo-29639: change test.support.HOST to "localhost"Gregory P. Smith2017-09-095-35/+46
| | | | | | | | | | test.support.HOST should be "localhost" as it was in the past. See the bpo-29639. Tests that need the IP address should use HOSTv4 (added) or the existing HOSTv6 constant. This changes the definition and fixes tests that needed updating to deal with HOST being the hostname rather than the hardcoded IP address. This is only the first step in addressing https://bugs.python.org/issue29639.
* bpo-26669: Fix nan arg value error in pytime.c (#3085)Han Lee2017-09-081-0/+29
| | | | | | | | | | * Fix #26669 * Modify NaN check function and error message * Fix pytime.c when arg is nan * fix whitespace
* bpo-28182: Expose OpenSSL verification results (#3412)Christian Heimes2017-09-082-1/+24
| | | | | | | | | The SSL module now raises SSLCertVerificationError when OpenSSL fails to verify the peer's certificate. The exception contains more information about the error. Original patch by Chi Hsuan Yen Signed-off-by: Christian Heimes <christian@python.org>
* bpo-29136: Add TLS 1.3 cipher suites and OP_NO_TLSv1_3 (#1363)Christian Heimes2017-09-082-1/+39
| | | | | | | | | | | | | | | | * bpo-29136: Add TLS 1.3 support TLS 1.3 introduces a new, distinct set of cipher suites. The TLS 1.3 cipher suites don't overlap with cipher suites from TLS 1.2 and earlier. Since Python sets its own set of permitted ciphers, TLS 1.3 handshake will fail as soon as OpenSSL 1.1.1 is released. Let's enable the common AES-GCM and ChaCha20 suites. Additionally the flag OP_NO_TLSv1_3 is added. It defaults to 0 (no op) with OpenSSL prior to 1.1.1. This allows applications to opt-out from TLS 1.3 now. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31344: Per-frame control of trace events (GH-3417)Nick Coghlan2017-09-082-5/+53
| | | | | | | | | f_trace_lines: enable/disable line trace events f_trace_opcodes: enable/disable opcode trace events These are intended primarily for testing of the interpreter itself, as they make it much easier to emulate signals arriving at unfortunate times.
* bpo-22635: Update the getstatusoutput docstring. (#3435)Gregory P. Smith2017-09-071-7/+9
| | | | | To match the documentation updates already made. Also renames the local variable used within to match what it actually holds.
* bpo-27340: Use memoryview in SSLSocket.sendall() (#3384)Christian Heimes2017-09-072-5/+16
| | | | | | | | | | | | | | * bpo-27340: Use memoryview in SSLSocket.sendall() SSLSocket.sendall() now uses memoryview to create slices of data. This fix support for all bytes-like object. It is also more efficient and avoids costly copies. Signed-off-by: Christian Heimes <christian@python.org> * Cast view to bytes, fix typo Signed-off-by: Christian Heimes <christian@python.org>
* bpo-30389 Adds detection of VS 2017 to distutils._msvccompiler (#1632)Steve Dower2017-09-072-29/+94
|
* bpo-31370: Remove support for threads-less builds (#3385)Antoine Pitrou2017-09-0781-3387/+2372
| | | | | | * Remove Setup.config * Always define WITH_THREAD for compatibility.
* bpo-30465: Fix lineno and col_offset in fstring AST nodes (#1800)Łukasz Langa2017-09-071-0/+248
| | | For f-string ast nodes, fix the line and columns so that tools such as flake8 can identify them correctly.
* bpo-14191 Add parse_intermixed_args. (#3319)R. David Murray2017-09-072-0/+182
| | | This adds support for parsing a command line where options and positionals are intermixed as is common in many unix commands. This is paul.j3's patch with a few tweaks.
* Remove all mention of Windows IA-64 support (GH-3389)Zachary Ware2017-09-068-47/+7
| | | It was mostly removed long ago.
* bpo-27584: New addition of vSockets to the python socket module (#2489)caavery2017-09-061-0/+107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bpo-27584: New addition of vSockets to the python socket module Support for AF_VSOCK on Linux only * bpo-27584: Fixes for V2 Fixed syntax and naming problems. Fixed #ifdef AF_VSOCK checking Restored original aclocal.m4 * bpo-27584: Fixes for V3 Added checking for fcntl and thread modules. * bpo-27584: Fixes for V4 Fixed white space error * bpo-27584: Fixes for V5 Added back comma in (CID, port). * bpo-27584: Fixes for V6 Added news file. socket.rst now reflects first Linux introduction of AF_VSOCK. Fixed get_cid in test_socket.py. Replaced PyLong_FromLong with PyLong_FromUnsignedLong in socketmodule.c Got rid of extra AF_VSOCK #define. Added sockaddr_vm to sock_addr. * bpo-27584: Fixes for V7 Minor cleanup. * bpo-27584: Fixes for V8 Put back #undef AF_VSOCK as it is necessary when vm_sockets.h is not installed.
* bpo-29505: Add fuzz tests for float(str), int(str), unicode(str) (#2878)Devin Jeanpierre2017-09-061-0/+23
| | | | | | | | | | | | | | | | | | | | | | Add basic fuzz tests for a few common builtin functions. This is an easy place to start, and these functions are probably safe. We'll want to add more fuzz tests later. Lets bootstrap using these. While the fuzz tests are included in CPython and compiled / tested on a very basic level inside CPython itself, the actual fuzzing happens as part of oss-fuzz (https://github.com/google/oss-fuzz). The reason to include the tests in CPython is to make sure that they're maintained as part of the CPython project, especially when (as some eventually will) they use internal implementation details in the test. (This will be necessary sometimes because e.g. the fuzz test should never enter Python's interpreter loop, whereas some APIs only expose themselves publicly as Python functions.) This particular set of changes is part of testing Python's builtins, tracked internally at Google by b/37562550. The _xxtestfuzz module that this change adds need not be shipped with binary distributions of Python.
* bpo-31340: Change to building with MSVC v141 (included with Visual Studio ↵Steve Dower2017-09-061-9/+13
| | | | 2017) (#3311)
* bpo-31178: Avoid concatenating bytes with str in subprocess error (#3066)Ammar Askar2017-09-062-3/+53
| | | Avoid concatenating bytes with str in the typically rare subprocess error path (exec failed). Includes a mock based unittest to exercise the codepath.
* bpo-29781: Fix SSLObject.version before handshake (#3364)Christian Heimes2017-09-061-0/+2
| | | | | | SSLObject.version() now correctly returns None when handshake over BIO has not been performed yet. Signed-off-by: Christian Heimes <christian@python.org>
* Stop test_xmlrpc from writing to sys.stderr (#3359)Christian Heimes2017-09-061-0/+4
| | | | | | | | One test case of test_xmlrpc uses HTTPServer with a subclass of BaseHTTPRequestHandler. The BaseRequestHandler class logs to sys.stderr by default. Override log_message() to not clobber test output. Signed-off-by: Christian Heimes <christian@python.org>
* bpo-31350: Optimize get_event_loop and _get_running_loop (#3347)jimmylai2017-09-061-6/+4
| | | | | | | | | | | | | | | | * call remove_done_callback in finally section * Optimize get_event_loop and _get_running_loop * rename _loop_pid as loop_pid and add blurb news * rename _loop_pid as loop_pid and add blurb news * add back _RunningLoop * Update 2017-09-05-10-30-48.bpo-31350.dXJ-7N.rst * Update 2017-09-05-10-30-48.bpo-31350.dXJ-7N.rst
* bpo-31320: No traceback to sys.stderr in test_ssl (#3360)Christian Heimes2017-09-051-1/+4
| | | | | | | In case PROTOCOL_TLS_SERVER is used for both client context and server context, the test thread dies with OSError. Catch OSError to avoid traceback on sys.stderr Signed-off-by: Christian Heimes <christian@python.org>
* bpo-30662: fixed OrderedDict.__init__ docstring re PEP 468 (#2179)Jonathan Eunice2017-09-051-3/+1
| | | | | | | | | | | | * fixed OrderedDict.__init__ docstring re PEP 468 * tightened comment and mirrored to C impl * added space after period per marco-buttu * preserved substituted for stable * drop references to Python 3.6 and PEP 468
* Conceptually, roots is a set. Also searching it as a set is a tiny bit ↵Raymond Hettinger2017-09-051-1/+1
| | | | faster (#3338)
* Revert "bpo-17852: Maintain a list of BufferedWriter objects. Flush them on ↵Neil Schemenauer2017-09-051-24/+0
| | | | | exit. (#1908)" (#3337) This reverts commit e38d12ed34870c140016bef1e0ff10c8c3d3f213.
* bpo-17852: Maintain a list of BufferedWriter objects. Flush them on exit. ↵Neil Schemenauer2017-09-051-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#1908) * Maintain a list of BufferedWriter objects. Flush them on exit. In Python 3, the buffer and the underlying file object are separate and so the order in which objects are finalized matters. This is unlike Python 2 where the file and buffer were a single object and finalization was done for both at the same time. In Python 3, if the file is finalized and closed before the buffer then the data in the buffer is lost. This change adds a doubly linked list of open file buffers. An atexit hook ensures they are flushed before proceeding with interpreter shutdown. This is addition does not remove the need to properly close files as there are other reasons why buffered data could get lost during finalization. Initial patch by Armin Rigo. * Use weakref.WeakSet instead of WeakKeyDictionary. * Simplify buffered double-linked list types. * In _flush_all_writers(), suppress errors from flush(). * Remove NEWS entry, use blurb.
* Add comment to explain the implications of not sorting keywords (#3331)Raymond Hettinger2017-09-051-0/+4
| | | In Python 3.6, sorted() was removed from _make_key() for the lru_cache and instead rely on guaranteed keyword argument order preservation. This makes keyword argument handling faster but it also causes multiple callers with a different keyword argument order to be cached as separate items. Depending on your point of view, this is either a performance regression (increased number of cache misses) or a performance enhancement (faster computation of keys).
* random_triangular: sqrt() is more accurate than **0.5 (#3317)Raymond Hettinger2017-09-041-1/+1
|