@@ -226,22 +226,18 @@ def _get_dependency_tree(self, package_name: str, extra: str = "", version_req:
226226
227227 def down (self , pp : str = "" , extra : str = "" , depth : int = 20 , indent : int = 5 , version_req : str = "" , verbose : bool = False ) -> str :
228228 """Generate downward dependency tree as formatted string."""
229+ ppp = [pp ] if pp in self .distro else ()
229230 if pp == "." :
230- results = [self .down (p , extra , depth , indent , version_req , verbose = verbose ) for p in sorted (self .distro )]
231- return '\n ' .join (filter (None , results ))
232-
233- if extra == "." :
234- if pp in self .distro :
235- results = [self .down (pp , one_extra , depth , indent , version_req , verbose = verbose )
236- for one_extra in sorted (self .distro [pp ]["provides" ])]
237- return '\n ' .join (filter (None , results ))
238- return ""
239-
240- if pp not in self .distro :
241- return ""
242-
243- rawtext = json .dumps (self ._get_dependency_tree (pp , extra , version_req , depth , verbose = verbose ), indent = indent )
244- lines = [l for l in rawtext .split ("\n " ) if len (l .strip ()) > 2 ]
231+ ppp = [p for p in self .distro ]
232+ results = []
233+ for p in sorted (ppp ):
234+ if extra == "." :
235+ for one_extra in sorted (self .distro [p ]["provides" ]):
236+ results += self ._get_dependency_tree (p , one_extra , version_req , depth , verbose = verbose )
237+ else :
238+ results += self ._get_dependency_tree (p , extra , version_req , depth , verbose = verbose )
239+ rawtext = json .dumps (results , indent = indent )
240+ lines = [l [2 * indent :] for l in rawtext .split ("\n " ) if len (l .strip ()) > 2 ]
245241 return "\n " .join (lines ).replace ('"' , "" )
246242
247243 def up (self , ppw : str , extra : str = "" , depth : int = 20 , indent : int = 5 , version_req : str = "" , verbose : bool = False ) -> str :
0 commit comments