# HG changeset patch # User Jeff Hammel # Date 1359186193 28800 # Node ID d001017d5870b8a113b36a445dc0ce69cf748666 # Parent 8f39ba6425312cd25b8a9f55290419c8e97b36d9 migrate this code to the right place diff -r 8f39ba642531 -r d001017d5870 paint/info.py --- a/paint/info.py Fri Jan 25 15:56:26 2013 -0800 +++ b/paint/info.py Fri Jan 25 23:43:13 2013 -0800 @@ -37,6 +37,8 @@ """returns dictionary of package info""" raise NotImplementedError("abstract base class") + def dependencies(self): + raise NotImplementedError("abstract base class") class SetupOverridePackageInfo(PackageInfo): """ @@ -89,6 +91,38 @@ # return the information return info_dict + def dependencies(self): + """return the dependencies of the package""" + + # TODO: should probably have a more detailed dict: + # {'mozinfo': {'version': '>= 0.2', + # 'url': 'http://something.com/'}} + + # get the egg_info directory + egg_info = self._egg_info() + + # read the dependencies + requires = os.path.join(egg_info, 'requires.txt') + if os.path.exists(requires): + dependencies = [i.strip() for i in file(requires).readlines() if i.strip()] + else: + dependencies = [] + dependencies = dict([(i, None) for i in dependencies]) + + # read the dependency links + dependency_links = os.path.join(egg_info, 'dependency_links.txt') + if os.path.exists(dependency_links): + links = [i.strip() for i in file(dependency_links).readlines() if i.strip()] + for link in links: + # XXX pretty ghetto + assert '#egg=' in link + url, dep = link.split('#egg=', 1) + if dep in dependencies: + dependencies[dep] = link + + return dependencies + + def _egg_info(self): """build the egg_info directory""" diff -r 8f39ba642531 -r d001017d5870 paint/package.py --- a/paint/package.py Fri Jan 25 15:56:26 2013 -0800 +++ b/paint/package.py Fri Jan 25 23:43:13 2013 -0800 @@ -132,33 +132,7 @@ return self.package_info(self._path())() def dependencies(self): - """return the dependencies""" - # TODO: should probably have a more detailed dict: - # {'mozinfo': {'version': '>= 0.2', - # 'url': 'http://something.com/'}} - # get the egg_info directory - egg_info = self._egg_info() - - # read the dependencies - requires = os.path.join(egg_info, 'requires.txt') - if os.path.exists(requires): - dependencies = [i.strip() for i in file(requires).readlines() if i.strip()] - else: - dependencies = [] - dependencies = dict([(i, None) for i in dependencies]) - - # read the dependency links - dependency_links = os.path.join(egg_info, 'dependency_links.txt') - if os.path.exists(dependency_links): - links = [i.strip() for i in file(dependency_links).readlines() if i.strip()] - for link in links: - # XXX pretty ghetto - assert '#egg=' in link - url, dep = link.split('#egg=', 1) - if dep in dependencies: - dependencies[dep] = link - - return dependencies + return self.package_info(self._path()).dependencies() def extension(self): """filename extension of the package"""