At 12:23 PM 6/25/2007 -0700, Andrew Straw wrote: >In setuptools 0.6c5, a broken symlink in the package tree will cause >'setup develop' to fail, even in the file is inconsequential for the >package. I think this is a bug. > >Here is the output of running "python setup.py develop" in a package >called flydra with a broken symlink called broken.symlink: > >running develop >running egg_info >writing flydra.egg-info/PKG-INFO >writing top-level names to flydra.egg-info/top_level.txt >writing dependency_links to flydra.egg-info/dependency_links.txt >writing entry points to flydra.egg-info/entry_points.txt >error: broken.symlink: No such file or directory > >(I would try this using setuptools==dev, but it seems svn.python.org is >down, or at least my connection to it.)
Okay, I've confirmed it's a distutils bug, and the following patch implements a workaround for it in setuptools. It'll be included in setuptools 0.6c7: Index: setuptools/__init__.py =================================================================== --- setuptools/__init__.py (revision 55712) +++ setuptools/__init__.py (working copy) @@ -65,18 +65,17 @@ +def findall(dir = os.curdir): + """Find all files under 'dir' and return the list of full filenames + (relative to 'dir'). + """ + all_files = [] + for base, dirs, files in os.walk(dir): + if base!=os.curdir: + files = [os.path.join(base, f) for f in files] + all_files.extend(filter(os.path.isfile, files)) + return all_files +import distutils.filelist +distutils.filelist.findall = findall # fix findall bug in distutils. - - - - - - - - - - - - - _______________________________________________ Distutils-SIG maillist - [email protected] http://mail.python.org/mailman/listinfo/distutils-sig
