[Python-Dev] OS X 10.9 Mavericks -> 2.7.6/3.3.3 updates needed
Ned Deily
nad at acm.org
Thu Oct 24 11:11:46 CEST 2013
On Tuesday, Apple released OS X 10.9 (a.k.a. Mavericks). There has already
been a lot of interest in it, in part because Apple has made it available for
free and has made it easy for users with 10.8, 10.7, and (most) 10.6 systems
to upgrade directly to 10.9. Unfortunately, there are issues with our current
maintenance releases (3.3.2 and 2.7.5) on OS X 10.9 that call for new
maintenance releases as soon as possible.
One is critical in that it causes the interpreter to crash when running in
interactive mode (http://bugs.python.org/issue18458). The problem was due to
a long-standing compatibility issue in libedit's readline compatibility layer
that upstream has finally fixed and Apple has now shipped in 10.9. Because
the python.org installers dynamically link to libedit, the original workaround
in readline.c for the original design flaw in history indexing now causes a
segfault on 10.9 when the user types in the second command interactively. Not
good. Ronald devised a fix that allows readline.so at runtime to detect and
work with either version of libedit so that we continue to have binary
compatibility across multiple OS X releases. That fix is already out in the
3.4.0 alphas and backported to the 3.3 and 2.7 branches, awaiting release
there. Just in the last 12 hours, there have been at least four duplicates of
the issue reported by users. I've updated the original issue to explicitly
mention 10.9, now that it is no longer under NDA, and to provide a
downloadable script for inexperienced users to workaround the problem by
"removing" readline.so. Presumably, as word gets out, there will be fewer
duplicate issues opened but the impact will remain.
The only other major 10.9-related issue that I'm aware of at the moment is one
with the OS X native Tk (of course!) that can affect IDLE and other Tkinter
applications. See http://bugs.python.org/issue19373 for details. The
workaround for it is to run Tk in 32-bit mode. I've "engaged" the Tk project
in the problem. Since it can affect all users of Tk, and not just Python
ones, I'm hopeful that there will be a fix soon. Note that, for 3.4.0, we are
now packaging a private copy of Tcl/Tk with the 10.6+ OS X installer to avoid
the chronic problems caused by Apple not updating the buggy system Tcl/Tk and
forcing users to download and install a third-party Tcl/Tk just to be able to
use IDLE. With the concurrence of the release managers, I am in the process
of backporting that packaging support into 3.3 and 2.7. That means any Tk fix
will likely require an update to those private copies.
Because of the criticality of the readline issue, we really need to get 2.7.6
and 3.3.3 out as soon as practical. Besides the Tk packaging, there are a few
other 10.9 build-related issues that should go into these releases. I expect
to complete testing across all releases and have everything checked-in
sometime this weekend. I don't think we should wait for the Issue19373 Tk fix
if it isn't available when everything else is. If necessary, we can later
re-release the OS X installers with just the updated Tcl/Tk shared libraries.
I don't know where any other potential 2.7.6 or 3.3.3 issues stand at this
point. But I'd like Benjamin and Georg to propose an aggressive schedule so
we can get these fixes out there.
--
Ned Deily,
nad at acm.org
More information about the Python-Dev
mailing list