[Distutils] Bug in easy_install?
Phillip J. Eby
pje at telecommunity.com
Tue Jun 6 18:03:25 CEST 2006
At 02:13 PM 6/4/2006 -0400, Jim Fulton wrote:
>If I give easy_install
>
>- an ordinary spec (e.g. "demo")
>
>- an -f option that points to a local directory containing a bunch of
> eggs and that is not on sys,path,
>
>- ask it to install to some directory (-d), and
>
>- use the -m option
>
>it doesn't copy eggs found to the install directory even though
>the source directory isn't on sys.path. The logic for deciding whether
>to copy seems to be:
>
> # Installation is also needed if file in tmpdir or is not an
>egg
> install_needed = install_needed or os.path.dirname(download)
>== tmpdir
> install_needed = install_needed or not download.endswith
>('.egg')
>
>where install_needed starts out as false in this case because the
>spec is not a url. The second part has no effect because the
>value if the download variable ends in .egg.
>
>The --always-copy documentation hints that distributions will be
>copied unless they are found in a directory sys.path, but I see no
>check.
>
>Why are the eggs not copied?
Because I'm an idiot, that's why. :( That logic predates --find-links
being able to support local files without using file:// URLs. At one
point, it worked correctly because file:// URLs caused easy_install to copy
them to a temporary directory. Later, when I made that more efficient, it
broke the install_needed logic. :(
Too bad you didn't find this one *before* I released 0.6b2. Oh well. :)
More information about the Distutils-SIG
mailing list