Issue 28658: IDLE: catch user cfg file error and improve error message (original) (raw)

Created on 2016-11-10 14:35 by Andrew Kontokanis, last changed 2022-04-11 14:58 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
error.log.pdf Andrew Kontokanis,2016-11-10 14:35
Messages (4)
msg280509 - (view) Author: Andrew Kontokanis (Andrew Kontokanis) Date: 2016-11-10 14:35
When I try and launch IDLE, the icon appears on the dock for a second and then disappears and the application doesn't run. I was trying to install new themes but when I managed to do find .idlerc folder I had messed up with some idle folder. I tried to uninstall and install but it didn't work. Trying to find solution I read some hints to check through terminal and I took these messages in attachment. I didn't find the same solution with the previous problems so I opened an question
msg280603 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2016-11-11 18:56
The exception message says that your problem is a bad byte in one of the config files. The most likely culprit is the one you edited, which I presume is ~/.idlerc/config-highlight.cfg. "Invalid start byte' suggests that it tried to decode as utf-8, but you used a non-ascii char and saved with some other encoding. I suggest you stick with ascii only for theme names. The set of theme item names should match the all-ascii set used in idlelib/config-highlight.def. For future reference: a crash is a segfault or Mac equivalent, without a python traceback. Uploaded text files should be plain ascii or utf-8 text, uncompressed and not wrapped. "I have a problem. Help me" requests should normally go to python-list or other forums. The tracker is for bug reports and enhancement requests. In this case, I decided to make this a bug and enhancement issue and changed the title accordingly. The bug is that IDLE stopped instead of continuing without the user configuration, the same as it would if there were no file. I propose to catch the exception and replace the traceback with the file name and error (the enhancement). At least for user config files, IDLE should then continue (the bugfix). The revised message will be something like the following. "Unable to read .../.idlerc/config-highlight.cfg. UnicodeDecodeError: ... IDLE will continue without this user config file."
msg280611 - (view) Author: Terry J. Reedy (terry.reedy) * (Python committer) Date: 2016-11-11 20:56
This is effectively a duplicate of #21973. In both issues, an error in the file causes an exception that is not caught, but should be.
msg280619 - (view) Author: Andrew Kontokanis (Andrew Kontokanis) Date: 2016-11-11 22:27
Thank you very much. The actual problem was that on copy paste it made an alias and not a real copy of the file that you mentioned. So It really helped me to solve the problem.
History
Date User Action Args
2022-04-11 14:58:39 admin set github: 72844
2016-11-11 22:27:20 Andrew Kontokanis set messages: +
2016-11-11 20:56:12 terry.reedy set status: open -> closedsuperseder: IDLE: catch user cfg file error, better error message, continuemessages: + resolution: duplicatestage: test needed -> resolved
2016-11-11 18:56:31 terry.reedy set versions: + Python 3.6, Python 3.7title: MacOsX idle don't run -> IDLE: catch user cfg file error and improve error messagemessages: + type: crash -> behaviorstage: test needed
2016-11-11 16:33:53 ned.deily set assignee: terry.reedycomponents: + IDLEnosy: + terry.reedy
2016-11-11 01:30:55 Andrew Kontokanis set nosy: + ned.deily
2016-11-10 14:35:00 Andrew Kontokanis create