1717)
1818
1919
20- SITE_PACKAGES_PATH = sysconfig .get_paths ()[' platlib' ]
20+ SITE_PACKAGES_PATH = sysconfig .get_paths ()[" platlib" ]
2121
2222
2323def generate_pip_tree (path : str = SITE_PACKAGES_PATH ) -> Tuple [List [Dict [str , Any ]], int ]:
@@ -35,9 +35,9 @@ def generate_pip_tree(path: str = SITE_PACKAGES_PATH) -> Tuple[List[Dict[str, An
3535
3636 # Append the `required_by` field to each record created from `_generate_reverse_requires_field()`
3737 for item in pip_tree_results :
38- item [' required_by' ] = sorted (required_by_data .get (item [' name' ], []))
38+ item [" required_by" ] = sorted (required_by_data .get (item [" name" ], []))
3939
40- final_output = sorted (pip_tree_results , key = lambda k : k [' name' ].lower ())
40+ final_output = sorted (pip_tree_results , key = lambda k : k [" name" ].lower ())
4141
4242 return final_output , package_count
4343
@@ -58,24 +58,24 @@ def get_package_details(package: Distribution) -> Dict[str, Any]:
5858 package_updated_at = (
5959 time .ctime (os .path .getctime (package_location ))
6060 if package_location and os .path .exists (package_location )
61- else ' unknown'
61+ else " unknown"
6262 )
6363
6464 requires_list = (
65- [sorted (str (requirement .replace (' ' , '' ).split (';' )[0 ]) for requirement in package .requires )]
65+ [sorted (str (requirement .replace (" " , "" ).split (";" )[0 ]) for requirement in package .requires )]
6666 if package .requires
6767 else []
6868 )
6969
7070 package_details = {
71- ' name' : package .metadata [' Name' ],
72- ' version' : package .metadata [' Version' ],
73- ' updated' : (
71+ " name" : package .metadata [" Name" ],
72+ " version" : package .metadata [" Version" ],
73+ " updated" : (
7474 datetime .datetime .strptime (package_updated_at , "%a %b %d %H:%M:%S %Y" ).strftime ("%Y-%m-%d" )
75- if package_updated_at != ' unknown'
76- else ' unknown'
75+ if package_updated_at != " unknown"
76+ else " unknown"
7777 ),
78- ' requires' : sorted ([item for sublist in requires_list for item in set (sublist )]),
78+ " requires" : sorted ([item for sublist in requires_list for item in set (sublist )]),
7979 }
8080
8181 return package_details
@@ -85,16 +85,16 @@ def _generate_reverse_requires_field(required_by_data: Dict[str, Set[str]], pack
8585 """Generate a reversed list from the `requires` fields and create a
8686 collection of each `required_by` fields so each package can show what it's required by.
8787 """
88- requires_list = [item for item in package_details [' requires' ]]
88+ requires_list = [item for item in package_details [" requires" ]]
8989 for required_by_package in requires_list :
90- word = re .compile (r' ^(\w)+' )
90+ word = re .compile (r" ^(\w)+" )
9191 name_match = word .match (required_by_package )
92- required_by_package_name = name_match .group () if name_match is not None else ''
92+ required_by_package_name = name_match .group () if name_match is not None else ""
9393
9494 # If a package is listed, add to its set, otherwise create a new set
9595 if required_by_package_name in required_by_data :
96- required_by_data [required_by_package_name ].add (package_details [' name' ])
96+ required_by_data [required_by_package_name ].add (package_details [" name" ])
9797 else :
98- required_by_data [required_by_package_name ] = {package_details [' name' ]}
98+ required_by_data [required_by_package_name ] = {package_details [" name" ]}
9999
100100 required_by_data = {key : set (value ) for key , value in required_by_data .items ()}
0 commit comments