Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

defer to stdlib for path.get_home_dir() #998

Merged
merged 3 commits into from Nov 24, 2011
Commits on Nov 23, 2011
  1. defer to stdlib for path.get_home_dir()

    minrk committed Nov 14, 2011
    We have elaborate and fragile logic for determining
    home dir, and it is ultimately less reliable than the stdlib behavior
    used for `os.path.expanduser('~')`.  This commit defers to that in
    all cases other than a bundled Python in py2exe/py2app environments.
    
    The one case where the default guess will *not* be correct, based on
    inline comments, is on WinHPC, where all paths must be UNC (`\\foo`), and
    thus HOMESHARE is the logical first choice.  However, HOMESHARE is
    the wrong answer in approximately all other cases where it is defined,
    and the fix for WinHPC users is the trivial `HOME=%HOMESHARE%`.
    
    This removes the various tests of our Windows path resolution logic,
    which are no longer relevant. Further, $HOME is used by the stdlib
    as first priority on *all* platforms, so tests for this behavior are
    no longer posix-specific.
    
    closes gh-970
    closes gh-747
  2. allow IPython to run without writable home dir

    minrk committed Nov 23, 2011
    get_ipython_dir() ensures that the *IPython* dir is writable, which is more relevant, but the home dir need not be writable. Some optional behaviors (e.g. `%logstart global`) will not work if the home dir is not writable, but IPython should not crash.  Approximately no other operations actually depend on writing directly to $HOME.