Exemplo n.º 1
0
 def load(self, path):
     '''Load a L{Package} object from a path to a package distribution.
     
     @return: the Distribution object.
     '''
     pkg = Package()
     pkg.installed_path = path 
     metadata_path = os.path.join(path, self.metadata_filename)
     manifest_path = os.path.join(path, self.manifest_filename)
     fo = open(metadata_path)
     metadata = json.load(fo)
     readme_notes = self._get_notes_from_readme(path)
     if readme_notes:
         metadata['notes'] = readme_notes
     pkg.update_metadata(metadata)
     fo.close()
     if os.path.exists(manifest_path):
         fo = open(manifest_path)
         pkg.manifest = json.load(fo)
         fo.close()
     return self(pkg)