Message312085
Built-in open has an encoding parameter whose default value depends on the system: 'ascii' for some POSIX locales; 'latin1' or similar for most Windows sold in the USA or western Europe; and ???. In idlelib.textview, the signature for view_file currently includes 'encoding=None'. There have been 2 issues, #32826 and another, about tests using the default failing because of 'Löwis' on line 27 of CREDITS.txt. It therefore seems an error for a global cross-platform application to use the default encoding.
To prevent this, we should remove '=None' from the encoding part of the view_file definition and make view_file calls explicitly pass an encoding. For IDLE itself, this will be 'ascii' or 'utf-8'.
This expands upon a note by Cheryl Sabella in #32826 about one of the three calls that fail with the change until fixed.
I will not default to 'utf-8' because 'ascii' catches erroneous non-ascii characters in ascii-only files. For instance, a draft of README.txt was prepared with an editor that replaced ascii " and " with left and right quotes. I will not restricting the encoding otherwise because there might be external uses of the file that use other encodings.
PR to follow as soon as I get bpo number. |
|
Date |
User |
Action |
Args |
2018-02-12 22:07:39 | terry.reedy | set | recipients:
+ terry.reedy |
2018-02-12 22:07:39 | terry.reedy | set | messageid: <1518473259.79.0.467229070634.issue32837@psf.upfronthosting.co.za> |
2018-02-12 22:07:39 | terry.reedy | link | issue32837 messages |
2018-02-12 22:07:39 | terry.reedy | create | |
|