@@ -258,34 +258,45 @@ def run_dependency_scanner(package_manager='', input_dir='', output_dir_file='',
258258 fail_pm = defaultdict (lambda : defaultdict (list ))
259259 cover_comment = ''
260260 for pm , manifest_file_name_list in found_package_manager .items ():
261- for manifest_dir , manifest_file_name in manifest_file_name_list .items ():
262- input_dir = manifest_dir
263- if manifest_file_name == pass_key :
264- continue
265- os .chdir (input_dir )
261+ if not manifest_file_name_list and not autodetect :
266262 ret , package_dep_item_list , cover_comment = analyze_dependency (pm , input_dir , output_path ,
267263 pip_activate_cmd , pip_deactivate_cmd ,
268264 output_custom_dir , app_name , github_token ,
269- manifest_file_name , direct )
265+ [] , direct )
270266 if ret :
271- success_pm [pm ][input_dir ].extend (manifest_file_name )
267+ success_pm [pm ][input_dir ].extend ([ 'manual mode (-m option)' ] )
272268 scan_item .append_file_items (package_dep_item_list )
273-
274- dup_pm = None
275- if pm == const .GRADLE and const .ANDROID in found_package_manager :
276- dup_pm = const .ANDROID
277- elif pm == const .ANDROID and const .GRADLE in found_package_manager :
278- dup_pm = const .GRADLE
279-
280- if dup_pm :
281- if dup_pm in fail_pm and input_dir in fail_pm [dup_pm ]:
282- fail_pm [dup_pm ].pop (input_dir , None )
283- if not fail_pm [dup_pm ]:
284- fail_pm .pop (dup_pm , None )
285- else :
286- found_package_manager [dup_pm ][manifest_dir ] = pass_key
287269 else :
288- fail_pm [pm ][input_dir ].extend (manifest_file_name )
270+ fail_pm [pm ][input_dir ].extend (['manual mode (-m option)' ])
271+ else :
272+ for manifest_dir , manifest_file_name in manifest_file_name_list .items ():
273+ input_dir = manifest_dir
274+ if manifest_file_name == pass_key :
275+ continue
276+ os .chdir (input_dir )
277+ ret , package_dep_item_list , cover_comment = analyze_dependency (pm , input_dir , output_path ,
278+ pip_activate_cmd , pip_deactivate_cmd ,
279+ output_custom_dir , app_name , github_token ,
280+ manifest_file_name , direct )
281+ if ret :
282+ success_pm [pm ][input_dir ].extend (manifest_file_name )
283+ scan_item .append_file_items (package_dep_item_list )
284+
285+ dup_pm = None
286+ if pm == const .GRADLE and const .ANDROID in found_package_manager :
287+ dup_pm = const .ANDROID
288+ elif pm == const .ANDROID and const .GRADLE in found_package_manager :
289+ dup_pm = const .GRADLE
290+
291+ if dup_pm :
292+ if dup_pm in fail_pm and input_dir in fail_pm [dup_pm ]:
293+ fail_pm [dup_pm ].pop (input_dir , None )
294+ if not fail_pm [dup_pm ]:
295+ fail_pm .pop (dup_pm , None )
296+ else :
297+ found_package_manager [dup_pm ][manifest_dir ] = pass_key
298+ else :
299+ fail_pm [pm ][input_dir ].extend (manifest_file_name )
289300
290301 success_pm = {k : dict (v ) for k , v in success_pm .items ()}
291302 fail_pm = {k : dict (v ) for k , v in fail_pm .items ()}
0 commit comments