@@ -236,7 +236,6 @@ def generate_models(config, args, project: Project, database_dir: str) -> None:
236
236
language = config ["language" ]
237
237
238
238
generator = mad .Generator (language )
239
- # Note: The argument parser converts with-sinks to with_sinks, etc.
240
239
generator .generateSinks = should_generate_sinks (project )
241
240
generator .generateSources = should_generate_sources (project )
242
241
generator .generateSummaries = should_generate_summaries (project )
@@ -348,7 +347,7 @@ def download_dca_databases(
348
347
"""
349
348
print ("\n === Finding projects ===" )
350
349
project_map = {project ["name" ]: project for project in projects }
351
- analyzed_databases = {}
350
+ analyzed_databases = {n : None for n in project_map }
352
351
for experiment_name in experiment_names :
353
352
response = get_json_from_github (
354
353
f"https://raw.githubusercontent.com/github/codeql-dca-main/data/{ experiment_name } /reports/downloads.json" ,
@@ -361,17 +360,24 @@ def download_dca_databases(
361
360
artifact_name = analyzed_database ["artifact_name" ]
362
361
pretty_name = pretty_name_from_artifact_name (artifact_name )
363
362
364
- if not pretty_name in project_map :
363
+ if not pretty_name in analyzed_databases :
365
364
print (f"Skipping { pretty_name } as it is not in the list of projects" )
366
365
continue
367
366
368
- if pretty_name in analyzed_databases :
367
+ if analyzed_databases [ pretty_name ] is not None :
369
368
print (
370
369
f"Skipping previous database { analyzed_databases [pretty_name ]['artifact_name' ]} for { pretty_name } "
371
370
)
372
371
373
372
analyzed_databases [pretty_name ] = analyzed_database
374
373
374
+ not_found = [name for name , db in analyzed_databases .items () if db is None ]
375
+ if not_found :
376
+ print (
377
+ f"ERROR: The following projects were not found in the DCA experiments: { ', ' .join (not_found )} "
378
+ )
379
+ sys .exit (1 )
380
+
375
381
def download_and_decompress (analyzed_database : dict ) -> str :
376
382
artifact_name = analyzed_database ["artifact_name" ]
377
383
repository = analyzed_database ["repository" ]
0 commit comments