This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author terry.reedy
Recipients John Gray, asvetlov, cane, markroseman, ned.deily, roger.serwy, tealduck, terry.reedy
Date 2015-10-28.00:39:27
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1445992768.65.0.544562716879.issue8231@psf.upfronthosting.co.za>
In-reply-to
Content
Yes, that is what this issue *is* about.  IDLE, like Python itself, expects to be run on machines that users can write to normally, that have not been crippled by bureaucratic policies, or by users. The editor is useless if the user cannot write files somewhere.  None of this is specific to Windows.

Ned's idea of a temporary directory seems easy.  Change the warning and replace'raise SystemExit' with 'td = tempfile.TemporaryDirectory(); userDir = td.name' (see msg222694).  For 2.7, however, TemporayDirectory is not available. For the underlying mkdtemp, the user "is responsible for deleting the temporary directory and its contents when done with it."  (I presume failure of apps to do this is why temp file cleanup is needed.)  My inclination for 2.7 would be to copy a stripped down copy of TemporaryDirectory with just the finalizer code.  In fact, since we do not need or want the implicit cleanup warning (do we?), we could do that for all versions.

We do not have to accommodate all possibilities. One report, possibly on Stackoverflow, was from a user whose home dir and, I presume, appdata dir, were on a remote server.  Maybe he also had an offline home dir, I don't remember.  In any case, IDLE was not happy with the setup.

As I said before, permanently and unconditionally moving user config files on Windows will break compatibility with all previous releases, so I would not do that unless we decide to break compatibility anyway, for reasons other than MS's recommendations.  However, after a general solution is applied we could consider in a separate issue using Appdata as future-looking, Windows-specific alternative to a temporary directory.  However, this would require careful though lest we end up with two userdirs because the non-writability of homedir is only temporary.
History
Date User Action Args
2015-10-28 00:39:28terry.reedysetrecipients: + terry.reedy, ned.deily, roger.serwy, asvetlov, markroseman, cane, John Gray, tealduck
2015-10-28 00:39:28terry.reedysetmessageid: <1445992768.65.0.544562716879.issue8231@psf.upfronthosting.co.za>
2015-10-28 00:39:28terry.reedylinkissue8231 messages
2015-10-28 00:39:27terry.reedycreate