[Python-Dev] .pth files are evil
pje at telecommunity.com
Sat May 9 16:41:02 CEST 2009
At 04:18 PM 5/9/2009 +0200, Martin v. LÃ¶wis wrote:
>Zooko O'Whielacronx wrote:
> > .pth files are why I can't easily use GNU stow with easy_install.
> > If installing a Python package involved writing new files into the
> > filesystem, but did not require reading, updating, and re-writing any
> > extant files such as .pth files, then GNU stow would Just Work with
> > easy_install the way it Just Works with most things.
>Please understand that this is the fault of easy_install, not of .pth
>files. There is no technical need for easy_install to rewrite .pth
>files on installation. It could just as well have created new .pth
>files, rather than modifying existing ones.
>If you always use --single-version-externally-managed with easy_install,
>it will stop editing .pth files on installation.
It's --multi-version (-m) that does
that. --single-version-externally-managed is a "setup.py install" option.
Both have the effect of not editing .pth files, but they do so in
different ways. The "setup.py install" option causes it to install
in a distutils-compatible layout, whereas --multi-version simply
drops .egg files or directories in the target location and leaves it
to the user (or the generated script wrappers) to add them to sys.path.
More information about the Python-list