Mercurial > hg > PaInt
changeset 68:d001017d5870
migrate this code to the right place
author | Jeff Hammel <jhammel@mozilla.com> |
---|---|
date | Fri, 25 Jan 2013 23:43:13 -0800 |
parents | 8f39ba642531 |
children | fea269259222 |
files | paint/info.py paint/package.py |
diffstat | 2 files changed, 35 insertions(+), 27 deletions(-) [+] |
line wrap: on
line diff
--- 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"""
--- 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"""