[Python-Dev] 2.3.1

Alex Martelli aleax@aleax.it
Sat, 26 Jul 2003 20:40:35 +0200

On Saturday 26 July 2003 20:25, Kurt B. Kaiser wrote:
> Skip Montanaro <skip@pobox.com> writes:
> > I see nothing wrong with letting this IDLE problem slip through to the
> > 2.3 release with notes in the relevant readme-type documentation.  It's
> > simply been discovered too late to fix in this release given that we
> > are at 2.3c2.

"release candidates" are supposed to help us find critical bugs AND FIX THEM
before final release.  I opine these bugs that we've found ARE critical 
enough, to enough Python would-be-users on the numerically dominating
platform (WIndows), that we should do some minimal effort to fix or at least
clearly indicate them (given that one is a missing diagnosis of a 
user-machine configuration bug, and the other a perfectly acceptable
behavior that some buggy but popular pieces of software misdiagnose
as IDLE trying to connect to the internet...) in places where users will
SEE the indication (download page is good but not quite sufficent IMHO).

> In the interest of at least partially resolving these issues for 2.3
> without major code changes:

Yes, that sounds like what we should be aiming at.

> > Two separate issues:
> >
> > 1. Failure of IDLE to initialize its subprocess doesn't result in a
> >    message visible to the user.
> A message can be displayed to the user if we configure the Windows
> installer to bind the IDLE icon to python.exe instead of pythonw.exe.
> That way a DOS box will open behind IDLE and any messages will be
> visible there.  This is a small patch.

Yes, but the DOS box will be open for EVERY use of IDLE on Windows
including ones without errors -- and it will close when IDLE terminates,
so the messages will disappear.  It seems to me the "fix" for this should
be to use messageboxes rather than print or the like (surely can't be
that much bigger a fix for a program already using Tkinter?).

> > 2. Unnecessary user aggravation (I'm paranoid, too) caused by
> >    personal firewall software complaining about use of the
> >    loopback interface.
> A very restricted change to the code would be add the following
> to the banner printed at the top of the shell when it starts (the
> socket connection isn't made until the shell window opens):
> ***************************************************************
> Personal firewall software may warn about the connection IDLE
> makes to its subprocess using this computer's internal loopback
> interface.  This connection is not visible on any external
> interface and no data is sent to or received from the Internet.
> ***************************************************************
> This involves an addition to PyShell.py:PyShell.begin(), line 873.

Yes, this sounds like a real improvement to me.  Ideally it should
be Windows-only (no reason to display this to users on e.g Linux,
where I don't believe there is any such problem). 

> In addition, the .../idlelib/README.txt would be updated with the
> same message w/o the asterisks.
> These are not the final solutions.  A pop-up for #1, everytime, and a
> pop-up for #2 on first use would be introduced into 2.3.1.  The above
> banner could be retained even after the popup is implemented, though
> I'm -1 on that.

Agree with you -- a first-time-only popup sounds better (but it had
better wait until 2.3.1 as it's substantially more code).

> Comments?

Can you submit the patches?