From: Terry Jan Reedy
Date: Wed, 31 Mar 2021 05:19:38 +0000 (-0400)
Subject: bpo-42225: IDLE - document two unix-related problems. (#25078)
X-Git-Tag: v3.10.0a7~49
X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1b4a9c7956d5dc64f8002f62bf0faae2d1892f90;p=thirdparty%2FPython%2Fcpython.git
bpo-42225: IDLE - document two unix-related problems. (#25078)
1. Bad IP masquerade rules can prevent startup.
2. X cannot handle some complex colored chars.
---
diff --git a/Doc/library/idle.rst b/Doc/library/idle.rst
index 2b9bd4b5daaa..6ef15653eacb 100644
--- a/Doc/library/idle.rst
+++ b/Doc/library/idle.rst
@@ -670,8 +670,16 @@ IDLE uses a socket to communicate between the IDLE GUI process and the user
code execution process. A connection must be established whenever the Shell
starts or restarts. (The latter is indicated by a divider line that says
'RESTART'). If the user process fails to connect to the GUI process, it
-displays a ``Tk`` error box with a 'cannot connect' message that directs the
-user here. It then exits.
+usually displays a ``Tk`` error box with a 'cannot connect' message
+that directs the user here. It then exits.
+
+One specific connection failure on Unix systems results from
+misconfigured masquerading rules somewhere in a system's network setup.
+When IDLE is started from a terminal, one will see a message starting
+with ``** Invalid host:``.
+The valid value is ``127.0.0.1 (idlelib.rpc.LOCALHOST)``.
+One can diagnose with ``tcpconnect -irv 127.0.0.1 6543`` in one
+terminal window and ``tcplisten `` in another.
A common cause of failure is a user-written file with the same name as a
standard library module, such as *random.py* and *tkinter.py*. When such a
@@ -709,6 +717,13 @@ If IDLE quits with no message, and it was not started from a console, try
starting it from a console or terminal (``python -m idlelib``) and see if
this results in an error message.
+On Unix-based systems with tcl/tk older than ``8.6.11`` (see
+``About IDLE``) certain characters of certain fonts can cause
+a tk failure with a message to the terminal. This can happen either
+if one starts IDLE to edit a file with such a character or later
+when entering such a character. If one cannot upgrade tcl/tk,
+then re-configure IDLE to use a font that works better.
+
Running user code
^^^^^^^^^^^^^^^^^
diff --git a/Lib/idlelib/help.html b/Lib/idlelib/help.html
index 924042d25b7b..e80384b77752 100644
--- a/Lib/idlelib/help.html
+++ b/Lib/idlelib/help.html
@@ -5,7 +5,7 @@
- IDLE — Python 3.10.0a5 documentation
+ IDLE — Python 3.10.0a6 documentation
@@ -18,7 +18,7 @@
@@ -71,7 +71,7 @@
code execution process. A connection must be established whenever the Shell
starts or restarts. (The latter is indicated by a divider line that says
âRESTARTâ). If the user process fails to connect to the GUI process, it
-displays a Tk error box with a âcannot connectâ message that directs the
-user here. It then exits.
+usually displays a Tk error box with a âcannot connectâ message
+that directs the user here. It then exits.
+
One specific connection failure on Unix systems results from
+misconfigured masquerading rules somewhere in a systemâs network setup.
+When IDLE is started from a terminal, one will see a message starting
+with **Invalidhost:.
+The valid value is 127.0.0.1(idlelib.rpc.LOCALHOST).
+One can diagnose with tcpconnect-irv127.0.0.16543 in one
+terminal window and tcplisten<sameargs> in another.
A common cause of failure is a user-written file with the same name as a
standard library module, such as random.py and tkinter.py. When such a
file is located in the same directory as a file that is about to be run,
@@ -664,6 +671,12 @@ with the settings dialog.
If IDLE quits with no message, and it was not started from a console, try
starting it from a console or terminal (python-midlelib) and see if
this results in an error message.
+
On Unix-based systems with tcl/tk older than 8.6.11 (see
+AboutIDLE) certain characters of certain fonts can cause
+a tk failure with a message to the terminal. This can happen either
+if one starts IDLE to edit a file with such a character or later
+when entering such a character. If one cannot upgrade tcl/tk,
+then re-configure IDLE to use a font that works better.
- Last updated on Feb 23, 2021.
+ Last updated on Mar 29, 2021.
Found a bug?
diff --git a/Misc/NEWS.d/next/IDLE/2021-03-29-16-22-27.bpo-42225.iIeiLg.rst b/Misc/NEWS.d/next/IDLE/2021-03-29-16-22-27.bpo-42225.iIeiLg.rst
new file mode 100644
index 000000000000..59fb08bdf9eb
--- /dev/null
+++ b/Misc/NEWS.d/next/IDLE/2021-03-29-16-22-27.bpo-42225.iIeiLg.rst
@@ -0,0 +1,2 @@
+Document that IDLE can fail on Unix either from misconfigured IP masquerage
+rules or failure displaying complex colored (non-ascii) characters.