From 6e2695da160fb4fdb43005855ed10c5452199b6e Mon Sep 17 00:00:00 2001 From: PJ Eby Date: Wed, 24 Sep 2008 17:22:00 +0000 Subject: Keep site directories (e.g. site-packages) from being included in .pth files. (backport from trunk) --HG-- branch : setuptools-0.6 extra : convert_revision : svn%3A6015fed2-1504-0410-9fe1-9d1591cc4771/sandbox/branches/setuptools-0.6%4066609 --- setuptools/command/easy_install.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'setuptools/command/easy_install.py') diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py index eecc0b2a..f06b6ddd 100755 --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py @@ -272,7 +272,7 @@ class easy_install(Command): if is_site_dir: if self.pth_file is None: - self.pth_file = PthDistributions(pth_file) + self.pth_file = PthDistributions(pth_file, self.all_site_dirs) else: self.pth_file = None @@ -1315,8 +1315,8 @@ class PthDistributions(Environment): dirty = False - def __init__(self, filename): - self.filename = filename + def __init__(self, filename, sitedirs=()): + self.filename = filename; self.sitedirs=map(normalize_path, sitedirs) self.basedir = normalize_path(os.path.dirname(self.filename)) self._load(); Environment.__init__(self, [], None, None) for path in yield_lines(self.paths): @@ -1325,7 +1325,7 @@ class PthDistributions(Environment): def _load(self): self.paths = [] saw_import = False - seen = {} + seen = dict.fromkeys(self.sitedirs) if os.path.isfile(self.filename): for line in open(self.filename,'rt'): if line.startswith('import'): @@ -1381,7 +1381,7 @@ class PthDistributions(Environment): def add(self,dist): """Add `dist` to the distribution map""" - if dist.location not in self.paths: + if dist.location not in self.paths and dist.location not in self.sitedirs: self.paths.append(dist.location); self.dirty = True Environment.add(self,dist) -- cgit v1.2.3