- Issue #2466: posixpath.ismount now correctly recognizes mount points which
the user does not have permission to access.
-- Issue #27773: Correct some memory management errors server_hostname in
- _ssl.wrap_socket().
+- Issue #9998: On Linux, ctypes.util.find_library now looks in LD_LIBRARY_PATH
+ for shared libraries.
-- Issue #26750: unittest.mock.create_autospec() now works properly for
- subclasses of property() and other data descriptors.
+- Issue #27573: exit message for code.interact is now configurable.
-- In the curses module, raise an error if window.getstr() or window.instr() is
- passed a negative value.
+- Issue #27930: Improved behaviour of logging.handlers.QueueListener.
+ Thanks to Paulo Andrade and Petr Viktorin for the analysis and patch.
-- Issue #27783: Fix possible usage of uninitialized memory in
- operator.methodcaller.
+- Issue #6766: Distributed reference counting added to multiprocessing
+ to support nesting of shared values / proxy objects.
-- Issue #27774: Fix possible Py_DECREF on unowned object in _sre.
+- Issue #21201: Improves readability of multiprocessing error message. Thanks
+ to Wojciech Walczak for patch.
-- Issue #27760: Fix possible integer overflow in binascii.b2a_qp.
+- asyncio: Add set_protocol / get_protocol to Transports.
-- Issue #27758: Fix possible integer overflow in the _csv module for large
- record lengths.
+- Issue #27456: asyncio: Set TCP_NODELAY by default.
-- Issue #27568: Prevent HTTPoxy attack (CVE-2016-1000110). Ignore the
- HTTP_PROXY variable when REQUEST_METHOD environment is set, which indicates
- that the script is in CGI mode.
++- Issue #27906: Fix socket accept exhaustion during high TCP traffic.
++ Patch by Kevin Conway.
+
-- Issue #27656: Do not assume sched.h defines any SCHED_* constants.
+IDLE
+----
-- Issue #27130: In the "zlib" module, fix handling of large buffers
- (typically 4 GiB) when compressing and decompressing. Previously, inputs
- were limited to 4 GiB, and compression and decompression operations did not
- properly handle results of 4 GiB.
+- Issue #15308: Add 'interrupt execution' (^C) to Shell menu.
+ Patch by Roger Serwy, updated by Bayard Randel.
-- Issue #27533: Release GIL in nt._isdir
+- Issue #27922: Stop IDLE tests from 'flashing' gui widgets on the screen.
-- Issue #17711: Fixed unpickling by the persistent ID with protocol 0.
- Original patch by Alexandre Vassalotti.
+- Issue #27891: Consistently group and sort imports within idlelib modules.
-- Issue #27522: Avoid an unintentional reference cycle in email.feedparser.
+- Issue #17642: add larger font sizes for classroom projection.
-- Issue #26844: Fix error message for imp.find_module() to refer to 'path'
- instead of 'name'. Patch by Lev Maximov.
+- Add version to title of IDLE help window.
-- Issue #23804: Fix SSL zero-length recv() calls to not block and not raise
- an error about unclean EOF.
+- Issue #25564: In section on IDLE -- console differences, mention that
+ using exec means that __builtins__ is defined for each statement.
-- Issue #27466: Change time format returned by http.cookie.time2netscape,
- confirming the netscape cookie format and making it consistent with
- documentation.
+- Issue #27821: Fix 3.6.0a3 regression that prevented custom key sets
+ from being selected when no custom theme was defined.
-- Issue #26664: Fix activate.fish by removing mis-use of ``$``.
+C API
+-----
-- Issue #22115: Fixed tracing Tkinter variables: trace_vdelete() with wrong
- mode no longer break tracing, trace_vinfo() now always returns a list of
- pairs of strings, tracing in the "u" mode now works.
+- Issue #26900: Excluded underscored names and other private API from limited API.
-- Fix a scoping issue in importlib.util.LazyLoader which triggered an
- UnboundLocalError when lazy-loading a module that was already put into
- sys.modules.
+- Issue #26027: Add support for path-like objects in PyUnicode_FSConverter() &
+ PyUnicode_FSDecoder().
-- Issue #27079: Fixed curses.ascii functions isblank(), iscntrl() and ispunct().
+Tests
+-----
-- Issue #26754: Some functions (compile() etc) accepted a filename argument
- encoded as an iterable of integers. Now only strings and byte-like objects
- are accepted.
+- Issue #27427: Additional tests for the math module. Patch by Francisco Couzo.
-- Issue #27048: Prevents distutils failing on Windows when environment
- variables contain non-ASCII characters
+- Issue #27953: Skip math and cmath tests that fail on OS X 10.4 due to a
+ poor libm implementation of tan.
-- Issue #27330: Fixed possible leaks in the ctypes module.
+- Issue #26040: Improve test_math and test_cmath coverage and rigour. Patch by
+ Jeff Allen.
-- Issue #27238: Got rid of bare excepts in the turtle module. Original patch
- by Jelle Zijlstra.
+- Issue #27787: Call gc.collect() before checking each test for "dangling
+ threads", since the dangling threads are weak references.
-- Issue #27122: When an exception is raised within the context being managed
- by a contextlib.ExitStack() and one of the exit stack generators
- catches and raises it in a chain, do not re-raise the original exception
- when exiting, let the new chained one through. This avoids the PEP 479
- bug described in issue25782.
+Build
+-----
-- [Security] Issue #27278: Fix os.urandom() implementation using getrandom() on
- Linux. Truncate size to INT_MAX and loop until we collected enough random
- bytes, instead of casting a directly Py_ssize_t to int.
+- Issue #27566: Fix clean target in freeze makefile (patch by Lisa Roach)
-- Issue #26386: Fixed ttk.TreeView selection operations with item id's
- containing spaces.
+- Issue #27705: Update message in validate_ucrtbase.py
-- [Security] Issue #22636: Avoid shell injection problems with
- ctypes.util.find_library().
+- Issue #27976: Deprecate building _ctypes with the bundled copy of libffi on
+ non-OSX UNIX platforms.
-- Issue #16182: Fix various functions in the "readline" module to use the
- locale encoding, and fix get_begidx() and get_endidx() to return code point
- indexes.
+- Issue #27983: Cause lack of llvm-profdata tool when using clang as
+ required for PGO linking to be a configure time error rather than
+ make time when --with-optimizations is enabled. Also improve our
+ ability to find the llvm-profdata tool on MacOS and some Linuxes.
-- Issue #26930: Update Windows builds to use OpenSSL 1.0.2h.
+- Issue #21590: Support for DTrace and SystemTap probes.
-- Issue #27392: Add loop.connect_accepted_socket().
- Patch by Jim Fulton.
+- Issue #26307: The profile-opt build now applys PGO to the built-in modules.
-- Issue #27930: Improved behaviour of logging.handlers.QueueListener.
- Thanks to Paulo Andrade and Petr Viktorin for the analysis and patch.
+- Issue #26539: Add the --with-optimizations flag to turn on LTO and PGO build
+ support when available.
-- Issue #21201: Improves readability of multiprocessing error message. Thanks
- to Wojciech Walczak for patch.
+- Issue #27917: Set platform triplets for Android builds.
-- Issue #27456: asyncio: Set TCP_NODELAY by default.
+- Issue #25825: Update references to the $(LIBPL) installation path on AIX.
+ This path was changed in 3.2a4.
-- Issue #27906: Fix socket accept exhaustion during high TCP traffic.
- Patch by Kevin Conway.
+- Update OS X installer to use SQLite 3.14.1 and XZ 5.2.2.
-IDLE
-----
+- Issue #21122: Fix LTO builds on OS X.
-- Issue #27922: Stop IDLE tests from 'flashing' gui widgets on the screen.
+- Issue #17128: Build OS X installer with a private copy of OpenSSL.
+ Also provide a sample Install Certificates command script to install a
+ set of root certificates from the third-party certifi module.
-- Add version to title of IDLE help window.
+Tools/Demos
+-----------
-- Issue #25564: In section on IDLE -- console differences, mention that
- using exec means that __builtins__ is defined for each statement.
+- Issue #27952: Get Tools/scripts/fixcid.py working with Python 3 and the
+ current "re" module, avoid invalid Python backslash escapes, and fix a bug
+ parsing escaped C quote signs.
-- Issue #27714: text_textview and test_autocomplete now pass when re-run
- in the same process. This occurs when test_idle fails when run with the
- -w option but without -jn. Fix warning from test_config.
+Windows
+-------
-- Issue #25507: IDLE no longer runs buggy code because of its tkinter imports.
- Users must include the same imports required to run directly in Python.
+- Issue #28065: Update xz dependency to 5.2.2 and build it from source.
-- Issue #27452: add line counter and crc to IDLE configHandler test dump.
+- Issue #25144: Ensures TargetDir is set before continuing with custom
+ install.
-- Issue #27365: Allow non-ascii chars in IDLE NEWS.txt, for contributor names.
+- Issue #1602: Windows console doesn't input or print Unicode (PEP 528)
-- Issue #27245: IDLE: Cleanly delete custom themes and key bindings.
- Previously, when IDLE was started from a console or by import, a cascade
- of warnings was emitted. Patch by Serhiy Storchaka.
+- Issue #27781: Change file system encoding on Windows to UTF-8 (PEP 529)
-C API
------
+- Issue #27731: Opt-out of MAX_PATH on Windows 10
-- Issue #26754: PyUnicode_FSDecoder() accepted a filename argument encoded as
- an iterable of integers. Now only strings and bytes-like objects are accepted.
+- Issue #6135: Adds encoding and errors parameters to subprocess.
-Tests
------
+- Issue #27959: Adds oem encoding, alias ansi to mbcs, move aliasmbcs to
+ codec lookup.
-- Issue #27787: Call gc.collect() before checking each test for "dangling
- threads", since the dangling threads are weak references.
+- Issue #27982: The functions of the winsound module now accept keyword
+ arguments.
-- Issue #27369: In test_pyexpat, avoid testing an error message detail that
- changed in Expat 2.2.0.
+- Issue #20366: Build full text search support into SQLite on Windows.
-Tools/Demos
------------
+- Issue #27756: Adds new icons for Python files and processes on Windows.
+ Designs by Cherry Wang.
-- Issue #27952: Get Tools/scripts/fixcid.py working with Python 3 and the
- current "re" module, avoid invalid Python backslash escapes, and fix a bug
- parsing escaped C quote signs.
+- Issue #27883: Update sqlite to 3.14.1.0 on Windows.
-- Issue #27332: Fixed the type of the first argument of module-level functions
- generated by Argument Clinic. Patch by Petr Viktorin.
-- Issue #27418: Fixed Tools/importbench/importbench.py.
+What's New in Python 3.6.0 alpha 4
+==================================
-Windows
--------
+*Release date: 2016-08-15*
-- Issue #25144: Ensures TargetDir is set before continuing with custom
- install.
+Core and Builtins
+-----------------
-- Issue #27469: Adds a shell extension to the launcher so that drag and drop
- works correctly.
+- Issue #27704: Optimized creating bytes and bytearray from byte-like objects
+ and iterables. Speed up to 3 times for short objects. Original patch by
+ Naoki Inada.
-- Issue #27309: Enabled proper Windows styles in python[w].exe manifest.
+- Issue #26823: Large sections of repeated lines in tracebacks are now
+ abbreviated as "[Previous line repeated {count} more times]" by the builtin
+ traceback rendering. Patch by Emanuel Barry.
-Build
------
+- Issue #27574: Decreased an overhead of parsing keyword arguments in functions
+ implemented with using Argument Clinic.
+
+- Issue #22557: Now importing already imported modules is up to 2.5 times
+ faster.
+
+- Issue #17596: Include <wincrypt.h> to help with Min GW building.
+
+- Issue #17599: On Windows, rename the privately defined REPARSE_DATA_BUFFER
+ structure to avoid conflicting with the definition from Min GW.
+
+- Issue #27507: Add integer overflow check in bytearray.extend(). Patch by
+ Xiang Zhang.
+
+- Issue #27581: Don't rely on wrapping for overflow check in
+ PySequence_Tuple(). Patch by Xiang Zhang.
+
+- Issue #1621: Avoid signed integer overflow in list and tuple operations.
+ Patch by Xiang Zhang.
+
+- Issue #27419: Standard __import__() no longer look up "__import__" in globals
+ or builtins for importing submodules or "from import". Fixed a crash if
+ raise a warning about unabling to resolve package from __spec__ or
+ __package__.
+
+- Issue #27083: Respect the PYTHONCASEOK environment variable under Windows.
+
+- Issue #27514: Make having too many statically nested blocks a SyntaxError
+ instead of SystemError.
+
+- Issue #27366: Implemented PEP 487 (Simpler customization of class creation).
+ Upon subclassing, the __init_subclass__ classmethod is called on the base
+ class. Descriptors are initialized with __set_name__ after class creation.
+
+Library
+-------
+
+- Issue #26027, #27524: Add PEP 519/__fspath__() support to the os and os.path
+ modules. Includes code from Jelle Zijlstra.
+
+- Issue #27598: Add Collections to collections.abc.
+ Patch by Ivan Levkivskyi, docs by Neil Girdhar.
+
+- Issue #25958: Support "anti-registration" of special methods from
+ various ABCs, like __hash__, __iter__ or __len__. All these (and
+ several more) can be set to None in an implementation class and the
+ behavior will be as if the method is not defined at all.
+ (Previously, this mechanism existed only for __hash__, to make
+ mutable classes unhashable.) Code contributed by Andrew Barnert and
+ Ivan Levkivskyi.
+
+- Issue #16764: Support keyword arguments to zlib.decompress(). Patch by
+ Xiang Zhang.
+
+- Issue #27736: Prevent segfault after interpreter re-initialization due
+ to ref count problem introduced in code for Issue #27038 in 3.6.0a3.
+ Patch by Xiang Zhang.
+
+- Issue #25628: The *verbose* and *rename* parameters for
+ collections.namedtuple are now keyword-only.
+
+- Issue #12345: Add mathematical constant tau to math and cmath. See also
+ PEP 628.
+
+- Issue #26823: traceback.StackSummary.format now abbreviates large sections of
+ repeated lines as "[Previous line repeated {count} more times]" (this change
+ then further affects other traceback display operations in the module). Patch
+ by Emanuel Barry.
+
+- Issue #27664: Add to concurrent.futures.thread.ThreadPoolExecutor()
+ the ability to specify a thread name prefix.
+
+- Issue #27181: Add geometric_mean and harmonic_mean to statistics module.
+
+- Issue #27573: code.interact now prints an message when exiting.
+
+- Issue #6422: Add autorange method to timeit.Timer objects.
+
+- Issue #27773: Correct some memory management errors server_hostname in
+ _ssl.wrap_socket().
+
+- Issue #26750: unittest.mock.create_autospec() now works properly for
+ subclasses of property() and other data descriptors. Removes the never
+ publicly used, never documented unittest.mock.DescriptorTypes tuple.
+
+- Issue #26754: Undocumented support of general bytes-like objects
+ as path in compile() and similar functions is now deprecated.
+
+- Issue #26800: Undocumented support of general bytes-like objects
+ as paths in os functions is now deprecated.
+
+- Issue #26981: Add _order_ compatibility shim to enum.Enum for
+ Python 2/3 code bases.
+
+- Issue #27661: Added tzinfo keyword argument to datetime.combine.
+
+- In the curses module, raise an error if window.getstr() or window.instr() is
+ passed a negative value.
+
+- Issue #27783: Fix possible usage of uninitialized memory in
+ operator.methodcaller.
+
+- Issue #27774: Fix possible Py_DECREF on unowned object in _sre.
+
+- Issue #27760: Fix possible integer overflow in binascii.b2a_qp.
+
+- Issue #27758: Fix possible integer overflow in the _csv module for large
+ record lengths.
+
+- Issue #27568: Prevent HTTPoxy attack (CVE-2016-1000110). Ignore the
+ HTTP_PROXY variable when REQUEST_METHOD environment is set, which indicates
+ that the script is in CGI mode.
+
+- Issue #7063: Remove dead code from the "array" module's slice handling.
+ Patch by Chuck.
+
+- Issue #27656: Do not assume sched.h defines any SCHED_* constants.
+
+- Issue #27130: In the "zlib" module, fix handling of large buffers
+ (typically 4 GiB) when compressing and decompressing. Previously, inputs
+ were limited to 4 GiB, and compression and decompression operations did not
+ properly handle results of 4 GiB.
+
+- Issue #24773: Implemented PEP 495 (Local Time Disambiguation).
+
+- Expose the EPOLLEXCLUSIVE constant (when it is defined) in the select module.
+
+- Issue #27567: Expose the EPOLLRDHUP and POLLRDHUP constants in the select
+ module.
+
+- Issue #1621: Avoid signed int negation overflow in the "audioop" module.
+
+- Issue #27533: Release GIL in nt._isdir
+
+- Issue #17711: Fixed unpickling by the persistent ID with protocol 0.
+ Original patch by Alexandre Vassalotti.
+
+- Issue #27522: Avoid an unintentional reference cycle in email.feedparser.
+
+- Issue #27512: Fix a segfault when os.fspath() called an __fspath__() method
+ that raised an exception. Patch by Xiang Zhang.
+
+IDLE
+----
+
+- Issue #27714: text_textview and test_autocomplete now pass when re-run
+ in the same process. This occurs when test_idle fails when run with the
+ -w option but without -jn. Fix warning from test_config.
+
+- Issue #27621: Put query response validation error messages in the query
+ box itself instead of in a separate massagebox. Redo tests to match.
+ Add Mac OSX refinements. Original patch by Mark Roseman.
+
+- Issue #27620: Escape key now closes Query box as cancelled.
+
+- Issue #27609: IDLE: tab after initial whitespace should tab, not
+ autocomplete. This fixes problem with writing docstrings at least
+ twice indented.
+
+- Issue #27609: Explicitly return None when there are also non-None
+ returns. In a few cases, reverse a condition and eliminate a return.
+
+- Issue #25507: IDLE no longer runs buggy code because of its tkinter imports.
+ Users must include the same imports required to run directly in Python.
+
+- Issue #27173: Add 'IDLE Modern Unix' to the built-in key sets.
+ Make the default key set depend on the platform.
+ Add tests for the changes to the config module.
+
+- Issue #27452: add line counter and crc to IDLE configHandler test dump.
+
+Tests
+-----
+
+- Issue #25805: Skip a test in test_pkgutil as needed that doesn't work when
+ ``__name__ == __main__``. Patch by SilentGhost.
+
+- Issue #27472: Add test.support.unix_shell as the path to the default shell.
+
+- Issue #27369: In test_pyexpat, avoid testing an error message detail that
+ changed in Expat 2.2.0.
+
+- Issue #27594: Prevent assertion error when running test_ast with coverage
+ enabled: ensure code object has a valid first line number.
+ Patch suggested by Ivan Levkivskyi.
+
+Windows
+-------
+
+- Issue #27647: Update bundled Tcl/Tk to 8.6.6.
+
+- Issue #27610: Adds PEP 514 metadata to Windows installer
+
+- Issue #27469: Adds a shell extension to the launcher so that drag and drop
+ works correctly.
+
+- Issue #27309: Enables proper Windows styles in python[w].exe manifest.
+
+Build
+-----
+
+- Issue #27713: Suppress spurious build warnings when updating importlib's
+ bootstrap files. Patch by Xiang Zhang
+
+- Issue #25825: Correct the references to Modules/python.exp, which is
+ required on AIX. The references were accidentally changed in 3.5.0a1.
+
+- Issue #27453: CPP invocation in configure must use CPPFLAGS. Patch by
+ Chi Hsuan Yen.
+
+- Issue #27641: The configure script now inserts comments into the makefile
+ to prevent the pgen and _freeze_importlib executables from being cross-
+ compiled.
+
+- Issue #26662: Set PYTHON_FOR_GEN in configure as the Python program to be
+ used for file generation during the build.
+
+- Issue #10910: Avoid C++ compilation errors on FreeBSD and OS X.
+ Also update FreedBSD version checks for the original ctype UTF-8 workaround.
+
+What's New in Python 3.6.0 alpha 3
+==================================
+
+*Release date: 2016-07-11*
+
+Core and Builtins
+-----------------
+
+- Issue #27473: Fixed possible integer overflow in bytes and bytearray
+ concatenations. Patch by Xiang Zhang.
+
+- Issue #23034: The output of a special Python build with defined COUNT_ALLOCS,
+ SHOW_ALLOC_COUNT or SHOW_TRACK_COUNT macros is now off by default. It can
+ be re-enabled using the "-X showalloccount" option. It now outputs to stderr
+ instead of stdout.
+
+- Issue #27443: __length_hint__() of bytearray iterators no longer return a
+ negative integer for a resized bytearray.
+
+- Issue #27007: The fromhex() class methods of bytes and bytearray subclasses
+ now return an instance of corresponding subclass.
+
+Library
+-------
+
+- Issue #26844: Fix error message for imp.find_module() to refer to 'path'
+ instead of 'name'. Patch by Lev Maximov.
+
+- Issue #23804: Fix SSL zero-length recv() calls to not block and not raise
+ an error about unclean EOF.
+
+- Issue #27466: Change time format returned by http.cookie.time2netscape,
+ confirming the netscape cookie format and making it consistent with
+ documentation.
+
+- Issue #21708: Deprecated dbm.dumb behavior that differs from common dbm
+ behavior: creating a database in 'r' and 'w' modes and modifying a database
+ in 'r' mode.
+
+- Issue #26721: Change the socketserver.StreamRequestHandler.wfile attribute
+ to implement BufferedIOBase. In particular, the write() method no longer
+ does partial writes.
+
+- Issue #22115: Added methods trace_add, trace_remove and trace_info in the
+ tkinter.Variable class. They replace old methods trace_variable, trace,
+ trace_vdelete and trace_vinfo that use obsolete Tcl commands and might
+ not work in future versions of Tcl. Fixed old tracing methods:
+ trace_vdelete() with wrong mode no longer break tracing, trace_vinfo() now
+ always returns a list of pairs of strings, tracing in the "u" mode now works.
+
+- Issue #26243: Only the level argument to zlib.compress() is keyword argument
+ now. The first argument is positional-only.
+
+- Issue #27038: Expose the DirEntry type as os.DirEntry. Code patch by
+ Jelle Zijlstra.
+
+- Issue #27186: Update os.fspath()/PyOS_FSPath() to check the return value of
+ __fspath__() to be either str or bytes.
+
+- Issue #18726: All optional parameters of the dump(), dumps(),
+ load() and loads() functions and JSONEncoder and JSONDecoder class
+ constructors in the json module are now keyword-only.
+
+- Issue #27319: Methods selection_set(), selection_add(), selection_remove()
+ and selection_toggle() of ttk.TreeView now allow passing multiple items as
+ multiple arguments instead of passing them as a tuple. Deprecated
+ undocumented ability of calling the selection() method with arguments.
+
+- Issue #27079: Fixed curses.ascii functions isblank(), iscntrl() and ispunct().
+
+- Issue #27294: Numerical state in the repr for Tkinter event objects is now
+ represented as a combination of known flags.
+
+- Issue #27177: Match objects in the re module now support index-like objects
+ as group indices. Based on patches by Jeroen Demeyer and Xiang Zhang.
+
+- Issue #26754: Some functions (compile() etc) accepted a filename argument
+ encoded as an iterable of integers. Now only strings and byte-like objects
+ are accepted.
+
+- Issue #26536: socket.ioctl now supports SIO_LOOPBACK_FAST_PATH. Patch by
+ Daniel Stokes.
+
+- Issue #27048: Prevents distutils failing on Windows when environment
+ variables contain non-ASCII characters
+
+- Issue #27330: Fixed possible leaks in the ctypes module.
+
+- Issue #27238: Got rid of bare excepts in the turtle module. Original patch
+ by Jelle Zijlstra.
+
+- Issue #27122: When an exception is raised within the context being managed
+ by a contextlib.ExitStack() and one of the exit stack generators
+ catches and raises it in a chain, do not re-raise the original exception
+ when exiting, let the new chained one through. This avoids the PEP 479
+ bug described in issue25782.
+
+- [Security] Issue #27278: Fix os.urandom() implementation using getrandom() on
+ Linux. Truncate size to INT_MAX and loop until we collected enough random
+ bytes, instead of casting a directly Py_ssize_t to int.
+
+- Issue #16864: sqlite3.Cursor.lastrowid now supports REPLACE statement.
+ Initial patch by Alex LordThorsen.
+
+- Issue #26386: Fixed ttk.TreeView selection operations with item id's
+ containing spaces.
+
+- Issue #8637: Honor a pager set by the env var MANPAGER (in preference to
+ one set by the env var PAGER).
+
+- [Security] Issue #22636: Avoid shell injection problems with
+ ctypes.util.find_library().
+
+- Issue #16182: Fix various functions in the "readline" module to use the
+ locale encoding, and fix get_begidx() and get_endidx() to return code point
+ indexes.
+
+- Issue #27392: Add loop.connect_accepted_socket().
+ Patch by Jim Fulton.
+
+IDLE
+----
+
+- Issue #27477: IDLE search dialogs now use ttk widgets.
+
+- Issue #27173: Add 'IDLE Modern Unix' to the built-in key sets.
+ Make the default key set depend on the platform.
+ Add tests for the changes to the config module.
+
+- Issue #27452: make command line "idle-test> python test_help.py" work.
+ __file__ is relative when python is started in the file's directory.
+
+- Issue #27452: add line counter and crc to IDLE configHandler test dump.
+
+- Issue #27380: IDLE: add query.py with base Query dialog and ttk widgets.
+ Module had subclasses SectionName, ModuleName, and HelpSource, which are
+ used to get information from users by configdialog and file =>Load Module.
+ Each subclass has itw own validity checks. Using ModuleName allows users
+ to edit bad module names instead of starting over.
+ Add tests and delete the two files combined into the new one.
+
+- Issue #27372: Test_idle no longer changes the locale.
+
+- Issue #27365: Allow non-ascii chars in IDLE NEWS.txt, for contributor names.
+
+- Issue #27245: IDLE: Cleanly delete custom themes and key bindings.
+ Previously, when IDLE was started from a console or by import, a cascade
+ of warnings was emitted. Patch by Serhiy Storchaka.
+
+- Issue #24137: Run IDLE, test_idle, and htest with tkinter default root
+ disabled. Fix code and tests that fail with this restriction. Fix htests to
+ not create a second and redundant root and mainloop.
+
+- Issue #27310: Fix IDLE.app failure to launch on OS X due to vestigial import.
+
+C API
+-----
+
+- Issue #26754: PyUnicode_FSDecoder() accepted a filename argument encoded as
+ an iterable of integers. Now only strings and byte-like objects are accepted.
+
+Build
+-----
- Issue #28066: Fix the logic that searches build directories for generated
include files when building outside the source tree.