.. bpo: 29781 .. date: 2017-09-05-15-26-30 .. nonce: LwYtBP .. release date: 2017-09-18 .. section: Security SSLObject.version() now correctly returns None when handshake over BIO has not been performed yet. .. .. bpo: 30947 .. date: 2017-08-16-16-35-59 .. nonce: iNMmm4 .. section: Security Upgrade libexpat embedded copy from version 2.2.1 to 2.2.3 to get security fixes. .. .. bpo: 31471 .. date: 2017-09-14-19-47-57 .. nonce: 0yiA5Q .. section: Core and Builtins Fix an assertion failure in `subprocess.Popen()` on Windows, in case the env argument has a bad keys() method. Patch by Oren Milman. .. .. bpo: 31418 .. date: 2017-09-13-13-03-52 .. nonce: rS-FlC .. section: Core and Builtins Fix an assertion failure in `PyErr_WriteUnraisable()` in case of an exception with a bad ``__module__`` attribute. Patch by Oren Milman. .. .. bpo: 31416 .. date: 2017-09-11-12-54-35 .. nonce: 2hlQFd .. section: Core and Builtins Fix assertion failures in case of a bad warnings.filters or warnings.defaultaction. Patch by Oren Milman. .. .. bpo: 31411 .. date: 2017-09-11-08-50-41 .. nonce: HZz82I .. section: Core and Builtins Raise a TypeError instead of SystemError in case warnings.onceregistry is not a dictionary. Patch by Oren Milman. .. .. bpo: 31373 .. date: 2017-09-06-15-25-59 .. nonce: dC4jd4 .. section: Core and Builtins Fix several possible instances of undefined behavior due to floating-point demotions. .. .. bpo: 30465 .. date: 2017-09-06-10-47-29 .. nonce: oe-3GD .. section: Core and Builtins Location information (``lineno`` and ``col_offset``) in f-strings is now (mostly) correct. This fixes tools like flake8 from showing warnings on the wrong line (typically the first line of the file). .. .. bpo: 31343 .. date: 2017-09-04-14-57-27 .. nonce: Kl_fS5 .. section: Core and Builtins Include sys/sysmacros.h for major(), minor(), and makedev(). GNU C libray plans to remove the functions from sys/types.h. .. .. bpo: 31291 .. date: 2017-08-28-11-51-29 .. nonce: t8QggK .. section: Core and Builtins Fix an assertion failure in `zipimport.zipimporter.get_data` on Windows, when the return value of ``pathname.replace('/','\\')`` isn't a string. Patch by Oren Milman. .. .. bpo: 31271 .. date: 2017-08-25-20-43-22 .. nonce: YMduKF .. section: Core and Builtins Fix an assertion failure in the write() method of `io.TextIOWrapper`, when the encoder doesn't return a bytes object. Patch by Oren Milman. .. .. bpo: 31243 .. date: 2017-08-24-13-34-49 .. nonce: dRJzqR .. section: Core and Builtins Fix a crash in some methods of `io.TextIOWrapper`, when the decoder's state is invalid. Patch by Oren Milman. .. .. bpo: 30721 .. date: 2017-08-18-15-15-20 .. nonce: Hmc56z .. section: Core and Builtins ``print`` now shows correct usage hint for using Python 2 redirection syntax. Patch by Sanyam Khurana. .. .. bpo: 31070 .. date: 2017-08-09-09-40-54 .. nonce: oDyLiI .. section: Core and Builtins Fix a race condition in importlib _get_module_lock(). .. .. bpo: 31095 .. date: 2017-08-01-18-48-30 .. nonce: bXWZDb .. section: Core and Builtins Fix potential crash during GC caused by ``tp_dealloc`` which doesn't call ``PyObject_GC_UnTrack()``. .. .. bpo: 31071 .. date: 2017-07-31-13-28-53 .. nonce: P9UBDy .. section: Core and Builtins Avoid masking original TypeError in call with * unpacking when other arguments are passed. .. .. bpo: 30978 .. date: 2017-07-21-07-39-05 .. nonce: f0jODc .. section: Core and Builtins str.format_map() now passes key lookup exceptions through. Previously any exception was replaced with a KeyError exception. .. .. bpo: 30808 .. date: 2017-07-17-12-12-59 .. nonce: bA3zOv .. section: Core and Builtins Use _Py_atomic API for concurrency-sensitive signal state. .. .. bpo: 30876 .. date: 2017-07-11-06-31-32 .. nonce: x35jZX .. section: Core and Builtins Relative import from unloaded package now reimports the package instead of failing with SystemError. Relative import from non-package now fails with ImportError rather than SystemError. .. .. bpo: 30703 .. date: 2017-06-28-21-07-32 .. nonce: ULCdFp .. section: Core and Builtins Improve signal delivery. Avoid using Py_AddPendingCall from signal handler, to avoid calling signal-unsafe functions. The tests I'm adding here fail without the rest of the patch, on Linux and OS X. This means our signal delivery logic had defects (some signals could be lost). .. .. bpo: 30765 .. date: 2017-06-26-14-29-50 .. nonce: Q5iBmf .. section: Core and Builtins Avoid blocking in pthread_mutex_lock() when PyThread_acquire_lock() is asked not to block. .. .. bpo: 31161 .. date: 06 .. nonce: FcUAA0 .. section: Core and Builtins Make sure the 'Missing parentheses' syntax error message is only applied to SyntaxError, not to subclasses. Patch by Martijn Pieters. .. .. bpo: 30814 .. date: 05 .. nonce: HcYsfM .. section: Core and Builtins Fixed a race condition when import a submodule from a package. .. .. bpo: 30597 .. date: 04 .. nonce: 7erHiP .. section: Core and Builtins ``print`` now shows expected input in custom error message when used as a Python 2 statement. Patch by Sanyam Khurana. .. .. bpo: 31499 .. date: 2017-09-18-10-57-04 .. nonce: BydYhf .. section: Library xml.etree: Fix a crash when a parser is part of a reference cycle. .. .. bpo: 28556 .. date: 2017-09-14-11-02-56 .. nonce: EUOiYs .. section: Library typing.get_type_hints now finds the right globalns for classes and modules by default (when no ``globalns`` was specified by the caller). .. .. bpo: 28556 .. date: 2017-09-13-23-27-39 .. nonce: UmTQvv .. section: Library Speed improvements to the ``typing`` module. Original PRs by Ivan Levkivskyi and Mitar. .. .. bpo: 31544 .. date: 2017-09-13-19-55-35 .. nonce: beTh6t .. section: Library The C accelerator module of ElementTree ignored exceptions raised when looking up TreeBuilder target methods in XMLParser(). .. .. bpo: 31234 .. date: 2017-09-13-18-05-56 .. nonce: lGkcPg .. section: Library socket.create_connection() now fixes manually a reference cycle: clear the variable storing the last exception on success. .. .. bpo: 31457 .. date: 2017-09-13-13-33-39 .. nonce: bIVBtI .. section: Library LoggerAdapter objects can now be nested. .. .. bpo: 31400 .. date: 2017-09-08-14-19-57 .. nonce: YOTPKi .. section: Library Improves SSL error handling to avoid losing error numbers. .. .. bpo: 28958 .. date: 2017-09-06-19-41-01 .. nonce: x4-K5F .. section: Library ssl.SSLContext() now uses OpenSSL error information when a context cannot be instantiated. .. .. bpo: 27340 .. date: 2017-09-06-06-50-41 .. nonce: GgekV5 .. section: Library SSLSocket.sendall() now uses memoryview to create slices of data. This fixes support for all bytes-like object. It is also more efficient and avoids costly copies. .. .. bpo: 31178 .. date: 2017-09-05-14-55-28 .. nonce: JrSFo7 .. section: Library Fix string concatenation bug in rare error path in the subprocess module .. .. bpo: 31350 .. date: 2017-09-05-10-30-48 .. nonce: dXJ-7N .. section: Library Micro-optimize :func:`asyncio._get_running_loop` to become up to 10% faster. .. .. bpo: 31170 .. date: 2017-09-04-23-41-35 .. nonce: QGmJ1t .. section: Library expat: Update libexpat from 2.2.3 to 2.2.4. Fix copying of partial characters for UTF-8 input (libexpat bug 115): https://github.com/libexpat/libexpat/issues/115 .. .. bpo: 29136 .. date: 2017-09-04-16-39-49 .. nonce: vSn1oR .. section: Library Add TLS 1.3 cipher suites and OP_NO_TLSv1_3. .. .. bpo: 29212 .. date: 2017-09-03-14-31-00 .. nonce: bicycl .. section: Library Fix concurrent.futures.thread.ThreadPoolExecutor threads to have a non repr() based thread name by default when no thread_name_prefix is supplied. They will now identify themselves as "ThreadPoolExecutor-y_n". .. .. bpo: 9146 .. date: 2017-09-03-14-10-00 .. nonce: _-oo-_ .. section: Library Fix a segmentation fault in _hashopenssl when standard hash functions such as md5 are not available in the linked OpenSSL library. As in some special FIPS-140 build environments. .. .. bpo: 27144 .. date: 2017-08-30-11-26-14 .. nonce: PEDJsE .. section: Library The ``map()`` and ``as_completed()`` iterators in ``concurrent.futures`` now avoid keeping a reference to yielded objects. .. .. bpo: 10746 .. date: 2017-08-28-13-01-05 .. nonce: nmAvfu .. section: Library Fix ctypes producing wrong :pep:`3118` type codes for integer types. .. .. bpo: 22536 .. date: 2017-08-23 .. nonce: _narf_ .. section: Library The subprocess module now sets the filename when FileNotFoundError is raised on POSIX systems due to the executable or cwd not being found. .. .. bpo: 31249 .. date: 2017-08-22-12-44-48 .. nonce: STPbb9 .. section: Library concurrent.futures: WorkItem.run() used by ThreadPoolExecutor now breaks a reference cycle between an exception object and the WorkItem object. .. .. bpo: 31247 .. date: 2017-08-21-17-50-27 .. nonce: 8S3zJp .. section: Library xmlrpc.server now explicitly breaks reference cycles when using sys.exc_info() in code handling exceptions. .. .. bpo: 30102 .. date: 2017-08-16-21-14-31 .. nonce: 1sPqmc .. section: Library The ssl and hashlib modules now call OPENSSL_add_all_algorithms_noconf() on OpenSSL < 1.1.0. The function detects CPU features and enables optimizations on some CPU architectures such as POWER8. Patch is based on research from Gustavo Serra Scalet. .. .. bpo: 31185 .. date: 2017-08-11-19-30-00 .. nonce: i6TPgL .. section: Library Fixed miscellaneous errors in asyncio speedup module. .. .. bpo: 31135 .. date: 2017-08-08-14-44-37 .. nonce: HH94xR .. section: Library ttk: fix the destroy() method of LabeledScale and OptionMenu classes. Call the parent destroy() method even if the used attribute doesn't exist. The LabeledScale.destroy() method now also explicitly clears label and scale attributes to help the garbage collector to destroy all widgets. .. .. bpo: 31107 .. date: 2017-08-02-12-48-15 .. nonce: 1t2hn5 .. section: Library Fix `copyreg._slotnames()` mangled attribute calculation for classes whose name begins with an underscore. Patch by Shane Harvey. .. .. bpo: 31061 .. date: 2017-08-01-09-32-58 .. nonce: husAYX .. section: Library Fixed a crash when using asyncio and threads. .. .. bpo: 30502 .. date: 2017-07-27-11-33-58 .. nonce: GJlfU8 .. section: Library Fix handling of long oids in ssl. Based on patch by Christian Heimes. .. .. bpo: 30119 .. date: 2017-07-26-15-15-00 .. nonce: DZ6C_S .. section: Library ftplib.FTP.putline() now throws ValueError on commands that contains CR or LF. Patch by Donghee Na. .. .. bpo: 30595 .. date: 2017-07-26-04-46-12 .. nonce: -zJ7d8 .. section: Library multiprocessing.Queue.get() with a timeout now polls its reader in non-blocking mode if it succeeded to acquire the lock but the acquire took longer than the timeout. .. .. bpo: 29403 .. date: 2017-07-20-02-29-49 .. nonce: 3RinCV .. section: Library Fix ``unittest.mock``'s autospec to not fail on method-bound builtin functions. Patch by Aaron Gallagher. .. .. bpo: 30961 .. date: 2017-07-18-23-47-51 .. nonce: 064jz0 .. section: Library Fix decrementing a borrowed reference in tracemalloc. .. .. bpo: 25684 .. date: 2017-07-17-11-35-00 .. nonce: usELVx .. section: Library Change ``ttk.OptionMenu`` radiobuttons to be unique across instances of ``OptionMenu``. .. .. bpo: 30886 .. date: 2017-07-10-12-14-22 .. nonce: nqQj34 .. section: Library Fix multiprocessing.Queue.join_thread(): it now waits until the thread completes, even if the thread was started by the same process which created the queue. .. .. bpo: 29854 .. date: 2017-07-07-02-18-57 .. nonce: J8wKb_ .. section: Library Fix segfault in readline when using readline's history-size option. Patch by Nir Soffer. .. .. bpo: 30319 .. date: 2017-07-04-13-48-21 .. nonce: hg_3TX .. section: Library socket.close() now ignores ECONNRESET error. .. .. bpo: 30828 .. date: 2017-07-04-13-10-52 .. nonce: CLvEvV .. section: Library Fix out of bounds write in `asyncio.CFuture.remove_done_callback()`. .. .. bpo: 30807 .. date: 2017-06-29-22-04-44 .. nonce: sLtjY- .. section: Library signal.setitimer() may disable the timer when passed a tiny value. Tiny values (such as 1e-6) are valid non-zero values for setitimer(), which is specified as taking microsecond-resolution intervals. However, on some platform, our conversion routine could convert 1e-6 into a zero interval, therefore disabling the timer instead of (re-)scheduling it. .. .. bpo: 30441 .. date: 2017-06-29-14-25-14 .. nonce: 3Wh9kc .. section: Library Fix bug when modifying os.environ while iterating over it .. .. bpo: 30532 .. date: 2017-06-26-11-01-59 .. nonce: qTeL1o .. section: Library Fix email header value parser dropping folding white space in certain cases. .. .. bpo: 30879 .. date: 03 .. nonce: N3KI-o .. section: Library os.listdir() and os.scandir() now emit bytes names when called with bytes-like argument. .. .. bpo: 30746 .. date: 02 .. nonce: 7drQI0 .. section: Library Prohibited the '=' character in environment variable names in ``os.putenv()`` and ``os.spawn*()``. .. .. bpo: 29755 .. date: 01 .. nonce: diQcY_ .. section: Library Fixed the lgettext() family of functions in the gettext module. They now always return bytes. .. .. bpo: 31294 .. date: 2017-09-07-20-49-09 .. nonce: WgI18w .. section: Documentation Fix incomplete code snippet in the ZeroMQSocketListener and ZeroMQSocketHandler examples and adapt them to Python 3. .. .. bpo: 21649 .. date: 2017-09-06-10-11-57 .. nonce: EUvqA9 .. section: Documentation Add RFC 7525 and Mozilla server side TLS links to SSL documentation. .. .. bpo: 30803 .. date: 2017-07-29-14-55-50 .. nonce: 6hutqQ .. section: Documentation Clarify doc on truth value testing. Original patch by Peter Thomassen. .. .. bpo: 31320 .. date: 2017-09-05-14-23-35 .. nonce: JRDHx7 .. section: Tests Silence traceback in test_ssl .. .. bpo: 25674 .. date: 2017-09-04-13-03-55 .. nonce: whVTXh .. section: Tests Remove sha256.tbs-internet.com ssl test .. .. bpo: 30715 .. date: 2017-07-25-15-27-44 .. nonce: Sp7bTF .. section: Tests Address ALPN callback changes for OpenSSL 1.1.0f. The latest version behaves like OpenSSL 1.0.2 and no longer aborts handshake. .. .. bpo: 30822 .. date: 2017-07-20-14-29-54 .. nonce: X0wREo .. section: Tests regrtest: Exclude tzdata from regrtest --all. When running the test suite using --use=all / -u all, exclude tzdata since it makes test_datetime too slow (15-20 min on some buildbots) which then times out on some buildbots. Fix also regrtest command line parser to allow passing -u extralargefile to run test_zipfile64. .. .. bpo: 30854 .. date: 2017-07-05-16-54-59 .. nonce: sPADRI .. section: Build Fix compile error when compiling --without-threads. Patch by Masayuki Yamamoto. .. .. bpo: 30389 .. date: 2017-09-06-17-14-54 .. nonce: 9Dizrx .. section: Windows Adds detection of Visual Studio 2017 to distutils on Windows. .. .. bpo: 31340 .. date: 2017-09-04-13-19-05 .. nonce: MbkzLi .. section: Windows Change to building with MSVC v141 (included with Visual Studio 2017) .. .. bpo: 30581 .. date: 2017-08-04-10-05-19 .. nonce: OQhR7l .. section: Windows os.cpu_count() now returns the correct number of processors on Windows when the number of logical processors is greater than 64. .. .. bpo: 30731 .. date: 2017-07-13-11-22-53 .. nonce: nmMDwI .. section: Windows Add a missing xmlns to python.manifest so that it matches the schema. .. .. bpo: 31493 .. date: 2017-09-16-23-43-39 .. nonce: nmHMCR .. section: IDLE IDLE code context -- fix code update and font update timers. Canceling timers prevents a warning message when test_idle completes. .. .. bpo: 31488 .. date: 2017-09-16-01-21-20 .. nonce: 0rtXIT .. section: IDLE IDLE - Update non-key options in former extension classes. When applying configdialog changes, call .reload for each feature class. Change ParenMatch so updated options affect existing instances attached to existing editor windows. .. .. bpo: 31477 .. date: 2017-09-15-12-38-47 .. nonce: n__6sa .. section: IDLE IDLE - Improve rstrip entry in doc. Strip trailing whitespace strips more than blank spaces. Multiline string literals are not skipped. .. .. bpo: 31480 .. date: 2017-09-14-17-53-53 .. nonce: 4WJ0pl .. section: IDLE IDLE - make tests pass with zzdummy extension disabled by default. .. .. bpo: 31421 .. date: 2017-09-12-08-38-27 .. nonce: mYfQNq .. section: IDLE Document how IDLE runs tkinter programs. IDLE calls tcl/tk update in the background in order to make live interaction and experimentation with tkinter applications much easier. .. .. bpo: 31414 .. date: 2017-09-11-15-46-05 .. nonce: wiepgK .. section: IDLE IDLE -- fix tk entry box tests by deleting first. Adding to an int entry is not the same as deleting and inserting because int('') will fail. .. .. bpo: 31051 .. date: 2017-08-30-00-06-58 .. nonce: 50Jp_Q .. section: IDLE Rearrange IDLE configdialog GenPage into Window, Editor, and Help sections. .. .. bpo: 30617 .. date: 2017-08-27-16-49-36 .. nonce: UHnswr .. section: IDLE IDLE - Add docstrings and tests for outwin subclass of editor. Move some data and functions from the class to module level. Patch by Cheryl Sabella. .. .. bpo: 31287 .. date: 2017-08-27-15-31-33 .. nonce: aZERfI .. section: IDLE IDLE - Do not modify tkinter.message in test_configdialog. .. .. bpo: 27099 .. date: 2017-08-24-13-48-16 .. nonce: rENefC .. section: IDLE Convert IDLE's built-in 'extensions' to regular features. 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 '<>', '<>', '<>', '<>', '<>', '<>', '<>', and '<>'. Any (global) customizations made before 3.6.3 will not affect their keyset-specific customization after 3.6.3. and vice versa. Initial patch by Charles Wohlganger. .. .. bpo: 31206 .. date: 2017-08-18-14-13-42 .. nonce: F1-tKK .. section: IDLE IDLE: Factor HighPage(Frame) class from ConfigDialog. Patch by Cheryl Sabella. .. .. bpo: 31001 .. date: 2017-08-17-15-00-20 .. nonce: KLxYHC .. section: IDLE Add tests for configdialog highlight tab. Patch by Cheryl Sabella. .. .. bpo: 31205 .. date: 2017-08-15-12-58-23 .. nonce: iuziZ5 .. section: IDLE IDLE: Factor KeysPage(Frame) class from ConfigDialog. The slightly modified tests continue to pass. Patch by Cheryl Sabella. .. .. bpo: 31130 .. date: 2017-08-07-14-02-56 .. nonce: FbsC7f .. section: IDLE IDLE -- stop leaks in test_configdialog. Initial patch by Victor Stinner. .. .. bpo: 31002 .. date: 2017-08-03-17-54-02 .. nonce: kUSgTE .. section: IDLE Add tests for configdialog keys tab. Patch by Cheryl Sabella. .. .. bpo: 19903 .. date: 2017-08-03-14-08-42 .. nonce: sqE1FS .. section: IDLE IDLE: Calltips use `inspect.signature` instead of `inspect.getfullargspec`. This improves calltips for builtins converted to use Argument Clinic. Patch by Louie Lu. .. .. bpo: 31083 .. date: 2017-07-31-23-20-51 .. nonce: 991FXm .. section: IDLE IDLE - Add an outline of a TabPage class in configdialog. Update existing classes to match outline. Initial patch by Cheryl Sabella. .. .. bpo: 31050 .. date: 2017-07-30-17-39-59 .. nonce: AXR3kP .. section: IDLE Factor GenPage(Frame) class from ConfigDialog. The slightly modified tests continue to pass. Patch by Cheryl Sabella. .. .. bpo: 31004 .. date: 2017-07-30-01-00-58 .. nonce: m8cc1t .. section: IDLE IDLE - Factor FontPage(Frame) class from ConfigDialog. Slightly modified tests continue to pass. Fix General tests. Patch mostly by Cheryl Sabella. .. .. bpo: 30781 .. date: 2017-07-28-18-59-06 .. nonce: ud5m18 .. section: IDLE IDLE - Use ttk widgets in ConfigDialog. Patches by Terry Jan Reedy and Cheryl Sabella. .. .. bpo: 31060 .. date: 2017-07-27-14-48-42 .. nonce: GdY_VY .. section: IDLE IDLE - Finish rearranging methods of ConfigDialog Grouping methods pertaining to each tab and the buttons will aid writing tests and improving the tabs and will enable splitting the groups into classes. .. .. bpo: 30853 .. date: 2017-07-27-10-01-14 .. nonce: enPvvc .. section: IDLE IDLE -- Factor a VarTrace class out of ConfigDialog. Instance tracers manages pairs consisting of a tk variable and a callback function. When tracing is turned on, setting the variable calls the function. Test coverage for the new class is 100%. .. .. bpo: 31003 .. date: 2017-07-25-01-28-35 .. nonce: bYINVH .. section: IDLE IDLE: Add more tests for General tab. .. .. bpo: 30993 .. date: 2017-07-22-18-08-41 .. nonce: 34vJkB .. section: IDLE IDLE - Improve configdialog font page and tests. In configdialog: Document causal pathways in create_font_tab docstring. Simplify some attribute names. Move set_samples calls to var_changed_font (idea from Cheryl Sabella). Move related functions to positions after the create widgets function. In test_configdialog: Fix test_font_set so not order dependent. Fix renamed test_indent_scale so it tests the widget. Adjust tests for movement of set_samples call. Add tests for load functions. Put all font tests in one class and tab indent tests in another. Except for two lines, these tests completely cover the related functions. .. .. bpo: 30981 .. date: 2017-07-21-01-55-14 .. nonce: ZFvQPt .. section: IDLE IDLE -- Add more configdialog font page tests. .. .. bpo: 28523 .. date: 2017-07-21-00-54-52 .. nonce: OPcqYJ .. section: IDLE IDLE: replace 'colour' with 'color' in configdialog. .. .. bpo: 30917 .. date: 2017-07-17-23-35-57 .. nonce: hSiuuO .. section: IDLE Add tests for idlelib.config.IdleConf. Increase coverage from 46% to 96%. Patch by Louie Lu. .. .. bpo: 30934 .. date: 2017-07-15-22-26-57 .. nonce: BanuSB .. section: IDLE Document coverage details for idlelib tests. Add section to idlelib/idle-test/README.txt. Include check that branches are taken both ways. Exclude IDLE-specific code that does not run during unit tests. .. .. bpo: 30913 .. date: 2017-07-13-23-07-33 .. nonce: aezn_e .. section: IDLE IDLE: Document ConfigDialog tk Vars, methods, and widgets in docstrings This will facilitate improving the dialog and splitting up the class. Original patch by Cheryl Sabella. .. .. bpo: 30899 .. date: 2017-07-11-02-26-17 .. nonce: SQmVO8 .. section: IDLE IDLE: Add tests for ConfigParser subclasses in config. Patch by Louie Lu. .. .. bpo: 30881 .. date: 2017-07-11-02-21-42 .. nonce: 4KAq_9 .. section: IDLE IDLE: Add docstrings to browser.py. Patch by Cheryl Sabella. .. .. bpo: 30851 .. date: 2017-07-09-23-53-00 .. nonce: AHXBYa .. section: IDLE IDLE: Remove unused variables in configdialog. One is a duplicate, one is set but cannot be altered by users. Patch by Cheryl Sabella. .. .. bpo: 30870 .. date: 2017-07-08-17-57-04 .. nonce: IcR2pf .. section: IDLE IDLE: In Settings dialog, select font with Up, Down keys as well as mouse. Initial patch by Louie Lu. .. .. bpo: 8231 .. date: 2017-07-07-21-10-55 .. nonce: yEge3L .. section: IDLE IDLE: call config.IdleConf.GetUserCfgDir only once. .. .. bpo: 30779 .. date: 2017-07-07-20-26-37 .. nonce: 8KXEXN .. section: IDLE IDLE: Factor ConfigChanges class from configdialog, put in config; test. * In config, put dump test code in a function; run it and unittest in 'if __name__ == '__main__'. * Add class config.ConfigChanges based on changes_class_v4.py on bpo issue. * Add class test_config.ChangesTest, partly using configdialog_tests_v1.py. * Revise configdialog to use ConfigChanges; see tracker msg297804. * Revise test_configdialog to match configdialog changes. * Remove configdialog functions unused or moved to ConfigChanges. Cheryl Sabella contributed parts of the patch. .. .. bpo: 30777 .. date: 2017-07-04-22-45-46 .. nonce: uxzlMB .. section: IDLE IDLE: configdialog - Add docstrings and fix comments. Patch by Cheryl Sabella. .. .. bpo: 30495 .. date: 2017-06-29-18-23-06 .. nonce: qIWgc4 .. section: IDLE IDLE: Improve textview with docstrings, PEP8 names, and more tests. Patch by Cheryl Sabella. .. .. bpo: 30723 .. date: 2017-06-27-19-05-40 .. nonce: rQh06y .. section: IDLE IDLE: Make several improvements to parenmatch. Add 'parens' style to highlight both opener and closer. Make 'default' style, which is not default, a synonym for 'opener'. Make time-delay work the same with all styles. Add help for config dialog extensions tab, including help for parenmatch. Add new tests. Original patch by Charles Wohlganger. .. .. bpo: 30674 .. date: 2017-06-27-01-40-34 .. nonce: ppK_q8 .. section: IDLE IDLE: add docstrings to grep module. Patch by Cheryl Sabella .. .. bpo: 21519 .. date: 2017-06-27-00-29-56 .. nonce: fTj9T0 .. section: IDLE IDLE's basic custom key entry dialog now detects duplicates properly. Original patch by Saimadhav Heblikar. .. .. bpo: 29910 .. date: 2017-06-26-22-45-27 .. nonce: mqHh7u .. section: IDLE IDLE no longer deletes a character after commenting out a region by a key shortcut. Add ``return 'break'`` for this and other potential conflicts between IDLE and default key bindings. .. .. bpo: 30728 .. date: 2017-06-26-15-47-13 .. nonce: qH4TGL .. section: IDLE Review and change idlelib.configdialog names. Lowercase method and attribute names. Replace 'colour' with 'color', expand overly cryptic names, delete unneeded underscores. Replace ``import *`` with specific imports. Patches by Cheryl Sabella. .. .. bpo: 6739 .. date: 2017-06-26-00-28-59 .. nonce: x5MfhB .. section: IDLE IDLE: Verify user-entered key sequences by trying to bind them with tk. Add tests for all 3 validation functions. Original patch by G Polo. Tests added by Cheryl Sabella. .. .. bpo: 30983 .. date: 2017-08-18-17-19-23 .. nonce: ggGz9z .. section: Tools/Demos gdb integration commands (py-bt, etc.) work on optimized shared builds now, too. :pep:`523` introduced _PyEval_EvalFrameDefault which inlines PyEval_EvalFrameEx on non-debug shared builds. This broke the ability to use py-bt, py-up, and a few other Python-specific gdb integrations. The problem is fixed by only looking for _PyEval_EvalFrameDefault frames in python-gdb.py. Original patch by Bruno "Polaco" Penteado.