.. 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 Dong-hee 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 '<<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.
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.
