def initialize(self): """Instentiate VCS factories. This will detect if they are available or not. """ __status__ = u"Detecting VCS systems." if self._initialized: return for name, factory in working_set.iter_all_entry_points('setup_vcs'): self._vcs[name] = factory() self._initialized = True
def prepare(self, context): __status__ = u"Preparing extensions sources." installers = Installers() for name, package in working_set.iter_all_entry_points( 'setup_extensions'): if self.enabled is not None and name not in self.enabled: continue if not hasattr(package, '__path__'): raise InstallationError(u"Invalid extension entry point", name) directory = package.__path__[0] for name in os.listdir(directory): path = os.path.join(directory, name) if os.path.isdir(path): if name in installers: raise InstallationError( u'Duplicate extension source', path, installers[name]) installers.add(ExtractedPackageInstaller( context, name=name, path=path)) if installers: return Query(context, installers) return None